"use strict"; var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); var __esm = (fn, res) => function __init() { return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; }; var __commonJS = (cb, mod) => function __require() { return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; }; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod )); var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // ../../node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.mjs var tslib_es6_exports = {}; __export(tslib_es6_exports, { __addDisposableResource: () => __addDisposableResource, __assign: () => __assign, __asyncDelegator: () => __asyncDelegator, __asyncGenerator: () => __asyncGenerator, __asyncValues: () => __asyncValues, __await: () => __await, __awaiter: () => __awaiter, __classPrivateFieldGet: () => __classPrivateFieldGet, __classPrivateFieldIn: () => __classPrivateFieldIn, __classPrivateFieldSet: () => __classPrivateFieldSet, __createBinding: () => __createBinding, __decorate: () => __decorate, __disposeResources: () => __disposeResources, __esDecorate: () => __esDecorate, __exportStar: () => __exportStar, __extends: () => __extends, __generator: () => __generator, __importDefault: () => __importDefault, __importStar: () => __importStar, __makeTemplateObject: () => __makeTemplateObject, __metadata: () => __metadata, __param: () => __param, __propKey: () => __propKey, __read: () => __read, __rest: () => __rest, __rewriteRelativeImportExtension: () => __rewriteRelativeImportExtension, __runInitializers: () => __runInitializers, __setFunctionName: () => __setFunctionName, __spread: () => __spread, __spreadArray: () => __spreadArray, __spreadArrays: () => __spreadArrays, __values: () => __values, default: () => tslib_es6_default }); function __extends(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); } function __rest(s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; } function __decorate(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; } function __param(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; } function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) { function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; } __name(accept, "accept"); var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value"; var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null; var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {}); var _2, done = false; for (var i = decorators.length - 1; i >= 0; i--) { var context = {}; for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p]; for (var p in contextIn.access) context.access[p] = contextIn.access[p]; context.addInitializer = function(f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); }; var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context); if (kind === "accessor") { if (result === void 0) continue; if (result === null || typeof result !== "object") throw new TypeError("Object expected"); if (_2 = accept(result.get)) descriptor.get = _2; if (_2 = accept(result.set)) descriptor.set = _2; if (_2 = accept(result.init)) initializers.unshift(_2); } else if (_2 = accept(result)) { if (kind === "field") initializers.unshift(_2); else descriptor[key] = _2; } } if (target) Object.defineProperty(target, contextIn.name, descriptor); done = true; } function __runInitializers(thisArg, initializers, value) { var useValue = arguments.length > 2; for (var i = 0; i < initializers.length; i++) { value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg); } return useValue ? value : void 0; } function __propKey(x) { return typeof x === "symbol" ? x : "".concat(x); } function __setFunctionName(f, name, prefix) { if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : ""; return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name }); } function __metadata(metadataKey, metadataValue) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); } function __awaiter(thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function(resolve) { resolve(value); }); } __name(adopt, "adopt"); return new (P || (P = Promise))(function(resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } __name(fulfilled, "fulfilled"); function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } __name(rejected, "rejected"); function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } __name(step, "step"); step((generator = generator.apply(thisArg, _arguments || [])).next()); }); } function __generator(thisArg, body) { var _2 = { label: 0, sent: /* @__PURE__ */ __name(function() { if (t[0] & 1) throw t[1]; return t[1]; }, "sent"), trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype); return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function(v) { return step([n, v]); }; } __name(verb, "verb"); function step(op) { if (f) throw new TypeError("Generator is already executing."); while (g && (g = 0, op[0] && (_2 = 0)), _2) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _2.label++; return { value: op[1], done: false }; case 5: _2.label++; y = op[1]; op = [0]; continue; case 7: op = _2.ops.pop(); _2.trys.pop(); continue; default: if (!(t = _2.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _2 = 0; continue; } if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { _2.label = op[1]; break; } if (op[0] === 6 && _2.label < t[1]) { _2.label = t[1]; t = op; break; } if (t && _2.label < t[2]) { _2.label = t[2]; _2.ops.push(op); break; } if (t[2]) _2.ops.pop(); _2.trys.pop(); continue; } op = body.call(thisArg, _2); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } __name(step, "step"); } function __exportStar(m, o) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p); } function __values(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: /* @__PURE__ */ __name(function() { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; }, "next") }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); } function __read(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; } function __spread() { for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i])); return ar; } function __spreadArrays() { for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; for (var r = Array(s), k = 0, i = 0; i < il; i++) for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) r[k] = a[j]; return r; } function __spreadArray(to, from, pack) { if (pack || arguments.length === 2) for (var i = 0, l2 = from.length, ar; i < l2; i++) { if (ar || !(i in from)) { if (!ar) ar = Array.prototype.slice.call(from, 0, i); ar[i] = from[i]; } } return to.concat(ar || Array.prototype.slice.call(from)); } function __await(v) { return this instanceof __await ? (this.v = v, this) : new __await(v); } function __asyncGenerator(thisArg, _arguments, generator) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var g = generator.apply(thisArg, _arguments || []), i, q = []; return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function() { return this; }, i; function awaitReturn(f) { return function(v) { return Promise.resolve(v).then(f, reject); }; } __name(awaitReturn, "awaitReturn"); function verb(n, f) { if (g[n]) { i[n] = function(v) { return new Promise(function(a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } } __name(verb, "verb"); function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } __name(resume, "resume"); function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } __name(step, "step"); function fulfill(value) { resume("next", value); } __name(fulfill, "fulfill"); function reject(value) { resume("throw", value); } __name(reject, "reject"); function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } __name(settle, "settle"); } function __asyncDelegator(o) { var i, p; return i = {}, verb("next"), verb("throw", function(e) { throw e; }), verb("return"), i[Symbol.iterator] = function() { return this; }, i; function verb(n, f) { i[n] = o[n] ? function(v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; } __name(verb, "verb"); } function __asyncValues(o) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var m = o[Symbol.asyncIterator], i; return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { return this; }, i); function verb(n) { i[n] = o[n] && function(v) { return new Promise(function(resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } __name(verb, "verb"); function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v2) { resolve({ value: v2, done: d }); }, reject); } __name(settle, "settle"); } function __makeTemplateObject(cooked, raw) { if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } return cooked; } function __importStar(mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) { for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); } __setModuleDefault(result, mod); return result; } function __importDefault(mod) { return mod && mod.__esModule ? mod : { default: mod }; } function __classPrivateFieldGet(receiver, state, kind, f) { if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); } function __classPrivateFieldSet(receiver, state, value, kind, f) { if (kind === "m") throw new TypeError("Private method is not writable"); if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it"); return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value; } function __classPrivateFieldIn(state, receiver) { if (receiver === null || typeof receiver !== "object" && typeof receiver !== "function") throw new TypeError("Cannot use 'in' operator on non-object"); return typeof state === "function" ? receiver === state : state.has(receiver); } function __addDisposableResource(env2, value, async) { if (value !== null && value !== void 0) { if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected."); var dispose, inner; if (async) { if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined."); dispose = value[Symbol.asyncDispose]; } if (dispose === void 0) { if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined."); dispose = value[Symbol.dispose]; if (async) inner = dispose; } if (typeof dispose !== "function") throw new TypeError("Object not disposable."); if (inner) dispose = /* @__PURE__ */ __name(function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } }, "dispose"); env2.stack.push({ value, dispose, async }); } else if (async) { env2.stack.push({ async: true }); } return value; } function __disposeResources(env2) { function fail(e) { env2.error = env2.hasError ? new _SuppressedError(e, env2.error, "An error was suppressed during disposal.") : e; env2.hasError = true; } __name(fail, "fail"); var r, s = 0; function next() { while (r = env2.stack.pop()) { try { if (!r.async && s === 1) return s = 0, env2.stack.push(r), Promise.resolve().then(next); if (r.dispose) { var result = r.dispose.call(r.value); if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); }); } else s |= 1; } catch (e) { fail(e); } } if (s === 1) return env2.hasError ? Promise.reject(env2.error) : Promise.resolve(); if (env2.hasError) throw env2.error; } __name(next, "next"); return next(); } function __rewriteRelativeImportExtension(path, preserveJsx) { if (typeof path === "string" && /^\.\.?\//.test(path)) { return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(m, tsx, d, ext, cm) { return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : d + ext + "." + cm.toLowerCase() + "js"; }); } return path; } var extendStatics, __assign, __createBinding, __setModuleDefault, ownKeys, _SuppressedError, tslib_es6_default; var init_tslib_es6 = __esm({ "../../node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.mjs"() { extendStatics = /* @__PURE__ */ __name(function(d, b) { extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics(d, b); }, "extendStatics"); __name(__extends, "__extends"); __assign = /* @__PURE__ */ __name(function() { __assign = Object.assign || /* @__PURE__ */ __name(function __assign2(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }, "__assign"); return __assign.apply(this, arguments); }, "__assign"); __name(__rest, "__rest"); __name(__decorate, "__decorate"); __name(__param, "__param"); __name(__esDecorate, "__esDecorate"); __name(__runInitializers, "__runInitializers"); __name(__propKey, "__propKey"); __name(__setFunctionName, "__setFunctionName"); __name(__metadata, "__metadata"); __name(__awaiter, "__awaiter"); __name(__generator, "__generator"); __createBinding = Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; }); __name(__exportStar, "__exportStar"); __name(__values, "__values"); __name(__read, "__read"); __name(__spread, "__spread"); __name(__spreadArrays, "__spreadArrays"); __name(__spreadArray, "__spreadArray"); __name(__await, "__await"); __name(__asyncGenerator, "__asyncGenerator"); __name(__asyncDelegator, "__asyncDelegator"); __name(__asyncValues, "__asyncValues"); __name(__makeTemplateObject, "__makeTemplateObject"); __setModuleDefault = Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }; ownKeys = /* @__PURE__ */ __name(function(o) { ownKeys = Object.getOwnPropertyNames || function(o2) { var ar = []; for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k; return ar; }; return ownKeys(o); }, "ownKeys"); __name(__importStar, "__importStar"); __name(__importDefault, "__importDefault"); __name(__classPrivateFieldGet, "__classPrivateFieldGet"); __name(__classPrivateFieldSet, "__classPrivateFieldSet"); __name(__classPrivateFieldIn, "__classPrivateFieldIn"); __name(__addDisposableResource, "__addDisposableResource"); _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) { var e = new Error(message); return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; }; __name(__disposeResources, "__disposeResources"); __name(__rewriteRelativeImportExtension, "__rewriteRelativeImportExtension"); tslib_es6_default = { __extends, __assign, __rest, __decorate, __param, __esDecorate, __runInitializers, __propKey, __setFunctionName, __metadata, __awaiter, __generator, __createBinding, __exportStar, __values, __read, __spread, __spreadArrays, __spreadArray, __await, __asyncGenerator, __asyncDelegator, __asyncValues, __makeTemplateObject, __importStar, __importDefault, __classPrivateFieldGet, __classPrivateFieldSet, __classPrivateFieldIn, __addDisposableResource, __disposeResources, __rewriteRelativeImportExtension }; } }); // ../../node_modules/.pnpm/reflect-metadata@0.2.2/node_modules/reflect-metadata/Reflect.js var require_Reflect = __commonJS({ "../../node_modules/.pnpm/reflect-metadata@0.2.2/node_modules/reflect-metadata/Reflect.js"() { var Reflect2; (function(Reflect3) { (function(factory) { var root = typeof globalThis === "object" ? globalThis : typeof global === "object" ? global : typeof self === "object" ? self : typeof this === "object" ? this : sloppyModeThis(); var exporter = makeExporter(Reflect3); if (typeof root.Reflect !== "undefined") { exporter = makeExporter(root.Reflect, exporter); } factory(exporter, root); if (typeof root.Reflect === "undefined") { root.Reflect = Reflect3; } function makeExporter(target, previous) { return function(key, value) { Object.defineProperty(target, key, { configurable: true, writable: true, value }); if (previous) previous(key, value); }; } __name(makeExporter, "makeExporter"); function functionThis() { try { return Function("return this;")(); } catch (_2) { } } __name(functionThis, "functionThis"); function indirectEvalThis() { try { return (void 0, eval)("(function() { return this; })()"); } catch (_2) { } } __name(indirectEvalThis, "indirectEvalThis"); function sloppyModeThis() { return functionThis() || indirectEvalThis(); } __name(sloppyModeThis, "sloppyModeThis"); })(function(exporter, root) { var hasOwn = Object.prototype.hasOwnProperty; var supportsSymbol = typeof Symbol === "function"; var toPrimitiveSymbol = supportsSymbol && typeof Symbol.toPrimitive !== "undefined" ? Symbol.toPrimitive : "@@toPrimitive"; var iteratorSymbol = supportsSymbol && typeof Symbol.iterator !== "undefined" ? Symbol.iterator : "@@iterator"; var supportsCreate = typeof Object.create === "function"; var supportsProto = { __proto__: [] } instanceof Array; var downLevel = !supportsCreate && !supportsProto; var HashMap = { // create an object in dictionary mode (a.k.a. "slow" mode in v8) create: supportsCreate ? function() { return MakeDictionary(/* @__PURE__ */ Object.create(null)); } : supportsProto ? function() { return MakeDictionary({ __proto__: null }); } : function() { return MakeDictionary({}); }, has: downLevel ? function(map, key) { return hasOwn.call(map, key); } : function(map, key) { return key in map; }, get: downLevel ? function(map, key) { return hasOwn.call(map, key) ? map[key] : void 0; } : function(map, key) { return map[key]; } }; var functionPrototype = Object.getPrototypeOf(Function); var _Map = typeof Map === "function" && typeof Map.prototype.entries === "function" ? Map : CreateMapPolyfill(); var _Set = typeof Set === "function" && typeof Set.prototype.entries === "function" ? Set : CreateSetPolyfill(); var _WeakMap = typeof WeakMap === "function" ? WeakMap : CreateWeakMapPolyfill(); var registrySymbol = supportsSymbol ? Symbol.for("@reflect-metadata:registry") : void 0; var metadataRegistry = GetOrCreateMetadataRegistry(); var metadataProvider = CreateMetadataProvider(metadataRegistry); function decorate(decorators, target, propertyKey, attributes) { if (!IsUndefined(propertyKey)) { if (!IsArray(decorators)) throw new TypeError(); if (!IsObject(target)) throw new TypeError(); if (!IsObject(attributes) && !IsUndefined(attributes) && !IsNull(attributes)) throw new TypeError(); if (IsNull(attributes)) attributes = void 0; propertyKey = ToPropertyKey(propertyKey); return DecorateProperty(decorators, target, propertyKey, attributes); } else { if (!IsArray(decorators)) throw new TypeError(); if (!IsConstructor(target)) throw new TypeError(); return DecorateConstructor(decorators, target); } } __name(decorate, "decorate"); exporter("decorate", decorate); function metadata(metadataKey, metadataValue) { function decorator(target, propertyKey) { if (!IsObject(target)) throw new TypeError(); if (!IsUndefined(propertyKey) && !IsPropertyKey(propertyKey)) throw new TypeError(); OrdinaryDefineOwnMetadata(metadataKey, metadataValue, target, propertyKey); } __name(decorator, "decorator"); return decorator; } __name(metadata, "metadata"); exporter("metadata", metadata); function defineMetadata(metadataKey, metadataValue, target, propertyKey) { if (!IsObject(target)) throw new TypeError(); if (!IsUndefined(propertyKey)) propertyKey = ToPropertyKey(propertyKey); return OrdinaryDefineOwnMetadata(metadataKey, metadataValue, target, propertyKey); } __name(defineMetadata, "defineMetadata"); exporter("defineMetadata", defineMetadata); function hasMetadata(metadataKey, target, propertyKey) { if (!IsObject(target)) throw new TypeError(); if (!IsUndefined(propertyKey)) propertyKey = ToPropertyKey(propertyKey); return OrdinaryHasMetadata(metadataKey, target, propertyKey); } __name(hasMetadata, "hasMetadata"); exporter("hasMetadata", hasMetadata); function hasOwnMetadata(metadataKey, target, propertyKey) { if (!IsObject(target)) throw new TypeError(); if (!IsUndefined(propertyKey)) propertyKey = ToPropertyKey(propertyKey); return OrdinaryHasOwnMetadata(metadataKey, target, propertyKey); } __name(hasOwnMetadata, "hasOwnMetadata"); exporter("hasOwnMetadata", hasOwnMetadata); function getMetadata(metadataKey, target, propertyKey) { if (!IsObject(target)) throw new TypeError(); if (!IsUndefined(propertyKey)) propertyKey = ToPropertyKey(propertyKey); return OrdinaryGetMetadata(metadataKey, target, propertyKey); } __name(getMetadata, "getMetadata"); exporter("getMetadata", getMetadata); function getOwnMetadata(metadataKey, target, propertyKey) { if (!IsObject(target)) throw new TypeError(); if (!IsUndefined(propertyKey)) propertyKey = ToPropertyKey(propertyKey); return OrdinaryGetOwnMetadata(metadataKey, target, propertyKey); } __name(getOwnMetadata, "getOwnMetadata"); exporter("getOwnMetadata", getOwnMetadata); function getMetadataKeys(target, propertyKey) { if (!IsObject(target)) throw new TypeError(); if (!IsUndefined(propertyKey)) propertyKey = ToPropertyKey(propertyKey); return OrdinaryMetadataKeys(target, propertyKey); } __name(getMetadataKeys, "getMetadataKeys"); exporter("getMetadataKeys", getMetadataKeys); function getOwnMetadataKeys(target, propertyKey) { if (!IsObject(target)) throw new TypeError(); if (!IsUndefined(propertyKey)) propertyKey = ToPropertyKey(propertyKey); return OrdinaryOwnMetadataKeys(target, propertyKey); } __name(getOwnMetadataKeys, "getOwnMetadataKeys"); exporter("getOwnMetadataKeys", getOwnMetadataKeys); function deleteMetadata(metadataKey, target, propertyKey) { if (!IsObject(target)) throw new TypeError(); if (!IsUndefined(propertyKey)) propertyKey = ToPropertyKey(propertyKey); if (!IsObject(target)) throw new TypeError(); if (!IsUndefined(propertyKey)) propertyKey = ToPropertyKey(propertyKey); var provider = GetMetadataProvider( target, propertyKey, /*Create*/ false ); if (IsUndefined(provider)) return false; return provider.OrdinaryDeleteMetadata(metadataKey, target, propertyKey); } __name(deleteMetadata, "deleteMetadata"); exporter("deleteMetadata", deleteMetadata); function DecorateConstructor(decorators, target) { for (var i = decorators.length - 1; i >= 0; --i) { var decorator = decorators[i]; var decorated = decorator(target); if (!IsUndefined(decorated) && !IsNull(decorated)) { if (!IsConstructor(decorated)) throw new TypeError(); target = decorated; } } return target; } __name(DecorateConstructor, "DecorateConstructor"); function DecorateProperty(decorators, target, propertyKey, descriptor) { for (var i = decorators.length - 1; i >= 0; --i) { var decorator = decorators[i]; var decorated = decorator(target, propertyKey, descriptor); if (!IsUndefined(decorated) && !IsNull(decorated)) { if (!IsObject(decorated)) throw new TypeError(); descriptor = decorated; } } return descriptor; } __name(DecorateProperty, "DecorateProperty"); function OrdinaryHasMetadata(MetadataKey, O, P) { var hasOwn2 = OrdinaryHasOwnMetadata(MetadataKey, O, P); if (hasOwn2) return true; var parent = OrdinaryGetPrototypeOf(O); if (!IsNull(parent)) return OrdinaryHasMetadata(MetadataKey, parent, P); return false; } __name(OrdinaryHasMetadata, "OrdinaryHasMetadata"); function OrdinaryHasOwnMetadata(MetadataKey, O, P) { var provider = GetMetadataProvider( O, P, /*Create*/ false ); if (IsUndefined(provider)) return false; return ToBoolean(provider.OrdinaryHasOwnMetadata(MetadataKey, O, P)); } __name(OrdinaryHasOwnMetadata, "OrdinaryHasOwnMetadata"); function OrdinaryGetMetadata(MetadataKey, O, P) { var hasOwn2 = OrdinaryHasOwnMetadata(MetadataKey, O, P); if (hasOwn2) return OrdinaryGetOwnMetadata(MetadataKey, O, P); var parent = OrdinaryGetPrototypeOf(O); if (!IsNull(parent)) return OrdinaryGetMetadata(MetadataKey, parent, P); return void 0; } __name(OrdinaryGetMetadata, "OrdinaryGetMetadata"); function OrdinaryGetOwnMetadata(MetadataKey, O, P) { var provider = GetMetadataProvider( O, P, /*Create*/ false ); if (IsUndefined(provider)) return; return provider.OrdinaryGetOwnMetadata(MetadataKey, O, P); } __name(OrdinaryGetOwnMetadata, "OrdinaryGetOwnMetadata"); function OrdinaryDefineOwnMetadata(MetadataKey, MetadataValue, O, P) { var provider = GetMetadataProvider( O, P, /*Create*/ true ); provider.OrdinaryDefineOwnMetadata(MetadataKey, MetadataValue, O, P); } __name(OrdinaryDefineOwnMetadata, "OrdinaryDefineOwnMetadata"); function OrdinaryMetadataKeys(O, P) { var ownKeys2 = OrdinaryOwnMetadataKeys(O, P); var parent = OrdinaryGetPrototypeOf(O); if (parent === null) return ownKeys2; var parentKeys = OrdinaryMetadataKeys(parent, P); if (parentKeys.length <= 0) return ownKeys2; if (ownKeys2.length <= 0) return parentKeys; var set = new _Set(); var keys = []; for (var _i = 0, ownKeys_1 = ownKeys2; _i < ownKeys_1.length; _i++) { var key = ownKeys_1[_i]; var hasKey = set.has(key); if (!hasKey) { set.add(key); keys.push(key); } } for (var _a = 0, parentKeys_1 = parentKeys; _a < parentKeys_1.length; _a++) { var key = parentKeys_1[_a]; var hasKey = set.has(key); if (!hasKey) { set.add(key); keys.push(key); } } return keys; } __name(OrdinaryMetadataKeys, "OrdinaryMetadataKeys"); function OrdinaryOwnMetadataKeys(O, P) { var provider = GetMetadataProvider( O, P, /*create*/ false ); if (!provider) { return []; } return provider.OrdinaryOwnMetadataKeys(O, P); } __name(OrdinaryOwnMetadataKeys, "OrdinaryOwnMetadataKeys"); function Type(x) { if (x === null) return 1; switch (typeof x) { case "undefined": return 0; case "boolean": return 2; case "string": return 3; case "symbol": return 4; case "number": return 5; case "object": return x === null ? 1 : 6; default: return 6; } } __name(Type, "Type"); function IsUndefined(x) { return x === void 0; } __name(IsUndefined, "IsUndefined"); function IsNull(x) { return x === null; } __name(IsNull, "IsNull"); function IsSymbol(x) { return typeof x === "symbol"; } __name(IsSymbol, "IsSymbol"); function IsObject(x) { return typeof x === "object" ? x !== null : typeof x === "function"; } __name(IsObject, "IsObject"); function ToPrimitive(input, PreferredType) { switch (Type(input)) { case 0: return input; case 1: return input; case 2: return input; case 3: return input; case 4: return input; case 5: return input; } var hint = PreferredType === 3 ? "string" : PreferredType === 5 ? "number" : "default"; var exoticToPrim = GetMethod(input, toPrimitiveSymbol); if (exoticToPrim !== void 0) { var result = exoticToPrim.call(input, hint); if (IsObject(result)) throw new TypeError(); return result; } return OrdinaryToPrimitive(input, hint === "default" ? "number" : hint); } __name(ToPrimitive, "ToPrimitive"); function OrdinaryToPrimitive(O, hint) { if (hint === "string") { var toString_1 = O.toString; if (IsCallable(toString_1)) { var result = toString_1.call(O); if (!IsObject(result)) return result; } var valueOf = O.valueOf; if (IsCallable(valueOf)) { var result = valueOf.call(O); if (!IsObject(result)) return result; } } else { var valueOf = O.valueOf; if (IsCallable(valueOf)) { var result = valueOf.call(O); if (!IsObject(result)) return result; } var toString_2 = O.toString; if (IsCallable(toString_2)) { var result = toString_2.call(O); if (!IsObject(result)) return result; } } throw new TypeError(); } __name(OrdinaryToPrimitive, "OrdinaryToPrimitive"); function ToBoolean(argument) { return !!argument; } __name(ToBoolean, "ToBoolean"); function ToString(argument) { return "" + argument; } __name(ToString, "ToString"); function ToPropertyKey(argument) { var key = ToPrimitive( argument, 3 /* String */ ); if (IsSymbol(key)) return key; return ToString(key); } __name(ToPropertyKey, "ToPropertyKey"); function IsArray(argument) { return Array.isArray ? Array.isArray(argument) : argument instanceof Object ? argument instanceof Array : Object.prototype.toString.call(argument) === "[object Array]"; } __name(IsArray, "IsArray"); function IsCallable(argument) { return typeof argument === "function"; } __name(IsCallable, "IsCallable"); function IsConstructor(argument) { return typeof argument === "function"; } __name(IsConstructor, "IsConstructor"); function IsPropertyKey(argument) { switch (Type(argument)) { case 3: return true; case 4: return true; default: return false; } } __name(IsPropertyKey, "IsPropertyKey"); function SameValueZero(x, y) { return x === y || x !== x && y !== y; } __name(SameValueZero, "SameValueZero"); function GetMethod(V, P) { var func = V[P]; if (func === void 0 || func === null) return void 0; if (!IsCallable(func)) throw new TypeError(); return func; } __name(GetMethod, "GetMethod"); function GetIterator(obj2) { var method = GetMethod(obj2, iteratorSymbol); if (!IsCallable(method)) throw new TypeError(); var iterator = method.call(obj2); if (!IsObject(iterator)) throw new TypeError(); return iterator; } __name(GetIterator, "GetIterator"); function IteratorValue(iterResult) { return iterResult.value; } __name(IteratorValue, "IteratorValue"); function IteratorStep(iterator) { var result = iterator.next(); return result.done ? false : result; } __name(IteratorStep, "IteratorStep"); function IteratorClose(iterator) { var f = iterator["return"]; if (f) f.call(iterator); } __name(IteratorClose, "IteratorClose"); function OrdinaryGetPrototypeOf(O) { var proto = Object.getPrototypeOf(O); if (typeof O !== "function" || O === functionPrototype) return proto; if (proto !== functionPrototype) return proto; var prototype = O.prototype; var prototypeProto = prototype && Object.getPrototypeOf(prototype); if (prototypeProto == null || prototypeProto === Object.prototype) return proto; var constructor = prototypeProto.constructor; if (typeof constructor !== "function") return proto; if (constructor === O) return proto; return constructor; } __name(OrdinaryGetPrototypeOf, "OrdinaryGetPrototypeOf"); function CreateMetadataRegistry() { var fallback; if (!IsUndefined(registrySymbol) && typeof root.Reflect !== "undefined" && !(registrySymbol in root.Reflect) && typeof root.Reflect.defineMetadata === "function") { fallback = CreateFallbackProvider(root.Reflect); } var first; var second; var rest; var targetProviderMap = new _WeakMap(); var registry = { registerProvider, getProvider, setProvider }; return registry; function registerProvider(provider) { if (!Object.isExtensible(registry)) { throw new Error("Cannot add provider to a frozen registry."); } switch (true) { case fallback === provider: break; case IsUndefined(first): first = provider; break; case first === provider: break; case IsUndefined(second): second = provider; break; case second === provider: break; default: if (rest === void 0) rest = new _Set(); rest.add(provider); break; } } __name(registerProvider, "registerProvider"); function getProviderNoCache(O, P) { if (!IsUndefined(first)) { if (first.isProviderFor(O, P)) return first; if (!IsUndefined(second)) { if (second.isProviderFor(O, P)) return first; if (!IsUndefined(rest)) { var iterator = GetIterator(rest); while (true) { var next = IteratorStep(iterator); if (!next) { return void 0; } var provider = IteratorValue(next); if (provider.isProviderFor(O, P)) { IteratorClose(iterator); return provider; } } } } } if (!IsUndefined(fallback) && fallback.isProviderFor(O, P)) { return fallback; } return void 0; } __name(getProviderNoCache, "getProviderNoCache"); function getProvider(O, P) { var providerMap = targetProviderMap.get(O); var provider; if (!IsUndefined(providerMap)) { provider = providerMap.get(P); } if (!IsUndefined(provider)) { return provider; } provider = getProviderNoCache(O, P); if (!IsUndefined(provider)) { if (IsUndefined(providerMap)) { providerMap = new _Map(); targetProviderMap.set(O, providerMap); } providerMap.set(P, provider); } return provider; } __name(getProvider, "getProvider"); function hasProvider(provider) { if (IsUndefined(provider)) throw new TypeError(); return first === provider || second === provider || !IsUndefined(rest) && rest.has(provider); } __name(hasProvider, "hasProvider"); function setProvider(O, P, provider) { if (!hasProvider(provider)) { throw new Error("Metadata provider not registered."); } var existingProvider = getProvider(O, P); if (existingProvider !== provider) { if (!IsUndefined(existingProvider)) { return false; } var providerMap = targetProviderMap.get(O); if (IsUndefined(providerMap)) { providerMap = new _Map(); targetProviderMap.set(O, providerMap); } providerMap.set(P, provider); } return true; } __name(setProvider, "setProvider"); } __name(CreateMetadataRegistry, "CreateMetadataRegistry"); function GetOrCreateMetadataRegistry() { var metadataRegistry2; if (!IsUndefined(registrySymbol) && IsObject(root.Reflect) && Object.isExtensible(root.Reflect)) { metadataRegistry2 = root.Reflect[registrySymbol]; } if (IsUndefined(metadataRegistry2)) { metadataRegistry2 = CreateMetadataRegistry(); } if (!IsUndefined(registrySymbol) && IsObject(root.Reflect) && Object.isExtensible(root.Reflect)) { Object.defineProperty(root.Reflect, registrySymbol, { enumerable: false, configurable: false, writable: false, value: metadataRegistry2 }); } return metadataRegistry2; } __name(GetOrCreateMetadataRegistry, "GetOrCreateMetadataRegistry"); function CreateMetadataProvider(registry) { var metadata2 = new _WeakMap(); var provider = { isProviderFor: /* @__PURE__ */ __name(function(O, P) { var targetMetadata = metadata2.get(O); if (IsUndefined(targetMetadata)) return false; return targetMetadata.has(P); }, "isProviderFor"), OrdinaryDefineOwnMetadata: OrdinaryDefineOwnMetadata2, OrdinaryHasOwnMetadata: OrdinaryHasOwnMetadata2, OrdinaryGetOwnMetadata: OrdinaryGetOwnMetadata2, OrdinaryOwnMetadataKeys: OrdinaryOwnMetadataKeys2, OrdinaryDeleteMetadata }; metadataRegistry.registerProvider(provider); return provider; function GetOrCreateMetadataMap(O, P, Create) { var targetMetadata = metadata2.get(O); var createdTargetMetadata = false; if (IsUndefined(targetMetadata)) { if (!Create) return void 0; targetMetadata = new _Map(); metadata2.set(O, targetMetadata); createdTargetMetadata = true; } var metadataMap = targetMetadata.get(P); if (IsUndefined(metadataMap)) { if (!Create) return void 0; metadataMap = new _Map(); targetMetadata.set(P, metadataMap); if (!registry.setProvider(O, P, provider)) { targetMetadata.delete(P); if (createdTargetMetadata) { metadata2.delete(O); } throw new Error("Wrong provider for target."); } } return metadataMap; } __name(GetOrCreateMetadataMap, "GetOrCreateMetadataMap"); function OrdinaryHasOwnMetadata2(MetadataKey, O, P) { var metadataMap = GetOrCreateMetadataMap( O, P, /*Create*/ false ); if (IsUndefined(metadataMap)) return false; return ToBoolean(metadataMap.has(MetadataKey)); } __name(OrdinaryHasOwnMetadata2, "OrdinaryHasOwnMetadata"); function OrdinaryGetOwnMetadata2(MetadataKey, O, P) { var metadataMap = GetOrCreateMetadataMap( O, P, /*Create*/ false ); if (IsUndefined(metadataMap)) return void 0; return metadataMap.get(MetadataKey); } __name(OrdinaryGetOwnMetadata2, "OrdinaryGetOwnMetadata"); function OrdinaryDefineOwnMetadata2(MetadataKey, MetadataValue, O, P) { var metadataMap = GetOrCreateMetadataMap( O, P, /*Create*/ true ); metadataMap.set(MetadataKey, MetadataValue); } __name(OrdinaryDefineOwnMetadata2, "OrdinaryDefineOwnMetadata"); function OrdinaryOwnMetadataKeys2(O, P) { var keys = []; var metadataMap = GetOrCreateMetadataMap( O, P, /*Create*/ false ); if (IsUndefined(metadataMap)) return keys; var keysObj = metadataMap.keys(); var iterator = GetIterator(keysObj); var k = 0; while (true) { var next = IteratorStep(iterator); if (!next) { keys.length = k; return keys; } var nextValue = IteratorValue(next); try { keys[k] = nextValue; } catch (e) { try { IteratorClose(iterator); } finally { throw e; } } k++; } } __name(OrdinaryOwnMetadataKeys2, "OrdinaryOwnMetadataKeys"); function OrdinaryDeleteMetadata(MetadataKey, O, P) { var metadataMap = GetOrCreateMetadataMap( O, P, /*Create*/ false ); if (IsUndefined(metadataMap)) return false; if (!metadataMap.delete(MetadataKey)) return false; if (metadataMap.size === 0) { var targetMetadata = metadata2.get(O); if (!IsUndefined(targetMetadata)) { targetMetadata.delete(P); if (targetMetadata.size === 0) { metadata2.delete(targetMetadata); } } } return true; } __name(OrdinaryDeleteMetadata, "OrdinaryDeleteMetadata"); } __name(CreateMetadataProvider, "CreateMetadataProvider"); function CreateFallbackProvider(reflect) { var defineMetadata2 = reflect.defineMetadata, hasOwnMetadata2 = reflect.hasOwnMetadata, getOwnMetadata2 = reflect.getOwnMetadata, getOwnMetadataKeys2 = reflect.getOwnMetadataKeys, deleteMetadata2 = reflect.deleteMetadata; var metadataOwner = new _WeakMap(); var provider = { isProviderFor: /* @__PURE__ */ __name(function(O, P) { var metadataPropertySet = metadataOwner.get(O); if (!IsUndefined(metadataPropertySet) && metadataPropertySet.has(P)) { return true; } if (getOwnMetadataKeys2(O, P).length) { if (IsUndefined(metadataPropertySet)) { metadataPropertySet = new _Set(); metadataOwner.set(O, metadataPropertySet); } metadataPropertySet.add(P); return true; } return false; }, "isProviderFor"), OrdinaryDefineOwnMetadata: defineMetadata2, OrdinaryHasOwnMetadata: hasOwnMetadata2, OrdinaryGetOwnMetadata: getOwnMetadata2, OrdinaryOwnMetadataKeys: getOwnMetadataKeys2, OrdinaryDeleteMetadata: deleteMetadata2 }; return provider; } __name(CreateFallbackProvider, "CreateFallbackProvider"); function GetMetadataProvider(O, P, Create) { var registeredProvider = metadataRegistry.getProvider(O, P); if (!IsUndefined(registeredProvider)) { return registeredProvider; } if (Create) { if (metadataRegistry.setProvider(O, P, metadataProvider)) { return metadataProvider; } throw new Error("Illegal state."); } return void 0; } __name(GetMetadataProvider, "GetMetadataProvider"); function CreateMapPolyfill() { var cacheSentinel = {}; var arraySentinel = []; var MapIterator = ( /** @class */ (function() { function MapIterator2(keys, values, selector) { this._index = 0; this._keys = keys; this._values = values; this._selector = selector; } __name(MapIterator2, "MapIterator"); MapIterator2.prototype["@@iterator"] = function() { return this; }; MapIterator2.prototype[iteratorSymbol] = function() { return this; }; MapIterator2.prototype.next = function() { var index = this._index; if (index >= 0 && index < this._keys.length) { var result = this._selector(this._keys[index], this._values[index]); if (index + 1 >= this._keys.length) { this._index = -1; this._keys = arraySentinel; this._values = arraySentinel; } else { this._index++; } return { value: result, done: false }; } return { value: void 0, done: true }; }; MapIterator2.prototype.throw = function(error) { if (this._index >= 0) { this._index = -1; this._keys = arraySentinel; this._values = arraySentinel; } throw error; }; MapIterator2.prototype.return = function(value) { if (this._index >= 0) { this._index = -1; this._keys = arraySentinel; this._values = arraySentinel; } return { value, done: true }; }; return MapIterator2; })() ); var Map2 = ( /** @class */ (function() { function Map3() { this._keys = []; this._values = []; this._cacheKey = cacheSentinel; this._cacheIndex = -2; } __name(Map3, "Map"); Object.defineProperty(Map3.prototype, "size", { get: /* @__PURE__ */ __name(function() { return this._keys.length; }, "get"), enumerable: true, configurable: true }); Map3.prototype.has = function(key) { return this._find( key, /*insert*/ false ) >= 0; }; Map3.prototype.get = function(key) { var index = this._find( key, /*insert*/ false ); return index >= 0 ? this._values[index] : void 0; }; Map3.prototype.set = function(key, value) { var index = this._find( key, /*insert*/ true ); this._values[index] = value; return this; }; Map3.prototype.delete = function(key) { var index = this._find( key, /*insert*/ false ); if (index >= 0) { var size = this._keys.length; for (var i = index + 1; i < size; i++) { this._keys[i - 1] = this._keys[i]; this._values[i - 1] = this._values[i]; } this._keys.length--; this._values.length--; if (SameValueZero(key, this._cacheKey)) { this._cacheKey = cacheSentinel; this._cacheIndex = -2; } return true; } return false; }; Map3.prototype.clear = function() { this._keys.length = 0; this._values.length = 0; this._cacheKey = cacheSentinel; this._cacheIndex = -2; }; Map3.prototype.keys = function() { return new MapIterator(this._keys, this._values, getKey); }; Map3.prototype.values = function() { return new MapIterator(this._keys, this._values, getValue); }; Map3.prototype.entries = function() { return new MapIterator(this._keys, this._values, getEntry); }; Map3.prototype["@@iterator"] = function() { return this.entries(); }; Map3.prototype[iteratorSymbol] = function() { return this.entries(); }; Map3.prototype._find = function(key, insert) { if (!SameValueZero(this._cacheKey, key)) { this._cacheIndex = -1; for (var i = 0; i < this._keys.length; i++) { if (SameValueZero(this._keys[i], key)) { this._cacheIndex = i; break; } } } if (this._cacheIndex < 0 && insert) { this._cacheIndex = this._keys.length; this._keys.push(key); this._values.push(void 0); } return this._cacheIndex; }; return Map3; })() ); return Map2; function getKey(key, _2) { return key; } __name(getKey, "getKey"); function getValue(_2, value) { return value; } __name(getValue, "getValue"); function getEntry(key, value) { return [key, value]; } __name(getEntry, "getEntry"); } __name(CreateMapPolyfill, "CreateMapPolyfill"); function CreateSetPolyfill() { var Set2 = ( /** @class */ (function() { function Set3() { this._map = new _Map(); } __name(Set3, "Set"); Object.defineProperty(Set3.prototype, "size", { get: /* @__PURE__ */ __name(function() { return this._map.size; }, "get"), enumerable: true, configurable: true }); Set3.prototype.has = function(value) { return this._map.has(value); }; Set3.prototype.add = function(value) { return this._map.set(value, value), this; }; Set3.prototype.delete = function(value) { return this._map.delete(value); }; Set3.prototype.clear = function() { this._map.clear(); }; Set3.prototype.keys = function() { return this._map.keys(); }; Set3.prototype.values = function() { return this._map.keys(); }; Set3.prototype.entries = function() { return this._map.entries(); }; Set3.prototype["@@iterator"] = function() { return this.keys(); }; Set3.prototype[iteratorSymbol] = function() { return this.keys(); }; return Set3; })() ); return Set2; } __name(CreateSetPolyfill, "CreateSetPolyfill"); function CreateWeakMapPolyfill() { var UUID_SIZE = 16; var keys = HashMap.create(); var rootKey = CreateUniqueKey(); return ( /** @class */ (function() { function WeakMap2() { this._key = CreateUniqueKey(); } __name(WeakMap2, "WeakMap"); WeakMap2.prototype.has = function(target) { var table = GetOrCreateWeakMapTable( target, /*create*/ false ); return table !== void 0 ? HashMap.has(table, this._key) : false; }; WeakMap2.prototype.get = function(target) { var table = GetOrCreateWeakMapTable( target, /*create*/ false ); return table !== void 0 ? HashMap.get(table, this._key) : void 0; }; WeakMap2.prototype.set = function(target, value) { var table = GetOrCreateWeakMapTable( target, /*create*/ true ); table[this._key] = value; return this; }; WeakMap2.prototype.delete = function(target) { var table = GetOrCreateWeakMapTable( target, /*create*/ false ); return table !== void 0 ? delete table[this._key] : false; }; WeakMap2.prototype.clear = function() { this._key = CreateUniqueKey(); }; return WeakMap2; })() ); function CreateUniqueKey() { var key; do key = "@@WeakMap@@" + CreateUUID(); while (HashMap.has(keys, key)); keys[key] = true; return key; } __name(CreateUniqueKey, "CreateUniqueKey"); function GetOrCreateWeakMapTable(target, create) { if (!hasOwn.call(target, rootKey)) { if (!create) return void 0; Object.defineProperty(target, rootKey, { value: HashMap.create() }); } return target[rootKey]; } __name(GetOrCreateWeakMapTable, "GetOrCreateWeakMapTable"); function FillRandomBytes(buffer, size) { for (var i = 0; i < size; ++i) buffer[i] = Math.random() * 255 | 0; return buffer; } __name(FillRandomBytes, "FillRandomBytes"); function GenRandomBytes(size) { if (typeof Uint8Array === "function") { var array = new Uint8Array(size); if (typeof crypto !== "undefined") { crypto.getRandomValues(array); } else if (typeof msCrypto !== "undefined") { msCrypto.getRandomValues(array); } else { FillRandomBytes(array, size); } return array; } return FillRandomBytes(new Array(size), size); } __name(GenRandomBytes, "GenRandomBytes"); function CreateUUID() { var data = GenRandomBytes(UUID_SIZE); data[6] = data[6] & 79 | 64; data[8] = data[8] & 191 | 128; var result = ""; for (var offset = 0; offset < UUID_SIZE; ++offset) { var byte = data[offset]; if (offset === 4 || offset === 6 || offset === 8) result += "-"; if (byte < 16) result += "0"; result += byte.toString(16).toLowerCase(); } return result; } __name(CreateUUID, "CreateUUID"); } __name(CreateWeakMapPolyfill, "CreateWeakMapPolyfill"); function MakeDictionary(obj2) { obj2.__ = void 0; delete obj2.__; return obj2; } __name(MakeDictionary, "MakeDictionary"); }); })(Reflect2 || (Reflect2 = {})); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/bind.decorator.js var require_bind_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/bind.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Bind = Bind; function Bind(...decorators) { return (target, key, descriptor) => { decorators.forEach((fn, index) => fn(target, key, index)); return descriptor; }; } __name(Bind, "Bind"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/constants.js var require_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ENTRY_PROVIDER_WATERMARK = exports2.CATCH_WATERMARK = exports2.CONTROLLER_WATERMARK = exports2.INJECTABLE_WATERMARK = exports2.VERSION_METADATA = exports2.SSE_METADATA = exports2.RESPONSE_PASSTHROUGH_METADATA = exports2.REDIRECT_METADATA = exports2.HEADERS_METADATA = exports2.MODULE_PATH = exports2.HTTP_CODE_METADATA = exports2.RENDER_METADATA = exports2.ENHANCER_KEY_TO_SUBTYPE_MAP = exports2.EXCEPTION_FILTERS_METADATA = exports2.INTERCEPTORS_METADATA = exports2.GUARDS_METADATA = exports2.PIPES_METADATA = exports2.FILTER_CATCH_EXCEPTIONS = exports2.CUSTOM_ROUTE_ARGS_METADATA = exports2.ROUTE_ARGS_METADATA = exports2.METHOD_METADATA = exports2.SCOPE_OPTIONS_METADATA = exports2.OPTIONAL_PROPERTY_DEPS_METADATA = exports2.PROPERTY_DEPS_METADATA = exports2.OPTIONAL_DEPS_METADATA = exports2.SELF_DECLARED_DEPS_METADATA = exports2.PARAMTYPES_METADATA = exports2.PATH_METADATA = exports2.HOST_METADATA = exports2.GLOBAL_MODULE_METADATA = exports2.MODULE_METADATA = void 0; exports2.MODULE_METADATA = { IMPORTS: "imports", PROVIDERS: "providers", CONTROLLERS: "controllers", EXPORTS: "exports" }; exports2.GLOBAL_MODULE_METADATA = "__module:global__"; exports2.HOST_METADATA = "host"; exports2.PATH_METADATA = "path"; exports2.PARAMTYPES_METADATA = "design:paramtypes"; exports2.SELF_DECLARED_DEPS_METADATA = "self:paramtypes"; exports2.OPTIONAL_DEPS_METADATA = "optional:paramtypes"; exports2.PROPERTY_DEPS_METADATA = "self:properties_metadata"; exports2.OPTIONAL_PROPERTY_DEPS_METADATA = "optional:properties_metadata"; exports2.SCOPE_OPTIONS_METADATA = "scope:options"; exports2.METHOD_METADATA = "method"; exports2.ROUTE_ARGS_METADATA = "__routeArguments__"; exports2.CUSTOM_ROUTE_ARGS_METADATA = "__customRouteArgs__"; exports2.FILTER_CATCH_EXCEPTIONS = "__filterCatchExceptions__"; exports2.PIPES_METADATA = "__pipes__"; exports2.GUARDS_METADATA = "__guards__"; exports2.INTERCEPTORS_METADATA = "__interceptors__"; exports2.EXCEPTION_FILTERS_METADATA = "__exceptionFilters__"; exports2.ENHANCER_KEY_TO_SUBTYPE_MAP = { [exports2.GUARDS_METADATA]: "guard", [exports2.INTERCEPTORS_METADATA]: "interceptor", [exports2.PIPES_METADATA]: "pipe", [exports2.EXCEPTION_FILTERS_METADATA]: "filter" }; exports2.RENDER_METADATA = "__renderTemplate__"; exports2.HTTP_CODE_METADATA = "__httpCode__"; exports2.MODULE_PATH = "__module_path__"; exports2.HEADERS_METADATA = "__headers__"; exports2.REDIRECT_METADATA = "__redirect__"; exports2.RESPONSE_PASSTHROUGH_METADATA = "__responsePassthrough__"; exports2.SSE_METADATA = "__sse__"; exports2.VERSION_METADATA = "__version__"; exports2.INJECTABLE_WATERMARK = "__injectable__"; exports2.CONTROLLER_WATERMARK = "__controller__"; exports2.CATCH_WATERMARK = "__catch__"; exports2.ENTRY_PROVIDER_WATERMARK = "__entryProvider__"; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/catch.decorator.js var require_catch_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/catch.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Catch = Catch; var constants_1 = require_constants(); function Catch(...exceptions) { return (target) => { Reflect.defineMetadata(constants_1.CATCH_WATERMARK, true, target); Reflect.defineMetadata(constants_1.FILTER_CATCH_EXCEPTIONS, exceptions, target); }; } __name(Catch, "Catch"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/shared.utils.js var require_shared_utils = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/shared.utils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isSymbol = exports2.isEmpty = exports2.isNil = exports2.isConstructor = exports2.isNumber = exports2.isString = exports2.isFunction = exports2.stripEndSlash = exports2.normalizePath = exports2.addLeadingSlash = exports2.isPlainObject = exports2.isObject = exports2.isUndefined = void 0; var isUndefined = /* @__PURE__ */ __name((obj2) => typeof obj2 === "undefined", "isUndefined"); exports2.isUndefined = isUndefined; var isObject2 = /* @__PURE__ */ __name((fn) => !(0, exports2.isNil)(fn) && typeof fn === "object", "isObject"); exports2.isObject = isObject2; var isPlainObject = /* @__PURE__ */ __name((fn) => { if (!(0, exports2.isObject)(fn)) { return false; } const proto = Object.getPrototypeOf(fn); if (proto === null) { return true; } const ctor = Object.prototype.hasOwnProperty.call(proto, "constructor") && proto.constructor; return typeof ctor === "function" && ctor instanceof ctor && Function.prototype.toString.call(ctor) === Function.prototype.toString.call(Object); }, "isPlainObject"); exports2.isPlainObject = isPlainObject; var addLeadingSlash = /* @__PURE__ */ __name((path) => path && typeof path === "string" ? path.charAt(0) !== "/" ? "/" + path : path : "", "addLeadingSlash"); exports2.addLeadingSlash = addLeadingSlash; var normalizePath = /* @__PURE__ */ __name((path) => path ? path.startsWith("/") ? ("/" + path.replace(/\/+$/, "")).replace(/\/+/g, "/") : "/" + path.replace(/\/+$/, "") : "/", "normalizePath"); exports2.normalizePath = normalizePath; var stripEndSlash = /* @__PURE__ */ __name((path) => path[path.length - 1] === "/" ? path.slice(0, path.length - 1) : path, "stripEndSlash"); exports2.stripEndSlash = stripEndSlash; var isFunction = /* @__PURE__ */ __name((val) => typeof val === "function", "isFunction"); exports2.isFunction = isFunction; var isString = /* @__PURE__ */ __name((val) => typeof val === "string", "isString"); exports2.isString = isString; var isNumber = /* @__PURE__ */ __name((val) => typeof val === "number", "isNumber"); exports2.isNumber = isNumber; var isConstructor = /* @__PURE__ */ __name((val) => val === "constructor", "isConstructor"); exports2.isConstructor = isConstructor; var isNil = /* @__PURE__ */ __name((val) => (0, exports2.isUndefined)(val) || val === null, "isNil"); exports2.isNil = isNil; var isEmpty = /* @__PURE__ */ __name((array) => !(array && array.length > 0), "isEmpty"); exports2.isEmpty = isEmpty; var isSymbol = /* @__PURE__ */ __name((val) => typeof val === "symbol", "isSymbol"); exports2.isSymbol = isSymbol; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/controller.decorator.js var require_controller_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/controller.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Controller = Controller; var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); function Controller(prefixOrOptions) { const defaultPath = "/"; const [path, host, scopeOptions, versionOptions] = (0, shared_utils_1.isUndefined)(prefixOrOptions) ? [defaultPath, void 0, void 0, void 0] : (0, shared_utils_1.isString)(prefixOrOptions) || Array.isArray(prefixOrOptions) ? [prefixOrOptions, void 0, void 0, void 0] : [ prefixOrOptions.path || defaultPath, prefixOrOptions.host, { scope: prefixOrOptions.scope, durable: prefixOrOptions.durable }, Array.isArray(prefixOrOptions.version) ? Array.from(new Set(prefixOrOptions.version)) : prefixOrOptions.version ]; return (target) => { Reflect.defineMetadata(constants_1.CONTROLLER_WATERMARK, true, target); Reflect.defineMetadata(constants_1.PATH_METADATA, path, target); Reflect.defineMetadata(constants_1.HOST_METADATA, host, target); Reflect.defineMetadata(constants_1.SCOPE_OPTIONS_METADATA, scopeOptions, target); Reflect.defineMetadata(constants_1.VERSION_METADATA, versionOptions, target); }; } __name(Controller, "Controller"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/dependencies.decorator.js var require_dependencies_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/dependencies.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Dependencies = void 0; exports2.flatten = flatten; var constants_1 = require_constants(); function flatten(arr) { const flat = [].concat(...arr); return flat.some(Array.isArray) ? flatten(flat) : flat; } __name(flatten, "flatten"); var Dependencies = /* @__PURE__ */ __name((...dependencies) => { const flattenDeps = flatten(dependencies); return (target) => { Reflect.defineMetadata(constants_1.PARAMTYPES_METADATA, flattenDeps, target); }; }, "Dependencies"); exports2.Dependencies = Dependencies; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/extend-metadata.util.js var require_extend_metadata_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/extend-metadata.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.extendArrayMetadata = extendArrayMetadata; function extendArrayMetadata(key, metadata, target) { const previousValue = Reflect.getMetadata(key, target) || []; const value = [...previousValue, ...metadata]; Reflect.defineMetadata(key, value, target); } __name(extendArrayMetadata, "extendArrayMetadata"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/validate-each.util.js var require_validate_each_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/validate-each.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InvalidDecoratorItemException = void 0; exports2.validateEach = validateEach; var InvalidDecoratorItemException = class extends Error { static { __name(this, "InvalidDecoratorItemException"); } constructor(decorator, item, context) { const message = `Invalid ${item} passed to ${decorator}() decorator (${context}).`; super(message); this.msg = message; } what() { return this.msg; } }; exports2.InvalidDecoratorItemException = InvalidDecoratorItemException; function validateEach(context, arr, predicate, decorator, item) { if (!context || !context.name) { return true; } const errors = arr.some((str) => !predicate(str)); if (errors) { throw new InvalidDecoratorItemException(decorator, item, context.name); } return true; } __name(validateEach, "validateEach"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/exception-filters.decorator.js var require_exception_filters_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/exception-filters.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UseFilters = void 0; var constants_1 = require_constants(); var extend_metadata_util_1 = require_extend_metadata_util(); var shared_utils_1 = require_shared_utils(); var validate_each_util_1 = require_validate_each_util(); var UseFilters = /* @__PURE__ */ __name((...filters) => addExceptionFiltersMetadata(...filters), "UseFilters"); exports2.UseFilters = UseFilters; function addExceptionFiltersMetadata(...filters) { return (target, key, descriptor) => { const isFilterValid = /* @__PURE__ */ __name((filter) => filter && ((0, shared_utils_1.isFunction)(filter) || (0, shared_utils_1.isFunction)(filter.catch)), "isFilterValid"); if (descriptor) { (0, validate_each_util_1.validateEach)(target.constructor, filters, isFilterValid, "@UseFilters", "filter"); (0, extend_metadata_util_1.extendArrayMetadata)(constants_1.EXCEPTION_FILTERS_METADATA, filters, descriptor.value); return descriptor; } (0, validate_each_util_1.validateEach)(target, filters, isFilterValid, "@UseFilters", "filter"); (0, extend_metadata_util_1.extendArrayMetadata)(constants_1.EXCEPTION_FILTERS_METADATA, filters, target); return target; }; } __name(addExceptionFiltersMetadata, "addExceptionFiltersMetadata"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/inject.decorator.js var require_inject_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/inject.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Inject = Inject; var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); function Inject(token) { const injectCallHasArguments = arguments.length > 0; return (target, key, index) => { let type = token || Reflect.getMetadata("design:type", target, key); if (!type && !injectCallHasArguments) { type = Reflect.getMetadata(constants_1.PARAMTYPES_METADATA, target, key)?.[index]; } if (!(0, shared_utils_1.isUndefined)(index)) { let dependencies = Reflect.getMetadata(constants_1.SELF_DECLARED_DEPS_METADATA, target) || []; dependencies = [...dependencies, { index, param: type }]; Reflect.defineMetadata(constants_1.SELF_DECLARED_DEPS_METADATA, dependencies, target); return; } let properties = Reflect.getMetadata(constants_1.PROPERTY_DEPS_METADATA, target.constructor) || []; properties = [...properties, { key, type }]; Reflect.defineMetadata(constants_1.PROPERTY_DEPS_METADATA, properties, target.constructor); }; } __name(Inject, "Inject"); } }); // ../../node_modules/.pnpm/uid@2.0.2/node_modules/uid/dist/index.js var require_dist = __commonJS({ "../../node_modules/.pnpm/uid@2.0.2/node_modules/uid/dist/index.js"(exports2) { var IDX = 256; var HEX = []; var SIZE = 256; var BUFFER; while (IDX--) HEX[IDX] = (IDX + 256).toString(16).substring(1); function uid(len) { var i = 0, tmp = len || 11; if (!BUFFER || IDX + tmp > SIZE * 2) { for (BUFFER = "", IDX = 0; i < SIZE; i++) { BUFFER += HEX[Math.random() * 256 | 0]; } } return BUFFER.substring(IDX, IDX++ + tmp); } __name(uid, "uid"); exports2.uid = uid; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/injectable.decorator.js var require_injectable_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/injectable.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Injectable = Injectable; exports2.mixin = mixin; var uid_1 = require_dist(); var constants_1 = require_constants(); function Injectable(options) { return (target) => { Reflect.defineMetadata(constants_1.INJECTABLE_WATERMARK, true, target); Reflect.defineMetadata(constants_1.SCOPE_OPTIONS_METADATA, options, target); }; } __name(Injectable, "Injectable"); function mixin(mixinClass) { Object.defineProperty(mixinClass, "name", { value: (0, uid_1.uid)(21) }); Injectable()(mixinClass); return mixinClass; } __name(mixin, "mixin"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/optional.decorator.js var require_optional_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/optional.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Optional = Optional; var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); function Optional() { return (target, key, index) => { if (!(0, shared_utils_1.isUndefined)(index)) { const args = Reflect.getMetadata(constants_1.OPTIONAL_DEPS_METADATA, target) || []; Reflect.defineMetadata(constants_1.OPTIONAL_DEPS_METADATA, [...args, index], target); return; } const properties = Reflect.getMetadata(constants_1.OPTIONAL_PROPERTY_DEPS_METADATA, target.constructor) || []; Reflect.defineMetadata(constants_1.OPTIONAL_PROPERTY_DEPS_METADATA, [...properties, key], target.constructor); }; } __name(Optional, "Optional"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/set-metadata.decorator.js var require_set_metadata_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/set-metadata.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SetMetadata = void 0; var SetMetadata = /* @__PURE__ */ __name((metadataKey, metadataValue) => { const decoratorFactory = /* @__PURE__ */ __name((target, key, descriptor) => { if (descriptor) { Reflect.defineMetadata(metadataKey, metadataValue, descriptor.value); return descriptor; } Reflect.defineMetadata(metadataKey, metadataValue, target); return target; }, "decoratorFactory"); decoratorFactory.KEY = metadataKey; return decoratorFactory; }, "SetMetadata"); exports2.SetMetadata = SetMetadata; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/use-guards.decorator.js var require_use_guards_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/use-guards.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UseGuards = UseGuards; var constants_1 = require_constants(); var extend_metadata_util_1 = require_extend_metadata_util(); var shared_utils_1 = require_shared_utils(); var validate_each_util_1 = require_validate_each_util(); function UseGuards(...guards) { return (target, key, descriptor) => { const isGuardValid = /* @__PURE__ */ __name((guard) => guard && ((0, shared_utils_1.isFunction)(guard) || (0, shared_utils_1.isFunction)(guard.canActivate)), "isGuardValid"); if (descriptor) { (0, validate_each_util_1.validateEach)(target.constructor, guards, isGuardValid, "@UseGuards", "guard"); (0, extend_metadata_util_1.extendArrayMetadata)(constants_1.GUARDS_METADATA, guards, descriptor.value); return descriptor; } (0, validate_each_util_1.validateEach)(target, guards, isGuardValid, "@UseGuards", "guard"); (0, extend_metadata_util_1.extendArrayMetadata)(constants_1.GUARDS_METADATA, guards, target); return target; }; } __name(UseGuards, "UseGuards"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/use-interceptors.decorator.js var require_use_interceptors_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/use-interceptors.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UseInterceptors = UseInterceptors; var constants_1 = require_constants(); var extend_metadata_util_1 = require_extend_metadata_util(); var shared_utils_1 = require_shared_utils(); var validate_each_util_1 = require_validate_each_util(); function UseInterceptors(...interceptors) { return (target, key, descriptor) => { const isInterceptorValid = /* @__PURE__ */ __name((interceptor) => interceptor && ((0, shared_utils_1.isFunction)(interceptor) || (0, shared_utils_1.isFunction)(interceptor.intercept)), "isInterceptorValid"); if (descriptor) { (0, validate_each_util_1.validateEach)(target.constructor, interceptors, isInterceptorValid, "@UseInterceptors", "interceptor"); (0, extend_metadata_util_1.extendArrayMetadata)(constants_1.INTERCEPTORS_METADATA, interceptors, descriptor.value); return descriptor; } (0, validate_each_util_1.validateEach)(target, interceptors, isInterceptorValid, "@UseInterceptors", "interceptor"); (0, extend_metadata_util_1.extendArrayMetadata)(constants_1.INTERCEPTORS_METADATA, interceptors, target); return target; }; } __name(UseInterceptors, "UseInterceptors"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/use-pipes.decorator.js var require_use_pipes_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/use-pipes.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UsePipes = UsePipes; var constants_1 = require_constants(); var extend_metadata_util_1 = require_extend_metadata_util(); var shared_utils_1 = require_shared_utils(); var validate_each_util_1 = require_validate_each_util(); function UsePipes(...pipes) { return (target, key, descriptor) => { const isPipeValid = /* @__PURE__ */ __name((pipe) => pipe && ((0, shared_utils_1.isFunction)(pipe) || (0, shared_utils_1.isFunction)(pipe.transform)), "isPipeValid"); if (descriptor) { (0, extend_metadata_util_1.extendArrayMetadata)(constants_1.PIPES_METADATA, pipes, descriptor.value); return descriptor; } (0, validate_each_util_1.validateEach)(target, pipes, isPipeValid, "@UsePipes", "pipe"); (0, extend_metadata_util_1.extendArrayMetadata)(constants_1.PIPES_METADATA, pipes, target); return target; }; } __name(UsePipes, "UsePipes"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/apply-decorators.js var require_apply_decorators = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/apply-decorators.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.applyDecorators = applyDecorators; function applyDecorators(...decorators) { return (target, propertyKey, descriptor) => { for (const decorator of decorators) { if (target instanceof Function && !descriptor) { decorator(target); continue; } decorator(target, propertyKey, descriptor); } }; } __name(applyDecorators, "applyDecorators"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/version.decorator.js var require_version_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/version.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Version = Version; var constants_1 = require_constants(); function Version(version2) { if (Array.isArray(version2)) { version2 = Array.from(new Set(version2)); } return (target, key, descriptor) => { Reflect.defineMetadata(constants_1.VERSION_METADATA, version2, descriptor.value); return descriptor; }; } __name(Version, "Version"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/index.js var require_core = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/core/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_bind_decorator(), exports2); tslib_1.__exportStar(require_catch_decorator(), exports2); tslib_1.__exportStar(require_controller_decorator(), exports2); tslib_1.__exportStar(require_dependencies_decorator(), exports2); tslib_1.__exportStar(require_exception_filters_decorator(), exports2); tslib_1.__exportStar(require_inject_decorator(), exports2); tslib_1.__exportStar(require_injectable_decorator(), exports2); tslib_1.__exportStar(require_optional_decorator(), exports2); tslib_1.__exportStar(require_set_metadata_decorator(), exports2); tslib_1.__exportStar(require_use_guards_decorator(), exports2); tslib_1.__exportStar(require_use_interceptors_decorator(), exports2); tslib_1.__exportStar(require_use_pipes_decorator(), exports2); tslib_1.__exportStar(require_apply_decorators(), exports2); tslib_1.__exportStar(require_version_decorator(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/modules/global.decorator.js var require_global_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/modules/global.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Global = Global; var constants_1 = require_constants(); function Global() { return (target) => { Reflect.defineMetadata(constants_1.GLOBAL_MODULE_METADATA, true, target); }; } __name(Global, "Global"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/validate-module-keys.util.js var require_validate_module_keys_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/validate-module-keys.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.INVALID_MODULE_CONFIG_MESSAGE = void 0; exports2.validateModuleKeys = validateModuleKeys; var constants_1 = require_constants(); var INVALID_MODULE_CONFIG_MESSAGE = /* @__PURE__ */ __name((text, property) => `Invalid property '${property}' passed into the @Module() decorator.`, "INVALID_MODULE_CONFIG_MESSAGE"); exports2.INVALID_MODULE_CONFIG_MESSAGE = INVALID_MODULE_CONFIG_MESSAGE; var metadataKeys = [ constants_1.MODULE_METADATA.IMPORTS, constants_1.MODULE_METADATA.EXPORTS, constants_1.MODULE_METADATA.CONTROLLERS, constants_1.MODULE_METADATA.PROVIDERS ]; function validateModuleKeys(keys) { const validateKey = /* @__PURE__ */ __name((key) => { if (metadataKeys.includes(key)) { return; } throw new Error((0, exports2.INVALID_MODULE_CONFIG_MESSAGE)`${key}`); }, "validateKey"); keys.forEach(validateKey); } __name(validateModuleKeys, "validateModuleKeys"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/modules/module.decorator.js var require_module_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/modules/module.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Module = Module; var validate_module_keys_util_1 = require_validate_module_keys_util(); function Module(metadata) { const propsKeys = Object.keys(metadata); (0, validate_module_keys_util_1.validateModuleKeys)(propsKeys); return (target) => { for (const property in metadata) { if (metadata.hasOwnProperty(property)) { Reflect.defineMetadata(property, metadata[property], target); } } }; } __name(Module, "Module"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/modules/index.js var require_modules = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/modules/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_global_decorator(), exports2); tslib_1.__exportStar(require_module_decorator(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/request-method.enum.js var require_request_method_enum = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/request-method.enum.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RequestMethod = void 0; var RequestMethod; (function(RequestMethod2) { RequestMethod2[RequestMethod2["GET"] = 0] = "GET"; RequestMethod2[RequestMethod2["POST"] = 1] = "POST"; RequestMethod2[RequestMethod2["PUT"] = 2] = "PUT"; RequestMethod2[RequestMethod2["DELETE"] = 3] = "DELETE"; RequestMethod2[RequestMethod2["PATCH"] = 4] = "PATCH"; RequestMethod2[RequestMethod2["ALL"] = 5] = "ALL"; RequestMethod2[RequestMethod2["OPTIONS"] = 6] = "OPTIONS"; RequestMethod2[RequestMethod2["HEAD"] = 7] = "HEAD"; RequestMethod2[RequestMethod2["SEARCH"] = 8] = "SEARCH"; })(RequestMethod || (exports2.RequestMethod = RequestMethod = {})); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/request-mapping.decorator.js var require_request_mapping_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/request-mapping.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Search = exports2.All = exports2.Head = exports2.Options = exports2.Patch = exports2.Put = exports2.Delete = exports2.Get = exports2.Post = exports2.RequestMapping = void 0; var constants_1 = require_constants(); var request_method_enum_1 = require_request_method_enum(); var defaultMetadata = { [constants_1.PATH_METADATA]: "/", [constants_1.METHOD_METADATA]: request_method_enum_1.RequestMethod.GET }; var RequestMapping = /* @__PURE__ */ __name((metadata = defaultMetadata) => { const pathMetadata = metadata[constants_1.PATH_METADATA]; const path = pathMetadata && pathMetadata.length ? pathMetadata : "/"; const requestMethod = metadata[constants_1.METHOD_METADATA] || request_method_enum_1.RequestMethod.GET; return (target, key, descriptor) => { Reflect.defineMetadata(constants_1.PATH_METADATA, path, descriptor.value); Reflect.defineMetadata(constants_1.METHOD_METADATA, requestMethod, descriptor.value); return descriptor; }; }, "RequestMapping"); exports2.RequestMapping = RequestMapping; var createMappingDecorator = /* @__PURE__ */ __name((method) => (path) => { return (0, exports2.RequestMapping)({ [constants_1.PATH_METADATA]: path, [constants_1.METHOD_METADATA]: method }); }, "createMappingDecorator"); exports2.Post = createMappingDecorator(request_method_enum_1.RequestMethod.POST); exports2.Get = createMappingDecorator(request_method_enum_1.RequestMethod.GET); exports2.Delete = createMappingDecorator(request_method_enum_1.RequestMethod.DELETE); exports2.Put = createMappingDecorator(request_method_enum_1.RequestMethod.PUT); exports2.Patch = createMappingDecorator(request_method_enum_1.RequestMethod.PATCH); exports2.Options = createMappingDecorator(request_method_enum_1.RequestMethod.OPTIONS); exports2.Head = createMappingDecorator(request_method_enum_1.RequestMethod.HEAD); exports2.All = createMappingDecorator(request_method_enum_1.RequestMethod.ALL); exports2.Search = createMappingDecorator(request_method_enum_1.RequestMethod.SEARCH); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/route-paramtypes.enum.js var require_route_paramtypes_enum = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/route-paramtypes.enum.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RouteParamtypes = void 0; var RouteParamtypes; (function(RouteParamtypes2) { RouteParamtypes2[RouteParamtypes2["REQUEST"] = 0] = "REQUEST"; RouteParamtypes2[RouteParamtypes2["RESPONSE"] = 1] = "RESPONSE"; RouteParamtypes2[RouteParamtypes2["NEXT"] = 2] = "NEXT"; RouteParamtypes2[RouteParamtypes2["BODY"] = 3] = "BODY"; RouteParamtypes2[RouteParamtypes2["QUERY"] = 4] = "QUERY"; RouteParamtypes2[RouteParamtypes2["PARAM"] = 5] = "PARAM"; RouteParamtypes2[RouteParamtypes2["HEADERS"] = 6] = "HEADERS"; RouteParamtypes2[RouteParamtypes2["SESSION"] = 7] = "SESSION"; RouteParamtypes2[RouteParamtypes2["FILE"] = 8] = "FILE"; RouteParamtypes2[RouteParamtypes2["FILES"] = 9] = "FILES"; RouteParamtypes2[RouteParamtypes2["HOST"] = 10] = "HOST"; RouteParamtypes2[RouteParamtypes2["IP"] = 11] = "IP"; RouteParamtypes2[RouteParamtypes2["RAW_BODY"] = 12] = "RAW_BODY"; })(RouteParamtypes || (exports2.RouteParamtypes = RouteParamtypes = {})); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/route-params.decorator.js var require_route_params_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/route-params.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Res = exports2.Req = exports2.Headers = exports2.Session = exports2.Ip = exports2.Next = exports2.Response = exports2.Request = void 0; exports2.assignMetadata = assignMetadata; exports2.UploadedFile = UploadedFile; exports2.UploadedFiles = UploadedFiles; exports2.Query = Query; exports2.Body = Body; exports2.RawBody = RawBody; exports2.Param = Param; exports2.HostParam = HostParam; var constants_1 = require_constants(); var route_paramtypes_enum_1 = require_route_paramtypes_enum(); var shared_utils_1 = require_shared_utils(); function assignMetadata(args, paramtype, index, data, ...pipes) { return { ...args, [`${paramtype}:${index}`]: { index, data, pipes } }; } __name(assignMetadata, "assignMetadata"); function createRouteParamDecorator(paramtype) { return (data) => (target, key, index) => { const args = Reflect.getMetadata(constants_1.ROUTE_ARGS_METADATA, target.constructor, key) || {}; Reflect.defineMetadata(constants_1.ROUTE_ARGS_METADATA, assignMetadata(args, paramtype, index, data), target.constructor, key); }; } __name(createRouteParamDecorator, "createRouteParamDecorator"); var createPipesRouteParamDecorator = /* @__PURE__ */ __name((paramtype) => (data, ...pipes) => (target, key, index) => { const args = Reflect.getMetadata(constants_1.ROUTE_ARGS_METADATA, target.constructor, key) || {}; const hasParamData = (0, shared_utils_1.isNil)(data) || (0, shared_utils_1.isString)(data); const paramData = hasParamData ? data : void 0; const paramPipes = hasParamData ? pipes : [data, ...pipes]; Reflect.defineMetadata(constants_1.ROUTE_ARGS_METADATA, assignMetadata(args, paramtype, index, paramData, ...paramPipes), target.constructor, key); }, "createPipesRouteParamDecorator"); exports2.Request = createRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.REQUEST); var Response = /* @__PURE__ */ __name((options) => (target, key, index) => { if (options?.passthrough) { Reflect.defineMetadata(constants_1.RESPONSE_PASSTHROUGH_METADATA, options?.passthrough, target.constructor, key); } return createRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.RESPONSE)()(target, key, index); }, "Response"); exports2.Response = Response; exports2.Next = createRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.NEXT); exports2.Ip = createRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.IP); exports2.Session = createRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.SESSION); function UploadedFile(fileKey, ...pipes) { return createPipesRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.FILE)(fileKey, ...pipes); } __name(UploadedFile, "UploadedFile"); function UploadedFiles(...pipes) { return createPipesRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.FILES)(void 0, ...pipes); } __name(UploadedFiles, "UploadedFiles"); exports2.Headers = createRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.HEADERS); function Query(property, ...pipes) { return createPipesRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.QUERY)(property, ...pipes); } __name(Query, "Query"); function Body(property, ...pipes) { return createPipesRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.BODY)(property, ...pipes); } __name(Body, "Body"); function RawBody(...pipes) { return createPipesRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.RAW_BODY)(void 0, ...pipes); } __name(RawBody, "RawBody"); function Param(property, ...pipes) { return createPipesRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.PARAM)(property, ...pipes); } __name(Param, "Param"); function HostParam(property) { return createRouteParamDecorator(route_paramtypes_enum_1.RouteParamtypes.HOST)(property); } __name(HostParam, "HostParam"); exports2.Req = exports2.Request; exports2.Res = exports2.Response; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/http-code.decorator.js var require_http_code_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/http-code.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.HttpCode = HttpCode; var constants_1 = require_constants(); function HttpCode(statusCode) { return (target, key, descriptor) => { Reflect.defineMetadata(constants_1.HTTP_CODE_METADATA, statusCode, descriptor.value); return descriptor; }; } __name(HttpCode, "HttpCode"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/assign-custom-metadata.util.js var require_assign_custom_metadata_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/assign-custom-metadata.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.assignCustomParameterMetadata = assignCustomParameterMetadata; var constants_1 = require_constants(); function assignCustomParameterMetadata(args, paramtype, index, factory, data, ...pipes) { return { ...args, [`${paramtype}${constants_1.CUSTOM_ROUTE_ARGS_METADATA}:${index}`]: { index, factory, data, pipes } }; } __name(assignCustomParameterMetadata, "assignCustomParameterMetadata"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/create-route-param-metadata.decorator.js var require_create_route_param_metadata_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/create-route-param-metadata.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createParamDecorator = createParamDecorator; var uid_1 = require_dist(); var constants_1 = require_constants(); var assign_custom_metadata_util_1 = require_assign_custom_metadata_util(); var shared_utils_1 = require_shared_utils(); function createParamDecorator(factory, enhancers = []) { const paramtype = (0, uid_1.uid)(21); return (data, ...pipes) => (target, key, index) => { const args = Reflect.getMetadata(constants_1.ROUTE_ARGS_METADATA, target.constructor, key) || {}; const isPipe = /* @__PURE__ */ __name((pipe) => pipe && ((0, shared_utils_1.isFunction)(pipe) && pipe.prototype && (0, shared_utils_1.isFunction)(pipe.prototype.transform) || (0, shared_utils_1.isFunction)(pipe.transform)), "isPipe"); const hasParamData = (0, shared_utils_1.isNil)(data) || !isPipe(data); const paramData = hasParamData ? data : void 0; const paramPipes = hasParamData ? pipes : [data, ...pipes]; Reflect.defineMetadata(constants_1.ROUTE_ARGS_METADATA, (0, assign_custom_metadata_util_1.assignCustomParameterMetadata)(args, paramtype, index, factory, paramData, ...paramPipes), target.constructor, key); enhancers.forEach((fn) => fn(target, key, index)); }; } __name(createParamDecorator, "createParamDecorator"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/render.decorator.js var require_render_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/render.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Render = Render; var constants_1 = require_constants(); function Render(template) { return (target, key, descriptor) => { Reflect.defineMetadata(constants_1.RENDER_METADATA, template, descriptor.value); return descriptor; }; } __name(Render, "Render"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/header.decorator.js var require_header_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/header.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Header = Header; var constants_1 = require_constants(); var extend_metadata_util_1 = require_extend_metadata_util(); function Header(name, value) { return (target, key, descriptor) => { (0, extend_metadata_util_1.extendArrayMetadata)(constants_1.HEADERS_METADATA, [{ name, value }], descriptor.value); return descriptor; }; } __name(Header, "Header"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/redirect.decorator.js var require_redirect_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/redirect.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Redirect = Redirect; var constants_1 = require_constants(); function Redirect(url = "", statusCode) { return (target, key, descriptor) => { Reflect.defineMetadata(constants_1.REDIRECT_METADATA, { statusCode, url }, descriptor.value); return descriptor; }; } __name(Redirect, "Redirect"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/sse.decorator.js var require_sse_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/sse.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Sse = Sse; var constants_1 = require_constants(); var request_method_enum_1 = require_request_method_enum(); function Sse(path) { return (target, key, descriptor) => { path = path && path.length ? path : "/"; Reflect.defineMetadata(constants_1.PATH_METADATA, path, descriptor.value); Reflect.defineMetadata(constants_1.METHOD_METADATA, request_method_enum_1.RequestMethod.GET, descriptor.value); Reflect.defineMetadata(constants_1.SSE_METADATA, true, descriptor.value); return descriptor; }; } __name(Sse, "Sse"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/index.js var require_http = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/http/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_request_mapping_decorator(), exports2); tslib_1.__exportStar(require_route_params_decorator(), exports2); tslib_1.__exportStar(require_http_code_decorator(), exports2); tslib_1.__exportStar(require_create_route_param_metadata_decorator(), exports2); tslib_1.__exportStar(require_render_decorator(), exports2); tslib_1.__exportStar(require_header_decorator(), exports2); tslib_1.__exportStar(require_redirect_decorator(), exports2); tslib_1.__exportStar(require_sse_decorator(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/index.js var require_decorators = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/decorators/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_core(), exports2); tslib_1.__exportStar(require_modules(), exports2); tslib_1.__exportStar(require_http(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/http-status.enum.js var require_http_status_enum = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/http-status.enum.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.HttpStatus = void 0; var HttpStatus; (function(HttpStatus2) { HttpStatus2[HttpStatus2["CONTINUE"] = 100] = "CONTINUE"; HttpStatus2[HttpStatus2["SWITCHING_PROTOCOLS"] = 101] = "SWITCHING_PROTOCOLS"; HttpStatus2[HttpStatus2["PROCESSING"] = 102] = "PROCESSING"; HttpStatus2[HttpStatus2["EARLYHINTS"] = 103] = "EARLYHINTS"; HttpStatus2[HttpStatus2["OK"] = 200] = "OK"; HttpStatus2[HttpStatus2["CREATED"] = 201] = "CREATED"; HttpStatus2[HttpStatus2["ACCEPTED"] = 202] = "ACCEPTED"; HttpStatus2[HttpStatus2["NON_AUTHORITATIVE_INFORMATION"] = 203] = "NON_AUTHORITATIVE_INFORMATION"; HttpStatus2[HttpStatus2["NO_CONTENT"] = 204] = "NO_CONTENT"; HttpStatus2[HttpStatus2["RESET_CONTENT"] = 205] = "RESET_CONTENT"; HttpStatus2[HttpStatus2["PARTIAL_CONTENT"] = 206] = "PARTIAL_CONTENT"; HttpStatus2[HttpStatus2["AMBIGUOUS"] = 300] = "AMBIGUOUS"; HttpStatus2[HttpStatus2["MOVED_PERMANENTLY"] = 301] = "MOVED_PERMANENTLY"; HttpStatus2[HttpStatus2["FOUND"] = 302] = "FOUND"; HttpStatus2[HttpStatus2["SEE_OTHER"] = 303] = "SEE_OTHER"; HttpStatus2[HttpStatus2["NOT_MODIFIED"] = 304] = "NOT_MODIFIED"; HttpStatus2[HttpStatus2["TEMPORARY_REDIRECT"] = 307] = "TEMPORARY_REDIRECT"; HttpStatus2[HttpStatus2["PERMANENT_REDIRECT"] = 308] = "PERMANENT_REDIRECT"; HttpStatus2[HttpStatus2["BAD_REQUEST"] = 400] = "BAD_REQUEST"; HttpStatus2[HttpStatus2["UNAUTHORIZED"] = 401] = "UNAUTHORIZED"; HttpStatus2[HttpStatus2["PAYMENT_REQUIRED"] = 402] = "PAYMENT_REQUIRED"; HttpStatus2[HttpStatus2["FORBIDDEN"] = 403] = "FORBIDDEN"; HttpStatus2[HttpStatus2["NOT_FOUND"] = 404] = "NOT_FOUND"; HttpStatus2[HttpStatus2["METHOD_NOT_ALLOWED"] = 405] = "METHOD_NOT_ALLOWED"; HttpStatus2[HttpStatus2["NOT_ACCEPTABLE"] = 406] = "NOT_ACCEPTABLE"; HttpStatus2[HttpStatus2["PROXY_AUTHENTICATION_REQUIRED"] = 407] = "PROXY_AUTHENTICATION_REQUIRED"; HttpStatus2[HttpStatus2["REQUEST_TIMEOUT"] = 408] = "REQUEST_TIMEOUT"; HttpStatus2[HttpStatus2["CONFLICT"] = 409] = "CONFLICT"; HttpStatus2[HttpStatus2["GONE"] = 410] = "GONE"; HttpStatus2[HttpStatus2["LENGTH_REQUIRED"] = 411] = "LENGTH_REQUIRED"; HttpStatus2[HttpStatus2["PRECONDITION_FAILED"] = 412] = "PRECONDITION_FAILED"; HttpStatus2[HttpStatus2["PAYLOAD_TOO_LARGE"] = 413] = "PAYLOAD_TOO_LARGE"; HttpStatus2[HttpStatus2["URI_TOO_LONG"] = 414] = "URI_TOO_LONG"; HttpStatus2[HttpStatus2["UNSUPPORTED_MEDIA_TYPE"] = 415] = "UNSUPPORTED_MEDIA_TYPE"; HttpStatus2[HttpStatus2["REQUESTED_RANGE_NOT_SATISFIABLE"] = 416] = "REQUESTED_RANGE_NOT_SATISFIABLE"; HttpStatus2[HttpStatus2["EXPECTATION_FAILED"] = 417] = "EXPECTATION_FAILED"; HttpStatus2[HttpStatus2["I_AM_A_TEAPOT"] = 418] = "I_AM_A_TEAPOT"; HttpStatus2[HttpStatus2["MISDIRECTED"] = 421] = "MISDIRECTED"; HttpStatus2[HttpStatus2["UNPROCESSABLE_ENTITY"] = 422] = "UNPROCESSABLE_ENTITY"; HttpStatus2[HttpStatus2["FAILED_DEPENDENCY"] = 424] = "FAILED_DEPENDENCY"; HttpStatus2[HttpStatus2["PRECONDITION_REQUIRED"] = 428] = "PRECONDITION_REQUIRED"; HttpStatus2[HttpStatus2["TOO_MANY_REQUESTS"] = 429] = "TOO_MANY_REQUESTS"; HttpStatus2[HttpStatus2["INTERNAL_SERVER_ERROR"] = 500] = "INTERNAL_SERVER_ERROR"; HttpStatus2[HttpStatus2["NOT_IMPLEMENTED"] = 501] = "NOT_IMPLEMENTED"; HttpStatus2[HttpStatus2["BAD_GATEWAY"] = 502] = "BAD_GATEWAY"; HttpStatus2[HttpStatus2["SERVICE_UNAVAILABLE"] = 503] = "SERVICE_UNAVAILABLE"; HttpStatus2[HttpStatus2["GATEWAY_TIMEOUT"] = 504] = "GATEWAY_TIMEOUT"; HttpStatus2[HttpStatus2["HTTP_VERSION_NOT_SUPPORTED"] = 505] = "HTTP_VERSION_NOT_SUPPORTED"; })(HttpStatus || (exports2.HttpStatus = HttpStatus = {})); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/shutdown-signal.enum.js var require_shutdown_signal_enum = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/shutdown-signal.enum.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ShutdownSignal = void 0; var ShutdownSignal; (function(ShutdownSignal2) { ShutdownSignal2["SIGHUP"] = "SIGHUP"; ShutdownSignal2["SIGINT"] = "SIGINT"; ShutdownSignal2["SIGQUIT"] = "SIGQUIT"; ShutdownSignal2["SIGILL"] = "SIGILL"; ShutdownSignal2["SIGTRAP"] = "SIGTRAP"; ShutdownSignal2["SIGABRT"] = "SIGABRT"; ShutdownSignal2["SIGBUS"] = "SIGBUS"; ShutdownSignal2["SIGFPE"] = "SIGFPE"; ShutdownSignal2["SIGSEGV"] = "SIGSEGV"; ShutdownSignal2["SIGUSR2"] = "SIGUSR2"; ShutdownSignal2["SIGTERM"] = "SIGTERM"; })(ShutdownSignal || (exports2.ShutdownSignal = ShutdownSignal = {})); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/version-type.enum.js var require_version_type_enum = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/version-type.enum.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.VersioningType = void 0; var VersioningType; (function(VersioningType2) { VersioningType2[VersioningType2["URI"] = 0] = "URI"; VersioningType2[VersioningType2["HEADER"] = 1] = "HEADER"; VersioningType2[VersioningType2["MEDIA_TYPE"] = 2] = "MEDIA_TYPE"; VersioningType2[VersioningType2["CUSTOM"] = 3] = "CUSTOM"; })(VersioningType || (exports2.VersioningType = VersioningType = {})); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/index.js var require_enums = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/enums/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_request_method_enum(), exports2); tslib_1.__exportStar(require_http_status_enum(), exports2); tslib_1.__exportStar(require_shutdown_signal_enum(), exports2); tslib_1.__exportStar(require_version_type_enum(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/http.exception.js var require_http_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/http.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.HttpException = void 0; var shared_utils_1 = require_shared_utils(); var HttpException = class extends Error { static { __name(this, "HttpException"); } /** * Instantiate a plain HTTP Exception. * * @example * throw new HttpException('message', HttpStatus.BAD_REQUEST) * throw new HttpException('custom message', HttpStatus.BAD_REQUEST, { * cause: new Error('Cause Error'), * }) * * * @usageNotes * The constructor arguments define the response and the HTTP response status code. * - The `response` argument (required) defines the JSON response body. alternatively, it can also be * an error object that is used to define an error [cause](https://nodejs.org/en/blog/release/v16.9.0/#error-cause). * - The `status` argument (required) defines the HTTP Status Code. * - The `options` argument (optional) defines additional error options. Currently, it supports the `cause` attribute, * and can be used as an alternative way to specify the error cause: `const error = new HttpException('description', 400, { cause: new Error() });` * * By default, the JSON response body contains two properties: * - `statusCode`: the Http Status Code. * - `message`: a short description of the HTTP error by default; override this * by supplying a string in the `response` parameter. * * To override the entire JSON response body, pass an object to the `createBody` * method. Nest will serialize the object and return it as the JSON response body. * * The `status` argument is required, and should be a valid HTTP status code. * Best practice is to use the `HttpStatus` enum imported from `nestjs/common`. * * @param response string, object describing the error condition or the error cause. * @param status HTTP response status code. * @param options An object used to add an error cause. */ constructor(response, status, options) { super(); this.response = response; this.status = status; this.options = options; this.initMessage(); this.initName(); this.initCause(); } /** * Configures error chaining support * * @see https://nodejs.org/en/blog/release/v16.9.0/#error-cause * @see https://github.com/microsoft/TypeScript/issues/45167 */ initCause() { if (this.options?.cause) { this.cause = this.options.cause; return; } } initMessage() { if ((0, shared_utils_1.isString)(this.response)) { this.message = this.response; } else if ((0, shared_utils_1.isObject)(this.response) && (0, shared_utils_1.isString)(this.response.message)) { this.message = this.response.message; } else if (this.constructor) { this.message = this.constructor.name.match(/[A-Z][a-z]+|[0-9]+/g)?.join(" ") ?? "Error"; } } initName() { this.name = this.constructor.name; } getResponse() { return this.response; } getStatus() { return this.status; } static createBody(arg0, arg1, statusCode) { if (!arg0) { return { message: arg1, statusCode }; } if ((0, shared_utils_1.isString)(arg0) || Array.isArray(arg0)) { return { message: arg0, error: arg1, statusCode }; } return arg0; } static getDescriptionFrom(descriptionOrOptions) { return (0, shared_utils_1.isString)(descriptionOrOptions) ? descriptionOrOptions : descriptionOrOptions?.description; } static getHttpExceptionOptionsFrom(descriptionOrOptions) { return (0, shared_utils_1.isString)(descriptionOrOptions) ? {} : descriptionOrOptions; } /** * Utility method used to extract the error description and httpExceptionOptions from the given argument. * This is used by inheriting classes to correctly parse both options. * @returns the error description and the httpExceptionOptions as an object. */ static extractDescriptionAndOptionsFrom(descriptionOrOptions) { const description = (0, shared_utils_1.isString)(descriptionOrOptions) ? descriptionOrOptions : descriptionOrOptions?.description; const httpExceptionOptions = (0, shared_utils_1.isString)(descriptionOrOptions) ? {} : descriptionOrOptions; return { description, httpExceptionOptions }; } }; exports2.HttpException = HttpException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/bad-request.exception.js var require_bad_request_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/bad-request.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BadRequestException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var BadRequestException = class extends http_exception_1.HttpException { static { __name(this, "BadRequestException"); } /** * Instantiate a `BadRequestException` Exception. * * @example * `throw new BadRequestException()` * * @usageNotes * The HTTP response status code will be 400. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 400. * - `message`: the string `'Bad Request'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Bad Request") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.BAD_REQUEST), http_status_enum_1.HttpStatus.BAD_REQUEST, httpExceptionOptions); } }; exports2.BadRequestException = BadRequestException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/unauthorized.exception.js var require_unauthorized_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/unauthorized.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UnauthorizedException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var UnauthorizedException = class extends http_exception_1.HttpException { static { __name(this, "UnauthorizedException"); } /** * Instantiate an `UnauthorizedException` Exception. * * @example * `throw new UnauthorizedException()` * * @usageNotes * The HTTP response status code will be 401. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 401. * - `message`: the string `'Unauthorized'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Unauthorized") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.UNAUTHORIZED), http_status_enum_1.HttpStatus.UNAUTHORIZED, httpExceptionOptions); } }; exports2.UnauthorizedException = UnauthorizedException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/method-not-allowed.exception.js var require_method_not_allowed_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/method-not-allowed.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MethodNotAllowedException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var MethodNotAllowedException = class extends http_exception_1.HttpException { static { __name(this, "MethodNotAllowedException"); } /** * Instantiate a `MethodNotAllowedException` Exception. * * @example * `throw new MethodNotAllowedException()` * * @usageNotes * The HTTP response status code will be 405. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 405. * - `message`: the string `'Method Not Allowed'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Method Not Allowed") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.METHOD_NOT_ALLOWED), http_status_enum_1.HttpStatus.METHOD_NOT_ALLOWED, httpExceptionOptions); } }; exports2.MethodNotAllowedException = MethodNotAllowedException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/not-found.exception.js var require_not_found_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/not-found.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NotFoundException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var NotFoundException = class extends http_exception_1.HttpException { static { __name(this, "NotFoundException"); } /** * Instantiate a `NotFoundException` Exception. * * @example * `throw new NotFoundException()` * * @usageNotes * The HTTP response status code will be 404. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 404. * - `message`: the string `'Not Found'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Not Found") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.NOT_FOUND), http_status_enum_1.HttpStatus.NOT_FOUND, httpExceptionOptions); } }; exports2.NotFoundException = NotFoundException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/forbidden.exception.js var require_forbidden_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/forbidden.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ForbiddenException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var ForbiddenException = class extends http_exception_1.HttpException { static { __name(this, "ForbiddenException"); } /** * Instantiate a `ForbiddenException` Exception. * * @example * `throw new ForbiddenException()` * * @usageNotes * The HTTP response status code will be 403. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 403. * - `message`: the string `'Forbidden'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Forbidden") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.FORBIDDEN), http_status_enum_1.HttpStatus.FORBIDDEN, httpExceptionOptions); } }; exports2.ForbiddenException = ForbiddenException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/not-acceptable.exception.js var require_not_acceptable_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/not-acceptable.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NotAcceptableException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var NotAcceptableException = class extends http_exception_1.HttpException { static { __name(this, "NotAcceptableException"); } /** * Instantiate a `NotAcceptableException` Exception. * * @example * `throw new NotAcceptableException()` * * @usageNotes * The HTTP response status code will be 406. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 406. * - `error`: the string `'Not Acceptable'` by default; override this by supplying * a string in the `error` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Not Acceptable") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.NOT_ACCEPTABLE), http_status_enum_1.HttpStatus.NOT_ACCEPTABLE, httpExceptionOptions); } }; exports2.NotAcceptableException = NotAcceptableException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/request-timeout.exception.js var require_request_timeout_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/request-timeout.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RequestTimeoutException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var RequestTimeoutException = class extends http_exception_1.HttpException { static { __name(this, "RequestTimeoutException"); } /** * Instantiate a `RequestTimeoutException` Exception. * * @example * `throw new RequestTimeoutException()` * * @usageNotes * The HTTP response status code will be 408. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 408. * - `message`: the string `'Request Timeout'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Request Timeout") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.REQUEST_TIMEOUT), http_status_enum_1.HttpStatus.REQUEST_TIMEOUT, httpExceptionOptions); } }; exports2.RequestTimeoutException = RequestTimeoutException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/conflict.exception.js var require_conflict_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/conflict.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ConflictException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var ConflictException = class extends http_exception_1.HttpException { static { __name(this, "ConflictException"); } /** * Instantiate a `ConflictException` Exception. * * @example * `throw new ConflictException()` * * @usageNotes * The HTTP response status code will be 409. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 409. * - `message`: the string `'Conflict'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Conflict") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.CONFLICT), http_status_enum_1.HttpStatus.CONFLICT, httpExceptionOptions); } }; exports2.ConflictException = ConflictException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/gone.exception.js var require_gone_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/gone.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GoneException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var GoneException = class extends http_exception_1.HttpException { static { __name(this, "GoneException"); } /** * Instantiate a `GoneException` Exception. * * @example * `throw new GoneException()` * * @usageNotes * The HTTP response status code will be 410. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 410. * - `message`: the string `'Gone'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Gone") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.GONE), http_status_enum_1.HttpStatus.GONE, httpExceptionOptions); } }; exports2.GoneException = GoneException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/payload-too-large.exception.js var require_payload_too_large_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/payload-too-large.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PayloadTooLargeException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var PayloadTooLargeException = class extends http_exception_1.HttpException { static { __name(this, "PayloadTooLargeException"); } /** * Instantiate a `PayloadTooLargeException` Exception. * * @example * `throw new PayloadTooLargeException()` * * @usageNotes * The HTTP response status code will be 413. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 413. * - `message`: the string `'Payload Too Large'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Payload Too Large") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.PAYLOAD_TOO_LARGE), http_status_enum_1.HttpStatus.PAYLOAD_TOO_LARGE, httpExceptionOptions); } }; exports2.PayloadTooLargeException = PayloadTooLargeException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/unsupported-media-type.exception.js var require_unsupported_media_type_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/unsupported-media-type.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UnsupportedMediaTypeException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var UnsupportedMediaTypeException = class extends http_exception_1.HttpException { static { __name(this, "UnsupportedMediaTypeException"); } /** * Instantiate an `UnsupportedMediaTypeException` Exception. * * @example * `throw new UnsupportedMediaTypeException()` * * @usageNotes * The HTTP response status code will be 415. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 415. * - `message`: the string `'Unsupported Media Type'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Unsupported Media Type") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.UNSUPPORTED_MEDIA_TYPE), http_status_enum_1.HttpStatus.UNSUPPORTED_MEDIA_TYPE, httpExceptionOptions); } }; exports2.UnsupportedMediaTypeException = UnsupportedMediaTypeException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/unprocessable-entity.exception.js var require_unprocessable_entity_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/unprocessable-entity.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UnprocessableEntityException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var UnprocessableEntityException = class extends http_exception_1.HttpException { static { __name(this, "UnprocessableEntityException"); } /** * Instantiate an `UnprocessableEntityException` Exception. * * @example * `throw new UnprocessableEntityException()` * * @usageNotes * The HTTP response status code will be 422. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 422. * - `message`: the string `'Unprocessable Entity'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Unprocessable Entity") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.UNPROCESSABLE_ENTITY), http_status_enum_1.HttpStatus.UNPROCESSABLE_ENTITY, httpExceptionOptions); } }; exports2.UnprocessableEntityException = UnprocessableEntityException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/internal-server-error.exception.js var require_internal_server_error_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/internal-server-error.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InternalServerErrorException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var InternalServerErrorException = class extends http_exception_1.HttpException { static { __name(this, "InternalServerErrorException"); } /** * Instantiate an `InternalServerErrorException` Exception. * * @example * `throw new InternalServerErrorException()` * * @usageNotes * The HTTP response status code will be 500. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 500. * - `message`: the string `'Internal Server Error'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Internal Server Error") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.INTERNAL_SERVER_ERROR), http_status_enum_1.HttpStatus.INTERNAL_SERVER_ERROR, httpExceptionOptions); } }; exports2.InternalServerErrorException = InternalServerErrorException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/not-implemented.exception.js var require_not_implemented_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/not-implemented.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NotImplementedException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var NotImplementedException = class extends http_exception_1.HttpException { static { __name(this, "NotImplementedException"); } /** * Instantiate a `NotImplementedException` Exception. * * @example * `throw new NotImplementedException()` * * @usageNotes * The HTTP response status code will be 501. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 501. * - `message`: the string `'Not Implemented'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause * @param error a short description of the HTTP error. */ constructor(objectOrError, descriptionOrOptions = "Not Implemented") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.NOT_IMPLEMENTED), http_status_enum_1.HttpStatus.NOT_IMPLEMENTED, httpExceptionOptions); } }; exports2.NotImplementedException = NotImplementedException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/http-version-not-supported.exception.js var require_http_version_not_supported_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/http-version-not-supported.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.HttpVersionNotSupportedException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var HttpVersionNotSupportedException = class extends http_exception_1.HttpException { static { __name(this, "HttpVersionNotSupportedException"); } /** * Instantiate a `HttpVersionNotSupportedException` Exception. * * @example * `throw new HttpVersionNotSupportedException()` * * @usageNotes * The HTTP response status code will be 505. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 505. * - `message`: the string `'HTTP Version Not Supported'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "HTTP Version Not Supported") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.HTTP_VERSION_NOT_SUPPORTED), http_status_enum_1.HttpStatus.HTTP_VERSION_NOT_SUPPORTED, httpExceptionOptions); } }; exports2.HttpVersionNotSupportedException = HttpVersionNotSupportedException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/bad-gateway.exception.js var require_bad_gateway_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/bad-gateway.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BadGatewayException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var BadGatewayException = class extends http_exception_1.HttpException { static { __name(this, "BadGatewayException"); } /** * Instantiate a `BadGatewayException` Exception. * * @example * `throw new BadGatewayException()` * * @usageNotes * The HTTP response status code will be 502. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 502. * - `message`: the string `'Bad Gateway'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Bad Gateway") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.BAD_GATEWAY), http_status_enum_1.HttpStatus.BAD_GATEWAY, httpExceptionOptions); } }; exports2.BadGatewayException = BadGatewayException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/service-unavailable.exception.js var require_service_unavailable_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/service-unavailable.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ServiceUnavailableException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var ServiceUnavailableException = class extends http_exception_1.HttpException { static { __name(this, "ServiceUnavailableException"); } /** * Instantiate a `ServiceUnavailableException` Exception. * * @example * `throw new ServiceUnavailableException()` * * @usageNotes * The HTTP response status code will be 503. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 503. * - `message`: the string `'Service Unavailable'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Service Unavailable") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.SERVICE_UNAVAILABLE), http_status_enum_1.HttpStatus.SERVICE_UNAVAILABLE, httpExceptionOptions); } }; exports2.ServiceUnavailableException = ServiceUnavailableException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/gateway-timeout.exception.js var require_gateway_timeout_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/gateway-timeout.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GatewayTimeoutException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var GatewayTimeoutException = class extends http_exception_1.HttpException { static { __name(this, "GatewayTimeoutException"); } /** * Instantiate a `GatewayTimeoutException` Exception. * * @example * `throw new GatewayTimeoutException()` * * @usageNotes * The HTTP response status code will be 504. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 504. * - `message`: the string `'Gateway Timeout'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Gateway Timeout") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.GATEWAY_TIMEOUT), http_status_enum_1.HttpStatus.GATEWAY_TIMEOUT, httpExceptionOptions); } }; exports2.GatewayTimeoutException = GatewayTimeoutException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/im-a-teapot.exception.js var require_im_a_teapot_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/im-a-teapot.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ImATeapotException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var ImATeapotException = class extends http_exception_1.HttpException { static { __name(this, "ImATeapotException"); } /** * Instantiate an `ImATeapotException` Exception. * * @example * `throw new ImATeapotException()` * * @usageNotes * The HTTP response status code will be 418. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 418. * - `message`: the string `"I'm a Teapot"` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = `I'm a teapot`) { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.I_AM_A_TEAPOT), http_status_enum_1.HttpStatus.I_AM_A_TEAPOT, httpExceptionOptions); } }; exports2.ImATeapotException = ImATeapotException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/precondition-failed.exception.js var require_precondition_failed_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/precondition-failed.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PreconditionFailedException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var PreconditionFailedException = class extends http_exception_1.HttpException { static { __name(this, "PreconditionFailedException"); } /** * Instantiate a `PreconditionFailedException` Exception. * * @example * `throw new PreconditionFailedException()` * * @usageNotes * The HTTP response status code will be 412. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 412. * - `message`: the string `'Precondition Failed'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Precondition Failed") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.PRECONDITION_FAILED), http_status_enum_1.HttpStatus.PRECONDITION_FAILED, httpExceptionOptions); } }; exports2.PreconditionFailedException = PreconditionFailedException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/misdirected.exception.js var require_misdirected_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/misdirected.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MisdirectedException = void 0; var http_status_enum_1 = require_http_status_enum(); var http_exception_1 = require_http_exception(); var MisdirectedException = class extends http_exception_1.HttpException { static { __name(this, "MisdirectedException"); } /** * Instantiate a `MisdirectedException` Exception. * * @example * `throw new MisdirectedException()` * * @usageNotes * The HTTP response status code will be 421. * - The `objectOrError` argument defines the JSON response body or the message string. * - The `descriptionOrOptions` argument contains either a short description of the HTTP error or an options object used to provide an underlying error cause. * * By default, the JSON response body contains two properties: * - `statusCode`: this will be the value 421. * - `message`: the string `'Bad Gateway'` by default; override this by supplying * a string in the `objectOrError` parameter. * * If the parameter `objectOrError` is a string, the response body will contain an * additional property, `error`, with a short description of the HTTP error. To override the * entire JSON response body, pass an object instead. Nest will serialize the object * and return it as the JSON response body. * * @param objectOrError string or object describing the error condition. * @param descriptionOrOptions either a short description of the HTTP error or an options object used to provide an underlying error cause */ constructor(objectOrError, descriptionOrOptions = "Misdirected") { const { description, httpExceptionOptions } = http_exception_1.HttpException.extractDescriptionAndOptionsFrom(descriptionOrOptions); super(http_exception_1.HttpException.createBody(objectOrError, description, http_status_enum_1.HttpStatus.MISDIRECTED), http_status_enum_1.HttpStatus.MISDIRECTED, httpExceptionOptions); } }; exports2.MisdirectedException = MisdirectedException; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/index.js var require_exceptions = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/exceptions/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_bad_request_exception(), exports2); tslib_1.__exportStar(require_http_exception(), exports2); tslib_1.__exportStar(require_unauthorized_exception(), exports2); tslib_1.__exportStar(require_method_not_allowed_exception(), exports2); tslib_1.__exportStar(require_not_found_exception(), exports2); tslib_1.__exportStar(require_forbidden_exception(), exports2); tslib_1.__exportStar(require_not_acceptable_exception(), exports2); tslib_1.__exportStar(require_request_timeout_exception(), exports2); tslib_1.__exportStar(require_conflict_exception(), exports2); tslib_1.__exportStar(require_gone_exception(), exports2); tslib_1.__exportStar(require_payload_too_large_exception(), exports2); tslib_1.__exportStar(require_unsupported_media_type_exception(), exports2); tslib_1.__exportStar(require_unprocessable_entity_exception(), exports2); tslib_1.__exportStar(require_internal_server_error_exception(), exports2); tslib_1.__exportStar(require_not_implemented_exception(), exports2); tslib_1.__exportStar(require_http_version_not_supported_exception(), exports2); tslib_1.__exportStar(require_bad_gateway_exception(), exports2); tslib_1.__exportStar(require_service_unavailable_exception(), exports2); tslib_1.__exportStar(require_gateway_timeout_exception(), exports2); tslib_1.__exportStar(require_im_a_teapot_exception(), exports2); tslib_1.__exportStar(require_precondition_failed_exception(), exports2); tslib_1.__exportStar(require_misdirected_exception(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/cli-colors.util.js var require_cli_colors_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/cli-colors.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.yellow = exports2.clc = void 0; var isColorAllowed = /* @__PURE__ */ __name(() => !process.env.NO_COLOR, "isColorAllowed"); var colorIfAllowed = /* @__PURE__ */ __name((colorFn) => (text) => isColorAllowed() ? colorFn(text) : text, "colorIfAllowed"); exports2.clc = { bold: colorIfAllowed((text) => `\x1B[1m${text}\x1B[0m`), green: colorIfAllowed((text) => `\x1B[32m${text}\x1B[39m`), yellow: colorIfAllowed((text) => `\x1B[33m${text}\x1B[39m`), red: colorIfAllowed((text) => `\x1B[31m${text}\x1B[39m`), magentaBright: colorIfAllowed((text) => `\x1B[95m${text}\x1B[39m`), cyanBright: colorIfAllowed((text) => `\x1B[96m${text}\x1B[39m`) }; exports2.yellow = colorIfAllowed((text) => `\x1B[38;5;3m${text}\x1B[39m`); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/services/utils/is-log-level-enabled.util.js var require_is_log_level_enabled_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/services/utils/is-log-level-enabled.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isLogLevelEnabled = isLogLevelEnabled; var LOG_LEVEL_VALUES = { verbose: 0, debug: 1, log: 2, warn: 3, error: 4, fatal: 5 }; function isLogLevelEnabled(targetLevel, logLevels) { if (!logLevels || Array.isArray(logLevels) && logLevels?.length === 0) { return false; } if (logLevels.includes(targetLevel)) { return true; } const highestLogLevelValue = logLevels.map((level) => LOG_LEVEL_VALUES[level]).sort((a, b) => b - a)?.[0]; const targetLevelValue = LOG_LEVEL_VALUES[targetLevel]; return targetLevelValue >= highestLogLevelValue; } __name(isLogLevelEnabled, "isLogLevelEnabled"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/services/utils/index.js var require_utils = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/services/utils/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_is_log_level_enabled_util(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/services/console-logger.service.js var require_console_logger_service = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/services/console-logger.service.js"(exports2) { "use strict"; var ConsoleLogger_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ConsoleLogger = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var core_12 = require_core(); var cli_colors_util_1 = require_cli_colors_util(); var shared_utils_1 = require_shared_utils(); var utils_1 = require_utils(); var DEFAULT_LOG_LEVELS = [ "log", "error", "warn", "debug", "verbose", "fatal" ]; var dateTimeFormatter = new Intl.DateTimeFormat(void 0, { year: "numeric", hour: "numeric", minute: "numeric", second: "numeric", day: "2-digit", month: "2-digit" }); var ConsoleLogger = ConsoleLogger_1 = class ConsoleLogger { static { __name(this, "ConsoleLogger"); } constructor(context, options = {}) { this.context = context; this.options = options; if (!options.logLevels) { options.logLevels = DEFAULT_LOG_LEVELS; } if (context) { this.originalContext = context; } } log(message, ...optionalParams) { if (!this.isLevelEnabled("log")) { return; } const { messages, context } = this.getContextAndMessagesToPrint([ message, ...optionalParams ]); this.printMessages(messages, context, "log"); } error(message, ...optionalParams) { if (!this.isLevelEnabled("error")) { return; } const { messages, context, stack } = this.getContextAndStackAndMessagesToPrint([message, ...optionalParams]); this.printMessages(messages, context, "error", "stderr"); this.printStackTrace(stack); } warn(message, ...optionalParams) { if (!this.isLevelEnabled("warn")) { return; } const { messages, context } = this.getContextAndMessagesToPrint([ message, ...optionalParams ]); this.printMessages(messages, context, "warn"); } debug(message, ...optionalParams) { if (!this.isLevelEnabled("debug")) { return; } const { messages, context } = this.getContextAndMessagesToPrint([ message, ...optionalParams ]); this.printMessages(messages, context, "debug"); } verbose(message, ...optionalParams) { if (!this.isLevelEnabled("verbose")) { return; } const { messages, context } = this.getContextAndMessagesToPrint([ message, ...optionalParams ]); this.printMessages(messages, context, "verbose"); } fatal(message, ...optionalParams) { if (!this.isLevelEnabled("fatal")) { return; } const { messages, context } = this.getContextAndMessagesToPrint([ message, ...optionalParams ]); this.printMessages(messages, context, "fatal"); } /** * Set log levels * @param levels log levels */ setLogLevels(levels) { if (!this.options) { this.options = {}; } this.options.logLevels = levels; } /** * Set logger context * @param context context */ setContext(context) { this.context = context; } /** * Resets the logger context to the value that was passed in the constructor. */ resetContext() { this.context = this.originalContext; } isLevelEnabled(level) { const logLevels = this.options?.logLevels; return (0, utils_1.isLogLevelEnabled)(level, logLevels); } getTimestamp() { return dateTimeFormatter.format(Date.now()); } printMessages(messages, context = "", logLevel = "log", writeStreamType) { messages.forEach((message) => { const pidMessage = this.formatPid(process.pid); const contextMessage = this.formatContext(context); const timestampDiff = this.updateAndGetTimestampDiff(); const formattedLogLevel = logLevel.toUpperCase().padStart(7, " "); const formattedMessage = this.formatMessage(logLevel, message, pidMessage, formattedLogLevel, contextMessage, timestampDiff); process[writeStreamType ?? "stdout"].write(formattedMessage); }); } formatPid(pid) { return `[Nest] ${pid} - `; } formatContext(context) { return context ? (0, cli_colors_util_1.yellow)(`[${context}] `) : ""; } formatMessage(logLevel, message, pidMessage, formattedLogLevel, contextMessage, timestampDiff) { const output = this.stringifyMessage(message, logLevel); pidMessage = this.colorize(pidMessage, logLevel); formattedLogLevel = this.colorize(formattedLogLevel, logLevel); return `${pidMessage}${this.getTimestamp()} ${formattedLogLevel} ${contextMessage}${output}${timestampDiff} `; } stringifyMessage(message, logLevel) { if ((0, shared_utils_1.isFunction)(message)) { const messageAsStr = Function.prototype.toString.call(message); const isClass2 = messageAsStr.startsWith("class "); if (isClass2) { return this.stringifyMessage(message.name, logLevel); } return this.stringifyMessage(message(), logLevel); } return (0, shared_utils_1.isPlainObject)(message) || Array.isArray(message) ? `${this.colorize("Object:", logLevel)} ${JSON.stringify(message, (key, value) => typeof value === "bigint" ? value.toString() : value, 2)} ` : this.colorize(message, logLevel); } colorize(message, logLevel) { const color = this.getColorByLogLevel(logLevel); return color(message); } printStackTrace(stack) { if (!stack) { return; } process.stderr.write(`${stack} `); } updateAndGetTimestampDiff() { const includeTimestamp = ConsoleLogger_1.lastTimestampAt && this.options?.timestamp; const result = includeTimestamp ? this.formatTimestampDiff(Date.now() - ConsoleLogger_1.lastTimestampAt) : ""; ConsoleLogger_1.lastTimestampAt = Date.now(); return result; } formatTimestampDiff(timestampDiff) { return (0, cli_colors_util_1.yellow)(` +${timestampDiff}ms`); } getContextAndMessagesToPrint(args) { if (args?.length <= 1) { return { messages: args, context: this.context }; } const lastElement = args[args.length - 1]; const isContext = (0, shared_utils_1.isString)(lastElement); if (!isContext) { return { messages: args, context: this.context }; } return { context: lastElement, messages: args.slice(0, args.length - 1) }; } getContextAndStackAndMessagesToPrint(args) { if (args.length === 2) { return this.isStackFormat(args[1]) ? { messages: [args[0]], stack: args[1], context: this.context } : { messages: [args[0]], context: args[1] }; } const { messages, context } = this.getContextAndMessagesToPrint(args); if (messages?.length <= 1) { return { messages, context }; } const lastElement = messages[messages.length - 1]; const isStack = (0, shared_utils_1.isString)(lastElement); if (!isStack && !(0, shared_utils_1.isUndefined)(lastElement)) { return { messages, context }; } return { stack: lastElement, messages: messages.slice(0, messages.length - 1), context }; } isStackFormat(stack) { if (!(0, shared_utils_1.isString)(stack) && !(0, shared_utils_1.isUndefined)(stack)) { return false; } return /^(.)+\n\s+at .+:\d+:\d+/.test(stack); } getColorByLogLevel(level) { switch (level) { case "debug": return cli_colors_util_1.clc.magentaBright; case "warn": return cli_colors_util_1.clc.yellow; case "error": return cli_colors_util_1.clc.red; case "verbose": return cli_colors_util_1.clc.cyanBright; case "fatal": return cli_colors_util_1.clc.bold; default: return cli_colors_util_1.clc.green; } } }; exports2.ConsoleLogger = ConsoleLogger; exports2.ConsoleLogger = ConsoleLogger = ConsoleLogger_1 = tslib_1.__decorate([ (0, core_12.Injectable)(), tslib_1.__param(0, (0, core_12.Optional)()), tslib_1.__param(1, (0, core_12.Optional)()), tslib_1.__metadata("design:paramtypes", [String, Object]) ], ConsoleLogger); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/services/logger.service.js var require_logger_service = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/services/logger.service.js"(exports2) { "use strict"; var Logger_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Logger = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var core_12 = require_core(); var shared_utils_1 = require_shared_utils(); var console_logger_service_1 = require_console_logger_service(); var utils_1 = require_utils(); var DEFAULT_LOGGER = new console_logger_service_1.ConsoleLogger(); var dateTimeFormatter = new Intl.DateTimeFormat(void 0, { year: "numeric", hour: "numeric", minute: "numeric", second: "numeric", day: "2-digit", month: "2-digit" }); var Logger = Logger_1 = class Logger { static { __name(this, "Logger"); } constructor(context, options = {}) { this.context = context; this.options = options; } get localInstance() { if (Logger_1.staticInstanceRef === DEFAULT_LOGGER) { return this.registerLocalInstanceRef(); } else if (Logger_1.staticInstanceRef instanceof Logger_1) { const prototype = Object.getPrototypeOf(Logger_1.staticInstanceRef); if (prototype.constructor === Logger_1) { return this.registerLocalInstanceRef(); } } return Logger_1.staticInstanceRef; } error(message, ...optionalParams) { optionalParams = this.context ? (optionalParams.length ? optionalParams : [void 0]).concat(this.context) : optionalParams; this.localInstance?.error(message, ...optionalParams); } log(message, ...optionalParams) { optionalParams = this.context ? optionalParams.concat(this.context) : optionalParams; this.localInstance?.log(message, ...optionalParams); } warn(message, ...optionalParams) { optionalParams = this.context ? optionalParams.concat(this.context) : optionalParams; this.localInstance?.warn(message, ...optionalParams); } debug(message, ...optionalParams) { optionalParams = this.context ? optionalParams.concat(this.context) : optionalParams; this.localInstance?.debug?.(message, ...optionalParams); } verbose(message, ...optionalParams) { optionalParams = this.context ? optionalParams.concat(this.context) : optionalParams; this.localInstance?.verbose?.(message, ...optionalParams); } fatal(message, ...optionalParams) { optionalParams = this.context ? optionalParams.concat(this.context) : optionalParams; this.localInstance?.fatal?.(message, ...optionalParams); } static error(message, ...optionalParams) { this.staticInstanceRef?.error(message, ...optionalParams); } static log(message, ...optionalParams) { this.staticInstanceRef?.log(message, ...optionalParams); } static warn(message, ...optionalParams) { this.staticInstanceRef?.warn(message, ...optionalParams); } static debug(message, ...optionalParams) { this.staticInstanceRef?.debug?.(message, ...optionalParams); } static verbose(message, ...optionalParams) { this.staticInstanceRef?.verbose?.(message, ...optionalParams); } static fatal(message, ...optionalParams) { this.staticInstanceRef?.fatal?.(message, ...optionalParams); } /** * Print buffered logs and detach buffer. */ static flush() { this.isBufferAttached = false; this.logBuffer.forEach((item) => item.methodRef(...item.arguments)); this.logBuffer = []; } /** * Attach buffer. * Turns on initialization logs buffering. */ static attachBuffer() { this.isBufferAttached = true; } /** * Detach buffer. * Turns off initialization logs buffering. */ static detachBuffer() { this.isBufferAttached = false; } static getTimestamp() { return dateTimeFormatter.format(Date.now()); } static overrideLogger(logger) { if (Array.isArray(logger)) { Logger_1.logLevels = logger; return this.staticInstanceRef?.setLogLevels(logger); } if ((0, shared_utils_1.isObject)(logger)) { if (logger instanceof Logger_1 && logger.constructor !== Logger_1) { const errorMessage = `Using the "extends Logger" instruction is not allowed in Nest v9. Please, use "extends ConsoleLogger" instead.`; this.staticInstanceRef.error(errorMessage); throw new Error(errorMessage); } this.staticInstanceRef = logger; } else { this.staticInstanceRef = void 0; } } static isLevelEnabled(level) { const logLevels = Logger_1.logLevels; return (0, utils_1.isLogLevelEnabled)(level, logLevels); } registerLocalInstanceRef() { if (this.localInstanceRef) { return this.localInstanceRef; } this.localInstanceRef = new console_logger_service_1.ConsoleLogger(this.context, { timestamp: this.options?.timestamp, logLevels: Logger_1.logLevels }); return this.localInstanceRef; } }; exports2.Logger = Logger; Logger.logBuffer = new Array(); Logger.staticInstanceRef = DEFAULT_LOGGER; Logger.WrapBuffer = (target, propertyKey, descriptor) => { const originalFn = descriptor.value; descriptor.value = function(...args) { if (Logger_1.isBufferAttached) { Logger_1.logBuffer.push({ methodRef: originalFn.bind(this), arguments: args }); return; } return originalFn.call(this, ...args); }; }; tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger.prototype, "error", null); tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger.prototype, "log", null); tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger.prototype, "warn", null); tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger.prototype, "debug", null); tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger.prototype, "verbose", null); tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger.prototype, "fatal", null); tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger, "error", null); tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger, "log", null); tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger, "warn", null); tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger, "debug", null); tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger, "verbose", null); tslib_1.__decorate([ Logger.WrapBuffer, tslib_1.__metadata("design:type", Function), tslib_1.__metadata("design:paramtypes", [Object, Object]), tslib_1.__metadata("design:returntype", void 0) ], Logger, "fatal", null); exports2.Logger = Logger = Logger_1 = tslib_1.__decorate([ (0, core_12.Injectable)(), tslib_1.__param(0, (0, core_12.Optional)()), tslib_1.__param(1, (0, core_12.Optional)()), tslib_1.__metadata("design:paramtypes", [String, Object]) ], Logger); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/services/index.js var require_services = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/services/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_console_logger_service(), exports2); tslib_1.__exportStar(require_logger_service(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/file-stream/streamable-file.js var require_streamable_file = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/file-stream/streamable-file.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.StreamableFile = void 0; var stream_1 = require("stream"); var util_1 = require("util"); var enums_1 = require_enums(); var shared_utils_1 = require_shared_utils(); var services_1 = require_services(); var StreamableFile = class { static { __name(this, "StreamableFile"); } constructor(bufferOrReadStream, options = {}) { this.options = options; this.logger = new services_1.Logger("StreamableFile"); this.handleError = (err, res) => { if (res.destroyed) { return; } if (res.headersSent) { res.end(); return; } res.statusCode = enums_1.HttpStatus.BAD_REQUEST; res.send(err.message); }; this.logError = (err) => { this.logger.error(err.message, err.stack); }; if (util_1.types.isUint8Array(bufferOrReadStream)) { this.stream = new stream_1.Readable(); this.stream.push(bufferOrReadStream); this.stream.push(null); this.options.length ??= bufferOrReadStream.length; } else if (bufferOrReadStream.pipe && (0, shared_utils_1.isFunction)(bufferOrReadStream.pipe)) { this.stream = bufferOrReadStream; } } getStream() { return this.stream; } getHeaders() { const { type = "application/octet-stream", disposition = void 0, length = void 0 } = this.options; return { type, disposition, length }; } get errorHandler() { return this.handleError; } setErrorHandler(handler) { this.handleError = handler; return this; } get errorLogger() { return this.logError; } setErrorLogger(handler) { this.logError = handler; return this; } }; exports2.StreamableFile = StreamableFile; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/file-stream/index.js var require_file_stream = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/file-stream/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_streamable_file(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/abstract.interface.js var require_abstract_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/abstract.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/controllers/controller-metadata.interface.js var require_controller_metadata_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/controllers/controller-metadata.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/controllers/controller.interface.js var require_controller_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/controllers/controller.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/exceptions/exception-filter.interface.js var require_exception_filter_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/exceptions/exception-filter.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/exceptions/rpc-exception-filter.interface.js var require_rpc_exception_filter_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/exceptions/rpc-exception-filter.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/exceptions/ws-exception-filter.interface.js var require_ws_exception_filter_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/exceptions/ws-exception-filter.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/external/validation-error.interface.js var require_validation_error_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/external/validation-error.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/arguments-host.interface.js var require_arguments_host_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/arguments-host.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/can-activate.interface.js var require_can_activate_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/can-activate.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/custom-route-param-factory.interface.js var require_custom_route_param_factory_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/custom-route-param-factory.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/execution-context.interface.js var require_execution_context_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/execution-context.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/nest-interceptor.interface.js var require_nest_interceptor_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/nest-interceptor.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/paramtype.interface.js var require_paramtype_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/paramtype.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/pipe-transform.interface.js var require_pipe_transform_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/features/pipe-transform.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/global-prefix-options.interface.js var require_global_prefix_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/global-prefix-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/before-application-shutdown.interface.js var require_before_application_shutdown_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/before-application-shutdown.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/on-application-bootstrap.interface.js var require_on_application_bootstrap_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/on-application-bootstrap.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/on-application-shutdown.interface.js var require_on_application_shutdown_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/on-application-shutdown.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/on-destroy.interface.js var require_on_destroy_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/on-destroy.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/on-init.interface.js var require_on_init_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/on-init.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/index.js var require_hooks = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/hooks/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_before_application_shutdown_interface(), exports2); tslib_1.__exportStar(require_on_application_bootstrap_interface(), exports2); tslib_1.__exportStar(require_on_application_shutdown_interface(), exports2); tslib_1.__exportStar(require_on_destroy_interface(), exports2); tslib_1.__exportStar(require_on_init_interface(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/http-exception-body.interface.js var require_http_exception_body_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/http-exception-body.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/http-redirect-response.interface.js var require_http_redirect_response_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/http-redirect-response.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/http-server.interface.js var require_http_server_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/http-server.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/message-event.interface.js var require_message_event_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/message-event.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/raw-body-request.interface.js var require_raw_body_request_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/raw-body-request.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/index.js var require_http2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/http/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_http_exception_body_interface(), exports2); tslib_1.__exportStar(require_http_redirect_response_interface(), exports2); tslib_1.__exportStar(require_http_server_interface(), exports2); tslib_1.__exportStar(require_message_event_interface(), exports2); tslib_1.__exportStar(require_raw_body_request_interface(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/injectable.interface.js var require_injectable_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/injectable.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/microservices/nest-hybrid-application-options.interface.js var require_nest_hybrid_application_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/microservices/nest-hybrid-application-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/middleware/middleware-config-proxy.interface.js var require_middleware_config_proxy_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/middleware/middleware-config-proxy.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/middleware/middleware-configuration.interface.js var require_middleware_configuration_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/middleware/middleware-configuration.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/middleware/middleware-consumer.interface.js var require_middleware_consumer_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/middleware/middleware-consumer.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/middleware/nest-middleware.interface.js var require_nest_middleware_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/middleware/nest-middleware.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/middleware/index.js var require_middleware = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/middleware/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_middleware_config_proxy_interface(), exports2); tslib_1.__exportStar(require_middleware_configuration_interface(), exports2); tslib_1.__exportStar(require_middleware_consumer_interface(), exports2); tslib_1.__exportStar(require_nest_middleware_interface(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/dynamic-module.interface.js var require_dynamic_module_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/dynamic-module.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/forward-reference.interface.js var require_forward_reference_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/forward-reference.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/injection-token.interface.js var require_injection_token_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/injection-token.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/introspection-result.interface.js var require_introspection_result_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/introspection-result.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/module-metadata.interface.js var require_module_metadata_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/module-metadata.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/nest-module.interface.js var require_nest_module_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/nest-module.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/optional-factory-dependency.interface.js var require_optional_factory_dependency_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/optional-factory-dependency.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/provider.interface.js var require_provider_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/provider.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/index.js var require_modules2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/modules/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_dynamic_module_interface(), exports2); tslib_1.__exportStar(require_forward_reference_interface(), exports2); tslib_1.__exportStar(require_injection_token_interface(), exports2); tslib_1.__exportStar(require_introspection_result_interface(), exports2); tslib_1.__exportStar(require_module_metadata_interface(), exports2); tslib_1.__exportStar(require_nest_module_interface(), exports2); tslib_1.__exportStar(require_optional_factory_dependency_interface(), exports2); tslib_1.__exportStar(require_provider_interface(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/nest-application-context.interface.js var require_nest_application_context_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/nest-application-context.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/nest-application-options.interface.js var require_nest_application_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/nest-application-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/nest-application.interface.js var require_nest_application_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/nest-application.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/nest-microservice.interface.js var require_nest_microservice_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/nest-microservice.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/scope-options.interface.js var require_scope_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/scope-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Scope = void 0; var Scope; (function(Scope2) { Scope2[Scope2["DEFAULT"] = 0] = "DEFAULT"; Scope2[Scope2["TRANSIENT"] = 1] = "TRANSIENT"; Scope2[Scope2["REQUEST"] = 2] = "REQUEST"; })(Scope || (exports2.Scope = Scope = {})); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/type.interface.js var require_type_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/type.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/version-options.interface.js var require_version_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/version-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.VERSION_NEUTRAL = void 0; exports2.VERSION_NEUTRAL = Symbol("VERSION_NEUTRAL"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/websockets/web-socket-adapter.interface.js var require_web_socket_adapter_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/websockets/web-socket-adapter.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/index.js var require_interfaces = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/interfaces/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_abstract_interface(), exports2); tslib_1.__exportStar(require_controller_metadata_interface(), exports2); tslib_1.__exportStar(require_controller_interface(), exports2); tslib_1.__exportStar(require_exception_filter_interface(), exports2); tslib_1.__exportStar(require_rpc_exception_filter_interface(), exports2); tslib_1.__exportStar(require_ws_exception_filter_interface(), exports2); tslib_1.__exportStar(require_validation_error_interface(), exports2); tslib_1.__exportStar(require_arguments_host_interface(), exports2); tslib_1.__exportStar(require_can_activate_interface(), exports2); tslib_1.__exportStar(require_custom_route_param_factory_interface(), exports2); tslib_1.__exportStar(require_execution_context_interface(), exports2); tslib_1.__exportStar(require_nest_interceptor_interface(), exports2); tslib_1.__exportStar(require_paramtype_interface(), exports2); tslib_1.__exportStar(require_pipe_transform_interface(), exports2); tslib_1.__exportStar(require_global_prefix_options_interface(), exports2); tslib_1.__exportStar(require_hooks(), exports2); tslib_1.__exportStar(require_http2(), exports2); tslib_1.__exportStar(require_injectable_interface(), exports2); tslib_1.__exportStar(require_nest_hybrid_application_options_interface(), exports2); tslib_1.__exportStar(require_middleware(), exports2); tslib_1.__exportStar(require_modules2(), exports2); tslib_1.__exportStar(require_nest_application_context_interface(), exports2); tslib_1.__exportStar(require_nest_application_options_interface(), exports2); tslib_1.__exportStar(require_nest_application_interface(), exports2); tslib_1.__exportStar(require_nest_microservice_interface(), exports2); tslib_1.__exportStar(require_scope_options_interface(), exports2); tslib_1.__exportStar(require_type_interface(), exports2); tslib_1.__exportStar(require_version_options_interface(), exports2); tslib_1.__exportStar(require_web_socket_adapter_interface(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/random-string-generator.util.js var require_random_string_generator_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/random-string-generator.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.randomStringGenerator = void 0; var uid_1 = require_dist(); var randomStringGenerator = /* @__PURE__ */ __name(() => (0, uid_1.uid)(21), "randomStringGenerator"); exports2.randomStringGenerator = randomStringGenerator; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/constants.js var require_constants2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CONFIGURABLE_MODULE_ID = exports2.ASYNC_METHOD_SUFFIX = exports2.DEFAULT_FACTORY_CLASS_METHOD_KEY = exports2.DEFAULT_METHOD_KEY = void 0; exports2.DEFAULT_METHOD_KEY = "register"; exports2.DEFAULT_FACTORY_CLASS_METHOD_KEY = "create"; exports2.ASYNC_METHOD_SUFFIX = "Async"; exports2.CONFIGURABLE_MODULE_ID = "CONFIGURABLE_MODULE_ID"; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/utils/generate-options-injection-token.util.js var require_generate_options_injection_token_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/utils/generate-options-injection-token.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.generateOptionsInjectionToken = generateOptionsInjectionToken; var random_string_generator_util_1 = require_random_string_generator_util(); function generateOptionsInjectionToken() { const hash = (0, random_string_generator_util_1.randomStringGenerator)(); return `CONFIGURABLE_MODULE_OPTIONS[${hash}]`; } __name(generateOptionsInjectionToken, "generateOptionsInjectionToken"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/utils/get-injection-providers.util.js var require_get_injection_providers_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/utils/get-injection-providers.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getInjectionProviders = getInjectionProviders; var shared_utils_1 = require_shared_utils(); function isOptionalFactoryDependency(value) { return !(0, shared_utils_1.isUndefined)(value.token) && !(0, shared_utils_1.isUndefined)(value.optional) && !value.prototype; } __name(isOptionalFactoryDependency, "isOptionalFactoryDependency"); var mapInjectToTokens = /* @__PURE__ */ __name((t) => isOptionalFactoryDependency(t) ? t.token : t, "mapInjectToTokens"); function getInjectionProviders(providers, tokens) { const result = []; let search = tokens.map(mapInjectToTokens); while (search.length > 0) { const match = (providers ?? []).filter((p) => !result.includes(p) && // this prevents circular loops and duplication (search.includes(p) || search.includes(p?.provide))); result.push(...match); search = match.filter((p) => p?.inject).flatMap((p) => p.inject).map(mapInjectToTokens); } return result; } __name(getInjectionProviders, "getInjectionProviders"); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/utils/index.js var require_utils2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/utils/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_generate_options_injection_token_util(), exports2); tslib_1.__exportStar(require_get_injection_providers_util(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/configurable-module.builder.js var require_configurable_module_builder = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/configurable-module.builder.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ConfigurableModuleBuilder = void 0; var logger_service_1 = require_logger_service(); var random_string_generator_util_1 = require_random_string_generator_util(); var constants_1 = require_constants2(); var utils_1 = require_utils2(); var ConfigurableModuleBuilder = class _ConfigurableModuleBuilder { static { __name(this, "ConfigurableModuleBuilder"); } constructor(options = {}, parentBuilder) { this.options = options; this.logger = new logger_service_1.Logger(_ConfigurableModuleBuilder.name); if (parentBuilder) { this.staticMethodKey = parentBuilder.staticMethodKey; this.factoryClassMethodKey = parentBuilder.factoryClassMethodKey; this.transformModuleDefinition = parentBuilder.transformModuleDefinition; this.extras = parentBuilder.extras; } } /** * Registers the "extras" object (a set of extra options that can be used to modify the dynamic module definition). * Values you specify within the "extras" object will be used as default values (that can be overridden by module consumers). * * This method also applies the so-called "module definition transform function" that takes the auto-generated * dynamic module object ("DynamicModule") and the actual consumer "extras" object as input parameters. * The "extras" object consists of values explicitly specified by module consumers and default values. * * @example * ```typescript * .setExtras<{ isGlobal?: boolean }>({ isGlobal: false }, (definition, extras) => * ({ ...definition, global: extras.isGlobal }) * ) * ``` */ setExtras(extras, transformDefinition = (def) => def) { const builder = new _ConfigurableModuleBuilder(this.options, this); builder.extras = extras; builder.transformModuleDefinition = transformDefinition; return builder; } /** * Dynamic modules must expose public static methods that let you pass in * configuration parameters (control the module's behavior from the outside). * Some frequently used names that you may have seen in other modules are: * "forRoot", "forFeature", "register", "configure". * * This method "setClassMethodName" lets you specify the name of the * method that will be auto-generated. * * @param key name of the method */ setClassMethodName(key) { const builder = new _ConfigurableModuleBuilder(this.options, this); builder.staticMethodKey = key; return builder; } /** * Asynchronously configured modules (that rely on other modules, i.e. "ConfigModule") * let you pass the configuration factory class that will be registered and instantiated as a provider. * This provider then will be used to retrieve the module's configuration. To provide the configuration, * the corresponding factory method must be implemented. * * This method ("setFactoryMethodName") lets you control what method name will have to be * implemented by the config factory (default is "create"). * * @param key name of the method */ setFactoryMethodName(key) { const builder = new _ConfigurableModuleBuilder(this.options, this); builder.factoryClassMethodKey = key; return builder; } /** * Returns an object consisting of multiple properties that lets you * easily construct dynamic configurable modules. See "ConfigurableModuleHost" interface for more details. */ build() { this.staticMethodKey ??= constants_1.DEFAULT_METHOD_KEY; this.factoryClassMethodKey ??= constants_1.DEFAULT_FACTORY_CLASS_METHOD_KEY; this.options.optionsInjectionToken ??= this.options.moduleName ? this.constructInjectionTokenString() : (0, utils_1.generateOptionsInjectionToken)(); this.transformModuleDefinition ??= (definition) => definition; return { ConfigurableModuleClass: this.createConfigurableModuleCls(), MODULE_OPTIONS_TOKEN: this.options.optionsInjectionToken, ASYNC_OPTIONS_TYPE: this.createTypeProxy("ASYNC_OPTIONS_TYPE"), OPTIONS_TYPE: this.createTypeProxy("OPTIONS_TYPE") }; } constructInjectionTokenString() { const moduleNameInSnakeCase = this.options.moduleName.trim().split(/(?=[A-Z])/).join("_").toUpperCase(); return `${moduleNameInSnakeCase}_MODULE_OPTIONS`; } createConfigurableModuleCls() { const self2 = this; const asyncMethodKey = this.staticMethodKey + constants_1.ASYNC_METHOD_SUFFIX; class InternalModuleClass { static { __name(this, "InternalModuleClass"); } static [self2.staticMethodKey](options) { const providers = [ { provide: self2.options.optionsInjectionToken, useValue: this.omitExtras(options, self2.extras) } ]; if (self2.options.alwaysTransient) { providers.push({ provide: constants_1.CONFIGURABLE_MODULE_ID, useValue: (0, random_string_generator_util_1.randomStringGenerator)() }); } return self2.transformModuleDefinition({ module: this, providers }, { ...self2.extras, ...options }); } static [asyncMethodKey](options) { const providers = this.createAsyncProviders(options); if (self2.options.alwaysTransient) { providers.push({ provide: constants_1.CONFIGURABLE_MODULE_ID, useValue: (0, random_string_generator_util_1.randomStringGenerator)() }); } return self2.transformModuleDefinition({ module: this, imports: options.imports || [], providers }, { ...self2.extras, ...options }); } static omitExtras(input, extras) { if (!extras) { return input; } const moduleOptions = {}; const extrasKeys = Object.keys(extras); Object.keys(input).filter((key) => !extrasKeys.includes(key)).forEach((key) => { moduleOptions[key] = input[key]; }); return moduleOptions; } static createAsyncProviders(options) { if (options.useExisting || options.useFactory) { if (options.inject && options.provideInjectionTokensFrom) { return [ this.createAsyncOptionsProvider(options), ...(0, utils_1.getInjectionProviders)(options.provideInjectionTokensFrom, options.inject) ]; } return [this.createAsyncOptionsProvider(options)]; } return [ this.createAsyncOptionsProvider(options), { provide: options.useClass, useClass: options.useClass } ]; } static createAsyncOptionsProvider(options) { if (options.useFactory) { return { provide: self2.options.optionsInjectionToken, useFactory: options.useFactory, inject: options.inject || [] }; } return { provide: self2.options.optionsInjectionToken, useFactory: /* @__PURE__ */ __name(async (optionsFactory) => await optionsFactory[self2.factoryClassMethodKey](), "useFactory"), inject: [options.useExisting || options.useClass] }; } } return InternalModuleClass; } createTypeProxy(typeName) { const proxy = new Proxy({}, { get: /* @__PURE__ */ __name(() => { throw new Error(`"${typeName}" is not supposed to be used as a value.`); }, "get") }); return proxy; } }; exports2.ConfigurableModuleBuilder = ConfigurableModuleBuilder; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/interfaces/configurable-module-async-options.interface.js var require_configurable_module_async_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/interfaces/configurable-module-async-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/interfaces/configurable-module-cls.interface.js var require_configurable_module_cls_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/interfaces/configurable-module-cls.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/interfaces/configurable-module-host.interface.js var require_configurable_module_host_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/interfaces/configurable-module-host.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/interfaces/index.js var require_interfaces2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/interfaces/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_configurable_module_async_options_interface(), exports2); tslib_1.__exportStar(require_configurable_module_cls_interface(), exports2); tslib_1.__exportStar(require_configurable_module_host_interface(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/index.js var require_module_utils = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/module-utils/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_configurable_module_builder(), exports2); tslib_1.__exportStar(require_interfaces2(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/default-value.pipe.js var require_default_value_pipe = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/default-value.pipe.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DefaultValuePipe = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var injectable_decorator_1 = require_injectable_decorator(); var shared_utils_1 = require_shared_utils(); var DefaultValuePipe = class DefaultValuePipe { static { __name(this, "DefaultValuePipe"); } constructor(defaultValue) { this.defaultValue = defaultValue; } transform(value, _metadata) { if ((0, shared_utils_1.isNil)(value) || (0, shared_utils_1.isNumber)(value) && isNaN(value)) { return this.defaultValue; } return value; } }; exports2.DefaultValuePipe = DefaultValuePipe; exports2.DefaultValuePipe = DefaultValuePipe = tslib_1.__decorate([ (0, injectable_decorator_1.Injectable)(), tslib_1.__metadata("design:paramtypes", [Object]) ], DefaultValuePipe); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/http-error-by-code.util.js var require_http_error_by_code_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/http-error-by-code.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.HttpErrorByCode = void 0; var enums_1 = require_enums(); var exceptions_1 = require_exceptions(); exports2.HttpErrorByCode = { [enums_1.HttpStatus.BAD_GATEWAY]: exceptions_1.BadGatewayException, [enums_1.HttpStatus.BAD_REQUEST]: exceptions_1.BadRequestException, [enums_1.HttpStatus.CONFLICT]: exceptions_1.ConflictException, [enums_1.HttpStatus.FORBIDDEN]: exceptions_1.ForbiddenException, [enums_1.HttpStatus.GATEWAY_TIMEOUT]: exceptions_1.GatewayTimeoutException, [enums_1.HttpStatus.GONE]: exceptions_1.GoneException, [enums_1.HttpStatus.I_AM_A_TEAPOT]: exceptions_1.ImATeapotException, [enums_1.HttpStatus.INTERNAL_SERVER_ERROR]: exceptions_1.InternalServerErrorException, [enums_1.HttpStatus.METHOD_NOT_ALLOWED]: exceptions_1.MethodNotAllowedException, [enums_1.HttpStatus.NOT_ACCEPTABLE]: exceptions_1.NotAcceptableException, [enums_1.HttpStatus.NOT_FOUND]: exceptions_1.NotFoundException, [enums_1.HttpStatus.NOT_IMPLEMENTED]: exceptions_1.NotImplementedException, [enums_1.HttpStatus.PAYLOAD_TOO_LARGE]: exceptions_1.PayloadTooLargeException, [enums_1.HttpStatus.PRECONDITION_FAILED]: exceptions_1.PreconditionFailedException, [enums_1.HttpStatus.REQUEST_TIMEOUT]: exceptions_1.RequestTimeoutException, [enums_1.HttpStatus.SERVICE_UNAVAILABLE]: exceptions_1.ServiceUnavailableException, [enums_1.HttpStatus.UNAUTHORIZED]: exceptions_1.UnauthorizedException, [enums_1.HttpStatus.UNPROCESSABLE_ENTITY]: exceptions_1.UnprocessableEntityException, [enums_1.HttpStatus.UNSUPPORTED_MEDIA_TYPE]: exceptions_1.UnsupportedMediaTypeException }; } }); // ../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/concat.js var require_concat = __commonJS({ "../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/concat.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var ConcatIterator = class { static { __name(this, "ConcatIterator"); } constructor(toConcat) { this.toConcat = toConcat; } next() { if (this.toConcat.length === 0) { return { done: true }; } const result = this.toConcat[0].next(); if (!result.done) { return result; } this.toConcat.shift(); return this.next(); } }; exports2.ConcatIterator = ConcatIterator; } }); // ../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/filter.js var require_filter = __commonJS({ "../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/filter.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var FilterIterator = class { static { __name(this, "FilterIterator"); } constructor(source, predicate) { this.source = source; this.predicate = predicate; } next() { let result; do { result = this.source.next(); } while (!result.done && !this.predicate(result.value)); return result; } }; exports2.FilterIterator = FilterIterator; } }); // ../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/utils.js var require_utils3 = __commonJS({ "../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/utils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); function isIterator(candidate) { return typeof candidate === "object" && candidate !== null && typeof candidate.next === "function"; } __name(isIterator, "isIterator"); exports2.isIterator = isIterator; function isIterable(candidate) { return typeof candidate === "object" && candidate !== null && typeof candidate[Symbol.iterator] === "function"; } __name(isIterable, "isIterable"); exports2.isIterable = isIterable; function toIterator(collection) { if (isIterator(collection)) { return collection; } if (isIterable(collection)) { return collection[Symbol.iterator](); } throw new Error("Passed collection is neither an Iterator nor an Iterable"); } __name(toIterator, "toIterator"); exports2.toIterator = toIterator; } }); // ../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/flatten.js var require_flatten = __commonJS({ "../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/flatten.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var utils_1 = require_utils3(); var FlattenIterator = class { static { __name(this, "FlattenIterator"); } constructor(outer) { this.outer = outer; } next() { if (this.inner) { const result = this.inner.next(); if (!result.done) { return result; } this.inner = void 0; } const { value, done } = this.outer.next(); if (utils_1.isIterable(value)) { this.inner = value[Symbol.iterator](); return this.next(); } return { value, done }; } }; exports2.FlattenIterator = FlattenIterator; } }); // ../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/map.js var require_map = __commonJS({ "../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/map.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var MapIterator = class { static { __name(this, "MapIterator"); } constructor(source, iteratee) { this.source = source; this.iteratee = iteratee; } next() { const { value, done } = this.source.next(); return { value: !done && this.iteratee(value), done }; } }; exports2.MapIterator = MapIterator; } }); // ../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/slice.js var require_slice = __commonJS({ "../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/slice.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var SliceIterator = class { static { __name(this, "SliceIterator"); } /** * @param {Iterator} source Source Iterator * @param {number} start Zero-based positive start index, inclusive * @param {number} end Zero-based positive end index, exclusive, defaults to end of iterator */ constructor(source, start, end = Infinity) { this.source = source; this.start = start; this.end = end; this.i = 0; } next() { while (this.i < this.start) { const result = this.source.next(); if (result.done) { return result; } this.i++; } this.i++; if (this.i >= this.end) { return { done: true }; } return this.source.next(); } }; exports2.SliceIterator = SliceIterator; } }); // ../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/zip.js var require_zip = __commonJS({ "../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/zip.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var ZipIterator = class { static { __name(this, "ZipIterator"); } constructor(a, b) { this.a = a; this.b = b; } next() { const a = this.a.next(); if (a.done) { return { done: true }; } const b = this.b.next(); if (b.done) { return { done: true }; } return { value: [a.value, b.value], done: false }; } }; exports2.ZipIterator = ZipIterator; } }); // ../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/iterate.js var require_iterate = __commonJS({ "../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/iterate.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var concat_1 = require_concat(); var filter_1 = require_filter(); var flatten_1 = require_flatten(); var map_1 = require_map(); var slice_1 = require_slice(); var utils_1 = require_utils3(); var zip_1 = require_zip(); var IteratorWithOperators = class _IteratorWithOperators { static { __name(this, "IteratorWithOperators"); } /** * @param source Iterator to wrap */ constructor(source) { this.source = source; } /** * Returns a `{ value, done }` object that adheres to the Iterator protocol */ next() { return this.source.next(); } /** * The presence of this method makes the Iterator itself Iterable. * This makes it possible to pass it to `for of` and Iterable-accepting functions like `Array.from()` */ [Symbol.iterator]() { return this; } /** * Returns a new Iterator by running each element thru iteratee */ map(iteratee) { return new _IteratorWithOperators(new map_1.MapIterator(this.source, iteratee)); } filter(predicate) { return new _IteratorWithOperators(new filter_1.FilterIterator(this.source, predicate)); } /** * Returns a new Iterator concatenating the Iterator with an additional Iterator or Iterable */ concat(collection) { return new _IteratorWithOperators(new concat_1.ConcatIterator([this.source, utils_1.toIterator(collection)])); } /** * Returns a new Iterator that emits slice of the source with n elements taken from the beginning * * @param limit The number of elements to take. */ take(limit) { return new _IteratorWithOperators(new slice_1.SliceIterator(this.source, 0, limit + 1)); } /** * Returns a new Iterator that emits slice of the source with n elements dropped from the beginning * * @param n The number of elements to drop. */ drop(n) { return new _IteratorWithOperators(new slice_1.SliceIterator(this.source, n, Infinity)); } /** * Returns a new Iterator that emits a slice of the source * * @param {number} start Zero-based positive start index, inclusive * @param {number} end Zero-based positive end index, exclusive, defaults to end of iterator */ slice(start, end = Infinity) { return new _IteratorWithOperators(new slice_1.SliceIterator(this.source, start, end)); } /** * Returns a new Iterator that flattens items emitted by the Iterator a single level deep */ flatten() { return new _IteratorWithOperators(new flatten_1.FlattenIterator(this.source)); } reduce(iteratee, accumulator) { let result; if (accumulator === void 0) { result = this.source.next(); if (result.done) { throw new TypeError("Reduce of empty Iterator with no initial value"); } accumulator = result.value; } while (true) { result = this.source.next(); if (result.done) { break; } accumulator = iteratee(accumulator, result.value); } return accumulator; } find(predicate) { let result; while (true) { result = this.source.next(); if (result.done) { return void 0; } if (predicate(result.value)) { return result.value; } } } /** * Iterates and checks if `value` is emitted by the Iterator * * @param value The value to search */ includes(value) { let result; do { result = this.source.next(); if (!result.done && result.value === value) { return true; } } while (!result.done); return false; } /** * Iterates and checks if `predicate` returns truthy for any element emitted by the Iterator */ some(predicate) { let result; do { result = this.source.next(); if (!result.done && predicate(result.value)) { return true; } } while (!result.done); return false; } /** * Iterates and checks if `predicate` returns truthy for all elements emitted by the Iterator */ every(predicate) { let result; do { result = this.source.next(); if (!result.done && !predicate(result.value)) { return false; } } while (!result.done); return true; } /** * Iterates and invokes `iteratee` for every element emitted by the Iterator */ forEach(iteratee) { let result; while (true) { result = this.source.next(); if (result.done) { break; } iteratee(result.value); } } /** * Iterates and joins all elements emitted by the Iterator together as a string separated by an optional separator */ join(separator = ",") { let joined = ""; let result; while (true) { result = this.source.next(); if (result.done) { break; } joined += separator + result.value; } return joined.substr(separator.length); } /** * Iterates and returns all items emitted by the Iterator as an array. * Equivalent to passing the Iterator to `Array.from()` */ toArray() { return Array.from(this); } /** * Iterates and returns all items emitted by the Iterator as an ES6 Set. * Equivalent to passing the Iterator to `new Set()` */ toSet() { const set = /* @__PURE__ */ new Set(); while (true) { const { value, done } = this.next(); if (done) { return set; } set.add(value); } } /** * Iterates and returns all `[key, value]` paris emitted by the Iterator as an ES6 Map. * Equivalent to passing the Iterator to `new Map()` */ toMap() { return new Map(this); } }; exports2.IteratorWithOperators = IteratorWithOperators; function iterate(collection) { return new IteratorWithOperators(utils_1.toIterator(collection)); } __name(iterate, "iterate"); exports2.iterate = iterate; function zip(a, b) { return new IteratorWithOperators(new zip_1.ZipIterator(utils_1.toIterator(a), utils_1.toIterator(b))); } __name(zip, "zip"); exports2.zip = zip; exports2.default = iterate; } }); // ../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/index.js var require_lib = __commonJS({ "../../node_modules/.pnpm/iterare@1.2.1/node_modules/iterare/lib/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var iterate_1 = require_iterate(); exports2.iterate = iterate_1.iterate; exports2.zip = iterate_1.zip; exports2.default = iterate_1.iterate; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/load-package.util.js var require_load_package_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/load-package.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.loadPackage = loadPackage; var logger_service_1 = require_logger_service(); var MISSING_REQUIRED_DEPENDENCY = /* @__PURE__ */ __name((name, reason) => `The "${name}" package is missing. Please, make sure to install it to take advantage of ${reason}.`, "MISSING_REQUIRED_DEPENDENCY"); var logger = new logger_service_1.Logger("PackageLoader"); function loadPackage(packageName, context, loaderFn) { try { return loaderFn ? loaderFn() : require(packageName); } catch (e) { logger.error(MISSING_REQUIRED_DEPENDENCY(packageName, context)); logger_service_1.Logger.flush(); process.exit(1); } } __name(loadPackage, "loadPackage"); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/metadata/ValidationMetadata.js var require_ValidationMetadata = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/metadata/ValidationMetadata.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ValidationMetadata = void 0; var ValidationMetadata = class { static { __name(this, "ValidationMetadata"); } // ------------------------------------------------------------------------- // Constructor // ------------------------------------------------------------------------- constructor(args) { this.groups = []; this.each = false; this.context = void 0; this.type = args.type; this.name = args.name; this.target = args.target; this.propertyName = args.propertyName; this.constraints = args === null || args === void 0 ? void 0 : args.constraints; this.constraintCls = args.constraintCls; this.validationTypeOptions = args.validationTypeOptions; if (args.validationOptions) { this.message = args.validationOptions.message; this.groups = args.validationOptions.groups; this.always = args.validationOptions.always; this.each = args.validationOptions.each; this.context = args.validationOptions.context; } } }; exports2.ValidationMetadata = ValidationMetadata; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation-schema/ValidationSchemaToMetadataTransformer.js var require_ValidationSchemaToMetadataTransformer = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation-schema/ValidationSchemaToMetadataTransformer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ValidationSchemaToMetadataTransformer = void 0; var ValidationMetadata_1 = require_ValidationMetadata(); var ValidationSchemaToMetadataTransformer = class { static { __name(this, "ValidationSchemaToMetadataTransformer"); } transform(schema) { const metadatas = []; Object.keys(schema.properties).forEach((property) => { schema.properties[property].forEach((validation) => { const validationOptions = { message: validation.message, groups: validation.groups, always: validation.always, each: validation.each }; const args = { type: validation.type, name: validation.name, target: schema.name, propertyName: property, constraints: validation.constraints, validationTypeOptions: validation.options, validationOptions }; metadatas.push(new ValidationMetadata_1.ValidationMetadata(args)); }); }); return metadatas; } }; exports2.ValidationSchemaToMetadataTransformer = ValidationSchemaToMetadataTransformer; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/utils/convert-to-array.util.js var require_convert_to_array_util = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/utils/convert-to-array.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.convertToArray = void 0; function convertToArray(val) { if (val instanceof Map) { return Array.from(val.values()); } return Array.isArray(val) ? val : Array.from(val); } __name(convertToArray, "convertToArray"); exports2.convertToArray = convertToArray; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/utils/get-global.util.js var require_get_global_util = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/utils/get-global.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getGlobal = void 0; function getGlobal() { if (typeof globalThis !== "undefined") { return globalThis; } if (typeof global !== "undefined") { return global; } if (typeof window !== "undefined") { return window; } if (typeof self !== "undefined") { return self; } } __name(getGlobal, "getGlobal"); exports2.getGlobal = getGlobal; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/utils/is-promise.util.js var require_is_promise_util = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/utils/is-promise.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isPromise = void 0; function isPromise(p) { return p !== null && typeof p === "object" && typeof p.then === "function"; } __name(isPromise, "isPromise"); exports2.isPromise = isPromise; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/utils/index.js var require_utils4 = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/utils/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_convert_to_array_util(), exports2); __exportStar2(require_get_global_util(), exports2); __exportStar2(require_is_promise_util(), exports2); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/metadata/MetadataStorage.js var require_MetadataStorage = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/metadata/MetadataStorage.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getMetadataStorage = exports2.MetadataStorage = void 0; var ValidationSchemaToMetadataTransformer_1 = require_ValidationSchemaToMetadataTransformer(); var utils_1 = require_utils4(); var MetadataStorage = class { static { __name(this, "MetadataStorage"); } constructor() { this.validationMetadatas = /* @__PURE__ */ new Map(); this.constraintMetadatas = /* @__PURE__ */ new Map(); } get hasValidationMetaData() { return !!this.validationMetadatas.size; } // ------------------------------------------------------------------------- // Public Methods // ------------------------------------------------------------------------- /** * Adds a new validation metadata. */ addValidationSchema(schema) { const validationMetadatas = new ValidationSchemaToMetadataTransformer_1.ValidationSchemaToMetadataTransformer().transform(schema); validationMetadatas.forEach((validationMetadata) => this.addValidationMetadata(validationMetadata)); } /** * Adds a new validation metadata. */ addValidationMetadata(metadata) { const existingMetadata = this.validationMetadatas.get(metadata.target); if (existingMetadata) { existingMetadata.push(metadata); } else { this.validationMetadatas.set(metadata.target, [metadata]); } } /** * Adds a new constraint metadata. */ addConstraintMetadata(metadata) { const existingMetadata = this.constraintMetadatas.get(metadata.target); if (existingMetadata) { existingMetadata.push(metadata); } else { this.constraintMetadatas.set(metadata.target, [metadata]); } } /** * Groups metadata by their property names. */ groupByPropertyName(metadata) { const grouped = {}; metadata.forEach((metadata2) => { if (!grouped[metadata2.propertyName]) grouped[metadata2.propertyName] = []; grouped[metadata2.propertyName].push(metadata2); }); return grouped; } /** * Gets all validation metadatas for the given object with the given groups. */ getTargetValidationMetadatas(targetConstructor, targetSchema, always, strictGroups, groups) { const includeMetadataBecauseOfAlwaysOption = /* @__PURE__ */ __name((metadata) => { if (typeof metadata.always !== "undefined") return metadata.always; if (metadata.groups && metadata.groups.length) return false; return always; }, "includeMetadataBecauseOfAlwaysOption"); const excludeMetadataBecauseOfStrictGroupsOption = /* @__PURE__ */ __name((metadata) => { if (strictGroups) { if (!groups || !groups.length) { if (metadata.groups && metadata.groups.length) return true; } } return false; }, "excludeMetadataBecauseOfStrictGroupsOption"); const filteredForOriginalMetadatasSearch = this.validationMetadatas.get(targetConstructor) || []; const originalMetadatas = filteredForOriginalMetadatasSearch.filter((metadata) => { if (metadata.target !== targetConstructor && metadata.target !== targetSchema) return false; if (includeMetadataBecauseOfAlwaysOption(metadata)) return true; if (excludeMetadataBecauseOfStrictGroupsOption(metadata)) return false; if (groups && groups.length > 0) return metadata.groups && !!metadata.groups.find((group) => groups.indexOf(group) !== -1); return true; }); const filteredForInheritedMetadatasSearch = []; for (const [key, value] of this.validationMetadatas.entries()) { if (targetConstructor.prototype instanceof key) { filteredForInheritedMetadatasSearch.push(...value); } } const inheritedMetadatas = filteredForInheritedMetadatasSearch.filter((metadata) => { if (typeof metadata.target === "string") return false; if (metadata.target === targetConstructor) return false; if (metadata.target instanceof Function && !(targetConstructor.prototype instanceof metadata.target)) return false; if (includeMetadataBecauseOfAlwaysOption(metadata)) return true; if (excludeMetadataBecauseOfStrictGroupsOption(metadata)) return false; if (groups && groups.length > 0) return metadata.groups && !!metadata.groups.find((group) => groups.indexOf(group) !== -1); return true; }); const uniqueInheritedMetadatas = inheritedMetadatas.filter((inheritedMetadata) => { return !originalMetadatas.find((originalMetadata) => { return originalMetadata.propertyName === inheritedMetadata.propertyName && originalMetadata.type === inheritedMetadata.type; }); }); return originalMetadatas.concat(uniqueInheritedMetadatas); } /** * Gets all validator constraints for the given object. */ getTargetValidatorConstraints(target) { return this.constraintMetadatas.get(target) || []; } }; exports2.MetadataStorage = MetadataStorage; function getMetadataStorage() { const global2 = (0, utils_1.getGlobal)(); if (!global2.classValidatorMetadataStorage) { global2.classValidatorMetadataStorage = new MetadataStorage(); } return global2.classValidatorMetadataStorage; } __name(getMetadataStorage, "getMetadataStorage"); exports2.getMetadataStorage = getMetadataStorage; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidationError.js var require_ValidationError = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidationError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ValidationError = void 0; var ValidationError = class { static { __name(this, "ValidationError"); } /** * * @param shouldDecorate decorate the message with ANSI formatter escape codes for better readability * @param hasParent true when the error is a child of an another one * @param parentPath path as string to the parent of this property * @param showConstraintMessages show constraint messages instead of constraint names */ toString(shouldDecorate = false, hasParent = false, parentPath = ``, showConstraintMessages = false) { const boldStart = shouldDecorate ? `\x1B[1m` : ``; const boldEnd = shouldDecorate ? `\x1B[22m` : ``; const constraintsToString = /* @__PURE__ */ __name(() => { var _a; return (showConstraintMessages ? Object.values : Object.keys)((_a = this.constraints) !== null && _a !== void 0 ? _a : {}).join(`, `); }, "constraintsToString"); const propConstraintFailed = /* @__PURE__ */ __name((propertyName) => ` - property ${boldStart}${parentPath}${propertyName}${boldEnd} has failed the following constraints: ${boldStart}${constraintsToString()}${boldEnd} `, "propConstraintFailed"); if (!hasParent) { return `An instance of ${boldStart}${this.target ? this.target.constructor.name : "an object"}${boldEnd} has failed the validation: ` + (this.constraints ? propConstraintFailed(this.property) : ``) + (this.children ? this.children.map((childError) => childError.toString(shouldDecorate, true, this.property, showConstraintMessages)).join(``) : ``); } else { const formattedProperty = Number.isInteger(+this.property) ? `[${this.property}]` : `${parentPath ? `.` : ``}${this.property}`; if (this.constraints) { return propConstraintFailed(formattedProperty); } else { return this.children ? this.children.map((childError) => childError.toString(shouldDecorate, true, `${parentPath}${formattedProperty}`, showConstraintMessages)).join(``) : ``; } } } }; exports2.ValidationError = ValidationError; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidationTypes.js var require_ValidationTypes = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidationTypes.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ValidationTypes = void 0; var ValidationTypes = class { static { __name(this, "ValidationTypes"); } /** * Checks if validation type is valid. */ static isValid(type) { return type !== "isValid" && type !== "getMessage" && Object.keys(this).map((key) => this[key]).indexOf(type) !== -1; } }; exports2.ValidationTypes = ValidationTypes; ValidationTypes.CUSTOM_VALIDATION = "customValidation"; ValidationTypes.NESTED_VALIDATION = "nestedValidation"; ValidationTypes.PROMISE_VALIDATION = "promiseValidation"; ValidationTypes.CONDITIONAL_VALIDATION = "conditionalValidation"; ValidationTypes.WHITELIST = "whitelistValidation"; ValidationTypes.IS_DEFINED = "isDefined"; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidationUtils.js var require_ValidationUtils = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidationUtils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ValidationUtils = exports2.constraintToString = void 0; function constraintToString(constraint) { if (Array.isArray(constraint)) { return constraint.join(", "); } if (typeof constraint === "symbol") { constraint = constraint.description; } return `${constraint}`; } __name(constraintToString, "constraintToString"); exports2.constraintToString = constraintToString; var ValidationUtils = class { static { __name(this, "ValidationUtils"); } static replaceMessageSpecialTokens(message, validationArguments) { let messageString; if (message instanceof Function) { messageString = message(validationArguments); } else if (typeof message === "string") { messageString = message; } if (messageString && Array.isArray(validationArguments.constraints)) { validationArguments.constraints.forEach((constraint, index) => { messageString = messageString.replace(new RegExp(`\\$constraint${index + 1}`, "g"), constraintToString(constraint)); }); } if (messageString && validationArguments.value !== void 0 && validationArguments.value !== null && ["string", "boolean", "number"].includes(typeof validationArguments.value)) messageString = messageString.replace(/\$value/g, validationArguments.value); if (messageString) messageString = messageString.replace(/\$property/g, validationArguments.property); if (messageString) messageString = messageString.replace(/\$target/g, validationArguments.targetName); return messageString; } }; exports2.ValidationUtils = ValidationUtils; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidationExecutor.js var require_ValidationExecutor = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidationExecutor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ValidationExecutor = void 0; var ValidationError_1 = require_ValidationError(); var ValidationTypes_1 = require_ValidationTypes(); var ValidationUtils_1 = require_ValidationUtils(); var utils_1 = require_utils4(); var MetadataStorage_1 = require_MetadataStorage(); var ValidationExecutor = class { static { __name(this, "ValidationExecutor"); } // ------------------------------------------------------------------------- // Constructor // ------------------------------------------------------------------------- constructor(validator, validatorOptions) { this.validator = validator; this.validatorOptions = validatorOptions; this.awaitingPromises = []; this.ignoreAsyncValidations = false; this.metadataStorage = (0, MetadataStorage_1.getMetadataStorage)(); } // ------------------------------------------------------------------------- // Public Methods // ------------------------------------------------------------------------- execute(object, targetSchema, validationErrors) { var _a, _b; if (!this.metadataStorage.hasValidationMetaData && ((_a = this.validatorOptions) === null || _a === void 0 ? void 0 : _a.enableDebugMessages) === true) { console.warn(`No validation metadata found. No validation will be performed. There are multiple possible reasons: - There may be multiple class-validator versions installed. You will need to flatten your dependencies to fix the issue. - This validation runs before any file with validation decorator was parsed by NodeJS.`); } const groups = this.validatorOptions ? this.validatorOptions.groups : void 0; const strictGroups = this.validatorOptions && this.validatorOptions.strictGroups || false; const always = this.validatorOptions && this.validatorOptions.always || false; const forbidUnknownValues = ((_b = this.validatorOptions) === null || _b === void 0 ? void 0 : _b.forbidUnknownValues) === void 0 || this.validatorOptions.forbidUnknownValues !== false; const targetMetadatas = this.metadataStorage.getTargetValidationMetadatas(object.constructor, targetSchema, always, strictGroups, groups); const groupedMetadatas = this.metadataStorage.groupByPropertyName(targetMetadatas); if (forbidUnknownValues && !targetMetadatas.length) { const validationError = new ValidationError_1.ValidationError(); if (!this.validatorOptions || !this.validatorOptions.validationError || this.validatorOptions.validationError.target === void 0 || this.validatorOptions.validationError.target === true) validationError.target = object; validationError.value = void 0; validationError.property = void 0; validationError.children = []; validationError.constraints = { unknownValue: "an unknown value was passed to the validate function" }; validationErrors.push(validationError); return; } if (this.validatorOptions && this.validatorOptions.whitelist) this.whitelist(object, groupedMetadatas, validationErrors); Object.keys(groupedMetadatas).forEach((propertyName) => { const value = object[propertyName]; const definedMetadatas = groupedMetadatas[propertyName].filter((metadata) => metadata.type === ValidationTypes_1.ValidationTypes.IS_DEFINED); const metadatas = groupedMetadatas[propertyName].filter((metadata) => metadata.type !== ValidationTypes_1.ValidationTypes.IS_DEFINED && metadata.type !== ValidationTypes_1.ValidationTypes.WHITELIST); if (value instanceof Promise && metadatas.find((metadata) => metadata.type === ValidationTypes_1.ValidationTypes.PROMISE_VALIDATION)) { this.awaitingPromises.push(value.then((resolvedValue) => { this.performValidations(object, resolvedValue, propertyName, definedMetadatas, metadatas, validationErrors); })); } else { this.performValidations(object, value, propertyName, definedMetadatas, metadatas, validationErrors); } }); } whitelist(object, groupedMetadatas, validationErrors) { const notAllowedProperties = []; Object.keys(object).forEach((propertyName) => { if (!groupedMetadatas[propertyName] || groupedMetadatas[propertyName].length === 0) notAllowedProperties.push(propertyName); }); if (notAllowedProperties.length > 0) { if (this.validatorOptions && this.validatorOptions.forbidNonWhitelisted) { notAllowedProperties.forEach((property) => { const validationError = this.generateValidationError(object, object[property], property); validationError.constraints = { [ValidationTypes_1.ValidationTypes.WHITELIST]: `property ${property} should not exist` }; validationError.children = void 0; validationErrors.push(validationError); }); } else { notAllowedProperties.forEach((property) => delete object[property]); } } } stripEmptyErrors(errors) { return errors.filter((error) => { if (error.children) { error.children = this.stripEmptyErrors(error.children); } if (Object.keys(error.constraints).length === 0) { if (error.children.length === 0) { return false; } else { delete error.constraints; } } return true; }); } // ------------------------------------------------------------------------- // Private Methods // ------------------------------------------------------------------------- performValidations(object, value, propertyName, definedMetadatas, metadatas, validationErrors) { const customValidationMetadatas = metadatas.filter((metadata) => metadata.type === ValidationTypes_1.ValidationTypes.CUSTOM_VALIDATION); const nestedValidationMetadatas = metadatas.filter((metadata) => metadata.type === ValidationTypes_1.ValidationTypes.NESTED_VALIDATION); const conditionalValidationMetadatas = metadatas.filter((metadata) => metadata.type === ValidationTypes_1.ValidationTypes.CONDITIONAL_VALIDATION); const validationError = this.generateValidationError(object, value, propertyName); validationErrors.push(validationError); const canValidate = this.conditionalValidations(object, value, conditionalValidationMetadatas); if (!canValidate) { return; } this.customValidations(object, value, definedMetadatas, validationError); this.mapContexts(object, value, definedMetadatas, validationError); if (value === void 0 && this.validatorOptions && this.validatorOptions.skipUndefinedProperties === true) { return; } if (value === null && this.validatorOptions && this.validatorOptions.skipNullProperties === true) { return; } if ((value === null || value === void 0) && this.validatorOptions && this.validatorOptions.skipMissingProperties === true) { return; } this.customValidations(object, value, customValidationMetadatas, validationError); this.nestedValidations(value, nestedValidationMetadatas, validationError); this.mapContexts(object, value, metadatas, validationError); this.mapContexts(object, value, customValidationMetadatas, validationError); } generateValidationError(object, value, propertyName) { const validationError = new ValidationError_1.ValidationError(); if (!this.validatorOptions || !this.validatorOptions.validationError || this.validatorOptions.validationError.target === void 0 || this.validatorOptions.validationError.target === true) validationError.target = object; if (!this.validatorOptions || !this.validatorOptions.validationError || this.validatorOptions.validationError.value === void 0 || this.validatorOptions.validationError.value === true) validationError.value = value; validationError.property = propertyName; validationError.children = []; validationError.constraints = {}; return validationError; } conditionalValidations(object, value, metadatas) { return metadatas.map((metadata) => metadata.constraints[0](object, value)).reduce((resultA, resultB) => resultA && resultB, true); } customValidations(object, value, metadatas, error) { metadatas.forEach((metadata) => { this.metadataStorage.getTargetValidatorConstraints(metadata.constraintCls).forEach((customConstraintMetadata) => { if (customConstraintMetadata.async && this.ignoreAsyncValidations) return; if (this.validatorOptions && this.validatorOptions.stopAtFirstError && Object.keys(error.constraints || {}).length > 0) return; const validationArguments = { targetName: object.constructor ? object.constructor.name : void 0, property: metadata.propertyName, object, value, constraints: metadata.constraints }; if (!metadata.each || !(Array.isArray(value) || value instanceof Set || value instanceof Map)) { const validatedValue = customConstraintMetadata.instance.validate(value, validationArguments); if ((0, utils_1.isPromise)(validatedValue)) { const promise = validatedValue.then((isValid) => { if (!isValid) { const [type, message] = this.createValidationError(object, value, metadata, customConstraintMetadata); error.constraints[type] = message; if (metadata.context) { if (!error.contexts) { error.contexts = {}; } error.contexts[type] = Object.assign(error.contexts[type] || {}, metadata.context); } } }); this.awaitingPromises.push(promise); } else { if (!validatedValue) { const [type, message] = this.createValidationError(object, value, metadata, customConstraintMetadata); error.constraints[type] = message; } } return; } const arrayValue = (0, utils_1.convertToArray)(value); const validatedSubValues = arrayValue.map((subValue) => customConstraintMetadata.instance.validate(subValue, validationArguments)); const validationIsAsync = validatedSubValues.some((validatedSubValue) => (0, utils_1.isPromise)(validatedSubValue)); if (validationIsAsync) { const asyncValidatedSubValues = validatedSubValues.map((validatedSubValue) => (0, utils_1.isPromise)(validatedSubValue) ? validatedSubValue : Promise.resolve(validatedSubValue)); const asyncValidationIsFinishedPromise = Promise.all(asyncValidatedSubValues).then((flatValidatedValues) => { const validationResult2 = flatValidatedValues.every((isValid) => isValid); if (!validationResult2) { const [type, message] = this.createValidationError(object, value, metadata, customConstraintMetadata); error.constraints[type] = message; if (metadata.context) { if (!error.contexts) { error.contexts = {}; } error.contexts[type] = Object.assign(error.contexts[type] || {}, metadata.context); } } }); this.awaitingPromises.push(asyncValidationIsFinishedPromise); return; } const validationResult = validatedSubValues.every((isValid) => isValid); if (!validationResult) { const [type, message] = this.createValidationError(object, value, metadata, customConstraintMetadata); error.constraints[type] = message; } }); }); } nestedValidations(value, metadatas, error) { if (value === void 0) { return; } metadatas.forEach((metadata) => { if (metadata.type !== ValidationTypes_1.ValidationTypes.NESTED_VALIDATION && metadata.type !== ValidationTypes_1.ValidationTypes.PROMISE_VALIDATION) { return; } else if (this.validatorOptions && this.validatorOptions.stopAtFirstError && Object.keys(error.constraints || {}).length > 0) { return; } if (Array.isArray(value) || value instanceof Set || value instanceof Map) { const arrayLikeValue = value instanceof Set ? Array.from(value) : value; arrayLikeValue.forEach((subValue, index) => { this.performValidations(value, subValue, index.toString(), [], metadatas, error.children); }); } else if (value instanceof Object) { const targetSchema = typeof metadata.target === "string" ? metadata.target : metadata.target.name; this.execute(value, targetSchema, error.children); } else { const [type, message] = this.createValidationError(metadata.target, value, metadata); error.constraints[type] = message; } }); } mapContexts(object, value, metadatas, error) { return metadatas.forEach((metadata) => { if (metadata.context) { let customConstraint; if (metadata.type === ValidationTypes_1.ValidationTypes.CUSTOM_VALIDATION) { const customConstraints = this.metadataStorage.getTargetValidatorConstraints(metadata.constraintCls); customConstraint = customConstraints[0]; } const type = this.getConstraintType(metadata, customConstraint); if (error.constraints[type]) { if (!error.contexts) { error.contexts = {}; } error.contexts[type] = Object.assign(error.contexts[type] || {}, metadata.context); } } }); } createValidationError(object, value, metadata, customValidatorMetadata) { const targetName = object.constructor ? object.constructor.name : void 0; const type = this.getConstraintType(metadata, customValidatorMetadata); const validationArguments = { targetName, property: metadata.propertyName, object, value, constraints: metadata.constraints }; let message = metadata.message || ""; if (!metadata.message && (!this.validatorOptions || this.validatorOptions && !this.validatorOptions.dismissDefaultMessages)) { if (customValidatorMetadata && customValidatorMetadata.instance.defaultMessage instanceof Function) { message = customValidatorMetadata.instance.defaultMessage(validationArguments); } } const messageString = ValidationUtils_1.ValidationUtils.replaceMessageSpecialTokens(message, validationArguments); return [type, messageString]; } getConstraintType(metadata, customValidatorMetadata) { const type = customValidatorMetadata && customValidatorMetadata.name ? customValidatorMetadata.name : metadata.type; return type; } }; exports2.ValidationExecutor = ValidationExecutor; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/Validator.js var require_Validator = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/Validator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Validator = void 0; var ValidationExecutor_1 = require_ValidationExecutor(); var Validator = class { static { __name(this, "Validator"); } /** * Performs validation of the given object based on decorators or validation schema. */ validate(objectOrSchemaName, objectOrValidationOptions, maybeValidatorOptions) { return this.coreValidate(objectOrSchemaName, objectOrValidationOptions, maybeValidatorOptions); } /** * Performs validation of the given object based on decorators or validation schema and reject on error. */ async validateOrReject(objectOrSchemaName, objectOrValidationOptions, maybeValidatorOptions) { const errors = await this.coreValidate(objectOrSchemaName, objectOrValidationOptions, maybeValidatorOptions); if (errors.length) return Promise.reject(errors); } /** * Performs validation of the given object based on decorators or validation schema. */ validateSync(objectOrSchemaName, objectOrValidationOptions, maybeValidatorOptions) { const object = typeof objectOrSchemaName === "string" ? objectOrValidationOptions : objectOrSchemaName; const options = typeof objectOrSchemaName === "string" ? maybeValidatorOptions : objectOrValidationOptions; const schema = typeof objectOrSchemaName === "string" ? objectOrSchemaName : void 0; const executor = new ValidationExecutor_1.ValidationExecutor(this, options); executor.ignoreAsyncValidations = true; const validationErrors = []; executor.execute(object, schema, validationErrors); return executor.stripEmptyErrors(validationErrors); } // ------------------------------------------------------------------------- // Private Properties // ------------------------------------------------------------------------- /** * Performs validation of the given object based on decorators or validation schema. * Common method for `validateOrReject` and `validate` methods. */ coreValidate(objectOrSchemaName, objectOrValidationOptions, maybeValidatorOptions) { const object = typeof objectOrSchemaName === "string" ? objectOrValidationOptions : objectOrSchemaName; const options = typeof objectOrSchemaName === "string" ? maybeValidatorOptions : objectOrValidationOptions; const schema = typeof objectOrSchemaName === "string" ? objectOrSchemaName : void 0; const executor = new ValidationExecutor_1.ValidationExecutor(this, options); const validationErrors = []; executor.execute(object, schema, validationErrors); return Promise.all(executor.awaitingPromises).then(() => { return executor.stripEmptyErrors(validationErrors); }); } }; exports2.Validator = Validator; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/container.js var require_container = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/container.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getFromContainer = exports2.useContainer = void 0; var defaultContainer = new class { constructor() { this.instances = []; } get(someClass) { let instance = this.instances.find((instance2) => instance2.type === someClass); if (!instance) { instance = { type: someClass, object: new someClass() }; this.instances.push(instance); } return instance.object; } }(); var userContainer; var userContainerOptions; function useContainer(iocContainer, options) { userContainer = iocContainer; userContainerOptions = options; } __name(useContainer, "useContainer"); exports2.useContainer = useContainer; function getFromContainer(someClass) { if (userContainer) { try { const instance = userContainer.get(someClass); if (instance) return instance; if (!userContainerOptions || !userContainerOptions.fallback) return instance; } catch (error) { if (!userContainerOptions || !userContainerOptions.fallbackOnErrors) throw error; } } return defaultContainer.get(someClass); } __name(getFromContainer, "getFromContainer"); exports2.getFromContainer = getFromContainer; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/Allow.js var require_Allow = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/Allow.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Allow = void 0; var ValidationTypes_1 = require_ValidationTypes(); var ValidationMetadata_1 = require_ValidationMetadata(); var MetadataStorage_1 = require_MetadataStorage(); function Allow(validationOptions) { return function(object, propertyName) { const args = { type: ValidationTypes_1.ValidationTypes.WHITELIST, target: object.constructor, propertyName, validationOptions }; (0, MetadataStorage_1.getMetadataStorage)().addValidationMetadata(new ValidationMetadata_1.ValidationMetadata(args)); }; } __name(Allow, "Allow"); exports2.Allow = Allow; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/metadata/ConstraintMetadata.js var require_ConstraintMetadata = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/metadata/ConstraintMetadata.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ConstraintMetadata = void 0; var container_1 = require_container(); var ConstraintMetadata = class { static { __name(this, "ConstraintMetadata"); } // ------------------------------------------------------------------------- // Constructor // ------------------------------------------------------------------------- constructor(target, name, async = false) { this.target = target; this.name = name; this.async = async; } // ------------------------------------------------------------------------- // Accessors // ------------------------------------------------------------------------- /** * Instance of the target custom validation class which performs validation. */ get instance() { return (0, container_1.getFromContainer)(this.target); } }; exports2.ConstraintMetadata = ConstraintMetadata; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/register-decorator.js var require_register_decorator = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/register-decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.registerDecorator = void 0; var ConstraintMetadata_1 = require_ConstraintMetadata(); var ValidationMetadata_1 = require_ValidationMetadata(); var ValidationTypes_1 = require_ValidationTypes(); var container_1 = require_container(); var MetadataStorage_1 = require_MetadataStorage(); function registerDecorator(options) { let constraintCls; if (options.validator instanceof Function) { constraintCls = options.validator; const constraintClasses = (0, container_1.getFromContainer)(MetadataStorage_1.MetadataStorage).getTargetValidatorConstraints(options.validator); if (constraintClasses.length > 1) { throw `More than one implementation of ValidatorConstraintInterface found for validator on: ${options.target.name}:${options.propertyName}`; } } else { const validator = options.validator; constraintCls = class CustomConstraint { static { __name(this, "CustomConstraint"); } validate(value, validationArguments) { return validator.validate(value, validationArguments); } defaultMessage(validationArguments) { if (validator.defaultMessage) { return validator.defaultMessage(validationArguments); } return ""; } }; (0, MetadataStorage_1.getMetadataStorage)().addConstraintMetadata(new ConstraintMetadata_1.ConstraintMetadata(constraintCls, options.name, options.async)); } const validationMetadataArgs = { type: options.name && ValidationTypes_1.ValidationTypes.isValid(options.name) ? options.name : ValidationTypes_1.ValidationTypes.CUSTOM_VALIDATION, name: options.name, target: options.target, propertyName: options.propertyName, validationOptions: options.options, constraintCls, constraints: options.constraints }; (0, MetadataStorage_1.getMetadataStorage)().addValidationMetadata(new ValidationMetadata_1.ValidationMetadata(validationMetadataArgs)); } __name(registerDecorator, "registerDecorator"); exports2.registerDecorator = registerDecorator; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/ValidateBy.js var require_ValidateBy = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/ValidateBy.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ValidateBy = exports2.buildMessage = void 0; var register_decorator_1 = require_register_decorator(); function buildMessage(impl, validationOptions) { return (validationArguments) => { const eachPrefix = validationOptions && validationOptions.each ? "each value in " : ""; return impl(eachPrefix, validationArguments); }; } __name(buildMessage, "buildMessage"); exports2.buildMessage = buildMessage; function ValidateBy(options, validationOptions) { return function(object, propertyName) { (0, register_decorator_1.registerDecorator)({ name: options.name, target: object.constructor, propertyName, options: validationOptions, constraints: options.constraints, validator: options.validator }); }; } __name(ValidateBy, "ValidateBy"); exports2.ValidateBy = ValidateBy; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsDefined.js var require_IsDefined = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsDefined.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsDefined = exports2.isDefined = exports2.IS_DEFINED = void 0; var ValidateBy_1 = require_ValidateBy(); var ValidationTypes_1 = require_ValidationTypes(); exports2.IS_DEFINED = ValidationTypes_1.ValidationTypes.IS_DEFINED; function isDefined(value) { return value !== void 0 && value !== null; } __name(isDefined, "isDefined"); exports2.isDefined = isDefined; function IsDefined(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_DEFINED, validator: { validate: /* @__PURE__ */ __name((value) => isDefined(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property should not be null or undefined", validationOptions) } }, validationOptions); } __name(IsDefined, "IsDefined"); exports2.IsDefined = IsDefined; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsOptional.js var require_IsOptional = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsOptional.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsOptional = exports2.IS_OPTIONAL = void 0; var ValidationTypes_1 = require_ValidationTypes(); var ValidationMetadata_1 = require_ValidationMetadata(); var MetadataStorage_1 = require_MetadataStorage(); exports2.IS_OPTIONAL = "isOptional"; function IsOptional(validationOptions) { return function(object, propertyName) { const args = { type: ValidationTypes_1.ValidationTypes.CONDITIONAL_VALIDATION, name: exports2.IS_OPTIONAL, target: object.constructor, propertyName, constraints: [ (object2, value) => { return object2[propertyName] !== null && object2[propertyName] !== void 0; } ], validationOptions }; (0, MetadataStorage_1.getMetadataStorage)().addValidationMetadata(new ValidationMetadata_1.ValidationMetadata(args)); }; } __name(IsOptional, "IsOptional"); exports2.IsOptional = IsOptional; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/Validate.js var require_Validate = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/Validate.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Validate = exports2.ValidatorConstraint = void 0; var ValidationMetadata_1 = require_ValidationMetadata(); var MetadataStorage_1 = require_MetadataStorage(); var ValidationTypes_1 = require_ValidationTypes(); var ConstraintMetadata_1 = require_ConstraintMetadata(); function ValidatorConstraint(options) { return function(target) { const isAsync = options && options.async; let name = options && options.name ? options.name : ""; if (!name) { name = target.name; if (!name) name = name.replace(/\.?([A-Z]+)/g, (x, y) => "_" + y.toLowerCase()).replace(/^_/, ""); } const metadata = new ConstraintMetadata_1.ConstraintMetadata(target, name, isAsync); (0, MetadataStorage_1.getMetadataStorage)().addConstraintMetadata(metadata); }; } __name(ValidatorConstraint, "ValidatorConstraint"); exports2.ValidatorConstraint = ValidatorConstraint; function Validate(constraintClass, constraintsOrValidationOptions, maybeValidationOptions) { return function(object, propertyName) { const args = { type: ValidationTypes_1.ValidationTypes.CUSTOM_VALIDATION, target: object.constructor, propertyName, constraintCls: constraintClass, constraints: Array.isArray(constraintsOrValidationOptions) ? constraintsOrValidationOptions : void 0, validationOptions: !Array.isArray(constraintsOrValidationOptions) ? constraintsOrValidationOptions : maybeValidationOptions }; (0, MetadataStorage_1.getMetadataStorage)().addValidationMetadata(new ValidationMetadata_1.ValidationMetadata(args)); }; } __name(Validate, "Validate"); exports2.Validate = Validate; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/ValidateIf.js var require_ValidateIf = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/ValidateIf.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ValidateIf = void 0; var ValidationTypes_1 = require_ValidationTypes(); var ValidationMetadata_1 = require_ValidationMetadata(); var MetadataStorage_1 = require_MetadataStorage(); function ValidateIf(condition, validationOptions) { return function(object, propertyName) { const args = { type: ValidationTypes_1.ValidationTypes.CONDITIONAL_VALIDATION, target: object.constructor, propertyName, constraints: [condition], validationOptions }; (0, MetadataStorage_1.getMetadataStorage)().addValidationMetadata(new ValidationMetadata_1.ValidationMetadata(args)); }; } __name(ValidateIf, "ValidateIf"); exports2.ValidateIf = ValidateIf; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/ValidateNested.js var require_ValidateNested = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/ValidateNested.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ValidateNested = void 0; var ValidationTypes_1 = require_ValidationTypes(); var ValidationMetadata_1 = require_ValidationMetadata(); var MetadataStorage_1 = require_MetadataStorage(); function ValidateNested(validationOptions) { const opts = { ...validationOptions }; const eachPrefix = opts.each ? "each value in " : ""; opts.message = opts.message || eachPrefix + "nested property $property must be either object or array"; return function(object, propertyName) { const args = { type: ValidationTypes_1.ValidationTypes.NESTED_VALIDATION, target: object.constructor, propertyName, validationOptions: opts }; (0, MetadataStorage_1.getMetadataStorage)().addValidationMetadata(new ValidationMetadata_1.ValidationMetadata(args)); }; } __name(ValidateNested, "ValidateNested"); exports2.ValidateNested = ValidateNested; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/ValidatePromise.js var require_ValidatePromise = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/ValidatePromise.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ValidatePromise = void 0; var ValidationTypes_1 = require_ValidationTypes(); var ValidationMetadata_1 = require_ValidationMetadata(); var MetadataStorage_1 = require_MetadataStorage(); function ValidatePromise(validationOptions) { return function(object, propertyName) { const args = { type: ValidationTypes_1.ValidationTypes.PROMISE_VALIDATION, target: object.constructor, propertyName, validationOptions }; (0, MetadataStorage_1.getMetadataStorage)().addValidationMetadata(new ValidationMetadata_1.ValidationMetadata(args)); }; } __name(ValidatePromise, "ValidatePromise"); exports2.ValidatePromise = ValidatePromise; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/assertString.js var require_assertString = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/assertString.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = assertString; function assertString(input) { if (input === void 0 || input === null) throw new TypeError("Expected a string but received a ".concat(input)); if (input.constructor.name !== "String") throw new TypeError("Expected a string but received a ".concat(input.constructor.name)); } __name(assertString, "assertString"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/merge.js var require_merge = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/merge.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = merge; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function merge() { var obj2 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}; var defaults = arguments.length > 1 ? arguments[1] : void 0; if (_typeof(obj2) !== "object" || obj2 === null) { obj2 = {}; } for (var key in defaults) { if (typeof obj2[key] === "undefined") { obj2[key] = defaults[key]; } } return obj2; } __name(merge, "merge"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/includesString.js var require_includesString = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/includesString.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = void 0; var includes = /* @__PURE__ */ __name(function includes2(str, val) { return str.indexOf(val) !== -1; }, "includes"); var _default = exports2.default = includes; module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLatLong.js var require_isLatLong = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLatLong.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isLatLong; var _assertString = _interopRequireDefault(require_assertString()); var _merge = _interopRequireDefault(require_merge()); var _includesString = _interopRequireDefault(require_includesString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var lat = /^\(?[+-]?(90(\.0+)?|[1-8]?\d(\.\d+)?)$/; var long = /^\s?[+-]?(180(\.0+)?|1[0-7]\d(\.\d+)?|\d{1,2}(\.\d+)?)\)?$/; var latDMS = /^(([1-8]?\d)\D+([1-5]?\d|60)\D+([1-5]?\d|60)(\.\d+)?|90\D+0\D+0)\D+[NSns]?$/i; var longDMS = /^\s*([1-7]?\d{1,2}\D+([1-5]?\d|60)\D+([1-5]?\d|60)(\.\d+)?|180\D+0\D+0)\D+[EWew]?$/i; var defaultLatLongOptions = { checkDMS: false }; function isLatLong(str, options) { (0, _assertString.default)(str); options = (0, _merge.default)(options, defaultLatLongOptions); if (!(0, _includesString.default)(str, ",")) return false; var pair = str.split(","); if (pair[0].startsWith("(") && !pair[1].endsWith(")") || pair[1].endsWith(")") && !pair[0].startsWith("(")) return false; if (options.checkDMS) { return latDMS.test(pair[0]) && longDMS.test(pair[1]); } return lat.test(pair[0]) && long.test(pair[1]); } __name(isLatLong, "isLatLong"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsLatLong.js var require_IsLatLong = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsLatLong.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsLatLong = exports2.isLatLong = exports2.IS_LATLONG = void 0; var ValidateBy_1 = require_ValidateBy(); var isLatLong_1 = __importDefault2(require_isLatLong()); exports2.IS_LATLONG = "isLatLong"; function isLatLong(value) { return typeof value === "string" && (0, isLatLong_1.default)(value); } __name(isLatLong, "isLatLong"); exports2.isLatLong = isLatLong; function IsLatLong(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_LATLONG, validator: { validate: /* @__PURE__ */ __name((value, args) => isLatLong(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a latitude,longitude string", validationOptions) } }, validationOptions); } __name(IsLatLong, "IsLatLong"); exports2.IsLatLong = IsLatLong; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsLatitude.js var require_IsLatitude = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsLatitude.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsLatitude = exports2.isLatitude = exports2.IS_LATITUDE = void 0; var ValidateBy_1 = require_ValidateBy(); var IsLatLong_1 = require_IsLatLong(); exports2.IS_LATITUDE = "isLatitude"; function isLatitude(value) { return (typeof value === "number" || typeof value === "string") && (0, IsLatLong_1.isLatLong)(`${value},0`); } __name(isLatitude, "isLatitude"); exports2.isLatitude = isLatitude; function IsLatitude(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_LATITUDE, validator: { validate: /* @__PURE__ */ __name((value, args) => isLatitude(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a latitude string or number", validationOptions) } }, validationOptions); } __name(IsLatitude, "IsLatitude"); exports2.IsLatitude = IsLatitude; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsLongitude.js var require_IsLongitude = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsLongitude.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsLongitude = exports2.isLongitude = exports2.IS_LONGITUDE = void 0; var ValidateBy_1 = require_ValidateBy(); var IsLatLong_1 = require_IsLatLong(); exports2.IS_LONGITUDE = "isLongitude"; function isLongitude(value) { return (typeof value === "number" || typeof value === "string") && (0, IsLatLong_1.isLatLong)(`0,${value}`); } __name(isLongitude, "isLongitude"); exports2.isLongitude = isLongitude; function IsLongitude(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_LONGITUDE, validator: { validate: /* @__PURE__ */ __name((value, args) => isLongitude(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a longitude string or number", validationOptions) } }, validationOptions); } __name(IsLongitude, "IsLongitude"); exports2.IsLongitude = IsLongitude; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/Equals.js var require_Equals = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/Equals.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Equals = exports2.equals = exports2.EQUALS = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.EQUALS = "equals"; function equals(value, comparison) { return value === comparison; } __name(equals, "equals"); exports2.equals = equals; function Equals(comparison, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.EQUALS, constraints: [comparison], validator: { validate: /* @__PURE__ */ __name((value, args) => equals(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be equal to $constraint1", validationOptions) } }, validationOptions); } __name(Equals, "Equals"); exports2.Equals = Equals; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/NotEquals.js var require_NotEquals = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/NotEquals.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NotEquals = exports2.notEquals = exports2.NOT_EQUALS = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.NOT_EQUALS = "notEquals"; function notEquals(value, comparison) { return value !== comparison; } __name(notEquals, "notEquals"); exports2.notEquals = notEquals; function NotEquals(comparison, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.NOT_EQUALS, constraints: [comparison], validator: { validate: /* @__PURE__ */ __name((value, args) => notEquals(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property should not be equal to $constraint1", validationOptions) } }, validationOptions); } __name(NotEquals, "NotEquals"); exports2.NotEquals = NotEquals; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsEmpty.js var require_IsEmpty = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsEmpty.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsEmpty = exports2.isEmpty = exports2.IS_EMPTY = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_EMPTY = "isEmpty"; function isEmpty(value) { return value === "" || value === null || value === void 0; } __name(isEmpty, "isEmpty"); exports2.isEmpty = isEmpty; function IsEmpty(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_EMPTY, validator: { validate: /* @__PURE__ */ __name((value, args) => isEmpty(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be empty", validationOptions) } }, validationOptions); } __name(IsEmpty, "IsEmpty"); exports2.IsEmpty = IsEmpty; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsNotEmpty.js var require_IsNotEmpty = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsNotEmpty.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsNotEmpty = exports2.isNotEmpty = exports2.IS_NOT_EMPTY = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_NOT_EMPTY = "isNotEmpty"; function isNotEmpty(value) { return value !== "" && value !== null && value !== void 0; } __name(isNotEmpty, "isNotEmpty"); exports2.isNotEmpty = isNotEmpty; function IsNotEmpty(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_NOT_EMPTY, validator: { validate: /* @__PURE__ */ __name((value, args) => isNotEmpty(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property should not be empty", validationOptions) } }, validationOptions); } __name(IsNotEmpty, "IsNotEmpty"); exports2.IsNotEmpty = IsNotEmpty; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsIn.js var require_IsIn = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsIn.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsIn = exports2.isIn = exports2.IS_IN = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_IN = "isIn"; function isIn(value, possibleValues) { return Array.isArray(possibleValues) && possibleValues.some((possibleValue) => possibleValue === value); } __name(isIn, "isIn"); exports2.isIn = isIn; function IsIn(values, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_IN, constraints: [values], validator: { validate: /* @__PURE__ */ __name((value, args) => isIn(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be one of the following values: $constraint1", validationOptions) } }, validationOptions); } __name(IsIn, "IsIn"); exports2.IsIn = IsIn; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsNotIn.js var require_IsNotIn = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/common/IsNotIn.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsNotIn = exports2.isNotIn = exports2.IS_NOT_IN = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_NOT_IN = "isNotIn"; function isNotIn(value, possibleValues) { return !Array.isArray(possibleValues) || !possibleValues.some((possibleValue) => possibleValue === value); } __name(isNotIn, "isNotIn"); exports2.isNotIn = isNotIn; function IsNotIn(values, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_NOT_IN, constraints: [values], validator: { validate: /* @__PURE__ */ __name((value, args) => isNotIn(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property should not be one of the following values: $constraint1", validationOptions) } }, validationOptions); } __name(IsNotIn, "IsNotIn"); exports2.IsNotIn = IsNotIn; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/nullUndefinedCheck.js var require_nullUndefinedCheck = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/nullUndefinedCheck.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isNullOrUndefined; function isNullOrUndefined(value) { return value === null || value === void 0; } __name(isNullOrUndefined, "isNullOrUndefined"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/alpha.js var require_alpha = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/alpha.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.farsiLocales = exports2.englishLocales = exports2.dotDecimal = exports2.decimal = exports2.commaDecimal = exports2.bengaliLocales = exports2.arabicLocales = exports2.alphanumeric = exports2.alpha = void 0; var alpha = exports2.alpha = { "en-US": /^[A-Z]+$/i, "az-AZ": /^[A-VXYZÇƏĞİıÖŞÜ]+$/i, "bg-BG": /^[А-Я]+$/i, "cs-CZ": /^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i, "da-DK": /^[A-ZÆØÅ]+$/i, "de-DE": /^[A-ZÄÖÜß]+$/i, "el-GR": /^[Α-ώ]+$/i, "es-ES": /^[A-ZÁÉÍÑÓÚÜ]+$/i, "fa-IR": /^[ابپتثجچحخدذرزژسشصضطظعغفقکگلمنوهی]+$/i, "fi-FI": /^[A-ZÅÄÖ]+$/i, "fr-FR": /^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i, "it-IT": /^[A-ZÀÉÈÌÎÓÒÙ]+$/i, "ja-JP": /^[ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i, "nb-NO": /^[A-ZÆØÅ]+$/i, "nl-NL": /^[A-ZÁÉËÏÓÖÜÚ]+$/i, "nn-NO": /^[A-ZÆØÅ]+$/i, "hu-HU": /^[A-ZÁÉÍÓÖŐÚÜŰ]+$/i, "pl-PL": /^[A-ZĄĆĘŚŁŃÓŻŹ]+$/i, "pt-PT": /^[A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i, "ru-RU": /^[А-ЯЁ]+$/i, "kk-KZ": /^[А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i, "sl-SI": /^[A-ZČĆĐŠŽ]+$/i, "sk-SK": /^[A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i, "sr-RS@latin": /^[A-ZČĆŽŠĐ]+$/i, "sr-RS": /^[А-ЯЂЈЉЊЋЏ]+$/i, "sv-SE": /^[A-ZÅÄÖ]+$/i, "th-TH": /^[ก-๐\s]+$/i, "tr-TR": /^[A-ZÇĞİıÖŞÜ]+$/i, "uk-UA": /^[А-ЩЬЮЯЄIЇҐі]+$/i, "vi-VN": /^[A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i, "ko-KR": /^[ㄱ-ㅎㅏ-ㅣ가-힣]*$/, "ku-IQ": /^[ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i, ar: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/, he: /^[א-ת]+$/, fa: /^['آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی']+$/i, bn: /^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣৰৱ৲৳৴৵৶৷৸৹৺৻']+$/, eo: /^[ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i, "hi-IN": /^[\u0900-\u0961]+[\u0972-\u097F]*$/i, "si-LK": /^[\u0D80-\u0DFF]+$/, "ta-IN": /^[\u0B80-\u0BFF]+$/i, "te-IN": /^[\u0C00-\u0C7F]+$/i, "kn-IN": /^[\u0C80-\u0CFF]+$/i, "ml-IN": /^[\u0D00-\u0D7F]+$/i, "gu-IN": /^[\u0A80-\u0AFF]+$/i, "pa-IN": /^[\u0A00-\u0A7F]+$/i, "or-IN": /^[\u0B00-\u0B7F]+$/i }; var alphanumeric = exports2.alphanumeric = { "en-US": /^[0-9A-Z]+$/i, "az-AZ": /^[0-9A-VXYZÇƏĞİıÖŞÜ]+$/i, "bg-BG": /^[0-9А-Я]+$/i, "cs-CZ": /^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i, "da-DK": /^[0-9A-ZÆØÅ]+$/i, "de-DE": /^[0-9A-ZÄÖÜß]+$/i, "el-GR": /^[0-9Α-ω]+$/i, "es-ES": /^[0-9A-ZÁÉÍÑÓÚÜ]+$/i, "fi-FI": /^[0-9A-ZÅÄÖ]+$/i, "fr-FR": /^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i, "it-IT": /^[0-9A-ZÀÉÈÌÎÓÒÙ]+$/i, "ja-JP": /^[0-90-9ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i, "hu-HU": /^[0-9A-ZÁÉÍÓÖŐÚÜŰ]+$/i, "nb-NO": /^[0-9A-ZÆØÅ]+$/i, "nl-NL": /^[0-9A-ZÁÉËÏÓÖÜÚ]+$/i, "nn-NO": /^[0-9A-ZÆØÅ]+$/i, "pl-PL": /^[0-9A-ZĄĆĘŚŁŃÓŻŹ]+$/i, "pt-PT": /^[0-9A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i, "ru-RU": /^[0-9А-ЯЁ]+$/i, "kk-KZ": /^[0-9А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i, "sl-SI": /^[0-9A-ZČĆĐŠŽ]+$/i, "sk-SK": /^[0-9A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i, "sr-RS@latin": /^[0-9A-ZČĆŽŠĐ]+$/i, "sr-RS": /^[0-9А-ЯЂЈЉЊЋЏ]+$/i, "sv-SE": /^[0-9A-ZÅÄÖ]+$/i, "th-TH": /^[ก-๙\s]+$/i, "tr-TR": /^[0-9A-ZÇĞİıÖŞÜ]+$/i, "uk-UA": /^[0-9А-ЩЬЮЯЄIЇҐі]+$/i, "ko-KR": /^[0-9ㄱ-ㅎㅏ-ㅣ가-힣]*$/, "ku-IQ": /^[٠١٢٣٤٥٦٧٨٩0-9ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i, "vi-VN": /^[0-9A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i, ar: /^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/, he: /^[0-9א-ת]+$/, fa: /^['0-9آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی۱۲۳۴۵۶۷۸۹۰']+$/i, bn: /^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣ০১২৩৪৫৬৭৮৯ৰৱ৲৳৴৵৶৷৸৹৺৻']+$/, eo: /^[0-9ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i, "hi-IN": /^[\u0900-\u0963]+[\u0966-\u097F]*$/i, "si-LK": /^[0-9\u0D80-\u0DFF]+$/, "ta-IN": /^[0-9\u0B80-\u0BFF.]+$/i, "te-IN": /^[0-9\u0C00-\u0C7F.]+$/i, "kn-IN": /^[0-9\u0C80-\u0CFF.]+$/i, "ml-IN": /^[0-9\u0D00-\u0D7F.]+$/i, "gu-IN": /^[0-9\u0A80-\u0AFF.]+$/i, "pa-IN": /^[0-9\u0A00-\u0A7F.]+$/i, "or-IN": /^[0-9\u0B00-\u0B7F.]+$/i }; var decimal = exports2.decimal = { "en-US": ".", ar: "\u066B" }; var englishLocales = exports2.englishLocales = ["AU", "GB", "HK", "IN", "NZ", "ZA", "ZM"]; for (i = 0; i < englishLocales.length; i++) { locale = "en-".concat(englishLocales[i]); alpha[locale] = alpha["en-US"]; alphanumeric[locale] = alphanumeric["en-US"]; decimal[locale] = decimal["en-US"]; } var locale; var i; var arabicLocales = exports2.arabicLocales = ["AE", "BH", "DZ", "EG", "IQ", "JO", "KW", "LB", "LY", "MA", "QM", "QA", "SA", "SD", "SY", "TN", "YE"]; for (_i = 0; _i < arabicLocales.length; _i++) { _locale = "ar-".concat(arabicLocales[_i]); alpha[_locale] = alpha.ar; alphanumeric[_locale] = alphanumeric.ar; decimal[_locale] = decimal.ar; } var _locale; var _i; var farsiLocales = exports2.farsiLocales = ["IR", "AF"]; for (_i2 = 0; _i2 < farsiLocales.length; _i2++) { _locale2 = "fa-".concat(farsiLocales[_i2]); alphanumeric[_locale2] = alphanumeric.fa; decimal[_locale2] = decimal.ar; } var _locale2; var _i2; var bengaliLocales = exports2.bengaliLocales = ["BD", "IN"]; for (_i3 = 0; _i3 < bengaliLocales.length; _i3++) { _locale3 = "bn-".concat(bengaliLocales[_i3]); alpha[_locale3] = alpha.bn; alphanumeric[_locale3] = alphanumeric.bn; decimal[_locale3] = decimal["en-US"]; } var _locale3; var _i3; var dotDecimal = exports2.dotDecimal = ["ar-EG", "ar-LB", "ar-LY"]; var commaDecimal = exports2.commaDecimal = ["bg-BG", "cs-CZ", "da-DK", "de-DE", "el-GR", "en-ZM", "eo", "es-ES", "fr-CA", "fr-FR", "gu-IN", "hi-IN", "hu-HU", "id-ID", "it-IT", "kk-KZ", "kn-IN", "ku-IQ", "ml-IN", "nb-NO", "nl-NL", "nn-NO", "or-IN", "pa-IN", "pl-PL", "pt-PT", "ru-RU", "si-LK", "sl-SI", "sr-RS", "sr-RS@latin", "sv-SE", "ta-IN", "te-IN", "tr-TR", "uk-UA", "vi-VN"]; for (_i4 = 0; _i4 < dotDecimal.length; _i4++) { decimal[dotDecimal[_i4]] = decimal["en-US"]; } var _i4; for (_i5 = 0; _i5 < commaDecimal.length; _i5++) { decimal[commaDecimal[_i5]] = ","; } var _i5; alpha["fr-CA"] = alpha["fr-FR"]; alphanumeric["fr-CA"] = alphanumeric["fr-FR"]; alpha["pt-BR"] = alpha["pt-PT"]; alphanumeric["pt-BR"] = alphanumeric["pt-PT"]; decimal["pt-BR"] = decimal["pt-PT"]; alpha["pl-Pl"] = alpha["pl-PL"]; alphanumeric["pl-Pl"] = alphanumeric["pl-PL"]; decimal["pl-Pl"] = decimal["pl-PL"]; alpha["fa-AF"] = alpha.fa; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isFloat.js var require_isFloat = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isFloat.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isFloat; exports2.locales = void 0; var _assertString = _interopRequireDefault(require_assertString()); var _nullUndefinedCheck = _interopRequireDefault(require_nullUndefinedCheck()); var _alpha = require_alpha(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isFloat(str, options) { (0, _assertString.default)(str); options = options || {}; var float = new RegExp("^(?:[-+])?(?:[0-9]+)?(?:\\".concat(options.locale ? _alpha.decimal[options.locale] : ".", "[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$")); if (str === "" || str === "." || str === "," || str === "-" || str === "+") { return false; } var value = parseFloat(str.replace(",", ".")); return float.test(str) && (!options.hasOwnProperty("min") || (0, _nullUndefinedCheck.default)(options.min) || value >= options.min) && (!options.hasOwnProperty("max") || (0, _nullUndefinedCheck.default)(options.max) || value <= options.max) && (!options.hasOwnProperty("lt") || (0, _nullUndefinedCheck.default)(options.lt) || value < options.lt) && (!options.hasOwnProperty("gt") || (0, _nullUndefinedCheck.default)(options.gt) || value > options.gt); } __name(isFloat, "isFloat"); var locales = exports2.locales = Object.keys(_alpha.decimal); } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/toFloat.js var require_toFloat = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/toFloat.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = toFloat; var _isFloat = _interopRequireDefault(require_isFloat()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function toFloat(str) { if (!(0, _isFloat.default)(str)) return NaN; return parseFloat(str); } __name(toFloat, "toFloat"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isDivisibleBy.js var require_isDivisibleBy = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isDivisibleBy.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isDivisibleBy; var _assertString = _interopRequireDefault(require_assertString()); var _toFloat = _interopRequireDefault(require_toFloat()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isDivisibleBy(str, num) { (0, _assertString.default)(str); return (0, _toFloat.default)(str) % parseInt(num, 10) === 0; } __name(isDivisibleBy, "isDivisibleBy"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/number/IsDivisibleBy.js var require_IsDivisibleBy = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/number/IsDivisibleBy.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsDivisibleBy = exports2.isDivisibleBy = exports2.IS_DIVISIBLE_BY = void 0; var ValidateBy_1 = require_ValidateBy(); var isDivisibleBy_1 = __importDefault2(require_isDivisibleBy()); exports2.IS_DIVISIBLE_BY = "isDivisibleBy"; function isDivisibleBy(value, num) { return typeof value === "number" && typeof num === "number" && (0, isDivisibleBy_1.default)(String(value), num); } __name(isDivisibleBy, "isDivisibleBy"); exports2.isDivisibleBy = isDivisibleBy; function IsDivisibleBy(num, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_DIVISIBLE_BY, constraints: [num], validator: { validate: /* @__PURE__ */ __name((value, args) => isDivisibleBy(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be divisible by $constraint1", validationOptions) } }, validationOptions); } __name(IsDivisibleBy, "IsDivisibleBy"); exports2.IsDivisibleBy = IsDivisibleBy; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/number/IsPositive.js var require_IsPositive = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/number/IsPositive.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsPositive = exports2.isPositive = exports2.IS_POSITIVE = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_POSITIVE = "isPositive"; function isPositive(value) { return typeof value === "number" && value > 0; } __name(isPositive, "isPositive"); exports2.isPositive = isPositive; function IsPositive(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_POSITIVE, validator: { validate: /* @__PURE__ */ __name((value, args) => isPositive(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a positive number", validationOptions) } }, validationOptions); } __name(IsPositive, "IsPositive"); exports2.IsPositive = IsPositive; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/number/IsNegative.js var require_IsNegative = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/number/IsNegative.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsNegative = exports2.isNegative = exports2.IS_NEGATIVE = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_NEGATIVE = "isNegative"; function isNegative(value) { return typeof value === "number" && value < 0; } __name(isNegative, "isNegative"); exports2.isNegative = isNegative; function IsNegative(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_NEGATIVE, validator: { validate: /* @__PURE__ */ __name((value, args) => isNegative(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a negative number", validationOptions) } }, validationOptions); } __name(IsNegative, "IsNegative"); exports2.IsNegative = IsNegative; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/number/Max.js var require_Max = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/number/Max.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Max = exports2.max = exports2.MAX = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.MAX = "max"; function max(num, max2) { return typeof num === "number" && typeof max2 === "number" && num <= max2; } __name(max, "max"); exports2.max = max; function Max(maxValue, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.MAX, constraints: [maxValue], validator: { validate: /* @__PURE__ */ __name((value, args) => max(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must not be greater than $constraint1", validationOptions) } }, validationOptions); } __name(Max, "Max"); exports2.Max = Max; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/number/Min.js var require_Min = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/number/Min.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Min = exports2.min = exports2.MIN = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.MIN = "min"; function min(num, min2) { return typeof num === "number" && typeof min2 === "number" && num >= min2; } __name(min, "min"); exports2.min = min; function Min(minValue, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.MIN, constraints: [minValue], validator: { validate: /* @__PURE__ */ __name((value, args) => min(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must not be less than $constraint1", validationOptions) } }, validationOptions); } __name(Min, "Min"); exports2.Min = Min; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/date/MinDate.js var require_MinDate = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/date/MinDate.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MinDate = exports2.minDate = exports2.MIN_DATE = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.MIN_DATE = "minDate"; function minDate(date, minDate2) { return date instanceof Date && date.getTime() >= (minDate2 instanceof Date ? minDate2 : minDate2()).getTime(); } __name(minDate, "minDate"); exports2.minDate = minDate; function MinDate(date, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.MIN_DATE, constraints: [date], validator: { validate: /* @__PURE__ */ __name((value, args) => minDate(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => "minimal allowed date for " + eachPrefix + "$property is $constraint1", validationOptions) } }, validationOptions); } __name(MinDate, "MinDate"); exports2.MinDate = MinDate; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/date/MaxDate.js var require_MaxDate = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/date/MaxDate.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MaxDate = exports2.maxDate = exports2.MAX_DATE = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.MAX_DATE = "maxDate"; function maxDate(date, maxDate2) { return date instanceof Date && date.getTime() <= (maxDate2 instanceof Date ? maxDate2 : maxDate2()).getTime(); } __name(maxDate, "maxDate"); exports2.maxDate = maxDate; function MaxDate(date, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.MAX_DATE, constraints: [date], validator: { validate: /* @__PURE__ */ __name((value, args) => maxDate(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => "maximal allowed date for " + eachPrefix + "$property is $constraint1", validationOptions) } }, validationOptions); } __name(MaxDate, "MaxDate"); exports2.MaxDate = MaxDate; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/toString.js var require_toString = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/toString.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = toString2; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function toString2(input) { if (_typeof(input) === "object" && input !== null) { if (typeof input.toString === "function") { input = input.toString(); } else { input = "[object Object]"; } } else if (input === null || typeof input === "undefined" || isNaN(input) && !input.length) { input = ""; } return String(input); } __name(toString2, "toString"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/contains.js var require_contains = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/contains.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = contains; var _assertString = _interopRequireDefault(require_assertString()); var _toString = _interopRequireDefault(require_toString()); var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var defaultContainsOptions = { ignoreCase: false, minOccurrences: 1 }; function contains(str, elem, options) { (0, _assertString.default)(str); options = (0, _merge.default)(options, defaultContainsOptions); if (options.ignoreCase) { return str.toLowerCase().split((0, _toString.default)(elem).toLowerCase()).length > options.minOccurrences; } return str.split((0, _toString.default)(elem)).length > options.minOccurrences; } __name(contains, "contains"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/Contains.js var require_Contains = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/Contains.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Contains = exports2.contains = exports2.CONTAINS = void 0; var ValidateBy_1 = require_ValidateBy(); var contains_1 = __importDefault2(require_contains()); exports2.CONTAINS = "contains"; function contains(value, seed) { return typeof value === "string" && (0, contains_1.default)(value, seed); } __name(contains, "contains"); exports2.contains = contains; function Contains(seed, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.CONTAINS, constraints: [seed], validator: { validate: /* @__PURE__ */ __name((value, args) => contains(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain a $constraint1 string", validationOptions) } }, validationOptions); } __name(Contains, "Contains"); exports2.Contains = Contains; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/NotContains.js var require_NotContains = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/NotContains.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NotContains = exports2.notContains = exports2.NOT_CONTAINS = void 0; var ValidateBy_1 = require_ValidateBy(); var contains_1 = __importDefault2(require_contains()); exports2.NOT_CONTAINS = "notContains"; function notContains(value, seed) { return typeof value === "string" && !(0, contains_1.default)(value, seed); } __name(notContains, "notContains"); exports2.notContains = notContains; function NotContains(seed, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.NOT_CONTAINS, constraints: [seed], validator: { validate: /* @__PURE__ */ __name((value, args) => notContains(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property should not contain a $constraint1 string", validationOptions) } }, validationOptions); } __name(NotContains, "NotContains"); exports2.NotContains = NotContains; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isAlpha.js var require_isAlpha = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isAlpha.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isAlpha; exports2.locales = void 0; var _assertString = _interopRequireDefault(require_assertString()); var _alpha = require_alpha(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isAlpha(_str) { var locale = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "en-US"; var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}; (0, _assertString.default)(_str); var str = _str; var ignore = options.ignore; if (ignore) { if (ignore instanceof RegExp) { str = str.replace(ignore, ""); } else if (typeof ignore === "string") { str = str.replace(new RegExp("[".concat(ignore.replace(/[-[\]{}()*+?.,\\^$|#\\s]/g, "\\$&"), "]"), "g"), ""); } else { throw new Error("ignore should be instance of a String or RegExp"); } } if (locale in _alpha.alpha) { return _alpha.alpha[locale].test(str); } throw new Error("Invalid locale '".concat(locale, "'")); } __name(isAlpha, "isAlpha"); var locales = exports2.locales = Object.keys(_alpha.alpha); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsAlpha.js var require_IsAlpha = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsAlpha.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsAlpha = exports2.isAlpha = exports2.IS_ALPHA = void 0; var ValidateBy_1 = require_ValidateBy(); var isAlpha_1 = __importDefault2(require_isAlpha()); exports2.IS_ALPHA = "isAlpha"; function isAlpha(value, locale) { return typeof value === "string" && (0, isAlpha_1.default)(value, locale); } __name(isAlpha, "isAlpha"); exports2.isAlpha = isAlpha; function IsAlpha(locale, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ALPHA, constraints: [locale], validator: { validate: /* @__PURE__ */ __name((value, args) => isAlpha(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain only letters (a-zA-Z)", validationOptions) } }, validationOptions); } __name(IsAlpha, "IsAlpha"); exports2.IsAlpha = IsAlpha; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isAlphanumeric.js var require_isAlphanumeric = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isAlphanumeric.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isAlphanumeric; exports2.locales = void 0; var _assertString = _interopRequireDefault(require_assertString()); var _alpha = require_alpha(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isAlphanumeric(_str) { var locale = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "en-US"; var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}; (0, _assertString.default)(_str); var str = _str; var ignore = options.ignore; if (ignore) { if (ignore instanceof RegExp) { str = str.replace(ignore, ""); } else if (typeof ignore === "string") { str = str.replace(new RegExp("[".concat(ignore.replace(/[-[\]{}()*+?.,\\^$|#\\s]/g, "\\$&"), "]"), "g"), ""); } else { throw new Error("ignore should be instance of a String or RegExp"); } } if (locale in _alpha.alphanumeric) { return _alpha.alphanumeric[locale].test(str); } throw new Error("Invalid locale '".concat(locale, "'")); } __name(isAlphanumeric, "isAlphanumeric"); var locales = exports2.locales = Object.keys(_alpha.alphanumeric); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsAlphanumeric.js var require_IsAlphanumeric = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsAlphanumeric.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsAlphanumeric = exports2.isAlphanumeric = exports2.IS_ALPHANUMERIC = void 0; var ValidateBy_1 = require_ValidateBy(); var isAlphanumeric_1 = __importDefault2(require_isAlphanumeric()); exports2.IS_ALPHANUMERIC = "isAlphanumeric"; function isAlphanumeric(value, locale) { return typeof value === "string" && (0, isAlphanumeric_1.default)(value, locale); } __name(isAlphanumeric, "isAlphanumeric"); exports2.isAlphanumeric = isAlphanumeric; function IsAlphanumeric(locale, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ALPHANUMERIC, constraints: [locale], validator: { validate: /* @__PURE__ */ __name((value, args) => isAlphanumeric(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain only letters and numbers", validationOptions) } }, validationOptions); } __name(IsAlphanumeric, "IsAlphanumeric"); exports2.IsAlphanumeric = IsAlphanumeric; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/includesArray.js var require_includesArray = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/includesArray.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = void 0; var includes = /* @__PURE__ */ __name(function includes2(arr, val) { return arr.some(function(arrVal) { return val === arrVal; }); }, "includes"); var _default = exports2.default = includes; module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isDecimal.js var require_isDecimal = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isDecimal.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isDecimal; var _merge = _interopRequireDefault(require_merge()); var _assertString = _interopRequireDefault(require_assertString()); var _includesArray = _interopRequireDefault(require_includesArray()); var _alpha = require_alpha(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function decimalRegExp(options) { var regExp = new RegExp("^[-+]?([0-9]+)?(\\".concat(_alpha.decimal[options.locale], "[0-9]{").concat(options.decimal_digits, "})").concat(options.force_decimal ? "" : "?", "$")); return regExp; } __name(decimalRegExp, "decimalRegExp"); var default_decimal_options = { force_decimal: false, decimal_digits: "1,", locale: "en-US" }; var blacklist = ["", "-", "+"]; function isDecimal(str, options) { (0, _assertString.default)(str); options = (0, _merge.default)(options, default_decimal_options); if (options.locale in _alpha.decimal) { return !(0, _includesArray.default)(blacklist, str.replace(/ /g, "")) && decimalRegExp(options).test(str); } throw new Error("Invalid locale '".concat(options.locale, "'")); } __name(isDecimal, "isDecimal"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsDecimal.js var require_IsDecimal = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsDecimal.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsDecimal = exports2.isDecimal = exports2.IS_DECIMAL = void 0; var ValidateBy_1 = require_ValidateBy(); var isDecimal_1 = __importDefault2(require_isDecimal()); exports2.IS_DECIMAL = "isDecimal"; function isDecimal(value, options) { return typeof value === "string" && (0, isDecimal_1.default)(value, options); } __name(isDecimal, "isDecimal"); exports2.isDecimal = isDecimal; function IsDecimal(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_DECIMAL, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isDecimal(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property is not a valid decimal number.", validationOptions) } }, validationOptions); } __name(IsDecimal, "IsDecimal"); exports2.IsDecimal = IsDecimal; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isAscii.js var require_isAscii = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isAscii.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isAscii; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var ascii = /^[\x00-\x7F]+$/; function isAscii(str) { (0, _assertString.default)(str); return ascii.test(str); } __name(isAscii, "isAscii"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsAscii.js var require_IsAscii = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsAscii.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsAscii = exports2.isAscii = exports2.IS_ASCII = void 0; var ValidateBy_1 = require_ValidateBy(); var isAscii_1 = __importDefault2(require_isAscii()); exports2.IS_ASCII = "isAscii"; function isAscii(value) { return typeof value === "string" && (0, isAscii_1.default)(value); } __name(isAscii, "isAscii"); exports2.isAscii = isAscii; function IsAscii(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ASCII, validator: { validate: /* @__PURE__ */ __name((value, args) => isAscii(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain only ASCII characters", validationOptions) } }, validationOptions); } __name(IsAscii, "IsAscii"); exports2.IsAscii = IsAscii; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBase64.js var require_isBase64 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBase64.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isBase64; var _assertString = _interopRequireDefault(require_assertString()); var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var base64WithPadding = /^[A-Za-z0-9+/]+={0,2}$/; var base64WithoutPadding = /^[A-Za-z0-9+/]+$/; var base64UrlWithPadding = /^[A-Za-z0-9_-]+={0,2}$/; var base64UrlWithoutPadding = /^[A-Za-z0-9_-]+$/; function isBase64(str, options) { var _options; (0, _assertString.default)(str); options = (0, _merge.default)(options, { urlSafe: false, padding: !((_options = options) !== null && _options !== void 0 && _options.urlSafe) }); if (str === "") return true; if (options.padding && str.length % 4 !== 0) return false; var regex; if (options.urlSafe) { regex = options.padding ? base64UrlWithPadding : base64UrlWithoutPadding; } else { regex = options.padding ? base64WithPadding : base64WithoutPadding; } return (!options.padding || str.length % 4 === 0) && regex.test(str); } __name(isBase64, "isBase64"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBase64.js var require_IsBase64 = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBase64.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsBase64 = exports2.isBase64 = exports2.IS_BASE64 = void 0; var ValidateBy_1 = require_ValidateBy(); var isBase64_1 = __importDefault2(require_isBase64()); exports2.IS_BASE64 = "isBase64"; function isBase64(value, options) { return typeof value === "string" && (0, isBase64_1.default)(value, options); } __name(isBase64, "isBase64"); exports2.isBase64 = isBase64; function IsBase64(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_BASE64, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isBase64(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be base64 encoded", validationOptions) } }, validationOptions); } __name(IsBase64, "IsBase64"); exports2.IsBase64 = IsBase64; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isByteLength.js var require_isByteLength = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isByteLength.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isByteLength; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function isByteLength(str, options) { (0, _assertString.default)(str); var min; var max; if (_typeof(options) === "object") { min = options.min || 0; max = options.max; } else { min = arguments[1]; max = arguments[2]; } var len = encodeURI(str).split(/%..|./).length - 1; return len >= min && (typeof max === "undefined" || len <= max); } __name(isByteLength, "isByteLength"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsByteLength.js var require_IsByteLength = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsByteLength.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsByteLength = exports2.isByteLength = exports2.IS_BYTE_LENGTH = void 0; var ValidateBy_1 = require_ValidateBy(); var isByteLength_1 = __importDefault2(require_isByteLength()); exports2.IS_BYTE_LENGTH = "isByteLength"; function isByteLength(value, min, max) { return typeof value === "string" && (0, isByteLength_1.default)(value, { min, max }); } __name(isByteLength, "isByteLength"); exports2.isByteLength = isByteLength; function IsByteLength(min, max, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_BYTE_LENGTH, constraints: [min, max], validator: { validate: /* @__PURE__ */ __name((value, args) => isByteLength(value, args === null || args === void 0 ? void 0 : args.constraints[0], args === null || args === void 0 ? void 0 : args.constraints[1]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property's byte length must fall into ($constraint1, $constraint2) range", validationOptions) } }, validationOptions); } __name(IsByteLength, "IsByteLength"); exports2.IsByteLength = IsByteLength; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLuhnNumber.js var require_isLuhnNumber = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLuhnNumber.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isLuhnNumber; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isLuhnNumber(str) { (0, _assertString.default)(str); var sanitized = str.replace(/[- ]+/g, ""); var sum = 0; var digit; var tmpNum; var shouldDouble; for (var i = sanitized.length - 1; i >= 0; i--) { digit = sanitized.substring(i, i + 1); tmpNum = parseInt(digit, 10); if (shouldDouble) { tmpNum *= 2; if (tmpNum >= 10) { sum += tmpNum % 10 + 1; } else { sum += tmpNum; } } else { sum += tmpNum; } shouldDouble = !shouldDouble; } return !!(sum % 10 === 0 ? sanitized : false); } __name(isLuhnNumber, "isLuhnNumber"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isCreditCard.js var require_isCreditCard = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isCreditCard.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isCreditCard; var _assertString = _interopRequireDefault(require_assertString()); var _isLuhnNumber = _interopRequireDefault(require_isLuhnNumber()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var cards = { amex: /^3[47][0-9]{13}$/, dinersclub: /^3(?:0[0-5]|[68][0-9])[0-9]{11}$/, discover: /^6(?:011|5[0-9][0-9])[0-9]{12,15}$/, jcb: /^(?:2131|1800|35\d{3})\d{11}$/, mastercard: /^5[1-5][0-9]{2}|(222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}$/, // /^[25][1-7][0-9]{14}$/; unionpay: /^(6[27][0-9]{14}|^(81[0-9]{14,17}))$/, visa: /^(?:4[0-9]{12})(?:[0-9]{3,6})?$/ }; var allCards = (function() { var tmpCardsArray = []; for (var cardProvider in cards) { if (cards.hasOwnProperty(cardProvider)) { tmpCardsArray.push(cards[cardProvider]); } } return tmpCardsArray; })(); function isCreditCard(card) { var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; (0, _assertString.default)(card); var provider = options.provider; var sanitized = card.replace(/[- ]+/g, ""); if (provider && provider.toLowerCase() in cards) { if (!cards[provider.toLowerCase()].test(sanitized)) { return false; } } else if (provider && !(provider.toLowerCase() in cards)) { throw new Error("".concat(provider, " is not a valid credit card provider.")); } else if (!allCards.some(function(cardProvider) { return cardProvider.test(sanitized); })) { return false; } return (0, _isLuhnNumber.default)(card); } __name(isCreditCard, "isCreditCard"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsCreditCard.js var require_IsCreditCard = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsCreditCard.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsCreditCard = exports2.isCreditCard = exports2.IS_CREDIT_CARD = void 0; var ValidateBy_1 = require_ValidateBy(); var isCreditCard_1 = __importDefault2(require_isCreditCard()); exports2.IS_CREDIT_CARD = "isCreditCard"; function isCreditCard(value) { return typeof value === "string" && (0, isCreditCard_1.default)(value); } __name(isCreditCard, "isCreditCard"); exports2.isCreditCard = isCreditCard; function IsCreditCard(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_CREDIT_CARD, validator: { validate: /* @__PURE__ */ __name((value, args) => isCreditCard(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a credit card", validationOptions) } }, validationOptions); } __name(IsCreditCard, "IsCreditCard"); exports2.IsCreditCard = IsCreditCard; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isCurrency.js var require_isCurrency = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isCurrency.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isCurrency; var _merge = _interopRequireDefault(require_merge()); var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function currencyRegex(options) { var decimal_digits = "\\d{".concat(options.digits_after_decimal[0], "}"); options.digits_after_decimal.forEach(function(digit, index) { if (index !== 0) decimal_digits = "".concat(decimal_digits, "|\\d{").concat(digit, "}"); }); var symbol = "(".concat(options.symbol.replace(/\W/, function(m) { return "\\".concat(m); }), ")").concat(options.require_symbol ? "" : "?"), negative = "-?", whole_dollar_amount_without_sep = "[1-9]\\d*", whole_dollar_amount_with_sep = "[1-9]\\d{0,2}(\\".concat(options.thousands_separator, "\\d{3})*"), valid_whole_dollar_amounts = ["0", whole_dollar_amount_without_sep, whole_dollar_amount_with_sep], whole_dollar_amount = "(".concat(valid_whole_dollar_amounts.join("|"), ")?"), decimal_amount = "(\\".concat(options.decimal_separator, "(").concat(decimal_digits, "))").concat(options.require_decimal ? "" : "?"); var pattern = whole_dollar_amount + (options.allow_decimal || options.require_decimal ? decimal_amount : ""); if (options.allow_negatives && !options.parens_for_negatives) { if (options.negative_sign_after_digits) { pattern += negative; } else if (options.negative_sign_before_digits) { pattern = negative + pattern; } } if (options.allow_negative_sign_placeholder) { pattern = "( (?!\\-))?".concat(pattern); } else if (options.allow_space_after_symbol) { pattern = " ?".concat(pattern); } else if (options.allow_space_after_digits) { pattern += "( (?!$))?"; } if (options.symbol_after_digits) { pattern += symbol; } else { pattern = symbol + pattern; } if (options.allow_negatives) { if (options.parens_for_negatives) { pattern = "(\\(".concat(pattern, "\\)|").concat(pattern, ")"); } else if (!(options.negative_sign_before_digits || options.negative_sign_after_digits)) { pattern = negative + pattern; } } return new RegExp("^(?!-? )(?=.*\\d)".concat(pattern, "$")); } __name(currencyRegex, "currencyRegex"); var default_currency_options = { symbol: "$", require_symbol: false, allow_space_after_symbol: false, symbol_after_digits: false, allow_negatives: true, parens_for_negatives: false, negative_sign_before_digits: false, negative_sign_after_digits: false, allow_negative_sign_placeholder: false, thousands_separator: ",", decimal_separator: ".", allow_decimal: true, require_decimal: false, digits_after_decimal: [2], allow_space_after_digits: false }; function isCurrency(str, options) { (0, _assertString.default)(str); options = (0, _merge.default)(options, default_currency_options); return currencyRegex(options).test(str); } __name(isCurrency, "isCurrency"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsCurrency.js var require_IsCurrency = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsCurrency.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsCurrency = exports2.isCurrency = exports2.IS_CURRENCY = void 0; var ValidateBy_1 = require_ValidateBy(); var isCurrency_1 = __importDefault2(require_isCurrency()); exports2.IS_CURRENCY = "isCurrency"; function isCurrency(value, options) { return typeof value === "string" && (0, isCurrency_1.default)(value, options); } __name(isCurrency, "isCurrency"); exports2.isCurrency = isCurrency; function IsCurrency(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_CURRENCY, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isCurrency(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a currency", validationOptions) } }, validationOptions); } __name(IsCurrency, "IsCurrency"); exports2.IsCurrency = IsCurrency; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/checkHost.js var require_checkHost = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/checkHost.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = checkHost; function isRegExp(obj2) { return Object.prototype.toString.call(obj2) === "[object RegExp]"; } __name(isRegExp, "isRegExp"); function checkHost(host, matches) { for (var i = 0; i < matches.length; i++) { var match = matches[i]; if (host === match || isRegExp(match) && match.test(host)) { return true; } } return false; } __name(checkHost, "checkHost"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isFQDN.js var require_isFQDN = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isFQDN.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isFQDN; var _assertString = _interopRequireDefault(require_assertString()); var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var default_fqdn_options = { require_tld: true, allow_underscores: false, allow_trailing_dot: false, allow_numeric_tld: false, allow_wildcard: false, ignore_max_length: false }; function isFQDN(str, options) { (0, _assertString.default)(str); options = (0, _merge.default)(options, default_fqdn_options); if (options.allow_trailing_dot && str[str.length - 1] === ".") { str = str.substring(0, str.length - 1); } if (options.allow_wildcard === true && str.indexOf("*.") === 0) { str = str.substring(2); } var parts = str.split("."); var tld = parts[parts.length - 1]; if (options.require_tld) { if (parts.length < 2) { return false; } if (!options.allow_numeric_tld && !/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) { return false; } if (/\s/.test(tld)) { return false; } } if (!options.allow_numeric_tld && /^\d+$/.test(tld)) { return false; } return parts.every(function(part) { if (part.length > 63 && !options.ignore_max_length) { return false; } if (!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(part)) { return false; } if (/[\uff01-\uff5e]/.test(part)) { return false; } if (/^-|-$/.test(part)) { return false; } if (!options.allow_underscores && /_/.test(part)) { return false; } return true; }); } __name(isFQDN, "isFQDN"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIP.js var require_isIP = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIP.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isIP; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); var IPv4SegmentFormat = "(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])"; var IPv4AddressFormat = "(".concat(IPv4SegmentFormat, "[.]){3}").concat(IPv4SegmentFormat); var IPv4AddressRegExp = new RegExp("^".concat(IPv4AddressFormat, "$")); var IPv6SegmentFormat = "(?:[0-9a-fA-F]{1,4})"; var IPv6AddressRegExp = new RegExp("^(" + "(?:".concat(IPv6SegmentFormat, ":){7}(?:").concat(IPv6SegmentFormat, "|:)|") + "(?:".concat(IPv6SegmentFormat, ":){6}(?:").concat(IPv4AddressFormat, "|:").concat(IPv6SegmentFormat, "|:)|") + "(?:".concat(IPv6SegmentFormat, ":){5}(?::").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,2}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){4}(?:(:").concat(IPv6SegmentFormat, "){0,1}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,3}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){3}(?:(:").concat(IPv6SegmentFormat, "){0,2}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,4}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){2}(?:(:").concat(IPv6SegmentFormat, "){0,3}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,5}|:)|") + "(?:".concat(IPv6SegmentFormat, ":){1}(?:(:").concat(IPv6SegmentFormat, "){0,4}:").concat(IPv4AddressFormat, "|(:").concat(IPv6SegmentFormat, "){1,6}|:)|") + "(?::((?::".concat(IPv6SegmentFormat, "){0,5}:").concat(IPv4AddressFormat, "|(?::").concat(IPv6SegmentFormat, "){1,7}|:))") + ")(%[0-9a-zA-Z.]{1,})?$"); function isIP(ipAddress) { var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; (0, _assertString.default)(ipAddress); var version2 = (_typeof(options) === "object" ? options.version : arguments[1]) || ""; if (!version2) { return isIP(ipAddress, { version: 4 }) || isIP(ipAddress, { version: 6 }); } if (version2.toString() === "4") { return IPv4AddressRegExp.test(ipAddress); } if (version2.toString() === "6") { return IPv6AddressRegExp.test(ipAddress); } return false; } __name(isIP, "isIP"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isEmail.js var require_isEmail = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isEmail.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isEmail; var _assertString = _interopRequireDefault(require_assertString()); var _checkHost = _interopRequireDefault(require_checkHost()); var _isByteLength = _interopRequireDefault(require_isByteLength()); var _isFQDN = _interopRequireDefault(require_isFQDN()); var _isIP = _interopRequireDefault(require_isIP()); var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var default_email_options = { allow_display_name: false, allow_underscores: false, require_display_name: false, allow_utf8_local_part: true, require_tld: true, blacklisted_chars: "", ignore_max_length: false, host_blacklist: [], host_whitelist: [] }; var splitNameAddress = /^([^\x00-\x1F\x7F-\x9F\cX]+)]/.test(display_name_without_quotes); if (contains_illegal) { if (display_name_without_quotes === display_name) { return false; } var all_start_with_back_slash = display_name_without_quotes.split('"').length === display_name_without_quotes.split('\\"').length; if (!all_start_with_back_slash) { return false; } } return true; } __name(validateDisplayName, "validateDisplayName"); function isEmail(str, options) { (0, _assertString.default)(str); options = (0, _merge.default)(options, default_email_options); if (options.require_display_name || options.allow_display_name) { var display_email = str.match(splitNameAddress); if (display_email) { var display_name = display_email[1]; str = str.replace(display_name, "").replace(/(^<|>$)/g, ""); if (display_name.endsWith(" ")) { display_name = display_name.slice(0, -1); } if (!validateDisplayName(display_name)) { return false; } } else if (options.require_display_name) { return false; } } if (!options.ignore_max_length && str.length > defaultMaxEmailLength) { return false; } var parts = str.split("@"); var domain = parts.pop(); var lower_domain = domain.toLowerCase(); if (options.host_blacklist.length > 0 && (0, _checkHost.default)(lower_domain, options.host_blacklist)) { return false; } if (options.host_whitelist.length > 0 && !(0, _checkHost.default)(lower_domain, options.host_whitelist)) { return false; } var user = parts.join("@"); if (options.domain_specific_validation && (lower_domain === "gmail.com" || lower_domain === "googlemail.com")) { user = user.toLowerCase(); var username = user.split("+")[0]; if (!(0, _isByteLength.default)(username.replace(/\./g, ""), { min: 6, max: 30 })) { return false; } var _user_parts = username.split("."); for (var i = 0; i < _user_parts.length; i++) { if (!gmailUserPart.test(_user_parts[i])) { return false; } } } if (options.ignore_max_length === false && (!(0, _isByteLength.default)(user, { max: 64 }) || !(0, _isByteLength.default)(domain, { max: 254 }))) { return false; } if (!(0, _isFQDN.default)(domain, { require_tld: options.require_tld, ignore_max_length: options.ignore_max_length, allow_underscores: options.allow_underscores })) { if (!options.allow_ip_domain) { return false; } if (!(0, _isIP.default)(domain)) { if (!domain.startsWith("[") || !domain.endsWith("]")) { return false; } var noBracketdomain = domain.slice(1, -1); if (noBracketdomain.length === 0 || !(0, _isIP.default)(noBracketdomain)) { return false; } } } if (options.blacklisted_chars) { if (user.search(new RegExp("[".concat(options.blacklisted_chars, "]+"), "g")) !== -1) return false; } if (user[0] === '"' && user[user.length - 1] === '"') { user = user.slice(1, user.length - 1); return options.allow_utf8_local_part ? quotedEmailUserUtf8.test(user) : quotedEmailUser.test(user); } var pattern = options.allow_utf8_local_part ? emailUserUtf8Part : emailUserPart; var user_parts = user.split("."); for (var _i = 0; _i < user_parts.length; _i++) { if (!pattern.test(user_parts[_i])) { return false; } } return true; } __name(isEmail, "isEmail"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsEmail.js var require_IsEmail = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsEmail.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsEmail = exports2.isEmail = exports2.IS_EMAIL = void 0; var ValidateBy_1 = require_ValidateBy(); var isEmail_1 = __importDefault2(require_isEmail()); exports2.IS_EMAIL = "isEmail"; function isEmail(value, options) { return typeof value === "string" && (0, isEmail_1.default)(value, options); } __name(isEmail, "isEmail"); exports2.isEmail = isEmail; function IsEmail(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_EMAIL, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isEmail(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be an email", validationOptions) } }, validationOptions); } __name(IsEmail, "IsEmail"); exports2.IsEmail = IsEmail; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsFQDN.js var require_IsFQDN = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsFQDN.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsFQDN = exports2.isFQDN = exports2.IS_FQDN = void 0; var ValidateBy_1 = require_ValidateBy(); var isFQDN_1 = __importDefault2(require_isFQDN()); exports2.IS_FQDN = "isFqdn"; function isFQDN(value, options) { return typeof value === "string" && (0, isFQDN_1.default)(value, options); } __name(isFQDN, "isFQDN"); exports2.isFQDN = isFQDN; function IsFQDN(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_FQDN, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isFQDN(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a valid domain name", validationOptions) } }, validationOptions); } __name(IsFQDN, "IsFQDN"); exports2.IsFQDN = IsFQDN; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isFullWidth.js var require_isFullWidth = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isFullWidth.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isFullWidth; exports2.fullWidth = void 0; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var fullWidth = exports2.fullWidth = /[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/; function isFullWidth(str) { (0, _assertString.default)(str); return fullWidth.test(str); } __name(isFullWidth, "isFullWidth"); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsFullWidth.js var require_IsFullWidth = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsFullWidth.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsFullWidth = exports2.isFullWidth = exports2.IS_FULL_WIDTH = void 0; var ValidateBy_1 = require_ValidateBy(); var isFullWidth_1 = __importDefault2(require_isFullWidth()); exports2.IS_FULL_WIDTH = "isFullWidth"; function isFullWidth(value) { return typeof value === "string" && (0, isFullWidth_1.default)(value); } __name(isFullWidth, "isFullWidth"); exports2.isFullWidth = isFullWidth; function IsFullWidth(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_FULL_WIDTH, validator: { validate: /* @__PURE__ */ __name((value, args) => isFullWidth(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain a full-width characters", validationOptions) } }, validationOptions); } __name(IsFullWidth, "IsFullWidth"); exports2.IsFullWidth = IsFullWidth; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isHalfWidth.js var require_isHalfWidth = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isHalfWidth.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isHalfWidth; exports2.halfWidth = void 0; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var halfWidth = exports2.halfWidth = /[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/; function isHalfWidth(str) { (0, _assertString.default)(str); return halfWidth.test(str); } __name(isHalfWidth, "isHalfWidth"); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsHalfWidth.js var require_IsHalfWidth = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsHalfWidth.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsHalfWidth = exports2.isHalfWidth = exports2.IS_HALF_WIDTH = void 0; var ValidateBy_1 = require_ValidateBy(); var isHalfWidth_1 = __importDefault2(require_isHalfWidth()); exports2.IS_HALF_WIDTH = "isHalfWidth"; function isHalfWidth(value) { return typeof value === "string" && (0, isHalfWidth_1.default)(value); } __name(isHalfWidth, "isHalfWidth"); exports2.isHalfWidth = isHalfWidth; function IsHalfWidth(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_HALF_WIDTH, validator: { validate: /* @__PURE__ */ __name((value, args) => isHalfWidth(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain a half-width characters", validationOptions) } }, validationOptions); } __name(IsHalfWidth, "IsHalfWidth"); exports2.IsHalfWidth = IsHalfWidth; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isVariableWidth.js var require_isVariableWidth = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isVariableWidth.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isVariableWidth; var _assertString = _interopRequireDefault(require_assertString()); var _isFullWidth = require_isFullWidth(); var _isHalfWidth = require_isHalfWidth(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isVariableWidth(str) { (0, _assertString.default)(str); return _isFullWidth.fullWidth.test(str) && _isHalfWidth.halfWidth.test(str); } __name(isVariableWidth, "isVariableWidth"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsVariableWidth.js var require_IsVariableWidth = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsVariableWidth.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsVariableWidth = exports2.isVariableWidth = exports2.IS_VARIABLE_WIDTH = void 0; var ValidateBy_1 = require_ValidateBy(); var isVariableWidth_1 = __importDefault2(require_isVariableWidth()); exports2.IS_VARIABLE_WIDTH = "isVariableWidth"; function isVariableWidth(value) { return typeof value === "string" && (0, isVariableWidth_1.default)(value); } __name(isVariableWidth, "isVariableWidth"); exports2.isVariableWidth = isVariableWidth; function IsVariableWidth(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_VARIABLE_WIDTH, validator: { validate: /* @__PURE__ */ __name((value, args) => isVariableWidth(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain a full-width and half-width characters", validationOptions) } }, validationOptions); } __name(IsVariableWidth, "IsVariableWidth"); exports2.IsVariableWidth = IsVariableWidth; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isHexColor.js var require_isHexColor = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isHexColor.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isHexColor; var _assertString = _interopRequireDefault(require_assertString()); var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var hexcolor = /^#?([0-9A-F]{3}|[0-9A-F]{4}|[0-9A-F]{6}|[0-9A-F]{8})$/i; var hexcolor_with_prefix = /^#([0-9A-F]{3}|[0-9A-F]{4}|[0-9A-F]{6}|[0-9A-F]{8})$/i; var default_is_hexcolor_options = { require_hashtag: false }; function isHexColor(str, options) { (0, _assertString.default)(str); options = (0, _merge.default)(options, default_is_hexcolor_options); var hexcolor_regex = options.require_hashtag ? hexcolor_with_prefix : hexcolor; return hexcolor_regex.test(str); } __name(isHexColor, "isHexColor"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsHexColor.js var require_IsHexColor = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsHexColor.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsHexColor = exports2.isHexColor = exports2.IS_HEX_COLOR = void 0; var ValidateBy_1 = require_ValidateBy(); var isHexColor_1 = __importDefault2(require_isHexColor()); exports2.IS_HEX_COLOR = "isHexColor"; function isHexColor(value) { return typeof value === "string" && (0, isHexColor_1.default)(value); } __name(isHexColor, "isHexColor"); exports2.isHexColor = isHexColor; function IsHexColor(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_HEX_COLOR, validator: { validate: /* @__PURE__ */ __name((value, args) => isHexColor(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a hexadecimal color", validationOptions) } }, validationOptions); } __name(IsHexColor, "IsHexColor"); exports2.IsHexColor = IsHexColor; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isHexadecimal.js var require_isHexadecimal = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isHexadecimal.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isHexadecimal; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var hexadecimal = /^(0x|0h)?[0-9A-F]+$/i; function isHexadecimal(str) { (0, _assertString.default)(str); return hexadecimal.test(str); } __name(isHexadecimal, "isHexadecimal"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsHexadecimal.js var require_IsHexadecimal = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsHexadecimal.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsHexadecimal = exports2.isHexadecimal = exports2.IS_HEXADECIMAL = void 0; var ValidateBy_1 = require_ValidateBy(); var isHexadecimal_1 = __importDefault2(require_isHexadecimal()); exports2.IS_HEXADECIMAL = "isHexadecimal"; function isHexadecimal(value) { return typeof value === "string" && (0, isHexadecimal_1.default)(value); } __name(isHexadecimal, "isHexadecimal"); exports2.isHexadecimal = isHexadecimal; function IsHexadecimal(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_HEXADECIMAL, validator: { validate: /* @__PURE__ */ __name((value, args) => isHexadecimal(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a hexadecimal number", validationOptions) } }, validationOptions); } __name(IsHexadecimal, "IsHexadecimal"); exports2.IsHexadecimal = IsHexadecimal; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/ValidationOptions.js var require_ValidationOptions = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/ValidationOptions.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isValidationOptions = void 0; function isValidationOptions(val) { if (!val) { return false; } return "each" in val || "message" in val || "groups" in val || "always" in val || "context" in val; } __name(isValidationOptions, "isValidationOptions"); exports2.isValidationOptions = isValidationOptions; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMACAddress.js var require_isMACAddress = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMACAddress.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isMACAddress; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var macAddress48 = /^(?:[0-9a-fA-F]{2}([-:\s]))([0-9a-fA-F]{2}\1){4}([0-9a-fA-F]{2})$/; var macAddress48NoSeparators = /^([0-9a-fA-F]){12}$/; var macAddress48WithDots = /^([0-9a-fA-F]{4}\.){2}([0-9a-fA-F]{4})$/; var macAddress64 = /^(?:[0-9a-fA-F]{2}([-:\s]))([0-9a-fA-F]{2}\1){6}([0-9a-fA-F]{2})$/; var macAddress64NoSeparators = /^([0-9a-fA-F]){16}$/; var macAddress64WithDots = /^([0-9a-fA-F]{4}\.){3}([0-9a-fA-F]{4})$/; function isMACAddress(str, options) { (0, _assertString.default)(str); if (options !== null && options !== void 0 && options.eui) { options.eui = String(options.eui); } if (options !== null && options !== void 0 && options.no_colons || options !== null && options !== void 0 && options.no_separators) { if (options.eui === "48") { return macAddress48NoSeparators.test(str); } if (options.eui === "64") { return macAddress64NoSeparators.test(str); } return macAddress48NoSeparators.test(str) || macAddress64NoSeparators.test(str); } if ((options === null || options === void 0 ? void 0 : options.eui) === "48") { return macAddress48.test(str) || macAddress48WithDots.test(str); } if ((options === null || options === void 0 ? void 0 : options.eui) === "64") { return macAddress64.test(str) || macAddress64WithDots.test(str); } return isMACAddress(str, { eui: "48" }) || isMACAddress(str, { eui: "64" }); } __name(isMACAddress, "isMACAddress"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMacAddress.js var require_IsMacAddress = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMacAddress.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsMACAddress = exports2.isMACAddress = exports2.IS_MAC_ADDRESS = void 0; var ValidationOptions_1 = require_ValidationOptions(); var ValidateBy_1 = require_ValidateBy(); var isMACAddress_1 = __importDefault2(require_isMACAddress()); exports2.IS_MAC_ADDRESS = "isMacAddress"; function isMACAddress(value, options) { return typeof value === "string" && (0, isMACAddress_1.default)(value, options); } __name(isMACAddress, "isMACAddress"); exports2.isMACAddress = isMACAddress; function IsMACAddress(optionsOrValidationOptionsArg, validationOptionsArg) { const options = !(0, ValidationOptions_1.isValidationOptions)(optionsOrValidationOptionsArg) ? optionsOrValidationOptionsArg : void 0; const validationOptions = (0, ValidationOptions_1.isValidationOptions)(optionsOrValidationOptionsArg) ? optionsOrValidationOptionsArg : validationOptionsArg; return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_MAC_ADDRESS, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isMACAddress(value, options), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a MAC Address", validationOptions) } }, validationOptions); } __name(IsMACAddress, "IsMACAddress"); exports2.IsMACAddress = IsMACAddress; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsIP.js var require_IsIP = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsIP.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsIP = exports2.isIP = exports2.IS_IP = void 0; var ValidateBy_1 = require_ValidateBy(); var isIP_1 = __importDefault2(require_isIP()); exports2.IS_IP = "isIp"; function isIP(value, version2) { const versionStr = version2 ? `${version2}` : void 0; return typeof value === "string" && (0, isIP_1.default)(value, versionStr); } __name(isIP, "isIP"); exports2.isIP = isIP; function IsIP(version2, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_IP, constraints: [version2], validator: { validate: /* @__PURE__ */ __name((value, args) => isIP(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be an ip address", validationOptions) } }, validationOptions); } __name(IsIP, "IsIP"); exports2.IsIP = IsIP; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isInt.js var require_isInt = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isInt.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isInt; var _assertString = _interopRequireDefault(require_assertString()); var _nullUndefinedCheck = _interopRequireDefault(require_nullUndefinedCheck()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var int = /^(?:[-+]?(?:0|[1-9][0-9]*))$/; var intLeadingZeroes = /^[-+]?[0-9]+$/; function isInt(str, options) { (0, _assertString.default)(str); options = options || {}; var regex = options.allow_leading_zeroes === false ? int : intLeadingZeroes; var minCheckPassed = !options.hasOwnProperty("min") || (0, _nullUndefinedCheck.default)(options.min) || str >= options.min; var maxCheckPassed = !options.hasOwnProperty("max") || (0, _nullUndefinedCheck.default)(options.max) || str <= options.max; var ltCheckPassed = !options.hasOwnProperty("lt") || (0, _nullUndefinedCheck.default)(options.lt) || str < options.lt; var gtCheckPassed = !options.hasOwnProperty("gt") || (0, _nullUndefinedCheck.default)(options.gt) || str > options.gt; return regex.test(str) && minCheckPassed && maxCheckPassed && ltCheckPassed && gtCheckPassed; } __name(isInt, "isInt"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isPort.js var require_isPort = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isPort.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isPort; var _isInt = _interopRequireDefault(require_isInt()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isPort(str) { return (0, _isInt.default)(str, { allow_leading_zeroes: false, min: 0, max: 65535 }); } __name(isPort, "isPort"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsPort.js var require_IsPort = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsPort.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsPort = exports2.isPort = exports2.IS_PORT = void 0; var ValidateBy_1 = require_ValidateBy(); var isPort_1 = __importDefault2(require_isPort()); exports2.IS_PORT = "isPort"; function isPort(value) { return typeof value === "string" && (0, isPort_1.default)(value); } __name(isPort, "isPort"); exports2.isPort = isPort; function IsPort(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_PORT, validator: { validate: /* @__PURE__ */ __name((value, args) => isPort(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a port", validationOptions) } }, validationOptions); } __name(IsPort, "IsPort"); exports2.IsPort = IsPort; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISBN.js var require_isISBN = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISBN.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isISBN; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var possibleIsbn10 = /^(?:[0-9]{9}X|[0-9]{10})$/; var possibleIsbn13 = /^(?:[0-9]{13})$/; var factor = [1, 3]; function isISBN(isbn, options) { (0, _assertString.default)(isbn); var version2 = String((options === null || options === void 0 ? void 0 : options.version) || options); if (!(options !== null && options !== void 0 && options.version || options)) { return isISBN(isbn, { version: 10 }) || isISBN(isbn, { version: 13 }); } var sanitizedIsbn = isbn.replace(/[\s-]+/g, ""); var checksum = 0; if (version2 === "10") { if (!possibleIsbn10.test(sanitizedIsbn)) { return false; } for (var i = 0; i < version2 - 1; i++) { checksum += (i + 1) * sanitizedIsbn.charAt(i); } if (sanitizedIsbn.charAt(9) === "X") { checksum += 10 * 10; } else { checksum += 10 * sanitizedIsbn.charAt(9); } if (checksum % 11 === 0) { return true; } } else if (version2 === "13") { if (!possibleIsbn13.test(sanitizedIsbn)) { return false; } for (var _i = 0; _i < 12; _i++) { checksum += factor[_i % 2] * sanitizedIsbn.charAt(_i); } if (sanitizedIsbn.charAt(12) - (10 - checksum % 10) % 10 === 0) { return true; } } return false; } __name(isISBN, "isISBN"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISBN.js var require_IsISBN = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISBN.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsISBN = exports2.isISBN = exports2.IS_ISBN = void 0; var ValidateBy_1 = require_ValidateBy(); var isISBN_1 = __importDefault2(require_isISBN()); exports2.IS_ISBN = "isIsbn"; function isISBN(value, version2) { const versionStr = version2 ? `${version2}` : void 0; return typeof value === "string" && (0, isISBN_1.default)(value, versionStr); } __name(isISBN, "isISBN"); exports2.isISBN = isISBN; function IsISBN(version2, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ISBN, constraints: [version2], validator: { validate: /* @__PURE__ */ __name((value, args) => isISBN(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be an ISBN", validationOptions) } }, validationOptions); } __name(IsISBN, "IsISBN"); exports2.IsISBN = IsISBN; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISIN.js var require_isISIN = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISIN.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isISIN; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var isin = /^[A-Z]{2}[0-9A-Z]{9}[0-9]$/; function isISIN(str) { (0, _assertString.default)(str); if (!isin.test(str)) { return false; } var double = true; var sum = 0; for (var i = str.length - 2; i >= 0; i--) { if (str[i] >= "A" && str[i] <= "Z") { var value = str[i].charCodeAt(0) - 55; var lo = value % 10; var hi = Math.trunc(value / 10); for (var _i = 0, _arr = [lo, hi]; _i < _arr.length; _i++) { var digit = _arr[_i]; if (double) { if (digit >= 5) { sum += 1 + (digit - 5) * 2; } else { sum += digit * 2; } } else { sum += digit; } double = !double; } } else { var _digit = str[i].charCodeAt(0) - "0".charCodeAt(0); if (double) { if (_digit >= 5) { sum += 1 + (_digit - 5) * 2; } else { sum += _digit * 2; } } else { sum += _digit; } double = !double; } } var check = Math.trunc((sum + 9) / 10) * 10 - sum; return +str[str.length - 1] === check; } __name(isISIN, "isISIN"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISIN.js var require_IsISIN = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISIN.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsISIN = exports2.isISIN = exports2.IS_ISIN = void 0; var ValidateBy_1 = require_ValidateBy(); var isISIN_1 = __importDefault2(require_isISIN()); exports2.IS_ISIN = "isIsin"; function isISIN(value) { return typeof value === "string" && (0, isISIN_1.default)(value); } __name(isISIN, "isISIN"); exports2.isISIN = isISIN; function IsISIN(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ISIN, validator: { validate: /* @__PURE__ */ __name((value, args) => isISIN(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be an ISIN (stock/security identifier)", validationOptions) } }, validationOptions); } __name(IsISIN, "IsISIN"); exports2.IsISIN = IsISIN; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO8601.js var require_isISO8601 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO8601.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isISO8601; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var iso8601 = /^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/; var iso8601StrictSeparator = /^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/; var isValidDate = /* @__PURE__ */ __name(function isValidDate2(str) { var ordinalMatch = str.match(/^(\d{4})-?(\d{3})([ T]{1}\.*|$)/); if (ordinalMatch) { var oYear = Number(ordinalMatch[1]); var oDay = Number(ordinalMatch[2]); if (oYear % 4 === 0 && oYear % 100 !== 0 || oYear % 400 === 0) return oDay <= 366; return oDay <= 365; } var match = str.match(/(\d{4})-?(\d{0,2})-?(\d*)/).map(Number); var year = match[1]; var month = match[2]; var day = match[3]; var monthString = month ? "0".concat(month).slice(-2) : month; var dayString = day ? "0".concat(day).slice(-2) : day; var d = new Date("".concat(year, "-").concat(monthString || "01", "-").concat(dayString || "01")); if (month && day) { return d.getUTCFullYear() === year && d.getUTCMonth() + 1 === month && d.getUTCDate() === day; } return true; }, "isValidDate"); function isISO8601(str) { var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; (0, _assertString.default)(str); var check = options.strictSeparator ? iso8601StrictSeparator.test(str) : iso8601.test(str); if (check && options.strict) return isValidDate(str); return check; } __name(isISO8601, "isISO8601"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISO8601.js var require_IsISO8601 = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISO8601.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsISO8601 = exports2.isISO8601 = exports2.IS_ISO8601 = void 0; var ValidateBy_1 = require_ValidateBy(); var isISO8601_1 = __importDefault2(require_isISO8601()); exports2.IS_ISO8601 = "isIso8601"; function isISO8601(value, options) { return typeof value === "string" && (0, isISO8601_1.default)(value, options); } __name(isISO8601, "isISO8601"); exports2.isISO8601 = isISO8601; function IsISO8601(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ISO8601, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isISO8601(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a valid ISO 8601 date string", validationOptions) } }, validationOptions); } __name(IsISO8601, "IsISO8601"); exports2.IsISO8601 = IsISO8601; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isJSON.js var require_isJSON = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isJSON.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isJSON; var _assertString = _interopRequireDefault(require_assertString()); var _includesArray = _interopRequireDefault(require_includesArray()); var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); var default_json_options = { allow_primitives: false, allow_any_value: false }; function isJSON(str, options) { (0, _assertString.default)(str); try { options = (0, _merge.default)(options, default_json_options); var obj2 = JSON.parse(str); if (options.allow_any_value) { return true; } var primitives = []; if (options.allow_primitives) { primitives = [null, false, true]; } return (0, _includesArray.default)(primitives, obj2) || !!obj2 && _typeof(obj2) === "object"; } catch (e) { } return false; } __name(isJSON, "isJSON"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsJSON.js var require_IsJSON = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsJSON.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsJSON = exports2.isJSON = exports2.IS_JSON = void 0; var ValidateBy_1 = require_ValidateBy(); var isJSON_1 = __importDefault2(require_isJSON()); exports2.IS_JSON = "isJson"; function isJSON(value) { return typeof value === "string" && (0, isJSON_1.default)(value); } __name(isJSON, "isJSON"); exports2.isJSON = isJSON; function IsJSON(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_JSON, validator: { validate: /* @__PURE__ */ __name((value, args) => isJSON(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a json string", validationOptions) } }, validationOptions); } __name(IsJSON, "IsJSON"); exports2.IsJSON = IsJSON; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isJWT.js var require_isJWT = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isJWT.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isJWT; var _assertString = _interopRequireDefault(require_assertString()); var _isBase = _interopRequireDefault(require_isBase64()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isJWT(str) { (0, _assertString.default)(str); var dotSplit = str.split("."); var len = dotSplit.length; if (len !== 3) { return false; } return dotSplit.reduce(function(acc, currElem) { return acc && (0, _isBase.default)(currElem, { urlSafe: true }); }, true); } __name(isJWT, "isJWT"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsJWT.js var require_IsJWT = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsJWT.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsJWT = exports2.isJWT = exports2.IS_JWT = void 0; var ValidateBy_1 = require_ValidateBy(); var isJWT_1 = __importDefault2(require_isJWT()); exports2.IS_JWT = "isJwt"; function isJWT(value) { return typeof value === "string" && (0, isJWT_1.default)(value); } __name(isJWT, "isJWT"); exports2.isJWT = isJWT; function IsJWT(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_JWT, validator: { validate: /* @__PURE__ */ __name((value, args) => isJWT(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a jwt string", validationOptions) } }, validationOptions); } __name(IsJWT, "IsJWT"); exports2.IsJWT = IsJWT; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLowercase.js var require_isLowercase = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLowercase.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isLowercase; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isLowercase(str) { (0, _assertString.default)(str); return str === str.toLowerCase(); } __name(isLowercase, "isLowercase"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsLowercase.js var require_IsLowercase = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsLowercase.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsLowercase = exports2.isLowercase = exports2.IS_LOWERCASE = void 0; var ValidateBy_1 = require_ValidateBy(); var isLowercase_1 = __importDefault2(require_isLowercase()); exports2.IS_LOWERCASE = "isLowercase"; function isLowercase(value) { return typeof value === "string" && (0, isLowercase_1.default)(value); } __name(isLowercase, "isLowercase"); exports2.isLowercase = isLowercase; function IsLowercase(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_LOWERCASE, validator: { validate: /* @__PURE__ */ __name((value, args) => isLowercase(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a lowercase string", validationOptions) } }, validationOptions); } __name(IsLowercase, "IsLowercase"); exports2.IsLowercase = IsLowercase; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMobilePhone.js var require_isMobilePhone = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMobilePhone.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isMobilePhone; exports2.locales = void 0; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var phones = { "am-AM": /^(\+?374|0)(33|4[134]|55|77|88|9[13-689])\d{6}$/, "ar-AE": /^((\+?971)|0)?5[024568]\d{7}$/, "ar-BH": /^(\+?973)?(3|6)\d{7}$/, "ar-DZ": /^(\+?213|0)(5|6|7)\d{8}$/, "ar-LB": /^(\+?961)?((3|81)\d{6}|7\d{7})$/, "ar-EG": /^((\+?20)|0)?1[0125]\d{8}$/, "ar-IQ": /^(\+?964|0)?7[0-9]\d{8}$/, "ar-JO": /^(\+?962|0)?7[789]\d{7}$/, "ar-KW": /^(\+?965)([569]\d{7}|41\d{6})$/, "ar-LY": /^((\+?218)|0)?(9[1-6]\d{7}|[1-8]\d{7,9})$/, "ar-MA": /^(?:(?:\+|00)212|0)[5-7]\d{8}$/, "ar-OM": /^((\+|00)968)?([79][1-9])\d{6}$/, "ar-PS": /^(\+?970|0)5[6|9](\d{7})$/, "ar-SA": /^(!?(\+?966)|0)?5\d{8}$/, "ar-SD": /^((\+?249)|0)?(9[012369]|1[012])\d{7}$/, "ar-SY": /^(!?(\+?963)|0)?9\d{8}$/, "ar-TN": /^(\+?216)?[2459]\d{7}$/, "az-AZ": /^(\+994|0)(10|5[015]|7[07]|99)\d{7}$/, "ar-QA": /^(\+?974|0)?([3567]\d{7})$/, "bs-BA": /^((((\+|00)3876)|06))((([0-3]|[5-6])\d{6})|(4\d{7}))$/, "be-BY": /^(\+?375)?(24|25|29|33|44)\d{7}$/, "bg-BG": /^(\+?359|0)?8[789]\d{7}$/, "bn-BD": /^(\+?880|0)1[13456789][0-9]{8}$/, "ca-AD": /^(\+376)?[346]\d{5}$/, "cs-CZ": /^(\+?420)? ?[1-9][0-9]{2} ?[0-9]{3} ?[0-9]{3}$/, "da-DK": /^(\+?45)?\s?\d{2}\s?\d{2}\s?\d{2}\s?\d{2}$/, "de-DE": /^((\+49|0)1)(5[0-25-9]\d|6([23]|0\d?)|7([0-57-9]|6\d))\d{7,9}$/, "de-AT": /^(\+43|0)\d{1,4}\d{3,12}$/, "de-CH": /^(\+41|0)([1-9])\d{1,9}$/, "de-LU": /^(\+352)?((6\d1)\d{6})$/, "dv-MV": /^(\+?960)?(7[2-9]|9[1-9])\d{5}$/, "el-GR": /^(\+?30|0)?6(8[5-9]|9(?![26])[0-9])\d{7}$/, "el-CY": /^(\+?357?)?(9(9|7|6|5|4)\d{6})$/, "en-AI": /^(\+?1|0)264(?:2(35|92)|4(?:6[1-2]|76|97)|5(?:3[6-9]|8[1-4])|7(?:2(4|9)|72))\d{4}$/, "en-AU": /^(\+?61|0)4\d{8}$/, "en-AG": /^(?:\+1|1)268(?:464|7(?:1[3-9]|[28]\d|3[0246]|64|7[0-689]))\d{4}$/, "en-BM": /^(\+?1)?441(((3|7)\d{6}$)|(5[0-3][0-9]\d{4}$)|(59\d{5}$))/, "en-BS": /^(\+?1[-\s]?|0)?\(?242\)?[-\s]?\d{3}[-\s]?\d{4}$/, "en-GB": /^(\+?44|0)7[1-9]\d{8}$/, "en-GG": /^(\+?44|0)1481\d{6}$/, "en-GH": /^(\+233|0)(20|50|24|54|27|57|26|56|23|53|28|55|59)\d{7}$/, "en-GY": /^(\+592|0)6\d{6}$/, "en-HK": /^(\+?852[-\s]?)?[456789]\d{3}[-\s]?\d{4}$/, "en-MO": /^(\+?853[-\s]?)?[6]\d{3}[-\s]?\d{4}$/, "en-IE": /^(\+?353|0)8[356789]\d{7}$/, "en-IN": /^(\+?91|0)?[6789]\d{9}$/, "en-JM": /^(\+?876)?\d{7}$/, "en-KE": /^(\+?254|0)(7|1)\d{8}$/, "fr-CF": /^(\+?236| ?)(70|75|77|72|21|22)\d{6}$/, "en-SS": /^(\+?211|0)(9[1257])\d{7}$/, "en-KI": /^((\+686|686)?)?( )?((6|7)(2|3|8)[0-9]{6})$/, "en-KN": /^(?:\+1|1)869(?:46\d|48[89]|55[6-8]|66\d|76[02-7])\d{4}$/, "en-LS": /^(\+?266)(22|28|57|58|59|27|52)\d{6}$/, "en-MT": /^(\+?356|0)?(99|79|77|21|27|22|25)[0-9]{6}$/, "en-MU": /^(\+?230|0)?\d{8}$/, "en-MW": /^(\+?265|0)(((77|88|31|99|98|21)\d{7})|(((111)|1)\d{6})|(32000\d{4}))$/, "en-NA": /^(\+?264|0)(6|8)\d{7}$/, "en-NG": /^(\+?234|0)?[789]\d{9}$/, "en-NZ": /^(\+?64|0)[28]\d{7,9}$/, "en-PG": /^(\+?675|0)?(7\d|8[18])\d{6}$/, "en-PK": /^((00|\+)?92|0)3[0-6]\d{8}$/, "en-PH": /^(09|\+639)\d{9}$/, "en-RW": /^(\+?250|0)?[7]\d{8}$/, "en-SG": /^(\+65)?[3689]\d{7}$/, "en-SL": /^(\+?232|0)\d{8}$/, "en-TZ": /^(\+?255|0)?[67]\d{8}$/, "en-UG": /^(\+?256|0)?[7]\d{8}$/, "en-US": /^((\+1|1)?( |-)?)?(\([2-9][0-9]{2}\)|[2-9][0-9]{2})( |-)?([2-9][0-9]{2}( |-)?[0-9]{4})$/, "en-ZA": /^(\+?27|0)\d{9}$/, "en-ZM": /^(\+?26)?0[79][567]\d{7}$/, "en-ZW": /^(\+263)[0-9]{9}$/, "en-BW": /^(\+?267)?(7[1-8]{1})\d{6}$/, "es-AR": /^\+?549(11|[2368]\d)\d{8}$/, "es-BO": /^(\+?591)?(6|7)\d{7}$/, "es-CO": /^(\+?57)?3(0(0|1|2|4|5)|1\d|2[0-4]|5(0|1))\d{7}$/, "es-CL": /^(\+?56|0)[2-9]\d{1}\d{7}$/, "es-CR": /^(\+506)?[2-8]\d{7}$/, "es-CU": /^(\+53|0053)?5\d{7}$/, "es-DO": /^(\+?1)?8[024]9\d{7}$/, "es-HN": /^(\+?504)?[9|8|3|2]\d{7}$/, "es-EC": /^(\+?593|0)([2-7]|9[2-9])\d{7}$/, "es-ES": /^(\+?34)?[6|7]\d{8}$/, "es-GT": /^(\+?502)?[2|6|7]\d{7}$/, "es-PE": /^(\+?51)?9\d{8}$/, "es-MX": /^(\+?52)?(1|01)?\d{10,11}$/, "es-NI": /^(\+?505)\d{7,8}$/, "es-PA": /^(\+?507)\d{7,8}$/, "es-PY": /^(\+?595|0)9[9876]\d{7}$/, "es-SV": /^(\+?503)?[67]\d{7}$/, "es-UY": /^(\+598|0)9[1-9][\d]{6}$/, "es-VE": /^(\+?58)?(2|4)\d{9}$/, "et-EE": /^(\+?372)?\s?(5|8[1-4])\s?([0-9]\s?){6,7}$/, "fa-IR": /^(\+?98[\-\s]?|0)9[0-39]\d[\-\s]?\d{3}[\-\s]?\d{4}$/, "fi-FI": /^(\+?358|0)\s?(4[0-6]|50)\s?(\d\s?){4,8}$/, "fj-FJ": /^(\+?679)?\s?\d{3}\s?\d{4}$/, "fo-FO": /^(\+?298)?\s?\d{2}\s?\d{2}\s?\d{2}$/, "fr-BF": /^(\+226|0)[67]\d{7}$/, "fr-BJ": /^(\+229)\d{8}$/, "fr-CD": /^(\+?243|0)?(8|9)\d{8}$/, "fr-CM": /^(\+?237)6[0-9]{8}$/, "fr-DJ": /^(?:\+253)?77[6-8]\d{5}$/, "fr-FR": /^(\+?33|0)[67]\d{8}$/, "fr-GF": /^(\+?594|0|00594)[67]\d{8}$/, "fr-GP": /^(\+?590|0|00590)[67]\d{8}$/, "fr-MQ": /^(\+?596|0|00596)[67]\d{8}$/, "fr-PF": /^(\+?689)?8[789]\d{6}$/, "fr-RE": /^(\+?262|0|00262)[67]\d{8}$/, "fr-WF": /^(\+681)?\d{6}$/, "he-IL": /^(\+972|0)([23489]|5[012345689]|77)[1-9]\d{6}$/, "hu-HU": /^(\+?36|06)(20|30|31|50|70)\d{7}$/, "id-ID": /^(\+?62|0)8(1[123456789]|2[1238]|3[1238]|5[12356789]|7[78]|9[56789]|8[123456789])([\s?|\d]{5,11})$/, "ir-IR": /^(\+98|0)?9\d{9}$/, "it-IT": /^(\+?39)?\s?3\d{2} ?\d{6,7}$/, "it-SM": /^((\+378)|(0549)|(\+390549)|(\+3780549))?6\d{5,9}$/, "ja-JP": /^(\+81[ \-]?(\(0\))?|0)[6789]0[ \-]?\d{4}[ \-]?\d{4}$/, "ka-GE": /^(\+?995)?(79\d{7}|5\d{8})$/, "kk-KZ": /^(\+?7|8)?7\d{9}$/, "kl-GL": /^(\+?299)?\s?\d{2}\s?\d{2}\s?\d{2}$/, "ko-KR": /^((\+?82)[ \-]?)?0?1([0|1|6|7|8|9]{1})[ \-]?\d{3,4}[ \-]?\d{4}$/, "ky-KG": /^(\+996\s?)?(22[0-9]|50[0-9]|55[0-9]|70[0-9]|75[0-9]|77[0-9]|880|990|995|996|997|998)\s?\d{3}\s?\d{3}$/, "lt-LT": /^(\+370|8)\d{8}$/, "lv-LV": /^(\+?371)2\d{7}$/, "mg-MG": /^((\+?261|0)(2|3)\d)?\d{7}$/, "mn-MN": /^(\+|00|011)?976(77|81|88|91|94|95|96|99)\d{6}$/, "my-MM": /^(\+?959|09|9)(2[5-7]|3[1-2]|4[0-5]|6[6-9]|7[5-9]|9[6-9])[0-9]{7}$/, "ms-MY": /^(\+?60|0)1(([0145](-|\s)?\d{7,8})|([236-9](-|\s)?\d{7}))$/, "mz-MZ": /^(\+?258)?8[234567]\d{7}$/, "nb-NO": /^(\+?47)?[49]\d{7}$/, "ne-NP": /^(\+?977)?9[78]\d{8}$/, "nl-BE": /^(\+?32|0)4\d{8}$/, "nl-NL": /^(((\+|00)?31\(0\))|((\+|00)?31)|0)6{1}\d{8}$/, "nl-AW": /^(\+)?297(56|59|64|73|74|99)\d{5}$/, "nn-NO": /^(\+?47)?[49]\d{7}$/, "pl-PL": /^(\+?48)? ?([5-8]\d|45) ?\d{3} ?\d{2} ?\d{2}$/, "pt-BR": /^((\+?55\ ?[1-9]{2}\ ?)|(\+?55\ ?\([1-9]{2}\)\ ?)|(0[1-9]{2}\ ?)|(\([1-9]{2}\)\ ?)|([1-9]{2}\ ?))((\d{4}\-?\d{4})|(9[1-9]{1}\d{3}\-?\d{4}))$/, "pt-PT": /^(\+?351)?9[1236]\d{7}$/, "pt-AO": /^(\+?244)?9\d{8}$/, "ro-MD": /^(\+?373|0)((6(0|1|2|6|7|8|9))|(7(6|7|8|9)))\d{6}$/, "ro-RO": /^(\+?40|0)\s?7\d{2}(\/|\s|\.|-)?\d{3}(\s|\.|-)?\d{3}$/, "ru-RU": /^(\+?7|8)?9\d{9}$/, "si-LK": /^(?:0|94|\+94)?(7(0|1|2|4|5|6|7|8)( |-)?)\d{7}$/, "sl-SI": /^(\+386\s?|0)(\d{1}\s?\d{3}\s?\d{2}\s?\d{2}|\d{2}\s?\d{3}\s?\d{3})$/, "sk-SK": /^(\+?421)? ?[1-9][0-9]{2} ?[0-9]{3} ?[0-9]{3}$/, "so-SO": /^(\+?252|0)((6[0-9])\d{7}|(7[1-9])\d{7})$/, "sq-AL": /^(\+355|0)6[2-9]\d{7}$/, "sr-RS": /^(\+3816|06)[- \d]{5,9}$/, "sv-SE": /^(\+?46|0)[\s\-]?7[\s\-]?[02369]([\s\-]?\d){7}$/, "tg-TJ": /^(\+?992)?[5][5]\d{7}$/, "th-TH": /^(\+66|66|0)\d{9}$/, "tr-TR": /^(\+?90|0)?5\d{9}$/, "tk-TM": /^(\+993|993|8)\d{8}$/, "uk-UA": /^(\+?38)?0(50|6[36-8]|7[357]|9[1-9])\d{7}$/, "uz-UZ": /^(\+?998)?(6[125-79]|7[1-69]|88|9\d)\d{7}$/, "vi-VN": /^((\+?84)|0)((3([2-9]))|(5([25689]))|(7([0|6-9]))|(8([1-9]))|(9([0-9])))([0-9]{7})$/, "zh-CN": /^((\+|00)86)?(1[3-9]|9[28])\d{9}$/, "zh-TW": /^(\+?886\-?|0)?9\d{8}$/, "dz-BT": /^(\+?975|0)?(17|16|77|02)\d{6}$/, "ar-YE": /^(((\+|00)9677|0?7)[0137]\d{7}|((\+|00)967|0)[1-7]\d{6})$/, "ar-EH": /^(\+?212|0)[\s\-]?(5288|5289)[\s\-]?\d{5}$/, "fa-AF": /^(\+93|0)?(2{1}[0-8]{1}|[3-5]{1}[0-4]{1})(\d{7})$/, "mk-MK": /^(\+?389|0)?((?:2[2-9]\d{6}|(?:3[1-4]|4[2-8])\d{6}|500\d{5}|5[2-9]\d{6}|7[0-9][2-9]\d{5}|8[1-9]\d{6}|800\d{5}|8009\d{4}))$/ }; phones["en-CA"] = phones["en-US"]; phones["fr-CA"] = phones["en-CA"]; phones["fr-BE"] = phones["nl-BE"]; phones["zh-HK"] = phones["en-HK"]; phones["zh-MO"] = phones["en-MO"]; phones["ga-IE"] = phones["en-IE"]; phones["fr-CH"] = phones["de-CH"]; phones["it-CH"] = phones["fr-CH"]; function isMobilePhone(str, locale, options) { (0, _assertString.default)(str); if (options && options.strictMode && !str.startsWith("+")) { return false; } if (Array.isArray(locale)) { return locale.some(function(key2) { if (phones.hasOwnProperty(key2)) { var phone2 = phones[key2]; if (phone2.test(str)) { return true; } } return false; }); } else if (locale in phones) { return phones[locale].test(str); } else if (!locale || locale === "any") { for (var key in phones) { if (phones.hasOwnProperty(key)) { var phone = phones[key]; if (phone.test(str)) { return true; } } } return false; } throw new Error("Invalid locale '".concat(locale, "'")); } __name(isMobilePhone, "isMobilePhone"); var locales = exports2.locales = Object.keys(phones); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMobilePhone.js var require_IsMobilePhone = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMobilePhone.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsMobilePhone = exports2.isMobilePhone = exports2.IS_MOBILE_PHONE = void 0; var ValidateBy_1 = require_ValidateBy(); var isMobilePhone_1 = __importDefault2(require_isMobilePhone()); exports2.IS_MOBILE_PHONE = "isMobilePhone"; function isMobilePhone(value, locale, options) { return typeof value === "string" && (0, isMobilePhone_1.default)(value, locale, options); } __name(isMobilePhone, "isMobilePhone"); exports2.isMobilePhone = isMobilePhone; function IsMobilePhone(locale, options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_MOBILE_PHONE, constraints: [locale, options], validator: { validate: /* @__PURE__ */ __name((value, args) => isMobilePhone(value, args === null || args === void 0 ? void 0 : args.constraints[0], args === null || args === void 0 ? void 0 : args.constraints[1]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a phone number", validationOptions) } }, validationOptions); } __name(IsMobilePhone, "IsMobilePhone"); exports2.IsMobilePhone = IsMobilePhone; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO31661Alpha2.js var require_isISO31661Alpha2 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO31661Alpha2.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CountryCodes = void 0; exports2.default = isISO31661Alpha2; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var validISO31661Alpha2CountriesCodes = /* @__PURE__ */ new Set(["AD", "AE", "AF", "AG", "AI", "AL", "AM", "AO", "AQ", "AR", "AS", "AT", "AU", "AW", "AX", "AZ", "BA", "BB", "BD", "BE", "BF", "BG", "BH", "BI", "BJ", "BL", "BM", "BN", "BO", "BQ", "BR", "BS", "BT", "BV", "BW", "BY", "BZ", "CA", "CC", "CD", "CF", "CG", "CH", "CI", "CK", "CL", "CM", "CN", "CO", "CR", "CU", "CV", "CW", "CX", "CY", "CZ", "DE", "DJ", "DK", "DM", "DO", "DZ", "EC", "EE", "EG", "EH", "ER", "ES", "ET", "FI", "FJ", "FK", "FM", "FO", "FR", "GA", "GB", "GD", "GE", "GF", "GG", "GH", "GI", "GL", "GM", "GN", "GP", "GQ", "GR", "GS", "GT", "GU", "GW", "GY", "HK", "HM", "HN", "HR", "HT", "HU", "ID", "IE", "IL", "IM", "IN", "IO", "IQ", "IR", "IS", "IT", "JE", "JM", "JO", "JP", "KE", "KG", "KH", "KI", "KM", "KN", "KP", "KR", "KW", "KY", "KZ", "LA", "LB", "LC", "LI", "LK", "LR", "LS", "LT", "LU", "LV", "LY", "MA", "MC", "MD", "ME", "MF", "MG", "MH", "MK", "ML", "MM", "MN", "MO", "MP", "MQ", "MR", "MS", "MT", "MU", "MV", "MW", "MX", "MY", "MZ", "NA", "NC", "NE", "NF", "NG", "NI", "NL", "NO", "NP", "NR", "NU", "NZ", "OM", "PA", "PE", "PF", "PG", "PH", "PK", "PL", "PM", "PN", "PR", "PS", "PT", "PW", "PY", "QA", "RE", "RO", "RS", "RU", "RW", "SA", "SB", "SC", "SD", "SE", "SG", "SH", "SI", "SJ", "SK", "SL", "SM", "SN", "SO", "SR", "SS", "ST", "SV", "SX", "SY", "SZ", "TC", "TD", "TF", "TG", "TH", "TJ", "TK", "TL", "TM", "TN", "TO", "TR", "TT", "TV", "TW", "TZ", "UA", "UG", "UM", "US", "UY", "UZ", "VA", "VC", "VE", "VG", "VI", "VN", "VU", "WF", "WS", "YE", "YT", "ZA", "ZM", "ZW"]); var alpha2CountryCode = /^[a-zA-Z]{2}$/; function isISO31661Alpha2(str) { var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; (0, _assertString.default)(str); var userAssignedCodes = options.userAssignedCodes; var validUserAssignedCodes = (userAssignedCodes || []).reduce(function(accumulator, userAssignedCode) { if (alpha2CountryCode.test(userAssignedCode)) { accumulator.push(userAssignedCode.toUpperCase()); } return accumulator; }, []); if (validUserAssignedCodes.includes(str.toUpperCase())) { return true; } return validISO31661Alpha2CountriesCodes.has(str.toUpperCase()); } __name(isISO31661Alpha2, "isISO31661Alpha2"); var CountryCodes = exports2.CountryCodes = validISO31661Alpha2CountriesCodes; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISO31661Alpha2.js var require_IsISO31661Alpha2 = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISO31661Alpha2.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsISO31661Alpha2 = exports2.isISO31661Alpha2 = exports2.IS_ISO31661_ALPHA_2 = void 0; var ValidateBy_1 = require_ValidateBy(); var isISO31661Alpha2_1 = __importDefault2(require_isISO31661Alpha2()); exports2.IS_ISO31661_ALPHA_2 = "isISO31661Alpha2"; function isISO31661Alpha2(value) { return typeof value === "string" && (0, isISO31661Alpha2_1.default)(value); } __name(isISO31661Alpha2, "isISO31661Alpha2"); exports2.isISO31661Alpha2 = isISO31661Alpha2; function IsISO31661Alpha2(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ISO31661_ALPHA_2, validator: { validate: /* @__PURE__ */ __name((value, args) => isISO31661Alpha2(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a valid ISO31661 Alpha2 code", validationOptions) } }, validationOptions); } __name(IsISO31661Alpha2, "IsISO31661Alpha2"); exports2.IsISO31661Alpha2 = IsISO31661Alpha2; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO31661Alpha3.js var require_isISO31661Alpha3 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO31661Alpha3.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isISO31661Alpha3; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var validISO31661Alpha3CountriesCodes = /* @__PURE__ */ new Set(["AFG", "ALA", "ALB", "DZA", "ASM", "AND", "AGO", "AIA", "ATA", "ATG", "ARG", "ARM", "ABW", "AUS", "AUT", "AZE", "BHS", "BHR", "BGD", "BRB", "BLR", "BEL", "BLZ", "BEN", "BMU", "BTN", "BOL", "BES", "BIH", "BWA", "BVT", "BRA", "IOT", "BRN", "BGR", "BFA", "BDI", "KHM", "CMR", "CAN", "CPV", "CYM", "CAF", "TCD", "CHL", "CHN", "CXR", "CCK", "COL", "COM", "COG", "COD", "COK", "CRI", "CIV", "HRV", "CUB", "CUW", "CYP", "CZE", "DNK", "DJI", "DMA", "DOM", "ECU", "EGY", "SLV", "GNQ", "ERI", "EST", "ETH", "FLK", "FRO", "FJI", "FIN", "FRA", "GUF", "PYF", "ATF", "GAB", "GMB", "GEO", "DEU", "GHA", "GIB", "GRC", "GRL", "GRD", "GLP", "GUM", "GTM", "GGY", "GIN", "GNB", "GUY", "HTI", "HMD", "VAT", "HND", "HKG", "HUN", "ISL", "IND", "IDN", "IRN", "IRQ", "IRL", "IMN", "ISR", "ITA", "JAM", "JPN", "JEY", "JOR", "KAZ", "KEN", "KIR", "PRK", "KOR", "KWT", "KGZ", "LAO", "LVA", "LBN", "LSO", "LBR", "LBY", "LIE", "LTU", "LUX", "MAC", "MKD", "MDG", "MWI", "MYS", "MDV", "MLI", "MLT", "MHL", "MTQ", "MRT", "MUS", "MYT", "MEX", "FSM", "MDA", "MCO", "MNG", "MNE", "MSR", "MAR", "MOZ", "MMR", "NAM", "NRU", "NPL", "NLD", "NCL", "NZL", "NIC", "NER", "NGA", "NIU", "NFK", "MNP", "NOR", "OMN", "PAK", "PLW", "PSE", "PAN", "PNG", "PRY", "PER", "PHL", "PCN", "POL", "PRT", "PRI", "QAT", "REU", "ROU", "RUS", "RWA", "BLM", "SHN", "KNA", "LCA", "MAF", "SPM", "VCT", "WSM", "SMR", "STP", "SAU", "SEN", "SRB", "SYC", "SLE", "SGP", "SXM", "SVK", "SVN", "SLB", "SOM", "ZAF", "SGS", "SSD", "ESP", "LKA", "SDN", "SUR", "SJM", "SWZ", "SWE", "CHE", "SYR", "TWN", "TJK", "TZA", "THA", "TLS", "TGO", "TKL", "TON", "TTO", "TUN", "TUR", "TKM", "TCA", "TUV", "UGA", "UKR", "ARE", "GBR", "USA", "UMI", "URY", "UZB", "VUT", "VEN", "VNM", "VGB", "VIR", "WLF", "ESH", "YEM", "ZMB", "ZWE"]); var alpha3CountryCode = /^[a-zA-Z]{3}$/; function isISO31661Alpha3(str) { var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; (0, _assertString.default)(str); var userAssignedCodes = options.userAssignedCodes; var validUserAssignedCodes = (userAssignedCodes || []).reduce(function(accumulator, userAssignedCode) { if (alpha3CountryCode.test(userAssignedCode)) { accumulator.push(userAssignedCode.toUpperCase()); } return accumulator; }, []); if (validUserAssignedCodes.includes(str.toUpperCase())) { return true; } return validISO31661Alpha3CountriesCodes.has(str.toUpperCase()); } __name(isISO31661Alpha3, "isISO31661Alpha3"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISO31661Alpha3.js var require_IsISO31661Alpha3 = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISO31661Alpha3.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsISO31661Alpha3 = exports2.isISO31661Alpha3 = exports2.IS_ISO31661_ALPHA_3 = void 0; var ValidateBy_1 = require_ValidateBy(); var isISO31661Alpha3_1 = __importDefault2(require_isISO31661Alpha3()); exports2.IS_ISO31661_ALPHA_3 = "isISO31661Alpha3"; function isISO31661Alpha3(value) { return typeof value === "string" && (0, isISO31661Alpha3_1.default)(value); } __name(isISO31661Alpha3, "isISO31661Alpha3"); exports2.isISO31661Alpha3 = isISO31661Alpha3; function IsISO31661Alpha3(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ISO31661_ALPHA_3, validator: { validate: /* @__PURE__ */ __name((value, args) => isISO31661Alpha3(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a valid ISO31661 Alpha3 code", validationOptions) } }, validationOptions); } __name(IsISO31661Alpha3, "IsISO31661Alpha3"); exports2.IsISO31661Alpha3 = IsISO31661Alpha3; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMongoId.js var require_isMongoId = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMongoId.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isMongoId; var _assertString = _interopRequireDefault(require_assertString()); var _isHexadecimal = _interopRequireDefault(require_isHexadecimal()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isMongoId(str) { (0, _assertString.default)(str); return (0, _isHexadecimal.default)(str) && str.length === 24; } __name(isMongoId, "isMongoId"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMongoId.js var require_IsMongoId = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMongoId.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsMongoId = exports2.isMongoId = exports2.IS_MONGO_ID = void 0; var ValidateBy_1 = require_ValidateBy(); var isMongoId_1 = __importDefault2(require_isMongoId()); exports2.IS_MONGO_ID = "isMongoId"; function isMongoId(value) { return typeof value === "string" && (0, isMongoId_1.default)(value); } __name(isMongoId, "isMongoId"); exports2.isMongoId = isMongoId; function IsMongoId(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_MONGO_ID, validator: { validate: /* @__PURE__ */ __name((value, args) => isMongoId(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a mongodb id", validationOptions) } }, validationOptions); } __name(IsMongoId, "IsMongoId"); exports2.IsMongoId = IsMongoId; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMultibyte.js var require_isMultibyte = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMultibyte.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isMultibyte; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var multibyte = /[^\x00-\x7F]/; function isMultibyte(str) { (0, _assertString.default)(str); return multibyte.test(str); } __name(isMultibyte, "isMultibyte"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMultibyte.js var require_IsMultibyte = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMultibyte.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsMultibyte = exports2.isMultibyte = exports2.IS_MULTIBYTE = void 0; var ValidateBy_1 = require_ValidateBy(); var isMultibyte_1 = __importDefault2(require_isMultibyte()); exports2.IS_MULTIBYTE = "isMultibyte"; function isMultibyte(value) { return typeof value === "string" && (0, isMultibyte_1.default)(value); } __name(isMultibyte, "isMultibyte"); exports2.isMultibyte = isMultibyte; function IsMultibyte(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_MULTIBYTE, validator: { validate: /* @__PURE__ */ __name((value, args) => isMultibyte(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain one or more multibyte chars", validationOptions) } }, validationOptions); } __name(IsMultibyte, "IsMultibyte"); exports2.IsMultibyte = IsMultibyte; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isSurrogatePair.js var require_isSurrogatePair = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isSurrogatePair.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isSurrogatePair; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var surrogatePair = /[\uD800-\uDBFF][\uDC00-\uDFFF]/; function isSurrogatePair(str) { (0, _assertString.default)(str); return surrogatePair.test(str); } __name(isSurrogatePair, "isSurrogatePair"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsSurrogatePair.js var require_IsSurrogatePair = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsSurrogatePair.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsSurrogatePair = exports2.isSurrogatePair = exports2.IS_SURROGATE_PAIR = void 0; var ValidateBy_1 = require_ValidateBy(); var isSurrogatePair_1 = __importDefault2(require_isSurrogatePair()); exports2.IS_SURROGATE_PAIR = "isSurrogatePair"; function isSurrogatePair(value) { return typeof value === "string" && (0, isSurrogatePair_1.default)(value); } __name(isSurrogatePair, "isSurrogatePair"); exports2.isSurrogatePair = isSurrogatePair; function IsSurrogatePair(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_SURROGATE_PAIR, validator: { validate: /* @__PURE__ */ __name((value, args) => isSurrogatePair(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain any surrogate pairs chars", validationOptions) } }, validationOptions); } __name(IsSurrogatePair, "IsSurrogatePair"); exports2.IsSurrogatePair = IsSurrogatePair; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isURL.js var require_isURL = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isURL.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isURL; var _assertString = _interopRequireDefault(require_assertString()); var _checkHost = _interopRequireDefault(require_checkHost()); var _includesString = _interopRequireDefault(require_includesString()); var _isFQDN = _interopRequireDefault(require_isFQDN()); var _isIP = _interopRequireDefault(require_isIP()); var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } __name(_slicedToArray, "_slicedToArray"); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_nonIterableRest, "_nonIterableRest"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function _iterableToArrayLimit(r, l2) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = true, o = false; try { if (i = (t = t.call(r)).next, 0 === l2) { if (Object(t) !== t) return; f = false; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l2); f = true) ; } catch (r2) { o = true, n = r2; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } __name(_iterableToArrayLimit, "_iterableToArrayLimit"); function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } __name(_arrayWithHoles, "_arrayWithHoles"); var default_url_options = { protocols: ["http", "https", "ftp"], require_tld: true, require_protocol: false, require_host: true, require_port: false, require_valid_protocol: true, allow_underscores: false, allow_trailing_dot: false, allow_protocol_relative_urls: false, allow_fragments: true, allow_query_components: true, validate_length: true, max_allowed_length: 2084 }; var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/; function isURL(url, options) { (0, _assertString.default)(url); if (!url || /[\s<>]/.test(url)) { return false; } if (url.indexOf("mailto:") === 0) { return false; } options = (0, _merge.default)(options, default_url_options); if (options.validate_length && url.length > options.max_allowed_length) { return false; } if (!options.allow_fragments && (0, _includesString.default)(url, "#")) { return false; } if (!options.allow_query_components && ((0, _includesString.default)(url, "?") || (0, _includesString.default)(url, "&"))) { return false; } var protocol, auth, host, hostname, port, port_str, split, ipv6; split = url.split("#"); url = split.shift(); split = url.split("?"); url = split.shift(); var protocol_match = url.match(/^([a-z][a-z0-9+\-.]*):/i); var had_explicit_protocol = false; var cleanUpProtocol = /* @__PURE__ */ __name(function cleanUpProtocol2(potential_protocol2) { had_explicit_protocol = true; protocol = potential_protocol2.toLowerCase(); if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) { return false; } return url.substring(protocol_match[0].length); }, "cleanUpProtocol"); if (protocol_match) { var potential_protocol = protocol_match[1]; var after_colon = url.substring(protocol_match[0].length); var starts_with_slashes = after_colon.slice(0, 2) === "//"; if (!starts_with_slashes) { var first_slash_position = after_colon.indexOf("/"); var before_slash = first_slash_position === -1 ? after_colon : after_colon.substring(0, first_slash_position); var at_position = before_slash.indexOf("@"); if (at_position !== -1) { var before_at = before_slash.substring(0, at_position); var valid_auth_regex = /^[a-zA-Z0-9\-_.%:]*$/; var is_valid_auth = valid_auth_regex.test(before_at); var has_encoded_content = /%[0-9a-fA-F]{2}/.test(before_at); if (is_valid_auth && !has_encoded_content) { if (options.require_protocol) { return false; } } else { url = cleanUpProtocol(potential_protocol); if (url === false) { return false; } } } else { var looks_like_port = /^[0-9]/.test(after_colon); if (looks_like_port) { if (options.require_protocol) { return false; } } else { url = cleanUpProtocol(potential_protocol); if (url === false) { return false; } } } } else { url = cleanUpProtocol(potential_protocol); if (url === false) { return false; } } } else if (options.require_protocol) { return false; } if (url.slice(0, 2) === "//") { if (!had_explicit_protocol && !options.allow_protocol_relative_urls) { return false; } url = url.slice(2); } if (url === "") { return false; } split = url.split("/"); url = split.shift(); if (url === "" && !options.require_host) { return true; } split = url.split("@"); if (split.length > 1) { if (options.disallow_auth) { return false; } if (split[0] === "") { return false; } auth = split.shift(); if (auth.indexOf(":") >= 0 && auth.split(":").length > 2) { return false; } var _auth$split = auth.split(":"), _auth$split2 = _slicedToArray(_auth$split, 2), user = _auth$split2[0], password = _auth$split2[1]; if (user === "" && password === "") { return false; } } hostname = split.join("@"); port_str = null; ipv6 = null; var ipv6_match = hostname.match(wrapped_ipv6); if (ipv6_match) { host = ""; ipv6 = ipv6_match[1]; port_str = ipv6_match[2] || null; } else { split = hostname.split(":"); host = split.shift(); if (split.length) { port_str = split.join(":"); } } if (port_str !== null && port_str.length > 0) { port = parseInt(port_str, 10); if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) { return false; } } else if (options.require_port) { return false; } if (options.host_whitelist) { return (0, _checkHost.default)(host, options.host_whitelist); } if (host === "" && !options.require_host) { return true; } if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) { return false; } host = host || ipv6; if (options.host_blacklist && (0, _checkHost.default)(host, options.host_blacklist)) { return false; } return true; } __name(isURL, "isURL"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsUrl.js var require_IsUrl = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsUrl.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsUrl = exports2.isURL = exports2.IS_URL = void 0; var ValidateBy_1 = require_ValidateBy(); var isURL_1 = __importDefault2(require_isURL()); exports2.IS_URL = "isUrl"; function isURL(value, options) { return typeof value === "string" && (0, isURL_1.default)(value, options); } __name(isURL, "isURL"); exports2.isURL = isURL; function IsUrl(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_URL, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isURL(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a URL address", validationOptions) } }, validationOptions); } __name(IsUrl, "IsUrl"); exports2.IsUrl = IsUrl; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isUUID.js var require_isUUID = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isUUID.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isUUID; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var uuid = { 1: /^[0-9A-F]{8}-[0-9A-F]{4}-1[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, 2: /^[0-9A-F]{8}-[0-9A-F]{4}-2[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, 3: /^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, 4: /^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, 5: /^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, 6: /^[0-9A-F]{8}-[0-9A-F]{4}-6[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, 7: /^[0-9A-F]{8}-[0-9A-F]{4}-7[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, 8: /^[0-9A-F]{8}-[0-9A-F]{4}-8[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, nil: /^00000000-0000-0000-0000-000000000000$/i, max: /^ffffffff-ffff-ffff-ffff-ffffffffffff$/i, loose: /^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i, // From https://github.com/uuidjs/uuid/blob/main/src/regex.js all: /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i }; function isUUID(str, version2) { (0, _assertString.default)(str); if (version2 === void 0 || version2 === null) { version2 = "all"; } return version2 in uuid ? uuid[version2].test(str) : false; } __name(isUUID, "isUUID"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsUUID.js var require_IsUUID = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsUUID.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsUUID = exports2.isUUID = exports2.IS_UUID = void 0; var ValidateBy_1 = require_ValidateBy(); var isUUID_1 = __importDefault2(require_isUUID()); exports2.IS_UUID = "isUuid"; function isUUID(value, version2) { return typeof value === "string" && (0, isUUID_1.default)(value, version2); } __name(isUUID, "isUUID"); exports2.isUUID = isUUID; function IsUUID(version2, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_UUID, constraints: [version2], validator: { validate: /* @__PURE__ */ __name((value, args) => isUUID(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a UUID", validationOptions) } }, validationOptions); } __name(IsUUID, "IsUUID"); exports2.IsUUID = IsUUID; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsFirebasePushId.js var require_IsFirebasePushId = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsFirebasePushId.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsFirebasePushId = exports2.isFirebasePushId = exports2.IS_FIREBASE_PUSH_ID = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_FIREBASE_PUSH_ID = "IsFirebasePushId"; function isFirebasePushId(value) { const webSafeRegex = /^[a-zA-Z0-9_-]*$/; return typeof value === "string" && value.length === 20 && webSafeRegex.test(value); } __name(isFirebasePushId, "isFirebasePushId"); exports2.isFirebasePushId = isFirebasePushId; function IsFirebasePushId(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_FIREBASE_PUSH_ID, validator: { validate: /* @__PURE__ */ __name((value, args) => isFirebasePushId(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a Firebase Push Id", validationOptions) } }, validationOptions); } __name(IsFirebasePushId, "IsFirebasePushId"); exports2.IsFirebasePushId = IsFirebasePushId; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isUppercase.js var require_isUppercase = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isUppercase.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isUppercase; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isUppercase(str) { (0, _assertString.default)(str); return str === str.toUpperCase(); } __name(isUppercase, "isUppercase"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsUppercase.js var require_IsUppercase = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsUppercase.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsUppercase = exports2.isUppercase = exports2.IS_UPPERCASE = void 0; var ValidateBy_1 = require_ValidateBy(); var isUppercase_1 = __importDefault2(require_isUppercase()); exports2.IS_UPPERCASE = "isUppercase"; function isUppercase(value) { return typeof value === "string" && (0, isUppercase_1.default)(value); } __name(isUppercase, "isUppercase"); exports2.isUppercase = isUppercase; function IsUppercase(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_UPPERCASE, validator: { validate: /* @__PURE__ */ __name((value, args) => isUppercase(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be uppercase", validationOptions) } }, validationOptions); } __name(IsUppercase, "IsUppercase"); exports2.IsUppercase = IsUppercase; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLength.js var require_isLength = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLength.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isLength; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function isLength(str, options) { (0, _assertString.default)(str); var min; var max; if (_typeof(options) === "object") { min = options.min || 0; max = options.max; } else { min = arguments[1] || 0; max = arguments[2]; } var presentationSequences = str.match(/[^\uFE0F\uFE0E][\uFE0F\uFE0E]/g) || []; var surrogatePairs = str.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g) || []; var len = str.length - presentationSequences.length - surrogatePairs.length; var isInsideRange = len >= min && (typeof max === "undefined" || len <= max); if (isInsideRange && Array.isArray(options === null || options === void 0 ? void 0 : options.discreteLengths)) { return options.discreteLengths.some(function(discreteLen) { return discreteLen === len; }); } return isInsideRange; } __name(isLength, "isLength"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/Length.js var require_Length = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/Length.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Length = exports2.length = exports2.IS_LENGTH = void 0; var ValidateBy_1 = require_ValidateBy(); var isLength_1 = __importDefault2(require_isLength()); exports2.IS_LENGTH = "isLength"; function length(value, min, max) { return typeof value === "string" && (0, isLength_1.default)(value, { min, max }); } __name(length, "length"); exports2.length = length; function Length(min, max, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_LENGTH, constraints: [min, max], validator: { validate: /* @__PURE__ */ __name((value, args) => length(value, args === null || args === void 0 ? void 0 : args.constraints[0], args === null || args === void 0 ? void 0 : args.constraints[1]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix, args) => { const isMinLength = (args === null || args === void 0 ? void 0 : args.constraints[0]) !== null && (args === null || args === void 0 ? void 0 : args.constraints[0]) !== void 0; const isMaxLength = (args === null || args === void 0 ? void 0 : args.constraints[1]) !== null && (args === null || args === void 0 ? void 0 : args.constraints[1]) !== void 0; if (isMinLength && (!args.value || args.value.length < (args === null || args === void 0 ? void 0 : args.constraints[0]))) { return eachPrefix + "$property must be longer than or equal to $constraint1 characters"; } else if (isMaxLength && args.value.length > (args === null || args === void 0 ? void 0 : args.constraints[1])) { return eachPrefix + "$property must be shorter than or equal to $constraint2 characters"; } return eachPrefix + "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters"; }, validationOptions) } }, validationOptions); } __name(Length, "Length"); exports2.Length = Length; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/MaxLength.js var require_MaxLength = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/MaxLength.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MaxLength = exports2.maxLength = exports2.MAX_LENGTH = void 0; var ValidateBy_1 = require_ValidateBy(); var isLength_1 = __importDefault2(require_isLength()); exports2.MAX_LENGTH = "maxLength"; function maxLength(value, max) { return typeof value === "string" && (0, isLength_1.default)(value, { min: 0, max }); } __name(maxLength, "maxLength"); exports2.maxLength = maxLength; function MaxLength(max, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.MAX_LENGTH, constraints: [max], validator: { validate: /* @__PURE__ */ __name((value, args) => maxLength(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be shorter than or equal to $constraint1 characters", validationOptions) } }, validationOptions); } __name(MaxLength, "MaxLength"); exports2.MaxLength = MaxLength; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/MinLength.js var require_MinLength = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/MinLength.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MinLength = exports2.minLength = exports2.MIN_LENGTH = void 0; var ValidateBy_1 = require_ValidateBy(); var isLength_1 = __importDefault2(require_isLength()); exports2.MIN_LENGTH = "minLength"; function minLength(value, min) { return typeof value === "string" && (0, isLength_1.default)(value, { min }); } __name(minLength, "minLength"); exports2.minLength = minLength; function MinLength(min, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.MIN_LENGTH, constraints: [min], validator: { validate: /* @__PURE__ */ __name((value, args) => minLength(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be longer than or equal to $constraint1 characters", validationOptions) } }, validationOptions); } __name(MinLength, "MinLength"); exports2.MinLength = MinLength; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/matches.js var require_matches = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/matches.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = matches; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function matches(str, pattern, modifiers) { (0, _assertString.default)(str); if (Object.prototype.toString.call(pattern) !== "[object RegExp]") { pattern = new RegExp(pattern, modifiers); } return !!str.match(pattern); } __name(matches, "matches"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/Matches.js var require_Matches = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/Matches.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Matches = exports2.matches = exports2.MATCHES = void 0; var ValidateBy_1 = require_ValidateBy(); var matches_1 = __importDefault2(require_matches()); exports2.MATCHES = "matches"; function matches(value, pattern, modifiers) { return typeof value === "string" && (0, matches_1.default)(value, pattern, modifiers); } __name(matches, "matches"); exports2.matches = matches; function Matches(pattern, modifiersOrAnnotationOptions, validationOptions) { let modifiers; if (modifiersOrAnnotationOptions && modifiersOrAnnotationOptions instanceof Object && !validationOptions) { validationOptions = modifiersOrAnnotationOptions; } else { modifiers = modifiersOrAnnotationOptions; } return (0, ValidateBy_1.ValidateBy)({ name: exports2.MATCHES, constraints: [pattern, modifiers], validator: { validate: /* @__PURE__ */ __name((value, args) => matches(value, args === null || args === void 0 ? void 0 : args.constraints[0], args === null || args === void 0 ? void 0 : args.constraints[1]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix, args) => eachPrefix + "$property must match $constraint1 regular expression", validationOptions) } }, validationOptions); } __name(Matches, "Matches"); exports2.Matches = Matches; } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/metadata.max.json var require_metadata_max = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/metadata.max.json"(exports2, module2) { module2.exports = { version: 4, country_calling_codes: { "1": ["US", "AG", "AI", "AS", "BB", "BM", "BS", "CA", "DM", "DO", "GD", "GU", "JM", "KN", "KY", "LC", "MP", "MS", "PR", "SX", "TC", "TT", "VC", "VG", "VI"], "7": ["RU", "KZ"], "20": ["EG"], "27": ["ZA"], "30": ["GR"], "31": ["NL"], "32": ["BE"], "33": ["FR"], "34": ["ES"], "36": ["HU"], "39": ["IT", "VA"], "40": ["RO"], "41": ["CH"], "43": ["AT"], "44": ["GB", "GG", "IM", "JE"], "45": ["DK"], "46": ["SE"], "47": ["NO", "SJ"], "48": ["PL"], "49": ["DE"], "51": ["PE"], "52": ["MX"], "53": ["CU"], "54": ["AR"], "55": ["BR"], "56": ["CL"], "57": ["CO"], "58": ["VE"], "60": ["MY"], "61": ["AU", "CC", "CX"], "62": ["ID"], "63": ["PH"], "64": ["NZ"], "65": ["SG"], "66": ["TH"], "81": ["JP"], "82": ["KR"], "84": ["VN"], "86": ["CN"], "90": ["TR"], "91": ["IN"], "92": ["PK"], "93": ["AF"], "94": ["LK"], "95": ["MM"], "98": ["IR"], "211": ["SS"], "212": ["MA", "EH"], "213": ["DZ"], "216": ["TN"], "218": ["LY"], "220": ["GM"], "221": ["SN"], "222": ["MR"], "223": ["ML"], "224": ["GN"], "225": ["CI"], "226": ["BF"], "227": ["NE"], "228": ["TG"], "229": ["BJ"], "230": ["MU"], "231": ["LR"], "232": ["SL"], "233": ["GH"], "234": ["NG"], "235": ["TD"], "236": ["CF"], "237": ["CM"], "238": ["CV"], "239": ["ST"], "240": ["GQ"], "241": ["GA"], "242": ["CG"], "243": ["CD"], "244": ["AO"], "245": ["GW"], "246": ["IO"], "247": ["AC"], "248": ["SC"], "249": ["SD"], "250": ["RW"], "251": ["ET"], "252": ["SO"], "253": ["DJ"], "254": ["KE"], "255": ["TZ"], "256": ["UG"], "257": ["BI"], "258": ["MZ"], "260": ["ZM"], "261": ["MG"], "262": ["RE", "YT"], "263": ["ZW"], "264": ["NA"], "265": ["MW"], "266": ["LS"], "267": ["BW"], "268": ["SZ"], "269": ["KM"], "290": ["SH", "TA"], "291": ["ER"], "297": ["AW"], "298": ["FO"], "299": ["GL"], "350": ["GI"], "351": ["PT"], "352": ["LU"], "353": ["IE"], "354": ["IS"], "355": ["AL"], "356": ["MT"], "357": ["CY"], "358": ["FI", "AX"], "359": ["BG"], "370": ["LT"], "371": ["LV"], "372": ["EE"], "373": ["MD"], "374": ["AM"], "375": ["BY"], "376": ["AD"], "377": ["MC"], "378": ["SM"], "380": ["UA"], "381": ["RS"], "382": ["ME"], "383": ["XK"], "385": ["HR"], "386": ["SI"], "387": ["BA"], "389": ["MK"], "420": ["CZ"], "421": ["SK"], "423": ["LI"], "500": ["FK"], "501": ["BZ"], "502": ["GT"], "503": ["SV"], "504": ["HN"], "505": ["NI"], "506": ["CR"], "507": ["PA"], "508": ["PM"], "509": ["HT"], "590": ["GP", "BL", "MF"], "591": ["BO"], "592": ["GY"], "593": ["EC"], "594": ["GF"], "595": ["PY"], "596": ["MQ"], "597": ["SR"], "598": ["UY"], "599": ["CW", "BQ"], "670": ["TL"], "672": ["NF"], "673": ["BN"], "674": ["NR"], "675": ["PG"], "676": ["TO"], "677": ["SB"], "678": ["VU"], "679": ["FJ"], "680": ["PW"], "681": ["WF"], "682": ["CK"], "683": ["NU"], "685": ["WS"], "686": ["KI"], "687": ["NC"], "688": ["TV"], "689": ["PF"], "690": ["TK"], "691": ["FM"], "692": ["MH"], "850": ["KP"], "852": ["HK"], "853": ["MO"], "855": ["KH"], "856": ["LA"], "880": ["BD"], "886": ["TW"], "960": ["MV"], "961": ["LB"], "962": ["JO"], "963": ["SY"], "964": ["IQ"], "965": ["KW"], "966": ["SA"], "967": ["YE"], "968": ["OM"], "970": ["PS"], "971": ["AE"], "972": ["IL"], "973": ["BH"], "974": ["QA"], "975": ["BT"], "976": ["MN"], "977": ["NP"], "992": ["TJ"], "993": ["TM"], "994": ["AZ"], "995": ["GE"], "996": ["KG"], "998": ["UZ"] }, countries: { AC: ["247", "00", "(?:[01589]\\d|[2-467])\\d{4}", [5, 6], 0, 0, 0, 0, 0, 0, 0, [["6\\d{4}", [5]], ["[2-47]\\d{4}", [5]], 0, 0, 0, 0, ["(?:0[1-9]|[1589]\\d)\\d{4}", [6]]]], AD: ["376", "00", "(?:1|6\\d)\\d{7}|[135-9]\\d{5}", [6, 8, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["[135-9]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["1"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]], 0, 0, 0, 0, 0, 0, [["[78]\\d{5}", [6]], ["690\\d{6}|[356]\\d{5}", [6, 9]], ["180[02]\\d{4}", [8]], ["[19]\\d{5}", [6]]]], AE: ["971", "00", "(?:[4-7]\\d|9[0-689])\\d{7}|800\\d{2,9}|[2-4679]\\d{7}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{2,9})", "$1 $2", ["60|8"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[236]|[479][2-8]"], "0$1"], ["(\\d{3})(\\d)(\\d{5})", "$1 $2 $3", ["[479]"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"]], "0", 0, 0, 0, 0, 0, [["[2-4679][2-8]\\d{6}", [8]], ["5[02-68]\\d{7}", [9]], ["400\\d{6}|800\\d{2,9}"], ["900[02]\\d{5}", [9]], 0, 0, ["600[25]\\d{5}", [9]], 0, 0, ["700[05]\\d{5}", [9]]]], AF: ["93", "00", "[2-7]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:[25][0-8]|[34][0-4]|6[0-5])[2-9]\\d{6}"], ["7\\d{8}"]]], AG: ["1", "011", "(?:268|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([457]\\d{6})$|1", "268$1", 0, "268", [["268(?:4(?:6[0-38]|84)|56[0-2])\\d{4}"], ["268(?:464|7(?:1[3-9]|[28]\\d|3[0246]|64|7[0-689]))\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"], 0, 0, ["26840[69]\\d{4}"], ["26848[01]\\d{4}"]]], AI: ["1", "011", "(?:264|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2457]\\d{6})$|1", "264$1", 0, "264", [["264(?:292|4(?:6[12]|9[78]))\\d{4}"], ["264(?:235|4(?:69|7[67])|5(?:3[6-9]|8[1-4])|7(?:29|72))\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"], 0, 0, ["264724\\d{4}"]]], AL: ["355", "00", "(?:700\\d\\d|900)\\d{3}|8\\d{5,7}|(?:[2-5]|6\\d)\\d{7}", [6, 7, 8, 9], [["(\\d{3})(\\d{3,4})", "$1 $2", ["80|9"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["4[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2358][2-5]|4"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["[23578]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["6"], "0$1"]], "0", 0, 0, 0, 0, 0, [["4505[0-2]\\d{3}|(?:[2358][16-9]\\d[2-9]|4410)\\d{4}|(?:[2358][2-5][2-9]|4(?:[2-57-9][2-9]|6\\d))\\d{5}", [8]], ["6(?:[78][2-9]|9\\d)\\d{6}", [9]], ["800\\d{4}", [7]], ["900[1-9]\\d\\d", [6]], ["700[2-9]\\d{4}", [8]], 0, 0, 0, 0, ["808[1-9]\\d\\d", [6]]]], AM: ["374", "00", "(?:[1-489]\\d|55|60|77)\\d{6}", [8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[89]0"], "0 $1"], ["(\\d{3})(\\d{5})", "$1 $2", ["2|3[12]"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["1|47"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[3-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:(?:1[0-25]|47)\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\d{5}"], ["(?:33|4[1349]|55|77|88|9[13-9])\\d{6}"], ["800\\d{5}"], ["90[016]\\d{5}"], 0, 0, 0, 0, ["60(?:2[78]|3[5-9]|4[02-9]|5[0-46-9]|[6-8]\\d|9[0-2])\\d{4}"], ["80[1-4]\\d{5}"]]], AO: ["244", "00", "[29]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[29]"]]], 0, 0, 0, 0, 0, 0, [["2\\d(?:[0134][25-9]|[25-9]\\d)\\d{5}"], ["9[1-79]\\d{7}"]]], AR: ["54", "00", "(?:11|[89]\\d\\d)\\d{8}|[2368]\\d{9}", [10, 11], [["(\\d{4})(\\d{2})(\\d{4})", "$1 $2-$3", ["2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9])", "2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8]))|2(?:2[24-9]|3[1-59]|47)", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5[56][46]|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|58|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|54(?:4|5[13-7]|6[89])|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:454|85[56])[46]|3(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["1"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[68]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2-$3", ["[23]"], "0$1", 1], ["(\\d)(\\d{4})(\\d{2})(\\d{4})", "$2 15-$3-$4", ["9(?:2[2-469]|3[3-578])", "9(?:2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9]))", "9(?:2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8])))|92(?:2[24-9]|3[1-59]|47)", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5(?:[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|5(?:4(?:4|5[13-7]|6[89])|[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 15-$3-$4", ["91"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d{3})(\\d{3})(\\d{5})", "$1-$2-$3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{4})", "$2 15-$3-$4", ["9"], "0$1", 0, "$1 $2 $3-$4"]], "0", 0, "0?(?:(11|2(?:2(?:02?|[13]|2[13-79]|4[1-6]|5[2457]|6[124-8]|7[1-4]|8[13-6]|9[1267])|3(?:02?|1[467]|2[03-6]|3[13-8]|[49][2-6]|5[2-8]|[67])|4(?:7[3-578]|9)|6(?:[0136]|2[24-6]|4[6-8]?|5[15-8])|80|9(?:0[1-3]|[19]|2\\d|3[1-6]|4[02568]?|5[2-4]|6[2-46]|72?|8[23]?))|3(?:3(?:2[79]|6|8[2578])|4(?:0[0-24-9]|[12]|3[5-8]?|4[24-7]|5[4-68]?|6[02-9]|7[126]|8[2379]?|9[1-36-8])|5(?:1|2[1245]|3[237]?|4[1-46-9]|6[2-4]|7[1-6]|8[2-5]?)|6[24]|7(?:[069]|1[1568]|2[15]|3[145]|4[13]|5[14-8]|7[2-57]|8[126])|8(?:[01]|2[15-7]|3[2578]?|4[13-6]|5[4-8]?|6[1-357-9]|7[36-8]?|8[5-8]?|9[124])))15)?", "9$1", 0, 0, [["3(?:7(?:1[15]|81)|8(?:21|4[16]|69|9[12]))[46]\\d{5}|(?:2(?:2(?:2[59]|44|52)|3(?:26|44)|47[35]|9(?:[07]2|2[26]|34|46))|3327)[45]\\d{5}|(?:2(?:657|9(?:54|66))|3(?:48[27]|7(?:55|77)|8(?:65|78)))[2-8]\\d{5}|(?:2(?:284|3(?:02|23)|477|622|920)|3(?:4(?:46|89|92)|541))[2-7]\\d{5}|(?:(?:11[0-8]|670)\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-8]|[36][45]|4[3-6])|80[45]|9(?:[17][4-6]|[48][45]|9[3-6]))|3(?:364|4(?:1[2-8]|[25][4-6]|3[3-6]|84)|5(?:1[2-9]|[38][4-6])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-7]|3[4-6]|5[3-6]|7[2-6]|8[3-68])))\\d{6}|(?:2(?:2(?:62|81)|320|9(?:42|83))|3(?:329|4(?:62|7[16])|5(?:43|64)|7(?:18|5[17])))[2-6]\\d{5}|2(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\d{5}|(?:2(?:257|3(?:24|46|92)|9(?:01|23|64))|3(?:4(?:42|64)|5(?:25|37|4[47]|71)|7(?:35|72)|825))[3-6]\\d{5}|(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|25|[45][25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[035-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[14]|4[13]|5[468]|7[3-5]|8[26])|8(?:2[67]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\d{5}", [10]], ["93(?:7(?:1[15]|81)|8(?:21|4[16]|69|9[12]))[46]\\d{5}|9(?:2(?:2(?:2[59]|44|52)|3(?:26|44)|47[35]|9(?:[07]2|2[26]|34|46))|3327)[45]\\d{5}|9(?:2(?:657|9(?:54|66))|3(?:48[27]|7(?:55|77)|8(?:65|78)))[2-8]\\d{5}|9(?:2(?:284|3(?:02|23)|477|622|920)|3(?:4(?:46|89|92)|541))[2-7]\\d{5}|(?:675\\d|9(?:11[0-8]\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-8]|[36][45]|4[3-6])|80[45]|9(?:[17][4-6]|[48][45]|9[3-6]))|3(?:364|4(?:1[2-8]|[25][4-6]|3[3-6]|84)|5(?:1[2-9]|[38][4-6])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-7]|3[4-6]|5[3-6]|7[2-6]|8[3-68]))))\\d{6}|9(?:2(?:2(?:62|81)|320|9(?:42|83))|3(?:329|4(?:62|7[16])|5(?:43|64)|7(?:18|5[17])))[2-6]\\d{5}|92(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\d{5}|9(?:2(?:257|3(?:24|46|92)|9(?:01|23|64))|3(?:4(?:42|64)|5(?:25|37|4[47]|71)|7(?:35|72)|825))[3-6]\\d{5}|9(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|25|[45][25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[035-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[14]|4[13]|5[468]|7[3-5]|8[26])|8(?:2[67]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\d{5}"], ["800\\d{7,8}"], ["60[04579]\\d{7}", [10]], 0, 0, ["810\\d{7}", [10]]]], AS: ["1", "011", "(?:[58]\\d\\d|684|900)\\d{7}", [10], 0, "1", 0, "([267]\\d{6})$|1", "684$1", 0, "684", [["684(?:274|6(?:22|33|44|55|77|88|9[19]))\\d{4}"], ["684(?:2(?:48|5[2468]|7[246])|7(?:3[13]|70|82))\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], AT: ["43", "00", "1\\d{3,12}|2\\d{6,12}|43(?:(?:0\\d|5[02-9])\\d{3,9}|2\\d{4,5}|[3467]\\d{4}|8\\d{4,6}|9\\d{4,7})|5\\d{4,12}|8\\d{7,12}|9\\d{8,12}|(?:[367]\\d|4[0-24-9])\\d{4,11}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{3,12})", "$1 $2", ["1(?:11|[2-9])"], "0$1"], ["(\\d{3})(\\d{2})", "$1 $2", ["517"], "0$1"], ["(\\d{2})(\\d{3,5})", "$1 $2", ["5[079]"], "0$1"], ["(\\d{3})(\\d{3,10})", "$1 $2", ["(?:31|4)6|51|6(?:48|5[0-3579]|[6-9])|7(?:20|32|8)|[89]", "(?:31|4)6|51|6(?:485|5[0-3579]|[6-9])|7(?:20|32|8)|[89]"], "0$1"], ["(\\d{4})(\\d{3,9})", "$1 $2", ["[2-467]|5[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,7})", "$1 $2 $3", ["5"], "0$1"]], "0", 0, 0, 0, 0, 0, [["1(?:11\\d|[2-9]\\d{3,11})|(?:316|463)\\d{3,10}|648[34]\\d{3,9}|(?:51|66|73)2\\d{3,10}|(?:2(?:1[467]|2[13-8]|5[2357]|6[1-46-8]|7[1-8]|8[124-7]|9[1458])|3(?:1[1-578]|3[23568]|4[5-7]|5[1378]|6[1-38]|8[3-68])|4(?:2[1-8]|35|7[1368]|8[2457])|5(?:2[1-8]|3[357]|4[147]|5[12578]|6[37])|6(?:13|2[1-47]|4[135-7]|5[468])|7(?:2[1-8]|35|4[13478]|5[68]|6[16-8]|7[1-6]|9[45]))\\d{4,10}"], ["6(?:485|(?:5[0-3579]|6[013-9]|[7-9]\\d)\\d)\\d{3,9}", [7, 8, 9, 10, 11, 12, 13]], ["800\\d{6,10}", [9, 10, 11, 12, 13]], ["(?:8[69][2-68]|9(?:0[01]|3[019]))\\d{6,10}", [9, 10, 11, 12, 13]], 0, 0, 0, 0, ["5(?:0[1-9]|17|[79]\\d)\\d{2,10}|7[28]0\\d{6,10}", [5, 6, 7, 8, 9, 10, 11, 12, 13]], ["8(?:10|2[018])\\d{6,10}|828\\d{5}", [8, 9, 10, 11, 12, 13]]]], AU: ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{7}(?:\\d(?:\\d{2})?)?|8[0-24-9]\\d{7})|[2-478]\\d{8}|1\\d{4,7}", [5, 6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{3,4})", "$1 $2", ["16"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["16"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["14|4"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[2378]"], "(0$1)"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:30|[89])"]]], "0", 0, "(183[12])|0", 0, 0, 0, [["(?:(?:241|349)0\\d\\d|8(?:51(?:0(?:0[03-9]|[12479]\\d|3[2-9]|5[0-8]|6[1-9]|8[0-7])|1(?:[0235689]\\d|1[0-69]|4[0-589]|7[0-47-9])|2(?:0[0-79]|[18][13579]|2[14-9]|3[0-46-9]|[4-6]\\d|7[89]|9[0-4])|[34]\\d\\d)|91(?:(?:[0-58]\\d|6[0135-9])\\d|7(?:0[0-24-9]|[1-9]\\d)|9(?:[0-46-9]\\d|5[0-79]))))\\d{3}|(?:2(?:[0-26-9]\\d|3[0-8]|4[02-9]|5[0135-9])|3(?:[0-3589]\\d|4[0-578]|6[1-9]|7[0-35-9])|7(?:[013-57-9]\\d|2[0-8])|8(?:55|6[0-8]|[78]\\d|9[02-9]))\\d{6}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, ["163\\d{2,6}", [5, 6, 7, 8, 9]], ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], AW: ["297", "00", "(?:[25-79]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[25-9]"]]], 0, 0, 0, 0, 0, 0, [["5(?:2\\d|8[1-9])\\d{4}"], ["(?:290|5[69]\\d|6(?:[03]0|22|4[0-2]|[69]\\d)|7(?:[34]\\d|7[07])|9(?:6[45]|9[4-8]))\\d{4}"], ["800\\d{4}"], ["900\\d{4}"], 0, 0, 0, 0, ["(?:28\\d|501)\\d{4}"]]], AX: ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "2\\d{4,9}|35\\d{4,5}|(?:60\\d\\d|800)\\d{4,6}|7\\d{5,11}|(?:[14]\\d|3[0-46-9]|50)\\d{4,8}", [5, 6, 7, 8, 9, 10, 11, 12], 0, "0", 0, 0, 0, 0, "18", [["18[1-8]\\d{3,6}", [6, 7, 8, 9]], ["4946\\d{2,6}|(?:4[0-8]|50)\\d{4,8}", [6, 7, 8, 9, 10]], ["800\\d{4,6}", [7, 8, 9]], ["[67]00\\d{5,6}", [8, 9]], 0, 0, ["20\\d{4,8}|60[12]\\d{5,6}|7(?:099\\d{4,5}|5[03-9]\\d{3,7})|20[2-59]\\d\\d|(?:606|7(?:0[78]|1|3\\d))\\d{7}|(?:10|29|3[09]|70[1-5]\\d)\\d{4,8}"]], "00"], AZ: ["994", "00", "365\\d{6}|(?:[124579]\\d|60|88)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[28]|2|365|46", "1[28]|2|365[45]|46", "1[28]|2|365(?:4|5[02])|46"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[13-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:2[12]428|3655[02])\\d{4}|(?:2(?:22[0-79]|63[0-28])|3654)\\d{5}|(?:(?:1[28]|46)\\d|2(?:[014-6]2|[23]3))\\d{6}"], ["36554\\d{4}|(?:[16]0|4[04]|5[015]|7[07]|99)\\d{7}"], ["88\\d{7}"], ["900200\\d{3}"]]], BA: ["387", "00", "6\\d{8}|(?:[35689]\\d|49|70)\\d{6}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[1-3]|[7-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2-$3", ["[3-5]|6[56]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["6"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:3(?:[05-79][2-9]|1[4579]|[23][24-9]|4[2-4689]|8[2457-9])|49[2-579]|5(?:0[2-49]|[13][2-9]|[268][2-4679]|4[4689]|5[2-79]|7[2-69]|9[2-4689]))\\d{5}", [8]], ["6040\\d{5}|6(?:03|[1-356]|44|7\\d)\\d{6}"], ["8[08]\\d{6}", [8]], ["9[0246]\\d{6}", [8]], 0, 0, ["703[235]0\\d{3}|70(?:2[0-5]|3[0146]|[56]0)\\d{4}", [8]], 0, 0, ["8[12]\\d{6}", [8]]]], BB: ["1", "011", "(?:246|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "246$1", 0, "246", [["246521[0369]\\d{3}|246(?:2(?:2[78]|7[0-4])|4(?:1[024-6]|2\\d|3[2-9])|5(?:20|[34]\\d|54|7[1-3])|6(?:2\\d|38)|7[35]7|9(?:1[89]|63))\\d{4}"], ["246(?:(?:2(?:[3568]\\d|4[0-57-9])|3(?:5[2-9]|6[0-6])|4(?:46|5\\d)|69[5-7]|8(?:[2-5]\\d|83))\\d|52(?:1[147]|20))\\d{3}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["(?:246976|900[2-9]\\d\\d)\\d{4}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"], 0, ["246(?:292|367|4(?:1[7-9]|3[01]|4[47-9]|67)|7(?:1[2-9]|2\\d|3[016]|53))\\d{4}"], 0, ["24631\\d{5}"]]], BD: ["880", "00", "[1-469]\\d{9}|8[0-79]\\d{7,8}|[2-79]\\d{8}|[2-9]\\d{7}|[3-9]\\d{6}|[57-9]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{2})(\\d{4,6})", "$1-$2", ["31[5-8]|[459]1"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1-$2", ["3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:[15]|28|4[14])|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]"], "0$1"], ["(\\d{4})(\\d{3,6})", "$1-$2", ["[13-9]|2[23]"], "0$1"], ["(\\d)(\\d{7,8})", "$1-$2", ["2"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:4(?:31\\d\\d|423)|5222)\\d{3}(?:\\d{2})?|8332[6-9]\\d\\d|(?:3(?:03[56]|224)|4(?:22[25]|653))\\d{3,4}|(?:3(?:42[47]|529|823)|4(?:027|525|65(?:28|8))|562|6257|7(?:1(?:5[3-5]|6[12]|7[156]|89)|22[589]56|32|42675|52(?:[25689](?:56|8)|[347]8)|71(?:6[1267]|75|89)|92374)|82(?:2[59]|32)56|9(?:03[23]56|23(?:256|373)|31|5(?:1|2[4589]56)))\\d{3}|(?:3(?:02[348]|22[35]|324|422)|4(?:22[67]|32[236-9]|6(?:2[46]|5[57])|953)|5526|6(?:024|6655)|81)\\d{4,5}|(?:2(?:7(?:1[0-267]|2[0-289]|3[0-29]|4[01]|5[1-3]|6[013]|7[0178]|91)|8(?:0[125]|1[1-6]|2[0157-9]|3[1-69]|41|6[1-35]|7[1-5]|8[1-8]|9[0-6])|9(?:0[0-2]|1[0-4]|2[568]|3[3-6]|5[5-7]|6[0136-9]|7[0-7]|8[014-9]))|3(?:0(?:2[025-79]|3[2-4])|181|22[12]|32[2356]|824)|4(?:02[09]|22[348]|32[045]|523|6(?:27|54))|666(?:22|53)|7(?:22[57-9]|42[56]|82[35])8|8(?:0[124-9]|2(?:181|2[02-4679]8)|4[12]|[5-7]2)|9(?:[04]2|2(?:2|328)|81))\\d{4}|(?:2(?:[23]\\d|[45])\\d\\d|3(?:1(?:2[5-7]|[5-7])|425|822)|4(?:033|1\\d|[257]1|332|4(?:2[246]|5[25])|6(?:2[35]|56|62)|8(?:23|54)|92[2-5])|5(?:02[03489]|22[457]|32[35-79]|42[46]|6(?:[18]|53)|724|826)|6(?:023|2(?:2[2-5]|5[3-5]|8)|32[3478]|42[34]|52[47]|6(?:[18]|6(?:2[34]|5[24]))|[78]2[2-5]|92[2-6])|7(?:02|21\\d|[3-589]1|6[12]|72[24])|8(?:217|3[12]|[5-7]1)|9[24]1)\\d{5}|(?:(?:3[2-8]|5[2-57-9]|6[03-589])1|4[4689][18])\\d{5}|[59]1\\d{5}"], ["(?:1[13-9]\\d|644)\\d{7}|(?:3[78]|44|66)[02-9]\\d{7}", [10]], ["80[03]\\d{7}", [10]], 0, 0, 0, 0, 0, ["96(?:0[1-69]|1[0-479]|2[278]|3[13-9]|4[0134]|54|6[69]|7[78]|88)\\d{6}", [10]]]], BE: ["32", "00", "4\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:80|9)0"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[239]|4[23]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[15-8]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4"], "0$1"]], "0", 0, 0, 0, 0, 0, [["80[2-8]\\d{5}|(?:1[0-69]|[23][2-8]|4[23]|5\\d|6[013-57-9]|71|8[1-79]|9[2-4])\\d{6}", [8]], ["4[5-9]\\d{7}", [9]], ["800[1-9]\\d{4}", [8]], ["(?:70(?:2[0-57]|3[04-7]|44|6[04-69]|7[0579])|90\\d\\d)\\d{4}", [8]], 0, 0, ["78(?:0[578]|1[014-8]|2[25]|3[15-8]|48|5[05]|60|7[06-8]|9\\d)\\d{4}", [8]], 0, 0, ["7879\\d{4}", [8]]]], BF: ["226", "00", "[024-7]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[024-7]"]]], 0, 0, 0, 0, 0, 0, [["2(?:0(?:49|5[23]|6[5-7]|9[016-9])|4(?:4[569]|5[4-6]|6[5-7]|7[0179])|5(?:[34]\\d|50|6[5-8]))\\d{4}"], ["(?:0[1-7]|4[4-6]|5[0-8]|[67]\\d)\\d{6}"]]], BG: ["359", "00", "00800\\d{7}|[2-7]\\d{6,7}|[89]\\d{6,8}|2\\d{5}", [6, 7, 8, 9, 12], [["(\\d)(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["43[1-6]|70[1-9]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["[356]|4[124-7]|7[1-9]|8[1-6]|9[1-7]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:70|8)0"], "0$1"], ["(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3", ["43[1-7]|7"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[48]|9[08]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"]], "0", 0, 0, 0, 0, 0, [["2\\d{5,7}|(?:43[1-6]|70[1-9])\\d{4,5}|(?:[36]\\d|4[124-7]|[57][1-9]|8[1-6]|9[1-7])\\d{5,6}", [6, 7, 8]], ["(?:43[07-9]|99[69]\\d)\\d{5}|(?:8[7-9]|98)\\d{7}", [8, 9]], ["(?:00800\\d\\d|800)\\d{5}", [8, 12]], ["90\\d{6}", [8]], 0, 0, 0, 0, 0, ["700\\d{5}", [8]]]], BH: ["973", "00", "[136-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[13679]|8[02-4679]"]]], 0, 0, 0, 0, 0, 0, [["(?:1(?:3[1356]|6[0156]|7\\d)\\d|6(?:1[16]\\d|500|6(?:0\\d|3[12]|44|55|7[7-9]|88)|9[69][69])|7(?:[07]\\d\\d|1(?:11|78)))\\d{4}"], ["(?:3(?:[0-79]\\d|8[0-57-9])\\d|6(?:3(?:00|33|6[16])|441|6(?:3[03-9]|[69]\\d|7[0-689])))\\d{4}"], ["8[02369]\\d{6}"], ["(?:87|9[0-8])\\d{6}"], 0, 0, 0, 0, 0, ["84\\d{6}"]]], BI: ["257", "00", "(?:[267]\\d|31)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2367]"]]], 0, 0, 0, 0, 0, 0, [["(?:22|31)\\d{6}"], ["(?:29|6[1-9]|7[125-9])\\d{6}"]]], BJ: ["229", "00", "(?:01\\d|8)\\d{7}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["0"]]], 0, 0, 0, 0, 0, 0, [["012\\d{7}", [10]], ["01(?:2[5-9]|[4-69]\\d)\\d{6}", [10]], 0, 0, 0, 0, ["81\\d{6}", [8]], 0, ["857[58]\\d{4}", [8]]]], BL: ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["(?:59(?:0(?:2[7-9]|3[3-7]|5[12]|87)|87\\d)|80[6-9]\\d\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], BM: ["1", "011", "(?:441|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "441$1", 0, "441", [["441(?:[46]\\d\\d|5(?:4\\d|60|89))\\d{4}"], ["441(?:[2378]\\d|5[0-39]|9[02])\\d{5}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], BN: ["673", "00", "[2-578]\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-578]"]]], 0, 0, 0, 0, 0, 0, [["22[0-7]\\d{4}|(?:2[013-9]|[34]\\d|5[0-25-9])\\d{5}"], ["(?:22[89]|[78]\\d\\d)\\d{4}"], 0, 0, 0, 0, 0, 0, ["5[34]\\d{5}"]]], BO: ["591", "00(?:1\\d)?", "(?:[2-7]\\d\\d|8001)\\d{5}", [8, 9], [["(\\d)(\\d{7})", "$1 $2", ["[23]|4[46]|50"]], ["(\\d{8})", "$1", ["[5-7]"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["8"]]], "0", 0, "0(1\\d)?", 0, 0, 0, [["(?:2(?:2\\d\\d|5(?:11|[258]\\d|9[67])|6(?:12|2\\d|9[34])|8(?:2[34]|39|62))|3(?:3\\d\\d|4(?:6\\d|8[24])|8(?:25|42|5[257]|86|9[25])|9(?:[27]\\d|3[2-4]|4[248]|5[24]|6[2-6]))|4(?:4\\d\\d|6(?:11|[24689]\\d|72)))\\d{4}", [8]], ["(?:57|[67]\\d)\\d{6}", [8]], ["8001[07]\\d{4}", [9]], 0, 0, 0, 0, 0, ["50\\d{6}", [8]]]], BQ: ["599", "00", "(?:[34]1|7\\d)\\d{5}", [7], 0, 0, 0, 0, 0, 0, "[347]", [["(?:318[023]|41(?:6[023]|70)|7(?:1[578]|2[05]|50)\\d)\\d{3}"], ["(?:31(?:8[14-8]|9[14578])|416[14-9]|7(?:0[01]|7[07]|8\\d|9[056])\\d)\\d{3}"]]], BR: ["55", "00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)", "[1-467]\\d{9,10}|55[0-46-9]\\d{8}|[34]\\d{7}|55\\d{7,8}|(?:5[0-46-9]|[89]\\d)\\d{7,9}", [8, 9, 10, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["300|4(?:0[02]|37|86)", "300|4(?:0(?:0|20)|370|864)"]], ["(\\d{3})(\\d{2,3})(\\d{4})", "$1 $2 $3", ["(?:[358]|90)0"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-57]"], "($1)"], ["(\\d{2})(\\d{5})(\\d{4})", "$1 $2-$3", ["[16][1-9]|[2-57-9]"], "($1)"]], "0", 0, "(?:0|90)(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\d{10,11}))?", "$2", 0, 0, [["(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-5]\\d{7}", [10]], ["(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])(?:7|9\\d)\\d{7}", [10, 11]], ["800\\d{6,7}", [9, 10]], ["[59]00\\d{6,7}", [9, 10]], 0, 0, 0, 0, 0, ["(?:30[03]\\d{3}|4(?:0(?:0\\d|20)|370|864))\\d{4}|300\\d{5}", [8, 10]]]], BS: ["1", "011", "(?:242|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([3-8]\\d{6})$|1", "242$1", 0, "242", [["242(?:3(?:02|[236][1-9]|4[0-24-9]|5[0-68]|7[347]|8[0-4]|9[2-467])|461|502|6(?:0[1-5]|12|2[013]|[45]0|7[67]|8[78]|9[89])|7(?:02|88))\\d{4}"], ["242(?:3(?:5[79]|7[56]|95)|4(?:[23][1-9]|4[1-35-9]|5[1-8]|6[2-8]|7\\d|81)|5(?:2[45]|3[35]|44|5[1-46-9]|65|77)|6[34]6|7(?:27|38)|8(?:0[1-9]|1[02-9]|2\\d|3[0-4]|[89]9))\\d{4}"], ["242300\\d{4}|8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"], 0, ["242225\\d{4}"]]], BT: ["975", "00", "[178]\\d{7}|[2-8]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-6]|7[246]|8[2-4]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[67]|[78]"]]], 0, 0, 0, 0, 0, 0, [["(?:2[3-6]|[34][5-7]|5[236]|6[2-46]|7[246]|8[2-4])\\d{5}", [7]], ["(?:1[67]|[78]7)\\d{6}", [8]]]], BW: ["267", "00", "(?:0800|(?:[37]|800)\\d)\\d{6}|(?:[2-6]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["90"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[24-6]|3[15-9]"]], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37]"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["8"]]], 0, 0, 0, 0, 0, 0, [["(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0-35-9]|55|[69]\\d|7[013]|81)|4(?:6[03]|7[1267]|9[0-5])|5(?:3[03489]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[013467]))\\d{4}", [7]], ["(?:321|7(?:[1-8]\\d|9[03]))\\d{5}", [8]], ["(?:0800|800\\d)\\d{6}", [10]], ["90\\d{5}", [7]], 0, 0, 0, 0, ["79(?:1(?:[0-2]\\d|3[0-8])|2[0-7]\\d)\\d{3}", [8]]]], BY: ["375", "810", "(?:[12]\\d|33|44|902)\\d{7}|8(?:0[0-79]\\d{5,7}|[1-7]\\d{9})|8(?:1[0-489]|[5-79]\\d)\\d{7}|8[1-79]\\d{6,7}|8[0-79]\\d{5}|8\\d{5}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3})", "$1 $2", ["800"], "8 $1"], ["(\\d{3})(\\d{2})(\\d{2,4})", "$1 $2 $3", ["800"], "8 $1"], ["(\\d{4})(\\d{2})(\\d{3})", "$1 $2-$3", ["1(?:5[169]|6[3-5]|7[179])|2(?:1[35]|2[34]|3[3-5])", "1(?:5[169]|6(?:3[1-3]|4|5[125])|7(?:1[3-9]|7[0-24-6]|9[2-7]))|2(?:1[35]|2[34]|3[3-5])"], "8 0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["1(?:[56]|7[467])|2[1-3]"], "8 0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-4]"], "8 0$1"], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[89]"], "8 $1"]], "8", 0, "0|80?", 0, 0, 0, [["(?:1(?:5(?:1[1-5]|[24]\\d|6[2-4]|9[1-7])|6(?:[235]\\d|4[1-7])|7\\d\\d)|2(?:1(?:[246]\\d|3[0-35-9]|5[1-9])|2(?:[235]\\d|4[0-8])|3(?:[26]\\d|3[02-79]|4[024-7]|5[03-7])))\\d{5}", [9]], ["(?:2(?:5[5-79]|9[1-9])|(?:33|44)\\d)\\d{6}", [9]], ["800\\d{3,7}|8(?:0[13]|20\\d)\\d{7}"], ["(?:810|902)\\d{7}", [10]], 0, 0, 0, 0, ["249\\d{6}", [9]]], "8~10"], BZ: ["501", "00", "(?:0800\\d|[2-8])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-8]"]], ["(\\d)(\\d{3})(\\d{4})(\\d{3})", "$1-$2-$3-$4", ["0"]]], 0, 0, 0, 0, 0, 0, [["(?:2(?:[02]\\d|36|[68]0)|[3-58](?:[02]\\d|[68]0)|7(?:[02]\\d|32|[68]0))\\d{4}", [7]], ["6[0-35-7]\\d{5}", [7]], ["0800\\d{7}", [11]]]], CA: ["1", "011", "[2-9]\\d{9}|3\\d{6}", [7, 10], 0, "1", 0, 0, 0, 0, 0, [["(?:2(?:04|[23]6|[48]9|5[07]|63)|3(?:06|43|54|6[578]|82)|4(?:03|1[68]|[26]8|3[178]|50|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|[18]3|39|47|72)|7(?:0[59]|42|53|78|8[02])|8(?:[06]7|19|25|7[39])|9(?:0[25]|42))[2-9]\\d{6}", [10]], ["", [10]], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", [10]], ["900[2-9]\\d{6}", [10]], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|(?:5(?:2[125-9]|3[23]|44|66|77|88)|6(?:22|33))[2-9]\\d{6}", [10]], 0, ["310\\d{4}", [7]], 0, ["600[2-9]\\d{6}", [10]]]], CC: ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:02|31|60|89)|1(?:18|76)|223)|91(?:0(?:1[0-2]|29)|1(?:[28]2|50|79)|2(?:10|64)|3(?:[06]8|22)|4[29]8|62\\d|70[23]|959))\\d{3}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], CD: ["243", "00", "(?:(?:[189]|5\\d)\\d|2)\\d{7}|[1-68]\\d{6}", [7, 8, 9, 10], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["[1-6]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["5"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:(?:12|573)\\d\\d|276)\\d{5}|[1-6]\\d{6}"], ["88\\d{5}|(?:8[0-69]|9[016-9])\\d{7}", [7, 9]]]], CF: ["236", "00", "8776\\d{4}|(?:[27]\\d|61)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[26-8]"]]], 0, 0, 0, 0, 0, 0, [["(?:2[12]|61)\\d{6}"], ["7[02-7]\\d{6}"], 0, ["8776\\d{4}"]]], CG: ["242", "00", "222\\d{6}|(?:0\\d|80)\\d{7}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[02]"]]], 0, 0, 0, 0, 0, 0, [["222[1-589]\\d{5}"], ["026(?:1[0-5]|6[6-9])\\d{4}|0(?:[14-6]\\d\\d|2(?:40|5[5-8]|6[07-9]))\\d{5}"], 0, ["80[0-2]\\d{6}"]]], CH: ["41", "00", "8\\d{11}|[2-9]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8[047]|90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]|81"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:2[12467]|3[1-4]|4[134]|5[256]|6[12]|[7-9]1)\\d{7}", [9]], ["(?:6[89]|7[235-9])\\d{7}", [9]], ["800\\d{6}", [9]], ["90[016]\\d{6}", [9]], ["878\\d{6}", [9]], ["860\\d{9}", [12]], ["5[18]\\d{7}", [9]], ["74[0248]\\d{6}", [9]], 0, ["84[0248]\\d{6}", [9]]]], CI: ["225", "00", "[02]\\d{9}", [10], [["(\\d{2})(\\d{2})(\\d)(\\d{5})", "$1 $2 $3 $4", ["2"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3 $4", ["0"]]], 0, 0, 0, 0, 0, 0, [["2(?:[15]\\d{3}|7(?:2(?:0[23]|1[2357]|2[245]|3[45]|4[3-5])|3(?:06|1[69]|[2-6]7)))\\d{5}"], ["0[157]\\d{8}"]]], CK: ["682", "00", "[2-578]\\d{4}", [5], [["(\\d{2})(\\d{3})", "$1 $2", ["[2-578]"]]], 0, 0, 0, 0, 0, 0, [["(?:2\\d|3[13-7]|4[1-5])\\d{3}"], ["[578]\\d{4}"]]], CL: ["56", "(?:0|1(?:1[0-69]|2[02-5]|5[13-58]|69|7[0167]|8[018]))0", "12300\\d{6}|6\\d{9,10}|[2-9]\\d{8}", [9, 10, 11], [["(\\d{5})(\\d{4})", "$1 $2", ["219", "2196"], "($1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["60|809"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["44"]], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2[1-36]"], "($1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["9(?:10|[2-9])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-8]|[1-9])"], "($1)"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["60|8"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{3})(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["60"]]], 0, 0, 0, 0, 0, 0, [["2(?:1982[0-6]|3314[05-9])\\d{3}|(?:2(?:1(?:160|962)|3(?:(?:[24]\\d|50)\\d|3(?:[0346-9]\\d|1[0-35-9]|2[1-9]|5[0-24-9])|600)|646[59])|(?:600|80[1-9])\\d\\d|9(?:(?:10[0-2]|7[1-9]\\d)\\d|3(?:[0-57-9]\\d\\d|6(?:0[02-9]|[1-9]\\d))|6(?:[0-8]\\d\\d|9(?:[02-79]\\d|1[05-9]))|9(?:[03-9]\\d\\d|1(?:[0235-9]\\d|4[0-24-9])|2(?:[0-79]\\d|8[0-46-9]))))\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2458])\\d{7}", [9]], ["2(?:1982[0-6]|3314[05-9])\\d{3}|(?:2(?:1(?:160|962)|3(?:(?:[24]\\d|50)\\d|3(?:[0346-9]\\d|1[0-35-9]|2[1-9]|5[0-24-9])|600)|646[59])|80[1-8]\\d\\d|9(?:(?:10[0-2]|7[1-9]\\d)\\d|3(?:[0-57-9]\\d\\d|6(?:0[02-9]|[1-9]\\d))|6(?:[0-8]\\d\\d|9(?:[02-79]\\d|1[05-9]))|9(?:[03-9]\\d\\d|1(?:[0235-9]\\d|4[0-24-9])|2(?:[0-79]\\d|8[0-46-9]))))\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2458])\\d{7}", [9]], ["(?:123|8)00\\d{6}", [9, 11]], 0, 0, 0, 0, 0, ["44\\d{7}", [9]], ["600\\d{7,8}", [10, 11]]]], CM: ["237", "00", "[26]\\d{8}|88\\d{6,7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["88"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[26]|88"]]], 0, 0, 0, 0, 0, 0, [["2(?:22|33)\\d{6}", [9]], ["(?:24[23]|6(?:[25-9]\\d|4[0-2]))\\d{6}", [9]], ["88\\d{6,7}"]]], CN: ["86", "00|1(?:[12]\\d|79)\\d\\d00", "(?:(?:1[03-689]|2\\d)\\d\\d|6)\\d{8}|1\\d{10}|[126]\\d{6}(?:\\d(?:\\d{2})?)?|86\\d{5,6}|(?:[3-579]\\d|8[0-57-9])\\d{5,9}", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5,6})", "$1 $2", ["(?:10|2[0-57-9])[19]|3(?:[157]|35|49|9[1-68])|4(?:1[124-9]|2[179]|6[47-9]|7|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:07|1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3|4[13]|5[1-5]|7[0-79]|9[0-35-9])|(?:4[35]|59|85)[1-9]", "(?:10|2[0-57-9])(?:1[02]|9[56])|8078|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))1", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|80781|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))12", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|807812|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:078|1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123"], "0$1"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["3(?:[157]|35|49|9[1-68])|4(?:[17]|2[179]|6[47-9]|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]|4[13]|5[1-5])|(?:4[35]|59|85)[1-9]", "(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))[19]", "85[23](?:10|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:10|9[56])", "85[23](?:100|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:100|9[56])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["(?:4|80)0"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|2(?:[02-57-9]|1[1-9])", "10|2(?:[02-57-9]|1[1-9])", "10[0-79]|2(?:[02-57-9]|1[1-79])|(?:10|21)8(?:0[1-9]|[1-9])"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["3(?:[3-59]|7[02-68])|4(?:[26-8]|3[3-9]|5[2-9])|5(?:3[03-9]|[468]|7[028]|9[2-46-9])|6|7(?:[0-247]|3[04-9]|5[0-4689]|6[2368])|8(?:[1-358]|9[1-7])|9(?:[013479]|5[1-5])|(?:[34]1|55|79|87)[02-9]"], "0$1", 1], ["(\\d{3})(\\d{7,8})", "$1 $2", ["9"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["80"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[3-578]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["1[3-9]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["[12]"], "0$1", 1]], "0", 0, "(1(?:[12]\\d|79)\\d\\d)|0", 0, 0, 0, [["(?:10(?:[02-79]\\d\\d|[18](?:0[1-9]|[1-9]\\d))|2(?:[02-57-9]\\d{3}|1(?:[18](?:0[1-9]|[1-9]\\d)|[2-79]\\d\\d))|(?:41[03]|8078|9(?:78|94))\\d\\d)\\d{5}|(?:10|2[0-57-9])(?:1(?:00|23)\\d\\d|95\\d{3,4})|(?:41[03]|9(?:78|94))(?:100\\d\\d|95\\d{3,4})|8078123|(?:43[35]|754|851)\\d{7,8}|(?:43[35]|754|851)(?:1(?:00\\d|23)\\d|95\\d{3,4})|(?:3(?:11|7[179])|4(?:[15]1|3[12])|5(?:1\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:[39]1|5[57]|6[09])|8(?:71|98))(?:[02-8]\\d{7}|1(?:0(?:0\\d\\d(?:\\d{3})?|[1-9]\\d{5})|[13-9]\\d{6}|2(?:[0-24-9]\\d{5}|3\\d(?:\\d{4})?))|9(?:[0-46-9]\\d{6}|5\\d{3}(?:\\d(?:\\d{2})?)?))|(?:3(?:1[02-9]|35|49|5\\d|7[02-68]|9[1-68])|4(?:1[24-9]|2[179]|3[46-9]|5[2-9]|6[47-9]|7\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\d|2[248]|3[04-9]|4[3-6]|5[0-3689]|6[2368]|9[02-9])|8(?:1[236-8]|2[5-7]|3\\d|5[2-9]|7[02-9]|8[36-8]|9[1-7])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))(?:[02-8]\\d{6}|1(?:0(?:0\\d\\d(?:\\d{2})?|[1-9]\\d{4})|[13-9]\\d{5}|2(?:[0-24-9]\\d{4}|3\\d(?:\\d{3})?))|9(?:[0-46-9]\\d{5}|5\\d{3,5}))", [7, 8, 9, 10, 11]], ["1(?:610\\d|740[0-5])\\d{6}|1(?:[38]\\d|4[57]|[59][0-35-9]|6[25-7]|7[0-35-8])\\d{8}", [11]], ["(?:(?:10|21)8|8)00\\d{7}", [10, 12]], ["16[08]\\d{5}", [8]], 0, 0, 0, 0, 0, ["10(?:10\\d{4}|96\\d{3,4})|400\\d{7}|950\\d{7,8}|(?:2[0-57-9]|3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))96\\d{3,4}", [7, 8, 9, 10, 11]]], "00"], CO: ["57", "00(?:4(?:[14]4|56)|[579])", "(?:46|60\\d\\d)\\d{6}|(?:1\\d|[39])\\d{9}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["46"]], ["(\\d{3})(\\d{7})", "$1 $2", ["6|90"], "($1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3[0-357]|9[14]"]], ["(\\d)(\\d{3})(\\d{7})", "$1-$2-$3", ["1"], "0$1", 0, "$1 $2 $3"]], "0", 0, "0([3579]|4(?:[14]4|56))?", 0, 0, 0, [["601055(?:[0-4]\\d|50)\\d\\d|6010(?:[0-4]\\d|5[0-4])\\d{4}|(?:46|60(?:[18][1-9]|[24-7][2-9]))\\d{6}", [8, 10]], ["333301[0-5]\\d{3}|3333(?:00|2[5-9]|[3-9]\\d)\\d{4}|(?:3(?:(?:0[0-5]|1\\d|5[01]|70)\\d|2(?:[0-3]\\d|4[1-9])|3(?:00|3[0-24-9]))|9(?:101|408))\\d{6}", [10]], ["1800\\d{7}", [11]], ["(?:19(?:0[01]|4[78])|901)\\d{7}", [10, 11]]]], CR: ["506", "00", "(?:8\\d|90)\\d{8}|(?:[24-8]\\d{3}|3005)\\d{4}", [8, 10], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[3-9]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[89]"]]], 0, 0, "(19(?:0[0-2468]|1[09]|20|66|77|99))", 0, 0, 0, [["210[7-9]\\d{4}|2(?:[024-7]\\d|1[1-9])\\d{5}", [8]], ["(?:3005\\d|6500[01])\\d{3}|(?:5[07]|6[0-4]|7[0-3]|8[3-9])\\d{6}", [8]], ["800\\d{7}", [10]], ["90[059]\\d{7}", [10]], 0, 0, 0, 0, ["(?:210[0-6]|4\\d{3}|5100)\\d{4}", [8]]]], CU: ["53", "119", "(?:[2-7]|8\\d\\d)\\d{7}|[2-47]\\d{6}|[34]\\d{5}", [6, 7, 8, 10], [["(\\d{2})(\\d{4,6})", "$1 $2", ["2[1-4]|[34]"], "(0$1)"], ["(\\d)(\\d{6,7})", "$1 $2", ["7"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["[56]"], "0$1"], ["(\\d{3})(\\d{7})", "$1 $2", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:3[23]|4[89])\\d{4,6}|(?:31|4[36]|8(?:0[25]|78)\\d)\\d{6}|(?:2[1-4]|4[1257]|7\\d)\\d{5,6}"], ["(?:5\\d|6[2-4])\\d{6}", [8]], ["800\\d{7}", [10]], 0, 0, 0, 0, 0, 0, ["807\\d{7}", [10]]]], CV: ["238", "0", "(?:[2-59]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-589]"]]], 0, 0, 0, 0, 0, 0, [["2(?:2[1-7]|3[0-8]|4[12]|5[1256]|6\\d|7[1-3]|8[1-5])\\d{4}"], ["(?:36|5[1-389]|9\\d)\\d{5}"], ["800\\d{4}"], 0, 0, 0, 0, 0, ["(?:3[3-5]|4[356])\\d{5}"]]], CW: ["599", "00", "(?:[34]1|60|(?:7|9\\d)\\d)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[3467]"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["9[4-8]"]]], 0, 0, 0, 0, 0, "[69]", [["9(?:4(?:3[0-5]|4[14]|6\\d)|50\\d|7(?:2[014]|3[02-9]|4[4-9]|6[357]|77|8[7-9])|8(?:3[39]|[46]\\d|7[01]|8[57-9]))\\d{4}"], ["953[01]\\d{4}|9(?:5[12467]|6[5-9])\\d{5}"], 0, 0, 0, 0, 0, ["955\\d{5}", [8]], 0, ["60[0-2]\\d{4}", [7]]]], CX: ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:01|30|59|88)|1(?:17|46|75)|2(?:22|35))|91(?:00[6-9]|1(?:[28]1|49|78)|2(?:09|63)|3(?:12|26|75)|4(?:56|97)|64\\d|7(?:0[01]|1[0-2])|958))\\d{3}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], CY: ["357", "00", "(?:[279]\\d|[58]0)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[257-9]"]]], 0, 0, 0, 0, 0, 0, [["2[2-6]\\d{6}"], ["9(?:10|[4-79]\\d)\\d{5}"], ["800\\d{5}"], ["90[09]\\d{5}"], ["700\\d{5}"], 0, ["(?:50|77)\\d{6}"], 0, 0, ["80[1-9]\\d{5}"]]], CZ: ["420", "00", "(?:[2-578]\\d|60)\\d{7}|9\\d{8,11}", [9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]|9[015-7]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["96"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]], 0, 0, 0, 0, 0, 0, [["(?:2\\d|3[1257-9]|4[16-9]|5[13-9])\\d{7}", [9]], ["7060\\d{5}|(?:60[1-8]|7(?:0[2-5]|19|[2379]\\d))\\d{6}", [9]], ["800\\d{6}", [9]], ["9(?:0[05689]|76)\\d{6}", [9]], ["70[01]\\d{6}", [9]], ["9(?:3\\d{9}|6\\d{7,10})"], ["9(?:5\\d|7[2-4])\\d{6}", [9]], 0, ["9[17]0\\d{6}", [9]], ["8[134]\\d{7}", [9]]]], DE: ["49", "00", "[2579]\\d{5,14}|49(?:[34]0|69|8\\d)\\d\\d?|49(?:37|49|60|7[089]|9\\d)\\d{1,3}|49(?:2[024-9]|3[2-689]|7[1-7])\\d{1,8}|(?:1|[368]\\d|4[0-8])\\d{3,13}|49(?:[015]\\d|2[13]|31|[46][1-8])\\d{1,9}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [["(\\d{2})(\\d{3,13})", "$1 $2", ["3[02]|40|[68]9"], "0$1"], ["(\\d{3})(\\d{3,12})", "$1 $2", ["2(?:0[1-389]|1[124]|2[18]|3[14])|3(?:[35-9][15]|4[015])|906|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1", "2(?:0[1-389]|12[0-8])|3(?:[35-9][15]|4[015])|906|2(?:[13][14]|2[18])|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1"], "0$1"], ["(\\d{4})(\\d{2,11})", "$1 $2", ["[24-6]|3(?:[3569][02-46-9]|4[2-4679]|7[2-467]|8[2-46-8])|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]", "[24-6]|3(?:3(?:0[1-467]|2[127-9]|3[124578]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|4[13578]|9[1346])|5(?:0[14]|2[1-3589]|6[1-4]|7[13468]|8[13568])|6(?:2[1-489]|3[124-6]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|6|7[1467]|8[136])|9(?:0[12479]|2[1358]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]|3[68]4[1347]|3(?:47|60)[1356]|3(?:3[46]|46|5[49])[1246]|3[4579]3[1357]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["138"], "0$1"], ["(\\d{5})(\\d{2,10})", "$1 $2", ["3"], "0$1"], ["(\\d{3})(\\d{5,11})", "$1 $2", ["181"], "0$1"], ["(\\d{3})(\\d)(\\d{4,10})", "$1 $2 $3", ["1(?:3|80)|9"], "0$1"], ["(\\d{3})(\\d{7,8})", "$1 $2", ["1[67]"], "0$1"], ["(\\d{3})(\\d{7,12})", "$1 $2", ["8"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["185", "1850", "18500"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["18[68]"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["15[1279]"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["15[03568]", "15(?:[0568]|3[13])"], "0$1"], ["(\\d{3})(\\d{8})", "$1 $2", ["18"], "0$1"], ["(\\d{3})(\\d{2})(\\d{7,8})", "$1 $2 $3", ["1(?:6[023]|7)"], "0$1"], ["(\\d{4})(\\d{2})(\\d{7})", "$1 $2 $3", ["15[279]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{8})", "$1 $2 $3", ["15"], "0$1"]], "0", 0, 0, 0, 0, 0, [["32\\d{9,11}|49[1-6]\\d{10}|322\\d{6}|49[0-7]\\d{3,9}|(?:[34]0|[68]9)\\d{3,13}|(?:2(?:0[1-689]|[1-3569]\\d|4[0-8]|7[1-7]|8[0-7])|3(?:[3569]\\d|4[0-79]|7[1-7]|8[1-8])|4(?:1[02-9]|[2-48]\\d|5[0-6]|6[0-8]|7[0-79])|5(?:0[2-8]|[124-6]\\d|[38][0-8]|[79][0-7])|6(?:0[02-9]|[1-358]\\d|[47][0-8]|6[1-9])|7(?:0[2-8]|1[1-9]|[27][0-7]|3\\d|[4-6][0-8]|8[0-5]|9[013-7])|8(?:0[2-9]|1[0-79]|2\\d|3[0-46-9]|4[0-6]|5[013-9]|6[1-8]|7[0-8]|8[0-24-6])|9(?:0[6-9]|[1-4]\\d|[589][0-7]|6[0-8]|7[0-467]))\\d{3,12}", [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]], ["1(?:6[023]|7\\d)\\d{7,8}|15(?:[0-25-9]\\d\\d|3(?:10|33))\\d{6}", [10, 11]], ["800\\d{7,12}", [10, 11, 12, 13, 14, 15]], ["(?:137[7-9]|900(?:[135]|9\\d))\\d{6}", [10, 11]], ["700\\d{8}", [11]], ["1(?:6(?:013|255|399)|7(?:(?:[015]1|[69]3)3|[2-4]55|[78]99))\\d{7,8}|15(?:(?:[03-68]00|113)\\d|2\\d55|7\\d99|9\\d33)\\d{7}", [12, 13]], ["18(?:1\\d{5,11}|[2-9]\\d{8})", [8, 9, 10, 11, 12, 13, 14]], ["16(?:4\\d{1,10}|[89]\\d{1,11})", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]], 0, ["180\\d{5,11}|13(?:7[1-6]\\d\\d|8)\\d{4}", [7, 8, 9, 10, 11, 12, 13, 14]]]], DJ: ["253", "00", "(?:2\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[27]"]]], 0, 0, 0, 0, 0, 0, [["2(?:1[2-5]|7[45])\\d{5}"], ["77\\d{6}"]]], DK: ["45", "00", "[2-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-9]"]]], 0, 0, 0, 0, 0, 0, [["(?:2(?:[0-59][1-9]|[6-8]\\d)|3(?:[0-3][1-9]|4[13]|5[1-58]|6[1347-9]|7\\d|8[1-8]|9[1-79])|4(?:[0-25][1-9]|[34][2-9]|6[13-579]|7[13579]|8[1-47]|9[127])|5(?:[0-36][1-9]|4[146-9]|5[3-57-9]|7[568]|8[1-358]|9[1-69])|6(?:[0135][1-9]|2[1-68]|4[2-8]|6[1689]|[78]\\d|9[15689])|7(?:[0-69][1-9]|7[3-9]|8[147])|8(?:[16-9][1-9]|2[1-58])|9(?:[1-47-9][1-9]|6\\d))\\d{5}"], ["(?:2[6-8]|37|6[78]|96)\\d{6}|(?:2[0-59]|3[0-689]|[457]\\d|6[0-69]|8[126-9]|9[1-47-9])[1-9]\\d{5}"], ["80\\d{6}"], ["90\\d{6}"]]], DM: ["1", "011", "(?:[58]\\d\\d|767|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "767$1", 0, "767", [["767(?:2(?:55|66)|4(?:2[01]|4[0-25-9])|50[0-4])\\d{4}"], ["767(?:2(?:[2-4689]5|7[5-7])|31[5-7]|61[1-8]|70[1-6])\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], DO: ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "8001|8[024]9", [["8(?:[04]9[2-9]\\d\\d|29(?:2(?:[0-59]\\d|6[04-9]|7[0-27]|8[0237-9])|3(?:[0-35-9]\\d|4[7-9])|[45]\\d\\d|6(?:[0-27-9]\\d|[3-5][1-9]|6[0135-8])|7(?:0[013-9]|[1-37]\\d|4[1-35689]|5[1-4689]|6[1-57-9]|8[1-79]|9[1-8])|8(?:0[146-9]|1[0-48]|[248]\\d|3[1-79]|5[01589]|6[013-68]|7[124-8]|9[0-8])|9(?:[0-24]\\d|3[02-46-9]|5[0-79]|60|7[0169]|8[57-9]|9[02-9])))\\d{4}"], ["8[024]9[2-9]\\d{6}"], ["800(?:14|[2-9]\\d)\\d{5}|8[024]9[01]\\d{6}|8(?:33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], DZ: ["213", "00", "(?:[1-4]|[5-79]\\d|80)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["9"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-8]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["9619\\d{5}|(?:[1-3]\\d|4[013-689])\\d{6}"], ["5(?:4[0-29]|6[0-4])\\d{6}|(?:55|6\\d|7[7-9])\\d{7}", [9]], ["800\\d{6}", [9]], ["80[3-689]1\\d{5}", [9]], 0, 0, 0, 0, ["98[23]\\d{6}", [9]], ["80[12]1\\d{5}", [9]]]], EC: ["593", "00", "1\\d{9,10}|(?:[2-7]|9\\d)\\d{7}", [8, 9, 10, 11], [["(\\d)(\\d{3})(\\d{4})", "$1 $2-$3", ["[2-7]"], "(0$1)", 0, "$1-$2-$3"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1"]]], "0", 0, 0, 0, 0, 0, [["[2-7][2-7]\\d{6}", [8]], ["964[0-2]\\d{5}|9(?:39|[57][89]|6[0-36-9]|[89]\\d)\\d{6}", [9]], ["1800\\d{7}|1[78]00\\d{6}", [10, 11]], 0, 0, 0, 0, 0, ["[2-7]890\\d{4}", [8]]]], EE: ["372", "00", "8\\d{9}|[4578]\\d{7}|(?:[3-8]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]|88", "[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]|88"]], ["(\\d{4})(\\d{3,4})", "$1 $2", ["[45]|8(?:00|[1-49])", "[45]|8(?:00[1-9]|[1-49])"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]], 0, 0, 0, 0, 0, 0, [["(?:3[23589]|4[3-8]|6\\d|7[1-9]|88)\\d{5}", [7]], ["(?:5\\d{5}|8(?:1(?:0(?:0(?:00|[178]\\d)|[3-9]\\d\\d)|(?:1(?:0[2-6]|1\\d)|[2-79]\\d\\d)\\d)|2(?:0(?:0(?:00|4\\d)|(?:19|[2-7]\\d)\\d)|(?:(?:[124-69]\\d|3[5-9])\\d|7(?:[0-79]\\d|8[013-9])|8(?:[2-6]\\d|7[01]))\\d)|[349]\\d{4}))\\d\\d|5(?:(?:[02]\\d|5[0-478])\\d|1(?:[0-8]\\d|95)|6(?:4[0-4]|5[1-589]))\\d{3}", [7, 8]], ["800(?:(?:0\\d\\d|1)\\d|[2-9])\\d{3}"], ["(?:40\\d\\d|900)\\d{4}", [7, 8]], ["70[0-2]\\d{5}", [8]]]], EG: ["20", "00", "[189]\\d{8,9}|[24-6]\\d{8}|[135]\\d{7}", [8, 9, 10], [["(\\d)(\\d{7,8})", "$1 $2", ["[23]"], "0$1"], ["(\\d{2})(\\d{6,7})", "$1 $2", ["1[35]|[4-6]|8[2468]|9[235-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{8})", "$1 $2", ["1"], "0$1"]], "0", 0, 0, 0, 0, 0, [["13[23]\\d{6}|(?:15|57)\\d{6,7}|(?:2\\d|3|4[05-8]|5[05]|6[24-689]|8[2468]|9[235-7])\\d{7}", [8, 9]], ["1[0-25]\\d{8}", [10]], ["800\\d{7}", [10]], ["900\\d{7}", [10]]]], EH: ["212", "00", "[5-8]\\d{8}", [9], 0, "0", 0, 0, 0, 0, 0, [["528[89]\\d{5}"], ["(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[016-8]\\d|2[0-8]|3[01]|5[0-5]))\\d{6}"], ["80[0-7]\\d{6}"], ["89\\d{7}"], 0, 0, 0, 0, ["(?:592(?:4[0-2]|93)|80[89]\\d\\d)\\d{4}"]]], ER: ["291", "00", "[178]\\d{6}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[178]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:1(?:1[12568]|[24]0|55|6[146])|8\\d\\d)\\d{4}"], ["(?:17[1-3]|7\\d\\d)\\d{4}"]]], ES: ["34", "00", "(?:400|[5-9]\\d\\d)\\d{6}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]00"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[4-9]"]]], 0, 0, 0, 0, 0, 0, [["96906(?:0[0-8]|1[1-9]|[2-9]\\d)\\d\\d|9(?:69(?:0[0-57-9]|[1-9]\\d)|73(?:[0-8]\\d|9[1-9]))\\d{4}|(?:400|8(?:[1356]\\d|[28][0-8]|[47][1-9])|9(?:[135]\\d|[268][0-8]|4[1-9]|7[124-9]))\\d{6}"], ["96906(?:09|10)\\d\\d|(?:590(?:10[0-2]|600)|97390\\d)\\d{3}|(?:6\\d|7[1-48])\\d{7}"], ["[89]00\\d{6}"], ["80[367]\\d{6}"], ["70\\d{7}"], 0, ["51\\d{7}"], 0, 0, ["90[12]\\d{6}"]]], ET: ["251", "00", "(?:11|[2-57-9]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-57-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:11(?:[124]\\d\\d|3(?:[0-79]\\d|8[0-7])|5(?:[02-9]\\d|1[0-57-9])|6(?:[02-79]\\d|1[0-57-9]|8[0-8]))|2(?:2(?:11[1-9]|22[0-7]|33\\d|44[1467]|66[1-68])|5(?:11[124-6]|33[2-8]|44[1467]|55[14]|66[1-3679]|77[124-79]|880))|3(?:3(?:11[0-46-8]|(?:22|55)[0-6]|33[0134689]|44[04]|66[01467])|4(?:44[0-8]|55[0-69]|66[0-3]|77[1-5]))|4(?:6(?:119|22[0-24-7]|33[1-5]|44[13-69]|55[14-689]|660|88[1-4])|7(?:(?:11|22)[1-9]|33[13-7]|44[13-6]|55[1-689]))|5(?:7(?:227|55[05]|(?:66|77)[14-8])|8(?:11[149]|22[013-79]|33[0-68]|44[013-8]|550|66[1-5]|77\\d)))\\d{4}"], ["700[1-9]\\d{5}|(?:7(?:0[1-9]|1[0-8]|2[1-35-79]|3\\d|77|86|99)|(?:8[01]|9\\d)\\d)\\d{6}"]]], FI: ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "[1-35689]\\d{4}|7\\d{10,11}|(?:[124-7]\\d|3[0-46-9])\\d{8}|[1-9]\\d{5,8}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{5})", "$1", ["20[2-59]"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1 $2", ["(?:[1-3]0|[68])0|70[07-9]"], "0$1"], ["(\\d{2})(\\d{4,8})", "$1 $2", ["[14]|2[09]|50|7[135]"], "0$1"], ["(\\d{2})(\\d{6,10})", "$1 $2", ["7"], "0$1"], ["(\\d)(\\d{4,9})", "$1 $2", ["(?:19|[2568])[1-8]|3(?:0[1-9]|[1-9])|9"], "0$1"]], "0", 0, 0, 0, 0, "1[03-79]|[2-9]", [["1[3-7][1-8]\\d{3,6}|(?:19[1-8]|[23568][1-8]\\d|9(?:00|[1-8]\\d))\\d{2,6}", [5, 6, 7, 8, 9]], ["4946\\d{2,6}|(?:4[0-8]|50)\\d{4,8}", [6, 7, 8, 9, 10]], ["800\\d{4,6}", [7, 8, 9]], ["[67]00\\d{5,6}", [8, 9]], 0, 0, ["20\\d{4,8}|60[12]\\d{5,6}|7(?:099\\d{4,5}|5[03-9]\\d{3,7})|20[2-59]\\d\\d|(?:606|7(?:0[78]|1|3\\d))\\d{7}|(?:10|29|3[09]|70[1-5]\\d)\\d{4,8}"]], "00"], FJ: ["679", "0(?:0|52)", "45\\d{5}|(?:0800\\d|[235-9])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[235-9]|45"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]]], 0, 0, 0, 0, 0, 0, [["603\\d{4}|(?:3[0-6]|6[25-7]|8[58])\\d{5}", [7]], ["(?:[279]\\d|45|5[01568]|8[034679])\\d{5}", [7]], ["0800\\d{7}", [11]]], "00"], FK: ["500", "00", "[2-7]\\d{4}", [5], 0, 0, 0, 0, 0, 0, 0, [["[2-47]\\d{4}"], ["[56]\\d{4}"]]], FM: ["691", "00", "(?:[39]\\d\\d|820)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[389]"]]], 0, 0, 0, 0, 0, 0, [["31(?:00[67]|208|309)\\d\\d|(?:3(?:[2357]0[1-9]|602|804|905)|(?:820|9[2-6]\\d)\\d)\\d{3}"], ["31(?:00[67]|208|309)\\d\\d|(?:3(?:[2357]0[1-9]|602|804|905)|(?:820|9[2-7]\\d)\\d)\\d{3}"]]], FO: ["298", "00", "[2-9]\\d{5}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-9]"]]], 0, 0, "(10(?:01|[12]0|88))", 0, 0, 0, [["(?:20|[34]\\d|8[19])\\d{4}"], ["(?:[27][1-9]|5\\d|9[16])\\d{4}"], ["80[257-9]\\d{3}"], ["90(?:[13-5][15-7]|2[125-7]|9\\d)\\d\\d"], 0, 0, 0, 0, ["6[0-36]\\d{4}"]]], FR: ["33", "00", "[1-9]\\d{8}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0 $1"], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[1-79]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:26[013-9]|59[1-35-9])\\d{6}|(?:[13]\\d|2[0-57-9]|4[1-9]|5[0-8])\\d{7}"], ["(?:6(?:[0-24-8]\\d|3[0-8]|9[589])|7[3-9]\\d)\\d{6}"], ["80[0-5]\\d{6}"], ["836(?:0[0-36-9]|[1-9]\\d)\\d{4}|8(?:1[2-9]|2[2-47-9]|3[0-57-9]|[569]\\d|8[0-35-9])\\d{6}"], 0, 0, ["80[6-9]\\d{6}"], 0, ["9\\d{8}"], ["8(?:1[01]|2[0156]|4[024]|84)\\d{6}"]]], GA: ["241", "00", "(?:[067]\\d|11)\\d{6}|[2-7]\\d{6}", [7, 8], [["(\\d)(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-7]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["11|[67]"], "0$1"]], 0, 0, "0(11\\d{6}|60\\d{6}|61\\d{6}|6[256]\\d{6}|7[467]\\d{6})", "$1", 0, 0, [["[01]1\\d{6}", [8]], ["(?:(?:0[2-7]|7[467])\\d|6(?:0[0-4]|10|[256]\\d))\\d{5}|[2-7]\\d{6}"]]], GB: ["44", "00", "[1-357-9]\\d{9}|[18]\\d{8}|8\\d{6}", [7, 9, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["800", "8001", "80011", "800111", "8001111"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["845", "8454", "84546", "845464"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["800"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["1(?:38|5[23]|69|76|94)", "1(?:(?:38|69)7|5(?:24|39)|768|946)", "1(?:3873|5(?:242|39[4-6])|(?:697|768)[347]|9467)"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["1(?:[2-69][02-9]|[78])"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[25]|7(?:0|6[02-9])", "[25]|7(?:0|6(?:[03-9]|2[356]))"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1389]"], "0$1"]], "0", 0, "0|180020", 0, 0, 0, [["(?:1(?:1(?:3(?:[0-58]\\d\\d|73[0-5])|4(?:(?:[0-5]\\d|70)\\d|69[7-9])|(?:(?:5[0-26-9]|[78][0-49])\\d|6(?:[0-4]\\d|5[01]))\\d)|(?:2(?:(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\d)\\d|1(?:[0-7]\\d|8[0-3]))|(?:3(?:0\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\d|3[0236-8]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))\\d)\\d)|2(?:0[013478]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\d{3})\\d{4}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[1-3]))|5(?:2(?:4(?:3[2-79]|6\\d)|76\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[5-7]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|7(?:26(?:6[13-9]|7[0-7])|(?:442|688)\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|843[2-58])|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d{3}", [9, 10]], ["7(?:457[0-57-9]|700[01]|911[028])\\d{5}|7(?:[1-3]\\d\\d|4(?:[0-46-9]\\d|5[0-689])|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[024-9]\\d|1[02-9]|3[0-689]))\\d{6}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[2-49]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]], 0, " x"], GD: ["1", "011", "(?:473|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "473$1", 0, "473", [["473(?:2(?:3[0-2]|69)|3(?:2[89]|86)|4(?:[06]8|3[5-9]|4[0-4]|5[59]|73|90)|63[68]|7(?:58|84)|800|938)\\d{4}"], ["473(?:4(?:0[2-79]|1[04-9]|2[0-5]|49|5[6-8])|5(?:2[01]|3[3-8])|901)\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], GE: ["995", "00", "(?:[3-57]\\d\\d|800)\\d{6}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["32"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[57]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[348]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:3(?:[256]\\d|4[124-9]|7[0-4])|4(?:1\\d|2[2-7]|3[1-79]|4[2-8]|7[239]|9[1-7]))\\d{6}"], ["5(?:(?:(?:0555|1(?:[17]77|555))[5-9]|757(?:7[7-9]|8[01]))\\d|22252[0-4])\\d\\d|5(?:0(?:0(?:1[09]|70)|505)|1(?:0[01]0|1(?:07|33|51))|2(?:0[02]0|2[25]2)|3(?:0[03]0|3[35]3)|4(?:0[04]0|411)|5222|9000)[0-4]\\d{3}|(?:5(?:0(?:0(?:0\\d|1[12]|2[02]|3[0-6]|4[04]|5[05]|77|88|9[09])|(?:[14]\\d|77)\\d|22[02])|1(?:1(?:[03][01]|[124]\\d|5[02-6]|7[0-6])|4\\d\\d)|2(?:228|555)|3555|4(?:4(?:[02-9]\\d|14)|555)|5(?:[0157-9]\\d\\d|200|333|4(?:44|55))|6[89]\\d\\d|7(?:(?:[0147-9]\\d|22)\\d|5(?:00|[57]5))|8(?:0(?:[018]\\d|2[0-4])|5(?:55|8[89])|8(?:55|88))|9(?:090|[1-35-9]\\d\\d))|790\\d\\d)\\d{4}"], ["800\\d{6}"], 0, 0, 0, 0, 0, ["70[67]\\d{6}"]]], GF: ["594", "00", "(?:694\\d|7093)\\d{5}|(?:59|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]|80[6-9]|9[47]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[89]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:59(?:4(?:[02-49]\\d|1[0-5]|5[6-9]|6[0-3]|80)|88\\d)|80[6-9]\\d\\d)\\d{4}"], ["(?:694(?:[0-249]\\d|3[0-8])|7093[0-3])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:396|76\\d)\\d|476[0-6])\\d{4}"]]], GG: ["44", "00", "(?:1481|[357-9]\\d{3})\\d{6}|8\\d{6}(?:\\d{2})?", [7, 9, 10], 0, "0", 0, "([25-9]\\d{5})$|0|180020", "1481$1", 0, 0, [["1481[25-9]\\d{5}", [10]], ["7(?:(?:781|839)\\d|911[17])\\d{5}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[0-3]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]]], GH: ["233", "00", "[235]\\d{8}|800\\d{5,6}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2358]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["3082[0-5]\\d{4}|3(?:0(?:[237]\\d|8[01])|[167](?:2[0-6]|7\\d|80)|2(?:2[0-5]|7\\d|80)|3(?:2[0-3]|7\\d|80)|4(?:2[013-9]|3[01]|7\\d|80)|5(?:2[0-7]|7\\d|80)|8(?:2[0-2]|7\\d|80)|9(?:[28]0|7\\d))\\d{5}", [9]], ["(?:2(?:[0346-9]\\d|5[67])|5(?:[03-7]\\d|9[1-9]))\\d{6}", [9]], ["800\\d{5,6}"]]], GI: ["350", "00", "(?:[25]\\d|60)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["2"]]], 0, 0, 0, 0, 0, 0, [["2190[0-2]\\d{3}|2(?:0(?:[02]\\d|3[01])|16[24-9]|2[2-5]\\d)\\d{4}"], ["5251[0-4]\\d{3}|(?:5(?:[146-8]\\d\\d|250)|60(?:1[01]|6\\d))\\d{4}"]]], GL: ["299", "00", "(?:19|[2-689]\\d|70)\\d{4}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["19|[2-9]"]]], 0, 0, 0, 0, 0, 0, [["(?:19|3[1-7]|[68][1-9]|70|9\\d)\\d{4}"], ["[245]\\d{5}"], ["80\\d{4}"], 0, 0, 0, 0, 0, ["3[89]\\d{4}"]]], GM: ["220", "00", "[48]\\d{8}|[2-9]\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["[235-9]|4(?:[0-35]|4[16-9])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[48]"]]], 0, 0, 0, 0, 0, 0, [["(?:4(?:[23]\\d\\d|4(?:1[024679]|(?:4(?:[237-9]\\d|4[14-9])|8[0-389]\\d)\\d|5(?:5(?:3\\d|4[0-7])|[67]\\d\\d)))|5(?:5(?:3\\d|4[0-7])|6[67]\\d|7(?:1[04]|2[035]|3[58]|48))|8[0-389]\\d\\d)\\d{3}|44[6-9]\\d{4}"], ["(?:(?:[23679]\\d|4[015]|8(?:(?:3[35]|6[68]|99)\\d|7(?:[27]\\d|4[015])))\\d|5(?:[0-489]\\d|56))\\d{4}|8[4-7]\\d{5}"]]], GN: ["224", "00", "722\\d{6}|(?:3|6\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["3"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[67]"]]], 0, 0, 0, 0, 0, 0, [["3(?:0(?:24|3[12]|4[1-35-7]|5[13]|6[189]|[78]1|9[1478])|1\\d\\d)\\d{4}", [8]], ["6[0-356]\\d{7}", [9]], 0, 0, 0, 0, 0, 0, ["722\\d{6}", [9]]]], GP: ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]|80[6-9]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:59(?:0(?:0[1-68]|[14][0-24-9]|2[0-68]|3[1-9]|5[3-579]|[68][0-689]|7[08]|9\\d)|87\\d)|80[6-9]\\d\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], GQ: ["240", "00", "222\\d{6}|(?:3\\d|55|[89]0)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235]"]], ["(\\d{3})(\\d{6})", "$1 $2", ["[89]"]]], 0, 0, 0, 0, 0, 0, [["33[0-24-9]\\d[46]\\d{4}|3(?:33|5\\d)\\d[7-9]\\d{4}"], ["(?:222|55\\d)\\d{6}"], ["80\\d[1-9]\\d{5}"], ["90\\d[1-9]\\d{5}"]]], GR: ["30", "00", "5005000\\d{3}|8\\d{9,11}|(?:[269]\\d|70)\\d{8}", [10, 11, 12], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["21|7"]], ["(\\d{4})(\\d{6})", "$1 $2", ["2(?:2|3[2-57-9]|4[2-469]|5[2-59]|6[2-9]|7[2-69]|8[2-49])|5"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2689]"]], ["(\\d{3})(\\d{3,4})(\\d{5})", "$1 $2 $3", ["8"]]], 0, 0, 0, 0, 0, 0, [["2(?:1\\d\\d|2(?:2[1-46-9]|[36][1-8]|4[1-7]|5[1-4]|7[1-5]|[89][1-9])|3(?:1\\d|2[1-57]|[35][1-3]|4[13]|7[1-7]|8[124-6]|9[1-79])|4(?:1\\d|2[1-8]|3[1-4]|4[13-5]|6[1-578]|9[1-5])|5(?:1\\d|[29][1-4]|3[1-5]|4[124]|5[1-6])|6(?:1\\d|[269][1-6]|3[1245]|4[1-7]|5[13-9]|7[14]|8[1-5])|7(?:1\\d|2[1-5]|3[1-6]|4[1-7]|5[1-57]|6[135]|9[125-7])|8(?:1\\d|2[1-5]|[34][1-4]|9[1-57]))\\d{6}", [10]], ["68[57-9]\\d{7}|(?:69|94)\\d{8}", [10]], ["800\\d{7,9}"], ["90[19]\\d{7}", [10]], ["70\\d{8}", [10]], 0, ["5005000\\d{3}", [10]], 0, 0, ["8(?:0[16]|12|[27]5|50)\\d{7}", [10]]]], GT: ["502", "00", "80\\d{6}|(?:1\\d{3}|[2-7])\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-8]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]], 0, 0, 0, 0, 0, 0, [["[267][2-9]\\d{6}", [8]], ["(?:[3-5]\\d\\d|80[0-4])\\d{5}", [8]], ["18[01]\\d{8}", [11]], ["19\\d{9}", [11]]]], GU: ["1", "011", "(?:[58]\\d\\d|671|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "671$1", 0, "671", [["671(?:2\\d\\d|3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[02-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[478])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[16-9]))\\d{4}"], [""], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], GW: ["245", "00", "[49]\\d{8}|4\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["40"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"]]], 0, 0, 0, 0, 0, 0, [["443\\d{6}", [9]], ["9(?:5\\d|6[569]|77)\\d{6}", [9]], 0, 0, 0, 0, 0, 0, ["40\\d{5}", [7]]]], GY: ["592", "001", "(?:[2-8]\\d{3}|9008)\\d{3}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]], 0, 0, 0, 0, 0, 0, [["(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\d|7[0-79])|3(?:2[25-9]|3\\d)|4(?:4[0-24]|5[56])|50[0-6]|77[1-57])\\d{4}"], ["(?:51[01]|6\\d\\d|7(?:[0-5]\\d|6[0-79]|70|8[067]))\\d{4}"], ["(?:289|8(?:00|6[28]|88|99))\\d{4}"], ["9008\\d{3}"], 0, 0, 0, 0, ["515\\d{4}"]]], HK: ["852", "00(?:30|5[09]|[126-9]?)", "8[0-46-9]\\d{6,7}|9\\d{4,7}|(?:[2-7]|9\\d{3})\\d{7}", [5, 6, 7, 8, 9, 11], [["(\\d{3})(\\d{2,5})", "$1 $2", ["900", "9003"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[1-4]|9(?:0[1-9]|[1-8])"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{3})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]], 0, 0, 0, 0, 0, 0, [["(?:2(?:[13-9]\\d|2[013-9])\\d|3(?:(?:[1569][0-24-9]|4[0-246-9]|7[0-24-69])\\d|8(?:4[0-8]|[579]\\d|6[0-5]))|58(?:0[1-9]|1[2-9]))\\d{4}", [8]], ["(?:4(?:0(?:6[0-3]|9[3-6])|24[3-6]|44[0-35-9]|6(?:4[0-57-9]|6[0-6])|7(?:4[0-48]|6[0-5]))|5(?:25[3-7]|35[4-8]|73[0-6]|95[0-8])|6(?:26[013-8]|(?:66|78)[0-5])|70(?:7[1-8]|8[0-8])|84(?:4[0-2]|8[0-35-9])|9(?:29[013-9]|39[014-9]|59[0-467]|899))\\d{4}|(?:4(?:4[0-35-9]|6[0-357-9]|7[0-35])|5(?:[1-59][0-46-9]|6[0-4689]|7[0-246-9])|6(?:0[1-9]|[13-59]\\d|[268][0-57-9]|7[0-79])|70[1-59]|84[0-39]|9(?:0[1-9]|1[02-9]|[2358][0-8]|[467]\\d))\\d{5}", [8]], ["800\\d{6}", [9]], ["900(?:[0-24-9]\\d{7}|3\\d{1,4})", [5, 6, 7, 8, 11]], ["8(?:1[0-4679]\\d|2(?:[0-36]\\d|7[0-4])|3(?:[034]\\d|2[09]|70))\\d{4}", [8]], 0, ["30(?:0[1-9]|[15-7]\\d|2[047]|89)\\d{4}", [8]], ["7(?:1(?:0[0-48]|1[0-3679]|3[013]|69|9[0136])|2(?:[02389]\\d|1[18]|7[27-9])|3(?:[0-38]\\d|7[0-369]|9[2357-9])|47\\d|5(?:[178]\\d|5[0-5])|6(?:0[0-7]|2[236-9]|[35]\\d)|7(?:[27]\\d|8[7-9])|8(?:[23689]\\d|7[1-9])|9(?:[025]\\d|6[0-246-8]|7[0-36-9]|8[238]))\\d{4}", [8]]], "00"], HN: ["504", "00", "8\\d{10}|[237-9]\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["[237-9]"]]], 0, 0, 0, 0, 0, 0, [["2(?:2(?:0[0-59]|1[1-9]|[23]\\d|4[02-8]|5[57]|6[2458]|7[0135689]|8[01346-9]|9[0-2])|4(?:0[578]|2[3-59]|3[13-9]|4[0-68]|5[1-3589]|80)|5(?:0[2357-9]|1[1-6]|4[03-58]|5\\d|6[014-69]|7[04]|80)|6(?:[056]\\d|17|2[067]|3[047]|4[0-378]|[78][0-8]|9[01])|7(?:0[5-79]|2[01]|6[46-9]|7[02-9]|8[034]|91)|8(?:79|8[0-357-9]|9[1-57-9]))\\d{4}", [8]], ["[37-9]\\d{7}", [8]], ["8002\\d{7}", [11]]]], HR: ["385", "00", "[2-69]\\d{8}|80\\d{5,7}|[1-79]\\d{7}|6\\d{6}", [7, 8, 9], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["6[01]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{4})(\\d{3})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6|7[245]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-57]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["1\\d{7}|(?:2[0-3]|3[1-5]|4[02-47-9]|5[1-3])\\d{6,7}", [8, 9]], ["9(?:(?:0[1-9]|[12589]\\d)\\d\\d|7(?:[0679]\\d\\d|5(?:[01]\\d|44|55|77|9[5-79])))\\d{4}|98\\d{6}", [8, 9]], ["80\\d{5,7}"], ["6[01459]\\d{6}|6[01]\\d{5}", [7, 8]], ["7[45]\\d{6}", [8]], 0, ["62\\d{6,7}|72\\d{6}", [8, 9]]]], HT: ["509", "00", "[2-589]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[2-589]"]]], 0, 0, 0, 0, 0, 0, [["2(?:2\\d|5[1-5]|81|9[149])\\d{5}"], ["(?:[34]\\d|5[568])\\d{6}"], ["8\\d{7}"], 0, 0, 0, 0, 0, ["9(?:[67][0-4]|8[0-3589]|9\\d)\\d{5}"]]], HU: ["36", "00", "[235-7]\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6|8[2-57-9]|9[2-69]"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "06 $1"]], "06", 0, 0, 0, 0, 0, [["(?:1\\d|[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6[23689]|8[2-57-9]|9[2-69])\\d{6}", [8]], ["(?:[257]0|3[01])\\d{7}", [9]], ["(?:[48]0\\d|680[29])\\d{5}"], ["9[01]\\d{6}", [8]], 0, 0, ["38\\d{7}", [9]], 0, ["21\\d{7}", [9]]]], ID: ["62", "00[89]", "00[1-9]\\d{9,14}|(?:[1-36]|8\\d{5})\\d{6}|00\\d{9}|[1-9]\\d{8,10}|[2-9]\\d{7}", [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["15"]], ["(\\d{2})(\\d{5,9})", "$1 $2", ["2[124]|[36]1"], "(0$1)"], ["(\\d{3})(\\d{5,7})", "$1 $2", ["800"], "0$1"], ["(\\d{3})(\\d{5,8})", "$1 $2", ["[2-79]"], "(0$1)"], ["(\\d{3})(\\d{3,4})(\\d{3})", "$1-$2-$3", ["8[1-35-9]"], "0$1"], ["(\\d{3})(\\d{6,8})", "$1 $2", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["804"], "0$1"], ["(\\d{3})(\\d)(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["80"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1-$2-$3", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["2[124]\\d{7,8}|619\\d{8}|2(?:1(?:14|500)|2\\d{3})\\d{3}|61\\d{5,8}|(?:2(?:[35][1-4]|6[0-8]|7[1-6]|8\\d|9[1-8])|3(?:1|[25][1-8]|3[1-68]|4[1-3]|6[1-3568]|7[0-469]|8\\d)|4(?:0[1-589]|1[01347-9]|2[0-36-8]|3[0-24-68]|43|5[1-378]|6[1-5]|7[134]|8[1245])|5(?:1[1-35-9]|2[25-8]|3[124-9]|4[1-3589]|5[1-46]|6[1-8])|6(?:[25]\\d|3[1-69]|4[1-6])|7(?:02|[125][1-9]|[36]\\d|4[1-8]|7[0-36-9])|9(?:0[12]|1[013-8]|2[0-479]|5[125-8]|6[23679]|7[159]|8[01346]))\\d{5,8}", [7, 8, 9, 10, 11]], ["8[1-35-9]\\d{7,10}", [9, 10, 11, 12]], ["00(?:1803\\d{5,11}|7803\\d{7})|(?:177\\d|800)\\d{5,7}", [8, 9, 10, 11, 12, 13, 14, 15, 16, 17]], ["809\\d{7}", [10]], 0, 0, ["(?:1500|8071\\d{3})\\d{3}", [7, 10]], 0, 0, ["804\\d{7}", [10]]]], IE: ["353", "00", "(?:1\\d|[2569])\\d{6,8}|4\\d{6,9}|7\\d{8}|8\\d{8,9}", [7, 8, 9, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["2[24-9]|47|58|6[237-9]|9[35-9]"], "(0$1)"], ["(\\d{3})(\\d{5})", "$1 $2", ["[45]0"], "(0$1)"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2569]|4[1-69]|7[14]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["81"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["4"], "(0$1)"], ["(\\d{2})(\\d)(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:1\\d|21)\\d{6,7}|(?:2[24-9]|4(?:0[24]|5\\d|7)|5(?:0[45]|1\\d|8)|6(?:1\\d|[237-9])|9(?:1\\d|[35-9]))\\d{5}|(?:23|4(?:[1-469]|8\\d)|5[23679]|6[4-6]|7[14]|9[04])\\d{7}"], ["8(?:22|[35-9]\\d)\\d{6}", [9]], ["1800\\d{6}", [10]], ["15(?:1[2-8]|[2-8]0|9[089])\\d{6}", [10]], ["700\\d{6}", [9]], ["88210[1-9]\\d{4}|8(?:[35-79]5\\d\\d|8(?:[013-9]\\d\\d|2(?:[01][1-9]|[2-9]\\d)))\\d{5}", [10]], ["818\\d{6}", [9]], 0, ["76\\d{7}", [9]], ["18[59]0\\d{6}", [10]]]], IL: ["972", "0(?:0|1(?:05|[2-9]))", "1\\d{6}(?:\\d{3,5})?|[57]\\d{8}|[1-489]\\d{7}", [7, 8, 9, 10, 11, 12], [["(\\d{4})(\\d{3})", "$1-$2", ["125"]], ["(\\d{4})(\\d{2})(\\d{2})", "$1-$2-$3", ["121"]], ["(\\d)(\\d{3})(\\d{4})", "$1-$2-$3", ["[2-489]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1-$2-$3", ["12"]], ["(\\d{4})(\\d{6})", "$1-$2", ["159"]], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3-$4", ["1[7-9]"]], ["(\\d{3})(\\d{1,2})(\\d{3})(\\d{4})", "$1-$2 $3-$4", ["15"]]], "0", 0, 0, 0, 0, 0, [["153\\d{8,9}|29[1-9]\\d{5}|(?:2[0-8]|[3489]\\d)\\d{6}", [8, 11, 12]], ["55(?:4(?:0[0-3]|10|6[015-9])|57[0-289]|8[06][0-2])\\d{4}|5(?:(?:[0-2][02-9]|[36]\\d|[49][2-9]|8[3-7])\\d|5(?:01|2\\d|3[0-3]|4[3-5]|5[0-25689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\d{5}", [9]], ["1(?:255|80[019]\\d{3})\\d{3}", [7, 10]], ["1212\\d{4}|1(?:200|9(?:0[0-2]|19|9\\d))\\d{6}", [8, 10]], 0, ["151\\d{8,9}", [11, 12]], ["1599\\d{6}", [10]], 0, ["7(?:280[01]|38(?:[05]\\d|8[01358])|8(?:33|55|77|81)\\d)\\d{4}|7(?:18|2[23]|3[237]|47|6[258]|7\\d|82|9[2-9])\\d{6}", [9]], ["1700\\d{6}", [10]]]], IM: ["44", "00", "1624\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([25-8]\\d{5})$|0|180020", "1624$1", 0, "74576|(?:16|7[56])24", [["1624(?:230|[5-8]\\d\\d)\\d{3}"], ["76245[06]\\d{4}|7(?:4576|[59]24\\d|624[0-4689])\\d{5}"], ["808162\\d{4}"], ["8(?:440[49]06|72299\\d)\\d{3}|(?:8(?:45|70)|90[0167])624\\d{4}"], ["70\\d{8}"], 0, ["3440[49]06\\d{3}|(?:3(?:08162|3\\d{4}|45624|7(?:0624|2299))|55\\d{4})\\d{4}"], 0, ["56\\d{8}"]]], IN: ["91", "00", "(?:000800|[2-9]\\d\\d)\\d{7}|1\\d{7,12}", [8, 9, 10, 11, 12, 13], [["(\\d{8})", "$1", ["5(?:0|2[23]|3[03]|[67]1|88)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|888)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|8888)"], 0, 1], ["(\\d{4})(\\d{4,5})", "$1 $2", ["180", "1800"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["140"], 0, 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["11|2[02]|33|4[04]|79[1-7]|80[2-46]", "11|2[02]|33|4[04]|79(?:[1-6]|7[19])|80(?:[2-4]|6[0-589])", "11|2[02]|33|4[04]|79(?:[124-6]|3(?:[02-9]|1[0-24-9])|7(?:1|9[1-6]))|80(?:[2-4]|6[0-589])"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["1(?:2[0-249]|3[0-25]|4[145]|[68]|7[1257])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|5[12]|[78]1)|6(?:12|[2-4]1|5[17]|6[13]|80)|7(?:12|3[134]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67)[14]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|674|7(?:(?:3[34]|5[15])[2-6]|61[346]|88[0-8])|8(?:70[2-6]|84[235-7]|91[3-7])|(?:1(?:29|60|8[06])|261|552|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|31)|8(?:16|2[014]|3[126]|6[136]|7[78]|83))[2-7]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12(?:[2-6]|7[0-8])|74[2-7])|7(?:3171|5[15][2-6]|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|8(?:16|2[014]|3[126]|6[136]|7[78]|83)(?:[2-6]|7[19])|(?:1(?:29|60|8[06])|261|552|6(?:[2-4]1|5[17]|6[13]|7(?:1|4[0189])|80)|7(?:12|88[01]))[2-7]"], "0$1", 1], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2[2457-9]|3[2-5]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|3[129]|5[29]|6[02-5]|70)|807", "1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|4[235-7]|5[2-689]|6[24578]|7(?:[23569]|8[0-57-9])|8[1-6])|7(?:1(?:[013-8]|9[6-9])|3(?:17|2[0-49]|9[2-57])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4|5[0-367])|70[13-7])|807[19]", "1(?:[2-479]|5(?:[0236-9]|5[013-9]))|[2-5]|6(?:2(?:84|95)|355|8(?:28[235-7]|3))|73179|807(?:1|9[1-3])|(?:1552|6(?:(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578])\\d|7(?:[23569]\\d|8[0-57-9])|8(?:[14-6]\\d|2[0-79]))|7(?:1(?:[013-8]\\d|9[6-9])|3(?:2[0-49]|9[2-57])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\d|5[0-367])|70[13-7]))[2-7]"], "0$1", 1], ["(\\d{5})(\\d{5})", "$1 $2", ["16|[6-9]"], "0$1", 1], ["(\\d{4})(\\d{2,4})(\\d{4})", "$1 $2 $3", ["18[06]", "18[06]0"], 0, 1], ["(\\d{4})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["18"], 0, 1]], "0", 0, 0, 0, 0, 0, [["271795\\d{4}|(?:2717[2-7]|6828[235-7]|7979[1-6])\\d{5}|(?:271[0-689]|682[0-79]|782[0-6])[2-7]\\d{5}|(?:170[24]|2(?:(?:[02][2-79]|90)\\d|80[13468])|(?:3(?:23|80)|683)\\d|4(?:20[24]|72[2-8])|552[1-7]|79(?:[1-6]\\d|71))\\d{6}|(?:11|33|4[04]|80)[2-7]\\d{7}|(?:342|674|788)(?:[0189][2-7]|[2-7]\\d)\\d{5}|(?:1(?:2[0-249]|3[0-25]|4[145]|[59][14]|6[014]|7[1257]|8[01346])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[13]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[014-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91))[2-7]\\d{6}|(?:1(?:2[35-8]|3[346-9]|4[236-9]|[59][0235-9]|6[235-9]|7[34689]|8[257-9])|2(?:1[134689]|3[24-8]|4[2-8]|5[25689]|6[2-4679]|7[3-79]|8[2-479]|9[235-9])|3(?:01|1[79]|2[1245]|4[5-8]|5[125689]|6[235-7]|7[157-9]|8[2-46-8])|4(?:1[14578]|2[5689]|3[2-467]|5[4-7]|6[35]|73|8[2689]|9[2389])|5(?:[16][146-9]|2[14-8]|3[1346]|4[14-69]|5[46]|7[2-4]|8[2-8]|9[246])|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[14-6])|7(?:1[013-9]|2[0235-9]|3[2679]|4[1-35689]|5[2-46-9]|[67][02-9]|8[013-7]|90)|8(?:1[1357-9]|2[235-8]|3[03-57-9]|4[0-24-9]|5\\d|6[2457-9]|7[1-6]|8[1256]|9[2-4]))\\d[2-7]\\d{5}", [10]], ["(?:6(?:1279|828[01489])|7(?:887[02-9]|9(?:313|79[07-9]))|8(?:079[04-9]|(?:84|91)7[02-8]))\\d{5}|(?:160[01]|6(?:(?:12|[2-4]1|5[17]|6[13]|80)[0189]|7(?:1[0189]|86))|7(?:1(?:2[0189]|9[0-5])|3(?:2[5-8]|[34][017-9]|9[016-9])|5(?:[15][017-9]|2[04-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589])|70[0289]|88[089]|97[02-8])|8(?:0(?:6[67]|7[02-8])|70[017-9]|84[01489]|91[0-289]))\\d{6}|(?:731|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[0189]\\d|7[02-8])\\d{5}|(?:6(?:(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578])\\d|7(?:[23569]\\d|4[0189]|8[0-57-9])|8(?:[14-6]\\d|2[0-79]))|7(?:1(?:[013-8]\\d|9[6-9])|3(?:2[0-49]|9[2-5])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\d|5[0-367])|70[13-7]|881))[0189]\\d{5}|(?:6(?:[09]\\d|1[04679]|2[03689]|3[05-9]|4[0489]|50|6[069]|7[07]|8[7-9])|7(?:[024]\\d|3[05-8]|5[0346-8]|6[6-9]|7[1-9]|8[0-79]|9[089])|8(?:0[01589]|1[0-57-9]|2[235-9]|3[03-57-9]|[45]\\d|6[02457-9]|7[1-69]|8[0-25-9]|9[02-9])|9\\d\\d)\\d{7}", [10]], ["000800\\d{7}|180(?:0\\d{4,9}|3\\d{9})"], ["186[12]\\d{9}", [13]], 0, 0, ["140\\d{7}", [10]], 0, 0, ["1860\\d{7}", [11]]]], IO: ["246", "00", "3\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["3"]]], 0, 0, 0, 0, 0, 0, [["37\\d{5}"], ["38\\d{5}"]]], IQ: ["964", "00", "(?:1|7\\d\\d)\\d{7}|[2-6]\\d{7,8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-6]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"]], "0", 0, 0, 0, 0, 0, [["1\\d{7}|(?:2[13-5]|3[02367]|4[023]|5[03]|6[026])\\d{6,7}", [8, 9]], ["7[3-9]\\d{8}", [10]]]], IR: ["98", "00", "[1-9]\\d{9}|(?:[1-8]\\d\\d|9)\\d{3,4}", [4, 5, 6, 7, 10], [["(\\d{4,5})", "$1", ["96"], "0$1"], ["(\\d{2})(\\d{4,5})", "$1 $2", ["(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])[12689]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[1-8]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])(?:[03-57]\\d{7}|[16]\\d{3}(?:\\d{4})?|[289]\\d{3}(?:\\d(?:\\d{3})?)?)|94(?:000[09]|(?:12\\d|30[0-2])\\d|2(?:[02689]0\\d|121)|4(?:111|40\\d))\\d{4}", [6, 7, 10]], ["9(?:(?:0[0-5]|[13]\\d|2[0-3])\\d\\d|9(?:[0-46]\\d\\d|5(?:10|5\\d)|8(?:[12]\\d|3[0-2]|88)|9(?:[01359]\\d|21|69|77|8[7-9])))\\d{5}", [10]], 0, 0, 0, 0, ["96(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19])", [4, 5]]]], IS: ["354", "00|1(?:0(?:01|[12]0)|100)", "(?:38\\d|[4-9])\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["[4-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["3"]]], 0, 0, 0, 0, 0, 0, [["(?:4(?:1[0-24-69]|2[0-7]|[37][0-8]|4[0-24589]|5[0-68]|6\\d|8[0-36-8])|5(?:05|[156]\\d|2[02578]|3[0-579]|4[03-7]|7[0-2578]|8[0-35-9]|9[013-689])|872)\\d{4}", [7]], ["(?:38[589]\\d\\d|6(?:1[1-8]|2[0-6]|3[026-9]|4[014679]|5[0159]|6[0-69]|70|8[06-8]|9\\d)|7(?:5[057]|[6-9]\\d)|8(?:2[0-59]|[3-69]\\d|8[238]))\\d{4}"], ["80[0-8]\\d{4}", [7]], ["90(?:0\\d|1[5-79]|2[015-79]|3[135-79]|4[125-7]|5[25-79]|7[1-37]|8[0-35-7])\\d{3}", [7]], 0, ["(?:689|8(?:7[18]|80)|95[48])\\d{4}", [7]], ["809\\d{4}", [7]], 0, ["49[0-24-79]\\d{4}", [7]]], "00"], IT: ["39", "00", "0\\d{5,11}|1\\d{8,10}|3(?:[0-8]\\d{7,10}|9\\d{7,8})|(?:43|55|70)\\d{8}|8\\d{5}(?:\\d{2,4})?", [6, 7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{4,6})", "$1 $2", ["0[26]"]], ["(\\d{3})(\\d{3,6})", "$1 $2", ["0[13-57-9][0159]|8(?:03|4[17]|9[2-5])", "0[13-57-9][0159]|8(?:03|4[17]|9(?:2|3[04]|[45][0-4]))"]], ["(\\d{4})(\\d{2,6})", "$1 $2", ["0(?:[13-579][2-46-8]|8[236-8])"]], ["(\\d{4})(\\d{4})", "$1 $2", ["894"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[26]|5"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1(?:44|[679])|[378]|43"]], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[13-57-9][0159]|14"]], ["(\\d{2})(\\d{4})(\\d{5})", "$1 $2 $3", ["0[26]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["[03]"]]], 0, 0, 0, 0, 0, 0, [["0(?:669[0-79]\\d{1,6}|831\\d{2,8})|0(?:1(?:[0159]\\d|[27][1-5]|31|4[1-4]|6[1356]|8[2-57])|2\\d\\d|3(?:[0159]\\d|2[1-4]|3[12]|[48][1-6]|6[2-59]|7[1-7])|4(?:[0159]\\d|[23][1-9]|4[245]|6[1-5]|7[1-4]|81)|5(?:[0159]\\d|2[1-5]|3[2-6]|4[1-79]|6[4-6]|7[1-578]|8[3-8])|6(?:[0-57-9]\\d|6[0-8])|7(?:[0159]\\d|2[12]|3[1-7]|4[2-46]|6[13569]|7[13-6]|8[1-59])|8(?:[0159]\\d|2[3-578]|3[2356]|[6-8][1-5])|9(?:[0159]\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\d{2,7}"], ["3[2-9]\\d{7,8}|(?:31|43)\\d{8}", [9, 10]], ["80(?:0\\d{3}|3)\\d{3}", [6, 9]], ["(?:0878\\d{3}|89(?:2\\d|3[04]|4(?:[0-4]|[5-9]\\d\\d)|5[0-4]))\\d\\d|(?:1(?:44|6[346])|89(?:38|5[5-9]|9))\\d{6}", [6, 8, 9, 10]], ["1(?:78\\d|99)\\d{6}", [9, 10]], ["3[2-8]\\d{9,10}", [11, 12]], 0, 0, ["55\\d{8}", [10]], ["84(?:[08]\\d{3}|[17])\\d{3}", [6, 9]]]], JE: ["44", "00", "1534\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([0-24-8]\\d{5})$|0|180020", "1534$1", 0, 0, [["1534[0-24-8]\\d{5}"], ["7(?:(?:(?:50|82)9|937)\\d|7(?:00[378]|97\\d))\\d{5}"], ["80(?:07(?:35|81)|8901)\\d{4}"], ["(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\d{4}"], ["701511\\d{4}"], 0, ["(?:3(?:0(?:07(?:35|81)|8901)|3\\d{4}|4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|55\\d{4})\\d{4}"], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}"], ["56\\d{8}"]]], JM: ["1", "011", "(?:[58]\\d\\d|658|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "658|876", [["8766060\\d{3}|(?:658(?:2(?:[5-8]\\d|9[0-46-9])|[3-9]\\d\\d)|876(?:52[35]|6(?:0[1-3579]|1[0235-9]|[23]\\d|40|5[06]|6[2-589]|7[0-25-9]|8[04]|9[4-9])|7(?:0[2-689]|[1-6]\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\d|9[2-468])))\\d{4}"], ["(?:6582(?:[0-4]\\d|95)|876(?:2(?:0[1-9]|[13-9]\\d|2[013-9])|[348]\\d\\d|5(?:0[1-9]|[1-9]\\d)|6(?:4[89]|6[67])|7(?:0[07]|7\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579])))\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], JO: ["962", "00", "(?:(?:[2689]|7\\d)\\d|32|427|53)\\d{6}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2356]|87"], "(0$1)"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["70"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[47]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["87(?:000|90[01])\\d{3}|(?:2(?:6(?:2[0-35-9]|3[0-578]|4[24-7]|5[0-24-8]|[6-8][023]|9[0-3])|7(?:0[1-79]|10|2[014-7]|3[0-689]|4[019]|5[0-3578]))|32(?:0[1-69]|1[1-35-7]|2[024-7]|3\\d|4[0-3]|[5-7][023])|53(?:0[0-3]|[13][023]|2[0-59]|49|5[0-35-9]|6[15]|7[45]|8[1-6]|9[0-36-9])|6(?:2(?:[05]0|22)|3(?:00|33)|4(?:0[0-25]|1[2-7]|2[0569]|[38][07-9]|4[025689]|6[0-589]|7\\d|9[0-2])|5(?:[01][056]|2[034]|3[0-57-9]|4[178]|5[0-69]|6[0-35-9]|7[1-379]|8[0-68]|9[0239]))|87(?:20|7[078]|99))\\d{4}", [8]], ["(?:427|7(?:11|[29]\\d|[78][0-25-9]))\\d{6}", [9]], ["80\\d{6}", [8]], ["9\\d{7}", [8]], ["70\\d{7}", [9]], 0, ["8(?:10|8\\d)\\d{5}", [8]], ["74(?:66|77)\\d{5}", [9]], 0, ["85\\d{6}", [8]]]], JP: ["81", "010", "00[1-9]\\d{6,14}|[25-9]\\d{9}|(?:00|[1-9]\\d\\d)\\d{6}", [8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3", ["(?:12|57|99)0"], "0$1"], ["(\\d{4})(\\d)(\\d{4})", "$1-$2-$3", ["1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51)|9(?:80|9[16])", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:76|97)9|7468|8(?:3(?:8[7-9]|96)|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:769|979[2-69])|7468|8(?:3(?:8[7-9]|96[2457-9])|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["60"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2-$3", ["3|4(?:2[09]|7[01])|6[1-9]", "3|4(?:2(?:0|9[02-69])|7(?:0[019]|1))|6[1-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[0459]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[26-9]|49|51|6|7[0-468]|8[68]|9[019])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9[1-489])", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9[19])|62|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9]|9[29])|5(?:2|3(?:[045]|9[0-8])|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|3(?:[29]|60)|49|51|6(?:[0-24]|36|5[0-3589]|7[23]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:25[0468]|422|838)[01]|(?:47[59]|59[89]|8(?:6[68]|9))[019]", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3(?:[045]|9(?:[0-58]|6[4-9]|7[0-35689]))|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|60|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[2-57-9]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|7(?:2[2-468]|3[78])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:8294|96)[1-3]|2(?:57|93)[015-9]|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3", ["[14]|[289][2-9]|5[3-9]|7[2-4679]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["800"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[25-9]"], "0$1"]], "0", 0, "(000[2569]\\d{4,6})$|(?:(?:003768)0?)|0", "$1", 0, 0, [["(?:1(?:1[235-8]|2[3-6]|3[3-9]|4[2-6]|[58][2-8]|6[2-7]|7[2-9]|9[1-9])|(?:2[2-9]|[36][1-9])\\d|4(?:[2-578]\\d|6[02-8]|9[2-59])|5(?:[2-589]\\d|6[1-9]|7[2-8])|7(?:[25-9]\\d|3[4-9]|4[02-9])|8(?:[2679]\\d|3[2-9]|4[5-9]|5[1-9]|8[03-9])|9(?:[2-58]\\d|[679][1-9]))\\d{6}", [9]], ["[6-9]0[1-9]\\d{7}", [10]], ["00777(?:[01]|5\\d)\\d\\d|(?:00(?:7778|882[1245])|(?:120|800\\d)\\d\\d)\\d{4}|00(?:37|66|78)\\d{6,13}"], ["990\\d{6}", [9]], ["60\\d{7}", [9]], 0, ["570\\d{6}", [9]], ["20\\d{8}", [10]], ["50[1-9]\\d{7}", [10]]]], KE: ["254", "000", "(?:[17]\\d\\d|900)\\d{6}|(?:2|80)0\\d{6,7}|[4-6]\\d{6,8}", [7, 8, 9, 10], [["(\\d{2})(\\d{5,7})", "$1 $2", ["[24-6]"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["[17]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:4[245]|5[1-79]|6[01457-9])\\d{5,7}|(?:4[136]|5[08]|62)\\d{7}|(?:[24]0|66)\\d{6,7}", [7, 8, 9]], ["(?:1(?:0[0-8]|[18]\\d|2[014]|30|4[0-5])|7\\d\\d)\\d{6}", [9]], ["800[02-8]\\d{5,6}", [9, 10]], ["900[02-9]\\d{5}", [9]]]], KG: ["996", "00", "8\\d{9}|[235-9]\\d{8}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["3(?:1[346]|[24-79])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-79]|88"], "0$1"], ["(\\d{3})(\\d{3})(\\d)(\\d{2,3})", "$1 $2 $3 $4", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["312(?:5[0-79]\\d|9(?:[0-689]\\d|7[0-24-9]))\\d{3}|(?:3(?:1(?:2[0-46-8]|3[1-9]|47|[56]\\d)|2(?:22|3[0-479]|6[0-7])|4(?:22|5[6-9]|6\\d)|5(?:22|3[4-7]|59|6\\d)|6(?:22|5[35-7]|6\\d)|7(?:22|3[468]|4[1-9]|59|[67]\\d)|9(?:22|4[1-8]|6\\d))|6(?:09|12|2[2-4])\\d)\\d{5}", [9]], ["312(?:58\\d|973)\\d{3}|(?:2(?:0[0-35]|2\\d)|5[0-24-7]\\d|600|7(?:[07]\\d|55)|88[08]|9(?:12|9[05-9]))\\d{6}", [9]], ["800\\d{6,7}"]]], KH: ["855", "00[14-9]", "1\\d{9}|[1-9]\\d{7,8}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0", 0, 0, 0, 0, 0, [["23(?:4(?:[2-4]|[56]\\d)|[568]\\d\\d)\\d{4}|23[236-9]\\d{5}|(?:2[4-6]|3[2-6]|4[2-4]|[5-7][2-5])(?:(?:[237-9]|4[56]|5\\d)\\d{5}|6\\d{5,6})", [8, 9]], ["(?:(?:1[28]|3[18]|9[67])\\d|6[016-9]|7(?:[07-9]|[16]\\d)|8(?:[013-79]|8\\d))\\d{6}|(?:1\\d|9[0-57-9])\\d{6}|(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])48\\d{5}", [8, 9]], ["1800(?:1\\d|2[019])\\d{4}", [10]], ["1900(?:1\\d|2[09])\\d{4}", [10]]]], KI: ["686", "00", "(?:[37]\\d|6[0-79])\\d{6}|(?:[2-48]\\d|50)\\d{3}", [5, 8], 0, "0", 0, 0, 0, 0, 0, [["(?:[24]\\d|3[1-9]|50|65(?:02[12]|12[56]|22[89]|[3-5]00)|7(?:27\\d\\d|3100|5(?:02[12]|12[56]|22[89]|[34](?:00|81)|500))|8[0-5])\\d{3}"], ["(?:6200[01]|7(?:310[1-9]|5(?:02[03-9]|12[0-47-9]|22[0-7]|[34](?:0[1-9]|8[02-9])|50[1-9])))\\d{3}|(?:63\\d\\d|7(?:(?:[0146-9]\\d|2[0-689])\\d|3(?:[02-9]\\d|1[1-9])|5(?:[0-2][013-9]|[34][1-79]|5[1-9]|[6-9]\\d)))\\d{4}", [8]], 0, 0, 0, 0, 0, 0, ["30(?:0[01]\\d\\d|12(?:11|20))\\d\\d", [8]]]], KM: ["269", "00", "[3478]\\d{6}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[3478]"]]], 0, 0, 0, 0, 0, 0, [["7[4-7]\\d{5}"], ["[34]\\d{6}"], 0, ["8\\d{6}"]]], KN: ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "869$1", 0, "869", [["869(?:2(?:29|36)|302|4(?:6[015-9]|70)|56[5-7])\\d{4}"], ["869(?:48[89]|55[6-8]|66\\d|76[02-7])\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], KP: ["850", "00|99", "85\\d{6}|(?:19\\d|[2-7])\\d{7}", [8, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:(?:195|2)\\d|3[19]|4[159]|5[37]|6[17]|7[39]|85)\\d{6}"], ["19[1-3]\\d{7}", [10]]]], KR: ["82", "00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))", "00[1-9]\\d{8,11}|(?:[12]|5\\d{3})\\d{7}|[13-6]\\d{9}|(?:[1-6]\\d|80)\\d{7}|[3-6]\\d{4,5}|(?:00|7)0\\d{8}", [5, 6, 8, 9, 10, 11, 12, 13, 14], [["(\\d{2})(\\d{3,4})", "$1-$2", ["(?:3[1-3]|[46][1-4]|5[1-5])1"], "0$1"], ["(\\d{4})(\\d{4})", "$1-$2", ["1"]], ["(\\d)(\\d{3,4})(\\d{4})", "$1-$2-$3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[36]0|8"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1-$2-$3", ["[1346]|5[1-5]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{2})(\\d{5})(\\d{4})", "$1-$2-$3", ["5"], "0$1"]], "0", 0, "0(8(?:[1-46-8]|5\\d\\d))?", 0, 0, 0, [["(?:2|3[1-3]|[46][1-4]|5[1-5])[1-9]\\d{6,7}|(?:3[1-3]|[46][1-4]|5[1-5])1\\d{2,3}", [5, 6, 8, 9, 10]], ["1(?:05(?:[0-8]\\d|9[0-6])|22[13]\\d)\\d{4,5}|1(?:0[0-46-9]|[16-9]\\d|2[013-9])\\d{6,7}", [9, 10]], ["00(?:308\\d{6,7}|798\\d{7,9})|(?:00368|[38]0)\\d{7}", [9, 11, 12, 13, 14]], ["60[2-9]\\d{6}", [9]], ["50\\d{8,9}", [10, 11]], 0, ["1(?:5(?:22|33|44|66|77|88|99)|6(?:[07]0|44|6[0168]|88)|8(?:00|33|55|77|99))\\d{4}", [8]], ["15\\d{7,8}", [9, 10]], ["70\\d{8}", [10]]]], KW: ["965", "00", "18\\d{5}|(?:[2569]\\d|41)\\d{6}", [7, 8], [["(\\d{4})(\\d{3,4})", "$1 $2", ["[169]|2(?:[235]|4[1-35-9])|52"]], ["(\\d{3})(\\d{5})", "$1 $2", ["[245]"]]], 0, 0, 0, 0, 0, 0, [["2(?:[23]\\d\\d|4(?:[1-35-9]\\d|44)|5(?:0[034]|[2-46]\\d|5[1-3]|7[1-7]))\\d{4}", [8]], ["(?:41\\d\\d|5(?:(?:[05]\\d|1[0-7]|6[56])\\d|2(?:22|5[25])|7(?:55|77)|88[58])|6(?:(?:0[034679]|5[015-9]|6\\d)\\d|1(?:00|11|6[16])|2[26]2|3[36]3|4[46]4|7(?:0[013-9]|[67]\\d)|8[68]8|9(?:[069]\\d|3[039]))|9(?:(?:[04679]\\d|8[057-9])\\d|1(?:00|1[01]|99)|2(?:00|2\\d)|3(?:00|3[03])|5(?:00|5\\d)))\\d{4}", [8]], ["18\\d{5}", [7]]]], KY: ["1", "011", "(?:345|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "345$1", 0, "345", [["345(?:2(?:22|3[23]|44|66)|333|444|6(?:23|38|40)|7(?:30|4[35-79]|6[6-9]|77)|8(?:00|1[45]|4[89]|88)|9(?:14|4[035-9]))\\d{4}"], ["345(?:32[1-9]|4(?:1[2-6]|2[0-4])|5(?:1[67]|2[5-79]|4[6-9]|50|76)|649|82[56]|9(?:1[679]|2[2-9]|3[06-9]|90))\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["(?:345976|900[2-9]\\d\\d)\\d{4}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], KZ: ["7", "810", "8\\d{13}|[78]\\d{9}", [10, 14], 0, "8", 0, 0, 0, 0, "7", [["7(?:1(?:0(?:[23]\\d|4[0-3]|59|63)|1(?:[23]\\d|4[0-79]|59)|2(?:[23]\\d|59)|3(?:2\\d|3[0-79]|4[0-35-9]|59)|4(?:[24]\\d|3[013-9]|5[1-9]|97)|5(?:2\\d|3[1-9]|4[0-7]|59)|6(?:[2-4]\\d|5[19]|61)|72\\d|8(?:[27]\\d|3[1-46-9]|4[0-5]|59))|2(?:1(?:[23]\\d|4[46-9]|5[3469])|2(?:2\\d|3[0679]|46|5[12679])|3(?:[2-4]\\d|5[139])|4(?:2\\d|3[1-35-9]|59)|5(?:[23]\\d|4[0-8]|59|61)|6(?:2\\d|3[1-9]|4[0-4]|59)|7(?:[2379]\\d|40|5[279])|8(?:[23]\\d|4[0-3]|59)|9(?:2\\d|3[124578]|59)))\\d{5}", [10]], ["7(?:0[0-25-8]|47|6[0-4]|7[15-8]|85)\\d{7}", [10]], ["8(?:00|108\\d{3})\\d{7}"], ["809\\d{7}", [10]], ["808\\d{7}", [10]], 0, 0, 0, ["751\\d{7}", [10]]], "8~10"], LA: ["856", "00", "[23]\\d{9}|3\\d{8}|(?:[235-8]\\d|41)\\d{6}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2[13]|3[14]|[4-8]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["3"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:2[13]|[35-7][14]|41|8[1468])\\d{6}", [8]], ["(?:20(?:[23579]\\d|8[78])|30[24]\\d)\\d{6}|30\\d{7}", [9, 10]]]], LB: ["961", "00", "[27-9]\\d{7}|[13-9]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[13-69]|7(?:[2-57]|62|8[0-6]|9[04-9])|8[02-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27-9]"]]], "0", 0, 0, 0, 0, 0, [["7(?:62|8[0-6]|9[04-9])\\d{4}|(?:[14-69]\\d|2(?:[14-69]\\d|[78][1-9])|7[2-57]|8[02-9])\\d{5}"], ["(?:(?:3|81)\\d|7(?:[01]\\d|6[013-9]|8[7-9]|9[0-4]))\\d{5}"], 0, ["9[01]\\d{6}", [8]], 0, 0, 0, 0, 0, ["80\\d{6}", [8]]]], LC: ["1", "011", "(?:[58]\\d\\d|758|900)\\d{7}", [10], 0, "1", 0, "([2-8]\\d{6})$|1", "758$1", 0, "758", [["758(?:234|4(?:30|5\\d|6[2-9]|8[0-2])|57[0-2]|(?:63|75)8)\\d{4}"], ["758(?:28[4-7]|384|4(?:6[01]|8[4-9])|5(?:1[89]|20|84)|7(?:1[2-9]|2\\d|3[0-3])|812)\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], LI: ["423", "00", "[68]\\d{8}|(?:[2378]\\d|90)\\d{5}", [7, 9], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2379]|8(?:0[09]|7)", "[2379]|8(?:0(?:02|9)|7)"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["69"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]], "0", 0, "(1001)|0", 0, 0, 0, [["(?:2(?:01|1[27]|2[024]|3\\d|6[02-578]|96)|3(?:[24]0|33|7[0135-7]|8[048]|9[0269]))\\d{4}", [7]], ["(?:6(?:(?:4[5-9]|5\\d)\\d|6(?:[024-68]\\d|1[01]|3[7-9]|7[02]))\\d|7(?:[37-9]\\d|42|56))\\d{4}"], ["8002[28]\\d\\d|80(?:05\\d|9)\\d{4}"], ["90(?:02[258]|1(?:23|3[14])|66[136])\\d\\d", [7]], 0, ["697(?:42|56|[78]\\d)\\d{4}", [9]], ["870(?:28|87)\\d\\d", [7]]]], LK: ["94", "00", "[1-9]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[1-689]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:12[2-9]|602|8[12]\\d|9(?:1\\d|22|9[245]))\\d{6}|(?:11|2[13-7]|3[1-8]|4[157]|5[12457]|6[35-7])[2-57]\\d{6}"], ["7(?:[0-25-8]\\d|4[0-4])\\d{6}"], 0, 0, 0, 0, ["1973\\d{5}"]]], LR: ["231", "00", "(?:[2457]\\d|33|88)\\d{7}|(?:2\\d|[4-6])\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["4[67]|[56]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-578]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["2\\d{7}", [8]], ["(?:(?:(?:22|33)0|555|7(?:6[01]|7\\d)|88\\d)\\d|4(?:240|[67]))\\d{5}|[56]\\d{6}", [7, 9]], 0, ["332(?:02|[34]\\d)\\d{4}", [9]]]], LS: ["266", "00", "(?:[256]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2568]"]]], 0, 0, 0, 0, 0, 0, [["2\\d{7}"], ["[56]\\d{7}"], ["800[1256]\\d{4}"]]], LT: ["370", "00", "(?:[3469]\\d|52|[78]0)\\d{6}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["52[0-7]"], "(0-$1)", 1], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0 $1", 1], ["(\\d{2})(\\d{6})", "$1 $2", ["37|4(?:[15]|6[1-8])"], "(0-$1)", 1], ["(\\d{3})(\\d{5})", "$1 $2", ["[3-6]"], "(0-$1)", 1]], "0", 0, "[08]", 0, 0, 0, [["(?:3[1478]|4[124-6]|52)\\d{6}"], ["6\\d{7}"], ["80[02]\\d{5}"], ["9(?:0[0239]|10)\\d{5}"], ["70[05]\\d{5}"], 0, ["70[67]\\d{5}"], 0, ["[89]01\\d{5}"], ["808\\d{5}"]]], LU: ["352", "00", "35[013-9]\\d{4,8}|6\\d{8}|35\\d{2,4}|(?:[2457-9]\\d|3[0-46-9])\\d{2,9}", [4, 5, 6, 7, 8, 9, 10, 11], [["(\\d{2})(\\d{3})", "$1 $2", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["20[2-689]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4", ["20"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,5})", "$1 $2 $3 $4", ["[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]"]], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["80[01]|90[015]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["20"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4 $5", ["20"]]], 0, 0, "(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\d)", 0, 0, 0, [["(?:35[013-9]|80[2-9]|90[89])\\d{1,8}|(?:2[2-9]|3[0-46-9]|[457]\\d|8[13-9]|9[2-579])\\d{2,9}"], ["6(?:[26][18]|5[1568]|7[189]|81|9[128])\\d{6}", [9]], ["800\\d{5}", [8]], ["90[015]\\d{5}", [8]], 0, 0, 0, 0, ["20(?:1\\d{5}|[2-689]\\d{1,7})", [4, 5, 6, 7, 8, 9, 10]], ["801\\d{5}", [8]]]], LV: ["371", "00", "(?:[268]\\d|78|90)\\d{6}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2679]|8[01]"]]], 0, 0, 0, 0, 0, 0, [["6\\d{7}"], ["2333[0-8]\\d{3}|2(?:[0-24-9]\\d\\d|3(?:0[07]|[14-9]\\d|2[02-9]|3[0-24-9]))\\d{4}"], ["80\\d{6}"], ["90\\d{6}"], 0, 0, 0, 0, 0, ["81\\d{6}"]]], LY: ["218", "00", "[2-9]\\d{8}", [9], [["(\\d{2})(\\d{7})", "$1-$2", ["[2-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:2(?:0[56]|[1-6]\\d|7[124579]|8[124])|3(?:1\\d|2[2356])|4(?:[17]\\d|2[1-357]|5[2-4]|8[124])|5(?:[1347]\\d|2[1-469]|5[13-5]|8[1-4])|6(?:[1-479]\\d|5[2-57]|8[1-5])|7(?:[13]\\d|2[13-79])|8(?:[124]\\d|5[124]|84))\\d{6}"], ["9[1-6]\\d{7}"]]], MA: ["212", "00", "[5-8]\\d{8}", [9], [["(\\d{4})(\\d{5})", "$1-$2", ["892"], "0$1"], ["(\\d{2})(\\d{7})", "$1-$2", ["8(?:0[0-7]|9)"], "0$1"], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[5-8]"], "0$1"]], "0", 0, 0, 0, 0, "[5-8]", [["5(?:(?:18|4[0679]|5[03])\\d|2(?:[0-25-79]\\d|3[1-578]|4[02-46-8]|8[0235-9])|3(?:[0-47]\\d|5[02-9]|6[02-8]|8[014-9]|9[3-9]))\\d{5}"], ["(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[016-8]\\d|2[0-8]|3[01]|5[0-5]))\\d{6}"], ["80[0-7]\\d{6}"], ["89\\d{7}"], 0, 0, 0, 0, ["(?:592(?:4[0-2]|93)|80[89]\\d\\d)\\d{4}"]]], MC: ["377", "00", "(?:[3489]|[67]\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["4"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[389]"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[67]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:870|9[2-47-9]\\d)\\d{5}", [8]], ["4(?:[46]\\d|5[1-9])\\d{5}|(?:3|[67]\\d)\\d{7}"], ["(?:800|90\\d)\\d{5}", [8]]]], MD: ["373", "00", "(?:[235-7]\\d|[89]0)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["22|3"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[25-7]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:(?:2[1-9]|3[1-79])\\d|5(?:33|5[257]))\\d{5}"], ["562\\d{5}|(?:6\\d|7[16-9])\\d{6}"], ["800\\d{5}"], ["90[056]\\d{5}"], 0, 0, ["803\\d{5}"], 0, ["3[08]\\d{6}"], ["808\\d{5}"]]], ME: ["382", "00", "(?:20|[3-79]\\d)\\d{6}|80\\d{6,7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:20[2-8]|3(?:[0-2][2-7]|3[24-7])|4(?:0[2-467]|1[2467])|5(?:0[2467]|1[24-7]|2[2-467]))\\d{5}", [8]], ["6(?:[07-9]\\d|3[024]|6[0-25])\\d{5}", [8]], ["80(?:[0-2578]|9\\d)\\d{5}"], ["9(?:4[1568]|5[178])\\d{5}", [8]], 0, 0, ["77[1-9]\\d{5}", [8]], 0, ["78[1-49]\\d{5}", [8]]]], MF: ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["(?:59(?:0(?:0[079]|[14]3|[27][79]|3[03-7]|5[0-268]|87)|87\\d)|80[6-9]\\d\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], MG: ["261", "00", "[23]\\d{8}", [9], [["(\\d{2})(\\d{2})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0", 0, "([24-9]\\d{6})$|0", "20$1", 0, 0, [["2072[29]\\d{4}|20(?:2\\d|4[47]|5[3467]|6[279]|7[356]|8[268]|9[2457])\\d{5}"], ["3[2-9]\\d{7}"], 0, 0, 0, 0, 0, 0, ["22\\d{7}"]]], MH: ["692", "011", "329\\d{4}|(?:[256]\\d|45)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-6]"]]], "1", 0, 0, 0, 0, 0, [["(?:247|528|625)\\d{4}"], ["(?:(?:23|54)5|329|45[35-8])\\d{4}"], 0, 0, 0, 0, 0, 0, ["635\\d{4}"]]], MK: ["389", "00", "[2-578]\\d{7}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2|34[47]|4(?:[37]7|5[47]|64)"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[347]"], "0$1"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[58]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:(?:2(?:62|77)0|3444)\\d|4[56]440)\\d{3}|(?:34|4[357])700\\d{3}|(?:2(?:[0-3]\\d|5[0-578]|6[01]|82)|3(?:1[3-68]|[23][2-68]|4[23568])|4(?:[23][2-68]|4[3-68]|5[2568]|6[25-8]|7[24-68]|8[4-68]))\\d{5}"], ["7(?:3555|(?:474|9[019]7)7)\\d{3}|7(?:[0-25-8]\\d\\d|3(?:[1-478]\\d|6[01])|4(?:2\\d|60|7[01578])|9(?:[2-4]\\d|5[01]|7[015]))\\d{4}"], ["800\\d{5}"], ["5\\d{7}"], 0, 0, 0, 0, 0, ["8(?:0[1-9]|[1-9]\\d)\\d{5}"]]], ML: ["223", "00", "[24-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-9]"]]], 0, 0, 0, 0, 0, 0, [["2(?:07[0-8]|12[67])\\d{4}|(?:2(?:02|1[4-689])|4(?:0[0-4]|4[1-69]))\\d{5}"], ["2(?:0(?:01|79)|17\\d)\\d{4}|(?:5[0-3]|[679]\\d|8[2-59])\\d{6}"], ["80\\d{6}"]]], MM: ["95", "00", "1\\d{5,7}|95\\d{6}|(?:[4-7]|9[0-46-9])\\d{6,8}|(?:2|8\\d)\\d{5,8}", [6, 7, 8, 9, 10], [["(\\d)(\\d{2})(\\d{3})", "$1 $2 $3", ["16|2"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["4(?:[2-46]|5[3-5])|5|6(?:[1-689]|7[235-7])|7(?:[0-4]|5[2-7])|8[1-5]|(?:60|86)[23]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[12]|452|678|86", "[12]|452|6788|86"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[4-7]|8[1-35]"], "0$1"], ["(\\d)(\\d{3})(\\d{4,6})", "$1 $2 $3", ["9(?:2[0-4]|[35-9]|4[137-9])"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["92"], "0$1"], ["(\\d)(\\d{5})(\\d{4})", "$1 $2 $3", ["9"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:1(?:(?:12|[28]\\d|3[56]|7[3-6]|9[0-6])\\d|4(?:2[29]|7[0-2]|83)|6)|2(?:2(?:00|8[34])|4(?:0\\d|22|7[0-2]|83)|51\\d\\d)|4(?:2(?:2\\d\\d|48[013])|3(?:20\\d|4(?:70|83)|56)|420\\d|5(?:2\\d|470))|6(?:0(?:[23]|88\\d)|(?:124|[56]2\\d)\\d|2472|3(?:20\\d|470)|4(?:2[04]\\d|472)|7(?:3\\d\\d|4[67]0|8(?:[01459]\\d|8))))\\d{4}|5(?:2(?:2\\d{5,6}|47[02]\\d{4})|(?:3472|4(?:2(?:1|86)|470)|522\\d|6(?:20\\d|483)|7(?:20\\d|48[01])|8(?:20\\d|47[02])|9(?:20\\d|470))\\d{4})|7(?:(?:0470|4(?:25\\d|470)|5(?:202|470|96\\d))\\d{4}|1(?:20\\d{4,5}|4(?:70|83)\\d{4}))|8(?:1(?:2\\d{5,6}|4(?:10|7[01]\\d)\\d{3})|2(?:2\\d{5,6}|(?:320|490\\d)\\d{3})|(?:3(?:2\\d\\d|470)|4[24-7]|5(?:(?:2\\d|51)\\d|4(?:[1-35-9]\\d|4[0-57-9]))|6[23])\\d{4})|(?:1[2-6]\\d|4(?:2[24-8]|3[2-7]|[46][2-6]|5[3-5])|5(?:[27][2-8]|3[2-68]|4[24-8]|5[23]|6[2-4]|8[24-7]|9[2-7])|6(?:[19]20|42[03-6]|(?:52|7[45])\\d)|7(?:[04][24-8]|[15][2-7]|22|3[2-4])|8(?:1[2-689]|2[2-8]|(?:[35]2|64)\\d))\\d{4}|25\\d{5,6}|(?:2[2-9]|6(?:1[2356]|[24][2-6]|3[24-6]|5[2-4]|6[2-8]|7[235-7]|8[245]|9[24])|8(?:3[24]|5[245]))\\d{4}", [6, 7, 8, 9]], ["(?:17[01]|9(?:2(?:[0-4]|[56]\\d\\d)|(?:3(?:[0-36]|4\\d)|(?:6\\d|8[89]|9[4-8])\\d|7(?:3|40|[5-9]\\d))\\d|4(?:(?:[0245]\\d|[1379])\\d|88)|5[0-6])\\d)\\d{4}|9[69]1\\d{6}|9(?:[68]\\d|9[089])\\d{5}", [7, 8, 9, 10]], ["80080(?:0[1-9]|2\\d)\\d{3}", [10]], 0, 0, 0, 0, 0, ["1333\\d{4}", [8]]]], MN: ["976", "001", "[12]\\d{7,9}|[5-9]\\d{7}", [8, 9, 10], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["11|2[16]"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[5-9]"]], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[12]2[1-3]"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["[12](?:27|3[2-8]|4[2-68]|5[1-4689])", "[12](?:27|3[2-8]|4[2-68]|5[1-4689])[0-3]"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["[12]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["[12](?:2[1-3]|(?:3[2-8]|4[2-68]|5[1-4689])\\d)\\d{5,6}|7(?:0(?:[0-5]\\d|7[078]|80)|128)\\d{4}|[12]27\\d{6}|(?:11|2[16]|5[368])\\d{6}"], ["(?:87[01]|92[0139])\\d{5}|(?:5[05]|6[069]|7[28]|8[0135689]|9[013-9])\\d{6}", [8]], 0, 0, 0, 0, 0, 0, ["712[0-79]\\d{4}|7(?:1[013-9]|[5-79]\\d)\\d{5}", [8]]]], MO: ["853", "00", "0800\\d{3}|(?:28|[68]\\d)\\d{6}", [7, 8], [["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[268]"]]], 0, 0, 0, 0, 0, 0, [["(?:28[2-9]|8(?:11|[2-57-9]\\d))\\d{5}", [8]], ["6800[0-79]\\d{3}|6(?:[235]\\d\\d|6(?:0[0-5]|[1-9]\\d)|8(?:0[1-9]|[14-8]\\d|2[5-9]|[39][0-4]))\\d{4}", [8]], ["0800\\d{3}", [7]]]], MP: ["1", "011", "[58]\\d{9}|(?:67|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "670$1", 0, "670", [["670(?:2(?:3[3-7]|56|8[4-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\d{4}"], [""], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], MQ: ["596", "00", "7091\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]|8(?:0[6-9]|[36])"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:59(?:6(?:[03-7]\\d|1[05]|2[7-9]|8[0-39]|9[04-9])|89\\d)|80[6-9]\\d\\d|9(?:477[6-9]|767[4589]))\\d{4}"], ["(?:69[67]\\d\\d|7091[0-3])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:397[0-3]|477[0-5]|76(?:6\\d|7[0-367]))\\d{4}"]]], MR: ["222", "00", "(?:[2-4]\\d\\d|800)\\d{5}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-48]"]]], 0, 0, 0, 0, 0, 0, [["(?:25[08]|35\\d|45[1-7])\\d{5}"], ["[2-4][0-46-9]\\d{6}"], ["800\\d{5}"]]], MS: ["1", "011", "(?:[58]\\d\\d|664|900)\\d{7}", [10], 0, "1", 0, "([34]\\d{6})$|1", "664$1", 0, "664", [["6644(?:1[0-3]|91)\\d{4}"], ["664(?:3(?:49|9[1-6])|49[2-6])\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], MT: ["356", "00", "3550\\d{4}|(?:[2579]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2357-9]"]]], 0, 0, 0, 0, 0, 0, [["20(?:3[1-4]|6[059])\\d{4}|2(?:0[19]|[1-357]\\d|60)\\d{5}"], ["(?:7(?:210|[79]\\d\\d)|9(?:[29]\\d\\d|69[67]|8(?:1[1-3]|89|97)))\\d{4}"], ["800(?:02|[3467]\\d)\\d{3}"], ["5(?:0(?:0(?:37|43)|(?:6\\d|70|9[0168])\\d)|[12]\\d0[1-5])\\d{3}"], 0, 0, ["501\\d{5}"], ["7117\\d{4}"], ["3550\\d{4}"]]], MU: ["230", "0(?:0|[24-7]0|3[03])", "(?:[57]|8\\d\\d)\\d{7}|[2-468]\\d{6}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-46]|8[013]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[57]"]], ["(\\d{5})(\\d{5})", "$1 $2", ["8"]]], 0, 0, 0, 0, 0, 0, [["(?:2(?:[0346-8]\\d|1[0-8])|4(?:[013568]\\d|2[0-24-8]|71|90)|54(?:[3-5]\\d|71)|6\\d\\d|8(?:14|3[129]))\\d{4}", [7, 8]], ["5(?:4(?:2[1-389]|7[1-9])|87[15-8])\\d{4}|(?:5(?:2[5-9]|4[3-689]|[57]\\d|8[0-689]|9[0-8])|7(?:0[0-7]|3[013]))\\d{5}", [8]], ["802\\d{7}|80[0-2]\\d{4}", [7, 10]], ["30\\d{5}", [7]], 0, 0, 0, ["219\\d{4}", [7]], ["3(?:20|9\\d)\\d{4}", [7]]], "020"], MV: ["960", "0(?:0|19)", "(?:800|9[0-57-9]\\d)\\d{7}|[34679]\\d{6}", [7, 10], [["(\\d{3})(\\d{4})", "$1-$2", ["[34679]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"]]], 0, 0, 0, 0, 0, 0, [["(?:3(?:0[0-4]|3[0-59])|6(?:[58][024689]|6[024-68]|7[02468]))\\d{4}", [7]], ["(?:46[46]|[79]\\d\\d)\\d{4}", [7]], ["800\\d{7}", [10]], ["900\\d{7}", [10]], 0, 0, ["4(?:0[01]|50)\\d{4}", [7]]], "00"], MW: ["265", "00", "(?:[1289]\\d|31|77)\\d{7}|1\\d{6}", [7, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["1[2-9]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-37-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["1[2-9]\\d{5}", [7]], ["111\\d{6}|(?:2[12]|31|77|[89][89])\\d{7}", [9]]]], MX: ["52", "0[09]", "[2-9]\\d{9}", [10], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["33|5[56]|81"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-9]"]]], 0, 0, 0, 0, 0, 0, [["(?:2(?:0[01]|2\\d|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[267][1-9]|3[1-8]|[45]\\d|8[1-35-9]|9[2-689])|5(?:[56]\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-36-9]|6[0-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1346][1-9]|[27]\\d|5[13-9]|8[1-69]|9[17])|8(?:1\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[0-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69]\\d|7[12]|8[1-8]))\\d{7}"], ["(?:2(?:2\\d|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[267][1-9]|3[1-8]|[45]\\d|8[1-35-9]|9[2-689])|5(?:[56]\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-36-9]|6[0-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1346][1-9]|[27]\\d|5[13-9]|8[1-69]|9[17])|8(?:1\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[0-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69]\\d|7[12]|8[1-8]))\\d{7}"], ["8(?:00|88)\\d{7}"], ["900\\d{7}"], ["500\\d{7}"], 0, 0, 0, 0, ["300\\d{7}"]], "00"], MY: ["60", "00", "1\\d{8,9}|(?:3\\d|[4-9])\\d{7}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1-$2 $3", ["[4-79]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1-$2 $3", ["1(?:[02469]|[378][1-9]|53)|8", "1(?:[02469]|[37][1-9]|53|8(?:[1-46-9]|5[7-9]))|8"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2 $3", ["3"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3-$4", ["1(?:[367]|80)"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2 $3", ["15"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2 $3", ["1"], "0$1"]], "0", 0, 0, 0, 0, 0, [["427[01]\\d{4}|(?:3(?:2[0-36-9]|3[0-368]|4[0-278]|5[0-24-8]|6[0-467]|7[1246-9]|8\\d|9[0-57])\\d|4(?:2[0-689]|[3-79]\\d|8[1-35689])|5(?:2[0-589]|[3468]\\d|5[0-489]|7[1-9]|9[23])|6(?:2[2-9]|3[1357-9]|[46]\\d|5[0-6]|7[0-35-9]|85|9[015-8])|7(?:[2579]\\d|3[03-68]|4[0-8]|6[5-9]|8[0-35-9])|8(?:[24][2-8]|3[2-5]|5[2-7]|6[2-589]|7[2-578]|[89][2-9])|9(?:0[57]|13|[25-7]\\d|[3489][0-8]))\\d{5}", [8, 9]], ["1(?:(?:1888[689]|4400|8(?:47|8[27])[0-4])\\d{4}|9\\d{7,8})|1(?:0(?:[23568]\\d|4[0-6]|7[016-9]|9[0-8])|1(?:[1-5]\\d\\d|6(?:0[5-9]|[1-9]\\d)|7(?:[0-4]\\d|5[0-79]|6[02-4]|8[02-5]))|(?:[26]\\d|[37][1-9]|4[235-9])\\d|5(?:31|9\\d\\d)|8(?:1[23]|[236]\\d|4[06]|5(?:46|[7-9])|7[016-9]|8[01]|9[0-8]))\\d{5}", [9, 10]], ["1[378]00\\d{6}", [10]], ["1600\\d{6}", [10]], 0, 0, 0, 0, ["15(?:4(?:6[0-4]\\d|8(?:0[125]|[17]\\d|21|3[01]|4[01589]|5[014]|6[02]))|6(?:32[0-6]|78\\d))\\d{4}", [10]]]], MZ: ["258", "00", "(?:2|8\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2|8[2-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]], 0, 0, 0, 0, 0, 0, [["2(?:[1346]\\d|5[0-2]|[78][12]|93)\\d{5}", [8]], ["8[2-9]\\d{7}", [9]], ["800\\d{6}", [9]]]], NA: ["264", "00", "[68]\\d{7,8}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["87"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["64426\\d{3}|6(?:1(?:2[2-7]|3[01378]|4[0-4])|254|32[0237]|4(?:27|41|5[25])|52[236-8]|626|7(?:2[2-4]|30))\\d{4,5}|6(?:1(?:(?:0\\d|2[0189]|3[24-69]|4[5-9])\\d|17|69|7[014])|2(?:17|5[0-36-8]|69|70)|3(?:17|2[14-689]|34|6[289]|7[01]|81)|4(?:17|2[0-2]|4[06]|5[0137]|69|7[01])|5(?:17|2[0459]|69|7[01])|6(?:17|25|38|42|69|7[01])|7(?:17|2[569]|3[13]|6[89]|7[01]))\\d{4}"], ["(?:60|8[1245])\\d{7}", [9]], ["80\\d{7}", [9]], ["8701\\d{5}", [9]], 0, 0, 0, 0, ["8(?:3\\d\\d|86)\\d{5}"]]], NC: ["687", "00", "(?:050|[2-57-9]\\d\\d)\\d{3}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1.$2.$3", ["[02-57-9]"]]], 0, 0, 0, 0, 0, 0, [["(?:2[03-9]|3[0-5]|4[1-7]|88)\\d{4}"], ["(?:[579]\\d|8[0-79])\\d{4}"], ["050\\d{3}"], ["36\\d{4}"]]], NE: ["227", "00", "[027-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["08"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[089]|2[013]|7[0467]"]]], 0, 0, 0, 0, 0, 0, [["2(?:0(?:20|3[1-8]|4[13-5]|5[14]|6[14578]|7[1-578])|1(?:4[145]|5[14]|6[14-68]|7[169]|88))\\d{4}"], ["(?:23|7[0467]|[89]\\d)\\d{6}"], ["08\\d{6}"], ["09\\d{6}"]]], NF: ["672", "00", "[13]\\d{5}", [6], [["(\\d{2})(\\d{4})", "$1 $2", ["1[0-3]"]], ["(\\d)(\\d{5})", "$1 $2", ["[13]"]]], 0, 0, "([0-258]\\d{4})$", "3$1", 0, 0, [["(?:1(?:06|17|28|39)|3[0-2]\\d)\\d{3}"], ["(?:14|3[58])\\d{4}"]]], NG: ["234", "009", "(?:20|9\\d)\\d{8}|[78]\\d{9,13}", [10, 11, 12, 13, 14], [["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[7-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["20[129]"], "0$1"], ["(\\d{4})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{3})(\\d{5})(\\d{5,6})", "$1 $2 $3", ["[78]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["20(?:[1259]\\d|3[013-9]|4[1-8]|6[024-689]|7[1-79]|8[2-9])\\d{6}", [10]], ["(?:702[0-24-9]|819[01])\\d{6}|(?:7(?:0[13-9]|[12]\\d)|8(?:0[1-9]|1[0-8])|9(?:0[1-9]|1[1-6]))\\d{7}", [10]], ["800\\d{7,11}"], 0, 0, 0, ["700\\d{7,11}"]]], NI: ["505", "00", "(?:1800|[25-8]\\d{3})\\d{4}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[125-8]"]]], 0, 0, 0, 0, 0, 0, [["2\\d{7}"], ["(?:5(?:5[0-7]|[78]\\d)|6(?:20|3[035]|4[045]|5[05]|77|8[1-9]|9[059])|(?:7[5-8]|8\\d)\\d)\\d{5}"], ["1800\\d{4}"]]], NL: ["31", "00", "(?:[124-7]\\d\\d|3(?:[02-9]\\d|1[0-8]))\\d{6}|8\\d{6,9}|9\\d{6,10}|1\\d{4,5}", [5, 6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{4,7})", "$1 $2", ["[89]0"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["66"], "0$1"], ["(\\d)(\\d{8})", "$1 $2", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["1[16-8]|2[259]|3[124]|4[17-9]|5[124679]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-578]|91"], "0$1"], ["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3", ["9"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:1(?:[035]\\d|1[13-578]|6[124-8]|7[24]|8[0-467])|2(?:[0346]\\d|2[2-46-9]|5[125]|9[479])|3(?:[03568]\\d|1[3-8]|2[01]|4[1-8])|4(?:[0356]\\d|1[1-368]|7[58]|8[15-8]|9[23579])|5(?:[0358]\\d|[19][1-9]|2[1-57-9]|4[13-8]|6[126]|7[0-3578])|7\\d\\d)\\d{6}", [9]], ["(?:6[1-58]|970\\d)\\d{7}", [9, 11]], ["800\\d{4,7}", [7, 8, 9, 10]], ["90[069]\\d{4,7}", [7, 8, 9, 10]], 0, 0, ["140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|(?:140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)|8[478]\\d{6})\\d", [5, 6, 9]], ["66\\d{7}", [9]], ["(?:85|91)\\d{7}", [9]]]], NO: ["47", "00", "(?:0|[2-9]\\d{3})\\d{4}", [5, 8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]"]]], 0, 0, 0, 0, 0, "[02-689]|7[0-8]", [["(?:2[1-4]|3[1-3578]|5[1-35-7]|6[1-46-9]|7[0-8])\\d{6}", [8]], ["45(?:[0-24-9]\\d|3[0-57-9])\\d{4}|(?:4[016-8]|9\\d)\\d{6}", [8]], ["80[01]\\d{5}", [8]], ["82[09]\\d{5}", [8]], ["880\\d{5}", [8]], ["81[23]\\d{5}", [8]], ["(?:0[235-9]|81(?:0(?:0[7-9]|1\\d)|5\\d\\d))\\d{3}"], 0, ["85[0-5]\\d{5}", [8]], ["810(?:0[0-6]|[2-8]\\d)\\d{3}", [8]]]], NP: ["977", "00", "(?:1\\d|9)\\d{9}|[1-9]\\d{7}", [8, 10, 11], [["(\\d)(\\d{7})", "$1-$2", ["1[2-6]"], "0$1"], ["(\\d{2})(\\d{6})", "$1-$2", ["1[01]|[2-8]|9(?:[1-59]|[67][2-6])"], "0$1"], ["(\\d{3})(\\d{7})", "$1-$2", ["9"]]], "0", 0, 0, 0, 0, 0, [["(?:1[0-6]\\d|99[02-6])\\d{5}|(?:2[13-79]|3[135-8]|4[146-9]|5[135-7]|6[13-9]|7[15-9]|8[1-46-9]|9[1-7])[2-6]\\d{5}", [8]], ["9(?:00|6[0-3]|7[0-24-6]|8[0-24-68])\\d{7}", [10]], ["1(?:66001|800\\d\\d)\\d{5}", [11]]]], NR: ["674", "00", "(?:222|444|(?:55|8\\d)\\d|666|777|999)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[24-9]"]]], 0, 0, 0, 0, 0, 0, [["444\\d{4}"], ["(?:222|55[3-9]|666|777|8\\d\\d|999)\\d{4}"]]], NU: ["683", "00", "(?:[4-7]|888\\d)\\d{3}", [4, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["8"]]], 0, 0, 0, 0, 0, 0, [["[47]\\d{3}", [4]], ["(?:[56]|888[1-9])\\d{3}"]]], NZ: ["64", "0(?:0|161)", "[1289]\\d{9}|50\\d{5}(?:\\d{2,3})?|[27-9]\\d{7,8}|(?:[34]\\d|6[0-35-9])\\d{6}|8\\d{4,6}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,8})", "$1 $2", ["8[1-79]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["50[036-8]|8|90", "50(?:[0367]|88)|8|90"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["24|[346]|7[2-57-9]|9[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2(?:10|74)|[589]"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1|2[028]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,5})", "$1 $2 $3", ["2(?:[169]|7[0-35-9])|7"], "0$1"]], "0", 0, 0, 0, 0, 0, [["240\\d{5}|(?:3[2-79]|[49][2-9]|6[235-9]|7[2-57-9])\\d{6}", [8]], ["2(?:[0-27-9]\\d|6)\\d{6,7}|2(?:1\\d|75)\\d{5}", [8, 9, 10]], ["508\\d{6,7}|80\\d{6,8}", [8, 9, 10]], ["(?:1[13-57-9]\\d{5}|50(?:0[08]|30|66|77|88))\\d{3}|90\\d{6,8}", [7, 8, 9, 10]], ["70\\d{7}", [9]], 0, ["8(?:1[16-9]|22|3\\d|4[045]|5[459]|6[235-9]|7[0-3579]|90)\\d{2,7}"]], "00"], OM: ["968", "00", "(?:1505|[279]\\d{3}|500)\\d{4}|800\\d{5,6}", [7, 8, 9], [["(\\d{3})(\\d{4,6})", "$1 $2", ["[58]"]], ["(\\d{2})(\\d{6})", "$1 $2", ["2"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[179]"]]], 0, 0, 0, 0, 0, 0, [["2[1-6]\\d{6}", [8]], ["(?:1505|90[1-9]\\d)\\d{4}|(?:7[124-9]|9[1-9])\\d{6}", [8]], ["8007\\d{4,5}|(?:500|800[05])\\d{4}"], ["900\\d{5}", [8]]]], PA: ["507", "00", "(?:00800|8\\d{3})\\d{6}|[68]\\d{7}|[1-57-9]\\d{6}", [7, 8, 10, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[1-57-9]"]], ["(\\d{4})(\\d{4})", "$1-$2", ["[68]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]], 0, 0, 0, 0, 0, 0, [["(?:1(?:0\\d|1[0479]|2[37]|3[0137]|4[147]|5[05]|6[058]|7[0167]|8[2358]|9[1389])|2(?:[0235-79]\\d|1[0-7]|4[013-9]|8[02-9])|3(?:[0147-9]\\d|[25][0-5]|33|6[068])|4(?:00|3[0-579]|4\\d|7[0-57-9])|5(?:[01]\\d|2[0-7]|[56]0|79)|7(?:0[09]|2[0-26-8]|3[03]|4[04]|5[05-9]|6[0156]|7[0-24-9]|8[4-9]|90)|8(?:09|2[89]|3\\d|4[0-24-689]|5[014]|8[02])|9(?:0[5-9]|1[0135-8]|2[036-9]|3[35-79]|40|5[0457-9]|6[05-9]|7[04-9]|8[35-8]|9\\d))\\d{4}", [7]], ["(?:1[16]1|21[89]|6\\d{3}|8(?:1[01]|7[23]))\\d{4}", [7, 8]], ["800\\d{4,5}|(?:00800|800\\d)\\d{6}"], ["(?:8(?:22|55|60|7[78]|86)|9(?:00|81))\\d{4}", [7]]]], PE: ["51", "00|19(?:1[124]|77|90)00", "(?:[14-8]|9\\d)\\d{7}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["80"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["1"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[4-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"]]], "0", 0, 0, 0, 0, 0, [["(?:(?:19[02-68]|(?:4[34]|5[14])[0-8]|687)\\d|7(?:173|(?:3[0-8]|55)\\d)|8(?:10[05689]|6(?:0[06-9]|1[6-9]|29)|7(?:0[0569]|[56]0)))\\d{4}|(?:1[0-8]|4[12]|5[236]|6[1-7]|7[246]|8[2-4])\\d{6}", [8]], ["9\\d{8}", [9]], ["800\\d{5}", [8]], ["805\\d{5}", [8]], ["80[24]\\d{5}", [8]], 0, 0, 0, 0, ["801\\d{5}", [8]]], "00", " Anexo "], PF: ["689", "00", "4\\d{5}(?:\\d{2})?|8\\d{7,8}", [6, 8, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["44"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4|8[7-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]], 0, 0, 0, 0, 0, 0, [["4(?:0[4-689]|9[4-68])\\d{5}", [8]], ["8[7-9]\\d{6}", [8]], ["80[0-5]\\d{6}", [9]], 0, 0, 0, ["44\\d{4}", [6]], 0, ["499\\d{5}", [8]]]], PG: ["675", "00|140[1-3]", "(?:180|[78]\\d{3})\\d{4}|(?:[2-589]\\d|64)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["18|[2-69]|85[02-46-9]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[78]"]]], 0, 0, 0, 0, 0, 0, [["(?:(?:3[0-2]|4[257]|5[34]|9[78])\\d|64[1-9]|85[02-46-9])\\d{4}", [7]], ["(?:7\\d|8[1-58])\\d{6}", [8]], ["180\\d{4}", [7]], 0, 0, 0, 0, ["27[01]\\d{4}", [7]], ["2(?:0[0-57]|7[568])\\d{4}", [7]]], "00"], PH: ["63", "00", "(?:[2-7]|9\\d)\\d{8}|2\\d{5}|(?:1800|8)\\d{7,9}", [6, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{5})", "$1 $2", ["2"], "(0$1)"], ["(\\d{4})(\\d{4,6})", "$1 $2", ["3(?:23|39|46)|4(?:2[3-6]|[35]9|4[26]|76)|544|88[245]|(?:52|64|86)2", "3(?:230|397|461)|4(?:2(?:35|[46]4|51)|396|4(?:22|63)|59[347]|76[15])|5(?:221|446)|642[23]|8(?:622|8(?:[24]2|5[13]))"], "(0$1)"], ["(\\d{5})(\\d{4})", "$1 $2", ["346|4(?:27|9[35])|883", "3469|4(?:279|9(?:30|56))|8834"], "(0$1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|8[2-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{4})(\\d{1,2})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["1"]]], "0", 0, 0, 0, 0, 0, [["(?:(?:2[3-8]|3[2-68]|4[2-9]|5[2-6]|6[2-58]|7[24578])\\d{3}|88(?:22\\d\\d|42))\\d{4}|(?:2|8[2-8]\\d\\d)\\d{5}", [6, 8, 9, 10]], ["(?:8(?:1[37]|9[5-8])|9(?:0[5-9]|1[0-24-9]|[235-7]\\d|4[2-9]|8[135-9]|9[1-9]))\\d{7}", [10]], ["1800\\d{7,9}", [11, 12, 13]]]], PK: ["92", "00", "122\\d{6}|[24-8]\\d{10,11}|9(?:[013-9]\\d{8,10}|2(?:[01]\\d\\d|2(?:[06-8]\\d|1[01]))\\d{7})|(?:[2-8]\\d{3}|92(?:[0-7]\\d|8[1-9]))\\d{6}|[24-9]\\d{8}|[89]\\d{7}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,7})", "$1 $2 $3", ["[89]0"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["1"]], ["(\\d{3})(\\d{6,7})", "$1 $2", ["2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8])", "9(?:2[3-8]|98)|(?:2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:22|3[27-9]|4[2-6]|6[3569]|9[25-7]))[2-9]"], "(0$1)"], ["(\\d{2})(\\d{7,8})", "$1 $2", ["(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]"], "(0$1)"], ["(\\d{5})(\\d{5})", "$1 $2", ["58"], "(0$1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[24-9]"], "(0$1)"]], "0", 0, 0, 0, 0, 0, [["(?:(?:21|42)[2-9]|58[126])\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\d{6,7}|(?:2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8]))[2-9]\\d{5,6}", [9, 10]], ["3(?:[0-247]\\d|3[0-79]|55|64)\\d{7}", [10]], ["800\\d{5}(?:\\d{3})?", [8, 11]], ["900\\d{5}", [8]], ["122\\d{6}", [9]], 0, ["(?:2(?:[125]|3[2358]|4[2-4]|9[2-8])|4(?:[0-246-9]|5[3479])|5(?:[1-35-7]|4[2-467])|6(?:0[468]|[1-8])|7(?:[14]|2[236])|8(?:[16]|2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|22|3[27-9]|4[2-6]|6[3569]|9[2-7]))111\\d{6}", [11, 12]]]], PL: ["48", "00", "(?:6|8\\d\\d)\\d{7}|[1-9]\\d{6}(?:\\d{2})?|[26]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{5})", "$1", ["19"]], ["(\\d{3})(\\d{3})", "$1 $2", ["11|20|64"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["30|(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1", "30|(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19"]], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["64"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["21|39|45|5[0137]|6[0469]|7[02389]|8(?:0[14]|8)"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[2-8]|[2-7]|8[1-79]|9[145]"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["8"]]], 0, 0, 0, 0, 0, 0, [["(?:30|47\\d\\d)\\d{5}|(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])(?:[02-9]\\d{6}|1(?:[0-8]\\d{5}|9\\d{3}(?:\\d{2})?))", [7, 9]], ["21(?:1[013-5]|2\\d|3[1-9])\\d{5}|(?:45|5[0137]|6[069]|7[2389]|88)\\d{7}", [9]], ["800\\d{6,7}", [9, 10]], ["70[01346-8]\\d{6}", [9]], 0, 0, ["804\\d{6}", [9]], ["64\\d{4,7}", [6, 7, 8, 9]], ["39\\d{7}", [9]], ["801\\d{6}", [9]]]], PM: ["508", "00", "[78]\\d{8}|[2-9]\\d{5}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["80[6-9]\\d{6}|(?:[236-9]\\d|4[1-35-9]|5[0-47-9])\\d{4}"], ["708(?:4[0-5]|5[0-6])\\d{4}|(?:[236-9]\\d|4[02-489]|5[02-9])\\d{4}"], ["80[0-5]\\d{6}", [9]], ["8[129]\\d{7}", [9]]]], PR: ["1", "011", "(?:[589]\\d\\d|787)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "787|939", [["(?:787|939)[2-9]\\d{6}"], [""], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], PS: ["970", "00", "[2489]2\\d{6}|(?:1\\d|5)\\d{8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2489]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0", 0, 0, 0, 0, 0, [["(?:22[2-47-9]|42[45]|82[014-68]|92[3569])\\d{5}", [8]], ["5[69]\\d{7}", [9]], ["1800\\d{6}", [10]], 0, 0, 0, 0, 0, 0, ["1700\\d{6}", [10]]]], PT: ["351", "00", "1693\\d{5}|(?:[26-9]\\d|30)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["2[12]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["16|[236-9]"]]], 0, 0, 0, 0, 0, 0, [["2(?:[12]\\d|3[1-689]|4[1-59]|[57][1-9]|6[1-35689]|8[1-69]|9[1256])\\d{6}"], ["6(?:[06]92(?:30|9\\d)|[35]92(?:[049]\\d|3[034]))\\d{3}|(?:(?:16|6[0356])93|9(?:[1-36]\\d\\d|480))\\d{5}"], ["80[02]\\d{6}"], ["(?:6(?:0[178]|4[68])\\d|76(?:0[1-57]|1[2-47]|2[237]))\\d{5}"], ["884[0-4689]\\d{5}"], ["600\\d{6}|6[06]92(?:0\\d|3[349]|49)\\d{3}"], ["70(?:38[01]|596|(?:7\\d|8[17])\\d)\\d{4}"], ["6(?:222\\d|89(?:00|88|99))\\d{4}"], ["30\\d{7}"], ["80(?:8\\d|9[1579])\\d{5}"]]], PW: ["680", "01[12]", "(?:[24-8]\\d\\d|345|900)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]], 0, 0, 0, 0, 0, 0, [["(?:2(?:55|77)|345|488|5(?:35|44|87)|6(?:22|54|79)|7(?:33|47)|8(?:24|55|76)|900)\\d{4}"], ["(?:(?:46|83)[0-5]|(?:6[2-4689]|78)0)\\d{4}|(?:45|77|88)\\d{5}"]]], PY: ["595", "00", "[36-8]\\d{5,8}|4\\d{6,8}|59\\d{6}|9\\d{5,10}|(?:2\\d|5[0-8])\\d{6,7}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3,6})", "$1 $2", ["[2-9]0"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["3[289]|4[246-8]|61|7[1-3]|8[1-36]"], "(0$1)"], ["(\\d{3})(\\d{4,5})", "$1 $2", ["2[279]|3[13-5]|4[359]|5|6(?:[34]|7[1-46-8])|7[46-8]|85"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2[14-68]|3[26-9]|4[1246-8]|6(?:1|75)|7[1-35]|8[1-36]"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["87"]], ["(\\d{3})(\\d{6})", "$1 $2", ["9(?:[5-79]|8[1-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"]]], "0", 0, 0, 0, 0, 0, [["(?:3[289]|4[246-8]|61|7[1-3]|8[1-36])\\d{5,7}|(?:2(?:[14-68]\\d|2[4-68]|7[15]|9[1-5])|3(?:18|3[167]|4[2357]|51|[67]\\d)|4(?:1\\d|3[12]|5[13]|9[1-47])|5(?:[1-4]\\d|5[02-4])|6(?:3[1-3]|44|7[1-8])|7(?:4[0-4]|5\\d|6[1-578]|75|8[0-8])|858)\\d{5,6}", [7, 8, 9]], ["9(?:51|6[129]|7[1-6]|8[1-7]|9[1-5])\\d{6}", [9]], ["9800\\d{5,7}", [9, 10, 11]], 0, 0, 0, ["[245]0\\d{6,7}|[36-9]0\\d{4,7}", [6, 7, 8, 9]], 0, ["8700[0-4]\\d{4}", [9]]]], QA: ["974", "00", "800\\d{4}|(?:2|800)\\d{6}|(?:0080|[3-7])\\d{7}", [7, 8, 9, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["2[136]|8"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[3-7]"]]], 0, 0, 0, 0, 0, 0, [["4(?:(?:[014]\\d\\d|999)\\d|2022)\\d{3}", [8]], ["[35-7]\\d{7}", [8]], ["800\\d{4}|(?:0080[01]|800)\\d{6}", [7, 9, 11]], 0, 0, 0, 0, ["2[136]\\d{5}", [7]]]], RE: ["262", "00", "709\\d{6}|(?:26|[689]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[26-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["2631[0-6]\\d{4}|26(?:2\\d|30|88)\\d{5}"], ["(?:69(?:2\\d\\d|3(?:[06][0-6]|1[0-3]|2[0-2]|3[0-39]|4\\d|5[0-5]|7[0-37]|8[0-8]|9[0-479]))|7092[0-3])\\d{4}"], ["80\\d{7}"], ["89[1-37-9]\\d{6}"], 0, 0, 0, 0, ["9(?:399[0-3]|479[0-6]|76(?:2[278]|3[0-37]))\\d{4}"], ["8(?:1[019]|2[0156]|84|90)\\d{6}"]]], RO: ["40", "00", "(?:[236-8]\\d|90)\\d{7}|[23]\\d{5}", [6, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["2[3-6]", "2[3-6]\\d9"], "0$1"], ["(\\d{2})(\\d{4})", "$1 $2", ["219|31"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[23]1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[236-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["[23][13-6]\\d{7}|(?:2(?:19\\d|[3-6]\\d9)|31\\d\\d)\\d\\d"], ["(?:630|702)0\\d{5}|(?:6(?:00|2\\d)|7(?:0[013-9]|1[0-3]|[2-7]\\d|8[03-8]|9[0-39]))\\d{6}", [9]], ["800\\d{6}", [9]], ["90[0136]\\d{6}", [9]], 0, 0, ["(?:37\\d|80[578])\\d{6}", [9]], 0, 0, ["801\\d{6}", [9]]], 0, " int "], RS: ["381", "00", "38[02-9]\\d{6,9}|6\\d{7,9}|90\\d{4,8}|38\\d{5,6}|(?:7\\d\\d|800)\\d{3,9}|(?:[12]\\d|3[0-79])\\d{5,10}", [6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{3,9})", "$1 $2", ["(?:2[389]|39)0|[7-9]"], "0$1"], ["(\\d{2})(\\d{5,10})", "$1 $2", ["[1-36]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:11[1-9]\\d|(?:2[389]|39)(?:0[2-9]|[2-9]\\d))\\d{3,8}|(?:1[02-9]|2[0-24-7]|3[0-8])[2-9]\\d{4,9}", [7, 8, 9, 10, 11, 12]], ["6(?:[0-689]|7\\d)\\d{6,7}", [8, 9, 10]], ["800\\d{3,9}"], ["(?:78\\d|90[0169])\\d{3,7}", [6, 7, 8, 9, 10]], 0, 0, ["7[06]\\d{4,10}"]]], RU: ["7", "810", "8\\d{13}|[347-9]\\d{9}", [10, 14], [["(\\d{4})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-8]|2[1-9])", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:1[23]|[2-9]2))", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2"], "8 ($1)", 1], ["(\\d{5})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-68]|2[1-9])", "7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))", "7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[349]|8(?:[02-7]|1[1-8])"], "8 ($1)", 1], ["(\\d{4})(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["8"], "8 ($1)"]], "8", 0, 0, 0, 0, "[3489]", [["(?:3(?:0[12]|36|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15-7]|6[0-35-79]|7[1-37-9]))\\d{7}", [10]], ["9\\d{9}", [10]], ["8(?:0[04]|108\\d{3})\\d{7}"], ["80[39]\\d{7}", [10]], ["808\\d{7}", [10]]], "8~10"], RW: ["250", "00", "(?:06|[27]\\d\\d|[89]00)\\d{6}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:06|2[23568]\\d)\\d{6}"], ["7[237-9]\\d{7}", [9]], ["800\\d{6}", [9]], ["900\\d{6}", [9]]]], SA: ["966", "00", "(?:[15]\\d|800|92)\\d{7}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["9"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]], "0", 0, 0, 0, 0, 0, [["1(?:1\\d|2[24-8]|3[35-8]|4[3-68]|6[2-5]|7[235-7])\\d{6}", [9]], ["579[0-8]\\d{5}|5(?:[013-689]\\d|7[0-8])\\d{6}", [9]], ["800\\d{7}", [10]], ["925\\d{6}", [9]], 0, 0, 0, 0, 0, ["920\\d{6}", [9]]]], SB: ["677", "0[01]", "[6-9]\\d{6}|[1-6]\\d{4}", [5, 7], [["(\\d{2})(\\d{5})", "$1 $2", ["6[89]|7|8[4-9]|9(?:[1-8]|9[0-8])"]]], 0, 0, 0, 0, 0, 0, [["(?:1[4-79]|[23]\\d|4[0-2]|5[03]|6[0-37])\\d{3}", [5]], ["48\\d{3}|(?:(?:6[89]|7[1-9]|8[4-9])\\d|9(?:1[2-9]|2[013-9]|3[0-2]|[46]\\d|5[0-46-9]|7[0-689]|8[0-79]|9[0-8]))\\d{4}"], ["1[38]\\d{3}", [5]], 0, 0, 0, 0, 0, ["5[12]\\d{3}", [5]]]], SC: ["248", "010|0[0-2]", "(?:[2489]\\d|64)\\d{5}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[246]|9[57]"]]], 0, 0, 0, 0, 0, 0, [["4[2-46]\\d{5}"], ["2[125-8]\\d{5}"], ["800[08]\\d{3}"], ["85\\d{5}"], 0, 0, 0, 0, ["971\\d{4}|(?:64|95)\\d{5}"]], "00"], SD: ["249", "00", "[19]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[19]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["1(?:5\\d|8[35-7])\\d{6}"], ["(?:1[0-2]|9[0-3569])\\d{7}"]]], SE: ["46", "00", "(?:[26]\\d\\d|9)\\d{9}|[1-9]\\d{8}|[1-689]\\d{7}|[1-4689]\\d{6}|2\\d{5}", [6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["20"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{4})", "$1-$2", ["9(?:00|39|44|9)"], "0$1", 0, "$1 $2"], ["(\\d{2})(\\d{3})(\\d{2})", "$1-$2 $3", ["[12][136]|3[356]|4[0246]|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3"], ["(\\d)(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[125689]|4[02-57]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{2,3})(\\d{3})", "$1-$2 $3", ["9(?:00|39|44)"], "0$1", 0, "$1 $2 $3"], ["(\\d{2})(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["1[13689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["10|7"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["[13-5]|2(?:[247-9]|5[0138])|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{3})", "$1-$2 $3 $4", ["9"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4 $5", ["[26]"], "0$1", 0, "$1 $2 $3 $4 $5"]], "0", 0, 0, 0, 0, 0, [["(?:(?:[12][136]|3[356]|4[0246]|6[03]|8\\d)\\d|90[1-9])\\d{4,6}|(?:1(?:2[0-35]|4[0-4]|5[0-25-9]|7[13-6]|[89]\\d)|2(?:2[0-7]|4[0136-8]|5[0138]|7[018]|8[01]|9[0-57])|3(?:0[0-4]|1\\d|2[0-25]|4[056]|7[0-2]|8[0-3]|9[023])|4(?:1[013-8]|3[0135]|5[14-79]|7[0-246-9]|8[0156]|9[0-689])|5(?:0[0-6]|[15][0-5]|2[0-68]|3[0-4]|4\\d|6[03-5]|7[013]|8[0-79]|9[01])|6(?:1[1-3]|2[0-4]|4[02-57]|5[0-37]|6[0-3]|7[0-2]|8[0247]|9[0-356])|9(?:1[0-68]|2\\d|3[02-5]|4[0-3]|5[0-4]|[68][01]|7[0135-8]))\\d{5,6}", [7, 8, 9]], ["7[023689]\\d{7}", [9]], ["20\\d{4,7}", [6, 7, 8, 9]], ["649\\d{6}|99[1-59]\\d{4}(?:\\d{3})?|9(?:00|39|44)[1-8]\\d{3,6}", [7, 8, 9, 10]], ["75[1-8]\\d{6}", [9]], ["(?:25[245]|67[3-68])\\d{9}", [12]], ["10[1-8]\\d{6}", [9]], ["74[02-9]\\d{6}", [9]], 0, ["77[0-7]\\d{6}", [9]]]], SG: ["65", "0[0-3]\\d", "(?:(?:1\\d|8)\\d\\d|7000)\\d{7}|[3689]\\d{7}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[369]|8(?:0[1-9]|[1-9])"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{4})(\\d{4})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]], 0, 0, 0, 0, 0, 0, [["662[0-24-9]\\d{4}|6(?:[0-578]\\d|6[013-57-9]|9[0-35-9])\\d{5}", [8]], ["80[1-9]\\d{5}|(?:8[1-9]|9[0-8])\\d{6}", [8]], ["(?:18|8)00\\d{7}", [10, 11]], ["1900\\d{7}", [11]], 0, 0, ["7000\\d{7}", [11]], 0, ["(?:3[12]\\d|666)\\d{5}", [8]]]], SH: ["290", "00", "(?:[256]\\d|8)\\d{3}", [4, 5], 0, 0, 0, 0, 0, 0, "[256]", [["2(?:[0-57-9]\\d|6[4-9])\\d\\d"], ["[56]\\d{4}", [5]], 0, 0, 0, 0, 0, 0, ["262\\d\\d", [5]]]], SI: ["386", "00|10(?:22|66|88|99)", "[1-7]\\d{7}|8\\d{4,7}|90\\d{4,6}", [5, 6, 7, 8], [["(\\d{2})(\\d{3,6})", "$1 $2", ["8[09]|9"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["59|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37][01]|4[013]|51|6"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-57]"], "(0$1)"]], "0", 0, 0, 0, 0, 0, [["(?:[1-357][2-8]|4[24-8])\\d{6}", [8]], ["65(?:[178]\\d|5[56]|6[01])\\d{4}|(?:[37][01]|4[013]|51|6[489])\\d{6}", [8]], ["80\\d{4,6}", [6, 7, 8]], ["89[1-3]\\d{2,5}|90\\d{4,6}"], 0, 0, 0, 0, ["(?:59\\d\\d|8(?:1(?:[67]\\d|8[0-589])|2(?:0\\d|2[0-37-9]|8[0-2489])|3[389]\\d))\\d{4}", [8]]], "00"], SJ: ["47", "00", "0\\d{4}|(?:[489]\\d|79)\\d{6}", [5, 8], 0, 0, 0, 0, 0, 0, "79", [["79\\d{6}", [8]], ["45(?:[0-24-9]\\d|3[0-57-9])\\d{4}|(?:4[016-8]|9\\d)\\d{6}", [8]], ["80[01]\\d{5}", [8]], ["82[09]\\d{5}", [8]], ["880\\d{5}", [8]], ["81[23]\\d{5}", [8]], ["(?:0[235-9]|81(?:0(?:0[7-9]|1\\d)|5\\d\\d))\\d{3}"], 0, ["85[0-5]\\d{5}", [8]], ["810(?:0[0-6]|[2-8]\\d)\\d{3}", [8]]]], SK: ["421", "00", "[2-689]\\d{8}|[2-59]\\d{6}|[2-5]\\d{5}", [6, 7, 9], [["(\\d)(\\d{2})(\\d{3,4})", "$1 $2 $3", ["21"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["[3-5][1-8]1", "[3-5][1-8]1[67]"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[689]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[3-5]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:2(?:16|[2-9]\\d{3})|(?:(?:[3-5][1-8]\\d|819)\\d|601[1-5])\\d)\\d{4}|(?:2|[3-5][1-8])1[67]\\d{3}|[3-5][1-8]16\\d\\d"], ["909[1-9]\\d{5}|9(?:0[1-8]|1[0-24-9]|4[03-57-9]|5\\d)\\d{6}", [9]], ["800\\d{6}", [9]], ["9(?:00|[78]\\d)\\d{6}", [9]], 0, 0, ["96\\d{7}", [9]], ["9090\\d{3}", [7]], ["6(?:02|5[0-4]|9[0-6])\\d{6}", [9]], ["8[5-9]\\d{7}", [9]]]], SL: ["232", "00", "(?:[237-9]\\d|66)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[236-9]"], "(0$1)"]], "0", 0, 0, 0, 0, 0, [["22[2-4][2-9]\\d{4}"], ["(?:25|3[0-5]|66|7\\d|8[08]|9[09])\\d{6}"]]], SM: ["378", "00", "(?:0549|[5-7]\\d)\\d{6}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]"]], ["(\\d{4})(\\d{6})", "$1 $2", ["0"]]], 0, 0, "([89]\\d{5})$", "0549$1", 0, 0, [["0549(?:8[0157-9]|9\\d)\\d{4}", [10]], ["6[16]\\d{6}", [8]], 0, ["7[178]\\d{6}", [8]], 0, 0, 0, 0, ["5[158]\\d{6}", [8]]]], SN: ["221", "00", "(?:[378]\\d|93)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[379]"]]], 0, 0, 0, 0, 0, 0, [["3(?:[026]\\d|3[89])\\d{6}"], ["7(?:[015-8]\\d|21|90)\\d{6}"], ["800\\d{6}"], ["88[4689]\\d{6}"], 0, 0, 0, 0, ["(?:39|93)\\d{7}"], ["81[02468]\\d{6}"]]], SO: ["252", "00", "[346-9]\\d{8}|[12679]\\d{7}|[1-5]\\d{6}|[1348]\\d{5}", [6, 7, 8, 9], [["(\\d{2})(\\d{4})", "$1 $2", ["8[125]"]], ["(\\d{6})", "$1", ["[134]"]], ["(\\d)(\\d{6})", "$1 $2", ["[15]|2[0-79]|3[0-46-8]|4[0-7]"]], ["(\\d{2})(\\d{5,7})", "$1 $2", ["1|28|9[2-9]"]], ["(\\d)(\\d{7})", "$1 $2", ["[267]|904"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[346-9]"]]], "0", 0, 0, 0, 0, 0, [["(?:1\\d|2[0-79]|3[0-46-8]|4[0-7]|5[57-9])\\d{5}|(?:[134]\\d|8[125])\\d{4}", [6, 7]], ["(?:(?:15|(?:3[59]|4[89]|6\\d|7[0-35-9]|8[08])\\d|9(?:0\\d|[2-9]))\\d|2(?:4\\d|8))\\d{5}|(?:[67]\\d\\d|904)\\d{5}", [7, 8, 9]]]], SR: ["597", "00", "(?:[2-5]|[6-9]\\d)\\d{5}", [6, 7], [["(\\d{2})(\\d{2})(\\d{2})", "$1-$2-$3", ["56"]], ["(\\d{3})(\\d{3})", "$1-$2", ["[2-5]"]], ["(\\d{3})(\\d{4})", "$1-$2", ["[6-9]"]]], 0, 0, 0, 0, 0, 0, [["(?:2[1-3]|3[0-7]|4\\d|5[2-578])\\d{4}", [6]], ["(?:6[08]|7[1-7]|8[1-9])\\d{5}", [7]], ["80\\d{5}", [7]], ["90\\d{5}", [7]], 0, 0, 0, 0, ["(?:56|91\\d)\\d{4}"]]], SS: ["211", "00", "[19]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[19]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["1[89]\\d{7}"], ["(?:12|9[1257-9])\\d{7}"]]], ST: ["239", "00", "(?:22|9\\d)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[29]"]]], 0, 0, 0, 0, 0, 0, [["22\\d{5}"], ["900[5-9]\\d{3}|9(?:0[1-9]|[89]\\d)\\d{4}"]]], SV: ["503", "00", "[25-7]\\d{7}|(?:80\\d|900)\\d{4}(?:\\d{4})?", [7, 8, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[89]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[25-7]"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[89]"]]], 0, 0, 0, 0, 0, 0, [["2(?:79(?:0[0347-9]|[1-9]\\d)|89(?:0[024589]|[1-9]\\d))\\d{3}|2(?:[1-69]\\d|[78][0-8])\\d{5}", [8]], ["[5-7]\\d{7}", [8]], ["800\\d{8}|80[01]\\d{4}", [7, 11]], ["900\\d{4}(?:\\d{4})?", [7, 11]]]], SX: ["1", "011", "7215\\d{6}|(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "(5\\d{6})$|1", "721$1", 0, "721", [["7215(?:4[2-8]|8[39]|9[056])\\d{4}"], ["7215(?:1[02]|2\\d|5[034679]|8[0-24-8])\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], SY: ["963", "00", "[1-359]\\d{8}|[1-5]\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-4]|5[1-3]"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[59]"], "0$1", 1]], "0", 0, 0, 0, 0, 0, [["(?:1(?:[1478]\\d|[2356])|21\\d|3(?:[13]\\d|4)|4[134]|5[1-3])\\d{6}|2[1-5]\\d{6}"], ["(?:50|9[03-689])\\d{7}", [9]]]], SZ: ["268", "00", "0800\\d{4}|(?:[237]\\d|900)\\d{6}", [8, 9], [["(\\d{4})(\\d{4})", "$1 $2", ["[0237]"]], ["(\\d{5})(\\d{4})", "$1 $2", ["9"]]], 0, 0, 0, 0, 0, 0, [["[23][2-5]\\d{6}", [8]], ["7[5-9]\\d{6}", [8]], ["0800\\d{4}", [8]], ["900\\d{6}", [9]], 0, 0, 0, 0, ["70\\d{6}", [8]]]], TA: ["290", "00", "8\\d{3}", [4], 0, 0, 0, 0, 0, 0, "8", [["8\\d{3}"]]], TC: ["1", "011", "(?:[58]\\d\\d|649|900)\\d{7}", [10], 0, "1", 0, "([2-479]\\d{6})$|1", "649$1", 0, "649", [["649(?:266|712|9(?:4\\d|50))\\d{4}"], ["649(?:2(?:3[129]|4[1-79])|3\\d\\d|4[34][1-3])\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"], 0, 0, 0, ["649(?:71[01]|966)\\d{4}"]]], TD: ["235", "00|16", "(?:22|[3689]\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[236-9]"]]], 0, 0, 0, 0, 0, 0, [["22(?:[37-9]0|5[0-5]|6[89])\\d{4}"], ["(?:3[01]|[69]\\d|77|8[5-7])\\d{6}"]], "00"], TG: ["228", "00", "[279]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[279]"]]], 0, 0, 0, 0, 0, 0, [["2(?:2[2-7]|3[23]|4[45]|55|6[67]|77)\\d{5}"], ["(?:7[0-389]|9[0-36-9])\\d{6}"]]], TH: ["66", "00[1-9]", "(?:001800|[2-57]|[689]\\d)\\d{7}|1\\d{7,9}", [8, 9, 10, 13], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[13-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0", 0, 0, 0, 0, 0, [["(?:1[0689]|2\\d|3[2-9]|4[2-5]|5[2-6]|7[3-7])\\d{6}", [8]], ["(?:(?:14|[89]\\d)\\d\\d|6(?:[1-6]\\d\\d|7(?:1[0-8]|2[4-7]|3[1-6])))\\d{5}", [9]], ["(?:001800\\d|1800)\\d{6}", [10, 13]], ["1900\\d{6}", [10]], 0, 0, 0, 0, ["6[08]\\d{7}", [9]]]], TJ: ["992", "810", "(?:[0-57-9]\\d|66)\\d{7}", [9], [["(\\d{6})(\\d)(\\d{2})", "$1 $2 $3", ["331", "3317"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["44[02-479]|[34]7"]], ["(\\d{4})(\\d)(\\d{4})", "$1 $2 $3", ["3(?:[1245]|3[12])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["\\d"]]], 0, 0, 0, 0, 0, 0, [["(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\d{6}"], ["(?:33[03-9]|4(?:1[18]|4[02-479])|81[1-9])\\d{6}|(?:[09]\\d|1[0-27-9]|2[0-27]|3[08]|40|5[05]|66|7[0157-9]|8[07-9])\\d{7}"]], "8~10"], TK: ["690", "00", "[2-47]\\d{3,6}", [4, 5, 6, 7], 0, 0, 0, 0, 0, 0, 0, [["(?:2[2-4]|[34]\\d)\\d{2,5}"], ["7[2-4]\\d{2,5}"]]], TL: ["670", "00", "7\\d{7}|(?:[2-47]\\d|[89]0)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-489]|70"]], ["(\\d{4})(\\d{4})", "$1 $2", ["7"]]], 0, 0, 0, 0, 0, 0, [["(?:2[1-5]|3[1-9]|4[1-4])\\d{5}", [7]], ["7[2-8]\\d{6}", [8]], ["80\\d{5}", [7]], ["90\\d{5}", [7]], ["70\\d{5}", [7]]]], TM: ["993", "810", "[1-7]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["12"], "(8 $1)"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-5]"], "(8 $1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[67]"], "8 $1"]], "8", 0, 0, 0, 0, 0, [["(?:1(?:2\\d|3[1-9])|2(?:22|4[0-35-8])|3(?:22|4[03-9])|4(?:22|3[128]|4\\d|6[15])|5(?:22|5[7-9]|6[014-689]))\\d{5}"], ["(?:6\\d|7[12])\\d{6}"]], "8~10"], TN: ["216", "00", "[2-57-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-57-9]"]]], 0, 0, 0, 0, 0, 0, [["81200\\d{3}|(?:3[0-2]|7\\d)\\d{6}"], ["3(?:001|[12]40)\\d{4}|(?:(?:[259]\\d|4[0-8])\\d|3(?:1[1-35]|6[0-4]|91))\\d{5}"], ["8010\\d{4}"], ["88\\d{6}"], 0, 0, 0, 0, 0, ["8[12]10\\d{4}"]]], TO: ["676", "00", "(?:0800|(?:[5-8]\\d\\d|999)\\d)\\d{3}|[2-8]\\d{4}", [5, 7], [["(\\d{2})(\\d{3})", "$1-$2", ["[2-4]|50|6[09]|7[0-24-69]|8[05]"]], ["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[5-9]"]]], 0, 0, 0, 0, 0, 0, [["(?:2\\d|3[0-8]|4[0-4]|50|6[09]|7[0-24-69]|8[05])\\d{3}", [5]], ["(?:5(?:4[0-5]|5[4-6])|6(?:[09]\\d|3[02]|8[15-9])|(?:7\\d|8[46-9])\\d|999)\\d{4}", [7]], ["0800\\d{3}", [7]], 0, 0, 0, 0, 0, ["55[0-37-9]\\d{4}", [7]]]], TR: ["90", "00", "4\\d{6}|8\\d{11,12}|(?:[2-58]\\d\\d|900)\\d{7}", [7, 10, 12, 13], [["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["512|8[01589]|90"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["5"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24][1-8]|3[1-9]"], "(0$1)", 1], ["(\\d{3})(\\d{3})(\\d{6,7})", "$1 $2 $3", ["80"], "0$1", 1]], "0", 0, 0, 0, 0, 0, [["(?:2(?:1[26]|[28][2468]|[3-5][268]|[67][246])|3(?:[13][28]|[24-6][2468]|[78][02468]|92)|4(?:[16][246]|[23578][2468]|4[26]))\\d{7}", [10]], ["5(?:61(?:011|61\\d)|82[2-4]\\d\\d)\\d{4}|5(?:[03-5]\\d|1[06]|24|6[24]|7[245]|9[46])\\d{7}", [10]], ["8(?:00\\d{7}(?:\\d{2,3})?|11\\d{7})", [10, 12, 13]], ["(?:8[89]8|900)\\d{7}", [10]], ["592(?:21[12]|461)\\d{4}", [10]], 0, ["444\\d{4}", [7]], ["512\\d{7}", [10]], ["850\\d{7}", [10]]]], TT: ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-46-8]\\d{6})$|1", "868$1", 0, "868", [["868(?:2(?:01|1[5-9]|[23]\\d|4[0-2])|6(?:0[7-9]|1[02-8]|2[1-9]|[3-69]\\d|7[0-79])|82[124])\\d{4}"], ["868(?:(?:2[5-9]|3\\d)\\d|4(?:3[0-6]|[6-9]\\d)|6(?:20|78|8\\d)|7(?:0[1-9]|1[02-9]|[2-9]\\d))\\d{4}"], ["868800\\d{4}|8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"], ["868619\\d{4}"]]], TV: ["688", "00", "(?:2|7\\d\\d|90)\\d{4}", [5, 6, 7], [["(\\d{2})(\\d{3})", "$1 $2", ["2"]], ["(\\d{2})(\\d{4})", "$1 $2", ["90"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]], 0, 0, 0, 0, 0, 0, [["2[02-9]\\d{3}", [5]], ["(?:7[01]\\d|90)\\d{4}", [6, 7]]]], TW: ["886", "0(?:0[25-79]|19)", "[2-689]\\d{8}|7\\d{9,10}|[2-8]\\d{7}|2\\d{6}", [7, 8, 9, 10, 11], [["(\\d{2})(\\d)(\\d{4})", "$1 $2 $3", ["202"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["826"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["83"], "0$1"], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["82"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[25]0|37|49|8[09]"], "0$1"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[23568]|4(?:0[02-48]|[1-478])|7[1-9]", "[23568]|4(?:0[2-48]|[1-478])|(?:400|7)[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["7"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:2[2-8]\\d|370|55[01]|7[1-9])\\d{6}|4(?:(?:0(?:0[1-9]|[2-48]\\d)|1[023]\\d)\\d{4,5}|(?:[239]\\d\\d|4(?:0[56]|12|49))\\d{5})|6(?:[01]\\d{7}|4(?:0[56]|12|24|4[09])\\d{4,5})|8(?:(?:2(?:3\\d|4[0-269]|[578]0|66)|36[24-9]|90\\d\\d)\\d{4}|4(?:0[56]|12|24|4[09])\\d{4,5})|(?:2(?:2(?:0\\d\\d|4(?:0[68]|[249]0|3[0-467]|5[0-25-9]|6[0235689]))|(?:3(?:[09]\\d|1[0-4])|(?:4\\d|5[0-49]|6[0-29]|7[0-5])\\d)\\d)|(?:(?:3[2-9]|5[2-8]|6[0-35-79]|8[7-9])\\d\\d|4(?:2(?:[089]\\d|7[1-9])|(?:3[0-4]|[78]\\d|9[01])\\d))\\d)\\d{3}", [8, 9]], ["(?:40001[0-2]|9[0-8]\\d{4})\\d{3}", [9]], ["80[0-79]\\d{6}|800\\d{5}", [8, 9]], ["20(?:[013-9]\\d\\d|2)\\d{4}", [7, 9]], ["99\\d{7}", [9]], 0, ["50[0-46-9]\\d{6}", [9]], 0, ["7010(?:[0-2679]\\d|3[0-7]|8[0-5])\\d{5}|70\\d{8}", [10, 11]]], 0, "#"], TZ: ["255", "00[056]", "(?:[25-8]\\d|41|90)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[24]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["5"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[67]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["2[2-8]\\d{7}"], ["(?:6[0-35-9]|7\\d)\\d{7}"], ["80[08]\\d{6}"], ["90\\d{7}"], 0, 0, 0, 0, ["41\\d{7}"], ["8(?:40|6[01])\\d{6}"]]], UA: ["380", "00", "[89]\\d{9}|[3-9]\\d{8}", [9, 10], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[12][29]|(?:3[1-8]|4[136-8]|5[12457]|6[49])2|(?:56|65)[24]", "6[12][29]|(?:35|4[1378]|5[12457]|6[49])2|(?:56|65)[24]|(?:3[1-46-8]|46)2[013-9]"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6[0135689]|7[4-6])|6(?:[12][3-7]|[459])", "3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6(?:[015689]|3[02389])|7[4-6])|6(?:[12][3-7]|[459])"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|89|9[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:3[1-8]|4[13-8]|5[1-7]|6[12459])\\d{7}", [9]], ["790\\d{6}|(?:39|50|6[36-8]|7[1-357]|9[1-9])\\d{7}", [9]], ["800[1-8]\\d{5,6}"], ["900[239]\\d{5,6}"], 0, 0, 0, 0, ["89[1-579]\\d{6}", [9]]], "0~0"], UG: ["256", "00[057]", "800\\d{6}|(?:[29]0|[347]\\d)\\d{7}", [9], [["(\\d{4})(\\d{5})", "$1 $2", ["202", "2024", "20240"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["20[0-35-7]|4(?:6[45]|[7-9])|[7-9]", "20(?:[0135-7]|2[5-9])|4(?:6[45]|[7-9])|[7-9]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[2-4]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["20(?:(?:24[09]|30[67])\\d|6(?:00[0-2]|30[0-4]))\\d{3}|(?:20(?:[017]\\d|2[5-9]|3[1-4]|5[0-4]|6[15-9])|[34]\\d{3})\\d{5}"], ["7(?:28|34)0\\d{5}|7(?:[014-8]\\d|2[01467]|3[0167]|9[0-589])\\d{6}"], ["800[1-3]\\d{5}"], ["90[1-3]\\d{6}"]]], US: ["1", "011", "[2-9]\\d{9}|3\\d{6}", [10], [["(\\d{3})(\\d{4})", "$1-$2", ["310"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "($1) $2-$3", ["[2-9]"], 0, 1, "$1-$2-$3"]], "1", 0, 0, 0, 0, 0, [["(?:472[2-47-9]|983[2-57-9])\\d{6}|(?:2(?:0[1-35-9]|1[02-9]|2[03-57-9]|3[1459]|4[08]|5[1-46]|6[0279]|7[02469]|8[13])|3(?:0[1-57-9]|1[02-9]|2[013-79]|3[0-24679]|4[167]|5[0-3]|6[01349]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[023578]|58|6[349]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[179]|6[1-47]|7[0-5]|8[0256])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[0156]|5[01679]|6[0-279]|78|8[0-269])|7(?:0[1-46-8]|1[2-9]|2[04-8]|3[0-2478]|4[0378]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[0168]|3[0-2589]|4[03578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[01357-9]|5[12469]|7[0-3589]|8[04-69]))[2-9]\\d{6}"], [""], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], UY: ["598", "0(?:0|1[3-9]\\d)", "0004\\d{2,9}|[1249]\\d{7}|2\\d{3,4}|(?:[49]\\d|80)\\d{5}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d{4,5})", "$1", ["21"]], ["(\\d{3})(\\d{3,4})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[49]0|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[124]"]], ["(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3 $4", ["0"]]], "0", 0, 0, 0, 0, 0, [["(?:1(?:770|9(?:20|[89]7))|(?:2\\d|4[2-7])\\d\\d)\\d{4}", [8]], ["9[1-9]\\d{6}", [8]], ["0004\\d{2,9}|(?:405|80[05])\\d{4}", [6, 7, 8, 9, 10, 11, 12, 13]], ["90[0-8]\\d{4}", [7]], 0, 0, ["21\\d{2,3}", [4, 5]]], "00", " int. "], UZ: ["998", "00", "(?:20|33|[5-9]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[235-9]"]]], 0, 0, 0, 0, 0, 0, [["(?:55\\d\\d|6(?:1(?:22|3[124]|4[1-4]|5[1-3578]|64)|2(?:22|3[0-57-9]|41)|5(?:22|3[3-7]|5[024-8])|[69]\\d\\d|7(?:[23]\\d|7[69]))|7(?:[168]\\d\\d|2(?:22|3[13-57-9]|4[1-3579]|5[14])|3(?:2\\d|3[1578]|4[1-35-7]|5[1-57]|61)|4(?:2\\d|3[1-579]|7[1-79])|5(?:22|5[1-9]|6[1457])|9(?:22|5[1-9])))\\d{5}"], ["(?:(?:[25]0|33|8[078]|9[0-57-9])\\d{3}|6(?:1(?:2(?:2[01]|98)|35[0-4]|50\\d|61[23]|7(?:[01][017]|4\\d|55|9[5-9]))|2(?:(?:11|7\\d)\\d|2(?:[12]1|9[01379])|5(?:[126]\\d|3[0-4]))|5(?:19[01]|2(?:27|9[26])|(?:30|59|7\\d)\\d)|6(?:2(?:1[5-9]|2[0367]|38|41|52|60)|(?:3[79]|9[0-3])\\d|4(?:56|83)|7(?:[07]\\d|1[017]|3[07]|4[047]|5[057]|67|8[0178]|9[79]))|7(?:2(?:24|3[237]|4[5-9]|7[15-8])|5(?:7[12]|8[0589])|7(?:0\\d|[39][07])|9(?:0\\d|7[079])))|7(?:[07]\\d{3}|2(?:2(?:2[79]|95)|3(?:2[5-9]|6[0-6])|57\\d|7(?:0\\d|1[17]|2[27]|3[37]|44|5[057]|66|88))|3(?:2(?:1[0-6]|21|3[469]|7[159])|(?:33|9[4-6])\\d|5(?:0[0-4]|5[579]|9\\d)|7(?:[0-3579]\\d|4[0467]|6[67]|8[078]))|4(?:2(?:29|5[0257]|6[0-7]|7[1-57])|5(?:1[0-4]|8\\d|9[5-9])|7(?:0\\d|1[024589]|2[0-27]|3[0137]|[46][07]|5[01]|7[5-9]|9[079])|9(?:7[015-9]|[89]\\d))|5(?:112|2(?:0\\d|2[29]|[49]4)|3[1568]\\d|52[6-9]|7(?:0[01578]|1[017]|[23]7|4[047]|[5-7]\\d|8[78]|9[079]))|9(?:22[128]|3(?:2[0-4]|7\\d)|57[02569]|7(?:2[05-9]|3[37]|4\\d|60|7[2579]|87|9[07]))))\\d{4}"]]], VA: ["39", "00", "0\\d{5,10}|3[0-8]\\d{7,10}|55\\d{8}|8\\d{5}(?:\\d{2,4})?|(?:1\\d|39)\\d{7,8}", [6, 7, 8, 9, 10, 11, 12], 0, 0, 0, 0, 0, 0, "06698", [["06698\\d{1,6}", [6, 7, 8, 9, 10, 11]], ["3[1-9]\\d{8}|3[2-9]\\d{7}", [9, 10]], ["80(?:0\\d{3}|3)\\d{3}", [6, 9]], ["(?:0878\\d{3}|89(?:2\\d|3[04]|4(?:[0-4]|[5-9]\\d\\d)|5[0-4]))\\d\\d|(?:1(?:44|6[346])|89(?:38|5[5-9]|9))\\d{6}", [6, 8, 9, 10]], ["1(?:78\\d|99)\\d{6}", [9, 10]], ["3[2-8]\\d{9,10}", [11, 12]], 0, 0, ["55\\d{8}", [10]], ["84(?:[08]\\d{3}|[17])\\d{3}", [6, 9]]]], VC: ["1", "011", "(?:[58]\\d\\d|784|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "784$1", 0, "784", [["784(?:266|3(?:6[6-9]|7\\d|8[0-6])|4(?:38|5[0-36-8]|8[0-8])|5(?:55|7[0-2]|93)|638|784)\\d{4}"], ["784(?:4(?:3[0-5]|5[45]|89|9[0-8])|5(?:2[6-9]|3[0-4])|720)\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"], 0, 0, 0, ["78451[0-2]\\d{4}"]]], VE: ["58", "00", "[68]00\\d{7}|(?:[24]\\d|[59]0)\\d{8}", [10], [["(\\d{3})(\\d{7})", "$1-$2", ["[24-689]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:2(?:12|3[457-9]|[467]\\d|[58][1-9]|9[1-6])|[4-6]00)\\d{7}"], ["4(?:1[24-8]|2[246])\\d{7}"], ["800\\d{7}"], ["90[01]\\d{7}"], 0, 0, ["501\\d{7}"]]], VG: ["1", "011", "(?:284|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-578]\\d{6})$|1", "284$1", 0, "284", [["284(?:229|4(?:22|9[45])|774|8(?:52|6[459]))\\d{4}"], ["284(?:245|3(?:0[0-3]|4[0-7]|68|9[34])|4(?:4[0-6]|68|9[69])|5(?:4[0-7]|68|9[69]))\\d{4}"], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], VI: ["1", "011", "[58]\\d{9}|(?:34|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "340$1", 0, "340", [["340(?:2(?:0\\d|10|2[06-8]|4[49]|77)|3(?:32|44)|4(?:2[23]|44|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|2[57]|7\\d)|884|998)\\d{4}"], [""], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], VN: ["84", "00", "[12]\\d{9}|[135-9]\\d{8}|[16]\\d{6,7}|7\\d{6}", [7, 8, 9, 10], [["(\\d{4})(\\d{4,6})", "$1 $2", ["1(?:2[02]|[89])"], 0, 1], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[26]|6"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[357-9]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["2[48]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["2"], "0$1", 1]], "0", 0, 0, 0, 0, 0, [["2(?:0[3-9]|1[0-689]|2[0-25-9]|[38][2-9]|4[2-8]|5[124-9]|6[0-39]|7[0-7]|9[0-4679])\\d{7}", [10]], ["121[0-3]\\d{5}|(?:160|(?:3\\d|7[06-9])\\d|5(?:[1689]\\d|2[238]|59)|8(?:[1-8]\\d|9[6-9])|9(?:[0-8]\\d|9[013-9]))\\d{6}", [9]], ["1800\\d{4,6}|12(?:0[13]|28)\\d{4}", [8, 9, 10]], ["1900\\d{4,6}", [8, 9, 10]], 0, 0, ["[17]99\\d{4}|69\\d{5,6}", [7, 8]], 0, ["672\\d{6}", [9]]]], VU: ["678", "00", "[57-9]\\d{6}|(?:[238]\\d|48)\\d{3}", [5, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["[57-9]"]]], 0, 0, 0, 0, 0, 0, [["(?:38[0-8]|48[4-9])\\d\\d|(?:2[02-9]|3[4-7]|88)\\d{3}", [5]], ["(?:[58]\\d|7[0-7])\\d{5}", [7]], ["81[18]\\d\\d", [5]], 0, 0, 0, ["(?:3[03]|900\\d)\\d{3}"], 0, ["9(?:0[1-9]|1[01])\\d{4}", [7]]]], WF: ["681", "00", "(?:40|72|8\\d{4})\\d{4}|[89]\\d{5}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[47-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]], 0, 0, 0, 0, 0, 0, [["72\\d{4}", [6]], ["(?:72|8[23])\\d{4}", [6]], ["80[0-5]\\d{6}", [9]], 0, 0, ["[48]0\\d{4}", [6]], 0, 0, ["9[23]\\d{4}", [6]]]], WS: ["685", "0", "(?:[2-6]|8\\d{5})\\d{4}|[78]\\d{6}|[68]\\d{5}", [5, 6, 7, 10], [["(\\d{5})", "$1", ["[2-5]|6[1-9]"]], ["(\\d{3})(\\d{3,7})", "$1 $2", ["[68]"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]], 0, 0, 0, 0, 0, 0, [["6[1-9]\\d{3}|(?:[2-5]|60)\\d{4}", [5, 6]], ["(?:7[1-35-8]|8(?:[3-7]|9\\d{3}))\\d{5}", [7, 10]], ["800\\d{3}", [6]]]], XK: ["383", "00", "2\\d{7,8}|3\\d{7,11}|(?:4\\d\\d|[89]00)\\d{5}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2|39"], "0$1"], ["(\\d{2})(\\d{7,10})", "$1 $2", ["3"], "0$1"]], "0", 0, 0, 0, 0, 0, [["38\\d{6,10}|(?:2[89]|39)(?:0\\d{5,6}|[1-9]\\d{5})"], ["4[3-9]\\d{6}", [8]], ["800\\d{5}", [8]], ["900\\d{5}", [8]]]], YE: ["967", "00", "(?:1|7\\d)\\d{7}|[1-7]\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-6]|7(?:[24-6]|8[0-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"], "0$1"]], "0", 0, 0, 0, 0, 0, [["78[0-7]\\d{4}|17\\d{6}|(?:[12][2-68]|3[2358]|4[2-58]|5[2-6]|6[3-58]|7[24-6])\\d{5}", [7, 8]], ["7[01378]\\d{7}", [9]]]], YT: ["262", "00", "(?:639\\d|7093)\\d{5}|(?:26|80|9\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["26(?:89\\d|9(?:0[0-467]|15|5[0-4]|6\\d|[78]0))\\d{4}"], ["(?:639(?:0[0-79]|1[019]|[267]\\d|3[09]|40|5[05-9]|9[04-79])|7093[5-7])\\d{4}"], ["80\\d{7}"], 0, 0, 0, 0, 0, ["9(?:(?:39|47)8[01]|769\\d)\\d{4}"]]], ZA: ["27", "00", "[1-79]\\d{8}|8\\d{4,9}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,4})", "$1 $2", ["8[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["8[1-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["860"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:2(?:0330|4302)|52087)0\\d{3}|(?:1[0-8]|2[1-378]|3[1-69]|4\\d|5[1346-8])\\d{7}", [9]], ["(?:1(?:3492[0-25]|4495[0235]|549(?:20|5[01]))|4[34]492[01])\\d{3}|8[1-4]\\d{3,7}|(?:2[27]|47|54)4950\\d{3}|(?:1(?:049[2-4]|9[12]\\d\\d)|(?:50[0-2]|[67]\\d\\d)\\d\\d|8(?:5\\d{3}|7(?:08[67]|158|28[5-9]|310)))\\d{4}|(?:1[6-8]|28|3[2-69]|4[025689]|5[36-8])4920\\d{3}|(?:12|[2-5]1)492\\d{4}", [5, 6, 7, 8, 9]], ["80\\d{7}", [9]], ["(?:86[2-9]|9[0-2]\\d)\\d{6}", [9]], 0, 0, ["861\\d{6,7}", [9, 10]], 0, ["87(?:08[0-589]|15[0-79]|28[0-4]|31[1-9])\\d{4}|87(?:[02][0-79]|1[0-46-9]|3[02-9]|[4-9]\\d)\\d{5}", [9]], ["860\\d{6}", [9]]]], ZM: ["260", "00", "800\\d{6}|(?:21|[579]\\d|63)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[28]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[579]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["21[1-8]\\d{6}"], ["(?:[59][5-8]|7[5-9])\\d{7}"], ["800\\d{6}"], 0, 0, 0, 0, 0, ["63\\d{7}"]]], ZW: ["263", "00", "(?:13|8\\d{4})\\d{5}|[235-8]\\d{8}|[2-689]\\d{6}", [7, 9, 10], [["(\\d{2})(\\d{3,5})", "$1 $2", ["1|2(?:0[0-36-9]|29|58)|67[0-46-9]|(?:55|68)[0-69]"], "0$1"], ["(\\d{3})(\\d{3,5})", "$1 $2", ["2(?:0[45]|[27]|48)|37|675|(?:55|68)[78]"], "0$1"], ["(\\d)(\\d{3})(\\d{2,4})", "$1 $2 $3", ["[49]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["80"], "0$1"], ["(\\d{4})(\\d{3,5})", "$1 $2", ["548"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["29[013-9]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[256]|39|8[13-59]"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["3"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:2(?:(?:(?:02[014]|72[03])\\d|48)\\d|2(?:[278]\\d|92)|583)|(?:37[56]|6[78]21\\d)\\d|5(?:483|525\\d\\d))\\d{3}|(?:2(?:0\\d|7[1-7])|(?:55|6[78])\\d)\\d{4}|(?:13|2(?:(?:42|9\\d)\\d|[56]20)|3(?:123|92\\d)|(?:4|542)\\d|6(?:[16]21|52[013])|8(?:[1349]28|523)|9[2-9])\\d{5}", [7, 9]], ["7(?:[1278]\\d|3[1-9]|9[01])\\d{6}", [9]], ["80(?:[01]\\d|20|8[0-8])\\d{3}", [7]], 0, 0, 0, 0, 0, ["86(?:1[12]|22|30|44|55|77|8[368])\\d{6}", [10]]]] }, nonGeographic: { "800": ["800", 0, "(?:00|[1-9]\\d)\\d{6}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["\\d"]]], 0, 0, 0, 0, 0, 0, [0, 0, ["(?:00|[1-9]\\d)\\d{6}"]]], "808": ["808", 0, "[1-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[1-9]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, 0, ["[1-9]\\d{7}"]]], "870": ["870", 0, "7\\d{11}|[235-7]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-7]"]]], 0, 0, 0, 0, 0, 0, [0, ["(?:[356]|774[45])\\d{8}|7[6-8]\\d{7}"], 0, 0, 0, 0, 0, 0, ["2\\d{8}", [9]]]], "878": ["878", 0, "10\\d{10}", [12], [["(\\d{2})(\\d{5})(\\d{5})", "$1 $2 $3", ["1"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["10\\d{10}"]]], "881": ["881", 0, "6\\d{9}|[0-36-9]\\d{8}", [9, 10], [["(\\d)(\\d{3})(\\d{5})", "$1 $2 $3", ["[0-37-9]"]], ["(\\d)(\\d{3})(\\d{5,6})", "$1 $2 $3", ["6"]]], 0, 0, 0, 0, 0, 0, [0, ["6\\d{9}|[0-36-9]\\d{8}"]]], "882": ["882", 0, "[13]\\d{6}(?:\\d{2,5})?|[19]\\d{7}|(?:[25]\\d\\d|4)\\d{7}(?:\\d{2})?", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5})", "$1 $2", ["16|342"]], ["(\\d{2})(\\d{6})", "$1 $2", ["49"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["1[36]|9"]], ["(\\d{2})(\\d{4})(\\d{3})", "$1 $2 $3", ["3[23]"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["16"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|23|3(?:[15]|4[57])|4|5[12]"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["34"]], ["(\\d{2})(\\d{4,5})(\\d{5})", "$1 $2 $3", ["[1-35]"]]], 0, 0, 0, 0, 0, 0, [0, ["342\\d{4}|(?:337|49)\\d{6}|(?:3(?:2|47|7\\d{3})|5(?:0\\d{3}|2[0-2]))\\d{7}", [7, 8, 9, 10, 12]], 0, 0, 0, ["348[57]\\d{7}", [11]], 0, 0, ["1(?:3(?:0[0347]|[13][0139]|2[035]|4[013568]|6[0459]|7[06]|8[15-8]|9[0689])\\d{4}|6\\d{5,10})|(?:345\\d|9[89])\\d{6}|(?:10|2(?:3|85\\d)|3(?:[15]|[69]\\d\\d)|4[15-8]|51)\\d{8}"]]], "883": ["883", 0, "(?:[1-4]\\d|51)\\d{6,10}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,8})", "$1 $2 $3", ["[14]|2[24-689]|3[02-689]|51[24-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["510"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["21"]], ["(\\d{4})(\\d{4})(\\d{4})", "$1 $2 $3", ["51[13]"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[235]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["(?:2(?:00\\d\\d|10)|(?:370[1-9]|51\\d0)\\d)\\d{7}|51(?:00\\d{5}|[24-9]0\\d{4,7})|(?:1[0-79]|2[24-689]|3[02-689]|4[0-4])0\\d{5,9}"]]], "888": ["888", 0, "\\d{11}", [11], [["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3"]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, ["\\d{11}"]]], "979": ["979", 0, "[1359]\\d{8}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[1359]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, ["[1359]\\d{8}"]]] } }; } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/isObject.js var require_isObject = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/isObject.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = isObject2; var objectConstructor = {}.constructor; function isObject2(object) { return object !== void 0 && object !== null && object.constructor === objectConstructor; } __name(isObject2, "isObject"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/normalizeArguments.js var require_normalizeArguments = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/normalizeArguments.js"(exports2) { "use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = normalizeArguments; var _isObject = _interopRequireDefault(require_isObject()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function ownKeys2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function(r2) { return Object.getOwnPropertyDescriptor(e, r2).enumerable; })), t.push.apply(t, o); } return t; } __name(ownKeys2, "ownKeys"); function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys2(Object(t), true).forEach(function(r2) { _defineProperty(e, r2, t[r2]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys2(Object(t)).forEach(function(r2) { Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2)); }); } return e; } __name(_objectSpread, "_objectSpread"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; } __name(_defineProperty, "_defineProperty"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } __name(_slicedToArray, "_slicedToArray"); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_nonIterableRest, "_nonIterableRest"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function _iterableToArrayLimit(r, l2) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = true, o = false; try { if (i = (t = t.call(r)).next, 0 === l2) { if (Object(t) !== t) return; f = false; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l2); f = true) ; } catch (r2) { o = true, n = r2; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } __name(_iterableToArrayLimit, "_iterableToArrayLimit"); function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } __name(_arrayWithHoles, "_arrayWithHoles"); function normalizeArguments(args) { var _Array$prototype$slic = Array.prototype.slice.call(args), _Array$prototype$slic2 = _slicedToArray(_Array$prototype$slic, 4), arg_1 = _Array$prototype$slic2[0], arg_2 = _Array$prototype$slic2[1], arg_3 = _Array$prototype$slic2[2], arg_4 = _Array$prototype$slic2[3]; var text; var options; var metadata; if (typeof arg_1 === "string") { text = arg_1; } else throw new TypeError("A text for parsing must be a string."); if (!arg_2 || typeof arg_2 === "string") { if (arg_4) { options = arg_3; metadata = arg_4; } else { options = void 0; metadata = arg_3; } if (arg_2) { options = _objectSpread({ defaultCountry: arg_2 }, options); } } else if ((0, _isObject["default"])(arg_2)) { if (arg_3) { options = arg_2; metadata = arg_3; } else { metadata = arg_2; } } else throw new Error("Invalid second argument: ".concat(arg_2)); return { text, options, metadata }; } __name(normalizeArguments, "normalizeArguments"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/constants.js var require_constants3 = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.WHITESPACE = exports2.VALID_PUNCTUATION = exports2.VALID_DIGITS = exports2.PLUS_CHARS = exports2.MIN_LENGTH_FOR_NSN = exports2.MAX_LENGTH_FOR_NSN = exports2.MAX_LENGTH_COUNTRY_CODE = void 0; var MIN_LENGTH_FOR_NSN = exports2.MIN_LENGTH_FOR_NSN = 2; var MAX_LENGTH_FOR_NSN = exports2.MAX_LENGTH_FOR_NSN = 17; var MAX_LENGTH_COUNTRY_CODE = exports2.MAX_LENGTH_COUNTRY_CODE = 3; var VALID_DIGITS = exports2.VALID_DIGITS = "0-9\uFF10-\uFF19\u0660-\u0669\u06F0-\u06F9"; var DASHES = "-\u2010-\u2015\u2212\u30FC\uFF0D"; var SLASHES = "\uFF0F/"; var DOTS = "\uFF0E."; var WHITESPACE = exports2.WHITESPACE = " \xA0\xAD\u200B\u2060\u3000"; var BRACKETS = "()\uFF08\uFF09\uFF3B\uFF3D\\[\\]"; var TILDES = "~\u2053\u223C\uFF5E"; var VALID_PUNCTUATION = exports2.VALID_PUNCTUATION = "".concat(DASHES).concat(SLASHES).concat(DOTS).concat(WHITESPACE).concat(BRACKETS).concat(TILDES); var PLUS_CHARS = exports2.PLUS_CHARS = "+\uFF0B"; } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/ParseError.js var require_ParseError = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/ParseError.js"(exports2) { "use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = void 0; function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } __name(_callSuper, "_callSuper"); function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } __name(_possibleConstructorReturn, "_possibleConstructorReturn"); function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } __name(_assertThisInitialized, "_assertThisInitialized"); function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: true, configurable: true } }), Object.defineProperty(t, "prototype", { writable: false }), e && _setPrototypeOf(t, e); } __name(_inherits, "_inherits"); function _wrapNativeSuper(t) { var r = "function" == typeof Map ? /* @__PURE__ */ new Map() : void 0; return _wrapNativeSuper = /* @__PURE__ */ __name(function _wrapNativeSuper2(t2) { if (null === t2 || !_isNativeFunction(t2)) return t2; if ("function" != typeof t2) throw new TypeError("Super expression must either be null or a function"); if (void 0 !== r) { if (r.has(t2)) return r.get(t2); r.set(t2, Wrapper); } function Wrapper() { return _construct(t2, arguments, _getPrototypeOf(this).constructor); } __name(Wrapper, "Wrapper"); return Wrapper.prototype = Object.create(t2.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }), _setPrototypeOf(Wrapper, t2); }, "_wrapNativeSuper"), _wrapNativeSuper(t); } __name(_wrapNativeSuper, "_wrapNativeSuper"); function _construct(t, e, r) { if (_isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments); var o = [null]; o.push.apply(o, e); var p = new (t.bind.apply(t, o))(); return r && _setPrototypeOf(p, r.prototype), p; } __name(_construct, "_construct"); function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() { })); } catch (t2) { } return (_isNativeReflectConstruct = /* @__PURE__ */ __name(function _isNativeReflectConstruct2() { return !!t; }, "_isNativeReflectConstruct"))(); } __name(_isNativeReflectConstruct, "_isNativeReflectConstruct"); function _isNativeFunction(t) { try { return -1 !== Function.toString.call(t).indexOf("[native code]"); } catch (n) { return "function" == typeof t; } } __name(_isNativeFunction, "_isNativeFunction"); function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(t2, e2) { return t2.__proto__ = e2, t2; }, _setPrototypeOf(t, e); } __name(_setPrototypeOf, "_setPrototypeOf"); function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(t2) { return t2.__proto__ || Object.getPrototypeOf(t2); }, _getPrototypeOf(t); } __name(_getPrototypeOf, "_getPrototypeOf"); var ParseError = exports2["default"] = /* @__PURE__ */ (function(_Error) { function ParseError2(code) { var _this; _classCallCheck(this, ParseError2); _this = _callSuper(this, ParseError2, [code]); Object.setPrototypeOf(_this, ParseError2.prototype); _this.name = _this.constructor.name; return _this; } __name(ParseError2, "ParseError"); _inherits(ParseError2, _Error); return _createClass(ParseError2); })(/* @__PURE__ */ _wrapNativeSuper(Error)); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/tools/semver-compare.js var require_semver_compare = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/tools/semver-compare.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = _default; function _default(a, b) { a = a.split("-"); b = b.split("-"); var pa = a[0].split("."); var pb = b[0].split("."); for (var i = 0; i < 3; i++) { var na = Number(pa[i]); var nb = Number(pb[i]); if (na > nb) return 1; if (nb > na) return -1; if (!isNaN(na) && isNaN(nb)) return 1; if (isNaN(na) && !isNaN(nb)) return -1; } if (a[1] && b[1]) { return a[1] > b[1] ? 1 : a[1] < b[1] ? -1 : 0; } return !a[1] && b[1] ? 1 : a[1] && !b[1] ? -1 : 0; } __name(_default, "_default"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/isCallingCode.js var require_isCallingCode = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/isCallingCode.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = isCallingCode; var CALLING_CODE_REG_EXP = /^\d+$/; function isCallingCode(string) { return CALLING_CODE_REG_EXP.test(string); } __name(isCallingCode, "isCallingCode"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/metadata.js var require_metadata = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/metadata.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = void 0; exports2.getCountryCallingCode = getCountryCallingCode; exports2.getExtPrefix = getExtPrefix; exports2.isSupportedCountry = isSupportedCountry; exports2.validateMetadata = validateMetadata; var _semverCompare = _interopRequireDefault(require_semver_compare()); var _isObject = _interopRequireDefault(require_isObject()); var _isCallingCode = _interopRequireDefault(require_isCallingCode()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); var V3 = "1.2.0"; var V4 = "1.7.35"; var DEFAULT_EXT_PREFIX = " ext. "; var Metadata = exports2["default"] = /* @__PURE__ */ (function() { function Metadata2(metadata) { _classCallCheck(this, Metadata2); validateMetadata(metadata); this.metadata = metadata; setVersion.call(this, metadata); } __name(Metadata2, "Metadata"); return _createClass(Metadata2, [{ key: "getCountries", value: /* @__PURE__ */ __name(function getCountries() { return Object.keys(this.metadata.countries).filter(function(_2) { return _2 !== "001"; }); }, "getCountries") }, { key: "getCountryMetadata", value: /* @__PURE__ */ __name(function getCountryMetadata(countryCode) { return this.metadata.countries[countryCode]; }, "getCountryMetadata") }, { key: "nonGeographic", value: /* @__PURE__ */ __name(function nonGeographic() { if (this.v1 || this.v2 || this.v3) return; return this.metadata.nonGeographic || this.metadata.nonGeographical; }, "nonGeographic") }, { key: "hasCountry", value: /* @__PURE__ */ __name(function hasCountry(country2) { return this.getCountryMetadata(country2) !== void 0; }, "hasCountry") }, { key: "hasCallingCode", value: /* @__PURE__ */ __name(function hasCallingCode(callingCode) { if (this.getCountryCodesForCallingCode(callingCode)) { return true; } if (this.nonGeographic()) { if (this.nonGeographic()[callingCode]) { return true; } } else { var countryCodes = this.countryCallingCodes()[callingCode]; if (countryCodes && countryCodes.length === 1 && countryCodes[0] === "001") { return true; } } }, "hasCallingCode") }, { key: "isNonGeographicCallingCode", value: /* @__PURE__ */ __name(function isNonGeographicCallingCode(callingCode) { if (this.nonGeographic()) { return this.nonGeographic()[callingCode] ? true : false; } else { return this.getCountryCodesForCallingCode(callingCode) ? false : true; } }, "isNonGeographicCallingCode") // Deprecated. }, { key: "country", value: /* @__PURE__ */ __name(function country2(countryCode) { return this.selectNumberingPlan(countryCode); }, "country") /** * Selects a telephone numbering plan based on either a country code or a calling code. * @param {string} argument — Country code or calling code. * @param {string} legacyArgumentCallingCode — Legacy argument: calling code, if the first argument is not passed. */ }, { key: "selectNumberingPlan", value: /* @__PURE__ */ __name(function selectNumberingPlan(argument, legacyArgumentCallingCode) { var countryCode; var callingCode; if (argument) { if ((0, _isCallingCode["default"])(argument)) { callingCode = argument; } else { countryCode = argument; } } if (legacyArgumentCallingCode) { callingCode = legacyArgumentCallingCode; } if (countryCode && countryCode !== "001") { var countryMetadata = this.getCountryMetadata(countryCode); if (!countryMetadata) { throw new Error("Unknown country: ".concat(countryCode)); } this.numberingPlan = new NumberingPlan(countryMetadata, this); } else if (callingCode) { if (!this.hasCallingCode(callingCode)) { throw new Error("Unknown calling code: ".concat(callingCode)); } this.numberingPlan = new NumberingPlan(this.getNumberingPlanMetadata(callingCode), this); } else { this.numberingPlan = void 0; } return this; }, "selectNumberingPlan") }, { key: "getCountryCodesForCallingCode", value: /* @__PURE__ */ __name(function getCountryCodesForCallingCode(callingCode) { var countryCodes = this.countryCallingCodes()[callingCode]; if (countryCodes) { if (countryCodes.length === 1 && countryCodes[0].length === 3) { return; } return countryCodes; } }, "getCountryCodesForCallingCode") }, { key: "getCountryCodeForCallingCode", value: /* @__PURE__ */ __name(function getCountryCodeForCallingCode(callingCode) { var countryCodes = this.getCountryCodesForCallingCode(callingCode); if (countryCodes) { return countryCodes[0]; } }, "getCountryCodeForCallingCode") }, { key: "getNumberingPlanMetadata", value: /* @__PURE__ */ __name(function getNumberingPlanMetadata(callingCode) { var countryCode = this.getCountryCodeForCallingCode(callingCode); if (countryCode) { return this.getCountryMetadata(countryCode); } if (this.nonGeographic()) { var metadata = this.nonGeographic()[callingCode]; if (metadata) { return metadata; } } else { var countryCodes = this.countryCallingCodes()[callingCode]; if (countryCodes && countryCodes.length === 1 && countryCodes[0] === "001") { return this.metadata.countries["001"]; } } }, "getNumberingPlanMetadata") // Deprecated. }, { key: "countryCallingCode", value: /* @__PURE__ */ __name(function countryCallingCode() { return this.numberingPlan.callingCode(); }, "countryCallingCode") // Deprecated. }, { key: "IDDPrefix", value: /* @__PURE__ */ __name(function IDDPrefix() { return this.numberingPlan.IDDPrefix(); }, "IDDPrefix") // Deprecated. }, { key: "defaultIDDPrefix", value: /* @__PURE__ */ __name(function defaultIDDPrefix() { return this.numberingPlan.defaultIDDPrefix(); }, "defaultIDDPrefix") // Deprecated. }, { key: "nationalNumberPattern", value: /* @__PURE__ */ __name(function nationalNumberPattern() { return this.numberingPlan.nationalNumberPattern(); }, "nationalNumberPattern") // Deprecated. }, { key: "possibleLengths", value: /* @__PURE__ */ __name(function possibleLengths() { return this.numberingPlan.possibleLengths(); }, "possibleLengths") // Deprecated. }, { key: "formats", value: /* @__PURE__ */ __name(function formats() { return this.numberingPlan.formats(); }, "formats") // Deprecated. }, { key: "nationalPrefixForParsing", value: /* @__PURE__ */ __name(function nationalPrefixForParsing() { return this.numberingPlan.nationalPrefixForParsing(); }, "nationalPrefixForParsing") // Deprecated. }, { key: "nationalPrefixTransformRule", value: /* @__PURE__ */ __name(function nationalPrefixTransformRule() { return this.numberingPlan.nationalPrefixTransformRule(); }, "nationalPrefixTransformRule") // Deprecated. }, { key: "leadingDigits", value: /* @__PURE__ */ __name(function leadingDigits() { return this.numberingPlan.leadingDigits(); }, "leadingDigits") // Deprecated. }, { key: "hasTypes", value: /* @__PURE__ */ __name(function hasTypes() { return this.numberingPlan.hasTypes(); }, "hasTypes") // Deprecated. }, { key: "type", value: /* @__PURE__ */ __name(function type(_type) { return this.numberingPlan.type(_type); }, "type") // Deprecated. }, { key: "ext", value: /* @__PURE__ */ __name(function ext() { return this.numberingPlan.ext(); }, "ext") }, { key: "countryCallingCodes", value: /* @__PURE__ */ __name(function countryCallingCodes() { if (this.v1) return this.metadata.country_phone_code_to_countries; return this.metadata.country_calling_codes; }, "countryCallingCodes") // Deprecated. }, { key: "chooseCountryByCountryCallingCode", value: /* @__PURE__ */ __name(function chooseCountryByCountryCallingCode(callingCode) { return this.selectNumberingPlan(callingCode); }, "chooseCountryByCountryCallingCode") }, { key: "hasSelectedNumberingPlan", value: /* @__PURE__ */ __name(function hasSelectedNumberingPlan() { return this.numberingPlan !== void 0; }, "hasSelectedNumberingPlan") }]); })(); var NumberingPlan = /* @__PURE__ */ (function() { function NumberingPlan2(metadata, globalMetadataObject) { _classCallCheck(this, NumberingPlan2); this.globalMetadataObject = globalMetadataObject; this.metadata = metadata; setVersion.call(this, globalMetadataObject.metadata); } __name(NumberingPlan2, "NumberingPlan"); return _createClass(NumberingPlan2, [{ key: "callingCode", value: /* @__PURE__ */ __name(function callingCode() { return this.metadata[0]; }, "callingCode") // When multiple countries share the same calling code, // all phone number formatting rules are included in the metadata // of the "default" country for that calling code. // Any other countries' metdata doesn't include any formatting rules. // Google developers said that such storage architecture was chosen for performance reasons. // // For example, for NANPA region ("North American Numbering Plan Administration", // which includes USA, Canada, Cayman Islands, Bahamas, etc) all formatting rules // are contained in the metadata of `US` country. // // This is not public API. // }, { key: "_getDefaultCountryMetadataForThisCallingCode", value: /* @__PURE__ */ __name(function _getDefaultCountryMetadataForThisCallingCode() { return this.globalMetadataObject.getNumberingPlanMetadata(this.callingCode()); }, "_getDefaultCountryMetadataForThisCallingCode") // Deprecated. }, { key: "getDefaultCountryMetadataForRegion", value: /* @__PURE__ */ __name(function getDefaultCountryMetadataForRegion() { return this._getDefaultCountryMetadataForThisCallingCode(); }, "getDefaultCountryMetadataForRegion") // Is always present. }, { key: "IDDPrefix", value: /* @__PURE__ */ __name(function IDDPrefix() { if (this.v1 || this.v2) return; return this.metadata[1]; }, "IDDPrefix") // Is only present when a country supports multiple IDD prefixes. }, { key: "defaultIDDPrefix", value: /* @__PURE__ */ __name(function defaultIDDPrefix() { if (this.v1 || this.v2) return; return this.metadata[12]; }, "defaultIDDPrefix") }, { key: "nationalNumberPattern", value: /* @__PURE__ */ __name(function nationalNumberPattern() { if (this.v1 || this.v2) return this.metadata[1]; return this.metadata[2]; }, "nationalNumberPattern") // "possible length" data is always present in Google's metadata. }, { key: "possibleLengths", value: /* @__PURE__ */ __name(function possibleLengths() { if (this.v1) return; return this.metadata[this.v2 ? 2 : 3]; }, "possibleLengths") }, { key: "_getFormats", value: /* @__PURE__ */ __name(function _getFormats(metadata) { return metadata[this.v1 ? 2 : this.v2 ? 3 : 4]; }, "_getFormats") // For countries of the same region (e.g. NANPA) // formats are all stored in the "main" country for that region. // E.g. "RU" and "KZ", "US" and "CA". }, { key: "formats", value: /* @__PURE__ */ __name(function formats() { var _this = this; var formats2 = this._getFormats(this.metadata) || this._getFormats(this._getDefaultCountryMetadataForThisCallingCode()) || []; return formats2.map(function(_2) { return new Format(_2, _this); }); }, "formats") }, { key: "nationalPrefix", value: /* @__PURE__ */ __name(function nationalPrefix() { return this.metadata[this.v1 ? 3 : this.v2 ? 4 : 5]; }, "nationalPrefix") }, { key: "_getNationalPrefixFormattingRule", value: /* @__PURE__ */ __name(function _getNationalPrefixFormattingRule(metadata) { return metadata[this.v1 ? 4 : this.v2 ? 5 : 6]; }, "_getNationalPrefixFormattingRule") // For countries of the same region (e.g. NANPA) // national prefix formatting rule is stored in the "main" country for that region. // E.g. "RU" and "KZ", "US" and "CA". }, { key: "nationalPrefixFormattingRule", value: /* @__PURE__ */ __name(function nationalPrefixFormattingRule() { return this._getNationalPrefixFormattingRule(this.metadata) || this._getNationalPrefixFormattingRule(this._getDefaultCountryMetadataForThisCallingCode()); }, "nationalPrefixFormattingRule") }, { key: "_nationalPrefixForParsing", value: /* @__PURE__ */ __name(function _nationalPrefixForParsing() { return this.metadata[this.v1 ? 5 : this.v2 ? 6 : 7]; }, "_nationalPrefixForParsing") }, { key: "nationalPrefixForParsing", value: /* @__PURE__ */ __name(function nationalPrefixForParsing() { return this._nationalPrefixForParsing() || this.nationalPrefix(); }, "nationalPrefixForParsing") }, { key: "nationalPrefixTransformRule", value: /* @__PURE__ */ __name(function nationalPrefixTransformRule() { return this.metadata[this.v1 ? 6 : this.v2 ? 7 : 8]; }, "nationalPrefixTransformRule") }, { key: "_getNationalPrefixIsOptionalWhenFormatting", value: /* @__PURE__ */ __name(function _getNationalPrefixIsOptionalWhenFormatting() { return !!this.metadata[this.v1 ? 7 : this.v2 ? 8 : 9]; }, "_getNationalPrefixIsOptionalWhenFormatting") // For countries of the same region (e.g. NANPA) // "national prefix is optional when formatting" flag is // stored in the "main" country for that region. // E.g. "RU" and "KZ", "US" and "CA". }, { key: "nationalPrefixIsOptionalWhenFormattingInNationalFormat", value: /* @__PURE__ */ __name(function nationalPrefixIsOptionalWhenFormattingInNationalFormat() { return this._getNationalPrefixIsOptionalWhenFormatting(this.metadata) || this._getNationalPrefixIsOptionalWhenFormatting(this._getDefaultCountryMetadataForThisCallingCode()); }, "nationalPrefixIsOptionalWhenFormattingInNationalFormat") }, { key: "leadingDigits", value: /* @__PURE__ */ __name(function leadingDigits() { return this.metadata[this.v1 ? 8 : this.v2 ? 9 : 10]; }, "leadingDigits") }, { key: "types", value: /* @__PURE__ */ __name(function types() { return this.metadata[this.v1 ? 9 : this.v2 ? 10 : 11]; }, "types") }, { key: "hasTypes", value: /* @__PURE__ */ __name(function hasTypes() { if (this.types() && this.types().length === 0) { return false; } return !!this.types(); }, "hasTypes") }, { key: "type", value: /* @__PURE__ */ __name(function type(_type2) { if (this.hasTypes() && getType(this.types(), _type2)) { return new Type(getType(this.types(), _type2), this); } }, "type") }, { key: "ext", value: /* @__PURE__ */ __name(function ext() { if (this.v1 || this.v2) return DEFAULT_EXT_PREFIX; return this.metadata[13] || DEFAULT_EXT_PREFIX; }, "ext") }]); })(); var Format = /* @__PURE__ */ (function() { function Format2(format, metadata) { _classCallCheck(this, Format2); this._format = format; this.metadata = metadata; } __name(Format2, "Format"); return _createClass(Format2, [{ key: "pattern", value: /* @__PURE__ */ __name(function pattern() { return this._format[0]; }, "pattern") }, { key: "format", value: /* @__PURE__ */ __name(function format() { return this._format[1]; }, "format") }, { key: "leadingDigitsPatterns", value: /* @__PURE__ */ __name(function leadingDigitsPatterns() { return this._format[2] || []; }, "leadingDigitsPatterns") }, { key: "nationalPrefixFormattingRule", value: /* @__PURE__ */ __name(function nationalPrefixFormattingRule() { return this._format[3] || this.metadata.nationalPrefixFormattingRule(); }, "nationalPrefixFormattingRule") }, { key: "nationalPrefixIsOptionalWhenFormattingInNationalFormat", value: /* @__PURE__ */ __name(function nationalPrefixIsOptionalWhenFormattingInNationalFormat() { return !!this._format[4] || this.metadata.nationalPrefixIsOptionalWhenFormattingInNationalFormat(); }, "nationalPrefixIsOptionalWhenFormattingInNationalFormat") }, { key: "nationalPrefixIsMandatoryWhenFormattingInNationalFormat", value: /* @__PURE__ */ __name(function nationalPrefixIsMandatoryWhenFormattingInNationalFormat() { return this.usesNationalPrefix() && !this.nationalPrefixIsOptionalWhenFormattingInNationalFormat(); }, "nationalPrefixIsMandatoryWhenFormattingInNationalFormat") // Checks whether national prefix formatting rule contains national prefix. }, { key: "usesNationalPrefix", value: /* @__PURE__ */ __name(function usesNationalPrefix() { return this.nationalPrefixFormattingRule() && // Check that national prefix formatting rule is not a "dummy" one. !FIRST_GROUP_ONLY_PREFIX_PATTERN.test(this.nationalPrefixFormattingRule()) ? true : false; }, "usesNationalPrefix") }, { key: "internationalFormat", value: /* @__PURE__ */ __name(function internationalFormat() { return this._format[5] || this.format(); }, "internationalFormat") }]); })(); var FIRST_GROUP_ONLY_PREFIX_PATTERN = /^\(?\$1\)?$/; var Type = /* @__PURE__ */ (function() { function Type2(type, metadata) { _classCallCheck(this, Type2); this.type = type; this.metadata = metadata; } __name(Type2, "Type"); return _createClass(Type2, [{ key: "pattern", value: /* @__PURE__ */ __name(function pattern() { if (this.metadata.v1) return this.type; return this.type[0]; }, "pattern") }, { key: "possibleLengths", value: /* @__PURE__ */ __name(function possibleLengths() { if (this.metadata.v1) return; return this.type[1] || this.metadata.possibleLengths(); }, "possibleLengths") }]); })(); function getType(types, type) { switch (type) { case "FIXED_LINE": return types[0]; case "MOBILE": return types[1]; case "TOLL_FREE": return types[2]; case "PREMIUM_RATE": return types[3]; case "PERSONAL_NUMBER": return types[4]; case "VOICEMAIL": return types[5]; case "UAN": return types[6]; case "PAGER": return types[7]; case "VOIP": return types[8]; case "SHARED_COST": return types[9]; } } __name(getType, "getType"); function validateMetadata(metadata) { if (!metadata) { throw new Error("[libphonenumber-js] `metadata` argument not passed. Check your arguments."); } if (!(0, _isObject["default"])(metadata) || !(0, _isObject["default"])(metadata.countries)) { throw new Error("[libphonenumber-js] `metadata` argument was passed but it's not a valid metadata. Must be an object having `.countries` child object property. Got ".concat((0, _isObject["default"])(metadata) ? "an object of shape: { " + Object.keys(metadata).join(", ") + " }" : "a " + typeOf(metadata) + ": " + metadata, ".")); } } __name(validateMetadata, "validateMetadata"); var typeOf = /* @__PURE__ */ __name(function typeOf2(_2) { return _typeof(_2); }, "typeOf"); function getExtPrefix(country2, metadataJson) { var metadata = new Metadata(metadataJson); if (metadata.hasCountry(country2)) { return metadata.selectNumberingPlan(country2).ext(); } return DEFAULT_EXT_PREFIX; } __name(getExtPrefix, "getExtPrefix"); function getCountryCallingCode(country2, metadataJson) { var metadata = new Metadata(metadataJson); if (metadata.hasCountry(country2)) { return metadata.selectNumberingPlan(country2).countryCallingCode(); } throw new Error("Unknown country: ".concat(country2)); } __name(getCountryCallingCode, "getCountryCallingCode"); function isSupportedCountry(country2, metadataJson) { return metadataJson.countries.hasOwnProperty(country2); } __name(isSupportedCountry, "isSupportedCountry"); function setVersion(metadata) { var version2 = metadata.version; if (typeof version2 === "number") { this.v1 = version2 === 1; this.v2 = version2 === 2; this.v3 = version2 === 3; this.v4 = version2 === 4; } else { if (!version2) { this.v1 = true; } else if ((0, _semverCompare["default"])(version2, V3) === -1) { this.v2 = true; } else if ((0, _semverCompare["default"])(version2, V4) === -1) { this.v3 = true; } else { this.v4 = true; } } } __name(setVersion, "setVersion"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extension/createExtensionPattern.js var require_createExtensionPattern = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extension/createExtensionPattern.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = createExtensionPattern; var _constants = require_constants3(); var RFC3966_EXTN_PREFIX = ";ext="; var getExtensionDigitsPattern = /* @__PURE__ */ __name(function getExtensionDigitsPattern2(maxLength) { return "([".concat(_constants.VALID_DIGITS, "]{1,").concat(maxLength, "})"); }, "getExtensionDigitsPattern"); function createExtensionPattern(purpose) { var extLimitAfterExplicitLabel = "20"; var extLimitAfterLikelyLabel = "15"; var extLimitAfterAmbiguousChar = "9"; var extLimitWhenNotSure = "6"; var possibleSeparatorsBetweenNumberAndExtLabel = "[ \xA0\\t,]*"; var possibleCharsAfterExtLabel = "[:\\.\uFF0E]?[ \xA0\\t,-]*"; var optionalExtnSuffix = "#?"; var explicitExtLabels = "(?:e?xt(?:ensi(?:o\u0301?|\xF3))?n?|\uFF45?\uFF58\uFF54\uFF4E?|\u0434\u043E\u0431|anexo)"; var ambiguousExtLabels = "(?:[x\uFF58#\uFF03~\uFF5E]|int|\uFF49\uFF4E\uFF54)"; var ambiguousSeparator = "[- ]+"; var possibleSeparatorsNumberExtLabelNoComma = "[ \xA0\\t]*"; var autoDiallingAndExtLabelsFound = "(?:,{2}|;)"; var rfcExtn = RFC3966_EXTN_PREFIX + getExtensionDigitsPattern(extLimitAfterExplicitLabel); var explicitExtn = possibleSeparatorsBetweenNumberAndExtLabel + explicitExtLabels + possibleCharsAfterExtLabel + getExtensionDigitsPattern(extLimitAfterExplicitLabel) + optionalExtnSuffix; var ambiguousExtn = possibleSeparatorsBetweenNumberAndExtLabel + ambiguousExtLabels + possibleCharsAfterExtLabel + getExtensionDigitsPattern(extLimitAfterAmbiguousChar) + optionalExtnSuffix; var americanStyleExtnWithSuffix = ambiguousSeparator + getExtensionDigitsPattern(extLimitWhenNotSure) + "#"; var autoDiallingExtn = possibleSeparatorsNumberExtLabelNoComma + autoDiallingAndExtLabelsFound + possibleCharsAfterExtLabel + getExtensionDigitsPattern(extLimitAfterLikelyLabel) + optionalExtnSuffix; var onlyCommasExtn = possibleSeparatorsNumberExtLabelNoComma + "(?:,)+" + possibleCharsAfterExtLabel + getExtensionDigitsPattern(extLimitAfterAmbiguousChar) + optionalExtnSuffix; return rfcExtn + "|" + explicitExtn + "|" + ambiguousExtn + "|" + americanStyleExtnWithSuffix + "|" + autoDiallingExtn + "|" + onlyCommasExtn; } __name(createExtensionPattern, "createExtensionPattern"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/isViablePhoneNumber.js var require_isViablePhoneNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/isViablePhoneNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.VALID_PHONE_NUMBER_WITH_EXTENSION = exports2.VALID_PHONE_NUMBER = void 0; exports2["default"] = isViablePhoneNumber; exports2.isViablePhoneNumberStart = isViablePhoneNumberStart; var _constants = require_constants3(); var _createExtensionPattern = _interopRequireDefault(require_createExtensionPattern()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var MIN_LENGTH_PHONE_NUMBER_PATTERN = "[" + _constants.VALID_DIGITS + "]{" + _constants.MIN_LENGTH_FOR_NSN + "}"; var VALID_PHONE_NUMBER = exports2.VALID_PHONE_NUMBER = "[" + _constants.PLUS_CHARS + "]{0,1}(?:[" + _constants.VALID_PUNCTUATION + "]*[" + _constants.VALID_DIGITS + "]){3,}[" + _constants.VALID_PUNCTUATION + _constants.VALID_DIGITS + "]*"; var VALID_PHONE_NUMBER_START_REG_EXP = new RegExp("^[" + _constants.PLUS_CHARS + "]{0,1}(?:[" + _constants.VALID_PUNCTUATION + "]*[" + _constants.VALID_DIGITS + "]){1,2}$", "i"); var VALID_PHONE_NUMBER_WITH_EXTENSION = exports2.VALID_PHONE_NUMBER_WITH_EXTENSION = VALID_PHONE_NUMBER + // Phone number extensions "(?:" + (0, _createExtensionPattern["default"])() + ")?"; var VALID_PHONE_NUMBER_PATTERN = new RegExp( // Either a short two-digit-only phone number "^" + MIN_LENGTH_PHONE_NUMBER_PATTERN + "$|^" + VALID_PHONE_NUMBER_WITH_EXTENSION + "$", "i" ); function isViablePhoneNumber(number) { return number.length >= _constants.MIN_LENGTH_FOR_NSN && VALID_PHONE_NUMBER_PATTERN.test(number); } __name(isViablePhoneNumber, "isViablePhoneNumber"); function isViablePhoneNumberStart(number) { return VALID_PHONE_NUMBER_START_REG_EXP.test(number); } __name(isViablePhoneNumberStart, "isViablePhoneNumberStart"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extension/extractExtension.js var require_extractExtension = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extension/extractExtension.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = extractExtension; var _createExtensionPattern = _interopRequireDefault(require_createExtensionPattern()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var EXTN_PATTERN = new RegExp("(?:" + (0, _createExtensionPattern["default"])() + ")$", "i"); function extractExtension(number) { var start = number.search(EXTN_PATTERN); if (start < 0) { return {}; } var numberWithoutExtension = number.slice(0, start); var matches = number.match(EXTN_PATTERN); var i = 1; while (i < matches.length) { if (matches[i]) { return { number: numberWithoutExtension, ext: matches[i] }; } i++; } } __name(extractExtension, "extractExtension"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/parseDigits.js var require_parseDigits = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/parseDigits.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DIGITS = void 0; exports2["default"] = parseDigits; exports2.parseDigit = parseDigit; function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function() { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_createForOfIteratorHelperLoose, "_createForOfIteratorHelperLoose"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); var DIGITS = exports2.DIGITS = { "0": "0", "1": "1", "2": "2", "3": "3", "4": "4", "5": "5", "6": "6", "7": "7", "8": "8", "9": "9", "\uFF10": "0", // Fullwidth digit 0 "\uFF11": "1", // Fullwidth digit 1 "\uFF12": "2", // Fullwidth digit 2 "\uFF13": "3", // Fullwidth digit 3 "\uFF14": "4", // Fullwidth digit 4 "\uFF15": "5", // Fullwidth digit 5 "\uFF16": "6", // Fullwidth digit 6 "\uFF17": "7", // Fullwidth digit 7 "\uFF18": "8", // Fullwidth digit 8 "\uFF19": "9", // Fullwidth digit 9 "\u0660": "0", // Arabic-indic digit 0 "\u0661": "1", // Arabic-indic digit 1 "\u0662": "2", // Arabic-indic digit 2 "\u0663": "3", // Arabic-indic digit 3 "\u0664": "4", // Arabic-indic digit 4 "\u0665": "5", // Arabic-indic digit 5 "\u0666": "6", // Arabic-indic digit 6 "\u0667": "7", // Arabic-indic digit 7 "\u0668": "8", // Arabic-indic digit 8 "\u0669": "9", // Arabic-indic digit 9 "\u06F0": "0", // Eastern-Arabic digit 0 "\u06F1": "1", // Eastern-Arabic digit 1 "\u06F2": "2", // Eastern-Arabic digit 2 "\u06F3": "3", // Eastern-Arabic digit 3 "\u06F4": "4", // Eastern-Arabic digit 4 "\u06F5": "5", // Eastern-Arabic digit 5 "\u06F6": "6", // Eastern-Arabic digit 6 "\u06F7": "7", // Eastern-Arabic digit 7 "\u06F8": "8", // Eastern-Arabic digit 8 "\u06F9": "9" // Eastern-Arabic digit 9 }; function parseDigit(character) { return DIGITS[character]; } __name(parseDigit, "parseDigit"); function parseDigits(string) { var result = ""; for (var _iterator = _createForOfIteratorHelperLoose(string.split("")), _step; !(_step = _iterator()).done; ) { var character = _step.value; var digit = parseDigit(character); if (digit) { result += digit; } } return result; } __name(parseDigits, "parseDigits"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parseIncompletePhoneNumber.js var require_parseIncompletePhoneNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parseIncompletePhoneNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = parseIncompletePhoneNumber; exports2.parsePhoneNumberCharacter = parsePhoneNumberCharacter; var _parseDigits = require_parseDigits(); function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function() { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_createForOfIteratorHelperLoose, "_createForOfIteratorHelperLoose"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function parseIncompletePhoneNumber(string) { var result = ""; for (var _iterator = _createForOfIteratorHelperLoose(string.split("")), _step; !(_step = _iterator()).done; ) { var character = _step.value; result += parsePhoneNumberCharacter(character, result) || ""; } return result; } __name(parseIncompletePhoneNumber, "parseIncompletePhoneNumber"); function parsePhoneNumberCharacter(character, prevParsedCharacters, eventListener) { if (character === "+") { if (prevParsedCharacters) { if (typeof eventListener === "function") { eventListener("end"); } return; } return "+"; } return (0, _parseDigits.parseDigit)(character); } __name(parsePhoneNumberCharacter, "parsePhoneNumberCharacter"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/getCountryCallingCode.js var require_getCountryCallingCode = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/getCountryCallingCode.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); Object.defineProperty(exports2, "default", { enumerable: true, get: /* @__PURE__ */ __name(function get() { return _metadata.getCountryCallingCode; }, "get") }); var _metadata = require_metadata(); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/mergeArrays.js var require_mergeArrays = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/mergeArrays.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = mergeArrays; function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function() { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_createForOfIteratorHelperLoose, "_createForOfIteratorHelperLoose"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function mergeArrays(a, b) { var merged = a.slice(); for (var _iterator = _createForOfIteratorHelperLoose(b), _step; !(_step = _iterator()).done; ) { var element = _step.value; if (a.indexOf(element) < 0) { merged.push(element); } } return merged.sort(function(a2, b2) { return a2 - b2; }); } __name(mergeArrays, "mergeArrays"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/checkNumberLength.js var require_checkNumberLength = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/checkNumberLength.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.checkNumberLengthForType = checkNumberLengthForType; exports2["default"] = checkNumberLength; var _metadata = _interopRequireDefault(require_metadata()); var _mergeArrays = _interopRequireDefault(require_mergeArrays()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function checkNumberLength(nationalNumber, country2, metadata) { return checkNumberLengthForType(nationalNumber, void 0, country2, metadata); } __name(checkNumberLength, "checkNumberLength"); function checkNumberLengthForType(nationalNumber, type, country2, metadata) { if (country2) { metadata = new _metadata["default"](metadata.metadata); metadata.selectNumberingPlan(country2); } var type_info = metadata.type(type); var possible_lengths = type_info && type_info.possibleLengths() || metadata.possibleLengths(); if (!possible_lengths) { return "IS_POSSIBLE"; } if (type === "FIXED_LINE_OR_MOBILE") { if (!metadata.type("FIXED_LINE")) { return checkNumberLengthForType(nationalNumber, "MOBILE", country2, metadata); } var mobile_type = metadata.type("MOBILE"); if (mobile_type) { possible_lengths = (0, _mergeArrays["default"])(possible_lengths, mobile_type.possibleLengths()); } } else if (type && !type_info) { return "INVALID_LENGTH"; } var actual_length = nationalNumber.length; var minimum_length = possible_lengths[0]; if (minimum_length === actual_length) { return "IS_POSSIBLE"; } if (minimum_length > actual_length) { return "TOO_SHORT"; } if (possible_lengths[possible_lengths.length - 1] < actual_length) { return "TOO_LONG"; } return possible_lengths.indexOf(actual_length, 1) >= 0 ? "IS_POSSIBLE" : "INVALID_LENGTH"; } __name(checkNumberLengthForType, "checkNumberLengthForType"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/isPossible.js var require_isPossible = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/isPossible.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = isPossiblePhoneNumber; exports2.isPossibleNumber = isPossibleNumber; var _metadata = _interopRequireDefault(require_metadata()); var _checkNumberLength = _interopRequireDefault(require_checkNumberLength()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isPossiblePhoneNumber(input, options, metadataJson) { if (options === void 0) { options = {}; } var metadata = new _metadata["default"](metadataJson); if (options.v2) { if (!input.countryCallingCode) { throw new Error("Invalid phone number object passed"); } metadata.selectNumberingPlan(input.country || input.countryCallingCode); } else { if (!input.phone) { return false; } if (input.country) { if (!metadata.hasCountry(input.country)) { throw new Error("Unknown country: ".concat(input.country)); } metadata.selectNumberingPlan(input.country); } else { if (!input.countryCallingCode) { throw new Error("Invalid phone number object passed"); } metadata.selectNumberingPlan(input.countryCallingCode); } } if (metadata.possibleLengths()) { return isPossibleNumber(input.phone || input.nationalNumber, metadata); } if (input.countryCallingCode && metadata.isNonGeographicCallingCode(input.countryCallingCode)) { return true; } throw new Error('Missing "possibleLengths" in metadata. Perhaps the metadata has been generated before v1.0.18.'); } __name(isPossiblePhoneNumber, "isPossiblePhoneNumber"); function isPossibleNumber(nationalNumber, metadata) { switch ((0, _checkNumberLength["default"])(nationalNumber, void 0, metadata)) { case "IS_POSSIBLE": return true; // This library ignores "local-only" phone numbers (for simplicity). // See the readme for more info on what are "local-only" phone numbers. // case 'IS_POSSIBLE_LOCAL_ONLY': // return !isInternational default: return false; } } __name(isPossibleNumber, "isPossibleNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/matchesEntirely.js var require_matchesEntirely = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/matchesEntirely.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = matchesEntirely; function matchesEntirely(text, regularExpressionText) { text = text || ""; return new RegExp("^(?:" + regularExpressionText + ")$").test(text); } __name(matchesEntirely, "matchesEntirely"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getNumberType.js var require_getNumberType = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getNumberType.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = getNumberType; exports2.isNumberTypeEqualTo = isNumberTypeEqualTo; var _metadata = _interopRequireDefault(require_metadata()); var _matchesEntirely = _interopRequireDefault(require_matchesEntirely()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function() { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_createForOfIteratorHelperLoose, "_createForOfIteratorHelperLoose"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); var NON_FIXED_LINE_PHONE_TYPES = ["MOBILE", "PREMIUM_RATE", "TOLL_FREE", "SHARED_COST", "VOIP", "PERSONAL_NUMBER", "PAGER", "UAN", "VOICEMAIL"]; function getNumberType(input, options, metadataJson) { options = options || {}; if (!input.country && !input.countryCallingCode) { return; } var metadata = new _metadata["default"](metadataJson); metadata.selectNumberingPlan(input.country || input.countryCallingCode); var nationalNumber = options.v2 ? input.nationalNumber : input.phone; if (!(0, _matchesEntirely["default"])(nationalNumber, metadata.nationalNumberPattern())) { return; } if (isNumberTypeEqualTo(nationalNumber, "FIXED_LINE", metadata)) { if (metadata.type("MOBILE") && metadata.type("MOBILE").pattern() === "") { return "FIXED_LINE_OR_MOBILE"; } if (!metadata.type("MOBILE")) { return "FIXED_LINE_OR_MOBILE"; } if (isNumberTypeEqualTo(nationalNumber, "MOBILE", metadata)) { return "FIXED_LINE_OR_MOBILE"; } return "FIXED_LINE"; } for (var _iterator = _createForOfIteratorHelperLoose(NON_FIXED_LINE_PHONE_TYPES), _step; !(_step = _iterator()).done; ) { var type = _step.value; if (isNumberTypeEqualTo(nationalNumber, type, metadata)) { return type; } } } __name(getNumberType, "getNumberType"); function isNumberTypeEqualTo(nationalNumber, type, metadata) { var typeDefinition = metadata.type(type); if (!typeDefinition || !typeDefinition.pattern()) { return false; } if (typeDefinition.possibleLengths() && typeDefinition.possibleLengths().indexOf(nationalNumber.length) < 0) { return false; } return (0, _matchesEntirely["default"])(nationalNumber, typeDefinition.pattern()); } __name(isNumberTypeEqualTo, "isNumberTypeEqualTo"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/isValid.js var require_isValid = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/isValid.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = isValidNumber; var _metadata = _interopRequireDefault(require_metadata()); var _matchesEntirely = _interopRequireDefault(require_matchesEntirely()); var _getNumberType = _interopRequireDefault(require_getNumberType()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isValidNumber(input, options, metadataJson) { options = options || {}; var metadata = new _metadata["default"](metadataJson); metadata.selectNumberingPlan(input.country || input.countryCallingCode); if (metadata.hasTypes()) { return (0, _getNumberType["default"])(input, options, metadata.metadata) !== void 0; } var nationalNumber = options.v2 ? input.nationalNumber : input.phone; return (0, _matchesEntirely["default"])(nationalNumber, metadata.nationalNumberPattern()); } __name(isValidNumber, "isValidNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/isCountryCode.js var require_isCountryCode = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/isCountryCode.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = isCountryCode; var COUNTRY_CODE_REG_EXP = /^[A-Z]{2}$/; function isCountryCode(string) { return COUNTRY_CODE_REG_EXP.test(string); } __name(isCountryCode, "isCountryCode"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getCountryAndCallingCodeFromOneOfThem.js var require_getCountryAndCallingCodeFromOneOfThem = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getCountryAndCallingCodeFromOneOfThem.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = getCountryAndCallingCodeFromOneOfThem; var _metadata = _interopRequireDefault(require_metadata()); var _isCountryCode = _interopRequireDefault(require_isCountryCode()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var USE_NON_GEOGRAPHIC_COUNTRY_CODE = false; function getCountryAndCallingCodeFromOneOfThem(countryOrCallingCode, metadataJson) { var country2; var callingCode; var metadata = new _metadata["default"](metadataJson); if ((0, _isCountryCode["default"])(countryOrCallingCode)) { country2 = countryOrCallingCode; metadata.selectNumberingPlan(country2); callingCode = metadata.countryCallingCode(); } else { callingCode = countryOrCallingCode; if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) { if (metadata.isNonGeographicCallingCode(callingCode)) { country2 = "001"; } } } return { country: country2, callingCode }; } __name(getCountryAndCallingCodeFromOneOfThem, "getCountryAndCallingCodeFromOneOfThem"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getPossibleCountriesForNumber.js var require_getPossibleCountriesForNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getPossibleCountriesForNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = getPossibleCountriesForNumber; var _metadata2 = _interopRequireDefault(require_metadata()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function getPossibleCountriesForNumber(callingCode, nationalNumber, metadata) { var _metadata = new _metadata2["default"](metadata); var possibleCountries = _metadata.getCountryCodesForCallingCode(callingCode); if (!possibleCountries) { return []; } return possibleCountries.filter(function(country2) { return couldNationalNumberBelongToCountry(nationalNumber, country2, metadata); }); } __name(getPossibleCountriesForNumber, "getPossibleCountriesForNumber"); function couldNationalNumberBelongToCountry(nationalNumber, country2, metadataJson) { var metadata = new _metadata2["default"](metadataJson); metadata.selectNumberingPlan(country2); return metadata.numberingPlan.possibleLengths().indexOf(nationalNumber.length) >= 0; } __name(couldNationalNumberBelongToCountry, "couldNationalNumberBelongToCountry"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/stripIddPrefix.js var require_stripIddPrefix = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/stripIddPrefix.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = stripIddPrefix; var _metadata = _interopRequireDefault(require_metadata()); var _constants = require_constants3(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var CAPTURING_DIGIT_PATTERN = new RegExp("([" + _constants.VALID_DIGITS + "])"); function stripIddPrefix(number, country2, callingCode, metadataJson) { if (!country2) { return; } var metadata = new _metadata["default"](metadataJson); metadata.selectNumberingPlan(country2 || callingCode); var IDDPrefixPattern = new RegExp(metadata.IDDPrefix()); if (number.search(IDDPrefixPattern) !== 0) { return; } number = number.slice(number.match(IDDPrefixPattern)[0].length); var matchedGroups = number.match(CAPTURING_DIGIT_PATTERN); if (matchedGroups && matchedGroups[1] != null && matchedGroups[1].length > 0) { if (matchedGroups[1] === "0") { return; } } return number; } __name(stripIddPrefix, "stripIddPrefix"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractNationalNumberFromPossiblyIncompleteNumber.js var require_extractNationalNumberFromPossiblyIncompleteNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractNationalNumberFromPossiblyIncompleteNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = extractNationalNumberFromPossiblyIncompleteNumber; function extractNationalNumberFromPossiblyIncompleteNumber(number, metadata) { if (number && metadata.numberingPlan.nationalPrefixForParsing()) { var prefixPattern = new RegExp("^(?:" + metadata.numberingPlan.nationalPrefixForParsing() + ")"); var prefixMatch = prefixPattern.exec(number); if (prefixMatch) { var nationalNumber; var carrierCode; var capturedGroupsCount = prefixMatch.length - 1; var hasCapturedGroups = capturedGroupsCount > 0 && prefixMatch[capturedGroupsCount]; if (metadata.nationalPrefixTransformRule() && hasCapturedGroups) { nationalNumber = number.replace(prefixPattern, metadata.nationalPrefixTransformRule()); if (capturedGroupsCount > 1) { carrierCode = prefixMatch[1]; } } else { var prefixBeforeNationalNumber = prefixMatch[0]; nationalNumber = number.slice(prefixBeforeNationalNumber.length); if (hasCapturedGroups) { carrierCode = prefixMatch[1]; } } var nationalPrefix; if (hasCapturedGroups) { var possiblePositionOfTheFirstCapturedGroup = number.indexOf(prefixMatch[1]); var possibleNationalPrefix = number.slice(0, possiblePositionOfTheFirstCapturedGroup); if (possibleNationalPrefix === metadata.numberingPlan.nationalPrefix()) { nationalPrefix = metadata.numberingPlan.nationalPrefix(); } } else { nationalPrefix = prefixMatch[0]; } return { nationalNumber, nationalPrefix, carrierCode }; } } return { nationalNumber: number }; } __name(extractNationalNumberFromPossiblyIncompleteNumber, "extractNationalNumberFromPossiblyIncompleteNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getCountryByNationalNumber.js var require_getCountryByNationalNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getCountryByNationalNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = getCountryByNationalNumber; var _metadata = _interopRequireDefault(require_metadata()); var _getNumberType = _interopRequireDefault(require_getNumberType()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function() { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_createForOfIteratorHelperLoose, "_createForOfIteratorHelperLoose"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function getCountryByNationalNumber(nationalNumber, countries, metadataJson) { var metadata = new _metadata["default"](metadataJson); for (var _iterator = _createForOfIteratorHelperLoose(countries), _step; !(_step = _iterator()).done; ) { var country2 = _step.value; metadata.selectNumberingPlan(country2); if (metadata.leadingDigits()) { if (nationalNumber && nationalNumber.search(metadata.leadingDigits()) === 0) { return country2; } } else if ((0, _getNumberType["default"])({ phone: nationalNumber, country: country2 }, void 0, metadata.metadata)) { return country2; } } } __name(getCountryByNationalNumber, "getCountryByNationalNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getCountryByCallingCode.js var require_getCountryByCallingCode = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getCountryByCallingCode.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = getCountryByCallingCode; var _getCountryByNationalNumber = _interopRequireDefault(require_getCountryByNationalNumber()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var USE_NON_GEOGRAPHIC_COUNTRY_CODE = false; function getCountryByCallingCode(callingCode, _ref) { var nationalNumber = _ref.nationalNumber, metadata = _ref.metadata; if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) { if (metadata.isNonGeographicCallingCode(callingCode)) { return "001"; } } var possibleCountries = metadata.getCountryCodesForCallingCode(callingCode); if (!possibleCountries) { return; } if (possibleCountries.length === 1) { return possibleCountries[0]; } return (0, _getCountryByNationalNumber["default"])(nationalNumber, possibleCountries, metadata.metadata); } __name(getCountryByCallingCode, "getCountryByCallingCode"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractNationalNumber.js var require_extractNationalNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractNationalNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = extractNationalNumber; var _extractNationalNumberFromPossiblyIncompleteNumber = _interopRequireDefault(require_extractNationalNumberFromPossiblyIncompleteNumber()); var _matchesEntirely = _interopRequireDefault(require_matchesEntirely()); var _checkNumberLength = _interopRequireDefault(require_checkNumberLength()); var _getCountryByCallingCode = _interopRequireDefault(require_getCountryByCallingCode()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function extractNationalNumber(number, country2, metadata) { var _extractNationalNumbe = (0, _extractNationalNumberFromPossiblyIncompleteNumber["default"])(number, metadata), carrierCode = _extractNationalNumbe.carrierCode, nationalNumber = _extractNationalNumbe.nationalNumber; if (nationalNumber !== number) { if (!shouldHaveExtractedNationalPrefix(number, nationalNumber, metadata)) { return { nationalNumber: number }; } if (metadata.numberingPlan.possibleLengths()) { if (!country2) { country2 = (0, _getCountryByCallingCode["default"])(metadata.numberingPlan.callingCode(), { nationalNumber, metadata }); } if (!isPossibleIncompleteNationalNumber(nationalNumber, country2, metadata)) { return { nationalNumber: number }; } } } return { nationalNumber, carrierCode }; } __name(extractNationalNumber, "extractNationalNumber"); function shouldHaveExtractedNationalPrefix(nationalNumberBefore, nationalNumberAfter, metadata) { if ((0, _matchesEntirely["default"])(nationalNumberBefore, metadata.nationalNumberPattern()) && !(0, _matchesEntirely["default"])(nationalNumberAfter, metadata.nationalNumberPattern())) { return false; } return true; } __name(shouldHaveExtractedNationalPrefix, "shouldHaveExtractedNationalPrefix"); function isPossibleIncompleteNationalNumber(nationalNumber, country2, metadata) { switch ((0, _checkNumberLength["default"])(nationalNumber, country2, metadata)) { case "TOO_SHORT": case "INVALID_LENGTH": return false; default: return true; } } __name(isPossibleIncompleteNationalNumber, "isPossibleIncompleteNationalNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js var require_extractCountryCallingCodeFromInternationalNumberWithoutPlusSign = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = extractCountryCallingCodeFromInternationalNumberWithoutPlusSign; var _metadata = _interopRequireDefault(require_metadata()); var _matchesEntirely = _interopRequireDefault(require_matchesEntirely()); var _extractNationalNumber = _interopRequireDefault(require_extractNationalNumber()); var _checkNumberLength = _interopRequireDefault(require_checkNumberLength()); var _getCountryCallingCode = _interopRequireDefault(require_getCountryCallingCode()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function extractCountryCallingCodeFromInternationalNumberWithoutPlusSign(number, country2, defaultCountry, defaultCallingCode, metadataJson) { if (!(country2 || defaultCountry || defaultCallingCode)) { return { number }; } var countryCallingCode = country2 || defaultCountry ? (0, _getCountryCallingCode["default"])(country2 || defaultCountry, metadataJson) : defaultCallingCode; if (number.indexOf(countryCallingCode) === 0) { var metadata = new _metadata["default"](metadataJson); metadata.selectNumberingPlan(country2 || defaultCountry || defaultCallingCode); var possibleShorterNumber = number.slice(countryCallingCode.length); var _extractNationalNumbe = (0, _extractNationalNumber["default"])(possibleShorterNumber, void 0, metadata), possibleShorterNationalNumber = _extractNationalNumbe.nationalNumber; var _extractNationalNumbe2 = (0, _extractNationalNumber["default"])(number, void 0, metadata), nationalNumber = _extractNationalNumbe2.nationalNumber; if (!(0, _matchesEntirely["default"])(nationalNumber, metadata.nationalNumberPattern()) && (0, _matchesEntirely["default"])(possibleShorterNationalNumber, metadata.nationalNumberPattern()) || (0, _checkNumberLength["default"])(nationalNumber, void 0, metadata) === "TOO_LONG") { return { countryCallingCode, number: possibleShorterNumber }; } } return { number }; } __name(extractCountryCallingCodeFromInternationalNumberWithoutPlusSign, "extractCountryCallingCodeFromInternationalNumberWithoutPlusSign"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractCountryCallingCode.js var require_extractCountryCallingCode = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractCountryCallingCode.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = extractCountryCallingCode; var _stripIddPrefix = _interopRequireDefault(require_stripIddPrefix()); var _extractCountryCallingCodeFromInternationalNumberWithoutPlusSign = _interopRequireDefault(require_extractCountryCallingCodeFromInternationalNumberWithoutPlusSign()); var _metadata = _interopRequireDefault(require_metadata()); var _constants = require_constants3(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function extractCountryCallingCode(number, country2, defaultCountry, defaultCallingCode, metadataJson) { if (!number) { return {}; } var isNumberWithIddPrefix; if (number[0] !== "+") { var numberWithoutIDD = (0, _stripIddPrefix["default"])(number, country2 || defaultCountry, defaultCallingCode, metadataJson); if (numberWithoutIDD && numberWithoutIDD !== number) { isNumberWithIddPrefix = true; number = "+" + numberWithoutIDD; } else { if (country2 || defaultCountry || defaultCallingCode) { var _extractCountryCallin = (0, _extractCountryCallingCodeFromInternationalNumberWithoutPlusSign["default"])(number, country2, defaultCountry, defaultCallingCode, metadataJson), countryCallingCode = _extractCountryCallin.countryCallingCode, shorterNumber = _extractCountryCallin.number; if (countryCallingCode) { return { countryCallingCodeSource: "FROM_NUMBER_WITHOUT_PLUS_SIGN", countryCallingCode, number: shorterNumber }; } } return { // No need to set it to `UNSPECIFIED`. It can be just `undefined`. // countryCallingCodeSource: 'UNSPECIFIED', number }; } } if (number[1] === "0") { return {}; } var metadata = new _metadata["default"](metadataJson); var i = 2; while (i - 1 <= _constants.MAX_LENGTH_COUNTRY_CODE && i <= number.length) { var _countryCallingCode = number.slice(1, i); if (metadata.hasCallingCode(_countryCallingCode)) { metadata.selectNumberingPlan(_countryCallingCode); return { countryCallingCodeSource: isNumberWithIddPrefix ? "FROM_NUMBER_WITH_IDD" : "FROM_NUMBER_WITH_PLUS_SIGN", countryCallingCode: _countryCallingCode, number: number.slice(i) }; } i++; } return {}; } __name(extractCountryCallingCode, "extractCountryCallingCode"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/applyInternationalSeparatorStyle.js var require_applyInternationalSeparatorStyle = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/applyInternationalSeparatorStyle.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = applyInternationalSeparatorStyle; var _constants = require_constants3(); function applyInternationalSeparatorStyle(formattedNumber) { return formattedNumber.replace(new RegExp("[".concat(_constants.VALID_PUNCTUATION, "]+"), "g"), " ").trim(); } __name(applyInternationalSeparatorStyle, "applyInternationalSeparatorStyle"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/formatNationalNumberUsingFormat.js var require_formatNationalNumberUsingFormat = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/formatNationalNumberUsingFormat.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.FIRST_GROUP_PATTERN = void 0; exports2["default"] = formatNationalNumberUsingFormat; var _applyInternationalSeparatorStyle = _interopRequireDefault(require_applyInternationalSeparatorStyle()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var FIRST_GROUP_PATTERN = exports2.FIRST_GROUP_PATTERN = /(\$\d)/; function formatNationalNumberUsingFormat(number, format, _ref) { var useInternationalFormat = _ref.useInternationalFormat, withNationalPrefix = _ref.withNationalPrefix, carrierCode = _ref.carrierCode, metadata = _ref.metadata; var formattedNumber = number.replace(new RegExp(format.pattern()), useInternationalFormat ? format.internationalFormat() : ( // This library doesn't use `domestic_carrier_code_formatting_rule`, // because that one is only used when formatting phone numbers // for dialing from a mobile phone, and this is not a dialing library. // carrierCode && format.domesticCarrierCodeFormattingRule() // // First, replace the $CC in the formatting rule with the desired carrier code. // // Then, replace the $FG in the formatting rule with the first group // // and the carrier code combined in the appropriate way. // ? format.format().replace(FIRST_GROUP_PATTERN, format.domesticCarrierCodeFormattingRule().replace('$CC', carrierCode)) // : ( // withNationalPrefix && format.nationalPrefixFormattingRule() // ? format.format().replace(FIRST_GROUP_PATTERN, format.nationalPrefixFormattingRule()) // : format.format() // ) withNationalPrefix && format.nationalPrefixFormattingRule() ? format.format().replace(FIRST_GROUP_PATTERN, format.nationalPrefixFormattingRule()) : format.format() )); if (useInternationalFormat) { return (0, _applyInternationalSeparatorStyle["default"])(formattedNumber); } return formattedNumber; } __name(formatNationalNumberUsingFormat, "formatNationalNumberUsingFormat"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getIddPrefix.js var require_getIddPrefix = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/getIddPrefix.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = getIddPrefix; var _metadata = _interopRequireDefault(require_metadata()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var SINGLE_IDD_PREFIX_REG_EXP = /^[\d]+(?:[~\u2053\u223C\uFF5E][\d]+)?$/; function getIddPrefix(country2, callingCode, metadata) { var countryMetadata = new _metadata["default"](metadata); countryMetadata.selectNumberingPlan(country2 || callingCode); if (countryMetadata.defaultIDDPrefix()) { return countryMetadata.defaultIDDPrefix(); } if (SINGLE_IDD_PREFIX_REG_EXP.test(countryMetadata.IDDPrefix())) { return countryMetadata.IDDPrefix(); } } __name(getIddPrefix, "getIddPrefix"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/RFC3966.js var require_RFC3966 = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/RFC3966.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.formatRFC3966 = formatRFC3966; exports2.parseRFC3966 = parseRFC3966; var _isViablePhoneNumber = _interopRequireDefault(require_isViablePhoneNumber()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } __name(_slicedToArray, "_slicedToArray"); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_nonIterableRest, "_nonIterableRest"); function _iterableToArrayLimit(r, l2) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = true, o = false; try { if (i = (t = t.call(r)).next, 0 === l2) { if (Object(t) !== t) return; f = false; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l2); f = true) ; } catch (r2) { o = true, n = r2; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } __name(_iterableToArrayLimit, "_iterableToArrayLimit"); function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } __name(_arrayWithHoles, "_arrayWithHoles"); function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function() { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_createForOfIteratorHelperLoose, "_createForOfIteratorHelperLoose"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function parseRFC3966(text) { var number; var ext; text = text.replace(/^tel:/, "tel="); for (var _iterator = _createForOfIteratorHelperLoose(text.split(";")), _step; !(_step = _iterator()).done; ) { var part = _step.value; var _part$split = part.split("="), _part$split2 = _slicedToArray(_part$split, 2), name = _part$split2[0], value = _part$split2[1]; switch (name) { case "tel": number = value; break; case "ext": ext = value; break; case "phone-context": if (value[0] === "+") { number = value + number; } break; } } if (!(0, _isViablePhoneNumber["default"])(number)) { return {}; } var result = { number }; if (ext) { result.ext = ext; } return result; } __name(parseRFC3966, "parseRFC3966"); function formatRFC3966(_ref) { var number = _ref.number, ext = _ref.ext; if (!number) { return ""; } if (number[0] !== "+") { throw new Error('"formatRFC3966()" expects "number" to be in E.164 format.'); } return "tel:".concat(number).concat(ext ? ";ext=" + ext : ""); } __name(formatRFC3966, "formatRFC3966"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/format.js var require_format = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/format.js"(exports2) { "use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.chooseFormatForNumber = chooseFormatForNumber; exports2["default"] = formatNumber2; var _matchesEntirely = _interopRequireDefault(require_matchesEntirely()); var _formatNationalNumberUsingFormat = _interopRequireDefault(require_formatNationalNumberUsingFormat()); var _metadata = _interopRequireWildcard(require_metadata()); var _getIddPrefix = _interopRequireDefault(require_getIddPrefix()); var _RFC = require_RFC3966(); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); return (_interopRequireWildcard = /* @__PURE__ */ __name(function _interopRequireWildcard2(e2, t2) { if (!t2 && e2 && e2.__esModule) return e2; var o, i, f = { __proto__: null, "default": e2 }; if (null === e2 || "object" != _typeof(e2) && "function" != typeof e2) return f; if (o = t2 ? n : r) { if (o.has(e2)) return o.get(e2); o.set(e2, f); } for (var _t in e2) "default" !== _t && {}.hasOwnProperty.call(e2, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e2, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e2[_t]); return f; }, "_interopRequireWildcard"))(e, t); } __name(_interopRequireWildcard, "_interopRequireWildcard"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var DEFAULT_OPTIONS = { formatExtension: /* @__PURE__ */ __name(function formatExtension(formattedNumber, extension, metadata) { return "".concat(formattedNumber).concat(metadata.ext()).concat(extension); }, "formatExtension") }; function formatNumber2(input, format, options, metadataJson) { if (options) { options = merge({}, DEFAULT_OPTIONS, options); } else { options = DEFAULT_OPTIONS; } var metadata = new _metadata["default"](metadataJson); if (input.country && input.country !== "001") { if (!metadata.hasCountry(input.country)) { throw new Error("Unknown country: ".concat(input.country)); } metadata.selectNumberingPlan(input.country); } else if (input.countryCallingCode) { metadata.selectNumberingPlan(input.countryCallingCode); } else return input.phone || ""; var countryCallingCode = metadata.countryCallingCode(); var nationalNumber = options.v2 ? input.nationalNumber : input.phone; var number; switch (format) { case "NATIONAL": if (!nationalNumber) { return ""; } number = formatNationalNumber(nationalNumber, input.carrierCode, "NATIONAL", metadata, options); return addExtension(number, input.ext, metadata, options.formatExtension); case "INTERNATIONAL": if (!nationalNumber) { return "+".concat(countryCallingCode); } number = formatNationalNumber(nationalNumber, null, "INTERNATIONAL", metadata, options); number = "+".concat(countryCallingCode, " ").concat(number); return addExtension(number, input.ext, metadata, options.formatExtension); case "E.164": return "+".concat(countryCallingCode).concat(nationalNumber); case "RFC3966": return (0, _RFC.formatRFC3966)({ number: "+".concat(countryCallingCode).concat(nationalNumber), ext: input.ext }); // For reference, here's Google's IDD formatter: // https://github.com/google/libphonenumber/blob/32719cf74e68796788d1ca45abc85dcdc63ba5b9/java/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java#L1546 // Not saying that this IDD formatter replicates it 1:1, but it seems to work. // Who would even need to format phone numbers in IDD format anyway? case "IDD": if (!options.fromCountry) { return; } var formattedNumber = formatIDD(nationalNumber, input.carrierCode, countryCallingCode, options.fromCountry, metadata); if (!formattedNumber) { return; } return addExtension(formattedNumber, input.ext, metadata, options.formatExtension); default: throw new Error('Unknown "format" argument passed to "formatNumber()": "'.concat(format, '"')); } } __name(formatNumber2, "formatNumber"); function formatNationalNumber(number, carrierCode, formatAs, metadata, options) { var format = chooseFormatForNumber(metadata.formats(), number); if (!format) { return number; } return (0, _formatNationalNumberUsingFormat["default"])(number, format, { useInternationalFormat: formatAs === "INTERNATIONAL", withNationalPrefix: format.nationalPrefixIsOptionalWhenFormattingInNationalFormat() && options && options.nationalPrefix === false ? false : true, carrierCode, metadata }); } __name(formatNationalNumber, "formatNationalNumber"); function chooseFormatForNumber(availableFormats, nationalNumber) { return pickFirstMatchingElement(availableFormats, function(format) { if (format.leadingDigitsPatterns().length > 0) { var lastLeadingDigitsPattern = format.leadingDigitsPatterns()[format.leadingDigitsPatterns().length - 1]; if (nationalNumber.search(lastLeadingDigitsPattern) !== 0) { return false; } } return (0, _matchesEntirely["default"])(nationalNumber, format.pattern()); }); } __name(chooseFormatForNumber, "chooseFormatForNumber"); function addExtension(formattedNumber, ext, metadata, formatExtension) { return ext ? formatExtension(formattedNumber, ext, metadata) : formattedNumber; } __name(addExtension, "addExtension"); function formatIDD(nationalNumber, carrierCode, countryCallingCode, fromCountry, metadata) { var fromCountryCallingCode = (0, _metadata.getCountryCallingCode)(fromCountry, metadata.metadata); if (fromCountryCallingCode === countryCallingCode) { var formattedNumber = formatNationalNumber(nationalNumber, carrierCode, "NATIONAL", metadata); if (countryCallingCode === "1") { return countryCallingCode + " " + formattedNumber; } return formattedNumber; } var iddPrefix = (0, _getIddPrefix["default"])(fromCountry, void 0, metadata.metadata); if (iddPrefix) { return "".concat(iddPrefix, " ").concat(countryCallingCode, " ").concat(formatNationalNumber(nationalNumber, null, "INTERNATIONAL", metadata)); } } __name(formatIDD, "formatIDD"); function merge() { var i = 1; for (var _len = arguments.length, objects = new Array(_len), _key = 0; _key < _len; _key++) { objects[_key] = arguments[_key]; } while (i < objects.length) { if (objects[i]) { for (var key in objects[i]) { objects[0][key] = objects[i][key]; } } i++; } return objects[0]; } __name(merge, "merge"); function pickFirstMatchingElement(elements, testFunction) { var i = 0; while (i < elements.length) { if (testFunction(elements[i])) { return elements[i]; } i++; } } __name(pickFirstMatchingElement, "pickFirstMatchingElement"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/PhoneNumber.js var require_PhoneNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/PhoneNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = void 0; var _metadata = _interopRequireWildcard(require_metadata()); var _isPossible = _interopRequireDefault(require_isPossible()); var _isValid = _interopRequireDefault(require_isValid()); var _getNumberType = _interopRequireDefault(require_getNumberType()); var _getCountryAndCallingCodeFromOneOfThem = _interopRequireDefault(require_getCountryAndCallingCodeFromOneOfThem()); var _getPossibleCountriesForNumber = _interopRequireDefault(require_getPossibleCountriesForNumber()); var _extractCountryCallingCode = _interopRequireDefault(require_extractCountryCallingCode()); var _isObject = _interopRequireDefault(require_isObject()); var _format2 = _interopRequireDefault(require_format()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); return (_interopRequireWildcard = /* @__PURE__ */ __name(function _interopRequireWildcard2(e2, t2) { if (!t2 && e2 && e2.__esModule) return e2; var o, i, f = { __proto__: null, "default": e2 }; if (null === e2 || "object" != _typeof(e2) && "function" != typeof e2) return f; if (o = t2 ? n : r) { if (o.has(e2)) return o.get(e2); o.set(e2, f); } for (var _t in e2) "default" !== _t && {}.hasOwnProperty.call(e2, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e2, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e2[_t]); return f; }, "_interopRequireWildcard"))(e, t); } __name(_interopRequireWildcard, "_interopRequireWildcard"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function ownKeys2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function(r2) { return Object.getOwnPropertyDescriptor(e, r2).enumerable; })), t.push.apply(t, o); } return t; } __name(ownKeys2, "ownKeys"); function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys2(Object(t), true).forEach(function(r2) { _defineProperty(e, r2, t[r2]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys2(Object(t)).forEach(function(r2) { Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2)); }); } return e; } __name(_objectSpread, "_objectSpread"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; } __name(_defineProperty, "_defineProperty"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); var PhoneNumber = exports2["default"] = /* @__PURE__ */ (function() { function PhoneNumber2(countryOrCountryCallingCode, nationalNumber, metadata) { _classCallCheck(this, PhoneNumber2); if (!countryOrCountryCallingCode) { throw new TypeError("First argument is required"); } if (typeof countryOrCountryCallingCode !== "string") { throw new TypeError("First argument must be a string"); } if (countryOrCountryCallingCode[0] === "+" && !nationalNumber) { throw new TypeError("`metadata` argument not passed"); } if ((0, _isObject["default"])(nationalNumber) && (0, _isObject["default"])(nationalNumber.countries)) { metadata = nationalNumber; var e164Number = countryOrCountryCallingCode; if (!E164_NUMBER_REGEXP.test(e164Number)) { throw new Error('Invalid `number` argument passed: must consist of a "+" followed by digits'); } var _extractCountryCallin = (0, _extractCountryCallingCode["default"])(e164Number, void 0, void 0, void 0, metadata), _countryCallingCode = _extractCountryCallin.countryCallingCode, number = _extractCountryCallin.number; nationalNumber = number; countryOrCountryCallingCode = _countryCallingCode; if (!nationalNumber) { throw new Error("Invalid `number` argument passed: too short"); } } if (!nationalNumber) { throw new TypeError("`nationalNumber` argument is required"); } if (typeof nationalNumber !== "string") { throw new TypeError("`nationalNumber` argument must be a string"); } (0, _metadata.validateMetadata)(metadata); var _getCountryAndCalling = (0, _getCountryAndCallingCodeFromOneOfThem["default"])(countryOrCountryCallingCode, metadata), country2 = _getCountryAndCalling.country, countryCallingCode = _getCountryAndCalling.callingCode; this.country = country2; this.countryCallingCode = countryCallingCode; this.nationalNumber = nationalNumber; this.number = "+" + this.countryCallingCode + this.nationalNumber; this.getMetadata = function() { return metadata; }; } __name(PhoneNumber2, "PhoneNumber"); return _createClass(PhoneNumber2, [{ key: "setExt", value: /* @__PURE__ */ __name(function setExt(ext) { this.ext = ext; }, "setExt") }, { key: "getPossibleCountries", value: /* @__PURE__ */ __name(function getPossibleCountries() { if (this.country) { return [this.country]; } return (0, _getPossibleCountriesForNumber["default"])(this.countryCallingCode, this.nationalNumber, this.getMetadata()); }, "getPossibleCountries") }, { key: "isPossible", value: /* @__PURE__ */ __name(function isPossible() { return (0, _isPossible["default"])(this, { v2: true }, this.getMetadata()); }, "isPossible") }, { key: "isValid", value: /* @__PURE__ */ __name(function isValid() { return (0, _isValid["default"])(this, { v2: true }, this.getMetadata()); }, "isValid") }, { key: "isNonGeographic", value: /* @__PURE__ */ __name(function isNonGeographic() { var metadata = new _metadata["default"](this.getMetadata()); return metadata.isNonGeographicCallingCode(this.countryCallingCode); }, "isNonGeographic") }, { key: "isEqual", value: /* @__PURE__ */ __name(function isEqual(phoneNumber) { return this.number === phoneNumber.number && this.ext === phoneNumber.ext; }, "isEqual") // `validateLength()` method was originally meant to be an equivalent for `validatePhoneNumberLength()`. // // Later, it became apparent that it's not really a true equivalent. // The reason is that a `PhoneNumber` instance is not created // when the phone number string is too short for it to be considered a valid phone number: // * When there must be at least 2 national (significant) number digits: `"1"`. // * When the country calling code part of an international number is incomplete: `"+12"`. // // So leaving this `validateLength()` method here would suggest a hidden anti-pattern // of using it instead of `validatePhoneNumberLength()` while ignoring // the "too short to be even possible" case from phone number length validation. // And ignoring that case wouldn't make any sense in a real-world application // because it would still be a valid case that should be handled. // // Because of that, this method was eventually commented out in order to not introduce // that kind of an anti-pattern. // // validateLength() { // const result = checkNumberLength( // this.nationalNumber, // undefined, // this.getMetadata() // ) // if (result !== 'IS_POSSIBLE') { // return result // } // } }, { key: "getType", value: /* @__PURE__ */ __name(function getType() { return (0, _getNumberType["default"])(this, { v2: true }, this.getMetadata()); }, "getType") }, { key: "format", value: /* @__PURE__ */ __name(function format(_format, options) { return (0, _format2["default"])(this, _format, options ? _objectSpread(_objectSpread({}, options), {}, { v2: true }) : { v2: true }, this.getMetadata()); }, "format") }, { key: "formatNational", value: /* @__PURE__ */ __name(function formatNational(options) { return this.format("NATIONAL", options); }, "formatNational") }, { key: "formatInternational", value: /* @__PURE__ */ __name(function formatInternational(options) { return this.format("INTERNATIONAL", options); }, "formatInternational") }, { key: "getURI", value: /* @__PURE__ */ __name(function getURI(options) { return this.format("RFC3966", options); }, "getURI") }]); })(); var E164_NUMBER_REGEXP = /^\+\d+$/; } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractPhoneContext.js var require_extractPhoneContext = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractPhoneContext.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RFC3966_PREFIX_ = exports2.RFC3966_PHONE_CONTEXT_ = exports2.RFC3966_ISDN_SUBADDRESS_ = exports2.PLUS_SIGN = void 0; exports2["default"] = extractPhoneContext; exports2.isPhoneContextValid = isPhoneContextValid; var _constants = require_constants3(); var PLUS_SIGN = exports2.PLUS_SIGN = "+"; var RFC3966_VISUAL_SEPARATOR_ = "[\\-\\.\\(\\)]?"; var RFC3966_PHONE_DIGIT_ = "([" + _constants.VALID_DIGITS + "]|" + RFC3966_VISUAL_SEPARATOR_ + ")"; var RFC3966_GLOBAL_NUMBER_DIGITS_ = "^\\" + PLUS_SIGN + RFC3966_PHONE_DIGIT_ + "*[" + _constants.VALID_DIGITS + "]" + RFC3966_PHONE_DIGIT_ + "*$"; var RFC3966_GLOBAL_NUMBER_DIGITS_PATTERN_ = new RegExp(RFC3966_GLOBAL_NUMBER_DIGITS_, "g"); var ALPHANUM_ = _constants.VALID_DIGITS; var RFC3966_DOMAINLABEL_ = "[" + ALPHANUM_ + "]+((\\-)*[" + ALPHANUM_ + "])*"; var VALID_ALPHA_ = "a-zA-Z"; var RFC3966_TOPLABEL_ = "[" + VALID_ALPHA_ + "]+((\\-)*[" + ALPHANUM_ + "])*"; var RFC3966_DOMAINNAME_ = "^(" + RFC3966_DOMAINLABEL_ + "\\.)*" + RFC3966_TOPLABEL_ + "\\.?$"; var RFC3966_DOMAINNAME_PATTERN_ = new RegExp(RFC3966_DOMAINNAME_, "g"); var RFC3966_PREFIX_ = exports2.RFC3966_PREFIX_ = "tel:"; var RFC3966_PHONE_CONTEXT_ = exports2.RFC3966_PHONE_CONTEXT_ = ";phone-context="; var RFC3966_ISDN_SUBADDRESS_ = exports2.RFC3966_ISDN_SUBADDRESS_ = ";isub="; function extractPhoneContext(numberToExtractFrom) { var indexOfPhoneContext = numberToExtractFrom.indexOf(RFC3966_PHONE_CONTEXT_); if (indexOfPhoneContext < 0) { return null; } var phoneContextStart = indexOfPhoneContext + RFC3966_PHONE_CONTEXT_.length; if (phoneContextStart >= numberToExtractFrom.length) { return ""; } var phoneContextEnd = numberToExtractFrom.indexOf(";", phoneContextStart); if (phoneContextEnd >= 0) { return numberToExtractFrom.substring(phoneContextStart, phoneContextEnd); } else { return numberToExtractFrom.substring(phoneContextStart); } } __name(extractPhoneContext, "extractPhoneContext"); function isPhoneContextValid(phoneContext) { if (phoneContext === null) { return true; } if (phoneContext.length === 0) { return false; } return RFC3966_GLOBAL_NUMBER_DIGITS_PATTERN_.test(phoneContext) || RFC3966_DOMAINNAME_PATTERN_.test(phoneContext); } __name(isPhoneContextValid, "isPhoneContextValid"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.js var require_extractFormattedPhoneNumberFromPossibleRfc3966NumberUri = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.js"(exports2) { "use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = extractFormattedPhoneNumberFromPossibleRfc3966NumberUri; var _extractPhoneContext = _interopRequireWildcard(require_extractPhoneContext()); var _ParseError = _interopRequireDefault(require_ParseError()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); return (_interopRequireWildcard = /* @__PURE__ */ __name(function _interopRequireWildcard2(e2, t2) { if (!t2 && e2 && e2.__esModule) return e2; var o, i, f = { __proto__: null, "default": e2 }; if (null === e2 || "object" != _typeof(e2) && "function" != typeof e2) return f; if (o = t2 ? n : r) { if (o.has(e2)) return o.get(e2); o.set(e2, f); } for (var _t in e2) "default" !== _t && {}.hasOwnProperty.call(e2, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e2, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e2[_t]); return f; }, "_interopRequireWildcard"))(e, t); } __name(_interopRequireWildcard, "_interopRequireWildcard"); function extractFormattedPhoneNumberFromPossibleRfc3966NumberUri(numberToParse, _ref) { var extractFormattedPhoneNumber = _ref.extractFormattedPhoneNumber; var phoneContext = (0, _extractPhoneContext["default"])(numberToParse); if (!(0, _extractPhoneContext.isPhoneContextValid)(phoneContext)) { throw new _ParseError["default"]("NOT_A_NUMBER"); } var phoneNumberString; if (phoneContext === null) { phoneNumberString = extractFormattedPhoneNumber(numberToParse) || ""; } else { phoneNumberString = ""; if (phoneContext.charAt(0) === _extractPhoneContext.PLUS_SIGN) { phoneNumberString += phoneContext; } var indexOfRfc3966Prefix = numberToParse.indexOf(_extractPhoneContext.RFC3966_PREFIX_); var indexOfNationalNumber; if (indexOfRfc3966Prefix >= 0) { indexOfNationalNumber = indexOfRfc3966Prefix + _extractPhoneContext.RFC3966_PREFIX_.length; } else { indexOfNationalNumber = 0; } var indexOfPhoneContext = numberToParse.indexOf(_extractPhoneContext.RFC3966_PHONE_CONTEXT_); phoneNumberString += numberToParse.substring(indexOfNationalNumber, indexOfPhoneContext); } var indexOfIsdn = phoneNumberString.indexOf(_extractPhoneContext.RFC3966_ISDN_SUBADDRESS_); if (indexOfIsdn > 0) { phoneNumberString = phoneNumberString.substring(0, indexOfIsdn); } if (phoneNumberString !== "") { return phoneNumberString; } } __name(extractFormattedPhoneNumberFromPossibleRfc3966NumberUri, "extractFormattedPhoneNumberFromPossibleRfc3966NumberUri"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parse.js var require_parse = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parse.js"(exports2) { "use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = parse2; var _constants = require_constants3(); var _ParseError = _interopRequireDefault(require_ParseError()); var _metadata = _interopRequireDefault(require_metadata()); var _isViablePhoneNumber = _interopRequireWildcard(require_isViablePhoneNumber()); var _extractExtension = _interopRequireDefault(require_extractExtension()); var _parseIncompletePhoneNumber = _interopRequireDefault(require_parseIncompletePhoneNumber()); var _getCountryCallingCode = _interopRequireDefault(require_getCountryCallingCode()); var _isPossible = require_isPossible(); var _PhoneNumber = _interopRequireDefault(require_PhoneNumber()); var _matchesEntirely = _interopRequireDefault(require_matchesEntirely()); var _extractCountryCallingCode = _interopRequireDefault(require_extractCountryCallingCode()); var _extractNationalNumber = _interopRequireDefault(require_extractNationalNumber()); var _getCountryByCallingCode = _interopRequireDefault(require_getCountryByCallingCode()); var _extractFormattedPhoneNumberFromPossibleRfc3966NumberUri = _interopRequireDefault(require_extractFormattedPhoneNumberFromPossibleRfc3966NumberUri()); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); return (_interopRequireWildcard = /* @__PURE__ */ __name(function _interopRequireWildcard2(e2, t2) { if (!t2 && e2 && e2.__esModule) return e2; var o, i, f = { __proto__: null, "default": e2 }; if (null === e2 || "object" != _typeof(e2) && "function" != typeof e2) return f; if (o = t2 ? n : r) { if (o.has(e2)) return o.get(e2); o.set(e2, f); } for (var _t in e2) "default" !== _t && {}.hasOwnProperty.call(e2, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e2, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e2[_t]); return f; }, "_interopRequireWildcard"))(e, t); } __name(_interopRequireWildcard, "_interopRequireWildcard"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var MAX_INPUT_STRING_LENGTH = 250; var PHONE_NUMBER_START_PATTERN = new RegExp("[" + _constants.PLUS_CHARS + _constants.VALID_DIGITS + "]"); var AFTER_PHONE_NUMBER_END_PATTERN = new RegExp("[^" + _constants.VALID_DIGITS + "#]+$"); var USE_NON_GEOGRAPHIC_COUNTRY_CODE = false; function parse2(text, options, metadataJson) { options = options || {}; var metadata = new _metadata["default"](metadataJson); if (options.defaultCountry && !metadata.hasCountry(options.defaultCountry)) { if (options.v2) { throw new _ParseError["default"]("INVALID_COUNTRY"); } throw new Error("Unknown country: ".concat(options.defaultCountry)); } var _parseInput = parseInput(text, options.v2, options.extract), formattedPhoneNumber = _parseInput.number, ext = _parseInput.ext, error = _parseInput.error; if (!formattedPhoneNumber) { if (options.v2) { if (error === "TOO_SHORT") { throw new _ParseError["default"]("TOO_SHORT"); } throw new _ParseError["default"]("NOT_A_NUMBER"); } return {}; } var _parsePhoneNumber = parsePhoneNumber( formattedPhoneNumber, options.defaultCountry, options.defaultCallingCode, // If `country` is returned, its numbering plan will also be selected in `metadata`. // Otherwise, if `countryCallingCode` is returned, its numbering plan will also be selected in `metadata`. // Otherwise, if neither `country` nor `countryCallingCode` are returned, no numbering plan will be selected in `metadata`. metadata ), country2 = _parsePhoneNumber.country, nationalNumber = _parsePhoneNumber.nationalNumber, countryCallingCode = _parsePhoneNumber.countryCallingCode, countryCallingCodeSource = _parsePhoneNumber.countryCallingCodeSource, carrierCode = _parsePhoneNumber.carrierCode; if (!metadata.hasSelectedNumberingPlan()) { if (options.v2) { throw new _ParseError["default"]("INVALID_COUNTRY"); } return {}; } if (!nationalNumber || nationalNumber.length < _constants.MIN_LENGTH_FOR_NSN) { if (options.v2) { throw new _ParseError["default"]("TOO_SHORT"); } return {}; } if (nationalNumber.length > _constants.MAX_LENGTH_FOR_NSN) { if (options.v2) { throw new _ParseError["default"]("TOO_LONG"); } return {}; } if (options.v2) { var phoneNumber = new _PhoneNumber["default"](countryCallingCode, nationalNumber, metadata.metadata); if (country2) { phoneNumber.country = country2; } if (carrierCode) { phoneNumber.carrierCode = carrierCode; } if (ext) { phoneNumber.ext = ext; } phoneNumber.__countryCallingCodeSource = countryCallingCodeSource; return phoneNumber; } var valid = (options.extended ? metadata.hasSelectedNumberingPlan() : country2) ? (0, _matchesEntirely["default"])(nationalNumber, metadata.nationalNumberPattern()) : false; if (!options.extended) { return valid ? result(country2, nationalNumber, ext) : {}; } return { country: country2, countryCallingCode, carrierCode, valid, possible: valid ? true : options.extended === true && metadata.possibleLengths() && (0, _isPossible.isPossibleNumber)(nationalNumber, metadata) ? true : false, phone: nationalNumber, ext }; } __name(parse2, "parse"); function _extractFormattedPhoneNumber(text, extract, throwOnError) { if (!text) { return; } if (text.length > MAX_INPUT_STRING_LENGTH) { if (throwOnError) { throw new _ParseError["default"]("TOO_LONG"); } return; } if (extract === false) { return text; } var startsAt = text.search(PHONE_NUMBER_START_PATTERN); if (startsAt < 0) { return; } return text.slice(startsAt).replace(AFTER_PHONE_NUMBER_END_PATTERN, ""); } __name(_extractFormattedPhoneNumber, "_extractFormattedPhoneNumber"); function parseInput(text, v2, extract) { var number = (0, _extractFormattedPhoneNumberFromPossibleRfc3966NumberUri["default"])(text, { extractFormattedPhoneNumber: /* @__PURE__ */ __name(function extractFormattedPhoneNumber(text2) { return _extractFormattedPhoneNumber(text2, extract, v2); }, "extractFormattedPhoneNumber") }); if (!number) { return {}; } if (!(0, _isViablePhoneNumber["default"])(number)) { if ((0, _isViablePhoneNumber.isViablePhoneNumberStart)(number)) { return { error: "TOO_SHORT" }; } return {}; } var withExtensionStripped = (0, _extractExtension["default"])(number); if (withExtensionStripped.ext) { return withExtensionStripped; } return { number }; } __name(parseInput, "parseInput"); function result(country2, nationalNumber, ext) { var result2 = { country: country2, phone: nationalNumber }; if (ext) { result2.ext = ext; } return result2; } __name(result, "result"); function parsePhoneNumber(formattedPhoneNumber, defaultCountry, defaultCallingCode, metadata) { var _extractCountryCallin = (0, _extractCountryCallingCode["default"])( (0, _parseIncompletePhoneNumber["default"])(formattedPhoneNumber), void 0, // `defaultCountry` and `defaultCallingCode` are only used to detect // if it's an "international" phone number or not. They won't be used // to derive the resulting `countryCallingCode` from them, or anything like that. defaultCountry, defaultCallingCode, metadata.metadata ), countryCallingCodeSource = _extractCountryCallin.countryCallingCodeSource, countryCallingCode = _extractCountryCallin.countryCallingCode, number = _extractCountryCallin.number; var country2; if (countryCallingCode) { metadata.selectNumberingPlan(countryCallingCode); } else if (number && (defaultCountry || defaultCallingCode)) { if (defaultCountry) { country2 = defaultCountry; metadata.selectNumberingPlan(defaultCountry); countryCallingCode = metadata.numberingPlan.callingCode(); } else { metadata.selectNumberingPlan(defaultCallingCode); countryCallingCode = defaultCallingCode; if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) { if (metadata.isNonGeographicCallingCode(countryCallingCode)) { country2 = "001"; } } } } else return {}; if (!number) { return { countryCallingCodeSource, countryCallingCode }; } var _extractNationalNumbe = (0, _extractNationalNumber["default"])((0, _parseIncompletePhoneNumber["default"])(number), void 0, metadata), nationalNumber = _extractNationalNumbe.nationalNumber, carrierCode = _extractNationalNumbe.carrierCode; var exactCountry = (0, _getCountryByCallingCode["default"])(countryCallingCode, { nationalNumber, metadata }); if (exactCountry) { country2 = exactCountry; if (exactCountry === "001") { } else { metadata.selectNumberingPlan(country2); } } return { country: country2, countryCallingCode, countryCallingCodeSource, nationalNumber, carrierCode }; } __name(parsePhoneNumber, "parsePhoneNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parsePhoneNumberWithError_.js var require_parsePhoneNumberWithError = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parsePhoneNumberWithError_.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = parsePhoneNumberWithError; var _parse = _interopRequireDefault(require_parse()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function ownKeys2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function(r2) { return Object.getOwnPropertyDescriptor(e, r2).enumerable; })), t.push.apply(t, o); } return t; } __name(ownKeys2, "ownKeys"); function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys2(Object(t), true).forEach(function(r2) { _defineProperty(e, r2, t[r2]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys2(Object(t)).forEach(function(r2) { Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2)); }); } return e; } __name(_objectSpread, "_objectSpread"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; } __name(_defineProperty, "_defineProperty"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); function parsePhoneNumberWithError(text, options, metadata) { return (0, _parse["default"])(text, _objectSpread(_objectSpread({}, options), {}, { v2: true }), metadata); } __name(parsePhoneNumberWithError, "parsePhoneNumberWithError"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parsePhoneNumber_.js var require_parsePhoneNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parsePhoneNumber_.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = parsePhoneNumber; var _parsePhoneNumberWithError_ = _interopRequireDefault(require_parsePhoneNumberWithError()); var _ParseError = _interopRequireDefault(require_ParseError()); var _metadata = require_metadata(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function ownKeys2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function(r2) { return Object.getOwnPropertyDescriptor(e, r2).enumerable; })), t.push.apply(t, o); } return t; } __name(ownKeys2, "ownKeys"); function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys2(Object(t), true).forEach(function(r2) { _defineProperty(e, r2, t[r2]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys2(Object(t)).forEach(function(r2) { Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2)); }); } return e; } __name(_objectSpread, "_objectSpread"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; } __name(_defineProperty, "_defineProperty"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); function parsePhoneNumber(text, options, metadata) { if (options && options.defaultCountry && !(0, _metadata.isSupportedCountry)(options.defaultCountry, metadata)) { options = _objectSpread(_objectSpread({}, options), {}, { defaultCountry: void 0 }); } try { return (0, _parsePhoneNumberWithError_["default"])(text, options, metadata); } catch (error) { if (error instanceof _ParseError["default"]) { } else { throw error; } } } __name(parsePhoneNumber, "parsePhoneNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parsePhoneNumber.js var require_parsePhoneNumber2 = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parsePhoneNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = parsePhoneNumber; var _normalizeArguments2 = _interopRequireDefault(require_normalizeArguments()); var _parsePhoneNumber_ = _interopRequireDefault(require_parsePhoneNumber()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function parsePhoneNumber() { var _normalizeArguments = (0, _normalizeArguments2["default"])(arguments), text = _normalizeArguments.text, options = _normalizeArguments.options, metadata = _normalizeArguments.metadata; return (0, _parsePhoneNumber_["default"])(text, options, metadata); } __name(parsePhoneNumber, "parsePhoneNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parsePhoneNumberWithError.js var require_parsePhoneNumberWithError2 = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/parsePhoneNumberWithError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = parsePhoneNumberWithError; var _parsePhoneNumberWithError_ = _interopRequireDefault(require_parsePhoneNumberWithError()); var _normalizeArguments2 = _interopRequireDefault(require_normalizeArguments()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function parsePhoneNumberWithError() { var _normalizeArguments = (0, _normalizeArguments2["default"])(arguments), text = _normalizeArguments.text, options = _normalizeArguments.options, metadata = _normalizeArguments.metadata; return (0, _parsePhoneNumberWithError_["default"])(text, options, metadata); } __name(parsePhoneNumberWithError, "parsePhoneNumberWithError"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/isValidPhoneNumber.js var require_isValidPhoneNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/isValidPhoneNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = isValidPhoneNumber; var _normalizeArguments2 = _interopRequireDefault(require_normalizeArguments()); var _parsePhoneNumber_ = _interopRequireDefault(require_parsePhoneNumber()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function ownKeys2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function(r2) { return Object.getOwnPropertyDescriptor(e, r2).enumerable; })), t.push.apply(t, o); } return t; } __name(ownKeys2, "ownKeys"); function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys2(Object(t), true).forEach(function(r2) { _defineProperty(e, r2, t[r2]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys2(Object(t)).forEach(function(r2) { Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2)); }); } return e; } __name(_objectSpread, "_objectSpread"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; } __name(_defineProperty, "_defineProperty"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); function isValidPhoneNumber() { var _normalizeArguments = (0, _normalizeArguments2["default"])(arguments), text = _normalizeArguments.text, options = _normalizeArguments.options, metadata = _normalizeArguments.metadata; options = _objectSpread(_objectSpread({}, options), {}, { extract: false }); var phoneNumber = (0, _parsePhoneNumber_["default"])(text, options, metadata); return phoneNumber && phoneNumber.isValid() || false; } __name(isValidPhoneNumber, "isValidPhoneNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/isPossiblePhoneNumber.js var require_isPossiblePhoneNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/isPossiblePhoneNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = isPossiblePhoneNumber; var _normalizeArguments2 = _interopRequireDefault(require_normalizeArguments()); var _parsePhoneNumber_ = _interopRequireDefault(require_parsePhoneNumber()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function ownKeys2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function(r2) { return Object.getOwnPropertyDescriptor(e, r2).enumerable; })), t.push.apply(t, o); } return t; } __name(ownKeys2, "ownKeys"); function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys2(Object(t), true).forEach(function(r2) { _defineProperty(e, r2, t[r2]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys2(Object(t)).forEach(function(r2) { Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2)); }); } return e; } __name(_objectSpread, "_objectSpread"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; } __name(_defineProperty, "_defineProperty"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); function isPossiblePhoneNumber() { var _normalizeArguments = (0, _normalizeArguments2["default"])(arguments), text = _normalizeArguments.text, options = _normalizeArguments.options, metadata = _normalizeArguments.metadata; options = _objectSpread(_objectSpread({}, options), {}, { extract: false }); var phoneNumber = (0, _parsePhoneNumber_["default"])(text, options, metadata); return phoneNumber && phoneNumber.isPossible() || false; } __name(isPossiblePhoneNumber, "isPossiblePhoneNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/validatePhoneNumberLength.js var require_validatePhoneNumberLength = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/validatePhoneNumberLength.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = validatePhoneNumberLength; var _normalizeArguments2 = _interopRequireDefault(require_normalizeArguments()); var _parsePhoneNumberWithError_ = _interopRequireDefault(require_parsePhoneNumberWithError()); var _ParseError = _interopRequireDefault(require_ParseError()); var _metadata = _interopRequireDefault(require_metadata()); var _checkNumberLength = _interopRequireDefault(require_checkNumberLength()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function ownKeys2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function(r2) { return Object.getOwnPropertyDescriptor(e, r2).enumerable; })), t.push.apply(t, o); } return t; } __name(ownKeys2, "ownKeys"); function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys2(Object(t), true).forEach(function(r2) { _defineProperty(e, r2, t[r2]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys2(Object(t)).forEach(function(r2) { Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2)); }); } return e; } __name(_objectSpread, "_objectSpread"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; } __name(_defineProperty, "_defineProperty"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); function validatePhoneNumberLength() { var _normalizeArguments = (0, _normalizeArguments2["default"])(arguments), text = _normalizeArguments.text, options = _normalizeArguments.options, metadata = _normalizeArguments.metadata; options = _objectSpread(_objectSpread({}, options), {}, { extract: false }); try { var phoneNumber = (0, _parsePhoneNumberWithError_["default"])(text, options, metadata); var metadataInstance = new _metadata["default"](metadata); metadataInstance.selectNumberingPlan(phoneNumber.country || phoneNumber.countryCallingCode); var result = (0, _checkNumberLength["default"])(phoneNumber.nationalNumber, void 0, metadataInstance); if (result !== "IS_POSSIBLE") { return result; } } catch (error) { if (error instanceof _ParseError["default"]) { return error.message; } else { throw error; } } } __name(validatePhoneNumberLength, "validatePhoneNumberLength"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/LRUCache.js var require_LRUCache = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/LRUCache.js"(exports2) { "use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = void 0; function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); var Node = /* @__PURE__ */ _createClass(/* @__PURE__ */ __name(function Node2(key, value) { var next = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null; var prev = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : null; _classCallCheck(this, Node2); this.key = key; this.value = value; this.next = next; this.prev = prev; }, "Node")); var LRUCache = exports2["default"] = /* @__PURE__ */ (function() { function LRUCache2() { var limit = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 10; _classCallCheck(this, LRUCache2); this.size = 0; this.limit = limit; this.head = null; this.tail = null; this.cache = {}; } __name(LRUCache2, "LRUCache"); return _createClass(LRUCache2, [{ key: "put", value: /* @__PURE__ */ __name(function put(key, value) { this.ensureLimit(); if (!this.head) { this.head = this.tail = new Node(key, value); } else { var node = new Node(key, value, this.head); this.head.prev = node; this.head = node; } this.cache[key] = this.head; this.size++; }, "put") // Read from cache map and make that node as new Head of LinkedList }, { key: "get", value: /* @__PURE__ */ __name(function get(key) { if (this.cache[key]) { var value = this.cache[key].value; this.remove(key); this.put(key, value); return value; } console.log("Item not available in cache for key ".concat(key)); }, "get") }, { key: "ensureLimit", value: /* @__PURE__ */ __name(function ensureLimit() { if (this.size === this.limit) { this.remove(this.tail.key); } }, "ensureLimit") }, { key: "remove", value: /* @__PURE__ */ __name(function remove(key) { var node = this.cache[key]; if (node.prev !== null) { node.prev.next = node.next; } else { this.head = node.next; } if (node.next !== null) { node.next.prev = node.prev; } else { this.tail = node.prev; } delete this.cache[key]; this.size--; }, "remove") }, { key: "clear", value: /* @__PURE__ */ __name(function clear() { this.head = null; this.tail = null; this.size = 0; this.cache = {}; }, "clear") // // Invokes the callback function with every node of the chain and the index of the node. // forEach(fn) { // let node = this.head; // let counter = 0; // while (node) { // fn(node, counter); // node = node.next; // counter++; // } // } // // To iterate over LRU with a 'for...of' loop // *[Symbol.iterator]() { // let node = this.head; // while (node) { // yield node; // node = node.next; // } // } }]); })(); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/RegExpCache.js var require_RegExpCache = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/RegExpCache.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = void 0; var _LRUCache = _interopRequireDefault(require_LRUCache()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); var RegExpCache = exports2["default"] = /* @__PURE__ */ (function() { function RegExpCache2(size) { _classCallCheck(this, RegExpCache2); this.cache = new _LRUCache["default"](size); } __name(RegExpCache2, "RegExpCache"); return _createClass(RegExpCache2, [{ key: "getPatternForRegExp", value: /* @__PURE__ */ __name(function getPatternForRegExp(pattern) { var regExp = this.cache.get(pattern); if (!regExp) { regExp = new RegExp("^" + pattern); this.cache.put(pattern, regExp); } return regExp; }, "getPatternForRegExp") }]); })(); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/util.js var require_util = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.endsWith = endsWith; exports2.limit = limit; exports2.startsWith = startsWith; exports2.trimAfterFirstMatch = trimAfterFirstMatch; function limit(lower, upper) { if (lower < 0 || upper <= 0 || upper < lower) { throw new TypeError(); } return "{".concat(lower, ",").concat(upper, "}"); } __name(limit, "limit"); function trimAfterFirstMatch(regexp, string) { var index = string.search(regexp); if (index >= 0) { return string.slice(0, index); } return string; } __name(trimAfterFirstMatch, "trimAfterFirstMatch"); function startsWith(string, substring) { return string.indexOf(substring) === 0; } __name(startsWith, "startsWith"); function endsWith(string, substring) { return string.indexOf(substring, string.length - substring.length) === string.length - substring.length; } __name(endsWith, "endsWith"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/utf-8.js var require_utf_8 = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/utf-8.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2._pN = exports2._pL = exports2.PZ = void 0; exports2.isInvalidPunctuationSymbol = isInvalidPunctuationSymbol; exports2.isLatinLetter = isLatinLetter; exports2.pZ = exports2.pNd = void 0; var _pZ = " \xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000"; var pZ = exports2.pZ = "[".concat(_pZ, "]"); var PZ = exports2.PZ = "[^".concat(_pZ, "]"); var _pN = exports2._pN = "0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D66-\u0D75\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19"; var _pNd = "0-9\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0BE6-\u0BEF\u0C66-\u0C6F\u0CE6-\u0CEF\u0D66-\u0D6F\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F29\u1040-\u1049\u1090-\u1099\u17E0-\u17E9\u1810-\u1819\u1946-\u194F\u19D0-\u19D9\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\uA620-\uA629\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19"; var pNd = exports2.pNd = "[".concat(_pNd, "]"); var _pL = exports2._pL = "A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC"; var pL = "[".concat(_pL, "]"); var pL_regexp = new RegExp(pL); var _pSc = "$\xA2-\xA5\u058F\u060B\u09F2\u09F3\u09FB\u0AF1\u0BF9\u0E3F\u17DB\u20A0-\u20B9\uA838\uFDFC\uFE69\uFF04\uFFE0\uFFE1\uFFE5\uFFE6"; var pSc = "[".concat(_pSc, "]"); var pSc_regexp = new RegExp(pSc); var _pMn = "\u0300-\u036F\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u08FE\u0900-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0CBC\u0CBF\u0CC6\u0CCC\u0CCD\u0CE2\u0CE3\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1DC0-\u1DE6\u1DFC-\u1DFF\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099\u309A\uA66F\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE26"; var pMn = "[".concat(_pMn, "]"); var pMn_regexp = new RegExp(pMn); var _InBasic_Latin = "\0-\x7F"; var _InLatin_1_Supplement = "\x80-\xFF"; var _InLatin_Extended_A = "\u0100-\u017F"; var _InLatin_Extended_Additional = "\u1E00-\u1EFF"; var _InLatin_Extended_B = "\u0180-\u024F"; var _InCombining_Diacritical_Marks = "\u0300-\u036F"; var latinLetterRegexp = new RegExp("[" + _InBasic_Latin + _InLatin_1_Supplement + _InLatin_Extended_A + _InLatin_Extended_Additional + _InLatin_Extended_B + _InCombining_Diacritical_Marks + "]"); function isLatinLetter(letter) { if (!pL_regexp.test(letter) && !pMn_regexp.test(letter)) { return false; } return latinLetterRegexp.test(letter); } __name(isLatinLetter, "isLatinLetter"); function isInvalidPunctuationSymbol(character) { return character === "%" || pSc_regexp.test(character); } __name(isInvalidPunctuationSymbol, "isInvalidPunctuationSymbol"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/matchPhoneNumberStringAgainstPhoneNumber.js var require_matchPhoneNumberStringAgainstPhoneNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/matchPhoneNumberStringAgainstPhoneNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = matchPhoneNumberStringAgainstPhoneNumber; var _parsePhoneNumber = _interopRequireDefault(require_parsePhoneNumber2()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function matchPhoneNumberStringAgainstPhoneNumber(phoneNumberString, phoneNumber, metadata) { var phoneNumberStringContainsCallingCode = true; var parsedPhoneNumber = (0, _parsePhoneNumber["default"])(phoneNumberString, metadata); if (!parsedPhoneNumber) { phoneNumberStringContainsCallingCode = false; parsedPhoneNumber = (0, _parsePhoneNumber["default"])(phoneNumberString, { defaultCallingCode: phoneNumber.countryCallingCode }, metadata); } if (!parsedPhoneNumber) { return "INVALID_NUMBER"; } if (phoneNumber.ext) { if (parsedPhoneNumber.ext !== phoneNumber.ext) { return "NO_MATCH"; } } else { if (parsedPhoneNumber.ext) { return "NO_MATCH"; } } if (phoneNumberStringContainsCallingCode) { if (phoneNumber.countryCallingCode !== parsedPhoneNumber.countryCallingCode) { return "NO_MATCH"; } } if (phoneNumber.number === parsedPhoneNumber.number) { if (phoneNumberStringContainsCallingCode) { return "EXACT_MATCH"; } else { return "NSN_MATCH"; } } if (phoneNumber.nationalNumber.indexOf(parsedPhoneNumber.nationalNumber) === 0 || parsedPhoneNumber.nationalNumber.indexOf(phoneNumber.nationalNumber) === 0) { return "SHORT_NSN_MATCH"; } return "NO_MATCH"; } __name(matchPhoneNumberStringAgainstPhoneNumber, "matchPhoneNumberStringAgainstPhoneNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/Leniency.js var require_Leniency = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/Leniency.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.containsMoreThanOneSlashInNationalNumber = containsMoreThanOneSlashInNationalNumber; exports2["default"] = void 0; var _parseDigits = _interopRequireDefault(require_parseDigits()); var _matchPhoneNumberStringAgainstPhoneNumber = _interopRequireDefault(require_matchPhoneNumberStringAgainstPhoneNumber()); var _metadata2 = _interopRequireDefault(require_metadata()); var _getCountryByCallingCode = _interopRequireDefault(require_getCountryByCallingCode()); var _format = require_format(); var _util = require_util(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function() { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_createForOfIteratorHelperLoose, "_createForOfIteratorHelperLoose"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); var _default = exports2["default"] = { /** * Phone numbers accepted are "possible", but not necessarily "valid". */ POSSIBLE: /* @__PURE__ */ __name(function POSSIBLE(phoneNumber, _ref) { var candidate = _ref.candidate, metadata = _ref.metadata; return true; }, "POSSIBLE"), /** * Phone numbers accepted are "possible" and "valid". * Numbers written in national format must have their national-prefix * present if it is usually written for a number of this type. */ VALID: /* @__PURE__ */ __name(function VALID(phoneNumber, _ref2) { var candidate = _ref2.candidate, defaultCountry = _ref2.defaultCountry, metadata = _ref2.metadata; if (!phoneNumber.isValid() || !containsOnlyValidXChars(phoneNumber, candidate, metadata)) { return false; } return true; }, "VALID"), /** * Phone numbers accepted are "valid" and * are grouped in a possible way for this locale. For example, a US number written as * "65 02 53 00 00" and "650253 0000" are not accepted at this leniency level, whereas * "650 253 0000", "650 2530000" or "6502530000" are. * Numbers with more than one '/' symbol in the national significant number * are also dropped at this level. * * Warning: This level might result in lower coverage especially for regions outside of * country code "+1". If you are not sure about which level to use, * email the discussion group libphonenumber-discuss@googlegroups.com. */ STRICT_GROUPING: /* @__PURE__ */ __name(function STRICT_GROUPING(phoneNumber, _ref3) { var candidate = _ref3.candidate, defaultCountry = _ref3.defaultCountry, metadata = _ref3.metadata, regExpCache = _ref3.regExpCache; if (!phoneNumber.isValid() || !containsOnlyValidXChars(phoneNumber, candidate, metadata) || containsMoreThanOneSlashInNationalNumber(phoneNumber, candidate) || !isNationalPrefixPresentIfRequired(phoneNumber, { defaultCountry, metadata })) { return false; } return checkNumberGroupingIsValid(phoneNumber, candidate, metadata, allNumberGroupsRemainGrouped, regExpCache); }, "STRICT_GROUPING"), /** * Phone numbers accepted are "valid" and are grouped in the same way * that we would have formatted it, or as a single block. * For example, a US number written as "650 2530000" is not accepted * at this leniency level, whereas "650 253 0000" or "6502530000" are. * Numbers with more than one '/' symbol are also dropped at this level. * * Warning: This level might result in lower coverage especially for regions outside of * country code "+1". If you are not sure about which level to use, email the discussion group * libphonenumber-discuss@googlegroups.com. */ EXACT_GROUPING: /* @__PURE__ */ __name(function EXACT_GROUPING(phoneNumber, _ref4) { var candidate = _ref4.candidate, defaultCountry = _ref4.defaultCountry, metadata = _ref4.metadata, regExpCache = _ref4.regExpCache; if (!phoneNumber.isValid() || !containsOnlyValidXChars(phoneNumber, candidate, metadata) || containsMoreThanOneSlashInNationalNumber(phoneNumber, candidate) || !isNationalPrefixPresentIfRequired(phoneNumber, { defaultCountry, metadata })) { return false; } return checkNumberGroupingIsValid(phoneNumber, candidate, metadata, allNumberGroupsAreExactlyPresent, regExpCache); }, "EXACT_GROUPING") }; function containsOnlyValidXChars(phoneNumber, candidate, metadata) { for (var index = 0; index < candidate.length - 1; index++) { var charAtIndex = candidate.charAt(index); if (charAtIndex === "x" || charAtIndex === "X") { var charAtNextIndex = candidate.charAt(index + 1); if (charAtNextIndex === "x" || charAtNextIndex === "X") { index++; if ((0, _matchPhoneNumberStringAgainstPhoneNumber["default"])(candidate.substring(index), phoneNumber, metadata) !== "NSN_MATCH") { return false; } } else { var ext = (0, _parseDigits["default"])(candidate.substring(index)); if (ext) { if (phoneNumber.ext !== ext) { return false; } } else { if (phoneNumber.ext) { return false; } } } } } return true; } __name(containsOnlyValidXChars, "containsOnlyValidXChars"); function isNationalPrefixPresentIfRequired(phoneNumber, _ref5) { var defaultCountry = _ref5.defaultCountry, _metadata = _ref5.metadata; if (phoneNumber.__countryCallingCodeSource !== "FROM_DEFAULT_COUNTRY") { return true; } var metadata = new _metadata2["default"](_metadata); metadata.selectNumberingPlan(phoneNumber.countryCallingCode); var phoneNumberRegion = phoneNumber.country || (0, _getCountryByCallingCode["default"])(phoneNumber.countryCallingCode, { nationalNumber: phoneNumber.nationalNumber, metadata }); var nationalNumber = phoneNumber.nationalNumber; var format = (0, _format.chooseFormatForNumber)(metadata.numberingPlan.formats(), nationalNumber); if (format.nationalPrefixFormattingRule()) { if (metadata.numberingPlan.nationalPrefixIsOptionalWhenFormattingInNationalFormat()) { return true; } if (!format.usesNationalPrefix()) { return true; } return Boolean(phoneNumber.nationalPrefix); } return true; } __name(isNationalPrefixPresentIfRequired, "isNationalPrefixPresentIfRequired"); function containsMoreThanOneSlashInNationalNumber(phoneNumber, candidate) { var firstSlashInBodyIndex = candidate.indexOf("/"); if (firstSlashInBodyIndex < 0) { return false; } var secondSlashInBodyIndex = candidate.indexOf("/", firstSlashInBodyIndex + 1); if (secondSlashInBodyIndex < 0) { return false; } var candidateHasCountryCode = phoneNumber.__countryCallingCodeSource === "FROM_NUMBER_WITH_PLUS_SIGN" || phoneNumber.__countryCallingCodeSource === "FROM_NUMBER_WITHOUT_PLUS_SIGN"; if (candidateHasCountryCode && (0, _parseDigits["default"])(candidate.substring(0, firstSlashInBodyIndex)) === phoneNumber.countryCallingCode) { return candidate.slice(secondSlashInBodyIndex + 1).indexOf("/") >= 0; } return true; } __name(containsMoreThanOneSlashInNationalNumber, "containsMoreThanOneSlashInNationalNumber"); function checkNumberGroupingIsValid(number, candidate, metadata, checkGroups, regExpCache) { throw new Error("This part of code hasn't been ported"); var normalizedCandidate = normalizeDigits( candidate, true /* keep non-digits */ ); var formattedNumberGroups = getNationalNumberGroups(metadata, number, null); if (checkGroups(metadata, number, normalizedCandidate, formattedNumberGroups)) { return true; } var alternateFormats = MetadataManager.getAlternateFormatsForCountry(number.getCountryCode()); var nationalSignificantNumber = util.getNationalSignificantNumber(number); if (alternateFormats) { for (var _iterator = _createForOfIteratorHelperLoose(alternateFormats.numberFormats()), _step; !(_step = _iterator()).done; ) { var alternateFormat = _step.value; if (alternateFormat.leadingDigitsPatterns().length > 0) { var leadingDigitsRegExp = regExpCache.getPatternForRegExp("^" + alternateFormat.leadingDigitsPatterns()[0]); if (!leadingDigitsRegExp.test(nationalSignificantNumber)) { continue; } } formattedNumberGroups = getNationalNumberGroups(metadata, number, alternateFormat); if (checkGroups(metadata, number, normalizedCandidate, formattedNumberGroups)) { return true; } } } return false; } __name(checkNumberGroupingIsValid, "checkNumberGroupingIsValid"); function getNationalNumberGroups(metadata, number, formattingPattern) { throw new Error("This part of code hasn't been ported"); if (formattingPattern) { var nationalSignificantNumber = util.getNationalSignificantNumber(number); return util.formatNsnUsingPattern(nationalSignificantNumber, formattingPattern, "RFC3966", metadata).split("-"); } var rfc3966Format = formatNumber(number, "RFC3966", metadata); var endIndex = rfc3966Format.indexOf(";"); if (endIndex < 0) { endIndex = rfc3966Format.length; } var startIndex = rfc3966Format.indexOf("-") + 1; return rfc3966Format.slice(startIndex, endIndex).split("-"); } __name(getNationalNumberGroups, "getNationalNumberGroups"); function allNumberGroupsAreExactlyPresent(metadata, number, normalizedCandidate, formattedNumberGroups) { throw new Error("This part of code hasn't been ported"); var candidateGroups = normalizedCandidate.split(NON_DIGITS_PATTERN); var candidateNumberGroupIndex = number.hasExtension() ? candidateGroups.length - 2 : candidateGroups.length - 1; if (candidateGroups.length == 1 || candidateGroups[candidateNumberGroupIndex].contains(util.getNationalSignificantNumber(number))) { return true; } var formattedNumberGroupIndex = formattedNumberGroups.length - 1; while (formattedNumberGroupIndex > 0 && candidateNumberGroupIndex >= 0) { if (candidateGroups[candidateNumberGroupIndex] !== formattedNumberGroups[formattedNumberGroupIndex]) { return false; } formattedNumberGroupIndex--; candidateNumberGroupIndex--; } return candidateNumberGroupIndex >= 0 && (0, _util.endsWith)(candidateGroups[candidateNumberGroupIndex], formattedNumberGroups[0]); } __name(allNumberGroupsAreExactlyPresent, "allNumberGroupsAreExactlyPresent"); function allNumberGroupsRemainGrouped(metadata, number, normalizedCandidate, formattedNumberGroups) { throw new Error("This part of code hasn't been ported"); var fromIndex = 0; if (number.getCountryCodeSource() !== CountryCodeSource.FROM_DEFAULT_COUNTRY) { var countryCode = String(number.getCountryCode()); fromIndex = normalizedCandidate.indexOf(countryCode) + countryCode.length(); } for (var i = 0; i < formattedNumberGroups.length; i++) { fromIndex = normalizedCandidate.indexOf(formattedNumberGroups[i], fromIndex); if (fromIndex < 0) { return false; } fromIndex += formattedNumberGroups[i].length(); if (i == 0 && fromIndex < normalizedCandidate.length()) { var region = util.getRegionCodeForCountryCode(number.getCountryCode()); if (util.getNddPrefixForRegion(region, true) != null && Character.isDigit(normalizedCandidate.charAt(fromIndex))) { var nationalSignificantNumber = util.getNationalSignificantNumber(number); return (0, _util.startsWith)(normalizedCandidate.slice(fromIndex - formattedNumberGroups[i].length), nationalSignificantNumber); } } } return normalizedCandidate.slice(fromIndex).contains(number.getExtension()); } __name(allNumberGroupsRemainGrouped, "allNumberGroupsRemainGrouped"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/parsePreCandidate.js var require_parsePreCandidate = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/parsePreCandidate.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = parsePreCandidate; var _util = require_util(); var SECOND_NUMBER_START_PATTERN = /[\\/] *x/; function parsePreCandidate(candidate) { return (0, _util.trimAfterFirstMatch)(SECOND_NUMBER_START_PATTERN, candidate); } __name(parsePreCandidate, "parsePreCandidate"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/isValidPreCandidate.js var require_isValidPreCandidate = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/isValidPreCandidate.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = isValidPreCandidate; var SLASH_SEPARATED_DATES = /(?:(?:[0-3]?\d\/[01]?\d)|(?:[01]?\d\/[0-3]?\d))\/(?:[12]\d)?\d{2}/; var TIME_STAMPS = /[12]\d{3}[-/]?[01]\d[-/]?[0-3]\d +[0-2]\d$/; var TIME_STAMPS_SUFFIX_LEADING = /^:[0-5]\d/; function isValidPreCandidate(candidate, offset, text) { if (SLASH_SEPARATED_DATES.test(candidate)) { return false; } if (TIME_STAMPS.test(candidate)) { var followingText = text.slice(offset + candidate.length); if (TIME_STAMPS_SUFFIX_LEADING.test(followingText)) { return false; } } return true; } __name(isValidPreCandidate, "isValidPreCandidate"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/isValidCandidate.js var require_isValidCandidate = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findNumbers/isValidCandidate.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.LEAD_CLASS = void 0; exports2["default"] = isValidCandidate; var _constants = require_constants3(); var _util = require_util(); var _utf = require_utf_8(); var OPENING_PARENS = "(\\[\uFF08\uFF3B"; var CLOSING_PARENS = ")\\]\uFF09\uFF3D"; var NON_PARENS = "[^".concat(OPENING_PARENS).concat(CLOSING_PARENS, "]"); var LEAD_CLASS = exports2.LEAD_CLASS = "[".concat(OPENING_PARENS).concat(_constants.PLUS_CHARS, "]"); var LEAD_CLASS_LEADING = new RegExp("^" + LEAD_CLASS); var BRACKET_PAIR_LIMIT = (0, _util.limit)(0, 3); var MATCHING_BRACKETS_ENTIRE = new RegExp("^(?:[" + OPENING_PARENS + "])?(?:" + NON_PARENS + "+[" + CLOSING_PARENS + "])?" + NON_PARENS + "+(?:[" + OPENING_PARENS + "]" + NON_PARENS + "+[" + CLOSING_PARENS + "])" + BRACKET_PAIR_LIMIT + NON_PARENS + "*$"); var PUB_PAGES = /\d{1,5}-+\d{1,5}\s{0,4}\(\d{1,4}/; function isValidCandidate(candidate, offset, text, leniency) { if (!MATCHING_BRACKETS_ENTIRE.test(candidate) || PUB_PAGES.test(candidate)) { return; } if (leniency !== "POSSIBLE") { if (offset > 0 && !LEAD_CLASS_LEADING.test(candidate)) { var previousChar = text[offset - 1]; if ((0, _utf.isInvalidPunctuationSymbol)(previousChar) || (0, _utf.isLatinLetter)(previousChar)) { return false; } } var lastCharIndex = offset + candidate.length; if (lastCharIndex < text.length) { var nextChar = text[lastCharIndex]; if ((0, _utf.isInvalidPunctuationSymbol)(nextChar) || (0, _utf.isLatinLetter)(nextChar)) { return false; } } } return true; } __name(isValidCandidate, "isValidCandidate"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/PhoneNumberMatcher.js var require_PhoneNumberMatcher = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/PhoneNumberMatcher.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = void 0; var _constants = require_constants3(); var _createExtensionPattern = _interopRequireDefault(require_createExtensionPattern()); var _RegExpCache = _interopRequireDefault(require_RegExpCache()); var _util = require_util(); var _utf = require_utf_8(); var _Leniency = _interopRequireDefault(require_Leniency()); var _parsePreCandidate = _interopRequireDefault(require_parsePreCandidate()); var _isValidPreCandidate = _interopRequireDefault(require_isValidPreCandidate()); var _isValidCandidate = _interopRequireWildcard(require_isValidCandidate()); var _metadata = require_metadata(); var _parsePhoneNumber = _interopRequireDefault(require_parsePhoneNumber2()); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); return (_interopRequireWildcard = /* @__PURE__ */ __name(function _interopRequireWildcard2(e2, t2) { if (!t2 && e2 && e2.__esModule) return e2; var o, i, f = { __proto__: null, "default": e2 }; if (null === e2 || "object" != _typeof(e2) && "function" != typeof e2) return f; if (o = t2 ? n : r) { if (o.has(e2)) return o.get(e2); o.set(e2, f); } for (var _t in e2) "default" !== _t && {}.hasOwnProperty.call(e2, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e2, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e2[_t]); return f; }, "_interopRequireWildcard"))(e, t); } __name(_interopRequireWildcard, "_interopRequireWildcard"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function() { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_createForOfIteratorHelperLoose, "_createForOfIteratorHelperLoose"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); var USE_NON_GEOGRAPHIC_COUNTRY_CODE = false; var EXTN_PATTERNS_FOR_MATCHING = (0, _createExtensionPattern["default"])("matching"); var INNER_MATCHES = [ // Breaks on the slash - e.g. "651-234-2345/332-445-1234" "/+(.*)", // Note that the bracket here is inside the capturing group, since we consider it part of the // phone number. Will match a pattern like "(650) 223 3345 (754) 223 3321". "(\\([^(]*)", // Breaks on a hyphen - e.g. "12345 - 332-445-1234 is my number." // We require a space on either side of the hyphen for it to be considered a separator. "(?:".concat(_utf.pZ, "-|-").concat(_utf.pZ, ")").concat(_utf.pZ, "*(.+)"), // Various types of wide hyphens. Note we have decided not to enforce a space here, since it's // possible that it's supposed to be used to break two numbers without spaces, and we haven't // seen many instances of it used within a number. "[\u2012-\u2015\uFF0D]".concat(_utf.pZ, "*(.+)"), // Breaks on a full stop - e.g. "12345. 332-445-1234 is my number." "\\.+".concat(_utf.pZ, "*([^.]+)"), // Breaks on space - e.g. "3324451234 8002341234" "".concat(_utf.pZ, "+(").concat(_utf.PZ, "+)") ]; var leadLimit = (0, _util.limit)(0, 2); var punctuationLimit = (0, _util.limit)(0, 4); var digitBlockLimit = _constants.MAX_LENGTH_FOR_NSN + _constants.MAX_LENGTH_COUNTRY_CODE; var blockLimit = (0, _util.limit)(0, digitBlockLimit); var punctuation = "[".concat(_constants.VALID_PUNCTUATION, "]") + punctuationLimit; var digitSequence = _utf.pNd + (0, _util.limit)(1, digitBlockLimit); var PATTERN = "(?:" + _isValidCandidate.LEAD_CLASS + punctuation + ")" + leadLimit + digitSequence + "(?:" + punctuation + digitSequence + ")" + blockLimit + "(?:" + EXTN_PATTERNS_FOR_MATCHING + ")?"; var UNWANTED_END_CHAR_PATTERN = new RegExp("[^".concat(_utf._pN).concat(_utf._pL, "#]+$")); var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || Math.pow(2, 53) - 1; var PhoneNumberMatcher = exports2["default"] = /* @__PURE__ */ (function() { function PhoneNumberMatcher2() { var text = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : ""; var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; var metadata = arguments.length > 2 ? arguments[2] : void 0; _classCallCheck(this, PhoneNumberMatcher2); options = { v2: options.v2, defaultCallingCode: options.defaultCallingCode, defaultCountry: options.defaultCountry && (0, _metadata.isSupportedCountry)(options.defaultCountry, metadata) ? options.defaultCountry : void 0, // Here it should've assigned a default value only if `options.leniency === undefined`. leniency: options.leniency || (options.extended ? "POSSIBLE" : "VALID"), // Here it should've assigned a default value only if `options.maxTries === undefined`. maxTries: options.maxTries || MAX_SAFE_INTEGER }; if (!_Leniency["default"][options.leniency]) { throw new TypeError('Unknown leniency: "'.concat(options.leniency, '"')); } if (options.leniency !== "POSSIBLE" && options.leniency !== "VALID") { throw new TypeError('Invalid `leniency`: "'.concat(options.leniency, '". Supported values: "POSSIBLE", "VALID".')); } if (options.maxTries < 0) { throw new TypeError("`maxTries` must be `>= 0`"); } this.text = text; this.options = options; this.metadata = metadata; this.leniency = _Leniency["default"][options.leniency]; this.maxTries = options.maxTries; this.PATTERN = new RegExp(PATTERN, "ig"); this.INNER_MATCHES = INNER_MATCHES.map(function(pattern) { return new RegExp(pattern, "g"); }); this.state = "NOT_READY"; this.searchIndex = 0; this.regExpCache = new _RegExpCache["default"](32); } __name(PhoneNumberMatcher2, "PhoneNumberMatcher"); return _createClass(PhoneNumberMatcher2, [{ key: "find", value: /* @__PURE__ */ __name(function find(index) { this.PATTERN.lastIndex = index; var matches; while (this.maxTries > 0 && (matches = this.PATTERN.exec(this.text)) !== null) { var candidate = matches[0]; var offset = matches.index; candidate = (0, _parsePreCandidate["default"])(candidate); if ((0, _isValidPreCandidate["default"])(candidate, offset, this.text)) { var match = ( // Try to come up with a valid match given the entire candidate. this.parseAndVerify(candidate, offset, this.text) || this.extractInnerMatch(candidate, offset, this.text) ); if (match) { if (this.options.v2) { return { startsAt: match.startsAt, endsAt: match.endsAt, number: match.phoneNumber }; } else { var phoneNumber = match.phoneNumber; var result = { startsAt: match.startsAt, endsAt: match.endsAt, phone: phoneNumber.nationalNumber }; if (phoneNumber.country) { if (USE_NON_GEOGRAPHIC_COUNTRY_CODE && country === "001") { result.countryCallingCode = phoneNumber.countryCallingCode; } else { result.country = phoneNumber.country; } } else { result.countryCallingCode = phoneNumber.countryCallingCode; } if (phoneNumber.ext) { result.ext = phoneNumber.ext; } return result; } } } this.maxTries--; } }, "find") /** * Attempts to extract a match from `substring` * if the substring itself does not qualify as a match. */ }, { key: "extractInnerMatch", value: /* @__PURE__ */ __name(function extractInnerMatch(substring, offset, text) { for (var _iterator = _createForOfIteratorHelperLoose(this.INNER_MATCHES), _step; !(_step = _iterator()).done; ) { var innerMatchRegExp = _step.value; innerMatchRegExp.lastIndex = 0; var isFirstMatch = true; var candidateMatch = void 0; while (this.maxTries > 0 && (candidateMatch = innerMatchRegExp.exec(substring)) !== null) { if (isFirstMatch) { var _candidate = (0, _util.trimAfterFirstMatch)(UNWANTED_END_CHAR_PATTERN, substring.slice(0, candidateMatch.index)); var _match = this.parseAndVerify(_candidate, offset, text); if (_match) { return _match; } this.maxTries--; isFirstMatch = false; } var candidate = (0, _util.trimAfterFirstMatch)(UNWANTED_END_CHAR_PATTERN, candidateMatch[1]); var candidateIndexGuess = substring.indexOf(candidate, candidateMatch.index); var match = this.parseAndVerify(candidate, offset + candidateIndexGuess, text); if (match) { return match; } this.maxTries--; } } }, "extractInnerMatch") /** * Parses a phone number from the `candidate` using `parse` and * verifies it matches the requested `leniency`. If parsing and verification succeed, * a corresponding `PhoneNumberMatch` is returned, otherwise this method returns `null`. * * @param candidate the candidate match * @param offset the offset of {@code candidate} within {@link #text} * @return the parsed and validated phone number match, or null */ }, { key: "parseAndVerify", value: /* @__PURE__ */ __name(function parseAndVerify(candidate, offset, text) { if (!(0, _isValidCandidate["default"])(candidate, offset, text, this.options.leniency)) { return; } var phoneNumber = (0, _parsePhoneNumber["default"])(candidate, { extended: true, defaultCountry: this.options.defaultCountry, defaultCallingCode: this.options.defaultCallingCode }, this.metadata); if (!phoneNumber) { return; } if (!phoneNumber.isPossible()) { return; } if (this.leniency(phoneNumber, { candidate, defaultCountry: this.options.defaultCountry, metadata: this.metadata, regExpCache: this.regExpCache })) { return { startsAt: offset, endsAt: offset + candidate.length, phoneNumber }; } }, "parseAndVerify") }, { key: "hasNext", value: /* @__PURE__ */ __name(function hasNext() { if (this.state === "NOT_READY") { this.lastMatch = this.find(this.searchIndex); if (this.lastMatch) { this.searchIndex = this.lastMatch.endsAt; this.state = "READY"; } else { this.state = "DONE"; } } return this.state === "READY"; }, "hasNext") }, { key: "next", value: /* @__PURE__ */ __name(function next() { if (!this.hasNext()) { throw new Error("No next element"); } var result = this.lastMatch; this.lastMatch = null; this.state = "NOT_READY"; return result; }, "next") }]); })(); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/legacy/findNumbers.js var require_findNumbers = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/legacy/findNumbers.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = findNumbers; var _PhoneNumberMatcher = _interopRequireDefault(require_PhoneNumberMatcher()); var _normalizeArguments2 = _interopRequireDefault(require_normalizeArguments()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function findNumbers() { var _normalizeArguments = (0, _normalizeArguments2["default"])(arguments), text = _normalizeArguments.text, options = _normalizeArguments.options, metadata = _normalizeArguments.metadata; var matcher = new _PhoneNumberMatcher["default"](text, options, metadata); var results = []; while (matcher.hasNext()) { results.push(matcher.next()); } return results; } __name(findNumbers, "findNumbers"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/legacy/searchNumbers.js var require_searchNumbers = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/legacy/searchNumbers.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = searchNumbers; var _normalizeArguments2 = _interopRequireDefault(require_normalizeArguments()); var _PhoneNumberMatcher = _interopRequireDefault(require_PhoneNumberMatcher()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; } __name(_defineProperty, "_defineProperty"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); function searchNumbers() { var _normalizeArguments = (0, _normalizeArguments2["default"])(arguments), text = _normalizeArguments.text, options = _normalizeArguments.options, metadata = _normalizeArguments.metadata; var matcher = new _PhoneNumberMatcher["default"](text, options, metadata); return _defineProperty({}, Symbol.iterator, function() { return { next: /* @__PURE__ */ __name(function next() { if (matcher.hasNext()) { return { done: false, value: matcher.next() }; } return { done: true }; }, "next") }; }); } __name(searchNumbers, "searchNumbers"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findPhoneNumbersInText.js var require_findPhoneNumbersInText = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/findPhoneNumbersInText.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = findPhoneNumbersInText; var _PhoneNumberMatcher = _interopRequireDefault(require_PhoneNumberMatcher()); var _normalizeArguments2 = _interopRequireDefault(require_normalizeArguments()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function ownKeys2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function(r2) { return Object.getOwnPropertyDescriptor(e, r2).enumerable; })), t.push.apply(t, o); } return t; } __name(ownKeys2, "ownKeys"); function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys2(Object(t), true).forEach(function(r2) { _defineProperty(e, r2, t[r2]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys2(Object(t)).forEach(function(r2) { Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2)); }); } return e; } __name(_objectSpread, "_objectSpread"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; } __name(_defineProperty, "_defineProperty"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); function findPhoneNumbersInText() { var _normalizeArguments = (0, _normalizeArguments2["default"])(arguments), text = _normalizeArguments.text, options = _normalizeArguments.options, metadata = _normalizeArguments.metadata; var matcher = new _PhoneNumberMatcher["default"](text, _objectSpread(_objectSpread({}, options), {}, { v2: true }), metadata); var results = []; while (matcher.hasNext()) { results.push(matcher.next()); } return results; } __name(findPhoneNumbersInText, "findPhoneNumbersInText"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/searchPhoneNumbersInText.js var require_searchPhoneNumbersInText = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/searchPhoneNumbersInText.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = searchPhoneNumbersInText; var _PhoneNumberMatcher = _interopRequireDefault(require_PhoneNumberMatcher()); var _normalizeArguments2 = _interopRequireDefault(require_normalizeArguments()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function ownKeys2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function(r2) { return Object.getOwnPropertyDescriptor(e, r2).enumerable; })), t.push.apply(t, o); } return t; } __name(ownKeys2, "ownKeys"); function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys2(Object(t), true).forEach(function(r2) { _defineProperty(e, r2, t[r2]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys2(Object(t)).forEach(function(r2) { Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2)); }); } return e; } __name(_objectSpread, "_objectSpread"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; } __name(_defineProperty, "_defineProperty"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); function searchPhoneNumbersInText() { var _normalizeArguments = (0, _normalizeArguments2["default"])(arguments), text = _normalizeArguments.text, options = _normalizeArguments.options, metadata = _normalizeArguments.metadata; var matcher = new _PhoneNumberMatcher["default"](text, _objectSpread(_objectSpread({}, options), {}, { v2: true }), metadata); return _defineProperty({}, Symbol.iterator, function() { return { next: /* @__PURE__ */ __name(function next() { if (matcher.hasNext()) { return { done: false, value: matcher.next() }; } return { done: true }; }, "next") }; }); } __name(searchPhoneNumbersInText, "searchPhoneNumbersInText"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeState.js var require_AsYouTypeState = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeState.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = void 0; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); var AsYouTypeState = exports2["default"] = /* @__PURE__ */ (function() { function AsYouTypeState2(_ref) { var onCountryChange = _ref.onCountryChange, onCallingCodeChange = _ref.onCallingCodeChange; _classCallCheck(this, AsYouTypeState2); this.onCountryChange = onCountryChange; this.onCallingCodeChange = onCallingCodeChange; } __name(AsYouTypeState2, "AsYouTypeState"); return _createClass(AsYouTypeState2, [{ key: "reset", value: /* @__PURE__ */ __name(function reset(_ref2) { var country2 = _ref2.country, callingCode = _ref2.callingCode; this.international = false; this.missingPlus = false; this.IDDPrefix = void 0; this.callingCode = void 0; this.digits = ""; this.resetNationalSignificantNumber(); this.initCountryAndCallingCode(country2, callingCode); }, "reset") }, { key: "resetNationalSignificantNumber", value: /* @__PURE__ */ __name(function resetNationalSignificantNumber() { this.nationalSignificantNumber = this.getNationalDigits(); this.nationalSignificantNumberIsModified = false; this.nationalPrefix = void 0; this.carrierCode = void 0; this.prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix = void 0; }, "resetNationalSignificantNumber") }, { key: "update", value: /* @__PURE__ */ __name(function update(properties) { for (var _i = 0, _Object$keys = Object.keys(properties); _i < _Object$keys.length; _i++) { var key = _Object$keys[_i]; this[key] = properties[key]; } }, "update") }, { key: "initCountryAndCallingCode", value: /* @__PURE__ */ __name(function initCountryAndCallingCode(country2, callingCode) { this.setCountry(country2); this.setCallingCode(callingCode); }, "initCountryAndCallingCode") }, { key: "setCountry", value: /* @__PURE__ */ __name(function setCountry(country2) { this.country = country2; this.onCountryChange(country2); }, "setCountry") }, { key: "setCallingCode", value: /* @__PURE__ */ __name(function setCallingCode(callingCode) { this.callingCode = callingCode; this.onCallingCodeChange(callingCode, this.country); }, "setCallingCode") }, { key: "startInternationalNumber", value: /* @__PURE__ */ __name(function startInternationalNumber(country2, callingCode) { this.international = true; this.initCountryAndCallingCode(country2, callingCode); }, "startInternationalNumber") }, { key: "appendDigits", value: /* @__PURE__ */ __name(function appendDigits(nextDigits) { this.digits += nextDigits; }, "appendDigits") }, { key: "appendNationalSignificantNumberDigits", value: /* @__PURE__ */ __name(function appendNationalSignificantNumberDigits(nextDigits) { this.nationalSignificantNumber += nextDigits; }, "appendNationalSignificantNumberDigits") /** * Returns the part of `this.digits` that corresponds to the national number. * Basically, all digits that have been input by the user, except for the * international prefix and the country calling code part * (if the number is an international one). * @return {string} */ }, { key: "getNationalDigits", value: /* @__PURE__ */ __name(function getNationalDigits() { if (this.international) { return this.digits.slice((this.IDDPrefix ? this.IDDPrefix.length : 0) + (this.callingCode ? this.callingCode.length : 0)); } return this.digits; }, "getNationalDigits") }, { key: "getDigitsWithoutInternationalPrefix", value: /* @__PURE__ */ __name(function getDigitsWithoutInternationalPrefix() { if (this.international) { if (this.IDDPrefix) { return this.digits.slice(this.IDDPrefix.length); } } return this.digits; }, "getDigitsWithoutInternationalPrefix") }]); })(); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeFormatter.util.js var require_AsYouTypeFormatter_util = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeFormatter.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DIGIT_PLACEHOLDER = void 0; exports2.closeNonPairedParens = closeNonPairedParens; exports2.countOccurences = countOccurences; exports2.cutAndStripNonPairedParens = cutAndStripNonPairedParens; exports2.populateTemplateWithDigits = populateTemplateWithDigits; exports2.repeat = repeat; exports2.stripNonPairedParens = stripNonPairedParens; function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function() { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_createForOfIteratorHelperLoose, "_createForOfIteratorHelperLoose"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); var DIGIT_PLACEHOLDER = exports2.DIGIT_PLACEHOLDER = "x"; var DIGIT_PLACEHOLDER_MATCHER = new RegExp(DIGIT_PLACEHOLDER); function countOccurences(symbol, string) { var count = 0; for (var _iterator = _createForOfIteratorHelperLoose(string.split("")), _step; !(_step = _iterator()).done; ) { var character = _step.value; if (character === symbol) { count++; } } return count; } __name(countOccurences, "countOccurences"); function repeat(string, times) { if (times < 1) { return ""; } var result = ""; while (times > 1) { if (times & 1) { result += string; } times >>= 1; string += string; } return result + string; } __name(repeat, "repeat"); function cutAndStripNonPairedParens(string, cutBeforeIndex) { if (string[cutBeforeIndex] === ")") { cutBeforeIndex++; } return stripNonPairedParens(string.slice(0, cutBeforeIndex)); } __name(cutAndStripNonPairedParens, "cutAndStripNonPairedParens"); function closeNonPairedParens(template, cut_before) { var retained_template = template.slice(0, cut_before); var opening_braces = countOccurences("(", retained_template); var closing_braces = countOccurences(")", retained_template); var dangling_braces = opening_braces - closing_braces; while (dangling_braces > 0 && cut_before < template.length) { if (template[cut_before] === ")") { dangling_braces--; } cut_before++; } return template.slice(0, cut_before); } __name(closeNonPairedParens, "closeNonPairedParens"); function stripNonPairedParens(string) { var dangling_braces = []; var i = 0; while (i < string.length) { if (string[i] === "(") { dangling_braces.push(i); } else if (string[i] === ")") { dangling_braces.pop(); } i++; } var start = 0; var cleared_string = ""; dangling_braces.push(string.length); for (var _i = 0, _dangling_braces = dangling_braces; _i < _dangling_braces.length; _i++) { var index = _dangling_braces[_i]; cleared_string += string.slice(start, index); start = index + 1; } return cleared_string; } __name(stripNonPairedParens, "stripNonPairedParens"); function populateTemplateWithDigits(template, position, digits) { for (var _iterator2 = _createForOfIteratorHelperLoose(digits.split("")), _step2; !(_step2 = _iterator2()).done; ) { var digit = _step2.value; if (template.slice(position + 1).search(DIGIT_PLACEHOLDER_MATCHER) < 0) { return; } position = template.search(DIGIT_PLACEHOLDER_MATCHER); template = template.replace(DIGIT_PLACEHOLDER_MATCHER, digit); } return [template, position]; } __name(populateTemplateWithDigits, "populateTemplateWithDigits"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeFormatter.complete.js var require_AsYouTypeFormatter_complete = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeFormatter.complete.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.canFormatCompleteNumber = canFormatCompleteNumber; exports2["default"] = formatCompleteNumber; var _checkNumberLength = _interopRequireDefault(require_checkNumberLength()); var _parseDigits = _interopRequireDefault(require_parseDigits()); var _formatNationalNumberUsingFormat = _interopRequireDefault(require_formatNationalNumberUsingFormat()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function formatCompleteNumber(state, format, _ref) { var metadata = _ref.metadata, shouldTryNationalPrefixFormattingRule = _ref.shouldTryNationalPrefixFormattingRule, getSeparatorAfterNationalPrefix = _ref.getSeparatorAfterNationalPrefix; var matcher = new RegExp("^(?:".concat(format.pattern(), ")$")); if (matcher.test(state.nationalSignificantNumber)) { return formatNationalNumberWithAndWithoutNationalPrefixFormattingRule(state, format, { metadata, shouldTryNationalPrefixFormattingRule, getSeparatorAfterNationalPrefix }); } } __name(formatCompleteNumber, "formatCompleteNumber"); function canFormatCompleteNumber(nationalSignificantNumber, metadata) { return (0, _checkNumberLength["default"])(nationalSignificantNumber, void 0, metadata) === "IS_POSSIBLE"; } __name(canFormatCompleteNumber, "canFormatCompleteNumber"); function formatNationalNumberWithAndWithoutNationalPrefixFormattingRule(state, format, _ref2) { var metadata = _ref2.metadata, shouldTryNationalPrefixFormattingRule = _ref2.shouldTryNationalPrefixFormattingRule, getSeparatorAfterNationalPrefix = _ref2.getSeparatorAfterNationalPrefix; var nationalSignificantNumber = state.nationalSignificantNumber, international = state.international, nationalPrefix = state.nationalPrefix, carrierCode = state.carrierCode; if (shouldTryNationalPrefixFormattingRule(format)) { var formattedNumber = formatNationalNumber(state, format, { useNationalPrefixFormattingRule: true, getSeparatorAfterNationalPrefix, metadata }); if (formattedNumber) { return formattedNumber; } } return formatNationalNumber(state, format, { useNationalPrefixFormattingRule: false, getSeparatorAfterNationalPrefix, metadata }); } __name(formatNationalNumberWithAndWithoutNationalPrefixFormattingRule, "formatNationalNumberWithAndWithoutNationalPrefixFormattingRule"); function formatNationalNumber(state, format, _ref3) { var metadata = _ref3.metadata, useNationalPrefixFormattingRule = _ref3.useNationalPrefixFormattingRule, getSeparatorAfterNationalPrefix = _ref3.getSeparatorAfterNationalPrefix; var formattedNationalNumber = (0, _formatNationalNumberUsingFormat["default"])(state.nationalSignificantNumber, format, { carrierCode: state.carrierCode, useInternationalFormat: state.international, withNationalPrefix: useNationalPrefixFormattingRule, metadata }); if (!useNationalPrefixFormattingRule) { if (state.nationalPrefix) { formattedNationalNumber = state.nationalPrefix + getSeparatorAfterNationalPrefix(format) + formattedNationalNumber; } else if (state.prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix) { formattedNationalNumber = state.prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix + " " + formattedNationalNumber; } } if (isValidFormattedNationalNumber(formattedNationalNumber, state)) { return formattedNationalNumber; } } __name(formatNationalNumber, "formatNationalNumber"); function isValidFormattedNationalNumber(formattedNationalNumber, state) { return (0, _parseDigits["default"])(formattedNationalNumber) === state.getNationalDigits(); } __name(isValidFormattedNationalNumber, "isValidFormattedNationalNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeFormatter.PatternParser.js var require_AsYouTypeFormatter_PatternParser = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeFormatter.PatternParser.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = void 0; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); var PatternParser = exports2["default"] = /* @__PURE__ */ (function() { function PatternParser2() { _classCallCheck(this, PatternParser2); } __name(PatternParser2, "PatternParser"); return _createClass(PatternParser2, [{ key: "parse", value: /* @__PURE__ */ __name(function parse2(pattern) { this.context = [{ or: true, instructions: [] }]; this.parsePattern(pattern); if (this.context.length !== 1) { throw new Error("Non-finalized contexts left when pattern parse ended"); } var _this$context$ = this.context[0], branches = _this$context$.branches, instructions = _this$context$.instructions; if (branches) { return { op: "|", args: branches.concat([expandSingleElementArray(instructions)]) }; } if (instructions.length === 0) { throw new Error("Pattern is required"); } if (instructions.length === 1) { return instructions[0]; } return instructions; }, "parse") }, { key: "startContext", value: /* @__PURE__ */ __name(function startContext(context) { this.context.push(context); }, "startContext") }, { key: "endContext", value: /* @__PURE__ */ __name(function endContext() { this.context.pop(); }, "endContext") }, { key: "getContext", value: /* @__PURE__ */ __name(function getContext() { return this.context[this.context.length - 1]; }, "getContext") }, { key: "parsePattern", value: /* @__PURE__ */ __name(function parsePattern(pattern) { if (!pattern) { throw new Error("Pattern is required"); } var match = pattern.match(OPERATOR); if (!match) { if (ILLEGAL_CHARACTER_REGEXP.test(pattern)) { throw new Error("Illegal characters found in a pattern: ".concat(pattern)); } this.getContext().instructions = this.getContext().instructions.concat(pattern.split("")); return; } var operator = match[1]; var before = pattern.slice(0, match.index); var rightPart = pattern.slice(match.index + operator.length); switch (operator) { case "(?:": if (before) { this.parsePattern(before); } this.startContext({ or: true, instructions: [], branches: [] }); break; case ")": if (!this.getContext().or) { throw new Error('")" operator must be preceded by "(?:" operator'); } if (before) { this.parsePattern(before); } if (this.getContext().instructions.length === 0) { throw new Error('No instructions found after "|" operator in an "or" group'); } var _this$getContext = this.getContext(), branches = _this$getContext.branches; branches.push(expandSingleElementArray(this.getContext().instructions)); this.endContext(); this.getContext().instructions.push({ op: "|", args: branches }); break; case "|": if (!this.getContext().or) { throw new Error('"|" operator can only be used inside "or" groups'); } if (before) { this.parsePattern(before); } if (!this.getContext().branches) { if (this.context.length === 1) { this.getContext().branches = []; } else { throw new Error('"branches" not found in an "or" group context'); } } this.getContext().branches.push(expandSingleElementArray(this.getContext().instructions)); this.getContext().instructions = []; break; case "[": if (before) { this.parsePattern(before); } this.startContext({ oneOfSet: true }); break; case "]": if (!this.getContext().oneOfSet) { throw new Error('"]" operator must be preceded by "[" operator'); } this.endContext(); this.getContext().instructions.push({ op: "[]", args: parseOneOfSet(before) }); break; /* istanbul ignore next */ default: throw new Error("Unknown operator: ".concat(operator)); } if (rightPart) { this.parsePattern(rightPart); } }, "parsePattern") }]); })(); function parseOneOfSet(pattern) { var values = []; var i = 0; while (i < pattern.length) { if (pattern[i] === "-") { if (i === 0 || i === pattern.length - 1) { throw new Error("Couldn't parse a one-of set pattern: ".concat(pattern)); } var prevValue = pattern[i - 1].charCodeAt(0) + 1; var nextValue = pattern[i + 1].charCodeAt(0) - 1; var value = prevValue; while (value <= nextValue) { values.push(String.fromCharCode(value)); value++; } } else { values.push(pattern[i]); } i++; } return values; } __name(parseOneOfSet, "parseOneOfSet"); var ILLEGAL_CHARACTER_REGEXP = /[\(\)\[\]\?\:\|]/; var OPERATOR = new RegExp( // any of: "(\\||\\(\\?\\:|\\)|\\[|\\])" ); function expandSingleElementArray(array) { if (array.length === 1) { return array[0]; } return array; } __name(expandSingleElementArray, "expandSingleElementArray"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeFormatter.PatternMatcher.js var require_AsYouTypeFormatter_PatternMatcher = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeFormatter.PatternMatcher.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = void 0; var _AsYouTypeFormatterPatternParser = _interopRequireDefault(require_AsYouTypeFormatter_PatternParser()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function() { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_createForOfIteratorHelperLoose, "_createForOfIteratorHelperLoose"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); var PatternMatcher = exports2["default"] = /* @__PURE__ */ (function() { function PatternMatcher2(pattern) { _classCallCheck(this, PatternMatcher2); this.matchTree = new _AsYouTypeFormatterPatternParser["default"]().parse(pattern); } __name(PatternMatcher2, "PatternMatcher"); return _createClass(PatternMatcher2, [{ key: "match", value: /* @__PURE__ */ __name(function match(string) { var _ref = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, allowOverflow = _ref.allowOverflow; if (!string) { throw new Error("String is required"); } var result = _match(string.split(""), this.matchTree, true); if (result && result.match) { delete result.matchedChars; } if (result && result.overflow) { if (!allowOverflow) { return; } } return result; }, "match") }]); })(); function _match(characters, tree, last) { if (typeof tree === "string") { var characterString = characters.join(""); if (tree.indexOf(characterString) === 0) { if (characters.length === tree.length) { return { match: true, matchedChars: characters }; } return { partialMatch: true // matchedChars: characters }; } if (characterString.indexOf(tree) === 0) { if (last) { if (characters.length > tree.length) { return { overflow: true }; } } return { match: true, matchedChars: characters.slice(0, tree.length) }; } return; } if (Array.isArray(tree)) { var restCharacters = characters.slice(); var i = 0; while (i < tree.length) { var subtree = tree[i]; var result = _match(restCharacters, subtree, last && i === tree.length - 1); if (!result) { return; } else if (result.overflow) { return result; } else if (result.match) { restCharacters = restCharacters.slice(result.matchedChars.length); if (restCharacters.length === 0) { if (i === tree.length - 1) { return { match: true, matchedChars: characters }; } else { return { partialMatch: true // matchedChars: characters }; } } } else { if (result.partialMatch) { return { partialMatch: true // matchedChars: characters }; } else { throw new Error("Unsupported match result:\n".concat(JSON.stringify(result, null, 2))); } } i++; } if (last) { return { overflow: true }; } return { match: true, matchedChars: characters.slice(0, characters.length - restCharacters.length) }; } switch (tree.op) { case "|": var partialMatch; for (var _iterator = _createForOfIteratorHelperLoose(tree.args), _step; !(_step = _iterator()).done; ) { var branch = _step.value; var _result = _match(characters, branch, last); if (_result) { if (_result.overflow) { return _result; } else if (_result.match) { return { match: true, matchedChars: _result.matchedChars }; } else { if (_result.partialMatch) { partialMatch = true; } else { throw new Error("Unsupported match result:\n".concat(JSON.stringify(_result, null, 2))); } } } } if (partialMatch) { return { partialMatch: true // matchedChars: ... }; } return; case "[]": for (var _iterator2 = _createForOfIteratorHelperLoose(tree.args), _step2; !(_step2 = _iterator2()).done; ) { var _char = _step2.value; if (characters[0] === _char) { if (characters.length === 1) { return { match: true, matchedChars: characters }; } if (last) { return { overflow: true }; } return { match: true, matchedChars: [_char] }; } } return; /* istanbul ignore next */ default: throw new Error("Unsupported instruction tree: ".concat(tree)); } } __name(_match, "_match"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeFormatter.js var require_AsYouTypeFormatter = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeFormatter.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); Object.defineProperty(exports2, "DIGIT_PLACEHOLDER", { enumerable: true, get: /* @__PURE__ */ __name(function get() { return _AsYouTypeFormatterUtil.DIGIT_PLACEHOLDER; }, "get") }); exports2["default"] = void 0; var _AsYouTypeFormatterUtil = require_AsYouTypeFormatter_util(); var _AsYouTypeFormatterComplete = _interopRequireWildcard(require_AsYouTypeFormatter_complete()); var _AsYouTypeFormatterPatternMatcher = _interopRequireDefault(require_AsYouTypeFormatter_PatternMatcher()); var _parseDigits = _interopRequireDefault(require_parseDigits()); var _formatNationalNumberUsingFormat = require_formatNationalNumberUsingFormat(); var _constants = require_constants3(); var _applyInternationalSeparatorStyle = _interopRequireDefault(require_applyInternationalSeparatorStyle()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); return (_interopRequireWildcard = /* @__PURE__ */ __name(function _interopRequireWildcard2(e2, t2) { if (!t2 && e2 && e2.__esModule) return e2; var o, i, f = { __proto__: null, "default": e2 }; if (null === e2 || "object" != _typeof(e2) && "function" != typeof e2) return f; if (o = t2 ? n : r) { if (o.has(e2)) return o.get(e2); o.set(e2, f); } for (var _t in e2) "default" !== _t && {}.hasOwnProperty.call(e2, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e2, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e2[_t]); return f; }, "_interopRequireWildcard"))(e, t); } __name(_interopRequireWildcard, "_interopRequireWildcard"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function() { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_createForOfIteratorHelperLoose, "_createForOfIteratorHelperLoose"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); var DUMMY_DIGIT = "9"; var LONGEST_NATIONAL_PHONE_NUMBER_LENGTH = 15; var LONGEST_DUMMY_PHONE_NUMBER = (0, _AsYouTypeFormatterUtil.repeat)(DUMMY_DIGIT, LONGEST_NATIONAL_PHONE_NUMBER_LENGTH); var NATIONAL_PREFIX_SEPARATORS_PATTERN = /[- ]/; var SUPPORT_LEGACY_FORMATTING_PATTERNS = true; var CREATE_CHARACTER_CLASS_PATTERN = SUPPORT_LEGACY_FORMATTING_PATTERNS && function() { return /\[([^\[\]])*\]/g; }; var CREATE_STANDALONE_DIGIT_PATTERN = SUPPORT_LEGACY_FORMATTING_PATTERNS && function() { return /\d(?=[^,}][^,}])/g; }; var NON_ALTERING_FORMAT_REG_EXP = new RegExp("[" + _constants.VALID_PUNCTUATION + "]*\\$1[" + _constants.VALID_PUNCTUATION + "]*(\\$\\d[" + _constants.VALID_PUNCTUATION + "]*)*$"); var MIN_LEADING_DIGITS_LENGTH = 3; var AsYouTypeFormatter = exports2["default"] = /* @__PURE__ */ (function() { function AsYouTypeFormatter2(_ref) { var state = _ref.state, metadata = _ref.metadata; _classCallCheck(this, AsYouTypeFormatter2); this.metadata = metadata; this.resetFormat(); } __name(AsYouTypeFormatter2, "AsYouTypeFormatter"); return _createClass(AsYouTypeFormatter2, [{ key: "resetFormat", value: /* @__PURE__ */ __name(function resetFormat() { this.chosenFormat = void 0; this.template = void 0; this.nationalNumberTemplate = void 0; this.populatedNationalNumberTemplate = void 0; this.populatedNationalNumberTemplatePosition = -1; }, "resetFormat") }, { key: "reset", value: /* @__PURE__ */ __name(function reset(numberingPlan, state) { this.resetFormat(); if (numberingPlan) { this.isNANP = numberingPlan.callingCode() === "1"; this.matchingFormats = numberingPlan.formats(); if (state.nationalSignificantNumber) { this.narrowDownMatchingFormats(state); } } else { this.isNANP = void 0; this.matchingFormats = []; } }, "reset") /** * Formats an updated phone number. * @param {string} nextDigits — Additional phone number digits. * @param {object} state — `AsYouType` state. * @return {[string]} Returns undefined if the updated phone number can't be formatted using any of the available formats. */ }, { key: "format", value: /* @__PURE__ */ __name(function format(nextDigits, state) { var _this = this; if ((0, _AsYouTypeFormatterComplete.canFormatCompleteNumber)(state.nationalSignificantNumber, this.metadata)) { for (var _iterator = _createForOfIteratorHelperLoose(this.matchingFormats), _step; !(_step = _iterator()).done; ) { var _format = _step.value; var formattedCompleteNumber = (0, _AsYouTypeFormatterComplete["default"])(state, _format, { metadata: this.metadata, shouldTryNationalPrefixFormattingRule: /* @__PURE__ */ __name(function shouldTryNationalPrefixFormattingRule(format2) { return _this.shouldTryNationalPrefixFormattingRule(format2, { international: state.international, nationalPrefix: state.nationalPrefix }); }, "shouldTryNationalPrefixFormattingRule"), getSeparatorAfterNationalPrefix: /* @__PURE__ */ __name(function getSeparatorAfterNationalPrefix(format2) { return _this.getSeparatorAfterNationalPrefix(format2); }, "getSeparatorAfterNationalPrefix") }); if (formattedCompleteNumber) { this.resetFormat(); this.chosenFormat = _format; this.setNationalNumberTemplate(formattedCompleteNumber.replace(/\d/g, _AsYouTypeFormatterUtil.DIGIT_PLACEHOLDER), state); this.populatedNationalNumberTemplate = formattedCompleteNumber; this.populatedNationalNumberTemplatePosition = this.template.lastIndexOf(_AsYouTypeFormatterUtil.DIGIT_PLACEHOLDER); return formattedCompleteNumber; } } } return this.formatNationalNumberWithNextDigits(nextDigits, state); }, "format") // Formats the next phone number digits. }, { key: "formatNationalNumberWithNextDigits", value: /* @__PURE__ */ __name(function formatNationalNumberWithNextDigits(nextDigits, state) { var previouslyChosenFormat = this.chosenFormat; var newlyChosenFormat = this.chooseFormat(state); if (newlyChosenFormat) { if (newlyChosenFormat === previouslyChosenFormat) { return this.formatNextNationalNumberDigits(nextDigits); } else { return this.formatNextNationalNumberDigits(state.getNationalDigits()); } } }, "formatNationalNumberWithNextDigits") }, { key: "narrowDownMatchingFormats", value: /* @__PURE__ */ __name(function narrowDownMatchingFormats(_ref2) { var _this2 = this; var nationalSignificantNumber = _ref2.nationalSignificantNumber, nationalPrefix = _ref2.nationalPrefix, international = _ref2.international; var leadingDigits = nationalSignificantNumber; var leadingDigitsPatternIndex = leadingDigits.length - MIN_LEADING_DIGITS_LENGTH; if (leadingDigitsPatternIndex < 0) { leadingDigitsPatternIndex = 0; } this.matchingFormats = this.matchingFormats.filter(function(format) { return _this2.formatSuits(format, international, nationalPrefix) && _this2.formatMatches(format, leadingDigits, leadingDigitsPatternIndex); }); if (this.chosenFormat && this.matchingFormats.indexOf(this.chosenFormat) === -1) { this.resetFormat(); } }, "narrowDownMatchingFormats") }, { key: "formatSuits", value: /* @__PURE__ */ __name(function formatSuits(format, international, nationalPrefix) { if (nationalPrefix && !format.usesNationalPrefix() && // !format.domesticCarrierCodeFormattingRule() && !format.nationalPrefixIsOptionalWhenFormattingInNationalFormat()) { return false; } if (!international && !nationalPrefix && format.nationalPrefixIsMandatoryWhenFormattingInNationalFormat()) { return false; } return true; }, "formatSuits") }, { key: "formatMatches", value: /* @__PURE__ */ __name(function formatMatches(format, leadingDigits, leadingDigitsPatternIndex) { var leadingDigitsPatternsCount = format.leadingDigitsPatterns().length; if (leadingDigitsPatternsCount === 0) { return true; } leadingDigitsPatternIndex = Math.min(leadingDigitsPatternIndex, leadingDigitsPatternsCount - 1); var leadingDigitsPattern = format.leadingDigitsPatterns()[leadingDigitsPatternIndex]; if (leadingDigits.length < MIN_LEADING_DIGITS_LENGTH) { try { return new _AsYouTypeFormatterPatternMatcher["default"](leadingDigitsPattern).match(leadingDigits, { allowOverflow: true }) !== void 0; } catch (error) { console.error(error); return true; } } return new RegExp("^(".concat(leadingDigitsPattern, ")")).test(leadingDigits); }, "formatMatches") }, { key: "getFormatFormat", value: /* @__PURE__ */ __name(function getFormatFormat(format, international) { return international ? format.internationalFormat() : format.format(); }, "getFormatFormat") }, { key: "chooseFormat", value: /* @__PURE__ */ __name(function chooseFormat(state) { var _this3 = this; var _loop = /* @__PURE__ */ __name(function _loop2() { var format = _step2.value; if (_this3.chosenFormat === format) { return 0; } if (!NON_ALTERING_FORMAT_REG_EXP.test(_this3.getFormatFormat(format, state.international))) { return 1; } if (!_this3.createTemplateForFormat(format, state)) { _this3.matchingFormats = _this3.matchingFormats.filter(function(_2) { return _2 !== format; }); return 1; } _this3.chosenFormat = format; return 0; }, "_loop"), _ret; for (var _iterator2 = _createForOfIteratorHelperLoose(this.matchingFormats.slice()), _step2; !(_step2 = _iterator2()).done; ) { _ret = _loop(); if (_ret === 0) break; if (_ret === 1) continue; } if (!this.chosenFormat) { this.resetFormat(); } return this.chosenFormat; }, "chooseFormat") }, { key: "createTemplateForFormat", value: /* @__PURE__ */ __name(function createTemplateForFormat(format, state) { if (SUPPORT_LEGACY_FORMATTING_PATTERNS && format.pattern().indexOf("|") >= 0) { return; } var template = this.getTemplateForFormat(format, state); if (template) { this.setNationalNumberTemplate(template, state); return true; } }, "createTemplateForFormat") }, { key: "getSeparatorAfterNationalPrefix", value: /* @__PURE__ */ __name(function getSeparatorAfterNationalPrefix(format) { if (this.isNANP) { return " "; } if (format && format.nationalPrefixFormattingRule() && NATIONAL_PREFIX_SEPARATORS_PATTERN.test(format.nationalPrefixFormattingRule())) { return " "; } return ""; }, "getSeparatorAfterNationalPrefix") }, { key: "getInternationalPrefixBeforeCountryCallingCode", value: /* @__PURE__ */ __name(function getInternationalPrefixBeforeCountryCallingCode(_ref3, options) { var IDDPrefix = _ref3.IDDPrefix, missingPlus = _ref3.missingPlus; if (IDDPrefix) { return options && options.spacing === false ? IDDPrefix : IDDPrefix + " "; } if (missingPlus) { return ""; } return "+"; }, "getInternationalPrefixBeforeCountryCallingCode") }, { key: "getTemplate", value: /* @__PURE__ */ __name(function getTemplate(state) { if (!this.template) { return; } var index = -1; var i = 0; var internationalPrefix = state.international ? this.getInternationalPrefixBeforeCountryCallingCode(state, { spacing: false }) : ""; while (i < internationalPrefix.length + state.getDigitsWithoutInternationalPrefix().length) { index = this.template.indexOf(_AsYouTypeFormatterUtil.DIGIT_PLACEHOLDER, index + 1); i++; } return (0, _AsYouTypeFormatterUtil.cutAndStripNonPairedParens)(this.template, index + 1); }, "getTemplate") }, { key: "setNationalNumberTemplate", value: /* @__PURE__ */ __name(function setNationalNumberTemplate(template, state) { this.nationalNumberTemplate = template; this.populatedNationalNumberTemplate = template; this.populatedNationalNumberTemplatePosition = -1; if (state.international) { this.template = this.getInternationalPrefixBeforeCountryCallingCode(state).replace(/[\d\+]/g, _AsYouTypeFormatterUtil.DIGIT_PLACEHOLDER) + (0, _AsYouTypeFormatterUtil.repeat)(_AsYouTypeFormatterUtil.DIGIT_PLACEHOLDER, state.callingCode.length) + " " + template; } else { this.template = template; } }, "setNationalNumberTemplate") /** * Generates formatting template for a national phone number, * optionally containing a national prefix, for a format. * @param {Format} format * @param {string} nationalPrefix * @return {string} */ }, { key: "getTemplateForFormat", value: /* @__PURE__ */ __name(function getTemplateForFormat(format, _ref4) { var nationalSignificantNumber = _ref4.nationalSignificantNumber, international = _ref4.international, nationalPrefix = _ref4.nationalPrefix, prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix = _ref4.prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix; var pattern = format.pattern(); if (SUPPORT_LEGACY_FORMATTING_PATTERNS) { pattern = pattern.replace(CREATE_CHARACTER_CLASS_PATTERN(), "\\d").replace(CREATE_STANDALONE_DIGIT_PATTERN(), "\\d"); } var digits = LONGEST_DUMMY_PHONE_NUMBER.match(pattern)[0]; if (nationalSignificantNumber.length > digits.length) { return; } var strictPattern = new RegExp("^" + pattern + "$"); var nationalNumberDummyDigits = nationalSignificantNumber.replace(/\d/g, DUMMY_DIGIT); if (strictPattern.test(nationalNumberDummyDigits)) { digits = nationalNumberDummyDigits; } var numberFormat = this.getFormatFormat(format, international); var nationalPrefixIncludedInTemplate; if (this.shouldTryNationalPrefixFormattingRule(format, { international, nationalPrefix })) { var numberFormatWithNationalPrefix = numberFormat.replace(_formatNationalNumberUsingFormat.FIRST_GROUP_PATTERN, format.nationalPrefixFormattingRule()); if ((0, _parseDigits["default"])(format.nationalPrefixFormattingRule()) === (nationalPrefix || "") + (0, _parseDigits["default"])("$1")) { numberFormat = numberFormatWithNationalPrefix; nationalPrefixIncludedInTemplate = true; if (nationalPrefix) { var i = nationalPrefix.length; while (i > 0) { numberFormat = numberFormat.replace(/\d/, _AsYouTypeFormatterUtil.DIGIT_PLACEHOLDER); i--; } } } } var template = digits.replace(new RegExp(pattern), numberFormat).replace(new RegExp(DUMMY_DIGIT, "g"), _AsYouTypeFormatterUtil.DIGIT_PLACEHOLDER); if (!nationalPrefixIncludedInTemplate) { if (prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix) { template = (0, _AsYouTypeFormatterUtil.repeat)(_AsYouTypeFormatterUtil.DIGIT_PLACEHOLDER, prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix.length) + " " + template; } else if (nationalPrefix) { template = (0, _AsYouTypeFormatterUtil.repeat)(_AsYouTypeFormatterUtil.DIGIT_PLACEHOLDER, nationalPrefix.length) + this.getSeparatorAfterNationalPrefix(format) + template; } } if (international) { template = (0, _applyInternationalSeparatorStyle["default"])(template); } return template; }, "getTemplateForFormat") }, { key: "formatNextNationalNumberDigits", value: /* @__PURE__ */ __name(function formatNextNationalNumberDigits(digits) { var result = (0, _AsYouTypeFormatterUtil.populateTemplateWithDigits)(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition, digits); if (!result) { this.resetFormat(); return; } this.populatedNationalNumberTemplate = result[0]; this.populatedNationalNumberTemplatePosition = result[1]; return (0, _AsYouTypeFormatterUtil.cutAndStripNonPairedParens)(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition + 1); }, "formatNextNationalNumberDigits") }, { key: "shouldTryNationalPrefixFormattingRule", value: /* @__PURE__ */ __name(function shouldTryNationalPrefixFormattingRule(format, _ref5) { var international = _ref5.international, nationalPrefix = _ref5.nationalPrefix; if (format.nationalPrefixFormattingRule()) { var usesNationalPrefix = format.usesNationalPrefix(); if (usesNationalPrefix && nationalPrefix || !usesNationalPrefix && !international) { return true; } } }, "shouldTryNationalPrefixFormattingRule") }]); })(); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeParser.js var require_AsYouTypeParser = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouTypeParser.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = void 0; exports2.extractFormattedDigitsAndPlus = extractFormattedDigitsAndPlus; var _extractCountryCallingCode2 = _interopRequireDefault(require_extractCountryCallingCode()); var _extractCountryCallingCodeFromInternationalNumberWithoutPlusSign = _interopRequireDefault(require_extractCountryCallingCodeFromInternationalNumberWithoutPlusSign()); var _extractNationalNumberFromPossiblyIncompleteNumber = _interopRequireDefault(require_extractNationalNumberFromPossiblyIncompleteNumber()); var _stripIddPrefix = _interopRequireDefault(require_stripIddPrefix()); var _parseDigits = _interopRequireDefault(require_parseDigits()); var _constants = require_constants3(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } __name(_slicedToArray, "_slicedToArray"); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_nonIterableRest, "_nonIterableRest"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function _iterableToArrayLimit(r, l2) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = true, o = false; try { if (i = (t = t.call(r)).next, 0 === l2) { if (Object(t) !== t) return; f = false; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l2); f = true) ; } catch (r2) { o = true, n = r2; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } __name(_iterableToArrayLimit, "_iterableToArrayLimit"); function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } __name(_arrayWithHoles, "_arrayWithHoles"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); var VALID_FORMATTED_PHONE_NUMBER_DIGITS_PART = "[" + _constants.VALID_PUNCTUATION + _constants.VALID_DIGITS + "]+"; var VALID_FORMATTED_PHONE_NUMBER_DIGITS_PART_PATTERN = new RegExp("^" + VALID_FORMATTED_PHONE_NUMBER_DIGITS_PART + "$", "i"); var VALID_FORMATTED_PHONE_NUMBER_PART = "(?:[" + _constants.PLUS_CHARS + "][" + _constants.VALID_PUNCTUATION + _constants.VALID_DIGITS + "]*|[" + _constants.VALID_PUNCTUATION + _constants.VALID_DIGITS + "]+)"; var AFTER_PHONE_NUMBER_DIGITS_END_PATTERN = new RegExp("[^" + _constants.VALID_PUNCTUATION + _constants.VALID_DIGITS + "]+.*$"); var COMPLEX_NATIONAL_PREFIX = /[^\d\[\]]/; var AsYouTypeParser = exports2["default"] = /* @__PURE__ */ (function() { function AsYouTypeParser2(_ref) { var defaultCountry = _ref.defaultCountry, defaultCallingCode = _ref.defaultCallingCode, metadata = _ref.metadata, onNationalSignificantNumberChange = _ref.onNationalSignificantNumberChange; _classCallCheck(this, AsYouTypeParser2); this.defaultCountry = defaultCountry; this.defaultCallingCode = defaultCallingCode; this.metadata = metadata; this.onNationalSignificantNumberChange = onNationalSignificantNumberChange; } __name(AsYouTypeParser2, "AsYouTypeParser"); return _createClass(AsYouTypeParser2, [{ key: "input", value: /* @__PURE__ */ __name(function input(text, state) { var _extractFormattedDigi = extractFormattedDigitsAndPlus(text), _extractFormattedDigi2 = _slicedToArray(_extractFormattedDigi, 2), formattedDigits = _extractFormattedDigi2[0], hasPlus = _extractFormattedDigi2[1]; var digits = (0, _parseDigits["default"])(formattedDigits); var justLeadingPlus; if (hasPlus) { if (!state.digits) { state.startInternationalNumber(void 0, void 0); if (!digits) { justLeadingPlus = true; } } } if (digits) { this.inputDigits(digits, state); } return { digits, justLeadingPlus }; }, "input") /** * Inputs "next" phone number digits. * @param {string} digits * @return {string} [formattedNumber] Formatted national phone number (if it can be formatted at this stage). Returning `undefined` means "don't format the national phone number at this stage". */ }, { key: "inputDigits", value: /* @__PURE__ */ __name(function inputDigits(nextDigits, state) { var digits = state.digits; var hasReceivedThreeLeadingDigits = digits.length < 3 && digits.length + nextDigits.length >= 3; state.appendDigits(nextDigits); if (hasReceivedThreeLeadingDigits) { this.extractIddPrefix(state); } if (this.isWaitingForCountryCallingCode(state)) { if (!this.extractCountryCallingCode(state)) { return; } } else { state.appendNationalSignificantNumberDigits(nextDigits); } if (!state.international) { if (!this.hasExtractedNationalSignificantNumber) { this.extractNationalSignificantNumber(state.getNationalDigits(), function(stateUpdate) { return state.update(stateUpdate); }); } } }, "inputDigits") }, { key: "isWaitingForCountryCallingCode", value: /* @__PURE__ */ __name(function isWaitingForCountryCallingCode(_ref2) { var international = _ref2.international, callingCode = _ref2.callingCode; return international && !callingCode; }, "isWaitingForCountryCallingCode") // Extracts a country calling code from a number // being entered in internatonal format. }, { key: "extractCountryCallingCode", value: /* @__PURE__ */ __name(function extractCountryCallingCode(state) { var _extractCountryCallin = (0, _extractCountryCallingCode2["default"])("+" + state.getDigitsWithoutInternationalPrefix(), state.country, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata), countryCallingCode = _extractCountryCallin.countryCallingCode, number = _extractCountryCallin.number; if (countryCallingCode) { state.setCallingCode(countryCallingCode); state.update({ nationalSignificantNumber: number }); return true; } }, "extractCountryCallingCode") }, { key: "reset", value: /* @__PURE__ */ __name(function reset(numberingPlan) { if (numberingPlan) { this.hasSelectedNumberingPlan = true; var nationalPrefixForParsing = numberingPlan._nationalPrefixForParsing(); this.couldPossiblyExtractAnotherNationalSignificantNumber = nationalPrefixForParsing && COMPLEX_NATIONAL_PREFIX.test(nationalPrefixForParsing); } else { this.hasSelectedNumberingPlan = void 0; this.couldPossiblyExtractAnotherNationalSignificantNumber = void 0; } }, "reset") /** * Extracts a national (significant) number from user input. * Google's library is different in that it only applies `national_prefix_for_parsing` * and doesn't apply `national_prefix_transform_rule` after that. * https://github.com/google/libphonenumber/blob/a3d70b0487875475e6ad659af404943211d26456/java/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java#L539 * @return {boolean} [extracted] */ }, { key: "extractNationalSignificantNumber", value: /* @__PURE__ */ __name(function extractNationalSignificantNumber(nationalDigits, setState) { if (!this.hasSelectedNumberingPlan) { return; } var _extractNationalNumbe = (0, _extractNationalNumberFromPossiblyIncompleteNumber["default"])(nationalDigits, this.metadata), nationalPrefix = _extractNationalNumbe.nationalPrefix, nationalNumber = _extractNationalNumbe.nationalNumber, carrierCode = _extractNationalNumbe.carrierCode; if (nationalNumber === nationalDigits) { return; } this.onExtractedNationalNumber(nationalPrefix, carrierCode, nationalNumber, nationalDigits, setState); return true; }, "extractNationalSignificantNumber") /** * In Google's code this function is called "attempt to extract longer NDD". * "Some national prefixes are a substring of others", they say. * @return {boolean} [result] — Returns `true` if extracting a national prefix produced different results from what they were. */ }, { key: "extractAnotherNationalSignificantNumber", value: /* @__PURE__ */ __name(function extractAnotherNationalSignificantNumber(nationalDigits, prevNationalSignificantNumber, setState) { if (!this.hasExtractedNationalSignificantNumber) { return this.extractNationalSignificantNumber(nationalDigits, setState); } if (!this.couldPossiblyExtractAnotherNationalSignificantNumber) { return; } var _extractNationalNumbe2 = (0, _extractNationalNumberFromPossiblyIncompleteNumber["default"])(nationalDigits, this.metadata), nationalPrefix = _extractNationalNumbe2.nationalPrefix, nationalNumber = _extractNationalNumbe2.nationalNumber, carrierCode = _extractNationalNumbe2.carrierCode; if (nationalNumber === prevNationalSignificantNumber) { return; } this.onExtractedNationalNumber(nationalPrefix, carrierCode, nationalNumber, nationalDigits, setState); return true; }, "extractAnotherNationalSignificantNumber") }, { key: "onExtractedNationalNumber", value: /* @__PURE__ */ __name(function onExtractedNationalNumber(nationalPrefix, carrierCode, nationalSignificantNumber, nationalDigits, setState) { var nationalSignificantNumberIsModified = false; var prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix; var nationalSignificantNumberIndex = nationalDigits.lastIndexOf(nationalSignificantNumber); if (nationalSignificantNumberIndex < 0 || nationalSignificantNumberIndex !== nationalDigits.length - nationalSignificantNumber.length) { nationalSignificantNumberIsModified = true; } else { var prefixBeforeNationalNumber = nationalDigits.slice(0, nationalSignificantNumberIndex); if (prefixBeforeNationalNumber) { if (prefixBeforeNationalNumber !== nationalPrefix) { prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix = prefixBeforeNationalNumber; } } } setState({ nationalPrefix, carrierCode, nationalSignificantNumber, nationalSignificantNumberIsModified, prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix }); this.hasExtractedNationalSignificantNumber = true; this.onNationalSignificantNumberChange(); }, "onExtractedNationalNumber") }, { key: "reExtractNationalSignificantNumber", value: /* @__PURE__ */ __name(function reExtractNationalSignificantNumber(state) { if (this.extractAnotherNationalSignificantNumber(state.getNationalDigits(), state.nationalSignificantNumber, function(stateUpdate) { return state.update(stateUpdate); })) { return true; } if (this.extractIddPrefix(state)) { this.extractCallingCodeAndNationalSignificantNumber(state); return true; } if (this.fixMissingPlus(state)) { this.extractCallingCodeAndNationalSignificantNumber(state); return true; } }, "reExtractNationalSignificantNumber") }, { key: "extractIddPrefix", value: /* @__PURE__ */ __name(function extractIddPrefix(state) { var international = state.international, IDDPrefix = state.IDDPrefix, digits = state.digits, nationalSignificantNumber = state.nationalSignificantNumber; if (international || IDDPrefix) { return; } var numberWithoutIDD = (0, _stripIddPrefix["default"])(digits, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata); if (numberWithoutIDD !== void 0 && numberWithoutIDD !== digits) { state.update({ IDDPrefix: digits.slice(0, digits.length - numberWithoutIDD.length) }); this.startInternationalNumber(state, { country: void 0, callingCode: void 0 }); return true; } }, "extractIddPrefix") }, { key: "fixMissingPlus", value: /* @__PURE__ */ __name(function fixMissingPlus(state) { if (!state.international) { var _extractCountryCallin2 = (0, _extractCountryCallingCodeFromInternationalNumberWithoutPlusSign["default"])(state.digits, state.country, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata), newCallingCode = _extractCountryCallin2.countryCallingCode; if (newCallingCode) { state.update({ missingPlus: true }); this.startInternationalNumber(state, { country: state.country, callingCode: newCallingCode }); return true; } } }, "fixMissingPlus") }, { key: "startInternationalNumber", value: /* @__PURE__ */ __name(function startInternationalNumber(state, _ref3) { var country2 = _ref3.country, callingCode = _ref3.callingCode; state.startInternationalNumber(country2, callingCode); if (state.nationalSignificantNumber) { state.resetNationalSignificantNumber(); this.onNationalSignificantNumberChange(); this.hasExtractedNationalSignificantNumber = void 0; } }, "startInternationalNumber") }, { key: "extractCallingCodeAndNationalSignificantNumber", value: /* @__PURE__ */ __name(function extractCallingCodeAndNationalSignificantNumber(state) { if (this.extractCountryCallingCode(state)) { this.extractNationalSignificantNumber(state.getNationalDigits(), function(stateUpdate) { return state.update(stateUpdate); }); } }, "extractCallingCodeAndNationalSignificantNumber") }]); })(); function extractFormattedPhoneNumber(text) { var startsAt = text.search(VALID_FORMATTED_PHONE_NUMBER_PART); if (startsAt < 0) { return; } text = text.slice(startsAt); var hasPlus; if (text[0] === "+") { hasPlus = true; text = text.slice("+".length); } text = text.replace(AFTER_PHONE_NUMBER_DIGITS_END_PATTERN, ""); if (hasPlus) { text = "+" + text; } return text; } __name(extractFormattedPhoneNumber, "extractFormattedPhoneNumber"); function _extractFormattedDigitsAndPlus(text) { var extractedNumber = extractFormattedPhoneNumber(text) || ""; if (extractedNumber[0] === "+") { return [extractedNumber.slice("+".length), true]; } return [extractedNumber]; } __name(_extractFormattedDigitsAndPlus, "_extractFormattedDigitsAndPlus"); function extractFormattedDigitsAndPlus(text) { var _extractFormattedDigi3 = _extractFormattedDigitsAndPlus(text), _extractFormattedDigi4 = _slicedToArray(_extractFormattedDigi3, 2), formattedDigits = _extractFormattedDigi4[0], hasPlus = _extractFormattedDigi4[1]; if (!VALID_FORMATTED_PHONE_NUMBER_DIGITS_PART_PATTERN.test(formattedDigits)) { formattedDigits = ""; } return [formattedDigits, hasPlus]; } __name(extractFormattedDigitsAndPlus, "extractFormattedDigitsAndPlus"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouType.js var require_AsYouType = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/AsYouType.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = void 0; var _metadata = _interopRequireDefault(require_metadata()); var _PhoneNumber = _interopRequireDefault(require_PhoneNumber()); var _checkNumberLength = _interopRequireDefault(require_checkNumberLength()); var _AsYouTypeState = _interopRequireDefault(require_AsYouTypeState()); var _AsYouTypeFormatter = _interopRequireWildcard(require_AsYouTypeFormatter()); var _AsYouTypeParser = _interopRequireWildcard(require_AsYouTypeParser()); var _getCountryByCallingCode = _interopRequireDefault(require_getCountryByCallingCode()); var _getCountryByNationalNumber = _interopRequireDefault(require_getCountryByNationalNumber()); var _isObject = _interopRequireDefault(require_isObject()); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); return (_interopRequireWildcard = /* @__PURE__ */ __name(function _interopRequireWildcard2(e2, t2) { if (!t2 && e2 && e2.__esModule) return e2; var o, i, f = { __proto__: null, "default": e2 }; if (null === e2 || "object" != _typeof(e2) && "function" != typeof e2) return f; if (o = t2 ? n : r) { if (o.has(e2)) return o.get(e2); o.set(e2, f); } for (var _t in e2) "default" !== _t && {}.hasOwnProperty.call(e2, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e2, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e2[_t]); return f; }, "_interopRequireWildcard"))(e, t); } __name(_interopRequireWildcard, "_interopRequireWildcard"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } __name(_slicedToArray, "_slicedToArray"); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_nonIterableRest, "_nonIterableRest"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function _iterableToArrayLimit(r, l2) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = true, o = false; try { if (i = (t = t.call(r)).next, 0 === l2) { if (Object(t) !== t) return; f = false; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l2); f = true) ; } catch (r2) { o = true, n = r2; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } __name(_iterableToArrayLimit, "_iterableToArrayLimit"); function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } __name(_arrayWithHoles, "_arrayWithHoles"); function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } } __name(_defineProperties, "_defineProperties"); function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: false }), e; } __name(_createClass, "_createClass"); function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } __name(_toPrimitive, "_toPrimitive"); var USE_NON_GEOGRAPHIC_COUNTRY_CODE = false; var AsYouType = exports2["default"] = /* @__PURE__ */ (function() { function AsYouType2(optionsOrDefaultCountry, metadata) { _classCallCheck(this, AsYouType2); this.metadata = new _metadata["default"](metadata); var _this$getCountryAndCa = this.getCountryAndCallingCode(optionsOrDefaultCountry), _this$getCountryAndCa2 = _slicedToArray(_this$getCountryAndCa, 2), defaultCountry = _this$getCountryAndCa2[0], defaultCallingCode = _this$getCountryAndCa2[1]; this.defaultCountry = defaultCountry; this.defaultCallingCode = defaultCallingCode; this.reset(); } __name(AsYouType2, "AsYouType"); return _createClass(AsYouType2, [{ key: "getCountryAndCallingCode", value: /* @__PURE__ */ __name(function getCountryAndCallingCode(optionsOrDefaultCountry) { var defaultCountry; var defaultCallingCode; if (optionsOrDefaultCountry) { if ((0, _isObject["default"])(optionsOrDefaultCountry)) { defaultCountry = optionsOrDefaultCountry.defaultCountry; defaultCallingCode = optionsOrDefaultCountry.defaultCallingCode; } else { defaultCountry = optionsOrDefaultCountry; } } if (defaultCountry && !this.metadata.hasCountry(defaultCountry)) { defaultCountry = void 0; } if (defaultCallingCode) { if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) { if (this.metadata.isNonGeographicCallingCode(defaultCallingCode)) { defaultCountry = "001"; } } } return [defaultCountry, defaultCallingCode]; }, "getCountryAndCallingCode") /** * Inputs "next" phone number characters. * @param {string} text * @return {string} Formatted phone number characters that have been input so far. */ }, { key: "input", value: /* @__PURE__ */ __name(function input(text) { var _this$parser$input = this.parser.input(text, this.state), digits = _this$parser$input.digits, justLeadingPlus = _this$parser$input.justLeadingPlus; if (justLeadingPlus) { this.formattedOutput = "+"; } else if (digits) { this.determineTheCountryIfNeeded(); if (this.state.nationalSignificantNumber) { this.formatter.narrowDownMatchingFormats(this.state); } var formattedNationalNumber; if (this.metadata.hasSelectedNumberingPlan()) { formattedNationalNumber = this.formatter.format(digits, this.state); } if (formattedNationalNumber === void 0) { if (this.parser.reExtractNationalSignificantNumber(this.state)) { this.determineTheCountryIfNeeded(); var nationalDigits = this.state.getNationalDigits(); if (nationalDigits) { formattedNationalNumber = this.formatter.format(nationalDigits, this.state); } } } this.formattedOutput = formattedNationalNumber ? this.getFullNumber(formattedNationalNumber) : this.getNonFormattedNumber(); } return this.formattedOutput; }, "input") }, { key: "reset", value: /* @__PURE__ */ __name(function reset() { var _this = this; this.state = new _AsYouTypeState["default"]({ onCountryChange: /* @__PURE__ */ __name(function onCountryChange(country2) { _this.country = country2; }, "onCountryChange"), onCallingCodeChange: /* @__PURE__ */ __name(function onCallingCodeChange(callingCode, country2) { _this.metadata.selectNumberingPlan(country2 || callingCode); _this.formatter.reset(_this.metadata.numberingPlan, _this.state); _this.parser.reset(_this.metadata.numberingPlan); }, "onCallingCodeChange") }); this.formatter = new _AsYouTypeFormatter["default"]({ state: this.state, metadata: this.metadata }); this.parser = new _AsYouTypeParser["default"]({ defaultCountry: this.defaultCountry, defaultCallingCode: this.defaultCallingCode, metadata: this.metadata, state: this.state, onNationalSignificantNumberChange: /* @__PURE__ */ __name(function onNationalSignificantNumberChange() { _this.determineTheCountryIfNeeded(); _this.formatter.reset(_this.metadata.numberingPlan, _this.state); }, "onNationalSignificantNumberChange") }); this.state.reset({ country: this.defaultCountry, callingCode: this.defaultCallingCode }); this.formattedOutput = ""; return this; }, "reset") /** * Returns `true` if the phone number is being input in international format. * In other words, returns `true` if and only if the parsed phone number starts with a `"+"`. * @return {boolean} */ }, { key: "isInternational", value: /* @__PURE__ */ __name(function isInternational() { return this.state.international; }, "isInternational") /** * Returns the "calling code" part of the phone number when it's being input * in an international format. * If no valid calling code has been entered so far, returns `undefined`. * @return {string} [callingCode] */ }, { key: "getCallingCode", value: /* @__PURE__ */ __name(function getCallingCode() { if (this.isInternational()) { return this.state.callingCode; } }, "getCallingCode") // A legacy alias. }, { key: "getCountryCallingCode", value: /* @__PURE__ */ __name(function getCountryCallingCode() { return this.getCallingCode(); }, "getCountryCallingCode") /** * Returns a two-letter country code of the phone number. * Returns `undefined` for "non-geographic" phone numbering plans. * Returns `undefined` if no phone number has been input yet. * @return {string} [country] */ }, { key: "getCountry", value: /* @__PURE__ */ __name(function getCountry() { var digits = this.state.digits; if (digits) { return this._getCountry(); } }, "getCountry") /** * Returns a two-letter country code of the phone number. * Returns `undefined` for "non-geographic" phone numbering plans. * @return {string} [country] */ }, { key: "_getCountry", value: /* @__PURE__ */ __name(function _getCountry() { var country2 = this.state.country; if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) { if (country2 === "001") { return; } } return country2; }, "_getCountry") }, { key: "determineTheCountryIfNeeded", value: /* @__PURE__ */ __name(function determineTheCountryIfNeeded() { if (!this.state.country || this.isCountryCallingCodeAmbiguous()) { this.determineTheCountry(); } }, "determineTheCountryIfNeeded") // Prepends `+CountryCode ` in case of an international phone number }, { key: "getFullNumber", value: /* @__PURE__ */ __name(function getFullNumber(formattedNationalNumber) { var _this2 = this; if (this.isInternational()) { var prefix = /* @__PURE__ */ __name(function prefix2(text) { return _this2.formatter.getInternationalPrefixBeforeCountryCallingCode(_this2.state, { spacing: text ? true : false }) + text; }, "prefix"); var callingCode = this.state.callingCode; if (!callingCode) { return prefix("".concat(this.state.getDigitsWithoutInternationalPrefix())); } if (!formattedNationalNumber) { return prefix(callingCode); } return prefix("".concat(callingCode, " ").concat(formattedNationalNumber)); } return formattedNationalNumber; }, "getFullNumber") }, { key: "getNonFormattedNationalNumberWithPrefix", value: /* @__PURE__ */ __name(function getNonFormattedNationalNumberWithPrefix() { var _this$state = this.state, nationalSignificantNumber = _this$state.nationalSignificantNumber, prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix = _this$state.prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix, nationalPrefix = _this$state.nationalPrefix; var number = nationalSignificantNumber; var prefix = prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix || nationalPrefix; if (prefix) { number = prefix + number; } return number; }, "getNonFormattedNationalNumberWithPrefix") }, { key: "getNonFormattedNumber", value: /* @__PURE__ */ __name(function getNonFormattedNumber() { var nationalSignificantNumberIsModified = this.state.nationalSignificantNumberIsModified; return this.getFullNumber(nationalSignificantNumberIsModified ? this.state.getNationalDigits() : this.getNonFormattedNationalNumberWithPrefix()); }, "getNonFormattedNumber") }, { key: "getNonFormattedTemplate", value: /* @__PURE__ */ __name(function getNonFormattedTemplate() { var number = this.getNonFormattedNumber(); if (number) { return number.replace(/[\+\d]/g, _AsYouTypeFormatter.DIGIT_PLACEHOLDER); } }, "getNonFormattedTemplate") }, { key: "isCountryCallingCodeAmbiguous", value: /* @__PURE__ */ __name(function isCountryCallingCodeAmbiguous() { var callingCode = this.state.callingCode; var countryCodes = this.metadata.getCountryCodesForCallingCode(callingCode); return countryCodes && countryCodes.length > 1; }, "isCountryCallingCodeAmbiguous") // Determines the exact country of the phone number // entered so far based on the country phone code // and the national phone number. }, { key: "determineTheCountry", value: /* @__PURE__ */ __name(function determineTheCountry() { var country2 = (0, _getCountryByCallingCode["default"])(this.isInternational() ? this.state.callingCode : this.defaultCallingCode, { nationalNumber: this.state.nationalSignificantNumber, metadata: this.metadata }); if (country2 !== this.state.country) { this.state.setCountry(country2); if (country2) { this.metadata.selectNumberingPlan(country2); } } }, "determineTheCountry") /** * Returns a E.164 phone number value for the user's input. * * For example, for country `"US"` and input `"(222) 333-4444"` * it will return `"+12223334444"`. * * For international phone number input, it will also auto-correct * some minor errors such as using a national prefix when writing * an international phone number. For example, if the user inputs * `"+44 0 7400 000000"` then it will return an auto-corrected * `"+447400000000"` phone number value. * * Will return `undefined` if no digits have been input, * or when inputting a phone number in national format and no * default country or default "country calling code" have been set. * * @return {string} [value] */ }, { key: "getNumberValue", value: /* @__PURE__ */ __name(function getNumberValue() { var _this$state2 = this.state, digits = _this$state2.digits, callingCode = _this$state2.callingCode, country2 = _this$state2.country, nationalSignificantNumber = _this$state2.nationalSignificantNumber; if (!digits) { return; } if (this.isInternational()) { if (callingCode) { return "+" + callingCode + nationalSignificantNumber; } else { return "+" + digits; } } else { if (country2 || callingCode) { var callingCode_ = country2 ? this.metadata.countryCallingCode() : callingCode; return "+" + callingCode_ + nationalSignificantNumber; } } }, "getNumberValue") /** * Returns an instance of `PhoneNumber` class. * Will return `undefined` if no national (significant) number * digits have been entered so far, or if no `defaultCountry` has been * set and the user enters a phone number not in international format. */ }, { key: "getNumber", value: /* @__PURE__ */ __name(function getNumber() { var _this$state3 = this.state, nationalSignificantNumber = _this$state3.nationalSignificantNumber, carrierCode = _this$state3.carrierCode, callingCode = _this$state3.callingCode; if (!nationalSignificantNumber) { return; } var country2 = this._getCountry(); if (!country2 && !callingCode) { return; } if (country2) { if (country2 === this.defaultCountry) { var countryCallingCode = this.metadata.numberingPlan.callingCode(); var exactCountry = getExactCountryForMultiCountryCallingCode(countryCallingCode, nationalSignificantNumber, this.metadata); if (exactCountry) { country2 = exactCountry; } } } var phoneNumber = new _PhoneNumber["default"](country2 || callingCode, nationalSignificantNumber, this.metadata.metadata); if (carrierCode) { phoneNumber.carrierCode = carrierCode; } return phoneNumber; }, "getNumber") /** * Returns `true` if the phone number is "possible". * Is just a shortcut for `PhoneNumber.isPossible()`. * @return {boolean} */ }, { key: "isPossible", value: /* @__PURE__ */ __name(function isPossible() { var phoneNumber = this.getNumber(); if (!phoneNumber) { return false; } return phoneNumber.isPossible(); }, "isPossible") /** * Returns `true` if the phone number is "valid". * Is just a shortcut for `PhoneNumber.isValid()`. * @return {boolean} */ }, { key: "isValid", value: /* @__PURE__ */ __name(function isValid() { var phoneNumber = this.getNumber(); if (!phoneNumber) { return false; } return phoneNumber.isValid(); }, "isValid") /** * Checks if the phone number length is valid. * If it is, nothing is returned. * Otherwise, a rejection reason is returned. * @return {string?} */ }, { key: "validateLength", value: /* @__PURE__ */ __name(function validateLength() { var _this$state4 = this.state, digits = _this$state4.digits, nationalSignificantNumber = _this$state4.nationalSignificantNumber; if (!digits) { return "NOT_A_NUMBER"; } if (!this.metadata.numberingPlan) { return "INVALID_COUNTRY"; } if (!nationalSignificantNumber) { return "TOO_SHORT"; } var result = (0, _checkNumberLength["default"])(nationalSignificantNumber, void 0, this.metadata); if (result !== "IS_POSSIBLE") { return result; } }, "validateLength") /** * @deprecated * This method is used in `react-phone-number-input/source/input-control.js` * in versions before `3.0.16`. */ }, { key: "getNationalNumber", value: /* @__PURE__ */ __name(function getNationalNumber() { return this.state.nationalSignificantNumber; }, "getNationalNumber") /** * Returns the phone number characters entered by the user. * @return {string} */ }, { key: "getChars", value: /* @__PURE__ */ __name(function getChars() { return (this.state.international ? "+" : "") + this.state.digits; }, "getChars") /** * Returns the template for the formatted phone number. * @return {string} */ }, { key: "getTemplate", value: /* @__PURE__ */ __name(function getTemplate() { return this.formatter.getTemplate(this.state) || this.getNonFormattedTemplate() || ""; }, "getTemplate") }]); })(); function getExactCountryForMultiCountryCallingCode(callingCode, nationalSignificantNumber, metadata) { var ambiguousCountries = metadata.getCountryCodesForCallingCode(callingCode); if (ambiguousCountries.length > 1) { return (0, _getCountryByNationalNumber["default"])(nationalSignificantNumber, ambiguousCountries, metadata.metadata); } } __name(getExactCountryForMultiCountryCallingCode, "getExactCountryForMultiCountryCallingCode"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/getCountries.js var require_getCountries = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/getCountries.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = getCountries; var _metadata = _interopRequireDefault(require_metadata()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function getCountries(metadata) { return new _metadata["default"](metadata).getCountries(); } __name(getCountries, "getCountries"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/getExampleNumber.js var require_getExampleNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/getExampleNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = getExampleNumber; var _PhoneNumber = _interopRequireDefault(require_PhoneNumber()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function getExampleNumber(country2, examples, metadata) { if (examples[country2]) { return new _PhoneNumber["default"](country2, examples[country2], metadata); } } __name(getExampleNumber, "getExampleNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/formatIncompletePhoneNumber.js var require_formatIncompletePhoneNumber = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/build/formatIncompletePhoneNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2["default"] = formatIncompletePhoneNumber; var _AsYouType = _interopRequireDefault(require_AsYouType()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function formatIncompletePhoneNumber(value, optionsOrDefaultCountry, metadata) { if (!metadata) { metadata = optionsOrDefaultCountry; optionsOrDefaultCountry = void 0; } return new _AsYouType["default"](optionsOrDefaultCountry, metadata).input(value); } __name(formatIncompletePhoneNumber, "formatIncompletePhoneNumber"); } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/core/index.cjs var require_core2 = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/core/index.cjs"(exports2, module2) { "use strict"; var parsePhoneNumberFromString = require_parsePhoneNumber2().default; exports2 = module2.exports = parsePhoneNumberFromString; exports2["default"] = parsePhoneNumberFromString; exports2.PhoneNumber = require_PhoneNumber().default; exports2.ParseError = require_ParseError().default; var parsePhoneNumberWithError = require_parsePhoneNumberWithError2().default; exports2.parsePhoneNumberWithError = parsePhoneNumberWithError; exports2.parsePhoneNumber = parsePhoneNumberWithError; exports2.parsePhoneNumberFromString = parsePhoneNumberFromString; exports2.isValidPhoneNumber = require_isValidPhoneNumber().default; exports2.isPossiblePhoneNumber = require_isPossiblePhoneNumber().default; exports2.validatePhoneNumberLength = require_validatePhoneNumberLength().default; exports2.findNumbers = require_findNumbers().default; exports2.searchNumbers = require_searchNumbers().default; exports2.findPhoneNumbersInText = require_findPhoneNumbersInText().default; exports2.searchPhoneNumbersInText = require_searchPhoneNumbersInText().default; exports2.PhoneNumberMatcher = require_PhoneNumberMatcher().default; exports2.AsYouType = require_AsYouType().default; exports2.Metadata = require_metadata().default; exports2.isSupportedCountry = require_metadata().isSupportedCountry; exports2.getCountries = require_getCountries().default; exports2.getCountryCallingCode = require_metadata().getCountryCallingCode; exports2.getExtPrefix = require_metadata().getExtPrefix; exports2.getExampleNumber = require_getExampleNumber().default; exports2.formatIncompletePhoneNumber = require_formatIncompletePhoneNumber().default; exports2.parseIncompletePhoneNumber = require_parseIncompletePhoneNumber().default; exports2.parsePhoneNumberCharacter = require_parseIncompletePhoneNumber().parsePhoneNumberCharacter; exports2.parseDigits = require_parseDigits().default; exports2.DIGIT_PLACEHOLDER = require_AsYouTypeFormatter().DIGIT_PLACEHOLDER; exports2.parseRFC3966 = require_RFC3966().parseRFC3966; exports2.formatRFC3966 = require_RFC3966().formatRFC3966; } }); // ../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/max/index.cjs var require_max = __commonJS({ "../../node_modules/.pnpm/libphonenumber-js@1.13.12/node_modules/libphonenumber-js/max/index.cjs"(exports2, module2) { "use strict"; var metadata = require_metadata_max(); var core = require_core2(); function call(func, _arguments) { var args = Array.prototype.slice.call(_arguments); args.push(metadata); return func.apply(this, args); } __name(call, "call"); function parsePhoneNumberFromString() { return call(core.parsePhoneNumberFromString, arguments); } __name(parsePhoneNumberFromString, "parsePhoneNumberFromString"); exports2 = module2.exports = parsePhoneNumberFromString; exports2["default"] = parsePhoneNumberFromString; exports2.PhoneNumber = core.PhoneNumber; exports2.ParseError = core.ParseError; function parsePhoneNumberWithError() { return call(core.parsePhoneNumberWithError, arguments); } __name(parsePhoneNumberWithError, "parsePhoneNumberWithError"); exports2.parsePhoneNumber = parsePhoneNumberWithError; exports2.parsePhoneNumberWithError = parsePhoneNumberWithError; exports2.parsePhoneNumberFromString = parsePhoneNumberFromString; exports2.isValidPhoneNumber = /* @__PURE__ */ __name(function isValidPhoneNumber() { return call(core.isValidPhoneNumber, arguments); }, "isValidPhoneNumber"); exports2.isPossiblePhoneNumber = /* @__PURE__ */ __name(function isPossiblePhoneNumber() { return call(core.isPossiblePhoneNumber, arguments); }, "isPossiblePhoneNumber"); exports2.validatePhoneNumberLength = /* @__PURE__ */ __name(function validatePhoneNumberLength() { return call(core.validatePhoneNumberLength, arguments); }, "validatePhoneNumberLength"); exports2.findNumbers = /* @__PURE__ */ __name(function findNumbers() { return call(core.findNumbers, arguments); }, "findNumbers"); exports2.searchNumbers = /* @__PURE__ */ __name(function searchNumbers() { return call(core.searchNumbers, arguments); }, "searchNumbers"); exports2.findPhoneNumbersInText = /* @__PURE__ */ __name(function findPhoneNumbersInText() { return call(core.findPhoneNumbersInText, arguments); }, "findPhoneNumbersInText"); exports2.searchPhoneNumbersInText = /* @__PURE__ */ __name(function searchPhoneNumbersInText() { return call(core.searchPhoneNumbersInText, arguments); }, "searchPhoneNumbersInText"); exports2.PhoneNumberMatcher = /* @__PURE__ */ __name(function PhoneNumberMatcher(text, options) { return core.PhoneNumberMatcher.call(this, text, options, metadata); }, "PhoneNumberMatcher"); exports2.PhoneNumberMatcher.prototype = Object.create(core.PhoneNumberMatcher.prototype, {}); exports2.PhoneNumberMatcher.prototype.constructor = exports2.PhoneNumberMatcher; exports2.AsYouType = /* @__PURE__ */ __name(function AsYouType(country2) { return core.AsYouType.call(this, country2, metadata); }, "AsYouType"); exports2.AsYouType.prototype = Object.create(core.AsYouType.prototype, {}); exports2.AsYouType.prototype.constructor = exports2.AsYouType; exports2.isSupportedCountry = /* @__PURE__ */ __name(function isSupportedCountry(country2) { return call(core.isSupportedCountry, arguments); }, "isSupportedCountry"); exports2.getCountries = /* @__PURE__ */ __name(function getCountries() { return call(core.getCountries, arguments); }, "getCountries"); exports2.getCountryCallingCode = /* @__PURE__ */ __name(function getCountryCallingCode() { return call(core.getCountryCallingCode, arguments); }, "getCountryCallingCode"); exports2.getExtPrefix = /* @__PURE__ */ __name(function getExtPrefix(country2) { return call(core.getExtPrefix, arguments); }, "getExtPrefix"); exports2.getExampleNumber = /* @__PURE__ */ __name(function getExampleNumber() { return call(core.getExampleNumber, arguments); }, "getExampleNumber"); exports2.formatIncompletePhoneNumber = /* @__PURE__ */ __name(function formatIncompletePhoneNumber() { return call(core.formatIncompletePhoneNumber, arguments); }, "formatIncompletePhoneNumber"); exports2.parseIncompletePhoneNumber = core.parseIncompletePhoneNumber; exports2.parsePhoneNumberCharacter = core.parsePhoneNumberCharacter; exports2.parseDigits = core.parseDigits; exports2.DIGIT_PLACEHOLDER = core.DIGIT_PLACEHOLDER; exports2.parseRFC3966 = core.parseRFC3966; exports2.formatRFC3966 = core.formatRFC3966; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsPhoneNumber.js var require_IsPhoneNumber = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsPhoneNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsPhoneNumber = exports2.isPhoneNumber = exports2.IS_PHONE_NUMBER = void 0; var ValidateBy_1 = require_ValidateBy(); var max_1 = require_max(); exports2.IS_PHONE_NUMBER = "isPhoneNumber"; function isPhoneNumber(value, region) { if (typeof value !== "string" || value.trim() !== value) { return false; } try { const phoneNumber = (0, max_1.parsePhoneNumber)(value, region); if (region && phoneNumber.country !== region) { return false; } return phoneNumber.isValid(); } catch (error) { return false; } } __name(isPhoneNumber, "isPhoneNumber"); exports2.isPhoneNumber = isPhoneNumber; function IsPhoneNumber(region, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_PHONE_NUMBER, constraints: [region], validator: { validate: /* @__PURE__ */ __name((value, args) => isPhoneNumber(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a valid phone number", validationOptions) } }, validationOptions); } __name(IsPhoneNumber, "IsPhoneNumber"); exports2.IsPhoneNumber = IsPhoneNumber; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMilitaryTime.js var require_IsMilitaryTime = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMilitaryTime.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsMilitaryTime = exports2.isMilitaryTime = exports2.IS_MILITARY_TIME = void 0; var ValidateBy_1 = require_ValidateBy(); var matches_1 = __importDefault2(require_matches()); exports2.IS_MILITARY_TIME = "isMilitaryTime"; function isMilitaryTime(value) { const militaryTimeRegex = /^([01]\d|2[0-3]):?([0-5]\d)$/; return typeof value === "string" && (0, matches_1.default)(value, militaryTimeRegex); } __name(isMilitaryTime, "isMilitaryTime"); exports2.isMilitaryTime = isMilitaryTime; function IsMilitaryTime(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_MILITARY_TIME, validator: { validate: /* @__PURE__ */ __name((value, args) => isMilitaryTime(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a valid representation of military time in the format HH:MM", validationOptions) } }, validationOptions); } __name(IsMilitaryTime, "IsMilitaryTime"); exports2.IsMilitaryTime = IsMilitaryTime; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isHash.js var require_isHash = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isHash.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isHash; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var lengths = { md5: 32, md4: 32, sha1: 40, sha256: 64, sha384: 96, sha512: 128, ripemd128: 32, ripemd160: 40, tiger128: 32, tiger160: 40, tiger192: 48, crc32: 8, crc32b: 8 }; function isHash(str, algorithm) { (0, _assertString.default)(str); var hash = new RegExp("^[a-fA-F0-9]{".concat(lengths[algorithm], "}$")); return hash.test(str); } __name(isHash, "isHash"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsHash.js var require_IsHash = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsHash.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsHash = exports2.isHash = exports2.IS_HASH = void 0; var ValidateBy_1 = require_ValidateBy(); var isHash_1 = __importDefault2(require_isHash()); exports2.IS_HASH = "isHash"; function isHash(value, algorithm) { return typeof value === "string" && (0, isHash_1.default)(value, algorithm); } __name(isHash, "isHash"); exports2.isHash = isHash; function IsHash(algorithm, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_HASH, constraints: [algorithm], validator: { validate: /* @__PURE__ */ __name((value, args) => isHash(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a hash of type $constraint1", validationOptions) } }, validationOptions); } __name(IsHash, "IsHash"); exports2.IsHash = IsHash; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISSN.js var require_isISSN = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISSN.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isISSN; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var issn = "^\\d{4}-?\\d{3}[\\dX]$"; function isISSN(str) { var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; (0, _assertString.default)(str); var testIssn = issn; testIssn = options.require_hyphen ? testIssn.replace("?", "") : testIssn; testIssn = options.case_sensitive ? new RegExp(testIssn) : new RegExp(testIssn, "i"); if (!testIssn.test(str)) { return false; } var digits = str.replace("-", "").toUpperCase(); var checksum = 0; for (var i = 0; i < digits.length; i++) { var digit = digits[i]; checksum += (digit === "X" ? 10 : +digit) * (8 - i); } return checksum % 11 === 0; } __name(isISSN, "isISSN"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISSN.js var require_IsISSN = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISSN.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsISSN = exports2.isISSN = exports2.IS_ISSN = void 0; var ValidateBy_1 = require_ValidateBy(); var isISSN_1 = __importDefault2(require_isISSN()); exports2.IS_ISSN = "isISSN"; function isISSN(value, options) { return typeof value === "string" && (0, isISSN_1.default)(value, options); } __name(isISSN, "isISSN"); exports2.isISSN = isISSN; function IsISSN(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ISSN, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isISSN(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a ISSN", validationOptions) } }, validationOptions); } __name(IsISSN, "IsISSN"); exports2.IsISSN = IsISSN; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsDateString.js var require_IsDateString = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsDateString.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsDateString = exports2.isDateString = exports2.IS_DATE_STRING = void 0; var ValidateBy_1 = require_ValidateBy(); var IsISO8601_1 = require_IsISO8601(); exports2.IS_DATE_STRING = "isDateString"; function isDateString(value, options) { return (0, IsISO8601_1.isISO8601)(value, options); } __name(isDateString, "isDateString"); exports2.isDateString = isDateString; function IsDateString(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_DATE_STRING, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value) => isDateString(value, options), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a valid ISO 8601 date string", validationOptions) } }, validationOptions); } __name(IsDateString, "IsDateString"); exports2.IsDateString = IsDateString; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBoolean.js var require_isBoolean = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBoolean.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isBoolean; var _assertString = _interopRequireDefault(require_assertString()); var _includesArray = _interopRequireDefault(require_includesArray()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var defaultOptions = { loose: false }; var strictBooleans = ["true", "false", "1", "0"]; var looseBooleans = [].concat(strictBooleans, ["yes", "no"]); function isBoolean(str) { var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : defaultOptions; (0, _assertString.default)(str); if (options.loose) { return (0, _includesArray.default)(looseBooleans, str.toLowerCase()); } return (0, _includesArray.default)(strictBooleans, str); } __name(isBoolean, "isBoolean"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBooleanString.js var require_IsBooleanString = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBooleanString.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsBooleanString = exports2.isBooleanString = exports2.IS_BOOLEAN_STRING = void 0; var ValidateBy_1 = require_ValidateBy(); var isBoolean_1 = __importDefault2(require_isBoolean()); exports2.IS_BOOLEAN_STRING = "isBooleanString"; function isBooleanString(value) { return typeof value === "string" && (0, isBoolean_1.default)(value); } __name(isBooleanString, "isBooleanString"); exports2.isBooleanString = isBooleanString; function IsBooleanString(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_BOOLEAN_STRING, validator: { validate: /* @__PURE__ */ __name((value, args) => isBooleanString(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a boolean string", validationOptions) } }, validationOptions); } __name(IsBooleanString, "IsBooleanString"); exports2.IsBooleanString = IsBooleanString; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isNumeric.js var require_isNumeric = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isNumeric.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isNumeric; var _assertString = _interopRequireDefault(require_assertString()); var _alpha = require_alpha(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var numericNoSymbols = /^[0-9]+$/; function isNumeric(str, options) { (0, _assertString.default)(str); if (options && options.no_symbols) { return numericNoSymbols.test(str); } return new RegExp("^[+-]?([0-9]*[".concat((options || {}).locale ? _alpha.decimal[options.locale] : ".", "])?[0-9]+$")).test(str); } __name(isNumeric, "isNumeric"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsNumberString.js var require_IsNumberString = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsNumberString.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsNumberString = exports2.isNumberString = exports2.IS_NUMBER_STRING = void 0; var ValidateBy_1 = require_ValidateBy(); var isNumeric_1 = __importDefault2(require_isNumeric()); exports2.IS_NUMBER_STRING = "isNumberString"; function isNumberString(value, options) { return typeof value === "string" && (0, isNumeric_1.default)(value, options); } __name(isNumberString, "isNumberString"); exports2.isNumberString = isNumberString; function IsNumberString(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_NUMBER_STRING, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isNumberString(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a number string", validationOptions) } }, validationOptions); } __name(IsNumberString, "IsNumberString"); exports2.IsNumberString = IsNumberString; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBase32.js var require_isBase32 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBase32.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isBase32; var _assertString = _interopRequireDefault(require_assertString()); var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var base32 = /^[A-Z2-7]+=*$/; var crockfordBase32 = /^[A-HJKMNP-TV-Z0-9]+$/; var defaultBase32Options = { crockford: false }; function isBase32(str, options) { (0, _assertString.default)(str); options = (0, _merge.default)(options, defaultBase32Options); if (options.crockford) { return crockfordBase32.test(str); } return str.length % 8 === 0 && base32.test(str); } __name(isBase32, "isBase32"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBase32.js var require_IsBase32 = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBase32.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsBase32 = exports2.isBase32 = exports2.IS_BASE32 = void 0; var ValidateBy_1 = require_ValidateBy(); var isBase32_1 = __importDefault2(require_isBase32()); exports2.IS_BASE32 = "isBase32"; function isBase32(value) { return typeof value === "string" && (0, isBase32_1.default)(value); } __name(isBase32, "isBase32"); exports2.isBase32 = isBase32; function IsBase32(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_BASE32, validator: { validate: /* @__PURE__ */ __name((value, args) => isBase32(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be base32 encoded", validationOptions) } }, validationOptions); } __name(IsBase32, "IsBase32"); exports2.IsBase32 = IsBase32; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBIC.js var require_isBIC = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBIC.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isBIC; var _assertString = _interopRequireDefault(require_assertString()); var _isISO31661Alpha = require_isISO31661Alpha2(); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var isBICReg = /^[A-Za-z]{6}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$/; function isBIC(str) { (0, _assertString.default)(str); var countryCode = str.slice(4, 6).toUpperCase(); if (!_isISO31661Alpha.CountryCodes.has(countryCode) && countryCode !== "XK") { return false; } return isBICReg.test(str); } __name(isBIC, "isBIC"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBIC.js var require_IsBIC = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBIC.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsBIC = exports2.isBIC = exports2.IS_BIC = void 0; var ValidateBy_1 = require_ValidateBy(); var isBIC_1 = __importDefault2(require_isBIC()); exports2.IS_BIC = "isBIC"; function isBIC(value) { return typeof value === "string" && (0, isBIC_1.default)(value); } __name(isBIC, "isBIC"); exports2.isBIC = isBIC; function IsBIC(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_BIC, validator: { validate: /* @__PURE__ */ __name((value, args) => isBIC(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a BIC or SWIFT code", validationOptions) } }, validationOptions); } __name(IsBIC, "IsBIC"); exports2.IsBIC = IsBIC; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBtcAddress.js var require_isBtcAddress = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBtcAddress.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isBtcAddress; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var bech32 = /^(bc1|tb1|bc1p|tb1p)[ac-hj-np-z02-9]{39,58}$/; var base58 = /^(1|2|3|m)[A-HJ-NP-Za-km-z1-9]{25,39}$/; function isBtcAddress(str) { (0, _assertString.default)(str); return bech32.test(str) || base58.test(str); } __name(isBtcAddress, "isBtcAddress"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBtcAddress.js var require_IsBtcAddress = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBtcAddress.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsBtcAddress = exports2.isBtcAddress = exports2.IS_BTC_ADDRESS = void 0; var ValidateBy_1 = require_ValidateBy(); var isBtcAddress_1 = __importDefault2(require_isBtcAddress()); exports2.IS_BTC_ADDRESS = "isBtcAddress"; function isBtcAddress(value) { return typeof value === "string" && (0, isBtcAddress_1.default)(value); } __name(isBtcAddress, "isBtcAddress"); exports2.isBtcAddress = isBtcAddress; function IsBtcAddress(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_BTC_ADDRESS, validator: { validate: /* @__PURE__ */ __name((value, args) => isBtcAddress(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a BTC address", validationOptions) } }, validationOptions); } __name(IsBtcAddress, "IsBtcAddress"); exports2.IsBtcAddress = IsBtcAddress; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isDataURI.js var require_isDataURI = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isDataURI.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isDataURI; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var validMediaType = /^[a-z]+\/[a-z0-9\-\+\._]+$/i; var validAttribute = /^[a-z\-]+=[a-z0-9\-]+$/i; var validData = /^[a-z0-9!\$&'\(\)\*\+,;=\-\._~:@\/\?%\s]*$/i; function isDataURI(str) { (0, _assertString.default)(str); var data = str.split(","); if (data.length < 2) { return false; } var attributes = data.shift().trim().split(";"); var schemeAndMediaType = attributes.shift(); if (schemeAndMediaType.slice(0, 5) !== "data:") { return false; } var mediaType = schemeAndMediaType.slice(5); if (mediaType !== "" && !validMediaType.test(mediaType)) { return false; } for (var i = 0; i < attributes.length; i++) { if (!(i === attributes.length - 1 && attributes[i].toLowerCase() === "base64") && !validAttribute.test(attributes[i])) { return false; } } for (var _i = 0; _i < data.length; _i++) { if (!validData.test(data[_i])) { return false; } } return true; } __name(isDataURI, "isDataURI"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsDataURI.js var require_IsDataURI = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsDataURI.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsDataURI = exports2.isDataURI = exports2.IS_DATA_URI = void 0; var ValidateBy_1 = require_ValidateBy(); var isDataURI_1 = __importDefault2(require_isDataURI()); exports2.IS_DATA_URI = "isDataURI"; function isDataURI(value) { return typeof value === "string" && (0, isDataURI_1.default)(value); } __name(isDataURI, "isDataURI"); exports2.isDataURI = isDataURI; function IsDataURI(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_DATA_URI, validator: { validate: /* @__PURE__ */ __name((value, args) => isDataURI(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a data uri format", validationOptions) } }, validationOptions); } __name(IsDataURI, "IsDataURI"); exports2.IsDataURI = IsDataURI; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isEAN.js var require_isEAN = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isEAN.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isEAN; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var LENGTH_EAN_8 = 8; var LENGTH_EAN_14 = 14; var validEanRegex = /^(\d{8}|\d{13}|\d{14})$/; function getPositionWeightThroughLengthAndIndex(length, index) { if (length === LENGTH_EAN_8 || length === LENGTH_EAN_14) { return index % 2 === 0 ? 3 : 1; } return index % 2 === 0 ? 1 : 3; } __name(getPositionWeightThroughLengthAndIndex, "getPositionWeightThroughLengthAndIndex"); function calculateCheckDigit(ean) { var checksum = ean.slice(0, -1).split("").map(function(char, index) { return Number(char) * getPositionWeightThroughLengthAndIndex(ean.length, index); }).reduce(function(acc, partialSum) { return acc + partialSum; }, 0); var remainder = 10 - checksum % 10; return remainder < 10 ? remainder : 0; } __name(calculateCheckDigit, "calculateCheckDigit"); function isEAN(str) { (0, _assertString.default)(str); var actualCheckDigit = Number(str.slice(-1)); return validEanRegex.test(str) && actualCheckDigit === calculateCheckDigit(str); } __name(isEAN, "isEAN"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsEAN.js var require_IsEAN = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsEAN.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsEAN = exports2.isEAN = exports2.IS_EAN = void 0; var ValidateBy_1 = require_ValidateBy(); var isEAN_1 = __importDefault2(require_isEAN()); exports2.IS_EAN = "isEAN"; function isEAN(value) { return typeof value === "string" && (0, isEAN_1.default)(value); } __name(isEAN, "isEAN"); exports2.isEAN = isEAN; function IsEAN(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_EAN, validator: { validate: /* @__PURE__ */ __name((value, args) => isEAN(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be an EAN (European Article Number)", validationOptions) } }, validationOptions); } __name(IsEAN, "IsEAN"); exports2.IsEAN = IsEAN; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isEthereumAddress.js var require_isEthereumAddress = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isEthereumAddress.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isEthereumAddress; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var eth = /^(0x)[0-9a-f]{40}$/i; function isEthereumAddress(str) { (0, _assertString.default)(str); return eth.test(str); } __name(isEthereumAddress, "isEthereumAddress"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsEthereumAddress.js var require_IsEthereumAddress = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsEthereumAddress.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsEthereumAddress = exports2.isEthereumAddress = exports2.IS_ETHEREUM_ADDRESS = void 0; var ValidateBy_1 = require_ValidateBy(); var isEthereumAddress_1 = __importDefault2(require_isEthereumAddress()); exports2.IS_ETHEREUM_ADDRESS = "isEthereumAddress"; function isEthereumAddress(value) { return typeof value === "string" && (0, isEthereumAddress_1.default)(value); } __name(isEthereumAddress, "isEthereumAddress"); exports2.isEthereumAddress = isEthereumAddress; function IsEthereumAddress(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ETHEREUM_ADDRESS, validator: { validate: /* @__PURE__ */ __name((value, args) => isEthereumAddress(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be an Ethereum address", validationOptions) } }, validationOptions); } __name(IsEthereumAddress, "IsEthereumAddress"); exports2.IsEthereumAddress = IsEthereumAddress; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isHSL.js var require_isHSL = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isHSL.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isHSL; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var hslComma = /^hsla?\(((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?))(deg|grad|rad|turn)?(,(\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%){2}(,((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%?))?\)$/i; var hslSpace = /^hsla?\(((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?))(deg|grad|rad|turn)?(\s(\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%){2}\s?(\/\s((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%?)\s?)?\)$/i; function isHSL(str) { (0, _assertString.default)(str); var strippedStr = str.replace(/\s+/g, " ").replace(/\s?(hsla?\(|\)|,)\s?/ig, "$1"); if (strippedStr.indexOf(",") !== -1) { return hslComma.test(strippedStr); } return hslSpace.test(strippedStr); } __name(isHSL, "isHSL"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsHSL.js var require_IsHSL = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsHSL.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsHSL = exports2.isHSL = exports2.IS_HSL = void 0; var ValidateBy_1 = require_ValidateBy(); var isHSL_1 = __importDefault2(require_isHSL()); exports2.IS_HSL = "isHSL"; function isHSL(value) { return typeof value === "string" && (0, isHSL_1.default)(value); } __name(isHSL, "isHSL"); exports2.isHSL = isHSL; function IsHSL(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_HSL, validator: { validate: /* @__PURE__ */ __name((value, args) => isHSL(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a HSL color", validationOptions) } }, validationOptions); } __name(IsHSL, "IsHSL"); exports2.IsHSL = IsHSL; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIBAN.js var require_isIBAN = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIBAN.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isIBAN; exports2.locales = void 0; var _assertString = _interopRequireDefault(require_assertString()); var _includesArray = _interopRequireDefault(require_includesArray()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var ibanRegexThroughCountryCode = { AD: /^(AD[0-9]{2})\d{8}[A-Z0-9]{12}$/, AE: /^(AE[0-9]{2})\d{3}\d{16}$/, AL: /^(AL[0-9]{2})\d{8}[A-Z0-9]{16}$/, AT: /^(AT[0-9]{2})\d{16}$/, AZ: /^(AZ[0-9]{2})[A-Z0-9]{4}\d{20}$/, BA: /^(BA[0-9]{2})\d{16}$/, BE: /^(BE[0-9]{2})\d{12}$/, BG: /^(BG[0-9]{2})[A-Z]{4}\d{6}[A-Z0-9]{8}$/, BH: /^(BH[0-9]{2})[A-Z]{4}[A-Z0-9]{14}$/, BR: /^(BR[0-9]{2})\d{23}[A-Z]{1}[A-Z0-9]{1}$/, BY: /^(BY[0-9]{2})[A-Z0-9]{4}\d{20}$/, CH: /^(CH[0-9]{2})\d{5}[A-Z0-9]{12}$/, CR: /^(CR[0-9]{2})\d{18}$/, CY: /^(CY[0-9]{2})\d{8}[A-Z0-9]{16}$/, CZ: /^(CZ[0-9]{2})\d{20}$/, DE: /^(DE[0-9]{2})\d{18}$/, DK: /^(DK[0-9]{2})\d{14}$/, DO: /^(DO[0-9]{2})[A-Z]{4}\d{20}$/, DZ: /^(DZ\d{24})$/, EE: /^(EE[0-9]{2})\d{16}$/, EG: /^(EG[0-9]{2})\d{25}$/, ES: /^(ES[0-9]{2})\d{20}$/, FI: /^(FI[0-9]{2})\d{14}$/, FO: /^(FO[0-9]{2})\d{14}$/, FR: /^(FR[0-9]{2})\d{10}[A-Z0-9]{11}\d{2}$/, GB: /^(GB[0-9]{2})[A-Z]{4}\d{14}$/, GE: /^(GE[0-9]{2})[A-Z0-9]{2}\d{16}$/, GI: /^(GI[0-9]{2})[A-Z]{4}[A-Z0-9]{15}$/, GL: /^(GL[0-9]{2})\d{14}$/, GR: /^(GR[0-9]{2})\d{7}[A-Z0-9]{16}$/, GT: /^(GT[0-9]{2})[A-Z0-9]{4}[A-Z0-9]{20}$/, HR: /^(HR[0-9]{2})\d{17}$/, HU: /^(HU[0-9]{2})\d{24}$/, IE: /^(IE[0-9]{2})[A-Z]{4}\d{14}$/, IL: /^(IL[0-9]{2})\d{19}$/, IQ: /^(IQ[0-9]{2})[A-Z]{4}\d{15}$/, IR: /^(IR[0-9]{2})\d{22}$/, IS: /^(IS[0-9]{2})\d{22}$/, IT: /^(IT[0-9]{2})[A-Z]{1}\d{10}[A-Z0-9]{12}$/, JO: /^(JO[0-9]{2})[A-Z]{4}\d{22}$/, KW: /^(KW[0-9]{2})[A-Z]{4}[A-Z0-9]{22}$/, KZ: /^(KZ[0-9]{2})\d{3}[A-Z0-9]{13}$/, LB: /^(LB[0-9]{2})\d{4}[A-Z0-9]{20}$/, LC: /^(LC[0-9]{2})[A-Z]{4}[A-Z0-9]{24}$/, LI: /^(LI[0-9]{2})\d{5}[A-Z0-9]{12}$/, LT: /^(LT[0-9]{2})\d{16}$/, LU: /^(LU[0-9]{2})\d{3}[A-Z0-9]{13}$/, LV: /^(LV[0-9]{2})[A-Z]{4}[A-Z0-9]{13}$/, MA: /^(MA[0-9]{26})$/, MC: /^(MC[0-9]{2})\d{10}[A-Z0-9]{11}\d{2}$/, MD: /^(MD[0-9]{2})[A-Z0-9]{20}$/, ME: /^(ME[0-9]{2})\d{18}$/, MK: /^(MK[0-9]{2})\d{3}[A-Z0-9]{10}\d{2}$/, MR: /^(MR[0-9]{2})\d{23}$/, MT: /^(MT[0-9]{2})[A-Z]{4}\d{5}[A-Z0-9]{18}$/, MU: /^(MU[0-9]{2})[A-Z]{4}\d{19}[A-Z]{3}$/, MZ: /^(MZ[0-9]{2})\d{21}$/, NL: /^(NL[0-9]{2})[A-Z]{4}\d{10}$/, NO: /^(NO[0-9]{2})\d{11}$/, PK: /^(PK[0-9]{2})[A-Z0-9]{4}\d{16}$/, PL: /^(PL[0-9]{2})\d{24}$/, PS: /^(PS[0-9]{2})[A-Z]{4}[A-Z0-9]{21}$/, PT: /^(PT[0-9]{2})\d{21}$/, QA: /^(QA[0-9]{2})[A-Z]{4}[A-Z0-9]{21}$/, RO: /^(RO[0-9]{2})[A-Z]{4}[A-Z0-9]{16}$/, RS: /^(RS[0-9]{2})\d{18}$/, SA: /^(SA[0-9]{2})\d{2}[A-Z0-9]{18}$/, SC: /^(SC[0-9]{2})[A-Z]{4}\d{20}[A-Z]{3}$/, SE: /^(SE[0-9]{2})\d{20}$/, SI: /^(SI[0-9]{2})\d{15}$/, SK: /^(SK[0-9]{2})\d{20}$/, SM: /^(SM[0-9]{2})[A-Z]{1}\d{10}[A-Z0-9]{12}$/, SV: /^(SV[0-9]{2})[A-Z0-9]{4}\d{20}$/, TL: /^(TL[0-9]{2})\d{19}$/, TN: /^(TN[0-9]{2})\d{20}$/, TR: /^(TR[0-9]{2})\d{5}[A-Z0-9]{17}$/, UA: /^(UA[0-9]{2})\d{6}[A-Z0-9]{19}$/, VA: /^(VA[0-9]{2})\d{18}$/, VG: /^(VG[0-9]{2})[A-Z]{4}\d{16}$/, XK: /^(XK[0-9]{2})\d{16}$/ }; function hasOnlyValidCountryCodes(countryCodeArray) { var countryCodeArrayFilteredWithObjectIbanCode = countryCodeArray.filter(function(countryCode) { return !(countryCode in ibanRegexThroughCountryCode); }); return countryCodeArrayFilteredWithObjectIbanCode.length === 0; } __name(hasOnlyValidCountryCodes, "hasOnlyValidCountryCodes"); function hasValidIbanFormat(str, options) { var strippedStr = str.replace(/[\s\-]+/gi, "").toUpperCase(); var isoCountryCode = strippedStr.slice(0, 2).toUpperCase(); var isoCountryCodeInIbanRegexCodeObject = isoCountryCode in ibanRegexThroughCountryCode; if (options.whitelist) { if (!hasOnlyValidCountryCodes(options.whitelist)) { return false; } var isoCountryCodeInWhiteList = (0, _includesArray.default)(options.whitelist, isoCountryCode); if (!isoCountryCodeInWhiteList) { return false; } } if (options.blacklist) { var isoCountryCodeInBlackList = (0, _includesArray.default)(options.blacklist, isoCountryCode); if (isoCountryCodeInBlackList) { return false; } } return isoCountryCodeInIbanRegexCodeObject && ibanRegexThroughCountryCode[isoCountryCode].test(strippedStr); } __name(hasValidIbanFormat, "hasValidIbanFormat"); function hasValidIbanChecksum(str) { var strippedStr = str.replace(/[^A-Z0-9]+/gi, "").toUpperCase(); var rearranged = strippedStr.slice(4) + strippedStr.slice(0, 4); var alphaCapsReplacedWithDigits = rearranged.replace(/[A-Z]/g, function(char) { return char.charCodeAt(0) - 55; }); var remainder = alphaCapsReplacedWithDigits.match(/\d{1,7}/g).reduce(function(acc, value) { return Number(acc + value) % 97; }, ""); return remainder === 1; } __name(hasValidIbanChecksum, "hasValidIbanChecksum"); function isIBAN(str) { var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; (0, _assertString.default)(str); return hasValidIbanFormat(str, options) && hasValidIbanChecksum(str); } __name(isIBAN, "isIBAN"); var locales = exports2.locales = Object.keys(ibanRegexThroughCountryCode); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsIBAN.js var require_IsIBAN = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsIBAN.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsIBAN = exports2.isIBAN = exports2.IS_IBAN = void 0; var ValidateBy_1 = require_ValidateBy(); var isIBAN_1 = __importDefault2(require_isIBAN()); exports2.IS_IBAN = "isIBAN"; function isIBAN(value) { return typeof value === "string" && (0, isIBAN_1.default)(value); } __name(isIBAN, "isIBAN"); exports2.isIBAN = isIBAN; function IsIBAN(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_IBAN, validator: { validate: /* @__PURE__ */ __name((value, args) => isIBAN(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be an IBAN", validationOptions) } }, validationOptions); } __name(IsIBAN, "IsIBAN"); exports2.IsIBAN = IsIBAN; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIdentityCard.js var require_isIdentityCard = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIdentityCard.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isIdentityCard; var _assertString = _interopRequireDefault(require_assertString()); var _includesArray = _interopRequireDefault(require_includesArray()); var _isInt = _interopRequireDefault(require_isInt()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var validators = { PL: /* @__PURE__ */ __name(function PL(str) { (0, _assertString.default)(str); var weightOfDigits = { 1: 1, 2: 3, 3: 7, 4: 9, 5: 1, 6: 3, 7: 7, 8: 9, 9: 1, 10: 3, 11: 0 }; if (str != null && str.length === 11 && (0, _isInt.default)(str, { allow_leading_zeroes: true })) { var digits = str.split("").slice(0, -1); var sum = digits.reduce(function(acc, digit, index) { return acc + Number(digit) * weightOfDigits[index + 1]; }, 0); var modulo = sum % 10; var lastDigit = Number(str.charAt(str.length - 1)); if (modulo === 0 && lastDigit === 0 || lastDigit === 10 - modulo) { return true; } } return false; }, "PL"), ES: /* @__PURE__ */ __name(function ES(str) { (0, _assertString.default)(str); var DNI = /^[0-9X-Z][0-9]{7}[TRWAGMYFPDXBNJZSQVHLCKE]$/; var charsValue = { X: 0, Y: 1, Z: 2 }; var controlDigits = ["T", "R", "W", "A", "G", "M", "Y", "F", "P", "D", "X", "B", "N", "J", "Z", "S", "Q", "V", "H", "L", "C", "K", "E"]; var sanitized = str.trim().toUpperCase(); if (!DNI.test(sanitized)) { return false; } var number = sanitized.slice(0, -1).replace(/[X,Y,Z]/g, function(char) { return charsValue[char]; }); return sanitized.endsWith(controlDigits[number % 23]); }, "ES"), FI: /* @__PURE__ */ __name(function FI(str) { (0, _assertString.default)(str); if (str.length !== 11) { return false; } if (!str.match(/^\d{6}[\-A\+]\d{3}[0-9ABCDEFHJKLMNPRSTUVWXY]{1}$/)) { return false; } var checkDigits = "0123456789ABCDEFHJKLMNPRSTUVWXY"; var idAsNumber = parseInt(str.slice(0, 6), 10) * 1e3 + parseInt(str.slice(7, 10), 10); var remainder = idAsNumber % 31; var checkDigit = checkDigits[remainder]; return checkDigit === str.slice(10, 11); }, "FI"), IN: /* @__PURE__ */ __name(function IN(str) { var DNI = /^[1-9]\d{3}\s?\d{4}\s?\d{4}$/; var d = [[0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [1, 2, 3, 4, 0, 6, 7, 8, 9, 5], [2, 3, 4, 0, 1, 7, 8, 9, 5, 6], [3, 4, 0, 1, 2, 8, 9, 5, 6, 7], [4, 0, 1, 2, 3, 9, 5, 6, 7, 8], [5, 9, 8, 7, 6, 0, 4, 3, 2, 1], [6, 5, 9, 8, 7, 1, 0, 4, 3, 2], [7, 6, 5, 9, 8, 2, 1, 0, 4, 3], [8, 7, 6, 5, 9, 3, 2, 1, 0, 4], [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]]; var p = [[0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [1, 5, 7, 6, 2, 8, 3, 0, 9, 4], [5, 8, 0, 3, 7, 9, 6, 1, 4, 2], [8, 9, 1, 6, 0, 4, 3, 5, 2, 7], [9, 4, 5, 3, 1, 2, 6, 8, 7, 0], [4, 2, 8, 6, 5, 7, 3, 9, 0, 1], [2, 7, 9, 3, 8, 0, 6, 4, 1, 5], [7, 0, 4, 6, 9, 1, 3, 2, 5, 8]]; var sanitized = str.trim(); if (!DNI.test(sanitized)) { return false; } var c = 0; var invertedArray = sanitized.replace(/\s/g, "").split("").map(Number).reverse(); invertedArray.forEach(function(val, i) { c = d[c][p[i % 8][val]]; }); return c === 0; }, "IN"), IR: /* @__PURE__ */ __name(function IR(str) { if (!str.match(/^\d{10}$/)) return false; str = "0000".concat(str).slice(str.length - 6); if (parseInt(str.slice(3, 9), 10) === 0) return false; var lastNumber = parseInt(str.slice(9, 10), 10); var sum = 0; for (var i = 0; i < 9; i++) { sum += parseInt(str.slice(i, i + 1), 10) * (10 - i); } sum %= 11; return sum < 2 && lastNumber === sum || sum >= 2 && lastNumber === 11 - sum; }, "IR"), IT: /* @__PURE__ */ __name(function IT(str) { if (str.length !== 9) return false; if (str === "CA00000AA") return false; return str.search(/C[A-Z]\d{5}[A-Z]{2}/i) > -1; }, "IT"), NO: /* @__PURE__ */ __name(function NO(str) { var sanitized = str.trim(); if (isNaN(Number(sanitized))) return false; if (sanitized.length !== 11) return false; if (sanitized === "00000000000") return false; var f = sanitized.split("").map(Number); var k1 = (11 - (3 * f[0] + 7 * f[1] + 6 * f[2] + 1 * f[3] + 8 * f[4] + 9 * f[5] + 4 * f[6] + 5 * f[7] + 2 * f[8]) % 11) % 11; var k2 = (11 - (5 * f[0] + 4 * f[1] + 3 * f[2] + 2 * f[3] + 7 * f[4] + 6 * f[5] + 5 * f[6] + 4 * f[7] + 3 * f[8] + 2 * k1) % 11) % 11; if (k1 !== f[9] || k2 !== f[10]) return false; return true; }, "NO"), TH: /* @__PURE__ */ __name(function TH(str) { if (!str.match(/^[1-8]\d{12}$/)) return false; var sum = 0; for (var i = 0; i < 12; i++) { sum += parseInt(str[i], 10) * (13 - i); } return str[12] === ((11 - sum % 11) % 10).toString(); }, "TH"), LK: /* @__PURE__ */ __name(function LK(str) { var old_nic = /^[1-9]\d{8}[vx]$/i; var new_nic = /^[1-9]\d{11}$/i; if (str.length === 10 && old_nic.test(str)) return true; else if (str.length === 12 && new_nic.test(str)) return true; return false; }, "LK"), "he-IL": /* @__PURE__ */ __name(function heIL(str) { var DNI = /^\d{9}$/; var sanitized = str.trim(); if (!DNI.test(sanitized)) { return false; } var id = sanitized; var sum = 0, incNum; for (var i = 0; i < id.length; i++) { incNum = Number(id[i]) * (i % 2 + 1); sum += incNum > 9 ? incNum - 9 : incNum; } return sum % 10 === 0; }, "heIL"), "ar-LY": /* @__PURE__ */ __name(function arLY(str) { var NIN = /^(1|2)\d{11}$/; var sanitized = str.trim(); return NIN.test(sanitized); }, "arLY"), "ar-TN": /* @__PURE__ */ __name(function arTN(str) { var DNI = /^\d{8}$/; var sanitized = str.trim(); return DNI.test(sanitized); }, "arTN"), "zh-CN": /* @__PURE__ */ __name(function zhCN(str) { var provincesAndCities = [ "11", // 北京 "12", // 天津 "13", // 河北 "14", // 山西 "15", // 内蒙古 "21", // 辽宁 "22", // 吉林 "23", // 黑龙江 "31", // 上海 "32", // 江苏 "33", // 浙江 "34", // 安徽 "35", // 福建 "36", // 江西 "37", // 山东 "41", // 河南 "42", // 湖北 "43", // 湖南 "44", // 广东 "45", // 广西 "46", // 海南 "50", // 重庆 "51", // 四川 "52", // 贵州 "53", // 云南 "54", // 西藏 "61", // 陕西 "62", // 甘肃 "63", // 青海 "64", // 宁夏 "65", // 新疆 "71", // 台湾 "81", // 香港 "82", // 澳门 "91" // 国外 ]; var powers = ["7", "9", "10", "5", "8", "4", "2", "1", "6", "3", "7", "9", "10", "5", "8", "4", "2"]; var parityBit = ["1", "0", "X", "9", "8", "7", "6", "5", "4", "3", "2"]; var checkAddressCode = /* @__PURE__ */ __name(function checkAddressCode2(addressCode) { return (0, _includesArray.default)(provincesAndCities, addressCode); }, "checkAddressCode"); var checkBirthDayCode = /* @__PURE__ */ __name(function checkBirthDayCode2(birDayCode) { var yyyy = parseInt(birDayCode.substring(0, 4), 10); var mm = parseInt(birDayCode.substring(4, 6), 10); var dd = parseInt(birDayCode.substring(6), 10); var xdata = new Date(yyyy, mm - 1, dd); if (xdata > /* @__PURE__ */ new Date()) { return false; } else if (xdata.getFullYear() === yyyy && xdata.getMonth() === mm - 1 && xdata.getDate() === dd) { return true; } return false; }, "checkBirthDayCode"); var getParityBit = /* @__PURE__ */ __name(function getParityBit2(idCardNo) { var id17 = idCardNo.substring(0, 17); var power = 0; for (var i = 0; i < 17; i++) { power += parseInt(id17.charAt(i), 10) * parseInt(powers[i], 10); } var mod = power % 11; return parityBit[mod]; }, "getParityBit"); var checkParityBit = /* @__PURE__ */ __name(function checkParityBit2(idCardNo) { return getParityBit(idCardNo) === idCardNo.charAt(17).toUpperCase(); }, "checkParityBit"); var check15IdCardNo = /* @__PURE__ */ __name(function check15IdCardNo2(idCardNo) { var check = /^[1-9]\d{7}((0[1-9])|(1[0-2]))((0[1-9])|([1-2][0-9])|(3[0-1]))\d{3}$/.test(idCardNo); if (!check) return false; var addressCode = idCardNo.substring(0, 2); check = checkAddressCode(addressCode); if (!check) return false; var birDayCode = "19".concat(idCardNo.substring(6, 12)); check = checkBirthDayCode(birDayCode); if (!check) return false; return true; }, "check15IdCardNo"); var check18IdCardNo = /* @__PURE__ */ __name(function check18IdCardNo2(idCardNo) { var check = /^[1-9]\d{5}[1-9]\d{3}((0[1-9])|(1[0-2]))((0[1-9])|([1-2][0-9])|(3[0-1]))\d{3}(\d|x|X)$/.test(idCardNo); if (!check) return false; var addressCode = idCardNo.substring(0, 2); check = checkAddressCode(addressCode); if (!check) return false; var birDayCode = idCardNo.substring(6, 14); check = checkBirthDayCode(birDayCode); if (!check) return false; return checkParityBit(idCardNo); }, "check18IdCardNo"); var checkIdCardNo = /* @__PURE__ */ __name(function checkIdCardNo2(idCardNo) { var check = /^\d{15}|(\d{17}(\d|x|X))$/.test(idCardNo); if (!check) return false; if (idCardNo.length === 15) { return check15IdCardNo(idCardNo); } return check18IdCardNo(idCardNo); }, "checkIdCardNo"); return checkIdCardNo(str); }, "zhCN"), "zh-HK": /* @__PURE__ */ __name(function zhHK(str) { str = str.trim(); var regexHKID = /^[A-Z]{1,2}[0-9]{6}((\([0-9A]\))|(\[[0-9A]\])|([0-9A]))$/; var regexIsDigit = /^[0-9]$/; str = str.toUpperCase(); if (!regexHKID.test(str)) return false; str = str.replace(/\[|\]|\(|\)/g, ""); if (str.length === 8) str = "3".concat(str); var checkSumVal = 0; for (var i = 0; i <= 7; i++) { var convertedChar = void 0; if (!regexIsDigit.test(str[i])) convertedChar = (str[i].charCodeAt(0) - 55) % 11; else convertedChar = str[i]; checkSumVal += convertedChar * (9 - i); } checkSumVal %= 11; var checkSumConverted; if (checkSumVal === 0) checkSumConverted = "0"; else if (checkSumVal === 1) checkSumConverted = "A"; else checkSumConverted = String(11 - checkSumVal); if (checkSumConverted === str[str.length - 1]) return true; return false; }, "zhHK"), "zh-TW": /* @__PURE__ */ __name(function zhTW(str) { var ALPHABET_CODES = { A: 10, B: 11, C: 12, D: 13, E: 14, F: 15, G: 16, H: 17, I: 34, J: 18, K: 19, L: 20, M: 21, N: 22, O: 35, P: 23, Q: 24, R: 25, S: 26, T: 27, U: 28, V: 29, W: 32, X: 30, Y: 31, Z: 33 }; var sanitized = str.trim().toUpperCase(); if (!/^[A-Z][0-9]{9}$/.test(sanitized)) return false; return Array.from(sanitized).reduce(function(sum, number, index) { if (index === 0) { var code = ALPHABET_CODES[number]; return code % 10 * 9 + Math.floor(code / 10); } if (index === 9) { return (10 - sum % 10 - Number(number)) % 10 === 0; } return sum + Number(number) * (9 - index); }, 0); }, "zhTW"), PK: /* @__PURE__ */ __name(function PK(str) { var CNIC = /^[1-7][0-9]{4}-[0-9]{7}-[1-9]$/; var sanitized = str.trim(); return CNIC.test(sanitized); }, "PK") }; function isIdentityCard(str, locale) { (0, _assertString.default)(str); if (locale in validators) { return validators[locale](str); } else if (locale === "any") { for (var key in validators) { if (validators.hasOwnProperty(key)) { var validator = validators[key]; if (validator(str)) { return true; } } } return false; } throw new Error("Invalid locale '".concat(locale, "'")); } __name(isIdentityCard, "isIdentityCard"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsIdentityCard.js var require_IsIdentityCard = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsIdentityCard.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsIdentityCard = exports2.isIdentityCard = exports2.IS_IDENTITY_CARD = void 0; var ValidateBy_1 = require_ValidateBy(); var isIdentityCard_1 = __importDefault2(require_isIdentityCard()); exports2.IS_IDENTITY_CARD = "isIdentityCard"; function isIdentityCard(value, locale) { return typeof value === "string" && (0, isIdentityCard_1.default)(value, locale); } __name(isIdentityCard, "isIdentityCard"); exports2.isIdentityCard = isIdentityCard; function IsIdentityCard(locale, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_IDENTITY_CARD, constraints: [locale], validator: { validate: /* @__PURE__ */ __name((value, args) => isIdentityCard(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a identity card number", validationOptions) } }, validationOptions); } __name(IsIdentityCard, "IsIdentityCard"); exports2.IsIdentityCard = IsIdentityCard; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISRC.js var require_isISRC = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISRC.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isISRC; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var isrc = /^[A-Z]{2}[0-9A-Z]{3}\d{2}\d{5}$/; function isISRC(str) { (0, _assertString.default)(str); return isrc.test(str); } __name(isISRC, "isISRC"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISRC.js var require_IsISRC = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsISRC.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsISRC = exports2.isISRC = exports2.IS_ISRC = void 0; var ValidateBy_1 = require_ValidateBy(); var isISRC_1 = __importDefault2(require_isISRC()); exports2.IS_ISRC = "isISRC"; function isISRC(value) { return typeof value === "string" && (0, isISRC_1.default)(value); } __name(isISRC, "isISRC"); exports2.isISRC = isISRC; function IsISRC(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ISRC, validator: { validate: /* @__PURE__ */ __name((value, args) => isISRC(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be an ISRC", validationOptions) } }, validationOptions); } __name(IsISRC, "IsISRC"); exports2.IsISRC = IsISRC; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLocale.js var require_isLocale = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLocale.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isLocale; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var extlang = "([A-Za-z]{3}(-[A-Za-z]{3}){0,2})"; var language = "(([a-zA-Z]{2,3}(-".concat(extlang, ")?)|([a-zA-Z]{5,8}))"); var script = "([A-Za-z]{4})"; var region = "([A-Za-z]{2}|\\d{3})"; var variant = "([A-Za-z0-9]{5,8}|(\\d[A-Z-a-z0-9]{3}))"; var singleton = "(\\d|[A-W]|[Y-Z]|[a-w]|[y-z])"; var extension = "(".concat(singleton, "(-[A-Za-z0-9]{2,8})+)"); var privateuse = "(x(-[A-Za-z0-9]{1,8})+)"; var irregular = "((en-GB-oed)|(i-ami)|(i-bnn)|(i-default)|(i-enochian)|(i-hak)|(i-klingon)|(i-lux)|(i-mingo)|(i-navajo)|(i-pwn)|(i-tao)|(i-tay)|(i-tsu)|(sgn-BE-FR)|(sgn-BE-NL)|(sgn-CH-DE))"; var regular = "((art-lojban)|(cel-gaulish)|(no-bok)|(no-nyn)|(zh-guoyu)|(zh-hakka)|(zh-min)|(zh-min-nan)|(zh-xiang))"; var grandfathered = "(".concat(irregular, "|").concat(regular, ")"); var delimiter = "(-|_)"; var langtag = "".concat(language, "(").concat(delimiter).concat(script, ")?(").concat(delimiter).concat(region, ")?(").concat(delimiter).concat(variant, ")*(").concat(delimiter).concat(extension, ")*(").concat(delimiter).concat(privateuse, ")?"); var languageTagRegex = new RegExp("(^".concat(privateuse, "$)|(^").concat(grandfathered, "$)|(^").concat(langtag, "$)")); function isLocale(str) { (0, _assertString.default)(str); return languageTagRegex.test(str); } __name(isLocale, "isLocale"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsLocale.js var require_IsLocale = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsLocale.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsLocale = exports2.isLocale = exports2.IS_LOCALE = void 0; var ValidateBy_1 = require_ValidateBy(); var isLocale_1 = __importDefault2(require_isLocale()); exports2.IS_LOCALE = "isLocale"; function isLocale(value) { return typeof value === "string" && (0, isLocale_1.default)(value); } __name(isLocale, "isLocale"); exports2.isLocale = isLocale; function IsLocale(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_LOCALE, validator: { validate: /* @__PURE__ */ __name((value, args) => isLocale(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be locale", validationOptions) } }, validationOptions); } __name(IsLocale, "IsLocale"); exports2.IsLocale = IsLocale; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMagnetURI.js var require_isMagnetURI = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMagnetURI.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isMagnetURI; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var magnetURIComponent = /(?:^magnet:\?|[^?&]&)xt(?:\.1)?=urn:(?:(?:aich|bitprint|btih|ed2k|ed2khash|kzhash|md5|sha1|tree:tiger):[a-z0-9]{32}(?:[a-z0-9]{8})?|btmh:1220[a-z0-9]{64})(?:$|&)/i; function isMagnetURI(url) { (0, _assertString.default)(url); if (url.indexOf("magnet:?") !== 0) { return false; } return magnetURIComponent.test(url); } __name(isMagnetURI, "isMagnetURI"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMagnetURI.js var require_IsMagnetURI = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMagnetURI.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsMagnetURI = exports2.isMagnetURI = exports2.IS_MAGNET_URI = void 0; var ValidateBy_1 = require_ValidateBy(); var isMagnetURI_1 = __importDefault2(require_isMagnetURI()); exports2.IS_MAGNET_URI = "isMagnetURI"; function isMagnetURI(value) { return typeof value === "string" && (0, isMagnetURI_1.default)(value); } __name(isMagnetURI, "isMagnetURI"); exports2.isMagnetURI = isMagnetURI; function IsMagnetURI(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_MAGNET_URI, validator: { validate: /* @__PURE__ */ __name((value, args) => isMagnetURI(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be magnet uri format", validationOptions) } }, validationOptions); } __name(IsMagnetURI, "IsMagnetURI"); exports2.IsMagnetURI = IsMagnetURI; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMimeType.js var require_isMimeType = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMimeType.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isMimeType; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var mimeTypeSimple = /^(application|audio|font|image|message|model|multipart|text|video)\/[a-zA-Z0-9\.\-\+_]{1,100}$/i; var mimeTypeText = /^text\/[a-zA-Z0-9\.\-\+]{1,100};\s?charset=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?$/i; var mimeTypeMultipart = /^multipart\/[a-zA-Z0-9\.\-\+]{1,100}(;\s?(boundary|charset)=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?){0,2}$/i; function isMimeType(str) { (0, _assertString.default)(str); return mimeTypeSimple.test(str) || mimeTypeText.test(str) || mimeTypeMultipart.test(str); } __name(isMimeType, "isMimeType"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMimeType.js var require_IsMimeType = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsMimeType.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsMimeType = exports2.isMimeType = exports2.IS_MIME_TYPE = void 0; var ValidateBy_1 = require_ValidateBy(); var isMimeType_1 = __importDefault2(require_isMimeType()); exports2.IS_MIME_TYPE = "isMimeType"; function isMimeType(value) { return typeof value === "string" && (0, isMimeType_1.default)(value); } __name(isMimeType, "isMimeType"); exports2.isMimeType = isMimeType; function IsMimeType(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_MIME_TYPE, validator: { validate: /* @__PURE__ */ __name((value, args) => isMimeType(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be MIME type format", validationOptions) } }, validationOptions); } __name(IsMimeType, "IsMimeType"); exports2.IsMimeType = IsMimeType; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isOctal.js var require_isOctal = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isOctal.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isOctal; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var octal = /^(0o)?[0-7]+$/i; function isOctal(str) { (0, _assertString.default)(str); return octal.test(str); } __name(isOctal, "isOctal"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsOctal.js var require_IsOctal = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsOctal.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsOctal = exports2.isOctal = exports2.IS_OCTAL = void 0; var ValidateBy_1 = require_ValidateBy(); var isOctal_1 = __importDefault2(require_isOctal()); exports2.IS_OCTAL = "isOctal"; function isOctal(value) { return typeof value === "string" && (0, isOctal_1.default)(value); } __name(isOctal, "isOctal"); exports2.isOctal = isOctal; function IsOctal(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_OCTAL, validator: { validate: /* @__PURE__ */ __name((value, args) => isOctal(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be valid octal number", validationOptions) } }, validationOptions); } __name(IsOctal, "IsOctal"); exports2.IsOctal = IsOctal; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isPassportNumber.js var require_isPassportNumber = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isPassportNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isPassportNumber; exports2.locales = void 0; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var passportRegexByCountryCode = { AM: /^[A-Z]{2}\d{7}$/, // ARMENIA AR: /^[A-Z]{3}\d{6}$/, // ARGENTINA AT: /^[A-Z]\d{7}$/, // AUSTRIA AU: /^[A-Z]\d{7}$/, // AUSTRALIA AZ: /^[A-Z]{1}\d{8}$/, // AZERBAIJAN BE: /^[A-Z]{2}\d{6}$/, // BELGIUM BG: /^\d{9}$/, // BULGARIA BR: /^[A-Z]{2}\d{6}$/, // BRAZIL BY: /^[A-Z]{2}\d{7}$/, // BELARUS CA: /^[A-Z]{2}\d{6}$|^[A-Z]\d{6}[A-Z]{2}$/, // CANADA CH: /^[A-Z]\d{7}$/, // SWITZERLAND CN: /^G\d{8}$|^E(?![IO])[A-Z0-9]\d{7}$/, // CHINA [G=Ordinary, E=Electronic] followed by 8-digits, or E followed by any UPPERCASE letter (except I and O) followed by 7 digits CY: /^[A-Z](\d{6}|\d{8})$/, // CYPRUS CZ: /^\d{8}$/, // CZECH REPUBLIC DE: /^[CFGHJKLMNPRTVWXYZ0-9]{9}$/, // GERMANY DK: /^\d{9}$/, // DENMARK DZ: /^\d{9}$/, // ALGERIA EE: /^([A-Z]\d{7}|[A-Z]{2}\d{7})$/, // ESTONIA (K followed by 7-digits), e-passports have 2 UPPERCASE followed by 7 digits ES: /^[A-Z0-9]{2}([A-Z0-9]?)\d{6}$/, // SPAIN FI: /^[A-Z]{2}\d{7}$/, // FINLAND FR: /^\d{2}[A-Z]{2}\d{5}$/, // FRANCE GB: /^\d{9}$/, // UNITED KINGDOM GR: /^[A-Z]{2}\d{7}$/, // GREECE HR: /^\d{9}$/, // CROATIA HU: /^[A-Z]{2}(\d{6}|\d{7})$/, // HUNGARY IE: /^[A-Z0-9]{2}\d{7}$/, // IRELAND IN: /^[A-Z]{1}-?\d{7}$/, // INDIA ID: /^[A-C]\d{7}$/, // INDONESIA IR: /^[A-Z]\d{8}$/, // IRAN IS: /^(A)\d{7}$/, // ICELAND IT: /^[A-Z0-9]{2}\d{7}$/, // ITALY JM: /^[Aa]\d{7}$/, // JAMAICA JP: /^[A-Z]{2}\d{7}$/, // JAPAN KR: /^[MS]\d{8}$/, // SOUTH KOREA, REPUBLIC OF KOREA, [S=PS Passports, M=PM Passports] KZ: /^[a-zA-Z]\d{7}$/, // KAZAKHSTAN LI: /^[a-zA-Z]\d{5}$/, // LIECHTENSTEIN LT: /^[A-Z0-9]{8}$/, // LITHUANIA LU: /^[A-Z0-9]{8}$/, // LUXEMBURG LV: /^[A-Z0-9]{2}\d{7}$/, // LATVIA LY: /^[A-Z0-9]{8}$/, // LIBYA MT: /^\d{7}$/, // MALTA MZ: /^([A-Z]{2}\d{7})|(\d{2}[A-Z]{2}\d{5})$/, // MOZAMBIQUE MY: /^[AHK]\d{8}$/, // MALAYSIA MX: /^[A-Z]\d{8}$/, // MEXICO NL: /^[A-Z]{2}[A-Z0-9]{6}\d$/, // NETHERLANDS NZ: /^([Ll]([Aa]|[Dd]|[Ff]|[Hh])|[Ee]([Aa]|[Pp])|[Nn])\d{6}$/, // NEW ZEALAND PH: /^([A-Z](\d{6}|\d{7}[A-Z]))|([A-Z]{2}(\d{6}|\d{7}))$/, // PHILIPPINES PK: /^[A-Z]{2}\d{7}$/, // PAKISTAN PL: /^[A-Z]{2}\d{7}$/, // POLAND PT: /^[A-Z]\d{6}$/, // PORTUGAL RO: /^\d{8,9}$/, // ROMANIA RU: /^\d{9}$/, // RUSSIAN FEDERATION SE: /^\d{8}$/, // SWEDEN SL: /^(P)[A-Z]\d{7}$/, // SLOVENIA SK: /^[0-9A-Z]\d{7}$/, // SLOVAKIA TH: /^[A-Z]{1,2}\d{6,7}$/, // THAILAND TR: /^[A-Z]\d{8}$/, // TURKEY UA: /^[A-Z]{2}\d{6}$/, // UKRAINE US: /^\d{9}$|^[A-Z]\d{8}$/, // UNITED STATES ZA: /^[TAMD]\d{8}$/ // SOUTH AFRICA }; var locales = exports2.locales = Object.keys(passportRegexByCountryCode); function isPassportNumber(str, countryCode) { (0, _assertString.default)(str); var normalizedStr = str.replace(/\s/g, "").toUpperCase(); return countryCode.toUpperCase() in passportRegexByCountryCode && passportRegexByCountryCode[countryCode].test(normalizedStr); } __name(isPassportNumber, "isPassportNumber"); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsPassportNumber.js var require_IsPassportNumber = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsPassportNumber.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsPassportNumber = exports2.isPassportNumber = exports2.IS_PASSPORT_NUMBER = void 0; var ValidateBy_1 = require_ValidateBy(); var isPassportNumber_1 = __importDefault2(require_isPassportNumber()); exports2.IS_PASSPORT_NUMBER = "isPassportNumber"; function isPassportNumber(value, countryCode) { return typeof value === "string" && (0, isPassportNumber_1.default)(value, countryCode); } __name(isPassportNumber, "isPassportNumber"); exports2.isPassportNumber = isPassportNumber; function IsPassportNumber(countryCode, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_PASSPORT_NUMBER, constraints: [countryCode], validator: { validate: /* @__PURE__ */ __name((value, args) => isPassportNumber(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be valid passport number", validationOptions) } }, validationOptions); } __name(IsPassportNumber, "IsPassportNumber"); exports2.IsPassportNumber = IsPassportNumber; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isPostalCode.js var require_isPostalCode = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isPostalCode.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isPostalCode; exports2.locales = void 0; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var threeDigit = /^\d{3}$/; var fourDigit = /^\d{4}$/; var fiveDigit = /^\d{5}$/; var sixDigit = /^\d{6}$/; var patterns = { AD: /^AD\d{3}$/, AT: fourDigit, AU: fourDigit, AZ: /^AZ\d{4}$/, BA: /^([7-8]\d{4}$)/, BD: /^([1-8][0-9]{3}|9[0-4][0-9]{2})$/, BE: fourDigit, BG: fourDigit, BR: /^\d{5}-?\d{3}$/, BY: /^2[1-4]\d{4}$/, CA: /^[ABCEGHJKLMNPRSTVXY]\d[ABCEGHJ-NPRSTV-Z][\s\-]?\d[ABCEGHJ-NPRSTV-Z]\d$/i, CH: fourDigit, CN: /^(0[1-7]|1[012356]|2[0-7]|3[0-6]|4[0-7]|5[1-7]|6[1-7]|7[1-5]|8[1345]|9[09])\d{4}$/, CO: /^(05|08|11|13|15|17|18|19|20|23|25|27|41|44|47|50|52|54|63|66|68|70|73|76|81|85|86|88|91|94|95|97|99)(\d{4})$/, CZ: /^\d{3}\s?\d{2}$/, DE: fiveDigit, DK: fourDigit, DO: fiveDigit, DZ: fiveDigit, EE: fiveDigit, ES: /^(5[0-2]{1}|[0-4]{1}\d{1})\d{3}$/, FI: fiveDigit, FR: /^(?:(?:0[1-9]|[1-8]\d|9[0-5])\d{3}|97[1-46]\d{2})$/, GB: /^(gir\s?0aa|[a-z]{1,2}\d[\da-z]?\s?(\d[a-z]{2})?)$/i, GR: /^\d{3}\s?\d{2}$/, HR: /^([1-5]\d{4}$)/, HT: /^HT\d{4}$/, HU: fourDigit, ID: fiveDigit, IE: /^(?!.*(?:o))[A-Za-z]\d[\dw]\s\w{4}$/i, IL: /^(\d{5}|\d{7})$/, IN: /^((?!10|29|35|54|55|65|66|86|87|88|89)[1-9][0-9]{5})$/, IR: /^(?!(\d)\1{3})[13-9]{4}[1346-9][013-9]{5}$/, IS: threeDigit, IT: fiveDigit, JP: /^\d{3}\-\d{4}$/, KE: fiveDigit, KR: /^(\d{5}|\d{6})$/, LI: /^(948[5-9]|949[0-7])$/, LT: /^LT\-\d{5}$/, LU: fourDigit, LV: /^LV\-\d{4}$/, LK: fiveDigit, MC: /^980\d{2}$/, MG: threeDigit, MX: fiveDigit, MT: /^[A-Za-z]{3}\s{0,1}\d{4}$/, MY: fiveDigit, NL: /^[1-9]\d{3}\s?(?!sa|sd|ss)[a-z]{2}$/i, NO: fourDigit, NP: /^(10|21|22|32|33|34|44|45|56|57)\d{3}$|^(977)$/i, NZ: fourDigit, // https://www.pakpost.gov.pk/postcodes.php PK: fiveDigit, PL: /^\d{2}\-\d{3}$/, PR: /^00[679]\d{2}([ -]\d{4})?$/, PT: /^\d{4}\-\d{3}?$/, RO: sixDigit, RU: sixDigit, SA: fiveDigit, SE: /^[1-9]\d{2}\s?\d{2}$/, SG: sixDigit, SI: fourDigit, SK: /^\d{3}\s?\d{2}$/, TH: fiveDigit, TN: fourDigit, TW: /^\d{3}(\d{2,3})?$/, UA: fiveDigit, US: /^\d{5}(-\d{4})?$/, ZA: fourDigit, ZM: fiveDigit }; var locales = exports2.locales = Object.keys(patterns); function isPostalCode(str, locale) { (0, _assertString.default)(str); if (locale in patterns) { return patterns[locale].test(str); } else if (locale === "any") { for (var key in patterns) { if (patterns.hasOwnProperty(key)) { var pattern = patterns[key]; if (pattern.test(str)) { return true; } } } return false; } throw new Error("Invalid locale '".concat(locale, "'")); } __name(isPostalCode, "isPostalCode"); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsPostalCode.js var require_IsPostalCode = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsPostalCode.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsPostalCode = exports2.isPostalCode = exports2.IS_POSTAL_CODE = void 0; var ValidateBy_1 = require_ValidateBy(); var isPostalCode_1 = __importDefault2(require_isPostalCode()); exports2.IS_POSTAL_CODE = "isPostalCode"; function isPostalCode(value, locale) { return typeof value === "string" && (0, isPostalCode_1.default)(value, locale); } __name(isPostalCode, "isPostalCode"); exports2.isPostalCode = isPostalCode; function IsPostalCode(locale, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_POSTAL_CODE, constraints: [locale], validator: { validate: /* @__PURE__ */ __name((value, args) => isPostalCode(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a postal code", validationOptions) } }, validationOptions); } __name(IsPostalCode, "IsPostalCode"); exports2.IsPostalCode = IsPostalCode; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isRFC3339.js var require_isRFC3339 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isRFC3339.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isRFC3339; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var dateFullYear = /[0-9]{4}/; var dateMonth = /(0[1-9]|1[0-2])/; var dateMDay = /([12]\d|0[1-9]|3[01])/; var timeHour = /([01][0-9]|2[0-3])/; var timeMinute = /[0-5][0-9]/; var timeSecond = /([0-5][0-9]|60)/; var timeSecFrac = /(\.[0-9]+)?/; var timeNumOffset = new RegExp("[-+]".concat(timeHour.source, ":").concat(timeMinute.source)); var timeOffset = new RegExp("([zZ]|".concat(timeNumOffset.source, ")")); var partialTime = new RegExp("".concat(timeHour.source, ":").concat(timeMinute.source, ":").concat(timeSecond.source).concat(timeSecFrac.source)); var fullDate = new RegExp("".concat(dateFullYear.source, "-").concat(dateMonth.source, "-").concat(dateMDay.source)); var fullTime = new RegExp("".concat(partialTime.source).concat(timeOffset.source)); var rfc3339 = new RegExp("^".concat(fullDate.source, "[ tT]").concat(fullTime.source, "$")); function isRFC3339(str) { (0, _assertString.default)(str); return rfc3339.test(str); } __name(isRFC3339, "isRFC3339"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsRFC3339.js var require_IsRFC3339 = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsRFC3339.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsRFC3339 = exports2.isRFC3339 = exports2.IS_RFC_3339 = void 0; var ValidateBy_1 = require_ValidateBy(); var isRFC3339_1 = __importDefault2(require_isRFC3339()); exports2.IS_RFC_3339 = "isRFC3339"; function isRFC3339(value) { return typeof value === "string" && (0, isRFC3339_1.default)(value); } __name(isRFC3339, "isRFC3339"); exports2.isRFC3339 = isRFC3339; function IsRFC3339(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_RFC_3339, validator: { validate: /* @__PURE__ */ __name((value, args) => isRFC3339(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be RFC 3339 date", validationOptions) } }, validationOptions); } __name(IsRFC3339, "IsRFC3339"); exports2.IsRFC3339 = IsRFC3339; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isRgbColor.js var require_isRgbColor = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isRgbColor.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isRgbColor; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); var rgbColor = /^rgb\((([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]),){2}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\)$/; var rgbaColor = /^rgba\((([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]),){3}(0?\.\d\d?|1(\.0)?|0(\.0)?)\)$/; var rgbColorPercent = /^rgb\((([0-9]%|[1-9][0-9]%|100%),){2}([0-9]%|[1-9][0-9]%|100%)\)$/; var rgbaColorPercent = /^rgba\((([0-9]%|[1-9][0-9]%|100%),){3}(0?\.\d\d?|1(\.0)?|0(\.0)?)\)$/; var startsWithRgb = /^rgba?/; function isRgbColor(str, options) { (0, _assertString.default)(str); var allowSpaces = false; var includePercentValues = true; if (_typeof(options) !== "object") { if (arguments.length >= 2) { includePercentValues = arguments[1]; } } else { allowSpaces = options.allowSpaces !== void 0 ? options.allowSpaces : allowSpaces; includePercentValues = options.includePercentValues !== void 0 ? options.includePercentValues : includePercentValues; } if (allowSpaces) { if (!startsWithRgb.test(str)) { return false; } str = str.replace(/\s/g, ""); } if (!includePercentValues) { return rgbColor.test(str) || rgbaColor.test(str); } return rgbColor.test(str) || rgbaColor.test(str) || rgbColorPercent.test(str) || rgbaColorPercent.test(str); } __name(isRgbColor, "isRgbColor"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsRgbColor.js var require_IsRgbColor = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsRgbColor.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsRgbColor = exports2.isRgbColor = exports2.IS_RGB_COLOR = void 0; var ValidateBy_1 = require_ValidateBy(); var isRgbColor_1 = __importDefault2(require_isRgbColor()); exports2.IS_RGB_COLOR = "isRgbColor"; function isRgbColor(value, includePercentValues) { return typeof value === "string" && (0, isRgbColor_1.default)(value, { includePercentValues }); } __name(isRgbColor, "isRgbColor"); exports2.isRgbColor = isRgbColor; function IsRgbColor(includePercentValues, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_RGB_COLOR, constraints: [includePercentValues], validator: { validate: /* @__PURE__ */ __name((value, args) => isRgbColor(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be RGB color", validationOptions) } }, validationOptions); } __name(IsRgbColor, "IsRgbColor"); exports2.IsRgbColor = IsRgbColor; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/multilineRegex.js var require_multilineRegex = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/multilineRegex.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = multilineRegexp; function multilineRegexp(parts, flags) { var regexpAsStringLiteral = parts.join(""); return new RegExp(regexpAsStringLiteral, flags); } __name(multilineRegexp, "multilineRegexp"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isSemVer.js var require_isSemVer = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isSemVer.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isSemVer; var _assertString = _interopRequireDefault(require_assertString()); var _multilineRegex = _interopRequireDefault(require_multilineRegex()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var semanticVersioningRegex = (0, _multilineRegex.default)(["^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)", "(?:-((?:0|[1-9]\\d*|\\d*[a-z-][0-9a-z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-z-][0-9a-z-]*))*))", "?(?:\\+([0-9a-z-]+(?:\\.[0-9a-z-]+)*))?$"], "i"); function isSemVer(str) { (0, _assertString.default)(str); return semanticVersioningRegex.test(str); } __name(isSemVer, "isSemVer"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsSemVer.js var require_IsSemVer = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsSemVer.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsSemVer = exports2.isSemVer = exports2.IS_SEM_VER = void 0; var ValidateBy_1 = require_ValidateBy(); var isSemVer_1 = __importDefault2(require_isSemVer()); exports2.IS_SEM_VER = "isSemVer"; function isSemVer(value) { return typeof value === "string" && (0, isSemVer_1.default)(value); } __name(isSemVer, "isSemVer"); exports2.isSemVer = isSemVer; function IsSemVer(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_SEM_VER, validator: { validate: /* @__PURE__ */ __name((value, args) => isSemVer(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a Semantic Versioning Specification", validationOptions) } }, validationOptions); } __name(IsSemVer, "IsSemVer"); exports2.IsSemVer = IsSemVer; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/toDate.js var require_toDate = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/toDate.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = toDate; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function toDate(date) { (0, _assertString.default)(date); date = Date.parse(date); return !isNaN(date) ? new Date(date) : null; } __name(toDate, "toDate"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/toInt.js var require_toInt = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/toInt.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = toInt; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function toInt(str, radix) { (0, _assertString.default)(str); return parseInt(str, radix || 10); } __name(toInt, "toInt"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/toBoolean.js var require_toBoolean = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/toBoolean.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = toBoolean; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function toBoolean(str, strict) { (0, _assertString.default)(str); if (strict) { return str === "1" || /^true$/i.test(str); } return str !== "0" && !/^false$/i.test(str) && str !== ""; } __name(toBoolean, "toBoolean"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/equals.js var require_equals = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/equals.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = equals; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function equals(str, comparison) { (0, _assertString.default)(str); return str === comparison; } __name(equals, "equals"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIPRange.js var require_isIPRange = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIPRange.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isIPRange; var _assertString = _interopRequireDefault(require_assertString()); var _isIP = _interopRequireDefault(require_isIP()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var subnetMaybe = /^\d{1,3}$/; var v4Subnet = 32; var v6Subnet = 128; function isIPRange(str) { var version2 = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ""; (0, _assertString.default)(str); var parts = str.split("/"); if (parts.length !== 2) { return false; } if (!subnetMaybe.test(parts[1])) { return false; } if (parts[1].length > 1 && parts[1].startsWith("0")) { return false; } var isValidIP = (0, _isIP.default)(parts[0], version2); if (!isValidIP) { return false; } var expectedSubnet = null; switch (String(version2)) { case "4": expectedSubnet = v4Subnet; break; case "6": expectedSubnet = v6Subnet; break; default: expectedSubnet = (0, _isIP.default)(parts[0], "6") ? v6Subnet : v4Subnet; } return parts[1] <= expectedSubnet && parts[1] >= 0; } __name(isIPRange, "isIPRange"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isDate.js var require_isDate = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isDate.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isDate; var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } __name(_slicedToArray, "_slicedToArray"); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_nonIterableRest, "_nonIterableRest"); function _iterableToArrayLimit(r, l2) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = true, o = false; try { if (i = (t = t.call(r)).next, 0 === l2) { if (Object(t) !== t) return; f = false; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l2); f = true) ; } catch (r2) { o = true, n = r2; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } __name(_iterableToArrayLimit, "_iterableToArrayLimit"); function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } __name(_arrayWithHoles, "_arrayWithHoles"); function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = /* @__PURE__ */ __name(function F2() { }, "F"); return { s: F, n: /* @__PURE__ */ __name(function n() { return _n >= r.length ? { done: true } : { done: false, value: r[_n++] }; }, "n"), e: /* @__PURE__ */ __name(function e2(r2) { throw r2; }, "e"), f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = true, u = false; return { s: /* @__PURE__ */ __name(function s() { t = t.call(r); }, "s"), n: /* @__PURE__ */ __name(function n() { var r2 = t.next(); return a = r2.done, r2; }, "n"), e: /* @__PURE__ */ __name(function e2(r2) { u = true, o = r2; }, "e"), f: /* @__PURE__ */ __name(function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } }, "f") }; } __name(_createForOfIteratorHelper, "_createForOfIteratorHelper"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); var default_date_options = { format: "YYYY/MM/DD", delimiters: ["/", "-"], strictMode: false }; function isValidFormat(format) { return /(^(y{4}|y{2})[.\/-](m{1,2})[.\/-](d{1,2})$)|(^(m{1,2})[.\/-](d{1,2})[.\/-]((y{4}|y{2})$))|(^(d{1,2})[.\/-](m{1,2})[.\/-]((y{4}|y{2})$))/gi.test(format); } __name(isValidFormat, "isValidFormat"); function zip(date, format) { var zippedArr = [], len = Math.max(date.length, format.length); for (var i = 0; i < len; i++) { zippedArr.push([date[i], format[i]]); } return zippedArr; } __name(zip, "zip"); function isDate(input, options) { if (typeof options === "string") { options = (0, _merge.default)({ format: options }, default_date_options); } else { options = (0, _merge.default)(options, default_date_options); } if (typeof input === "string" && isValidFormat(options.format)) { if (options.strictMode && input.length !== options.format.length) return false; var formatDelimiter = options.delimiters.find(function(delimiter) { return options.format.indexOf(delimiter) !== -1; }); var dateDelimiter = options.strictMode ? formatDelimiter : options.delimiters.find(function(delimiter) { return input.indexOf(delimiter) !== -1; }); var dateAndFormat = zip(input.split(dateDelimiter), options.format.toLowerCase().split(formatDelimiter)); var dateObj = {}; var _iterator = _createForOfIteratorHelper(dateAndFormat), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done; ) { var _step$value = _slicedToArray(_step.value, 2), dateWord = _step$value[0], formatWord = _step$value[1]; if (!dateWord || !formatWord || dateWord.length !== formatWord.length) { return false; } dateObj[formatWord.charAt(0)] = dateWord; } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } var fullYear = dateObj.y; if (fullYear.startsWith("-")) { return false; } if (dateObj.y.length === 2) { var parsedYear = parseInt(dateObj.y, 10); if (isNaN(parsedYear)) { return false; } var currentYearLastTwoDigits = (/* @__PURE__ */ new Date()).getFullYear() % 100; if (parsedYear < currentYearLastTwoDigits) { fullYear = "20".concat(dateObj.y); } else { fullYear = "19".concat(dateObj.y); } } var month = dateObj.m; if (dateObj.m.length === 1) { month = "0".concat(dateObj.m); } var day = dateObj.d; if (dateObj.d.length === 1) { day = "0".concat(dateObj.d); } return new Date("".concat(fullYear, "-").concat(month, "-").concat(day, "T00:00:00.000Z")).getUTCDate() === +dateObj.d; } if (!options.strictMode) { return Object.prototype.toString.call(input) === "[object Date]" && isFinite(input); } return false; } __name(isDate, "isDate"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isTime.js var require_isTime = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isTime.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isTime; var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var default_time_options = { hourFormat: "hour24", mode: "default" }; var formats = { hour24: { default: /^([01]?[0-9]|2[0-3]):([0-5][0-9])$/, withSeconds: /^([01]?[0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/, withOptionalSeconds: /^([01]?[0-9]|2[0-3]):([0-5][0-9])(?::([0-5][0-9]))?$/ }, hour12: { default: /^(0?[1-9]|1[0-2]):([0-5][0-9]) (A|P)M$/, withSeconds: /^(0?[1-9]|1[0-2]):([0-5][0-9]):([0-5][0-9]) (A|P)M$/, withOptionalSeconds: /^(0?[1-9]|1[0-2]):([0-5][0-9])(?::([0-5][0-9]))? (A|P)M$/ } }; function isTime(input, options) { options = (0, _merge.default)(options, default_time_options); if (typeof input !== "string") return false; return formats[options.hourFormat][options.mode].test(input); } __name(isTime, "isTime"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isAbaRouting.js var require_isAbaRouting = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isAbaRouting.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isAbaRouting; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var isRoutingReg = /^(?!(1[3-9])|(20)|(3[3-9])|(4[0-9])|(5[0-9])|(60)|(7[3-9])|(8[1-9])|(9[0-2])|(9[3-9]))[0-9]{9}$/; function isAbaRouting(str) { (0, _assertString.default)(str); if (!isRoutingReg.test(str)) return false; var checkSumVal = 0; for (var i = 0; i < str.length; i++) { if (i % 3 === 0) checkSumVal += str[i] * 3; else if (i % 3 === 1) checkSumVal += str[i] * 7; else checkSumVal += str[i] * 1; } return checkSumVal % 10 === 0; } __name(isAbaRouting, "isAbaRouting"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIMEI.js var require_isIMEI = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIMEI.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isIMEI; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var imeiRegexWithoutHyphens = /^[0-9]{15}$/; var imeiRegexWithHyphens = /^\d{2}-\d{6}-\d{6}-\d{1}$/; function isIMEI(str, options) { (0, _assertString.default)(str); options = options || {}; var imeiRegex = imeiRegexWithoutHyphens; if (options.allow_hyphens) { imeiRegex = imeiRegexWithHyphens; } if (!imeiRegex.test(str)) { return false; } str = str.replace(/-/g, ""); var sum = 0, mul = 2, l2 = 14; for (var i = 0; i < l2; i++) { var digit = str.substring(l2 - i - 1, l2 - i); var tp = parseInt(digit, 10) * mul; if (tp >= 10) { sum += tp % 10 + 1; } else { sum += tp; } if (mul === 1) { mul += 1; } else { mul -= 1; } } var chk = (10 - sum % 10) % 10; if (chk !== parseInt(str.substring(14, 15), 10)) { return false; } return true; } __name(isIMEI, "isIMEI"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMD5.js var require_isMD5 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMD5.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isMD5; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var md52 = /^[a-f0-9]{32}$/; function isMD5(str) { (0, _assertString.default)(str); return md52.test(str); } __name(isMD5, "isMD5"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isEmpty.js var require_isEmpty = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isEmpty.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isEmpty; var _assertString = _interopRequireDefault(require_assertString()); var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var default_is_empty_options = { ignore_whitespace: false }; function isEmpty(str, options) { (0, _assertString.default)(str); options = (0, _merge.default)(options, default_is_empty_options); return (options.ignore_whitespace ? str.trim().length : str.length) === 0; } __name(isEmpty, "isEmpty"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isULID.js var require_isULID = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isULID.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isULID; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isULID(str) { (0, _assertString.default)(str); return /^[0-7][0-9A-HJKMNP-TV-Z]{25}$/i.test(str); } __name(isULID, "isULID"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isAfter.js var require_isAfter = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isAfter.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isAfter; var _toDate = _interopRequireDefault(require_toDate()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function isAfter(date, options) { var comparisonDate = (_typeof(options) === "object" ? options.comparisonDate : options) || Date().toString(); var comparison = (0, _toDate.default)(comparisonDate); var original = (0, _toDate.default)(date); return !!(original && comparison && original > comparison); } __name(isAfter, "isAfter"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBefore.js var require_isBefore = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBefore.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isBefore; var _toDate = _interopRequireDefault(require_toDate()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function isBefore(date, options) { var comparisonDate = (_typeof(options) === "object" ? options.comparisonDate : options) || Date().toString(); var comparison = (0, _toDate.default)(comparisonDate); var original = (0, _toDate.default)(date); return !!(original && comparison && original < comparison); } __name(isBefore, "isBefore"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIn.js var require_isIn = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isIn.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isIn; var _assertString = _interopRequireDefault(require_assertString()); var _toString = _interopRequireDefault(require_toString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); function isIn(str, options) { (0, _assertString.default)(str); var i; if (Object.prototype.toString.call(options) === "[object Array]") { var array = []; for (i in options) { if ({}.hasOwnProperty.call(options, i)) { array[i] = (0, _toString.default)(options[i]); } } return array.indexOf(str) >= 0; } else if (_typeof(options) === "object") { return options.hasOwnProperty(str); } else if (options && typeof options.indexOf === "function") { return options.indexOf(str) >= 0; } return false; } __name(isIn, "isIn"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/algorithms.js var require_algorithms = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/util/algorithms.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.iso7064Check = iso7064Check; exports2.luhnCheck = luhnCheck; exports2.reverseMultiplyAndSum = reverseMultiplyAndSum; exports2.verhoeffCheck = verhoeffCheck; function iso7064Check(str) { var checkvalue = 10; for (var i = 0; i < str.length - 1; i++) { checkvalue = (parseInt(str[i], 10) + checkvalue) % 10 === 0 ? 10 * 2 % 11 : (parseInt(str[i], 10) + checkvalue) % 10 * 2 % 11; } checkvalue = checkvalue === 1 ? 0 : 11 - checkvalue; return checkvalue === parseInt(str[10], 10); } __name(iso7064Check, "iso7064Check"); function luhnCheck(str) { var checksum = 0; var second = false; for (var i = str.length - 1; i >= 0; i--) { if (second) { var product = parseInt(str[i], 10) * 2; if (product > 9) { checksum += product.toString().split("").map(function(a) { return parseInt(a, 10); }).reduce(function(a, b) { return a + b; }, 0); } else { checksum += product; } } else { checksum += parseInt(str[i], 10); } second = !second; } return checksum % 10 === 0; } __name(luhnCheck, "luhnCheck"); function reverseMultiplyAndSum(digits, base) { var total = 0; for (var i = 0; i < digits.length; i++) { total += digits[i] * (base - i); } return total; } __name(reverseMultiplyAndSum, "reverseMultiplyAndSum"); function verhoeffCheck(str) { var d_table = [[0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [1, 2, 3, 4, 0, 6, 7, 8, 9, 5], [2, 3, 4, 0, 1, 7, 8, 9, 5, 6], [3, 4, 0, 1, 2, 8, 9, 5, 6, 7], [4, 0, 1, 2, 3, 9, 5, 6, 7, 8], [5, 9, 8, 7, 6, 0, 4, 3, 2, 1], [6, 5, 9, 8, 7, 1, 0, 4, 3, 2], [7, 6, 5, 9, 8, 2, 1, 0, 4, 3], [8, 7, 6, 5, 9, 3, 2, 1, 0, 4], [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]]; var p_table = [[0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [1, 5, 7, 6, 2, 8, 3, 0, 9, 4], [5, 8, 0, 3, 7, 9, 6, 1, 4, 2], [8, 9, 1, 6, 0, 4, 3, 5, 2, 7], [9, 4, 5, 3, 1, 2, 6, 8, 7, 0], [4, 2, 8, 6, 5, 7, 3, 9, 0, 1], [2, 7, 9, 3, 8, 0, 6, 4, 1, 5], [7, 0, 4, 6, 9, 1, 3, 2, 5, 8]]; var str_copy = str.split("").reverse().join(""); var checksum = 0; for (var i = 0; i < str_copy.length; i++) { checksum = d_table[checksum][p_table[i % 8][parseInt(str_copy[i], 10)]]; } return checksum === 0; } __name(verhoeffCheck, "verhoeffCheck"); } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isTaxID.js var require_isTaxID = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isTaxID.js"(exports2, module2) { "use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isTaxID; var _assertString = _interopRequireDefault(require_assertString()); var algorithms = _interopRequireWildcard(require_algorithms()); var _isDate = _interopRequireDefault(require_isDate()); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); return (_interopRequireWildcard = /* @__PURE__ */ __name(function _interopRequireWildcard2(e2, t2) { if (!t2 && e2 && e2.__esModule) return e2; var o, i, f = { __proto__: null, default: e2 }; if (null === e2 || "object" != _typeof(e2) && "function" != typeof e2) return f; if (o = t2 ? n : r) { if (o.has(e2)) return o.get(e2); o.set(e2, f); } for (var _t in e2) "default" !== _t && {}.hasOwnProperty.call(e2, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e2, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e2[_t]); return f; }, "_interopRequireWildcard"))(e, t); } __name(_interopRequireWildcard, "_interopRequireWildcard"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); } __name(_toConsumableArray, "_toConsumableArray"); function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_nonIterableSpread, "_nonIterableSpread"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); } __name(_iterableToArray, "_iterableToArray"); function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); } __name(_arrayWithoutHoles, "_arrayWithoutHoles"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function bgBgCheck(tin) { var century_year = tin.slice(0, 2); var month = parseInt(tin.slice(2, 4), 10); if (month > 40) { month -= 40; century_year = "20".concat(century_year); } else if (month > 20) { month -= 20; century_year = "18".concat(century_year); } else { century_year = "19".concat(century_year); } if (month < 10) { month = "0".concat(month); } var date = "".concat(century_year, "/").concat(month, "/").concat(tin.slice(4, 6)); if (!(0, _isDate.default)(date, "YYYY/MM/DD")) { return false; } var digits = tin.split("").map(function(a) { return parseInt(a, 10); }); var multip_lookup = [2, 4, 8, 5, 10, 9, 7, 3, 6]; var checksum = 0; for (var i = 0; i < multip_lookup.length; i++) { checksum += digits[i] * multip_lookup[i]; } checksum = checksum % 11 === 10 ? 0 : checksum % 11; return checksum === digits[9]; } __name(bgBgCheck, "bgBgCheck"); function isCanadianSIN(input) { var digitsArray = input.split(""); var even = digitsArray.filter(function(_2, idx) { return idx % 2; }).map(function(i) { return Number(i) * 2; }).join("").split(""); var total = digitsArray.filter(function(_2, idx) { return !(idx % 2); }).concat(even).map(function(i) { return Number(i); }).reduce(function(acc, cur) { return acc + cur; }); return total % 10 === 0; } __name(isCanadianSIN, "isCanadianSIN"); function csCzCheck(tin) { tin = tin.replace(/\W/, ""); var full_year = parseInt(tin.slice(0, 2), 10); if (tin.length === 10) { if (full_year < 54) { full_year = "20".concat(full_year); } else { full_year = "19".concat(full_year); } } else { if (tin.slice(6) === "000") { return false; } if (full_year < 54) { full_year = "19".concat(full_year); } else { return false; } } if (full_year.length === 3) { full_year = [full_year.slice(0, 2), "0", full_year.slice(2)].join(""); } var month = parseInt(tin.slice(2, 4), 10); if (month > 50) { month -= 50; } if (month > 20) { if (parseInt(full_year, 10) < 2004) { return false; } month -= 20; } if (month < 10) { month = "0".concat(month); } var date = "".concat(full_year, "/").concat(month, "/").concat(tin.slice(4, 6)); if (!(0, _isDate.default)(date, "YYYY/MM/DD")) { return false; } if (tin.length === 10) { if (parseInt(tin, 10) % 11 !== 0) { var checkdigit = parseInt(tin.slice(0, 9), 10) % 11; if (parseInt(full_year, 10) < 1986 && checkdigit === 10) { if (parseInt(tin.slice(9), 10) !== 0) { return false; } } else { return false; } } } return true; } __name(csCzCheck, "csCzCheck"); function deAtCheck(tin) { return algorithms.luhnCheck(tin); } __name(deAtCheck, "deAtCheck"); function deDeCheck(tin) { var digits = tin.split("").map(function(a) { return parseInt(a, 10); }); var occurrences = []; for (var i = 0; i < digits.length - 1; i++) { occurrences.push(""); for (var j = 0; j < digits.length - 1; j++) { if (digits[i] === digits[j]) { occurrences[i] += j; } } } occurrences = occurrences.filter(function(a) { return a.length > 1; }); if (occurrences.length !== 2 && occurrences.length !== 3) { return false; } if (occurrences[0].length === 3) { var trip_locations = occurrences[0].split("").map(function(a) { return parseInt(a, 10); }); var recurrent = 0; for (var _i = 0; _i < trip_locations.length - 1; _i++) { if (trip_locations[_i] + 1 === trip_locations[_i + 1]) { recurrent += 1; } } if (recurrent === 2) { return false; } } return algorithms.iso7064Check(tin); } __name(deDeCheck, "deDeCheck"); function dkDkCheck(tin) { tin = tin.replace(/\W/, ""); var year = parseInt(tin.slice(4, 6), 10); var century_digit = tin.slice(6, 7); switch (century_digit) { case "0": case "1": case "2": case "3": year = "19".concat(year); break; case "4": case "9": if (year < 37) { year = "20".concat(year); } else { year = "19".concat(year); } break; default: if (year < 37) { year = "20".concat(year); } else if (year > 58) { year = "18".concat(year); } else { return false; } break; } if (year.length === 3) { year = [year.slice(0, 2), "0", year.slice(2)].join(""); } var date = "".concat(year, "/").concat(tin.slice(2, 4), "/").concat(tin.slice(0, 2)); if (!(0, _isDate.default)(date, "YYYY/MM/DD")) { return false; } var digits = tin.split("").map(function(a) { return parseInt(a, 10); }); var checksum = 0; var weight = 4; for (var i = 0; i < 9; i++) { checksum += digits[i] * weight; weight -= 1; if (weight === 1) { weight = 7; } } checksum %= 11; if (checksum === 1) { return false; } return checksum === 0 ? digits[9] === 0 : digits[9] === 11 - checksum; } __name(dkDkCheck, "dkDkCheck"); function elCyCheck(tin) { var digits = tin.slice(0, 8).split("").map(function(a) { return parseInt(a, 10); }); var checksum = 0; for (var i = 1; i < digits.length; i += 2) { checksum += digits[i]; } for (var _i2 = 0; _i2 < digits.length; _i2 += 2) { if (digits[_i2] < 2) { checksum += 1 - digits[_i2]; } else { checksum += 2 * (digits[_i2] - 2) + 5; if (digits[_i2] > 4) { checksum += 2; } } } return String.fromCharCode(checksum % 26 + 65) === tin.charAt(8); } __name(elCyCheck, "elCyCheck"); function elGrCheck(tin) { var digits = tin.split("").map(function(a) { return parseInt(a, 10); }); var checksum = 0; for (var i = 0; i < 8; i++) { checksum += digits[i] * Math.pow(2, 8 - i); } return checksum % 11 % 10 === digits[8]; } __name(elGrCheck, "elGrCheck"); function enIeCheck(tin) { var checksum = algorithms.reverseMultiplyAndSum(tin.split("").slice(0, 7).map(function(a) { return parseInt(a, 10); }), 8); if (tin.length === 9 && tin[8] !== "W") { checksum += (tin[8].charCodeAt(0) - 64) * 9; } checksum %= 23; if (checksum === 0) { return tin[7].toUpperCase() === "W"; } return tin[7].toUpperCase() === String.fromCharCode(64 + checksum); } __name(enIeCheck, "enIeCheck"); var enUsCampusPrefix = { andover: ["10", "12"], atlanta: ["60", "67"], austin: ["50", "53"], brookhaven: ["01", "02", "03", "04", "05", "06", "11", "13", "14", "16", "21", "22", "23", "25", "34", "51", "52", "54", "55", "56", "57", "58", "59", "65"], cincinnati: ["30", "32", "35", "36", "37", "38", "61"], fresno: ["15", "24"], internet: ["20", "26", "27", "45", "46", "47"], kansas: ["40", "44"], memphis: ["94", "95"], ogden: ["80", "90"], philadelphia: ["33", "39", "41", "42", "43", "46", "48", "62", "63", "64", "66", "68", "71", "72", "73", "74", "75", "76", "77", "81", "82", "83", "84", "85", "86", "87", "88", "91", "92", "93", "98", "99"], sba: ["31"] }; function enUsGetPrefixes() { var prefixes = []; for (var location in enUsCampusPrefix) { if (enUsCampusPrefix.hasOwnProperty(location)) { prefixes.push.apply(prefixes, _toConsumableArray(enUsCampusPrefix[location])); } } return prefixes; } __name(enUsGetPrefixes, "enUsGetPrefixes"); function enUsCheck(tin) { return enUsGetPrefixes().indexOf(tin.slice(0, 2)) !== -1; } __name(enUsCheck, "enUsCheck"); function esArCheck(tin) { var accum = 0; var digits = tin.split(""); var digit = parseInt(digits.pop(), 10); for (var i = 0; i < digits.length; i++) { accum += digits[9 - i] * (2 + i % 6); } var verif = 11 - accum % 11; if (verif === 11) { verif = 0; } else if (verif === 10) { verif = 9; } return digit === verif; } __name(esArCheck, "esArCheck"); function esEsCheck(tin) { var chars = tin.toUpperCase().split(""); if (isNaN(parseInt(chars[0], 10)) && chars.length > 1) { var lead_replace = 0; switch (chars[0]) { case "Y": lead_replace = 1; break; case "Z": lead_replace = 2; break; default: } chars.splice(0, 1, lead_replace); } else { while (chars.length < 9) { chars.unshift(0); } } var lookup = ["T", "R", "W", "A", "G", "M", "Y", "F", "P", "D", "X", "B", "N", "J", "Z", "S", "Q", "V", "H", "L", "C", "K", "E"]; chars = chars.join(""); var checksum = parseInt(chars.slice(0, 8), 10) % 23; return chars[8] === lookup[checksum]; } __name(esEsCheck, "esEsCheck"); function etEeCheck(tin) { var full_year = tin.slice(1, 3); var century_digit = tin.slice(0, 1); switch (century_digit) { case "1": case "2": full_year = "18".concat(full_year); break; case "3": case "4": full_year = "19".concat(full_year); break; default: full_year = "20".concat(full_year); break; } var date = "".concat(full_year, "/").concat(tin.slice(3, 5), "/").concat(tin.slice(5, 7)); if (!(0, _isDate.default)(date, "YYYY/MM/DD")) { return false; } var digits = tin.split("").map(function(a) { return parseInt(a, 10); }); var checksum = 0; var weight = 1; for (var i = 0; i < 10; i++) { checksum += digits[i] * weight; weight += 1; if (weight === 10) { weight = 1; } } if (checksum % 11 === 10) { checksum = 0; weight = 3; for (var _i3 = 0; _i3 < 10; _i3++) { checksum += digits[_i3] * weight; weight += 1; if (weight === 10) { weight = 1; } } if (checksum % 11 === 10) { return digits[10] === 0; } } return checksum % 11 === digits[10]; } __name(etEeCheck, "etEeCheck"); function fiFiCheck(tin) { var full_year = tin.slice(4, 6); var century_symbol = tin.slice(6, 7); switch (century_symbol) { case "+": full_year = "18".concat(full_year); break; case "-": full_year = "19".concat(full_year); break; default: full_year = "20".concat(full_year); break; } var date = "".concat(full_year, "/").concat(tin.slice(2, 4), "/").concat(tin.slice(0, 2)); if (!(0, _isDate.default)(date, "YYYY/MM/DD")) { return false; } var checksum = parseInt(tin.slice(0, 6) + tin.slice(7, 10), 10) % 31; if (checksum < 10) { return checksum === parseInt(tin.slice(10), 10); } checksum -= 10; var letters_lookup = ["A", "B", "C", "D", "E", "F", "H", "J", "K", "L", "M", "N", "P", "R", "S", "T", "U", "V", "W", "X", "Y"]; return letters_lookup[checksum] === tin.slice(10); } __name(fiFiCheck, "fiFiCheck"); function frBeCheck(tin) { if (tin.slice(2, 4) !== "00" || tin.slice(4, 6) !== "00") { var date = "".concat(tin.slice(0, 2), "/").concat(tin.slice(2, 4), "/").concat(tin.slice(4, 6)); if (!(0, _isDate.default)(date, "YY/MM/DD")) { return false; } } var checksum = 97 - parseInt(tin.slice(0, 9), 10) % 97; var checkdigits = parseInt(tin.slice(9, 11), 10); if (checksum !== checkdigits) { checksum = 97 - parseInt("2".concat(tin.slice(0, 9)), 10) % 97; if (checksum !== checkdigits) { return false; } } return true; } __name(frBeCheck, "frBeCheck"); function frFrCheck(tin) { tin = tin.replace(/\s/g, ""); var checksum = parseInt(tin.slice(0, 10), 10) % 511; var checkdigits = parseInt(tin.slice(10, 13), 10); return checksum === checkdigits; } __name(frFrCheck, "frFrCheck"); function frLuCheck(tin) { var date = "".concat(tin.slice(0, 4), "/").concat(tin.slice(4, 6), "/").concat(tin.slice(6, 8)); if (!(0, _isDate.default)(date, "YYYY/MM/DD")) { return false; } if (!algorithms.luhnCheck(tin.slice(0, 12))) { return false; } return algorithms.verhoeffCheck("".concat(tin.slice(0, 11)).concat(tin[12])); } __name(frLuCheck, "frLuCheck"); function hrHrCheck(tin) { return algorithms.iso7064Check(tin); } __name(hrHrCheck, "hrHrCheck"); function huHuCheck(tin) { var digits = tin.split("").map(function(a) { return parseInt(a, 10); }); var checksum = 8; for (var i = 1; i < 9; i++) { checksum += digits[i] * (i + 1); } return checksum % 11 === digits[9]; } __name(huHuCheck, "huHuCheck"); function itItNameCheck(name) { var vowelflag = false; var xflag = false; for (var i = 0; i < 3; i++) { if (!vowelflag && /[AEIOU]/.test(name[i])) { vowelflag = true; } else if (!xflag && vowelflag && name[i] === "X") { xflag = true; } else if (i > 0) { if (vowelflag && !xflag) { if (!/[AEIOU]/.test(name[i])) { return false; } } if (xflag) { if (!/X/.test(name[i])) { return false; } } } } return true; } __name(itItNameCheck, "itItNameCheck"); function itItCheck(tin) { var chars = tin.toUpperCase().split(""); if (!itItNameCheck(chars.slice(0, 3))) { return false; } if (!itItNameCheck(chars.slice(3, 6))) { return false; } var number_locations = [6, 7, 9, 10, 12, 13, 14]; var number_replace = { L: "0", M: "1", N: "2", P: "3", Q: "4", R: "5", S: "6", T: "7", U: "8", V: "9" }; for (var _i4 = 0, _number_locations = number_locations; _i4 < _number_locations.length; _i4++) { var i = _number_locations[_i4]; if (chars[i] in number_replace) { chars.splice(i, 1, number_replace[chars[i]]); } } var month_replace = { A: "01", B: "02", C: "03", D: "04", E: "05", H: "06", L: "07", M: "08", P: "09", R: "10", S: "11", T: "12" }; var month = month_replace[chars[8]]; var day = parseInt(chars[9] + chars[10], 10); if (day > 40) { day -= 40; } if (day < 10) { day = "0".concat(day); } var date = "".concat(chars[6]).concat(chars[7], "/").concat(month, "/").concat(day); if (!(0, _isDate.default)(date, "YY/MM/DD")) { return false; } var checksum = 0; for (var _i5 = 1; _i5 < chars.length - 1; _i5 += 2) { var char_to_int = parseInt(chars[_i5], 10); if (isNaN(char_to_int)) { char_to_int = chars[_i5].charCodeAt(0) - 65; } checksum += char_to_int; } var odd_convert = { // Maps of characters at odd places A: 1, B: 0, C: 5, D: 7, E: 9, F: 13, G: 15, H: 17, I: 19, J: 21, K: 2, L: 4, M: 18, N: 20, O: 11, P: 3, Q: 6, R: 8, S: 12, T: 14, U: 16, V: 10, W: 22, X: 25, Y: 24, Z: 23, 0: 1, 1: 0 }; for (var _i6 = 0; _i6 < chars.length - 1; _i6 += 2) { var _char_to_int = 0; if (chars[_i6] in odd_convert) { _char_to_int = odd_convert[chars[_i6]]; } else { var multiplier = parseInt(chars[_i6], 10); _char_to_int = 2 * multiplier + 1; if (multiplier > 4) { _char_to_int += 2; } } checksum += _char_to_int; } if (String.fromCharCode(65 + checksum % 26) !== chars[15]) { return false; } return true; } __name(itItCheck, "itItCheck"); function lvLvCheck(tin) { tin = tin.replace(/\W/, ""); var day = tin.slice(0, 2); if (day !== "32") { var month = tin.slice(2, 4); if (month !== "00") { var full_year = tin.slice(4, 6); switch (tin[6]) { case "0": full_year = "18".concat(full_year); break; case "1": full_year = "19".concat(full_year); break; default: full_year = "20".concat(full_year); break; } var date = "".concat(full_year, "/").concat(tin.slice(2, 4), "/").concat(day); if (!(0, _isDate.default)(date, "YYYY/MM/DD")) { return false; } } var checksum = 1101; var multip_lookup = [1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; for (var i = 0; i < tin.length - 1; i++) { checksum -= parseInt(tin[i], 10) * multip_lookup[i]; } return parseInt(tin[10], 10) === checksum % 11; } return true; } __name(lvLvCheck, "lvLvCheck"); function mtMtCheck(tin) { if (tin.length !== 9) { var chars = tin.toUpperCase().split(""); while (chars.length < 8) { chars.unshift(0); } switch (tin[7]) { case "A": case "P": if (parseInt(chars[6], 10) === 0) { return false; } break; default: { var first_part = parseInt(chars.join("").slice(0, 5), 10); if (first_part > 32e3) { return false; } var second_part = parseInt(chars.join("").slice(5, 7), 10); if (first_part === second_part) { return false; } } } } return true; } __name(mtMtCheck, "mtMtCheck"); function nlNlCheck(tin) { return algorithms.reverseMultiplyAndSum(tin.split("").slice(0, 8).map(function(a) { return parseInt(a, 10); }), 9) % 11 === parseInt(tin[8], 10); } __name(nlNlCheck, "nlNlCheck"); function plPlCheck(tin) { if (tin.length === 10) { var lookup = [6, 5, 7, 2, 3, 4, 5, 6, 7]; var _checksum = 0; for (var i = 0; i < lookup.length; i++) { _checksum += parseInt(tin[i], 10) * lookup[i]; } _checksum %= 11; if (_checksum === 10) { return false; } return _checksum === parseInt(tin[9], 10); } var full_year = tin.slice(0, 2); var month = parseInt(tin.slice(2, 4), 10); if (month > 80) { full_year = "18".concat(full_year); month -= 80; } else if (month > 60) { full_year = "22".concat(full_year); month -= 60; } else if (month > 40) { full_year = "21".concat(full_year); month -= 40; } else if (month > 20) { full_year = "20".concat(full_year); month -= 20; } else { full_year = "19".concat(full_year); } if (month < 10) { month = "0".concat(month); } var date = "".concat(full_year, "/").concat(month, "/").concat(tin.slice(4, 6)); if (!(0, _isDate.default)(date, "YYYY/MM/DD")) { return false; } var checksum = 0; var multiplier = 1; for (var _i7 = 0; _i7 < tin.length - 1; _i7++) { checksum += parseInt(tin[_i7], 10) * multiplier % 10; multiplier += 2; if (multiplier > 10) { multiplier = 1; } else if (multiplier === 5) { multiplier += 2; } } checksum = 10 - checksum % 10; return checksum === parseInt(tin[10], 10); } __name(plPlCheck, "plPlCheck"); function cnpjCharToValue(char) { return char.charCodeAt(0) - 48; } __name(cnpjCharToValue, "cnpjCharToValue"); function validateCnpj(cnpj) { var identifiers = cnpj.substring(0, 12).toUpperCase(); var checkDigits = cnpj.substring(12); if (/^(.)\1+$/.test(cnpj.toUpperCase())) { return false; } var sum = 0; var weight = 5; for (var i = 0; i < 12; i++) { sum += cnpjCharToValue(identifiers.charAt(i)) * weight; weight = weight === 2 ? 9 : weight - 1; } var remainder = sum % 11; var firstDV = remainder < 2 ? 0 : 11 - remainder; if (firstDV !== parseInt(checkDigits.charAt(0), 10)) { return false; } sum = 0; weight = 6; for (var _i8 = 0; _i8 < 12; _i8++) { sum += cnpjCharToValue(identifiers.charAt(_i8)) * weight; weight = weight === 2 ? 9 : weight - 1; } sum += firstDV * 2; remainder = sum % 11; var secondDV = remainder < 2 ? 0 : 11 - remainder; return secondDV === parseInt(checkDigits.charAt(1), 10); } __name(validateCnpj, "validateCnpj"); function ptBrCheck(tin) { tin = tin.replace(/[.\-/]/g, ""); if (tin.length === 11) { var sum; var remainder; sum = 0; if ( // Reject known invalid CPFs tin === "11111111111" || tin === "22222222222" || tin === "33333333333" || tin === "44444444444" || tin === "55555555555" || tin === "66666666666" || tin === "77777777777" || tin === "88888888888" || tin === "99999999999" || tin === "00000000000" ) return false; for (var i = 1; i <= 9; i++) sum += parseInt(tin.substring(i - 1, i), 10) * (11 - i); remainder = sum * 10 % 11; if (remainder === 10) remainder = 0; if (remainder !== parseInt(tin.substring(9, 10), 10)) return false; sum = 0; for (var _i9 = 1; _i9 <= 10; _i9++) sum += parseInt(tin.substring(_i9 - 1, _i9), 10) * (12 - _i9); remainder = sum * 10 % 11; if (remainder === 10) remainder = 0; if (remainder !== parseInt(tin.substring(10, 11), 10)) return false; return true; } return validateCnpj(tin); } __name(ptBrCheck, "ptBrCheck"); function ptPtCheck(tin) { var checksum = 11 - algorithms.reverseMultiplyAndSum(tin.split("").slice(0, 8).map(function(a) { return parseInt(a, 10); }), 9) % 11; if (checksum > 9) { return parseInt(tin[8], 10) === 0; } return checksum === parseInt(tin[8], 10); } __name(ptPtCheck, "ptPtCheck"); function roRoCheck(tin) { if (tin.slice(0, 4) !== "9000") { var full_year = tin.slice(1, 3); switch (tin[0]) { case "1": case "2": full_year = "19".concat(full_year); break; case "3": case "4": full_year = "18".concat(full_year); break; case "5": case "6": full_year = "20".concat(full_year); break; default: } var date = "".concat(full_year, "/").concat(tin.slice(3, 5), "/").concat(tin.slice(5, 7)); if (date.length === 8) { if (!(0, _isDate.default)(date, "YY/MM/DD")) { return false; } } else if (!(0, _isDate.default)(date, "YYYY/MM/DD")) { return false; } var digits = tin.split("").map(function(a) { return parseInt(a, 10); }); var multipliers = [2, 7, 9, 1, 4, 6, 3, 5, 8, 2, 7, 9]; var checksum = 0; for (var i = 0; i < multipliers.length; i++) { checksum += digits[i] * multipliers[i]; } if (checksum % 11 === 10) { return digits[12] === 1; } return digits[12] === checksum % 11; } return true; } __name(roRoCheck, "roRoCheck"); function skSkCheck(tin) { if (tin.length === 9) { tin = tin.replace(/\W/, ""); if (tin.slice(6) === "000") { return false; } var full_year = parseInt(tin.slice(0, 2), 10); if (full_year > 53) { return false; } if (full_year < 10) { full_year = "190".concat(full_year); } else { full_year = "19".concat(full_year); } var month = parseInt(tin.slice(2, 4), 10); if (month > 50) { month -= 50; } if (month < 10) { month = "0".concat(month); } var date = "".concat(full_year, "/").concat(month, "/").concat(tin.slice(4, 6)); if (!(0, _isDate.default)(date, "YYYY/MM/DD")) { return false; } } return true; } __name(skSkCheck, "skSkCheck"); function slSiCheck(tin) { var checksum = 11 - algorithms.reverseMultiplyAndSum(tin.split("").slice(0, 7).map(function(a) { return parseInt(a, 10); }), 8) % 11; if (checksum === 10) { return parseInt(tin[7], 10) === 0; } return checksum === parseInt(tin[7], 10); } __name(slSiCheck, "slSiCheck"); function svSeCheck(tin) { var tin_copy = tin.slice(0); if (tin.length > 11) { tin_copy = tin_copy.slice(2); } var full_year = ""; var month = tin_copy.slice(2, 4); var day = parseInt(tin_copy.slice(4, 6), 10); if (tin.length > 11) { full_year = tin.slice(0, 4); } else { full_year = tin.slice(0, 2); if (tin.length === 11 && day < 60) { var current_year = (/* @__PURE__ */ new Date()).getFullYear().toString(); var current_century = parseInt(current_year.slice(0, 2), 10); current_year = parseInt(current_year, 10); if (tin[6] === "-") { if (parseInt("".concat(current_century).concat(full_year), 10) > current_year) { full_year = "".concat(current_century - 1).concat(full_year); } else { full_year = "".concat(current_century).concat(full_year); } } else { full_year = "".concat(current_century - 1).concat(full_year); if (current_year - parseInt(full_year, 10) < 100) { return false; } } } } if (day > 60) { day -= 60; } if (day < 10) { day = "0".concat(day); } var date = "".concat(full_year, "/").concat(month, "/").concat(day); if (date.length === 8) { if (!(0, _isDate.default)(date, "YY/MM/DD")) { return false; } } else if (!(0, _isDate.default)(date, "YYYY/MM/DD")) { return false; } return algorithms.luhnCheck(tin.replace(/\W/, "")); } __name(svSeCheck, "svSeCheck"); function ukUaCheck(tin) { var digits = tin.split("").map(function(a) { return parseInt(a, 10); }); var multipliers = [-1, 5, 7, 9, 4, 6, 10, 5, 7]; var checksum = 0; for (var i = 0; i < multipliers.length; i++) { checksum += digits[i] * multipliers[i]; } return checksum % 11 === 10 ? digits[9] === 0 : digits[9] === checksum % 11; } __name(ukUaCheck, "ukUaCheck"); var taxIdFormat = { "bg-BG": /^\d{10}$/, "cs-CZ": /^\d{6}\/{0,1}\d{3,4}$/, "de-AT": /^\d{9}$/, "de-DE": /^[1-9]\d{10}$/, "dk-DK": /^\d{6}-{0,1}\d{4}$/, "el-CY": /^[09]\d{7}[A-Z]$/, "el-GR": /^([0-4]|[7-9])\d{8}$/, "en-CA": /^\d{9}$/, "en-GB": /^\d{10}$|^(?!GB|NK|TN|ZZ)(?![DFIQUV])[A-Z](?![DFIQUVO])[A-Z]\d{6}[ABCD ]$/i, "en-IE": /^\d{7}[A-W][A-IW]{0,1}$/i, "en-US": /^\d{2}[- ]{0,1}\d{7}$/, "es-AR": /(20|23|24|27|30|33|34)[0-9]{8}[0-9]/, "es-ES": /^(\d{0,8}|[XYZKLM]\d{7})[A-HJ-NP-TV-Z]$/i, "et-EE": /^[1-6]\d{6}(00[1-9]|0[1-9][0-9]|[1-6][0-9]{2}|70[0-9]|710)\d$/, "fi-FI": /^\d{6}[-+A]\d{3}[0-9A-FHJ-NPR-Y]$/i, "fr-BE": /^\d{11}$/, "fr-FR": /^[0-3]\d{12}$|^[0-3]\d\s\d{2}(\s\d{3}){3}$/, // Conforms both to official spec and provided example "fr-LU": /^\d{13}$/, "hr-HR": /^\d{11}$/, "hu-HU": /^8\d{9}$/, "it-IT": /^[A-Z]{6}[L-NP-V0-9]{2}[A-EHLMPRST][L-NP-V0-9]{2}[A-ILMZ][L-NP-V0-9]{3}[A-Z]$/i, "lv-LV": /^\d{6}-{0,1}\d{5}$/, // Conforms both to DG TAXUD spec and original research "mt-MT": /^\d{3,7}[APMGLHBZ]$|^([1-8])\1\d{7}$/i, "nl-NL": /^\d{9}$/, "pl-PL": /^\d{10,11}$/, "pt-BR": /(?:^\d{3}\.\d{3}\.\d{3}-\d{2}$)|(?:^\d{11}$)|(?:^[A-Z0-9]{12}\d{2}$)/i, "pt-PT": /^\d{9}$/, "ro-RO": /^\d{13}$/, "sk-SK": /^\d{6}\/{0,1}\d{3,4}$/, "sl-SI": /^[1-9]\d{7}$/, "sv-SE": /^(\d{6}[-+]{0,1}\d{4}|(18|19|20)\d{6}[-+]{0,1}\d{4})$/, "uk-UA": /^\d{10}$/ }; taxIdFormat["lb-LU"] = taxIdFormat["fr-LU"]; taxIdFormat["lt-LT"] = taxIdFormat["et-EE"]; taxIdFormat["nl-BE"] = taxIdFormat["fr-BE"]; taxIdFormat["fr-CA"] = taxIdFormat["en-CA"]; var taxIdCheck = { "bg-BG": bgBgCheck, "cs-CZ": csCzCheck, "de-AT": deAtCheck, "de-DE": deDeCheck, "dk-DK": dkDkCheck, "el-CY": elCyCheck, "el-GR": elGrCheck, "en-CA": isCanadianSIN, "en-IE": enIeCheck, "en-US": enUsCheck, "es-AR": esArCheck, "es-ES": esEsCheck, "et-EE": etEeCheck, "fi-FI": fiFiCheck, "fr-BE": frBeCheck, "fr-FR": frFrCheck, "fr-LU": frLuCheck, "hr-HR": hrHrCheck, "hu-HU": huHuCheck, "it-IT": itItCheck, "lv-LV": lvLvCheck, "mt-MT": mtMtCheck, "nl-NL": nlNlCheck, "pl-PL": plPlCheck, "pt-BR": ptBrCheck, "pt-PT": ptPtCheck, "ro-RO": roRoCheck, "sk-SK": skSkCheck, "sl-SI": slSiCheck, "sv-SE": svSeCheck, "uk-UA": ukUaCheck }; taxIdCheck["lb-LU"] = taxIdCheck["fr-LU"]; taxIdCheck["lt-LT"] = taxIdCheck["et-EE"]; taxIdCheck["nl-BE"] = taxIdCheck["fr-BE"]; taxIdCheck["fr-CA"] = taxIdCheck["en-CA"]; var allsymbols = /[-\\\/!@#$%\^&\*\(\)\+\=\[\]]+/g; var sanitizeRegexes = { "de-AT": allsymbols, "de-DE": /[\/\\]/g, "fr-BE": allsymbols }; sanitizeRegexes["nl-BE"] = sanitizeRegexes["fr-BE"]; function isTaxID(str) { var locale = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "en-US"; (0, _assertString.default)(str); var strcopy = str.slice(0); if (locale in taxIdFormat) { if (locale in sanitizeRegexes) { strcopy = strcopy.replace(sanitizeRegexes[locale], ""); } if (!taxIdFormat[locale].test(strcopy)) { return false; } if (locale in taxIdCheck) { return taxIdCheck[locale](strcopy); } return true; } throw new Error("Invalid locale '".concat(locale, "'")); } __name(isTaxID, "isTaxID"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO6346.js var require_isISO6346 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO6346.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isFreightContainerID = void 0; exports2.isISO6346 = isISO6346; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var isISO6346Str = /^[A-Z]{3}(U[0-9]{7})|([J,Z][0-9]{6,7})$/; var isDigit = /^[0-9]$/; function isISO6346(str) { (0, _assertString.default)(str); str = str.toUpperCase(); if (!isISO6346Str.test(str)) return false; if (str.length === 11) { var sum = 0; for (var i = 0; i < str.length - 1; i++) { if (!isDigit.test(str[i])) { var convertedCode = void 0; var letterCode = str.charCodeAt(i) - 55; if (letterCode < 11) convertedCode = letterCode; else if (letterCode >= 11 && letterCode <= 20) convertedCode = 12 + letterCode % 11; else if (letterCode >= 21 && letterCode <= 30) convertedCode = 23 + letterCode % 21; else convertedCode = 34 + letterCode % 31; sum += convertedCode * Math.pow(2, i); } else sum += str[i] * Math.pow(2, i); } var checkSumDigit = sum % 11; if (checkSumDigit === 10) checkSumDigit = 0; return Number(str[str.length - 1]) === checkSumDigit; } return true; } __name(isISO6346, "isISO6346"); var isFreightContainerID = exports2.isFreightContainerID = isISO6346; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO6391.js var require_isISO6391 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO6391.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isISO6391; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var isISO6391Set = /* @__PURE__ */ new Set(["aa", "ab", "ae", "af", "ak", "am", "an", "ar", "as", "av", "ay", "az", "az", "ba", "be", "bg", "bh", "bi", "bm", "bn", "bo", "br", "bs", "ca", "ce", "ch", "co", "cr", "cs", "cu", "cv", "cy", "da", "de", "dv", "dz", "ee", "el", "en", "eo", "es", "et", "eu", "fa", "ff", "fi", "fj", "fo", "fr", "fy", "ga", "gd", "gl", "gn", "gu", "gv", "ha", "he", "hi", "ho", "hr", "ht", "hu", "hy", "hz", "ia", "id", "ie", "ig", "ii", "ik", "io", "is", "it", "iu", "ja", "jv", "ka", "kg", "ki", "kj", "kk", "kl", "km", "kn", "ko", "kr", "ks", "ku", "kv", "kw", "ky", "la", "lb", "lg", "li", "ln", "lo", "lt", "lu", "lv", "mg", "mh", "mi", "mk", "ml", "mn", "mr", "ms", "mt", "my", "na", "nb", "nd", "ne", "ng", "nl", "nn", "no", "nr", "nv", "ny", "oc", "oj", "om", "or", "os", "pa", "pi", "pl", "ps", "pt", "qu", "rm", "rn", "ro", "ru", "rw", "sa", "sc", "sd", "se", "sg", "si", "sk", "sl", "sm", "sn", "so", "sq", "sr", "ss", "st", "su", "sv", "sw", "ta", "te", "tg", "th", "ti", "tk", "tl", "tn", "to", "tr", "ts", "tt", "tw", "ty", "ug", "uk", "ur", "uz", "ve", "vi", "vo", "wa", "wo", "xh", "yi", "yo", "za", "zh", "zu"]); function isISO6391(str) { (0, _assertString.default)(str); return isISO6391Set.has(str); } __name(isISO6391, "isISO6391"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO15924.js var require_isISO15924 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO15924.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ScriptCodes = void 0; exports2.default = isISO15924; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var validISO15924Codes = /* @__PURE__ */ new Set(["Adlm", "Afak", "Aghb", "Ahom", "Arab", "Aran", "Armi", "Armn", "Avst", "Bali", "Bamu", "Bass", "Batk", "Beng", "Bhks", "Blis", "Bopo", "Brah", "Brai", "Bugi", "Buhd", "Cakm", "Cans", "Cari", "Cham", "Cher", "Chis", "Chrs", "Cirt", "Copt", "Cpmn", "Cprt", "Cyrl", "Cyrs", "Deva", "Diak", "Dogr", "Dsrt", "Dupl", "Egyd", "Egyh", "Egyp", "Elba", "Elym", "Ethi", "Gara", "Geok", "Geor", "Glag", "Gong", "Gonm", "Goth", "Gran", "Grek", "Gujr", "Gukh", "Guru", "Hanb", "Hang", "Hani", "Hano", "Hans", "Hant", "Hatr", "Hebr", "Hira", "Hluw", "Hmng", "Hmnp", "Hrkt", "Hung", "Inds", "Ital", "Jamo", "Java", "Jpan", "Jurc", "Kali", "Kana", "Kawi", "Khar", "Khmr", "Khoj", "Kitl", "Kits", "Knda", "Kore", "Kpel", "Krai", "Kthi", "Lana", "Laoo", "Latf", "Latg", "Latn", "Leke", "Lepc", "Limb", "Lina", "Linb", "Lisu", "Loma", "Lyci", "Lydi", "Mahj", "Maka", "Mand", "Mani", "Marc", "Maya", "Medf", "Mend", "Merc", "Mero", "Mlym", "Modi", "Mong", "Moon", "Mroo", "Mtei", "Mult", "Mymr", "Nagm", "Nand", "Narb", "Nbat", "Newa", "Nkdb", "Nkgb", "Nkoo", "Nshu", "Ogam", "Olck", "Onao", "Orkh", "Orya", "Osge", "Osma", "Ougr", "Palm", "Pauc", "Pcun", "Pelm", "Perm", "Phag", "Phli", "Phlp", "Phlv", "Phnx", "Plrd", "Piqd", "Prti", "Psin", "Qaaa", "Qaab", "Qaac", "Qaad", "Qaae", "Qaaf", "Qaag", "Qaah", "Qaai", "Qaaj", "Qaak", "Qaal", "Qaam", "Qaan", "Qaao", "Qaap", "Qaaq", "Qaar", "Qaas", "Qaat", "Qaau", "Qaav", "Qaaw", "Qaax", "Qaay", "Qaaz", "Qaba", "Qabb", "Qabc", "Qabd", "Qabe", "Qabf", "Qabg", "Qabh", "Qabi", "Qabj", "Qabk", "Qabl", "Qabm", "Qabn", "Qabo", "Qabp", "Qabq", "Qabr", "Qabs", "Qabt", "Qabu", "Qabv", "Qabw", "Qabx", "Ranj", "Rjng", "Rohg", "Roro", "Runr", "Samr", "Sara", "Sarb", "Saur", "Sgnw", "Shaw", "Shrd", "Shui", "Sidd", "Sidt", "Sind", "Sinh", "Sogd", "Sogo", "Sora", "Soyo", "Sund", "Sunu", "Sylo", "Syrc", "Syre", "Syrj", "Syrn", "Tagb", "Takr", "Tale", "Talu", "Taml", "Tang", "Tavt", "Tayo", "Telu", "Teng", "Tfng", "Tglg", "Thaa", "Thai", "Tibt", "Tirh", "Tnsa", "Todr", "Tols", "Toto", "Tutg", "Ugar", "Vaii", "Visp", "Vith", "Wara", "Wcho", "Wole", "Xpeo", "Xsux", "Yezi", "Yiii", "Zanb", "Zinh", "Zmth", "Zsye", "Zsym", "Zxxx", "Zyyy", "Zzzz"]); function isISO15924(str) { (0, _assertString.default)(str); return validISO15924Codes.has(str); } __name(isISO15924, "isISO15924"); var ScriptCodes = exports2.ScriptCodes = validISO15924Codes; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO31661Numeric.js var require_isISO31661Numeric = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO31661Numeric.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isISO31661Numeric; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var validISO31661NumericCountriesCodes = /* @__PURE__ */ new Set(["004", "008", "010", "012", "016", "020", "024", "028", "031", "032", "036", "040", "044", "048", "050", "051", "052", "056", "060", "064", "068", "070", "072", "074", "076", "084", "086", "090", "092", "096", "100", "104", "108", "112", "116", "120", "124", "132", "136", "140", "144", "148", "152", "156", "158", "162", "166", "170", "174", "175", "178", "180", "184", "188", "191", "192", "196", "203", "204", "208", "212", "214", "218", "222", "226", "231", "232", "233", "234", "238", "239", "242", "246", "248", "250", "254", "258", "260", "262", "266", "268", "270", "275", "276", "288", "292", "296", "300", "304", "308", "312", "316", "320", "324", "328", "332", "334", "336", "340", "344", "348", "352", "356", "360", "364", "368", "372", "376", "380", "384", "388", "392", "398", "400", "404", "408", "410", "414", "417", "418", "422", "426", "428", "430", "434", "438", "440", "442", "446", "450", "454", "458", "462", "466", "470", "474", "478", "480", "484", "492", "496", "498", "499", "500", "504", "508", "512", "516", "520", "524", "528", "531", "533", "534", "535", "540", "548", "554", "558", "562", "566", "570", "574", "578", "580", "581", "583", "584", "585", "586", "591", "598", "600", "604", "608", "612", "616", "620", "624", "626", "630", "634", "638", "642", "643", "646", "652", "654", "659", "660", "662", "663", "666", "670", "674", "678", "682", "686", "688", "690", "694", "702", "703", "704", "705", "706", "710", "716", "724", "728", "729", "732", "740", "744", "748", "752", "756", "760", "762", "764", "768", "772", "776", "780", "784", "788", "792", "795", "796", "798", "800", "804", "807", "818", "826", "831", "832", "833", "834", "840", "850", "854", "858", "860", "862", "876", "882", "887", "894"]); function isISO31661Numeric(str) { (0, _assertString.default)(str); return validISO31661NumericCountriesCodes.has(str); } __name(isISO31661Numeric, "isISO31661Numeric"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO4217.js var require_isISO4217 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isISO4217.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CurrencyCodes = void 0; exports2.default = isISO4217; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var validISO4217CurrencyCodes = /* @__PURE__ */ new Set(["AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BOV", "BRL", "BSD", "BTN", "BWP", "BYN", "BZD", "CAD", "CDF", "CHE", "CHF", "CHW", "CLF", "CLP", "CNY", "COP", "COU", "CRC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRU", "MUR", "MVR", "MWK", "MXN", "MXV", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLE", "SLL", "SOS", "SRD", "SSP", "STN", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "USN", "UYI", "UYU", "UYW", "UZS", "VED", "VES", "VND", "VUV", "WST", "XAF", "XAG", "XAU", "XBA", "XBB", "XBC", "XBD", "XCD", "XDR", "XOF", "XPD", "XPF", "XPT", "XSU", "XTS", "XUA", "XXX", "YER", "ZAR", "ZMW", "ZWL"]); function isISO4217(str) { (0, _assertString.default)(str); return validISO4217CurrencyCodes.has(str.toUpperCase()); } __name(isISO4217, "isISO4217"); var CurrencyCodes = exports2.CurrencyCodes = validISO4217CurrencyCodes; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBase58.js var require_isBase58 = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isBase58.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isBase58; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var base58Reg = /^[A-HJ-NP-Za-km-z1-9]*$/; function isBase58(str) { (0, _assertString.default)(str); return base58Reg.test(str); } __name(isBase58, "isBase58"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/rtrim.js var require_rtrim = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/rtrim.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = rtrim; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function rtrim(str, chars) { (0, _assertString.default)(str); if (chars) { var pattern = new RegExp("[".concat(chars.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), "]+$"), "g"); return str.replace(pattern, ""); } var strIndex = str.length - 1; while (/\s/.test(str.charAt(strIndex))) { strIndex -= 1; } return str.slice(0, strIndex + 1); } __name(rtrim, "rtrim"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/ltrim.js var require_ltrim = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/ltrim.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = ltrim; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function ltrim(str, chars) { (0, _assertString.default)(str); var pattern = chars ? new RegExp("^[".concat(chars.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), "]+"), "g") : /^\s+/g; return str.replace(pattern, ""); } __name(ltrim, "ltrim"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/trim.js var require_trim = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/trim.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = trim; var _rtrim = _interopRequireDefault(require_rtrim()); var _ltrim = _interopRequireDefault(require_ltrim()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function trim(str, chars) { return (0, _rtrim.default)((0, _ltrim.default)(str, chars), chars); } __name(trim, "trim"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMailtoURI.js var require_isMailtoURI = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isMailtoURI.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isMailtoURI; var _trim = _interopRequireDefault(require_trim()); var _isEmail = _interopRequireDefault(require_isEmail()); var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } __name(_slicedToArray, "_slicedToArray"); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_nonIterableRest, "_nonIterableRest"); function _iterableToArrayLimit(r, l2) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = true, o = false; try { if (i = (t = t.call(r)).next, 0 === l2) { if (Object(t) !== t) return; f = false; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l2); f = true) ; } catch (r2) { o = true, n = r2; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } __name(_iterableToArrayLimit, "_iterableToArrayLimit"); function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } __name(_arrayWithHoles, "_arrayWithHoles"); function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = /* @__PURE__ */ __name(function F2() { }, "F"); return { s: F, n: /* @__PURE__ */ __name(function n() { return _n >= r.length ? { done: true } : { done: false, value: r[_n++] }; }, "n"), e: /* @__PURE__ */ __name(function e2(r2) { throw r2; }, "e"), f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = true, u = false; return { s: /* @__PURE__ */ __name(function s() { t = t.call(r); }, "s"), n: /* @__PURE__ */ __name(function n() { var r2 = t.next(); return a = r2.done, r2; }, "n"), e: /* @__PURE__ */ __name(function e2(r2) { u = true, o = r2; }, "e"), f: /* @__PURE__ */ __name(function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } }, "f") }; } __name(_createForOfIteratorHelper, "_createForOfIteratorHelper"); function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function parseMailtoQueryString(queryString) { var allowedParams = /* @__PURE__ */ new Set(["subject", "body", "cc", "bcc"]), query = { cc: "", bcc: "" }; var isParseFailed = false; var queryParams = queryString.split("&"); if (queryParams.length > 4) { return false; } var _iterator = _createForOfIteratorHelper(queryParams), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done; ) { var q = _step.value; var _q$split = q.split("="), _q$split2 = _slicedToArray(_q$split, 2), key = _q$split2[0], value = _q$split2[1]; if (key && !allowedParams.has(key)) { isParseFailed = true; break; } if (value && (key === "cc" || key === "bcc")) { query[key] = value; } if (key) { allowedParams.delete(key); } } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } return isParseFailed ? false : query; } __name(parseMailtoQueryString, "parseMailtoQueryString"); function isMailtoURI(url, options) { (0, _assertString.default)(url); if (url.indexOf("mailto:") !== 0) { return false; } var _url$replace$split = url.replace("mailto:", "").split("?"), _url$replace$split2 = _slicedToArray(_url$replace$split, 2), to = _url$replace$split2[0], _url$replace$split2$ = _url$replace$split2[1], queryString = _url$replace$split2$ === void 0 ? "" : _url$replace$split2$; if (!to && !queryString) { return true; } var query = parseMailtoQueryString(queryString); if (!query) { return false; } return "".concat(to, ",").concat(query.cc, ",").concat(query.bcc).split(",").every(function(email) { email = (0, _trim.default)(email, " "); if (email) { return (0, _isEmail.default)(email, options); } return true; }); } __name(isMailtoURI, "isMailtoURI"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/escape.js var require_escape = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/escape.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = escape2; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function escape2(str) { (0, _assertString.default)(str); return str.replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(//g, ">").replace(/\//g, "/").replace(/\\/g, "\").replace(/`/g, "`"); } __name(escape2, "escape"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/unescape.js var require_unescape = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/unescape.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = unescape2; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function unescape2(str) { (0, _assertString.default)(str); return str.replace(/"/g, '"').replace(/'/g, "'").replace(/</g, "<").replace(/>/g, ">").replace(///g, "/").replace(/\/g, "\\").replace(/`/g, "`").replace(/&/g, "&"); } __name(unescape2, "unescape"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/blacklist.js var require_blacklist = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/blacklist.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = blacklist; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function blacklist(str, chars) { (0, _assertString.default)(str); return str.replace(new RegExp("[".concat(chars, "]+"), "g"), ""); } __name(blacklist, "blacklist"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/stripLow.js var require_stripLow = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/stripLow.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = stripLow; var _assertString = _interopRequireDefault(require_assertString()); var _blacklist = _interopRequireDefault(require_blacklist()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function stripLow(str, keep_new_lines) { (0, _assertString.default)(str); var chars = keep_new_lines ? "\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F" : "\\x00-\\x1F\\x7F"; return (0, _blacklist.default)(str, chars); } __name(stripLow, "stripLow"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/whitelist.js var require_whitelist = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/whitelist.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = whitelist; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function whitelist(str, chars) { (0, _assertString.default)(str); return str.replace(new RegExp("[^".concat(chars, "]+"), "g"), ""); } __name(whitelist, "whitelist"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isWhitelisted.js var require_isWhitelisted = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isWhitelisted.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isWhitelisted; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); function isWhitelisted(str, chars) { (0, _assertString.default)(str); for (var i = str.length - 1; i >= 0; i--) { if (chars.indexOf(str[i]) === -1) { return false; } } return true; } __name(isWhitelisted, "isWhitelisted"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/normalizeEmail.js var require_normalizeEmail = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/normalizeEmail.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = normalizeEmail; var _merge = _interopRequireDefault(require_merge()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var default_normalize_email_options = { // The following options apply to all email addresses // Lowercases the local part of the email address. // Please note this may violate RFC 5321 as per http://stackoverflow.com/a/9808332/192024). // The domain is always lowercased, as per RFC 1035 all_lowercase: true, // The following conversions are specific to GMail // Lowercases the local part of the GMail address (known to be case-insensitive) gmail_lowercase: true, // Removes dots from the local part of the email address, as that's ignored by GMail gmail_remove_dots: true, // Removes the subaddress (e.g. "+foo") from the email address gmail_remove_subaddress: true, // Conversts the googlemail.com domain to gmail.com gmail_convert_googlemaildotcom: true, // The following conversions are specific to Outlook.com / Windows Live / Hotmail // Lowercases the local part of the Outlook.com address (known to be case-insensitive) outlookdotcom_lowercase: true, // Removes the subaddress (e.g. "+foo") from the email address outlookdotcom_remove_subaddress: true, // The following conversions are specific to Yahoo // Lowercases the local part of the Yahoo address (known to be case-insensitive) yahoo_lowercase: true, // Removes the subaddress (e.g. "-foo") from the email address yahoo_remove_subaddress: true, // The following conversions are specific to Yandex // Lowercases the local part of the Yandex address (known to be case-insensitive) yandex_lowercase: true, // all yandex domains are equal, this explicitly sets the domain to 'yandex.ru' yandex_convert_yandexru: true, // The following conversions are specific to iCloud // Lowercases the local part of the iCloud address (known to be case-insensitive) icloud_lowercase: true, // Removes the subaddress (e.g. "+foo") from the email address icloud_remove_subaddress: true }; var icloud_domains = ["icloud.com", "me.com"]; var outlookdotcom_domains = ["hotmail.at", "hotmail.be", "hotmail.ca", "hotmail.cl", "hotmail.co.il", "hotmail.co.nz", "hotmail.co.th", "hotmail.co.uk", "hotmail.com", "hotmail.com.ar", "hotmail.com.au", "hotmail.com.br", "hotmail.com.gr", "hotmail.com.mx", "hotmail.com.pe", "hotmail.com.tr", "hotmail.com.vn", "hotmail.cz", "hotmail.de", "hotmail.dk", "hotmail.es", "hotmail.fr", "hotmail.hu", "hotmail.id", "hotmail.ie", "hotmail.in", "hotmail.it", "hotmail.jp", "hotmail.kr", "hotmail.lv", "hotmail.my", "hotmail.ph", "hotmail.pt", "hotmail.sa", "hotmail.sg", "hotmail.sk", "live.be", "live.co.uk", "live.com", "live.com.ar", "live.com.mx", "live.de", "live.es", "live.eu", "live.fr", "live.it", "live.nl", "msn.com", "outlook.at", "outlook.be", "outlook.cl", "outlook.co.il", "outlook.co.nz", "outlook.co.th", "outlook.com", "outlook.com.ar", "outlook.com.au", "outlook.com.br", "outlook.com.gr", "outlook.com.pe", "outlook.com.tr", "outlook.com.vn", "outlook.cz", "outlook.de", "outlook.dk", "outlook.es", "outlook.fr", "outlook.hu", "outlook.id", "outlook.ie", "outlook.in", "outlook.it", "outlook.jp", "outlook.kr", "outlook.lv", "outlook.my", "outlook.ph", "outlook.pt", "outlook.sa", "outlook.sg", "outlook.sk", "passport.com"]; var yahoo_domains = ["rocketmail.com", "yahoo.ca", "yahoo.co.uk", "yahoo.com", "yahoo.de", "yahoo.fr", "yahoo.in", "yahoo.it", "ymail.com"]; var yandex_domains = ["yandex.ru", "yandex.ua", "yandex.kz", "yandex.com", "yandex.by", "ya.ru"]; function dotsReplacer(match) { if (match.length > 1) { return match; } return ""; } __name(dotsReplacer, "dotsReplacer"); function normalizeEmail(email, options) { options = (0, _merge.default)(options, default_normalize_email_options); var raw_parts = email.split("@"); var domain = raw_parts.pop(); var user = raw_parts.join("@"); var parts = [user, domain]; parts[1] = parts[1].toLowerCase(); if (parts[1] === "gmail.com" || parts[1] === "googlemail.com") { if (options.gmail_remove_subaddress) { parts[0] = parts[0].split("+")[0]; } if (options.gmail_remove_dots) { parts[0] = parts[0].replace(/\.+/g, dotsReplacer); } if (!parts[0].length) { return false; } if (options.all_lowercase || options.gmail_lowercase) { parts[0] = parts[0].toLowerCase(); } parts[1] = options.gmail_convert_googlemaildotcom ? "gmail.com" : parts[1]; } else if (icloud_domains.indexOf(parts[1]) >= 0) { if (options.icloud_remove_subaddress) { parts[0] = parts[0].split("+")[0]; } if (!parts[0].length) { return false; } if (options.all_lowercase || options.icloud_lowercase) { parts[0] = parts[0].toLowerCase(); } } else if (outlookdotcom_domains.indexOf(parts[1]) >= 0) { if (options.outlookdotcom_remove_subaddress) { parts[0] = parts[0].split("+")[0]; } if (!parts[0].length) { return false; } if (options.all_lowercase || options.outlookdotcom_lowercase) { parts[0] = parts[0].toLowerCase(); } } else if (yahoo_domains.indexOf(parts[1]) >= 0) { if (options.yahoo_remove_subaddress) { var components = parts[0].split("-"); parts[0] = components.length > 1 ? components.slice(0, -1).join("-") : components[0]; } if (!parts[0].length) { return false; } if (options.all_lowercase || options.yahoo_lowercase) { parts[0] = parts[0].toLowerCase(); } } else if (yandex_domains.indexOf(parts[1]) >= 0) { if (options.all_lowercase || options.yandex_lowercase) { parts[0] = parts[0].toLowerCase(); } parts[1] = options.yandex_convert_yandexru ? "yandex.ru" : parts[1]; } else if (options.all_lowercase) { parts[0] = parts[0].toLowerCase(); } return parts.join("@"); } __name(normalizeEmail, "normalizeEmail"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isSlug.js var require_isSlug = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isSlug.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isSlug; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var charsetRegex = /^[a-z0-9](?!.*[-_]{2,})(?:[a-z0-9_-]*[a-z0-9])?$/; function isSlug(str) { (0, _assertString.default)(str); return charsetRegex.test(str); } __name(isSlug, "isSlug"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLicensePlate.js var require_isLicensePlate = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isLicensePlate.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isLicensePlate; var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var validators = { "cs-CZ": /* @__PURE__ */ __name(function csCZ(str) { return /^(([ABCDEFHIJKLMNPRSTUVXYZ]|[0-9])-?){5,8}$/.test(str); }, "csCZ"), "de-DE": /* @__PURE__ */ __name(function deDE(str) { return /^((A|AA|AB|AC|AE|AH|AK|AM|AN|AÖ|AP|AS|AT|AU|AW|AZ|B|BA|BB|BC|BE|BF|BH|BI|BK|BL|BM|BN|BO|BÖ|BS|BT|BZ|C|CA|CB|CE|CO|CR|CW|D|DA|DD|DE|DH|DI|DL|DM|DN|DO|DU|DW|DZ|E|EA|EB|ED|EE|EF|EG|EH|EI|EL|EM|EN|ER|ES|EU|EW|F|FB|FD|FF|FG|FI|FL|FN|FO|FR|FS|FT|FÜ|FW|FZ|G|GA|GC|GD|GE|GF|GG|GI|GK|GL|GM|GN|GÖ|GP|GR|GS|GT|GÜ|GV|GW|GZ|H|HA|HB|HC|HD|HE|HF|HG|HH|HI|HK|HL|HM|HN|HO|HP|HR|HS|HU|HV|HX|HY|HZ|IK|IL|IN|IZ|J|JE|JL|K|KA|KB|KC|KE|KF|KG|KH|KI|KK|KL|KM|KN|KO|KR|KS|KT|KU|KW|KY|L|LA|LB|LC|LD|LF|LG|LH|LI|LL|LM|LN|LÖ|LP|LR|LU|M|MA|MB|MC|MD|ME|MG|MH|MI|MK|ML|MM|MN|MO|MQ|MR|MS|MÜ|MW|MY|MZ|N|NB|ND|NE|NF|NH|NI|NK|NM|NÖ|NP|NR|NT|NU|NW|NY|NZ|OA|OB|OC|OD|OE|OF|OG|OH|OK|OL|OP|OS|OZ|P|PA|PB|PE|PF|PI|PL|PM|PN|PR|PS|PW|PZ|R|RA|RC|RD|RE|RG|RH|RI|RL|RM|RN|RO|RP|RS|RT|RU|RV|RW|RZ|S|SB|SC|SE|SG|SI|SK|SL|SM|SN|SO|SP|SR|ST|SU|SW|SY|SZ|TE|TF|TG|TO|TP|TR|TS|TT|TÜ|ÜB|UE|UH|UL|UM|UN|V|VB|VG|VK|VR|VS|W|WA|WB|WE|WF|WI|WK|WL|WM|WN|WO|WR|WS|WT|WÜ|WW|WZ|Z|ZE|ZI|ZP|ZR|ZW|ZZ)[- ]?[A-Z]{1,2}[- ]?\d{1,4}|(ABG|ABI|AIB|AIC|ALF|ALZ|ANA|ANG|ANK|APD|ARN|ART|ASL|ASZ|AUR|AZE|BAD|BAR|BBG|BCH|BED|BER|BGD|BGL|BID|BIN|BIR|BIT|BIW|BKS|BLB|BLK|BNA|BOG|BOH|BOR|BOT|BRA|BRB|BRG|BRK|BRL|BRV|BSB|BSK|BTF|BÜD|BUL|BÜR|BÜS|BÜZ|CAS|CHA|CLP|CLZ|COC|COE|CUX|DAH|DAN|DAU|DBR|DEG|DEL|DGF|DIL|DIN|DIZ|DKB|DLG|DON|DUD|DÜW|EBE|EBN|EBS|ECK|EIC|EIL|EIN|EIS|EMD|EMS|ERB|ERH|ERK|ERZ|ESB|ESW|FDB|FDS|FEU|FFB|FKB|FLÖ|FOR|FRG|FRI|FRW|FTL|FÜS|GAN|GAP|GDB|GEL|GEO|GER|GHA|GHC|GLA|GMN|GNT|GOA|GOH|GRA|GRH|GRI|GRM|GRZ|GTH|GUB|GUN|GVM|HAB|HAL|HAM|HAS|HBN|HBS|HCH|HDH|HDL|HEB|HEF|HEI|HER|HET|HGN|HGW|HHM|HIG|HIP|HMÜ|HOG|HOH|HOL|HOM|HOR|HÖS|HOT|HRO|HSK|HST|HVL|HWI|IGB|ILL|JÜL|KEH|KEL|KEM|KIB|KLE|KLZ|KÖN|KÖT|KÖZ|KRU|KÜN|KUS|KYF|LAN|LAU|LBS|LBZ|LDK|LDS|LEO|LER|LEV|LIB|LIF|LIP|LÖB|LOS|LRO|LSZ|LÜN|LUP|LWL|MAB|MAI|MAK|MAL|MED|MEG|MEI|MEK|MEL|MER|MET|MGH|MGN|MHL|MIL|MKK|MOD|MOL|MON|MOS|MSE|MSH|MSP|MST|MTK|MTL|MÜB|MÜR|MYK|MZG|NAB|NAI|NAU|NDH|NEA|NEB|NEC|NEN|NES|NEW|NMB|NMS|NOH|NOL|NOM|NOR|NVP|NWM|OAL|OBB|OBG|OCH|OHA|ÖHR|OHV|OHZ|OPR|OSL|OVI|OVL|OVP|PAF|PAN|PAR|PCH|PEG|PIR|PLÖ|PRÜ|QFT|QLB|RDG|REG|REH|REI|RID|RIE|ROD|ROF|ROK|ROL|ROS|ROT|ROW|RSL|RÜD|RÜG|SAB|SAD|SAN|SAW|SBG|SBK|SCZ|SDH|SDL|SDT|SEB|SEE|SEF|SEL|SFB|SFT|SGH|SHA|SHG|SHK|SHL|SIG|SIM|SLE|SLF|SLK|SLN|SLS|SLÜ|SLZ|SMÜ|SOB|SOG|SOK|SÖM|SON|SPB|SPN|SRB|SRO|STA|STB|STD|STE|STL|SUL|SÜW|SWA|SZB|TBB|TDO|TET|TIR|TÖL|TUT|UEM|UER|UFF|USI|VAI|VEC|VER|VIB|VIE|VIT|VOH|WAF|WAK|WAN|WAR|WAT|WBS|WDA|WEL|WEN|WER|WES|WHV|WIL|WIS|WIT|WIZ|WLG|WMS|WND|WOB|WOH|WOL|WOR|WOS|WRN|WSF|WST|WSW|WTL|WTM|WUG|WÜM|WUN|WUR|WZL|ZEL|ZIG)[- ]?(([A-Z][- ]?\d{1,4})|([A-Z]{2}[- ]?\d{1,3})))[- ]?(E|H)?$/.test(str); }, "deDE"), "de-LI": /* @__PURE__ */ __name(function deLI(str) { return /^FL[- ]?\d{1,5}[UZ]?$/.test(str); }, "deLI"), "en-IN": /* @__PURE__ */ __name(function enIN(str) { return /^[A-Z]{2}[ -]?[0-9]{1,2}(?:[ -]?[A-Z])(?:[ -]?[A-Z]*)?[ -]?[0-9]{4}$/.test(str); }, "enIN"), "en-SG": /* @__PURE__ */ __name(function enSG(str) { return /^[A-Z]{3}[ -]?[\d]{4}[ -]?[A-Z]{1}$/.test(str); }, "enSG"), "es-AR": /* @__PURE__ */ __name(function esAR(str) { return /^(([A-Z]{2} ?[0-9]{3} ?[A-Z]{2})|([A-Z]{3} ?[0-9]{3}))$/.test(str); }, "esAR"), "fi-FI": /* @__PURE__ */ __name(function fiFI(str) { return /^(?=.{4,7})(([A-Z]{1,3}|[0-9]{1,3})[\s-]?([A-Z]{1,3}|[0-9]{1,5}))$/.test(str); }, "fiFI"), "hu-HU": /* @__PURE__ */ __name(function huHU(str) { return /^((((?!AAA)(([A-NPRSTVZWXY]{1})([A-PR-Z]{1})([A-HJ-NPR-Z]))|(A[ABC]I)|A[ABC]O|A[A-W]Q|BPI|BPO|UCO|UDO|XAO)-(?!000)\d{3})|(M\d{6})|((CK|DT|CD|HC|H[ABEFIKLMNPRSTVX]|MA|OT|R[A-Z]) \d{2}-\d{2})|(CD \d{3}-\d{3})|(C-(C|X) \d{4})|(X-(A|B|C) \d{4})|(([EPVZ]-\d{5}))|(S A[A-Z]{2} \d{2})|(SP \d{2}-\d{2}))$/.test(str); }, "huHU"), "pt-BR": /* @__PURE__ */ __name(function ptBR(str) { return /^[A-Z]{3}[ -]?[0-9][A-Z][0-9]{2}|[A-Z]{3}[ -]?[0-9]{4}$/.test(str); }, "ptBR"), "pt-PT": /* @__PURE__ */ __name(function ptPT(str) { return /^(([A-Z]{2}[ -·]?[0-9]{2}[ -·]?[0-9]{2})|([0-9]{2}[ -·]?[A-Z]{2}[ -·]?[0-9]{2})|([0-9]{2}[ -·]?[0-9]{2}[ -·]?[A-Z]{2})|([A-Z]{2}[ -·]?[0-9]{2}[ -·]?[A-Z]{2}))$/.test(str); }, "ptPT"), "sq-AL": /* @__PURE__ */ __name(function sqAL(str) { return /^[A-Z]{2}[- ]?((\d{3}[- ]?(([A-Z]{2})|T))|(R[- ]?\d{3}))$/.test(str); }, "sqAL"), "sv-SE": /* @__PURE__ */ __name(function svSE(str) { return /^[A-HJ-PR-UW-Z]{3} ?[\d]{2}[A-HJ-PR-UW-Z1-9]$|(^[A-ZÅÄÖ ]{2,7}$)/.test(str.trim()); }, "svSE"), "en-PK": /* @__PURE__ */ __name(function enPK(str) { return /(^[A-Z]{2}((\s|-){0,1})[0-9]{3,4}((\s|-)[0-9]{2}){0,1}$)|(^[A-Z]{3}((\s|-){0,1})[0-9]{3,4}((\s|-)[0-9]{2}){0,1}$)|(^[A-Z]{4}((\s|-){0,1})[0-9]{3,4}((\s|-)[0-9]{2}){0,1}$)|(^[A-Z]((\s|-){0,1})[0-9]{4}((\s|-)[0-9]{2}){0,1}$)/.test(str.trim()); }, "enPK") }; function isLicensePlate(str, locale) { (0, _assertString.default)(str); if (locale in validators) { return validators[locale](str); } else if (locale === "any") { for (var key in validators) { var validator = validators[key]; if (validator(str)) { return true; } } return false; } throw new Error("Invalid locale '".concat(locale, "'")); } __name(isLicensePlate, "isLicensePlate"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isStrongPassword.js var require_isStrongPassword = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isStrongPassword.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isStrongPassword; var _merge = _interopRequireDefault(require_merge()); var _assertString = _interopRequireDefault(require_assertString()); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var upperCaseRegex = /^[A-Z]$/; var lowerCaseRegex = /^[a-z]$/; var numberRegex = /^[0-9]$/; var symbolRegex = /^[-#!$@£%^&*()_+|~=`{}\[\]:";'<>?,.\/\\ ]$/; var defaultOptions = { minLength: 8, minLowercase: 1, minUppercase: 1, minNumbers: 1, minSymbols: 1, returnScore: false, pointsPerUnique: 1, pointsPerRepeat: 0.5, pointsForContainingLower: 10, pointsForContainingUpper: 10, pointsForContainingNumber: 10, pointsForContainingSymbol: 10 }; function countChars(str) { var result = {}; Array.from(str).forEach(function(char) { var curVal = result[char]; if (curVal) { result[char] += 1; } else { result[char] = 1; } }); return result; } __name(countChars, "countChars"); function analyzePassword(password) { var charMap = countChars(password); var analysis = { length: password.length, uniqueChars: Object.keys(charMap).length, uppercaseCount: 0, lowercaseCount: 0, numberCount: 0, symbolCount: 0 }; Object.keys(charMap).forEach(function(char) { if (upperCaseRegex.test(char)) { analysis.uppercaseCount += charMap[char]; } else if (lowerCaseRegex.test(char)) { analysis.lowercaseCount += charMap[char]; } else if (numberRegex.test(char)) { analysis.numberCount += charMap[char]; } else if (symbolRegex.test(char)) { analysis.symbolCount += charMap[char]; } }); return analysis; } __name(analyzePassword, "analyzePassword"); function scorePassword(analysis, scoringOptions) { var points = 0; points += analysis.uniqueChars * scoringOptions.pointsPerUnique; points += (analysis.length - analysis.uniqueChars) * scoringOptions.pointsPerRepeat; if (analysis.lowercaseCount > 0) { points += scoringOptions.pointsForContainingLower; } if (analysis.uppercaseCount > 0) { points += scoringOptions.pointsForContainingUpper; } if (analysis.numberCount > 0) { points += scoringOptions.pointsForContainingNumber; } if (analysis.symbolCount > 0) { points += scoringOptions.pointsForContainingSymbol; } return points; } __name(scorePassword, "scorePassword"); function isStrongPassword(str) { var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null; (0, _assertString.default)(str); var analysis = analyzePassword(str); options = (0, _merge.default)(options || {}, defaultOptions); if (options.returnScore) { return scorePassword(analysis, options); } return analysis.length >= options.minLength && analysis.lowercaseCount >= options.minLowercase && analysis.uppercaseCount >= options.minUppercase && analysis.numberCount >= options.minNumbers && analysis.symbolCount >= options.minSymbols; } __name(isStrongPassword, "isStrongPassword"); module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isVAT.js var require_isVAT = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/lib/isVAT.js"(exports2) { "use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = isVAT; exports2.vatMatchers = void 0; var _assertString = _interopRequireDefault(require_assertString()); var algorithms = _interopRequireWildcard(require_algorithms()); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); return (_interopRequireWildcard = /* @__PURE__ */ __name(function _interopRequireWildcard2(e2, t2) { if (!t2 && e2 && e2.__esModule) return e2; var o, i, f = { __proto__: null, default: e2 }; if (null === e2 || "object" != _typeof(e2) && "function" != typeof e2) return f; if (o = t2 ? n : r) { if (o.has(e2)) return o.get(e2); o.set(e2, f); } for (var _t in e2) "default" !== _t && {}.hasOwnProperty.call(e2, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e2, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e2[_t]); return f; }, "_interopRequireWildcard"))(e, t); } __name(_interopRequireWildcard, "_interopRequireWildcard"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var AU = /* @__PURE__ */ __name(function AU2(str) { var match = str.match(/^(AU)?(\d{11})$/); if (!match) { return false; } var weights = [10, 1, 3, 5, 7, 9, 11, 13, 15, 17, 19]; str = str.replace(/^AU/, ""); var ABN = (parseInt(str.slice(0, 1), 10) - 1).toString() + str.slice(1); var total = 0; for (var i = 0; i < 11; i++) { total += weights[i] * ABN.charAt(i); } return total !== 0 && total % 89 === 0; }, "AU"); var CH = /* @__PURE__ */ __name(function CH2(str) { var hasValidCheckNumber = /* @__PURE__ */ __name(function hasValidCheckNumber2(digits) { var lastDigit = digits.pop(); var weights = [5, 4, 3, 2, 7, 6, 5, 4]; var calculatedCheckNumber = (11 - digits.reduce(function(acc, el, idx) { return acc + el * weights[idx]; }, 0) % 11) % 11; return lastDigit === calculatedCheckNumber; }, "hasValidCheckNumber"); return /^(CHE[- ]?)?(\d{9}|(\d{3}\.\d{3}\.\d{3})|(\d{3} \d{3} \d{3})) ?(TVA|MWST|IVA)?$/.test(str) && hasValidCheckNumber(str.match(/\d/g).map(function(el) { return +el; })); }, "CH"); var PT = /* @__PURE__ */ __name(function PT2(str) { var match = str.match(/^(PT)?(\d{9})$/); if (!match) { return false; } var tin = match[2]; var checksum = 11 - algorithms.reverseMultiplyAndSum(tin.split("").slice(0, 8).map(function(a) { return parseInt(a, 10); }), 9) % 11; if (checksum > 9) { return parseInt(tin[8], 10) === 0; } return checksum === parseInt(tin[8], 10); }, "PT"); var vatMatchers = exports2.vatMatchers = { /** * European Union VAT identification numbers */ AT: /* @__PURE__ */ __name(function AT(str) { return /^(AT)?U\d{8}$/.test(str); }, "AT"), BE: /* @__PURE__ */ __name(function BE(str) { return /^(BE)?\d{10}$/.test(str); }, "BE"), BG: /* @__PURE__ */ __name(function BG(str) { return /^(BG)?\d{9,10}$/.test(str); }, "BG"), HR: /* @__PURE__ */ __name(function HR(str) { return /^(HR)?\d{11}$/.test(str); }, "HR"), CY: /* @__PURE__ */ __name(function CY(str) { return /^(CY)?\w{9}$/.test(str); }, "CY"), CZ: /* @__PURE__ */ __name(function CZ(str) { return /^(CZ)?\d{8,10}$/.test(str); }, "CZ"), DK: /* @__PURE__ */ __name(function DK(str) { return /^(DK)?\d{8}$/.test(str); }, "DK"), EE: /* @__PURE__ */ __name(function EE(str) { return /^(EE)?\d{9}$/.test(str); }, "EE"), FI: /* @__PURE__ */ __name(function FI(str) { return /^(FI)?\d{8}$/.test(str); }, "FI"), FR: /* @__PURE__ */ __name(function FR(str) { return /^(FR)([A-Z0-9]{2}\d{9})$/.test(str); }, "FR"), DE: /* @__PURE__ */ __name(function DE(str) { return /^(DE)?\d{9}$/.test(str); }, "DE"), EL: /* @__PURE__ */ __name(function EL(str) { return /^(EL)?\d{9}$/.test(str); }, "EL"), HU: /* @__PURE__ */ __name(function HU(str) { return /^(HU)?\d{8}$/.test(str); }, "HU"), IE: /* @__PURE__ */ __name(function IE(str) { return /^(IE)?\d{7}\w{1}(W)?$/.test(str); }, "IE"), IT: /* @__PURE__ */ __name(function IT(str) { return /^(IT)?\d{11}$/.test(str); }, "IT"), LV: /* @__PURE__ */ __name(function LV(str) { return /^(LV)?\d{11}$/.test(str); }, "LV"), LT: /* @__PURE__ */ __name(function LT(str) { return /^(LT)?\d{9,12}$/.test(str); }, "LT"), LU: /* @__PURE__ */ __name(function LU(str) { return /^(LU)?\d{8}$/.test(str); }, "LU"), MT: /* @__PURE__ */ __name(function MT(str) { return /^(MT)?\d{8}$/.test(str); }, "MT"), NL: /* @__PURE__ */ __name(function NL(str) { return /^(NL)?\d{9}B\d{2}$/.test(str); }, "NL"), PL: /* @__PURE__ */ __name(function PL(str) { return /^(PL)?(\d{10}|(\d{3}-\d{3}-\d{2}-\d{2})|(\d{3}-\d{2}-\d{2}-\d{3}))$/.test(str); }, "PL"), PT, RO: /* @__PURE__ */ __name(function RO(str) { return /^(RO)?\d{2,10}$/.test(str); }, "RO"), SK: /* @__PURE__ */ __name(function SK(str) { return /^(SK)?\d{10}$/.test(str); }, "SK"), SI: /* @__PURE__ */ __name(function SI(str) { return /^(SI)?\d{8}$/.test(str); }, "SI"), ES: /* @__PURE__ */ __name(function ES(str) { return /^(ES)?\w\d{7}[A-Z]$/.test(str); }, "ES"), SE: /* @__PURE__ */ __name(function SE(str) { return /^(SE)?\d{12}$/.test(str); }, "SE"), /** * VAT numbers of non-EU countries */ AL: /* @__PURE__ */ __name(function AL(str) { return /^(AL)?\w{9}[A-Z]$/.test(str); }, "AL"), MK: /* @__PURE__ */ __name(function MK(str) { return /^(MK)?\d{13}$/.test(str); }, "MK"), AU, BY: /* @__PURE__ */ __name(function BY(str) { return /^(УНП )?\d{9}$/.test(str); }, "BY"), CA: /* @__PURE__ */ __name(function CA(str) { return /^(CA)?\d{9}$/.test(str); }, "CA"), IS: /* @__PURE__ */ __name(function IS(str) { return /^(IS)?\d{5,6}$/.test(str); }, "IS"), IN: /* @__PURE__ */ __name(function IN(str) { return /^(IN)?\d{15}$/.test(str); }, "IN"), ID: /* @__PURE__ */ __name(function ID(str) { return /^(ID)?(\d{15}|(\d{2}.\d{3}.\d{3}.\d{1}-\d{3}.\d{3}))$/.test(str); }, "ID"), IL: /* @__PURE__ */ __name(function IL(str) { return /^(IL)?\d{9}$/.test(str); }, "IL"), KZ: /* @__PURE__ */ __name(function KZ(str) { return /^(KZ)?\d{12}$/.test(str); }, "KZ"), NZ: /* @__PURE__ */ __name(function NZ(str) { return /^(NZ)?\d{9}$/.test(str); }, "NZ"), NG: /* @__PURE__ */ __name(function NG(str) { return /^(NG)?(\d{12}|(\d{8}-\d{4}))$/.test(str); }, "NG"), NO: /* @__PURE__ */ __name(function NO(str) { return /^(NO)?\d{9}MVA$/.test(str); }, "NO"), PH: /* @__PURE__ */ __name(function PH(str) { return /^(PH)?(\d{12}|\d{3} \d{3} \d{3} \d{3})$/.test(str); }, "PH"), RU: /* @__PURE__ */ __name(function RU(str) { return /^(RU)?(\d{10}|\d{12})$/.test(str); }, "RU"), SM: /* @__PURE__ */ __name(function SM(str) { return /^(SM)?\d{5}$/.test(str); }, "SM"), SA: /* @__PURE__ */ __name(function SA(str) { return /^(SA)?\d{15}$/.test(str); }, "SA"), RS: /* @__PURE__ */ __name(function RS(str) { return /^(RS)?\d{9}$/.test(str); }, "RS"), CH, TR: /* @__PURE__ */ __name(function TR(str) { return /^(TR)?\d{10}$/.test(str); }, "TR"), UA: /* @__PURE__ */ __name(function UA(str) { return /^(UA)?\d{12}$/.test(str); }, "UA"), GB: /* @__PURE__ */ __name(function GB(str) { return /^GB((\d{3} \d{4} ([0-8][0-9]|9[0-6]))|(\d{9} \d{3})|(((GD[0-4])|(HA[5-9]))[0-9]{2}))$/.test(str); }, "GB"), UZ: /* @__PURE__ */ __name(function UZ(str) { return /^(UZ)?\d{9}$/.test(str); }, "UZ"), /** * VAT numbers of Latin American countries */ AR: /* @__PURE__ */ __name(function AR(str) { return /^(AR)?\d{11}$/.test(str); }, "AR"), BO: /* @__PURE__ */ __name(function BO(str) { return /^(BO)?\d{7}$/.test(str); }, "BO"), BR: /* @__PURE__ */ __name(function BR(str) { return /^(BR)?((\d{2}.\d{3}.\d{3}\/\d{4}-\d{2})|(\d{3}.\d{3}.\d{3}-\d{2}))$/.test(str); }, "BR"), CL: /* @__PURE__ */ __name(function CL(str) { return /^(CL)?\d{8}-\d{1}$/.test(str); }, "CL"), CO: /* @__PURE__ */ __name(function CO(str) { return /^(CO)?\d{10}$/.test(str); }, "CO"), CR: /* @__PURE__ */ __name(function CR(str) { return /^(CR)?\d{9,12}$/.test(str); }, "CR"), EC: /* @__PURE__ */ __name(function EC(str) { return /^(EC)?\d{13}$/.test(str); }, "EC"), SV: /* @__PURE__ */ __name(function SV(str) { return /^(SV)?\d{4}-\d{6}-\d{3}-\d{1}$/.test(str); }, "SV"), GT: /* @__PURE__ */ __name(function GT(str) { return /^(GT)?\d{7}-\d{1}$/.test(str); }, "GT"), HN: /* @__PURE__ */ __name(function HN(str) { return /^(HN)?$/.test(str); }, "HN"), MX: /* @__PURE__ */ __name(function MX(str) { return /^(MX)?\w{3,4}\d{6}\w{3}$/.test(str); }, "MX"), NI: /* @__PURE__ */ __name(function NI(str) { return /^(NI)?\d{3}-\d{6}-\d{4}\w{1}$/.test(str); }, "NI"), PA: /* @__PURE__ */ __name(function PA(str) { return /^(PA)?$/.test(str); }, "PA"), PY: /* @__PURE__ */ __name(function PY(str) { return /^(PY)?\d{6,8}-\d{1}$/.test(str); }, "PY"), PE: /* @__PURE__ */ __name(function PE(str) { return /^(PE)?\d{11}$/.test(str); }, "PE"), DO: /* @__PURE__ */ __name(function DO(str) { return /^(DO)?(\d{11}|(\d{3}-\d{7}-\d{1})|[1,4,5]{1}\d{8}|([1,4,5]{1})-\d{2}-\d{5}-\d{1})$/.test(str); }, "DO"), UY: /* @__PURE__ */ __name(function UY(str) { return /^(UY)?\d{12}$/.test(str); }, "UY"), VE: /* @__PURE__ */ __name(function VE(str) { return /^(VE)?[J,G,V,E]{1}-(\d{9}|(\d{8}-\d{1}))$/.test(str); }, "VE") }; function isVAT(str, countryCode) { (0, _assertString.default)(str); (0, _assertString.default)(countryCode); if (countryCode in vatMatchers) { return vatMatchers[countryCode](str); } throw new Error("Invalid country code: '".concat(countryCode, "'")); } __name(isVAT, "isVAT"); } }); // ../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/index.js var require_validator = __commonJS({ "../../node_modules/.pnpm/validator@13.15.35/node_modules/validator/index.js"(exports2, module2) { "use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) { return typeof o2; } : function(o2) { return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2; }, _typeof(o); } __name(_typeof, "_typeof"); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = void 0; var _toDate = _interopRequireDefault(require_toDate()); var _toFloat = _interopRequireDefault(require_toFloat()); var _toInt = _interopRequireDefault(require_toInt()); var _toBoolean = _interopRequireDefault(require_toBoolean()); var _equals = _interopRequireDefault(require_equals()); var _contains = _interopRequireDefault(require_contains()); var _matches = _interopRequireDefault(require_matches()); var _isEmail = _interopRequireDefault(require_isEmail()); var _isURL = _interopRequireDefault(require_isURL()); var _isMACAddress = _interopRequireDefault(require_isMACAddress()); var _isIP = _interopRequireDefault(require_isIP()); var _isIPRange = _interopRequireDefault(require_isIPRange()); var _isFQDN = _interopRequireDefault(require_isFQDN()); var _isDate = _interopRequireDefault(require_isDate()); var _isTime = _interopRequireDefault(require_isTime()); var _isBoolean = _interopRequireDefault(require_isBoolean()); var _isLocale = _interopRequireDefault(require_isLocale()); var _isAbaRouting = _interopRequireDefault(require_isAbaRouting()); var _isAlpha = _interopRequireWildcard(require_isAlpha()); var _isAlphanumeric = _interopRequireWildcard(require_isAlphanumeric()); var _isNumeric = _interopRequireDefault(require_isNumeric()); var _isPassportNumber = _interopRequireWildcard(require_isPassportNumber()); var _isPort = _interopRequireDefault(require_isPort()); var _isLowercase = _interopRequireDefault(require_isLowercase()); var _isUppercase = _interopRequireDefault(require_isUppercase()); var _isIMEI = _interopRequireDefault(require_isIMEI()); var _isAscii = _interopRequireDefault(require_isAscii()); var _isFullWidth = _interopRequireDefault(require_isFullWidth()); var _isHalfWidth = _interopRequireDefault(require_isHalfWidth()); var _isVariableWidth = _interopRequireDefault(require_isVariableWidth()); var _isMultibyte = _interopRequireDefault(require_isMultibyte()); var _isSemVer = _interopRequireDefault(require_isSemVer()); var _isSurrogatePair = _interopRequireDefault(require_isSurrogatePair()); var _isInt = _interopRequireDefault(require_isInt()); var _isFloat = _interopRequireWildcard(require_isFloat()); var _isDecimal = _interopRequireDefault(require_isDecimal()); var _isHexadecimal = _interopRequireDefault(require_isHexadecimal()); var _isOctal = _interopRequireDefault(require_isOctal()); var _isDivisibleBy = _interopRequireDefault(require_isDivisibleBy()); var _isHexColor = _interopRequireDefault(require_isHexColor()); var _isRgbColor = _interopRequireDefault(require_isRgbColor()); var _isHSL = _interopRequireDefault(require_isHSL()); var _isISRC = _interopRequireDefault(require_isISRC()); var _isIBAN = _interopRequireWildcard(require_isIBAN()); var _isBIC = _interopRequireDefault(require_isBIC()); var _isMD = _interopRequireDefault(require_isMD5()); var _isHash = _interopRequireDefault(require_isHash()); var _isJWT = _interopRequireDefault(require_isJWT()); var _isJSON = _interopRequireDefault(require_isJSON()); var _isEmpty = _interopRequireDefault(require_isEmpty()); var _isLength = _interopRequireDefault(require_isLength()); var _isByteLength = _interopRequireDefault(require_isByteLength()); var _isULID = _interopRequireDefault(require_isULID()); var _isUUID = _interopRequireDefault(require_isUUID()); var _isMongoId = _interopRequireDefault(require_isMongoId()); var _isAfter = _interopRequireDefault(require_isAfter()); var _isBefore = _interopRequireDefault(require_isBefore()); var _isIn = _interopRequireDefault(require_isIn()); var _isLuhnNumber = _interopRequireDefault(require_isLuhnNumber()); var _isCreditCard = _interopRequireDefault(require_isCreditCard()); var _isIdentityCard = _interopRequireDefault(require_isIdentityCard()); var _isEAN = _interopRequireDefault(require_isEAN()); var _isISIN = _interopRequireDefault(require_isISIN()); var _isISBN = _interopRequireDefault(require_isISBN()); var _isISSN = _interopRequireDefault(require_isISSN()); var _isTaxID = _interopRequireDefault(require_isTaxID()); var _isMobilePhone = _interopRequireWildcard(require_isMobilePhone()); var _isEthereumAddress = _interopRequireDefault(require_isEthereumAddress()); var _isCurrency = _interopRequireDefault(require_isCurrency()); var _isBtcAddress = _interopRequireDefault(require_isBtcAddress()); var _isISO = require_isISO6346(); var _isISO2 = _interopRequireDefault(require_isISO6391()); var _isISO3 = _interopRequireDefault(require_isISO8601()); var _isRFC = _interopRequireDefault(require_isRFC3339()); var _isISO4 = _interopRequireDefault(require_isISO15924()); var _isISO31661Alpha = _interopRequireDefault(require_isISO31661Alpha2()); var _isISO31661Alpha2 = _interopRequireDefault(require_isISO31661Alpha3()); var _isISO31661Numeric = _interopRequireDefault(require_isISO31661Numeric()); var _isISO5 = _interopRequireDefault(require_isISO4217()); var _isBase = _interopRequireDefault(require_isBase32()); var _isBase2 = _interopRequireDefault(require_isBase58()); var _isBase3 = _interopRequireDefault(require_isBase64()); var _isDataURI = _interopRequireDefault(require_isDataURI()); var _isMagnetURI = _interopRequireDefault(require_isMagnetURI()); var _isMailtoURI = _interopRequireDefault(require_isMailtoURI()); var _isMimeType = _interopRequireDefault(require_isMimeType()); var _isLatLong = _interopRequireDefault(require_isLatLong()); var _isPostalCode = _interopRequireWildcard(require_isPostalCode()); var _ltrim = _interopRequireDefault(require_ltrim()); var _rtrim = _interopRequireDefault(require_rtrim()); var _trim = _interopRequireDefault(require_trim()); var _escape = _interopRequireDefault(require_escape()); var _unescape = _interopRequireDefault(require_unescape()); var _stripLow = _interopRequireDefault(require_stripLow()); var _whitelist = _interopRequireDefault(require_whitelist()); var _blacklist = _interopRequireDefault(require_blacklist()); var _isWhitelisted = _interopRequireDefault(require_isWhitelisted()); var _normalizeEmail = _interopRequireDefault(require_normalizeEmail()); var _isSlug = _interopRequireDefault(require_isSlug()); var _isLicensePlate = _interopRequireDefault(require_isLicensePlate()); var _isStrongPassword = _interopRequireDefault(require_isStrongPassword()); var _isVAT = _interopRequireDefault(require_isVAT()); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); return (_interopRequireWildcard = /* @__PURE__ */ __name(function _interopRequireWildcard2(e2, t2) { if (!t2 && e2 && e2.__esModule) return e2; var o, i, f = { __proto__: null, default: e2 }; if (null === e2 || "object" != _typeof(e2) && "function" != typeof e2) return f; if (o = t2 ? n : r) { if (o.has(e2)) return o.get(e2); o.set(e2, f); } for (var _t in e2) "default" !== _t && {}.hasOwnProperty.call(e2, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e2, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e2[_t]); return f; }, "_interopRequireWildcard"))(e, t); } __name(_interopRequireWildcard, "_interopRequireWildcard"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } __name(_interopRequireDefault, "_interopRequireDefault"); var version2 = "13.15.35"; var validator = { version: version2, toDate: _toDate.default, toFloat: _toFloat.default, toInt: _toInt.default, toBoolean: _toBoolean.default, equals: _equals.default, contains: _contains.default, matches: _matches.default, isEmail: _isEmail.default, isURL: _isURL.default, isMACAddress: _isMACAddress.default, isIP: _isIP.default, isIPRange: _isIPRange.default, isFQDN: _isFQDN.default, isBoolean: _isBoolean.default, isIBAN: _isIBAN.default, isBIC: _isBIC.default, isAbaRouting: _isAbaRouting.default, isAlpha: _isAlpha.default, isAlphaLocales: _isAlpha.locales, isAlphanumeric: _isAlphanumeric.default, isAlphanumericLocales: _isAlphanumeric.locales, isNumeric: _isNumeric.default, isPassportNumber: _isPassportNumber.default, passportNumberLocales: _isPassportNumber.locales, isPort: _isPort.default, isLowercase: _isLowercase.default, isUppercase: _isUppercase.default, isAscii: _isAscii.default, isFullWidth: _isFullWidth.default, isHalfWidth: _isHalfWidth.default, isVariableWidth: _isVariableWidth.default, isMultibyte: _isMultibyte.default, isSemVer: _isSemVer.default, isSurrogatePair: _isSurrogatePair.default, isInt: _isInt.default, isIMEI: _isIMEI.default, isFloat: _isFloat.default, isFloatLocales: _isFloat.locales, isDecimal: _isDecimal.default, isHexadecimal: _isHexadecimal.default, isOctal: _isOctal.default, isDivisibleBy: _isDivisibleBy.default, isHexColor: _isHexColor.default, isRgbColor: _isRgbColor.default, isHSL: _isHSL.default, isISRC: _isISRC.default, isMD5: _isMD.default, isHash: _isHash.default, isJWT: _isJWT.default, isJSON: _isJSON.default, isEmpty: _isEmpty.default, isLength: _isLength.default, isLocale: _isLocale.default, isByteLength: _isByteLength.default, isULID: _isULID.default, isUUID: _isUUID.default, isMongoId: _isMongoId.default, isAfter: _isAfter.default, isBefore: _isBefore.default, isIn: _isIn.default, isLuhnNumber: _isLuhnNumber.default, isCreditCard: _isCreditCard.default, isIdentityCard: _isIdentityCard.default, isEAN: _isEAN.default, isISIN: _isISIN.default, isISBN: _isISBN.default, isISSN: _isISSN.default, isMobilePhone: _isMobilePhone.default, isMobilePhoneLocales: _isMobilePhone.locales, isPostalCode: _isPostalCode.default, isPostalCodeLocales: _isPostalCode.locales, isEthereumAddress: _isEthereumAddress.default, isCurrency: _isCurrency.default, isBtcAddress: _isBtcAddress.default, isISO6346: _isISO.isISO6346, isFreightContainerID: _isISO.isFreightContainerID, isISO6391: _isISO2.default, isISO8601: _isISO3.default, isISO15924: _isISO4.default, isRFC3339: _isRFC.default, isISO31661Alpha2: _isISO31661Alpha.default, isISO31661Alpha3: _isISO31661Alpha2.default, isISO31661Numeric: _isISO31661Numeric.default, isISO4217: _isISO5.default, isBase32: _isBase.default, isBase58: _isBase2.default, isBase64: _isBase3.default, isDataURI: _isDataURI.default, isMagnetURI: _isMagnetURI.default, isMailtoURI: _isMailtoURI.default, isMimeType: _isMimeType.default, isLatLong: _isLatLong.default, ltrim: _ltrim.default, rtrim: _rtrim.default, trim: _trim.default, escape: _escape.default, unescape: _unescape.default, stripLow: _stripLow.default, whitelist: _whitelist.default, blacklist: _blacklist.default, isWhitelisted: _isWhitelisted.default, normalizeEmail: _normalizeEmail.default, toString, isSlug: _isSlug.default, isStrongPassword: _isStrongPassword.default, isTaxID: _isTaxID.default, isDate: _isDate.default, isTime: _isTime.default, isLicensePlate: _isLicensePlate.default, isVAT: _isVAT.default, ibanLocales: _isIBAN.locales }; var _default = exports2.default = validator; module2.exports = exports2.default; module2.exports.default = exports2.default; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsStrongPassword.js var require_IsStrongPassword = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsStrongPassword.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar2 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding2(result, mod, k); } __setModuleDefault2(result, mod); return result; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsStrongPassword = exports2.isStrongPassword = exports2.IS_STRONG_PASSWORD = void 0; var validator = __importStar2(require_validator()); var ValidateBy_1 = require_ValidateBy(); exports2.IS_STRONG_PASSWORD = "isStrongPassword"; function isStrongPassword(value, options) { return typeof value === "string" && validator.isStrongPassword(value, options); } __name(isStrongPassword, "isStrongPassword"); exports2.isStrongPassword = isStrongPassword; function IsStrongPassword(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_STRONG_PASSWORD, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isStrongPassword(value, args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property is not strong enough", validationOptions) } }, validationOptions); } __name(IsStrongPassword, "IsStrongPassword"); exports2.IsStrongPassword = IsStrongPassword; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsTimeZone.js var require_IsTimeZone = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsTimeZone.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsTimeZone = exports2.isTimeZone = exports2.IS_TIMEZONE = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_TIMEZONE = "isTimeZone"; function isTimeZone(value) { try { if (typeof value !== "string") { return false; } Intl.DateTimeFormat(void 0, { timeZone: value }); return true; } catch (exception) { return false; } } __name(isTimeZone, "isTimeZone"); exports2.isTimeZone = isTimeZone; function IsTimeZone(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_TIMEZONE, validator: { validate: /* @__PURE__ */ __name((value, args) => isTimeZone(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a valid IANA time-zone", validationOptions) } }, validationOptions); } __name(IsTimeZone, "IsTimeZone"); exports2.IsTimeZone = IsTimeZone; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBase58.js var require_IsBase58 = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/IsBase58.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsBase58 = exports2.isBase58 = exports2.IS_BASE58 = void 0; var ValidateBy_1 = require_ValidateBy(); var isBase58_1 = __importDefault2(require_isBase58()); exports2.IS_BASE58 = "isBase58"; function isBase58(value) { return typeof value === "string" && (0, isBase58_1.default)(value); } __name(isBase58, "isBase58"); exports2.isBase58 = isBase58; function IsBase58(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_BASE58, validator: { validate: /* @__PURE__ */ __name((value, args) => isBase58(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be base58 encoded", validationOptions) } }, validationOptions); } __name(IsBase58, "IsBase58"); exports2.IsBase58 = IsBase58; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/is-tax-id.js var require_is_tax_id = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/is-tax-id.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsTaxId = exports2.isTaxId = exports2.IS_TAX_ID = void 0; var ValidateBy_1 = require_ValidateBy(); var isTaxID_1 = __importDefault2(require_isTaxID()); exports2.IS_TAX_ID = "isTaxId"; function isTaxId(value, locale) { return typeof value === "string" && (0, isTaxID_1.default)(value, locale || "en-US"); } __name(isTaxId, "isTaxId"); exports2.isTaxId = isTaxId; function IsTaxId(locale, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_TAX_ID, constraints: [locale], validator: { validate: /* @__PURE__ */ __name((value, args) => isTaxId(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a Tax Identification Number", validationOptions) } }, validationOptions); } __name(IsTaxId, "IsTaxId"); exports2.IsTaxId = IsTaxId; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/is-iso4217-currency-code.js var require_is_iso4217_currency_code = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/string/is-iso4217-currency-code.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsISO4217CurrencyCode = exports2.isISO4217CurrencyCode = exports2.IS_ISO4217_CURRENCY_CODE = void 0; var ValidateBy_1 = require_ValidateBy(); var isISO4217_1 = __importDefault2(require_isISO4217()); exports2.IS_ISO4217_CURRENCY_CODE = "isISO4217CurrencyCode"; function isISO4217CurrencyCode(value) { return typeof value === "string" && (0, isISO4217_1.default)(value); } __name(isISO4217CurrencyCode, "isISO4217CurrencyCode"); exports2.isISO4217CurrencyCode = isISO4217CurrencyCode; function IsISO4217CurrencyCode(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ISO4217_CURRENCY_CODE, validator: { validate: /* @__PURE__ */ __name((value, args) => isISO4217CurrencyCode(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a valid ISO4217 currency code", validationOptions) } }, validationOptions); } __name(IsISO4217CurrencyCode, "IsISO4217CurrencyCode"); exports2.IsISO4217CurrencyCode = IsISO4217CurrencyCode; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsBoolean.js var require_IsBoolean = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsBoolean.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsBoolean = exports2.isBoolean = exports2.IS_BOOLEAN = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_BOOLEAN = "isBoolean"; function isBoolean(value) { return value instanceof Boolean || typeof value === "boolean"; } __name(isBoolean, "isBoolean"); exports2.isBoolean = isBoolean; function IsBoolean(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_BOOLEAN, validator: { validate: /* @__PURE__ */ __name((value, args) => isBoolean(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a boolean value", validationOptions) } }, validationOptions); } __name(IsBoolean, "IsBoolean"); exports2.IsBoolean = IsBoolean; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsDate.js var require_IsDate = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsDate.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsDate = exports2.isDate = exports2.IS_DATE = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_DATE = "isDate"; function isDate(value) { return value instanceof Date && !isNaN(value.getTime()); } __name(isDate, "isDate"); exports2.isDate = isDate; function IsDate(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_DATE, validator: { validate: /* @__PURE__ */ __name((value, args) => isDate(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a Date instance", validationOptions) } }, validationOptions); } __name(IsDate, "IsDate"); exports2.IsDate = IsDate; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsNumber.js var require_IsNumber = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsNumber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsNumber = exports2.isNumber = exports2.IS_NUMBER = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_NUMBER = "isNumber"; function isNumber(value, options = {}) { if (typeof value !== "number") { return false; } if (value === Infinity || value === -Infinity) { return !!options.allowInfinity; } if (Number.isNaN(value)) { return !!options.allowNaN; } if (options.maxDecimalPlaces !== void 0) { let decimalPlaces = 0; if (value % 1 !== 0) { decimalPlaces = value.toString().split(".")[1].length; } if (decimalPlaces > options.maxDecimalPlaces) { return false; } } return Number.isFinite(value); } __name(isNumber, "isNumber"); exports2.isNumber = isNumber; function IsNumber(options = {}, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_NUMBER, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isNumber(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a number conforming to the specified constraints", validationOptions) } }, validationOptions); } __name(IsNumber, "IsNumber"); exports2.IsNumber = IsNumber; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsEnum.js var require_IsEnum = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsEnum.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsEnum = exports2.isEnum = exports2.IS_ENUM = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_ENUM = "isEnum"; function isEnum(value, entity) { const enumValues = Object.keys(entity).map((k) => entity[k]); return enumValues.includes(value); } __name(isEnum, "isEnum"); exports2.isEnum = isEnum; function validEnumValues(entity) { return Object.entries(entity).filter(([key, value]) => isNaN(parseInt(key))).map(([key, value]) => value); } __name(validEnumValues, "validEnumValues"); function IsEnum(entity, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ENUM, constraints: [entity, validEnumValues(entity)], validator: { validate: /* @__PURE__ */ __name((value, args) => isEnum(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be one of the following values: $constraint2", validationOptions) } }, validationOptions); } __name(IsEnum, "IsEnum"); exports2.IsEnum = IsEnum; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsInt.js var require_IsInt = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsInt.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsInt = exports2.isInt = exports2.IS_INT = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_INT = "isInt"; function isInt(val) { return typeof val === "number" && Number.isInteger(val); } __name(isInt, "isInt"); exports2.isInt = isInt; function IsInt(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_INT, validator: { validate: /* @__PURE__ */ __name((value, args) => isInt(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be an integer number", validationOptions) } }, validationOptions); } __name(IsInt, "IsInt"); exports2.IsInt = IsInt; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsString.js var require_IsString = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsString.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsString = exports2.isString = exports2.IS_STRING = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_STRING = "isString"; function isString(value) { return value instanceof String || typeof value === "string"; } __name(isString, "isString"); exports2.isString = isString; function IsString(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_STRING, validator: { validate: /* @__PURE__ */ __name((value, args) => isString(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a string", validationOptions) } }, validationOptions); } __name(IsString, "IsString"); exports2.IsString = IsString; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsArray.js var require_IsArray = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsArray.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsArray = exports2.isArray = exports2.IS_ARRAY = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_ARRAY = "isArray"; function isArray(value) { return Array.isArray(value); } __name(isArray, "isArray"); exports2.isArray = isArray; function IsArray(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_ARRAY, validator: { validate: /* @__PURE__ */ __name((value, args) => isArray(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be an array", validationOptions) } }, validationOptions); } __name(IsArray, "IsArray"); exports2.IsArray = IsArray; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsObject.js var require_IsObject = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/typechecker/IsObject.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsObject = exports2.isObject = exports2.IS_OBJECT = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_OBJECT = "isObject"; function isObject2(value) { return value != null && (typeof value === "object" || typeof value === "function") && !Array.isArray(value); } __name(isObject2, "isObject"); exports2.isObject = isObject2; function IsObject(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_OBJECT, validator: { validate: /* @__PURE__ */ __name((value, args) => isObject2(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be an object", validationOptions) } }, validationOptions); } __name(IsObject, "IsObject"); exports2.IsObject = IsObject; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayContains.js var require_ArrayContains = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayContains.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ArrayContains = exports2.arrayContains = exports2.ARRAY_CONTAINS = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.ARRAY_CONTAINS = "arrayContains"; function arrayContains(array, values) { if (!Array.isArray(array)) return false; return values.every((value) => array.indexOf(value) !== -1); } __name(arrayContains, "arrayContains"); exports2.arrayContains = arrayContains; function ArrayContains(values, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.ARRAY_CONTAINS, constraints: [values], validator: { validate: /* @__PURE__ */ __name((value, args) => arrayContains(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain $constraint1 values", validationOptions) } }, validationOptions); } __name(ArrayContains, "ArrayContains"); exports2.ArrayContains = ArrayContains; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayNotContains.js var require_ArrayNotContains = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayNotContains.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ArrayNotContains = exports2.arrayNotContains = exports2.ARRAY_NOT_CONTAINS = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.ARRAY_NOT_CONTAINS = "arrayNotContains"; function arrayNotContains(array, values) { if (!Array.isArray(array)) return false; return values.every((value) => array.indexOf(value) === -1); } __name(arrayNotContains, "arrayNotContains"); exports2.arrayNotContains = arrayNotContains; function ArrayNotContains(values, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.ARRAY_NOT_CONTAINS, constraints: [values], validator: { validate: /* @__PURE__ */ __name((value, args) => arrayNotContains(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property should not contain $constraint1 values", validationOptions) } }, validationOptions); } __name(ArrayNotContains, "ArrayNotContains"); exports2.ArrayNotContains = ArrayNotContains; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayNotEmpty.js var require_ArrayNotEmpty = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayNotEmpty.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ArrayNotEmpty = exports2.arrayNotEmpty = exports2.ARRAY_NOT_EMPTY = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.ARRAY_NOT_EMPTY = "arrayNotEmpty"; function arrayNotEmpty(array) { return Array.isArray(array) && array.length > 0; } __name(arrayNotEmpty, "arrayNotEmpty"); exports2.arrayNotEmpty = arrayNotEmpty; function ArrayNotEmpty(validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.ARRAY_NOT_EMPTY, validator: { validate: /* @__PURE__ */ __name((value, args) => arrayNotEmpty(value), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property should not be empty", validationOptions) } }, validationOptions); } __name(ArrayNotEmpty, "ArrayNotEmpty"); exports2.ArrayNotEmpty = ArrayNotEmpty; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayMinSize.js var require_ArrayMinSize = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayMinSize.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ArrayMinSize = exports2.arrayMinSize = exports2.ARRAY_MIN_SIZE = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.ARRAY_MIN_SIZE = "arrayMinSize"; function arrayMinSize(array, min) { return Array.isArray(array) && array.length >= min; } __name(arrayMinSize, "arrayMinSize"); exports2.arrayMinSize = arrayMinSize; function ArrayMinSize(min, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.ARRAY_MIN_SIZE, constraints: [min], validator: { validate: /* @__PURE__ */ __name((value, args) => arrayMinSize(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain at least $constraint1 elements", validationOptions) } }, validationOptions); } __name(ArrayMinSize, "ArrayMinSize"); exports2.ArrayMinSize = ArrayMinSize; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayMaxSize.js var require_ArrayMaxSize = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayMaxSize.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ArrayMaxSize = exports2.arrayMaxSize = exports2.ARRAY_MAX_SIZE = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.ARRAY_MAX_SIZE = "arrayMaxSize"; function arrayMaxSize(array, max) { return Array.isArray(array) && array.length <= max; } __name(arrayMaxSize, "arrayMaxSize"); exports2.arrayMaxSize = arrayMaxSize; function ArrayMaxSize(max, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.ARRAY_MAX_SIZE, constraints: [max], validator: { validate: /* @__PURE__ */ __name((value, args) => arrayMaxSize(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must contain no more than $constraint1 elements", validationOptions) } }, validationOptions); } __name(ArrayMaxSize, "ArrayMaxSize"); exports2.ArrayMaxSize = ArrayMaxSize; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayUnique.js var require_ArrayUnique = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/array/ArrayUnique.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ArrayUnique = exports2.arrayUnique = exports2.ARRAY_UNIQUE = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.ARRAY_UNIQUE = "arrayUnique"; function arrayUnique(array, identifier) { if (!Array.isArray(array)) return false; if (identifier) { array = array.map((o) => o != null ? identifier(o) : o); } const uniqueItems = array.filter((a, b, c) => c.indexOf(a) === b); return array.length === uniqueItems.length; } __name(arrayUnique, "arrayUnique"); exports2.arrayUnique = arrayUnique; function ArrayUnique(identifierOrOptions, validationOptions) { const identifier = typeof identifierOrOptions === "function" ? identifierOrOptions : void 0; const options = typeof identifierOrOptions !== "function" ? identifierOrOptions : validationOptions; return (0, ValidateBy_1.ValidateBy)({ name: exports2.ARRAY_UNIQUE, validator: { validate: /* @__PURE__ */ __name((value, args) => arrayUnique(value, identifier), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "All $property's elements must be unique", options) } }, options); } __name(ArrayUnique, "ArrayUnique"); exports2.ArrayUnique = ArrayUnique; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/object/IsNotEmptyObject.js var require_IsNotEmptyObject = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/object/IsNotEmptyObject.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsNotEmptyObject = exports2.isNotEmptyObject = exports2.IS_NOT_EMPTY_OBJECT = void 0; var ValidateBy_1 = require_ValidateBy(); var IsObject_1 = require_IsObject(); exports2.IS_NOT_EMPTY_OBJECT = "isNotEmptyObject"; function isNotEmptyObject(value, options) { if (!(0, IsObject_1.isObject)(value)) { return false; } if ((options === null || options === void 0 ? void 0 : options.nullable) === false) { return !Object.values(value).every((propertyValue) => propertyValue === null || propertyValue === void 0); } for (const key in value) { if (value.hasOwnProperty(key)) { return true; } } return false; } __name(isNotEmptyObject, "isNotEmptyObject"); exports2.isNotEmptyObject = isNotEmptyObject; function IsNotEmptyObject(options, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_NOT_EMPTY_OBJECT, constraints: [options], validator: { validate: /* @__PURE__ */ __name((value, args) => isNotEmptyObject(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix) => eachPrefix + "$property must be a non-empty object", validationOptions) } }, validationOptions); } __name(IsNotEmptyObject, "IsNotEmptyObject"); exports2.IsNotEmptyObject = IsNotEmptyObject; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/object/IsInstance.js var require_IsInstance = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/object/IsInstance.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IsInstance = exports2.isInstance = exports2.IS_INSTANCE = void 0; var ValidateBy_1 = require_ValidateBy(); exports2.IS_INSTANCE = "isInstance"; function isInstance(object, targetTypeConstructor) { return targetTypeConstructor && typeof targetTypeConstructor === "function" && object instanceof targetTypeConstructor; } __name(isInstance, "isInstance"); exports2.isInstance = isInstance; function IsInstance(targetType, validationOptions) { return (0, ValidateBy_1.ValidateBy)({ name: exports2.IS_INSTANCE, constraints: [targetType], validator: { validate: /* @__PURE__ */ __name((value, args) => isInstance(value, args === null || args === void 0 ? void 0 : args.constraints[0]), "validate"), defaultMessage: (0, ValidateBy_1.buildMessage)((eachPrefix, args) => { if (args === null || args === void 0 ? void 0 : args.constraints[0]) { return eachPrefix + `$property must be an instance of ${args === null || args === void 0 ? void 0 : args.constraints[0].name}`; } else { return eachPrefix + `${exports2.IS_INSTANCE} decorator expects and object as value, but got falsy value.`; } }, validationOptions) } }, validationOptions); } __name(IsInstance, "IsInstance"); exports2.IsInstance = IsInstance; } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/decorators.js var require_decorators2 = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/decorator/decorators.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_Allow(), exports2); __exportStar2(require_IsDefined(), exports2); __exportStar2(require_IsOptional(), exports2); __exportStar2(require_Validate(), exports2); __exportStar2(require_ValidateBy(), exports2); __exportStar2(require_ValidateIf(), exports2); __exportStar2(require_ValidateNested(), exports2); __exportStar2(require_ValidatePromise(), exports2); __exportStar2(require_IsLatLong(), exports2); __exportStar2(require_IsLatitude(), exports2); __exportStar2(require_IsLongitude(), exports2); __exportStar2(require_Equals(), exports2); __exportStar2(require_NotEquals(), exports2); __exportStar2(require_IsEmpty(), exports2); __exportStar2(require_IsNotEmpty(), exports2); __exportStar2(require_IsIn(), exports2); __exportStar2(require_IsNotIn(), exports2); __exportStar2(require_IsDivisibleBy(), exports2); __exportStar2(require_IsPositive(), exports2); __exportStar2(require_IsNegative(), exports2); __exportStar2(require_Max(), exports2); __exportStar2(require_Min(), exports2); __exportStar2(require_MinDate(), exports2); __exportStar2(require_MaxDate(), exports2); __exportStar2(require_Contains(), exports2); __exportStar2(require_NotContains(), exports2); __exportStar2(require_IsAlpha(), exports2); __exportStar2(require_IsAlphanumeric(), exports2); __exportStar2(require_IsDecimal(), exports2); __exportStar2(require_IsAscii(), exports2); __exportStar2(require_IsBase64(), exports2); __exportStar2(require_IsByteLength(), exports2); __exportStar2(require_IsCreditCard(), exports2); __exportStar2(require_IsCurrency(), exports2); __exportStar2(require_IsEmail(), exports2); __exportStar2(require_IsFQDN(), exports2); __exportStar2(require_IsFullWidth(), exports2); __exportStar2(require_IsHalfWidth(), exports2); __exportStar2(require_IsVariableWidth(), exports2); __exportStar2(require_IsHexColor(), exports2); __exportStar2(require_IsHexadecimal(), exports2); __exportStar2(require_IsMacAddress(), exports2); __exportStar2(require_IsIP(), exports2); __exportStar2(require_IsPort(), exports2); __exportStar2(require_IsISBN(), exports2); __exportStar2(require_IsISIN(), exports2); __exportStar2(require_IsISO8601(), exports2); __exportStar2(require_IsJSON(), exports2); __exportStar2(require_IsJWT(), exports2); __exportStar2(require_IsLowercase(), exports2); __exportStar2(require_IsMobilePhone(), exports2); __exportStar2(require_IsISO31661Alpha2(), exports2); __exportStar2(require_IsISO31661Alpha3(), exports2); __exportStar2(require_IsMongoId(), exports2); __exportStar2(require_IsMultibyte(), exports2); __exportStar2(require_IsSurrogatePair(), exports2); __exportStar2(require_IsUrl(), exports2); __exportStar2(require_IsUUID(), exports2); __exportStar2(require_IsFirebasePushId(), exports2); __exportStar2(require_IsUppercase(), exports2); __exportStar2(require_Length(), exports2); __exportStar2(require_MaxLength(), exports2); __exportStar2(require_MinLength(), exports2); __exportStar2(require_Matches(), exports2); __exportStar2(require_IsPhoneNumber(), exports2); __exportStar2(require_IsMilitaryTime(), exports2); __exportStar2(require_IsHash(), exports2); __exportStar2(require_IsISSN(), exports2); __exportStar2(require_IsDateString(), exports2); __exportStar2(require_IsBooleanString(), exports2); __exportStar2(require_IsNumberString(), exports2); __exportStar2(require_IsBase32(), exports2); __exportStar2(require_IsBIC(), exports2); __exportStar2(require_IsBtcAddress(), exports2); __exportStar2(require_IsDataURI(), exports2); __exportStar2(require_IsEAN(), exports2); __exportStar2(require_IsEthereumAddress(), exports2); __exportStar2(require_IsHSL(), exports2); __exportStar2(require_IsIBAN(), exports2); __exportStar2(require_IsIdentityCard(), exports2); __exportStar2(require_IsISRC(), exports2); __exportStar2(require_IsLocale(), exports2); __exportStar2(require_IsMagnetURI(), exports2); __exportStar2(require_IsMimeType(), exports2); __exportStar2(require_IsOctal(), exports2); __exportStar2(require_IsPassportNumber(), exports2); __exportStar2(require_IsPostalCode(), exports2); __exportStar2(require_IsRFC3339(), exports2); __exportStar2(require_IsRgbColor(), exports2); __exportStar2(require_IsSemVer(), exports2); __exportStar2(require_IsStrongPassword(), exports2); __exportStar2(require_IsTimeZone(), exports2); __exportStar2(require_IsBase58(), exports2); __exportStar2(require_is_tax_id(), exports2); __exportStar2(require_is_iso4217_currency_code(), exports2); __exportStar2(require_IsBoolean(), exports2); __exportStar2(require_IsDate(), exports2); __exportStar2(require_IsNumber(), exports2); __exportStar2(require_IsEnum(), exports2); __exportStar2(require_IsInt(), exports2); __exportStar2(require_IsString(), exports2); __exportStar2(require_IsArray(), exports2); __exportStar2(require_IsObject(), exports2); __exportStar2(require_ArrayContains(), exports2); __exportStar2(require_ArrayNotContains(), exports2); __exportStar2(require_ArrayNotEmpty(), exports2); __exportStar2(require_ArrayMinSize(), exports2); __exportStar2(require_ArrayMaxSize(), exports2); __exportStar2(require_ArrayUnique(), exports2); __exportStar2(require_IsNotEmptyObject(), exports2); __exportStar2(require_IsInstance(), exports2); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidatorConstraintInterface.js var require_ValidatorConstraintInterface = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidatorConstraintInterface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidatorOptions.js var require_ValidatorOptions = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidatorOptions.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidationArguments.js var require_ValidationArguments = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation/ValidationArguments.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation-schema/ValidationSchema.js var require_ValidationSchema = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/validation-schema/ValidationSchema.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/index.js var require_cjs = __commonJS({ "../../node_modules/.pnpm/class-validator@0.14.4/node_modules/class-validator/cjs/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.registerSchema = exports2.validateSync = exports2.validateOrReject = exports2.validate = void 0; var MetadataStorage_1 = require_MetadataStorage(); var Validator_1 = require_Validator(); var container_1 = require_container(); __exportStar2(require_container(), exports2); __exportStar2(require_decorators2(), exports2); __exportStar2(require_ValidationOptions(), exports2); __exportStar2(require_ValidatorConstraintInterface(), exports2); __exportStar2(require_ValidationError(), exports2); __exportStar2(require_ValidatorOptions(), exports2); __exportStar2(require_ValidationArguments(), exports2); __exportStar2(require_ValidationTypes(), exports2); __exportStar2(require_Validator(), exports2); __exportStar2(require_ValidationSchema(), exports2); __exportStar2(require_register_decorator(), exports2); __exportStar2(require_MetadataStorage(), exports2); function validate2(schemaNameOrObject, objectOrValidationOptions, maybeValidatorOptions) { if (typeof schemaNameOrObject === "string") { return (0, container_1.getFromContainer)(Validator_1.Validator).validate(schemaNameOrObject, objectOrValidationOptions, maybeValidatorOptions); } else { return (0, container_1.getFromContainer)(Validator_1.Validator).validate(schemaNameOrObject, objectOrValidationOptions); } } __name(validate2, "validate"); exports2.validate = validate2; function validateOrReject(schemaNameOrObject, objectOrValidationOptions, maybeValidatorOptions) { if (typeof schemaNameOrObject === "string") { return (0, container_1.getFromContainer)(Validator_1.Validator).validateOrReject(schemaNameOrObject, objectOrValidationOptions, maybeValidatorOptions); } else { return (0, container_1.getFromContainer)(Validator_1.Validator).validateOrReject(schemaNameOrObject, objectOrValidationOptions); } } __name(validateOrReject, "validateOrReject"); exports2.validateOrReject = validateOrReject; function validateSync(schemaNameOrObject, objectOrValidationOptions, maybeValidatorOptions) { if (typeof schemaNameOrObject === "string") { return (0, container_1.getFromContainer)(Validator_1.Validator).validateSync(schemaNameOrObject, objectOrValidationOptions, maybeValidatorOptions); } else { return (0, container_1.getFromContainer)(Validator_1.Validator).validateSync(schemaNameOrObject, objectOrValidationOptions); } } __name(validateSync, "validateSync"); exports2.validateSync = validateSync; function registerSchema(schema) { (0, MetadataStorage_1.getMetadataStorage)().addValidationSchema(schema); } __name(registerSchema, "registerSchema"); exports2.registerSchema = registerSchema; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/enums/transformation-type.enum.js var require_transformation_type_enum = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/enums/transformation-type.enum.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.TransformationType = void 0; var TransformationType; (function(TransformationType2) { TransformationType2[TransformationType2["PLAIN_TO_CLASS"] = 0] = "PLAIN_TO_CLASS"; TransformationType2[TransformationType2["CLASS_TO_PLAIN"] = 1] = "CLASS_TO_PLAIN"; TransformationType2[TransformationType2["CLASS_TO_CLASS"] = 2] = "CLASS_TO_CLASS"; })(TransformationType = exports2.TransformationType || (exports2.TransformationType = {})); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/enums/index.js var require_enums2 = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/enums/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_transformation_type_enum(), exports2); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/MetadataStorage.js var require_MetadataStorage2 = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/MetadataStorage.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MetadataStorage = void 0; var enums_1 = require_enums2(); var MetadataStorage = class { static { __name(this, "MetadataStorage"); } constructor() { this._typeMetadatas = /* @__PURE__ */ new Map(); this._transformMetadatas = /* @__PURE__ */ new Map(); this._exposeMetadatas = /* @__PURE__ */ new Map(); this._excludeMetadatas = /* @__PURE__ */ new Map(); this._ancestorsMap = /* @__PURE__ */ new Map(); } // ------------------------------------------------------------------------- // Adder Methods // ------------------------------------------------------------------------- addTypeMetadata(metadata) { if (!this._typeMetadatas.has(metadata.target)) { this._typeMetadatas.set(metadata.target, /* @__PURE__ */ new Map()); } this._typeMetadatas.get(metadata.target).set(metadata.propertyName, metadata); } addTransformMetadata(metadata) { if (!this._transformMetadatas.has(metadata.target)) { this._transformMetadatas.set(metadata.target, /* @__PURE__ */ new Map()); } if (!this._transformMetadatas.get(metadata.target).has(metadata.propertyName)) { this._transformMetadatas.get(metadata.target).set(metadata.propertyName, []); } this._transformMetadatas.get(metadata.target).get(metadata.propertyName).push(metadata); } addExposeMetadata(metadata) { if (!this._exposeMetadatas.has(metadata.target)) { this._exposeMetadatas.set(metadata.target, /* @__PURE__ */ new Map()); } this._exposeMetadatas.get(metadata.target).set(metadata.propertyName, metadata); } addExcludeMetadata(metadata) { if (!this._excludeMetadatas.has(metadata.target)) { this._excludeMetadatas.set(metadata.target, /* @__PURE__ */ new Map()); } this._excludeMetadatas.get(metadata.target).set(metadata.propertyName, metadata); } // ------------------------------------------------------------------------- // Public Methods // ------------------------------------------------------------------------- findTransformMetadatas(target, propertyName, transformationType) { return this.findMetadatas(this._transformMetadatas, target, propertyName).filter((metadata) => { if (!metadata.options) return true; if (metadata.options.toClassOnly === true && metadata.options.toPlainOnly === true) return true; if (metadata.options.toClassOnly === true) { return transformationType === enums_1.TransformationType.CLASS_TO_CLASS || transformationType === enums_1.TransformationType.PLAIN_TO_CLASS; } if (metadata.options.toPlainOnly === true) { return transformationType === enums_1.TransformationType.CLASS_TO_PLAIN; } return true; }); } findExcludeMetadata(target, propertyName) { return this.findMetadata(this._excludeMetadatas, target, propertyName); } findExposeMetadata(target, propertyName) { return this.findMetadata(this._exposeMetadatas, target, propertyName); } findExposeMetadataByCustomName(target, name) { return this.getExposedMetadatas(target).find((metadata) => { return metadata.options && metadata.options.name === name; }); } findTypeMetadata(target, propertyName) { return this.findMetadata(this._typeMetadatas, target, propertyName); } getStrategy(target) { const excludeMap = this._excludeMetadatas.get(target); const exclude = excludeMap && excludeMap.get(void 0); const exposeMap = this._exposeMetadatas.get(target); const expose = exposeMap && exposeMap.get(void 0); if (exclude && expose || !exclude && !expose) return "none"; return exclude ? "excludeAll" : "exposeAll"; } getExposedMetadatas(target) { return this.getMetadata(this._exposeMetadatas, target); } getExcludedMetadatas(target) { return this.getMetadata(this._excludeMetadatas, target); } getExposedProperties(target, transformationType) { return this.getExposedMetadatas(target).filter((metadata) => { if (!metadata.options) return true; if (metadata.options.toClassOnly === true && metadata.options.toPlainOnly === true) return true; if (metadata.options.toClassOnly === true) { return transformationType === enums_1.TransformationType.CLASS_TO_CLASS || transformationType === enums_1.TransformationType.PLAIN_TO_CLASS; } if (metadata.options.toPlainOnly === true) { return transformationType === enums_1.TransformationType.CLASS_TO_PLAIN; } return true; }).map((metadata) => metadata.propertyName); } getExcludedProperties(target, transformationType) { return this.getExcludedMetadatas(target).filter((metadata) => { if (!metadata.options) return true; if (metadata.options.toClassOnly === true && metadata.options.toPlainOnly === true) return true; if (metadata.options.toClassOnly === true) { return transformationType === enums_1.TransformationType.CLASS_TO_CLASS || transformationType === enums_1.TransformationType.PLAIN_TO_CLASS; } if (metadata.options.toPlainOnly === true) { return transformationType === enums_1.TransformationType.CLASS_TO_PLAIN; } return true; }).map((metadata) => metadata.propertyName); } clear() { this._typeMetadatas.clear(); this._exposeMetadatas.clear(); this._excludeMetadatas.clear(); this._ancestorsMap.clear(); } // ------------------------------------------------------------------------- // Private Methods // ------------------------------------------------------------------------- getMetadata(metadatas, target) { const metadataFromTargetMap = metadatas.get(target); let metadataFromTarget; if (metadataFromTargetMap) { metadataFromTarget = Array.from(metadataFromTargetMap.values()).filter((meta) => meta.propertyName !== void 0); } const metadataFromAncestors = []; for (const ancestor of this.getAncestors(target)) { const ancestorMetadataMap = metadatas.get(ancestor); if (ancestorMetadataMap) { const metadataFromAncestor = Array.from(ancestorMetadataMap.values()).filter((meta) => meta.propertyName !== void 0); metadataFromAncestors.push(...metadataFromAncestor); } } return metadataFromAncestors.concat(metadataFromTarget || []); } findMetadata(metadatas, target, propertyName) { const metadataFromTargetMap = metadatas.get(target); if (metadataFromTargetMap) { const metadataFromTarget = metadataFromTargetMap.get(propertyName); if (metadataFromTarget) { return metadataFromTarget; } } for (const ancestor of this.getAncestors(target)) { const ancestorMetadataMap = metadatas.get(ancestor); if (ancestorMetadataMap) { const ancestorResult = ancestorMetadataMap.get(propertyName); if (ancestorResult) { return ancestorResult; } } } return void 0; } findMetadatas(metadatas, target, propertyName) { const metadataFromTargetMap = metadatas.get(target); let metadataFromTarget; if (metadataFromTargetMap) { metadataFromTarget = metadataFromTargetMap.get(propertyName); } const metadataFromAncestorsTarget = []; for (const ancestor of this.getAncestors(target)) { const ancestorMetadataMap = metadatas.get(ancestor); if (ancestorMetadataMap) { if (ancestorMetadataMap.has(propertyName)) { metadataFromAncestorsTarget.push(...ancestorMetadataMap.get(propertyName)); } } } return metadataFromAncestorsTarget.slice().reverse().concat((metadataFromTarget || []).slice().reverse()); } getAncestors(target) { if (!target) return []; if (!this._ancestorsMap.has(target)) { const ancestors = []; for (let baseClass = Object.getPrototypeOf(target.prototype.constructor); typeof baseClass.prototype !== "undefined"; baseClass = Object.getPrototypeOf(baseClass.prototype.constructor)) { ancestors.push(baseClass); } this._ancestorsMap.set(target, ancestors); } return this._ancestorsMap.get(target); } }; exports2.MetadataStorage = MetadataStorage; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/storage.js var require_storage = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/storage.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defaultMetadataStorage = void 0; var MetadataStorage_1 = require_MetadataStorage2(); exports2.defaultMetadataStorage = new MetadataStorage_1.MetadataStorage(); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/utils/get-global.util.js var require_get_global_util2 = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/utils/get-global.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getGlobal = void 0; function getGlobal() { if (typeof globalThis !== "undefined") { return globalThis; } if (typeof global !== "undefined") { return global; } if (typeof window !== "undefined") { return window; } if (typeof self !== "undefined") { return self; } } __name(getGlobal, "getGlobal"); exports2.getGlobal = getGlobal; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/utils/is-promise.util.js var require_is_promise_util2 = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/utils/is-promise.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isPromise = void 0; function isPromise(p) { return p !== null && typeof p === "object" && typeof p.then === "function"; } __name(isPromise, "isPromise"); exports2.isPromise = isPromise; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/utils/index.js var require_utils5 = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/utils/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_get_global_util2(), exports2); __exportStar2(require_is_promise_util2(), exports2); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/TransformOperationExecutor.js var require_TransformOperationExecutor = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/TransformOperationExecutor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.TransformOperationExecutor = void 0; var storage_1 = require_storage(); var enums_1 = require_enums2(); var utils_1 = require_utils5(); function instantiateArrayType(arrayType) { const array = new arrayType(); if (!(array instanceof Set) && !("push" in array)) { return []; } return array; } __name(instantiateArrayType, "instantiateArrayType"); var TransformOperationExecutor = class { static { __name(this, "TransformOperationExecutor"); } // ------------------------------------------------------------------------- // Constructor // ------------------------------------------------------------------------- constructor(transformationType, options) { this.transformationType = transformationType; this.options = options; this.recursionStack = /* @__PURE__ */ new Set(); } // ------------------------------------------------------------------------- // Public Methods // ------------------------------------------------------------------------- transform(source, value, targetType, arrayType, isMap, level = 0) { if (Array.isArray(value) || value instanceof Set) { const newValue = arrayType && this.transformationType === enums_1.TransformationType.PLAIN_TO_CLASS ? instantiateArrayType(arrayType) : []; value.forEach((subValue, index) => { const subSource = source ? source[index] : void 0; if (!this.options.enableCircularCheck || !this.isCircular(subValue)) { let realTargetType; if (typeof targetType !== "function" && targetType && targetType.options && targetType.options.discriminator && targetType.options.discriminator.property && targetType.options.discriminator.subTypes) { if (this.transformationType === enums_1.TransformationType.PLAIN_TO_CLASS) { realTargetType = targetType.options.discriminator.subTypes.find((subType) => subType.name === subValue[targetType.options.discriminator.property]); const options = { newObject: newValue, object: subValue, property: void 0 }; const newType = targetType.typeFunction(options); realTargetType === void 0 ? realTargetType = newType : realTargetType = realTargetType.value; if (!targetType.options.keepDiscriminatorProperty) delete subValue[targetType.options.discriminator.property]; } if (this.transformationType === enums_1.TransformationType.CLASS_TO_CLASS) { realTargetType = subValue.constructor; } if (this.transformationType === enums_1.TransformationType.CLASS_TO_PLAIN) { subValue[targetType.options.discriminator.property] = targetType.options.discriminator.subTypes.find((subType) => subType.value === subValue.constructor).name; } } else { realTargetType = targetType; } const value2 = this.transform(subSource, subValue, realTargetType, void 0, subValue instanceof Map, level + 1); if (newValue instanceof Set) { newValue.add(value2); } else { newValue.push(value2); } } else if (this.transformationType === enums_1.TransformationType.CLASS_TO_CLASS) { if (newValue instanceof Set) { newValue.add(subValue); } else { newValue.push(subValue); } } }); return newValue; } else if (targetType === String && !isMap) { if (value === null || value === void 0) return value; return String(value); } else if (targetType === Number && !isMap) { if (value === null || value === void 0) return value; return Number(value); } else if (targetType === Boolean && !isMap) { if (value === null || value === void 0) return value; return Boolean(value); } else if ((targetType === Date || value instanceof Date) && !isMap) { if (value instanceof Date) { return new Date(value.valueOf()); } if (value === null || value === void 0) return value; return new Date(value); } else if (!!(0, utils_1.getGlobal)().Buffer && (targetType === Buffer || value instanceof Buffer) && !isMap) { if (value === null || value === void 0) return value; return Buffer.from(value); } else if ((0, utils_1.isPromise)(value) && !isMap) { return new Promise((resolve, reject) => { value.then((data) => resolve(this.transform(void 0, data, targetType, void 0, void 0, level + 1)), reject); }); } else if (!isMap && value !== null && typeof value === "object" && typeof value.then === "function") { return value; } else if (typeof value === "object" && value !== null) { if (!targetType && value.constructor !== Object) if (!Array.isArray(value) && value.constructor === Array) { } else { targetType = value.constructor; } if (!targetType && source) targetType = source.constructor; if (this.options.enableCircularCheck) { this.recursionStack.add(value); } const keys = this.getKeys(targetType, value, isMap); let newValue = source ? source : {}; if (!source && (this.transformationType === enums_1.TransformationType.PLAIN_TO_CLASS || this.transformationType === enums_1.TransformationType.CLASS_TO_CLASS)) { if (isMap) { newValue = /* @__PURE__ */ new Map(); } else if (targetType) { newValue = new targetType(); } else { newValue = {}; } } for (const key of keys) { if (key === "__proto__" || key === "constructor") { continue; } const valueKey = key; let newValueKey = key, propertyName = key; if (!this.options.ignoreDecorators && targetType) { if (this.transformationType === enums_1.TransformationType.PLAIN_TO_CLASS) { const exposeMetadata = storage_1.defaultMetadataStorage.findExposeMetadataByCustomName(targetType, key); if (exposeMetadata) { propertyName = exposeMetadata.propertyName; newValueKey = exposeMetadata.propertyName; } } else if (this.transformationType === enums_1.TransformationType.CLASS_TO_PLAIN || this.transformationType === enums_1.TransformationType.CLASS_TO_CLASS) { const exposeMetadata = storage_1.defaultMetadataStorage.findExposeMetadata(targetType, key); if (exposeMetadata && exposeMetadata.options && exposeMetadata.options.name) { newValueKey = exposeMetadata.options.name; } } } let subValue = void 0; if (this.transformationType === enums_1.TransformationType.PLAIN_TO_CLASS) { subValue = value[valueKey]; } else { if (value instanceof Map) { subValue = value.get(valueKey); } else if (value[valueKey] instanceof Function) { subValue = value[valueKey](); } else { subValue = value[valueKey]; } } let type = void 0, isSubValueMap = subValue instanceof Map; if (targetType && isMap) { type = targetType; } else if (targetType) { const metadata = storage_1.defaultMetadataStorage.findTypeMetadata(targetType, propertyName); if (metadata) { const options = { newObject: newValue, object: value, property: propertyName }; const newType = metadata.typeFunction ? metadata.typeFunction(options) : metadata.reflectedType; if (metadata.options && metadata.options.discriminator && metadata.options.discriminator.property && metadata.options.discriminator.subTypes) { if (!(value[valueKey] instanceof Array)) { if (this.transformationType === enums_1.TransformationType.PLAIN_TO_CLASS) { type = metadata.options.discriminator.subTypes.find((subType) => { if (subValue && subValue instanceof Object && metadata.options.discriminator.property in subValue) { return subType.name === subValue[metadata.options.discriminator.property]; } }); type === void 0 ? type = newType : type = type.value; if (!metadata.options.keepDiscriminatorProperty) { if (subValue && subValue instanceof Object && metadata.options.discriminator.property in subValue) { delete subValue[metadata.options.discriminator.property]; } } } if (this.transformationType === enums_1.TransformationType.CLASS_TO_CLASS) { type = subValue.constructor; } if (this.transformationType === enums_1.TransformationType.CLASS_TO_PLAIN) { if (subValue) { subValue[metadata.options.discriminator.property] = metadata.options.discriminator.subTypes.find((subType) => subType.value === subValue.constructor).name; } } } else { type = metadata; } } else { type = newType; } isSubValueMap = isSubValueMap || metadata.reflectedType === Map; } else if (this.options.targetMaps) { this.options.targetMaps.filter((map) => map.target === targetType && !!map.properties[propertyName]).forEach((map) => type = map.properties[propertyName]); } else if (this.options.enableImplicitConversion && this.transformationType === enums_1.TransformationType.PLAIN_TO_CLASS) { const reflectedType = Reflect.getMetadata("design:type", targetType.prototype, propertyName); if (reflectedType) { type = reflectedType; } } } const arrayType2 = Array.isArray(value[valueKey]) ? this.getReflectedType(targetType, propertyName) : void 0; const subSource = source ? source[valueKey] : void 0; if (newValue.constructor.prototype) { const descriptor = Object.getOwnPropertyDescriptor(newValue.constructor.prototype, newValueKey); if ((this.transformationType === enums_1.TransformationType.PLAIN_TO_CLASS || this.transformationType === enums_1.TransformationType.CLASS_TO_CLASS) && // eslint-disable-next-line @typescript-eslint/unbound-method (descriptor && !descriptor.set || newValue[newValueKey] instanceof Function)) continue; } if (!this.options.enableCircularCheck || !this.isCircular(subValue)) { const transformKey = this.transformationType === enums_1.TransformationType.PLAIN_TO_CLASS ? newValueKey : key; let finalValue; if (this.transformationType === enums_1.TransformationType.CLASS_TO_PLAIN) { finalValue = value[transformKey]; finalValue = this.applyCustomTransformations(finalValue, targetType, transformKey, value, this.transformationType); finalValue = value[transformKey] === finalValue ? subValue : finalValue; finalValue = this.transform(subSource, finalValue, type, arrayType2, isSubValueMap, level + 1); } else { if (subValue === void 0 && this.options.exposeDefaultValues) { finalValue = newValue[newValueKey]; } else { finalValue = this.transform(subSource, subValue, type, arrayType2, isSubValueMap, level + 1); finalValue = this.applyCustomTransformations(finalValue, targetType, transformKey, value, this.transformationType); } } if (finalValue !== void 0 || this.options.exposeUnsetFields) { if (newValue instanceof Map) { newValue.set(newValueKey, finalValue); } else { newValue[newValueKey] = finalValue; } } } else if (this.transformationType === enums_1.TransformationType.CLASS_TO_CLASS) { let finalValue = subValue; finalValue = this.applyCustomTransformations(finalValue, targetType, key, value, this.transformationType); if (finalValue !== void 0 || this.options.exposeUnsetFields) { if (newValue instanceof Map) { newValue.set(newValueKey, finalValue); } else { newValue[newValueKey] = finalValue; } } } } if (this.options.enableCircularCheck) { this.recursionStack.delete(value); } return newValue; } else { return value; } } applyCustomTransformations(value, target, key, obj2, transformationType) { let metadatas = storage_1.defaultMetadataStorage.findTransformMetadatas(target, key, this.transformationType); if (this.options.version !== void 0) { metadatas = metadatas.filter((metadata) => { if (!metadata.options) return true; return this.checkVersion(metadata.options.since, metadata.options.until); }); } if (this.options.groups && this.options.groups.length) { metadatas = metadatas.filter((metadata) => { if (!metadata.options) return true; return this.checkGroups(metadata.options.groups); }); } else { metadatas = metadatas.filter((metadata) => { return !metadata.options || !metadata.options.groups || !metadata.options.groups.length; }); } metadatas.forEach((metadata) => { value = metadata.transformFn({ value, key, obj: obj2, type: transformationType, options: this.options }); }); return value; } // preventing circular references isCircular(object) { return this.recursionStack.has(object); } getReflectedType(target, propertyName) { if (!target) return void 0; const meta = storage_1.defaultMetadataStorage.findTypeMetadata(target, propertyName); return meta ? meta.reflectedType : void 0; } getKeys(target, object, isMap) { let strategy = storage_1.defaultMetadataStorage.getStrategy(target); if (strategy === "none") strategy = this.options.strategy || "exposeAll"; let keys = []; if (strategy === "exposeAll" || isMap) { if (object instanceof Map) { keys = Array.from(object.keys()); } else { keys = Object.keys(object); } } if (isMap) { return keys; } if (this.options.ignoreDecorators && this.options.excludeExtraneousValues && target) { const exposedProperties = storage_1.defaultMetadataStorage.getExposedProperties(target, this.transformationType); const excludedProperties = storage_1.defaultMetadataStorage.getExcludedProperties(target, this.transformationType); keys = [...exposedProperties, ...excludedProperties]; } if (!this.options.ignoreDecorators && target) { let exposedProperties = storage_1.defaultMetadataStorage.getExposedProperties(target, this.transformationType); if (this.transformationType === enums_1.TransformationType.PLAIN_TO_CLASS) { exposedProperties = exposedProperties.map((key) => { const exposeMetadata = storage_1.defaultMetadataStorage.findExposeMetadata(target, key); if (exposeMetadata && exposeMetadata.options && exposeMetadata.options.name) { return exposeMetadata.options.name; } return key; }); } if (this.options.excludeExtraneousValues) { keys = exposedProperties; } else { keys = keys.concat(exposedProperties); } const excludedProperties = storage_1.defaultMetadataStorage.getExcludedProperties(target, this.transformationType); if (excludedProperties.length > 0) { keys = keys.filter((key) => { return !excludedProperties.includes(key); }); } if (this.options.version !== void 0) { keys = keys.filter((key) => { const exposeMetadata = storage_1.defaultMetadataStorage.findExposeMetadata(target, key); if (!exposeMetadata || !exposeMetadata.options) return true; return this.checkVersion(exposeMetadata.options.since, exposeMetadata.options.until); }); } if (this.options.groups && this.options.groups.length) { keys = keys.filter((key) => { const exposeMetadata = storage_1.defaultMetadataStorage.findExposeMetadata(target, key); if (!exposeMetadata || !exposeMetadata.options) return true; return this.checkGroups(exposeMetadata.options.groups); }); } else { keys = keys.filter((key) => { const exposeMetadata = storage_1.defaultMetadataStorage.findExposeMetadata(target, key); return !exposeMetadata || !exposeMetadata.options || !exposeMetadata.options.groups || !exposeMetadata.options.groups.length; }); } } if (this.options.excludePrefixes && this.options.excludePrefixes.length) { keys = keys.filter((key) => this.options.excludePrefixes.every((prefix) => { return key.substr(0, prefix.length) !== prefix; })); } keys = keys.filter((key, index, self2) => { return self2.indexOf(key) === index; }); return keys; } checkVersion(since, until) { let decision = true; if (decision && since) decision = this.options.version >= since; if (decision && until) decision = this.options.version < until; return decision; } checkGroups(groups) { if (!groups) return true; return this.options.groups.some((optionGroup) => groups.includes(optionGroup)); } }; exports2.TransformOperationExecutor = TransformOperationExecutor; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/constants/default-options.constant.js var require_default_options_constant = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/constants/default-options.constant.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defaultOptions = void 0; exports2.defaultOptions = { enableCircularCheck: false, enableImplicitConversion: false, excludeExtraneousValues: false, excludePrefixes: void 0, exposeDefaultValues: false, exposeUnsetFields: true, groups: void 0, ignoreDecorators: false, strategy: void 0, targetMaps: void 0, version: void 0 }; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/ClassTransformer.js var require_ClassTransformer = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/ClassTransformer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ClassTransformer = void 0; var TransformOperationExecutor_1 = require_TransformOperationExecutor(); var enums_1 = require_enums2(); var default_options_constant_1 = require_default_options_constant(); var ClassTransformer = class { static { __name(this, "ClassTransformer"); } instanceToPlain(object, options) { const executor = new TransformOperationExecutor_1.TransformOperationExecutor(enums_1.TransformationType.CLASS_TO_PLAIN, { ...default_options_constant_1.defaultOptions, ...options }); return executor.transform(void 0, object, void 0, void 0, void 0, void 0); } classToPlainFromExist(object, plainObject, options) { const executor = new TransformOperationExecutor_1.TransformOperationExecutor(enums_1.TransformationType.CLASS_TO_PLAIN, { ...default_options_constant_1.defaultOptions, ...options }); return executor.transform(plainObject, object, void 0, void 0, void 0, void 0); } plainToInstance(cls, plain, options) { const executor = new TransformOperationExecutor_1.TransformOperationExecutor(enums_1.TransformationType.PLAIN_TO_CLASS, { ...default_options_constant_1.defaultOptions, ...options }); return executor.transform(void 0, plain, cls, void 0, void 0, void 0); } plainToClassFromExist(clsObject, plain, options) { const executor = new TransformOperationExecutor_1.TransformOperationExecutor(enums_1.TransformationType.PLAIN_TO_CLASS, { ...default_options_constant_1.defaultOptions, ...options }); return executor.transform(clsObject, plain, void 0, void 0, void 0, void 0); } instanceToInstance(object, options) { const executor = new TransformOperationExecutor_1.TransformOperationExecutor(enums_1.TransformationType.CLASS_TO_CLASS, { ...default_options_constant_1.defaultOptions, ...options }); return executor.transform(void 0, object, void 0, void 0, void 0, void 0); } classToClassFromExist(object, fromObject, options) { const executor = new TransformOperationExecutor_1.TransformOperationExecutor(enums_1.TransformationType.CLASS_TO_CLASS, { ...default_options_constant_1.defaultOptions, ...options }); return executor.transform(fromObject, object, void 0, void 0, void 0, void 0); } serialize(object, options) { return JSON.stringify(this.instanceToPlain(object, options)); } /** * Deserializes given JSON string to a object of the given class. */ deserialize(cls, json, options) { const jsonObject = JSON.parse(json); return this.plainToInstance(cls, jsonObject, options); } /** * Deserializes given JSON string to an array of objects of the given class. */ deserializeArray(cls, json, options) { const jsonObject = JSON.parse(json); return this.plainToInstance(cls, jsonObject, options); } }; exports2.ClassTransformer = ClassTransformer; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/exclude.decorator.js var require_exclude_decorator = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/exclude.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Exclude = void 0; var storage_1 = require_storage(); function Exclude(options = {}) { return function(object, propertyName) { storage_1.defaultMetadataStorage.addExcludeMetadata({ target: object instanceof Function ? object : object.constructor, propertyName, options }); }; } __name(Exclude, "Exclude"); exports2.Exclude = Exclude; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/expose.decorator.js var require_expose_decorator = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/expose.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Expose = void 0; var storage_1 = require_storage(); function Expose(options = {}) { return function(object, propertyName) { storage_1.defaultMetadataStorage.addExposeMetadata({ target: object instanceof Function ? object : object.constructor, propertyName, options }); }; } __name(Expose, "Expose"); exports2.Expose = Expose; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/transform-instance-to-instance.decorator.js var require_transform_instance_to_instance_decorator = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/transform-instance-to-instance.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.TransformInstanceToInstance = void 0; var ClassTransformer_1 = require_ClassTransformer(); function TransformInstanceToInstance(params) { return function(target, propertyKey, descriptor) { const classTransformer = new ClassTransformer_1.ClassTransformer(); const originalMethod = descriptor.value; descriptor.value = function(...args) { const result = originalMethod.apply(this, args); const isPromise = !!result && (typeof result === "object" || typeof result === "function") && typeof result.then === "function"; return isPromise ? result.then((data) => classTransformer.instanceToInstance(data, params)) : classTransformer.instanceToInstance(result, params); }; }; } __name(TransformInstanceToInstance, "TransformInstanceToInstance"); exports2.TransformInstanceToInstance = TransformInstanceToInstance; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/transform-instance-to-plain.decorator.js var require_transform_instance_to_plain_decorator = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/transform-instance-to-plain.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.TransformInstanceToPlain = void 0; var ClassTransformer_1 = require_ClassTransformer(); function TransformInstanceToPlain(params) { return function(target, propertyKey, descriptor) { const classTransformer = new ClassTransformer_1.ClassTransformer(); const originalMethod = descriptor.value; descriptor.value = function(...args) { const result = originalMethod.apply(this, args); const isPromise = !!result && (typeof result === "object" || typeof result === "function") && typeof result.then === "function"; return isPromise ? result.then((data) => classTransformer.instanceToPlain(data, params)) : classTransformer.instanceToPlain(result, params); }; }; } __name(TransformInstanceToPlain, "TransformInstanceToPlain"); exports2.TransformInstanceToPlain = TransformInstanceToPlain; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/transform-plain-to-instance.decorator.js var require_transform_plain_to_instance_decorator = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/transform-plain-to-instance.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.TransformPlainToInstance = void 0; var ClassTransformer_1 = require_ClassTransformer(); function TransformPlainToInstance(classType, params) { return function(target, propertyKey, descriptor) { const classTransformer = new ClassTransformer_1.ClassTransformer(); const originalMethod = descriptor.value; descriptor.value = function(...args) { const result = originalMethod.apply(this, args); const isPromise = !!result && (typeof result === "object" || typeof result === "function") && typeof result.then === "function"; return isPromise ? result.then((data) => classTransformer.plainToInstance(classType, data, params)) : classTransformer.plainToInstance(classType, result, params); }; }; } __name(TransformPlainToInstance, "TransformPlainToInstance"); exports2.TransformPlainToInstance = TransformPlainToInstance; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/transform.decorator.js var require_transform_decorator = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/transform.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Transform = void 0; var storage_1 = require_storage(); function Transform(transformFn, options = {}) { return function(target, propertyName) { storage_1.defaultMetadataStorage.addTransformMetadata({ target: target.constructor, propertyName, transformFn, options }); }; } __name(Transform, "Transform"); exports2.Transform = Transform; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/type.decorator.js var require_type_decorator = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/type.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Type = void 0; var storage_1 = require_storage(); function Type(typeFunction, options = {}) { return function(target, propertyName) { const reflectedType = Reflect.getMetadata("design:type", target, propertyName); storage_1.defaultMetadataStorage.addTypeMetadata({ target: target.constructor, propertyName, reflectedType, typeFunction, options }); }; } __name(Type, "Type"); exports2.Type = Type; } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/index.js var require_decorators3 = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/decorators/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_exclude_decorator(), exports2); __exportStar2(require_expose_decorator(), exports2); __exportStar2(require_transform_instance_to_instance_decorator(), exports2); __exportStar2(require_transform_instance_to_plain_decorator(), exports2); __exportStar2(require_transform_plain_to_instance_decorator(), exports2); __exportStar2(require_transform_decorator(), exports2); __exportStar2(require_type_decorator(), exports2); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/decorator-options/expose-options.interface.js var require_expose_options_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/decorator-options/expose-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/decorator-options/exclude-options.interface.js var require_exclude_options_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/decorator-options/exclude-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/decorator-options/transform-options.interface.js var require_transform_options_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/decorator-options/transform-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/decorator-options/type-discriminator-descriptor.interface.js var require_type_discriminator_descriptor_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/decorator-options/type-discriminator-descriptor.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/decorator-options/type-options.interface.js var require_type_options_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/decorator-options/type-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/metadata/exclude-metadata.interface.js var require_exclude_metadata_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/metadata/exclude-metadata.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/metadata/expose-metadata.interface.js var require_expose_metadata_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/metadata/expose-metadata.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/metadata/transform-metadata.interface.js var require_transform_metadata_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/metadata/transform-metadata.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/metadata/transform-fn-params.interface.js var require_transform_fn_params_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/metadata/transform-fn-params.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/metadata/type-metadata.interface.js var require_type_metadata_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/metadata/type-metadata.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/class-constructor.type.js var require_class_constructor_type = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/class-constructor.type.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/class-transformer-options.interface.js var require_class_transformer_options_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/class-transformer-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/target-map.interface.js var require_target_map_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/target-map.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/type-help-options.interface.js var require_type_help_options_interface = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/type-help-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/index.js var require_interfaces3 = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/interfaces/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_expose_options_interface(), exports2); __exportStar2(require_exclude_options_interface(), exports2); __exportStar2(require_transform_options_interface(), exports2); __exportStar2(require_type_discriminator_descriptor_interface(), exports2); __exportStar2(require_type_options_interface(), exports2); __exportStar2(require_exclude_metadata_interface(), exports2); __exportStar2(require_expose_metadata_interface(), exports2); __exportStar2(require_transform_metadata_interface(), exports2); __exportStar2(require_transform_fn_params_interface(), exports2); __exportStar2(require_type_metadata_interface(), exports2); __exportStar2(require_class_constructor_type(), exports2); __exportStar2(require_class_transformer_options_interface(), exports2); __exportStar2(require_target_map_interface(), exports2); __exportStar2(require_type_help_options_interface(), exports2); } }); // ../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/index.js var require_cjs2 = __commonJS({ "../../node_modules/.pnpm/class-transformer@0.5.1/node_modules/class-transformer/cjs/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.deserializeArray = exports2.deserialize = exports2.serialize = exports2.classToClassFromExist = exports2.instanceToInstance = exports2.plainToClassFromExist = exports2.plainToInstance = exports2.plainToClass = exports2.classToPlainFromExist = exports2.instanceToPlain = exports2.classToPlain = exports2.ClassTransformer = void 0; var ClassTransformer_1 = require_ClassTransformer(); var ClassTransformer_2 = require_ClassTransformer(); Object.defineProperty(exports2, "ClassTransformer", { enumerable: true, get: /* @__PURE__ */ __name(function() { return ClassTransformer_2.ClassTransformer; }, "get") }); __exportStar2(require_decorators3(), exports2); __exportStar2(require_interfaces3(), exports2); __exportStar2(require_enums2(), exports2); var classTransformer = new ClassTransformer_1.ClassTransformer(); function classToPlain(object, options) { return classTransformer.instanceToPlain(object, options); } __name(classToPlain, "classToPlain"); exports2.classToPlain = classToPlain; function instanceToPlain(object, options) { return classTransformer.instanceToPlain(object, options); } __name(instanceToPlain, "instanceToPlain"); exports2.instanceToPlain = instanceToPlain; function classToPlainFromExist(object, plainObject, options) { return classTransformer.classToPlainFromExist(object, plainObject, options); } __name(classToPlainFromExist, "classToPlainFromExist"); exports2.classToPlainFromExist = classToPlainFromExist; function plainToClass(cls, plain, options) { return classTransformer.plainToInstance(cls, plain, options); } __name(plainToClass, "plainToClass"); exports2.plainToClass = plainToClass; function plainToInstance(cls, plain, options) { return classTransformer.plainToInstance(cls, plain, options); } __name(plainToInstance, "plainToInstance"); exports2.plainToInstance = plainToInstance; function plainToClassFromExist(clsObject, plain, options) { return classTransformer.plainToClassFromExist(clsObject, plain, options); } __name(plainToClassFromExist, "plainToClassFromExist"); exports2.plainToClassFromExist = plainToClassFromExist; function instanceToInstance(object, options) { return classTransformer.instanceToInstance(object, options); } __name(instanceToInstance, "instanceToInstance"); exports2.instanceToInstance = instanceToInstance; function classToClassFromExist(object, fromObject, options) { return classTransformer.classToClassFromExist(object, fromObject, options); } __name(classToClassFromExist, "classToClassFromExist"); exports2.classToClassFromExist = classToClassFromExist; function serialize(object, options) { return classTransformer.serialize(object, options); } __name(serialize, "serialize"); exports2.serialize = serialize; function deserialize(cls, json, options) { return classTransformer.deserialize(cls, json, options); } __name(deserialize, "deserialize"); exports2.deserialize = deserialize; function deserializeArray(cls, json, options) { return classTransformer.deserializeArray(cls, json, options); } __name(deserializeArray, "deserializeArray"); exports2.deserializeArray = deserializeArray; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/validation.pipe.js var require_validation_pipe = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/validation.pipe.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ValidationPipe = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var iterare_1 = require_lib(); var util_1 = require("util"); var decorators_1 = require_decorators(); var core_12 = require_core(); var http_status_enum_1 = require_http_status_enum(); var http_error_by_code_util_1 = require_http_error_by_code_util(); var load_package_util_1 = require_load_package_util(); var shared_utils_1 = require_shared_utils(); var classValidator = {}; var classTransformer = {}; var ValidationPipe = class ValidationPipe { static { __name(this, "ValidationPipe"); } constructor(options) { options = options || {}; const { transform, disableErrorMessages, errorHttpStatusCode, expectedType, transformOptions, validateCustomDecorators, ...validatorOptions } = options; this.validatorOptions = { forbidUnknownValues: false, ...validatorOptions }; this.isTransformEnabled = !!transform; this.transformOptions = transformOptions; this.isDetailedOutputDisabled = disableErrorMessages; this.validateCustomDecorators = validateCustomDecorators || false; this.errorHttpStatusCode = errorHttpStatusCode || http_status_enum_1.HttpStatus.BAD_REQUEST; this.expectedType = expectedType; this.exceptionFactory = options.exceptionFactory || this.createExceptionFactory(); classValidator = this.loadValidator(options.validatorPackage); classTransformer = this.loadTransformer(options.transformerPackage); } loadValidator(validatorPackage) { return validatorPackage ?? (0, load_package_util_1.loadPackage)("class-validator", "ValidationPipe", () => require_cjs()); } loadTransformer(transformerPackage) { return transformerPackage ?? (0, load_package_util_1.loadPackage)("class-transformer", "ValidationPipe", () => require_cjs2()); } async transform(value, metadata) { if (this.expectedType) { metadata = { ...metadata, metatype: this.expectedType }; } const metatype = metadata.metatype; if (!metatype || !this.toValidate(metadata)) { return this.isTransformEnabled ? this.transformPrimitive(value, metadata) : value; } const originalValue = value; value = this.toEmptyIfNil(value, metatype); const isNil = value !== originalValue; const isPrimitive2 = this.isPrimitive(value); this.stripProtoKeys(value); let entity = classTransformer.plainToClass(metatype, value, this.transformOptions); const originalEntity = entity; const isCtorNotEqual = entity.constructor !== metatype; if (isCtorNotEqual && !isPrimitive2) { entity.constructor = metatype; } else if (isCtorNotEqual) { entity = { constructor: metatype }; } const errors = await this.validate(entity, this.validatorOptions); if (errors.length > 0) { throw await this.exceptionFactory(errors); } if (isPrimitive2) { entity = originalEntity; } if (this.isTransformEnabled) { return entity; } if (isNil) { return originalValue; } const shouldTransformToPlain = Object.keys(this.validatorOptions).length > 1; return shouldTransformToPlain ? classTransformer.classToPlain(entity, this.transformOptions) : value; } createExceptionFactory() { return (validationErrors = []) => { if (this.isDetailedOutputDisabled) { return new http_error_by_code_util_1.HttpErrorByCode[this.errorHttpStatusCode](); } const errors = this.flattenValidationErrors(validationErrors); return new http_error_by_code_util_1.HttpErrorByCode[this.errorHttpStatusCode](errors); }; } toValidate(metadata) { const { metatype, type } = metadata; if (type === "custom" && !this.validateCustomDecorators) { return false; } const types = [String, Boolean, Number, Array, Object, Buffer, Date]; return !types.some((t) => metatype === t) && !(0, shared_utils_1.isNil)(metatype); } transformPrimitive(value, metadata) { if (!metadata.data) { return value; } const { type, metatype } = metadata; if (type !== "param" && type !== "query") { return value; } if (metatype === Boolean) { if ((0, shared_utils_1.isUndefined)(value)) { return void 0; } return value === true || value === "true"; } if (metatype === Number) { return +value; } if (metatype === String && !(0, shared_utils_1.isUndefined)(value)) { return String(value); } return value; } toEmptyIfNil(value, metatype) { if (!(0, shared_utils_1.isNil)(value)) { return value; } if (typeof metatype === "function" || metatype && "prototype" in metatype && metatype.prototype?.constructor) { return {}; } return ""; } stripProtoKeys(value) { if (value == null || typeof value !== "object" || util_1.types.isTypedArray(value)) { return; } if (Array.isArray(value)) { for (const v of value) { this.stripProtoKeys(v); } return; } delete value.__proto__; for (const key in value) { this.stripProtoKeys(value[key]); } } isPrimitive(value) { return ["number", "boolean", "string"].includes(typeof value); } validate(object, validatorOptions) { return classValidator.validate(object, validatorOptions); } flattenValidationErrors(validationErrors) { return (0, iterare_1.iterate)(validationErrors).map((error) => this.mapChildrenToValidationErrors(error)).flatten().filter((item) => !!item.constraints).map((item) => Object.values(item.constraints)).flatten().toArray(); } mapChildrenToValidationErrors(error, parentPath) { if (!(error.children && error.children.length)) { return [error]; } const validationErrors = []; parentPath = parentPath ? `${parentPath}.${error.property}` : error.property; for (const item of error.children) { if (item.children && item.children.length) { validationErrors.push(...this.mapChildrenToValidationErrors(item, parentPath)); } validationErrors.push(this.prependConstraintsWithParentProp(parentPath, item)); } return validationErrors; } prependConstraintsWithParentProp(parentPath, error) { const constraints = {}; for (const key in error.constraints) { constraints[key] = `${parentPath}.${error.constraints[key]}`; } return { ...error, constraints }; } }; exports2.ValidationPipe = ValidationPipe; exports2.ValidationPipe = ValidationPipe = tslib_1.__decorate([ (0, core_12.Injectable)(), tslib_1.__param(0, (0, decorators_1.Optional)()), tslib_1.__metadata("design:paramtypes", [Object]) ], ValidationPipe); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-array.pipe.js var require_parse_array_pipe = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-array.pipe.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParseArrayPipe = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var injectable_decorator_1 = require_injectable_decorator(); var optional_decorator_1 = require_optional_decorator(); var http_status_enum_1 = require_http_status_enum(); var http_error_by_code_util_1 = require_http_error_by_code_util(); var shared_utils_1 = require_shared_utils(); var validation_pipe_1 = require_validation_pipe(); var VALIDATION_ERROR_MESSAGE = "Validation failed (parsable array expected)"; var DEFAULT_ARRAY_SEPARATOR = ","; var ParseArrayPipe = class ParseArrayPipe { static { __name(this, "ParseArrayPipe"); } constructor(options = {}) { this.options = options; this.validationPipe = new validation_pipe_1.ValidationPipe({ transform: true, validateCustomDecorators: true, ...options }); const { exceptionFactory, errorHttpStatusCode = http_status_enum_1.HttpStatus.BAD_REQUEST } = options; this.exceptionFactory = exceptionFactory || ((error) => new http_error_by_code_util_1.HttpErrorByCode[errorHttpStatusCode](error)); } /** * Method that accesses and performs optional transformation on argument for * in-flight requests. * * @param value currently processed route argument * @param metadata contains metadata about the currently processed route argument */ async transform(value, metadata) { if (!value && !this.options.optional) { throw this.exceptionFactory(VALIDATION_ERROR_MESSAGE); } else if ((0, shared_utils_1.isNil)(value) && this.options.optional) { return value; } if (!Array.isArray(value)) { if (!(0, shared_utils_1.isString)(value)) { throw this.exceptionFactory(VALIDATION_ERROR_MESSAGE); } else { try { value = value.trim().split(this.options.separator || DEFAULT_ARRAY_SEPARATOR); } catch { throw this.exceptionFactory(VALIDATION_ERROR_MESSAGE); } } } if (this.options.items) { const validationMetadata = { metatype: this.options.items, type: "query" }; const isExpectedTypePrimitive = this.isExpectedTypePrimitive(); const toClassInstance = /* @__PURE__ */ __name((item, index) => { if (this.options.items !== String) { try { item = JSON.parse(item); } catch { } } if (isExpectedTypePrimitive) { return this.validatePrimitive(item, index); } return this.validationPipe.transform(item, validationMetadata); }, "toClassInstance"); if (this.options.stopAtFirstError === false) { let errors = []; const targetArray = value; for (let i = 0; i < targetArray.length; i++) { try { targetArray[i] = await toClassInstance(targetArray[i]); } catch (err) { let message; if (err.getResponse) { const response = err.getResponse(); if (Array.isArray(response.message)) { message = response.message.map((item) => `[${i}] ${item}`); } else { message = `[${i}] ${response.message}`; } } else { message = err; } errors = errors.concat(message); } } if (errors.length > 0) { throw this.exceptionFactory(errors); } return targetArray; } else { value = await Promise.all(value.map(toClassInstance)); } } return value; } isExpectedTypePrimitive() { return [Boolean, Number, String].includes(this.options.items); } validatePrimitive(originalValue, index) { if (this.options.items === Number) { const value = originalValue !== null && originalValue !== "" ? +originalValue : NaN; if (isNaN(value)) { throw this.exceptionFactory(`${(0, shared_utils_1.isUndefined)(index) ? "" : `[${index}] `}item must be a number`); } return value; } else if (this.options.items === String) { if (!(0, shared_utils_1.isString)(originalValue)) { return `${originalValue}`; } } else if (this.options.items === Boolean) { if (typeof originalValue !== "boolean") { throw this.exceptionFactory(`${(0, shared_utils_1.isUndefined)(index) ? "" : `[${index}] `}item must be a boolean value`); } } return originalValue; } }; exports2.ParseArrayPipe = ParseArrayPipe; exports2.ParseArrayPipe = ParseArrayPipe = tslib_1.__decorate([ (0, injectable_decorator_1.Injectable)(), tslib_1.__param(0, (0, optional_decorator_1.Optional)()), tslib_1.__metadata("design:paramtypes", [Object]) ], ParseArrayPipe); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-bool.pipe.js var require_parse_bool_pipe = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-bool.pipe.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParseBoolPipe = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var injectable_decorator_1 = require_injectable_decorator(); var optional_decorator_1 = require_optional_decorator(); var http_status_enum_1 = require_http_status_enum(); var http_error_by_code_util_1 = require_http_error_by_code_util(); var shared_utils_1 = require_shared_utils(); var ParseBoolPipe = class ParseBoolPipe { static { __name(this, "ParseBoolPipe"); } constructor(options) { this.options = options; options = options || {}; const { exceptionFactory, errorHttpStatusCode = http_status_enum_1.HttpStatus.BAD_REQUEST } = options; this.exceptionFactory = exceptionFactory || ((error) => new http_error_by_code_util_1.HttpErrorByCode[errorHttpStatusCode](error)); } /** * Method that accesses and performs optional transformation on argument for * in-flight requests. * * @param value currently processed route argument * @param metadata contains metadata about the currently processed route argument */ async transform(value, metadata) { if ((0, shared_utils_1.isNil)(value) && this.options?.optional) { return value; } if (this.isTrue(value)) { return true; } if (this.isFalse(value)) { return false; } throw this.exceptionFactory("Validation failed (boolean string is expected)"); } /** * @param value currently processed route argument * @returns `true` if `value` is said 'true', ie., if it is equal to the boolean * `true` or the string `"true"` */ isTrue(value) { return value === true || value === "true"; } /** * @param value currently processed route argument * @returns `true` if `value` is said 'false', ie., if it is equal to the boolean * `false` or the string `"false"` */ isFalse(value) { return value === false || value === "false"; } }; exports2.ParseBoolPipe = ParseBoolPipe; exports2.ParseBoolPipe = ParseBoolPipe = tslib_1.__decorate([ (0, injectable_decorator_1.Injectable)(), tslib_1.__param(0, (0, optional_decorator_1.Optional)()), tslib_1.__metadata("design:paramtypes", [Object]) ], ParseBoolPipe); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-int.pipe.js var require_parse_int_pipe = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-int.pipe.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParseIntPipe = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var injectable_decorator_1 = require_injectable_decorator(); var optional_decorator_1 = require_optional_decorator(); var http_status_enum_1 = require_http_status_enum(); var http_error_by_code_util_1 = require_http_error_by_code_util(); var shared_utils_1 = require_shared_utils(); var ParseIntPipe = class ParseIntPipe { static { __name(this, "ParseIntPipe"); } constructor(options) { this.options = options; options = options || {}; const { exceptionFactory, errorHttpStatusCode = http_status_enum_1.HttpStatus.BAD_REQUEST } = options; this.exceptionFactory = exceptionFactory || ((error) => new http_error_by_code_util_1.HttpErrorByCode[errorHttpStatusCode](error)); } /** * Method that accesses and performs optional transformation on argument for * in-flight requests. * * @param value currently processed route argument * @param metadata contains metadata about the currently processed route argument */ async transform(value, metadata) { if ((0, shared_utils_1.isNil)(value) && this.options?.optional) { return value; } if (!this.isNumeric(value)) { throw this.exceptionFactory("Validation failed (numeric string is expected)"); } return parseInt(value, 10); } /** * @param value currently processed route argument * @returns `true` if `value` is a valid integer number */ isNumeric(value) { return ["string", "number"].includes(typeof value) && /^-?\d+$/.test(value) && isFinite(value); } }; exports2.ParseIntPipe = ParseIntPipe; exports2.ParseIntPipe = ParseIntPipe = tslib_1.__decorate([ (0, injectable_decorator_1.Injectable)(), tslib_1.__param(0, (0, optional_decorator_1.Optional)()), tslib_1.__metadata("design:paramtypes", [Object]) ], ParseIntPipe); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-float.pipe.js var require_parse_float_pipe = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-float.pipe.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParseFloatPipe = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var core_12 = require_core(); var index_1 = require_common(); var http_error_by_code_util_1 = require_http_error_by_code_util(); var shared_utils_1 = require_shared_utils(); var ParseFloatPipe = class ParseFloatPipe { static { __name(this, "ParseFloatPipe"); } constructor(options) { this.options = options; options = options || {}; const { exceptionFactory, errorHttpStatusCode = index_1.HttpStatus.BAD_REQUEST } = options; this.exceptionFactory = exceptionFactory || ((error) => new http_error_by_code_util_1.HttpErrorByCode[errorHttpStatusCode](error)); } /** * Method that accesses and performs optional transformation on argument for * in-flight requests. * * @param value currently processed route argument * @param metadata contains metadata about the currently processed route argument */ async transform(value, metadata) { if ((0, shared_utils_1.isNil)(value) && this.options?.optional) { return value; } if (!this.isNumeric(value)) { throw this.exceptionFactory("Validation failed (numeric string is expected)"); } return parseFloat(value); } /** * @param value currently processed route argument * @returns `true` if `value` is a valid float number */ isNumeric(value) { return ["string", "number"].includes(typeof value) && !isNaN(parseFloat(value)) && isFinite(value); } }; exports2.ParseFloatPipe = ParseFloatPipe; exports2.ParseFloatPipe = ParseFloatPipe = tslib_1.__decorate([ (0, core_12.Injectable)(), tslib_1.__param(0, (0, core_12.Optional)()), tslib_1.__metadata("design:paramtypes", [Object]) ], ParseFloatPipe); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-enum.pipe.js var require_parse_enum_pipe = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-enum.pipe.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParseEnumPipe = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var core_12 = require_core(); var index_1 = require_common(); var http_error_by_code_util_1 = require_http_error_by_code_util(); var shared_utils_1 = require_shared_utils(); var ParseEnumPipe = class ParseEnumPipe { static { __name(this, "ParseEnumPipe"); } constructor(enumType, options) { this.enumType = enumType; this.options = options; if (!enumType) { throw new Error(`"ParseEnumPipe" requires "enumType" argument specified (to validate input values).`); } options = options || {}; const { exceptionFactory, errorHttpStatusCode = index_1.HttpStatus.BAD_REQUEST } = options; this.exceptionFactory = exceptionFactory || ((error) => new http_error_by_code_util_1.HttpErrorByCode[errorHttpStatusCode](error)); } /** * Method that accesses and performs optional transformation on argument for * in-flight requests. * * @param value currently processed route argument * @param metadata contains metadata about the currently processed route argument */ async transform(value, metadata) { if ((0, shared_utils_1.isNil)(value) && this.options?.optional) { return value; } if (!this.isEnum(value)) { throw this.exceptionFactory("Validation failed (enum string is expected)"); } return value; } isEnum(value) { const enumValues = Object.keys(this.enumType).map((item) => this.enumType[item]); return enumValues.includes(value); } }; exports2.ParseEnumPipe = ParseEnumPipe; exports2.ParseEnumPipe = ParseEnumPipe = tslib_1.__decorate([ (0, core_12.Injectable)(), tslib_1.__param(1, (0, core_12.Optional)()), tslib_1.__metadata("design:paramtypes", [Object, Object]) ], ParseEnumPipe); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-uuid.pipe.js var require_parse_uuid_pipe = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/parse-uuid.pipe.js"(exports2) { "use strict"; var ParseUUIDPipe_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParseUUIDPipe = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var injectable_decorator_1 = require_injectable_decorator(); var optional_decorator_1 = require_optional_decorator(); var http_status_enum_1 = require_http_status_enum(); var http_error_by_code_util_1 = require_http_error_by_code_util(); var shared_utils_1 = require_shared_utils(); var ParseUUIDPipe = ParseUUIDPipe_1 = class ParseUUIDPipe { static { __name(this, "ParseUUIDPipe"); } constructor(options) { this.options = options; options = options || {}; const { exceptionFactory, errorHttpStatusCode = http_status_enum_1.HttpStatus.BAD_REQUEST, version: version2 } = options; this.version = version2; this.exceptionFactory = exceptionFactory || ((error) => new http_error_by_code_util_1.HttpErrorByCode[errorHttpStatusCode](error)); } async transform(value, metadata) { if ((0, shared_utils_1.isNil)(value) && this.options?.optional) { return value; } if (!this.isUUID(value, this.version)) { throw this.exceptionFactory(`Validation failed (uuid${this.version ? ` v ${this.version}` : ""} is expected)`); } return value; } isUUID(str, version2 = "all") { if (!(0, shared_utils_1.isString)(str)) { throw this.exceptionFactory("The value passed as UUID is not a string"); } const pattern = ParseUUIDPipe_1.uuidRegExps[version2]; return pattern?.test(str); } }; exports2.ParseUUIDPipe = ParseUUIDPipe; ParseUUIDPipe.uuidRegExps = { 3: /^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i, 4: /^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, 5: /^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, 7: /^[0-9A-F]{8}-[0-9A-F]{4}-7[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i, all: /^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i }; exports2.ParseUUIDPipe = ParseUUIDPipe = ParseUUIDPipe_1 = tslib_1.__decorate([ (0, injectable_decorator_1.Injectable)(), tslib_1.__param(0, (0, optional_decorator_1.Optional)()), tslib_1.__metadata("design:paramtypes", [Object]) ], ParseUUIDPipe); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/file-validator.interface.js var require_file_validator_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/file-validator.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.FileValidator = void 0; var FileValidator = class { static { __name(this, "FileValidator"); } constructor(validationOptions) { this.validationOptions = validationOptions; } }; exports2.FileValidator = FileValidator; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/file-type.validator.js var require_file_type_validator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/file-type.validator.js"(exports, module) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.FileTypeValidator = void 0; var file_validator_interface_1 = require_file_validator_interface(); var FileTypeValidator = class extends file_validator_interface_1.FileValidator { static { __name(this, "FileTypeValidator"); } buildErrorMessage(file2) { if (file2?.mimetype) { return `Validation failed (current file type is ${file2.mimetype}, expected type is ${this.validationOptions.fileType})`; } return `Validation failed (expected type is ${this.validationOptions.fileType})`; } async isValid(file) { if (!this.validationOptions) { return true; } const isFileValid = !!file && "mimetype" in file; if (this.validationOptions.skipMagicNumbersValidation) { return isFileValid && !!file.mimetype.match(this.validationOptions.fileType); } if (!isFileValid || !file.buffer) { return false; } try { const { fileTypeFromBuffer } = await eval('import ("file-type")'); const fileType = await fileTypeFromBuffer(file.buffer); return !!fileType && !!fileType.mime.match(this.validationOptions.fileType); } catch { return false; } } }; exports.FileTypeValidator = FileTypeValidator; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/max-file-size.validator.js var require_max_file_size_validator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/max-file-size.validator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MaxFileSizeValidator = void 0; var file_validator_interface_12 = require_file_validator_interface(); var MaxFileSizeValidator = class extends file_validator_interface_12.FileValidator { static { __name(this, "MaxFileSizeValidator"); } buildErrorMessage() { if ("message" in this.validationOptions) { if (typeof this.validationOptions.message === "function") { return this.validationOptions.message(this.validationOptions.maxSize); } return this.validationOptions.message; } return `Validation failed (expected size is less than ${this.validationOptions.maxSize})`; } isValid(file2) { if (!this.validationOptions || !file2) { return true; } return "size" in file2 && file2.size < this.validationOptions.maxSize; } }; exports2.MaxFileSizeValidator = MaxFileSizeValidator; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/parse-file-options.interface.js var require_parse_file_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/parse-file-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/parse-file.pipe.js var require_parse_file_pipe = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/parse-file.pipe.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParseFilePipe = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var core_12 = require_core(); var enums_1 = require_enums(); var http_error_by_code_util_1 = require_http_error_by_code_util(); var shared_utils_1 = require_shared_utils(); var ParseFilePipe = class ParseFilePipe { static { __name(this, "ParseFilePipe"); } constructor(options = {}) { const { exceptionFactory, errorHttpStatusCode = enums_1.HttpStatus.BAD_REQUEST, validators = [], fileIsRequired } = options; this.exceptionFactory = exceptionFactory || ((error) => new http_error_by_code_util_1.HttpErrorByCode[errorHttpStatusCode](error)); this.validators = validators; this.fileIsRequired = fileIsRequired ?? true; } async transform(value) { const areThereAnyFilesIn = this.thereAreNoFilesIn(value); if (areThereAnyFilesIn && this.fileIsRequired) { throw this.exceptionFactory("File is required"); } if (!areThereAnyFilesIn && this.validators.length) { await this.validateFilesOrFile(value); } return value; } async validateFilesOrFile(value) { if (Array.isArray(value)) { await Promise.all(value.map((f) => this.validate(f))); } else { await this.validate(value); } } thereAreNoFilesIn(value) { const isEmptyArray = Array.isArray(value) && (0, shared_utils_1.isEmpty)(value); const isEmptyObject = (0, shared_utils_1.isObject)(value) && (0, shared_utils_1.isEmpty)(Object.keys(value)); return (0, shared_utils_1.isUndefined)(value) || isEmptyArray || isEmptyObject; } async validate(file2) { for (const validator of this.validators) { await this.validateOrThrow(file2, validator); } return file2; } async validateOrThrow(file2, validator) { const isValid = await validator.isValid(file2); if (!isValid) { const errorMessage = validator.buildErrorMessage(file2); throw this.exceptionFactory(errorMessage); } } /** * @returns list of validators used in this pipe. */ getValidators() { return this.validators; } }; exports2.ParseFilePipe = ParseFilePipe; exports2.ParseFilePipe = ParseFilePipe = tslib_1.__decorate([ (0, core_12.Injectable)(), tslib_1.__param(0, (0, core_12.Optional)()), tslib_1.__metadata("design:paramtypes", [Object]) ], ParseFilePipe); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/parse-file-pipe.builder.js var require_parse_file_pipe_builder = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/parse-file-pipe.builder.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParseFilePipeBuilder = void 0; var file_type_validator_1 = require_file_type_validator(); var max_file_size_validator_1 = require_max_file_size_validator(); var parse_file_pipe_1 = require_parse_file_pipe(); var ParseFilePipeBuilder = class { static { __name(this, "ParseFilePipeBuilder"); } constructor() { this.validators = []; } addMaxSizeValidator(options) { return this.addValidator(new max_file_size_validator_1.MaxFileSizeValidator(options)); } addFileTypeValidator(options) { return this.addValidator(new file_type_validator_1.FileTypeValidator(options)); } addValidator(validator) { this.validators.push(validator); return this; } build(additionalOptions) { const parseFilePipe = new parse_file_pipe_1.ParseFilePipe({ ...additionalOptions, validators: this.validators }); this.validators = []; return parseFilePipe; } }; exports2.ParseFilePipeBuilder = ParseFilePipeBuilder; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/index.js var require_file = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/file/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_file_type_validator(), exports2); tslib_1.__exportStar(require_file_validator_interface(), exports2); tslib_1.__exportStar(require_max_file_size_validator(), exports2); tslib_1.__exportStar(require_parse_file_options_interface(), exports2); tslib_1.__exportStar(require_parse_file_pipe(), exports2); tslib_1.__exportStar(require_parse_file_pipe_builder(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/index.js var require_pipes = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/pipes/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_default_value_pipe(), exports2); tslib_1.__exportStar(require_parse_array_pipe(), exports2); tslib_1.__exportStar(require_parse_bool_pipe(), exports2); tslib_1.__exportStar(require_parse_int_pipe(), exports2); tslib_1.__exportStar(require_parse_float_pipe(), exports2); tslib_1.__exportStar(require_parse_enum_pipe(), exports2); tslib_1.__exportStar(require_parse_uuid_pipe(), exports2); tslib_1.__exportStar(require_validation_pipe(), exports2); tslib_1.__exportStar(require_file(), exports2); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isFunction.js var require_isFunction = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isFunction.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isFunction = void 0; function isFunction(value) { return typeof value === "function"; } __name(isFunction, "isFunction"); exports2.isFunction = isFunction; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/lift.js var require_lift = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/lift.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.operate = exports2.hasLift = void 0; var isFunction_1 = require_isFunction(); function hasLift(source) { return isFunction_1.isFunction(source === null || source === void 0 ? void 0 : source.lift); } __name(hasLift, "hasLift"); exports2.hasLift = hasLift; function operate(init) { return function(source) { if (hasLift(source)) { return source.lift(function(liftedSource) { try { return init(liftedSource, this); } catch (err) { this.error(err); } }); } throw new TypeError("Unable to lift unknown Observable type"); }; } __name(operate, "operate"); exports2.operate = operate; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js var require_isArrayLike = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isArrayLike = void 0; exports2.isArrayLike = (function(x) { return x && typeof x.length === "number" && typeof x !== "function"; }); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isPromise.js var require_isPromise = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isPromise.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isPromise = void 0; var isFunction_1 = require_isFunction(); function isPromise(value) { return isFunction_1.isFunction(value === null || value === void 0 ? void 0 : value.then); } __name(isPromise, "isPromise"); exports2.isPromise = isPromise; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js var require_createErrorClass = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createErrorClass = void 0; function createErrorClass(createImpl) { var _super = /* @__PURE__ */ __name(function(instance) { Error.call(instance); instance.stack = new Error().stack; }, "_super"); var ctorFunc = createImpl(_super); ctorFunc.prototype = Object.create(Error.prototype); ctorFunc.prototype.constructor = ctorFunc; return ctorFunc; } __name(createErrorClass, "createErrorClass"); exports2.createErrorClass = createErrorClass; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js var require_UnsubscriptionError = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UnsubscriptionError = void 0; var createErrorClass_1 = require_createErrorClass(); exports2.UnsubscriptionError = createErrorClass_1.createErrorClass(function(_super) { return /* @__PURE__ */ __name(function UnsubscriptionErrorImpl(errors) { _super(this); this.message = errors ? errors.length + " errors occurred during unsubscription:\n" + errors.map(function(err, i) { return i + 1 + ") " + err.toString(); }).join("\n ") : ""; this.name = "UnsubscriptionError"; this.errors = errors; }, "UnsubscriptionErrorImpl"); }); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/arrRemove.js var require_arrRemove = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/arrRemove.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.arrRemove = void 0; function arrRemove(arr, item) { if (arr) { var index = arr.indexOf(item); 0 <= index && arr.splice(index, 1); } } __name(arrRemove, "arrRemove"); exports2.arrRemove = arrRemove; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Subscription.js var require_Subscription = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Subscription.js"(exports2) { "use strict"; var __values2 = exports2 && exports2.__values || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: /* @__PURE__ */ __name(function() { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; }, "next") }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isSubscription = exports2.EMPTY_SUBSCRIPTION = exports2.Subscription = void 0; var isFunction_1 = require_isFunction(); var UnsubscriptionError_1 = require_UnsubscriptionError(); var arrRemove_1 = require_arrRemove(); var Subscription = (function() { function Subscription2(initialTeardown) { this.initialTeardown = initialTeardown; this.closed = false; this._parentage = null; this._finalizers = null; } __name(Subscription2, "Subscription"); Subscription2.prototype.unsubscribe = function() { var e_1, _a, e_2, _b; var errors; if (!this.closed) { this.closed = true; var _parentage = this._parentage; if (_parentage) { this._parentage = null; if (Array.isArray(_parentage)) { try { for (var _parentage_1 = __values2(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()) { var parent_1 = _parentage_1_1.value; parent_1.remove(this); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) _a.call(_parentage_1); } finally { if (e_1) throw e_1.error; } } } else { _parentage.remove(this); } } var initialFinalizer = this.initialTeardown; if (isFunction_1.isFunction(initialFinalizer)) { try { initialFinalizer(); } catch (e) { errors = e instanceof UnsubscriptionError_1.UnsubscriptionError ? e.errors : [e]; } } var _finalizers = this._finalizers; if (_finalizers) { this._finalizers = null; try { for (var _finalizers_1 = __values2(_finalizers), _finalizers_1_1 = _finalizers_1.next(); !_finalizers_1_1.done; _finalizers_1_1 = _finalizers_1.next()) { var finalizer = _finalizers_1_1.value; try { execFinalizer(finalizer); } catch (err) { errors = errors !== null && errors !== void 0 ? errors : []; if (err instanceof UnsubscriptionError_1.UnsubscriptionError) { errors = __spreadArray2(__spreadArray2([], __read2(errors)), __read2(err.errors)); } else { errors.push(err); } } } } catch (e_2_1) { e_2 = { error: e_2_1 }; } finally { try { if (_finalizers_1_1 && !_finalizers_1_1.done && (_b = _finalizers_1.return)) _b.call(_finalizers_1); } finally { if (e_2) throw e_2.error; } } } if (errors) { throw new UnsubscriptionError_1.UnsubscriptionError(errors); } } }; Subscription2.prototype.add = function(teardown) { var _a; if (teardown && teardown !== this) { if (this.closed) { execFinalizer(teardown); } else { if (teardown instanceof Subscription2) { if (teardown.closed || teardown._hasParent(this)) { return; } teardown._addParent(this); } (this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown); } } }; Subscription2.prototype._hasParent = function(parent) { var _parentage = this._parentage; return _parentage === parent || Array.isArray(_parentage) && _parentage.includes(parent); }; Subscription2.prototype._addParent = function(parent) { var _parentage = this._parentage; this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent; }; Subscription2.prototype._removeParent = function(parent) { var _parentage = this._parentage; if (_parentage === parent) { this._parentage = null; } else if (Array.isArray(_parentage)) { arrRemove_1.arrRemove(_parentage, parent); } }; Subscription2.prototype.remove = function(teardown) { var _finalizers = this._finalizers; _finalizers && arrRemove_1.arrRemove(_finalizers, teardown); if (teardown instanceof Subscription2) { teardown._removeParent(this); } }; Subscription2.EMPTY = (function() { var empty = new Subscription2(); empty.closed = true; return empty; })(); return Subscription2; })(); exports2.Subscription = Subscription; exports2.EMPTY_SUBSCRIPTION = Subscription.EMPTY; function isSubscription(value) { return value instanceof Subscription || value && "closed" in value && isFunction_1.isFunction(value.remove) && isFunction_1.isFunction(value.add) && isFunction_1.isFunction(value.unsubscribe); } __name(isSubscription, "isSubscription"); exports2.isSubscription = isSubscription; function execFinalizer(finalizer) { if (isFunction_1.isFunction(finalizer)) { finalizer(); } else { finalizer.unsubscribe(); } } __name(execFinalizer, "execFinalizer"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/config.js var require_config = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/config.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.config = void 0; exports2.config = { onUnhandledError: null, onStoppedNotification: null, Promise: void 0, useDeprecatedSynchronousErrorHandling: false, useDeprecatedNextContext: false }; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js var require_timeoutProvider = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.timeoutProvider = void 0; exports2.timeoutProvider = { setTimeout: /* @__PURE__ */ __name(function(handler, timeout) { var args = []; for (var _i = 2; _i < arguments.length; _i++) { args[_i - 2] = arguments[_i]; } var delegate = exports2.timeoutProvider.delegate; if (delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) { return delegate.setTimeout.apply(delegate, __spreadArray2([handler, timeout], __read2(args))); } return setTimeout.apply(void 0, __spreadArray2([handler, timeout], __read2(args))); }, "setTimeout"), clearTimeout: /* @__PURE__ */ __name(function(handle) { var delegate = exports2.timeoutProvider.delegate; return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle); }, "clearTimeout"), delegate: void 0 }; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js var require_reportUnhandledError = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.reportUnhandledError = void 0; var config_12 = require_config(); var timeoutProvider_1 = require_timeoutProvider(); function reportUnhandledError(err) { timeoutProvider_1.timeoutProvider.setTimeout(function() { var onUnhandledError = config_12.config.onUnhandledError; if (onUnhandledError) { onUnhandledError(err); } else { throw err; } }); } __name(reportUnhandledError, "reportUnhandledError"); exports2.reportUnhandledError = reportUnhandledError; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/noop.js var require_noop = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/noop.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.noop = void 0; function noop() { } __name(noop, "noop"); exports2.noop = noop; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/NotificationFactories.js var require_NotificationFactories = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/NotificationFactories.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createNotification = exports2.nextNotification = exports2.errorNotification = exports2.COMPLETE_NOTIFICATION = void 0; exports2.COMPLETE_NOTIFICATION = (function() { return createNotification("C", void 0, void 0); })(); function errorNotification(error) { return createNotification("E", void 0, error); } __name(errorNotification, "errorNotification"); exports2.errorNotification = errorNotification; function nextNotification(value) { return createNotification("N", value, void 0); } __name(nextNotification, "nextNotification"); exports2.nextNotification = nextNotification; function createNotification(kind, value, error) { return { kind, value, error }; } __name(createNotification, "createNotification"); exports2.createNotification = createNotification; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/errorContext.js var require_errorContext = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/errorContext.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.captureError = exports2.errorContext = void 0; var config_12 = require_config(); var context = null; function errorContext(cb) { if (config_12.config.useDeprecatedSynchronousErrorHandling) { var isRoot = !context; if (isRoot) { context = { errorThrown: false, error: null }; } cb(); if (isRoot) { var _a = context, errorThrown = _a.errorThrown, error = _a.error; context = null; if (errorThrown) { throw error; } } } else { cb(); } } __name(errorContext, "errorContext"); exports2.errorContext = errorContext; function captureError(err) { if (config_12.config.useDeprecatedSynchronousErrorHandling && context) { context.errorThrown = true; context.error = err; } } __name(captureError, "captureError"); exports2.captureError = captureError; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Subscriber.js var require_Subscriber = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Subscriber.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.EMPTY_OBSERVER = exports2.SafeSubscriber = exports2.Subscriber = void 0; var isFunction_1 = require_isFunction(); var Subscription_1 = require_Subscription(); var config_12 = require_config(); var reportUnhandledError_1 = require_reportUnhandledError(); var noop_1 = require_noop(); var NotificationFactories_1 = require_NotificationFactories(); var timeoutProvider_1 = require_timeoutProvider(); var errorContext_1 = require_errorContext(); var Subscriber = (function(_super) { __extends2(Subscriber2, _super); function Subscriber2(destination) { var _this = _super.call(this) || this; _this.isStopped = false; if (destination) { _this.destination = destination; if (Subscription_1.isSubscription(destination)) { destination.add(_this); } } else { _this.destination = exports2.EMPTY_OBSERVER; } return _this; } __name(Subscriber2, "Subscriber"); Subscriber2.create = function(next, error, complete) { return new SafeSubscriber(next, error, complete); }; Subscriber2.prototype.next = function(value) { if (this.isStopped) { handleStoppedNotification(NotificationFactories_1.nextNotification(value), this); } else { this._next(value); } }; Subscriber2.prototype.error = function(err) { if (this.isStopped) { handleStoppedNotification(NotificationFactories_1.errorNotification(err), this); } else { this.isStopped = true; this._error(err); } }; Subscriber2.prototype.complete = function() { if (this.isStopped) { handleStoppedNotification(NotificationFactories_1.COMPLETE_NOTIFICATION, this); } else { this.isStopped = true; this._complete(); } }; Subscriber2.prototype.unsubscribe = function() { if (!this.closed) { this.isStopped = true; _super.prototype.unsubscribe.call(this); this.destination = null; } }; Subscriber2.prototype._next = function(value) { this.destination.next(value); }; Subscriber2.prototype._error = function(err) { try { this.destination.error(err); } finally { this.unsubscribe(); } }; Subscriber2.prototype._complete = function() { try { this.destination.complete(); } finally { this.unsubscribe(); } }; return Subscriber2; })(Subscription_1.Subscription); exports2.Subscriber = Subscriber; var _bind = Function.prototype.bind; function bind(fn, thisArg) { return _bind.call(fn, thisArg); } __name(bind, "bind"); var ConsumerObserver = (function() { function ConsumerObserver2(partialObserver) { this.partialObserver = partialObserver; } __name(ConsumerObserver2, "ConsumerObserver"); ConsumerObserver2.prototype.next = function(value) { var partialObserver = this.partialObserver; if (partialObserver.next) { try { partialObserver.next(value); } catch (error) { handleUnhandledError(error); } } }; ConsumerObserver2.prototype.error = function(err) { var partialObserver = this.partialObserver; if (partialObserver.error) { try { partialObserver.error(err); } catch (error) { handleUnhandledError(error); } } else { handleUnhandledError(err); } }; ConsumerObserver2.prototype.complete = function() { var partialObserver = this.partialObserver; if (partialObserver.complete) { try { partialObserver.complete(); } catch (error) { handleUnhandledError(error); } } }; return ConsumerObserver2; })(); var SafeSubscriber = (function(_super) { __extends2(SafeSubscriber2, _super); function SafeSubscriber2(observerOrNext, error, complete) { var _this = _super.call(this) || this; var partialObserver; if (isFunction_1.isFunction(observerOrNext) || !observerOrNext) { partialObserver = { next: observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : void 0, error: error !== null && error !== void 0 ? error : void 0, complete: complete !== null && complete !== void 0 ? complete : void 0 }; } else { var context_1; if (_this && config_12.config.useDeprecatedNextContext) { context_1 = Object.create(observerOrNext); context_1.unsubscribe = function() { return _this.unsubscribe(); }; partialObserver = { next: observerOrNext.next && bind(observerOrNext.next, context_1), error: observerOrNext.error && bind(observerOrNext.error, context_1), complete: observerOrNext.complete && bind(observerOrNext.complete, context_1) }; } else { partialObserver = observerOrNext; } } _this.destination = new ConsumerObserver(partialObserver); return _this; } __name(SafeSubscriber2, "SafeSubscriber"); return SafeSubscriber2; })(Subscriber); exports2.SafeSubscriber = SafeSubscriber; function handleUnhandledError(error) { if (config_12.config.useDeprecatedSynchronousErrorHandling) { errorContext_1.captureError(error); } else { reportUnhandledError_1.reportUnhandledError(error); } } __name(handleUnhandledError, "handleUnhandledError"); function defaultErrorHandler(err) { throw err; } __name(defaultErrorHandler, "defaultErrorHandler"); function handleStoppedNotification(notification, subscriber) { var onStoppedNotification = config_12.config.onStoppedNotification; onStoppedNotification && timeoutProvider_1.timeoutProvider.setTimeout(function() { return onStoppedNotification(notification, subscriber); }); } __name(handleStoppedNotification, "handleStoppedNotification"); exports2.EMPTY_OBSERVER = { closed: true, next: noop_1.noop, error: defaultErrorHandler, complete: noop_1.noop }; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/symbol/observable.js var require_observable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/symbol/observable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.observable = void 0; exports2.observable = (function() { return typeof Symbol === "function" && Symbol.observable || "@@observable"; })(); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/identity.js var require_identity = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/identity.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.identity = void 0; function identity(x) { return x; } __name(identity, "identity"); exports2.identity = identity; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/pipe.js var require_pipe = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/pipe.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.pipeFromArray = exports2.pipe = void 0; var identity_1 = require_identity(); function pipe() { var fns = []; for (var _i = 0; _i < arguments.length; _i++) { fns[_i] = arguments[_i]; } return pipeFromArray(fns); } __name(pipe, "pipe"); exports2.pipe = pipe; function pipeFromArray(fns) { if (fns.length === 0) { return identity_1.identity; } if (fns.length === 1) { return fns[0]; } return /* @__PURE__ */ __name(function piped(input) { return fns.reduce(function(prev, fn) { return fn(prev); }, input); }, "piped"); } __name(pipeFromArray, "pipeFromArray"); exports2.pipeFromArray = pipeFromArray; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Observable.js var require_Observable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Observable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Observable = void 0; var Subscriber_1 = require_Subscriber(); var Subscription_1 = require_Subscription(); var observable_1 = require_observable(); var pipe_1 = require_pipe(); var config_12 = require_config(); var isFunction_1 = require_isFunction(); var errorContext_1 = require_errorContext(); var Observable = (function() { function Observable2(subscribe) { if (subscribe) { this._subscribe = subscribe; } } __name(Observable2, "Observable"); Observable2.prototype.lift = function(operator) { var observable = new Observable2(); observable.source = this; observable.operator = operator; return observable; }; Observable2.prototype.subscribe = function(observerOrNext, error, complete) { var _this = this; var subscriber = isSubscriber(observerOrNext) ? observerOrNext : new Subscriber_1.SafeSubscriber(observerOrNext, error, complete); errorContext_1.errorContext(function() { var _a = _this, operator = _a.operator, source = _a.source; subscriber.add(operator ? operator.call(subscriber, source) : source ? _this._subscribe(subscriber) : _this._trySubscribe(subscriber)); }); return subscriber; }; Observable2.prototype._trySubscribe = function(sink) { try { return this._subscribe(sink); } catch (err) { sink.error(err); } }; Observable2.prototype.forEach = function(next, promiseCtor) { var _this = this; promiseCtor = getPromiseCtor(promiseCtor); return new promiseCtor(function(resolve, reject) { var subscriber = new Subscriber_1.SafeSubscriber({ next: /* @__PURE__ */ __name(function(value) { try { next(value); } catch (err) { reject(err); subscriber.unsubscribe(); } }, "next"), error: reject, complete: resolve }); _this.subscribe(subscriber); }); }; Observable2.prototype._subscribe = function(subscriber) { var _a; return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber); }; Observable2.prototype[observable_1.observable] = function() { return this; }; Observable2.prototype.pipe = function() { var operations = []; for (var _i = 0; _i < arguments.length; _i++) { operations[_i] = arguments[_i]; } return pipe_1.pipeFromArray(operations)(this); }; Observable2.prototype.toPromise = function(promiseCtor) { var _this = this; promiseCtor = getPromiseCtor(promiseCtor); return new promiseCtor(function(resolve, reject) { var value; _this.subscribe(function(x) { return value = x; }, function(err) { return reject(err); }, function() { return resolve(value); }); }); }; Observable2.create = function(subscribe) { return new Observable2(subscribe); }; return Observable2; })(); exports2.Observable = Observable; function getPromiseCtor(promiseCtor) { var _a; return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config_12.config.Promise) !== null && _a !== void 0 ? _a : Promise; } __name(getPromiseCtor, "getPromiseCtor"); function isObserver(value) { return value && isFunction_1.isFunction(value.next) && isFunction_1.isFunction(value.error) && isFunction_1.isFunction(value.complete); } __name(isObserver, "isObserver"); function isSubscriber(value) { return value && value instanceof Subscriber_1.Subscriber || isObserver(value) && Subscription_1.isSubscription(value); } __name(isSubscriber, "isSubscriber"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js var require_isInteropObservable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isInteropObservable = void 0; var observable_1 = require_observable(); var isFunction_1 = require_isFunction(); function isInteropObservable(input) { return isFunction_1.isFunction(input[observable_1.observable]); } __name(isInteropObservable, "isInteropObservable"); exports2.isInteropObservable = isInteropObservable; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js var require_isAsyncIterable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isAsyncIterable = void 0; var isFunction_1 = require_isFunction(); function isAsyncIterable(obj2) { return Symbol.asyncIterator && isFunction_1.isFunction(obj2 === null || obj2 === void 0 ? void 0 : obj2[Symbol.asyncIterator]); } __name(isAsyncIterable, "isAsyncIterable"); exports2.isAsyncIterable = isAsyncIterable; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js var require_throwUnobservableError = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createInvalidObservableTypeError = void 0; function createInvalidObservableTypeError(input) { return new TypeError("You provided " + (input !== null && typeof input === "object" ? "an invalid object" : "'" + input + "'") + " where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable."); } __name(createInvalidObservableTypeError, "createInvalidObservableTypeError"); exports2.createInvalidObservableTypeError = createInvalidObservableTypeError; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/symbol/iterator.js var require_iterator = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/symbol/iterator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.iterator = exports2.getSymbolIterator = void 0; function getSymbolIterator() { if (typeof Symbol !== "function" || !Symbol.iterator) { return "@@iterator"; } return Symbol.iterator; } __name(getSymbolIterator, "getSymbolIterator"); exports2.getSymbolIterator = getSymbolIterator; exports2.iterator = getSymbolIterator(); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isIterable.js var require_isIterable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isIterable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isIterable = void 0; var iterator_1 = require_iterator(); var isFunction_1 = require_isFunction(); function isIterable(input) { return isFunction_1.isFunction(input === null || input === void 0 ? void 0 : input[iterator_1.iterator]); } __name(isIterable, "isIterable"); exports2.isIterable = isIterable; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js var require_isReadableStreamLike = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js"(exports2) { "use strict"; var __generator2 = exports2 && exports2.__generator || function(thisArg, body) { var _2 = { label: 0, sent: /* @__PURE__ */ __name(function() { if (t[0] & 1) throw t[1]; return t[1]; }, "sent"), trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function(v) { return step([n, v]); }; } __name(verb, "verb"); function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_2) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _2.label++; return { value: op[1], done: false }; case 5: _2.label++; y = op[1]; op = [0]; continue; case 7: op = _2.ops.pop(); _2.trys.pop(); continue; default: if (!(t = _2.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _2 = 0; continue; } if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { _2.label = op[1]; break; } if (op[0] === 6 && _2.label < t[1]) { _2.label = t[1]; t = op; break; } if (t && _2.label < t[2]) { _2.label = t[2]; _2.ops.push(op); break; } if (t[2]) _2.ops.pop(); _2.trys.pop(); continue; } op = body.call(thisArg, _2); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } __name(step, "step"); }; var __await2 = exports2 && exports2.__await || function(v) { return this instanceof __await2 ? (this.v = v, this) : new __await2(v); }; var __asyncGenerator2 = exports2 && exports2.__asyncGenerator || function(thisArg, _arguments, generator) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var g = generator.apply(thisArg, _arguments || []), i, q = []; return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { return this; }, i; function verb(n) { if (g[n]) i[n] = function(v) { return new Promise(function(a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } __name(verb, "verb"); function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } __name(resume, "resume"); function step(r) { r.value instanceof __await2 ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } __name(step, "step"); function fulfill(value) { resume("next", value); } __name(fulfill, "fulfill"); function reject(value) { resume("throw", value); } __name(reject, "reject"); function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } __name(settle, "settle"); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isReadableStreamLike = exports2.readableStreamLikeToAsyncGenerator = void 0; var isFunction_1 = require_isFunction(); function readableStreamLikeToAsyncGenerator(readableStream) { return __asyncGenerator2(this, arguments, /* @__PURE__ */ __name(function readableStreamLikeToAsyncGenerator_1() { var reader, _a, value, done; return __generator2(this, function(_b) { switch (_b.label) { case 0: reader = readableStream.getReader(); _b.label = 1; case 1: _b.trys.push([1, , 9, 10]); _b.label = 2; case 2: if (false) return [3, 8]; return [4, __await2(reader.read())]; case 3: _a = _b.sent(), value = _a.value, done = _a.done; if (!done) return [3, 5]; return [4, __await2(void 0)]; case 4: return [2, _b.sent()]; case 5: return [4, __await2(value)]; case 6: return [4, _b.sent()]; case 7: _b.sent(); return [3, 2]; case 8: return [3, 10]; case 9: reader.releaseLock(); return [7]; case 10: return [2]; } }); }, "readableStreamLikeToAsyncGenerator_1")); } __name(readableStreamLikeToAsyncGenerator, "readableStreamLikeToAsyncGenerator"); exports2.readableStreamLikeToAsyncGenerator = readableStreamLikeToAsyncGenerator; function isReadableStreamLike(obj2) { return isFunction_1.isFunction(obj2 === null || obj2 === void 0 ? void 0 : obj2.getReader); } __name(isReadableStreamLike, "isReadableStreamLike"); exports2.isReadableStreamLike = isReadableStreamLike; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/innerFrom.js var require_innerFrom = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/innerFrom.js"(exports2) { "use strict"; var __awaiter2 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function(resolve) { resolve(value); }); } __name(adopt, "adopt"); return new (P || (P = Promise))(function(resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } __name(fulfilled, "fulfilled"); function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } __name(rejected, "rejected"); function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } __name(step, "step"); step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __generator2 = exports2 && exports2.__generator || function(thisArg, body) { var _2 = { label: 0, sent: /* @__PURE__ */ __name(function() { if (t[0] & 1) throw t[1]; return t[1]; }, "sent"), trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function(v) { return step([n, v]); }; } __name(verb, "verb"); function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_2) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _2.label++; return { value: op[1], done: false }; case 5: _2.label++; y = op[1]; op = [0]; continue; case 7: op = _2.ops.pop(); _2.trys.pop(); continue; default: if (!(t = _2.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _2 = 0; continue; } if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { _2.label = op[1]; break; } if (op[0] === 6 && _2.label < t[1]) { _2.label = t[1]; t = op; break; } if (t && _2.label < t[2]) { _2.label = t[2]; _2.ops.push(op); break; } if (t[2]) _2.ops.pop(); _2.trys.pop(); continue; } op = body.call(thisArg, _2); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } __name(step, "step"); }; var __asyncValues2 = exports2 && exports2.__asyncValues || function(o) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var m = o[Symbol.asyncIterator], i; return m ? m.call(o) : (o = typeof __values2 === "function" ? __values2(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { return this; }, i); function verb(n) { i[n] = o[n] && function(v) { return new Promise(function(resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } __name(verb, "verb"); function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v2) { resolve({ value: v2, done: d }); }, reject); } __name(settle, "settle"); }; var __values2 = exports2 && exports2.__values || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: /* @__PURE__ */ __name(function() { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; }, "next") }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.fromReadableStreamLike = exports2.fromAsyncIterable = exports2.fromIterable = exports2.fromPromise = exports2.fromArrayLike = exports2.fromInteropObservable = exports2.innerFrom = void 0; var isArrayLike_1 = require_isArrayLike(); var isPromise_1 = require_isPromise(); var Observable_1 = require_Observable(); var isInteropObservable_1 = require_isInteropObservable(); var isAsyncIterable_1 = require_isAsyncIterable(); var throwUnobservableError_1 = require_throwUnobservableError(); var isIterable_1 = require_isIterable(); var isReadableStreamLike_1 = require_isReadableStreamLike(); var isFunction_1 = require_isFunction(); var reportUnhandledError_1 = require_reportUnhandledError(); var observable_1 = require_observable(); function innerFrom(input) { if (input instanceof Observable_1.Observable) { return input; } if (input != null) { if (isInteropObservable_1.isInteropObservable(input)) { return fromInteropObservable(input); } if (isArrayLike_1.isArrayLike(input)) { return fromArrayLike(input); } if (isPromise_1.isPromise(input)) { return fromPromise(input); } if (isAsyncIterable_1.isAsyncIterable(input)) { return fromAsyncIterable(input); } if (isIterable_1.isIterable(input)) { return fromIterable(input); } if (isReadableStreamLike_1.isReadableStreamLike(input)) { return fromReadableStreamLike(input); } } throw throwUnobservableError_1.createInvalidObservableTypeError(input); } __name(innerFrom, "innerFrom"); exports2.innerFrom = innerFrom; function fromInteropObservable(obj2) { return new Observable_1.Observable(function(subscriber) { var obs = obj2[observable_1.observable](); if (isFunction_1.isFunction(obs.subscribe)) { return obs.subscribe(subscriber); } throw new TypeError("Provided object does not correctly implement Symbol.observable"); }); } __name(fromInteropObservable, "fromInteropObservable"); exports2.fromInteropObservable = fromInteropObservable; function fromArrayLike(array) { return new Observable_1.Observable(function(subscriber) { for (var i = 0; i < array.length && !subscriber.closed; i++) { subscriber.next(array[i]); } subscriber.complete(); }); } __name(fromArrayLike, "fromArrayLike"); exports2.fromArrayLike = fromArrayLike; function fromPromise(promise) { return new Observable_1.Observable(function(subscriber) { promise.then(function(value) { if (!subscriber.closed) { subscriber.next(value); subscriber.complete(); } }, function(err) { return subscriber.error(err); }).then(null, reportUnhandledError_1.reportUnhandledError); }); } __name(fromPromise, "fromPromise"); exports2.fromPromise = fromPromise; function fromIterable(iterable) { return new Observable_1.Observable(function(subscriber) { var e_1, _a; try { for (var iterable_1 = __values2(iterable), iterable_1_1 = iterable_1.next(); !iterable_1_1.done; iterable_1_1 = iterable_1.next()) { var value = iterable_1_1.value; subscriber.next(value); if (subscriber.closed) { return; } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (iterable_1_1 && !iterable_1_1.done && (_a = iterable_1.return)) _a.call(iterable_1); } finally { if (e_1) throw e_1.error; } } subscriber.complete(); }); } __name(fromIterable, "fromIterable"); exports2.fromIterable = fromIterable; function fromAsyncIterable(asyncIterable) { return new Observable_1.Observable(function(subscriber) { process2(asyncIterable, subscriber).catch(function(err) { return subscriber.error(err); }); }); } __name(fromAsyncIterable, "fromAsyncIterable"); exports2.fromAsyncIterable = fromAsyncIterable; function fromReadableStreamLike(readableStream) { return fromAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(readableStream)); } __name(fromReadableStreamLike, "fromReadableStreamLike"); exports2.fromReadableStreamLike = fromReadableStreamLike; function process2(asyncIterable, subscriber) { var asyncIterable_1, asyncIterable_1_1; var e_2, _a; return __awaiter2(this, void 0, void 0, function() { var value, e_2_1; return __generator2(this, function(_b) { switch (_b.label) { case 0: _b.trys.push([0, 5, 6, 11]); asyncIterable_1 = __asyncValues2(asyncIterable); _b.label = 1; case 1: return [4, asyncIterable_1.next()]; case 2: if (!(asyncIterable_1_1 = _b.sent(), !asyncIterable_1_1.done)) return [3, 4]; value = asyncIterable_1_1.value; subscriber.next(value); if (subscriber.closed) { return [2]; } _b.label = 3; case 3: return [3, 1]; case 4: return [3, 11]; case 5: e_2_1 = _b.sent(); e_2 = { error: e_2_1 }; return [3, 11]; case 6: _b.trys.push([6, , 9, 10]); if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a = asyncIterable_1.return))) return [3, 8]; return [4, _a.call(asyncIterable_1)]; case 7: _b.sent(); _b.label = 8; case 8: return [3, 10]; case 9: if (e_2) throw e_2.error; return [7]; case 10: return [7]; case 11: subscriber.complete(); return [2]; } }); }); } __name(process2, "process"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js var require_OperatorSubscriber = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.OperatorSubscriber = exports2.createOperatorSubscriber = void 0; var Subscriber_1 = require_Subscriber(); function createOperatorSubscriber(destination, onNext, onComplete, onError, onFinalize) { return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize); } __name(createOperatorSubscriber, "createOperatorSubscriber"); exports2.createOperatorSubscriber = createOperatorSubscriber; var OperatorSubscriber = (function(_super) { __extends2(OperatorSubscriber2, _super); function OperatorSubscriber2(destination, onNext, onComplete, onError, onFinalize, shouldUnsubscribe) { var _this = _super.call(this, destination) || this; _this.onFinalize = onFinalize; _this.shouldUnsubscribe = shouldUnsubscribe; _this._next = onNext ? function(value) { try { onNext(value); } catch (err) { destination.error(err); } } : _super.prototype._next; _this._error = onError ? function(err) { try { onError(err); } catch (err2) { destination.error(err2); } finally { this.unsubscribe(); } } : _super.prototype._error; _this._complete = onComplete ? function() { try { onComplete(); } catch (err) { destination.error(err); } finally { this.unsubscribe(); } } : _super.prototype._complete; return _this; } __name(OperatorSubscriber2, "OperatorSubscriber"); OperatorSubscriber2.prototype.unsubscribe = function() { var _a; if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) { var closed_1 = this.closed; _super.prototype.unsubscribe.call(this); !closed_1 && ((_a = this.onFinalize) === null || _a === void 0 ? void 0 : _a.call(this)); } }; return OperatorSubscriber2; })(Subscriber_1.Subscriber); exports2.OperatorSubscriber = OperatorSubscriber; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/audit.js var require_audit = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/audit.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.audit = void 0; var lift_1 = require_lift(); var innerFrom_1 = require_innerFrom(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function audit(durationSelector) { return lift_1.operate(function(source, subscriber) { var hasValue = false; var lastValue = null; var durationSubscriber = null; var isComplete = false; var endDuration = /* @__PURE__ */ __name(function() { durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); durationSubscriber = null; if (hasValue) { hasValue = false; var value = lastValue; lastValue = null; subscriber.next(value); } isComplete && subscriber.complete(); }, "endDuration"); var cleanupDuration = /* @__PURE__ */ __name(function() { durationSubscriber = null; isComplete && subscriber.complete(); }, "cleanupDuration"); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { hasValue = true; lastValue = value; if (!durationSubscriber) { innerFrom_1.innerFrom(durationSelector(value)).subscribe(durationSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, endDuration, cleanupDuration)); } }, function() { isComplete = true; (!hasValue || !durationSubscriber || durationSubscriber.closed) && subscriber.complete(); })); }); } __name(audit, "audit"); exports2.audit = audit; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/Action.js var require_Action = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/Action.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Action = void 0; var Subscription_1 = require_Subscription(); var Action = (function(_super) { __extends2(Action2, _super); function Action2(scheduler, work) { return _super.call(this) || this; } __name(Action2, "Action"); Action2.prototype.schedule = function(state, delay) { if (delay === void 0) { delay = 0; } return this; }; return Action2; })(Subscription_1.Subscription); exports2.Action = Action; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js var require_intervalProvider = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.intervalProvider = void 0; exports2.intervalProvider = { setInterval: /* @__PURE__ */ __name(function(handler, timeout) { var args = []; for (var _i = 2; _i < arguments.length; _i++) { args[_i - 2] = arguments[_i]; } var delegate = exports2.intervalProvider.delegate; if (delegate === null || delegate === void 0 ? void 0 : delegate.setInterval) { return delegate.setInterval.apply(delegate, __spreadArray2([handler, timeout], __read2(args))); } return setInterval.apply(void 0, __spreadArray2([handler, timeout], __read2(args))); }, "setInterval"), clearInterval: /* @__PURE__ */ __name(function(handle) { var delegate = exports2.intervalProvider.delegate; return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearInterval) || clearInterval)(handle); }, "clearInterval"), delegate: void 0 }; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js var require_AsyncAction = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AsyncAction = void 0; var Action_1 = require_Action(); var intervalProvider_1 = require_intervalProvider(); var arrRemove_1 = require_arrRemove(); var AsyncAction = (function(_super) { __extends2(AsyncAction2, _super); function AsyncAction2(scheduler, work) { var _this = _super.call(this, scheduler, work) || this; _this.scheduler = scheduler; _this.work = work; _this.pending = false; return _this; } __name(AsyncAction2, "AsyncAction"); AsyncAction2.prototype.schedule = function(state, delay) { var _a; if (delay === void 0) { delay = 0; } if (this.closed) { return this; } this.state = state; var id = this.id; var scheduler = this.scheduler; if (id != null) { this.id = this.recycleAsyncId(scheduler, id, delay); } this.pending = true; this.delay = delay; this.id = (_a = this.id) !== null && _a !== void 0 ? _a : this.requestAsyncId(scheduler, this.id, delay); return this; }; AsyncAction2.prototype.requestAsyncId = function(scheduler, _id, delay) { if (delay === void 0) { delay = 0; } return intervalProvider_1.intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay); }; AsyncAction2.prototype.recycleAsyncId = function(_scheduler, id, delay) { if (delay === void 0) { delay = 0; } if (delay != null && this.delay === delay && this.pending === false) { return id; } if (id != null) { intervalProvider_1.intervalProvider.clearInterval(id); } return void 0; }; AsyncAction2.prototype.execute = function(state, delay) { if (this.closed) { return new Error("executing a cancelled action"); } this.pending = false; var error = this._execute(state, delay); if (error) { return error; } else if (this.pending === false && this.id != null) { this.id = this.recycleAsyncId(this.scheduler, this.id, null); } }; AsyncAction2.prototype._execute = function(state, _delay) { var errored = false; var errorValue; try { this.work(state); } catch (e) { errored = true; errorValue = e ? e : new Error("Scheduled action threw falsy error"); } if (errored) { this.unsubscribe(); return errorValue; } }; AsyncAction2.prototype.unsubscribe = function() { if (!this.closed) { var _a = this, id = _a.id, scheduler = _a.scheduler; var actions = scheduler.actions; this.work = this.state = this.scheduler = null; this.pending = false; arrRemove_1.arrRemove(actions, this); if (id != null) { this.id = this.recycleAsyncId(scheduler, id, null); } this.delay = null; _super.prototype.unsubscribe.call(this); } }; return AsyncAction2; })(Action_1.Action); exports2.AsyncAction = AsyncAction; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js var require_dateTimestampProvider = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.dateTimestampProvider = void 0; exports2.dateTimestampProvider = { now: /* @__PURE__ */ __name(function() { return (exports2.dateTimestampProvider.delegate || Date).now(); }, "now"), delegate: void 0 }; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Scheduler.js var require_Scheduler = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Scheduler.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Scheduler = void 0; var dateTimestampProvider_1 = require_dateTimestampProvider(); var Scheduler = (function() { function Scheduler2(schedulerActionCtor, now) { if (now === void 0) { now = Scheduler2.now; } this.schedulerActionCtor = schedulerActionCtor; this.now = now; } __name(Scheduler2, "Scheduler"); Scheduler2.prototype.schedule = function(work, delay, state) { if (delay === void 0) { delay = 0; } return new this.schedulerActionCtor(this, work).schedule(state, delay); }; Scheduler2.now = dateTimestampProvider_1.dateTimestampProvider.now; return Scheduler2; })(); exports2.Scheduler = Scheduler; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js var require_AsyncScheduler = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AsyncScheduler = void 0; var Scheduler_1 = require_Scheduler(); var AsyncScheduler = (function(_super) { __extends2(AsyncScheduler2, _super); function AsyncScheduler2(SchedulerAction, now) { if (now === void 0) { now = Scheduler_1.Scheduler.now; } var _this = _super.call(this, SchedulerAction, now) || this; _this.actions = []; _this._active = false; return _this; } __name(AsyncScheduler2, "AsyncScheduler"); AsyncScheduler2.prototype.flush = function(action) { var actions = this.actions; if (this._active) { actions.push(action); return; } var error; this._active = true; do { if (error = action.execute(action.state, action.delay)) { break; } } while (action = actions.shift()); this._active = false; if (error) { while (action = actions.shift()) { action.unsubscribe(); } throw error; } }; return AsyncScheduler2; })(Scheduler_1.Scheduler); exports2.AsyncScheduler = AsyncScheduler; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/async.js var require_async = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/async.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.async = exports2.asyncScheduler = void 0; var AsyncAction_1 = require_AsyncAction(); var AsyncScheduler_1 = require_AsyncScheduler(); exports2.asyncScheduler = new AsyncScheduler_1.AsyncScheduler(AsyncAction_1.AsyncAction); exports2.async = exports2.asyncScheduler; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isScheduler.js var require_isScheduler = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isScheduler.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isScheduler = void 0; var isFunction_1 = require_isFunction(); function isScheduler(value) { return value && isFunction_1.isFunction(value.schedule); } __name(isScheduler, "isScheduler"); exports2.isScheduler = isScheduler; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isDate.js var require_isDate2 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isDate.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isValidDate = void 0; function isValidDate(value) { return value instanceof Date && !isNaN(value); } __name(isValidDate, "isValidDate"); exports2.isValidDate = isValidDate; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/timer.js var require_timer = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/timer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.timer = void 0; var Observable_1 = require_Observable(); var async_1 = require_async(); var isScheduler_1 = require_isScheduler(); var isDate_1 = require_isDate2(); function timer(dueTime, intervalOrScheduler, scheduler) { if (dueTime === void 0) { dueTime = 0; } if (scheduler === void 0) { scheduler = async_1.async; } var intervalDuration = -1; if (intervalOrScheduler != null) { if (isScheduler_1.isScheduler(intervalOrScheduler)) { scheduler = intervalOrScheduler; } else { intervalDuration = intervalOrScheduler; } } return new Observable_1.Observable(function(subscriber) { var due = isDate_1.isValidDate(dueTime) ? +dueTime - scheduler.now() : dueTime; if (due < 0) { due = 0; } var n = 0; return scheduler.schedule(function() { if (!subscriber.closed) { subscriber.next(n++); if (0 <= intervalDuration) { this.schedule(void 0, intervalDuration); } else { subscriber.complete(); } } }, due); }); } __name(timer, "timer"); exports2.timer = timer; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/auditTime.js var require_auditTime = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/auditTime.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.auditTime = void 0; var async_1 = require_async(); var audit_1 = require_audit(); var timer_1 = require_timer(); function auditTime(duration, scheduler) { if (scheduler === void 0) { scheduler = async_1.asyncScheduler; } return audit_1.audit(function() { return timer_1.timer(duration, scheduler); }); } __name(auditTime, "auditTime"); exports2.auditTime = auditTime; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/buffer.js var require_buffer = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/buffer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.buffer = void 0; var lift_1 = require_lift(); var noop_1 = require_noop(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var innerFrom_1 = require_innerFrom(); function buffer(closingNotifier) { return lift_1.operate(function(source, subscriber) { var currentBuffer = []; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { return currentBuffer.push(value); }, function() { subscriber.next(currentBuffer); subscriber.complete(); })); innerFrom_1.innerFrom(closingNotifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { var b = currentBuffer; currentBuffer = []; subscriber.next(b); }, noop_1.noop)); return function() { currentBuffer = null; }; }); } __name(buffer, "buffer"); exports2.buffer = buffer; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js var require_bufferCount = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js"(exports2) { "use strict"; var __values2 = exports2 && exports2.__values || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: /* @__PURE__ */ __name(function() { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; }, "next") }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.bufferCount = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var arrRemove_1 = require_arrRemove(); function bufferCount(bufferSize, startBufferEvery) { if (startBufferEvery === void 0) { startBufferEvery = null; } startBufferEvery = startBufferEvery !== null && startBufferEvery !== void 0 ? startBufferEvery : bufferSize; return lift_1.operate(function(source, subscriber) { var buffers = []; var count = 0; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var e_1, _a, e_2, _b; var toEmit = null; if (count++ % startBufferEvery === 0) { buffers.push([]); } try { for (var buffers_1 = __values2(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) { var buffer = buffers_1_1.value; buffer.push(value); if (bufferSize <= buffer.length) { toEmit = toEmit !== null && toEmit !== void 0 ? toEmit : []; toEmit.push(buffer); } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) _a.call(buffers_1); } finally { if (e_1) throw e_1.error; } } if (toEmit) { try { for (var toEmit_1 = __values2(toEmit), toEmit_1_1 = toEmit_1.next(); !toEmit_1_1.done; toEmit_1_1 = toEmit_1.next()) { var buffer = toEmit_1_1.value; arrRemove_1.arrRemove(buffers, buffer); subscriber.next(buffer); } } catch (e_2_1) { e_2 = { error: e_2_1 }; } finally { try { if (toEmit_1_1 && !toEmit_1_1.done && (_b = toEmit_1.return)) _b.call(toEmit_1); } finally { if (e_2) throw e_2.error; } } } }, function() { var e_3, _a; try { for (var buffers_2 = __values2(buffers), buffers_2_1 = buffers_2.next(); !buffers_2_1.done; buffers_2_1 = buffers_2.next()) { var buffer = buffers_2_1.value; subscriber.next(buffer); } } catch (e_3_1) { e_3 = { error: e_3_1 }; } finally { try { if (buffers_2_1 && !buffers_2_1.done && (_a = buffers_2.return)) _a.call(buffers_2); } finally { if (e_3) throw e_3.error; } } subscriber.complete(); }, void 0, function() { buffers = null; })); }); } __name(bufferCount, "bufferCount"); exports2.bufferCount = bufferCount; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/args.js var require_args = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/args.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.popNumber = exports2.popScheduler = exports2.popResultSelector = void 0; var isFunction_1 = require_isFunction(); var isScheduler_1 = require_isScheduler(); function last(arr) { return arr[arr.length - 1]; } __name(last, "last"); function popResultSelector(args) { return isFunction_1.isFunction(last(args)) ? args.pop() : void 0; } __name(popResultSelector, "popResultSelector"); exports2.popResultSelector = popResultSelector; function popScheduler(args) { return isScheduler_1.isScheduler(last(args)) ? args.pop() : void 0; } __name(popScheduler, "popScheduler"); exports2.popScheduler = popScheduler; function popNumber(args, defaultValue) { return typeof last(args) === "number" ? args.pop() : defaultValue; } __name(popNumber, "popNumber"); exports2.popNumber = popNumber; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/executeSchedule.js var require_executeSchedule = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/executeSchedule.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.executeSchedule = void 0; function executeSchedule(parentSubscription, scheduler, work, delay, repeat) { if (delay === void 0) { delay = 0; } if (repeat === void 0) { repeat = false; } var scheduleSubscription = scheduler.schedule(function() { work(); if (repeat) { parentSubscription.add(this.schedule(null, delay)); } else { this.unsubscribe(); } }, delay); parentSubscription.add(scheduleSubscription); if (!repeat) { return scheduleSubscription; } } __name(executeSchedule, "executeSchedule"); exports2.executeSchedule = executeSchedule; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js var require_bufferTime = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js"(exports2) { "use strict"; var __values2 = exports2 && exports2.__values || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: /* @__PURE__ */ __name(function() { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; }, "next") }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.bufferTime = void 0; var Subscription_1 = require_Subscription(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var arrRemove_1 = require_arrRemove(); var async_1 = require_async(); var args_1 = require_args(); var executeSchedule_1 = require_executeSchedule(); function bufferTime(bufferTimeSpan) { var _a, _b; var otherArgs = []; for (var _i = 1; _i < arguments.length; _i++) { otherArgs[_i - 1] = arguments[_i]; } var scheduler = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler; var bufferCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null; var maxBufferSize = otherArgs[1] || Infinity; return lift_1.operate(function(source, subscriber) { var bufferRecords = []; var restartOnEmit = false; var emit = /* @__PURE__ */ __name(function(record) { var buffer = record.buffer, subs = record.subs; subs.unsubscribe(); arrRemove_1.arrRemove(bufferRecords, record); subscriber.next(buffer); restartOnEmit && startBuffer(); }, "emit"); var startBuffer = /* @__PURE__ */ __name(function() { if (bufferRecords) { var subs = new Subscription_1.Subscription(); subscriber.add(subs); var buffer = []; var record_1 = { buffer, subs }; bufferRecords.push(record_1); executeSchedule_1.executeSchedule(subs, scheduler, function() { return emit(record_1); }, bufferTimeSpan); } }, "startBuffer"); if (bufferCreationInterval !== null && bufferCreationInterval >= 0) { executeSchedule_1.executeSchedule(subscriber, scheduler, startBuffer, bufferCreationInterval, true); } else { restartOnEmit = true; } startBuffer(); var bufferTimeSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var e_1, _a2; var recordsCopy = bufferRecords.slice(); try { for (var recordsCopy_1 = __values2(recordsCopy), recordsCopy_1_1 = recordsCopy_1.next(); !recordsCopy_1_1.done; recordsCopy_1_1 = recordsCopy_1.next()) { var record = recordsCopy_1_1.value; var buffer = record.buffer; buffer.push(value); maxBufferSize <= buffer.length && emit(record); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (recordsCopy_1_1 && !recordsCopy_1_1.done && (_a2 = recordsCopy_1.return)) _a2.call(recordsCopy_1); } finally { if (e_1) throw e_1.error; } } }, function() { while (bufferRecords === null || bufferRecords === void 0 ? void 0 : bufferRecords.length) { subscriber.next(bufferRecords.shift().buffer); } bufferTimeSubscriber === null || bufferTimeSubscriber === void 0 ? void 0 : bufferTimeSubscriber.unsubscribe(); subscriber.complete(); subscriber.unsubscribe(); }, void 0, function() { return bufferRecords = null; }); source.subscribe(bufferTimeSubscriber); }); } __name(bufferTime, "bufferTime"); exports2.bufferTime = bufferTime; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js var require_bufferToggle = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js"(exports2) { "use strict"; var __values2 = exports2 && exports2.__values || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: /* @__PURE__ */ __name(function() { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; }, "next") }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.bufferToggle = void 0; var Subscription_1 = require_Subscription(); var lift_1 = require_lift(); var innerFrom_1 = require_innerFrom(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var noop_1 = require_noop(); var arrRemove_1 = require_arrRemove(); function bufferToggle(openings, closingSelector) { return lift_1.operate(function(source, subscriber) { var buffers = []; innerFrom_1.innerFrom(openings).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(openValue) { var buffer = []; buffers.push(buffer); var closingSubscription = new Subscription_1.Subscription(); var emitBuffer = /* @__PURE__ */ __name(function() { arrRemove_1.arrRemove(buffers, buffer); subscriber.next(buffer); closingSubscription.unsubscribe(); }, "emitBuffer"); closingSubscription.add(innerFrom_1.innerFrom(closingSelector(openValue)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, emitBuffer, noop_1.noop))); }, noop_1.noop)); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var e_1, _a; try { for (var buffers_1 = __values2(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) { var buffer = buffers_1_1.value; buffer.push(value); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) _a.call(buffers_1); } finally { if (e_1) throw e_1.error; } } }, function() { while (buffers.length > 0) { subscriber.next(buffers.shift()); } subscriber.complete(); })); }); } __name(bufferToggle, "bufferToggle"); exports2.bufferToggle = bufferToggle; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js var require_bufferWhen = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.bufferWhen = void 0; var lift_1 = require_lift(); var noop_1 = require_noop(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var innerFrom_1 = require_innerFrom(); function bufferWhen(closingSelector) { return lift_1.operate(function(source, subscriber) { var buffer = null; var closingSubscriber = null; var openBuffer = /* @__PURE__ */ __name(function() { closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); var b = buffer; buffer = []; b && subscriber.next(b); innerFrom_1.innerFrom(closingSelector()).subscribe(closingSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, openBuffer, noop_1.noop)); }, "openBuffer"); openBuffer(); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { return buffer === null || buffer === void 0 ? void 0 : buffer.push(value); }, function() { buffer && subscriber.next(buffer); subscriber.complete(); }, void 0, function() { return buffer = closingSubscriber = null; })); }); } __name(bufferWhen, "bufferWhen"); exports2.bufferWhen = bufferWhen; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/catchError.js var require_catchError = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/catchError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.catchError = void 0; var innerFrom_1 = require_innerFrom(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var lift_1 = require_lift(); function catchError(selector) { return lift_1.operate(function(source, subscriber) { var innerSub = null; var syncUnsub = false; var handledResult; innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, void 0, function(err) { handledResult = innerFrom_1.innerFrom(selector(err, catchError(selector)(source))); if (innerSub) { innerSub.unsubscribe(); innerSub = null; handledResult.subscribe(subscriber); } else { syncUnsub = true; } })); if (syncUnsub) { innerSub.unsubscribe(); innerSub = null; handledResult.subscribe(subscriber); } }); } __name(catchError, "catchError"); exports2.catchError = catchError; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js var require_argsArgArrayOrObject = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.argsArgArrayOrObject = void 0; var isArray = Array.isArray; var getPrototypeOf = Object.getPrototypeOf; var objectProto = Object.prototype; var getKeys = Object.keys; function argsArgArrayOrObject(args) { if (args.length === 1) { var first_1 = args[0]; if (isArray(first_1)) { return { args: first_1, keys: null }; } if (isPOJO(first_1)) { var keys = getKeys(first_1); return { args: keys.map(function(key) { return first_1[key]; }), keys }; } } return { args, keys: null }; } __name(argsArgArrayOrObject, "argsArgArrayOrObject"); exports2.argsArgArrayOrObject = argsArgArrayOrObject; function isPOJO(obj2) { return obj2 && typeof obj2 === "object" && getPrototypeOf(obj2) === objectProto; } __name(isPOJO, "isPOJO"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/observeOn.js var require_observeOn = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/observeOn.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.observeOn = void 0; var executeSchedule_1 = require_executeSchedule(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function observeOn(scheduler, delay) { if (delay === void 0) { delay = 0; } return lift_1.operate(function(source, subscriber) { source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { return executeSchedule_1.executeSchedule(subscriber, scheduler, function() { return subscriber.next(value); }, delay); }, function() { return executeSchedule_1.executeSchedule(subscriber, scheduler, function() { return subscriber.complete(); }, delay); }, function(err) { return executeSchedule_1.executeSchedule(subscriber, scheduler, function() { return subscriber.error(err); }, delay); })); }); } __name(observeOn, "observeOn"); exports2.observeOn = observeOn; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js var require_subscribeOn = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.subscribeOn = void 0; var lift_1 = require_lift(); function subscribeOn(scheduler, delay) { if (delay === void 0) { delay = 0; } return lift_1.operate(function(source, subscriber) { subscriber.add(scheduler.schedule(function() { return source.subscribe(subscriber); }, delay)); }); } __name(subscribeOn, "subscribeOn"); exports2.subscribeOn = subscribeOn; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js var require_scheduleObservable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.scheduleObservable = void 0; var innerFrom_1 = require_innerFrom(); var observeOn_1 = require_observeOn(); var subscribeOn_1 = require_subscribeOn(); function scheduleObservable(input, scheduler) { return innerFrom_1.innerFrom(input).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler)); } __name(scheduleObservable, "scheduleObservable"); exports2.scheduleObservable = scheduleObservable; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js var require_schedulePromise = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.schedulePromise = void 0; var innerFrom_1 = require_innerFrom(); var observeOn_1 = require_observeOn(); var subscribeOn_1 = require_subscribeOn(); function schedulePromise(input, scheduler) { return innerFrom_1.innerFrom(input).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler)); } __name(schedulePromise, "schedulePromise"); exports2.schedulePromise = schedulePromise; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js var require_scheduleArray = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.scheduleArray = void 0; var Observable_1 = require_Observable(); function scheduleArray(input, scheduler) { return new Observable_1.Observable(function(subscriber) { var i = 0; return scheduler.schedule(function() { if (i === input.length) { subscriber.complete(); } else { subscriber.next(input[i++]); if (!subscriber.closed) { this.schedule(); } } }); }); } __name(scheduleArray, "scheduleArray"); exports2.scheduleArray = scheduleArray; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js var require_scheduleIterable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.scheduleIterable = void 0; var Observable_1 = require_Observable(); var iterator_1 = require_iterator(); var isFunction_1 = require_isFunction(); var executeSchedule_1 = require_executeSchedule(); function scheduleIterable(input, scheduler) { return new Observable_1.Observable(function(subscriber) { var iterator; executeSchedule_1.executeSchedule(subscriber, scheduler, function() { iterator = input[iterator_1.iterator](); executeSchedule_1.executeSchedule(subscriber, scheduler, function() { var _a; var value; var done; try { _a = iterator.next(), value = _a.value, done = _a.done; } catch (err) { subscriber.error(err); return; } if (done) { subscriber.complete(); } else { subscriber.next(value); } }, 0, true); }); return function() { return isFunction_1.isFunction(iterator === null || iterator === void 0 ? void 0 : iterator.return) && iterator.return(); }; }); } __name(scheduleIterable, "scheduleIterable"); exports2.scheduleIterable = scheduleIterable; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js var require_scheduleAsyncIterable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.scheduleAsyncIterable = void 0; var Observable_1 = require_Observable(); var executeSchedule_1 = require_executeSchedule(); function scheduleAsyncIterable(input, scheduler) { if (!input) { throw new Error("Iterable cannot be null"); } return new Observable_1.Observable(function(subscriber) { executeSchedule_1.executeSchedule(subscriber, scheduler, function() { var iterator = input[Symbol.asyncIterator](); executeSchedule_1.executeSchedule(subscriber, scheduler, function() { iterator.next().then(function(result) { if (result.done) { subscriber.complete(); } else { subscriber.next(result.value); } }); }, 0, true); }); }); } __name(scheduleAsyncIterable, "scheduleAsyncIterable"); exports2.scheduleAsyncIterable = scheduleAsyncIterable; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js var require_scheduleReadableStreamLike = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.scheduleReadableStreamLike = void 0; var scheduleAsyncIterable_1 = require_scheduleAsyncIterable(); var isReadableStreamLike_1 = require_isReadableStreamLike(); function scheduleReadableStreamLike(input, scheduler) { return scheduleAsyncIterable_1.scheduleAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(input), scheduler); } __name(scheduleReadableStreamLike, "scheduleReadableStreamLike"); exports2.scheduleReadableStreamLike = scheduleReadableStreamLike; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js var require_scheduled = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.scheduled = void 0; var scheduleObservable_1 = require_scheduleObservable(); var schedulePromise_1 = require_schedulePromise(); var scheduleArray_1 = require_scheduleArray(); var scheduleIterable_1 = require_scheduleIterable(); var scheduleAsyncIterable_1 = require_scheduleAsyncIterable(); var isInteropObservable_1 = require_isInteropObservable(); var isPromise_1 = require_isPromise(); var isArrayLike_1 = require_isArrayLike(); var isIterable_1 = require_isIterable(); var isAsyncIterable_1 = require_isAsyncIterable(); var throwUnobservableError_1 = require_throwUnobservableError(); var isReadableStreamLike_1 = require_isReadableStreamLike(); var scheduleReadableStreamLike_1 = require_scheduleReadableStreamLike(); function scheduled(input, scheduler) { if (input != null) { if (isInteropObservable_1.isInteropObservable(input)) { return scheduleObservable_1.scheduleObservable(input, scheduler); } if (isArrayLike_1.isArrayLike(input)) { return scheduleArray_1.scheduleArray(input, scheduler); } if (isPromise_1.isPromise(input)) { return schedulePromise_1.schedulePromise(input, scheduler); } if (isAsyncIterable_1.isAsyncIterable(input)) { return scheduleAsyncIterable_1.scheduleAsyncIterable(input, scheduler); } if (isIterable_1.isIterable(input)) { return scheduleIterable_1.scheduleIterable(input, scheduler); } if (isReadableStreamLike_1.isReadableStreamLike(input)) { return scheduleReadableStreamLike_1.scheduleReadableStreamLike(input, scheduler); } } throw throwUnobservableError_1.createInvalidObservableTypeError(input); } __name(scheduled, "scheduled"); exports2.scheduled = scheduled; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/from.js var require_from = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/from.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.from = void 0; var scheduled_1 = require_scheduled(); var innerFrom_1 = require_innerFrom(); function from(input, scheduler) { return scheduler ? scheduled_1.scheduled(input, scheduler) : innerFrom_1.innerFrom(input); } __name(from, "from"); exports2.from = from; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/map.js var require_map2 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/map.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.map = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function map(project, thisArg) { return lift_1.operate(function(source, subscriber) { var index = 0; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { subscriber.next(project.call(thisArg, value, index++)); })); }); } __name(map, "map"); exports2.map = map; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js var require_mapOneOrManyArgs = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mapOneOrManyArgs = void 0; var map_1 = require_map2(); var isArray = Array.isArray; function callOrApply(fn, args) { return isArray(args) ? fn.apply(void 0, __spreadArray2([], __read2(args))) : fn(args); } __name(callOrApply, "callOrApply"); function mapOneOrManyArgs(fn) { return map_1.map(function(args) { return callOrApply(fn, args); }); } __name(mapOneOrManyArgs, "mapOneOrManyArgs"); exports2.mapOneOrManyArgs = mapOneOrManyArgs; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/createObject.js var require_createObject = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/createObject.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createObject = void 0; function createObject(keys, values) { return keys.reduce(function(result, key, i) { return result[key] = values[i], result; }, {}); } __name(createObject, "createObject"); exports2.createObject = createObject; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js var require_combineLatest = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.combineLatestInit = exports2.combineLatest = void 0; var Observable_1 = require_Observable(); var argsArgArrayOrObject_1 = require_argsArgArrayOrObject(); var from_1 = require_from(); var identity_1 = require_identity(); var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); var args_1 = require_args(); var createObject_1 = require_createObject(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var executeSchedule_1 = require_executeSchedule(); function combineLatest() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var scheduler = args_1.popScheduler(args); var resultSelector = args_1.popResultSelector(args); var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args), observables = _a.args, keys = _a.keys; if (observables.length === 0) { return from_1.from([], scheduler); } var result = new Observable_1.Observable(combineLatestInit(observables, scheduler, keys ? function(values) { return createObject_1.createObject(keys, values); } : identity_1.identity)); return resultSelector ? result.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result; } __name(combineLatest, "combineLatest"); exports2.combineLatest = combineLatest; function combineLatestInit(observables, scheduler, valueTransform) { if (valueTransform === void 0) { valueTransform = identity_1.identity; } return function(subscriber) { maybeSchedule(scheduler, function() { var length = observables.length; var values = new Array(length); var active = length; var remainingFirstValues = length; var _loop_1 = /* @__PURE__ */ __name(function(i2) { maybeSchedule(scheduler, function() { var source = from_1.from(observables[i2], scheduler); var hasFirstValue = false; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { values[i2] = value; if (!hasFirstValue) { hasFirstValue = true; remainingFirstValues--; } if (!remainingFirstValues) { subscriber.next(valueTransform(values.slice())); } }, function() { if (!--active) { subscriber.complete(); } })); }, subscriber); }, "_loop_1"); for (var i = 0; i < length; i++) { _loop_1(i); } }, subscriber); }; } __name(combineLatestInit, "combineLatestInit"); exports2.combineLatestInit = combineLatestInit; function maybeSchedule(scheduler, execute, subscription) { if (scheduler) { executeSchedule_1.executeSchedule(subscription, scheduler, execute); } else { execute(); } } __name(maybeSchedule, "maybeSchedule"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js var require_mergeInternals = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mergeInternals = void 0; var innerFrom_1 = require_innerFrom(); var executeSchedule_1 = require_executeSchedule(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function mergeInternals(source, subscriber, project, concurrent, onBeforeNext, expand, innerSubScheduler, additionalFinalizer) { var buffer = []; var active = 0; var index = 0; var isComplete = false; var checkComplete = /* @__PURE__ */ __name(function() { if (isComplete && !buffer.length && !active) { subscriber.complete(); } }, "checkComplete"); var outerNext = /* @__PURE__ */ __name(function(value) { return active < concurrent ? doInnerSub(value) : buffer.push(value); }, "outerNext"); var doInnerSub = /* @__PURE__ */ __name(function(value) { expand && subscriber.next(value); active++; var innerComplete = false; innerFrom_1.innerFrom(project(value, index++)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(innerValue) { onBeforeNext === null || onBeforeNext === void 0 ? void 0 : onBeforeNext(innerValue); if (expand) { outerNext(innerValue); } else { subscriber.next(innerValue); } }, function() { innerComplete = true; }, void 0, function() { if (innerComplete) { try { active--; var _loop_1 = /* @__PURE__ */ __name(function() { var bufferedValue = buffer.shift(); if (innerSubScheduler) { executeSchedule_1.executeSchedule(subscriber, innerSubScheduler, function() { return doInnerSub(bufferedValue); }); } else { doInnerSub(bufferedValue); } }, "_loop_1"); while (buffer.length && active < concurrent) { _loop_1(); } checkComplete(); } catch (err) { subscriber.error(err); } } })); }, "doInnerSub"); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, outerNext, function() { isComplete = true; checkComplete(); })); return function() { additionalFinalizer === null || additionalFinalizer === void 0 ? void 0 : additionalFinalizer(); }; } __name(mergeInternals, "mergeInternals"); exports2.mergeInternals = mergeInternals; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js var require_mergeMap = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mergeMap = void 0; var map_1 = require_map2(); var innerFrom_1 = require_innerFrom(); var lift_1 = require_lift(); var mergeInternals_1 = require_mergeInternals(); var isFunction_1 = require_isFunction(); function mergeMap(project, resultSelector, concurrent) { if (concurrent === void 0) { concurrent = Infinity; } if (isFunction_1.isFunction(resultSelector)) { return mergeMap(function(a, i) { return map_1.map(function(b, ii) { return resultSelector(a, b, i, ii); })(innerFrom_1.innerFrom(project(a, i))); }, concurrent); } else if (typeof resultSelector === "number") { concurrent = resultSelector; } return lift_1.operate(function(source, subscriber) { return mergeInternals_1.mergeInternals(source, subscriber, project, concurrent); }); } __name(mergeMap, "mergeMap"); exports2.mergeMap = mergeMap; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js var require_scanInternals = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.scanInternals = void 0; var OperatorSubscriber_1 = require_OperatorSubscriber(); function scanInternals(accumulator, seed, hasSeed, emitOnNext, emitBeforeComplete) { return function(source, subscriber) { var hasState = hasSeed; var state = seed; var index = 0; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var i = index++; state = hasState ? accumulator(state, value, i) : (hasState = true, value); emitOnNext && subscriber.next(state); }, emitBeforeComplete && (function() { hasState && subscriber.next(state); subscriber.complete(); }))); }; } __name(scanInternals, "scanInternals"); exports2.scanInternals = scanInternals; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/reduce.js var require_reduce = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/reduce.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.reduce = void 0; var scanInternals_1 = require_scanInternals(); var lift_1 = require_lift(); function reduce(accumulator, seed) { return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, false, true)); } __name(reduce, "reduce"); exports2.reduce = reduce; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/toArray.js var require_toArray = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/toArray.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.toArray = void 0; var reduce_1 = require_reduce(); var lift_1 = require_lift(); var arrReducer = /* @__PURE__ */ __name(function(arr, value) { return arr.push(value), arr; }, "arrReducer"); function toArray() { return lift_1.operate(function(source, subscriber) { reduce_1.reduce(arrReducer, [])(source).subscribe(subscriber); }); } __name(toArray, "toArray"); exports2.toArray = toArray; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js var require_joinAllInternals = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.joinAllInternals = void 0; var identity_1 = require_identity(); var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); var pipe_1 = require_pipe(); var mergeMap_1 = require_mergeMap(); var toArray_1 = require_toArray(); function joinAllInternals(joinFn, project) { return pipe_1.pipe(toArray_1.toArray(), mergeMap_1.mergeMap(function(sources) { return joinFn(sources); }), project ? mapOneOrManyArgs_1.mapOneOrManyArgs(project) : identity_1.identity); } __name(joinAllInternals, "joinAllInternals"); exports2.joinAllInternals = joinAllInternals; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js var require_combineLatestAll = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.combineLatestAll = void 0; var combineLatest_1 = require_combineLatest(); var joinAllInternals_1 = require_joinAllInternals(); function combineLatestAll(project) { return joinAllInternals_1.joinAllInternals(combineLatest_1.combineLatest, project); } __name(combineLatestAll, "combineLatestAll"); exports2.combineLatestAll = combineLatestAll; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/combineAll.js var require_combineAll = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/combineAll.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.combineAll = void 0; var combineLatestAll_1 = require_combineLatestAll(); exports2.combineAll = combineLatestAll_1.combineLatestAll; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js var require_argsOrArgArray = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.argsOrArgArray = void 0; var isArray = Array.isArray; function argsOrArgArray(args) { return args.length === 1 && isArray(args[0]) ? args[0] : args; } __name(argsOrArgArray, "argsOrArgArray"); exports2.argsOrArgArray = argsOrArgArray; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js var require_combineLatest2 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.combineLatest = void 0; var combineLatest_1 = require_combineLatest(); var lift_1 = require_lift(); var argsOrArgArray_1 = require_argsOrArgArray(); var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); var pipe_1 = require_pipe(); var args_1 = require_args(); function combineLatest() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var resultSelector = args_1.popResultSelector(args); return resultSelector ? pipe_1.pipe(combineLatest.apply(void 0, __spreadArray2([], __read2(args))), mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : lift_1.operate(function(source, subscriber) { combineLatest_1.combineLatestInit(__spreadArray2([source], __read2(argsOrArgArray_1.argsOrArgArray(args))))(subscriber); }); } __name(combineLatest, "combineLatest"); exports2.combineLatest = combineLatest; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js var require_combineLatestWith = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.combineLatestWith = void 0; var combineLatest_1 = require_combineLatest2(); function combineLatestWith() { var otherSources = []; for (var _i = 0; _i < arguments.length; _i++) { otherSources[_i] = arguments[_i]; } return combineLatest_1.combineLatest.apply(void 0, __spreadArray2([], __read2(otherSources))); } __name(combineLatestWith, "combineLatestWith"); exports2.combineLatestWith = combineLatestWith; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js var require_mergeAll = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mergeAll = void 0; var mergeMap_1 = require_mergeMap(); var identity_1 = require_identity(); function mergeAll(concurrent) { if (concurrent === void 0) { concurrent = Infinity; } return mergeMap_1.mergeMap(identity_1.identity, concurrent); } __name(mergeAll, "mergeAll"); exports2.mergeAll = mergeAll; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/concatAll.js var require_concatAll = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/concatAll.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.concatAll = void 0; var mergeAll_1 = require_mergeAll(); function concatAll() { return mergeAll_1.mergeAll(1); } __name(concatAll, "concatAll"); exports2.concatAll = concatAll; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/concat.js var require_concat2 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/concat.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.concat = void 0; var lift_1 = require_lift(); var concatAll_1 = require_concatAll(); var args_1 = require_args(); var from_1 = require_from(); function concat() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var scheduler = args_1.popScheduler(args); return lift_1.operate(function(source, subscriber) { concatAll_1.concatAll()(from_1.from(__spreadArray2([source], __read2(args)), scheduler)).subscribe(subscriber); }); } __name(concat, "concat"); exports2.concat = concat; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/concatMap.js var require_concatMap = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/concatMap.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.concatMap = void 0; var mergeMap_1 = require_mergeMap(); var isFunction_1 = require_isFunction(); function concatMap(project, resultSelector) { return isFunction_1.isFunction(resultSelector) ? mergeMap_1.mergeMap(project, resultSelector, 1) : mergeMap_1.mergeMap(project, 1); } __name(concatMap, "concatMap"); exports2.concatMap = concatMap; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js var require_concatMapTo = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.concatMapTo = void 0; var concatMap_1 = require_concatMap(); var isFunction_1 = require_isFunction(); function concatMapTo(innerObservable, resultSelector) { return isFunction_1.isFunction(resultSelector) ? concatMap_1.concatMap(function() { return innerObservable; }, resultSelector) : concatMap_1.concatMap(function() { return innerObservable; }); } __name(concatMapTo, "concatMapTo"); exports2.concatMapTo = concatMapTo; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/concatWith.js var require_concatWith = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/concatWith.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.concatWith = void 0; var concat_1 = require_concat2(); function concatWith() { var otherSources = []; for (var _i = 0; _i < arguments.length; _i++) { otherSources[_i] = arguments[_i]; } return concat_1.concat.apply(void 0, __spreadArray2([], __read2(otherSources))); } __name(concatWith, "concatWith"); exports2.concatWith = concatWith; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js var require_ObjectUnsubscribedError = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ObjectUnsubscribedError = void 0; var createErrorClass_1 = require_createErrorClass(); exports2.ObjectUnsubscribedError = createErrorClass_1.createErrorClass(function(_super) { return /* @__PURE__ */ __name(function ObjectUnsubscribedErrorImpl() { _super(this); this.name = "ObjectUnsubscribedError"; this.message = "object unsubscribed"; }, "ObjectUnsubscribedErrorImpl"); }); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Subject.js var require_Subject = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Subject.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var __values2 = exports2 && exports2.__values || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: /* @__PURE__ */ __name(function() { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; }, "next") }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AnonymousSubject = exports2.Subject = void 0; var Observable_1 = require_Observable(); var Subscription_1 = require_Subscription(); var ObjectUnsubscribedError_1 = require_ObjectUnsubscribedError(); var arrRemove_1 = require_arrRemove(); var errorContext_1 = require_errorContext(); var Subject = (function(_super) { __extends2(Subject2, _super); function Subject2() { var _this = _super.call(this) || this; _this.closed = false; _this.currentObservers = null; _this.observers = []; _this.isStopped = false; _this.hasError = false; _this.thrownError = null; return _this; } __name(Subject2, "Subject"); Subject2.prototype.lift = function(operator) { var subject = new AnonymousSubject(this, this); subject.operator = operator; return subject; }; Subject2.prototype._throwIfClosed = function() { if (this.closed) { throw new ObjectUnsubscribedError_1.ObjectUnsubscribedError(); } }; Subject2.prototype.next = function(value) { var _this = this; errorContext_1.errorContext(function() { var e_1, _a; _this._throwIfClosed(); if (!_this.isStopped) { if (!_this.currentObservers) { _this.currentObservers = Array.from(_this.observers); } try { for (var _b = __values2(_this.currentObservers), _c = _b.next(); !_c.done; _c = _b.next()) { var observer = _c.value; observer.next(value); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_c && !_c.done && (_a = _b.return)) _a.call(_b); } finally { if (e_1) throw e_1.error; } } } }); }; Subject2.prototype.error = function(err) { var _this = this; errorContext_1.errorContext(function() { _this._throwIfClosed(); if (!_this.isStopped) { _this.hasError = _this.isStopped = true; _this.thrownError = err; var observers = _this.observers; while (observers.length) { observers.shift().error(err); } } }); }; Subject2.prototype.complete = function() { var _this = this; errorContext_1.errorContext(function() { _this._throwIfClosed(); if (!_this.isStopped) { _this.isStopped = true; var observers = _this.observers; while (observers.length) { observers.shift().complete(); } } }); }; Subject2.prototype.unsubscribe = function() { this.isStopped = this.closed = true; this.observers = this.currentObservers = null; }; Object.defineProperty(Subject2.prototype, "observed", { get: /* @__PURE__ */ __name(function() { var _a; return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0; }, "get"), enumerable: false, configurable: true }); Subject2.prototype._trySubscribe = function(subscriber) { this._throwIfClosed(); return _super.prototype._trySubscribe.call(this, subscriber); }; Subject2.prototype._subscribe = function(subscriber) { this._throwIfClosed(); this._checkFinalizedStatuses(subscriber); return this._innerSubscribe(subscriber); }; Subject2.prototype._innerSubscribe = function(subscriber) { var _this = this; var _a = this, hasError = _a.hasError, isStopped = _a.isStopped, observers = _a.observers; if (hasError || isStopped) { return Subscription_1.EMPTY_SUBSCRIPTION; } this.currentObservers = null; observers.push(subscriber); return new Subscription_1.Subscription(function() { _this.currentObservers = null; arrRemove_1.arrRemove(observers, subscriber); }); }; Subject2.prototype._checkFinalizedStatuses = function(subscriber) { var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, isStopped = _a.isStopped; if (hasError) { subscriber.error(thrownError); } else if (isStopped) { subscriber.complete(); } }; Subject2.prototype.asObservable = function() { var observable = new Observable_1.Observable(); observable.source = this; return observable; }; Subject2.create = function(destination, source) { return new AnonymousSubject(destination, source); }; return Subject2; })(Observable_1.Observable); exports2.Subject = Subject; var AnonymousSubject = (function(_super) { __extends2(AnonymousSubject2, _super); function AnonymousSubject2(destination, source) { var _this = _super.call(this) || this; _this.destination = destination; _this.source = source; return _this; } __name(AnonymousSubject2, "AnonymousSubject"); AnonymousSubject2.prototype.next = function(value) { var _a, _b; (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value); }; AnonymousSubject2.prototype.error = function(err) { var _a, _b; (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err); }; AnonymousSubject2.prototype.complete = function() { var _a, _b; (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a); }; AnonymousSubject2.prototype._subscribe = function(subscriber) { var _a, _b; return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : Subscription_1.EMPTY_SUBSCRIPTION; }; return AnonymousSubject2; })(Subject); exports2.AnonymousSubject = AnonymousSubject; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js var require_fromSubscribable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.fromSubscribable = void 0; var Observable_1 = require_Observable(); function fromSubscribable(subscribable) { return new Observable_1.Observable(function(subscriber) { return subscribable.subscribe(subscriber); }); } __name(fromSubscribable, "fromSubscribable"); exports2.fromSubscribable = fromSubscribable; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/connect.js var require_connect = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/connect.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.connect = void 0; var Subject_1 = require_Subject(); var innerFrom_1 = require_innerFrom(); var lift_1 = require_lift(); var fromSubscribable_1 = require_fromSubscribable(); var DEFAULT_CONFIG = { connector: /* @__PURE__ */ __name(function() { return new Subject_1.Subject(); }, "connector") }; function connect(selector, config) { if (config === void 0) { config = DEFAULT_CONFIG; } var connector = config.connector; return lift_1.operate(function(source, subscriber) { var subject = connector(); innerFrom_1.innerFrom(selector(fromSubscribable_1.fromSubscribable(subject))).subscribe(subscriber); subscriber.add(source.subscribe(subject)); }); } __name(connect, "connect"); exports2.connect = connect; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/count.js var require_count = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/count.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.count = void 0; var reduce_1 = require_reduce(); function count(predicate) { return reduce_1.reduce(function(total, value, i) { return !predicate || predicate(value, i) ? total + 1 : total; }, 0); } __name(count, "count"); exports2.count = count; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/debounce.js var require_debounce = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/debounce.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.debounce = void 0; var lift_1 = require_lift(); var noop_1 = require_noop(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var innerFrom_1 = require_innerFrom(); function debounce(durationSelector) { return lift_1.operate(function(source, subscriber) { var hasValue = false; var lastValue = null; var durationSubscriber = null; var emit = /* @__PURE__ */ __name(function() { durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); durationSubscriber = null; if (hasValue) { hasValue = false; var value = lastValue; lastValue = null; subscriber.next(value); } }, "emit"); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe(); hasValue = true; lastValue = value; durationSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, emit, noop_1.noop); innerFrom_1.innerFrom(durationSelector(value)).subscribe(durationSubscriber); }, function() { emit(); subscriber.complete(); }, void 0, function() { lastValue = durationSubscriber = null; })); }); } __name(debounce, "debounce"); exports2.debounce = debounce; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js var require_debounceTime = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.debounceTime = void 0; var async_1 = require_async(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function debounceTime(dueTime, scheduler) { if (scheduler === void 0) { scheduler = async_1.asyncScheduler; } return lift_1.operate(function(source, subscriber) { var activeTask = null; var lastValue = null; var lastTime = null; var emit = /* @__PURE__ */ __name(function() { if (activeTask) { activeTask.unsubscribe(); activeTask = null; var value = lastValue; lastValue = null; subscriber.next(value); } }, "emit"); function emitWhenIdle() { var targetTime = lastTime + dueTime; var now = scheduler.now(); if (now < targetTime) { activeTask = this.schedule(void 0, targetTime - now); subscriber.add(activeTask); return; } emit(); } __name(emitWhenIdle, "emitWhenIdle"); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { lastValue = value; lastTime = scheduler.now(); if (!activeTask) { activeTask = scheduler.schedule(emitWhenIdle, dueTime); subscriber.add(activeTask); } }, function() { emit(); subscriber.complete(); }, void 0, function() { lastValue = activeTask = null; })); }); } __name(debounceTime, "debounceTime"); exports2.debounceTime = debounceTime; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js var require_defaultIfEmpty = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defaultIfEmpty = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function defaultIfEmpty(defaultValue) { return lift_1.operate(function(source, subscriber) { var hasValue = false; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { hasValue = true; subscriber.next(value); }, function() { if (!hasValue) { subscriber.next(defaultValue); } subscriber.complete(); })); }); } __name(defaultIfEmpty, "defaultIfEmpty"); exports2.defaultIfEmpty = defaultIfEmpty; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/concat.js var require_concat3 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/concat.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.concat = void 0; var concatAll_1 = require_concatAll(); var args_1 = require_args(); var from_1 = require_from(); function concat() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } return concatAll_1.concatAll()(from_1.from(args, args_1.popScheduler(args))); } __name(concat, "concat"); exports2.concat = concat; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/empty.js var require_empty = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/empty.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.empty = exports2.EMPTY = void 0; var Observable_1 = require_Observable(); exports2.EMPTY = new Observable_1.Observable(function(subscriber) { return subscriber.complete(); }); function empty(scheduler) { return scheduler ? emptyScheduled(scheduler) : exports2.EMPTY; } __name(empty, "empty"); exports2.empty = empty; function emptyScheduled(scheduler) { return new Observable_1.Observable(function(subscriber) { return scheduler.schedule(function() { return subscriber.complete(); }); }); } __name(emptyScheduled, "emptyScheduled"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/take.js var require_take = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/take.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.take = void 0; var empty_1 = require_empty(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function take(count) { return count <= 0 ? function() { return empty_1.EMPTY; } : lift_1.operate(function(source, subscriber) { var seen = 0; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { if (++seen <= count) { subscriber.next(value); if (count <= seen) { subscriber.complete(); } } })); }); } __name(take, "take"); exports2.take = take; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js var require_ignoreElements = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ignoreElements = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var noop_1 = require_noop(); function ignoreElements() { return lift_1.operate(function(source, subscriber) { source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, noop_1.noop)); }); } __name(ignoreElements, "ignoreElements"); exports2.ignoreElements = ignoreElements; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mapTo.js var require_mapTo = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mapTo.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mapTo = void 0; var map_1 = require_map2(); function mapTo(value) { return map_1.map(function() { return value; }); } __name(mapTo, "mapTo"); exports2.mapTo = mapTo; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js var require_delayWhen = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.delayWhen = void 0; var concat_1 = require_concat3(); var take_1 = require_take(); var ignoreElements_1 = require_ignoreElements(); var mapTo_1 = require_mapTo(); var mergeMap_1 = require_mergeMap(); var innerFrom_1 = require_innerFrom(); function delayWhen(delayDurationSelector, subscriptionDelay) { if (subscriptionDelay) { return function(source) { return concat_1.concat(subscriptionDelay.pipe(take_1.take(1), ignoreElements_1.ignoreElements()), source.pipe(delayWhen(delayDurationSelector))); }; } return mergeMap_1.mergeMap(function(value, index) { return innerFrom_1.innerFrom(delayDurationSelector(value, index)).pipe(take_1.take(1), mapTo_1.mapTo(value)); }); } __name(delayWhen, "delayWhen"); exports2.delayWhen = delayWhen; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/delay.js var require_delay = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/delay.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.delay = void 0; var async_1 = require_async(); var delayWhen_1 = require_delayWhen(); var timer_1 = require_timer(); function delay(due, scheduler) { if (scheduler === void 0) { scheduler = async_1.asyncScheduler; } var duration = timer_1.timer(due, scheduler); return delayWhen_1.delayWhen(function() { return duration; }); } __name(delay, "delay"); exports2.delay = delay; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/of.js var require_of = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/of.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.of = void 0; var args_1 = require_args(); var from_1 = require_from(); function of() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var scheduler = args_1.popScheduler(args); return from_1.from(args, scheduler); } __name(of, "of"); exports2.of = of; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/throwError.js var require_throwError = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/throwError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.throwError = void 0; var Observable_1 = require_Observable(); var isFunction_1 = require_isFunction(); function throwError(errorOrErrorFactory, scheduler) { var errorFactory = isFunction_1.isFunction(errorOrErrorFactory) ? errorOrErrorFactory : function() { return errorOrErrorFactory; }; var init = /* @__PURE__ */ __name(function(subscriber) { return subscriber.error(errorFactory()); }, "init"); return new Observable_1.Observable(scheduler ? function(subscriber) { return scheduler.schedule(init, 0, subscriber); } : init); } __name(throwError, "throwError"); exports2.throwError = throwError; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Notification.js var require_Notification = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/Notification.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.observeNotification = exports2.Notification = exports2.NotificationKind = void 0; var empty_1 = require_empty(); var of_1 = require_of(); var throwError_1 = require_throwError(); var isFunction_1 = require_isFunction(); var NotificationKind; (function(NotificationKind2) { NotificationKind2["NEXT"] = "N"; NotificationKind2["ERROR"] = "E"; NotificationKind2["COMPLETE"] = "C"; })(NotificationKind = exports2.NotificationKind || (exports2.NotificationKind = {})); var Notification = (function() { function Notification2(kind, value, error) { this.kind = kind; this.value = value; this.error = error; this.hasValue = kind === "N"; } __name(Notification2, "Notification"); Notification2.prototype.observe = function(observer) { return observeNotification(this, observer); }; Notification2.prototype.do = function(nextHandler, errorHandler, completeHandler) { var _a = this, kind = _a.kind, value = _a.value, error = _a.error; return kind === "N" ? nextHandler === null || nextHandler === void 0 ? void 0 : nextHandler(value) : kind === "E" ? errorHandler === null || errorHandler === void 0 ? void 0 : errorHandler(error) : completeHandler === null || completeHandler === void 0 ? void 0 : completeHandler(); }; Notification2.prototype.accept = function(nextOrObserver, error, complete) { var _a; return isFunction_1.isFunction((_a = nextOrObserver) === null || _a === void 0 ? void 0 : _a.next) ? this.observe(nextOrObserver) : this.do(nextOrObserver, error, complete); }; Notification2.prototype.toObservable = function() { var _a = this, kind = _a.kind, value = _a.value, error = _a.error; var result = kind === "N" ? of_1.of(value) : kind === "E" ? throwError_1.throwError(function() { return error; }) : kind === "C" ? empty_1.EMPTY : 0; if (!result) { throw new TypeError("Unexpected notification kind " + kind); } return result; }; Notification2.createNext = function(value) { return new Notification2("N", value); }; Notification2.createError = function(err) { return new Notification2("E", void 0, err); }; Notification2.createComplete = function() { return Notification2.completeNotification; }; Notification2.completeNotification = new Notification2("C"); return Notification2; })(); exports2.Notification = Notification; function observeNotification(notification, observer) { var _a, _b, _c; var _d = notification, kind = _d.kind, value = _d.value, error = _d.error; if (typeof kind !== "string") { throw new TypeError('Invalid notification, missing "kind"'); } kind === "N" ? (_a = observer.next) === null || _a === void 0 ? void 0 : _a.call(observer, value) : kind === "E" ? (_b = observer.error) === null || _b === void 0 ? void 0 : _b.call(observer, error) : (_c = observer.complete) === null || _c === void 0 ? void 0 : _c.call(observer); } __name(observeNotification, "observeNotification"); exports2.observeNotification = observeNotification; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js var require_dematerialize = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.dematerialize = void 0; var Notification_1 = require_Notification(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function dematerialize() { return lift_1.operate(function(source, subscriber) { source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(notification) { return Notification_1.observeNotification(notification, subscriber); })); }); } __name(dematerialize, "dematerialize"); exports2.dematerialize = dematerialize; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/distinct.js var require_distinct = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/distinct.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.distinct = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var noop_1 = require_noop(); var innerFrom_1 = require_innerFrom(); function distinct(keySelector, flushes) { return lift_1.operate(function(source, subscriber) { var distinctKeys = /* @__PURE__ */ new Set(); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var key = keySelector ? keySelector(value) : value; if (!distinctKeys.has(key)) { distinctKeys.add(key); subscriber.next(value); } })); flushes && innerFrom_1.innerFrom(flushes).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { return distinctKeys.clear(); }, noop_1.noop)); }); } __name(distinct, "distinct"); exports2.distinct = distinct; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js var require_distinctUntilChanged = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.distinctUntilChanged = void 0; var identity_1 = require_identity(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function distinctUntilChanged(comparator, keySelector) { if (keySelector === void 0) { keySelector = identity_1.identity; } comparator = comparator !== null && comparator !== void 0 ? comparator : defaultCompare; return lift_1.operate(function(source, subscriber) { var previousKey; var first = true; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var currentKey = keySelector(value); if (first || !comparator(previousKey, currentKey)) { first = false; previousKey = currentKey; subscriber.next(value); } })); }); } __name(distinctUntilChanged, "distinctUntilChanged"); exports2.distinctUntilChanged = distinctUntilChanged; function defaultCompare(a, b) { return a === b; } __name(defaultCompare, "defaultCompare"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js var require_distinctUntilKeyChanged = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.distinctUntilKeyChanged = void 0; var distinctUntilChanged_1 = require_distinctUntilChanged(); function distinctUntilKeyChanged(key, compare) { return distinctUntilChanged_1.distinctUntilChanged(function(x, y) { return compare ? compare(x[key], y[key]) : x[key] === y[key]; }); } __name(distinctUntilKeyChanged, "distinctUntilKeyChanged"); exports2.distinctUntilKeyChanged = distinctUntilKeyChanged; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js var require_ArgumentOutOfRangeError = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ArgumentOutOfRangeError = void 0; var createErrorClass_1 = require_createErrorClass(); exports2.ArgumentOutOfRangeError = createErrorClass_1.createErrorClass(function(_super) { return /* @__PURE__ */ __name(function ArgumentOutOfRangeErrorImpl() { _super(this); this.name = "ArgumentOutOfRangeError"; this.message = "argument out of range"; }, "ArgumentOutOfRangeErrorImpl"); }); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/filter.js var require_filter2 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/filter.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.filter = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function filter(predicate, thisArg) { return lift_1.operate(function(source, subscriber) { var index = 0; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { return predicate.call(thisArg, value, index++) && subscriber.next(value); })); }); } __name(filter, "filter"); exports2.filter = filter; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/EmptyError.js var require_EmptyError = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/EmptyError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.EmptyError = void 0; var createErrorClass_1 = require_createErrorClass(); exports2.EmptyError = createErrorClass_1.createErrorClass(function(_super) { return /* @__PURE__ */ __name(function EmptyErrorImpl() { _super(this); this.name = "EmptyError"; this.message = "no elements in sequence"; }, "EmptyErrorImpl"); }); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js var require_throwIfEmpty = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.throwIfEmpty = void 0; var EmptyError_1 = require_EmptyError(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function throwIfEmpty(errorFactory) { if (errorFactory === void 0) { errorFactory = defaultErrorFactory; } return lift_1.operate(function(source, subscriber) { var hasValue = false; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { hasValue = true; subscriber.next(value); }, function() { return hasValue ? subscriber.complete() : subscriber.error(errorFactory()); })); }); } __name(throwIfEmpty, "throwIfEmpty"); exports2.throwIfEmpty = throwIfEmpty; function defaultErrorFactory() { return new EmptyError_1.EmptyError(); } __name(defaultErrorFactory, "defaultErrorFactory"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/elementAt.js var require_elementAt = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/elementAt.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.elementAt = void 0; var ArgumentOutOfRangeError_1 = require_ArgumentOutOfRangeError(); var filter_1 = require_filter2(); var throwIfEmpty_1 = require_throwIfEmpty(); var defaultIfEmpty_1 = require_defaultIfEmpty(); var take_1 = require_take(); function elementAt(index, defaultValue) { if (index < 0) { throw new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError(); } var hasDefaultValue = arguments.length >= 2; return function(source) { return source.pipe(filter_1.filter(function(v, i) { return i === index; }), take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { return new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError(); })); }; } __name(elementAt, "elementAt"); exports2.elementAt = elementAt; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/endWith.js var require_endWith = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/endWith.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.endWith = void 0; var concat_1 = require_concat3(); var of_1 = require_of(); function endWith() { var values = []; for (var _i = 0; _i < arguments.length; _i++) { values[_i] = arguments[_i]; } return function(source) { return concat_1.concat(source, of_1.of.apply(void 0, __spreadArray2([], __read2(values)))); }; } __name(endWith, "endWith"); exports2.endWith = endWith; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/every.js var require_every = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/every.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.every = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function every(predicate, thisArg) { return lift_1.operate(function(source, subscriber) { var index = 0; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { if (!predicate.call(thisArg, value, index++, source)) { subscriber.next(false); subscriber.complete(); } }, function() { subscriber.next(true); subscriber.complete(); })); }); } __name(every, "every"); exports2.every = every; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js var require_exhaustMap = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exhaustMap = void 0; var map_1 = require_map2(); var innerFrom_1 = require_innerFrom(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function exhaustMap(project, resultSelector) { if (resultSelector) { return function(source) { return source.pipe(exhaustMap(function(a, i) { return innerFrom_1.innerFrom(project(a, i)).pipe(map_1.map(function(b, ii) { return resultSelector(a, b, i, ii); })); })); }; } return lift_1.operate(function(source, subscriber) { var index = 0; var innerSub = null; var isComplete = false; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(outerValue) { if (!innerSub) { innerSub = OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, function() { innerSub = null; isComplete && subscriber.complete(); }); innerFrom_1.innerFrom(project(outerValue, index++)).subscribe(innerSub); } }, function() { isComplete = true; !innerSub && subscriber.complete(); })); }); } __name(exhaustMap, "exhaustMap"); exports2.exhaustMap = exhaustMap; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js var require_exhaustAll = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exhaustAll = void 0; var exhaustMap_1 = require_exhaustMap(); var identity_1 = require_identity(); function exhaustAll() { return exhaustMap_1.exhaustMap(identity_1.identity); } __name(exhaustAll, "exhaustAll"); exports2.exhaustAll = exhaustAll; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/exhaust.js var require_exhaust = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/exhaust.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exhaust = void 0; var exhaustAll_1 = require_exhaustAll(); exports2.exhaust = exhaustAll_1.exhaustAll; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/expand.js var require_expand = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/expand.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.expand = void 0; var lift_1 = require_lift(); var mergeInternals_1 = require_mergeInternals(); function expand(project, concurrent, scheduler) { if (concurrent === void 0) { concurrent = Infinity; } concurrent = (concurrent || 0) < 1 ? Infinity : concurrent; return lift_1.operate(function(source, subscriber) { return mergeInternals_1.mergeInternals(source, subscriber, project, concurrent, void 0, true, scheduler); }); } __name(expand, "expand"); exports2.expand = expand; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/finalize.js var require_finalize = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/finalize.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.finalize = void 0; var lift_1 = require_lift(); function finalize(callback) { return lift_1.operate(function(source, subscriber) { try { source.subscribe(subscriber); } finally { subscriber.add(callback); } }); } __name(finalize, "finalize"); exports2.finalize = finalize; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/find.js var require_find = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/find.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createFind = exports2.find = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function find(predicate, thisArg) { return lift_1.operate(createFind(predicate, thisArg, "value")); } __name(find, "find"); exports2.find = find; function createFind(predicate, thisArg, emit) { var findIndex = emit === "index"; return function(source, subscriber) { var index = 0; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var i = index++; if (predicate.call(thisArg, value, i, source)) { subscriber.next(findIndex ? i : value); subscriber.complete(); } }, function() { subscriber.next(findIndex ? -1 : void 0); subscriber.complete(); })); }; } __name(createFind, "createFind"); exports2.createFind = createFind; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/findIndex.js var require_findIndex = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/findIndex.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.findIndex = void 0; var lift_1 = require_lift(); var find_1 = require_find(); function findIndex(predicate, thisArg) { return lift_1.operate(find_1.createFind(predicate, thisArg, "index")); } __name(findIndex, "findIndex"); exports2.findIndex = findIndex; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/first.js var require_first = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/first.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.first = void 0; var EmptyError_1 = require_EmptyError(); var filter_1 = require_filter2(); var take_1 = require_take(); var defaultIfEmpty_1 = require_defaultIfEmpty(); var throwIfEmpty_1 = require_throwIfEmpty(); var identity_1 = require_identity(); function first(predicate, defaultValue) { var hasDefaultValue = arguments.length >= 2; return function(source) { return source.pipe(predicate ? filter_1.filter(function(v, i) { return predicate(v, i, source); }) : identity_1.identity, take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { return new EmptyError_1.EmptyError(); })); }; } __name(first, "first"); exports2.first = first; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/groupBy.js var require_groupBy = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/groupBy.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.groupBy = void 0; var Observable_1 = require_Observable(); var innerFrom_1 = require_innerFrom(); var Subject_1 = require_Subject(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function groupBy(keySelector, elementOrOptions, duration, connector) { return lift_1.operate(function(source, subscriber) { var element; if (!elementOrOptions || typeof elementOrOptions === "function") { element = elementOrOptions; } else { duration = elementOrOptions.duration, element = elementOrOptions.element, connector = elementOrOptions.connector; } var groups = /* @__PURE__ */ new Map(); var notify = /* @__PURE__ */ __name(function(cb) { groups.forEach(cb); cb(subscriber); }, "notify"); var handleError = /* @__PURE__ */ __name(function(err) { return notify(function(consumer) { return consumer.error(err); }); }, "handleError"); var activeGroups = 0; var teardownAttempted = false; var groupBySourceSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) { try { var key_1 = keySelector(value); var group_1 = groups.get(key_1); if (!group_1) { groups.set(key_1, group_1 = connector ? connector() : new Subject_1.Subject()); var grouped = createGroupedObservable(key_1, group_1); subscriber.next(grouped); if (duration) { var durationSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(group_1, function() { group_1.complete(); durationSubscriber_1 === null || durationSubscriber_1 === void 0 ? void 0 : durationSubscriber_1.unsubscribe(); }, void 0, void 0, function() { return groups.delete(key_1); }); groupBySourceSubscriber.add(innerFrom_1.innerFrom(duration(grouped)).subscribe(durationSubscriber_1)); } } group_1.next(element ? element(value) : value); } catch (err) { handleError(err); } }, function() { return notify(function(consumer) { return consumer.complete(); }); }, handleError, function() { return groups.clear(); }, function() { teardownAttempted = true; return activeGroups === 0; }); source.subscribe(groupBySourceSubscriber); function createGroupedObservable(key, groupSubject) { var result = new Observable_1.Observable(function(groupSubscriber) { activeGroups++; var innerSub = groupSubject.subscribe(groupSubscriber); return function() { innerSub.unsubscribe(); --activeGroups === 0 && teardownAttempted && groupBySourceSubscriber.unsubscribe(); }; }); result.key = key; return result; } __name(createGroupedObservable, "createGroupedObservable"); }); } __name(groupBy, "groupBy"); exports2.groupBy = groupBy; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js var require_isEmpty2 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isEmpty = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function isEmpty() { return lift_1.operate(function(source, subscriber) { source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { subscriber.next(false); subscriber.complete(); }, function() { subscriber.next(true); subscriber.complete(); })); }); } __name(isEmpty, "isEmpty"); exports2.isEmpty = isEmpty; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/takeLast.js var require_takeLast = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/takeLast.js"(exports2) { "use strict"; var __values2 = exports2 && exports2.__values || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: /* @__PURE__ */ __name(function() { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; }, "next") }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.takeLast = void 0; var empty_1 = require_empty(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function takeLast(count) { return count <= 0 ? function() { return empty_1.EMPTY; } : lift_1.operate(function(source, subscriber) { var buffer = []; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { buffer.push(value); count < buffer.length && buffer.shift(); }, function() { var e_1, _a; try { for (var buffer_1 = __values2(buffer), buffer_1_1 = buffer_1.next(); !buffer_1_1.done; buffer_1_1 = buffer_1.next()) { var value = buffer_1_1.value; subscriber.next(value); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (buffer_1_1 && !buffer_1_1.done && (_a = buffer_1.return)) _a.call(buffer_1); } finally { if (e_1) throw e_1.error; } } subscriber.complete(); }, void 0, function() { buffer = null; })); }); } __name(takeLast, "takeLast"); exports2.takeLast = takeLast; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/last.js var require_last = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/last.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.last = void 0; var EmptyError_1 = require_EmptyError(); var filter_1 = require_filter2(); var takeLast_1 = require_takeLast(); var throwIfEmpty_1 = require_throwIfEmpty(); var defaultIfEmpty_1 = require_defaultIfEmpty(); var identity_1 = require_identity(); function last(predicate, defaultValue) { var hasDefaultValue = arguments.length >= 2; return function(source) { return source.pipe(predicate ? filter_1.filter(function(v, i) { return predicate(v, i, source); }) : identity_1.identity, takeLast_1.takeLast(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() { return new EmptyError_1.EmptyError(); })); }; } __name(last, "last"); exports2.last = last; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/materialize.js var require_materialize = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/materialize.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.materialize = void 0; var Notification_1 = require_Notification(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function materialize() { return lift_1.operate(function(source, subscriber) { source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { subscriber.next(Notification_1.Notification.createNext(value)); }, function() { subscriber.next(Notification_1.Notification.createComplete()); subscriber.complete(); }, function(err) { subscriber.next(Notification_1.Notification.createError(err)); subscriber.complete(); })); }); } __name(materialize, "materialize"); exports2.materialize = materialize; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/max.js var require_max2 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/max.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.max = void 0; var reduce_1 = require_reduce(); var isFunction_1 = require_isFunction(); function max(comparer) { return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function(x, y) { return comparer(x, y) > 0 ? x : y; } : function(x, y) { return x > y ? x : y; }); } __name(max, "max"); exports2.max = max; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/merge.js var require_merge2 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/merge.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.merge = void 0; var lift_1 = require_lift(); var mergeAll_1 = require_mergeAll(); var args_1 = require_args(); var from_1 = require_from(); function merge() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var scheduler = args_1.popScheduler(args); var concurrent = args_1.popNumber(args, Infinity); return lift_1.operate(function(source, subscriber) { mergeAll_1.mergeAll(concurrent)(from_1.from(__spreadArray2([source], __read2(args)), scheduler)).subscribe(subscriber); }); } __name(merge, "merge"); exports2.merge = merge; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/flatMap.js var require_flatMap = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/flatMap.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.flatMap = void 0; var mergeMap_1 = require_mergeMap(); exports2.flatMap = mergeMap_1.mergeMap; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js var require_mergeMapTo = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mergeMapTo = void 0; var mergeMap_1 = require_mergeMap(); var isFunction_1 = require_isFunction(); function mergeMapTo(innerObservable, resultSelector, concurrent) { if (concurrent === void 0) { concurrent = Infinity; } if (isFunction_1.isFunction(resultSelector)) { return mergeMap_1.mergeMap(function() { return innerObservable; }, resultSelector, concurrent); } if (typeof resultSelector === "number") { concurrent = resultSelector; } return mergeMap_1.mergeMap(function() { return innerObservable; }, concurrent); } __name(mergeMapTo, "mergeMapTo"); exports2.mergeMapTo = mergeMapTo; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js var require_mergeScan = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mergeScan = void 0; var lift_1 = require_lift(); var mergeInternals_1 = require_mergeInternals(); function mergeScan(accumulator, seed, concurrent) { if (concurrent === void 0) { concurrent = Infinity; } return lift_1.operate(function(source, subscriber) { var state = seed; return mergeInternals_1.mergeInternals(source, subscriber, function(value, index) { return accumulator(state, value, index); }, concurrent, function(value) { state = value; }, false, void 0, function() { return state = null; }); }); } __name(mergeScan, "mergeScan"); exports2.mergeScan = mergeScan; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js var require_mergeWith = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mergeWith = void 0; var merge_1 = require_merge2(); function mergeWith() { var otherSources = []; for (var _i = 0; _i < arguments.length; _i++) { otherSources[_i] = arguments[_i]; } return merge_1.merge.apply(void 0, __spreadArray2([], __read2(otherSources))); } __name(mergeWith, "mergeWith"); exports2.mergeWith = mergeWith; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/min.js var require_min = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/min.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.min = void 0; var reduce_1 = require_reduce(); var isFunction_1 = require_isFunction(); function min(comparer) { return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function(x, y) { return comparer(x, y) < 0 ? x : y; } : function(x, y) { return x < y ? x : y; }); } __name(min, "min"); exports2.min = min; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/refCount.js var require_refCount = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/refCount.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.refCount = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function refCount() { return lift_1.operate(function(source, subscriber) { var connection = null; source._refCount++; var refCounter = OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, void 0, void 0, function() { if (!source || source._refCount <= 0 || 0 < --source._refCount) { connection = null; return; } var sharedConnection = source._connection; var conn = connection; connection = null; if (sharedConnection && (!conn || sharedConnection === conn)) { sharedConnection.unsubscribe(); } subscriber.unsubscribe(); }); source.subscribe(refCounter); if (!refCounter.closed) { connection = source.connect(); } }); } __name(refCount, "refCount"); exports2.refCount = refCount; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js var require_ConnectableObservable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ConnectableObservable = void 0; var Observable_1 = require_Observable(); var Subscription_1 = require_Subscription(); var refCount_1 = require_refCount(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var lift_1 = require_lift(); var ConnectableObservable = (function(_super) { __extends2(ConnectableObservable2, _super); function ConnectableObservable2(source, subjectFactory) { var _this = _super.call(this) || this; _this.source = source; _this.subjectFactory = subjectFactory; _this._subject = null; _this._refCount = 0; _this._connection = null; if (lift_1.hasLift(source)) { _this.lift = source.lift; } return _this; } __name(ConnectableObservable2, "ConnectableObservable"); ConnectableObservable2.prototype._subscribe = function(subscriber) { return this.getSubject().subscribe(subscriber); }; ConnectableObservable2.prototype.getSubject = function() { var subject = this._subject; if (!subject || subject.isStopped) { this._subject = this.subjectFactory(); } return this._subject; }; ConnectableObservable2.prototype._teardown = function() { this._refCount = 0; var _connection = this._connection; this._subject = this._connection = null; _connection === null || _connection === void 0 ? void 0 : _connection.unsubscribe(); }; ConnectableObservable2.prototype.connect = function() { var _this = this; var connection = this._connection; if (!connection) { connection = this._connection = new Subscription_1.Subscription(); var subject_1 = this.getSubject(); connection.add(this.source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subject_1, void 0, function() { _this._teardown(); subject_1.complete(); }, function(err) { _this._teardown(); subject_1.error(err); }, function() { return _this._teardown(); }))); if (connection.closed) { this._connection = null; connection = Subscription_1.Subscription.EMPTY; } } return connection; }; ConnectableObservable2.prototype.refCount = function() { return refCount_1.refCount()(this); }; return ConnectableObservable2; })(Observable_1.Observable); exports2.ConnectableObservable = ConnectableObservable; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/multicast.js var require_multicast = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/multicast.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.multicast = void 0; var ConnectableObservable_1 = require_ConnectableObservable(); var isFunction_1 = require_isFunction(); var connect_1 = require_connect(); function multicast(subjectOrSubjectFactory, selector) { var subjectFactory = isFunction_1.isFunction(subjectOrSubjectFactory) ? subjectOrSubjectFactory : function() { return subjectOrSubjectFactory; }; if (isFunction_1.isFunction(selector)) { return connect_1.connect(selector, { connector: subjectFactory }); } return function(source) { return new ConnectableObservable_1.ConnectableObservable(source, subjectFactory); }; } __name(multicast, "multicast"); exports2.multicast = multicast; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js var require_onErrorResumeNext = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.onErrorResumeNext = void 0; var Observable_1 = require_Observable(); var argsOrArgArray_1 = require_argsOrArgArray(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var noop_1 = require_noop(); var innerFrom_1 = require_innerFrom(); function onErrorResumeNext() { var sources = []; for (var _i = 0; _i < arguments.length; _i++) { sources[_i] = arguments[_i]; } var nextSources = argsOrArgArray_1.argsOrArgArray(sources); return new Observable_1.Observable(function(subscriber) { var sourceIndex = 0; var subscribeNext = /* @__PURE__ */ __name(function() { if (sourceIndex < nextSources.length) { var nextSource = void 0; try { nextSource = innerFrom_1.innerFrom(nextSources[sourceIndex++]); } catch (err) { subscribeNext(); return; } var innerSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, void 0, noop_1.noop, noop_1.noop); nextSource.subscribe(innerSubscriber); innerSubscriber.add(subscribeNext); } else { subscriber.complete(); } }, "subscribeNext"); subscribeNext(); }); } __name(onErrorResumeNext, "onErrorResumeNext"); exports2.onErrorResumeNext = onErrorResumeNext; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNextWith.js var require_onErrorResumeNextWith = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNextWith.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.onErrorResumeNext = exports2.onErrorResumeNextWith = void 0; var argsOrArgArray_1 = require_argsOrArgArray(); var onErrorResumeNext_1 = require_onErrorResumeNext(); function onErrorResumeNextWith() { var sources = []; for (var _i = 0; _i < arguments.length; _i++) { sources[_i] = arguments[_i]; } var nextSources = argsOrArgArray_1.argsOrArgArray(sources); return function(source) { return onErrorResumeNext_1.onErrorResumeNext.apply(void 0, __spreadArray2([source], __read2(nextSources))); }; } __name(onErrorResumeNextWith, "onErrorResumeNextWith"); exports2.onErrorResumeNextWith = onErrorResumeNextWith; exports2.onErrorResumeNext = onErrorResumeNextWith; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/pairwise.js var require_pairwise = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/pairwise.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.pairwise = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function pairwise() { return lift_1.operate(function(source, subscriber) { var prev; var hasPrev = false; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var p = prev; prev = value; hasPrev && subscriber.next([p, value]); hasPrev = true; })); }); } __name(pairwise, "pairwise"); exports2.pairwise = pairwise; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/not.js var require_not = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/not.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.not = void 0; function not(pred, thisArg) { return function(value, index) { return !pred.call(thisArg, value, index); }; } __name(not, "not"); exports2.not = not; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/partition.js var require_partition = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/partition.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.partition = void 0; var not_1 = require_not(); var filter_1 = require_filter2(); function partition(predicate, thisArg) { return function(source) { return [filter_1.filter(predicate, thisArg)(source), filter_1.filter(not_1.not(predicate, thisArg))(source)]; }; } __name(partition, "partition"); exports2.partition = partition; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/pluck.js var require_pluck = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/pluck.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.pluck = void 0; var map_1 = require_map2(); function pluck() { var properties = []; for (var _i = 0; _i < arguments.length; _i++) { properties[_i] = arguments[_i]; } var length = properties.length; if (length === 0) { throw new Error("list of properties cannot be empty."); } return map_1.map(function(x) { var currentProp = x; for (var i = 0; i < length; i++) { var p = currentProp === null || currentProp === void 0 ? void 0 : currentProp[properties[i]]; if (typeof p !== "undefined") { currentProp = p; } else { return void 0; } } return currentProp; }); } __name(pluck, "pluck"); exports2.pluck = pluck; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/publish.js var require_publish = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/publish.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.publish = void 0; var Subject_1 = require_Subject(); var multicast_1 = require_multicast(); var connect_1 = require_connect(); function publish(selector) { return selector ? function(source) { return connect_1.connect(selector)(source); } : function(source) { return multicast_1.multicast(new Subject_1.Subject())(source); }; } __name(publish, "publish"); exports2.publish = publish; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js var require_BehaviorSubject = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BehaviorSubject = void 0; var Subject_1 = require_Subject(); var BehaviorSubject = (function(_super) { __extends2(BehaviorSubject2, _super); function BehaviorSubject2(_value) { var _this = _super.call(this) || this; _this._value = _value; return _this; } __name(BehaviorSubject2, "BehaviorSubject"); Object.defineProperty(BehaviorSubject2.prototype, "value", { get: /* @__PURE__ */ __name(function() { return this.getValue(); }, "get"), enumerable: false, configurable: true }); BehaviorSubject2.prototype._subscribe = function(subscriber) { var subscription = _super.prototype._subscribe.call(this, subscriber); !subscription.closed && subscriber.next(this._value); return subscription; }; BehaviorSubject2.prototype.getValue = function() { var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, _value = _a._value; if (hasError) { throw thrownError; } this._throwIfClosed(); return _value; }; BehaviorSubject2.prototype.next = function(value) { _super.prototype.next.call(this, this._value = value); }; return BehaviorSubject2; })(Subject_1.Subject); exports2.BehaviorSubject = BehaviorSubject; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js var require_publishBehavior = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.publishBehavior = void 0; var BehaviorSubject_1 = require_BehaviorSubject(); var ConnectableObservable_1 = require_ConnectableObservable(); function publishBehavior(initialValue) { return function(source) { var subject = new BehaviorSubject_1.BehaviorSubject(initialValue); return new ConnectableObservable_1.ConnectableObservable(source, function() { return subject; }); }; } __name(publishBehavior, "publishBehavior"); exports2.publishBehavior = publishBehavior; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/AsyncSubject.js var require_AsyncSubject = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/AsyncSubject.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AsyncSubject = void 0; var Subject_1 = require_Subject(); var AsyncSubject = (function(_super) { __extends2(AsyncSubject2, _super); function AsyncSubject2() { var _this = _super !== null && _super.apply(this, arguments) || this; _this._value = null; _this._hasValue = false; _this._isComplete = false; return _this; } __name(AsyncSubject2, "AsyncSubject"); AsyncSubject2.prototype._checkFinalizedStatuses = function(subscriber) { var _a = this, hasError = _a.hasError, _hasValue = _a._hasValue, _value = _a._value, thrownError = _a.thrownError, isStopped = _a.isStopped, _isComplete = _a._isComplete; if (hasError) { subscriber.error(thrownError); } else if (isStopped || _isComplete) { _hasValue && subscriber.next(_value); subscriber.complete(); } }; AsyncSubject2.prototype.next = function(value) { if (!this.isStopped) { this._value = value; this._hasValue = true; } }; AsyncSubject2.prototype.complete = function() { var _a = this, _hasValue = _a._hasValue, _value = _a._value, _isComplete = _a._isComplete; if (!_isComplete) { this._isComplete = true; _hasValue && _super.prototype.next.call(this, _value); _super.prototype.complete.call(this); } }; return AsyncSubject2; })(Subject_1.Subject); exports2.AsyncSubject = AsyncSubject; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/publishLast.js var require_publishLast = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/publishLast.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.publishLast = void 0; var AsyncSubject_1 = require_AsyncSubject(); var ConnectableObservable_1 = require_ConnectableObservable(); function publishLast() { return function(source) { var subject = new AsyncSubject_1.AsyncSubject(); return new ConnectableObservable_1.ConnectableObservable(source, function() { return subject; }); }; } __name(publishLast, "publishLast"); exports2.publishLast = publishLast; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/ReplaySubject.js var require_ReplaySubject = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/ReplaySubject.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ReplaySubject = void 0; var Subject_1 = require_Subject(); var dateTimestampProvider_1 = require_dateTimestampProvider(); var ReplaySubject = (function(_super) { __extends2(ReplaySubject2, _super); function ReplaySubject2(_bufferSize, _windowTime, _timestampProvider) { if (_bufferSize === void 0) { _bufferSize = Infinity; } if (_windowTime === void 0) { _windowTime = Infinity; } if (_timestampProvider === void 0) { _timestampProvider = dateTimestampProvider_1.dateTimestampProvider; } var _this = _super.call(this) || this; _this._bufferSize = _bufferSize; _this._windowTime = _windowTime; _this._timestampProvider = _timestampProvider; _this._buffer = []; _this._infiniteTimeWindow = true; _this._infiniteTimeWindow = _windowTime === Infinity; _this._bufferSize = Math.max(1, _bufferSize); _this._windowTime = Math.max(1, _windowTime); return _this; } __name(ReplaySubject2, "ReplaySubject"); ReplaySubject2.prototype.next = function(value) { var _a = this, isStopped = _a.isStopped, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow, _timestampProvider = _a._timestampProvider, _windowTime = _a._windowTime; if (!isStopped) { _buffer.push(value); !_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime); } this._trimBuffer(); _super.prototype.next.call(this, value); }; ReplaySubject2.prototype._subscribe = function(subscriber) { this._throwIfClosed(); this._trimBuffer(); var subscription = this._innerSubscribe(subscriber); var _a = this, _infiniteTimeWindow = _a._infiniteTimeWindow, _buffer = _a._buffer; var copy = _buffer.slice(); for (var i = 0; i < copy.length && !subscriber.closed; i += _infiniteTimeWindow ? 1 : 2) { subscriber.next(copy[i]); } this._checkFinalizedStatuses(subscriber); return subscription; }; ReplaySubject2.prototype._trimBuffer = function() { var _a = this, _bufferSize = _a._bufferSize, _timestampProvider = _a._timestampProvider, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow; var adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize; _bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize); if (!_infiniteTimeWindow) { var now = _timestampProvider.now(); var last = 0; for (var i = 1; i < _buffer.length && _buffer[i] <= now; i += 2) { last = i; } last && _buffer.splice(0, last + 1); } }; return ReplaySubject2; })(Subject_1.Subject); exports2.ReplaySubject = ReplaySubject; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js var require_publishReplay = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.publishReplay = void 0; var ReplaySubject_1 = require_ReplaySubject(); var multicast_1 = require_multicast(); var isFunction_1 = require_isFunction(); function publishReplay(bufferSize, windowTime, selectorOrScheduler, timestampProvider) { if (selectorOrScheduler && !isFunction_1.isFunction(selectorOrScheduler)) { timestampProvider = selectorOrScheduler; } var selector = isFunction_1.isFunction(selectorOrScheduler) ? selectorOrScheduler : void 0; return function(source) { return multicast_1.multicast(new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, timestampProvider), selector)(source); }; } __name(publishReplay, "publishReplay"); exports2.publishReplay = publishReplay; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/race.js var require_race = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/race.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.raceInit = exports2.race = void 0; var Observable_1 = require_Observable(); var innerFrom_1 = require_innerFrom(); var argsOrArgArray_1 = require_argsOrArgArray(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function race() { var sources = []; for (var _i = 0; _i < arguments.length; _i++) { sources[_i] = arguments[_i]; } sources = argsOrArgArray_1.argsOrArgArray(sources); return sources.length === 1 ? innerFrom_1.innerFrom(sources[0]) : new Observable_1.Observable(raceInit(sources)); } __name(race, "race"); exports2.race = race; function raceInit(sources) { return function(subscriber) { var subscriptions = []; var _loop_1 = /* @__PURE__ */ __name(function(i2) { subscriptions.push(innerFrom_1.innerFrom(sources[i2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { if (subscriptions) { for (var s = 0; s < subscriptions.length; s++) { s !== i2 && subscriptions[s].unsubscribe(); } subscriptions = null; } subscriber.next(value); }))); }, "_loop_1"); for (var i = 0; subscriptions && !subscriber.closed && i < sources.length; i++) { _loop_1(i); } }; } __name(raceInit, "raceInit"); exports2.raceInit = raceInit; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/raceWith.js var require_raceWith = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/raceWith.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.raceWith = void 0; var race_1 = require_race(); var lift_1 = require_lift(); var identity_1 = require_identity(); function raceWith() { var otherSources = []; for (var _i = 0; _i < arguments.length; _i++) { otherSources[_i] = arguments[_i]; } return !otherSources.length ? identity_1.identity : lift_1.operate(function(source, subscriber) { race_1.raceInit(__spreadArray2([source], __read2(otherSources)))(subscriber); }); } __name(raceWith, "raceWith"); exports2.raceWith = raceWith; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/race.js var require_race2 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/race.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.race = void 0; var argsOrArgArray_1 = require_argsOrArgArray(); var raceWith_1 = require_raceWith(); function race() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } return raceWith_1.raceWith.apply(void 0, __spreadArray2([], __read2(argsOrArgArray_1.argsOrArgArray(args)))); } __name(race, "race"); exports2.race = race; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/repeat.js var require_repeat = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/repeat.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.repeat = void 0; var empty_1 = require_empty(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var innerFrom_1 = require_innerFrom(); var timer_1 = require_timer(); function repeat(countOrConfig) { var _a; var count = Infinity; var delay; if (countOrConfig != null) { if (typeof countOrConfig === "object") { _a = countOrConfig.count, count = _a === void 0 ? Infinity : _a, delay = countOrConfig.delay; } else { count = countOrConfig; } } return count <= 0 ? function() { return empty_1.EMPTY; } : lift_1.operate(function(source, subscriber) { var soFar = 0; var sourceSub; var resubscribe = /* @__PURE__ */ __name(function() { sourceSub === null || sourceSub === void 0 ? void 0 : sourceSub.unsubscribe(); sourceSub = null; if (delay != null) { var notifier = typeof delay === "number" ? timer_1.timer(delay) : innerFrom_1.innerFrom(delay(soFar)); var notifierSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { notifierSubscriber_1.unsubscribe(); subscribeToSource(); }); notifier.subscribe(notifierSubscriber_1); } else { subscribeToSource(); } }, "resubscribe"); var subscribeToSource = /* @__PURE__ */ __name(function() { var syncUnsub = false; sourceSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, function() { if (++soFar < count) { if (sourceSub) { resubscribe(); } else { syncUnsub = true; } } else { subscriber.complete(); } })); if (syncUnsub) { resubscribe(); } }, "subscribeToSource"); subscribeToSource(); }); } __name(repeat, "repeat"); exports2.repeat = repeat; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js var require_repeatWhen = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.repeatWhen = void 0; var innerFrom_1 = require_innerFrom(); var Subject_1 = require_Subject(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function repeatWhen(notifier) { return lift_1.operate(function(source, subscriber) { var innerSub; var syncResub = false; var completions$; var isNotifierComplete = false; var isMainComplete = false; var checkComplete = /* @__PURE__ */ __name(function() { return isMainComplete && isNotifierComplete && (subscriber.complete(), true); }, "checkComplete"); var getCompletionSubject = /* @__PURE__ */ __name(function() { if (!completions$) { completions$ = new Subject_1.Subject(); innerFrom_1.innerFrom(notifier(completions$)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { if (innerSub) { subscribeForRepeatWhen(); } else { syncResub = true; } }, function() { isNotifierComplete = true; checkComplete(); })); } return completions$; }, "getCompletionSubject"); var subscribeForRepeatWhen = /* @__PURE__ */ __name(function() { isMainComplete = false; innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, function() { isMainComplete = true; !checkComplete() && getCompletionSubject().next(); })); if (syncResub) { innerSub.unsubscribe(); innerSub = null; syncResub = false; subscribeForRepeatWhen(); } }, "subscribeForRepeatWhen"); subscribeForRepeatWhen(); }); } __name(repeatWhen, "repeatWhen"); exports2.repeatWhen = repeatWhen; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/retry.js var require_retry = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/retry.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.retry = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var identity_1 = require_identity(); var timer_1 = require_timer(); var innerFrom_1 = require_innerFrom(); function retry(configOrCount) { if (configOrCount === void 0) { configOrCount = Infinity; } var config; if (configOrCount && typeof configOrCount === "object") { config = configOrCount; } else { config = { count: configOrCount }; } var _a = config.count, count = _a === void 0 ? Infinity : _a, delay = config.delay, _b = config.resetOnSuccess, resetOnSuccess = _b === void 0 ? false : _b; return count <= 0 ? identity_1.identity : lift_1.operate(function(source, subscriber) { var soFar = 0; var innerSub; var subscribeForRetry = /* @__PURE__ */ __name(function() { var syncUnsub = false; innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { if (resetOnSuccess) { soFar = 0; } subscriber.next(value); }, void 0, function(err) { if (soFar++ < count) { var resub_1 = /* @__PURE__ */ __name(function() { if (innerSub) { innerSub.unsubscribe(); innerSub = null; subscribeForRetry(); } else { syncUnsub = true; } }, "resub_1"); if (delay != null) { var notifier = typeof delay === "number" ? timer_1.timer(delay) : innerFrom_1.innerFrom(delay(err, soFar)); var notifierSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { notifierSubscriber_1.unsubscribe(); resub_1(); }, function() { subscriber.complete(); }); notifier.subscribe(notifierSubscriber_1); } else { resub_1(); } } else { subscriber.error(err); } })); if (syncUnsub) { innerSub.unsubscribe(); innerSub = null; subscribeForRetry(); } }, "subscribeForRetry"); subscribeForRetry(); }); } __name(retry, "retry"); exports2.retry = retry; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js var require_retryWhen = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.retryWhen = void 0; var innerFrom_1 = require_innerFrom(); var Subject_1 = require_Subject(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function retryWhen(notifier) { return lift_1.operate(function(source, subscriber) { var innerSub; var syncResub = false; var errors$; var subscribeForRetryWhen = /* @__PURE__ */ __name(function() { innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, void 0, function(err) { if (!errors$) { errors$ = new Subject_1.Subject(); innerFrom_1.innerFrom(notifier(errors$)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { return innerSub ? subscribeForRetryWhen() : syncResub = true; })); } if (errors$) { errors$.next(err); } })); if (syncResub) { innerSub.unsubscribe(); innerSub = null; syncResub = false; subscribeForRetryWhen(); } }, "subscribeForRetryWhen"); subscribeForRetryWhen(); }); } __name(retryWhen, "retryWhen"); exports2.retryWhen = retryWhen; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/sample.js var require_sample = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/sample.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.sample = void 0; var innerFrom_1 = require_innerFrom(); var lift_1 = require_lift(); var noop_1 = require_noop(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function sample(notifier) { return lift_1.operate(function(source, subscriber) { var hasValue = false; var lastValue = null; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { hasValue = true; lastValue = value; })); innerFrom_1.innerFrom(notifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { if (hasValue) { hasValue = false; var value = lastValue; lastValue = null; subscriber.next(value); } }, noop_1.noop)); }); } __name(sample, "sample"); exports2.sample = sample; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/interval.js var require_interval = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/interval.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.interval = void 0; var async_1 = require_async(); var timer_1 = require_timer(); function interval(period, scheduler) { if (period === void 0) { period = 0; } if (scheduler === void 0) { scheduler = async_1.asyncScheduler; } if (period < 0) { period = 0; } return timer_1.timer(period, period, scheduler); } __name(interval, "interval"); exports2.interval = interval; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js var require_sampleTime = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.sampleTime = void 0; var async_1 = require_async(); var sample_1 = require_sample(); var interval_1 = require_interval(); function sampleTime(period, scheduler) { if (scheduler === void 0) { scheduler = async_1.asyncScheduler; } return sample_1.sample(interval_1.interval(period, scheduler)); } __name(sampleTime, "sampleTime"); exports2.sampleTime = sampleTime; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/scan.js var require_scan = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/scan.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.scan = void 0; var lift_1 = require_lift(); var scanInternals_1 = require_scanInternals(); function scan(accumulator, seed) { return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, true)); } __name(scan, "scan"); exports2.scan = scan; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js var require_sequenceEqual = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.sequenceEqual = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var innerFrom_1 = require_innerFrom(); function sequenceEqual(compareTo, comparator) { if (comparator === void 0) { comparator = /* @__PURE__ */ __name(function(a, b) { return a === b; }, "comparator"); } return lift_1.operate(function(source, subscriber) { var aState = createState(); var bState = createState(); var emit = /* @__PURE__ */ __name(function(isEqual) { subscriber.next(isEqual); subscriber.complete(); }, "emit"); var createSubscriber = /* @__PURE__ */ __name(function(selfState, otherState) { var sequenceEqualSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(a) { var buffer = otherState.buffer, complete = otherState.complete; if (buffer.length === 0) { complete ? emit(false) : selfState.buffer.push(a); } else { !comparator(a, buffer.shift()) && emit(false); } }, function() { selfState.complete = true; var complete = otherState.complete, buffer = otherState.buffer; complete && emit(buffer.length === 0); sequenceEqualSubscriber === null || sequenceEqualSubscriber === void 0 ? void 0 : sequenceEqualSubscriber.unsubscribe(); }); return sequenceEqualSubscriber; }, "createSubscriber"); source.subscribe(createSubscriber(aState, bState)); innerFrom_1.innerFrom(compareTo).subscribe(createSubscriber(bState, aState)); }); } __name(sequenceEqual, "sequenceEqual"); exports2.sequenceEqual = sequenceEqual; function createState() { return { buffer: [], complete: false }; } __name(createState, "createState"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/share.js var require_share = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/share.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.share = void 0; var innerFrom_1 = require_innerFrom(); var Subject_1 = require_Subject(); var Subscriber_1 = require_Subscriber(); var lift_1 = require_lift(); function share(options) { if (options === void 0) { options = {}; } var _a = options.connector, connector = _a === void 0 ? function() { return new Subject_1.Subject(); } : _a, _b = options.resetOnError, resetOnError = _b === void 0 ? true : _b, _c = options.resetOnComplete, resetOnComplete = _c === void 0 ? true : _c, _d = options.resetOnRefCountZero, resetOnRefCountZero = _d === void 0 ? true : _d; return function(wrapperSource) { var connection; var resetConnection; var subject; var refCount = 0; var hasCompleted = false; var hasErrored = false; var cancelReset = /* @__PURE__ */ __name(function() { resetConnection === null || resetConnection === void 0 ? void 0 : resetConnection.unsubscribe(); resetConnection = void 0; }, "cancelReset"); var reset = /* @__PURE__ */ __name(function() { cancelReset(); connection = subject = void 0; hasCompleted = hasErrored = false; }, "reset"); var resetAndUnsubscribe = /* @__PURE__ */ __name(function() { var conn = connection; reset(); conn === null || conn === void 0 ? void 0 : conn.unsubscribe(); }, "resetAndUnsubscribe"); return lift_1.operate(function(source, subscriber) { refCount++; if (!hasErrored && !hasCompleted) { cancelReset(); } var dest = subject = subject !== null && subject !== void 0 ? subject : connector(); subscriber.add(function() { refCount--; if (refCount === 0 && !hasErrored && !hasCompleted) { resetConnection = handleReset(resetAndUnsubscribe, resetOnRefCountZero); } }); dest.subscribe(subscriber); if (!connection && refCount > 0) { connection = new Subscriber_1.SafeSubscriber({ next: /* @__PURE__ */ __name(function(value) { return dest.next(value); }, "next"), error: /* @__PURE__ */ __name(function(err) { hasErrored = true; cancelReset(); resetConnection = handleReset(reset, resetOnError, err); dest.error(err); }, "error"), complete: /* @__PURE__ */ __name(function() { hasCompleted = true; cancelReset(); resetConnection = handleReset(reset, resetOnComplete); dest.complete(); }, "complete") }); innerFrom_1.innerFrom(source).subscribe(connection); } })(wrapperSource); }; } __name(share, "share"); exports2.share = share; function handleReset(reset, on) { var args = []; for (var _i = 2; _i < arguments.length; _i++) { args[_i - 2] = arguments[_i]; } if (on === true) { reset(); return; } if (on === false) { return; } var onSubscriber = new Subscriber_1.SafeSubscriber({ next: /* @__PURE__ */ __name(function() { onSubscriber.unsubscribe(); reset(); }, "next") }); return innerFrom_1.innerFrom(on.apply(void 0, __spreadArray2([], __read2(args)))).subscribe(onSubscriber); } __name(handleReset, "handleReset"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js var require_shareReplay = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.shareReplay = void 0; var ReplaySubject_1 = require_ReplaySubject(); var share_1 = require_share(); function shareReplay(configOrBufferSize, windowTime, scheduler) { var _a, _b, _c; var bufferSize; var refCount = false; if (configOrBufferSize && typeof configOrBufferSize === "object") { _a = configOrBufferSize.bufferSize, bufferSize = _a === void 0 ? Infinity : _a, _b = configOrBufferSize.windowTime, windowTime = _b === void 0 ? Infinity : _b, _c = configOrBufferSize.refCount, refCount = _c === void 0 ? false : _c, scheduler = configOrBufferSize.scheduler; } else { bufferSize = configOrBufferSize !== null && configOrBufferSize !== void 0 ? configOrBufferSize : Infinity; } return share_1.share({ connector: /* @__PURE__ */ __name(function() { return new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, scheduler); }, "connector"), resetOnError: true, resetOnComplete: false, resetOnRefCountZero: refCount }); } __name(shareReplay, "shareReplay"); exports2.shareReplay = shareReplay; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/SequenceError.js var require_SequenceError = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/SequenceError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SequenceError = void 0; var createErrorClass_1 = require_createErrorClass(); exports2.SequenceError = createErrorClass_1.createErrorClass(function(_super) { return /* @__PURE__ */ __name(function SequenceErrorImpl(message) { _super(this); this.name = "SequenceError"; this.message = message; }, "SequenceErrorImpl"); }); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js var require_NotFoundError = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NotFoundError = void 0; var createErrorClass_1 = require_createErrorClass(); exports2.NotFoundError = createErrorClass_1.createErrorClass(function(_super) { return /* @__PURE__ */ __name(function NotFoundErrorImpl(message) { _super(this); this.name = "NotFoundError"; this.message = message; }, "NotFoundErrorImpl"); }); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/single.js var require_single = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/single.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.single = void 0; var EmptyError_1 = require_EmptyError(); var SequenceError_1 = require_SequenceError(); var NotFoundError_1 = require_NotFoundError(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function single(predicate) { return lift_1.operate(function(source, subscriber) { var hasValue = false; var singleValue; var seenValue = false; var index = 0; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { seenValue = true; if (!predicate || predicate(value, index++, source)) { hasValue && subscriber.error(new SequenceError_1.SequenceError("Too many matching values")); hasValue = true; singleValue = value; } }, function() { if (hasValue) { subscriber.next(singleValue); subscriber.complete(); } else { subscriber.error(seenValue ? new NotFoundError_1.NotFoundError("No matching values") : new EmptyError_1.EmptyError()); } })); }); } __name(single, "single"); exports2.single = single; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/skip.js var require_skip = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/skip.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.skip = void 0; var filter_1 = require_filter2(); function skip(count) { return filter_1.filter(function(_2, index) { return count <= index; }); } __name(skip, "skip"); exports2.skip = skip; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/skipLast.js var require_skipLast = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/skipLast.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.skipLast = void 0; var identity_1 = require_identity(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function skipLast(skipCount) { return skipCount <= 0 ? identity_1.identity : lift_1.operate(function(source, subscriber) { var ring = new Array(skipCount); var seen = 0; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var valueIndex = seen++; if (valueIndex < skipCount) { ring[valueIndex] = value; } else { var index = valueIndex % skipCount; var oldValue = ring[index]; ring[index] = value; subscriber.next(oldValue); } })); return function() { ring = null; }; }); } __name(skipLast, "skipLast"); exports2.skipLast = skipLast; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js var require_skipUntil = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.skipUntil = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var innerFrom_1 = require_innerFrom(); var noop_1 = require_noop(); function skipUntil(notifier) { return lift_1.operate(function(source, subscriber) { var taking = false; var skipSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { skipSubscriber === null || skipSubscriber === void 0 ? void 0 : skipSubscriber.unsubscribe(); taking = true; }, noop_1.noop); innerFrom_1.innerFrom(notifier).subscribe(skipSubscriber); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { return taking && subscriber.next(value); })); }); } __name(skipUntil, "skipUntil"); exports2.skipUntil = skipUntil; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js var require_skipWhile = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.skipWhile = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function skipWhile(predicate) { return lift_1.operate(function(source, subscriber) { var taking = false; var index = 0; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { return (taking || (taking = !predicate(value, index++))) && subscriber.next(value); })); }); } __name(skipWhile, "skipWhile"); exports2.skipWhile = skipWhile; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/startWith.js var require_startWith = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/startWith.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.startWith = void 0; var concat_1 = require_concat3(); var args_1 = require_args(); var lift_1 = require_lift(); function startWith() { var values = []; for (var _i = 0; _i < arguments.length; _i++) { values[_i] = arguments[_i]; } var scheduler = args_1.popScheduler(values); return lift_1.operate(function(source, subscriber) { (scheduler ? concat_1.concat(values, source, scheduler) : concat_1.concat(values, source)).subscribe(subscriber); }); } __name(startWith, "startWith"); exports2.startWith = startWith; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/switchMap.js var require_switchMap = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/switchMap.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.switchMap = void 0; var innerFrom_1 = require_innerFrom(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function switchMap(project, resultSelector) { return lift_1.operate(function(source, subscriber) { var innerSubscriber = null; var index = 0; var isComplete = false; var checkComplete = /* @__PURE__ */ __name(function() { return isComplete && !innerSubscriber && subscriber.complete(); }, "checkComplete"); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { innerSubscriber === null || innerSubscriber === void 0 ? void 0 : innerSubscriber.unsubscribe(); var innerIndex = 0; var outerIndex = index++; innerFrom_1.innerFrom(project(value, outerIndex)).subscribe(innerSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(innerValue) { return subscriber.next(resultSelector ? resultSelector(value, innerValue, outerIndex, innerIndex++) : innerValue); }, function() { innerSubscriber = null; checkComplete(); })); }, function() { isComplete = true; checkComplete(); })); }); } __name(switchMap, "switchMap"); exports2.switchMap = switchMap; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/switchAll.js var require_switchAll = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/switchAll.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.switchAll = void 0; var switchMap_1 = require_switchMap(); var identity_1 = require_identity(); function switchAll() { return switchMap_1.switchMap(identity_1.identity); } __name(switchAll, "switchAll"); exports2.switchAll = switchAll; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js var require_switchMapTo = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.switchMapTo = void 0; var switchMap_1 = require_switchMap(); var isFunction_1 = require_isFunction(); function switchMapTo(innerObservable, resultSelector) { return isFunction_1.isFunction(resultSelector) ? switchMap_1.switchMap(function() { return innerObservable; }, resultSelector) : switchMap_1.switchMap(function() { return innerObservable; }); } __name(switchMapTo, "switchMapTo"); exports2.switchMapTo = switchMapTo; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/switchScan.js var require_switchScan = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/switchScan.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.switchScan = void 0; var switchMap_1 = require_switchMap(); var lift_1 = require_lift(); function switchScan(accumulator, seed) { return lift_1.operate(function(source, subscriber) { var state = seed; switchMap_1.switchMap(function(value, index) { return accumulator(state, value, index); }, function(_2, innerValue) { return state = innerValue, innerValue; })(source).subscribe(subscriber); return function() { state = null; }; }); } __name(switchScan, "switchScan"); exports2.switchScan = switchScan; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js var require_takeUntil = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.takeUntil = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var innerFrom_1 = require_innerFrom(); var noop_1 = require_noop(); function takeUntil(notifier) { return lift_1.operate(function(source, subscriber) { innerFrom_1.innerFrom(notifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { return subscriber.complete(); }, noop_1.noop)); !subscriber.closed && source.subscribe(subscriber); }); } __name(takeUntil, "takeUntil"); exports2.takeUntil = takeUntil; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js var require_takeWhile = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.takeWhile = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function takeWhile(predicate, inclusive) { if (inclusive === void 0) { inclusive = false; } return lift_1.operate(function(source, subscriber) { var index = 0; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var result = predicate(value, index++); (result || inclusive) && subscriber.next(value); !result && subscriber.complete(); })); }); } __name(takeWhile, "takeWhile"); exports2.takeWhile = takeWhile; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/tap.js var require_tap = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/tap.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.tap = void 0; var isFunction_1 = require_isFunction(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var identity_1 = require_identity(); function tap(observerOrNext, error, complete) { var tapObserver = isFunction_1.isFunction(observerOrNext) || error || complete ? { next: observerOrNext, error, complete } : observerOrNext; return tapObserver ? lift_1.operate(function(source, subscriber) { var _a; (_a = tapObserver.subscribe) === null || _a === void 0 ? void 0 : _a.call(tapObserver); var isUnsub = true; source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var _a2; (_a2 = tapObserver.next) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver, value); subscriber.next(value); }, function() { var _a2; isUnsub = false; (_a2 = tapObserver.complete) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver); subscriber.complete(); }, function(err) { var _a2; isUnsub = false; (_a2 = tapObserver.error) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver, err); subscriber.error(err); }, function() { var _a2, _b; if (isUnsub) { (_a2 = tapObserver.unsubscribe) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver); } (_b = tapObserver.finalize) === null || _b === void 0 ? void 0 : _b.call(tapObserver); })); }) : identity_1.identity; } __name(tap, "tap"); exports2.tap = tap; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/throttle.js var require_throttle = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/throttle.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.throttle = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var innerFrom_1 = require_innerFrom(); function throttle(durationSelector, config) { return lift_1.operate(function(source, subscriber) { var _a = config !== null && config !== void 0 ? config : {}, _b = _a.leading, leading = _b === void 0 ? true : _b, _c = _a.trailing, trailing = _c === void 0 ? false : _c; var hasValue = false; var sendValue = null; var throttled = null; var isComplete = false; var endThrottling = /* @__PURE__ */ __name(function() { throttled === null || throttled === void 0 ? void 0 : throttled.unsubscribe(); throttled = null; if (trailing) { send(); isComplete && subscriber.complete(); } }, "endThrottling"); var cleanupThrottling = /* @__PURE__ */ __name(function() { throttled = null; isComplete && subscriber.complete(); }, "cleanupThrottling"); var startThrottle = /* @__PURE__ */ __name(function(value) { return throttled = innerFrom_1.innerFrom(durationSelector(value)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, endThrottling, cleanupThrottling)); }, "startThrottle"); var send = /* @__PURE__ */ __name(function() { if (hasValue) { hasValue = false; var value = sendValue; sendValue = null; subscriber.next(value); !isComplete && startThrottle(value); } }, "send"); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { hasValue = true; sendValue = value; !(throttled && !throttled.closed) && (leading ? send() : startThrottle(value)); }, function() { isComplete = true; !(trailing && hasValue && throttled && !throttled.closed) && subscriber.complete(); })); }); } __name(throttle, "throttle"); exports2.throttle = throttle; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js var require_throttleTime = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.throttleTime = void 0; var async_1 = require_async(); var throttle_1 = require_throttle(); var timer_1 = require_timer(); function throttleTime(duration, scheduler, config) { if (scheduler === void 0) { scheduler = async_1.asyncScheduler; } var duration$ = timer_1.timer(duration, scheduler); return throttle_1.throttle(function() { return duration$; }, config); } __name(throttleTime, "throttleTime"); exports2.throttleTime = throttleTime; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js var require_timeInterval = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.TimeInterval = exports2.timeInterval = void 0; var async_1 = require_async(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function timeInterval(scheduler) { if (scheduler === void 0) { scheduler = async_1.asyncScheduler; } return lift_1.operate(function(source, subscriber) { var last = scheduler.now(); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var now = scheduler.now(); var interval = now - last; last = now; subscriber.next(new TimeInterval(value, interval)); })); }); } __name(timeInterval, "timeInterval"); exports2.timeInterval = timeInterval; var TimeInterval = /* @__PURE__ */ (function() { function TimeInterval2(value, interval) { this.value = value; this.interval = interval; } __name(TimeInterval2, "TimeInterval"); return TimeInterval2; })(); exports2.TimeInterval = TimeInterval; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/timeout.js var require_timeout = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/timeout.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.timeout = exports2.TimeoutError = void 0; var async_1 = require_async(); var isDate_1 = require_isDate2(); var lift_1 = require_lift(); var innerFrom_1 = require_innerFrom(); var createErrorClass_1 = require_createErrorClass(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var executeSchedule_1 = require_executeSchedule(); exports2.TimeoutError = createErrorClass_1.createErrorClass(function(_super) { return /* @__PURE__ */ __name(function TimeoutErrorImpl(info) { if (info === void 0) { info = null; } _super(this); this.message = "Timeout has occurred"; this.name = "TimeoutError"; this.info = info; }, "TimeoutErrorImpl"); }); function timeout(config, schedulerArg) { var _a = isDate_1.isValidDate(config) ? { first: config } : typeof config === "number" ? { each: config } : config, first = _a.first, each = _a.each, _b = _a.with, _with = _b === void 0 ? timeoutErrorFactory : _b, _c = _a.scheduler, scheduler = _c === void 0 ? schedulerArg !== null && schedulerArg !== void 0 ? schedulerArg : async_1.asyncScheduler : _c, _d = _a.meta, meta = _d === void 0 ? null : _d; if (first == null && each == null) { throw new TypeError("No timeout provided."); } return lift_1.operate(function(source, subscriber) { var originalSourceSubscription; var timerSubscription; var lastValue = null; var seen = 0; var startTimer = /* @__PURE__ */ __name(function(delay) { timerSubscription = executeSchedule_1.executeSchedule(subscriber, scheduler, function() { try { originalSourceSubscription.unsubscribe(); innerFrom_1.innerFrom(_with({ meta, lastValue, seen })).subscribe(subscriber); } catch (err) { subscriber.error(err); } }, delay); }, "startTimer"); originalSourceSubscription = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe(); seen++; subscriber.next(lastValue = value); each > 0 && startTimer(each); }, void 0, void 0, function() { if (!(timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.closed)) { timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe(); } lastValue = null; })); !seen && startTimer(first != null ? typeof first === "number" ? first : +first - scheduler.now() : each); }); } __name(timeout, "timeout"); exports2.timeout = timeout; function timeoutErrorFactory(info) { throw new exports2.TimeoutError(info); } __name(timeoutErrorFactory, "timeoutErrorFactory"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js var require_timeoutWith = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.timeoutWith = void 0; var async_1 = require_async(); var isDate_1 = require_isDate2(); var timeout_1 = require_timeout(); function timeoutWith(due, withObservable, scheduler) { var first; var each; var _with; scheduler = scheduler !== null && scheduler !== void 0 ? scheduler : async_1.async; if (isDate_1.isValidDate(due)) { first = due; } else if (typeof due === "number") { each = due; } if (withObservable) { _with = /* @__PURE__ */ __name(function() { return withObservable; }, "_with"); } else { throw new TypeError("No observable provided to switch to"); } if (first == null && each == null) { throw new TypeError("No timeout provided."); } return timeout_1.timeout({ first, each, scheduler, with: _with }); } __name(timeoutWith, "timeoutWith"); exports2.timeoutWith = timeoutWith; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/timestamp.js var require_timestamp = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/timestamp.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.timestamp = void 0; var dateTimestampProvider_1 = require_dateTimestampProvider(); var map_1 = require_map2(); function timestamp(timestampProvider) { if (timestampProvider === void 0) { timestampProvider = dateTimestampProvider_1.dateTimestampProvider; } return map_1.map(function(value) { return { value, timestamp: timestampProvider.now() }; }); } __name(timestamp, "timestamp"); exports2.timestamp = timestamp; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/window.js var require_window = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/window.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.window = void 0; var Subject_1 = require_Subject(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var noop_1 = require_noop(); var innerFrom_1 = require_innerFrom(); function window2(windowBoundaries) { return lift_1.operate(function(source, subscriber) { var windowSubject = new Subject_1.Subject(); subscriber.next(windowSubject.asObservable()); var errorHandler = /* @__PURE__ */ __name(function(err) { windowSubject.error(err); subscriber.error(err); }, "errorHandler"); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { return windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.next(value); }, function() { windowSubject.complete(); subscriber.complete(); }, errorHandler)); innerFrom_1.innerFrom(windowBoundaries).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() { windowSubject.complete(); subscriber.next(windowSubject = new Subject_1.Subject()); }, noop_1.noop, errorHandler)); return function() { windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.unsubscribe(); windowSubject = null; }; }); } __name(window2, "window"); exports2.window = window2; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/windowCount.js var require_windowCount = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/windowCount.js"(exports2) { "use strict"; var __values2 = exports2 && exports2.__values || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: /* @__PURE__ */ __name(function() { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; }, "next") }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.windowCount = void 0; var Subject_1 = require_Subject(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); function windowCount(windowSize, startWindowEvery) { if (startWindowEvery === void 0) { startWindowEvery = 0; } var startEvery = startWindowEvery > 0 ? startWindowEvery : windowSize; return lift_1.operate(function(source, subscriber) { var windows = [new Subject_1.Subject()]; var starts = []; var count = 0; subscriber.next(windows[0].asObservable()); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var e_1, _a; try { for (var windows_1 = __values2(windows), windows_1_1 = windows_1.next(); !windows_1_1.done; windows_1_1 = windows_1.next()) { var window_1 = windows_1_1.value; window_1.next(value); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (windows_1_1 && !windows_1_1.done && (_a = windows_1.return)) _a.call(windows_1); } finally { if (e_1) throw e_1.error; } } var c = count - windowSize + 1; if (c >= 0 && c % startEvery === 0) { windows.shift().complete(); } if (++count % startEvery === 0) { var window_2 = new Subject_1.Subject(); windows.push(window_2); subscriber.next(window_2.asObservable()); } }, function() { while (windows.length > 0) { windows.shift().complete(); } subscriber.complete(); }, function(err) { while (windows.length > 0) { windows.shift().error(err); } subscriber.error(err); }, function() { starts = null; windows = null; })); }); } __name(windowCount, "windowCount"); exports2.windowCount = windowCount; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/windowTime.js var require_windowTime = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/windowTime.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.windowTime = void 0; var Subject_1 = require_Subject(); var async_1 = require_async(); var Subscription_1 = require_Subscription(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var arrRemove_1 = require_arrRemove(); var args_1 = require_args(); var executeSchedule_1 = require_executeSchedule(); function windowTime(windowTimeSpan) { var _a, _b; var otherArgs = []; for (var _i = 1; _i < arguments.length; _i++) { otherArgs[_i - 1] = arguments[_i]; } var scheduler = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler; var windowCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null; var maxWindowSize = otherArgs[1] || Infinity; return lift_1.operate(function(source, subscriber) { var windowRecords = []; var restartOnClose = false; var closeWindow = /* @__PURE__ */ __name(function(record) { var window2 = record.window, subs = record.subs; window2.complete(); subs.unsubscribe(); arrRemove_1.arrRemove(windowRecords, record); restartOnClose && startWindow(); }, "closeWindow"); var startWindow = /* @__PURE__ */ __name(function() { if (windowRecords) { var subs = new Subscription_1.Subscription(); subscriber.add(subs); var window_1 = new Subject_1.Subject(); var record_1 = { window: window_1, subs, seen: 0 }; windowRecords.push(record_1); subscriber.next(window_1.asObservable()); executeSchedule_1.executeSchedule(subs, scheduler, function() { return closeWindow(record_1); }, windowTimeSpan); } }, "startWindow"); if (windowCreationInterval !== null && windowCreationInterval >= 0) { executeSchedule_1.executeSchedule(subscriber, scheduler, startWindow, windowCreationInterval, true); } else { restartOnClose = true; } startWindow(); var loop = /* @__PURE__ */ __name(function(cb) { return windowRecords.slice().forEach(cb); }, "loop"); var terminate = /* @__PURE__ */ __name(function(cb) { loop(function(_a2) { var window2 = _a2.window; return cb(window2); }); cb(subscriber); subscriber.unsubscribe(); }, "terminate"); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { loop(function(record) { record.window.next(value); maxWindowSize <= ++record.seen && closeWindow(record); }); }, function() { return terminate(function(consumer) { return consumer.complete(); }); }, function(err) { return terminate(function(consumer) { return consumer.error(err); }); })); return function() { windowRecords = null; }; }); } __name(windowTime, "windowTime"); exports2.windowTime = windowTime; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js var require_windowToggle = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js"(exports2) { "use strict"; var __values2 = exports2 && exports2.__values || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: /* @__PURE__ */ __name(function() { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; }, "next") }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.windowToggle = void 0; var Subject_1 = require_Subject(); var Subscription_1 = require_Subscription(); var lift_1 = require_lift(); var innerFrom_1 = require_innerFrom(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var noop_1 = require_noop(); var arrRemove_1 = require_arrRemove(); function windowToggle(openings, closingSelector) { return lift_1.operate(function(source, subscriber) { var windows = []; var handleError = /* @__PURE__ */ __name(function(err) { while (0 < windows.length) { windows.shift().error(err); } subscriber.error(err); }, "handleError"); innerFrom_1.innerFrom(openings).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(openValue) { var window2 = new Subject_1.Subject(); windows.push(window2); var closingSubscription = new Subscription_1.Subscription(); var closeWindow = /* @__PURE__ */ __name(function() { arrRemove_1.arrRemove(windows, window2); window2.complete(); closingSubscription.unsubscribe(); }, "closeWindow"); var closingNotifier; try { closingNotifier = innerFrom_1.innerFrom(closingSelector(openValue)); } catch (err) { handleError(err); return; } subscriber.next(window2.asObservable()); closingSubscription.add(closingNotifier.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, closeWindow, noop_1.noop, handleError))); }, noop_1.noop)); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { var e_1, _a; var windowsCopy = windows.slice(); try { for (var windowsCopy_1 = __values2(windowsCopy), windowsCopy_1_1 = windowsCopy_1.next(); !windowsCopy_1_1.done; windowsCopy_1_1 = windowsCopy_1.next()) { var window_1 = windowsCopy_1_1.value; window_1.next(value); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (windowsCopy_1_1 && !windowsCopy_1_1.done && (_a = windowsCopy_1.return)) _a.call(windowsCopy_1); } finally { if (e_1) throw e_1.error; } } }, function() { while (0 < windows.length) { windows.shift().complete(); } subscriber.complete(); }, handleError, function() { while (0 < windows.length) { windows.shift().unsubscribe(); } })); }); } __name(windowToggle, "windowToggle"); exports2.windowToggle = windowToggle; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js var require_windowWhen = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.windowWhen = void 0; var Subject_1 = require_Subject(); var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var innerFrom_1 = require_innerFrom(); function windowWhen(closingSelector) { return lift_1.operate(function(source, subscriber) { var window2; var closingSubscriber; var handleError = /* @__PURE__ */ __name(function(err) { window2.error(err); subscriber.error(err); }, "handleError"); var openWindow = /* @__PURE__ */ __name(function() { closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); window2 === null || window2 === void 0 ? void 0 : window2.complete(); window2 = new Subject_1.Subject(); subscriber.next(window2.asObservable()); var closingNotifier; try { closingNotifier = innerFrom_1.innerFrom(closingSelector()); } catch (err) { handleError(err); return; } closingNotifier.subscribe(closingSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, openWindow, openWindow, handleError)); }, "openWindow"); openWindow(); source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { return window2.next(value); }, function() { window2.complete(); subscriber.complete(); }, handleError, function() { closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe(); window2 = null; })); }); } __name(windowWhen, "windowWhen"); exports2.windowWhen = windowWhen; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js var require_withLatestFrom = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.withLatestFrom = void 0; var lift_1 = require_lift(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var innerFrom_1 = require_innerFrom(); var identity_1 = require_identity(); var noop_1 = require_noop(); var args_1 = require_args(); function withLatestFrom() { var inputs = []; for (var _i = 0; _i < arguments.length; _i++) { inputs[_i] = arguments[_i]; } var project = args_1.popResultSelector(inputs); return lift_1.operate(function(source, subscriber) { var len = inputs.length; var otherValues = new Array(len); var hasValue = inputs.map(function() { return false; }); var ready = false; var _loop_1 = /* @__PURE__ */ __name(function(i2) { innerFrom_1.innerFrom(inputs[i2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { otherValues[i2] = value; if (!ready && !hasValue[i2]) { hasValue[i2] = true; (ready = hasValue.every(identity_1.identity)) && (hasValue = null); } }, noop_1.noop)); }, "_loop_1"); for (var i = 0; i < len; i++) { _loop_1(i); } source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { if (ready) { var values = __spreadArray2([value], __read2(otherValues)); subscriber.next(project ? project.apply(void 0, __spreadArray2([], __read2(values))) : values); } })); }); } __name(withLatestFrom, "withLatestFrom"); exports2.withLatestFrom = withLatestFrom; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/zip.js var require_zip2 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/zip.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.zip = void 0; var Observable_1 = require_Observable(); var innerFrom_1 = require_innerFrom(); var argsOrArgArray_1 = require_argsOrArgArray(); var empty_1 = require_empty(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var args_1 = require_args(); function zip() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var resultSelector = args_1.popResultSelector(args); var sources = argsOrArgArray_1.argsOrArgArray(args); return sources.length ? new Observable_1.Observable(function(subscriber) { var buffers = sources.map(function() { return []; }); var completed = sources.map(function() { return false; }); subscriber.add(function() { buffers = completed = null; }); var _loop_1 = /* @__PURE__ */ __name(function(sourceIndex2) { innerFrom_1.innerFrom(sources[sourceIndex2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { buffers[sourceIndex2].push(value); if (buffers.every(function(buffer) { return buffer.length; })) { var result = buffers.map(function(buffer) { return buffer.shift(); }); subscriber.next(resultSelector ? resultSelector.apply(void 0, __spreadArray2([], __read2(result))) : result); if (buffers.some(function(buffer, i) { return !buffer.length && completed[i]; })) { subscriber.complete(); } } }, function() { completed[sourceIndex2] = true; !buffers[sourceIndex2].length && subscriber.complete(); })); }, "_loop_1"); for (var sourceIndex = 0; !subscriber.closed && sourceIndex < sources.length; sourceIndex++) { _loop_1(sourceIndex); } return function() { buffers = completed = null; }; }) : empty_1.EMPTY; } __name(zip, "zip"); exports2.zip = zip; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/zip.js var require_zip3 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/zip.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.zip = void 0; var zip_1 = require_zip2(); var lift_1 = require_lift(); function zip() { var sources = []; for (var _i = 0; _i < arguments.length; _i++) { sources[_i] = arguments[_i]; } return lift_1.operate(function(source, subscriber) { zip_1.zip.apply(void 0, __spreadArray2([source], __read2(sources))).subscribe(subscriber); }); } __name(zip, "zip"); exports2.zip = zip; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/zipAll.js var require_zipAll = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/zipAll.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.zipAll = void 0; var zip_1 = require_zip2(); var joinAllInternals_1 = require_joinAllInternals(); function zipAll(project) { return joinAllInternals_1.joinAllInternals(zip_1.zip, project); } __name(zipAll, "zipAll"); exports2.zipAll = zipAll; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/zipWith.js var require_zipWith = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/operators/zipWith.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.zipWith = void 0; var zip_1 = require_zip3(); function zipWith() { var otherInputs = []; for (var _i = 0; _i < arguments.length; _i++) { otherInputs[_i] = arguments[_i]; } return zip_1.zip.apply(void 0, __spreadArray2([], __read2(otherInputs))); } __name(zipWith, "zipWith"); exports2.zipWith = zipWith; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/operators/index.js var require_operators = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/operators/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mergeAll = exports2.merge = exports2.max = exports2.materialize = exports2.mapTo = exports2.map = exports2.last = exports2.isEmpty = exports2.ignoreElements = exports2.groupBy = exports2.first = exports2.findIndex = exports2.find = exports2.finalize = exports2.filter = exports2.expand = exports2.exhaustMap = exports2.exhaustAll = exports2.exhaust = exports2.every = exports2.endWith = exports2.elementAt = exports2.distinctUntilKeyChanged = exports2.distinctUntilChanged = exports2.distinct = exports2.dematerialize = exports2.delayWhen = exports2.delay = exports2.defaultIfEmpty = exports2.debounceTime = exports2.debounce = exports2.count = exports2.connect = exports2.concatWith = exports2.concatMapTo = exports2.concatMap = exports2.concatAll = exports2.concat = exports2.combineLatestWith = exports2.combineLatest = exports2.combineLatestAll = exports2.combineAll = exports2.catchError = exports2.bufferWhen = exports2.bufferToggle = exports2.bufferTime = exports2.bufferCount = exports2.buffer = exports2.auditTime = exports2.audit = void 0; exports2.timeInterval = exports2.throwIfEmpty = exports2.throttleTime = exports2.throttle = exports2.tap = exports2.takeWhile = exports2.takeUntil = exports2.takeLast = exports2.take = exports2.switchScan = exports2.switchMapTo = exports2.switchMap = exports2.switchAll = exports2.subscribeOn = exports2.startWith = exports2.skipWhile = exports2.skipUntil = exports2.skipLast = exports2.skip = exports2.single = exports2.shareReplay = exports2.share = exports2.sequenceEqual = exports2.scan = exports2.sampleTime = exports2.sample = exports2.refCount = exports2.retryWhen = exports2.retry = exports2.repeatWhen = exports2.repeat = exports2.reduce = exports2.raceWith = exports2.race = exports2.publishReplay = exports2.publishLast = exports2.publishBehavior = exports2.publish = exports2.pluck = exports2.partition = exports2.pairwise = exports2.onErrorResumeNext = exports2.observeOn = exports2.multicast = exports2.min = exports2.mergeWith = exports2.mergeScan = exports2.mergeMapTo = exports2.mergeMap = exports2.flatMap = void 0; exports2.zipWith = exports2.zipAll = exports2.zip = exports2.withLatestFrom = exports2.windowWhen = exports2.windowToggle = exports2.windowTime = exports2.windowCount = exports2.window = exports2.toArray = exports2.timestamp = exports2.timeoutWith = exports2.timeout = void 0; var audit_1 = require_audit(); Object.defineProperty(exports2, "audit", { enumerable: true, get: /* @__PURE__ */ __name(function() { return audit_1.audit; }, "get") }); var auditTime_1 = require_auditTime(); Object.defineProperty(exports2, "auditTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return auditTime_1.auditTime; }, "get") }); var buffer_1 = require_buffer(); Object.defineProperty(exports2, "buffer", { enumerable: true, get: /* @__PURE__ */ __name(function() { return buffer_1.buffer; }, "get") }); var bufferCount_1 = require_bufferCount(); Object.defineProperty(exports2, "bufferCount", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bufferCount_1.bufferCount; }, "get") }); var bufferTime_1 = require_bufferTime(); Object.defineProperty(exports2, "bufferTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bufferTime_1.bufferTime; }, "get") }); var bufferToggle_1 = require_bufferToggle(); Object.defineProperty(exports2, "bufferToggle", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bufferToggle_1.bufferToggle; }, "get") }); var bufferWhen_1 = require_bufferWhen(); Object.defineProperty(exports2, "bufferWhen", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bufferWhen_1.bufferWhen; }, "get") }); var catchError_1 = require_catchError(); Object.defineProperty(exports2, "catchError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return catchError_1.catchError; }, "get") }); var combineAll_1 = require_combineAll(); Object.defineProperty(exports2, "combineAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return combineAll_1.combineAll; }, "get") }); var combineLatestAll_1 = require_combineLatestAll(); Object.defineProperty(exports2, "combineLatestAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return combineLatestAll_1.combineLatestAll; }, "get") }); var combineLatest_1 = require_combineLatest2(); Object.defineProperty(exports2, "combineLatest", { enumerable: true, get: /* @__PURE__ */ __name(function() { return combineLatest_1.combineLatest; }, "get") }); var combineLatestWith_1 = require_combineLatestWith(); Object.defineProperty(exports2, "combineLatestWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return combineLatestWith_1.combineLatestWith; }, "get") }); var concat_1 = require_concat2(); Object.defineProperty(exports2, "concat", { enumerable: true, get: /* @__PURE__ */ __name(function() { return concat_1.concat; }, "get") }); var concatAll_1 = require_concatAll(); Object.defineProperty(exports2, "concatAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return concatAll_1.concatAll; }, "get") }); var concatMap_1 = require_concatMap(); Object.defineProperty(exports2, "concatMap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return concatMap_1.concatMap; }, "get") }); var concatMapTo_1 = require_concatMapTo(); Object.defineProperty(exports2, "concatMapTo", { enumerable: true, get: /* @__PURE__ */ __name(function() { return concatMapTo_1.concatMapTo; }, "get") }); var concatWith_1 = require_concatWith(); Object.defineProperty(exports2, "concatWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return concatWith_1.concatWith; }, "get") }); var connect_1 = require_connect(); Object.defineProperty(exports2, "connect", { enumerable: true, get: /* @__PURE__ */ __name(function() { return connect_1.connect; }, "get") }); var count_1 = require_count(); Object.defineProperty(exports2, "count", { enumerable: true, get: /* @__PURE__ */ __name(function() { return count_1.count; }, "get") }); var debounce_1 = require_debounce(); Object.defineProperty(exports2, "debounce", { enumerable: true, get: /* @__PURE__ */ __name(function() { return debounce_1.debounce; }, "get") }); var debounceTime_1 = require_debounceTime(); Object.defineProperty(exports2, "debounceTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return debounceTime_1.debounceTime; }, "get") }); var defaultIfEmpty_1 = require_defaultIfEmpty(); Object.defineProperty(exports2, "defaultIfEmpty", { enumerable: true, get: /* @__PURE__ */ __name(function() { return defaultIfEmpty_1.defaultIfEmpty; }, "get") }); var delay_1 = require_delay(); Object.defineProperty(exports2, "delay", { enumerable: true, get: /* @__PURE__ */ __name(function() { return delay_1.delay; }, "get") }); var delayWhen_1 = require_delayWhen(); Object.defineProperty(exports2, "delayWhen", { enumerable: true, get: /* @__PURE__ */ __name(function() { return delayWhen_1.delayWhen; }, "get") }); var dematerialize_1 = require_dematerialize(); Object.defineProperty(exports2, "dematerialize", { enumerable: true, get: /* @__PURE__ */ __name(function() { return dematerialize_1.dematerialize; }, "get") }); var distinct_1 = require_distinct(); Object.defineProperty(exports2, "distinct", { enumerable: true, get: /* @__PURE__ */ __name(function() { return distinct_1.distinct; }, "get") }); var distinctUntilChanged_1 = require_distinctUntilChanged(); Object.defineProperty(exports2, "distinctUntilChanged", { enumerable: true, get: /* @__PURE__ */ __name(function() { return distinctUntilChanged_1.distinctUntilChanged; }, "get") }); var distinctUntilKeyChanged_1 = require_distinctUntilKeyChanged(); Object.defineProperty(exports2, "distinctUntilKeyChanged", { enumerable: true, get: /* @__PURE__ */ __name(function() { return distinctUntilKeyChanged_1.distinctUntilKeyChanged; }, "get") }); var elementAt_1 = require_elementAt(); Object.defineProperty(exports2, "elementAt", { enumerable: true, get: /* @__PURE__ */ __name(function() { return elementAt_1.elementAt; }, "get") }); var endWith_1 = require_endWith(); Object.defineProperty(exports2, "endWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return endWith_1.endWith; }, "get") }); var every_1 = require_every(); Object.defineProperty(exports2, "every", { enumerable: true, get: /* @__PURE__ */ __name(function() { return every_1.every; }, "get") }); var exhaust_1 = require_exhaust(); Object.defineProperty(exports2, "exhaust", { enumerable: true, get: /* @__PURE__ */ __name(function() { return exhaust_1.exhaust; }, "get") }); var exhaustAll_1 = require_exhaustAll(); Object.defineProperty(exports2, "exhaustAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return exhaustAll_1.exhaustAll; }, "get") }); var exhaustMap_1 = require_exhaustMap(); Object.defineProperty(exports2, "exhaustMap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return exhaustMap_1.exhaustMap; }, "get") }); var expand_1 = require_expand(); Object.defineProperty(exports2, "expand", { enumerable: true, get: /* @__PURE__ */ __name(function() { return expand_1.expand; }, "get") }); var filter_1 = require_filter2(); Object.defineProperty(exports2, "filter", { enumerable: true, get: /* @__PURE__ */ __name(function() { return filter_1.filter; }, "get") }); var finalize_1 = require_finalize(); Object.defineProperty(exports2, "finalize", { enumerable: true, get: /* @__PURE__ */ __name(function() { return finalize_1.finalize; }, "get") }); var find_1 = require_find(); Object.defineProperty(exports2, "find", { enumerable: true, get: /* @__PURE__ */ __name(function() { return find_1.find; }, "get") }); var findIndex_1 = require_findIndex(); Object.defineProperty(exports2, "findIndex", { enumerable: true, get: /* @__PURE__ */ __name(function() { return findIndex_1.findIndex; }, "get") }); var first_1 = require_first(); Object.defineProperty(exports2, "first", { enumerable: true, get: /* @__PURE__ */ __name(function() { return first_1.first; }, "get") }); var groupBy_1 = require_groupBy(); Object.defineProperty(exports2, "groupBy", { enumerable: true, get: /* @__PURE__ */ __name(function() { return groupBy_1.groupBy; }, "get") }); var ignoreElements_1 = require_ignoreElements(); Object.defineProperty(exports2, "ignoreElements", { enumerable: true, get: /* @__PURE__ */ __name(function() { return ignoreElements_1.ignoreElements; }, "get") }); var isEmpty_1 = require_isEmpty2(); Object.defineProperty(exports2, "isEmpty", { enumerable: true, get: /* @__PURE__ */ __name(function() { return isEmpty_1.isEmpty; }, "get") }); var last_1 = require_last(); Object.defineProperty(exports2, "last", { enumerable: true, get: /* @__PURE__ */ __name(function() { return last_1.last; }, "get") }); var map_1 = require_map2(); Object.defineProperty(exports2, "map", { enumerable: true, get: /* @__PURE__ */ __name(function() { return map_1.map; }, "get") }); var mapTo_1 = require_mapTo(); Object.defineProperty(exports2, "mapTo", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mapTo_1.mapTo; }, "get") }); var materialize_1 = require_materialize(); Object.defineProperty(exports2, "materialize", { enumerable: true, get: /* @__PURE__ */ __name(function() { return materialize_1.materialize; }, "get") }); var max_1 = require_max2(); Object.defineProperty(exports2, "max", { enumerable: true, get: /* @__PURE__ */ __name(function() { return max_1.max; }, "get") }); var merge_1 = require_merge2(); Object.defineProperty(exports2, "merge", { enumerable: true, get: /* @__PURE__ */ __name(function() { return merge_1.merge; }, "get") }); var mergeAll_1 = require_mergeAll(); Object.defineProperty(exports2, "mergeAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mergeAll_1.mergeAll; }, "get") }); var flatMap_1 = require_flatMap(); Object.defineProperty(exports2, "flatMap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return flatMap_1.flatMap; }, "get") }); var mergeMap_1 = require_mergeMap(); Object.defineProperty(exports2, "mergeMap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mergeMap_1.mergeMap; }, "get") }); var mergeMapTo_1 = require_mergeMapTo(); Object.defineProperty(exports2, "mergeMapTo", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mergeMapTo_1.mergeMapTo; }, "get") }); var mergeScan_1 = require_mergeScan(); Object.defineProperty(exports2, "mergeScan", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mergeScan_1.mergeScan; }, "get") }); var mergeWith_1 = require_mergeWith(); Object.defineProperty(exports2, "mergeWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mergeWith_1.mergeWith; }, "get") }); var min_1 = require_min(); Object.defineProperty(exports2, "min", { enumerable: true, get: /* @__PURE__ */ __name(function() { return min_1.min; }, "get") }); var multicast_1 = require_multicast(); Object.defineProperty(exports2, "multicast", { enumerable: true, get: /* @__PURE__ */ __name(function() { return multicast_1.multicast; }, "get") }); var observeOn_1 = require_observeOn(); Object.defineProperty(exports2, "observeOn", { enumerable: true, get: /* @__PURE__ */ __name(function() { return observeOn_1.observeOn; }, "get") }); var onErrorResumeNextWith_1 = require_onErrorResumeNextWith(); Object.defineProperty(exports2, "onErrorResumeNext", { enumerable: true, get: /* @__PURE__ */ __name(function() { return onErrorResumeNextWith_1.onErrorResumeNext; }, "get") }); var pairwise_1 = require_pairwise(); Object.defineProperty(exports2, "pairwise", { enumerable: true, get: /* @__PURE__ */ __name(function() { return pairwise_1.pairwise; }, "get") }); var partition_1 = require_partition(); Object.defineProperty(exports2, "partition", { enumerable: true, get: /* @__PURE__ */ __name(function() { return partition_1.partition; }, "get") }); var pluck_1 = require_pluck(); Object.defineProperty(exports2, "pluck", { enumerable: true, get: /* @__PURE__ */ __name(function() { return pluck_1.pluck; }, "get") }); var publish_1 = require_publish(); Object.defineProperty(exports2, "publish", { enumerable: true, get: /* @__PURE__ */ __name(function() { return publish_1.publish; }, "get") }); var publishBehavior_1 = require_publishBehavior(); Object.defineProperty(exports2, "publishBehavior", { enumerable: true, get: /* @__PURE__ */ __name(function() { return publishBehavior_1.publishBehavior; }, "get") }); var publishLast_1 = require_publishLast(); Object.defineProperty(exports2, "publishLast", { enumerable: true, get: /* @__PURE__ */ __name(function() { return publishLast_1.publishLast; }, "get") }); var publishReplay_1 = require_publishReplay(); Object.defineProperty(exports2, "publishReplay", { enumerable: true, get: /* @__PURE__ */ __name(function() { return publishReplay_1.publishReplay; }, "get") }); var race_1 = require_race2(); Object.defineProperty(exports2, "race", { enumerable: true, get: /* @__PURE__ */ __name(function() { return race_1.race; }, "get") }); var raceWith_1 = require_raceWith(); Object.defineProperty(exports2, "raceWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return raceWith_1.raceWith; }, "get") }); var reduce_1 = require_reduce(); Object.defineProperty(exports2, "reduce", { enumerable: true, get: /* @__PURE__ */ __name(function() { return reduce_1.reduce; }, "get") }); var repeat_1 = require_repeat(); Object.defineProperty(exports2, "repeat", { enumerable: true, get: /* @__PURE__ */ __name(function() { return repeat_1.repeat; }, "get") }); var repeatWhen_1 = require_repeatWhen(); Object.defineProperty(exports2, "repeatWhen", { enumerable: true, get: /* @__PURE__ */ __name(function() { return repeatWhen_1.repeatWhen; }, "get") }); var retry_1 = require_retry(); Object.defineProperty(exports2, "retry", { enumerable: true, get: /* @__PURE__ */ __name(function() { return retry_1.retry; }, "get") }); var retryWhen_1 = require_retryWhen(); Object.defineProperty(exports2, "retryWhen", { enumerable: true, get: /* @__PURE__ */ __name(function() { return retryWhen_1.retryWhen; }, "get") }); var refCount_1 = require_refCount(); Object.defineProperty(exports2, "refCount", { enumerable: true, get: /* @__PURE__ */ __name(function() { return refCount_1.refCount; }, "get") }); var sample_1 = require_sample(); Object.defineProperty(exports2, "sample", { enumerable: true, get: /* @__PURE__ */ __name(function() { return sample_1.sample; }, "get") }); var sampleTime_1 = require_sampleTime(); Object.defineProperty(exports2, "sampleTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return sampleTime_1.sampleTime; }, "get") }); var scan_1 = require_scan(); Object.defineProperty(exports2, "scan", { enumerable: true, get: /* @__PURE__ */ __name(function() { return scan_1.scan; }, "get") }); var sequenceEqual_1 = require_sequenceEqual(); Object.defineProperty(exports2, "sequenceEqual", { enumerable: true, get: /* @__PURE__ */ __name(function() { return sequenceEqual_1.sequenceEqual; }, "get") }); var share_1 = require_share(); Object.defineProperty(exports2, "share", { enumerable: true, get: /* @__PURE__ */ __name(function() { return share_1.share; }, "get") }); var shareReplay_1 = require_shareReplay(); Object.defineProperty(exports2, "shareReplay", { enumerable: true, get: /* @__PURE__ */ __name(function() { return shareReplay_1.shareReplay; }, "get") }); var single_1 = require_single(); Object.defineProperty(exports2, "single", { enumerable: true, get: /* @__PURE__ */ __name(function() { return single_1.single; }, "get") }); var skip_1 = require_skip(); Object.defineProperty(exports2, "skip", { enumerable: true, get: /* @__PURE__ */ __name(function() { return skip_1.skip; }, "get") }); var skipLast_1 = require_skipLast(); Object.defineProperty(exports2, "skipLast", { enumerable: true, get: /* @__PURE__ */ __name(function() { return skipLast_1.skipLast; }, "get") }); var skipUntil_1 = require_skipUntil(); Object.defineProperty(exports2, "skipUntil", { enumerable: true, get: /* @__PURE__ */ __name(function() { return skipUntil_1.skipUntil; }, "get") }); var skipWhile_1 = require_skipWhile(); Object.defineProperty(exports2, "skipWhile", { enumerable: true, get: /* @__PURE__ */ __name(function() { return skipWhile_1.skipWhile; }, "get") }); var startWith_1 = require_startWith(); Object.defineProperty(exports2, "startWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return startWith_1.startWith; }, "get") }); var subscribeOn_1 = require_subscribeOn(); Object.defineProperty(exports2, "subscribeOn", { enumerable: true, get: /* @__PURE__ */ __name(function() { return subscribeOn_1.subscribeOn; }, "get") }); var switchAll_1 = require_switchAll(); Object.defineProperty(exports2, "switchAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return switchAll_1.switchAll; }, "get") }); var switchMap_1 = require_switchMap(); Object.defineProperty(exports2, "switchMap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return switchMap_1.switchMap; }, "get") }); var switchMapTo_1 = require_switchMapTo(); Object.defineProperty(exports2, "switchMapTo", { enumerable: true, get: /* @__PURE__ */ __name(function() { return switchMapTo_1.switchMapTo; }, "get") }); var switchScan_1 = require_switchScan(); Object.defineProperty(exports2, "switchScan", { enumerable: true, get: /* @__PURE__ */ __name(function() { return switchScan_1.switchScan; }, "get") }); var take_1 = require_take(); Object.defineProperty(exports2, "take", { enumerable: true, get: /* @__PURE__ */ __name(function() { return take_1.take; }, "get") }); var takeLast_1 = require_takeLast(); Object.defineProperty(exports2, "takeLast", { enumerable: true, get: /* @__PURE__ */ __name(function() { return takeLast_1.takeLast; }, "get") }); var takeUntil_1 = require_takeUntil(); Object.defineProperty(exports2, "takeUntil", { enumerable: true, get: /* @__PURE__ */ __name(function() { return takeUntil_1.takeUntil; }, "get") }); var takeWhile_1 = require_takeWhile(); Object.defineProperty(exports2, "takeWhile", { enumerable: true, get: /* @__PURE__ */ __name(function() { return takeWhile_1.takeWhile; }, "get") }); var tap_1 = require_tap(); Object.defineProperty(exports2, "tap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return tap_1.tap; }, "get") }); var throttle_1 = require_throttle(); Object.defineProperty(exports2, "throttle", { enumerable: true, get: /* @__PURE__ */ __name(function() { return throttle_1.throttle; }, "get") }); var throttleTime_1 = require_throttleTime(); Object.defineProperty(exports2, "throttleTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return throttleTime_1.throttleTime; }, "get") }); var throwIfEmpty_1 = require_throwIfEmpty(); Object.defineProperty(exports2, "throwIfEmpty", { enumerable: true, get: /* @__PURE__ */ __name(function() { return throwIfEmpty_1.throwIfEmpty; }, "get") }); var timeInterval_1 = require_timeInterval(); Object.defineProperty(exports2, "timeInterval", { enumerable: true, get: /* @__PURE__ */ __name(function() { return timeInterval_1.timeInterval; }, "get") }); var timeout_1 = require_timeout(); Object.defineProperty(exports2, "timeout", { enumerable: true, get: /* @__PURE__ */ __name(function() { return timeout_1.timeout; }, "get") }); var timeoutWith_1 = require_timeoutWith(); Object.defineProperty(exports2, "timeoutWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return timeoutWith_1.timeoutWith; }, "get") }); var timestamp_1 = require_timestamp(); Object.defineProperty(exports2, "timestamp", { enumerable: true, get: /* @__PURE__ */ __name(function() { return timestamp_1.timestamp; }, "get") }); var toArray_1 = require_toArray(); Object.defineProperty(exports2, "toArray", { enumerable: true, get: /* @__PURE__ */ __name(function() { return toArray_1.toArray; }, "get") }); var window_1 = require_window(); Object.defineProperty(exports2, "window", { enumerable: true, get: /* @__PURE__ */ __name(function() { return window_1.window; }, "get") }); var windowCount_1 = require_windowCount(); Object.defineProperty(exports2, "windowCount", { enumerable: true, get: /* @__PURE__ */ __name(function() { return windowCount_1.windowCount; }, "get") }); var windowTime_1 = require_windowTime(); Object.defineProperty(exports2, "windowTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return windowTime_1.windowTime; }, "get") }); var windowToggle_1 = require_windowToggle(); Object.defineProperty(exports2, "windowToggle", { enumerable: true, get: /* @__PURE__ */ __name(function() { return windowToggle_1.windowToggle; }, "get") }); var windowWhen_1 = require_windowWhen(); Object.defineProperty(exports2, "windowWhen", { enumerable: true, get: /* @__PURE__ */ __name(function() { return windowWhen_1.windowWhen; }, "get") }); var withLatestFrom_1 = require_withLatestFrom(); Object.defineProperty(exports2, "withLatestFrom", { enumerable: true, get: /* @__PURE__ */ __name(function() { return withLatestFrom_1.withLatestFrom; }, "get") }); var zip_1 = require_zip3(); Object.defineProperty(exports2, "zip", { enumerable: true, get: /* @__PURE__ */ __name(function() { return zip_1.zip; }, "get") }); var zipAll_1 = require_zipAll(); Object.defineProperty(exports2, "zipAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return zipAll_1.zipAll; }, "get") }); var zipWith_1 = require_zipWith(); Object.defineProperty(exports2, "zipWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return zipWith_1.zipWith; }, "get") }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/class-serializer.constants.js var require_class_serializer_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/class-serializer.constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CLASS_SERIALIZER_OPTIONS = void 0; exports2.CLASS_SERIALIZER_OPTIONS = "class_serializer:options"; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/class-serializer.interceptor.js var require_class_serializer_interceptor = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/class-serializer.interceptor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ClassSerializerInterceptor = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var operators_1 = require_operators(); var core_12 = require_core(); var file_stream_1 = require_file_stream(); var load_package_util_1 = require_load_package_util(); var shared_utils_1 = require_shared_utils(); var class_serializer_constants_1 = require_class_serializer_constants(); var classTransformer = {}; var REFLECTOR = "Reflector"; var ClassSerializerInterceptor = class ClassSerializerInterceptor { static { __name(this, "ClassSerializerInterceptor"); } constructor(reflector, defaultOptions = {}) { this.reflector = reflector; this.defaultOptions = defaultOptions; classTransformer = defaultOptions?.transformerPackage ?? (0, load_package_util_1.loadPackage)("class-transformer", "ClassSerializerInterceptor", () => require_cjs2()); if (!defaultOptions?.transformerPackage) { require_cjs2(); } } intercept(context, next) { const contextOptions = this.getContextOptions(context); const options = { ...this.defaultOptions, ...contextOptions }; return next.handle().pipe((0, operators_1.map)((res) => this.serialize(res, options))); } /** * Serializes responses that are non-null objects nor streamable files. */ serialize(response, options) { if (!(0, shared_utils_1.isObject)(response) || response instanceof file_stream_1.StreamableFile) { return response; } return Array.isArray(response) ? response.map((item) => this.transformToPlain(item, options)) : this.transformToPlain(response, options); } transformToPlain(plainOrClass, options) { if (!plainOrClass) { return plainOrClass; } if (!options.type) { return classTransformer.classToPlain(plainOrClass, options); } if (plainOrClass instanceof options.type) { return classTransformer.classToPlain(plainOrClass, options); } const instance = classTransformer.plainToClass(options.type, plainOrClass); return classTransformer.classToPlain(instance, options); } getContextOptions(context) { return this.reflector.getAllAndOverride(class_serializer_constants_1.CLASS_SERIALIZER_OPTIONS, [ context.getHandler(), context.getClass() ]); } }; exports2.ClassSerializerInterceptor = ClassSerializerInterceptor; exports2.ClassSerializerInterceptor = ClassSerializerInterceptor = tslib_1.__decorate([ (0, core_12.Injectable)(), tslib_1.__param(0, (0, core_12.Inject)(REFLECTOR)), tslib_1.__param(1, (0, core_12.Optional)()), tslib_1.__metadata("design:paramtypes", [Object, Object]) ], ClassSerializerInterceptor); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/decorators/serialize-options.decorator.js var require_serialize_options_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/decorators/serialize-options.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SerializeOptions = void 0; var decorators_1 = require_decorators(); var class_serializer_constants_1 = require_class_serializer_constants(); var SerializeOptions = /* @__PURE__ */ __name((options) => (0, decorators_1.SetMetadata)(class_serializer_constants_1.CLASS_SERIALIZER_OPTIONS, options), "SerializeOptions"); exports2.SerializeOptions = SerializeOptions; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/decorators/index.js var require_decorators4 = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/decorators/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_serialize_options_decorator(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/class-serializer.interfaces.js var require_class_serializer_interfaces = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/class-serializer.interfaces.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/index.js var require_serializer = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/serializer/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_class_serializer_interceptor(), exports2); tslib_1.__exportStar(require_decorators4(), exports2); tslib_1.__exportStar(require_class_serializer_interfaces(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/forward-ref.util.js var require_forward_ref_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/forward-ref.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.forwardRef = void 0; var forwardRef = /* @__PURE__ */ __name((fn) => ({ forwardRef: fn }), "forwardRef"); exports2.forwardRef = forwardRef; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/index.js var require_utils6 = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_forward_ref_util(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/index.js var require_common = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.VERSION_NEUTRAL = exports2.Scope = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); require_Reflect(); tslib_1.__exportStar(require_decorators(), exports2); tslib_1.__exportStar(require_enums(), exports2); tslib_1.__exportStar(require_exceptions(), exports2); tslib_1.__exportStar(require_file_stream(), exports2); var interfaces_1 = require_interfaces(); Object.defineProperty(exports2, "Scope", { enumerable: true, get: /* @__PURE__ */ __name(function() { return interfaces_1.Scope; }, "get") }); Object.defineProperty(exports2, "VERSION_NEUTRAL", { enumerable: true, get: /* @__PURE__ */ __name(function() { return interfaces_1.VERSION_NEUTRAL; }, "get") }); tslib_1.__exportStar(require_module_utils(), exports2); tslib_1.__exportStar(require_pipes(), exports2); tslib_1.__exportStar(require_serializer(), exports2); tslib_1.__exportStar(require_services(), exports2); tslib_1.__exportStar(require_utils6(), exports2); } }); // ../../node_modules/.pnpm/dotenv@16.4.5/node_modules/dotenv/package.json var require_package = __commonJS({ "../../node_modules/.pnpm/dotenv@16.4.5/node_modules/dotenv/package.json"(exports2, module2) { module2.exports = { name: "dotenv", version: "16.4.5", description: "Loads environment variables from .env file", main: "lib/main.js", types: "lib/main.d.ts", exports: { ".": { types: "./lib/main.d.ts", require: "./lib/main.js", default: "./lib/main.js" }, "./config": "./config.js", "./config.js": "./config.js", "./lib/env-options": "./lib/env-options.js", "./lib/env-options.js": "./lib/env-options.js", "./lib/cli-options": "./lib/cli-options.js", "./lib/cli-options.js": "./lib/cli-options.js", "./package.json": "./package.json" }, scripts: { "dts-check": "tsc --project tests/types/tsconfig.json", lint: "standard", "lint-readme": "standard-markdown", pretest: "npm run lint && npm run dts-check", test: "tap tests/*.js --100 -Rspec", "test:coverage": "tap --coverage-report=lcov", prerelease: "npm test", release: "standard-version" }, repository: { type: "git", url: "git://github.com/motdotla/dotenv.git" }, funding: "https://dotenvx.com", keywords: [ "dotenv", "env", ".env", "environment", "variables", "config", "settings" ], readmeFilename: "README.md", license: "BSD-2-Clause", devDependencies: { "@definitelytyped/dtslint": "^0.0.133", "@types/node": "^18.11.3", decache: "^4.6.1", sinon: "^14.0.1", standard: "^17.0.0", "standard-markdown": "^7.1.0", "standard-version": "^9.5.0", tap: "^16.3.0", tar: "^6.1.11", typescript: "^4.8.4" }, engines: { node: ">=12" }, browser: { fs: false } }; } }); // ../../node_modules/.pnpm/dotenv@16.4.5/node_modules/dotenv/lib/main.js var require_main = __commonJS({ "../../node_modules/.pnpm/dotenv@16.4.5/node_modules/dotenv/lib/main.js"(exports2, module2) { var fs = require("fs"); var path = require("path"); var os = require("os"); var crypto5 = require("crypto"); var packageJson = require_package(); var version2 = packageJson.version; var LINE = /(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg; function parse2(src) { const obj2 = {}; let lines = src.toString(); lines = lines.replace(/\r\n?/mg, "\n"); let match; while ((match = LINE.exec(lines)) != null) { const key = match[1]; let value = match[2] || ""; value = value.trim(); const maybeQuote = value[0]; value = value.replace(/^(['"`])([\s\S]*)\1$/mg, "$2"); if (maybeQuote === '"') { value = value.replace(/\\n/g, "\n"); value = value.replace(/\\r/g, "\r"); } obj2[key] = value; } return obj2; } __name(parse2, "parse"); function _parseVault(options) { const vaultPath = _vaultPath(options); const result = DotenvModule.configDotenv({ path: vaultPath }); if (!result.parsed) { const err = new Error(`MISSING_DATA: Cannot parse ${vaultPath} for an unknown reason`); err.code = "MISSING_DATA"; throw err; } const keys = _dotenvKey(options).split(","); const length = keys.length; let decrypted; for (let i = 0; i < length; i++) { try { const key = keys[i].trim(); const attrs = _instructions(result, key); decrypted = DotenvModule.decrypt(attrs.ciphertext, attrs.key); break; } catch (error) { if (i + 1 >= length) { throw error; } } } return DotenvModule.parse(decrypted); } __name(_parseVault, "_parseVault"); function _log(message) { console.log(`[dotenv@${version2}][INFO] ${message}`); } __name(_log, "_log"); function _warn(message) { console.log(`[dotenv@${version2}][WARN] ${message}`); } __name(_warn, "_warn"); function _debug(message) { console.log(`[dotenv@${version2}][DEBUG] ${message}`); } __name(_debug, "_debug"); function _dotenvKey(options) { if (options && options.DOTENV_KEY && options.DOTENV_KEY.length > 0) { return options.DOTENV_KEY; } if (process.env.DOTENV_KEY && process.env.DOTENV_KEY.length > 0) { return process.env.DOTENV_KEY; } return ""; } __name(_dotenvKey, "_dotenvKey"); function _instructions(result, dotenvKey) { let uri; try { uri = new URL(dotenvKey); } catch (error) { if (error.code === "ERR_INVALID_URL") { const err = new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development"); err.code = "INVALID_DOTENV_KEY"; throw err; } throw error; } const key = uri.password; if (!key) { const err = new Error("INVALID_DOTENV_KEY: Missing key part"); err.code = "INVALID_DOTENV_KEY"; throw err; } const environment = uri.searchParams.get("environment"); if (!environment) { const err = new Error("INVALID_DOTENV_KEY: Missing environment part"); err.code = "INVALID_DOTENV_KEY"; throw err; } const environmentKey = `DOTENV_VAULT_${environment.toUpperCase()}`; const ciphertext = result.parsed[environmentKey]; if (!ciphertext) { const err = new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${environmentKey} in your .env.vault file.`); err.code = "NOT_FOUND_DOTENV_ENVIRONMENT"; throw err; } return { ciphertext, key }; } __name(_instructions, "_instructions"); function _vaultPath(options) { let possibleVaultPath = null; if (options && options.path && options.path.length > 0) { if (Array.isArray(options.path)) { for (const filepath of options.path) { if (fs.existsSync(filepath)) { possibleVaultPath = filepath.endsWith(".vault") ? filepath : `${filepath}.vault`; } } } else { possibleVaultPath = options.path.endsWith(".vault") ? options.path : `${options.path}.vault`; } } else { possibleVaultPath = path.resolve(process.cwd(), ".env.vault"); } if (fs.existsSync(possibleVaultPath)) { return possibleVaultPath; } return null; } __name(_vaultPath, "_vaultPath"); function _resolveHome(envPath) { return envPath[0] === "~" ? path.join(os.homedir(), envPath.slice(1)) : envPath; } __name(_resolveHome, "_resolveHome"); function _configVault(options) { _log("Loading env from encrypted .env.vault"); const parsed = DotenvModule._parseVault(options); let processEnv = process.env; if (options && options.processEnv != null) { processEnv = options.processEnv; } DotenvModule.populate(processEnv, parsed, options); return { parsed }; } __name(_configVault, "_configVault"); function configDotenv(options) { const dotenvPath = path.resolve(process.cwd(), ".env"); let encoding = "utf8"; const debug = Boolean(options && options.debug); if (options && options.encoding) { encoding = options.encoding; } else { if (debug) { _debug("No encoding is specified. UTF-8 is used by default"); } } let optionPaths = [dotenvPath]; if (options && options.path) { if (!Array.isArray(options.path)) { optionPaths = [_resolveHome(options.path)]; } else { optionPaths = []; for (const filepath of options.path) { optionPaths.push(_resolveHome(filepath)); } } } let lastError; const parsedAll = {}; for (const path2 of optionPaths) { try { const parsed = DotenvModule.parse(fs.readFileSync(path2, { encoding })); DotenvModule.populate(parsedAll, parsed, options); } catch (e) { if (debug) { _debug(`Failed to load ${path2} ${e.message}`); } lastError = e; } } let processEnv = process.env; if (options && options.processEnv != null) { processEnv = options.processEnv; } DotenvModule.populate(processEnv, parsedAll, options); if (lastError) { return { parsed: parsedAll, error: lastError }; } else { return { parsed: parsedAll }; } } __name(configDotenv, "configDotenv"); function config(options) { if (_dotenvKey(options).length === 0) { return DotenvModule.configDotenv(options); } const vaultPath = _vaultPath(options); if (!vaultPath) { _warn(`You set DOTENV_KEY but you are missing a .env.vault file at ${vaultPath}. Did you forget to build it?`); return DotenvModule.configDotenv(options); } return DotenvModule._configVault(options); } __name(config, "config"); function decrypt(encrypted, keyStr) { const key = Buffer.from(keyStr.slice(-64), "hex"); let ciphertext = Buffer.from(encrypted, "base64"); const nonce = ciphertext.subarray(0, 12); const authTag = ciphertext.subarray(-16); ciphertext = ciphertext.subarray(12, -16); try { const aesgcm = crypto5.createDecipheriv("aes-256-gcm", key, nonce); aesgcm.setAuthTag(authTag); return `${aesgcm.update(ciphertext)}${aesgcm.final()}`; } catch (error) { const isRange = error instanceof RangeError; const invalidKeyLength = error.message === "Invalid key length"; const decryptionFailed = error.message === "Unsupported state or unable to authenticate data"; if (isRange || invalidKeyLength) { const err = new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)"); err.code = "INVALID_DOTENV_KEY"; throw err; } else if (decryptionFailed) { const err = new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY"); err.code = "DECRYPTION_FAILED"; throw err; } else { throw error; } } } __name(decrypt, "decrypt"); function populate(processEnv, parsed, options = {}) { const debug = Boolean(options && options.debug); const override = Boolean(options && options.override); if (typeof parsed !== "object") { const err = new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate"); err.code = "OBJECT_REQUIRED"; throw err; } for (const key of Object.keys(parsed)) { if (Object.prototype.hasOwnProperty.call(processEnv, key)) { if (override === true) { processEnv[key] = parsed[key]; } if (debug) { if (override === true) { _debug(`"${key}" is already defined and WAS overwritten`); } else { _debug(`"${key}" is already defined and was NOT overwritten`); } } } else { processEnv[key] = parsed[key]; } } } __name(populate, "populate"); var DotenvModule = { configDotenv, _configVault, _parseVault, config, decrypt, parse: parse2, populate }; module2.exports.configDotenv = DotenvModule.configDotenv; module2.exports._configVault = DotenvModule._configVault; module2.exports._parseVault = DotenvModule._parseVault; module2.exports.config = DotenvModule.config; module2.exports.decrypt = DotenvModule.decrypt; module2.exports.parse = DotenvModule.parse; module2.exports.populate = DotenvModule.populate; module2.exports = DotenvModule; } }); // ../../node_modules/.pnpm/dotenv-expand@10.0.0/node_modules/dotenv-expand/lib/main.js var require_main2 = __commonJS({ "../../node_modules/.pnpm/dotenv-expand@10.0.0/node_modules/dotenv-expand/lib/main.js"(exports2, module2) { "use strict"; function _searchLast(str, rgx) { const matches = Array.from(str.matchAll(rgx)); return matches.length > 0 ? matches.slice(-1)[0].index : -1; } __name(_searchLast, "_searchLast"); function _interpolate(envValue, environment, config) { const lastUnescapedDollarSignIndex = _searchLast(envValue, /(?!(?<=\\))\$/g); if (lastUnescapedDollarSignIndex === -1) return envValue; const rightMostGroup = envValue.slice(lastUnescapedDollarSignIndex); const matchGroup = /((?!(?<=\\))\${?([\w]+)(?::-([^}\\]*))?}?)/; const match = rightMostGroup.match(matchGroup); if (match != null) { const [, group, variableName, defaultValue] = match; return _interpolate( envValue.replace( group, environment[variableName] || defaultValue || config.parsed[variableName] || "" ), environment, config ); } return envValue; } __name(_interpolate, "_interpolate"); function _resolveEscapeSequences(value) { return value.replace(/\\\$/g, "$"); } __name(_resolveEscapeSequences, "_resolveEscapeSequences"); function expand(config) { const environment = config.ignoreProcessEnv ? {} : process.env; for (const configKey in config.parsed) { const value = Object.prototype.hasOwnProperty.call(environment, configKey) ? environment[configKey] : config.parsed[configKey]; config.parsed[configKey] = _resolveEscapeSequences( _interpolate(value, environment, config) ); } for (const processKey in config.parsed) { environment[processKey] = config.parsed[processKey]; } return config; } __name(expand, "expand"); module2.exports.expand = expand; } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/config.constants.js var require_config_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/config.constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AS_PROVIDER_METHOD_KEY = exports2.VALIDATED_ENV_PROPNAME = exports2.PARTIAL_CONFIGURATION_PROPNAME = exports2.PARTIAL_CONFIGURATION_KEY = exports2.VALIDATED_ENV_LOADER = exports2.CONFIGURATION_LOADER = exports2.CONFIGURATION_TOKEN = exports2.CONFIGURATION_SERVICE_TOKEN = void 0; exports2.CONFIGURATION_SERVICE_TOKEN = Symbol("CONFIG_SERVICE"); exports2.CONFIGURATION_TOKEN = "CONFIGURATION_TOKEN"; exports2.CONFIGURATION_LOADER = "CONFIGURATION_LOADER"; exports2.VALIDATED_ENV_LOADER = "VALIDATED_ENV_LOADER"; exports2.PARTIAL_CONFIGURATION_KEY = "PARTIAL_CONFIGURATION_KEY"; exports2.PARTIAL_CONFIGURATION_PROPNAME = "KEY"; exports2.VALIDATED_ENV_PROPNAME = "_PROCESS_ENV_VALIDATED"; exports2.AS_PROVIDER_METHOD_KEY = "asProvider"; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArray.js var require_isArray = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArray.js"(exports2, module2) { var isArray = Array.isArray; module2.exports = isArray; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_freeGlobal.js var require_freeGlobal = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_freeGlobal.js"(exports2, module2) { var freeGlobal = typeof global == "object" && global && global.Object === Object && global; module2.exports = freeGlobal; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_root.js var require_root = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_root.js"(exports2, module2) { var freeGlobal = require_freeGlobal(); var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = freeGlobal || freeSelf || Function("return this")(); module2.exports = root; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Symbol.js var require_Symbol = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Symbol.js"(exports2, module2) { var root = require_root(); var Symbol2 = root.Symbol; module2.exports = Symbol2; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getRawTag.js var require_getRawTag = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getRawTag.js"(exports2, module2) { var Symbol2 = require_Symbol(); var objectProto = Object.prototype; var hasOwnProperty = objectProto.hasOwnProperty; var nativeObjectToString = objectProto.toString; var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0; function getRawTag(value) { var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag]; try { value[symToStringTag] = void 0; var unmasked = true; } catch (e) { } var result = nativeObjectToString.call(value); if (unmasked) { if (isOwn) { value[symToStringTag] = tag; } else { delete value[symToStringTag]; } } return result; } __name(getRawTag, "getRawTag"); module2.exports = getRawTag; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_objectToString.js var require_objectToString = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_objectToString.js"(exports2, module2) { var objectProto = Object.prototype; var nativeObjectToString = objectProto.toString; function objectToString(value) { return nativeObjectToString.call(value); } __name(objectToString, "objectToString"); module2.exports = objectToString; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetTag.js var require_baseGetTag = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetTag.js"(exports2, module2) { var Symbol2 = require_Symbol(); var getRawTag = require_getRawTag(); var objectToString = require_objectToString(); var nullTag = "[object Null]"; var undefinedTag = "[object Undefined]"; var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0; function baseGetTag(value) { if (value == null) { return value === void 0 ? undefinedTag : nullTag; } return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value); } __name(baseGetTag, "baseGetTag"); module2.exports = baseGetTag; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObjectLike.js var require_isObjectLike = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObjectLike.js"(exports2, module2) { function isObjectLike(value) { return value != null && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); module2.exports = isObjectLike; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isSymbol.js var require_isSymbol = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isSymbol.js"(exports2, module2) { var baseGetTag = require_baseGetTag(); var isObjectLike = require_isObjectLike(); var symbolTag = "[object Symbol]"; function isSymbol(value) { return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag; } __name(isSymbol, "isSymbol"); module2.exports = isSymbol; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKey.js var require_isKey = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKey.js"(exports2, module2) { var isArray = require_isArray(); var isSymbol = require_isSymbol(); var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/; var reIsPlainProp = /^\w*$/; function isKey(value, object) { if (isArray(value)) { return false; } var type = typeof value; if (type == "number" || type == "symbol" || type == "boolean" || value == null || isSymbol(value)) { return true; } return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || object != null && value in Object(object); } __name(isKey, "isKey"); module2.exports = isKey; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObject.js var require_isObject2 = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObject.js"(exports2, module2) { function isObject2(value) { var type = typeof value; return value != null && (type == "object" || type == "function"); } __name(isObject2, "isObject"); module2.exports = isObject2; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isFunction.js var require_isFunction2 = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isFunction.js"(exports2, module2) { var baseGetTag = require_baseGetTag(); var isObject2 = require_isObject2(); var asyncTag = "[object AsyncFunction]"; var funcTag = "[object Function]"; var genTag = "[object GeneratorFunction]"; var proxyTag = "[object Proxy]"; function isFunction(value) { if (!isObject2(value)) { return false; } var tag = baseGetTag(value); return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; } __name(isFunction, "isFunction"); module2.exports = isFunction; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_coreJsData.js var require_coreJsData = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_coreJsData.js"(exports2, module2) { var root = require_root(); var coreJsData = root["__core-js_shared__"]; module2.exports = coreJsData; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isMasked.js var require_isMasked = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isMasked.js"(exports2, module2) { var coreJsData = require_coreJsData(); var maskSrcKey = (function() { var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); return uid ? "Symbol(src)_1." + uid : ""; })(); function isMasked(func) { return !!maskSrcKey && maskSrcKey in func; } __name(isMasked, "isMasked"); module2.exports = isMasked; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toSource.js var require_toSource = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toSource.js"(exports2, module2) { var funcProto = Function.prototype; var funcToString = funcProto.toString; function toSource(func) { if (func != null) { try { return funcToString.call(func); } catch (e) { } try { return func + ""; } catch (e) { } } return ""; } __name(toSource, "toSource"); module2.exports = toSource; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNative.js var require_baseIsNative = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsNative.js"(exports2, module2) { var isFunction = require_isFunction2(); var isMasked = require_isMasked(); var isObject2 = require_isObject2(); var toSource = require_toSource(); var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; var reIsHostCtor = /^\[object .+?Constructor\]$/; var funcProto = Function.prototype; var objectProto = Object.prototype; var funcToString = funcProto.toString; var hasOwnProperty = objectProto.hasOwnProperty; var reIsNative = RegExp( "^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" ); function baseIsNative(value) { if (!isObject2(value) || isMasked(value)) { return false; } var pattern = isFunction(value) ? reIsNative : reIsHostCtor; return pattern.test(toSource(value)); } __name(baseIsNative, "baseIsNative"); module2.exports = baseIsNative; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getValue.js var require_getValue = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getValue.js"(exports2, module2) { function getValue(object, key) { return object == null ? void 0 : object[key]; } __name(getValue, "getValue"); module2.exports = getValue; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getNative.js var require_getNative = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getNative.js"(exports2, module2) { var baseIsNative = require_baseIsNative(); var getValue = require_getValue(); function getNative(object, key) { var value = getValue(object, key); return baseIsNative(value) ? value : void 0; } __name(getNative, "getNative"); module2.exports = getNative; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeCreate.js var require_nativeCreate = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_nativeCreate.js"(exports2, module2) { var getNative = require_getNative(); var nativeCreate = getNative(Object, "create"); module2.exports = nativeCreate; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashClear.js var require_hashClear = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashClear.js"(exports2, module2) { var nativeCreate = require_nativeCreate(); function hashClear() { this.__data__ = nativeCreate ? nativeCreate(null) : {}; this.size = 0; } __name(hashClear, "hashClear"); module2.exports = hashClear; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashDelete.js var require_hashDelete = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashDelete.js"(exports2, module2) { function hashDelete(key) { var result = this.has(key) && delete this.__data__[key]; this.size -= result ? 1 : 0; return result; } __name(hashDelete, "hashDelete"); module2.exports = hashDelete; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashGet.js var require_hashGet = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashGet.js"(exports2, module2) { var nativeCreate = require_nativeCreate(); var HASH_UNDEFINED = "__lodash_hash_undefined__"; var objectProto = Object.prototype; var hasOwnProperty = objectProto.hasOwnProperty; function hashGet(key) { var data = this.__data__; if (nativeCreate) { var result = data[key]; return result === HASH_UNDEFINED ? void 0 : result; } return hasOwnProperty.call(data, key) ? data[key] : void 0; } __name(hashGet, "hashGet"); module2.exports = hashGet; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashHas.js var require_hashHas = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashHas.js"(exports2, module2) { var nativeCreate = require_nativeCreate(); var objectProto = Object.prototype; var hasOwnProperty = objectProto.hasOwnProperty; function hashHas(key) { var data = this.__data__; return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key); } __name(hashHas, "hashHas"); module2.exports = hashHas; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashSet.js var require_hashSet = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hashSet.js"(exports2, module2) { var nativeCreate = require_nativeCreate(); var HASH_UNDEFINED = "__lodash_hash_undefined__"; function hashSet(key, value) { var data = this.__data__; this.size += this.has(key) ? 0 : 1; data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value; return this; } __name(hashSet, "hashSet"); module2.exports = hashSet; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Hash.js var require_Hash = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Hash.js"(exports2, module2) { var hashClear = require_hashClear(); var hashDelete = require_hashDelete(); var hashGet = require_hashGet(); var hashHas = require_hashHas(); var hashSet = require_hashSet(); function Hash(entries) { var index = -1, length = entries == null ? 0 : entries.length; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(Hash, "Hash"); Hash.prototype.clear = hashClear; Hash.prototype["delete"] = hashDelete; Hash.prototype.get = hashGet; Hash.prototype.has = hashHas; Hash.prototype.set = hashSet; module2.exports = Hash; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheClear.js var require_listCacheClear = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheClear.js"(exports2, module2) { function listCacheClear() { this.__data__ = []; this.size = 0; } __name(listCacheClear, "listCacheClear"); module2.exports = listCacheClear; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/eq.js var require_eq = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/eq.js"(exports2, module2) { function eq(value, other) { return value === other || value !== value && other !== other; } __name(eq, "eq"); module2.exports = eq; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assocIndexOf.js var require_assocIndexOf = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assocIndexOf.js"(exports2, module2) { var eq = require_eq(); function assocIndexOf(array, key) { var length = array.length; while (length--) { if (eq(array[length][0], key)) { return length; } } return -1; } __name(assocIndexOf, "assocIndexOf"); module2.exports = assocIndexOf; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheDelete.js var require_listCacheDelete = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheDelete.js"(exports2, module2) { var assocIndexOf = require_assocIndexOf(); var arrayProto = Array.prototype; var splice = arrayProto.splice; function listCacheDelete(key) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { return false; } var lastIndex = data.length - 1; if (index == lastIndex) { data.pop(); } else { splice.call(data, index, 1); } --this.size; return true; } __name(listCacheDelete, "listCacheDelete"); module2.exports = listCacheDelete; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheGet.js var require_listCacheGet = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheGet.js"(exports2, module2) { var assocIndexOf = require_assocIndexOf(); function listCacheGet(key) { var data = this.__data__, index = assocIndexOf(data, key); return index < 0 ? void 0 : data[index][1]; } __name(listCacheGet, "listCacheGet"); module2.exports = listCacheGet; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheHas.js var require_listCacheHas = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheHas.js"(exports2, module2) { var assocIndexOf = require_assocIndexOf(); function listCacheHas(key) { return assocIndexOf(this.__data__, key) > -1; } __name(listCacheHas, "listCacheHas"); module2.exports = listCacheHas; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheSet.js var require_listCacheSet = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_listCacheSet.js"(exports2, module2) { var assocIndexOf = require_assocIndexOf(); function listCacheSet(key, value) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { ++this.size; data.push([key, value]); } else { data[index][1] = value; } return this; } __name(listCacheSet, "listCacheSet"); module2.exports = listCacheSet; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_ListCache.js var require_ListCache = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_ListCache.js"(exports2, module2) { var listCacheClear = require_listCacheClear(); var listCacheDelete = require_listCacheDelete(); var listCacheGet = require_listCacheGet(); var listCacheHas = require_listCacheHas(); var listCacheSet = require_listCacheSet(); function ListCache(entries) { var index = -1, length = entries == null ? 0 : entries.length; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(ListCache, "ListCache"); ListCache.prototype.clear = listCacheClear; ListCache.prototype["delete"] = listCacheDelete; ListCache.prototype.get = listCacheGet; ListCache.prototype.has = listCacheHas; ListCache.prototype.set = listCacheSet; module2.exports = ListCache; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Map.js var require_Map = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Map.js"(exports2, module2) { var getNative = require_getNative(); var root = require_root(); var Map2 = getNative(root, "Map"); module2.exports = Map2; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheClear.js var require_mapCacheClear = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheClear.js"(exports2, module2) { var Hash = require_Hash(); var ListCache = require_ListCache(); var Map2 = require_Map(); function mapCacheClear() { this.size = 0; this.__data__ = { "hash": new Hash(), "map": new (Map2 || ListCache)(), "string": new Hash() }; } __name(mapCacheClear, "mapCacheClear"); module2.exports = mapCacheClear; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKeyable.js var require_isKeyable = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isKeyable.js"(exports2, module2) { function isKeyable(value) { var type = typeof value; return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null; } __name(isKeyable, "isKeyable"); module2.exports = isKeyable; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getMapData.js var require_getMapData = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getMapData.js"(exports2, module2) { var isKeyable = require_isKeyable(); function getMapData(map, key) { var data = map.__data__; return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; } __name(getMapData, "getMapData"); module2.exports = getMapData; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheDelete.js var require_mapCacheDelete = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheDelete.js"(exports2, module2) { var getMapData = require_getMapData(); function mapCacheDelete(key) { var result = getMapData(this, key)["delete"](key); this.size -= result ? 1 : 0; return result; } __name(mapCacheDelete, "mapCacheDelete"); module2.exports = mapCacheDelete; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheGet.js var require_mapCacheGet = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheGet.js"(exports2, module2) { var getMapData = require_getMapData(); function mapCacheGet(key) { return getMapData(this, key).get(key); } __name(mapCacheGet, "mapCacheGet"); module2.exports = mapCacheGet; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheHas.js var require_mapCacheHas = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheHas.js"(exports2, module2) { var getMapData = require_getMapData(); function mapCacheHas(key) { return getMapData(this, key).has(key); } __name(mapCacheHas, "mapCacheHas"); module2.exports = mapCacheHas; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheSet.js var require_mapCacheSet = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_mapCacheSet.js"(exports2, module2) { var getMapData = require_getMapData(); function mapCacheSet(key, value) { var data = getMapData(this, key), size = data.size; data.set(key, value); this.size += data.size == size ? 0 : 1; return this; } __name(mapCacheSet, "mapCacheSet"); module2.exports = mapCacheSet; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_MapCache.js var require_MapCache = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_MapCache.js"(exports2, module2) { var mapCacheClear = require_mapCacheClear(); var mapCacheDelete = require_mapCacheDelete(); var mapCacheGet = require_mapCacheGet(); var mapCacheHas = require_mapCacheHas(); var mapCacheSet = require_mapCacheSet(); function MapCache(entries) { var index = -1, length = entries == null ? 0 : entries.length; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(MapCache, "MapCache"); MapCache.prototype.clear = mapCacheClear; MapCache.prototype["delete"] = mapCacheDelete; MapCache.prototype.get = mapCacheGet; MapCache.prototype.has = mapCacheHas; MapCache.prototype.set = mapCacheSet; module2.exports = MapCache; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/memoize.js var require_memoize = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/memoize.js"(exports2, module2) { var MapCache = require_MapCache(); var FUNC_ERROR_TEXT = "Expected a function"; function memoize(func, resolver) { if (typeof func != "function" || resolver != null && typeof resolver != "function") { throw new TypeError(FUNC_ERROR_TEXT); } var memoized = /* @__PURE__ */ __name(function() { var args = arguments, key = resolver ? resolver.apply(this, args) : args[0], cache = memoized.cache; if (cache.has(key)) { return cache.get(key); } var result = func.apply(this, args); memoized.cache = cache.set(key, result) || cache; return result; }, "memoized"); memoized.cache = new (memoize.Cache || MapCache)(); return memoized; } __name(memoize, "memoize"); memoize.Cache = MapCache; module2.exports = memoize; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_memoizeCapped.js var require_memoizeCapped = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_memoizeCapped.js"(exports2, module2) { var memoize = require_memoize(); var MAX_MEMOIZE_SIZE = 500; function memoizeCapped(func) { var result = memoize(func, function(key) { if (cache.size === MAX_MEMOIZE_SIZE) { cache.clear(); } return key; }); var cache = result.cache; return result; } __name(memoizeCapped, "memoizeCapped"); module2.exports = memoizeCapped; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringToPath.js var require_stringToPath = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_stringToPath.js"(exports2, module2) { var memoizeCapped = require_memoizeCapped(); var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; var reEscapeChar = /\\(\\)?/g; var stringToPath = memoizeCapped(function(string) { var result = []; if (string.charCodeAt(0) === 46) { result.push(""); } string.replace(rePropName, function(match, number, quote, subString) { result.push(quote ? subString.replace(reEscapeChar, "$1") : number || match); }); return result; }); module2.exports = stringToPath; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayMap.js var require_arrayMap = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_arrayMap.js"(exports2, module2) { function arrayMap(array, iteratee) { var index = -1, length = array == null ? 0 : array.length, result = Array(length); while (++index < length) { result[index] = iteratee(array[index], index, array); } return result; } __name(arrayMap, "arrayMap"); module2.exports = arrayMap; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseToString.js var require_baseToString = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseToString.js"(exports2, module2) { var Symbol2 = require_Symbol(); var arrayMap = require_arrayMap(); var isArray = require_isArray(); var isSymbol = require_isSymbol(); var INFINITY = 1 / 0; var symbolProto = Symbol2 ? Symbol2.prototype : void 0; var symbolToString = symbolProto ? symbolProto.toString : void 0; function baseToString(value) { if (typeof value == "string") { return value; } if (isArray(value)) { return arrayMap(value, baseToString) + ""; } if (isSymbol(value)) { return symbolToString ? symbolToString.call(value) : ""; } var result = value + ""; return result == "0" && 1 / value == -INFINITY ? "-0" : result; } __name(baseToString, "baseToString"); module2.exports = baseToString; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toString.js var require_toString2 = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toString.js"(exports2, module2) { var baseToString = require_baseToString(); function toString2(value) { return value == null ? "" : baseToString(value); } __name(toString2, "toString"); module2.exports = toString2; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castPath.js var require_castPath = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_castPath.js"(exports2, module2) { var isArray = require_isArray(); var isKey = require_isKey(); var stringToPath = require_stringToPath(); var toString2 = require_toString2(); function castPath(value, object) { if (isArray(value)) { return value; } return isKey(value, object) ? [value] : stringToPath(toString2(value)); } __name(castPath, "castPath"); module2.exports = castPath; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toKey.js var require_toKey = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_toKey.js"(exports2, module2) { var isSymbol = require_isSymbol(); var INFINITY = 1 / 0; function toKey(value) { if (typeof value == "string" || isSymbol(value)) { return value; } var result = value + ""; return result == "0" && 1 / value == -INFINITY ? "-0" : result; } __name(toKey, "toKey"); module2.exports = toKey; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGet.js var require_baseGet = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGet.js"(exports2, module2) { var castPath = require_castPath(); var toKey = require_toKey(); function baseGet(object, path) { path = castPath(path, object); var index = 0, length = path.length; while (object != null && index < length) { object = object[toKey(path[index++])]; } return index && index == length ? object : void 0; } __name(baseGet, "baseGet"); module2.exports = baseGet; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/get.js var require_get = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/get.js"(exports2, module2) { var baseGet = require_baseGet(); function get(object, path, defaultValue) { var result = object == null ? void 0 : baseGet(object, path); return result === void 0 ? defaultValue : result; } __name(get, "get"); module2.exports = get; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseHas.js var require_baseHas = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseHas.js"(exports2, module2) { var objectProto = Object.prototype; var hasOwnProperty = objectProto.hasOwnProperty; function baseHas(object, key) { return object != null && hasOwnProperty.call(object, key); } __name(baseHas, "baseHas"); module2.exports = baseHas; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsArguments.js var require_baseIsArguments = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseIsArguments.js"(exports2, module2) { var baseGetTag = require_baseGetTag(); var isObjectLike = require_isObjectLike(); var argsTag = "[object Arguments]"; function baseIsArguments(value) { return isObjectLike(value) && baseGetTag(value) == argsTag; } __name(baseIsArguments, "baseIsArguments"); module2.exports = baseIsArguments; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArguments.js var require_isArguments = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isArguments.js"(exports2, module2) { var baseIsArguments = require_baseIsArguments(); var isObjectLike = require_isObjectLike(); var objectProto = Object.prototype; var hasOwnProperty = objectProto.hasOwnProperty; var propertyIsEnumerable = objectProto.propertyIsEnumerable; var isArguments = baseIsArguments(/* @__PURE__ */ (function() { return arguments; })()) ? baseIsArguments : function(value) { return isObjectLike(value) && hasOwnProperty.call(value, "callee") && !propertyIsEnumerable.call(value, "callee"); }; module2.exports = isArguments; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isIndex.js var require_isIndex = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_isIndex.js"(exports2, module2) { var MAX_SAFE_INTEGER = 9007199254740991; var reIsUint = /^(?:0|[1-9]\d*)$/; function isIndex(value, length) { var type = typeof value; length = length == null ? MAX_SAFE_INTEGER : length; return !!length && (type == "number" || type != "symbol" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); } __name(isIndex, "isIndex"); module2.exports = isIndex; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isLength.js var require_isLength2 = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isLength.js"(exports2, module2) { var MAX_SAFE_INTEGER = 9007199254740991; function isLength(value) { return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; } __name(isLength, "isLength"); module2.exports = isLength; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hasPath.js var require_hasPath = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_hasPath.js"(exports2, module2) { var castPath = require_castPath(); var isArguments = require_isArguments(); var isArray = require_isArray(); var isIndex = require_isIndex(); var isLength = require_isLength2(); var toKey = require_toKey(); function hasPath(object, path, hasFunc) { path = castPath(path, object); var index = -1, length = path.length, result = false; while (++index < length) { var key = toKey(path[index]); if (!(result = object != null && hasFunc(object, key))) { break; } object = object[key]; } if (result || ++index != length) { return result; } length = object == null ? 0 : object.length; return !!length && isLength(length) && isIndex(key, length) && (isArray(object) || isArguments(object)); } __name(hasPath, "hasPath"); module2.exports = hasPath; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/has.js var require_has = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/has.js"(exports2, module2) { var baseHas = require_baseHas(); var hasPath = require_hasPath(); function has(object, path) { return object != null && hasPath(object, path, baseHas); } __name(has, "has"); module2.exports = has; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_defineProperty.js var require_defineProperty = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_defineProperty.js"(exports2, module2) { var getNative = require_getNative(); var defineProperty = (function() { try { var func = getNative(Object, "defineProperty"); func({}, "", {}); return func; } catch (e) { } })(); module2.exports = defineProperty; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseAssignValue.js var require_baseAssignValue = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseAssignValue.js"(exports2, module2) { var defineProperty = require_defineProperty(); function baseAssignValue(object, key, value) { if (key == "__proto__" && defineProperty) { defineProperty(object, key, { "configurable": true, "enumerable": true, "value": value, "writable": true }); } else { object[key] = value; } } __name(baseAssignValue, "baseAssignValue"); module2.exports = baseAssignValue; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assignValue.js var require_assignValue = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_assignValue.js"(exports2, module2) { var baseAssignValue = require_baseAssignValue(); var eq = require_eq(); var objectProto = Object.prototype; var hasOwnProperty = objectProto.hasOwnProperty; function assignValue(object, key, value) { var objValue = object[key]; if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) { baseAssignValue(object, key, value); } } __name(assignValue, "assignValue"); module2.exports = assignValue; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseSet.js var require_baseSet = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseSet.js"(exports2, module2) { var assignValue = require_assignValue(); var castPath = require_castPath(); var isIndex = require_isIndex(); var isObject2 = require_isObject2(); var toKey = require_toKey(); function baseSet(object, path, value, customizer) { if (!isObject2(object)) { return object; } path = castPath(path, object); var index = -1, length = path.length, lastIndex = length - 1, nested = object; while (nested != null && ++index < length) { var key = toKey(path[index]), newValue = value; if (key === "__proto__" || key === "constructor" || key === "prototype") { return object; } if (index != lastIndex) { var objValue = nested[key]; newValue = customizer ? customizer(objValue, key, nested) : void 0; if (newValue === void 0) { newValue = isObject2(objValue) ? objValue : isIndex(path[index + 1]) ? [] : {}; } } assignValue(nested, key, newValue); nested = nested[key]; } return object; } __name(baseSet, "baseSet"); module2.exports = baseSet; } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/set.js var require_set = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/set.js"(exports2, module2) { var baseSet = require_baseSet(); function set(object, path, value) { return object == null ? object : baseSet(object, path, value); } __name(set, "set"); module2.exports = set; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js var require_performanceTimestampProvider = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.performanceTimestampProvider = void 0; exports2.performanceTimestampProvider = { now: /* @__PURE__ */ __name(function() { return (exports2.performanceTimestampProvider.delegate || performance).now(); }, "now"), delegate: void 0 }; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js var require_animationFrameProvider = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.animationFrameProvider = void 0; var Subscription_1 = require_Subscription(); exports2.animationFrameProvider = { schedule: /* @__PURE__ */ __name(function(callback) { var request = requestAnimationFrame; var cancel = cancelAnimationFrame; var delegate = exports2.animationFrameProvider.delegate; if (delegate) { request = delegate.requestAnimationFrame; cancel = delegate.cancelAnimationFrame; } var handle = request(function(timestamp) { cancel = void 0; callback(timestamp); }); return new Subscription_1.Subscription(function() { return cancel === null || cancel === void 0 ? void 0 : cancel(handle); }); }, "schedule"), requestAnimationFrame: /* @__PURE__ */ __name(function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var delegate = exports2.animationFrameProvider.delegate; return ((delegate === null || delegate === void 0 ? void 0 : delegate.requestAnimationFrame) || requestAnimationFrame).apply(void 0, __spreadArray2([], __read2(args))); }, "requestAnimationFrame"), cancelAnimationFrame: /* @__PURE__ */ __name(function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var delegate = exports2.animationFrameProvider.delegate; return ((delegate === null || delegate === void 0 ? void 0 : delegate.cancelAnimationFrame) || cancelAnimationFrame).apply(void 0, __spreadArray2([], __read2(args))); }, "cancelAnimationFrame"), delegate: void 0 }; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js var require_animationFrames = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.animationFrames = void 0; var Observable_1 = require_Observable(); var performanceTimestampProvider_1 = require_performanceTimestampProvider(); var animationFrameProvider_1 = require_animationFrameProvider(); function animationFrames(timestampProvider) { return timestampProvider ? animationFramesFactory(timestampProvider) : DEFAULT_ANIMATION_FRAMES; } __name(animationFrames, "animationFrames"); exports2.animationFrames = animationFrames; function animationFramesFactory(timestampProvider) { return new Observable_1.Observable(function(subscriber) { var provider = timestampProvider || performanceTimestampProvider_1.performanceTimestampProvider; var start = provider.now(); var id = 0; var run = /* @__PURE__ */ __name(function() { if (!subscriber.closed) { id = animationFrameProvider_1.animationFrameProvider.requestAnimationFrame(function(timestamp) { id = 0; var now = provider.now(); subscriber.next({ timestamp: timestampProvider ? now : timestamp, elapsed: now - start }); run(); }); } }, "run"); run(); return function() { if (id) { animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id); } }; }); } __name(animationFramesFactory, "animationFramesFactory"); var DEFAULT_ANIMATION_FRAMES = animationFramesFactory(); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/Immediate.js var require_Immediate = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/Immediate.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.TestTools = exports2.Immediate = void 0; var nextHandle = 1; var resolved; var activeHandles = {}; function findAndClearHandle(handle) { if (handle in activeHandles) { delete activeHandles[handle]; return true; } return false; } __name(findAndClearHandle, "findAndClearHandle"); exports2.Immediate = { setImmediate: /* @__PURE__ */ __name(function(cb) { var handle = nextHandle++; activeHandles[handle] = true; if (!resolved) { resolved = Promise.resolve(); } resolved.then(function() { return findAndClearHandle(handle) && cb(); }); return handle; }, "setImmediate"), clearImmediate: /* @__PURE__ */ __name(function(handle) { findAndClearHandle(handle); }, "clearImmediate") }; exports2.TestTools = { pending: /* @__PURE__ */ __name(function() { return Object.keys(activeHandles).length; }, "pending") }; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js var require_immediateProvider = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.immediateProvider = void 0; var Immediate_1 = require_Immediate(); var setImmediate2 = Immediate_1.Immediate.setImmediate; var clearImmediate = Immediate_1.Immediate.clearImmediate; exports2.immediateProvider = { setImmediate: /* @__PURE__ */ __name(function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var delegate = exports2.immediateProvider.delegate; return ((delegate === null || delegate === void 0 ? void 0 : delegate.setImmediate) || setImmediate2).apply(void 0, __spreadArray2([], __read2(args))); }, "setImmediate"), clearImmediate: /* @__PURE__ */ __name(function(handle) { var delegate = exports2.immediateProvider.delegate; return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearImmediate) || clearImmediate)(handle); }, "clearImmediate"), delegate: void 0 }; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js var require_AsapAction = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AsapAction = void 0; var AsyncAction_1 = require_AsyncAction(); var immediateProvider_1 = require_immediateProvider(); var AsapAction = (function(_super) { __extends2(AsapAction2, _super); function AsapAction2(scheduler, work) { var _this = _super.call(this, scheduler, work) || this; _this.scheduler = scheduler; _this.work = work; return _this; } __name(AsapAction2, "AsapAction"); AsapAction2.prototype.requestAsyncId = function(scheduler, id, delay) { if (delay === void 0) { delay = 0; } if (delay !== null && delay > 0) { return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); } scheduler.actions.push(this); return scheduler._scheduled || (scheduler._scheduled = immediateProvider_1.immediateProvider.setImmediate(scheduler.flush.bind(scheduler, void 0))); }; AsapAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { var _a; if (delay === void 0) { delay = 0; } if (delay != null ? delay > 0 : this.delay > 0) { return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay); } var actions = scheduler.actions; if (id != null && ((_a = actions[actions.length - 1]) === null || _a === void 0 ? void 0 : _a.id) !== id) { immediateProvider_1.immediateProvider.clearImmediate(id); if (scheduler._scheduled === id) { scheduler._scheduled = void 0; } } return void 0; }; return AsapAction2; })(AsyncAction_1.AsyncAction); exports2.AsapAction = AsapAction; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js var require_AsapScheduler = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AsapScheduler = void 0; var AsyncScheduler_1 = require_AsyncScheduler(); var AsapScheduler = (function(_super) { __extends2(AsapScheduler2, _super); function AsapScheduler2() { return _super !== null && _super.apply(this, arguments) || this; } __name(AsapScheduler2, "AsapScheduler"); AsapScheduler2.prototype.flush = function(action) { this._active = true; var flushId = this._scheduled; this._scheduled = void 0; var actions = this.actions; var error; action = action || actions.shift(); do { if (error = action.execute(action.state, action.delay)) { break; } } while ((action = actions[0]) && action.id === flushId && actions.shift()); this._active = false; if (error) { while ((action = actions[0]) && action.id === flushId && actions.shift()) { action.unsubscribe(); } throw error; } }; return AsapScheduler2; })(AsyncScheduler_1.AsyncScheduler); exports2.AsapScheduler = AsapScheduler; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/asap.js var require_asap = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/asap.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.asap = exports2.asapScheduler = void 0; var AsapAction_1 = require_AsapAction(); var AsapScheduler_1 = require_AsapScheduler(); exports2.asapScheduler = new AsapScheduler_1.AsapScheduler(AsapAction_1.AsapAction); exports2.asap = exports2.asapScheduler; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js var require_QueueAction = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QueueAction = void 0; var AsyncAction_1 = require_AsyncAction(); var QueueAction = (function(_super) { __extends2(QueueAction2, _super); function QueueAction2(scheduler, work) { var _this = _super.call(this, scheduler, work) || this; _this.scheduler = scheduler; _this.work = work; return _this; } __name(QueueAction2, "QueueAction"); QueueAction2.prototype.schedule = function(state, delay) { if (delay === void 0) { delay = 0; } if (delay > 0) { return _super.prototype.schedule.call(this, state, delay); } this.delay = delay; this.state = state; this.scheduler.flush(this); return this; }; QueueAction2.prototype.execute = function(state, delay) { return delay > 0 || this.closed ? _super.prototype.execute.call(this, state, delay) : this._execute(state, delay); }; QueueAction2.prototype.requestAsyncId = function(scheduler, id, delay) { if (delay === void 0) { delay = 0; } if (delay != null && delay > 0 || delay == null && this.delay > 0) { return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); } scheduler.flush(this); return 0; }; return QueueAction2; })(AsyncAction_1.AsyncAction); exports2.QueueAction = QueueAction; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js var require_QueueScheduler = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QueueScheduler = void 0; var AsyncScheduler_1 = require_AsyncScheduler(); var QueueScheduler = (function(_super) { __extends2(QueueScheduler2, _super); function QueueScheduler2() { return _super !== null && _super.apply(this, arguments) || this; } __name(QueueScheduler2, "QueueScheduler"); return QueueScheduler2; })(AsyncScheduler_1.AsyncScheduler); exports2.QueueScheduler = QueueScheduler; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/queue.js var require_queue = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/queue.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.queue = exports2.queueScheduler = void 0; var QueueAction_1 = require_QueueAction(); var QueueScheduler_1 = require_QueueScheduler(); exports2.queueScheduler = new QueueScheduler_1.QueueScheduler(QueueAction_1.QueueAction); exports2.queue = exports2.queueScheduler; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js var require_AnimationFrameAction = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AnimationFrameAction = void 0; var AsyncAction_1 = require_AsyncAction(); var animationFrameProvider_1 = require_animationFrameProvider(); var AnimationFrameAction = (function(_super) { __extends2(AnimationFrameAction2, _super); function AnimationFrameAction2(scheduler, work) { var _this = _super.call(this, scheduler, work) || this; _this.scheduler = scheduler; _this.work = work; return _this; } __name(AnimationFrameAction2, "AnimationFrameAction"); AnimationFrameAction2.prototype.requestAsyncId = function(scheduler, id, delay) { if (delay === void 0) { delay = 0; } if (delay !== null && delay > 0) { return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); } scheduler.actions.push(this); return scheduler._scheduled || (scheduler._scheduled = animationFrameProvider_1.animationFrameProvider.requestAnimationFrame(function() { return scheduler.flush(void 0); })); }; AnimationFrameAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { var _a; if (delay === void 0) { delay = 0; } if (delay != null ? delay > 0 : this.delay > 0) { return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay); } var actions = scheduler.actions; if (id != null && id === scheduler._scheduled && ((_a = actions[actions.length - 1]) === null || _a === void 0 ? void 0 : _a.id) !== id) { animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id); scheduler._scheduled = void 0; } return void 0; }; return AnimationFrameAction2; })(AsyncAction_1.AsyncAction); exports2.AnimationFrameAction = AnimationFrameAction; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js var require_AnimationFrameScheduler = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AnimationFrameScheduler = void 0; var AsyncScheduler_1 = require_AsyncScheduler(); var AnimationFrameScheduler = (function(_super) { __extends2(AnimationFrameScheduler2, _super); function AnimationFrameScheduler2() { return _super !== null && _super.apply(this, arguments) || this; } __name(AnimationFrameScheduler2, "AnimationFrameScheduler"); AnimationFrameScheduler2.prototype.flush = function(action) { this._active = true; var flushId; if (action) { flushId = action.id; } else { flushId = this._scheduled; this._scheduled = void 0; } var actions = this.actions; var error; action = action || actions.shift(); do { if (error = action.execute(action.state, action.delay)) { break; } } while ((action = actions[0]) && action.id === flushId && actions.shift()); this._active = false; if (error) { while ((action = actions[0]) && action.id === flushId && actions.shift()) { action.unsubscribe(); } throw error; } }; return AnimationFrameScheduler2; })(AsyncScheduler_1.AsyncScheduler); exports2.AnimationFrameScheduler = AnimationFrameScheduler; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js var require_animationFrame = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.animationFrame = exports2.animationFrameScheduler = void 0; var AnimationFrameAction_1 = require_AnimationFrameAction(); var AnimationFrameScheduler_1 = require_AnimationFrameScheduler(); exports2.animationFrameScheduler = new AnimationFrameScheduler_1.AnimationFrameScheduler(AnimationFrameAction_1.AnimationFrameAction); exports2.animationFrame = exports2.animationFrameScheduler; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js var require_VirtualTimeScheduler = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js"(exports2) { "use strict"; var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() { var extendStatics2 = /* @__PURE__ */ __name(function(d, b) { extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { d2.__proto__ = b2; } || function(d2, b2) { for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p]; }; return extendStatics2(d, b); }, "extendStatics"); return function(d, b) { if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); extendStatics2(d, b); function __() { this.constructor = d; } __name(__, "__"); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports2, "__esModule", { value: true }); exports2.VirtualAction = exports2.VirtualTimeScheduler = void 0; var AsyncAction_1 = require_AsyncAction(); var Subscription_1 = require_Subscription(); var AsyncScheduler_1 = require_AsyncScheduler(); var VirtualTimeScheduler = (function(_super) { __extends2(VirtualTimeScheduler2, _super); function VirtualTimeScheduler2(schedulerActionCtor, maxFrames) { if (schedulerActionCtor === void 0) { schedulerActionCtor = VirtualAction; } if (maxFrames === void 0) { maxFrames = Infinity; } var _this = _super.call(this, schedulerActionCtor, function() { return _this.frame; }) || this; _this.maxFrames = maxFrames; _this.frame = 0; _this.index = -1; return _this; } __name(VirtualTimeScheduler2, "VirtualTimeScheduler"); VirtualTimeScheduler2.prototype.flush = function() { var _a = this, actions = _a.actions, maxFrames = _a.maxFrames; var error; var action; while ((action = actions[0]) && action.delay <= maxFrames) { actions.shift(); this.frame = action.delay; if (error = action.execute(action.state, action.delay)) { break; } } if (error) { while (action = actions.shift()) { action.unsubscribe(); } throw error; } }; VirtualTimeScheduler2.frameTimeFactor = 10; return VirtualTimeScheduler2; })(AsyncScheduler_1.AsyncScheduler); exports2.VirtualTimeScheduler = VirtualTimeScheduler; var VirtualAction = (function(_super) { __extends2(VirtualAction2, _super); function VirtualAction2(scheduler, work, index) { if (index === void 0) { index = scheduler.index += 1; } var _this = _super.call(this, scheduler, work) || this; _this.scheduler = scheduler; _this.work = work; _this.index = index; _this.active = true; _this.index = scheduler.index = index; return _this; } __name(VirtualAction2, "VirtualAction"); VirtualAction2.prototype.schedule = function(state, delay) { if (delay === void 0) { delay = 0; } if (Number.isFinite(delay)) { if (!this.id) { return _super.prototype.schedule.call(this, state, delay); } this.active = false; var action = new VirtualAction2(this.scheduler, this.work); this.add(action); return action.schedule(state, delay); } else { return Subscription_1.Subscription.EMPTY; } }; VirtualAction2.prototype.requestAsyncId = function(scheduler, id, delay) { if (delay === void 0) { delay = 0; } this.delay = scheduler.frame + delay; var actions = scheduler.actions; actions.push(this); actions.sort(VirtualAction2.sortActions); return 1; }; VirtualAction2.prototype.recycleAsyncId = function(scheduler, id, delay) { if (delay === void 0) { delay = 0; } return void 0; }; VirtualAction2.prototype._execute = function(state, delay) { if (this.active === true) { return _super.prototype._execute.call(this, state, delay); } }; VirtualAction2.sortActions = function(a, b) { if (a.delay === b.delay) { if (a.index === b.index) { return 0; } else if (a.index > b.index) { return 1; } else { return -1; } } else if (a.delay > b.delay) { return 1; } else { return -1; } }; return VirtualAction2; })(AsyncAction_1.AsyncAction); exports2.VirtualAction = VirtualAction; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isObservable.js var require_isObservable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/util/isObservable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isObservable = void 0; var Observable_1 = require_Observable(); var isFunction_1 = require_isFunction(); function isObservable(obj2) { return !!obj2 && (obj2 instanceof Observable_1.Observable || isFunction_1.isFunction(obj2.lift) && isFunction_1.isFunction(obj2.subscribe)); } __name(isObservable, "isObservable"); exports2.isObservable = isObservable; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/lastValueFrom.js var require_lastValueFrom = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/lastValueFrom.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.lastValueFrom = void 0; var EmptyError_1 = require_EmptyError(); function lastValueFrom(source, config) { var hasConfig = typeof config === "object"; return new Promise(function(resolve, reject) { var _hasValue = false; var _value; source.subscribe({ next: /* @__PURE__ */ __name(function(value) { _value = value; _hasValue = true; }, "next"), error: reject, complete: /* @__PURE__ */ __name(function() { if (_hasValue) { resolve(_value); } else if (hasConfig) { resolve(config.defaultValue); } else { reject(new EmptyError_1.EmptyError()); } }, "complete") }); }); } __name(lastValueFrom, "lastValueFrom"); exports2.lastValueFrom = lastValueFrom; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/firstValueFrom.js var require_firstValueFrom = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/firstValueFrom.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.firstValueFrom = void 0; var EmptyError_1 = require_EmptyError(); var Subscriber_1 = require_Subscriber(); function firstValueFrom(source, config) { var hasConfig = typeof config === "object"; return new Promise(function(resolve, reject) { var subscriber = new Subscriber_1.SafeSubscriber({ next: /* @__PURE__ */ __name(function(value) { resolve(value); subscriber.unsubscribe(); }, "next"), error: reject, complete: /* @__PURE__ */ __name(function() { if (hasConfig) { resolve(config.defaultValue); } else { reject(new EmptyError_1.EmptyError()); } }, "complete") }); source.subscribe(subscriber); }); } __name(firstValueFrom, "firstValueFrom"); exports2.firstValueFrom = firstValueFrom; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js var require_bindCallbackInternals = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from) { for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) to[j] = from[i]; return to; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.bindCallbackInternals = void 0; var isScheduler_1 = require_isScheduler(); var Observable_1 = require_Observable(); var subscribeOn_1 = require_subscribeOn(); var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); var observeOn_1 = require_observeOn(); var AsyncSubject_1 = require_AsyncSubject(); function bindCallbackInternals(isNodeStyle, callbackFunc, resultSelector, scheduler) { if (resultSelector) { if (isScheduler_1.isScheduler(resultSelector)) { scheduler = resultSelector; } else { return function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } return bindCallbackInternals(isNodeStyle, callbackFunc, scheduler).apply(this, args).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); }; } } if (scheduler) { return function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } return bindCallbackInternals(isNodeStyle, callbackFunc).apply(this, args).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler)); }; } return function() { var _this = this; var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var subject = new AsyncSubject_1.AsyncSubject(); var uninitialized = true; return new Observable_1.Observable(function(subscriber) { var subs = subject.subscribe(subscriber); if (uninitialized) { uninitialized = false; var isAsync_1 = false; var isComplete_1 = false; callbackFunc.apply(_this, __spreadArray2(__spreadArray2([], __read2(args)), [ function() { var results = []; for (var _i2 = 0; _i2 < arguments.length; _i2++) { results[_i2] = arguments[_i2]; } if (isNodeStyle) { var err = results.shift(); if (err != null) { subject.error(err); return; } } subject.next(1 < results.length ? results : results[0]); isComplete_1 = true; if (isAsync_1) { subject.complete(); } } ])); if (isComplete_1) { subject.complete(); } isAsync_1 = true; } return subs; }); }; } __name(bindCallbackInternals, "bindCallbackInternals"); exports2.bindCallbackInternals = bindCallbackInternals; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js var require_bindCallback = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.bindCallback = void 0; var bindCallbackInternals_1 = require_bindCallbackInternals(); function bindCallback(callbackFunc, resultSelector, scheduler) { return bindCallbackInternals_1.bindCallbackInternals(false, callbackFunc, resultSelector, scheduler); } __name(bindCallback, "bindCallback"); exports2.bindCallback = bindCallback; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js var require_bindNodeCallback = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.bindNodeCallback = void 0; var bindCallbackInternals_1 = require_bindCallbackInternals(); function bindNodeCallback(callbackFunc, resultSelector, scheduler) { return bindCallbackInternals_1.bindCallbackInternals(true, callbackFunc, resultSelector, scheduler); } __name(bindNodeCallback, "bindNodeCallback"); exports2.bindNodeCallback = bindNodeCallback; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/defer.js var require_defer = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/defer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defer = void 0; var Observable_1 = require_Observable(); var innerFrom_1 = require_innerFrom(); function defer(observableFactory) { return new Observable_1.Observable(function(subscriber) { innerFrom_1.innerFrom(observableFactory()).subscribe(subscriber); }); } __name(defer, "defer"); exports2.defer = defer; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/connectable.js var require_connectable = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/connectable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.connectable = void 0; var Subject_1 = require_Subject(); var Observable_1 = require_Observable(); var defer_1 = require_defer(); var DEFAULT_CONFIG = { connector: /* @__PURE__ */ __name(function() { return new Subject_1.Subject(); }, "connector"), resetOnDisconnect: true }; function connectable(source, config) { if (config === void 0) { config = DEFAULT_CONFIG; } var connection = null; var connector = config.connector, _a = config.resetOnDisconnect, resetOnDisconnect = _a === void 0 ? true : _a; var subject = connector(); var result = new Observable_1.Observable(function(subscriber) { return subject.subscribe(subscriber); }); result.connect = function() { if (!connection || connection.closed) { connection = defer_1.defer(function() { return source; }).subscribe(subject); if (resetOnDisconnect) { connection.add(function() { return subject = connector(); }); } } return connection; }; return result; } __name(connectable, "connectable"); exports2.connectable = connectable; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js var require_forkJoin = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.forkJoin = void 0; var Observable_1 = require_Observable(); var argsArgArrayOrObject_1 = require_argsArgArrayOrObject(); var innerFrom_1 = require_innerFrom(); var args_1 = require_args(); var OperatorSubscriber_1 = require_OperatorSubscriber(); var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); var createObject_1 = require_createObject(); function forkJoin() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var resultSelector = args_1.popResultSelector(args); var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args), sources = _a.args, keys = _a.keys; var result = new Observable_1.Observable(function(subscriber) { var length = sources.length; if (!length) { subscriber.complete(); return; } var values = new Array(length); var remainingCompletions = length; var remainingEmissions = length; var _loop_1 = /* @__PURE__ */ __name(function(sourceIndex2) { var hasValue = false; innerFrom_1.innerFrom(sources[sourceIndex2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) { if (!hasValue) { hasValue = true; remainingEmissions--; } values[sourceIndex2] = value; }, function() { return remainingCompletions--; }, void 0, function() { if (!remainingCompletions || !hasValue) { if (!remainingEmissions) { subscriber.next(keys ? createObject_1.createObject(keys, values) : values); } subscriber.complete(); } })); }, "_loop_1"); for (var sourceIndex = 0; sourceIndex < length; sourceIndex++) { _loop_1(sourceIndex); } }); return resultSelector ? result.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result; } __name(forkJoin, "forkJoin"); exports2.forkJoin = forkJoin; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js var require_fromEvent = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js"(exports2) { "use strict"; var __read2 = exports2 && exports2.__read || function(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.fromEvent = void 0; var innerFrom_1 = require_innerFrom(); var Observable_1 = require_Observable(); var mergeMap_1 = require_mergeMap(); var isArrayLike_1 = require_isArrayLike(); var isFunction_1 = require_isFunction(); var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); var nodeEventEmitterMethods = ["addListener", "removeListener"]; var eventTargetMethods = ["addEventListener", "removeEventListener"]; var jqueryMethods = ["on", "off"]; function fromEvent(target, eventName, options, resultSelector) { if (isFunction_1.isFunction(options)) { resultSelector = options; options = void 0; } if (resultSelector) { return fromEvent(target, eventName, options).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); } var _a = __read2(isEventTarget(target) ? eventTargetMethods.map(function(methodName) { return function(handler) { return target[methodName](eventName, handler, options); }; }) : isNodeStyleEventEmitter(target) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName)) : isJQueryStyleEventEmitter(target) ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName)) : [], 2), add = _a[0], remove = _a[1]; if (!add) { if (isArrayLike_1.isArrayLike(target)) { return mergeMap_1.mergeMap(function(subTarget) { return fromEvent(subTarget, eventName, options); })(innerFrom_1.innerFrom(target)); } } if (!add) { throw new TypeError("Invalid event target"); } return new Observable_1.Observable(function(subscriber) { var handler = /* @__PURE__ */ __name(function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } return subscriber.next(1 < args.length ? args : args[0]); }, "handler"); add(handler); return function() { return remove(handler); }; }); } __name(fromEvent, "fromEvent"); exports2.fromEvent = fromEvent; function toCommonHandlerRegistry(target, eventName) { return function(methodName) { return function(handler) { return target[methodName](eventName, handler); }; }; } __name(toCommonHandlerRegistry, "toCommonHandlerRegistry"); function isNodeStyleEventEmitter(target) { return isFunction_1.isFunction(target.addListener) && isFunction_1.isFunction(target.removeListener); } __name(isNodeStyleEventEmitter, "isNodeStyleEventEmitter"); function isJQueryStyleEventEmitter(target) { return isFunction_1.isFunction(target.on) && isFunction_1.isFunction(target.off); } __name(isJQueryStyleEventEmitter, "isJQueryStyleEventEmitter"); function isEventTarget(target) { return isFunction_1.isFunction(target.addEventListener) && isFunction_1.isFunction(target.removeEventListener); } __name(isEventTarget, "isEventTarget"); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js var require_fromEventPattern = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.fromEventPattern = void 0; var Observable_1 = require_Observable(); var isFunction_1 = require_isFunction(); var mapOneOrManyArgs_1 = require_mapOneOrManyArgs(); function fromEventPattern(addHandler, removeHandler, resultSelector) { if (resultSelector) { return fromEventPattern(addHandler, removeHandler).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)); } return new Observable_1.Observable(function(subscriber) { var handler = /* @__PURE__ */ __name(function() { var e = []; for (var _i = 0; _i < arguments.length; _i++) { e[_i] = arguments[_i]; } return subscriber.next(e.length === 1 ? e[0] : e); }, "handler"); var retValue = addHandler(handler); return isFunction_1.isFunction(removeHandler) ? function() { return removeHandler(handler, retValue); } : void 0; }); } __name(fromEventPattern, "fromEventPattern"); exports2.fromEventPattern = fromEventPattern; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/generate.js var require_generate = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/generate.js"(exports2) { "use strict"; var __generator2 = exports2 && exports2.__generator || function(thisArg, body) { var _2 = { label: 0, sent: /* @__PURE__ */ __name(function() { if (t[0] & 1) throw t[1]; return t[1]; }, "sent"), trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function(v) { return step([n, v]); }; } __name(verb, "verb"); function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_2) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _2.label++; return { value: op[1], done: false }; case 5: _2.label++; y = op[1]; op = [0]; continue; case 7: op = _2.ops.pop(); _2.trys.pop(); continue; default: if (!(t = _2.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _2 = 0; continue; } if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { _2.label = op[1]; break; } if (op[0] === 6 && _2.label < t[1]) { _2.label = t[1]; t = op; break; } if (t && _2.label < t[2]) { _2.label = t[2]; _2.ops.push(op); break; } if (t[2]) _2.ops.pop(); _2.trys.pop(); continue; } op = body.call(thisArg, _2); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } __name(step, "step"); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.generate = void 0; var identity_1 = require_identity(); var isScheduler_1 = require_isScheduler(); var defer_1 = require_defer(); var scheduleIterable_1 = require_scheduleIterable(); function generate(initialStateOrOptions, condition, iterate, resultSelectorOrScheduler, scheduler) { var _a, _b; var resultSelector; var initialState; if (arguments.length === 1) { _a = initialStateOrOptions, initialState = _a.initialState, condition = _a.condition, iterate = _a.iterate, _b = _a.resultSelector, resultSelector = _b === void 0 ? identity_1.identity : _b, scheduler = _a.scheduler; } else { initialState = initialStateOrOptions; if (!resultSelectorOrScheduler || isScheduler_1.isScheduler(resultSelectorOrScheduler)) { resultSelector = identity_1.identity; scheduler = resultSelectorOrScheduler; } else { resultSelector = resultSelectorOrScheduler; } } function gen() { var state; return __generator2(this, function(_a2) { switch (_a2.label) { case 0: state = initialState; _a2.label = 1; case 1: if (!(!condition || condition(state))) return [3, 4]; return [4, resultSelector(state)]; case 2: _a2.sent(); _a2.label = 3; case 3: state = iterate(state); return [3, 1]; case 4: return [2]; } }); } __name(gen, "gen"); return defer_1.defer(scheduler ? function() { return scheduleIterable_1.scheduleIterable(gen(), scheduler); } : gen); } __name(generate, "generate"); exports2.generate = generate; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/iif.js var require_iif = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/iif.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.iif = void 0; var defer_1 = require_defer(); function iif(condition, trueResult, falseResult) { return defer_1.defer(function() { return condition() ? trueResult : falseResult; }); } __name(iif, "iif"); exports2.iif = iif; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/merge.js var require_merge3 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/merge.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.merge = void 0; var mergeAll_1 = require_mergeAll(); var innerFrom_1 = require_innerFrom(); var empty_1 = require_empty(); var args_1 = require_args(); var from_1 = require_from(); function merge() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var scheduler = args_1.popScheduler(args); var concurrent = args_1.popNumber(args, Infinity); var sources = args; return !sources.length ? empty_1.EMPTY : sources.length === 1 ? innerFrom_1.innerFrom(sources[0]) : mergeAll_1.mergeAll(concurrent)(from_1.from(sources, scheduler)); } __name(merge, "merge"); exports2.merge = merge; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/never.js var require_never = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/never.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.never = exports2.NEVER = void 0; var Observable_1 = require_Observable(); var noop_1 = require_noop(); exports2.NEVER = new Observable_1.Observable(noop_1.noop); function never() { return exports2.NEVER; } __name(never, "never"); exports2.never = never; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/pairs.js var require_pairs = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/pairs.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.pairs = void 0; var from_1 = require_from(); function pairs(obj2, scheduler) { return from_1.from(Object.entries(obj2), scheduler); } __name(pairs, "pairs"); exports2.pairs = pairs; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/partition.js var require_partition2 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/partition.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.partition = void 0; var not_1 = require_not(); var filter_1 = require_filter2(); var innerFrom_1 = require_innerFrom(); function partition(source, predicate, thisArg) { return [filter_1.filter(predicate, thisArg)(innerFrom_1.innerFrom(source)), filter_1.filter(not_1.not(predicate, thisArg))(innerFrom_1.innerFrom(source))]; } __name(partition, "partition"); exports2.partition = partition; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/range.js var require_range = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/range.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.range = void 0; var Observable_1 = require_Observable(); var empty_1 = require_empty(); function range(start, count, scheduler) { if (count == null) { count = start; start = 0; } if (count <= 0) { return empty_1.EMPTY; } var end = count + start; return new Observable_1.Observable(scheduler ? function(subscriber) { var n = start; return scheduler.schedule(function() { if (n < end) { subscriber.next(n++); this.schedule(); } else { subscriber.complete(); } }); } : function(subscriber) { var n = start; while (n < end && !subscriber.closed) { subscriber.next(n++); } subscriber.complete(); }); } __name(range, "range"); exports2.range = range; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/using.js var require_using = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/observable/using.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.using = void 0; var Observable_1 = require_Observable(); var innerFrom_1 = require_innerFrom(); var empty_1 = require_empty(); function using(resourceFactory, observableFactory) { return new Observable_1.Observable(function(subscriber) { var resource = resourceFactory(); var result = observableFactory(resource); var source = result ? innerFrom_1.innerFrom(result) : empty_1.EMPTY; source.subscribe(subscriber); return function() { if (resource) { resource.unsubscribe(); } }; }); } __name(using, "using"); exports2.using = using; } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/types.js var require_types = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/internal/types.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/index.js var require_cjs3 = __commonJS({ "../../node_modules/.pnpm/rxjs@7.8.2/node_modules/rxjs/dist/cjs/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.interval = exports2.iif = exports2.generate = exports2.fromEventPattern = exports2.fromEvent = exports2.from = exports2.forkJoin = exports2.empty = exports2.defer = exports2.connectable = exports2.concat = exports2.combineLatest = exports2.bindNodeCallback = exports2.bindCallback = exports2.UnsubscriptionError = exports2.TimeoutError = exports2.SequenceError = exports2.ObjectUnsubscribedError = exports2.NotFoundError = exports2.EmptyError = exports2.ArgumentOutOfRangeError = exports2.firstValueFrom = exports2.lastValueFrom = exports2.isObservable = exports2.identity = exports2.noop = exports2.pipe = exports2.NotificationKind = exports2.Notification = exports2.Subscriber = exports2.Subscription = exports2.Scheduler = exports2.VirtualAction = exports2.VirtualTimeScheduler = exports2.animationFrameScheduler = exports2.animationFrame = exports2.queueScheduler = exports2.queue = exports2.asyncScheduler = exports2.async = exports2.asapScheduler = exports2.asap = exports2.AsyncSubject = exports2.ReplaySubject = exports2.BehaviorSubject = exports2.Subject = exports2.animationFrames = exports2.observable = exports2.ConnectableObservable = exports2.Observable = void 0; exports2.filter = exports2.expand = exports2.exhaustMap = exports2.exhaustAll = exports2.exhaust = exports2.every = exports2.endWith = exports2.elementAt = exports2.distinctUntilKeyChanged = exports2.distinctUntilChanged = exports2.distinct = exports2.dematerialize = exports2.delayWhen = exports2.delay = exports2.defaultIfEmpty = exports2.debounceTime = exports2.debounce = exports2.count = exports2.connect = exports2.concatWith = exports2.concatMapTo = exports2.concatMap = exports2.concatAll = exports2.combineLatestWith = exports2.combineLatestAll = exports2.combineAll = exports2.catchError = exports2.bufferWhen = exports2.bufferToggle = exports2.bufferTime = exports2.bufferCount = exports2.buffer = exports2.auditTime = exports2.audit = exports2.config = exports2.NEVER = exports2.EMPTY = exports2.scheduled = exports2.zip = exports2.using = exports2.timer = exports2.throwError = exports2.range = exports2.race = exports2.partition = exports2.pairs = exports2.onErrorResumeNext = exports2.of = exports2.never = exports2.merge = void 0; exports2.switchMap = exports2.switchAll = exports2.subscribeOn = exports2.startWith = exports2.skipWhile = exports2.skipUntil = exports2.skipLast = exports2.skip = exports2.single = exports2.shareReplay = exports2.share = exports2.sequenceEqual = exports2.scan = exports2.sampleTime = exports2.sample = exports2.refCount = exports2.retryWhen = exports2.retry = exports2.repeatWhen = exports2.repeat = exports2.reduce = exports2.raceWith = exports2.publishReplay = exports2.publishLast = exports2.publishBehavior = exports2.publish = exports2.pluck = exports2.pairwise = exports2.onErrorResumeNextWith = exports2.observeOn = exports2.multicast = exports2.min = exports2.mergeWith = exports2.mergeScan = exports2.mergeMapTo = exports2.mergeMap = exports2.flatMap = exports2.mergeAll = exports2.max = exports2.materialize = exports2.mapTo = exports2.map = exports2.last = exports2.isEmpty = exports2.ignoreElements = exports2.groupBy = exports2.first = exports2.findIndex = exports2.find = exports2.finalize = void 0; exports2.zipWith = exports2.zipAll = exports2.withLatestFrom = exports2.windowWhen = exports2.windowToggle = exports2.windowTime = exports2.windowCount = exports2.window = exports2.toArray = exports2.timestamp = exports2.timeoutWith = exports2.timeout = exports2.timeInterval = exports2.throwIfEmpty = exports2.throttleTime = exports2.throttle = exports2.tap = exports2.takeWhile = exports2.takeUntil = exports2.takeLast = exports2.take = exports2.switchScan = exports2.switchMapTo = void 0; var Observable_1 = require_Observable(); Object.defineProperty(exports2, "Observable", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Observable_1.Observable; }, "get") }); var ConnectableObservable_1 = require_ConnectableObservable(); Object.defineProperty(exports2, "ConnectableObservable", { enumerable: true, get: /* @__PURE__ */ __name(function() { return ConnectableObservable_1.ConnectableObservable; }, "get") }); var observable_1 = require_observable(); Object.defineProperty(exports2, "observable", { enumerable: true, get: /* @__PURE__ */ __name(function() { return observable_1.observable; }, "get") }); var animationFrames_1 = require_animationFrames(); Object.defineProperty(exports2, "animationFrames", { enumerable: true, get: /* @__PURE__ */ __name(function() { return animationFrames_1.animationFrames; }, "get") }); var Subject_1 = require_Subject(); Object.defineProperty(exports2, "Subject", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Subject_1.Subject; }, "get") }); var BehaviorSubject_1 = require_BehaviorSubject(); Object.defineProperty(exports2, "BehaviorSubject", { enumerable: true, get: /* @__PURE__ */ __name(function() { return BehaviorSubject_1.BehaviorSubject; }, "get") }); var ReplaySubject_1 = require_ReplaySubject(); Object.defineProperty(exports2, "ReplaySubject", { enumerable: true, get: /* @__PURE__ */ __name(function() { return ReplaySubject_1.ReplaySubject; }, "get") }); var AsyncSubject_1 = require_AsyncSubject(); Object.defineProperty(exports2, "AsyncSubject", { enumerable: true, get: /* @__PURE__ */ __name(function() { return AsyncSubject_1.AsyncSubject; }, "get") }); var asap_1 = require_asap(); Object.defineProperty(exports2, "asap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return asap_1.asap; }, "get") }); Object.defineProperty(exports2, "asapScheduler", { enumerable: true, get: /* @__PURE__ */ __name(function() { return asap_1.asapScheduler; }, "get") }); var async_1 = require_async(); Object.defineProperty(exports2, "async", { enumerable: true, get: /* @__PURE__ */ __name(function() { return async_1.async; }, "get") }); Object.defineProperty(exports2, "asyncScheduler", { enumerable: true, get: /* @__PURE__ */ __name(function() { return async_1.asyncScheduler; }, "get") }); var queue_1 = require_queue(); Object.defineProperty(exports2, "queue", { enumerable: true, get: /* @__PURE__ */ __name(function() { return queue_1.queue; }, "get") }); Object.defineProperty(exports2, "queueScheduler", { enumerable: true, get: /* @__PURE__ */ __name(function() { return queue_1.queueScheduler; }, "get") }); var animationFrame_1 = require_animationFrame(); Object.defineProperty(exports2, "animationFrame", { enumerable: true, get: /* @__PURE__ */ __name(function() { return animationFrame_1.animationFrame; }, "get") }); Object.defineProperty(exports2, "animationFrameScheduler", { enumerable: true, get: /* @__PURE__ */ __name(function() { return animationFrame_1.animationFrameScheduler; }, "get") }); var VirtualTimeScheduler_1 = require_VirtualTimeScheduler(); Object.defineProperty(exports2, "VirtualTimeScheduler", { enumerable: true, get: /* @__PURE__ */ __name(function() { return VirtualTimeScheduler_1.VirtualTimeScheduler; }, "get") }); Object.defineProperty(exports2, "VirtualAction", { enumerable: true, get: /* @__PURE__ */ __name(function() { return VirtualTimeScheduler_1.VirtualAction; }, "get") }); var Scheduler_1 = require_Scheduler(); Object.defineProperty(exports2, "Scheduler", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Scheduler_1.Scheduler; }, "get") }); var Subscription_1 = require_Subscription(); Object.defineProperty(exports2, "Subscription", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Subscription_1.Subscription; }, "get") }); var Subscriber_1 = require_Subscriber(); Object.defineProperty(exports2, "Subscriber", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Subscriber_1.Subscriber; }, "get") }); var Notification_1 = require_Notification(); Object.defineProperty(exports2, "Notification", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Notification_1.Notification; }, "get") }); Object.defineProperty(exports2, "NotificationKind", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Notification_1.NotificationKind; }, "get") }); var pipe_1 = require_pipe(); Object.defineProperty(exports2, "pipe", { enumerable: true, get: /* @__PURE__ */ __name(function() { return pipe_1.pipe; }, "get") }); var noop_1 = require_noop(); Object.defineProperty(exports2, "noop", { enumerable: true, get: /* @__PURE__ */ __name(function() { return noop_1.noop; }, "get") }); var identity_1 = require_identity(); Object.defineProperty(exports2, "identity", { enumerable: true, get: /* @__PURE__ */ __name(function() { return identity_1.identity; }, "get") }); var isObservable_1 = require_isObservable(); Object.defineProperty(exports2, "isObservable", { enumerable: true, get: /* @__PURE__ */ __name(function() { return isObservable_1.isObservable; }, "get") }); var lastValueFrom_1 = require_lastValueFrom(); Object.defineProperty(exports2, "lastValueFrom", { enumerable: true, get: /* @__PURE__ */ __name(function() { return lastValueFrom_1.lastValueFrom; }, "get") }); var firstValueFrom_1 = require_firstValueFrom(); Object.defineProperty(exports2, "firstValueFrom", { enumerable: true, get: /* @__PURE__ */ __name(function() { return firstValueFrom_1.firstValueFrom; }, "get") }); var ArgumentOutOfRangeError_1 = require_ArgumentOutOfRangeError(); Object.defineProperty(exports2, "ArgumentOutOfRangeError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return ArgumentOutOfRangeError_1.ArgumentOutOfRangeError; }, "get") }); var EmptyError_1 = require_EmptyError(); Object.defineProperty(exports2, "EmptyError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return EmptyError_1.EmptyError; }, "get") }); var NotFoundError_1 = require_NotFoundError(); Object.defineProperty(exports2, "NotFoundError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return NotFoundError_1.NotFoundError; }, "get") }); var ObjectUnsubscribedError_1 = require_ObjectUnsubscribedError(); Object.defineProperty(exports2, "ObjectUnsubscribedError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return ObjectUnsubscribedError_1.ObjectUnsubscribedError; }, "get") }); var SequenceError_1 = require_SequenceError(); Object.defineProperty(exports2, "SequenceError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return SequenceError_1.SequenceError; }, "get") }); var timeout_1 = require_timeout(); Object.defineProperty(exports2, "TimeoutError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return timeout_1.TimeoutError; }, "get") }); var UnsubscriptionError_1 = require_UnsubscriptionError(); Object.defineProperty(exports2, "UnsubscriptionError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return UnsubscriptionError_1.UnsubscriptionError; }, "get") }); var bindCallback_1 = require_bindCallback(); Object.defineProperty(exports2, "bindCallback", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bindCallback_1.bindCallback; }, "get") }); var bindNodeCallback_1 = require_bindNodeCallback(); Object.defineProperty(exports2, "bindNodeCallback", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bindNodeCallback_1.bindNodeCallback; }, "get") }); var combineLatest_1 = require_combineLatest(); Object.defineProperty(exports2, "combineLatest", { enumerable: true, get: /* @__PURE__ */ __name(function() { return combineLatest_1.combineLatest; }, "get") }); var concat_1 = require_concat3(); Object.defineProperty(exports2, "concat", { enumerable: true, get: /* @__PURE__ */ __name(function() { return concat_1.concat; }, "get") }); var connectable_1 = require_connectable(); Object.defineProperty(exports2, "connectable", { enumerable: true, get: /* @__PURE__ */ __name(function() { return connectable_1.connectable; }, "get") }); var defer_1 = require_defer(); Object.defineProperty(exports2, "defer", { enumerable: true, get: /* @__PURE__ */ __name(function() { return defer_1.defer; }, "get") }); var empty_1 = require_empty(); Object.defineProperty(exports2, "empty", { enumerable: true, get: /* @__PURE__ */ __name(function() { return empty_1.empty; }, "get") }); var forkJoin_1 = require_forkJoin(); Object.defineProperty(exports2, "forkJoin", { enumerable: true, get: /* @__PURE__ */ __name(function() { return forkJoin_1.forkJoin; }, "get") }); var from_1 = require_from(); Object.defineProperty(exports2, "from", { enumerable: true, get: /* @__PURE__ */ __name(function() { return from_1.from; }, "get") }); var fromEvent_1 = require_fromEvent(); Object.defineProperty(exports2, "fromEvent", { enumerable: true, get: /* @__PURE__ */ __name(function() { return fromEvent_1.fromEvent; }, "get") }); var fromEventPattern_1 = require_fromEventPattern(); Object.defineProperty(exports2, "fromEventPattern", { enumerable: true, get: /* @__PURE__ */ __name(function() { return fromEventPattern_1.fromEventPattern; }, "get") }); var generate_1 = require_generate(); Object.defineProperty(exports2, "generate", { enumerable: true, get: /* @__PURE__ */ __name(function() { return generate_1.generate; }, "get") }); var iif_1 = require_iif(); Object.defineProperty(exports2, "iif", { enumerable: true, get: /* @__PURE__ */ __name(function() { return iif_1.iif; }, "get") }); var interval_1 = require_interval(); Object.defineProperty(exports2, "interval", { enumerable: true, get: /* @__PURE__ */ __name(function() { return interval_1.interval; }, "get") }); var merge_1 = require_merge3(); Object.defineProperty(exports2, "merge", { enumerable: true, get: /* @__PURE__ */ __name(function() { return merge_1.merge; }, "get") }); var never_1 = require_never(); Object.defineProperty(exports2, "never", { enumerable: true, get: /* @__PURE__ */ __name(function() { return never_1.never; }, "get") }); var of_1 = require_of(); Object.defineProperty(exports2, "of", { enumerable: true, get: /* @__PURE__ */ __name(function() { return of_1.of; }, "get") }); var onErrorResumeNext_1 = require_onErrorResumeNext(); Object.defineProperty(exports2, "onErrorResumeNext", { enumerable: true, get: /* @__PURE__ */ __name(function() { return onErrorResumeNext_1.onErrorResumeNext; }, "get") }); var pairs_1 = require_pairs(); Object.defineProperty(exports2, "pairs", { enumerable: true, get: /* @__PURE__ */ __name(function() { return pairs_1.pairs; }, "get") }); var partition_1 = require_partition2(); Object.defineProperty(exports2, "partition", { enumerable: true, get: /* @__PURE__ */ __name(function() { return partition_1.partition; }, "get") }); var race_1 = require_race(); Object.defineProperty(exports2, "race", { enumerable: true, get: /* @__PURE__ */ __name(function() { return race_1.race; }, "get") }); var range_1 = require_range(); Object.defineProperty(exports2, "range", { enumerable: true, get: /* @__PURE__ */ __name(function() { return range_1.range; }, "get") }); var throwError_1 = require_throwError(); Object.defineProperty(exports2, "throwError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return throwError_1.throwError; }, "get") }); var timer_1 = require_timer(); Object.defineProperty(exports2, "timer", { enumerable: true, get: /* @__PURE__ */ __name(function() { return timer_1.timer; }, "get") }); var using_1 = require_using(); Object.defineProperty(exports2, "using", { enumerable: true, get: /* @__PURE__ */ __name(function() { return using_1.using; }, "get") }); var zip_1 = require_zip2(); Object.defineProperty(exports2, "zip", { enumerable: true, get: /* @__PURE__ */ __name(function() { return zip_1.zip; }, "get") }); var scheduled_1 = require_scheduled(); Object.defineProperty(exports2, "scheduled", { enumerable: true, get: /* @__PURE__ */ __name(function() { return scheduled_1.scheduled; }, "get") }); var empty_2 = require_empty(); Object.defineProperty(exports2, "EMPTY", { enumerable: true, get: /* @__PURE__ */ __name(function() { return empty_2.EMPTY; }, "get") }); var never_2 = require_never(); Object.defineProperty(exports2, "NEVER", { enumerable: true, get: /* @__PURE__ */ __name(function() { return never_2.NEVER; }, "get") }); __exportStar2(require_types(), exports2); var config_12 = require_config(); Object.defineProperty(exports2, "config", { enumerable: true, get: /* @__PURE__ */ __name(function() { return config_12.config; }, "get") }); var audit_1 = require_audit(); Object.defineProperty(exports2, "audit", { enumerable: true, get: /* @__PURE__ */ __name(function() { return audit_1.audit; }, "get") }); var auditTime_1 = require_auditTime(); Object.defineProperty(exports2, "auditTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return auditTime_1.auditTime; }, "get") }); var buffer_1 = require_buffer(); Object.defineProperty(exports2, "buffer", { enumerable: true, get: /* @__PURE__ */ __name(function() { return buffer_1.buffer; }, "get") }); var bufferCount_1 = require_bufferCount(); Object.defineProperty(exports2, "bufferCount", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bufferCount_1.bufferCount; }, "get") }); var bufferTime_1 = require_bufferTime(); Object.defineProperty(exports2, "bufferTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bufferTime_1.bufferTime; }, "get") }); var bufferToggle_1 = require_bufferToggle(); Object.defineProperty(exports2, "bufferToggle", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bufferToggle_1.bufferToggle; }, "get") }); var bufferWhen_1 = require_bufferWhen(); Object.defineProperty(exports2, "bufferWhen", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bufferWhen_1.bufferWhen; }, "get") }); var catchError_1 = require_catchError(); Object.defineProperty(exports2, "catchError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return catchError_1.catchError; }, "get") }); var combineAll_1 = require_combineAll(); Object.defineProperty(exports2, "combineAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return combineAll_1.combineAll; }, "get") }); var combineLatestAll_1 = require_combineLatestAll(); Object.defineProperty(exports2, "combineLatestAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return combineLatestAll_1.combineLatestAll; }, "get") }); var combineLatestWith_1 = require_combineLatestWith(); Object.defineProperty(exports2, "combineLatestWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return combineLatestWith_1.combineLatestWith; }, "get") }); var concatAll_1 = require_concatAll(); Object.defineProperty(exports2, "concatAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return concatAll_1.concatAll; }, "get") }); var concatMap_1 = require_concatMap(); Object.defineProperty(exports2, "concatMap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return concatMap_1.concatMap; }, "get") }); var concatMapTo_1 = require_concatMapTo(); Object.defineProperty(exports2, "concatMapTo", { enumerable: true, get: /* @__PURE__ */ __name(function() { return concatMapTo_1.concatMapTo; }, "get") }); var concatWith_1 = require_concatWith(); Object.defineProperty(exports2, "concatWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return concatWith_1.concatWith; }, "get") }); var connect_1 = require_connect(); Object.defineProperty(exports2, "connect", { enumerable: true, get: /* @__PURE__ */ __name(function() { return connect_1.connect; }, "get") }); var count_1 = require_count(); Object.defineProperty(exports2, "count", { enumerable: true, get: /* @__PURE__ */ __name(function() { return count_1.count; }, "get") }); var debounce_1 = require_debounce(); Object.defineProperty(exports2, "debounce", { enumerable: true, get: /* @__PURE__ */ __name(function() { return debounce_1.debounce; }, "get") }); var debounceTime_1 = require_debounceTime(); Object.defineProperty(exports2, "debounceTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return debounceTime_1.debounceTime; }, "get") }); var defaultIfEmpty_1 = require_defaultIfEmpty(); Object.defineProperty(exports2, "defaultIfEmpty", { enumerable: true, get: /* @__PURE__ */ __name(function() { return defaultIfEmpty_1.defaultIfEmpty; }, "get") }); var delay_1 = require_delay(); Object.defineProperty(exports2, "delay", { enumerable: true, get: /* @__PURE__ */ __name(function() { return delay_1.delay; }, "get") }); var delayWhen_1 = require_delayWhen(); Object.defineProperty(exports2, "delayWhen", { enumerable: true, get: /* @__PURE__ */ __name(function() { return delayWhen_1.delayWhen; }, "get") }); var dematerialize_1 = require_dematerialize(); Object.defineProperty(exports2, "dematerialize", { enumerable: true, get: /* @__PURE__ */ __name(function() { return dematerialize_1.dematerialize; }, "get") }); var distinct_1 = require_distinct(); Object.defineProperty(exports2, "distinct", { enumerable: true, get: /* @__PURE__ */ __name(function() { return distinct_1.distinct; }, "get") }); var distinctUntilChanged_1 = require_distinctUntilChanged(); Object.defineProperty(exports2, "distinctUntilChanged", { enumerable: true, get: /* @__PURE__ */ __name(function() { return distinctUntilChanged_1.distinctUntilChanged; }, "get") }); var distinctUntilKeyChanged_1 = require_distinctUntilKeyChanged(); Object.defineProperty(exports2, "distinctUntilKeyChanged", { enumerable: true, get: /* @__PURE__ */ __name(function() { return distinctUntilKeyChanged_1.distinctUntilKeyChanged; }, "get") }); var elementAt_1 = require_elementAt(); Object.defineProperty(exports2, "elementAt", { enumerable: true, get: /* @__PURE__ */ __name(function() { return elementAt_1.elementAt; }, "get") }); var endWith_1 = require_endWith(); Object.defineProperty(exports2, "endWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return endWith_1.endWith; }, "get") }); var every_1 = require_every(); Object.defineProperty(exports2, "every", { enumerable: true, get: /* @__PURE__ */ __name(function() { return every_1.every; }, "get") }); var exhaust_1 = require_exhaust(); Object.defineProperty(exports2, "exhaust", { enumerable: true, get: /* @__PURE__ */ __name(function() { return exhaust_1.exhaust; }, "get") }); var exhaustAll_1 = require_exhaustAll(); Object.defineProperty(exports2, "exhaustAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return exhaustAll_1.exhaustAll; }, "get") }); var exhaustMap_1 = require_exhaustMap(); Object.defineProperty(exports2, "exhaustMap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return exhaustMap_1.exhaustMap; }, "get") }); var expand_1 = require_expand(); Object.defineProperty(exports2, "expand", { enumerable: true, get: /* @__PURE__ */ __name(function() { return expand_1.expand; }, "get") }); var filter_1 = require_filter2(); Object.defineProperty(exports2, "filter", { enumerable: true, get: /* @__PURE__ */ __name(function() { return filter_1.filter; }, "get") }); var finalize_1 = require_finalize(); Object.defineProperty(exports2, "finalize", { enumerable: true, get: /* @__PURE__ */ __name(function() { return finalize_1.finalize; }, "get") }); var find_1 = require_find(); Object.defineProperty(exports2, "find", { enumerable: true, get: /* @__PURE__ */ __name(function() { return find_1.find; }, "get") }); var findIndex_1 = require_findIndex(); Object.defineProperty(exports2, "findIndex", { enumerable: true, get: /* @__PURE__ */ __name(function() { return findIndex_1.findIndex; }, "get") }); var first_1 = require_first(); Object.defineProperty(exports2, "first", { enumerable: true, get: /* @__PURE__ */ __name(function() { return first_1.first; }, "get") }); var groupBy_1 = require_groupBy(); Object.defineProperty(exports2, "groupBy", { enumerable: true, get: /* @__PURE__ */ __name(function() { return groupBy_1.groupBy; }, "get") }); var ignoreElements_1 = require_ignoreElements(); Object.defineProperty(exports2, "ignoreElements", { enumerable: true, get: /* @__PURE__ */ __name(function() { return ignoreElements_1.ignoreElements; }, "get") }); var isEmpty_1 = require_isEmpty2(); Object.defineProperty(exports2, "isEmpty", { enumerable: true, get: /* @__PURE__ */ __name(function() { return isEmpty_1.isEmpty; }, "get") }); var last_1 = require_last(); Object.defineProperty(exports2, "last", { enumerable: true, get: /* @__PURE__ */ __name(function() { return last_1.last; }, "get") }); var map_1 = require_map2(); Object.defineProperty(exports2, "map", { enumerable: true, get: /* @__PURE__ */ __name(function() { return map_1.map; }, "get") }); var mapTo_1 = require_mapTo(); Object.defineProperty(exports2, "mapTo", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mapTo_1.mapTo; }, "get") }); var materialize_1 = require_materialize(); Object.defineProperty(exports2, "materialize", { enumerable: true, get: /* @__PURE__ */ __name(function() { return materialize_1.materialize; }, "get") }); var max_1 = require_max2(); Object.defineProperty(exports2, "max", { enumerable: true, get: /* @__PURE__ */ __name(function() { return max_1.max; }, "get") }); var mergeAll_1 = require_mergeAll(); Object.defineProperty(exports2, "mergeAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mergeAll_1.mergeAll; }, "get") }); var flatMap_1 = require_flatMap(); Object.defineProperty(exports2, "flatMap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return flatMap_1.flatMap; }, "get") }); var mergeMap_1 = require_mergeMap(); Object.defineProperty(exports2, "mergeMap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mergeMap_1.mergeMap; }, "get") }); var mergeMapTo_1 = require_mergeMapTo(); Object.defineProperty(exports2, "mergeMapTo", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mergeMapTo_1.mergeMapTo; }, "get") }); var mergeScan_1 = require_mergeScan(); Object.defineProperty(exports2, "mergeScan", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mergeScan_1.mergeScan; }, "get") }); var mergeWith_1 = require_mergeWith(); Object.defineProperty(exports2, "mergeWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return mergeWith_1.mergeWith; }, "get") }); var min_1 = require_min(); Object.defineProperty(exports2, "min", { enumerable: true, get: /* @__PURE__ */ __name(function() { return min_1.min; }, "get") }); var multicast_1 = require_multicast(); Object.defineProperty(exports2, "multicast", { enumerable: true, get: /* @__PURE__ */ __name(function() { return multicast_1.multicast; }, "get") }); var observeOn_1 = require_observeOn(); Object.defineProperty(exports2, "observeOn", { enumerable: true, get: /* @__PURE__ */ __name(function() { return observeOn_1.observeOn; }, "get") }); var onErrorResumeNextWith_1 = require_onErrorResumeNextWith(); Object.defineProperty(exports2, "onErrorResumeNextWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return onErrorResumeNextWith_1.onErrorResumeNextWith; }, "get") }); var pairwise_1 = require_pairwise(); Object.defineProperty(exports2, "pairwise", { enumerable: true, get: /* @__PURE__ */ __name(function() { return pairwise_1.pairwise; }, "get") }); var pluck_1 = require_pluck(); Object.defineProperty(exports2, "pluck", { enumerable: true, get: /* @__PURE__ */ __name(function() { return pluck_1.pluck; }, "get") }); var publish_1 = require_publish(); Object.defineProperty(exports2, "publish", { enumerable: true, get: /* @__PURE__ */ __name(function() { return publish_1.publish; }, "get") }); var publishBehavior_1 = require_publishBehavior(); Object.defineProperty(exports2, "publishBehavior", { enumerable: true, get: /* @__PURE__ */ __name(function() { return publishBehavior_1.publishBehavior; }, "get") }); var publishLast_1 = require_publishLast(); Object.defineProperty(exports2, "publishLast", { enumerable: true, get: /* @__PURE__ */ __name(function() { return publishLast_1.publishLast; }, "get") }); var publishReplay_1 = require_publishReplay(); Object.defineProperty(exports2, "publishReplay", { enumerable: true, get: /* @__PURE__ */ __name(function() { return publishReplay_1.publishReplay; }, "get") }); var raceWith_1 = require_raceWith(); Object.defineProperty(exports2, "raceWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return raceWith_1.raceWith; }, "get") }); var reduce_1 = require_reduce(); Object.defineProperty(exports2, "reduce", { enumerable: true, get: /* @__PURE__ */ __name(function() { return reduce_1.reduce; }, "get") }); var repeat_1 = require_repeat(); Object.defineProperty(exports2, "repeat", { enumerable: true, get: /* @__PURE__ */ __name(function() { return repeat_1.repeat; }, "get") }); var repeatWhen_1 = require_repeatWhen(); Object.defineProperty(exports2, "repeatWhen", { enumerable: true, get: /* @__PURE__ */ __name(function() { return repeatWhen_1.repeatWhen; }, "get") }); var retry_1 = require_retry(); Object.defineProperty(exports2, "retry", { enumerable: true, get: /* @__PURE__ */ __name(function() { return retry_1.retry; }, "get") }); var retryWhen_1 = require_retryWhen(); Object.defineProperty(exports2, "retryWhen", { enumerable: true, get: /* @__PURE__ */ __name(function() { return retryWhen_1.retryWhen; }, "get") }); var refCount_1 = require_refCount(); Object.defineProperty(exports2, "refCount", { enumerable: true, get: /* @__PURE__ */ __name(function() { return refCount_1.refCount; }, "get") }); var sample_1 = require_sample(); Object.defineProperty(exports2, "sample", { enumerable: true, get: /* @__PURE__ */ __name(function() { return sample_1.sample; }, "get") }); var sampleTime_1 = require_sampleTime(); Object.defineProperty(exports2, "sampleTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return sampleTime_1.sampleTime; }, "get") }); var scan_1 = require_scan(); Object.defineProperty(exports2, "scan", { enumerable: true, get: /* @__PURE__ */ __name(function() { return scan_1.scan; }, "get") }); var sequenceEqual_1 = require_sequenceEqual(); Object.defineProperty(exports2, "sequenceEqual", { enumerable: true, get: /* @__PURE__ */ __name(function() { return sequenceEqual_1.sequenceEqual; }, "get") }); var share_1 = require_share(); Object.defineProperty(exports2, "share", { enumerable: true, get: /* @__PURE__ */ __name(function() { return share_1.share; }, "get") }); var shareReplay_1 = require_shareReplay(); Object.defineProperty(exports2, "shareReplay", { enumerable: true, get: /* @__PURE__ */ __name(function() { return shareReplay_1.shareReplay; }, "get") }); var single_1 = require_single(); Object.defineProperty(exports2, "single", { enumerable: true, get: /* @__PURE__ */ __name(function() { return single_1.single; }, "get") }); var skip_1 = require_skip(); Object.defineProperty(exports2, "skip", { enumerable: true, get: /* @__PURE__ */ __name(function() { return skip_1.skip; }, "get") }); var skipLast_1 = require_skipLast(); Object.defineProperty(exports2, "skipLast", { enumerable: true, get: /* @__PURE__ */ __name(function() { return skipLast_1.skipLast; }, "get") }); var skipUntil_1 = require_skipUntil(); Object.defineProperty(exports2, "skipUntil", { enumerable: true, get: /* @__PURE__ */ __name(function() { return skipUntil_1.skipUntil; }, "get") }); var skipWhile_1 = require_skipWhile(); Object.defineProperty(exports2, "skipWhile", { enumerable: true, get: /* @__PURE__ */ __name(function() { return skipWhile_1.skipWhile; }, "get") }); var startWith_1 = require_startWith(); Object.defineProperty(exports2, "startWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return startWith_1.startWith; }, "get") }); var subscribeOn_1 = require_subscribeOn(); Object.defineProperty(exports2, "subscribeOn", { enumerable: true, get: /* @__PURE__ */ __name(function() { return subscribeOn_1.subscribeOn; }, "get") }); var switchAll_1 = require_switchAll(); Object.defineProperty(exports2, "switchAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return switchAll_1.switchAll; }, "get") }); var switchMap_1 = require_switchMap(); Object.defineProperty(exports2, "switchMap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return switchMap_1.switchMap; }, "get") }); var switchMapTo_1 = require_switchMapTo(); Object.defineProperty(exports2, "switchMapTo", { enumerable: true, get: /* @__PURE__ */ __name(function() { return switchMapTo_1.switchMapTo; }, "get") }); var switchScan_1 = require_switchScan(); Object.defineProperty(exports2, "switchScan", { enumerable: true, get: /* @__PURE__ */ __name(function() { return switchScan_1.switchScan; }, "get") }); var take_1 = require_take(); Object.defineProperty(exports2, "take", { enumerable: true, get: /* @__PURE__ */ __name(function() { return take_1.take; }, "get") }); var takeLast_1 = require_takeLast(); Object.defineProperty(exports2, "takeLast", { enumerable: true, get: /* @__PURE__ */ __name(function() { return takeLast_1.takeLast; }, "get") }); var takeUntil_1 = require_takeUntil(); Object.defineProperty(exports2, "takeUntil", { enumerable: true, get: /* @__PURE__ */ __name(function() { return takeUntil_1.takeUntil; }, "get") }); var takeWhile_1 = require_takeWhile(); Object.defineProperty(exports2, "takeWhile", { enumerable: true, get: /* @__PURE__ */ __name(function() { return takeWhile_1.takeWhile; }, "get") }); var tap_1 = require_tap(); Object.defineProperty(exports2, "tap", { enumerable: true, get: /* @__PURE__ */ __name(function() { return tap_1.tap; }, "get") }); var throttle_1 = require_throttle(); Object.defineProperty(exports2, "throttle", { enumerable: true, get: /* @__PURE__ */ __name(function() { return throttle_1.throttle; }, "get") }); var throttleTime_1 = require_throttleTime(); Object.defineProperty(exports2, "throttleTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return throttleTime_1.throttleTime; }, "get") }); var throwIfEmpty_1 = require_throwIfEmpty(); Object.defineProperty(exports2, "throwIfEmpty", { enumerable: true, get: /* @__PURE__ */ __name(function() { return throwIfEmpty_1.throwIfEmpty; }, "get") }); var timeInterval_1 = require_timeInterval(); Object.defineProperty(exports2, "timeInterval", { enumerable: true, get: /* @__PURE__ */ __name(function() { return timeInterval_1.timeInterval; }, "get") }); var timeout_2 = require_timeout(); Object.defineProperty(exports2, "timeout", { enumerable: true, get: /* @__PURE__ */ __name(function() { return timeout_2.timeout; }, "get") }); var timeoutWith_1 = require_timeoutWith(); Object.defineProperty(exports2, "timeoutWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return timeoutWith_1.timeoutWith; }, "get") }); var timestamp_1 = require_timestamp(); Object.defineProperty(exports2, "timestamp", { enumerable: true, get: /* @__PURE__ */ __name(function() { return timestamp_1.timestamp; }, "get") }); var toArray_1 = require_toArray(); Object.defineProperty(exports2, "toArray", { enumerable: true, get: /* @__PURE__ */ __name(function() { return toArray_1.toArray; }, "get") }); var window_1 = require_window(); Object.defineProperty(exports2, "window", { enumerable: true, get: /* @__PURE__ */ __name(function() { return window_1.window; }, "get") }); var windowCount_1 = require_windowCount(); Object.defineProperty(exports2, "windowCount", { enumerable: true, get: /* @__PURE__ */ __name(function() { return windowCount_1.windowCount; }, "get") }); var windowTime_1 = require_windowTime(); Object.defineProperty(exports2, "windowTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return windowTime_1.windowTime; }, "get") }); var windowToggle_1 = require_windowToggle(); Object.defineProperty(exports2, "windowToggle", { enumerable: true, get: /* @__PURE__ */ __name(function() { return windowToggle_1.windowToggle; }, "get") }); var windowWhen_1 = require_windowWhen(); Object.defineProperty(exports2, "windowWhen", { enumerable: true, get: /* @__PURE__ */ __name(function() { return windowWhen_1.windowWhen; }, "get") }); var withLatestFrom_1 = require_withLatestFrom(); Object.defineProperty(exports2, "withLatestFrom", { enumerable: true, get: /* @__PURE__ */ __name(function() { return withLatestFrom_1.withLatestFrom; }, "get") }); var zipAll_1 = require_zipAll(); Object.defineProperty(exports2, "zipAll", { enumerable: true, get: /* @__PURE__ */ __name(function() { return zipAll_1.zipAll; }, "get") }); var zipWith_1 = require_zipWith(); Object.defineProperty(exports2, "zipWith", { enumerable: true, get: /* @__PURE__ */ __name(function() { return zipWith_1.zipWith; }, "get") }); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/config.service.js var require_config_service = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/config.service.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __importStar2 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding2(result, mod, k); } __setModuleDefault2(result, mod); return result; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ConfigService = void 0; var common_12 = require_common(); var shared_utils_1 = require_shared_utils(); var dotenv = __importStar2(require_main()); var fs_1 = __importDefault2(require("fs")); var get_1 = __importDefault2(require_get()); var has_1 = __importDefault2(require_has()); var set_1 = __importDefault2(require_set()); var rxjs_1 = require_cjs3(); var config_constants_1 = require_config_constants(); var ConfigService = class ConfigService { static { __name(this, "ConfigService"); } set isCacheEnabled(value) { this._isCacheEnabled = value; } get isCacheEnabled() { return this._isCacheEnabled; } constructor(internalConfig = {}) { this.internalConfig = internalConfig; this.cache = {}; this._changes$ = new rxjs_1.Subject(); this._isCacheEnabled = false; this.envFilePaths = []; } /** * Returns a stream of configuration changes. * Each event contains the attribute path, the old value and the new value. */ get changes$() { return this._changes$.asObservable(); } /** * Get a configuration value (either custom configuration or process environment variable) * based on property path (you can use dot notation to traverse nested object, e.g. "database.host"). * It returns a default value if the key does not exist. * @param propertyPath * @param defaultValueOrOptions */ get(propertyPath, defaultValueOrOptions, options) { const validatedEnvValue = this.getFromValidatedEnv(propertyPath); if (!(0, shared_utils_1.isUndefined)(validatedEnvValue)) { return validatedEnvValue; } const defaultValue = this.isGetOptionsObject(defaultValueOrOptions) && !options ? void 0 : defaultValueOrOptions; const processEnvValue = this.getFromProcessEnv(propertyPath, defaultValue); if (!(0, shared_utils_1.isUndefined)(processEnvValue)) { return processEnvValue; } const internalValue = this.getFromInternalConfig(propertyPath); if (!(0, shared_utils_1.isUndefined)(internalValue)) { return internalValue; } return defaultValue; } /** * Get a configuration value (either custom configuration or process environment variable) * based on property path (you can use dot notation to traverse nested object, e.g. "database.host"). * It returns a default value if the key does not exist. * If the default value is undefined an exception will be thrown. * @param propertyPath * @param defaultValueOrOptions */ getOrThrow(propertyPath, defaultValueOrOptions, options) { const value = this.get(propertyPath, defaultValueOrOptions, options); if ((0, shared_utils_1.isUndefined)(value)) { throw new TypeError(`Configuration key "${propertyPath.toString()}" does not exist`); } return value; } /** * Sets a configuration value based on property path. * @param propertyPath * @param value */ set(propertyPath, value) { const oldValue = this.get(propertyPath); (0, set_1.default)(this.internalConfig, propertyPath, value); if (typeof propertyPath === "string") { process.env[propertyPath] = String(value); this.updateInterpolatedEnv(propertyPath, String(value)); } if (this.isCacheEnabled) { this.setInCacheIfDefined(propertyPath, value); } this._changes$.next({ path: propertyPath, oldValue, newValue: value }); } /** * Sets env file paths from `config.module.ts` to parse. * @param paths */ setEnvFilePaths(paths) { this.envFilePaths = paths; } getFromCache(propertyPath, defaultValue) { const cachedValue = (0, get_1.default)(this.cache, propertyPath); return (0, shared_utils_1.isUndefined)(cachedValue) ? defaultValue : cachedValue; } getFromValidatedEnv(propertyPath) { const validatedEnvValue = (0, get_1.default)(this.internalConfig[config_constants_1.VALIDATED_ENV_PROPNAME], propertyPath); return validatedEnvValue; } getFromProcessEnv(propertyPath, defaultValue) { if (this.isCacheEnabled && (0, has_1.default)(this.cache, propertyPath)) { const cachedValue = this.getFromCache(propertyPath, defaultValue); return !(0, shared_utils_1.isUndefined)(cachedValue) ? cachedValue : defaultValue; } const processValue = (0, get_1.default)(process.env, propertyPath); this.setInCacheIfDefined(propertyPath, processValue); return processValue; } getFromInternalConfig(propertyPath) { const internalValue = (0, get_1.default)(this.internalConfig, propertyPath); return internalValue; } setInCacheIfDefined(propertyPath, value) { if (typeof value === "undefined") { return; } (0, set_1.default)(this.cache, propertyPath, value); } isGetOptionsObject(options) { return options && options?.infer && Object.keys(options).length === 1; } updateInterpolatedEnv(propertyPath, value) { let config = {}; for (const envFilePath of this.envFilePaths) { if (fs_1.default.existsSync(envFilePath)) { config = Object.assign(dotenv.parse(fs_1.default.readFileSync(envFilePath)), config); } } const regex = new RegExp(`\\$\\{?${propertyPath}\\}?`, "g"); for (const [k, v] of Object.entries(config)) { if (regex.test(v)) { process.env[k] = v.replace(regex, value); } } } }; exports2.ConfigService = ConfigService; exports2.ConfigService = ConfigService = __decorate2([ (0, common_12.Injectable)(), __param2(0, (0, common_12.Optional)()), __param2(0, (0, common_12.Inject)(config_constants_1.CONFIGURATION_TOKEN)), __metadata2("design:paramtypes", [Object]) ], ConfigService); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/config-host.module.js var require_config_host_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/config-host.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ConfigHostModule = void 0; var common_12 = require_common(); var config_constants_1 = require_config_constants(); var config_service_1 = require_config_service(); var ConfigHostModule = class ConfigHostModule { static { __name(this, "ConfigHostModule"); } }; exports2.ConfigHostModule = ConfigHostModule; exports2.ConfigHostModule = ConfigHostModule = __decorate2([ (0, common_12.Global)(), (0, common_12.Module)({ providers: [ { provide: config_constants_1.CONFIGURATION_TOKEN, useFactory: /* @__PURE__ */ __name(() => ({}), "useFactory") }, { provide: config_constants_1.CONFIGURATION_SERVICE_TOKEN, useClass: config_service_1.ConfigService } ], exports: [config_constants_1.CONFIGURATION_TOKEN, config_constants_1.CONFIGURATION_SERVICE_TOKEN] }) ], ConfigHostModule); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/get-config-token.util.js var require_get_config_token_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/get-config-token.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getConfigToken = getConfigToken; function getConfigToken(token) { return `CONFIGURATION(${token})`; } __name(getConfigToken, "getConfigToken"); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/create-config-factory.util.js var require_create_config_factory_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/create-config-factory.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createConfigProvider = createConfigProvider; var get_config_token_util_1 = require_get_config_token_util(); var crypto_1 = require("crypto"); function createConfigProvider(factory) { return { provide: factory.KEY || (0, get_config_token_util_1.getConfigToken)((0, crypto_1.randomUUID)()), useFactory: factory, inject: [] }; } __name(createConfigProvider, "createConfigProvider"); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/get-registration-token.util.js var require_get_registration_token_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/get-registration-token.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getRegistrationToken = getRegistrationToken; var config_constants_1 = require_config_constants(); function getRegistrationToken(config) { return config[config_constants_1.PARTIAL_CONFIGURATION_KEY]; } __name(getRegistrationToken, "getRegistrationToken"); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/merge-configs.util.js var require_merge_configs_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/merge-configs.util.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mergeConfigObject = mergeConfigObject; var set_1 = __importDefault2(require_set()); function mergeConfigObject(host, partial, token) { if (token) { (0, set_1.default)(host, token, partial); return partial; } Object.assign(host, partial); } __name(mergeConfigObject, "mergeConfigObject"); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/config.module.js var require_config_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/config.module.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __importStar2 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding2(result, mod, k); } __setModuleDefault2(result, mod); return result; }; var ConfigModule_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ConfigModule = void 0; var common_12 = require_common(); var shared_utils_1 = require_shared_utils(); var dotenv = __importStar2(require_main()); var dotenv_expand_1 = require_main2(); var fs = __importStar2(require("fs")); var path_12 = require("path"); var config_host_module_1 = require_config_host_module(); var config_constants_1 = require_config_constants(); var config_service_1 = require_config_service(); var create_config_factory_util_1 = require_create_config_factory_util(); var get_registration_token_util_1 = require_get_registration_token_util(); var merge_configs_util_1 = require_merge_configs_util(); var ConfigModule = ConfigModule_1 = class ConfigModule { static { __name(this, "ConfigModule"); } /** * This promise resolves when "dotenv" completes loading environment variables. * When "ignoreEnvFile" is set to true, then it will resolve immediately after the * "ConfigModule#forRoot" method is called. */ static get envVariablesLoaded() { return this._envVariablesLoaded; } /** * Loads process environment variables depending on the "ignoreEnvFile" flag and "envFilePath" value. * Also, registers custom configurations globally. * @param options */ static async forRoot(options = {}) { const envFilePaths = Array.isArray(options.envFilePath) ? options.envFilePath : [options.envFilePath || (0, path_12.resolve)(process.cwd(), ".env")]; let validatedEnvConfig = void 0; let config = options.ignoreEnvFile ? {} : this.loadEnvFile(envFilePaths, options); if (!options.ignoreEnvVars) { config = { ...config, ...process.env }; } if (options.validate) { const validatedConfig = options.validate(config); validatedEnvConfig = validatedConfig; this.assignVariablesToProcess(validatedConfig); } else if (options.validationSchema) { const validationOptions = this.getSchemaValidationOptions(options); const { error, value: validatedConfig } = options.validationSchema.validate(config, validationOptions); if (error) { throw new Error(`Config validation error: ${error.message}`); } validatedEnvConfig = validatedConfig; this.assignVariablesToProcess(validatedConfig); } else { this.assignVariablesToProcess(config); } const isConfigToLoad = options.load && options.load.length; const configFactory = await Promise.all(options.load || []); const providers = configFactory.map((factory) => (0, create_config_factory_util_1.createConfigProvider)(factory)).filter((item) => item); const configProviderTokens = providers.map((item) => item.provide); const configServiceProvider = { provide: config_service_1.ConfigService, useFactory: /* @__PURE__ */ __name((configService) => { if (options.cache) { configService.isCacheEnabled = true; } configService.setEnvFilePaths(envFilePaths); return configService; }, "useFactory"), inject: [config_constants_1.CONFIGURATION_SERVICE_TOKEN, ...configProviderTokens] }; providers.push(configServiceProvider); if (validatedEnvConfig) { const validatedEnvConfigLoader = { provide: config_constants_1.VALIDATED_ENV_LOADER, useFactory: /* @__PURE__ */ __name((host) => { host[config_constants_1.VALIDATED_ENV_PROPNAME] = validatedEnvConfig; }, "useFactory"), inject: [config_constants_1.CONFIGURATION_TOKEN] }; providers.push(validatedEnvConfigLoader); } this.environmentVariablesLoadedSignal(); return { module: ConfigModule_1, global: options.isGlobal, providers: isConfigToLoad ? [ ...providers, { provide: config_constants_1.CONFIGURATION_LOADER, useFactory: /* @__PURE__ */ __name((host, ...configurations) => { configurations.forEach((item, index) => this.mergePartial(host, item, providers[index])); }, "useFactory"), inject: [config_constants_1.CONFIGURATION_TOKEN, ...configProviderTokens] } ] : providers, exports: [config_service_1.ConfigService, ...configProviderTokens] }; } /** * Registers configuration object (partial registration). * @param config */ static forFeature(config) { const configProvider = (0, create_config_factory_util_1.createConfigProvider)(config); const serviceProvider = { provide: config_service_1.ConfigService, useFactory: /* @__PURE__ */ __name((configService) => configService, "useFactory"), inject: [config_constants_1.CONFIGURATION_SERVICE_TOKEN, configProvider.provide] }; return { module: ConfigModule_1, providers: [ configProvider, serviceProvider, { provide: config_constants_1.CONFIGURATION_LOADER, useFactory: /* @__PURE__ */ __name((host, partialConfig) => { this.mergePartial(host, partialConfig, configProvider); }, "useFactory"), inject: [config_constants_1.CONFIGURATION_TOKEN, configProvider.provide] } ], exports: [config_service_1.ConfigService, configProvider.provide] }; } static loadEnvFile(envFilePaths, options) { let config = {}; for (const envFilePath of envFilePaths) { if (fs.existsSync(envFilePath)) { config = Object.assign(dotenv.parse(fs.readFileSync(envFilePath)), config); if (options.expandVariables) { const expandOptions = typeof options.expandVariables === "object" ? options.expandVariables : {}; config = (0, dotenv_expand_1.expand)({ ...expandOptions, parsed: config }).parsed || config; } } } return config; } static assignVariablesToProcess(config) { if (!(0, shared_utils_1.isObject)(config)) { return; } const keys = Object.keys(config).filter((key) => !(key in process.env)); keys.forEach((key) => { const value = config[key]; if (typeof value === "string") { process.env[key] = value; } else if (typeof value === "boolean" || typeof value === "number") { process.env[key] = `${value}`; } }); } static mergePartial(host, item, provider) { const factoryRef = provider.useFactory; const token = (0, get_registration_token_util_1.getRegistrationToken)(factoryRef); (0, merge_configs_util_1.mergeConfigObject)(host, item, token); } static getSchemaValidationOptions(options) { if (options.validationOptions) { if (typeof options.validationOptions.allowUnknown === "undefined") { options.validationOptions.allowUnknown = true; } return options.validationOptions; } return { abortEarly: false, allowUnknown: true }; } }; exports2.ConfigModule = ConfigModule; ConfigModule._envVariablesLoaded = new Promise((resolve) => ConfigModule_1.environmentVariablesLoadedSignal = resolve); exports2.ConfigModule = ConfigModule = ConfigModule_1 = __decorate2([ (0, common_12.Module)({ imports: [config_host_module_1.ConfigHostModule], providers: [ { provide: config_service_1.ConfigService, useExisting: config_constants_1.CONFIGURATION_SERVICE_TOKEN } ], exports: [config_host_module_1.ConfigHostModule, config_service_1.ConfigService] }) ], ConfigModule); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/conditional.module.js var require_conditional_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/conditional.module.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ConditionalModule = void 0; var common_12 = require_common(); var config_module_1 = require_config_module(); var getInstanceName = /* @__PURE__ */ __name((instance) => { if (instance?.forwardRef) { return instance.forwardRef()?.name; } if (instance.module) { return instance.module?.name; } return instance.name; }, "getInstanceName"); var ConditionalModule = class _ConditionalModule { static { __name(this, "ConditionalModule"); } /** * @publicApi */ static async registerWhen(module3, condition, options) { const { timeout = 5e3, debug = true } = options ?? {}; const moduleName = getInstanceName(module3) || module3.toString(); const timer = setTimeout(() => { throw new Error(`Nest was not able to resolve the config variables within ${timeout} milliseconds. Bause of this, the ConditionalModule was not able to determine if ${moduleName} should be registered or not`); }, timeout); timer.unref(); const returnModule = { module: _ConditionalModule, imports: [], exports: [] }; if (typeof condition === "string") { const key = condition; condition = /* @__PURE__ */ __name((env2) => { return env2[key]?.toLowerCase() !== "false"; }, "condition"); } await config_module_1.ConfigModule.envVariablesLoaded; clearTimeout(timer); const evaluation = condition(process.env); if (evaluation) { returnModule.imports.push(module3); returnModule.exports.push(module3); } else { if (debug) { common_12.Logger.debug(`${condition.toString()} evaluated to false. Skipping the registration of ${moduleName}`, _ConditionalModule.name); } } return returnModule; } }; exports2.ConditionalModule = ConditionalModule; } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/types/config-object.type.js var require_config_object_type = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/types/config-object.type.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/types/config.type.js var require_config_type = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/types/config.type.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/types/no-infer.type.js var require_no_infer_type = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/types/no-infer.type.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/types/path-value.type.js var require_path_value_type = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/types/path-value.type.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/types/index.js var require_types2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/types/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_config_object_type(), exports2); __exportStar2(require_config_type(), exports2); __exportStar2(require_no_infer_type(), exports2); __exportStar2(require_path_value_type(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/register-as.util.js var require_register_as_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/register-as.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.registerAs = registerAs; var __1 = require_dist2(); var config_constants_1 = require_config_constants(); var get_config_token_util_1 = require_get_config_token_util(); function registerAs(token, configFactory) { const defineProperty = /* @__PURE__ */ __name((key, value) => { Object.defineProperty(configFactory, key, { configurable: false, enumerable: false, value, writable: false }); }, "defineProperty"); defineProperty(config_constants_1.PARTIAL_CONFIGURATION_KEY, token); defineProperty(config_constants_1.PARTIAL_CONFIGURATION_PROPNAME, (0, get_config_token_util_1.getConfigToken)(token)); defineProperty(config_constants_1.AS_PROVIDER_METHOD_KEY, () => ({ imports: [__1.ConfigModule.forFeature(configFactory)], useFactory: /* @__PURE__ */ __name((config) => config, "useFactory"), inject: [(0, get_config_token_util_1.getConfigToken)(token)] })); return configFactory; } __name(registerAs, "registerAs"); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/index.js var require_utils7 = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/utils/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_register_as_util(), exports2); __exportStar2(require_get_config_token_util(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/interfaces/config-change-event.interface.js var require_config_change_event_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/interfaces/config-change-event.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/interfaces/config-factory.interface.js var require_config_factory_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/interfaces/config-factory.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/interfaces/config-module-options.interface.js var require_config_module_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/interfaces/config-module-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/interfaces/index.js var require_interfaces4 = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/interfaces/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_config_change_event_interface(), exports2); __exportStar2(require_config_factory_interface(), exports2); __exportStar2(require_config_module_options_interface(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/index.js var require_dist2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/dist/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_conditional_module(), exports2); __exportStar2(require_config_module(), exports2); __exportStar2(require_config_service(), exports2); __exportStar2(require_types2(), exports2); __exportStar2(require_utils7(), exports2); __exportStar2(require_interfaces4(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/index.js var require_config2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+config@3.3.0_@nestj_7ee0d073106ddbf02a48c32de7263765/node_modules/@nestjs/config/index.js"(exports2) { "use strict"; function __export2(m) { for (var p in m) if (!exports2.hasOwnProperty(p)) exports2[p] = m[p]; } __name(__export2, "__export"); exports2.__esModule = true; __export2(require_dist2()); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/adapters/http-adapter.js var require_http_adapter = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/adapters/http-adapter.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AbstractHttpAdapter = void 0; var AbstractHttpAdapter = class { static { __name(this, "AbstractHttpAdapter"); } constructor(instance) { this.instance = instance; } // eslint-disable-next-line @typescript-eslint/no-empty-function async init() { } use(...args) { return this.instance.use(...args); } get(...args) { return this.instance.get(...args); } post(...args) { return this.instance.post(...args); } head(...args) { return this.instance.head(...args); } delete(...args) { return this.instance.delete(...args); } put(...args) { return this.instance.put(...args); } patch(...args) { return this.instance.patch(...args); } all(...args) { return this.instance.all(...args); } search(...args) { return this.instance.search(...args); } options(...args) { return this.instance.options(...args); } listen(port, hostname, callback) { return this.instance.listen(port, hostname, callback); } getHttpServer() { return this.httpServer; } setHttpServer(httpServer) { this.httpServer = httpServer; } setInstance(instance) { this.instance = instance; } getInstance() { return this.instance; } }; exports2.AbstractHttpAdapter = AbstractHttpAdapter; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/adapters/index.js var require_adapters = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/adapters/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_http_adapter(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/application-config.js var require_application_config = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/application-config.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApplicationConfig = void 0; var ApplicationConfig = class { static { __name(this, "ApplicationConfig"); } constructor(ioAdapter = null) { this.ioAdapter = ioAdapter; this.globalPrefix = ""; this.globalPrefixOptions = {}; this.globalPipes = []; this.globalFilters = []; this.globalInterceptors = []; this.globalGuards = []; this.globalRequestPipes = []; this.globalRequestFilters = []; this.globalRequestInterceptors = []; this.globalRequestGuards = []; } setGlobalPrefix(prefix) { this.globalPrefix = prefix; } getGlobalPrefix() { return this.globalPrefix; } setGlobalPrefixOptions(options) { this.globalPrefixOptions = options; } getGlobalPrefixOptions() { return this.globalPrefixOptions; } setIoAdapter(ioAdapter) { this.ioAdapter = ioAdapter; } getIoAdapter() { return this.ioAdapter; } addGlobalPipe(pipe) { this.globalPipes.push(pipe); } useGlobalPipes(...pipes) { this.globalPipes = this.globalPipes.concat(pipes); } getGlobalFilters() { return this.globalFilters; } addGlobalFilter(filter) { this.globalFilters.push(filter); } useGlobalFilters(...filters) { this.globalFilters = this.globalFilters.concat(filters); } getGlobalPipes() { return this.globalPipes; } getGlobalInterceptors() { return this.globalInterceptors; } addGlobalInterceptor(interceptor) { this.globalInterceptors.push(interceptor); } useGlobalInterceptors(...interceptors) { this.globalInterceptors = this.globalInterceptors.concat(interceptors); } getGlobalGuards() { return this.globalGuards; } addGlobalGuard(guard) { this.globalGuards.push(guard); } useGlobalGuards(...guards) { this.globalGuards = this.globalGuards.concat(guards); } addGlobalRequestInterceptor(wrapper) { this.globalRequestInterceptors.push(wrapper); } getGlobalRequestInterceptors() { return this.globalRequestInterceptors; } addGlobalRequestPipe(wrapper) { this.globalRequestPipes.push(wrapper); } getGlobalRequestPipes() { return this.globalRequestPipes; } addGlobalRequestFilter(wrapper) { this.globalRequestFilters.push(wrapper); } getGlobalRequestFilters() { return this.globalRequestFilters; } addGlobalRequestGuard(wrapper) { this.globalRequestGuards.push(wrapper); } getGlobalRequestGuards() { return this.globalRequestGuards; } enableVersioning(options) { if (Array.isArray(options.defaultVersion)) { options.defaultVersion = Array.from(new Set(options.defaultVersion)); } this.versioningOptions = options; } getVersioning() { return this.versioningOptions; } }; exports2.ApplicationConfig = ApplicationConfig; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/constants.js var require_constants4 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ENHANCER_TOKEN_TO_SUBTYPE_MAP = exports2.APP_FILTER = exports2.APP_GUARD = exports2.APP_PIPE = exports2.APP_INTERCEPTOR = exports2.MESSAGES = void 0; exports2.MESSAGES = { APPLICATION_START: `Starting Nest application...`, APPLICATION_READY: `Nest application successfully started`, MICROSERVICE_READY: `Nest microservice successfully started`, UNKNOWN_EXCEPTION_MESSAGE: "Internal server error", ERROR_DURING_SHUTDOWN: "Error happened during shutdown", CALL_LISTEN_FIRST: "app.listen() needs to be called before calling app.getUrl()" }; exports2.APP_INTERCEPTOR = "APP_INTERCEPTOR"; exports2.APP_PIPE = "APP_PIPE"; exports2.APP_GUARD = "APP_GUARD"; exports2.APP_FILTER = "APP_FILTER"; exports2.ENHANCER_TOKEN_TO_SUBTYPE_MAP = { [exports2.APP_GUARD]: "guard", [exports2.APP_INTERCEPTOR]: "interceptor", [exports2.APP_PIPE]: "pipe", [exports2.APP_FILTER]: "filter" }; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/metadata-scanner.js var require_metadata_scanner = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/metadata-scanner.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MetadataScanner = void 0; var shared_utils_1 = require_shared_utils(); var MetadataScanner = class { static { __name(this, "MetadataScanner"); } constructor() { this.cachedScannedPrototypes = /* @__PURE__ */ new Map(); } /** * @deprecated * @see {@link getAllMethodNames} * @see getAllMethodNames */ scanFromPrototype(instance, prototype, callback) { if (!prototype) { return []; } const visitedNames = /* @__PURE__ */ new Map(); const result = []; do { for (const property of Object.getOwnPropertyNames(prototype)) { if (visitedNames.has(property)) { continue; } visitedNames.set(property, true); const descriptor = Object.getOwnPropertyDescriptor(prototype, property); if (descriptor.set || descriptor.get || (0, shared_utils_1.isConstructor)(property) || !(0, shared_utils_1.isFunction)(prototype[property])) { continue; } const value = callback(property); if ((0, shared_utils_1.isNil)(value)) { continue; } result.push(value); } } while ((prototype = Reflect.getPrototypeOf(prototype)) && prototype !== Object.prototype); return result; } /** * @deprecated * @see {@link getAllMethodNames} * @see getAllMethodNames */ *getAllFilteredMethodNames(prototype) { yield* this.getAllMethodNames(prototype); } getAllMethodNames(prototype) { if (!prototype) { return []; } if (this.cachedScannedPrototypes.has(prototype)) { return this.cachedScannedPrototypes.get(prototype); } const visitedNames = /* @__PURE__ */ new Map(); const result = []; this.cachedScannedPrototypes.set(prototype, result); do { for (const property of Object.getOwnPropertyNames(prototype)) { if (visitedNames.has(property)) { continue; } visitedNames.set(property, true); const descriptor = Object.getOwnPropertyDescriptor(prototype, property); if (descriptor.set || descriptor.get || (0, shared_utils_1.isConstructor)(property) || !(0, shared_utils_1.isFunction)(prototype[property])) { continue; } result.push(property); } } while ((prototype = Reflect.getPrototypeOf(prototype)) && prototype !== Object.prototype); return result; } }; exports2.MetadataScanner = MetadataScanner; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/modules-container.js var require_modules_container = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/modules-container.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ModulesContainer = void 0; var uid_1 = require_dist(); var ModulesContainer = class extends Map { static { __name(this, "ModulesContainer"); } constructor() { super(...arguments); this._applicationId = (0, uid_1.uid)(21); } get applicationId() { return this._applicationId; } getById(id) { return Array.from(this.values()).find((moduleRef) => moduleRef.id === id); } }; exports2.ModulesContainer = ModulesContainer; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/discovery/discoverable-meta-host-collection.js var require_discoverable_meta_host_collection = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/discovery/discoverable-meta-host-collection.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DiscoverableMetaHostCollection = void 0; var DiscoverableMetaHostCollection = class _DiscoverableMetaHostCollection { static { __name(this, "DiscoverableMetaHostCollection"); } /** * Adds a link between a class reference and a metadata key. * @param target The class reference. * @param metadataKey The metadata key. */ static addClassMetaHostLink(target, metadataKey) { this.metaHostLinks.set(target, metadataKey); } /** * Inspects a provider instance wrapper and adds it to the collection of providers * if it has a metadata key. * @param hostContainerRef A reference to the modules container. * @param instanceWrapper A provider instance wrapper. * @returns void */ static inspectProvider(hostContainerRef, instanceWrapper) { return this.inspectInstanceWrapper(hostContainerRef, instanceWrapper, this.providersByMetaKey); } /** * Inspects a controller instance wrapper and adds it to the collection of controllers * if it has a metadata key. * @param hostContainerRef A reference to the modules container. * @param instanceWrapper A controller's instance wrapper. * @returns void */ static inspectController(hostContainerRef, instanceWrapper) { return this.inspectInstanceWrapper(hostContainerRef, instanceWrapper, this.controllersByMetaKey); } static insertByMetaKey(metaKey, instanceWrapper, collection) { if (collection.has(metaKey)) { const wrappers = collection.get(metaKey); wrappers.add(instanceWrapper); } else { const wrappers = /* @__PURE__ */ new Set(); wrappers.add(instanceWrapper); collection.set(metaKey, wrappers); } } static getProvidersByMetaKey(hostContainerRef, metaKey) { const wrappersByMetaKey = this.providersByMetaKey.get(hostContainerRef); return wrappersByMetaKey?.get(metaKey) ?? /* @__PURE__ */ new Set(); } static getControllersByMetaKey(hostContainerRef, metaKey) { const wrappersByMetaKey = this.controllersByMetaKey.get(hostContainerRef); return wrappersByMetaKey?.get(metaKey) ?? /* @__PURE__ */ new Set(); } static inspectInstanceWrapper(hostContainerRef, instanceWrapper, wrapperByMetaKeyMap) { const metaKey = _DiscoverableMetaHostCollection.getMetaKeyByInstanceWrapper(instanceWrapper); if (!metaKey) { return; } let collection; if (wrapperByMetaKeyMap.has(hostContainerRef)) { collection = wrapperByMetaKeyMap.get(hostContainerRef); } else { collection = /* @__PURE__ */ new Map(); wrapperByMetaKeyMap.set(hostContainerRef, collection); } this.insertByMetaKey(metaKey, instanceWrapper, collection); } static getMetaKeyByInstanceWrapper(instanceWrapper) { return this.metaHostLinks.get( // NOTE: Regarding the ternary statement below, // - The condition `!wrapper.metatype` is needed because when we use `useValue` // the value of `wrapper.metatype` will be `null`. // - The condition `wrapper.inject` is needed here because when we use // `useFactory`, the value of `wrapper.metatype` will be the supplied // factory function. // For both cases, we should use `wrapper.instance.constructor` instead // of `wrapper.metatype` to resolve processor's class properly. // But since calling `wrapper.instance` could degrade overall performance // we must defer it as much we can. instanceWrapper.metatype || instanceWrapper.inject ? instanceWrapper.instance?.constructor ?? instanceWrapper.metatype : instanceWrapper.metatype ); } }; exports2.DiscoverableMetaHostCollection = DiscoverableMetaHostCollection; DiscoverableMetaHostCollection.metaHostLinks = /* @__PURE__ */ new Map(); DiscoverableMetaHostCollection.providersByMetaKey = /* @__PURE__ */ new WeakMap(); DiscoverableMetaHostCollection.controllersByMetaKey = /* @__PURE__ */ new WeakMap(); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/discovery/discovery-service.js var require_discovery_service = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/discovery/discovery-service.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DiscoveryService = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var uid_1 = require_dist(); var modules_container_1 = require_modules_container(); var discoverable_meta_host_collection_1 = require_discoverable_meta_host_collection(); var DiscoveryService = class DiscoveryService { static { __name(this, "DiscoveryService"); } constructor(modulesContainer) { this.modulesContainer = modulesContainer; } /** * Creates a decorator that can be used to decorate classes and methods with metadata. * The decorator will also add the class to the collection of discoverable classes (by metadata key). * Decorated classes can be discovered using the `getProviders` and `getControllers` methods. * @returns A decorator function. */ static createDecorator() { const metadataKey = (0, uid_1.uid)(21); const decoratorFn = /* @__PURE__ */ __name((opts) => (target, key, descriptor) => { if (!descriptor) { discoverable_meta_host_collection_1.DiscoverableMetaHostCollection.addClassMetaHostLink(target, metadataKey); } (0, common_12.SetMetadata)(metadataKey, opts ?? {})(target, key, descriptor); }, "decoratorFn"); decoratorFn.KEY = metadataKey; return decoratorFn; } /** * Returns an array of instance wrappers (providers). * Depending on the options, the array will contain either all providers or only providers with the specified metadata key. * @param options Discovery options. * @param modules A list of modules to filter by. * @returns An array of instance wrappers (providers). */ getProviders(options = {}, modules = this.getModules(options)) { if ("metadataKey" in options) { const providers2 = discoverable_meta_host_collection_1.DiscoverableMetaHostCollection.getProvidersByMetaKey(this.modulesContainer, options.metadataKey); return Array.from(providers2); } const providers = modules.map((item) => [...item.providers.values()]); return (0, common_12.flatten)(providers); } /** * Returns an array of instance wrappers (controllers). * Depending on the options, the array will contain either all controllers or only controllers with the specified metadata key. * @param options Discovery options. * @param modules A list of modules to filter by. * @returns An array of instance wrappers (controllers). */ getControllers(options = {}, modules = this.getModules(options)) { if ("metadataKey" in options) { const controllers2 = discoverable_meta_host_collection_1.DiscoverableMetaHostCollection.getControllersByMetaKey(this.modulesContainer, options.metadataKey); return Array.from(controllers2); } const controllers = modules.map((item) => [...item.controllers.values()]); return (0, common_12.flatten)(controllers); } /** * Retrieves metadata from the specified instance wrapper. * @param decorator The decorator to retrieve metadata of. * @param instanceWrapper Reference to the instance wrapper. * @param methodKey An optional method key to retrieve metadata from. * @returns Discovered metadata. */ getMetadataByDecorator(decorator, instanceWrapper, methodKey) { if (methodKey) { return Reflect.getMetadata(decorator.KEY, instanceWrapper.instance[methodKey]); } const clsRef = instanceWrapper.instance?.constructor ?? instanceWrapper.metatype; return Reflect.getMetadata(decorator.KEY, clsRef); } /** * Returns a list of modules to be used for discovery. */ getModules(options = {}) { const includeInOpts = "include" in options; if (!includeInOpts) { const moduleRefs = [...this.modulesContainer.values()]; return moduleRefs; } const whitelisted = this.includeWhitelisted(options.include); return whitelisted; } includeWhitelisted(include) { const moduleRefs = [...this.modulesContainer.values()]; return moduleRefs.filter(({ metatype }) => include.some((item) => item === metatype)); } }; exports2.DiscoveryService = DiscoveryService; exports2.DiscoveryService = DiscoveryService = tslib_1.__decorate([ (0, common_12.Injectable)(), tslib_1.__metadata("design:paramtypes", [modules_container_1.ModulesContainer]) ], DiscoveryService); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/discovery/discovery-module.js var require_discovery_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/discovery/discovery-module.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DiscoveryModule = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var metadata_scanner_1 = require_metadata_scanner(); var discovery_service_1 = require_discovery_service(); var DiscoveryModule = class DiscoveryModule { static { __name(this, "DiscoveryModule"); } }; exports2.DiscoveryModule = DiscoveryModule; exports2.DiscoveryModule = DiscoveryModule = tslib_1.__decorate([ (0, common_12.Module)({ providers: [metadata_scanner_1.MetadataScanner, discovery_service_1.DiscoveryService], exports: [metadata_scanner_1.MetadataScanner, discovery_service_1.DiscoveryService] }) ], DiscoveryModule); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/discovery/index.js var require_discovery = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/discovery/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_discovery_module(), exports2); tslib_1.__exportStar(require_discovery_service(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/http-adapter-host.js var require_http_adapter_host = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/http-adapter-host.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.HttpAdapterHost = void 0; var rxjs_1 = require_cjs3(); var HttpAdapterHost = class { static { __name(this, "HttpAdapterHost"); } constructor() { this._listen$ = new rxjs_1.Subject(); this.isListening = false; } /** * Accessor for the underlying `HttpAdapter` * * @param httpAdapter reference to the `HttpAdapter` to be set */ set httpAdapter(httpAdapter) { this._httpAdapter = httpAdapter; } /** * Accessor for the underlying `HttpAdapter` * * @example * `const httpAdapter = adapterHost.httpAdapter;` */ get httpAdapter() { return this._httpAdapter; } /** * Observable that allows to subscribe to the `listen` event. * This event is emitted when the HTTP application is listening for incoming requests. */ get listen$() { return this._listen$.asObservable(); } /** * Sets the listening state of the application. */ set listening(listening) { this.isListening = listening; if (listening) { this._listen$.next(); this._listen$.complete(); } } /** * Returns a boolean indicating whether the application is listening for incoming requests. */ get listening() { return this.isListening; } }; exports2.HttpAdapterHost = HttpAdapterHost; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/base-exception-filter.js var require_base_exception_filter = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/base-exception-filter.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BaseExceptionFilter = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var shared_utils_1 = require_shared_utils(); var constants_1 = require_constants4(); var http_adapter_host_1 = require_http_adapter_host(); var BaseExceptionFilter = class _BaseExceptionFilter { static { __name(this, "BaseExceptionFilter"); } constructor(applicationRef) { this.applicationRef = applicationRef; } catch(exception, host) { const applicationRef = this.applicationRef || this.httpAdapterHost && this.httpAdapterHost.httpAdapter; if (!(exception instanceof common_12.HttpException)) { return this.handleUnknownError(exception, host, applicationRef); } const res = exception.getResponse(); const message = (0, shared_utils_1.isObject)(res) ? res : { statusCode: exception.getStatus(), message: res }; const response = host.getArgByIndex(1); if (!applicationRef.isHeadersSent(response)) { applicationRef.reply(response, message, exception.getStatus()); } else { applicationRef.end(response); } } handleUnknownError(exception, host, applicationRef) { const body = this.isHttpError(exception) ? { statusCode: exception.statusCode, message: exception.message } : { statusCode: common_12.HttpStatus.INTERNAL_SERVER_ERROR, message: constants_1.MESSAGES.UNKNOWN_EXCEPTION_MESSAGE }; const response = host.getArgByIndex(1); if (!applicationRef.isHeadersSent(response)) { applicationRef.reply(response, body, body.statusCode); } else { applicationRef.end(response); } if (this.isExceptionObject(exception)) { return _BaseExceptionFilter.logger.error(exception.message, exception.stack); } return _BaseExceptionFilter.logger.error(exception); } isExceptionObject(err) { return (0, shared_utils_1.isObject)(err) && !!err.message; } /** * Checks if the thrown error comes from the "http-errors" library. * @param err error object */ isHttpError(err) { return err?.statusCode && err?.message; } }; exports2.BaseExceptionFilter = BaseExceptionFilter; BaseExceptionFilter.logger = new common_12.Logger("ExceptionsHandler"); tslib_1.__decorate([ (0, common_12.Optional)(), (0, common_12.Inject)(), tslib_1.__metadata("design:type", http_adapter_host_1.HttpAdapterHost) ], BaseExceptionFilter.prototype, "httpAdapterHost", void 0); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/index.js var require_exceptions2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_base_exception_filter(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/request/request-constants.js var require_request_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/request/request-constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.REQUEST_CONTEXT_ID = exports2.REQUEST = void 0; exports2.REQUEST = "REQUEST"; exports2.REQUEST_CONTEXT_ID = Symbol("REQUEST_CONTEXT_ID"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/context-id-factory.js var require_context_id_factory = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/context-id-factory.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ContextIdFactory = void 0; exports2.createContextId = createContextId; var shared_utils_1 = require_shared_utils(); var request_constants_1 = require_request_constants(); function createContextId() { return { id: Math.random() }; } __name(createContextId, "createContextId"); var ContextIdFactory = class _ContextIdFactory { static { __name(this, "ContextIdFactory"); } /** * Generates a context identifier based on the request object. */ static create() { return createContextId(); } /** * Generates a random identifier to track asynchronous execution context. * @param request request object */ static getByRequest(request, propsToInspect = ["raw"]) { if (!request) { return _ContextIdFactory.create(); } if (request[request_constants_1.REQUEST_CONTEXT_ID]) { return request[request_constants_1.REQUEST_CONTEXT_ID]; } for (const key of propsToInspect) { if (request[key]?.[request_constants_1.REQUEST_CONTEXT_ID]) { return request[key][request_constants_1.REQUEST_CONTEXT_ID]; } } if (!this.strategy) { return _ContextIdFactory.create(); } const contextId = createContextId(); const resolverObjectOrFunction = this.strategy.attach(contextId, request); if (this.isContextIdResolverWithPayload(resolverObjectOrFunction)) { contextId.getParent = resolverObjectOrFunction.resolve; contextId.payload = resolverObjectOrFunction.payload; } else { contextId.getParent = resolverObjectOrFunction; } return contextId; } /** * Registers a custom context id strategy that lets you attach * a parent context id to the existing context id object. * @param strategy strategy instance */ static apply(strategy) { this.strategy = strategy; } static isContextIdResolverWithPayload(resolverOrResolverFn) { return (0, shared_utils_1.isObject)(resolverOrResolverFn); } }; exports2.ContextIdFactory = ContextIdFactory; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/constants.js var require_constants5 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.STATIC_CONTEXT = exports2.CONTROLLER_ID_KEY = void 0; exports2.CONTROLLER_ID_KEY = "CONTROLLER_ID"; var STATIC_CONTEXT_ID = 1; exports2.STATIC_CONTEXT = Object.freeze({ id: STATIC_CONTEXT_ID }); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/context-creator.js var require_context_creator = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/context-creator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ContextCreator = void 0; var constants_1 = require_constants5(); var ContextCreator = class { static { __name(this, "ContextCreator"); } createContext(instance, callback, metadataKey, contextId = constants_1.STATIC_CONTEXT, inquirerId) { const globalMetadata = this.getGlobalMetadata && this.getGlobalMetadata(contextId, inquirerId); const classMetadata = this.reflectClassMetadata(instance, metadataKey); const methodMetadata = this.reflectMethodMetadata(callback, metadataKey); return [ ...this.createConcreteContext(globalMetadata || [], contextId, inquirerId), ...this.createConcreteContext(classMetadata, contextId, inquirerId), ...this.createConcreteContext(methodMetadata, contextId, inquirerId) ]; } reflectClassMetadata(instance, metadataKey) { const prototype = Object.getPrototypeOf(instance); return Reflect.getMetadata(metadataKey, prototype.constructor); } reflectMethodMetadata(callback, metadataKey) { return Reflect.getMetadata(metadataKey, callback); } getContextId(contextId, instanceWrapper) { return contextId.getParent ? contextId.getParent({ token: instanceWrapper.token, isTreeDurable: instanceWrapper.isDependencyTreeDurable() }) : contextId; } }; exports2.ContextCreator = ContextCreator; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/base-exception-filter-context.js var require_base_exception_filter_context = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/base-exception-filter-context.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BaseExceptionFilterContext = void 0; var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var context_creator_1 = require_context_creator(); var constants_2 = require_constants5(); var BaseExceptionFilterContext = class extends context_creator_1.ContextCreator { static { __name(this, "BaseExceptionFilterContext"); } constructor(container) { super(); this.container = container; } createConcreteContext(metadata, contextId = constants_2.STATIC_CONTEXT, inquirerId) { if ((0, shared_utils_1.isEmpty)(metadata)) { return []; } return (0, iterare_1.iterate)(metadata).filter((instance) => instance && ((0, shared_utils_1.isFunction)(instance.catch) || instance.name)).map((filter) => this.getFilterInstance(filter, contextId, inquirerId)).filter((item) => !!item).map((instance) => ({ func: instance.catch.bind(instance), exceptionMetatypes: this.reflectCatchExceptions(instance) })).toArray(); } getFilterInstance(filter, contextId = constants_2.STATIC_CONTEXT, inquirerId) { const isObject2 = filter.catch; if (isObject2) { return filter; } const instanceWrapper = this.getInstanceByMetatype(filter); if (!instanceWrapper) { return null; } const instanceHost = instanceWrapper.getInstanceByContextId(this.getContextId(contextId, instanceWrapper), inquirerId); return instanceHost && instanceHost.instance; } getInstanceByMetatype(metatype) { if (!this.moduleContext) { return; } const collection = this.container.getModules(); const moduleRef = collection.get(this.moduleContext); if (!moduleRef) { return; } return moduleRef.injectables.get(metatype); } reflectCatchExceptions(instance) { const prototype = Object.getPrototypeOf(instance); return Reflect.getMetadata(constants_1.FILTER_CATCH_EXCEPTIONS, prototype.constructor) || []; } }; exports2.BaseExceptionFilterContext = BaseExceptionFilterContext; } }); // ../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/select-exception-filter-metadata.util.js var require_select_exception_filter_metadata_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+common@10.4.22_clas_c8872b1a5dce14d4b2b176f4857d0d0c/node_modules/@nestjs/common/utils/select-exception-filter-metadata.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.selectExceptionFilterMetadata = void 0; var selectExceptionFilterMetadata = /* @__PURE__ */ __name((filters, exception) => filters.find(({ exceptionMetatypes }) => !exceptionMetatypes.length || exceptionMetatypes.some((ExceptionMetaType) => exception instanceof ExceptionMetaType)), "selectExceptionFilterMetadata"); exports2.selectExceptionFilterMetadata = selectExceptionFilterMetadata; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/external-exception-filter.js var require_external_exception_filter = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/external-exception-filter.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExternalExceptionFilter = void 0; var common_12 = require_common(); var ExternalExceptionFilter = class _ExternalExceptionFilter { static { __name(this, "ExternalExceptionFilter"); } catch(exception, host) { if (exception instanceof Error && !(exception instanceof common_12.HttpException)) { _ExternalExceptionFilter.logger.error(exception.message, exception.stack); } throw exception; } }; exports2.ExternalExceptionFilter = ExternalExceptionFilter; ExternalExceptionFilter.logger = new common_12.Logger("ExceptionsHandler"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/runtime.exception.js var require_runtime_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/runtime.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RuntimeException = void 0; var RuntimeException = class extends Error { static { __name(this, "RuntimeException"); } constructor(message = ``) { super(message); } what() { return this.message; } }; exports2.RuntimeException = RuntimeException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/messages.js var require_messages = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/messages.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MICROSERVICES_PACKAGE_NOT_FOUND_EXCEPTION = exports2.INVALID_EXCEPTION_FILTER = exports2.UNHANDLED_RUNTIME_EXCEPTION = exports2.INVALID_MIDDLEWARE_CONFIGURATION = exports2.UNKNOWN_REQUEST_MAPPING = exports2.INVALID_CLASS_SCOPE_MESSAGE = exports2.INVALID_CLASS_MESSAGE = exports2.UNKNOWN_EXPORT_MESSAGE = exports2.UNDEFINED_MODULE_MESSAGE = exports2.USING_INVALID_CLASS_AS_A_MODULE_MESSAGE = exports2.INVALID_MODULE_MESSAGE = exports2.UNDEFINED_FORWARDREF_MESSAGE = exports2.INVALID_MIDDLEWARE_MESSAGE = exports2.UNKNOWN_DEPENDENCIES_MESSAGE = void 0; var shared_utils_1 = require_shared_utils(); var getInstanceName = /* @__PURE__ */ __name((instance) => { if (instance?.forwardRef) { return instance.forwardRef()?.name; } if (instance?.module) { return instance.module?.name; } return instance?.name; }, "getInstanceName"); var getDependencyName = /* @__PURE__ */ __name((dependency, fallbackValue, disambiguated = true) => ( // use class name getInstanceName(dependency) || // use injection token (symbol) (0, shared_utils_1.isSymbol)(dependency) && dependency.toString() || // use string directly (dependency ? disambiguated ? `"${dependency}"` : dependency : void 0) || // otherwise fallbackValue ), "getDependencyName"); var getModuleName = /* @__PURE__ */ __name((module3) => module3 && getInstanceName(module3.metatype) || "current", "getModuleName"); var stringifyScope = /* @__PURE__ */ __name((scope) => (scope || []).map(getInstanceName).join(" -> "), "stringifyScope"); var UNKNOWN_DEPENDENCIES_MESSAGE = /* @__PURE__ */ __name((type, unknownDependencyContext, module3) => { const { index, name, dependencies, key } = unknownDependencyContext; const moduleName = getModuleName(module3); const dependencyName = getDependencyName(name, "dependency"); const potentialSolutions = ( // If module's name is well defined moduleName !== "current" ? ` Potential solutions: - Is ${moduleName} a valid NestJS module? - If ${dependencyName} is a provider, is it part of the current ${moduleName}? - If ${dependencyName} is exported from a separate @Module, is that module imported within ${moduleName}? @Module({ imports: [ /* the Module containing ${dependencyName} */ ] }) ` : ` Potential solutions: - If ${dependencyName} is a provider, is it part of the current Module? - If ${dependencyName} is exported from a separate @Module, is that module imported within Module? @Module({ imports: [ /* the Module containing ${dependencyName} */ ] }) ` ); let message = `Nest can't resolve dependencies of the ${type.toString()}`; if ((0, shared_utils_1.isNil)(index)) { message += `. Please make sure that the "${key.toString()}" property is available in the current context.${potentialSolutions}`; return message; } const dependenciesName = (dependencies || []).map((dependencyName2) => getDependencyName(dependencyName2, "+", false)); dependenciesName[index] = "?"; message += ` (`; message += dependenciesName.join(", "); message += `). Please make sure that the argument ${dependencyName} at index [${index}] is available in the ${moduleName} context.`; message += potentialSolutions; return message; }, "UNKNOWN_DEPENDENCIES_MESSAGE"); exports2.UNKNOWN_DEPENDENCIES_MESSAGE = UNKNOWN_DEPENDENCIES_MESSAGE; var INVALID_MIDDLEWARE_MESSAGE = /* @__PURE__ */ __name((text, name) => `The middleware doesn't provide the 'use' method (${name})`, "INVALID_MIDDLEWARE_MESSAGE"); exports2.INVALID_MIDDLEWARE_MESSAGE = INVALID_MIDDLEWARE_MESSAGE; var UNDEFINED_FORWARDREF_MESSAGE = /* @__PURE__ */ __name((scope) => `Nest cannot create the module instance. Often, this is because of a circular dependency between modules. Use forwardRef() to avoid it. (Read more: https://docs.nestjs.com/fundamentals/circular-dependency) Scope [${stringifyScope(scope)}] `, "UNDEFINED_FORWARDREF_MESSAGE"); exports2.UNDEFINED_FORWARDREF_MESSAGE = UNDEFINED_FORWARDREF_MESSAGE; var INVALID_MODULE_MESSAGE = /* @__PURE__ */ __name((parentModule, index, scope) => { const parentModuleName = parentModule?.name || "module"; return `Nest cannot create the ${parentModuleName} instance. Received an unexpected value at index [${index}] of the ${parentModuleName} "imports" array. Scope [${stringifyScope(scope)}]`; }, "INVALID_MODULE_MESSAGE"); exports2.INVALID_MODULE_MESSAGE = INVALID_MODULE_MESSAGE; var USING_INVALID_CLASS_AS_A_MODULE_MESSAGE = /* @__PURE__ */ __name((metatypeUsedAsAModule, scope) => { const metatypeNameQuote = `"${getInstanceName(metatypeUsedAsAModule)}"` || "that class"; return `Classes annotated with @Injectable(), @Catch(), and @Controller() decorators must not appear in the "imports" array of a module. Please remove ${metatypeNameQuote} (including forwarded occurrences, if any) from all of the "imports" arrays. Scope [${stringifyScope(scope)}] `; }, "USING_INVALID_CLASS_AS_A_MODULE_MESSAGE"); exports2.USING_INVALID_CLASS_AS_A_MODULE_MESSAGE = USING_INVALID_CLASS_AS_A_MODULE_MESSAGE; var UNDEFINED_MODULE_MESSAGE = /* @__PURE__ */ __name((parentModule, index, scope) => { const parentModuleName = parentModule?.name || "module"; return `Nest cannot create the ${parentModuleName} instance. The module at index [${index}] of the ${parentModuleName} "imports" array is undefined. Potential causes: - A circular dependency between modules. Use forwardRef() to avoid it. Read more: https://docs.nestjs.com/fundamentals/circular-dependency - The module at index [${index}] is of type "undefined". Check your import statements and the type of the module. Scope [${stringifyScope(scope)}]`; }, "UNDEFINED_MODULE_MESSAGE"); exports2.UNDEFINED_MODULE_MESSAGE = UNDEFINED_MODULE_MESSAGE; var UNKNOWN_EXPORT_MESSAGE = /* @__PURE__ */ __name((token = "item", module3) => { token = (0, shared_utils_1.isSymbol)(token) ? token.toString() : token; return `Nest cannot export a provider/module that is not a part of the currently processed module (${module3}). Please verify whether the exported ${token} is available in this particular context. Possible Solutions: - Is ${token} part of the relevant providers/imports within ${module3}? `; }, "UNKNOWN_EXPORT_MESSAGE"); exports2.UNKNOWN_EXPORT_MESSAGE = UNKNOWN_EXPORT_MESSAGE; var INVALID_CLASS_MESSAGE = /* @__PURE__ */ __name((text, value) => `ModuleRef cannot instantiate class (${value} is not constructable).`, "INVALID_CLASS_MESSAGE"); exports2.INVALID_CLASS_MESSAGE = INVALID_CLASS_MESSAGE; var INVALID_CLASS_SCOPE_MESSAGE = /* @__PURE__ */ __name((text, name) => `${name || "This class"} is marked as a scoped provider. Request and transient-scoped providers can't be used in combination with "get()" method. Please, use "resolve()" instead.`, "INVALID_CLASS_SCOPE_MESSAGE"); exports2.INVALID_CLASS_SCOPE_MESSAGE = INVALID_CLASS_SCOPE_MESSAGE; var UNKNOWN_REQUEST_MAPPING = /* @__PURE__ */ __name((metatype) => { const className = metatype.name; return className ? `An invalid controller has been detected. "${className}" does not have the @Controller() decorator but it is being listed in the "controllers" array of some module.` : `An invalid controller has been detected. Perhaps, one of your controllers is missing the @Controller() decorator.`; }, "UNKNOWN_REQUEST_MAPPING"); exports2.UNKNOWN_REQUEST_MAPPING = UNKNOWN_REQUEST_MAPPING; exports2.INVALID_MIDDLEWARE_CONFIGURATION = `An invalid middleware configuration has been passed inside the module 'configure()' method.`; exports2.UNHANDLED_RUNTIME_EXCEPTION = `Unhandled Runtime Exception.`; exports2.INVALID_EXCEPTION_FILTER = `Invalid exception filters (@UseFilters()).`; exports2.MICROSERVICES_PACKAGE_NOT_FOUND_EXCEPTION = `Unable to load @nestjs/microservices package. (Please make sure that it's already installed.)`; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-exception-filter.exception.js var require_invalid_exception_filter_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-exception-filter.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InvalidExceptionFilterException = void 0; var runtime_exception_1 = require_runtime_exception(); var messages_1 = require_messages(); var InvalidExceptionFilterException = class extends runtime_exception_1.RuntimeException { static { __name(this, "InvalidExceptionFilterException"); } constructor() { super(messages_1.INVALID_EXCEPTION_FILTER); } }; exports2.InvalidExceptionFilterException = InvalidExceptionFilterException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/external-exceptions-handler.js var require_external_exceptions_handler = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/external-exceptions-handler.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExternalExceptionsHandler = void 0; var shared_utils_1 = require_shared_utils(); var select_exception_filter_metadata_util_1 = require_select_exception_filter_metadata_util(); var external_exception_filter_1 = require_external_exception_filter(); var invalid_exception_filter_exception_1 = require_invalid_exception_filter_exception(); var ExternalExceptionsHandler = class extends external_exception_filter_1.ExternalExceptionFilter { static { __name(this, "ExternalExceptionsHandler"); } constructor() { super(...arguments); this.filters = []; } next(exception, host) { const result = this.invokeCustomFilters(exception, host); if (result) { return result; } return super.catch(exception, host); } setCustomFilters(filters) { if (!Array.isArray(filters)) { throw new invalid_exception_filter_exception_1.InvalidExceptionFilterException(); } this.filters = filters; } invokeCustomFilters(exception, host) { if ((0, shared_utils_1.isEmpty)(this.filters)) { return null; } const filter = (0, select_exception_filter_metadata_util_1.selectExceptionFilterMetadata)(this.filters, exception); return filter ? filter.func(exception, host) : null; } }; exports2.ExternalExceptionsHandler = ExternalExceptionsHandler; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/external-exception-filter-context.js var require_external_exception_filter_context = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/external-exception-filter-context.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExternalExceptionFilterContext = void 0; var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); var constants_2 = require_constants5(); var base_exception_filter_context_1 = require_base_exception_filter_context(); var external_exceptions_handler_1 = require_external_exceptions_handler(); var iterare_1 = require_lib(); var ExternalExceptionFilterContext = class extends base_exception_filter_context_1.BaseExceptionFilterContext { static { __name(this, "ExternalExceptionFilterContext"); } constructor(container, config) { super(container); this.config = config; } create(instance, callback, module3, contextId = constants_2.STATIC_CONTEXT, inquirerId) { this.moduleContext = module3; const exceptionHandler = new external_exceptions_handler_1.ExternalExceptionsHandler(); const filters = this.createContext(instance, callback, constants_1.EXCEPTION_FILTERS_METADATA, contextId, inquirerId); if ((0, shared_utils_1.isEmpty)(filters)) { return exceptionHandler; } exceptionHandler.setCustomFilters(filters.reverse()); return exceptionHandler; } getGlobalMetadata(contextId = constants_2.STATIC_CONTEXT, inquirerId) { if (!this.config) { return []; } const globalFilters = this.config.getGlobalFilters(); if (contextId === constants_2.STATIC_CONTEXT && !inquirerId) { return globalFilters; } const scopedFilterWrappers = this.config.getGlobalRequestFilters(); const scopedFilters = (0, iterare_1.iterate)(scopedFilterWrappers).map((wrapper) => wrapper.getInstanceByContextId(contextId, inquirerId)).filter((host) => !!host).map((host) => host.instance).toArray(); return globalFilters.concat(scopedFilters); } }; exports2.ExternalExceptionFilterContext = ExternalExceptionFilterContext; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/guards/constants.js var require_constants6 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/guards/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.FORBIDDEN_MESSAGE = void 0; exports2.FORBIDDEN_MESSAGE = "Forbidden resource"; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/execution-context-host.js var require_execution_context_host = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/execution-context-host.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExecutionContextHost = void 0; var ExecutionContextHost = class { static { __name(this, "ExecutionContextHost"); } constructor(args, constructorRef = null, handler = null) { this.args = args; this.constructorRef = constructorRef; this.handler = handler; this.contextType = "http"; } setType(type) { type && (this.contextType = type); } getType() { return this.contextType; } getClass() { return this.constructorRef; } getHandler() { return this.handler; } getArgs() { return this.args; } getArgByIndex(index) { return this.args[index]; } switchToRpc() { return Object.assign(this, { getData: /* @__PURE__ */ __name(() => this.getArgByIndex(0), "getData"), getContext: /* @__PURE__ */ __name(() => this.getArgByIndex(1), "getContext") }); } switchToHttp() { return Object.assign(this, { getRequest: /* @__PURE__ */ __name(() => this.getArgByIndex(0), "getRequest"), getResponse: /* @__PURE__ */ __name(() => this.getArgByIndex(1), "getResponse"), getNext: /* @__PURE__ */ __name(() => this.getArgByIndex(2), "getNext") }); } switchToWs() { return Object.assign(this, { getClient: /* @__PURE__ */ __name(() => this.getArgByIndex(0), "getClient"), getData: /* @__PURE__ */ __name(() => this.getArgByIndex(1), "getData"), getPattern: /* @__PURE__ */ __name(() => this.getArgByIndex(this.getArgs().length - 1), "getPattern") }); } }; exports2.ExecutionContextHost = ExecutionContextHost; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/guards/guards-consumer.js var require_guards_consumer = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/guards/guards-consumer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GuardsConsumer = void 0; var shared_utils_1 = require_shared_utils(); var rxjs_1 = require_cjs3(); var execution_context_host_1 = require_execution_context_host(); var GuardsConsumer = class { static { __name(this, "GuardsConsumer"); } async tryActivate(guards, args, instance, callback, type) { if (!guards || (0, shared_utils_1.isEmpty)(guards)) { return true; } const context = this.createContext(args, instance, callback); context.setType(type); for (const guard of guards) { const result = guard.canActivate(context); if (await this.pickResult(result)) { continue; } return false; } return true; } createContext(args, instance, callback) { return new execution_context_host_1.ExecutionContextHost(args, instance.constructor, callback); } async pickResult(result) { if (result instanceof rxjs_1.Observable) { return (0, rxjs_1.lastValueFrom)(result); } return result; } }; exports2.GuardsConsumer = GuardsConsumer; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/guards/guards-context-creator.js var require_guards_context_creator = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/guards/guards-context-creator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GuardsContextCreator = void 0; var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var context_creator_1 = require_context_creator(); var constants_2 = require_constants5(); var GuardsContextCreator = class extends context_creator_1.ContextCreator { static { __name(this, "GuardsContextCreator"); } constructor(container, config) { super(); this.container = container; this.config = config; } create(instance, callback, module3, contextId = constants_2.STATIC_CONTEXT, inquirerId) { this.moduleContext = module3; return this.createContext(instance, callback, constants_1.GUARDS_METADATA, contextId, inquirerId); } createConcreteContext(metadata, contextId = constants_2.STATIC_CONTEXT, inquirerId) { if ((0, shared_utils_1.isEmpty)(metadata)) { return []; } return (0, iterare_1.iterate)(metadata).filter((guard) => guard && (guard.name || guard.canActivate)).map((guard) => this.getGuardInstance(guard, contextId, inquirerId)).filter((guard) => guard && (0, shared_utils_1.isFunction)(guard.canActivate)).toArray(); } getGuardInstance(metatype, contextId = constants_2.STATIC_CONTEXT, inquirerId) { const isObject2 = metatype.canActivate; if (isObject2) { return metatype; } const instanceWrapper = this.getInstanceByMetatype(metatype); if (!instanceWrapper) { return null; } const instanceHost = instanceWrapper.getInstanceByContextId(this.getContextId(contextId, instanceWrapper), inquirerId); return instanceHost && instanceHost.instance; } getInstanceByMetatype(metatype) { if (!this.moduleContext) { return; } const collection = this.container.getModules(); const moduleRef = collection.get(this.moduleContext); if (!moduleRef) { return; } const injectables = moduleRef.injectables; return injectables.get(metatype); } getGlobalMetadata(contextId = constants_2.STATIC_CONTEXT, inquirerId) { if (!this.config) { return []; } const globalGuards = this.config.getGlobalGuards(); if (contextId === constants_2.STATIC_CONTEXT && !inquirerId) { return globalGuards; } const scopedGuardWrappers = this.config.getGlobalRequestGuards(); const scopedGuards = (0, iterare_1.iterate)(scopedGuardWrappers).map((wrapper) => wrapper.getInstanceByContextId(this.getContextId(contextId, wrapper), inquirerId)).filter((host) => !!host).map((host) => host.instance).toArray(); return globalGuards.concat(scopedGuards); } }; exports2.GuardsContextCreator = GuardsContextCreator; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/guards/index.js var require_guards = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/guards/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_constants6(), exports2); tslib_1.__exportStar(require_guards_consumer(), exports2); tslib_1.__exportStar(require_guards_context_creator(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/interceptors/interceptors-consumer.js var require_interceptors_consumer = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/interceptors/interceptors-consumer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InterceptorsConsumer = void 0; var shared_utils_1 = require_shared_utils(); var async_hooks_1 = require("async_hooks"); var rxjs_1 = require_cjs3(); var operators_1 = require_operators(); var execution_context_host_1 = require_execution_context_host(); var InterceptorsConsumer = class { static { __name(this, "InterceptorsConsumer"); } async intercept(interceptors, args, instance, callback, next, type) { if ((0, shared_utils_1.isEmpty)(interceptors)) { return next(); } const context = this.createContext(args, instance, callback); context.setType(type); const nextFn = /* @__PURE__ */ __name(async (i = 0) => { if (i >= interceptors.length) { return (0, rxjs_1.defer)(async_hooks_1.AsyncResource.bind(() => this.transformDeferred(next))); } const handler = { handle: /* @__PURE__ */ __name(() => (0, rxjs_1.defer)(async_hooks_1.AsyncResource.bind(() => nextFn(i + 1))).pipe((0, operators_1.mergeAll)()), "handle") }; return interceptors[i].intercept(context, handler); }, "nextFn"); return (0, rxjs_1.defer)(() => nextFn()).pipe((0, operators_1.mergeAll)()); } createContext(args, instance, callback) { return new execution_context_host_1.ExecutionContextHost(args, instance.constructor, callback); } transformDeferred(next) { return (0, rxjs_1.from)(next()).pipe((0, operators_1.switchMap)((res) => { const isDeferred = res instanceof Promise || res instanceof rxjs_1.Observable; return isDeferred ? res : Promise.resolve(res); })); } }; exports2.InterceptorsConsumer = InterceptorsConsumer; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/interceptors/interceptors-context-creator.js var require_interceptors_context_creator = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/interceptors/interceptors-context-creator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InterceptorsContextCreator = void 0; var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var context_creator_1 = require_context_creator(); var constants_2 = require_constants5(); var InterceptorsContextCreator = class extends context_creator_1.ContextCreator { static { __name(this, "InterceptorsContextCreator"); } constructor(container, config) { super(); this.container = container; this.config = config; } create(instance, callback, module3, contextId = constants_2.STATIC_CONTEXT, inquirerId) { this.moduleContext = module3; return this.createContext(instance, callback, constants_1.INTERCEPTORS_METADATA, contextId, inquirerId); } createConcreteContext(metadata, contextId = constants_2.STATIC_CONTEXT, inquirerId) { if ((0, shared_utils_1.isEmpty)(metadata)) { return []; } return (0, iterare_1.iterate)(metadata).filter((interceptor) => interceptor && (interceptor.name || interceptor.intercept)).map((interceptor) => this.getInterceptorInstance(interceptor, contextId, inquirerId)).filter((interceptor) => interceptor && (0, shared_utils_1.isFunction)(interceptor.intercept)).toArray(); } getInterceptorInstance(metatype, contextId = constants_2.STATIC_CONTEXT, inquirerId) { const isObject2 = metatype.intercept; if (isObject2) { return metatype; } const instanceWrapper = this.getInstanceByMetatype(metatype); if (!instanceWrapper) { return null; } const instanceHost = instanceWrapper.getInstanceByContextId(this.getContextId(contextId, instanceWrapper), inquirerId); return instanceHost && instanceHost.instance; } getInstanceByMetatype(metatype) { if (!this.moduleContext) { return; } const collection = this.container.getModules(); const moduleRef = collection.get(this.moduleContext); if (!moduleRef) { return; } return moduleRef.injectables.get(metatype); } getGlobalMetadata(contextId = constants_2.STATIC_CONTEXT, inquirerId) { if (!this.config) { return []; } const globalInterceptors = this.config.getGlobalInterceptors(); if (contextId === constants_2.STATIC_CONTEXT && !inquirerId) { return globalInterceptors; } const scopedInterceptorWrappers = this.config.getGlobalRequestInterceptors(); const scopedInterceptors = (0, iterare_1.iterate)(scopedInterceptorWrappers).map((wrapper) => wrapper.getInstanceByContextId(this.getContextId(contextId, wrapper), inquirerId)).filter((host) => !!host).map((host) => host.instance).toArray(); return globalInterceptors.concat(scopedInterceptors); } }; exports2.InterceptorsContextCreator = InterceptorsContextCreator; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/interceptors/index.js var require_interceptors = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/interceptors/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_interceptors_consumer(), exports2); tslib_1.__exportStar(require_interceptors_context_creator(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/pipes/params-token-factory.js var require_params_token_factory = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/pipes/params-token-factory.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParamsTokenFactory = void 0; var route_paramtypes_enum_1 = require_route_paramtypes_enum(); var ParamsTokenFactory = class { static { __name(this, "ParamsTokenFactory"); } exchangeEnumForString(type) { switch (type) { case route_paramtypes_enum_1.RouteParamtypes.BODY: return "body"; case route_paramtypes_enum_1.RouteParamtypes.PARAM: return "param"; case route_paramtypes_enum_1.RouteParamtypes.QUERY: return "query"; default: return "custom"; } } }; exports2.ParamsTokenFactory = ParamsTokenFactory; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/pipes/pipes-consumer.js var require_pipes_consumer = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/pipes/pipes-consumer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PipesConsumer = void 0; var params_token_factory_1 = require_params_token_factory(); var PipesConsumer = class { static { __name(this, "PipesConsumer"); } constructor() { this.paramsTokenFactory = new params_token_factory_1.ParamsTokenFactory(); } async apply(value, { metatype, type, data }, pipes) { const token = this.paramsTokenFactory.exchangeEnumForString(type); return this.applyPipes(value, { metatype, type: token, data }, pipes); } async applyPipes(value, { metatype, type, data }, transforms) { return transforms.reduce(async (deferredValue, pipe) => { const val = await deferredValue; const result = pipe.transform(val, { metatype, type, data }); return result; }, Promise.resolve(value)); } }; exports2.PipesConsumer = PipesConsumer; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/pipes/pipes-context-creator.js var require_pipes_context_creator = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/pipes/pipes-context-creator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PipesContextCreator = void 0; var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var context_creator_1 = require_context_creator(); var constants_2 = require_constants5(); var PipesContextCreator = class extends context_creator_1.ContextCreator { static { __name(this, "PipesContextCreator"); } constructor(container, config) { super(); this.container = container; this.config = config; } create(instance, callback, moduleKey, contextId = constants_2.STATIC_CONTEXT, inquirerId) { this.moduleContext = moduleKey; return this.createContext(instance, callback, constants_1.PIPES_METADATA, contextId, inquirerId); } createConcreteContext(metadata, contextId = constants_2.STATIC_CONTEXT, inquirerId) { if ((0, shared_utils_1.isEmpty)(metadata)) { return []; } return (0, iterare_1.iterate)(metadata).filter((pipe) => pipe && (pipe.name || pipe.transform)).map((pipe) => this.getPipeInstance(pipe, contextId, inquirerId)).filter((pipe) => pipe && pipe.transform && (0, shared_utils_1.isFunction)(pipe.transform)).toArray(); } getPipeInstance(pipe, contextId = constants_2.STATIC_CONTEXT, inquirerId) { const isObject2 = pipe.transform; if (isObject2) { return pipe; } const instanceWrapper = this.getInstanceByMetatype(pipe); if (!instanceWrapper) { return null; } const instanceHost = instanceWrapper.getInstanceByContextId(this.getContextId(contextId, instanceWrapper), inquirerId); return instanceHost && instanceHost.instance; } getInstanceByMetatype(metatype) { if (!this.moduleContext) { return; } const collection = this.container.getModules(); const moduleRef = collection.get(this.moduleContext); if (!moduleRef) { return; } return moduleRef.injectables.get(metatype); } getGlobalMetadata(contextId = constants_2.STATIC_CONTEXT, inquirerId) { if (!this.config) { return []; } const globalPipes = this.config.getGlobalPipes(); if (contextId === constants_2.STATIC_CONTEXT && !inquirerId) { return globalPipes; } const scopedPipeWrappers = this.config.getGlobalRequestPipes(); const scopedPipes = (0, iterare_1.iterate)(scopedPipeWrappers).map((wrapper) => wrapper.getInstanceByContextId(this.getContextId(contextId, wrapper), inquirerId)).filter((host) => !!host).map((host) => host.instance).toArray(); return globalPipes.concat(scopedPipes); } setModuleContext(context) { this.moduleContext = context; } }; exports2.PipesContextCreator = PipesContextCreator; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/pipes/index.js var require_pipes2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/pipes/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_params_token_factory(), exports2); tslib_1.__exportStar(require_pipes_consumer(), exports2); tslib_1.__exportStar(require_pipes_context_creator(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/context-utils.js var require_context_utils = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/context-utils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ContextUtils = void 0; var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); var execution_context_host_1 = require_execution_context_host(); var ContextUtils = class { static { __name(this, "ContextUtils"); } mapParamType(key) { const keyPair = key.split(":"); return keyPair[0]; } reflectCallbackParamtypes(instance, methodName) { return Reflect.getMetadata(constants_1.PARAMTYPES_METADATA, instance, methodName); } reflectCallbackMetadata(instance, methodName, metadataKey) { return Reflect.getMetadata(metadataKey, instance.constructor, methodName); } reflectPassthrough(instance, methodName) { return Reflect.getMetadata(constants_1.RESPONSE_PASSTHROUGH_METADATA, instance.constructor, methodName); } getArgumentsLength(keys, metadata) { return keys.length ? Math.max(...keys.map((key) => metadata[key].index)) + 1 : 0; } createNullArray(length) { const a = new Array(length); for (let i = 0; i < length; ++i) a[i] = void 0; return a; } mergeParamsMetatypes(paramsProperties, paramtypes) { if (!paramtypes) { return paramsProperties; } return paramsProperties.map((param) => ({ ...param, metatype: paramtypes[param.index] })); } getCustomFactory(factory, data, contextFactory) { return (0, shared_utils_1.isFunction)(factory) ? (...args) => factory(data, contextFactory(args)) : () => null; } getContextFactory(contextType, instance, callback) { const type = instance && instance.constructor; return (args) => { const ctx = new execution_context_host_1.ExecutionContextHost(args, type, callback); ctx.setType(contextType); return ctx; }; } }; exports2.ContextUtils = ContextUtils; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/external-proxy.js var require_external_proxy = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/external-proxy.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExternalErrorProxy = void 0; var execution_context_host_1 = require_execution_context_host(); var ExternalErrorProxy = class { static { __name(this, "ExternalErrorProxy"); } createProxy(targetCallback, exceptionsHandler, type) { return async (...args) => { try { return await targetCallback(...args); } catch (e) { const host = new execution_context_host_1.ExecutionContextHost(args); host.setType(type); return exceptionsHandler.next(e, host); } }; } }; exports2.ExternalErrorProxy = ExternalErrorProxy; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/handler-metadata-storage.js var require_handler_metadata_storage = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/handler-metadata-storage.js"(exports2) { "use strict"; var _a; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.HandlerMetadataStorage = exports2.HANDLER_METADATA_SYMBOL = void 0; var constants_1 = require_constants5(); exports2.HANDLER_METADATA_SYMBOL = Symbol.for("handler_metadata:cache"); var HandlerMetadataStorage = class { static { __name(this, "HandlerMetadataStorage"); } constructor() { this[_a] = /* @__PURE__ */ new Map(); } set(controller, methodName, metadata) { const metadataKey = this.getMetadataKey(controller, methodName); this[exports2.HANDLER_METADATA_SYMBOL].set(metadataKey, metadata); } get(controller, methodName) { const metadataKey = this.getMetadataKey(controller, methodName); return this[exports2.HANDLER_METADATA_SYMBOL].get(metadataKey); } getMetadataKey(controller, methodName) { const ctor = controller.constructor; const controllerKey = ctor && (ctor[constants_1.CONTROLLER_ID_KEY] || ctor.name); return controllerKey + methodName; } }; exports2.HandlerMetadataStorage = HandlerMetadataStorage; _a = exports2.HANDLER_METADATA_SYMBOL; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/external-context-creator.js var require_external_context_creator = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/external-context-creator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExternalContextCreator = void 0; var common_12 = require_common(); var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); var rxjs_1 = require_cjs3(); var external_exception_filter_context_1 = require_external_exception_filter_context(); var constants_2 = require_constants6(); var guards_1 = require_guards(); var constants_3 = require_constants5(); var interceptors_1 = require_interceptors(); var pipes_1 = require_pipes2(); var context_utils_1 = require_context_utils(); var external_proxy_1 = require_external_proxy(); var handler_metadata_storage_1 = require_handler_metadata_storage(); var ExternalContextCreator = class _ExternalContextCreator { static { __name(this, "ExternalContextCreator"); } constructor(guardsContextCreator, guardsConsumer, interceptorsContextCreator, interceptorsConsumer, modulesContainer, pipesContextCreator, pipesConsumer, filtersContextCreator) { this.guardsContextCreator = guardsContextCreator; this.guardsConsumer = guardsConsumer; this.interceptorsContextCreator = interceptorsContextCreator; this.interceptorsConsumer = interceptorsConsumer; this.modulesContainer = modulesContainer; this.pipesContextCreator = pipesContextCreator; this.pipesConsumer = pipesConsumer; this.filtersContextCreator = filtersContextCreator; this.contextUtils = new context_utils_1.ContextUtils(); this.externalErrorProxy = new external_proxy_1.ExternalErrorProxy(); this.handlerMetadataStorage = new handler_metadata_storage_1.HandlerMetadataStorage(); } static fromContainer(container) { const guardsContextCreator = new guards_1.GuardsContextCreator(container, container.applicationConfig); const guardsConsumer = new guards_1.GuardsConsumer(); const interceptorsContextCreator = new interceptors_1.InterceptorsContextCreator(container, container.applicationConfig); const interceptorsConsumer = new interceptors_1.InterceptorsConsumer(); const pipesContextCreator = new pipes_1.PipesContextCreator(container, container.applicationConfig); const pipesConsumer = new pipes_1.PipesConsumer(); const filtersContextCreator = new external_exception_filter_context_1.ExternalExceptionFilterContext(container, container.applicationConfig); const externalContextCreator = new _ExternalContextCreator(guardsContextCreator, guardsConsumer, interceptorsContextCreator, interceptorsConsumer, container.getModules(), pipesContextCreator, pipesConsumer, filtersContextCreator); externalContextCreator.container = container; return externalContextCreator; } create(instance, callback, methodName, metadataKey, paramsFactory, contextId = constants_3.STATIC_CONTEXT, inquirerId, options = { interceptors: true, guards: true, filters: true }, contextType = "http") { const module3 = this.getContextModuleKey(instance.constructor); const { argsLength, paramtypes, getParamsMetadata } = this.getMetadata(instance, methodName, metadataKey, paramsFactory, contextType); const pipes = this.pipesContextCreator.create(instance, callback, module3, contextId, inquirerId); const guards = this.guardsContextCreator.create(instance, callback, module3, contextId, inquirerId); const exceptionFilter = this.filtersContextCreator.create(instance, callback, module3, contextId, inquirerId); const interceptors = options.interceptors ? this.interceptorsContextCreator.create(instance, callback, module3, contextId, inquirerId) : []; const paramsMetadata = getParamsMetadata(module3, contextId, inquirerId); const paramsOptions = paramsMetadata ? this.contextUtils.mergeParamsMetatypes(paramsMetadata, paramtypes) : []; const fnCanActivate = options.guards ? this.createGuardsFn(guards, instance, callback, contextType) : null; const fnApplyPipes = this.createPipesFn(pipes, paramsOptions); const handler = /* @__PURE__ */ __name((initialArgs, ...args) => async () => { if (fnApplyPipes) { await fnApplyPipes(initialArgs, ...args); return callback.apply(instance, initialArgs); } return callback.apply(instance, args); }, "handler"); const target = /* @__PURE__ */ __name(async (...args) => { const initialArgs = this.contextUtils.createNullArray(argsLength); fnCanActivate && await fnCanActivate(args); const result = await this.interceptorsConsumer.intercept(interceptors, args, instance, callback, handler(initialArgs, ...args), contextType); return this.transformToResult(result); }, "target"); return options.filters ? this.externalErrorProxy.createProxy(target, exceptionFilter, contextType) : target; } getMetadata(instance, methodName, metadataKey, paramsFactory, contextType) { const cacheMetadata = this.handlerMetadataStorage.get(instance, methodName); if (cacheMetadata) { return cacheMetadata; } const metadata = this.contextUtils.reflectCallbackMetadata(instance, methodName, metadataKey || "") || {}; const keys = Object.keys(metadata); const argsLength = this.contextUtils.getArgumentsLength(keys, metadata); const paramtypes = this.contextUtils.reflectCallbackParamtypes(instance, methodName); const contextFactory = this.contextUtils.getContextFactory(contextType, instance, instance[methodName]); const getParamsMetadata = /* @__PURE__ */ __name((moduleKey, contextId = constants_3.STATIC_CONTEXT, inquirerId) => paramsFactory ? this.exchangeKeysForValues(keys, metadata, moduleKey, paramsFactory, contextId, inquirerId, contextFactory) : null, "getParamsMetadata"); const handlerMetadata = { argsLength, paramtypes, getParamsMetadata }; this.handlerMetadataStorage.set(instance, methodName, handlerMetadata); return handlerMetadata; } getContextModuleKey(moduleCtor) { const emptyModuleKey = ""; if (!moduleCtor) { return emptyModuleKey; } const moduleContainerEntries = this.modulesContainer.entries(); for (const [key, moduleRef] of moduleContainerEntries) { if (moduleRef.hasProvider(moduleCtor)) { return key; } } return emptyModuleKey; } exchangeKeysForValues(keys, metadata, moduleContext, paramsFactory, contextId = constants_3.STATIC_CONTEXT, inquirerId, contextFactory = this.contextUtils.getContextFactory("http")) { this.pipesContextCreator.setModuleContext(moduleContext); return keys.map((key) => { const { index, data, pipes: pipesCollection } = metadata[key]; const pipes = this.pipesContextCreator.createConcreteContext(pipesCollection, contextId, inquirerId); const type = this.contextUtils.mapParamType(key); if (key.includes(constants_1.CUSTOM_ROUTE_ARGS_METADATA)) { const { factory } = metadata[key]; const customExtractValue = this.contextUtils.getCustomFactory(factory, data, contextFactory); return { index, extractValue: customExtractValue, type, data, pipes }; } const numericType = Number(type); const extractValue = /* @__PURE__ */ __name((...args) => paramsFactory.exchangeKeyForValue(numericType, data, args), "extractValue"); return { index, extractValue, type: numericType, data, pipes }; }); } createPipesFn(pipes, paramsOptions) { const pipesFn = /* @__PURE__ */ __name(async (args, ...params) => { const resolveParamValue = /* @__PURE__ */ __name(async (param) => { const { index, extractValue, type, data, metatype, pipes: paramPipes } = param; const value = extractValue(...params); args[index] = await this.getParamValue(value, { metatype, type, data }, pipes.concat(paramPipes)); }, "resolveParamValue"); await Promise.all(paramsOptions.map(resolveParamValue)); }, "pipesFn"); return paramsOptions.length ? pipesFn : null; } async getParamValue(value, { metatype, type, data }, pipes) { return (0, shared_utils_1.isEmpty)(pipes) ? value : this.pipesConsumer.apply(value, { metatype, type, data }, pipes); } async transformToResult(resultOrDeferred) { if ((0, rxjs_1.isObservable)(resultOrDeferred)) { return (0, rxjs_1.lastValueFrom)(resultOrDeferred); } return resultOrDeferred; } createGuardsFn(guards, instance, callback, contextType) { const canActivateFn = /* @__PURE__ */ __name(async (args) => { const canActivate = await this.guardsConsumer.tryActivate(guards, args, instance, callback, contextType); if (!canActivate) { throw new common_12.ForbiddenException(constants_2.FORBIDDEN_MESSAGE); } }, "canActivateFn"); return guards.length ? canActivateFn : null; } registerRequestProvider(request, contextId) { this.container.registerRequestProvider(request, contextId); } }; exports2.ExternalContextCreator = ExternalContextCreator; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/index.js var require_helpers = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_context_id_factory(), exports2); tslib_1.__exportStar(require_external_context_creator(), exports2); tslib_1.__exportStar(require_http_adapter_host(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/circular-dependency.exception.js var require_circular_dependency_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/circular-dependency.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CircularDependencyException = void 0; var runtime_exception_1 = require_runtime_exception(); var CircularDependencyException = class extends runtime_exception_1.RuntimeException { static { __name(this, "CircularDependencyException"); } constructor(context) { const ctx = context ? ` inside ${context}` : ``; super(`A circular dependency has been detected${ctx}. Please, make sure that each side of a bidirectional relationships are decorated with "forwardRef()". Note that circular relationships between custom providers (e.g., factories) are not supported since functions cannot be called more than once.`); } }; exports2.CircularDependencyException = CircularDependencyException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/unknown-element.exception.js var require_unknown_element_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/unknown-element.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UnknownElementException = void 0; var runtime_exception_1 = require_runtime_exception(); var UnknownElementException = class extends runtime_exception_1.RuntimeException { static { __name(this, "UnknownElementException"); } constructor(name) { name = name && name.toString(); super(`Nest could not find ${name || "given"} element (this provider does not exist in the current context)`); } }; exports2.UnknownElementException = UnknownElementException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-class-scope.exception.js var require_invalid_class_scope_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-class-scope.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InvalidClassScopeException = void 0; var shared_utils_1 = require_shared_utils(); var messages_1 = require_messages(); var runtime_exception_1 = require_runtime_exception(); var InvalidClassScopeException = class extends runtime_exception_1.RuntimeException { static { __name(this, "InvalidClassScopeException"); } constructor(metatypeOrToken) { let name = (0, shared_utils_1.isFunction)(metatypeOrToken) ? metatypeOrToken.name : metatypeOrToken; name = name && name.toString(); super((0, messages_1.INVALID_CLASS_SCOPE_MESSAGE)`${name}`); } }; exports2.InvalidClassScopeException = InvalidClassScopeException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-class.exception.js var require_invalid_class_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-class.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InvalidClassException = void 0; var messages_1 = require_messages(); var runtime_exception_1 = require_runtime_exception(); var InvalidClassException = class extends runtime_exception_1.RuntimeException { static { __name(this, "InvalidClassException"); } constructor(value) { super((0, messages_1.INVALID_CLASS_MESSAGE)`${value}`); } }; exports2.InvalidClassException = InvalidClassException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/unknown-export.exception.js var require_unknown_export_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/unknown-export.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UnknownExportException = void 0; var messages_1 = require_messages(); var runtime_exception_1 = require_runtime_exception(); var UnknownExportException = class extends runtime_exception_1.RuntimeException { static { __name(this, "UnknownExportException"); } constructor(token, moduleName) { super((0, messages_1.UNKNOWN_EXPORT_MESSAGE)(token, moduleName)); } }; exports2.UnknownExportException = UnknownExportException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/unknown-module.exception.js var require_unknown_module_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/unknown-module.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UnknownModuleException = void 0; var runtime_exception_1 = require_runtime_exception(); var UnknownModuleException = class extends runtime_exception_1.RuntimeException { static { __name(this, "UnknownModuleException"); } constructor(moduleName) { super(`Nest could not select the given module (${moduleName ? `"${moduleName}"` : "it"} does not exist in current context).`); } }; exports2.UnknownModuleException = UnknownModuleException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/undefined-forwardref.exception.js var require_undefined_forwardref_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/undefined-forwardref.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UndefinedForwardRefException = void 0; var messages_1 = require_messages(); var runtime_exception_1 = require_runtime_exception(); var UndefinedForwardRefException = class extends runtime_exception_1.RuntimeException { static { __name(this, "UndefinedForwardRefException"); } constructor(scope) { super((0, messages_1.UNDEFINED_FORWARDREF_MESSAGE)(scope)); } }; exports2.UndefinedForwardRefException = UndefinedForwardRefException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/index.js var require_exceptions3 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_circular_dependency_exception(), exports2); tslib_1.__exportStar(require_runtime_exception(), exports2); tslib_1.__exportStar(require_unknown_element_exception(), exports2); tslib_1.__exportStar(require_invalid_class_scope_exception(), exports2); tslib_1.__exportStar(require_invalid_class_exception(), exports2); tslib_1.__exportStar(require_unknown_export_exception(), exports2); tslib_1.__exportStar(require_unknown_module_exception(), exports2); tslib_1.__exportStar(require_undefined_forwardref_exception(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/initialize-on-preview.allowlist.js var require_initialize_on_preview_allowlist = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/initialize-on-preview.allowlist.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InitializeOnPreviewAllowlist = void 0; var InitializeOnPreviewAllowlist = class { static { __name(this, "InitializeOnPreviewAllowlist"); } static add(type) { this.allowlist.set(type, true); } static has(type) { return this.allowlist.has(type); } }; exports2.InitializeOnPreviewAllowlist = InitializeOnPreviewAllowlist; InitializeOnPreviewAllowlist.allowlist = /* @__PURE__ */ new WeakMap(); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/inquirer/inquirer-constants.js var require_inquirer_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/inquirer/inquirer-constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.INQUIRER = void 0; exports2.INQUIRER = "INQUIRER"; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/helpers/silent-logger.js var require_silent_logger = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/helpers/silent-logger.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SilentLogger = void 0; var common_12 = require_common(); var noop = /* @__PURE__ */ __name(() => { }, "noop"); var SilentLogger = class extends common_12.Logger { static { __name(this, "SilentLogger"); } constructor() { super(...arguments); this.log = noop; this.error = noop; this.warn = noop; this.debug = noop; this.verbose = noop; this.fatal = noop; this.setLogLevels = noop; } }; exports2.SilentLogger = SilentLogger; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/get-class-scope.js var require_get_class_scope = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/get-class-scope.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getClassScope = getClassScope; var constants_1 = require_constants(); function getClassScope(provider) { const metadata = Reflect.getMetadata(constants_1.SCOPE_OPTIONS_METADATA, provider); return metadata && metadata.scope; } __name(getClassScope, "getClassScope"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/is-durable.js var require_is_durable = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/is-durable.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isDurable = isDurable; var constants_1 = require_constants(); function isDurable(provider) { const metadata = Reflect.getMetadata(constants_1.SCOPE_OPTIONS_METADATA, provider); return metadata && metadata.durable; } __name(isDurable, "isDurable"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/abstract-instance-resolver.js var require_abstract_instance_resolver = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/abstract-instance-resolver.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AbstractInstanceResolver = void 0; var common_12 = require_common(); var exceptions_1 = require_exceptions3(); var AbstractInstanceResolver = class { static { __name(this, "AbstractInstanceResolver"); } find(typeOrToken, options) { const instanceLinkOrArray = this.instanceLinksHost.get(typeOrToken, options); const pluckInstance = /* @__PURE__ */ __name(({ wrapperRef }) => { if (wrapperRef.scope === common_12.Scope.REQUEST || wrapperRef.scope === common_12.Scope.TRANSIENT) { throw new exceptions_1.InvalidClassScopeException(typeOrToken); } return wrapperRef.instance; }, "pluckInstance"); if (Array.isArray(instanceLinkOrArray)) { return instanceLinkOrArray.map(pluckInstance); } return pluckInstance(instanceLinkOrArray); } async resolvePerContext(typeOrToken, contextModule, contextId, options) { const instanceLinkOrArray = options?.strict ? this.instanceLinksHost.get(typeOrToken, { moduleId: contextModule.id, each: options.each }) : this.instanceLinksHost.get(typeOrToken, { each: options.each }); const pluckInstance = /* @__PURE__ */ __name(async (instanceLink) => { const { wrapperRef, collection } = instanceLink; if (wrapperRef.isDependencyTreeStatic() && !wrapperRef.isTransient) { return this.get(typeOrToken, { strict: options.strict }); } const ctorHost = wrapperRef.instance || { constructor: typeOrToken }; const instance = await this.injector.loadPerContext(ctorHost, wrapperRef.host, collection, contextId, wrapperRef); if (!instance) { throw new exceptions_1.UnknownElementException(); } return instance; }, "pluckInstance"); if (Array.isArray(instanceLinkOrArray)) { return Promise.all(instanceLinkOrArray.map((instanceLink) => pluckInstance(instanceLink))); } return pluckInstance(instanceLinkOrArray); } }; exports2.AbstractInstanceResolver = AbstractInstanceResolver; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/undefined-dependency.exception.js var require_undefined_dependency_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/undefined-dependency.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UndefinedDependencyException = void 0; var messages_1 = require_messages(); var runtime_exception_1 = require_runtime_exception(); var UndefinedDependencyException = class extends runtime_exception_1.RuntimeException { static { __name(this, "UndefinedDependencyException"); } constructor(type, undefinedDependencyContext, module3) { super((0, messages_1.UNKNOWN_DEPENDENCIES_MESSAGE)(type, undefinedDependencyContext, module3)); } }; exports2.UndefinedDependencyException = UndefinedDependencyException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/unknown-dependencies.exception.js var require_unknown_dependencies_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/unknown-dependencies.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UnknownDependenciesException = void 0; var messages_1 = require_messages(); var runtime_exception_1 = require_runtime_exception(); var UnknownDependenciesException = class extends runtime_exception_1.RuntimeException { static { __name(this, "UnknownDependenciesException"); } constructor(type, context, moduleRef, metadata) { super((0, messages_1.UNKNOWN_DEPENDENCIES_MESSAGE)(type, context, moduleRef)); this.type = type; this.context = context; this.metadata = metadata; this.moduleRef = moduleRef && { id: moduleRef.id }; } }; exports2.UnknownDependenciesException = UnknownDependenciesException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/inquirer/index.js var require_inquirer = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/inquirer/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_inquirer_constants(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/deterministic-uuid-registry.js var require_deterministic_uuid_registry = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/deterministic-uuid-registry.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DeterministicUuidRegistry = void 0; var DeterministicUuidRegistry = class { static { __name(this, "DeterministicUuidRegistry"); } static get(str, inc = 0) { const id = inc ? this.hashCode(`${str}_${inc}`) : this.hashCode(str); if (this.registry.has(id)) { return this.get(str, inc + 1); } this.registry.set(id, true); return id; } static clear() { this.registry.clear(); } static hashCode(s) { let h = 0; for (let i = 0; i < s.length; i++) h = Math.imul(31, h) + s.charCodeAt(i) | 0; return h.toString(); } }; exports2.DeterministicUuidRegistry = DeterministicUuidRegistry; DeterministicUuidRegistry.registry = /* @__PURE__ */ new Map(); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/uuid-factory.js var require_uuid_factory = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/uuid-factory.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UuidFactory = exports2.UuidFactoryMode = void 0; var random_string_generator_util_1 = require_random_string_generator_util(); var deterministic_uuid_registry_1 = require_deterministic_uuid_registry(); var UuidFactoryMode; (function(UuidFactoryMode2) { UuidFactoryMode2["Random"] = "random"; UuidFactoryMode2["Deterministic"] = "deterministic"; })(UuidFactoryMode || (exports2.UuidFactoryMode = UuidFactoryMode = {})); var UuidFactory = class { static { __name(this, "UuidFactory"); } static set mode(value) { this._mode = value; } static get(key = "") { return this._mode === UuidFactoryMode.Deterministic ? deterministic_uuid_registry_1.DeterministicUuidRegistry.get(key) : (0, random_string_generator_util_1.randomStringGenerator)(); } }; exports2.UuidFactory = UuidFactory; UuidFactory._mode = UuidFactoryMode.Random; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/helpers/provider-classifier.js var require_provider_classifier = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/helpers/provider-classifier.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isClassProvider = isClassProvider; exports2.isValueProvider = isValueProvider; exports2.isFactoryProvider = isFactoryProvider; var shared_utils_1 = require_shared_utils(); function isClassProvider(provider) { return Boolean(provider?.useClass); } __name(isClassProvider, "isClassProvider"); function isValueProvider(provider) { const providerValue = provider?.useValue; return !(0, shared_utils_1.isUndefined)(providerValue); } __name(isValueProvider, "isValueProvider"); function isFactoryProvider(provider) { return Boolean(provider.useFactory); } __name(isFactoryProvider, "isFactoryProvider"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/instance-wrapper.js var require_instance_wrapper = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/instance-wrapper.js"(exports2) { "use strict"; var _a; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InstanceWrapper = exports2.INSTANCE_ID_SYMBOL = exports2.INSTANCE_METADATA_SYMBOL = void 0; var common_12 = require_common(); var cli_colors_util_1 = require_cli_colors_util(); var random_string_generator_util_1 = require_random_string_generator_util(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var uuid_factory_1 = require_uuid_factory(); var constants_1 = require_constants5(); var provider_classifier_1 = require_provider_classifier(); exports2.INSTANCE_METADATA_SYMBOL = Symbol.for("instance_metadata:cache"); exports2.INSTANCE_ID_SYMBOL = Symbol.for("instance_metadata:id"); var InstanceWrapper = class _InstanceWrapper { static { __name(this, "InstanceWrapper"); } constructor(metadata = {}) { this.isAlias = false; this.scope = common_12.Scope.DEFAULT; this.values = /* @__PURE__ */ new WeakMap(); this[_a] = {}; this.initialize(metadata); this[exports2.INSTANCE_ID_SYMBOL] = metadata[exports2.INSTANCE_ID_SYMBOL] ?? this.generateUuid(); } get id() { return this[exports2.INSTANCE_ID_SYMBOL]; } set instance(value) { this.values.set(constants_1.STATIC_CONTEXT, { instance: value }); } get instance() { const instancePerContext = this.getInstanceByContextId(constants_1.STATIC_CONTEXT); return instancePerContext.instance; } get isNotMetatype() { return !this.metatype || this.isFactory; } get isFactory() { return this.metatype && !(0, shared_utils_1.isNil)(this.inject); } get isTransient() { return this.scope === common_12.Scope.TRANSIENT; } getInstanceByContextId(contextId, inquirerId) { if (this.scope === common_12.Scope.TRANSIENT && inquirerId) { return this.getInstanceByInquirerId(contextId, inquirerId); } const instancePerContext = this.values.get(contextId); return instancePerContext ? instancePerContext : this.cloneStaticInstance(contextId); } getInstanceByInquirerId(contextId, inquirerId) { let collectionPerContext = this.transientMap.get(inquirerId); if (!collectionPerContext) { collectionPerContext = /* @__PURE__ */ new WeakMap(); this.transientMap.set(inquirerId, collectionPerContext); } const instancePerContext = collectionPerContext.get(contextId); return instancePerContext ? instancePerContext : this.cloneTransientInstance(contextId, inquirerId); } setInstanceByContextId(contextId, value, inquirerId) { if (this.scope === common_12.Scope.TRANSIENT && inquirerId) { return this.setInstanceByInquirerId(contextId, inquirerId, value); } this.values.set(contextId, value); } setInstanceByInquirerId(contextId, inquirerId, value) { let collection = this.transientMap.get(inquirerId); if (!collection) { collection = /* @__PURE__ */ new WeakMap(); this.transientMap.set(inquirerId, collection); } collection.set(contextId, value); } removeInstanceByContextId(contextId, inquirerId) { if (this.scope === common_12.Scope.TRANSIENT && inquirerId) { return this.removeInstanceByInquirerId(contextId, inquirerId); } this.values.delete(contextId); } removeInstanceByInquirerId(contextId, inquirerId) { const collection = this.transientMap.get(inquirerId); if (!collection) { return; } collection.delete(contextId); } addCtorMetadata(index, wrapper) { if (!this[exports2.INSTANCE_METADATA_SYMBOL].dependencies) { this[exports2.INSTANCE_METADATA_SYMBOL].dependencies = []; } this[exports2.INSTANCE_METADATA_SYMBOL].dependencies[index] = wrapper; } getCtorMetadata() { return this[exports2.INSTANCE_METADATA_SYMBOL].dependencies; } addPropertiesMetadata(key, wrapper) { if (!this[exports2.INSTANCE_METADATA_SYMBOL].properties) { this[exports2.INSTANCE_METADATA_SYMBOL].properties = []; } this[exports2.INSTANCE_METADATA_SYMBOL].properties.push({ key, wrapper }); } getPropertiesMetadata() { return this[exports2.INSTANCE_METADATA_SYMBOL].properties; } addEnhancerMetadata(wrapper) { if (!this[exports2.INSTANCE_METADATA_SYMBOL].enhancers) { this[exports2.INSTANCE_METADATA_SYMBOL].enhancers = []; } this[exports2.INSTANCE_METADATA_SYMBOL].enhancers.push(wrapper); } getEnhancersMetadata() { return this[exports2.INSTANCE_METADATA_SYMBOL].enhancers; } isDependencyTreeDurable(lookupRegistry = []) { if (!(0, shared_utils_1.isUndefined)(this.isTreeDurable)) { return this.isTreeDurable; } if (this.scope === common_12.Scope.REQUEST) { this.isTreeDurable = this.durable === void 0 ? false : this.durable; if (this.isTreeDurable) { this.printIntrospectedAsDurable(); } return this.isTreeDurable; } const isStatic = this.isDependencyTreeStatic(); if (isStatic) { return false; } const isTreeNonDurable = this.introspectDepsAttribute((collection, registry) => collection.some((item) => !item.isDependencyTreeStatic() && !item.isDependencyTreeDurable(registry)), lookupRegistry); this.isTreeDurable = !isTreeNonDurable; if (this.isTreeDurable) { this.printIntrospectedAsDurable(); } return this.isTreeDurable; } introspectDepsAttribute(callback, lookupRegistry = []) { if (lookupRegistry.includes(this[exports2.INSTANCE_ID_SYMBOL])) { return false; } lookupRegistry = lookupRegistry.concat(this[exports2.INSTANCE_ID_SYMBOL]); const { dependencies, properties, enhancers } = this[exports2.INSTANCE_METADATA_SYMBOL]; let introspectionResult = dependencies ? callback(dependencies, lookupRegistry) : false; if (introspectionResult || !(properties || enhancers)) { return introspectionResult; } introspectionResult = properties ? callback(properties.map((item) => item.wrapper), lookupRegistry) : false; if (introspectionResult || !enhancers) { return introspectionResult; } return enhancers ? callback(enhancers, lookupRegistry) : false; } isDependencyTreeStatic(lookupRegistry = []) { if (!(0, shared_utils_1.isUndefined)(this.isTreeStatic)) { return this.isTreeStatic; } if (this.scope === common_12.Scope.REQUEST) { this.isTreeStatic = false; this.printIntrospectedAsRequestScoped(); return this.isTreeStatic; } this.isTreeStatic = !this.introspectDepsAttribute((collection, registry) => collection.some((item) => !item.isDependencyTreeStatic(registry)), lookupRegistry); if (!this.isTreeStatic) { this.printIntrospectedAsRequestScoped(); } return this.isTreeStatic; } cloneStaticInstance(contextId) { const staticInstance = this.getInstanceByContextId(constants_1.STATIC_CONTEXT); if (this.isDependencyTreeStatic()) { return staticInstance; } const instancePerContext = { ...staticInstance, instance: void 0, isResolved: false, isPending: false }; if (this.isNewable()) { instancePerContext.instance = Object.create(this.metatype.prototype); } this.setInstanceByContextId(contextId, instancePerContext); return instancePerContext; } cloneTransientInstance(contextId, inquirerId) { const staticInstance = this.getInstanceByContextId(constants_1.STATIC_CONTEXT); const instancePerContext = { ...staticInstance, instance: void 0, isResolved: false, isPending: false }; if (this.isNewable()) { instancePerContext.instance = Object.create(this.metatype.prototype); } this.setInstanceByInquirerId(contextId, inquirerId, instancePerContext); return instancePerContext; } createPrototype(contextId) { const host = this.getInstanceByContextId(contextId); if (!this.isNewable() || host.isResolved) { return; } return Object.create(this.metatype.prototype); } isInRequestScope(contextId, inquirer) { const isDependencyTreeStatic = this.isDependencyTreeStatic(); return !isDependencyTreeStatic && contextId !== constants_1.STATIC_CONTEXT && (!this.isTransient || this.isTransient && !!inquirer); } isLazyTransient(contextId, inquirer) { const isInquirerRequestScoped = inquirer && !inquirer.isDependencyTreeStatic(); return this.isDependencyTreeStatic() && contextId !== constants_1.STATIC_CONTEXT && this.isTransient && isInquirerRequestScoped; } isExplicitlyRequested(contextId, inquirer) { const isSelfRequested = inquirer === this; return this.isDependencyTreeStatic() && contextId !== constants_1.STATIC_CONTEXT && (isSelfRequested || inquirer && inquirer.scope === common_12.Scope.TRANSIENT); } isStatic(contextId, inquirer) { const isInquirerRequestScoped = inquirer && !inquirer.isDependencyTreeStatic(); const isStaticTransient = this.isTransient && !isInquirerRequestScoped; return this.isDependencyTreeStatic() && contextId === constants_1.STATIC_CONTEXT && (!this.isTransient || isStaticTransient && !!inquirer && !inquirer.isTransient); } getStaticTransientInstances() { if (!this.transientMap) { return []; } const instances = [...this.transientMap.values()]; return (0, iterare_1.iterate)(instances).map((item) => item.get(constants_1.STATIC_CONTEXT)).filter((item) => !!item).toArray(); } mergeWith(provider) { if ((0, provider_classifier_1.isValueProvider)(provider)) { this.metatype = null; this.inject = null; this.scope = common_12.Scope.DEFAULT; this.setInstanceByContextId(constants_1.STATIC_CONTEXT, { instance: provider.useValue, isResolved: true, isPending: false }); } else if ((0, provider_classifier_1.isClassProvider)(provider)) { this.inject = null; this.metatype = provider.useClass; } else if ((0, provider_classifier_1.isFactoryProvider)(provider)) { this.metatype = provider.useFactory; this.inject = provider.inject || []; } } isNewable() { return (0, shared_utils_1.isNil)(this.inject) && this.metatype && this.metatype.prototype; } initialize(metadata) { const { instance, isResolved, ...wrapperPartial } = metadata; Object.assign(this, wrapperPartial); this.setInstanceByContextId(constants_1.STATIC_CONTEXT, { instance, isResolved }); this.scope === common_12.Scope.TRANSIENT && (this.transientMap = /* @__PURE__ */ new Map()); } printIntrospectedAsRequestScoped() { if (!this.isDebugMode() || this.name === "REQUEST") { return; } if ((0, shared_utils_1.isString)(this.name)) { _InstanceWrapper.logger.log(`${cli_colors_util_1.clc.cyanBright(this.name)}${cli_colors_util_1.clc.green(" introspected as ")}${cli_colors_util_1.clc.magentaBright("request-scoped")}`); } } printIntrospectedAsDurable() { if (!this.isDebugMode()) { return; } if ((0, shared_utils_1.isString)(this.name)) { _InstanceWrapper.logger.log(`${cli_colors_util_1.clc.cyanBright(this.name)}${cli_colors_util_1.clc.green(" introspected as ")}${cli_colors_util_1.clc.magentaBright("durable")}`); } } isDebugMode() { return !!process.env.NEST_DEBUG; } generateUuid() { let key = this.name?.toString() ?? this.token?.toString(); key += this.host?.name ?? ""; return key ? uuid_factory_1.UuidFactory.get(key) : (0, random_string_generator_util_1.randomStringGenerator)(); } }; exports2.InstanceWrapper = InstanceWrapper; _a = exports2.INSTANCE_METADATA_SYMBOL; InstanceWrapper.logger = new common_12.Logger(InstanceWrapper.name); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/settlement-signal.js var require_settlement_signal = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/settlement-signal.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SettlementSignal = void 0; var SettlementSignal = class { static { __name(this, "SettlementSignal"); } constructor() { this._refs = /* @__PURE__ */ new Set(); this.completed = false; this.settledPromise = new Promise((resolve) => { this.settleFn = resolve; }); } /** * Resolves the promise returned by `asPromise`. */ complete() { this.completed = true; this.settleFn(); } /** * Rejects the promise returned by `asPromise` with the given error. * @param err Error to reject the promise returned by `asPromise` with. */ error(err) { this.completed = true; this.settleFn(err); } /** * Returns a promise that will be resolved when `complete` or `error` is called. * @returns Promise that will be resolved when `complete` or `error` is called. */ asPromise() { return this.settledPromise; } /** * Inserts a wrapper id that the host of this signal depends on. * @param wrapperId Wrapper id to insert. */ insertRef(wrapperId) { this._refs.add(wrapperId); } /** * Check if relationship is circular. * @param wrapperId Wrapper id to check. * @returns True if relationship is circular, false otherwise. */ isCycle(wrapperId) { return !this.completed && this._refs.has(wrapperId); } }; exports2.SettlementSignal = SettlementSignal; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/injector.js var require_injector = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/injector.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Injector = void 0; var common_12 = require_common(); var constants_1 = require_constants(); var cli_colors_util_1 = require_cli_colors_util(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var perf_hooks_1 = require("perf_hooks"); var exceptions_1 = require_exceptions3(); var runtime_exception_1 = require_runtime_exception(); var undefined_dependency_exception_1 = require_undefined_dependency_exception(); var unknown_dependencies_exception_1 = require_unknown_dependencies_exception(); var constants_2 = require_constants5(); var inquirer_1 = require_inquirer(); var instance_wrapper_1 = require_instance_wrapper(); var settlement_signal_1 = require_settlement_signal(); var Injector = class { static { __name(this, "Injector"); } constructor(options) { this.options = options; this.logger = new common_12.Logger("InjectorLogger"); } loadPrototype({ token }, collection, contextId = constants_2.STATIC_CONTEXT) { if (!collection) { return; } const target = collection.get(token); const instance = target.createPrototype(contextId); if (instance) { const wrapper = new instance_wrapper_1.InstanceWrapper({ ...target, instance }); collection.set(token, wrapper); } } async loadInstance(wrapper, collection, moduleRef, contextId = constants_2.STATIC_CONTEXT, inquirer) { const inquirerId = this.getInquirerId(inquirer); const instanceHost = wrapper.getInstanceByContextId(this.getContextId(contextId, wrapper), inquirerId); if (instanceHost.isPending) { const settlementSignal2 = wrapper.settlementSignal; if (inquirer && settlementSignal2?.isCycle(inquirer.id)) { throw new exceptions_1.CircularDependencyException(`"${wrapper.name}"`); } return instanceHost.donePromise.then((err) => { if (err) { throw err; } }); } const settlementSignal = this.applySettlementSignal(instanceHost, wrapper); const token = wrapper.token || wrapper.name; const { inject } = wrapper; const targetWrapper = collection.get(token); if ((0, shared_utils_1.isUndefined)(targetWrapper)) { throw new runtime_exception_1.RuntimeException(); } if (instanceHost.isResolved) { return settlementSignal.complete(); } try { const t0 = this.getNowTimestamp(); const callback = /* @__PURE__ */ __name(async (instances) => { const properties = await this.resolveProperties(wrapper, moduleRef, inject, contextId, wrapper, inquirer); const instance = await this.instantiateClass(instances, wrapper, targetWrapper, contextId, inquirer); this.applyProperties(instance, properties); wrapper.initTime = this.getNowTimestamp() - t0; settlementSignal.complete(); }, "callback"); await this.resolveConstructorParams(wrapper, moduleRef, inject, callback, contextId, wrapper, inquirer); } catch (err) { wrapper.removeInstanceByContextId(this.getContextId(contextId, wrapper), inquirerId); settlementSignal.error(err); throw err; } } async loadMiddleware(wrapper, collection, moduleRef, contextId = constants_2.STATIC_CONTEXT, inquirer) { const { metatype, token } = wrapper; const targetWrapper = collection.get(token); if (!(0, shared_utils_1.isUndefined)(targetWrapper.instance)) { return; } targetWrapper.instance = Object.create(metatype.prototype); await this.loadInstance(wrapper, collection, moduleRef, contextId, inquirer || wrapper); } async loadController(wrapper, moduleRef, contextId = constants_2.STATIC_CONTEXT) { const controllers = moduleRef.controllers; await this.loadInstance(wrapper, controllers, moduleRef, contextId, wrapper); await this.loadEnhancersPerContext(wrapper, contextId, wrapper); } async loadInjectable(wrapper, moduleRef, contextId = constants_2.STATIC_CONTEXT, inquirer) { const injectables = moduleRef.injectables; await this.loadInstance(wrapper, injectables, moduleRef, contextId, inquirer); } async loadProvider(wrapper, moduleRef, contextId = constants_2.STATIC_CONTEXT, inquirer) { const providers = moduleRef.providers; await this.loadInstance(wrapper, providers, moduleRef, contextId, inquirer); await this.loadEnhancersPerContext(wrapper, contextId, wrapper); } applySettlementSignal(instancePerContext, host) { const settlementSignal = new settlement_signal_1.SettlementSignal(); instancePerContext.donePromise = settlementSignal.asPromise(); instancePerContext.isPending = true; host.settlementSignal = settlementSignal; return settlementSignal; } async resolveConstructorParams(wrapper, moduleRef, inject, callback, contextId = constants_2.STATIC_CONTEXT, inquirer, parentInquirer) { let inquirerId = this.getInquirerId(inquirer); const metadata = wrapper.getCtorMetadata(); if (metadata && contextId !== constants_2.STATIC_CONTEXT) { const deps = await this.loadCtorMetadata(metadata, contextId, inquirer, parentInquirer); return callback(deps); } const isFactoryProvider = !(0, shared_utils_1.isNil)(inject); const [dependencies, optionalDependenciesIds] = isFactoryProvider ? this.getFactoryProviderDependencies(wrapper) : this.getClassDependencies(wrapper); let isResolved = true; const resolveParam = /* @__PURE__ */ __name(async (param, index) => { try { if (this.isInquirer(param, parentInquirer)) { return parentInquirer && parentInquirer.instance; } if (inquirer?.isTransient && parentInquirer) { inquirer = parentInquirer; inquirerId = this.getInquirerId(parentInquirer); } const paramWrapper = await this.resolveSingleParam(wrapper, param, { index, dependencies }, moduleRef, contextId, inquirer, index); const instanceHost = paramWrapper.getInstanceByContextId(this.getContextId(contextId, paramWrapper), inquirerId); if (!instanceHost.isResolved && !paramWrapper.forwardRef) { isResolved = false; } return instanceHost?.instance; } catch (err) { const isOptional = optionalDependenciesIds.includes(index); if (!isOptional) { throw err; } return void 0; } }, "resolveParam"); const instances = await Promise.all(dependencies.map(resolveParam)); isResolved && await callback(instances); } getClassDependencies(wrapper) { const ctorRef = wrapper.metatype; return [ this.reflectConstructorParams(ctorRef), this.reflectOptionalParams(ctorRef) ]; } getFactoryProviderDependencies(wrapper) { const optionalDependenciesIds = []; function isOptionalFactoryDependency(value) { return !(0, shared_utils_1.isUndefined)(value.token) && !(0, shared_utils_1.isUndefined)(value.optional) && !value.prototype; } __name(isOptionalFactoryDependency, "isOptionalFactoryDependency"); const mapFactoryProviderInjectArray = /* @__PURE__ */ __name((item, index) => { if (typeof item !== "object") { return item; } if (isOptionalFactoryDependency(item)) { if (item.optional) { optionalDependenciesIds.push(index); } return item?.token; } return item; }, "mapFactoryProviderInjectArray"); return [ wrapper.inject?.map?.(mapFactoryProviderInjectArray), optionalDependenciesIds ]; } reflectConstructorParams(type) { const paramtypes = [ ...Reflect.getMetadata(constants_1.PARAMTYPES_METADATA, type) || [] ]; const selfParams = this.reflectSelfParams(type); selfParams.forEach(({ index, param }) => paramtypes[index] = param); return paramtypes; } reflectOptionalParams(type) { return Reflect.getMetadata(constants_1.OPTIONAL_DEPS_METADATA, type) || []; } reflectSelfParams(type) { return Reflect.getMetadata(constants_1.SELF_DECLARED_DEPS_METADATA, type) || []; } async resolveSingleParam(wrapper, param, dependencyContext, moduleRef, contextId = constants_2.STATIC_CONTEXT, inquirer, keyOrIndex) { if ((0, shared_utils_1.isUndefined)(param)) { this.logger.log("Nest encountered an undefined dependency. This may be due to a circular import or a missing dependency declaration."); throw new undefined_dependency_exception_1.UndefinedDependencyException(wrapper.name, dependencyContext, moduleRef); } const token = this.resolveParamToken(wrapper, param); return this.resolveComponentInstance(moduleRef, token, dependencyContext, wrapper, contextId, inquirer, keyOrIndex); } resolveParamToken(wrapper, param) { if (!param.forwardRef) { return param; } wrapper.forwardRef = true; return param.forwardRef(); } async resolveComponentInstance(moduleRef, token, dependencyContext, wrapper, contextId = constants_2.STATIC_CONTEXT, inquirer, keyOrIndex) { this.printResolvingDependenciesLog(token, inquirer); this.printLookingForProviderLog(token, moduleRef); const providers = moduleRef.providers; const instanceWrapper = await this.lookupComponent(providers, moduleRef, { ...dependencyContext, name: token }, wrapper, contextId, inquirer, keyOrIndex); return this.resolveComponentHost(moduleRef, instanceWrapper, contextId, inquirer); } async resolveComponentHost(moduleRef, instanceWrapper, contextId = constants_2.STATIC_CONTEXT, inquirer) { const inquirerId = this.getInquirerId(inquirer); const instanceHost = instanceWrapper.getInstanceByContextId(this.getContextId(contextId, instanceWrapper), inquirerId); if (!instanceHost.isResolved && !instanceWrapper.forwardRef) { inquirer?.settlementSignal?.insertRef(instanceWrapper.id); await this.loadProvider(instanceWrapper, instanceWrapper.host ?? moduleRef, contextId, inquirer); } else if (!instanceHost.isResolved && instanceWrapper.forwardRef && (contextId !== constants_2.STATIC_CONTEXT || !!inquirerId)) { instanceHost.donePromise && instanceHost.donePromise.then(() => this.loadProvider(instanceWrapper, moduleRef, contextId, inquirer)); } if (instanceWrapper.async) { const host = instanceWrapper.getInstanceByContextId(this.getContextId(contextId, instanceWrapper), inquirerId); host.instance = await host.instance; instanceWrapper.setInstanceByContextId(contextId, host, inquirerId); } return instanceWrapper; } async lookupComponent(providers, moduleRef, dependencyContext, wrapper, contextId = constants_2.STATIC_CONTEXT, inquirer, keyOrIndex) { const token = wrapper.token || wrapper.name; const { name } = dependencyContext; if (wrapper && token === name) { throw new unknown_dependencies_exception_1.UnknownDependenciesException(wrapper.name, dependencyContext, moduleRef, { id: wrapper.id }); } if (providers.has(name)) { const instanceWrapper = providers.get(name); this.printFoundInModuleLog(name, moduleRef); this.addDependencyMetadata(keyOrIndex, wrapper, instanceWrapper); return instanceWrapper; } return this.lookupComponentInParentModules(dependencyContext, moduleRef, wrapper, contextId, inquirer, keyOrIndex); } async lookupComponentInParentModules(dependencyContext, moduleRef, wrapper, contextId = constants_2.STATIC_CONTEXT, inquirer, keyOrIndex) { const instanceWrapper = await this.lookupComponentInImports(moduleRef, dependencyContext.name, wrapper, [], contextId, inquirer, keyOrIndex); if ((0, shared_utils_1.isNil)(instanceWrapper)) { throw new unknown_dependencies_exception_1.UnknownDependenciesException(wrapper.name, dependencyContext, moduleRef, { id: wrapper.id }); } return instanceWrapper; } async lookupComponentInImports(moduleRef, name, wrapper, moduleRegistry = [], contextId = constants_2.STATIC_CONTEXT, inquirer, keyOrIndex, isTraversing) { let instanceWrapperRef = null; const imports = moduleRef.imports || /* @__PURE__ */ new Set(); const identity = /* @__PURE__ */ __name((item) => item, "identity"); let children = [...imports.values()].filter(identity); if (isTraversing) { const contextModuleExports = moduleRef.exports; children = children.filter((child) => contextModuleExports.has(child.metatype)); } for (const relatedModule of children) { if (moduleRegistry.includes(relatedModule.id)) { continue; } this.printLookingForProviderLog(name, relatedModule); moduleRegistry.push(relatedModule.id); const { providers, exports: exports3 } = relatedModule; if (!exports3.has(name) || !providers.has(name)) { const instanceRef = await this.lookupComponentInImports(relatedModule, name, wrapper, moduleRegistry, contextId, inquirer, keyOrIndex, true); if (instanceRef) { this.addDependencyMetadata(keyOrIndex, wrapper, instanceRef); return instanceRef; } continue; } this.printFoundInModuleLog(name, relatedModule); instanceWrapperRef = providers.get(name); this.addDependencyMetadata(keyOrIndex, wrapper, instanceWrapperRef); const inquirerId = this.getInquirerId(inquirer); const instanceHost = instanceWrapperRef.getInstanceByContextId(this.getContextId(contextId, instanceWrapperRef), inquirerId); if (!instanceHost.isResolved && !instanceWrapperRef.forwardRef) { wrapper.settlementSignal?.insertRef(instanceWrapperRef.id); await this.loadProvider(instanceWrapperRef, relatedModule, contextId, wrapper); break; } } return instanceWrapperRef; } async resolveProperties(wrapper, moduleRef, inject, contextId = constants_2.STATIC_CONTEXT, inquirer, parentInquirer) { if (!(0, shared_utils_1.isNil)(inject)) { return []; } const metadata = wrapper.getPropertiesMetadata(); if (metadata && contextId !== constants_2.STATIC_CONTEXT) { return this.loadPropertiesMetadata(metadata, contextId, inquirer); } const properties = this.reflectProperties(wrapper.metatype); const instances = await Promise.all(properties.map(async (item) => { try { const dependencyContext = { key: item.key, name: item.name }; if (this.isInquirer(item.name, parentInquirer)) { return parentInquirer && parentInquirer.instance; } const paramWrapper = await this.resolveSingleParam(wrapper, item.name, dependencyContext, moduleRef, contextId, inquirer, item.key); if (!paramWrapper) { return void 0; } const inquirerId = this.getInquirerId(inquirer); const instanceHost = paramWrapper.getInstanceByContextId(this.getContextId(contextId, paramWrapper), inquirerId); return instanceHost.instance; } catch (err) { if (!item.isOptional) { throw err; } return void 0; } })); return properties.map((item, index) => ({ ...item, instance: instances[index] })); } reflectProperties(type) { const properties = Reflect.getMetadata(constants_1.PROPERTY_DEPS_METADATA, type) || []; const optionalKeys = Reflect.getMetadata(constants_1.OPTIONAL_PROPERTY_DEPS_METADATA, type) || []; return properties.map((item) => ({ ...item, name: item.type, isOptional: optionalKeys.includes(item.key) })); } applyProperties(instance, properties) { if (!(0, shared_utils_1.isObject)(instance)) { return void 0; } (0, iterare_1.iterate)(properties).filter((item) => !(0, shared_utils_1.isNil)(item.instance)).forEach((item) => instance[item.key] = item.instance); } async instantiateClass(instances, wrapper, targetMetatype, contextId = constants_2.STATIC_CONTEXT, inquirer) { const { metatype, inject } = wrapper; const inquirerId = this.getInquirerId(inquirer); const instanceHost = targetMetatype.getInstanceByContextId(this.getContextId(contextId, targetMetatype), inquirerId); const isInContext = wrapper.isStatic(contextId, inquirer) || wrapper.isInRequestScope(contextId, inquirer) || wrapper.isLazyTransient(contextId, inquirer) || wrapper.isExplicitlyRequested(contextId, inquirer); if (this.options?.preview && !wrapper.host?.initOnPreview) { instanceHost.isResolved = true; return instanceHost.instance; } if ((0, shared_utils_1.isNil)(inject) && isInContext) { instanceHost.instance = wrapper.forwardRef ? Object.assign(instanceHost.instance, new metatype(...instances)) : new metatype(...instances); } else if (isInContext) { const factoryReturnValue = targetMetatype.metatype(...instances); instanceHost.instance = await factoryReturnValue; } instanceHost.isResolved = true; return instanceHost.instance; } async loadPerContext(instance, moduleRef, collection, ctx, wrapper) { if (!wrapper) { const injectionToken = instance.constructor; wrapper = collection.get(injectionToken); } await this.loadInstance(wrapper, collection, moduleRef, ctx, wrapper); await this.loadEnhancersPerContext(wrapper, ctx, wrapper); const host = wrapper.getInstanceByContextId(this.getContextId(ctx, wrapper), wrapper.id); return host && host.instance; } async loadEnhancersPerContext(wrapper, ctx, inquirer) { const enhancers = wrapper.getEnhancersMetadata() || []; const loadEnhancer = /* @__PURE__ */ __name((item) => { const hostModule = item.host; return this.loadInstance(item, hostModule.injectables, hostModule, ctx, inquirer); }, "loadEnhancer"); await Promise.all(enhancers.map(loadEnhancer)); } async loadCtorMetadata(metadata, contextId, inquirer, parentInquirer) { const hosts = await Promise.all(metadata.map(async (item) => this.resolveScopedComponentHost(item, contextId, inquirer, parentInquirer))); const inquirerId = this.getInquirerId(inquirer); return hosts.map((item) => item?.getInstanceByContextId(this.getContextId(contextId, item), inquirerId).instance); } async loadPropertiesMetadata(metadata, contextId, inquirer) { const dependenciesHosts = await Promise.all(metadata.map(async ({ wrapper: item, key }) => ({ key, host: await this.resolveComponentHost(item.host, item, contextId, inquirer) }))); const inquirerId = this.getInquirerId(inquirer); return dependenciesHosts.map(({ key, host }) => ({ key, name: key, instance: host.getInstanceByContextId(this.getContextId(contextId, host), inquirerId).instance })); } getInquirerId(inquirer) { return inquirer && inquirer.id; } resolveScopedComponentHost(item, contextId, inquirer, parentInquirer) { return this.isInquirerRequest(item, parentInquirer) ? parentInquirer : this.resolveComponentHost(item.host, item, contextId, inquirer); } isInquirerRequest(item, parentInquirer) { return item.isTransient && item.name === inquirer_1.INQUIRER && parentInquirer; } isInquirer(param, parentInquirer) { return param === inquirer_1.INQUIRER && parentInquirer; } addDependencyMetadata(keyOrIndex, hostWrapper, instanceWrapper) { if ((0, shared_utils_1.isSymbol)(keyOrIndex) || (0, shared_utils_1.isString)(keyOrIndex)) { hostWrapper.addPropertiesMetadata(keyOrIndex, instanceWrapper); } else { hostWrapper.addCtorMetadata(keyOrIndex, instanceWrapper); } } getTokenName(token) { return (0, shared_utils_1.isFunction)(token) ? token.name : token.toString(); } printResolvingDependenciesLog(token, inquirer) { if (!this.isDebugMode()) { return; } const tokenName = this.getTokenName(token); const dependentName = (inquirer?.name && inquirer.name.toString?.()) ?? "unknown"; const isAlias = dependentName === tokenName; const messageToPrint = `Resolving dependency ${cli_colors_util_1.clc.cyanBright(tokenName)}${cli_colors_util_1.clc.green(" in the ")}${cli_colors_util_1.clc.yellow(dependentName)}${cli_colors_util_1.clc.green(` provider ${isAlias ? "(alias)" : ""}`)}`; this.logger.log(messageToPrint); } printLookingForProviderLog(token, moduleRef) { if (!this.isDebugMode()) { return; } const tokenName = this.getTokenName(token); const moduleRefName = moduleRef?.metatype?.name ?? "unknown"; this.logger.log(`Looking for ${cli_colors_util_1.clc.cyanBright(tokenName)}${cli_colors_util_1.clc.green(" in ")}${cli_colors_util_1.clc.magentaBright(moduleRefName)}`); } printFoundInModuleLog(token, moduleRef) { if (!this.isDebugMode()) { return; } const tokenName = this.getTokenName(token); const moduleRefName = moduleRef?.metatype?.name ?? "unknown"; this.logger.log(`Found ${cli_colors_util_1.clc.cyanBright(tokenName)}${cli_colors_util_1.clc.green(" in ")}${cli_colors_util_1.clc.magentaBright(moduleRefName)}`); } isDebugMode() { return !!process.env.NEST_DEBUG; } getContextId(contextId, instanceWrapper) { return contextId.getParent ? contextId.getParent({ token: instanceWrapper.token, isTreeDurable: instanceWrapper.isDependencyTreeDurable() }) : contextId; } getNowTimestamp() { return perf_hooks_1.performance.now(); } }; exports2.Injector = Injector; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/instance-links-host.js var require_instance_links_host = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/instance-links-host.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InstanceLinksHost = void 0; var shared_utils_1 = require_shared_utils(); var unknown_element_exception_1 = require_unknown_element_exception(); var InstanceLinksHost = class { static { __name(this, "InstanceLinksHost"); } constructor(container) { this.container = container; this.instanceLinks = /* @__PURE__ */ new Map(); this.initialize(); } get(token, options = {}) { const instanceLinksForGivenToken = this.instanceLinks.get(token); if (!instanceLinksForGivenToken) { throw new unknown_element_exception_1.UnknownElementException(this.getInstanceNameByToken(token)); } if (options.each) { return instanceLinksForGivenToken; } const instanceLink = options.moduleId ? instanceLinksForGivenToken.find((item) => item.moduleId === options.moduleId) : instanceLinksForGivenToken[instanceLinksForGivenToken.length - 1]; if (!instanceLink) { throw new unknown_element_exception_1.UnknownElementException(this.getInstanceNameByToken(token)); } return instanceLink; } initialize() { const modules = this.container.getModules(); modules.forEach((moduleRef) => { const { providers, injectables, controllers } = moduleRef; providers.forEach((wrapper, token) => this.addLink(wrapper, token, moduleRef, "providers")); injectables.forEach((wrapper, token) => this.addLink(wrapper, token, moduleRef, "injectables")); controllers.forEach((wrapper, token) => this.addLink(wrapper, token, moduleRef, "controllers")); }); } addLink(wrapper, token, moduleRef, collectionName) { const instanceLink = { moduleId: moduleRef.id, wrapperRef: wrapper, collection: moduleRef[collectionName], token }; const existingLinks = this.instanceLinks.get(token); if (!existingLinks) { this.instanceLinks.set(token, [instanceLink]); } else { existingLinks.push(instanceLink); } } getInstanceNameByToken(token) { return (0, shared_utils_1.isFunction)(token) ? token?.name : token; } }; exports2.InstanceLinksHost = InstanceLinksHost; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/module-ref.js var require_module_ref = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/module-ref.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ModuleRef = void 0; var common_12 = require_common(); var get_class_scope_1 = require_get_class_scope(); var is_durable_1 = require_is_durable(); var abstract_instance_resolver_1 = require_abstract_instance_resolver(); var injector_1 = require_injector(); var instance_links_host_1 = require_instance_links_host(); var instance_wrapper_1 = require_instance_wrapper(); var ModuleRef = class extends abstract_instance_resolver_1.AbstractInstanceResolver { static { __name(this, "ModuleRef"); } get instanceLinksHost() { if (!this._instanceLinksHost) { this._instanceLinksHost = new instance_links_host_1.InstanceLinksHost(this.container); } return this._instanceLinksHost; } constructor(container) { super(); this.container = container; this.injector = new injector_1.Injector(); } introspect(token) { const { wrapperRef } = this.instanceLinksHost.get(token); let scope = common_12.Scope.DEFAULT; if (!wrapperRef.isDependencyTreeStatic()) { scope = common_12.Scope.REQUEST; } else if (wrapperRef.isTransient) { scope = common_12.Scope.TRANSIENT; } return { scope }; } registerRequestByContextId(request, contextId) { this.container.registerRequestProvider(request, contextId); } async instantiateClass(type, moduleRef, contextId) { const wrapper = new instance_wrapper_1.InstanceWrapper({ name: type && type.name, metatype: type, isResolved: false, scope: (0, get_class_scope_1.getClassScope)(type), durable: (0, is_durable_1.isDurable)(type), host: moduleRef }); return new Promise(async (resolve, reject) => { try { const callback = /* @__PURE__ */ __name(async (instances) => { const properties = await this.injector.resolveProperties(wrapper, moduleRef, void 0, contextId); const instance = new type(...instances); this.injector.applyProperties(instance, properties); resolve(instance); }, "callback"); await this.injector.resolveConstructorParams(wrapper, moduleRef, void 0, callback, contextId); } catch (err) { reject(err); } }); } }; exports2.ModuleRef = ModuleRef; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/lazy-module-loader/lazy-module-loader.js var require_lazy_module_loader = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/lazy-module-loader/lazy-module-loader.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.LazyModuleLoader = void 0; var silent_logger_1 = require_silent_logger(); var module_ref_1 = require_module_ref(); var LazyModuleLoader = class { static { __name(this, "LazyModuleLoader"); } constructor(dependenciesScanner, instanceLoader, moduleCompiler, modulesContainer, moduleOverrides) { this.dependenciesScanner = dependenciesScanner; this.instanceLoader = instanceLoader; this.moduleCompiler = moduleCompiler; this.modulesContainer = modulesContainer; this.moduleOverrides = moduleOverrides; } async load(loaderFn, loadOpts) { this.registerLoggerConfiguration(loadOpts); const moduleClassOrDynamicDefinition = await loaderFn(); const moduleInstances = await this.dependenciesScanner.scanForModules({ moduleDefinition: moduleClassOrDynamicDefinition, overrides: this.moduleOverrides, lazy: true }); if (moduleInstances.length === 0) { const { token } = await this.moduleCompiler.compile(moduleClassOrDynamicDefinition); const moduleInstance = this.modulesContainer.get(token); return moduleInstance && this.getTargetModuleRef(moduleInstance); } const lazyModulesContainer = this.createLazyModulesContainer(moduleInstances); await this.dependenciesScanner.scanModulesForDependencies(lazyModulesContainer); await this.instanceLoader.createInstancesOfDependencies(lazyModulesContainer); const [targetModule] = moduleInstances; return this.getTargetModuleRef(targetModule); } registerLoggerConfiguration(loadOpts) { if (loadOpts?.logger === false) { this.instanceLoader.setLogger(new silent_logger_1.SilentLogger()); } } createLazyModulesContainer(moduleInstances) { moduleInstances = Array.from(new Set(moduleInstances)); return new Map(moduleInstances.map((ref) => [ref.token, ref])); } getTargetModuleRef(moduleInstance) { const moduleRefInstanceWrapper = moduleInstance.getProviderByKey(module_ref_1.ModuleRef); return moduleRefInstanceWrapper.instance; } }; exports2.LazyModuleLoader = LazyModuleLoader; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/services/reflector.service.js var require_reflector_service = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/services/reflector.service.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Reflector = void 0; var common_12 = require_common(); var shared_utils_1 = require_shared_utils(); var uid_1 = require_dist(); var Reflector = class { static { __name(this, "Reflector"); } static createDecorator(options = {}) { const metadataKey = options.key ?? (0, uid_1.uid)(21); const decoratorFn = /* @__PURE__ */ __name((metadataValue) => (target, key, descriptor) => { const value = options.transform ? options.transform(metadataValue) : metadataValue; (0, common_12.SetMetadata)(metadataKey, value ?? {})(target, key, descriptor); }, "decoratorFn"); decoratorFn.KEY = metadataKey; return decoratorFn; } /** * Retrieve metadata for a specified key or decorator for a specified target. * * @example * `const roles = this.reflector.get('roles', context.getHandler());` * * @param metadataKey lookup key or decorator for metadata to retrieve * @param target context (decorated object) to retrieve metadata from * */ get(metadataKeyOrDecorator, target) { const metadataKey = metadataKeyOrDecorator.KEY ?? metadataKeyOrDecorator; return Reflect.getMetadata(metadataKey, target); } /** * Retrieve metadata for a specified key or decorator for a specified set of targets. * * @param metadataKeyOrDecorator lookup key or decorator for metadata to retrieve * @param targets context (decorated objects) to retrieve metadata from * */ getAll(metadataKeyOrDecorator, targets) { return (targets || []).map((target) => this.get(metadataKeyOrDecorator, target)); } /** * Retrieve metadata for a specified key or decorator for a specified set of targets and merge results. * * @param metadataKeyOrDecorator lookup key for metadata to retrieve * @param targets context (decorated objects) to retrieve metadata from * */ getAllAndMerge(metadataKeyOrDecorator, targets) { const metadataCollection = this.getAll(metadataKeyOrDecorator, targets).filter((item) => item !== void 0); if ((0, shared_utils_1.isEmpty)(metadataCollection)) { return metadataCollection; } return metadataCollection.reduce((a, b) => { if (Array.isArray(a)) { return a.concat(b); } if ((0, shared_utils_1.isObject)(a) && (0, shared_utils_1.isObject)(b)) { return { ...a, ...b }; } return [a, b]; }); } /** * Retrieve metadata for a specified key or decorator for a specified set of targets and return a first not undefined value. * * @param metadataKeyOrDecorator lookup key or metadata for metadata to retrieve * @param targets context (decorated objects) to retrieve metadata from * */ getAllAndOverride(metadataKeyOrDecorator, targets) { for (const target of targets) { const result = this.get(metadataKeyOrDecorator, target); if (result !== void 0) { return result; } } return void 0; } }; exports2.Reflector = Reflector; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/serialized-graph.js var require_serialized_graph = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/serialized-graph.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SerializedGraph = void 0; var application_config_1 = require_application_config(); var external_context_creator_1 = require_external_context_creator(); var http_adapter_host_1 = require_http_adapter_host(); var inquirer_constants_1 = require_inquirer_constants(); var lazy_module_loader_1 = require_lazy_module_loader(); var module_ref_1 = require_module_ref(); var modules_container_1 = require_modules_container(); var request_constants_1 = require_request_constants(); var reflector_service_1 = require_reflector_service(); var deterministic_uuid_registry_1 = require_deterministic_uuid_registry(); var SerializedGraph = class _SerializedGraph { static { __name(this, "SerializedGraph"); } constructor() { this.nodes = /* @__PURE__ */ new Map(); this.edges = /* @__PURE__ */ new Map(); this.entrypoints = /* @__PURE__ */ new Map(); this.extras = { orphanedEnhancers: [], attachedEnhancers: [] }; this._status = "complete"; } set status(status) { this._status = status; } set metadata(metadata) { this._metadata = metadata; } insertNode(nodeDefinition) { if (nodeDefinition.metadata.type === "provider" && _SerializedGraph.INTERNAL_PROVIDERS.includes(nodeDefinition.metadata.token)) { nodeDefinition.metadata = { ...nodeDefinition.metadata, internal: true }; } if (this.nodes.has(nodeDefinition.id)) { return this.nodes.get(nodeDefinition.id); } this.nodes.set(nodeDefinition.id, nodeDefinition); return nodeDefinition; } insertEdge(edgeDefinition) { if (edgeDefinition.metadata.type === "class-to-class" && (_SerializedGraph.INTERNAL_PROVIDERS.includes(edgeDefinition.metadata.sourceClassToken) || _SerializedGraph.INTERNAL_PROVIDERS.includes(edgeDefinition.metadata.targetClassToken))) { edgeDefinition.metadata = { ...edgeDefinition.metadata, internal: true }; } const id = edgeDefinition.id ?? this.generateUuidByEdgeDefinition(edgeDefinition); const edge = { ...edgeDefinition, id }; this.edges.set(id, edge); return edge; } insertEntrypoint(definition, parentId) { if (this.entrypoints.has(parentId)) { const existingCollection = this.entrypoints.get(parentId); existingCollection.push(definition); } else { this.entrypoints.set(parentId, [definition]); } } insertOrphanedEnhancer(entry) { this.extras.orphanedEnhancers.push(entry); } insertAttachedEnhancer(nodeId) { this.extras.attachedEnhancers.push({ nodeId }); } getNodeById(id) { return this.nodes.get(id); } toJSON() { const json = { nodes: Object.fromEntries(this.nodes), edges: Object.fromEntries(this.edges), entrypoints: Object.fromEntries(this.entrypoints), extras: this.extras }; if (this._status) { json["status"] = this._status; } if (this._metadata) { json["metadata"] = this._metadata; } return json; } toString() { const replacer = /* @__PURE__ */ __name((key, value) => { if (typeof value === "symbol") { return value.toString(); } return typeof value === "function" ? value.name ?? "Function" : value; }, "replacer"); return JSON.stringify(this.toJSON(), replacer, 2); } generateUuidByEdgeDefinition(edgeDefinition) { return deterministic_uuid_registry_1.DeterministicUuidRegistry.get(JSON.stringify(edgeDefinition)); } }; exports2.SerializedGraph = SerializedGraph; SerializedGraph.INTERNAL_PROVIDERS = [ application_config_1.ApplicationConfig, module_ref_1.ModuleRef, http_adapter_host_1.HttpAdapterHost, lazy_module_loader_1.LazyModuleLoader, external_context_creator_1.ExternalContextCreator, modules_container_1.ModulesContainer, reflector_service_1.Reflector, SerializedGraph, http_adapter_host_1.HttpAdapterHost.name, reflector_service_1.Reflector.name, request_constants_1.REQUEST, inquirer_constants_1.INQUIRER ]; } }); // ../../node_modules/.pnpm/fast-safe-stringify@2.1.1/node_modules/fast-safe-stringify/index.js var require_fast_safe_stringify = __commonJS({ "../../node_modules/.pnpm/fast-safe-stringify@2.1.1/node_modules/fast-safe-stringify/index.js"(exports2, module2) { module2.exports = stringify2; stringify2.default = stringify2; stringify2.stable = deterministicStringify; stringify2.stableStringify = deterministicStringify; var LIMIT_REPLACE_NODE = "[...]"; var CIRCULAR_REPLACE_NODE = "[Circular]"; var arr = []; var replacerStack = []; function defaultOptions() { return { depthLimit: Number.MAX_SAFE_INTEGER, edgesLimit: Number.MAX_SAFE_INTEGER }; } __name(defaultOptions, "defaultOptions"); function stringify2(obj2, replacer, spacer, options) { if (typeof options === "undefined") { options = defaultOptions(); } decirc(obj2, "", 0, [], void 0, 0, options); var res; try { if (replacerStack.length === 0) { res = JSON.stringify(obj2, replacer, spacer); } else { res = JSON.stringify(obj2, replaceGetterValues(replacer), spacer); } } catch (_2) { return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]"); } finally { while (arr.length !== 0) { var part = arr.pop(); if (part.length === 4) { Object.defineProperty(part[0], part[1], part[3]); } else { part[0][part[1]] = part[2]; } } } return res; } __name(stringify2, "stringify"); function setReplace(replace, val, k, parent) { var propertyDescriptor = Object.getOwnPropertyDescriptor(parent, k); if (propertyDescriptor.get !== void 0) { if (propertyDescriptor.configurable) { Object.defineProperty(parent, k, { value: replace }); arr.push([parent, k, val, propertyDescriptor]); } else { replacerStack.push([val, k, replace]); } } else { parent[k] = replace; arr.push([parent, k, val]); } } __name(setReplace, "setReplace"); function decirc(val, k, edgeIndex, stack, parent, depth, options) { depth += 1; var i; if (typeof val === "object" && val !== null) { for (i = 0; i < stack.length; i++) { if (stack[i] === val) { setReplace(CIRCULAR_REPLACE_NODE, val, k, parent); return; } } if (typeof options.depthLimit !== "undefined" && depth > options.depthLimit) { setReplace(LIMIT_REPLACE_NODE, val, k, parent); return; } if (typeof options.edgesLimit !== "undefined" && edgeIndex + 1 > options.edgesLimit) { setReplace(LIMIT_REPLACE_NODE, val, k, parent); return; } stack.push(val); if (Array.isArray(val)) { for (i = 0; i < val.length; i++) { decirc(val[i], i, i, stack, val, depth, options); } } else { var keys = Object.keys(val); for (i = 0; i < keys.length; i++) { var key = keys[i]; decirc(val[key], key, i, stack, val, depth, options); } } stack.pop(); } } __name(decirc, "decirc"); function compareFunction(a, b) { if (a < b) { return -1; } if (a > b) { return 1; } return 0; } __name(compareFunction, "compareFunction"); function deterministicStringify(obj2, replacer, spacer, options) { if (typeof options === "undefined") { options = defaultOptions(); } var tmp = deterministicDecirc(obj2, "", 0, [], void 0, 0, options) || obj2; var res; try { if (replacerStack.length === 0) { res = JSON.stringify(tmp, replacer, spacer); } else { res = JSON.stringify(tmp, replaceGetterValues(replacer), spacer); } } catch (_2) { return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]"); } finally { while (arr.length !== 0) { var part = arr.pop(); if (part.length === 4) { Object.defineProperty(part[0], part[1], part[3]); } else { part[0][part[1]] = part[2]; } } } return res; } __name(deterministicStringify, "deterministicStringify"); function deterministicDecirc(val, k, edgeIndex, stack, parent, depth, options) { depth += 1; var i; if (typeof val === "object" && val !== null) { for (i = 0; i < stack.length; i++) { if (stack[i] === val) { setReplace(CIRCULAR_REPLACE_NODE, val, k, parent); return; } } try { if (typeof val.toJSON === "function") { return; } } catch (_2) { return; } if (typeof options.depthLimit !== "undefined" && depth > options.depthLimit) { setReplace(LIMIT_REPLACE_NODE, val, k, parent); return; } if (typeof options.edgesLimit !== "undefined" && edgeIndex + 1 > options.edgesLimit) { setReplace(LIMIT_REPLACE_NODE, val, k, parent); return; } stack.push(val); if (Array.isArray(val)) { for (i = 0; i < val.length; i++) { deterministicDecirc(val[i], i, i, stack, val, depth, options); } } else { var tmp = {}; var keys = Object.keys(val).sort(compareFunction); for (i = 0; i < keys.length; i++) { var key = keys[i]; deterministicDecirc(val[key], key, i, stack, val, depth, options); tmp[key] = val[key]; } if (typeof parent !== "undefined") { arr.push([parent, k, val]); parent[k] = tmp; } else { return tmp; } } stack.pop(); } } __name(deterministicDecirc, "deterministicDecirc"); function replaceGetterValues(replacer) { replacer = typeof replacer !== "undefined" ? replacer : function(k, v) { return v; }; return function(key, val) { if (replacerStack.length > 0) { for (var i = 0; i < replacerStack.length; i++) { var part = replacerStack[i]; if (part[1] === key && part[0] === val) { val = part[2]; replacerStack.splice(i, 1); break; } } } return replacer.call(this, key, val); }; } __name(replaceGetterValues, "replaceGetterValues"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/module-token-factory.js var require_module_token_factory = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/module-token-factory.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ModuleTokenFactory = void 0; var common_12 = require_common(); var random_string_generator_util_1 = require_random_string_generator_util(); var shared_utils_1 = require_shared_utils(); var crypto_1 = require("crypto"); var fast_safe_stringify_1 = require_fast_safe_stringify(); var perf_hooks_1 = require("perf_hooks"); var CLASS_STR = "class "; var CLASS_STR_LEN = CLASS_STR.length; var ModuleTokenFactory = class _ModuleTokenFactory { static { __name(this, "ModuleTokenFactory"); } constructor() { this.moduleTokenCache = /* @__PURE__ */ new Map(); this.moduleIdsCache = /* @__PURE__ */ new WeakMap(); this.logger = new common_12.Logger(_ModuleTokenFactory.name, { timestamp: true }); } create(metatype, dynamicModuleMetadata) { const moduleId = this.getModuleId(metatype); if (!dynamicModuleMetadata) { return this.getStaticModuleToken(moduleId, this.getModuleName(metatype)); } const opaqueToken = { id: moduleId, module: this.getModuleName(metatype), dynamic: dynamicModuleMetadata }; const start = perf_hooks_1.performance.now(); const opaqueTokenString = this.getStringifiedOpaqueToken(opaqueToken); const timeSpentInMs = perf_hooks_1.performance.now() - start; if (timeSpentInMs > 10) { const formattedTimeSpent = timeSpentInMs.toFixed(2); this.logger.warn(`The module "${opaqueToken.module}" is taking ${formattedTimeSpent}ms to serialize, this may be caused by larger objects statically assigned to the module. More details: https://github.com/nestjs/nest/issues/12738`); } return this.hashString(opaqueTokenString); } getStaticModuleToken(moduleId, moduleName) { const key = `${moduleId}_${moduleName}`; if (this.moduleTokenCache.has(key)) { return this.moduleTokenCache.get(key); } const hash = this.hashString(key); this.moduleTokenCache.set(key, hash); return hash; } getStringifiedOpaqueToken(opaqueToken) { return opaqueToken ? (0, fast_safe_stringify_1.default)(opaqueToken, this.replacer) : ""; } getModuleId(metatype) { let moduleId = this.moduleIdsCache.get(metatype); if (moduleId) { return moduleId; } moduleId = (0, random_string_generator_util_1.randomStringGenerator)(); this.moduleIdsCache.set(metatype, moduleId); return moduleId; } getModuleName(metatype) { return metatype.name; } hashString(value) { return (0, crypto_1.createHash)("sha256").update(value).digest("hex"); } replacer(key, value) { if ((0, shared_utils_1.isFunction)(value)) { const funcAsString = value.toString(); const isClass2 = funcAsString.slice(0, CLASS_STR_LEN) === CLASS_STR; if (isClass2) { return value.name; } return funcAsString; } if ((0, shared_utils_1.isSymbol)(value)) { return value.toString(); } return value; } }; exports2.ModuleTokenFactory = ModuleTokenFactory; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/compiler.js var require_compiler = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/compiler.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ModuleCompiler = void 0; var module_token_factory_1 = require_module_token_factory(); var ModuleCompiler = class { static { __name(this, "ModuleCompiler"); } constructor(moduleTokenFactory = new module_token_factory_1.ModuleTokenFactory()) { this.moduleTokenFactory = moduleTokenFactory; } async compile(metatype) { const { type, dynamicMetadata } = this.extractMetadata(await metatype); const token = this.moduleTokenFactory.create(type, dynamicMetadata); return { type, dynamicMetadata, token }; } extractMetadata(metatype) { if (!this.isDynamicModule(metatype)) { return { type: metatype?.forwardRef ? metatype.forwardRef() : metatype }; } const { module: type, ...dynamicMetadata } = metatype; return { type, dynamicMetadata }; } isDynamicModule(module3) { return !!module3.module; } }; exports2.ModuleCompiler = ModuleCompiler; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/request/request-providers.js var require_request_providers = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/request/request-providers.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.requestProvider = void 0; var common_12 = require_common(); var request_constants_1 = require_request_constants(); var noop = /* @__PURE__ */ __name(() => { }, "noop"); exports2.requestProvider = { provide: request_constants_1.REQUEST, scope: common_12.Scope.REQUEST, useFactory: noop }; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/services/index.js var require_services2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/services/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_reflector_service(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/inquirer/inquirer-providers.js var require_inquirer_providers = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/inquirer/inquirer-providers.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.inquirerProvider = void 0; var common_12 = require_common(); var inquirer_constants_1 = require_inquirer_constants(); var noop = /* @__PURE__ */ __name(() => { }, "noop"); exports2.inquirerProvider = { provide: inquirer_constants_1.INQUIRER, scope: common_12.Scope.TRANSIENT, useFactory: noop }; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/internal-core-module/internal-core-module.js var require_internal_core_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/internal-core-module/internal-core-module.js"(exports2) { "use strict"; var InternalCoreModule_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InternalCoreModule = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var request_providers_1 = require_request_providers(); var services_1 = require_services2(); var inquirer_providers_1 = require_inquirer_providers(); var ReflectorAliasProvider = { provide: services_1.Reflector.name, useExisting: services_1.Reflector }; var InternalCoreModule = InternalCoreModule_1 = class InternalCoreModule { static { __name(this, "InternalCoreModule"); } static register(providers) { return { module: InternalCoreModule_1, providers: [...providers], exports: [...providers.map((item) => item.provide)] }; } }; exports2.InternalCoreModule = InternalCoreModule; exports2.InternalCoreModule = InternalCoreModule = InternalCoreModule_1 = tslib_1.__decorate([ (0, common_12.Global)(), (0, common_12.Module)({ providers: [ services_1.Reflector, ReflectorAliasProvider, request_providers_1.requestProvider, inquirer_providers_1.inquirerProvider ], exports: [ services_1.Reflector, ReflectorAliasProvider, request_providers_1.requestProvider, inquirer_providers_1.inquirerProvider ] }) ], InternalCoreModule); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/internal-providers-storage.js var require_internal_providers_storage = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/internal-providers-storage.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InternalProvidersStorage = void 0; var http_adapter_host_1 = require_http_adapter_host(); var InternalProvidersStorage = class { static { __name(this, "InternalProvidersStorage"); } constructor() { this._httpAdapterHost = new http_adapter_host_1.HttpAdapterHost(); } get httpAdapterHost() { return this._httpAdapterHost; } get httpAdapter() { return this._httpAdapter; } set httpAdapter(httpAdapter) { this._httpAdapter = httpAdapter; } }; exports2.InternalProvidersStorage = InternalProvidersStorage; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/module.js var require_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/module.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Module = void 0; var constants_1 = require_constants(); var interfaces_1 = require_interfaces(); var random_string_generator_util_1 = require_random_string_generator_util(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var application_config_1 = require_application_config(); var exceptions_1 = require_exceptions3(); var context_id_factory_1 = require_context_id_factory(); var get_class_scope_1 = require_get_class_scope(); var is_durable_1 = require_is_durable(); var uuid_factory_1 = require_uuid_factory(); var constants_2 = require_constants5(); var instance_wrapper_1 = require_instance_wrapper(); var module_ref_1 = require_module_ref(); var Module = class { static { __name(this, "Module"); } constructor(_metatype, container) { this._metatype = _metatype; this.container = container; this._imports = /* @__PURE__ */ new Set(); this._providers = /* @__PURE__ */ new Map(); this._injectables = /* @__PURE__ */ new Map(); this._middlewares = /* @__PURE__ */ new Map(); this._controllers = /* @__PURE__ */ new Map(); this._entryProviderKeys = /* @__PURE__ */ new Set(); this._exports = /* @__PURE__ */ new Set(); this._distance = 0; this._initOnPreview = false; this._isGlobal = false; this.addCoreProviders(); this._id = this.generateUuid(); } get id() { return this._id; } get token() { return this._token; } set token(token) { this._token = token; } get name() { return this.metatype.name; } get isGlobal() { return this._isGlobal; } set isGlobal(global2) { this._isGlobal = global2; } get initOnPreview() { return this._initOnPreview; } set initOnPreview(initOnPreview) { this._initOnPreview = initOnPreview; } get providers() { return this._providers; } get middlewares() { return this._middlewares; } get imports() { return this._imports; } get injectables() { return this._injectables; } get controllers() { return this._controllers; } get entryProviders() { return Array.from(this._entryProviderKeys).map((token) => this.providers.get(token)); } get exports() { return this._exports; } get instance() { if (!this._providers.has(this._metatype)) { throw new exceptions_1.RuntimeException(); } const module3 = this._providers.get(this._metatype); return module3.instance; } get metatype() { return this._metatype; } get distance() { return this._distance; } set distance(value) { this._distance = value; } addCoreProviders() { this.addModuleAsProvider(); this.addModuleRef(); this.addApplicationConfig(); } addModuleRef() { const moduleRef = this.createModuleReferenceType(); this._providers.set(module_ref_1.ModuleRef, new instance_wrapper_1.InstanceWrapper({ token: module_ref_1.ModuleRef, name: module_ref_1.ModuleRef.name, metatype: module_ref_1.ModuleRef, isResolved: true, instance: new moduleRef(), host: this })); } addModuleAsProvider() { this._providers.set(this._metatype, new instance_wrapper_1.InstanceWrapper({ token: this._metatype, name: this._metatype.name, metatype: this._metatype, isResolved: false, instance: null, host: this })); } addApplicationConfig() { this._providers.set(application_config_1.ApplicationConfig, new instance_wrapper_1.InstanceWrapper({ token: application_config_1.ApplicationConfig, name: application_config_1.ApplicationConfig.name, isResolved: true, instance: this.container.applicationConfig, host: this })); } addInjectable(injectable, enhancerSubtype, host) { if (this.isCustomProvider(injectable)) { return this.addCustomProvider(injectable, this._injectables, enhancerSubtype); } let instanceWrapper = this.injectables.get(injectable); if (!instanceWrapper) { instanceWrapper = new instance_wrapper_1.InstanceWrapper({ token: injectable, name: injectable.name, metatype: injectable, instance: null, isResolved: false, scope: (0, get_class_scope_1.getClassScope)(injectable), durable: (0, is_durable_1.isDurable)(injectable), subtype: enhancerSubtype, host: this }); this._injectables.set(injectable, instanceWrapper); } if (host) { const hostWrapper = this._controllers.get(host) || this._providers.get(host); hostWrapper && hostWrapper.addEnhancerMetadata(instanceWrapper); } return instanceWrapper; } addProvider(provider, enhancerSubtype) { if (this.isCustomProvider(provider)) { if (this.isEntryProvider(provider.provide)) { this._entryProviderKeys.add(provider.provide); } return this.addCustomProvider(provider, this._providers, enhancerSubtype); } const isAlreadyDeclared = this._providers.has(provider); if (this.isTransientProvider(provider) && isAlreadyDeclared) { return provider; } this._providers.set(provider, new instance_wrapper_1.InstanceWrapper({ token: provider, name: provider.name, metatype: provider, instance: null, isResolved: false, scope: (0, get_class_scope_1.getClassScope)(provider), durable: (0, is_durable_1.isDurable)(provider), host: this })); if (this.isEntryProvider(provider)) { this._entryProviderKeys.add(provider); } return provider; } isCustomProvider(provider) { return !(0, shared_utils_1.isNil)(provider.provide); } addCustomProvider(provider, collection, enhancerSubtype) { if (this.isCustomClass(provider)) { this.addCustomClass(provider, collection, enhancerSubtype); } else if (this.isCustomValue(provider)) { this.addCustomValue(provider, collection, enhancerSubtype); } else if (this.isCustomFactory(provider)) { this.addCustomFactory(provider, collection, enhancerSubtype); } else if (this.isCustomUseExisting(provider)) { this.addCustomUseExisting(provider, collection, enhancerSubtype); } return provider.provide; } isCustomClass(provider) { return !(0, shared_utils_1.isUndefined)(provider.useClass); } isCustomValue(provider) { return (0, shared_utils_1.isObject)(provider) && Object.prototype.hasOwnProperty.call(provider, "useValue"); } isCustomFactory(provider) { return !(0, shared_utils_1.isUndefined)(provider.useFactory); } isCustomUseExisting(provider) { return !(0, shared_utils_1.isUndefined)(provider.useExisting); } isDynamicModule(exported) { return exported && exported.module; } addCustomClass(provider, collection, enhancerSubtype) { let { scope, durable } = provider; const { useClass } = provider; if ((0, shared_utils_1.isUndefined)(scope)) { scope = (0, get_class_scope_1.getClassScope)(useClass); } if ((0, shared_utils_1.isUndefined)(durable)) { durable = (0, is_durable_1.isDurable)(useClass); } const token = provider.provide; collection.set(token, new instance_wrapper_1.InstanceWrapper({ token, name: useClass?.name || useClass, metatype: useClass, instance: null, isResolved: false, scope, durable, host: this, subtype: enhancerSubtype })); } addCustomValue(provider, collection, enhancerSubtype) { const { useValue: value, provide: providerToken } = provider; collection.set(providerToken, new instance_wrapper_1.InstanceWrapper({ token: providerToken, name: providerToken?.name || providerToken, metatype: null, instance: value, isResolved: true, async: value instanceof Promise, host: this, subtype: enhancerSubtype })); } addCustomFactory(provider, collection, enhancerSubtype) { const { useFactory: factory, inject, scope, durable, provide: providerToken } = provider; collection.set(providerToken, new instance_wrapper_1.InstanceWrapper({ token: providerToken, name: providerToken?.name || providerToken, metatype: factory, instance: null, isResolved: false, inject: inject || [], scope, durable, host: this, subtype: enhancerSubtype })); } addCustomUseExisting(provider, collection, enhancerSubtype) { const { useExisting, provide: providerToken } = provider; collection.set(providerToken, new instance_wrapper_1.InstanceWrapper({ token: providerToken, name: providerToken?.name || providerToken, metatype: /* @__PURE__ */ __name(((instance) => instance), "metatype"), instance: null, isResolved: false, inject: [useExisting], host: this, isAlias: true, subtype: enhancerSubtype })); } addExportedProvider(provider) { const addExportedUnit = /* @__PURE__ */ __name((token) => this._exports.add(this.validateExportedProvider(token)), "addExportedUnit"); if (this.isCustomProvider(provider)) { return this.addCustomExportedProvider(provider); } else if ((0, shared_utils_1.isString)(provider) || (0, shared_utils_1.isSymbol)(provider)) { return addExportedUnit(provider); } else if (this.isDynamicModule(provider)) { const { module: moduleClassRef } = provider; return addExportedUnit(moduleClassRef); } addExportedUnit(provider); } addCustomExportedProvider(provider) { const provide = provider.provide; if ((0, shared_utils_1.isString)(provide) || (0, shared_utils_1.isSymbol)(provide)) { return this._exports.add(this.validateExportedProvider(provide)); } this._exports.add(this.validateExportedProvider(provide)); } validateExportedProvider(token) { if (this._providers.has(token)) { return token; } const imports = (0, iterare_1.iterate)(this._imports.values()).filter((item) => !!item).map(({ metatype }) => metatype).filter((metatype) => !!metatype).toArray(); if (!imports.includes(token)) { const { name } = this.metatype; const providerName = (0, shared_utils_1.isFunction)(token) ? token.name : token; throw new exceptions_1.UnknownExportException(providerName, name); } return token; } addController(controller) { this._controllers.set(controller, new instance_wrapper_1.InstanceWrapper({ token: controller, name: controller.name, metatype: controller, instance: null, isResolved: false, scope: (0, get_class_scope_1.getClassScope)(controller), durable: (0, is_durable_1.isDurable)(controller), host: this })); this.assignControllerUniqueId(controller); } assignControllerUniqueId(controller) { Object.defineProperty(controller, constants_2.CONTROLLER_ID_KEY, { enumerable: false, writable: false, configurable: true, value: (0, random_string_generator_util_1.randomStringGenerator)() }); } addImport(moduleRef) { this._imports.add(moduleRef); } /** * @deprecated */ addRelatedModule(module3) { this._imports.add(module3); } replace(toReplace, options) { if (options.isProvider && this.hasProvider(toReplace)) { const originalProvider = this._providers.get(toReplace); return originalProvider.mergeWith({ provide: toReplace, ...options }); } else if (!options.isProvider && this.hasInjectable(toReplace)) { const originalInjectable = this._injectables.get(toReplace); return originalInjectable.mergeWith({ provide: toReplace, ...options }); } } hasProvider(token) { return this._providers.has(token); } hasInjectable(token) { return this._injectables.has(token); } getProviderByKey(name) { return this._providers.get(name); } getProviderById(id) { return Array.from(this._providers.values()).find((item) => item.id === id); } getControllerById(id) { return Array.from(this._controllers.values()).find((item) => item.id === id); } getInjectableById(id) { return Array.from(this._injectables.values()).find((item) => item.id === id); } getMiddlewareById(id) { return Array.from(this._middlewares.values()).find((item) => item.id === id); } getNonAliasProviders() { return [...this._providers].filter(([_2, wrapper]) => !wrapper.isAlias); } createModuleReferenceType() { const self2 = this; return class extends module_ref_1.ModuleRef { constructor() { super(self2.container); } get(typeOrToken, options = {}) { options.strict ??= true; options.each ??= false; return this.find(typeOrToken, options.strict ? { moduleId: self2.id, each: options.each } : options); } resolve(typeOrToken, contextId = (0, context_id_factory_1.createContextId)(), options = {}) { options.strict ??= true; options.each ??= false; return this.resolvePerContext(typeOrToken, self2, contextId, options); } async create(type, contextId) { if (!(type && (0, shared_utils_1.isFunction)(type) && type.prototype)) { throw new exceptions_1.InvalidClassException(type); } return this.instantiateClass(type, self2, contextId); } }; } isEntryProvider(metatype) { return typeof metatype === "function" ? !!Reflect.getMetadata(constants_1.ENTRY_PROVIDER_WATERMARK, metatype) : false; } generateUuid() { const prefix = "M_"; const key = this.name?.toString() ?? this.token?.toString(); return key ? uuid_factory_1.UuidFactory.get(`${prefix}_${key}`) : (0, random_string_generator_util_1.randomStringGenerator)(); } isTransientProvider(provider) { return (0, get_class_scope_1.getClassScope)(provider) === interfaces_1.Scope.TRANSIENT; } }; exports2.Module = Module; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/container.js var require_container2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/container.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NestContainer = void 0; var constants_1 = require_constants(); var discoverable_meta_host_collection_1 = require_discoverable_meta_host_collection(); var exceptions_1 = require_exceptions3(); var initialize_on_preview_allowlist_1 = require_initialize_on_preview_allowlist(); var serialized_graph_1 = require_serialized_graph(); var request_constants_1 = require_request_constants(); var compiler_1 = require_compiler(); var internal_core_module_1 = require_internal_core_module(); var internal_providers_storage_1 = require_internal_providers_storage(); var module_1 = require_module(); var module_token_factory_1 = require_module_token_factory(); var modules_container_1 = require_modules_container(); var NestContainer = class { static { __name(this, "NestContainer"); } constructor(_applicationConfig = void 0) { this._applicationConfig = _applicationConfig; this.globalModules = /* @__PURE__ */ new Set(); this.moduleTokenFactory = new module_token_factory_1.ModuleTokenFactory(); this.moduleCompiler = new compiler_1.ModuleCompiler(this.moduleTokenFactory); this.modules = new modules_container_1.ModulesContainer(); this.dynamicModulesMetadata = /* @__PURE__ */ new Map(); this.internalProvidersStorage = new internal_providers_storage_1.InternalProvidersStorage(); this._serializedGraph = new serialized_graph_1.SerializedGraph(); } get serializedGraph() { return this._serializedGraph; } get applicationConfig() { return this._applicationConfig; } setHttpAdapter(httpAdapter) { this.internalProvidersStorage.httpAdapter = httpAdapter; if (!this.internalProvidersStorage.httpAdapterHost) { return; } const host = this.internalProvidersStorage.httpAdapterHost; host.httpAdapter = httpAdapter; } getHttpAdapterRef() { return this.internalProvidersStorage.httpAdapter; } getHttpAdapterHostRef() { return this.internalProvidersStorage.httpAdapterHost; } async addModule(metatype, scope) { if (!metatype) { throw new exceptions_1.UndefinedForwardRefException(scope); } const { type, dynamicMetadata, token } = await this.moduleCompiler.compile(metatype); if (this.modules.has(token)) { return { moduleRef: this.modules.get(token), inserted: true }; } return { moduleRef: await this.setModule({ token, type, dynamicMetadata }, scope), inserted: true }; } async replaceModule(metatypeToReplace, newMetatype, scope) { if (!metatypeToReplace || !newMetatype) { throw new exceptions_1.UndefinedForwardRefException(scope); } const { token } = await this.moduleCompiler.compile(metatypeToReplace); const { type, dynamicMetadata } = await this.moduleCompiler.compile(newMetatype); return { moduleRef: await this.setModule({ token, type, dynamicMetadata }, scope), inserted: false }; } async setModule({ token, dynamicMetadata, type }, scope) { const moduleRef = new module_1.Module(type, this); moduleRef.token = token; moduleRef.initOnPreview = this.shouldInitOnPreview(type); this.modules.set(token, moduleRef); const updatedScope = [].concat(scope, type); await this.addDynamicMetadata(token, dynamicMetadata, updatedScope); if (this.isGlobalModule(type, dynamicMetadata)) { moduleRef.isGlobal = true; this.addGlobalModule(moduleRef); } return moduleRef; } async addDynamicMetadata(token, dynamicModuleMetadata, scope) { if (!dynamicModuleMetadata) { return; } this.dynamicModulesMetadata.set(token, dynamicModuleMetadata); const { imports } = dynamicModuleMetadata; await this.addDynamicModules(imports, scope); } async addDynamicModules(modules, scope) { if (!modules) { return; } await Promise.all(modules.map((module3) => this.addModule(module3, scope))); } isGlobalModule(metatype, dynamicMetadata) { if (dynamicMetadata && dynamicMetadata.global) { return true; } return !!Reflect.getMetadata(constants_1.GLOBAL_MODULE_METADATA, metatype); } addGlobalModule(module3) { this.globalModules.add(module3); } getModules() { return this.modules; } getModuleCompiler() { return this.moduleCompiler; } getModuleByKey(moduleKey) { return this.modules.get(moduleKey); } getInternalCoreModuleRef() { return this.internalCoreModule; } async addImport(relatedModule, token) { if (!this.modules.has(token)) { return; } const moduleRef = this.modules.get(token); const { token: relatedModuleToken } = await this.moduleCompiler.compile(relatedModule); const related = this.modules.get(relatedModuleToken); moduleRef.addImport(related); } addProvider(provider, token, enhancerSubtype) { const moduleRef = this.modules.get(token); if (!provider) { throw new exceptions_1.CircularDependencyException(moduleRef?.metatype.name); } if (!moduleRef) { throw new exceptions_1.UnknownModuleException(); } const providerKey = moduleRef.addProvider(provider, enhancerSubtype); const providerRef = moduleRef.getProviderByKey(providerKey); discoverable_meta_host_collection_1.DiscoverableMetaHostCollection.inspectProvider(this.modules, providerRef); return providerKey; } addInjectable(injectable, token, enhancerSubtype, host) { if (!this.modules.has(token)) { throw new exceptions_1.UnknownModuleException(); } const moduleRef = this.modules.get(token); return moduleRef.addInjectable(injectable, enhancerSubtype, host); } addExportedProvider(provider, token) { if (!this.modules.has(token)) { throw new exceptions_1.UnknownModuleException(); } const moduleRef = this.modules.get(token); moduleRef.addExportedProvider(provider); } addController(controller, token) { if (!this.modules.has(token)) { throw new exceptions_1.UnknownModuleException(); } const moduleRef = this.modules.get(token); moduleRef.addController(controller); const controllerRef = moduleRef.controllers.get(controller); discoverable_meta_host_collection_1.DiscoverableMetaHostCollection.inspectController(this.modules, controllerRef); } clear() { this.modules.clear(); } replace(toReplace, options) { this.modules.forEach((moduleRef) => moduleRef.replace(toReplace, options)); } bindGlobalScope() { this.modules.forEach((moduleRef) => this.bindGlobalsToImports(moduleRef)); } bindGlobalsToImports(moduleRef) { this.globalModules.forEach((globalModule) => this.bindGlobalModuleToModule(moduleRef, globalModule)); } bindGlobalModuleToModule(target, globalModule) { if (target === globalModule || target === this.internalCoreModule) { return; } target.addImport(globalModule); } getDynamicMetadataByToken(token, metadataKey) { const metadata = this.dynamicModulesMetadata.get(token); return metadataKey ? metadata?.[metadataKey] ?? [] : metadata; } registerCoreModuleRef(moduleRef) { this.internalCoreModule = moduleRef; this.modules[internal_core_module_1.InternalCoreModule.name] = moduleRef; } getModuleTokenFactory() { return this.moduleTokenFactory; } registerRequestProvider(request, contextId) { const wrapper = this.internalCoreModule.getProviderByKey(request_constants_1.REQUEST); wrapper.setInstanceByContextId(contextId, { instance: request, isResolved: true }); } shouldInitOnPreview(type) { return initialize_on_preview_allowlist_1.InitializeOnPreviewAllowlist.has(type); } }; exports2.NestContainer = NestContainer; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/index.js var require_injector2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_container2(), exports2); tslib_1.__exportStar(require_inquirer(), exports2); tslib_1.__exportStar(require_lazy_module_loader(), exports2); tslib_1.__exportStar(require_module_ref(), exports2); tslib_1.__exportStar(require_modules_container(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/partial-graph.host.js var require_partial_graph_host = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/partial-graph.host.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PartialGraphHost = void 0; var PartialGraphHost = class { static { __name(this, "PartialGraphHost"); } static toJSON() { return this.partialGraph?.toJSON(); } static toString() { return this.partialGraph?.toString(); } static register(partialGraph) { this.partialGraph = partialGraph; } }; exports2.PartialGraphHost = PartialGraphHost; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/graph-inspector.js var require_graph_inspector = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/graph-inspector.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GraphInspector = void 0; var unknown_dependencies_exception_1 = require_unknown_dependencies_exception(); var deterministic_uuid_registry_1 = require_deterministic_uuid_registry(); var partial_graph_host_1 = require_partial_graph_host(); var GraphInspector = class { static { __name(this, "GraphInspector"); } constructor(container) { this.container = container; this.enhancersMetadataCache = new Array(); this.graph = container.serializedGraph; } inspectModules(modules = this.container.getModules()) { for (const moduleRef of modules.values()) { this.insertModuleNode(moduleRef); this.insertClassNodes(moduleRef); this.insertModuleToModuleEdges(moduleRef); } this.enhancersMetadataCache.forEach((entry) => this.insertEnhancerEdge(entry)); deterministic_uuid_registry_1.DeterministicUuidRegistry.clear(); } registerPartial(error) { this.graph.status = "partial"; if (error instanceof unknown_dependencies_exception_1.UnknownDependenciesException) { this.graph.metadata = { cause: { type: "unknown-dependencies", context: error.context, moduleId: error.moduleRef?.id, nodeId: error.metadata?.id } }; } else { this.graph.metadata = { cause: { type: "unknown", error } }; } partial_graph_host_1.PartialGraphHost.register(this.graph); } inspectInstanceWrapper(source, moduleRef) { const ctorMetadata = source.getCtorMetadata(); ctorMetadata?.forEach((target, index) => this.insertClassToClassEdge(source, target, moduleRef, index, "constructor")); const propertiesMetadata = source.getPropertiesMetadata(); propertiesMetadata?.forEach(({ key, wrapper: target }) => this.insertClassToClassEdge(source, target, moduleRef, key, "property")); } insertEnhancerMetadataCache(entry) { this.enhancersMetadataCache.push(entry); } insertOrphanedEnhancer(entry) { this.graph.insertOrphanedEnhancer({ ...entry, ref: entry.ref?.constructor?.name ?? "Object" }); } insertAttachedEnhancer(wrapper) { const existingNode = this.graph.getNodeById(wrapper.id); existingNode.metadata.global = true; this.graph.insertAttachedEnhancer(existingNode.id); } insertEntrypointDefinition(definition, parentId) { definition = { ...definition, id: `${definition.classNodeId}_${definition.methodName}` }; this.graph.insertEntrypoint(definition, parentId); } insertClassNode(moduleRef, wrapper, type) { this.graph.insertNode({ id: wrapper.id, label: wrapper.name, parent: moduleRef.id, metadata: { type, internal: wrapper.metatype === moduleRef.metatype, sourceModuleName: moduleRef.name, durable: wrapper.isDependencyTreeDurable(), static: wrapper.isDependencyTreeStatic(), scope: wrapper.scope, transient: wrapper.isTransient, exported: moduleRef.exports.has(wrapper.token), token: wrapper.token, subtype: wrapper.subtype, initTime: wrapper.initTime } }); } insertModuleNode(moduleRef) { const dynamicMetadata = this.container.getDynamicMetadataByToken(moduleRef.token); const node = { id: moduleRef.id, label: moduleRef.name, metadata: { type: "module", global: moduleRef.isGlobal, dynamic: !!dynamicMetadata, internal: moduleRef.name === "InternalCoreModule" } }; this.graph.insertNode(node); } insertModuleToModuleEdges(moduleRef) { for (const targetModuleRef of moduleRef.imports) { this.graph.insertEdge({ source: moduleRef.id, target: targetModuleRef.id, metadata: { type: "module-to-module", sourceModuleName: moduleRef.name, targetModuleName: targetModuleRef.name } }); } } insertEnhancerEdge(entry) { const moduleRef = this.container.getModuleByKey(entry.moduleToken); const sourceInstanceWrapper = moduleRef.controllers.get(entry.classRef) ?? moduleRef.providers.get(entry.classRef); const existingSourceNode = this.graph.getNodeById(sourceInstanceWrapper.id); const enhancers = existingSourceNode.metadata.enhancers ?? []; if (entry.enhancerInstanceWrapper) { this.insertClassToClassEdge(sourceInstanceWrapper, entry.enhancerInstanceWrapper, moduleRef, void 0, "decorator"); enhancers.push({ id: entry.enhancerInstanceWrapper.id, methodKey: entry.methodKey, subtype: entry.subtype }); } else { const name = entry.enhancerRef.constructor?.name ?? entry.enhancerRef.name; enhancers.push({ name, methodKey: entry.methodKey, subtype: entry.subtype }); } existingSourceNode.metadata.enhancers = enhancers; } insertClassToClassEdge(source, target, moduleRef, keyOrIndex, injectionType) { this.graph.insertEdge({ source: source.id, target: target.id, metadata: { type: "class-to-class", sourceModuleName: moduleRef.name, sourceClassName: source.name, targetClassName: target.name, sourceClassToken: source.token, targetClassToken: target.token, targetModuleName: target.host?.name, keyOrIndex, injectionType } }); } insertClassNodes(moduleRef) { moduleRef.providers.forEach((value) => this.insertClassNode(moduleRef, value, "provider")); moduleRef.injectables.forEach((value) => this.insertClassNode(moduleRef, value, "injectable")); moduleRef.controllers.forEach((value) => this.insertClassNode(moduleRef, value, "controller")); } }; exports2.GraphInspector = GraphInspector; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/index.js var require_inspector = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_graph_inspector(), exports2); tslib_1.__exportStar(require_initialize_on_preview_allowlist(), exports2); tslib_1.__exportStar(require_partial_graph_host(), exports2); tslib_1.__exportStar(require_serialized_graph(), exports2); } }); // ../../node_modules/.pnpm/path-to-regexp@3.3.0/node_modules/path-to-regexp/index.js var require_path_to_regexp = __commonJS({ "../../node_modules/.pnpm/path-to-regexp@3.3.0/node_modules/path-to-regexp/index.js"(exports2, module2) { module2.exports = pathToRegexp; module2.exports.match = match; module2.exports.regexpToFunction = regexpToFunction; module2.exports.parse = parse2; module2.exports.compile = compile; module2.exports.tokensToFunction = tokensToFunction; module2.exports.tokensToRegExp = tokensToRegExp; var DEFAULT_DELIMITER = "/"; var PATH_REGEXP = new RegExp([ // Match escaped characters that would otherwise appear in future matches. // This allows the user to escape special characters that won't transform. "(\\\\.)", // Match Express-style parameters and un-named parameters with a prefix // and optional suffixes. Matches appear as: // // ":test(\\d+)?" => ["test", "\d+", undefined, "?"] // "(\\d+)" => [undefined, undefined, "\d+", undefined] "(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?" ].join("|"), "g"); function parse2(str, options) { var tokens = []; var key = 0; var index = 0; var path = ""; var defaultDelimiter = options && options.delimiter || DEFAULT_DELIMITER; var whitelist = options && options.whitelist || void 0; var pathEscaped = false; var res; while ((res = PATH_REGEXP.exec(str)) !== null) { var m = res[0]; var escaped = res[1]; var offset = res.index; path += str.slice(index, offset); index = offset + m.length; if (escaped) { path += escaped[1]; pathEscaped = true; continue; } var prev = ""; var name = res[2]; var capture = res[3]; var group = res[4]; var modifier = res[5]; if (!pathEscaped && path.length) { var k = path.length - 1; var c = path[k]; var matches = whitelist ? whitelist.indexOf(c) > -1 : true; if (matches) { prev = c; path = path.slice(0, k); } } if (path) { tokens.push(path); path = ""; pathEscaped = false; } var repeat = modifier === "+" || modifier === "*"; var optional = modifier === "?" || modifier === "*"; var pattern = capture || group; var delimiter = prev || defaultDelimiter; var prevText = prev || (typeof tokens[tokens.length - 1] === "string" ? tokens[tokens.length - 1] : ""); tokens.push({ name: name || key++, prefix: prev, delimiter, optional, repeat, pattern: pattern ? escapeGroup(pattern) : restrictBacktrack(delimiter, defaultDelimiter, prevText) }); } if (path || index < str.length) { tokens.push(path + str.substr(index)); } return tokens; } __name(parse2, "parse"); function restrictBacktrack(delimiter, defaultDelimiter, prevText) { var charGroup = "[^" + escapeString(delimiter === defaultDelimiter ? delimiter : delimiter + defaultDelimiter) + "]"; if (!prevText || prevText.indexOf(delimiter) > -1 || prevText.indexOf(defaultDelimiter) > -1) { return charGroup + "+?"; } return escapeString(prevText) + "|(?:(?!" + escapeString(prevText) + ")" + charGroup + ")+?"; } __name(restrictBacktrack, "restrictBacktrack"); function compile(str, options) { return tokensToFunction(parse2(str, options), options); } __name(compile, "compile"); function match(str, options) { var keys = []; var re = pathToRegexp(str, keys, options); return regexpToFunction(re, keys); } __name(match, "match"); function regexpToFunction(re, keys) { return function(pathname, options) { var m = re.exec(pathname); if (!m) return false; var path = m[0]; var index = m.index; var params = {}; var decode = options && options.decode || decodeURIComponent; for (var i = 1; i < m.length; i++) { if (m[i] === void 0) continue; var key = keys[i - 1]; if (key.repeat) { params[key.name] = m[i].split(key.delimiter).map(function(value) { return decode(value, key); }); } else { params[key.name] = decode(m[i], key); } } return { path, index, params }; }; } __name(regexpToFunction, "regexpToFunction"); function tokensToFunction(tokens, options) { var matches = new Array(tokens.length); for (var i = 0; i < tokens.length; i++) { if (typeof tokens[i] === "object") { matches[i] = new RegExp("^(?:" + tokens[i].pattern + ")$", flags(options)); } } return function(data, options2) { var path = ""; var encode = options2 && options2.encode || encodeURIComponent; var validate2 = options2 ? options2.validate !== false : true; for (var i2 = 0; i2 < tokens.length; i2++) { var token = tokens[i2]; if (typeof token === "string") { path += token; continue; } var value = data ? data[token.name] : void 0; var segment; if (Array.isArray(value)) { if (!token.repeat) { throw new TypeError('Expected "' + token.name + '" to not repeat, but got array'); } if (value.length === 0) { if (token.optional) continue; throw new TypeError('Expected "' + token.name + '" to not be empty'); } for (var j = 0; j < value.length; j++) { segment = encode(value[j], token); if (validate2 && !matches[i2].test(segment)) { throw new TypeError('Expected all "' + token.name + '" to match "' + token.pattern + '"'); } path += (j === 0 ? token.prefix : token.delimiter) + segment; } continue; } if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") { segment = encode(String(value), token); if (validate2 && !matches[i2].test(segment)) { throw new TypeError('Expected "' + token.name + '" to match "' + token.pattern + '", but got "' + segment + '"'); } path += token.prefix + segment; continue; } if (token.optional) continue; throw new TypeError('Expected "' + token.name + '" to be ' + (token.repeat ? "an array" : "a string")); } return path; }; } __name(tokensToFunction, "tokensToFunction"); function escapeString(str) { return str.replace(/([.+*?=^!:${}()[\]|/\\])/g, "\\$1"); } __name(escapeString, "escapeString"); function escapeGroup(group) { return group.replace(/([=!:$/()])/g, "\\$1"); } __name(escapeGroup, "escapeGroup"); function flags(options) { return options && options.sensitive ? "" : "i"; } __name(flags, "flags"); function regexpToRegexp(path, keys) { if (!keys) return path; var groups = path.source.match(/\((?!\?)/g); if (groups) { for (var i = 0; i < groups.length; i++) { keys.push({ name: i, prefix: null, delimiter: null, optional: false, repeat: false, pattern: null }); } } return path; } __name(regexpToRegexp, "regexpToRegexp"); function arrayToRegexp(path, keys, options) { var parts = []; for (var i = 0; i < path.length; i++) { parts.push(pathToRegexp(path[i], keys, options).source); } return new RegExp("(?:" + parts.join("|") + ")", flags(options)); } __name(arrayToRegexp, "arrayToRegexp"); function stringToRegexp(path, keys, options) { return tokensToRegExp(parse2(path, options), keys, options); } __name(stringToRegexp, "stringToRegexp"); function tokensToRegExp(tokens, keys, options) { options = options || {}; var strict = options.strict; var start = options.start !== false; var end = options.end !== false; var delimiter = options.delimiter || DEFAULT_DELIMITER; var endsWith = [].concat(options.endsWith || []).map(escapeString).concat("$").join("|"); var route = start ? "^" : ""; for (var i = 0; i < tokens.length; i++) { var token = tokens[i]; if (typeof token === "string") { route += escapeString(token); } else { var capture = token.repeat ? "(?:" + token.pattern + ")(?:" + escapeString(token.delimiter) + "(?:" + token.pattern + "))*" : token.pattern; if (keys) keys.push(token); if (token.optional) { if (!token.prefix) { route += "(" + capture + ")?"; } else { route += "(?:" + escapeString(token.prefix) + "(" + capture + "))?"; } } else { route += escapeString(token.prefix) + "(" + capture + ")"; } } } if (end) { if (!strict) route += "(?:" + escapeString(delimiter) + ")?"; route += endsWith === "$" ? "$" : "(?=" + endsWith + ")"; } else { var endToken = tokens[tokens.length - 1]; var isEndDelimited = typeof endToken === "string" ? endToken[endToken.length - 1] === delimiter : endToken === void 0; if (!strict) route += "(?:" + escapeString(delimiter) + "(?=" + endsWith + "))?"; if (!isEndDelimited) route += "(?=" + escapeString(delimiter) + "|" + endsWith + ")"; } return new RegExp(route, flags(options)); } __name(tokensToRegExp, "tokensToRegExp"); function pathToRegexp(path, keys, options) { if (path instanceof RegExp) { return regexpToRegexp(path, keys); } if (Array.isArray(path)) { return arrayToRegexp( /** @type {!Array} */ path, keys, options ); } return stringToRegexp( /** @type {string} */ path, keys, options ); } __name(pathToRegexp, "pathToRegexp"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/utils/exclude-route.util.js var require_exclude_route_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/utils/exclude-route.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isRequestMethodAll = void 0; exports2.isRouteExcluded = isRouteExcluded; var common_12 = require_common(); var shared_utils_1 = require_shared_utils(); var isRequestMethodAll = /* @__PURE__ */ __name((method) => { return common_12.RequestMethod.ALL === method || method === -1; }, "isRequestMethodAll"); exports2.isRequestMethodAll = isRequestMethodAll; function isRouteExcluded(excludedRoutes, path, requestMethod) { return excludedRoutes.some((route) => { if ((0, exports2.isRequestMethodAll)(route.requestMethod) || route.requestMethod === requestMethod) { return route.pathRegex.exec((0, shared_utils_1.addLeadingSlash)(path)); } return false; }); } __name(isRouteExcluded, "isRouteExcluded"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/utils/flatten-route-paths.util.js var require_flatten_route_paths_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/utils/flatten-route-paths.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.flattenRoutePaths = flattenRoutePaths; var shared_utils_1 = require_shared_utils(); function flattenRoutePaths(routes) { const result = []; routes.forEach((item) => { if (item.module && item.path) { result.push({ module: item.module, path: item.path }); } if (item.children) { const childrenRef = item.children; childrenRef.forEach((child) => { if (!(0, shared_utils_1.isString)(child) && child.path) { child.path = (0, shared_utils_1.normalizePath)((0, shared_utils_1.normalizePath)(item.path) + (0, shared_utils_1.normalizePath)(child.path)); } else { result.push({ path: item.path, module: child }); } }); result.push(...flattenRoutePaths(childrenRef)); } }); return result; } __name(flattenRoutePaths, "flattenRoutePaths"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/utils/index.js var require_utils8 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/utils/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_exclude_route_util(), exports2); tslib_1.__exportStar(require_flatten_route_paths_util(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/utils.js var require_utils9 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/utils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mapToClass = exports2.filterMiddleware = exports2.mapToExcludeRoute = void 0; exports2.isMiddlewareClass = isMiddlewareClass; exports2.assignToken = assignToken; exports2.isMiddlewareRouteExcluded = isMiddlewareRouteExcluded; var common_12 = require_common(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var pathToRegexp = require_path_to_regexp(); var uid_1 = require_dist(); var utils_1 = require_utils8(); var mapToExcludeRoute = /* @__PURE__ */ __name((routes) => { return routes.map((route) => { if ((0, shared_utils_1.isString)(route)) { return { path: route, requestMethod: common_12.RequestMethod.ALL, pathRegex: pathToRegexp((0, shared_utils_1.addLeadingSlash)(route)) }; } return { path: route.path, requestMethod: route.method, pathRegex: pathToRegexp((0, shared_utils_1.addLeadingSlash)(route.path)) }; }); }, "mapToExcludeRoute"); exports2.mapToExcludeRoute = mapToExcludeRoute; var filterMiddleware = /* @__PURE__ */ __name((middleware, routes, httpAdapter) => { const excludedRoutes = (0, exports2.mapToExcludeRoute)(routes); return (0, iterare_1.iterate)([]).concat(middleware).filter(shared_utils_1.isFunction).map((item) => (0, exports2.mapToClass)(item, excludedRoutes, httpAdapter)).toArray(); }, "filterMiddleware"); exports2.filterMiddleware = filterMiddleware; var mapToClass = /* @__PURE__ */ __name((middleware, excludedRoutes, httpAdapter) => { if (isMiddlewareClass(middleware)) { if (excludedRoutes.length <= 0) { return middleware; } const MiddlewareHost = class extends middleware { static { __name(this, "MiddlewareHost"); } use(...params) { const [req, _2, next] = params; const isExcluded = isMiddlewareRouteExcluded(req, excludedRoutes, httpAdapter); if (isExcluded) { return next(); } return super.use(...params); } }; return assignToken(MiddlewareHost, middleware.name); } return assignToken(class { constructor() { this.use = (...params) => { const [req, _2, next] = params; const isExcluded = isMiddlewareRouteExcluded(req, excludedRoutes, httpAdapter); if (isExcluded) { return next(); } return middleware(...params); }; } }); }, "mapToClass"); exports2.mapToClass = mapToClass; function isMiddlewareClass(middleware) { const middlewareStr = middleware.toString(); if (middlewareStr.substring(0, 5) === "class") { return true; } const middlewareArr = middlewareStr.split(" "); return middlewareArr[0] === "function" && /[A-Z]/.test(middlewareArr[1]?.[0]) && (0, shared_utils_1.isFunction)(middleware.prototype?.use); } __name(isMiddlewareClass, "isMiddlewareClass"); function assignToken(metatype, token = (0, uid_1.uid)(21)) { Object.defineProperty(metatype, "name", { value: token }); return metatype; } __name(assignToken, "assignToken"); function isMiddlewareRouteExcluded(req, excludedRoutes, httpAdapter) { if (excludedRoutes.length <= 0) { return false; } const reqMethod = httpAdapter.getRequestMethod(req); const originalUrl = httpAdapter.getRequestUrl(req); const queryParamsIndex = originalUrl && originalUrl.indexOf("?"); const pathname = queryParamsIndex >= 0 ? originalUrl.slice(0, queryParamsIndex) : originalUrl; return (0, utils_1.isRouteExcluded)(excludedRoutes, pathname, common_12.RequestMethod[reqMethod]); } __name(isMiddlewareRouteExcluded, "isMiddlewareRouteExcluded"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/builder.js var require_builder = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/builder.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MiddlewareBuilder = void 0; var dependencies_decorator_1 = require_dependencies_decorator(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var utils_1 = require_utils9(); var MiddlewareBuilder = class _MiddlewareBuilder { static { __name(this, "MiddlewareBuilder"); } constructor(routesMapper, httpAdapter, routeInfoPathExtractor) { this.routesMapper = routesMapper; this.httpAdapter = httpAdapter; this.routeInfoPathExtractor = routeInfoPathExtractor; this.middlewareCollection = /* @__PURE__ */ new Set(); } apply(...middleware) { return new _MiddlewareBuilder.ConfigProxy(this, (0, dependencies_decorator_1.flatten)(middleware), this.routeInfoPathExtractor); } build() { return [...this.middlewareCollection]; } getHttpAdapter() { return this.httpAdapter; } }; exports2.MiddlewareBuilder = MiddlewareBuilder; MiddlewareBuilder.ConfigProxy = class { constructor(builder, middleware, routeInfoPathExtractor) { this.builder = builder; this.middleware = middleware; this.routeInfoPathExtractor = routeInfoPathExtractor; this.excludedRoutes = []; } getExcludedRoutes() { return this.excludedRoutes; } exclude(...routes) { this.excludedRoutes = [ ...this.excludedRoutes, ...this.getRoutesFlatList(routes).reduce((excludedRoutes, route) => { for (const routePath of this.routeInfoPathExtractor.extractPathFrom(route)) { excludedRoutes.push({ ...route, path: routePath }); } return excludedRoutes; }, []) ]; return this; } forRoutes(...routes) { const { middlewareCollection } = this.builder; const flattedRoutes = this.getRoutesFlatList(routes); const forRoutes = this.removeOverlappedRoutes(flattedRoutes); const configuration = { middleware: (0, utils_1.filterMiddleware)(this.middleware, this.excludedRoutes, this.builder.getHttpAdapter()), forRoutes }; middlewareCollection.add(configuration); return this.builder; } getRoutesFlatList(routes) { const { routesMapper } = this.builder; return (0, iterare_1.iterate)(routes).map((route) => routesMapper.mapRouteToRouteInfo(route)).flatten().toArray(); } removeOverlappedRoutes(routes) { const regexMatchParams = /(:[^\/]*)/g; const wildcard = "([^/]*)"; const routesWithRegex = routes.filter((route) => route.path.includes(":")).map((route) => ({ method: route.method, path: route.path, regex: new RegExp("^(" + route.path.replace(regexMatchParams, wildcard) + ")$", "g") })); return routes.filter((route) => { const isOverlapped = /* @__PURE__ */ __name((item) => { if (route.method !== item.method) { return false; } const normalizedRoutePath = (0, shared_utils_1.stripEndSlash)(route.path); return normalizedRoutePath !== item.path && item.regex.test(normalizedRoutePath); }, "isOverlapped"); const routeMatch = routesWithRegex.find(isOverlapped); return routeMatch === void 0; }); } }; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/index.js var require_middleware2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_builder(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/optional-require.js var require_optional_require = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/optional-require.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.optionalRequire = optionalRequire; function optionalRequire(packageName, loaderFn) { try { return loaderFn ? loaderFn() : require(packageName); } catch (e) { return {}; } } __name(optionalRequire, "optionalRequire"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/container.js var require_container3 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/container.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MiddlewareContainer = void 0; var get_class_scope_1 = require_get_class_scope(); var is_durable_1 = require_is_durable(); var instance_wrapper_1 = require_instance_wrapper(); var MiddlewareContainer = class { static { __name(this, "MiddlewareContainer"); } constructor(container) { this.container = container; this.middleware = /* @__PURE__ */ new Map(); this.configurationSets = /* @__PURE__ */ new Map(); } getMiddlewareCollection(moduleKey) { if (!this.middleware.has(moduleKey)) { const moduleRef = this.container.getModuleByKey(moduleKey); this.middleware.set(moduleKey, moduleRef.middlewares); } return this.middleware.get(moduleKey); } getConfigurations() { return this.configurationSets; } insertConfig(configList, moduleKey) { const middleware = this.getMiddlewareCollection(moduleKey); const targetConfig = this.getTargetConfig(moduleKey); const configurations = configList || []; const insertMiddleware = /* @__PURE__ */ __name((metatype) => { const token = metatype; middleware.set(token, new instance_wrapper_1.InstanceWrapper({ scope: (0, get_class_scope_1.getClassScope)(metatype), durable: (0, is_durable_1.isDurable)(metatype), name: token?.name ?? token, metatype, token })); }, "insertMiddleware"); configurations.forEach((config) => { [].concat(config.middleware).map(insertMiddleware); targetConfig.add(config); }); } getTargetConfig(moduleName) { if (!this.configurationSets.has(moduleName)) { this.configurationSets.set(moduleName, /* @__PURE__ */ new Set()); } return this.configurationSets.get(moduleName); } }; exports2.MiddlewareContainer = MiddlewareContainer; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-middleware.exception.js var require_invalid_middleware_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-middleware.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InvalidMiddlewareException = void 0; var messages_1 = require_messages(); var runtime_exception_1 = require_runtime_exception(); var InvalidMiddlewareException = class extends runtime_exception_1.RuntimeException { static { __name(this, "InvalidMiddlewareException"); } constructor(name) { super((0, messages_1.INVALID_MIDDLEWARE_MESSAGE)`${name}`); } }; exports2.InvalidMiddlewareException = InvalidMiddlewareException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/exceptions-handler.js var require_exceptions_handler = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/exceptions/exceptions-handler.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExceptionsHandler = void 0; var shared_utils_1 = require_shared_utils(); var select_exception_filter_metadata_util_1 = require_select_exception_filter_metadata_util(); var base_exception_filter_1 = require_base_exception_filter(); var invalid_exception_filter_exception_1 = require_invalid_exception_filter_exception(); var ExceptionsHandler = class extends base_exception_filter_1.BaseExceptionFilter { static { __name(this, "ExceptionsHandler"); } constructor() { super(...arguments); this.filters = []; } next(exception, ctx) { if (this.invokeCustomFilters(exception, ctx)) { return; } super.catch(exception, ctx); } setCustomFilters(filters) { if (!Array.isArray(filters)) { throw new invalid_exception_filter_exception_1.InvalidExceptionFilterException(); } this.filters = filters; } invokeCustomFilters(exception, ctx) { if ((0, shared_utils_1.isEmpty)(this.filters)) { return false; } const filter = (0, select_exception_filter_metadata_util_1.selectExceptionFilterMetadata)(this.filters, exception); filter && filter.func(exception, ctx); return !!filter; } }; exports2.ExceptionsHandler = ExceptionsHandler; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-exception-filters.js var require_router_exception_filters = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-exception-filters.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RouterExceptionFilters = void 0; var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); var base_exception_filter_context_1 = require_base_exception_filter_context(); var exceptions_handler_1 = require_exceptions_handler(); var constants_2 = require_constants5(); var iterare_1 = require_lib(); var RouterExceptionFilters = class extends base_exception_filter_context_1.BaseExceptionFilterContext { static { __name(this, "RouterExceptionFilters"); } constructor(container, config, applicationRef) { super(container); this.config = config; this.applicationRef = applicationRef; } create(instance, callback, moduleKey, contextId = constants_2.STATIC_CONTEXT, inquirerId) { this.moduleContext = moduleKey; const exceptionHandler = new exceptions_handler_1.ExceptionsHandler(this.applicationRef); const filters = this.createContext(instance, callback, constants_1.EXCEPTION_FILTERS_METADATA, contextId, inquirerId); if ((0, shared_utils_1.isEmpty)(filters)) { return exceptionHandler; } exceptionHandler.setCustomFilters(filters.reverse()); return exceptionHandler; } getGlobalMetadata(contextId = constants_2.STATIC_CONTEXT, inquirerId) { const globalFilters = this.config.getGlobalFilters(); if (contextId === constants_2.STATIC_CONTEXT && !inquirerId) { return globalFilters; } const scopedFilterWrappers = this.config.getGlobalRequestFilters(); const scopedFilters = (0, iterare_1.iterate)(scopedFilterWrappers).map((wrapper) => wrapper.getInstanceByContextId(contextId, inquirerId)).filter((host) => !!host).map((host) => host.instance).toArray(); return globalFilters.concat(scopedFilters); } }; exports2.RouterExceptionFilters = RouterExceptionFilters; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-proxy.js var require_router_proxy = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-proxy.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RouterProxy = void 0; var execution_context_host_1 = require_execution_context_host(); var RouterProxy = class { static { __name(this, "RouterProxy"); } createProxy(targetCallback, exceptionsHandler) { return async (req, res, next) => { try { await targetCallback(req, res, next); } catch (e) { const host = new execution_context_host_1.ExecutionContextHost([req, res, next]); exceptionsHandler.next(e, host); return res; } }; } createExceptionLayerProxy(targetCallback, exceptionsHandler) { return async (err, req, res, next) => { try { await targetCallback(err, req, res, next); } catch (e) { const host = new execution_context_host_1.ExecutionContextHost([req, res, next]); exceptionsHandler.next(e, host); return res; } }; } }; exports2.RouterProxy = RouterProxy; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/resolver.js var require_resolver = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/resolver.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MiddlewareResolver = void 0; var MiddlewareResolver = class { static { __name(this, "MiddlewareResolver"); } constructor(middlewareContainer, injector) { this.middlewareContainer = middlewareContainer; this.injector = injector; } async resolveInstances(moduleRef, moduleName) { const middlewareMap = this.middlewareContainer.getMiddlewareCollection(moduleName); const resolveInstance = /* @__PURE__ */ __name(async (wrapper) => this.resolveMiddlewareInstance(wrapper, middlewareMap, moduleRef), "resolveInstance"); await Promise.all([...middlewareMap.values()].map(resolveInstance)); } async resolveMiddlewareInstance(wrapper, middlewareMap, moduleRef) { await this.injector.loadMiddleware(wrapper, middlewareMap, moduleRef); } }; exports2.MiddlewareResolver = MiddlewareResolver; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/route-path-factory.js var require_route_path_factory = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/route-path-factory.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RoutePathFactory = void 0; var common_12 = require_common(); var shared_utils_1 = require_shared_utils(); var utils_1 = require_utils8(); var RoutePathFactory = class { static { __name(this, "RoutePathFactory"); } constructor(applicationConfig) { this.applicationConfig = applicationConfig; } create(metadata, requestMethod) { let paths = [""]; const versionOrVersions = this.getVersion(metadata); if (versionOrVersions && metadata.versioningOptions?.type === common_12.VersioningType.URI) { const versionPrefix = this.getVersionPrefix(metadata.versioningOptions); if (Array.isArray(versionOrVersions)) { paths = (0, common_12.flatten)(paths.map((path) => versionOrVersions.map((version2) => ( // Version Neutral - Do not include version in URL version2 === common_12.VERSION_NEUTRAL ? path : `${path}/${versionPrefix}${version2}` )))); } else { if (versionOrVersions !== common_12.VERSION_NEUTRAL) { paths = paths.map((path) => `${path}/${versionPrefix}${versionOrVersions}`); } } } paths = this.appendToAllIfDefined(paths, metadata.modulePath); paths = this.appendToAllIfDefined(paths, metadata.ctrlPath); paths = this.appendToAllIfDefined(paths, metadata.methodPath); if (metadata.globalPrefix) { paths = paths.map((path) => { if (this.isExcludedFromGlobalPrefix(path, requestMethod, versionOrVersions, metadata.versioningOptions)) { return path; } return (0, shared_utils_1.stripEndSlash)(metadata.globalPrefix || "") + path; }); } return paths.map((path) => (0, shared_utils_1.addLeadingSlash)(path || "/")).map((path) => path !== "/" ? (0, shared_utils_1.stripEndSlash)(path) : path); } getVersion(metadata) { return metadata.methodVersion || metadata.controllerVersion; } getVersionPrefix(versioningOptions) { const defaultPrefix = "v"; if (versioningOptions.type === common_12.VersioningType.URI) { if (versioningOptions.prefix === false) { return ""; } else if (versioningOptions.prefix !== void 0) { return versioningOptions.prefix; } } return defaultPrefix; } appendToAllIfDefined(paths, fragmentToAppend) { if (!fragmentToAppend) { return paths; } const concatPaths = /* @__PURE__ */ __name((a, b) => (0, shared_utils_1.stripEndSlash)(a) + (0, shared_utils_1.addLeadingSlash)(b), "concatPaths"); if (Array.isArray(fragmentToAppend)) { const paths2dArray = paths.map((path) => fragmentToAppend.map((fragment) => concatPaths(path, fragment))); return (0, common_12.flatten)(paths2dArray); } return paths.map((path) => concatPaths(path, fragmentToAppend)); } isExcludedFromGlobalPrefix(path, requestMethod, versionOrVersions, versioningOptions) { if ((0, shared_utils_1.isUndefined)(requestMethod)) { return false; } const options = this.applicationConfig.getGlobalPrefixOptions(); const excludedRoutes = options.exclude; if (versionOrVersions && versionOrVersions !== common_12.VERSION_NEUTRAL && versioningOptions?.type === common_12.VersioningType.URI) { path = this.truncateVersionPrefixFromPath(path, versionOrVersions, versioningOptions); } return Array.isArray(excludedRoutes) && (0, utils_1.isRouteExcluded)(excludedRoutes, path, requestMethod); } truncateVersionPrefixFromPath(path, versionValue, versioningOptions) { if (typeof versionValue !== "string") { versionValue.forEach((version2) => { if (typeof version2 === "string") { path = this.truncateVersionPrefixFromPath(path, version2, versioningOptions); } }); return path; } const prefix = `/${this.getVersionPrefix(versioningOptions)}${versionValue}`; return path.startsWith(prefix) ? path.replace(prefix, "") : path; } }; exports2.RoutePathFactory = RoutePathFactory; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/route-info-path-extractor.js var require_route_info_path_extractor = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/route-info-path-extractor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RouteInfoPathExtractor = void 0; var common_12 = require_common(); var shared_utils_1 = require_shared_utils(); var utils_1 = require_utils8(); var route_path_factory_1 = require_route_path_factory(); var RouteInfoPathExtractor = class { static { __name(this, "RouteInfoPathExtractor"); } constructor(applicationConfig) { this.applicationConfig = applicationConfig; this.routePathFactory = new route_path_factory_1.RoutePathFactory(applicationConfig); this.prefixPath = (0, shared_utils_1.stripEndSlash)((0, shared_utils_1.addLeadingSlash)(this.applicationConfig.getGlobalPrefix())); this.excludedGlobalPrefixRoutes = this.applicationConfig.getGlobalPrefixOptions().exclude; this.versioningConfig = this.applicationConfig.getVersioning(); } extractPathsFrom({ path, method, version: version2 }) { const versionPaths = this.extractVersionPathFrom(version2); if (this.isAWildcard(path)) { const entries = versionPaths.length > 0 ? versionPaths.map((versionPath) => [ this.prefixPath + versionPath + "$", this.prefixPath + versionPath + (0, shared_utils_1.addLeadingSlash)(path) ]).flat() : this.prefixPath ? [this.prefixPath + "$", this.prefixPath + (0, shared_utils_1.addLeadingSlash)(path)] : [(0, shared_utils_1.addLeadingSlash)(path)]; return Array.isArray(this.excludedGlobalPrefixRoutes) ? [ ...entries, ...this.excludedGlobalPrefixRoutes.map((route) => versionPaths + (0, shared_utils_1.addLeadingSlash)(route.path)) ] : entries; } return this.extractNonWildcardPathsFrom({ path, method, version: version2 }); } extractPathFrom(route) { if (this.isAWildcard(route.path) && !route.version) { return [(0, shared_utils_1.addLeadingSlash)(route.path)]; } return this.extractNonWildcardPathsFrom(route); } isAWildcard(path) { return ["*", "/*", "/*/", "(.*)", "/(.*)"].includes(path); } extractNonWildcardPathsFrom({ path, method, version: version2 }) { const versionPaths = this.extractVersionPathFrom(version2); if (Array.isArray(this.excludedGlobalPrefixRoutes) && (0, utils_1.isRouteExcluded)(this.excludedGlobalPrefixRoutes, path, method)) { if (!versionPaths.length) { return [(0, shared_utils_1.addLeadingSlash)(path)]; } return versionPaths.map((versionPath) => versionPath + (0, shared_utils_1.addLeadingSlash)(path)); } if (!versionPaths.length) { return [this.prefixPath + (0, shared_utils_1.addLeadingSlash)(path)]; } return versionPaths.map((versionPath) => this.prefixPath + versionPath + (0, shared_utils_1.addLeadingSlash)(path)); } extractVersionPathFrom(versionValue) { if (!versionValue || this.versioningConfig?.type !== common_12.VersioningType.URI) return []; const versionPrefix = this.routePathFactory.getVersionPrefix(this.versioningConfig); if (Array.isArray(versionValue)) { return versionValue.map((version2) => (0, shared_utils_1.addLeadingSlash)(versionPrefix + version2.toString())); } return [(0, shared_utils_1.addLeadingSlash)(versionPrefix + versionValue.toString())]; } }; exports2.RouteInfoPathExtractor = RouteInfoPathExtractor; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/paths-explorer.js var require_paths_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/paths-explorer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PathsExplorer = void 0; var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); var PathsExplorer = class { static { __name(this, "PathsExplorer"); } constructor(metadataScanner) { this.metadataScanner = metadataScanner; } scanForPaths(instance, prototype) { const instancePrototype = (0, shared_utils_1.isUndefined)(prototype) ? Object.getPrototypeOf(instance) : prototype; return this.metadataScanner.getAllMethodNames(instancePrototype).reduce((acc, method) => { const route = this.exploreMethodMetadata(instance, instancePrototype, method); if (route) { acc.push(route); } return acc; }, []); } exploreMethodMetadata(instance, prototype, methodName) { const instanceCallback = instance[methodName]; const prototypeCallback = prototype[methodName]; const routePath = Reflect.getMetadata(constants_1.PATH_METADATA, prototypeCallback); if ((0, shared_utils_1.isUndefined)(routePath)) { return null; } const requestMethod = Reflect.getMetadata(constants_1.METHOD_METADATA, prototypeCallback); const version2 = Reflect.getMetadata(constants_1.VERSION_METADATA, prototypeCallback); const path = (0, shared_utils_1.isString)(routePath) ? [(0, shared_utils_1.addLeadingSlash)(routePath)] : routePath.map((p) => (0, shared_utils_1.addLeadingSlash)(p)); return { path, requestMethod, targetCallback: instanceCallback, methodName, version: version2 }; } }; exports2.PathsExplorer = PathsExplorer; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-module.js var require_router_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-module.js"(exports2) { "use strict"; var RouterModule_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RouterModule = exports2.targetModulesByContainer = exports2.ROUTES = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); var modules_container_1 = require_modules_container(); var utils_1 = require_utils8(); exports2.ROUTES = Symbol("ROUTES"); exports2.targetModulesByContainer = /* @__PURE__ */ new WeakMap(); var RouterModule = RouterModule_1 = class RouterModule { static { __name(this, "RouterModule"); } constructor(modulesContainer, routes) { this.modulesContainer = modulesContainer; this.routes = routes; this.routes = this.deepCloneRoutes(routes); this.initialize(); } static register(routes) { return { module: RouterModule_1, providers: [ { provide: exports2.ROUTES, useValue: routes } ] }; } deepCloneRoutes(routes) { return routes.map((routeOrType) => { if (typeof routeOrType === "function") { return routeOrType; } if (routeOrType.children) { return { ...routeOrType, children: this.deepCloneRoutes(routeOrType.children) }; } return { ...routeOrType }; }); } initialize() { const flattenedRoutes = (0, utils_1.flattenRoutePaths)(this.routes); flattenedRoutes.forEach((route) => { const modulePath = (0, shared_utils_1.normalizePath)(route.path); this.registerModulePathMetadata(route.module, modulePath); this.updateTargetModulesCache(route.module); }); } registerModulePathMetadata(moduleCtor, modulePath) { Reflect.defineMetadata(constants_1.MODULE_PATH + this.modulesContainer.applicationId, modulePath, moduleCtor); } updateTargetModulesCache(moduleCtor) { let moduleClassSet; if (exports2.targetModulesByContainer.has(this.modulesContainer)) { moduleClassSet = exports2.targetModulesByContainer.get(this.modulesContainer); } else { moduleClassSet = /* @__PURE__ */ new WeakSet(); exports2.targetModulesByContainer.set(this.modulesContainer, moduleClassSet); } const moduleRef = Array.from(this.modulesContainer.values()).find((item) => item?.metatype === moduleCtor); if (!moduleRef) { return; } moduleClassSet.add(moduleRef); } }; exports2.RouterModule = RouterModule; exports2.RouterModule = RouterModule = RouterModule_1 = tslib_1.__decorate([ (0, common_12.Module)({}), tslib_1.__param(1, (0, common_12.Inject)(exports2.ROUTES)), tslib_1.__metadata("design:paramtypes", [modules_container_1.ModulesContainer, Array]) ], RouterModule); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/routes-mapper.js var require_routes_mapper = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/routes-mapper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RoutesMapper = void 0; var constants_1 = require_constants(); var interfaces_1 = require_interfaces(); var shared_utils_1 = require_shared_utils(); var metadata_scanner_1 = require_metadata_scanner(); var paths_explorer_1 = require_paths_explorer(); var router_module_1 = require_router_module(); var RoutesMapper = class { static { __name(this, "RoutesMapper"); } constructor(container, applicationConfig) { this.container = container; this.applicationConfig = applicationConfig; this.pathsExplorer = new paths_explorer_1.PathsExplorer(new metadata_scanner_1.MetadataScanner()); } mapRouteToRouteInfo(controllerOrRoute) { if ((0, shared_utils_1.isString)(controllerOrRoute)) { return this.getRouteInfoFromPath(controllerOrRoute); } const routePathOrPaths = this.getRoutePath(controllerOrRoute); if (this.isRouteInfo(routePathOrPaths, controllerOrRoute)) { return this.getRouteInfoFromObject(controllerOrRoute); } return this.getRouteInfoFromController(controllerOrRoute, routePathOrPaths); } getRouteInfoFromPath(routePath) { const defaultRequestMethod = -1; return [ { path: (0, shared_utils_1.addLeadingSlash)(routePath), method: defaultRequestMethod } ]; } getRouteInfoFromObject(routeInfoObject) { const routeInfo = { path: (0, shared_utils_1.addLeadingSlash)(routeInfoObject.path), method: routeInfoObject.method }; if (routeInfoObject.version) { routeInfo.version = routeInfoObject.version; } return [routeInfo]; } getRouteInfoFromController(controller, routePath) { const controllerPaths = this.pathsExplorer.scanForPaths(Object.create(controller), controller.prototype); const controllerVersion = this.getVersionMetadata(controller); const versioningConfig = this.applicationConfig.getVersioning(); const moduleRef = this.getHostModuleOfController(controller); const modulePath = this.getModulePath(moduleRef?.metatype); const concatPaths = /* @__PURE__ */ __name((acc, currentValue) => acc.concat(currentValue), "concatPaths"); const toUndefinedIfNeural = /* @__PURE__ */ __name((version2) => version2 === interfaces_1.VERSION_NEUTRAL ? void 0 : version2, "toUndefinedIfNeural"); const toRouteInfo = /* @__PURE__ */ __name((item, prefix) => item.path?.flatMap((p) => { let endpointPath = modulePath ?? ""; endpointPath += this.normalizeGlobalPath(prefix) + (0, shared_utils_1.addLeadingSlash)(p); const routeInfo = { path: endpointPath, method: item.requestMethod }; const version2 = item.version ?? controllerVersion; if (version2 && versioningConfig) { if (typeof version2 !== "string" && Array.isArray(version2)) { return version2.map((v) => ({ ...routeInfo, version: toUndefinedIfNeural(v) })); } routeInfo.version = toUndefinedIfNeural(version2); } return routeInfo; }), "toRouteInfo"); return [].concat(routePath).map((routePath2) => controllerPaths.map((item) => toRouteInfo(item, routePath2)).reduce(concatPaths, [])).reduce(concatPaths, []); } isRouteInfo(path, objectOrClass) { return (0, shared_utils_1.isUndefined)(path); } normalizeGlobalPath(path) { const prefix = (0, shared_utils_1.addLeadingSlash)(path); return prefix === "/" ? "" : prefix; } getRoutePath(route) { return Reflect.getMetadata(constants_1.PATH_METADATA, route); } getHostModuleOfController(metatype) { if (!metatype) { return; } const modulesContainer = this.container.getModules(); const moduleRefsSet = router_module_1.targetModulesByContainer.get(modulesContainer); if (!moduleRefsSet) { return; } const modules = Array.from(modulesContainer.values()).filter((moduleRef) => moduleRefsSet.has(moduleRef)); return modules.find(({ controllers }) => controllers.has(metatype)); } getModulePath(metatype) { if (!metatype) { return; } const modulesContainer = this.container.getModules(); const modulePath = Reflect.getMetadata(constants_1.MODULE_PATH + modulesContainer.applicationId, metatype); return modulePath ?? Reflect.getMetadata(constants_1.MODULE_PATH, metatype); } getVersionMetadata(metatype) { const versioningConfig = this.applicationConfig.getVersioning(); if (versioningConfig) { return Reflect.getMetadata(constants_1.VERSION_METADATA, metatype) ?? versioningConfig.defaultVersion; } } }; exports2.RoutesMapper = RoutesMapper; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/middleware-module.js var require_middleware_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/middleware/middleware-module.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MiddlewareModule = void 0; var common_12 = require_common(); var request_method_enum_1 = require_request_method_enum(); var shared_utils_1 = require_shared_utils(); var invalid_middleware_exception_1 = require_invalid_middleware_exception(); var runtime_exception_1 = require_runtime_exception(); var context_id_factory_1 = require_context_id_factory(); var execution_context_host_1 = require_execution_context_host(); var constants_1 = require_constants5(); var request_constants_1 = require_request_constants(); var router_exception_filters_1 = require_router_exception_filters(); var router_proxy_1 = require_router_proxy(); var utils_1 = require_utils8(); var builder_1 = require_builder(); var resolver_1 = require_resolver(); var route_info_path_extractor_1 = require_route_info_path_extractor(); var routes_mapper_1 = require_routes_mapper(); var MiddlewareModule = class _MiddlewareModule { static { __name(this, "MiddlewareModule"); } constructor() { this.routerProxy = new router_proxy_1.RouterProxy(); this.exceptionFiltersCache = /* @__PURE__ */ new WeakMap(); this.logger = new common_12.Logger(_MiddlewareModule.name); } async register(middlewareContainer, container, config, injector, httpAdapter, graphInspector, options) { this.appOptions = options; const appRef = container.getHttpAdapterRef(); this.routerExceptionFilter = new router_exception_filters_1.RouterExceptionFilters(container, config, appRef); this.routesMapper = new routes_mapper_1.RoutesMapper(container, config); this.resolver = new resolver_1.MiddlewareResolver(middlewareContainer, injector); this.routeInfoPathExtractor = new route_info_path_extractor_1.RouteInfoPathExtractor(config); this.injector = injector; this.container = container; this.httpAdapter = httpAdapter; this.graphInspector = graphInspector; const modules = container.getModules(); await this.resolveMiddleware(middlewareContainer, modules); } async resolveMiddleware(middlewareContainer, modules) { const moduleEntries = [...modules.entries()]; const loadMiddlewareConfiguration = /* @__PURE__ */ __name(async ([moduleName, moduleRef]) => { await this.loadConfiguration(middlewareContainer, moduleRef, moduleName); await this.resolver.resolveInstances(moduleRef, moduleName); }, "loadMiddlewareConfiguration"); await Promise.all(moduleEntries.map(loadMiddlewareConfiguration)); } async loadConfiguration(middlewareContainer, moduleRef, moduleKey) { const { instance } = moduleRef; if (!instance.configure) { return; } const middlewareBuilder = new builder_1.MiddlewareBuilder(this.routesMapper, this.httpAdapter, this.routeInfoPathExtractor); try { await instance.configure(middlewareBuilder); } catch (err) { if (!this.appOptions.preview) { throw err; } const warningMessage = `Warning! "${moduleRef.name}" module exposes a "configure" method that throws an exception in the preview mode (possibly due to missing dependencies). Note: you can ignore this message, just be aware that some of those conditional middlewares will not be reflected in your graph.`; this.logger.warn(warningMessage); } if (!(middlewareBuilder instanceof builder_1.MiddlewareBuilder)) { return; } const config = middlewareBuilder.build(); middlewareContainer.insertConfig(config, moduleKey); } async registerMiddleware(middlewareContainer, applicationRef) { const configs = middlewareContainer.getConfigurations(); const registerAllConfigs = /* @__PURE__ */ __name(async (moduleKey, middlewareConfig) => { for (const config of middlewareConfig) { await this.registerMiddlewareConfig(middlewareContainer, config, moduleKey, applicationRef); } }, "registerAllConfigs"); const entriesSortedByDistance = [...configs.entries()].sort(([moduleA], [moduleB]) => { return this.container.getModuleByKey(moduleA).distance - this.container.getModuleByKey(moduleB).distance; }); for (const [moduleRef, moduleConfigurations] of entriesSortedByDistance) { await registerAllConfigs(moduleRef, [...moduleConfigurations]); } } async registerMiddlewareConfig(middlewareContainer, config, moduleKey, applicationRef) { const { forRoutes } = config; for (const routeInfo of forRoutes) { await this.registerRouteMiddleware(middlewareContainer, routeInfo, config, moduleKey, applicationRef); } } async registerRouteMiddleware(middlewareContainer, routeInfo, config, moduleKey, applicationRef) { const middlewareCollection = [].concat(config.middleware); const moduleRef = this.container.getModuleByKey(moduleKey); for (const metatype of middlewareCollection) { const collection = middlewareContainer.getMiddlewareCollection(moduleKey); const instanceWrapper = collection.get(metatype); if ((0, shared_utils_1.isUndefined)(instanceWrapper)) { throw new runtime_exception_1.RuntimeException(); } if (instanceWrapper.isTransient) { return; } this.graphInspector.insertClassNode(moduleRef, instanceWrapper, "middleware"); const middlewareDefinition = { type: "middleware", methodName: "use", className: instanceWrapper.name, classNodeId: instanceWrapper.id, metadata: { key: routeInfo.path, path: routeInfo.path, requestMethod: request_method_enum_1.RequestMethod[routeInfo.method] ?? "ALL", version: routeInfo.version } }; this.graphInspector.insertEntrypointDefinition(middlewareDefinition, instanceWrapper.id); await this.bindHandler(instanceWrapper, applicationRef, routeInfo, moduleRef, collection); } } async bindHandler(wrapper, applicationRef, routeInfo, moduleRef, collection) { const { instance, metatype } = wrapper; if ((0, shared_utils_1.isUndefined)(instance?.use)) { throw new invalid_middleware_exception_1.InvalidMiddlewareException(metatype.name); } const isStatic = wrapper.isDependencyTreeStatic(); if (isStatic) { const proxy = await this.createProxy(instance); return this.registerHandler(applicationRef, routeInfo, proxy); } const isTreeDurable = wrapper.isDependencyTreeDurable(); await this.registerHandler(applicationRef, routeInfo, async (req, res, next) => { try { const contextId = this.getContextId(req, isTreeDurable); const contextInstance = await this.injector.loadPerContext(instance, moduleRef, collection, contextId); const proxy = await this.createProxy(contextInstance, contextId); return proxy(req, res, next); } catch (err) { let exceptionsHandler = this.exceptionFiltersCache.get(instance.use); if (!exceptionsHandler) { exceptionsHandler = this.routerExceptionFilter.create(instance, instance.use, void 0); this.exceptionFiltersCache.set(instance.use, exceptionsHandler); } const host = new execution_context_host_1.ExecutionContextHost([req, res, next]); exceptionsHandler.next(err, host); } }); } async createProxy(instance, contextId = constants_1.STATIC_CONTEXT) { const exceptionsHandler = this.routerExceptionFilter.create(instance, instance.use, void 0, contextId); const middleware = instance.use.bind(instance); return this.routerProxy.createProxy(middleware, exceptionsHandler); } async registerHandler(applicationRef, routeInfo, proxy) { const { method } = routeInfo; const paths = this.routeInfoPathExtractor.extractPathsFrom(routeInfo); const isMethodAll = (0, utils_1.isRequestMethodAll)(method); const requestMethod = request_method_enum_1.RequestMethod[method]; const router = await applicationRef.createMiddlewareFactory(method); const middlewareFunction = isMethodAll ? proxy : (req, res, next) => { if (applicationRef.getRequestMethod(req) === requestMethod) { return proxy(req, res, next); } return next(); }; const pathsToApplyMiddleware = []; paths.some((path) => path.match(/^\/?$/)) ? pathsToApplyMiddleware.push("/") : pathsToApplyMiddleware.push(...paths); pathsToApplyMiddleware.forEach((path) => router(path, middlewareFunction)); } getContextId(request, isTreeDurable) { const contextId = context_id_factory_1.ContextIdFactory.getByRequest(request); if (!request[request_constants_1.REQUEST_CONTEXT_ID]) { Object.defineProperty(request, request_constants_1.REQUEST_CONTEXT_ID, { value: contextId, enumerable: false, writable: false, configurable: false }); const requestProviderValue = isTreeDurable ? contextId.payload : Object.assign(request, contextId.payload); this.container.registerRequestProvider(requestProviderValue, contextId); } return contextId; } }; exports2.MiddlewareModule = MiddlewareModule; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/helpers/transient-instances.js var require_transient_instances = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/helpers/transient-instances.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getTransientInstances = getTransientInstances; exports2.getNonTransientInstances = getNonTransientInstances; var iterare_1 = require_lib(); function getTransientInstances(instances) { return (0, iterare_1.iterate)(instances).filter(([_2, wrapper]) => wrapper.isDependencyTreeStatic()).map(([_2, wrapper]) => wrapper.getStaticTransientInstances()).flatten().filter((item) => !!item).map(({ instance }) => instance).toArray(); } __name(getTransientInstances, "getTransientInstances"); function getNonTransientInstances(instances) { return (0, iterare_1.iterate)(instances).filter(([key, wrapper]) => wrapper.isDependencyTreeStatic() && !wrapper.isTransient).map(([key, { instance }]) => instance).toArray(); } __name(getNonTransientInstances, "getNonTransientInstances"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/on-app-bootstrap.hook.js var require_on_app_bootstrap_hook = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/on-app-bootstrap.hook.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.callModuleBootstrapHook = callModuleBootstrapHook; var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var transient_instances_1 = require_transient_instances(); function hasOnAppBootstrapHook(instance) { return (0, shared_utils_1.isFunction)(instance.onApplicationBootstrap); } __name(hasOnAppBootstrapHook, "hasOnAppBootstrapHook"); function callOperator(instances) { return (0, iterare_1.iterate)(instances).filter((instance) => !(0, shared_utils_1.isNil)(instance)).filter(hasOnAppBootstrapHook).map(async (instance) => instance.onApplicationBootstrap()).toArray(); } __name(callOperator, "callOperator"); async function callModuleBootstrapHook(module3) { const providers = module3.getNonAliasProviders(); const [_2, moduleClassHost] = providers.shift(); const instances = [ ...module3.controllers, ...providers, ...module3.injectables, ...module3.middlewares ]; const nonTransientInstances = (0, transient_instances_1.getNonTransientInstances)(instances); await Promise.all(callOperator(nonTransientInstances)); const transientInstances = (0, transient_instances_1.getTransientInstances)(instances); await Promise.all(callOperator(transientInstances)); const moduleClassInstance = moduleClassHost.instance; if (moduleClassInstance && hasOnAppBootstrapHook(moduleClassInstance) && moduleClassHost.isDependencyTreeStatic()) { await moduleClassInstance.onApplicationBootstrap(); } } __name(callModuleBootstrapHook, "callModuleBootstrapHook"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/on-app-shutdown.hook.js var require_on_app_shutdown_hook = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/on-app-shutdown.hook.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.callAppShutdownHook = callAppShutdownHook; var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var transient_instances_1 = require_transient_instances(); function hasOnAppShutdownHook(instance) { return (0, shared_utils_1.isFunction)(instance.onApplicationShutdown); } __name(hasOnAppShutdownHook, "hasOnAppShutdownHook"); function callOperator(instances, signal) { return (0, iterare_1.iterate)(instances).filter((instance) => !(0, shared_utils_1.isNil)(instance)).filter(hasOnAppShutdownHook).map(async (instance) => instance.onApplicationShutdown(signal)).toArray(); } __name(callOperator, "callOperator"); async function callAppShutdownHook(module3, signal) { const providers = module3.getNonAliasProviders(); const [_2, moduleClassHost] = providers.shift(); const instances = [ ...module3.controllers, ...providers, ...module3.injectables, ...module3.middlewares ]; const nonTransientInstances = (0, transient_instances_1.getNonTransientInstances)(instances); await Promise.all(callOperator(nonTransientInstances, signal)); const transientInstances = (0, transient_instances_1.getTransientInstances)(instances); await Promise.all(callOperator(transientInstances, signal)); const moduleClassInstance = moduleClassHost.instance; if (moduleClassInstance && hasOnAppShutdownHook(moduleClassInstance) && moduleClassHost.isDependencyTreeStatic()) { await moduleClassInstance.onApplicationShutdown(signal); } } __name(callAppShutdownHook, "callAppShutdownHook"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/on-module-destroy.hook.js var require_on_module_destroy_hook = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/on-module-destroy.hook.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.callModuleDestroyHook = callModuleDestroyHook; var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var transient_instances_1 = require_transient_instances(); function hasOnModuleDestroyHook(instance) { return (0, shared_utils_1.isFunction)(instance.onModuleDestroy); } __name(hasOnModuleDestroyHook, "hasOnModuleDestroyHook"); function callOperator(instances) { return (0, iterare_1.iterate)(instances).filter((instance) => !(0, shared_utils_1.isNil)(instance)).filter(hasOnModuleDestroyHook).map(async (instance) => instance.onModuleDestroy()).toArray(); } __name(callOperator, "callOperator"); async function callModuleDestroyHook(module3) { const providers = module3.getNonAliasProviders(); const [_2, moduleClassHost] = providers.shift(); const instances = [ ...module3.controllers, ...providers, ...module3.injectables, ...module3.middlewares ]; const nonTransientInstances = (0, transient_instances_1.getNonTransientInstances)(instances); await Promise.all(callOperator(nonTransientInstances)); const transientInstances = (0, transient_instances_1.getTransientInstances)(instances); await Promise.all(callOperator(transientInstances)); const moduleClassInstance = moduleClassHost.instance; if (moduleClassInstance && hasOnModuleDestroyHook(moduleClassInstance) && moduleClassHost.isDependencyTreeStatic()) { await moduleClassInstance.onModuleDestroy(); } } __name(callModuleDestroyHook, "callModuleDestroyHook"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/on-module-init.hook.js var require_on_module_init_hook = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/on-module-init.hook.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.callModuleInitHook = callModuleInitHook; var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var transient_instances_1 = require_transient_instances(); function hasOnModuleInitHook(instance) { return (0, shared_utils_1.isFunction)(instance.onModuleInit); } __name(hasOnModuleInitHook, "hasOnModuleInitHook"); function callOperator(instances) { return (0, iterare_1.iterate)(instances).filter((instance) => !(0, shared_utils_1.isNil)(instance)).filter(hasOnModuleInitHook).map(async (instance) => instance.onModuleInit()).toArray(); } __name(callOperator, "callOperator"); async function callModuleInitHook(module3) { const providers = module3.getNonAliasProviders(); const [_2, moduleClassHost] = providers.shift(); const instances = [ ...module3.controllers, ...providers, ...module3.injectables, ...module3.middlewares ]; const nonTransientInstances = (0, transient_instances_1.getNonTransientInstances)(instances); await Promise.all(callOperator(nonTransientInstances)); const transientInstances = (0, transient_instances_1.getTransientInstances)(instances); await Promise.all(callOperator(transientInstances)); const moduleClassInstance = moduleClassHost.instance; if (moduleClassInstance && hasOnModuleInitHook(moduleClassInstance) && moduleClassHost.isDependencyTreeStatic()) { await moduleClassInstance.onModuleInit(); } } __name(callModuleInitHook, "callModuleInitHook"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/before-app-shutdown.hook.js var require_before_app_shutdown_hook = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/before-app-shutdown.hook.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.callBeforeAppShutdownHook = callBeforeAppShutdownHook; var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var transient_instances_1 = require_transient_instances(); function hasBeforeApplicationShutdownHook(instance) { return (0, shared_utils_1.isFunction)(instance.beforeApplicationShutdown); } __name(hasBeforeApplicationShutdownHook, "hasBeforeApplicationShutdownHook"); function callOperator(instances, signal) { return (0, iterare_1.iterate)(instances).filter((instance) => !(0, shared_utils_1.isNil)(instance)).filter(hasBeforeApplicationShutdownHook).map(async (instance) => instance.beforeApplicationShutdown(signal)).toArray(); } __name(callOperator, "callOperator"); async function callBeforeAppShutdownHook(module3, signal) { const providers = module3.getNonAliasProviders(); const [_2, moduleClassHost] = providers.shift(); const instances = [ ...module3.controllers, ...providers, ...module3.injectables, ...module3.middlewares ]; const nonTransientInstances = (0, transient_instances_1.getNonTransientInstances)(instances); await Promise.all(callOperator(nonTransientInstances, signal)); const transientInstances = (0, transient_instances_1.getTransientInstances)(instances); await Promise.all(callOperator(transientInstances, signal)); const moduleClassInstance = moduleClassHost.instance; if (moduleClassInstance && hasBeforeApplicationShutdownHook(moduleClassInstance) && moduleClassHost.isDependencyTreeStatic()) { await moduleClassInstance.beforeApplicationShutdown(signal); } } __name(callBeforeAppShutdownHook, "callBeforeAppShutdownHook"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/index.js var require_hooks2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/hooks/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_on_app_bootstrap_hook(), exports2); tslib_1.__exportStar(require_on_app_shutdown_hook(), exports2); tslib_1.__exportStar(require_on_module_destroy_hook(), exports2); tslib_1.__exportStar(require_on_module_init_hook(), exports2); tslib_1.__exportStar(require_before_app_shutdown_hook(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/nest-application-context.js var require_nest_application_context = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/nest-application-context.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NestApplicationContext = void 0; var common_12 = require_common(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var constants_1 = require_constants4(); var exceptions_1 = require_exceptions3(); var context_id_factory_1 = require_context_id_factory(); var hooks_1 = require_hooks2(); var abstract_instance_resolver_1 = require_abstract_instance_resolver(); var compiler_1 = require_compiler(); var injector_1 = require_injector(); var instance_links_host_1 = require_instance_links_host(); var NestApplicationContext = class _NestApplicationContext extends abstract_instance_resolver_1.AbstractInstanceResolver { static { __name(this, "NestApplicationContext"); } get instanceLinksHost() { if (!this._instanceLinksHost) { this._instanceLinksHost = new instance_links_host_1.InstanceLinksHost(this.container); } return this._instanceLinksHost; } constructor(container, appOptions = {}, contextModule = null, scope = new Array()) { super(); this.container = container; this.appOptions = appOptions; this.contextModule = contextModule; this.scope = scope; this.isInitialized = false; this.logger = new common_12.Logger(_NestApplicationContext.name, { timestamp: true }); this.shouldFlushLogsOnOverride = false; this.activeShutdownSignals = new Array(); this.moduleCompiler = new compiler_1.ModuleCompiler(); this.injector = new injector_1.Injector(); if (this.appOptions.preview) { this.printInPreviewModeWarning(); } } selectContextModule() { const modules = this.container.getModules().values(); this.contextModule = modules.next().value; } /** * Allows navigating through the modules tree, for example, to pull out a specific instance from the selected module. * @returns {INestApplicationContext} */ select(moduleType) { const modulesContainer = this.container.getModules(); const contextModuleCtor = this.contextModule.metatype; const scope = this.scope.concat(contextModuleCtor); const moduleTokenFactory = this.container.getModuleTokenFactory(); const { type, dynamicMetadata } = this.moduleCompiler.extractMetadata(moduleType); const token = moduleTokenFactory.create(type, dynamicMetadata); const selectedModule = modulesContainer.get(token); if (!selectedModule) { throw new exceptions_1.UnknownModuleException(type.name); } return new _NestApplicationContext(this.container, this.appOptions, selectedModule, scope); } /** * Retrieves an instance (or a list of instances) of either injectable or controller, otherwise, throws exception. * @returns {TResult | Array} */ get(typeOrToken, options = { strict: false }) { return !(options && options.strict) ? this.find(typeOrToken, options) : this.find(typeOrToken, { moduleId: this.contextModule?.id, each: options.each }); } /** * Resolves transient or request-scoped instance (or a list of instances) of either injectable or controller, otherwise, throws exception. * @returns {Promise>} */ resolve(typeOrToken, contextId = (0, context_id_factory_1.createContextId)(), options = { strict: false }) { return this.resolvePerContext(typeOrToken, this.contextModule, contextId, options); } /** * Registers the request/context object for a given context ID (DI container sub-tree). * @returns {void} */ registerRequestByContextId(request, contextId) { this.container.registerRequestProvider(request, contextId); } /** * Initializes the Nest application. * Calls the Nest lifecycle events. * * @returns {Promise} The NestApplicationContext instance as Promise */ async init() { if (this.isInitialized) { return this; } this.initializationPromise = new Promise(async (resolve, reject) => { try { await this.callInitHook(); await this.callBootstrapHook(); resolve(); } catch (err) { reject(err); } }); await this.initializationPromise; this.isInitialized = true; return this; } /** * Terminates the application * @returns {Promise} */ async close(signal) { await this.initializationPromise; await this.callDestroyHook(); await this.callBeforeShutdownHook(signal); await this.dispose(); await this.callShutdownHook(signal); this.unsubscribeFromProcessSignals(); } /** * Sets custom logger service. * Flushes buffered logs if auto flush is on. * @returns {void} */ useLogger(logger) { common_12.Logger.overrideLogger(logger); if (this.shouldFlushLogsOnOverride) { this.flushLogs(); } } /** * Prints buffered logs and detaches buffer. * @returns {void} */ flushLogs() { common_12.Logger.flush(); } /** * Define that it must flush logs right after defining a custom logger. */ flushLogsOnOverride() { this.shouldFlushLogsOnOverride = true; } /** * Enables the usage of shutdown hooks. Will call the * `onApplicationShutdown` function of a provider if the * process receives a shutdown signal. * * @param {ShutdownSignal[]} [signals=[]] The system signals it should listen to * * @returns {this} The Nest application context instance */ enableShutdownHooks(signals = []) { if ((0, shared_utils_1.isEmpty)(signals)) { signals = Object.keys(common_12.ShutdownSignal).map((key) => common_12.ShutdownSignal[key]); } else { signals = Array.from(new Set(signals)); } signals = (0, iterare_1.iterate)(signals).map((signal) => signal.toString().toUpperCase().trim()).filter((signal) => !this.activeShutdownSignals.includes(signal)).toArray(); this.listenToShutdownSignals(signals); return this; } async dispose() { return Promise.resolve(); } /** * Listens to shutdown signals by listening to * process events * * @param {string[]} signals The system signals it should listen to */ listenToShutdownSignals(signals) { let receivedSignal = false; const cleanup = /* @__PURE__ */ __name(async (signal) => { try { if (receivedSignal) { return; } receivedSignal = true; await this.initializationPromise; await this.callDestroyHook(); await this.callBeforeShutdownHook(signal); await this.dispose(); await this.callShutdownHook(signal); signals.forEach((sig) => process.removeListener(sig, cleanup)); process.kill(process.pid, signal); } catch (err) { common_12.Logger.error(constants_1.MESSAGES.ERROR_DURING_SHUTDOWN, err?.stack, _NestApplicationContext.name); process.exit(1); } }, "cleanup"); this.shutdownCleanupRef = cleanup; signals.forEach((signal) => { this.activeShutdownSignals.push(signal); process.on(signal, cleanup); }); } /** * Unsubscribes from shutdown signals (process events) */ unsubscribeFromProcessSignals() { if (!this.shutdownCleanupRef) { return; } this.activeShutdownSignals.forEach((signal) => { process.removeListener(signal, this.shutdownCleanupRef); }); } /** * Calls the `onModuleInit` function on the registered * modules and its children. */ async callInitHook() { const modulesSortedByDistance = this.getModulesToTriggerHooksOn(); for (const module3 of modulesSortedByDistance) { await (0, hooks_1.callModuleInitHook)(module3); } } /** * Calls the `onModuleDestroy` function on the registered * modules and its children. */ async callDestroyHook() { const modulesSortedByDistance = this.getModulesToTriggerHooksOn(); for (const module3 of modulesSortedByDistance) { await (0, hooks_1.callModuleDestroyHook)(module3); } } /** * Calls the `onApplicationBootstrap` function on the registered * modules and its children. */ async callBootstrapHook() { const modulesSortedByDistance = this.getModulesToTriggerHooksOn(); for (const module3 of modulesSortedByDistance) { await (0, hooks_1.callModuleBootstrapHook)(module3); } } /** * Calls the `onApplicationShutdown` function on the registered * modules and children. */ async callShutdownHook(signal) { const modulesSortedByDistance = this.getModulesToTriggerHooksOn(); for (const module3 of modulesSortedByDistance) { await (0, hooks_1.callAppShutdownHook)(module3, signal); } } /** * Calls the `beforeApplicationShutdown` function on the registered * modules and children. */ async callBeforeShutdownHook(signal) { const modulesSortedByDistance = this.getModulesToTriggerHooksOn(); for (const module3 of modulesSortedByDistance) { await (0, hooks_1.callBeforeAppShutdownHook)(module3, signal); } } assertNotInPreviewMode(methodName) { if (this.appOptions.preview) { const error = `Calling the "${methodName}" in the preview mode is not supported.`; this.logger.error(error); throw new Error(error); } } getModulesToTriggerHooksOn() { if (this._moduleRefsForHooksByDistance) { return this._moduleRefsForHooksByDistance; } const modulesContainer = this.container.getModules(); const compareFn = /* @__PURE__ */ __name((a, b) => b.distance - a.distance, "compareFn"); const modulesSortedByDistance = Array.from(modulesContainer.values()).sort(compareFn); this._moduleRefsForHooksByDistance = this.appOptions?.preview ? modulesSortedByDistance.filter((moduleRef) => moduleRef.initOnPreview) : modulesSortedByDistance; return this._moduleRefsForHooksByDistance; } printInPreviewModeWarning() { this.logger.warn("------------------------------------------------"); this.logger.warn("Application is running in the PREVIEW mode!"); this.logger.warn("Providers/controllers will not be instantiated."); this.logger.warn("------------------------------------------------"); } }; exports2.NestApplicationContext = NestApplicationContext; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/messages.js var require_messages2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/messages.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.INVALID_EXECUTION_CONTEXT = exports2.VERSIONED_CONTROLLER_MAPPING_MESSAGE = exports2.CONTROLLER_MAPPING_MESSAGE = exports2.VERSIONED_ROUTE_MAPPED_MESSAGE = exports2.ROUTE_MAPPED_MESSAGE = exports2.MODULE_INIT_MESSAGE = void 0; var request_method_enum_1 = require_request_method_enum(); var version_options_interface_1 = require_version_options_interface(); var MODULE_INIT_MESSAGE = /* @__PURE__ */ __name((text, module3) => `${module3} dependencies initialized`, "MODULE_INIT_MESSAGE"); exports2.MODULE_INIT_MESSAGE = MODULE_INIT_MESSAGE; var ROUTE_MAPPED_MESSAGE = /* @__PURE__ */ __name((path, method) => `Mapped {${path}, ${request_method_enum_1.RequestMethod[method]}} route`, "ROUTE_MAPPED_MESSAGE"); exports2.ROUTE_MAPPED_MESSAGE = ROUTE_MAPPED_MESSAGE; var VERSIONED_ROUTE_MAPPED_MESSAGE = /* @__PURE__ */ __name((path, method, version2) => { const controllerVersions = Array.isArray(version2) ? version2 : [version2]; const versions = controllerVersions.map((version3) => version3 === version_options_interface_1.VERSION_NEUTRAL ? "Neutral" : version3).join(","); return `Mapped {${path}, ${request_method_enum_1.RequestMethod[method]}} (version: ${versions}) route`; }, "VERSIONED_ROUTE_MAPPED_MESSAGE"); exports2.VERSIONED_ROUTE_MAPPED_MESSAGE = VERSIONED_ROUTE_MAPPED_MESSAGE; var CONTROLLER_MAPPING_MESSAGE = /* @__PURE__ */ __name((name, path) => `${name} {${path}}:`, "CONTROLLER_MAPPING_MESSAGE"); exports2.CONTROLLER_MAPPING_MESSAGE = CONTROLLER_MAPPING_MESSAGE; var VERSIONED_CONTROLLER_MAPPING_MESSAGE = /* @__PURE__ */ __name((name, path, version2) => { const controllerVersions = Array.isArray(version2) ? version2 : [version2]; const versions = controllerVersions.map((version3) => version3 === version_options_interface_1.VERSION_NEUTRAL ? "Neutral" : version3).join(","); return `${name} {${path}} (version: ${versions}):`; }, "VERSIONED_CONTROLLER_MAPPING_MESSAGE"); exports2.VERSIONED_CONTROLLER_MAPPING_MESSAGE = VERSIONED_CONTROLLER_MAPPING_MESSAGE; var INVALID_EXECUTION_CONTEXT = /* @__PURE__ */ __name((methodName, currentContext) => `Calling ${methodName} is not allowed in this context. Your current execution context is "${currentContext}".`, "INVALID_EXECUTION_CONTEXT"); exports2.INVALID_EXECUTION_CONTEXT = INVALID_EXECUTION_CONTEXT; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/unknown-request-mapping.exception.js var require_unknown_request_mapping_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/unknown-request-mapping.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UnknownRequestMappingException = void 0; var runtime_exception_1 = require_runtime_exception(); var messages_1 = require_messages(); var UnknownRequestMappingException = class extends runtime_exception_1.RuntimeException { static { __name(this, "UnknownRequestMappingException"); } constructor(metatype) { super((0, messages_1.UNKNOWN_REQUEST_MAPPING)(metatype)); } }; exports2.UnknownRequestMappingException = UnknownRequestMappingException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/router-method-factory.js var require_router_method_factory = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/router-method-factory.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RouterMethodFactory = void 0; var request_method_enum_1 = require_request_method_enum(); var REQUEST_METHOD_MAP = { [request_method_enum_1.RequestMethod.GET]: "get", [request_method_enum_1.RequestMethod.POST]: "post", [request_method_enum_1.RequestMethod.PUT]: "put", [request_method_enum_1.RequestMethod.DELETE]: "delete", [request_method_enum_1.RequestMethod.PATCH]: "patch", [request_method_enum_1.RequestMethod.ALL]: "all", [request_method_enum_1.RequestMethod.OPTIONS]: "options", [request_method_enum_1.RequestMethod.HEAD]: "head", [request_method_enum_1.RequestMethod.SEARCH]: "search" }; var RouterMethodFactory = class { static { __name(this, "RouterMethodFactory"); } get(target, requestMethod) { const methodName = REQUEST_METHOD_MAP[requestMethod]; const method = target[methodName]; if (!method) { return target.use; } return method; } }; exports2.RouterMethodFactory = RouterMethodFactory; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/route-params-factory.js var require_route_params_factory = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/route-params-factory.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RouteParamsFactory = void 0; var route_paramtypes_enum_1 = require_route_paramtypes_enum(); var RouteParamsFactory = class { static { __name(this, "RouteParamsFactory"); } exchangeKeyForValue(key, data, { req, res, next }) { switch (key) { case route_paramtypes_enum_1.RouteParamtypes.NEXT: return next; case route_paramtypes_enum_1.RouteParamtypes.REQUEST: return req; case route_paramtypes_enum_1.RouteParamtypes.RESPONSE: return res; case route_paramtypes_enum_1.RouteParamtypes.BODY: return data && req.body ? req.body[data] : req.body; case route_paramtypes_enum_1.RouteParamtypes.RAW_BODY: return req.rawBody; case route_paramtypes_enum_1.RouteParamtypes.PARAM: return data ? req.params[data] : req.params; case route_paramtypes_enum_1.RouteParamtypes.HOST: const hosts = req.hosts || {}; return data ? hosts[data] : hosts; case route_paramtypes_enum_1.RouteParamtypes.QUERY: return data ? req.query[data] : req.query; case route_paramtypes_enum_1.RouteParamtypes.HEADERS: return data ? req.headers[data.toLowerCase()] : req.headers; case route_paramtypes_enum_1.RouteParamtypes.SESSION: return req.session; case route_paramtypes_enum_1.RouteParamtypes.FILE: return req[data || "file"]; case route_paramtypes_enum_1.RouteParamtypes.FILES: return req.files; case route_paramtypes_enum_1.RouteParamtypes.IP: return req.ip; default: return null; } } }; exports2.RouteParamsFactory = RouteParamsFactory; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/sse-stream.js var require_sse_stream = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/sse-stream.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SseStream = void 0; var shared_utils_1 = require_shared_utils(); var stream_1 = require("stream"); function toDataString(data) { if ((0, shared_utils_1.isObject)(data)) { return toDataString(JSON.stringify(data)); } return data.split(/\r\n|\r|\n/).map((line) => `data: ${line} `).join(""); } __name(toDataString, "toDataString"); var SseStream = class extends stream_1.Transform { static { __name(this, "SseStream"); } constructor(req) { super({ objectMode: true }); this.lastEventId = null; if (req && req.socket) { req.socket.setKeepAlive(true); req.socket.setNoDelay(true); req.socket.setTimeout(0); } } pipe(destination, options) { if (destination.writeHead) { destination.writeHead(200, { ...options?.additionalHeaders, // See https://github.com/dunglas/mercure/blob/master/hub/subscribe.go#L124-L130 "Content-Type": "text/event-stream", Connection: "keep-alive", // Disable cache, even for old browsers and proxies "Cache-Control": "private, no-cache, no-store, must-revalidate, max-age=0, no-transform", Pragma: "no-cache", Expire: "0", // NGINX support https://www.nginx.com/resources/wiki/start/topics/examples/x-accel/#x-accel-buffering "X-Accel-Buffering": "no" }); destination.flushHeaders(); } destination.write("\n"); return super.pipe(destination, options); } _transform(message, encoding, callback) { let data = message.type ? `event: ${message.type} ` : ""; data += message.id ? `id: ${message.id} ` : ""; data += message.retry ? `retry: ${message.retry} ` : ""; data += message.data ? toDataString(message.data) : ""; data += "\n"; this.push(data); callback(); } /** * Calls `.write` but handles the drain if needed */ writeMessage(message, cb) { if (!message.id) { this.lastEventId++; message.id = this.lastEventId.toString(); } if (!this.write(message, "utf-8")) { this.once("drain", cb); } else { process.nextTick(cb); } } }; exports2.SseStream = SseStream; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-response-controller.js var require_router_response_controller = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-response-controller.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RouterResponseController = void 0; var common_12 = require_common(); var shared_utils_1 = require_shared_utils(); var rxjs_1 = require_cjs3(); var operators_1 = require_operators(); var sse_stream_1 = require_sse_stream(); var RouterResponseController = class _RouterResponseController { static { __name(this, "RouterResponseController"); } constructor(applicationRef) { this.applicationRef = applicationRef; this.logger = new common_12.Logger(_RouterResponseController.name); } async apply(result, response, httpStatusCode) { return this.applicationRef.reply(response, result, httpStatusCode); } async redirect(resultOrDeferred, response, redirectResponse) { const result = await this.transformToResult(resultOrDeferred); const statusCode = result && result.statusCode ? result.statusCode : redirectResponse.statusCode ? redirectResponse.statusCode : common_12.HttpStatus.FOUND; const url = result && result.url ? result.url : redirectResponse.url; this.applicationRef.redirect(response, statusCode, url); } async render(resultOrDeferred, response, template) { const result = await this.transformToResult(resultOrDeferred); return this.applicationRef.render(response, template, result); } async transformToResult(resultOrDeferred) { if ((0, rxjs_1.isObservable)(resultOrDeferred)) { return (0, rxjs_1.lastValueFrom)(resultOrDeferred); } return resultOrDeferred; } getStatusByMethod(requestMethod) { switch (requestMethod) { case common_12.RequestMethod.POST: return common_12.HttpStatus.CREATED; default: return common_12.HttpStatus.OK; } } setHeaders(response, headers) { headers.forEach(({ name, value }) => this.applicationRef.setHeader(response, name, typeof value === "function" ? value() : value)); } setStatus(response, statusCode) { this.applicationRef.status(response, statusCode); } sse(result, response, request, options) { if (response.writableEnded) { return; } this.assertObservable(result); const stream = new sse_stream_1.SseStream(request); stream.pipe(response, options); const subscription = result.pipe((0, operators_1.map)((message) => { if ((0, shared_utils_1.isObject)(message)) { return message; } return { data: message }; }), (0, operators_1.concatMap)((message) => new Promise((resolve) => stream.writeMessage(message, () => resolve()))), (0, operators_1.catchError)((err) => { const data = err instanceof Error ? err.message : err; stream.writeMessage({ type: "error", data }, (writeError) => { if (writeError) { this.logger.error(writeError); } }); return rxjs_1.EMPTY; })).subscribe({ complete: /* @__PURE__ */ __name(() => { response.end(); }, "complete") }); request.on("close", () => { subscription.unsubscribe(); if (!stream.writableEnded) { stream.end(); } }); } assertObservable(value) { if (!(0, rxjs_1.isObservable)(value)) { throw new ReferenceError("You must return an Observable stream to use Server-Sent Events (SSE)."); } } }; exports2.RouterResponseController = RouterResponseController; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-execution-context.js var require_router_execution_context = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-execution-context.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RouterExecutionContext = void 0; var common_12 = require_common(); var constants_1 = require_constants(); var route_paramtypes_enum_1 = require_route_paramtypes_enum(); var shared_utils_1 = require_shared_utils(); var guards_1 = require_guards(); var context_utils_1 = require_context_utils(); var handler_metadata_storage_1 = require_handler_metadata_storage(); var constants_2 = require_constants5(); var router_response_controller_1 = require_router_response_controller(); var RouterExecutionContext = class { static { __name(this, "RouterExecutionContext"); } constructor(paramsFactory, pipesContextCreator, pipesConsumer, guardsContextCreator, guardsConsumer, interceptorsContextCreator, interceptorsConsumer, applicationRef) { this.paramsFactory = paramsFactory; this.pipesContextCreator = pipesContextCreator; this.pipesConsumer = pipesConsumer; this.guardsContextCreator = guardsContextCreator; this.guardsConsumer = guardsConsumer; this.interceptorsContextCreator = interceptorsContextCreator; this.interceptorsConsumer = interceptorsConsumer; this.applicationRef = applicationRef; this.handlerMetadataStorage = new handler_metadata_storage_1.HandlerMetadataStorage(); this.contextUtils = new context_utils_1.ContextUtils(); this.responseController = new router_response_controller_1.RouterResponseController(applicationRef); } create(instance, callback, methodName, moduleKey, requestMethod, contextId = constants_2.STATIC_CONTEXT, inquirerId) { const contextType = "http"; const { argsLength, fnHandleResponse, paramtypes, getParamsMetadata, httpStatusCode, responseHeaders, hasCustomHeaders } = this.getMetadata(instance, callback, methodName, moduleKey, requestMethod, contextType); const paramsOptions = this.contextUtils.mergeParamsMetatypes(getParamsMetadata(moduleKey, contextId, inquirerId), paramtypes); const pipes = this.pipesContextCreator.create(instance, callback, moduleKey, contextId, inquirerId); const guards = this.guardsContextCreator.create(instance, callback, moduleKey, contextId, inquirerId); const interceptors = this.interceptorsContextCreator.create(instance, callback, moduleKey, contextId, inquirerId); const fnCanActivate = this.createGuardsFn(guards, instance, callback, contextType); const fnApplyPipes = this.createPipesFn(pipes, paramsOptions); const handler = /* @__PURE__ */ __name((args, req, res, next) => async () => { fnApplyPipes && await fnApplyPipes(args, req, res, next); return callback.apply(instance, args); }, "handler"); return async (req, res, next) => { const args = this.contextUtils.createNullArray(argsLength); fnCanActivate && await fnCanActivate([req, res, next]); this.responseController.setStatus(res, httpStatusCode); hasCustomHeaders && this.responseController.setHeaders(res, responseHeaders); const result = await this.interceptorsConsumer.intercept(interceptors, [req, res, next], instance, callback, handler(args, req, res, next), contextType); await fnHandleResponse(result, res, req); }; } getMetadata(instance, callback, methodName, moduleKey, requestMethod, contextType) { const cacheMetadata = this.handlerMetadataStorage.get(instance, methodName); if (cacheMetadata) { return cacheMetadata; } const metadata = this.contextUtils.reflectCallbackMetadata(instance, methodName, constants_1.ROUTE_ARGS_METADATA) || {}; const keys = Object.keys(metadata); const argsLength = this.contextUtils.getArgumentsLength(keys, metadata); const paramtypes = this.contextUtils.reflectCallbackParamtypes(instance, methodName); const contextFactory = this.contextUtils.getContextFactory(contextType, instance, callback); const getParamsMetadata = /* @__PURE__ */ __name((moduleKey2, contextId = constants_2.STATIC_CONTEXT, inquirerId) => this.exchangeKeysForValues(keys, metadata, moduleKey2, contextId, inquirerId, contextFactory), "getParamsMetadata"); const paramsMetadata = getParamsMetadata(moduleKey); const isResponseHandled = this.isResponseHandled(instance, methodName, paramsMetadata); const httpRedirectResponse = this.reflectRedirect(callback); const fnHandleResponse = this.createHandleResponseFn(callback, isResponseHandled, httpRedirectResponse); const httpCode = this.reflectHttpStatusCode(callback); const httpStatusCode = httpCode ? httpCode : this.responseController.getStatusByMethod(requestMethod); const responseHeaders = this.reflectResponseHeaders(callback); const hasCustomHeaders = !(0, shared_utils_1.isEmpty)(responseHeaders); const handlerMetadata = { argsLength, fnHandleResponse, paramtypes, getParamsMetadata, httpStatusCode, hasCustomHeaders, responseHeaders }; this.handlerMetadataStorage.set(instance, methodName, handlerMetadata); return handlerMetadata; } reflectRedirect(callback) { return Reflect.getMetadata(constants_1.REDIRECT_METADATA, callback); } reflectHttpStatusCode(callback) { return Reflect.getMetadata(constants_1.HTTP_CODE_METADATA, callback); } reflectRenderTemplate(callback) { return Reflect.getMetadata(constants_1.RENDER_METADATA, callback); } reflectResponseHeaders(callback) { return Reflect.getMetadata(constants_1.HEADERS_METADATA, callback) || []; } reflectSse(callback) { return Reflect.getMetadata(constants_1.SSE_METADATA, callback); } exchangeKeysForValues(keys, metadata, moduleContext, contextId = constants_2.STATIC_CONTEXT, inquirerId, contextFactory) { this.pipesContextCreator.setModuleContext(moduleContext); return keys.map((key) => { const { index, data, pipes: pipesCollection } = metadata[key]; const pipes = this.pipesContextCreator.createConcreteContext(pipesCollection, contextId, inquirerId); const type = this.contextUtils.mapParamType(key); if (key.includes(constants_1.CUSTOM_ROUTE_ARGS_METADATA)) { const { factory } = metadata[key]; const customExtractValue = this.contextUtils.getCustomFactory(factory, data, contextFactory); return { index, extractValue: customExtractValue, type, data, pipes }; } const numericType = Number(type); const extractValue = /* @__PURE__ */ __name((req, res, next) => this.paramsFactory.exchangeKeyForValue(numericType, data, { req, res, next }), "extractValue"); return { index, extractValue, type: numericType, data, pipes }; }); } async getParamValue(value, { metatype, type, data }, pipes) { if (!(0, shared_utils_1.isEmpty)(pipes)) { return this.pipesConsumer.apply(value, { metatype, type, data }, pipes); } return value; } isPipeable(type) { return type === route_paramtypes_enum_1.RouteParamtypes.BODY || type === route_paramtypes_enum_1.RouteParamtypes.RAW_BODY || type === route_paramtypes_enum_1.RouteParamtypes.QUERY || type === route_paramtypes_enum_1.RouteParamtypes.PARAM || type === route_paramtypes_enum_1.RouteParamtypes.FILE || type === route_paramtypes_enum_1.RouteParamtypes.FILES || (0, shared_utils_1.isString)(type); } createGuardsFn(guards, instance, callback, contextType) { const canActivateFn = /* @__PURE__ */ __name(async (args) => { const canActivate = await this.guardsConsumer.tryActivate(guards, args, instance, callback, contextType); if (!canActivate) { throw new common_12.ForbiddenException(guards_1.FORBIDDEN_MESSAGE); } }, "canActivateFn"); return guards.length ? canActivateFn : null; } createPipesFn(pipes, paramsOptions) { const pipesFn = /* @__PURE__ */ __name(async (args, req, res, next) => { const resolveParamValue = /* @__PURE__ */ __name(async (param) => { const { index, extractValue, type, data, metatype, pipes: paramPipes } = param; const value = extractValue(req, res, next); args[index] = this.isPipeable(type) ? await this.getParamValue(value, { metatype, type, data }, pipes.concat(paramPipes)) : value; }, "resolveParamValue"); await Promise.all(paramsOptions.map(resolveParamValue)); }, "pipesFn"); return paramsOptions.length ? pipesFn : null; } createHandleResponseFn(callback, isResponseHandled, redirectResponse, httpStatusCode) { const renderTemplate = this.reflectRenderTemplate(callback); if (renderTemplate) { return async (result, res) => { return await this.responseController.render(result, res, renderTemplate); }; } if (redirectResponse && (0, shared_utils_1.isString)(redirectResponse.url)) { return async (result, res) => { await this.responseController.redirect(result, res, redirectResponse); }; } const isSseHandler = !!this.reflectSse(callback); if (isSseHandler) { return (result, res, req) => { this.responseController.sse(result, res.raw || res, req.raw || req, { additionalHeaders: res.getHeaders?.() }); }; } return async (result, res) => { result = await this.responseController.transformToResult(result); !isResponseHandled && await this.responseController.apply(result, res, httpStatusCode); return res; }; } isResponseHandled(instance, methodName, paramsMetadata) { const hasResponseOrNextDecorator = paramsMetadata.some(({ type }) => type === route_paramtypes_enum_1.RouteParamtypes.RESPONSE || type === route_paramtypes_enum_1.RouteParamtypes.NEXT); const isPassthroughEnabled = this.contextUtils.reflectPassthrough(instance, methodName); return hasResponseOrNextDecorator && !isPassthroughEnabled; } }; exports2.RouterExecutionContext = RouterExecutionContext; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-explorer.js var require_router_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/router-explorer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RouterExplorer = void 0; var constants_1 = require_constants(); var enums_1 = require_enums(); var exceptions_1 = require_exceptions(); var logger_service_1 = require_logger_service(); var shared_utils_1 = require_shared_utils(); var pathToRegexp = require_path_to_regexp(); var unknown_request_mapping_exception_1 = require_unknown_request_mapping_exception(); var guards_1 = require_guards(); var context_id_factory_1 = require_context_id_factory(); var execution_context_host_1 = require_execution_context_host(); var messages_1 = require_messages2(); var router_method_factory_1 = require_router_method_factory(); var constants_2 = require_constants5(); var interceptors_1 = require_interceptors(); var pipes_1 = require_pipes2(); var paths_explorer_1 = require_paths_explorer(); var request_constants_1 = require_request_constants(); var route_params_factory_1 = require_route_params_factory(); var router_execution_context_1 = require_router_execution_context(); var RouterExplorer = class _RouterExplorer { static { __name(this, "RouterExplorer"); } constructor(metadataScanner, container, injector, routerProxy, exceptionsFilter, config, routePathFactory, graphInspector) { this.container = container; this.injector = injector; this.routerProxy = routerProxy; this.exceptionsFilter = exceptionsFilter; this.routePathFactory = routePathFactory; this.graphInspector = graphInspector; this.routerMethodFactory = new router_method_factory_1.RouterMethodFactory(); this.logger = new logger_service_1.Logger(_RouterExplorer.name, { timestamp: true }); this.exceptionFiltersCache = /* @__PURE__ */ new WeakMap(); this.pathsExplorer = new paths_explorer_1.PathsExplorer(metadataScanner); const routeParamsFactory = new route_params_factory_1.RouteParamsFactory(); const pipesContextCreator = new pipes_1.PipesContextCreator(container, config); const pipesConsumer = new pipes_1.PipesConsumer(); const guardsContextCreator = new guards_1.GuardsContextCreator(container, config); const guardsConsumer = new guards_1.GuardsConsumer(); const interceptorsContextCreator = new interceptors_1.InterceptorsContextCreator(container, config); const interceptorsConsumer = new interceptors_1.InterceptorsConsumer(); this.executionContextCreator = new router_execution_context_1.RouterExecutionContext(routeParamsFactory, pipesContextCreator, pipesConsumer, guardsContextCreator, guardsConsumer, interceptorsContextCreator, interceptorsConsumer, container.getHttpAdapterRef()); } explore(instanceWrapper, moduleKey, applicationRef, host, routePathMetadata) { const { instance } = instanceWrapper; const routerPaths = this.pathsExplorer.scanForPaths(instance); this.applyPathsToRouterProxy(applicationRef, routerPaths, instanceWrapper, moduleKey, routePathMetadata, host); } extractRouterPath(metatype) { const path = Reflect.getMetadata(constants_1.PATH_METADATA, metatype); if ((0, shared_utils_1.isUndefined)(path)) { throw new unknown_request_mapping_exception_1.UnknownRequestMappingException(metatype); } if (Array.isArray(path)) { return path.map((p) => (0, shared_utils_1.addLeadingSlash)(p)); } return [(0, shared_utils_1.addLeadingSlash)(path)]; } applyPathsToRouterProxy(router, routeDefinitions, instanceWrapper, moduleKey, routePathMetadata, host) { (routeDefinitions || []).forEach((routeDefinition) => { const { version: methodVersion } = routeDefinition; routePathMetadata.methodVersion = methodVersion; this.applyCallbackToRouter(router, routeDefinition, instanceWrapper, moduleKey, routePathMetadata, host); }); } applyCallbackToRouter(router, routeDefinition, instanceWrapper, moduleKey, routePathMetadata, host) { const { path: paths, requestMethod, targetCallback, methodName } = routeDefinition; const { instance } = instanceWrapper; const routerMethodRef = this.routerMethodFactory.get(router, requestMethod).bind(router); const isRequestScoped = !instanceWrapper.isDependencyTreeStatic(); const proxy = isRequestScoped ? this.createRequestScopedHandler(instanceWrapper, requestMethod, this.container.getModuleByKey(moduleKey), moduleKey, methodName) : this.createCallbackProxy(instance, targetCallback, methodName, moduleKey, requestMethod); const isVersioned = (routePathMetadata.methodVersion || routePathMetadata.controllerVersion) && routePathMetadata.versioningOptions; let routeHandler = this.applyHostFilter(host, proxy); paths.forEach((path) => { if (isVersioned && routePathMetadata.versioningOptions.type !== enums_1.VersioningType.URI) { routeHandler = this.applyVersionFilter(router, routePathMetadata, routeHandler); } routePathMetadata.methodPath = path; const pathsToRegister = this.routePathFactory.create(routePathMetadata, requestMethod); pathsToRegister.forEach((path2) => { const entrypointDefinition = { type: "http-endpoint", methodName, className: instanceWrapper.name, classNodeId: instanceWrapper.id, metadata: { key: path2, path: path2, requestMethod: enums_1.RequestMethod[requestMethod], methodVersion: routePathMetadata.methodVersion, controllerVersion: routePathMetadata.controllerVersion } }; this.copyMetadataToCallback(targetCallback, routeHandler); routerMethodRef(path2, routeHandler); this.graphInspector.insertEntrypointDefinition(entrypointDefinition, instanceWrapper.id); }); const pathsToLog = this.routePathFactory.create({ ...routePathMetadata, versioningOptions: void 0 }, requestMethod); pathsToLog.forEach((path2) => { if (isVersioned) { const version2 = this.routePathFactory.getVersion(routePathMetadata); this.logger.log((0, messages_1.VERSIONED_ROUTE_MAPPED_MESSAGE)(path2, requestMethod, version2)); } else { this.logger.log((0, messages_1.ROUTE_MAPPED_MESSAGE)(path2, requestMethod)); } }); }); } applyHostFilter(host, handler) { if (!host) { return handler; } const httpAdapterRef = this.container.getHttpAdapterRef(); const hosts = Array.isArray(host) ? host : [host]; const hostRegExps = hosts.map((host2) => { const keys = []; const regexp = pathToRegexp(host2, keys); return { regexp, keys }; }); const unsupportedFilteringErrorMessage = Array.isArray(host) ? `HTTP adapter does not support filtering on hosts: ["${host.join('", "')}"]` : `HTTP adapter does not support filtering on host: "${host}"`; return (req, res, next) => { req.hosts = {}; const hostname = httpAdapterRef.getRequestHostname(req) || ""; for (const exp of hostRegExps) { const match = hostname.match(exp.regexp); if (match) { if (exp.keys.length > 0) { exp.keys.forEach((key, i) => req.hosts[key.name] = match[i + 1]); } else if (exp.regexp && match.groups) { for (const groupName in match.groups) { req.hosts[groupName] = match.groups[groupName]; } } return handler(req, res, next); } } if (!next) { throw new exceptions_1.InternalServerErrorException(unsupportedFilteringErrorMessage); } return next(); }; } applyVersionFilter(router, routePathMetadata, handler) { const version2 = this.routePathFactory.getVersion(routePathMetadata); return router.applyVersionFilter(handler, version2, routePathMetadata.versioningOptions); } createCallbackProxy(instance, callback, methodName, moduleRef, requestMethod, contextId = constants_2.STATIC_CONTEXT, inquirerId) { const executionContext = this.executionContextCreator.create(instance, callback, methodName, moduleRef, requestMethod, contextId, inquirerId); const exceptionFilter = this.exceptionsFilter.create(instance, callback, moduleRef, contextId, inquirerId); return this.routerProxy.createProxy(executionContext, exceptionFilter); } createRequestScopedHandler(instanceWrapper, requestMethod, moduleRef, moduleKey, methodName) { const { instance } = instanceWrapper; const collection = moduleRef.controllers; const isTreeDurable = instanceWrapper.isDependencyTreeDurable(); return async (req, res, next) => { try { const contextId = this.getContextId(req, isTreeDurable); const contextInstance = await this.injector.loadPerContext(instance, moduleRef, collection, contextId); await this.createCallbackProxy(contextInstance, contextInstance[methodName], methodName, moduleKey, requestMethod, contextId, instanceWrapper.id)(req, res, next); } catch (err) { let exceptionFilter = this.exceptionFiltersCache.get(instance[methodName]); if (!exceptionFilter) { exceptionFilter = this.exceptionsFilter.create(instance, instance[methodName], moduleKey); this.exceptionFiltersCache.set(instance[methodName], exceptionFilter); } const host = new execution_context_host_1.ExecutionContextHost([req, res, next]); exceptionFilter.next(err, host); } }; } getContextId(request, isTreeDurable) { const contextId = context_id_factory_1.ContextIdFactory.getByRequest(request); if (!request[request_constants_1.REQUEST_CONTEXT_ID]) { Object.defineProperty(request, request_constants_1.REQUEST_CONTEXT_ID, { value: contextId, enumerable: false, writable: false, configurable: false }); const requestProviderValue = isTreeDurable ? contextId.payload : Object.assign(request, contextId.payload); this.container.registerRequestProvider(requestProviderValue, contextId); } return contextId; } copyMetadataToCallback(originalCallback, targetCallback) { for (const key of Reflect.getMetadataKeys(originalCallback)) { Reflect.defineMetadata(key, Reflect.getMetadata(key, originalCallback), targetCallback); } } }; exports2.RouterExplorer = RouterExplorer; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/routes-resolver.js var require_routes_resolver = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/routes-resolver.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RoutesResolver = void 0; var common_12 = require_common(); var constants_1 = require_constants(); var logger_service_1 = require_logger_service(); var messages_1 = require_messages2(); var metadata_scanner_1 = require_metadata_scanner(); var route_path_factory_1 = require_route_path_factory(); var router_exception_filters_1 = require_router_exception_filters(); var router_explorer_1 = require_router_explorer(); var router_proxy_1 = require_router_proxy(); var RoutesResolver = class _RoutesResolver { static { __name(this, "RoutesResolver"); } constructor(container, applicationConfig, injector, graphInspector) { this.container = container; this.applicationConfig = applicationConfig; this.injector = injector; this.logger = new logger_service_1.Logger(_RoutesResolver.name, { timestamp: true }); this.routerProxy = new router_proxy_1.RouterProxy(); const httpAdapterRef = container.getHttpAdapterRef(); this.routerExceptionsFilter = new router_exception_filters_1.RouterExceptionFilters(container, applicationConfig, httpAdapterRef); this.routePathFactory = new route_path_factory_1.RoutePathFactory(this.applicationConfig); const metadataScanner = new metadata_scanner_1.MetadataScanner(); this.routerExplorer = new router_explorer_1.RouterExplorer(metadataScanner, this.container, this.injector, this.routerProxy, this.routerExceptionsFilter, this.applicationConfig, this.routePathFactory, graphInspector); } resolve(applicationRef, globalPrefix) { const modules = this.container.getModules(); modules.forEach(({ controllers, metatype }, moduleName) => { const modulePath = this.getModulePathMetadata(metatype); this.registerRouters(controllers, moduleName, globalPrefix, modulePath, applicationRef); }); } registerRouters(routes, moduleName, globalPrefix, modulePath, applicationRef) { routes.forEach((instanceWrapper) => { const { metatype } = instanceWrapper; const host = this.getHostMetadata(metatype); const routerPaths = this.routerExplorer.extractRouterPath(metatype); const controllerVersion = this.getVersionMetadata(metatype); const controllerName = metatype.name; routerPaths.forEach((path) => { const pathsToLog = this.routePathFactory.create({ ctrlPath: path, modulePath, globalPrefix }); if (!controllerVersion) { pathsToLog.forEach((path2) => { const logMessage = (0, messages_1.CONTROLLER_MAPPING_MESSAGE)(controllerName, path2); this.logger.log(logMessage); }); } else { pathsToLog.forEach((path2) => { const logMessage = (0, messages_1.VERSIONED_CONTROLLER_MAPPING_MESSAGE)(controllerName, path2, controllerVersion); this.logger.log(logMessage); }); } const versioningOptions = this.applicationConfig.getVersioning(); const routePathMetadata = { ctrlPath: path, modulePath, globalPrefix, controllerVersion, versioningOptions }; this.routerExplorer.explore(instanceWrapper, moduleName, applicationRef, host, routePathMetadata); }); }); } registerNotFoundHandler() { const applicationRef = this.container.getHttpAdapterRef(); const callback = /* @__PURE__ */ __name((req, res) => { const method = applicationRef.getRequestMethod(req); const url = applicationRef.getRequestUrl(req); throw new common_12.NotFoundException(`Cannot ${method} ${url}`); }, "callback"); const handler = this.routerExceptionsFilter.create({}, callback, void 0); const proxy = this.routerProxy.createProxy(callback, handler); applicationRef.setNotFoundHandler && applicationRef.setNotFoundHandler(proxy, this.applicationConfig.getGlobalPrefix()); } registerExceptionHandler() { const callback = /* @__PURE__ */ __name((err, req, res, next) => { throw this.mapExternalException(err); }, "callback"); const handler = this.routerExceptionsFilter.create({}, callback, void 0); const proxy = this.routerProxy.createExceptionLayerProxy(callback, handler); const applicationRef = this.container.getHttpAdapterRef(); applicationRef.setErrorHandler && applicationRef.setErrorHandler(proxy, this.applicationConfig.getGlobalPrefix()); } mapExternalException(err) { switch (true) { // SyntaxError is thrown by Express body-parser when given invalid JSON (#422, #430) // URIError is thrown by Express when given a path parameter with an invalid percentage // encoding, e.g. '%FF' (#8915) case (err instanceof SyntaxError || err instanceof URIError): return new common_12.BadRequestException(err.message); default: return err; } } getModulePathMetadata(metatype) { const modulesContainer = this.container.getModules(); const modulePath = Reflect.getMetadata(constants_1.MODULE_PATH + modulesContainer.applicationId, metatype); return modulePath ?? Reflect.getMetadata(constants_1.MODULE_PATH, metatype); } getHostMetadata(metatype) { return Reflect.getMetadata(constants_1.HOST_METADATA, metatype); } getVersionMetadata(metatype) { const versioningConfig = this.applicationConfig.getVersioning(); if (versioningConfig) { return Reflect.getMetadata(constants_1.VERSION_METADATA, metatype) ?? versioningConfig.defaultVersion; } } }; exports2.RoutesResolver = RoutesResolver; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/nest-application.js var require_nest_application = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/nest-application.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NestApplication = void 0; var common_12 = require_common(); var logger_service_1 = require_logger_service(); var load_package_util_1 = require_load_package_util(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var os_1 = require("os"); var application_config_1 = require_application_config(); var constants_1 = require_constants4(); var optional_require_1 = require_optional_require(); var injector_1 = require_injector(); var container_1 = require_container3(); var middleware_module_1 = require_middleware_module(); var utils_1 = require_utils9(); var nest_application_context_1 = require_nest_application_context(); var routes_resolver_1 = require_routes_resolver(); var { SocketModule } = (0, optional_require_1.optionalRequire)("@nestjs/websockets/socket-module", () => require("@nestjs/websockets/socket-module")); var { MicroservicesModule } = (0, optional_require_1.optionalRequire)("@nestjs/microservices/microservices-module", () => require("@nestjs/microservices/microservices-module")); var NestApplication = class _NestApplication extends nest_application_context_1.NestApplicationContext { static { __name(this, "NestApplication"); } constructor(container, httpAdapter, config, graphInspector, appOptions = {}) { super(container, appOptions); this.httpAdapter = httpAdapter; this.config = config; this.graphInspector = graphInspector; this.logger = new logger_service_1.Logger(_NestApplication.name, { timestamp: true }); this.middlewareContainer = new container_1.MiddlewareContainer(this.container); this.microservicesModule = MicroservicesModule && new MicroservicesModule(); this.socketModule = SocketModule && new SocketModule(); this.microservices = []; this.isListening = false; this.selectContextModule(); this.registerHttpServer(); this.injector = new injector_1.Injector({ preview: this.appOptions.preview }); this.middlewareModule = new middleware_module_1.MiddlewareModule(); this.routesResolver = new routes_resolver_1.RoutesResolver(this.container, this.config, this.injector, this.graphInspector); } async dispose() { this.socketModule && await this.socketModule.close(); this.microservicesModule && await this.microservicesModule.close(); this.httpAdapter && await this.httpAdapter.close(); await Promise.all((0, iterare_1.iterate)(this.microservices).map(async (microservice) => { microservice.setIsTerminated(true); await microservice.close(); })); } getHttpAdapter() { return this.httpAdapter; } registerHttpServer() { this.httpServer = this.createServer(); } getUnderlyingHttpServer() { return this.httpAdapter.getHttpServer(); } applyOptions() { if (!this.appOptions || !this.appOptions.cors) { return void 0; } const passCustomOptions = (0, shared_utils_1.isObject)(this.appOptions.cors) || (0, shared_utils_1.isFunction)(this.appOptions.cors); if (!passCustomOptions) { return this.enableCors(); } return this.enableCors(this.appOptions.cors); } createServer() { this.httpAdapter.initHttpServer(this.appOptions); return this.httpAdapter.getHttpServer(); } async registerModules() { this.registerWsModule(); if (this.microservicesModule) { this.microservicesModule.register(this.container, this.graphInspector, this.config, this.appOptions); this.microservicesModule.setupClients(this.container); } await this.middlewareModule.register(this.middlewareContainer, this.container, this.config, this.injector, this.httpAdapter, this.graphInspector, this.appOptions); } registerWsModule() { if (!this.socketModule) { return; } this.socketModule.register(this.container, this.config, this.graphInspector, this.appOptions, this.httpServer); } async init() { if (this.isInitialized) { return this; } this.applyOptions(); await this.httpAdapter?.init(); const useBodyParser = this.appOptions && this.appOptions.bodyParser !== false; useBodyParser && this.registerParserMiddleware(); await this.registerModules(); await this.registerRouter(); await this.callInitHook(); await this.registerRouterHooks(); await this.callBootstrapHook(); this.isInitialized = true; this.logger.log(constants_1.MESSAGES.APPLICATION_READY); return this; } registerParserMiddleware() { const prefix = this.config.getGlobalPrefix(); const rawBody = !!this.appOptions?.rawBody; this.httpAdapter.registerParserMiddleware(prefix, rawBody); } async registerRouter() { await this.registerMiddleware(this.httpAdapter); const prefix = this.config.getGlobalPrefix(); const basePath = (0, shared_utils_1.addLeadingSlash)(prefix); this.routesResolver.resolve(this.httpAdapter, basePath); } async registerRouterHooks() { this.routesResolver.registerNotFoundHandler(); this.routesResolver.registerExceptionHandler(); } connectMicroservice(microserviceOptions, hybridAppOptions = {}) { const { NestMicroservice } = (0, load_package_util_1.loadPackage)("@nestjs/microservices", "NestFactory", () => require("@nestjs/microservices")); const { inheritAppConfig } = hybridAppOptions; const applicationConfig = inheritAppConfig ? this.config : new application_config_1.ApplicationConfig(); const instance = new NestMicroservice(this.container, microserviceOptions, this.graphInspector, applicationConfig); instance.registerListeners(); instance.setIsInitialized(true); instance.setIsInitHookCalled(true); this.microservices.push(instance); return instance; } getMicroservices() { return this.microservices; } getHttpServer() { return this.httpServer; } async startAllMicroservices() { this.assertNotInPreviewMode("startAllMicroservices"); await Promise.all(this.microservices.map((msvc) => msvc.listen())); return this; } use(...args) { this.httpAdapter.use(...args); return this; } useBodyParser(...args) { if (!("useBodyParser" in this.httpAdapter)) { this.logger.warn("Your HTTP Adapter does not support `.useBodyParser`."); return this; } const [parserType, ...otherArgs] = args; const rawBody = !!this.appOptions.rawBody; this.httpAdapter.useBodyParser(...[parserType, rawBody, ...otherArgs]); return this; } enableCors(options) { this.httpAdapter.enableCors(options); } enableVersioning(options = { type: common_12.VersioningType.URI }) { this.config.enableVersioning(options); return this; } async listen(port, ...args) { this.assertNotInPreviewMode("listen"); if (!this.isInitialized) { await this.init(); } const httpAdapterHost = this.container.getHttpAdapterHostRef(); return new Promise((resolve, reject) => { const errorHandler = /* @__PURE__ */ __name((e) => { this.logger.error(e?.toString?.()); reject(e); }, "errorHandler"); this.httpServer.once("error", errorHandler); const isCallbackInOriginalArgs = (0, shared_utils_1.isFunction)(args[args.length - 1]); const listenFnArgs = isCallbackInOriginalArgs ? args.slice(0, args.length - 1) : args; this.httpAdapter.listen(port, ...listenFnArgs, (...originalCallbackArgs) => { if (this.appOptions?.autoFlushLogs ?? true) { this.flushLogs(); } if (originalCallbackArgs[0] instanceof Error) { return reject(originalCallbackArgs[0]); } const address = this.httpServer.address(); if (address) { this.httpServer.removeListener("error", errorHandler); this.isListening = true; httpAdapterHost.listening = true; resolve(this.httpServer); } if (isCallbackInOriginalArgs) { args[args.length - 1](...originalCallbackArgs); } }); }); } async getUrl() { return new Promise((resolve, reject) => { if (!this.isListening) { this.logger.error(constants_1.MESSAGES.CALL_LISTEN_FIRST); reject(constants_1.MESSAGES.CALL_LISTEN_FIRST); return; } const address = this.httpServer.address(); resolve(this.formatAddress(address)); }); } formatAddress(address) { if ((0, shared_utils_1.isString)(address)) { if ((0, os_1.platform)() === "win32") { return address; } const basePath = encodeURIComponent(address); return `${this.getProtocol()}+unix://${basePath}`; } let host = this.host(); if (address && address.family === "IPv6") { if (host === "::") { host = "[::1]"; } else { host = `[${host}]`; } } else if (host === "0.0.0.0") { host = "127.0.0.1"; } return `${this.getProtocol()}://${host}:${address.port}`; } setGlobalPrefix(prefix, options) { this.config.setGlobalPrefix(prefix); if (options) { const exclude = options?.exclude ? (0, utils_1.mapToExcludeRoute)(options.exclude) : []; this.config.setGlobalPrefixOptions({ ...options, exclude }); } return this; } useWebSocketAdapter(adapter) { this.config.setIoAdapter(adapter); return this; } useGlobalFilters(...filters) { this.config.useGlobalFilters(...filters); filters.forEach((item) => this.graphInspector.insertOrphanedEnhancer({ subtype: "filter", ref: item })); return this; } useGlobalPipes(...pipes) { this.config.useGlobalPipes(...pipes); pipes.forEach((item) => this.graphInspector.insertOrphanedEnhancer({ subtype: "pipe", ref: item })); return this; } useGlobalInterceptors(...interceptors) { this.config.useGlobalInterceptors(...interceptors); interceptors.forEach((item) => this.graphInspector.insertOrphanedEnhancer({ subtype: "interceptor", ref: item })); return this; } useGlobalGuards(...guards) { this.config.useGlobalGuards(...guards); guards.forEach((item) => this.graphInspector.insertOrphanedEnhancer({ subtype: "guard", ref: item })); return this; } useStaticAssets(pathOrOptions, options) { this.httpAdapter.useStaticAssets && this.httpAdapter.useStaticAssets(pathOrOptions, options); return this; } setBaseViewsDir(path) { this.httpAdapter.setBaseViewsDir && this.httpAdapter.setBaseViewsDir(path); return this; } setViewEngine(engineOrOptions) { this.httpAdapter.setViewEngine && this.httpAdapter.setViewEngine(engineOrOptions); return this; } host() { const address = this.httpServer.address(); if ((0, shared_utils_1.isString)(address)) { return void 0; } return address && address.address; } getProtocol() { return this.appOptions && this.appOptions.httpsOptions ? "https" : "http"; } async registerMiddleware(instance) { await this.middlewareModule.registerMiddleware(this.middlewareContainer, instance); } }; exports2.NestApplication = NestApplication; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exception-handler.js var require_exception_handler = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exception-handler.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExceptionHandler = void 0; var runtime_exception_1 = require_runtime_exception(); var logger_service_1 = require_logger_service(); var ExceptionHandler = class _ExceptionHandler { static { __name(this, "ExceptionHandler"); } handle(exception) { if (!(exception instanceof runtime_exception_1.RuntimeException)) { _ExceptionHandler.logger.error(exception.message, exception.stack); return; } _ExceptionHandler.logger.error(exception.what(), exception.stack); } }; exports2.ExceptionHandler = ExceptionHandler; ExceptionHandler.logger = new logger_service_1.Logger(ExceptionHandler.name); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions-zone.js var require_exceptions_zone = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions-zone.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExceptionsZone = void 0; var common_12 = require_common(); var exception_handler_1 = require_exception_handler(); var DEFAULT_TEARDOWN = /* @__PURE__ */ __name(() => process.exit(1), "DEFAULT_TEARDOWN"); var ExceptionsZone = class { static { __name(this, "ExceptionsZone"); } static run(callback, teardown = DEFAULT_TEARDOWN, autoFlushLogs) { try { callback(); } catch (e) { this.exceptionHandler.handle(e); if (autoFlushLogs) { common_12.Logger.flush(); } teardown(e); } } static async asyncRun(callback, teardown = DEFAULT_TEARDOWN, autoFlushLogs) { try { await callback(); } catch (e) { this.exceptionHandler.handle(e); if (autoFlushLogs) { common_12.Logger.flush(); } teardown(e); } } }; exports2.ExceptionsZone = ExceptionsZone; ExceptionsZone.exceptionHandler = new exception_handler_1.ExceptionHandler(); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/load-adapter.js var require_load_adapter = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/load-adapter.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.loadAdapter = loadAdapter; var common_12 = require_common(); var MISSING_REQUIRED_DEPENDENCY = /* @__PURE__ */ __name((defaultPlatform, transport) => `No driver (${transport}) has been selected. In order to take advantage of the default driver, please, ensure to install the "${defaultPlatform}" package ($ npm install ${defaultPlatform}).`, "MISSING_REQUIRED_DEPENDENCY"); var logger = new common_12.Logger("PackageLoader"); function loadAdapter(defaultPlatform, transport, loaderFn) { try { return loaderFn ? loaderFn() : require(defaultPlatform); } catch (e) { logger.error(MISSING_REQUIRED_DEPENDENCY(defaultPlatform, transport)); process.exit(1); } } __name(loadAdapter, "loadAdapter"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/rethrow.js var require_rethrow = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/helpers/rethrow.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.rethrow = void 0; var rethrow = /* @__PURE__ */ __name((err) => { throw err; }, "rethrow"); exports2.rethrow = rethrow; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/instance-loader.js var require_instance_loader = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/instance-loader.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InstanceLoader = void 0; var common_12 = require_common(); var messages_1 = require_messages2(); var internal_core_module_1 = require_internal_core_module(); var InstanceLoader = class _InstanceLoader { static { __name(this, "InstanceLoader"); } constructor(container, injector, graphInspector, logger = new common_12.Logger(_InstanceLoader.name, { timestamp: true })) { this.container = container; this.injector = injector; this.graphInspector = graphInspector; this.logger = logger; } setLogger(logger) { this.logger = logger; } async createInstancesOfDependencies(modules = this.container.getModules()) { this.createPrototypes(modules); try { await this.createInstances(modules); } catch (err) { this.graphInspector.inspectModules(modules); this.graphInspector.registerPartial(err); throw err; } this.graphInspector.inspectModules(modules); } createPrototypes(modules) { modules.forEach((moduleRef) => { this.createPrototypesOfProviders(moduleRef); this.createPrototypesOfInjectables(moduleRef); this.createPrototypesOfControllers(moduleRef); }); } async createInstances(modules) { await Promise.all([...modules.values()].map(async (moduleRef) => { await this.createInstancesOfProviders(moduleRef); await this.createInstancesOfInjectables(moduleRef); await this.createInstancesOfControllers(moduleRef); const { name } = moduleRef; this.isModuleWhitelisted(name) && this.logger.log((0, messages_1.MODULE_INIT_MESSAGE)`${name}`); })); } createPrototypesOfProviders(moduleRef) { const { providers } = moduleRef; providers.forEach((wrapper) => this.injector.loadPrototype(wrapper, providers)); } async createInstancesOfProviders(moduleRef) { const { providers } = moduleRef; const wrappers = [...providers.values()]; await Promise.all(wrappers.map(async (item) => { await this.injector.loadProvider(item, moduleRef); this.graphInspector.inspectInstanceWrapper(item, moduleRef); })); } createPrototypesOfControllers(moduleRef) { const { controllers } = moduleRef; controllers.forEach((wrapper) => this.injector.loadPrototype(wrapper, controllers)); } async createInstancesOfControllers(moduleRef) { const { controllers } = moduleRef; const wrappers = [...controllers.values()]; await Promise.all(wrappers.map(async (item) => { await this.injector.loadController(item, moduleRef); this.graphInspector.inspectInstanceWrapper(item, moduleRef); })); } createPrototypesOfInjectables(moduleRef) { const { injectables } = moduleRef; injectables.forEach((wrapper) => this.injector.loadPrototype(wrapper, injectables)); } async createInstancesOfInjectables(moduleRef) { const { injectables } = moduleRef; const wrappers = [...injectables.values()]; await Promise.all(wrappers.map(async (item) => { await this.injector.loadInjectable(item, moduleRef); this.graphInspector.inspectInstanceWrapper(item, moduleRef); })); } isModuleWhitelisted(name) { return name !== internal_core_module_1.InternalCoreModule.name; } }; exports2.InstanceLoader = InstanceLoader; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/noop-graph-inspector.js var require_noop_graph_inspector = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/inspector/noop-graph-inspector.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NoopGraphInspector = void 0; var graph_inspector_1 = require_graph_inspector(); var noop = /* @__PURE__ */ __name(() => { }, "noop"); exports2.NoopGraphInspector = new Proxy(graph_inspector_1.GraphInspector.prototype, { get: /* @__PURE__ */ __name(() => noop, "get") }); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-class-module.exception.js var require_invalid_class_module_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-class-module.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InvalidClassModuleException = void 0; var messages_1 = require_messages(); var runtime_exception_1 = require_runtime_exception(); var InvalidClassModuleException = class extends runtime_exception_1.RuntimeException { static { __name(this, "InvalidClassModuleException"); } constructor(metatypeUsedAsAModule, scope) { super((0, messages_1.USING_INVALID_CLASS_AS_A_MODULE_MESSAGE)(metatypeUsedAsAModule, scope)); } }; exports2.InvalidClassModuleException = InvalidClassModuleException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-module.exception.js var require_invalid_module_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/invalid-module.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InvalidModuleException = void 0; var messages_1 = require_messages(); var runtime_exception_1 = require_runtime_exception(); var InvalidModuleException = class extends runtime_exception_1.RuntimeException { static { __name(this, "InvalidModuleException"); } constructor(parentModule, index, scope) { super((0, messages_1.INVALID_MODULE_MESSAGE)(parentModule, index, scope)); } }; exports2.InvalidModuleException = InvalidModuleException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/undefined-module.exception.js var require_undefined_module_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/errors/exceptions/undefined-module.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UndefinedModuleException = void 0; var runtime_exception_1 = require_runtime_exception(); var messages_1 = require_messages(); var UndefinedModuleException = class extends runtime_exception_1.RuntimeException { static { __name(this, "UndefinedModuleException"); } constructor(parentModule, index, scope) { super((0, messages_1.UNDEFINED_MODULE_MESSAGE)(parentModule, index, scope)); } }; exports2.UndefinedModuleException = UndefinedModuleException; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/internal-core-module/internal-core-module-factory.js var require_internal_core_module_factory = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/injector/internal-core-module/internal-core-module-factory.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InternalCoreModuleFactory = void 0; var common_12 = require_common(); var external_context_creator_1 = require_external_context_creator(); var http_adapter_host_1 = require_http_adapter_host(); var initialize_on_preview_allowlist_1 = require_initialize_on_preview_allowlist(); var serialized_graph_1 = require_serialized_graph(); var injector_1 = require_injector(); var instance_loader_1 = require_instance_loader(); var lazy_module_loader_1 = require_lazy_module_loader(); var modules_container_1 = require_modules_container(); var internal_core_module_1 = require_internal_core_module(); var InternalCoreModuleFactory = class { static { __name(this, "InternalCoreModuleFactory"); } static create(container, scanner, moduleCompiler, httpAdapterHost, graphInspector, moduleOverrides) { const lazyModuleLoaderFactory = /* @__PURE__ */ __name(() => { const logger = new common_12.Logger(lazy_module_loader_1.LazyModuleLoader.name, { timestamp: false }); const injector = new injector_1.Injector(); const instanceLoader = new instance_loader_1.InstanceLoader(container, injector, graphInspector, logger); return new lazy_module_loader_1.LazyModuleLoader(scanner, instanceLoader, moduleCompiler, container.getModules(), moduleOverrides); }, "lazyModuleLoaderFactory"); initialize_on_preview_allowlist_1.InitializeOnPreviewAllowlist.add(internal_core_module_1.InternalCoreModule); return internal_core_module_1.InternalCoreModule.register([ { provide: external_context_creator_1.ExternalContextCreator, useFactory: /* @__PURE__ */ __name(() => external_context_creator_1.ExternalContextCreator.fromContainer(container), "useFactory") }, { provide: modules_container_1.ModulesContainer, useFactory: /* @__PURE__ */ __name(() => container.getModules(), "useFactory") }, { provide: http_adapter_host_1.HttpAdapterHost, useFactory: /* @__PURE__ */ __name(() => httpAdapterHost, "useFactory") }, { provide: lazy_module_loader_1.LazyModuleLoader, useFactory: lazyModuleLoaderFactory }, { provide: serialized_graph_1.SerializedGraph, useFactory: /* @__PURE__ */ __name(() => container.serializedGraph, "useFactory") } ]); } }; exports2.InternalCoreModuleFactory = InternalCoreModuleFactory; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/scanner.js var require_scanner = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/scanner.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DependenciesScanner = void 0; var constants_1 = require_constants(); var interfaces_1 = require_interfaces(); var shared_utils_1 = require_shared_utils(); var iterare_1 = require_lib(); var application_config_1 = require_application_config(); var constants_2 = require_constants4(); var circular_dependency_exception_1 = require_circular_dependency_exception(); var invalid_class_module_exception_1 = require_invalid_class_module_exception(); var invalid_module_exception_1 = require_invalid_module_exception(); var undefined_module_exception_1 = require_undefined_module_exception(); var get_class_scope_1 = require_get_class_scope(); var internal_core_module_factory_1 = require_internal_core_module_factory(); var uuid_factory_1 = require_uuid_factory(); var DependenciesScanner = class { static { __name(this, "DependenciesScanner"); } constructor(container, metadataScanner, graphInspector, applicationConfig = new application_config_1.ApplicationConfig()) { this.container = container; this.metadataScanner = metadataScanner; this.graphInspector = graphInspector; this.applicationConfig = applicationConfig; this.applicationProvidersApplyMap = []; } async scan(module3, options) { await this.registerCoreModule(options?.overrides); await this.scanForModules({ moduleDefinition: module3, overrides: options?.overrides }); await this.scanModulesForDependencies(); this.calculateModulesDistance(); this.addScopedEnhancersMetadata(); this.container.bindGlobalScope(); } async scanForModules({ moduleDefinition, lazy, scope = [], ctxRegistry = [], overrides = [] }) { const { moduleRef: moduleInstance, inserted: moduleInserted } = await this.insertOrOverrideModule(moduleDefinition, overrides, scope) ?? {}; moduleDefinition = this.getOverrideModuleByModule(moduleDefinition, overrides)?.newModule ?? moduleDefinition; moduleDefinition = moduleDefinition instanceof Promise ? await moduleDefinition : moduleDefinition; ctxRegistry.push(moduleDefinition); if (this.isForwardReference(moduleDefinition)) { moduleDefinition = moduleDefinition.forwardRef(); } const modules = !this.isDynamicModule(moduleDefinition) ? this.reflectMetadata(constants_1.MODULE_METADATA.IMPORTS, moduleDefinition) : [ ...this.reflectMetadata(constants_1.MODULE_METADATA.IMPORTS, moduleDefinition.module), ...moduleDefinition.imports || [] ]; let registeredModuleRefs = []; for (const [index, innerModule] of modules.entries()) { if (innerModule === void 0) { throw new undefined_module_exception_1.UndefinedModuleException(moduleDefinition, index, scope); } if (!innerModule) { throw new invalid_module_exception_1.InvalidModuleException(moduleDefinition, index, scope); } if (ctxRegistry.includes(innerModule)) { continue; } const moduleRefs = await this.scanForModules({ moduleDefinition: innerModule, scope: [].concat(scope, moduleDefinition), ctxRegistry, overrides, lazy }); registeredModuleRefs = registeredModuleRefs.concat(moduleRefs); } if (!moduleInstance) { return registeredModuleRefs; } if (lazy && moduleInserted) { this.container.bindGlobalsToImports(moduleInstance); } return [moduleInstance].concat(registeredModuleRefs); } async insertModule(moduleDefinition, scope) { const moduleToAdd = this.isForwardReference(moduleDefinition) ? moduleDefinition.forwardRef() : moduleDefinition; if (this.isInjectable(moduleToAdd) || this.isController(moduleToAdd) || this.isExceptionFilter(moduleToAdd)) { throw new invalid_class_module_exception_1.InvalidClassModuleException(moduleDefinition, scope); } return this.container.addModule(moduleToAdd, scope); } async scanModulesForDependencies(modules = this.container.getModules()) { for (const [token, { metatype }] of modules) { await this.reflectImports(metatype, token, metatype.name); this.reflectProviders(metatype, token); this.reflectControllers(metatype, token); this.reflectExports(metatype, token); } } async reflectImports(module3, token, context) { const modules = [ ...this.reflectMetadata(constants_1.MODULE_METADATA.IMPORTS, module3), ...this.container.getDynamicMetadataByToken(token, constants_1.MODULE_METADATA.IMPORTS) ]; for (const related of modules) { await this.insertImport(related, token, context); } } reflectProviders(module3, token) { const providers = [ ...this.reflectMetadata(constants_1.MODULE_METADATA.PROVIDERS, module3), ...this.container.getDynamicMetadataByToken(token, constants_1.MODULE_METADATA.PROVIDERS) ]; providers.forEach((provider) => { this.insertProvider(provider, token); this.reflectDynamicMetadata(provider, token); }); } reflectControllers(module3, token) { const controllers = [ ...this.reflectMetadata(constants_1.MODULE_METADATA.CONTROLLERS, module3), ...this.container.getDynamicMetadataByToken(token, constants_1.MODULE_METADATA.CONTROLLERS) ]; controllers.forEach((item) => { this.insertController(item, token); this.reflectDynamicMetadata(item, token); }); } reflectDynamicMetadata(cls, token) { if (!cls || !cls.prototype) { return; } this.reflectInjectables(cls, token, constants_1.GUARDS_METADATA); this.reflectInjectables(cls, token, constants_1.INTERCEPTORS_METADATA); this.reflectInjectables(cls, token, constants_1.EXCEPTION_FILTERS_METADATA); this.reflectInjectables(cls, token, constants_1.PIPES_METADATA); this.reflectParamInjectables(cls, token, constants_1.ROUTE_ARGS_METADATA); } reflectExports(module3, token) { const exports3 = [ ...this.reflectMetadata(constants_1.MODULE_METADATA.EXPORTS, module3), ...this.container.getDynamicMetadataByToken(token, constants_1.MODULE_METADATA.EXPORTS) ]; exports3.forEach((exportedProvider) => this.insertExportedProvider(exportedProvider, token)); } reflectInjectables(component, token, metadataKey) { const controllerInjectables = this.reflectMetadata(metadataKey, component); const methodInjectables = this.metadataScanner.getAllMethodNames(component.prototype).reduce((acc, method) => { const methodInjectable = this.reflectKeyMetadata(component, metadataKey, method); if (methodInjectable) { acc.push(methodInjectable); } return acc; }, []); controllerInjectables.forEach((injectable) => this.insertInjectable(injectable, token, component, constants_1.ENHANCER_KEY_TO_SUBTYPE_MAP[metadataKey])); methodInjectables.forEach((methodInjectable) => { methodInjectable.metadata.forEach((injectable) => this.insertInjectable(injectable, token, component, constants_1.ENHANCER_KEY_TO_SUBTYPE_MAP[metadataKey], methodInjectable.methodKey)); }); } reflectParamInjectables(component, token, metadataKey) { const paramsMethods = this.metadataScanner.getAllMethodNames(component.prototype); paramsMethods.forEach((methodKey) => { const metadata = Reflect.getMetadata(metadataKey, component, methodKey); if (!metadata) { return; } const params = Object.values(metadata); params.map((item) => item.pipes).flat(1).forEach((injectable) => this.insertInjectable(injectable, token, component, "pipe", methodKey)); }); } reflectKeyMetadata(component, key, methodKey) { let prototype = component.prototype; do { const descriptor = Reflect.getOwnPropertyDescriptor(prototype, methodKey); if (!descriptor) { continue; } const metadata = Reflect.getMetadata(key, descriptor.value); if (!metadata) { return; } return { methodKey, metadata }; } while ((prototype = Reflect.getPrototypeOf(prototype)) && prototype !== Object.prototype && prototype); return void 0; } calculateModulesDistance() { const modulesGenerator = this.container.getModules().values(); modulesGenerator.next(); const modulesStack = []; const calculateDistance = /* @__PURE__ */ __name((moduleRef, distance = 1) => { if (!moduleRef || modulesStack.includes(moduleRef)) { return; } modulesStack.push(moduleRef); const moduleImports = moduleRef.imports; moduleImports.forEach((importedModuleRef) => { if (importedModuleRef) { if (distance > importedModuleRef.distance) { importedModuleRef.distance = distance; } calculateDistance(importedModuleRef, distance + 1); } }); }, "calculateDistance"); const rootModule = modulesGenerator.next().value; calculateDistance(rootModule); } async insertImport(related, token, context) { if ((0, shared_utils_1.isUndefined)(related)) { throw new circular_dependency_exception_1.CircularDependencyException(context); } if (this.isForwardReference(related)) { return this.container.addImport(related.forwardRef(), token); } await this.container.addImport(related, token); } isCustomProvider(provider) { return provider && !(0, shared_utils_1.isNil)(provider.provide); } insertProvider(provider, token) { const isCustomProvider = this.isCustomProvider(provider); if (!isCustomProvider) { return this.container.addProvider(provider, token); } const applyProvidersMap = this.getApplyProvidersMap(); const providersKeys = Object.keys(applyProvidersMap); const type = provider.provide; if (!providersKeys.includes(type)) { return this.container.addProvider(provider, token); } const uuid = uuid_factory_1.UuidFactory.get(type.toString()); const providerToken = `${type} (UUID: ${uuid})`; let scope = provider.scope; if ((0, shared_utils_1.isNil)(scope) && provider.useClass) { scope = (0, get_class_scope_1.getClassScope)(provider.useClass); } this.applicationProvidersApplyMap.push({ type, moduleKey: token, providerKey: providerToken, scope }); const newProvider = { ...provider, provide: providerToken, scope }; const enhancerSubtype = constants_2.ENHANCER_TOKEN_TO_SUBTYPE_MAP[type]; const factoryOrClassProvider = newProvider; if (this.isRequestOrTransient(factoryOrClassProvider.scope)) { return this.container.addInjectable(newProvider, token, enhancerSubtype); } this.container.addProvider(newProvider, token, enhancerSubtype); } insertInjectable(injectable, token, host, subtype, methodKey) { if ((0, shared_utils_1.isFunction)(injectable)) { const instanceWrapper = this.container.addInjectable(injectable, token, subtype, host); this.graphInspector.insertEnhancerMetadataCache({ moduleToken: token, classRef: host, enhancerInstanceWrapper: instanceWrapper, targetNodeId: instanceWrapper.id, subtype, methodKey }); return instanceWrapper; } else { this.graphInspector.insertEnhancerMetadataCache({ moduleToken: token, classRef: host, enhancerRef: injectable, methodKey, subtype }); } } insertExportedProvider(exportedProvider, token) { const fulfilledProvider = this.isForwardReference(exportedProvider) ? exportedProvider.forwardRef() : exportedProvider; this.container.addExportedProvider(fulfilledProvider, token); } insertController(controller, token) { this.container.addController(controller, token); } insertOrOverrideModule(moduleDefinition, overrides, scope) { const overrideModule = this.getOverrideModuleByModule(moduleDefinition, overrides); if (overrideModule !== void 0) { return this.overrideModule(moduleDefinition, overrideModule.newModule, scope); } return this.insertModule(moduleDefinition, scope); } getOverrideModuleByModule(module3, overrides) { if (this.isForwardReference(module3)) { return overrides.find((moduleToOverride) => { return moduleToOverride.moduleToReplace === module3.forwardRef() || moduleToOverride.moduleToReplace.forwardRef?.() === module3.forwardRef(); }); } return overrides.find((moduleToOverride) => moduleToOverride.moduleToReplace === module3); } async overrideModule(moduleToOverride, newModule, scope) { return this.container.replaceModule(this.isForwardReference(moduleToOverride) ? moduleToOverride.forwardRef() : moduleToOverride, this.isForwardReference(newModule) ? newModule.forwardRef() : newModule, scope); } reflectMetadata(metadataKey, metatype) { return Reflect.getMetadata(metadataKey, metatype) || []; } async registerCoreModule(overrides) { const moduleDefinition = internal_core_module_factory_1.InternalCoreModuleFactory.create(this.container, this, this.container.getModuleCompiler(), this.container.getHttpAdapterHostRef(), this.graphInspector, overrides); const [instance] = await this.scanForModules({ moduleDefinition, overrides }); this.container.registerCoreModuleRef(instance); } /** * Add either request or transient globally scoped enhancers * to all controllers metadata storage */ addScopedEnhancersMetadata() { (0, iterare_1.iterate)(this.applicationProvidersApplyMap).filter((wrapper) => this.isRequestOrTransient(wrapper.scope)).forEach(({ moduleKey, providerKey }) => { const modulesContainer = this.container.getModules(); const { injectables } = modulesContainer.get(moduleKey); const instanceWrapper = injectables.get(providerKey); const iterableIterator = modulesContainer.values(); (0, iterare_1.iterate)(iterableIterator).map((moduleRef) => Array.from(moduleRef.controllers.values()).concat(moduleRef.entryProviders)).flatten().forEach((controllerOrEntryProvider) => controllerOrEntryProvider.addEnhancerMetadata(instanceWrapper)); }); } applyApplicationProviders() { const applyProvidersMap = this.getApplyProvidersMap(); const applyRequestProvidersMap = this.getApplyRequestProvidersMap(); const getInstanceWrapper = /* @__PURE__ */ __name((moduleKey, providerKey, collectionKey) => { const modules = this.container.getModules(); const collection = modules.get(moduleKey)[collectionKey]; return collection.get(providerKey); }, "getInstanceWrapper"); this.applicationProvidersApplyMap.forEach(({ moduleKey, providerKey, type, scope }) => { let instanceWrapper; if (this.isRequestOrTransient(scope)) { instanceWrapper = getInstanceWrapper(moduleKey, providerKey, "injectables"); this.graphInspector.insertAttachedEnhancer(instanceWrapper); return applyRequestProvidersMap[type](instanceWrapper); } instanceWrapper = getInstanceWrapper(moduleKey, providerKey, "providers"); this.graphInspector.insertAttachedEnhancer(instanceWrapper); applyProvidersMap[type](instanceWrapper.instance); }); } getApplyProvidersMap() { return { [constants_2.APP_INTERCEPTOR]: (interceptor) => this.applicationConfig.addGlobalInterceptor(interceptor), [constants_2.APP_PIPE]: (pipe) => this.applicationConfig.addGlobalPipe(pipe), [constants_2.APP_GUARD]: (guard) => this.applicationConfig.addGlobalGuard(guard), [constants_2.APP_FILTER]: (filter) => this.applicationConfig.addGlobalFilter(filter) }; } getApplyRequestProvidersMap() { return { [constants_2.APP_INTERCEPTOR]: (interceptor) => this.applicationConfig.addGlobalRequestInterceptor(interceptor), [constants_2.APP_PIPE]: (pipe) => this.applicationConfig.addGlobalRequestPipe(pipe), [constants_2.APP_GUARD]: (guard) => this.applicationConfig.addGlobalRequestGuard(guard), [constants_2.APP_FILTER]: (filter) => this.applicationConfig.addGlobalRequestFilter(filter) }; } isDynamicModule(module3) { return module3 && !!module3.module; } /** * @param metatype * @returns `true` if `metatype` is annotated with the `@Injectable()` decorator. */ isInjectable(metatype) { return !!Reflect.getMetadata(constants_1.INJECTABLE_WATERMARK, metatype); } /** * @param metatype * @returns `true` if `metatype` is annotated with the `@Controller()` decorator. */ isController(metatype) { return !!Reflect.getMetadata(constants_1.CONTROLLER_WATERMARK, metatype); } /** * @param metatype * @returns `true` if `metatype` is annotated with the `@Catch()` decorator. */ isExceptionFilter(metatype) { return !!Reflect.getMetadata(constants_1.CATCH_WATERMARK, metatype); } isForwardReference(module3) { return module3 && !!module3.forwardRef; } isRequestOrTransient(scope) { return scope === interfaces_1.Scope.REQUEST || scope === interfaces_1.Scope.TRANSIENT; } }; exports2.DependenciesScanner = DependenciesScanner; } }); // ../../node_modules/.pnpm/depd@2.0.0/node_modules/depd/index.js var require_depd = __commonJS({ "../../node_modules/.pnpm/depd@2.0.0/node_modules/depd/index.js"(exports2, module2) { var relative = require("path").relative; module2.exports = depd; var basePath = process.cwd(); function containsNamespace(str, namespace) { var vals = str.split(/[ ,]+/); var ns = String(namespace).toLowerCase(); for (var i = 0; i < vals.length; i++) { var val = vals[i]; if (val && (val === "*" || val.toLowerCase() === ns)) { return true; } } return false; } __name(containsNamespace, "containsNamespace"); function convertDataDescriptorToAccessor(obj2, prop, message) { var descriptor = Object.getOwnPropertyDescriptor(obj2, prop); var value = descriptor.value; descriptor.get = /* @__PURE__ */ __name(function getter() { return value; }, "getter"); if (descriptor.writable) { descriptor.set = /* @__PURE__ */ __name(function setter(val) { return value = val; }, "setter"); } delete descriptor.value; delete descriptor.writable; Object.defineProperty(obj2, prop, descriptor); return descriptor; } __name(convertDataDescriptorToAccessor, "convertDataDescriptorToAccessor"); function createArgumentsString(arity) { var str = ""; for (var i = 0; i < arity; i++) { str += ", arg" + i; } return str.substr(2); } __name(createArgumentsString, "createArgumentsString"); function createStackString(stack) { var str = this.name + ": " + this.namespace; if (this.message) { str += " deprecated " + this.message; } for (var i = 0; i < stack.length; i++) { str += "\n at " + stack[i].toString(); } return str; } __name(createStackString, "createStackString"); function depd(namespace) { if (!namespace) { throw new TypeError("argument namespace is required"); } var stack = getStack(); var site = callSiteLocation(stack[1]); var file2 = site[0]; function deprecate(message) { log.call(deprecate, message); } __name(deprecate, "deprecate"); deprecate._file = file2; deprecate._ignored = isignored(namespace); deprecate._namespace = namespace; deprecate._traced = istraced(namespace); deprecate._warned = /* @__PURE__ */ Object.create(null); deprecate.function = wrapfunction; deprecate.property = wrapproperty; return deprecate; } __name(depd, "depd"); function eehaslisteners(emitter, type) { var count = typeof emitter.listenerCount !== "function" ? emitter.listeners(type).length : emitter.listenerCount(type); return count > 0; } __name(eehaslisteners, "eehaslisteners"); function isignored(namespace) { if (process.noDeprecation) { return true; } var str = process.env.NO_DEPRECATION || ""; return containsNamespace(str, namespace); } __name(isignored, "isignored"); function istraced(namespace) { if (process.traceDeprecation) { return true; } var str = process.env.TRACE_DEPRECATION || ""; return containsNamespace(str, namespace); } __name(istraced, "istraced"); function log(message, site) { var haslisteners = eehaslisteners(process, "deprecation"); if (!haslisteners && this._ignored) { return; } var caller; var callFile; var callSite; var depSite; var i = 0; var seen = false; var stack = getStack(); var file2 = this._file; if (site) { depSite = site; callSite = callSiteLocation(stack[1]); callSite.name = depSite.name; file2 = callSite[0]; } else { i = 2; depSite = callSiteLocation(stack[i]); callSite = depSite; } for (; i < stack.length; i++) { caller = callSiteLocation(stack[i]); callFile = caller[0]; if (callFile === file2) { seen = true; } else if (callFile === this._file) { file2 = this._file; } else if (seen) { break; } } var key = caller ? depSite.join(":") + "__" + caller.join(":") : void 0; if (key !== void 0 && key in this._warned) { return; } this._warned[key] = true; var msg = message; if (!msg) { msg = callSite === depSite || !callSite.name ? defaultMessage(depSite) : defaultMessage(callSite); } if (haslisteners) { var err = DeprecationError(this._namespace, msg, stack.slice(i)); process.emit("deprecation", err); return; } var format = process.stderr.isTTY ? formatColor : formatPlain; var output = format.call(this, msg, caller, stack.slice(i)); process.stderr.write(output + "\n", "utf8"); } __name(log, "log"); function callSiteLocation(callSite) { var file2 = callSite.getFileName() || ""; var line = callSite.getLineNumber(); var colm = callSite.getColumnNumber(); if (callSite.isEval()) { file2 = callSite.getEvalOrigin() + ", " + file2; } var site = [file2, line, colm]; site.callSite = callSite; site.name = callSite.getFunctionName(); return site; } __name(callSiteLocation, "callSiteLocation"); function defaultMessage(site) { var callSite = site.callSite; var funcName = site.name; if (!funcName) { funcName = ""; } var context = callSite.getThis(); var typeName = context && callSite.getTypeName(); if (typeName === "Object") { typeName = void 0; } if (typeName === "Function") { typeName = context.name || typeName; } return typeName && callSite.getMethodName() ? typeName + "." + funcName : funcName; } __name(defaultMessage, "defaultMessage"); function formatPlain(msg, caller, stack) { var timestamp = (/* @__PURE__ */ new Date()).toUTCString(); var formatted = timestamp + " " + this._namespace + " deprecated " + msg; if (this._traced) { for (var i = 0; i < stack.length; i++) { formatted += "\n at " + stack[i].toString(); } return formatted; } if (caller) { formatted += " at " + formatLocation(caller); } return formatted; } __name(formatPlain, "formatPlain"); function formatColor(msg, caller, stack) { var formatted = "\x1B[36;1m" + this._namespace + "\x1B[22;39m \x1B[33;1mdeprecated\x1B[22;39m \x1B[0m" + msg + "\x1B[39m"; if (this._traced) { for (var i = 0; i < stack.length; i++) { formatted += "\n \x1B[36mat " + stack[i].toString() + "\x1B[39m"; } return formatted; } if (caller) { formatted += " \x1B[36m" + formatLocation(caller) + "\x1B[39m"; } return formatted; } __name(formatColor, "formatColor"); function formatLocation(callSite) { return relative(basePath, callSite[0]) + ":" + callSite[1] + ":" + callSite[2]; } __name(formatLocation, "formatLocation"); function getStack() { var limit = Error.stackTraceLimit; var obj2 = {}; var prep = Error.prepareStackTrace; Error.prepareStackTrace = prepareObjectStackTrace; Error.stackTraceLimit = Math.max(10, limit); Error.captureStackTrace(obj2); var stack = obj2.stack.slice(1); Error.prepareStackTrace = prep; Error.stackTraceLimit = limit; return stack; } __name(getStack, "getStack"); function prepareObjectStackTrace(obj2, stack) { return stack; } __name(prepareObjectStackTrace, "prepareObjectStackTrace"); function wrapfunction(fn, message) { if (typeof fn !== "function") { throw new TypeError("argument fn must be a function"); } var args = createArgumentsString(fn.length); var stack = getStack(); var site = callSiteLocation(stack[1]); site.name = fn.name; var deprecatedfn = new Function( "fn", "log", "deprecate", "message", "site", '"use strict"\nreturn function (' + args + ") {log.call(deprecate, message, site)\nreturn fn.apply(this, arguments)\n}" )(fn, log, this, message, site); return deprecatedfn; } __name(wrapfunction, "wrapfunction"); function wrapproperty(obj2, prop, message) { if (!obj2 || typeof obj2 !== "object" && typeof obj2 !== "function") { throw new TypeError("argument obj must be object"); } var descriptor = Object.getOwnPropertyDescriptor(obj2, prop); if (!descriptor) { throw new TypeError("must call property on owner object"); } if (!descriptor.configurable) { throw new TypeError("property must be configurable"); } var deprecate = this; var stack = getStack(); var site = callSiteLocation(stack[1]); site.name = prop; if ("value" in descriptor) { descriptor = convertDataDescriptorToAccessor(obj2, prop, message); } var get = descriptor.get; var set = descriptor.set; if (typeof get === "function") { descriptor.get = /* @__PURE__ */ __name(function getter() { log.call(deprecate, message, site); return get.apply(this, arguments); }, "getter"); } if (typeof set === "function") { descriptor.set = /* @__PURE__ */ __name(function setter() { log.call(deprecate, message, site); return set.apply(this, arguments); }, "setter"); } Object.defineProperty(obj2, prop, descriptor); } __name(wrapproperty, "wrapproperty"); function DeprecationError(namespace, message, stack) { var error = new Error(); var stackString; Object.defineProperty(error, "constructor", { value: DeprecationError }); Object.defineProperty(error, "message", { configurable: true, enumerable: false, value: message, writable: true }); Object.defineProperty(error, "name", { enumerable: false, configurable: true, value: "DeprecationError", writable: true }); Object.defineProperty(error, "namespace", { configurable: true, enumerable: false, value: namespace, writable: true }); Object.defineProperty(error, "stack", { configurable: true, enumerable: false, get: /* @__PURE__ */ __name(function() { if (stackString !== void 0) { return stackString; } return stackString = createStackString.call(this, stack); }, "get"), set: /* @__PURE__ */ __name(function setter(val) { stackString = val; }, "setter") }); return error; } __name(DeprecationError, "DeprecationError"); } }); // ../../node_modules/.pnpm/bytes@3.1.2/node_modules/bytes/index.js var require_bytes = __commonJS({ "../../node_modules/.pnpm/bytes@3.1.2/node_modules/bytes/index.js"(exports2, module2) { "use strict"; module2.exports = bytes; module2.exports.format = format; module2.exports.parse = parse2; var formatThousandsRegExp = /\B(?=(\d{3})+(?!\d))/g; var formatDecimalsRegExp = /(?:\.0*|(\.[^0]+)0+)$/; var map = { b: 1, kb: 1 << 10, mb: 1 << 20, gb: 1 << 30, tb: Math.pow(1024, 4), pb: Math.pow(1024, 5) }; var parseRegExp = /^((-|\+)?(\d+(?:\.\d+)?)) *(kb|mb|gb|tb|pb)$/i; function bytes(value, options) { if (typeof value === "string") { return parse2(value); } if (typeof value === "number") { return format(value, options); } return null; } __name(bytes, "bytes"); function format(value, options) { if (!Number.isFinite(value)) { return null; } var mag = Math.abs(value); var thousandsSeparator = options && options.thousandsSeparator || ""; var unitSeparator = options && options.unitSeparator || ""; var decimalPlaces = options && options.decimalPlaces !== void 0 ? options.decimalPlaces : 2; var fixedDecimals = Boolean(options && options.fixedDecimals); var unit = options && options.unit || ""; if (!unit || !map[unit.toLowerCase()]) { if (mag >= map.pb) { unit = "PB"; } else if (mag >= map.tb) { unit = "TB"; } else if (mag >= map.gb) { unit = "GB"; } else if (mag >= map.mb) { unit = "MB"; } else if (mag >= map.kb) { unit = "KB"; } else { unit = "B"; } } var val = value / map[unit.toLowerCase()]; var str = val.toFixed(decimalPlaces); if (!fixedDecimals) { str = str.replace(formatDecimalsRegExp, "$1"); } if (thousandsSeparator) { str = str.split(".").map(function(s, i) { return i === 0 ? s.replace(formatThousandsRegExp, thousandsSeparator) : s; }).join("."); } return str + unitSeparator + unit; } __name(format, "format"); function parse2(val) { if (typeof val === "number" && !isNaN(val)) { return val; } if (typeof val !== "string") { return null; } var results = parseRegExp.exec(val); var floatValue; var unit = "b"; if (!results) { floatValue = parseInt(val, 10); unit = "b"; } else { floatValue = parseFloat(results[1]); unit = results[4].toLowerCase(); } if (isNaN(floatValue)) { return null; } return Math.floor(map[unit] * floatValue); } __name(parse2, "parse"); } }); // ../../node_modules/.pnpm/content-type@1.0.5/node_modules/content-type/index.js var require_content_type = __commonJS({ "../../node_modules/.pnpm/content-type@1.0.5/node_modules/content-type/index.js"(exports2) { "use strict"; var PARAM_REGEXP = /; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g; var TEXT_REGEXP = /^[\u000b\u0020-\u007e\u0080-\u00ff]+$/; var TOKEN_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/; var QESC_REGEXP = /\\([\u000b\u0020-\u00ff])/g; var QUOTE_REGEXP = /([\\"])/g; var TYPE_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/; exports2.format = format; exports2.parse = parse2; function format(obj2) { if (!obj2 || typeof obj2 !== "object") { throw new TypeError("argument obj is required"); } var parameters = obj2.parameters; var type = obj2.type; if (!type || !TYPE_REGEXP.test(type)) { throw new TypeError("invalid type"); } var string = type; if (parameters && typeof parameters === "object") { var param; var params = Object.keys(parameters).sort(); for (var i = 0; i < params.length; i++) { param = params[i]; if (!TOKEN_REGEXP.test(param)) { throw new TypeError("invalid parameter name"); } string += "; " + param + "=" + qstring(parameters[param]); } } return string; } __name(format, "format"); function parse2(string) { if (!string) { throw new TypeError("argument string is required"); } var header = typeof string === "object" ? getcontenttype(string) : string; if (typeof header !== "string") { throw new TypeError("argument string is required to be a string"); } var index = header.indexOf(";"); var type = index !== -1 ? header.slice(0, index).trim() : header.trim(); if (!TYPE_REGEXP.test(type)) { throw new TypeError("invalid media type"); } var obj2 = new ContentType(type.toLowerCase()); if (index !== -1) { var key; var match; var value; PARAM_REGEXP.lastIndex = index; while (match = PARAM_REGEXP.exec(header)) { if (match.index !== index) { throw new TypeError("invalid parameter format"); } index += match[0].length; key = match[1].toLowerCase(); value = match[2]; if (value.charCodeAt(0) === 34) { value = value.slice(1, -1); if (value.indexOf("\\") !== -1) { value = value.replace(QESC_REGEXP, "$1"); } } obj2.parameters[key] = value; } if (index !== header.length) { throw new TypeError("invalid parameter format"); } } return obj2; } __name(parse2, "parse"); function getcontenttype(obj2) { var header; if (typeof obj2.getHeader === "function") { header = obj2.getHeader("content-type"); } else if (typeof obj2.headers === "object") { header = obj2.headers && obj2.headers["content-type"]; } if (typeof header !== "string") { throw new TypeError("content-type header is missing from object"); } return header; } __name(getcontenttype, "getcontenttype"); function qstring(val) { var str = String(val); if (TOKEN_REGEXP.test(str)) { return str; } if (str.length > 0 && !TEXT_REGEXP.test(str)) { throw new TypeError("invalid parameter value"); } return '"' + str.replace(QUOTE_REGEXP, "\\$1") + '"'; } __name(qstring, "qstring"); function ContentType(type) { this.parameters = /* @__PURE__ */ Object.create(null); this.type = type; } __name(ContentType, "ContentType"); } }); // ../../node_modules/.pnpm/setprototypeof@1.2.0/node_modules/setprototypeof/index.js var require_setprototypeof = __commonJS({ "../../node_modules/.pnpm/setprototypeof@1.2.0/node_modules/setprototypeof/index.js"(exports2, module2) { "use strict"; module2.exports = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array ? setProtoOf : mixinProperties); function setProtoOf(obj2, proto) { obj2.__proto__ = proto; return obj2; } __name(setProtoOf, "setProtoOf"); function mixinProperties(obj2, proto) { for (var prop in proto) { if (!Object.prototype.hasOwnProperty.call(obj2, prop)) { obj2[prop] = proto[prop]; } } return obj2; } __name(mixinProperties, "mixinProperties"); } }); // ../../node_modules/.pnpm/statuses@2.0.2/node_modules/statuses/codes.json var require_codes = __commonJS({ "../../node_modules/.pnpm/statuses@2.0.2/node_modules/statuses/codes.json"(exports2, module2) { module2.exports = { "100": "Continue", "101": "Switching Protocols", "102": "Processing", "103": "Early Hints", "200": "OK", "201": "Created", "202": "Accepted", "203": "Non-Authoritative Information", "204": "No Content", "205": "Reset Content", "206": "Partial Content", "207": "Multi-Status", "208": "Already Reported", "226": "IM Used", "300": "Multiple Choices", "301": "Moved Permanently", "302": "Found", "303": "See Other", "304": "Not Modified", "305": "Use Proxy", "307": "Temporary Redirect", "308": "Permanent Redirect", "400": "Bad Request", "401": "Unauthorized", "402": "Payment Required", "403": "Forbidden", "404": "Not Found", "405": "Method Not Allowed", "406": "Not Acceptable", "407": "Proxy Authentication Required", "408": "Request Timeout", "409": "Conflict", "410": "Gone", "411": "Length Required", "412": "Precondition Failed", "413": "Payload Too Large", "414": "URI Too Long", "415": "Unsupported Media Type", "416": "Range Not Satisfiable", "417": "Expectation Failed", "418": "I'm a Teapot", "421": "Misdirected Request", "422": "Unprocessable Entity", "423": "Locked", "424": "Failed Dependency", "425": "Too Early", "426": "Upgrade Required", "428": "Precondition Required", "429": "Too Many Requests", "431": "Request Header Fields Too Large", "451": "Unavailable For Legal Reasons", "500": "Internal Server Error", "501": "Not Implemented", "502": "Bad Gateway", "503": "Service Unavailable", "504": "Gateway Timeout", "505": "HTTP Version Not Supported", "506": "Variant Also Negotiates", "507": "Insufficient Storage", "508": "Loop Detected", "509": "Bandwidth Limit Exceeded", "510": "Not Extended", "511": "Network Authentication Required" }; } }); // ../../node_modules/.pnpm/statuses@2.0.2/node_modules/statuses/index.js var require_statuses = __commonJS({ "../../node_modules/.pnpm/statuses@2.0.2/node_modules/statuses/index.js"(exports2, module2) { "use strict"; var codes = require_codes(); module2.exports = status; status.message = codes; status.code = createMessageToStatusCodeMap(codes); status.codes = createStatusCodeList(codes); status.redirect = { 300: true, 301: true, 302: true, 303: true, 305: true, 307: true, 308: true }; status.empty = { 204: true, 205: true, 304: true }; status.retry = { 502: true, 503: true, 504: true }; function createMessageToStatusCodeMap(codes2) { var map = {}; Object.keys(codes2).forEach(/* @__PURE__ */ __name(function forEachCode(code) { var message = codes2[code]; var status2 = Number(code); map[message.toLowerCase()] = status2; }, "forEachCode")); return map; } __name(createMessageToStatusCodeMap, "createMessageToStatusCodeMap"); function createStatusCodeList(codes2) { return Object.keys(codes2).map(/* @__PURE__ */ __name(function mapCode(code) { return Number(code); }, "mapCode")); } __name(createStatusCodeList, "createStatusCodeList"); function getStatusCode(message) { var msg = message.toLowerCase(); if (!Object.prototype.hasOwnProperty.call(status.code, msg)) { throw new Error('invalid status message: "' + message + '"'); } return status.code[msg]; } __name(getStatusCode, "getStatusCode"); function getStatusMessage(code) { if (!Object.prototype.hasOwnProperty.call(status.message, code)) { throw new Error("invalid status code: " + code); } return status.message[code]; } __name(getStatusMessage, "getStatusMessage"); function status(code) { if (typeof code === "number") { return getStatusMessage(code); } if (typeof code !== "string") { throw new TypeError("code must be a number or string"); } var n = parseInt(code, 10); if (!isNaN(n)) { return getStatusMessage(n); } return getStatusCode(code); } __name(status, "status"); } }); // ../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits_browser.js var require_inherits_browser = __commonJS({ "../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits_browser.js"(exports2, module2) { if (typeof Object.create === "function") { module2.exports = /* @__PURE__ */ __name(function inherits2(ctor, superCtor) { if (superCtor) { ctor.super_ = superCtor; ctor.prototype = Object.create(superCtor.prototype, { constructor: { value: ctor, enumerable: false, writable: true, configurable: true } }); } }, "inherits"); } else { module2.exports = /* @__PURE__ */ __name(function inherits2(ctor, superCtor) { if (superCtor) { ctor.super_ = superCtor; var TempCtor = /* @__PURE__ */ __name(function() { }, "TempCtor"); TempCtor.prototype = superCtor.prototype; ctor.prototype = new TempCtor(); ctor.prototype.constructor = ctor; } }, "inherits"); } } }); // ../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits.js var require_inherits = __commonJS({ "../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits.js"(exports2, module2) { try { util2 = require("util"); if (typeof util2.inherits !== "function") throw ""; module2.exports = util2.inherits; } catch (e) { module2.exports = require_inherits_browser(); } var util2; } }); // ../../node_modules/.pnpm/toidentifier@1.0.1/node_modules/toidentifier/index.js var require_toidentifier = __commonJS({ "../../node_modules/.pnpm/toidentifier@1.0.1/node_modules/toidentifier/index.js"(exports2, module2) { "use strict"; module2.exports = toIdentifier; function toIdentifier(str) { return str.split(" ").map(function(token) { return token.slice(0, 1).toUpperCase() + token.slice(1); }).join("").replace(/[^ _0-9a-z]/gi, ""); } __name(toIdentifier, "toIdentifier"); } }); // ../../node_modules/.pnpm/http-errors@2.0.1/node_modules/http-errors/index.js var require_http_errors = __commonJS({ "../../node_modules/.pnpm/http-errors@2.0.1/node_modules/http-errors/index.js"(exports2, module2) { "use strict"; var deprecate = require_depd()("http-errors"); var setPrototypeOf = require_setprototypeof(); var statuses = require_statuses(); var inherits2 = require_inherits(); var toIdentifier = require_toidentifier(); module2.exports = createError; module2.exports.HttpError = createHttpErrorConstructor(); module2.exports.isHttpError = createIsHttpErrorFunction(module2.exports.HttpError); populateConstructorExports(module2.exports, statuses.codes, module2.exports.HttpError); function codeClass(status) { return Number(String(status).charAt(0) + "00"); } __name(codeClass, "codeClass"); function createError() { var err; var msg; var status = 500; var props = {}; for (var i = 0; i < arguments.length; i++) { var arg = arguments[i]; var type = typeof arg; if (type === "object" && arg instanceof Error) { err = arg; status = err.status || err.statusCode || status; } else if (type === "number" && i === 0) { status = arg; } else if (type === "string") { msg = arg; } else if (type === "object") { props = arg; } else { throw new TypeError("argument #" + (i + 1) + " unsupported type " + type); } } if (typeof status === "number" && (status < 400 || status >= 600)) { deprecate("non-error status code; use only 4xx or 5xx status codes"); } if (typeof status !== "number" || !statuses.message[status] && (status < 400 || status >= 600)) { status = 500; } var HttpError = createError[status] || createError[codeClass(status)]; if (!err) { err = HttpError ? new HttpError(msg) : new Error(msg || statuses.message[status]); Error.captureStackTrace(err, createError); } if (!HttpError || !(err instanceof HttpError) || err.status !== status) { err.expose = status < 500; err.status = err.statusCode = status; } for (var key in props) { if (key !== "status" && key !== "statusCode") { err[key] = props[key]; } } return err; } __name(createError, "createError"); function createHttpErrorConstructor() { function HttpError() { throw new TypeError("cannot construct abstract class"); } __name(HttpError, "HttpError"); inherits2(HttpError, Error); return HttpError; } __name(createHttpErrorConstructor, "createHttpErrorConstructor"); function createClientErrorConstructor(HttpError, name, code) { var className = toClassName(name); function ClientError(message) { var msg = message != null ? message : statuses.message[code]; var err = new Error(msg); Error.captureStackTrace(err, ClientError); setPrototypeOf(err, ClientError.prototype); Object.defineProperty(err, "message", { enumerable: true, configurable: true, value: msg, writable: true }); Object.defineProperty(err, "name", { enumerable: false, configurable: true, value: className, writable: true }); return err; } __name(ClientError, "ClientError"); inherits2(ClientError, HttpError); nameFunc(ClientError, className); ClientError.prototype.status = code; ClientError.prototype.statusCode = code; ClientError.prototype.expose = true; return ClientError; } __name(createClientErrorConstructor, "createClientErrorConstructor"); function createIsHttpErrorFunction(HttpError) { return /* @__PURE__ */ __name(function isHttpError(val) { if (!val || typeof val !== "object") { return false; } if (val instanceof HttpError) { return true; } return val instanceof Error && typeof val.expose === "boolean" && typeof val.statusCode === "number" && val.status === val.statusCode; }, "isHttpError"); } __name(createIsHttpErrorFunction, "createIsHttpErrorFunction"); function createServerErrorConstructor(HttpError, name, code) { var className = toClassName(name); function ServerError(message) { var msg = message != null ? message : statuses.message[code]; var err = new Error(msg); Error.captureStackTrace(err, ServerError); setPrototypeOf(err, ServerError.prototype); Object.defineProperty(err, "message", { enumerable: true, configurable: true, value: msg, writable: true }); Object.defineProperty(err, "name", { enumerable: false, configurable: true, value: className, writable: true }); return err; } __name(ServerError, "ServerError"); inherits2(ServerError, HttpError); nameFunc(ServerError, className); ServerError.prototype.status = code; ServerError.prototype.statusCode = code; ServerError.prototype.expose = false; return ServerError; } __name(createServerErrorConstructor, "createServerErrorConstructor"); function nameFunc(func, name) { var desc = Object.getOwnPropertyDescriptor(func, "name"); if (desc && desc.configurable) { desc.value = name; Object.defineProperty(func, "name", desc); } } __name(nameFunc, "nameFunc"); function populateConstructorExports(exports3, codes, HttpError) { codes.forEach(/* @__PURE__ */ __name(function forEachCode(code) { var CodeError; var name = toIdentifier(statuses.message[code]); switch (codeClass(code)) { case 400: CodeError = createClientErrorConstructor(HttpError, name, code); break; case 500: CodeError = createServerErrorConstructor(HttpError, name, code); break; } if (CodeError) { exports3[code] = CodeError; exports3[name] = CodeError; } }, "forEachCode")); } __name(populateConstructorExports, "populateConstructorExports"); function toClassName(name) { return name.slice(-5) === "Error" ? name : name + "Error"; } __name(toClassName, "toClassName"); } }); // ../../node_modules/.pnpm/ms@2.0.0/node_modules/ms/index.js var require_ms = __commonJS({ "../../node_modules/.pnpm/ms@2.0.0/node_modules/ms/index.js"(exports2, module2) { var s = 1e3; var m = s * 60; var h = m * 60; var d = h * 24; var y = d * 365.25; module2.exports = function(val, options) { options = options || {}; var type = typeof val; if (type === "string" && val.length > 0) { return parse2(val); } else if (type === "number" && isNaN(val) === false) { return options.long ? fmtLong(val) : fmtShort(val); } throw new Error( "val is not a non-empty string or a valid number. val=" + JSON.stringify(val) ); }; function parse2(str) { str = String(str); if (str.length > 100) { return; } var match = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec( str ); if (!match) { return; } var n = parseFloat(match[1]); var type = (match[2] || "ms").toLowerCase(); switch (type) { case "years": case "year": case "yrs": case "yr": case "y": return n * y; case "days": case "day": case "d": return n * d; case "hours": case "hour": case "hrs": case "hr": case "h": return n * h; case "minutes": case "minute": case "mins": case "min": case "m": return n * m; case "seconds": case "second": case "secs": case "sec": case "s": return n * s; case "milliseconds": case "millisecond": case "msecs": case "msec": case "ms": return n; default: return void 0; } } __name(parse2, "parse"); function fmtShort(ms) { if (ms >= d) { return Math.round(ms / d) + "d"; } if (ms >= h) { return Math.round(ms / h) + "h"; } if (ms >= m) { return Math.round(ms / m) + "m"; } if (ms >= s) { return Math.round(ms / s) + "s"; } return ms + "ms"; } __name(fmtShort, "fmtShort"); function fmtLong(ms) { return plural(ms, d, "day") || plural(ms, h, "hour") || plural(ms, m, "minute") || plural(ms, s, "second") || ms + " ms"; } __name(fmtLong, "fmtLong"); function plural(ms, n, name) { if (ms < n) { return; } if (ms < n * 1.5) { return Math.floor(ms / n) + " " + name; } return Math.ceil(ms / n) + " " + name + "s"; } __name(plural, "plural"); } }); // ../../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/debug.js var require_debug = __commonJS({ "../../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/debug.js"(exports2, module2) { exports2 = module2.exports = createDebug.debug = createDebug["default"] = createDebug; exports2.coerce = coerce; exports2.disable = disable; exports2.enable = enable; exports2.enabled = enabled; exports2.humanize = require_ms(); exports2.names = []; exports2.skips = []; exports2.formatters = {}; var prevTime; function selectColor(namespace) { var hash = 0, i; for (i in namespace) { hash = (hash << 5) - hash + namespace.charCodeAt(i); hash |= 0; } return exports2.colors[Math.abs(hash) % exports2.colors.length]; } __name(selectColor, "selectColor"); function createDebug(namespace) { function debug() { if (!debug.enabled) return; var self2 = debug; var curr = +/* @__PURE__ */ new Date(); var ms = curr - (prevTime || curr); self2.diff = ms; self2.prev = prevTime; self2.curr = curr; prevTime = curr; var args = new Array(arguments.length); for (var i = 0; i < args.length; i++) { args[i] = arguments[i]; } args[0] = exports2.coerce(args[0]); if ("string" !== typeof args[0]) { args.unshift("%O"); } var index = 0; args[0] = args[0].replace(/%([a-zA-Z%])/g, function(match, format) { if (match === "%%") return match; index++; var formatter = exports2.formatters[format]; if ("function" === typeof formatter) { var val = args[index]; match = formatter.call(self2, val); args.splice(index, 1); index--; } return match; }); exports2.formatArgs.call(self2, args); var logFn = debug.log || exports2.log || console.log.bind(console); logFn.apply(self2, args); } __name(debug, "debug"); debug.namespace = namespace; debug.enabled = exports2.enabled(namespace); debug.useColors = exports2.useColors(); debug.color = selectColor(namespace); if ("function" === typeof exports2.init) { exports2.init(debug); } return debug; } __name(createDebug, "createDebug"); function enable(namespaces) { exports2.save(namespaces); exports2.names = []; exports2.skips = []; var split = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/); var len = split.length; for (var i = 0; i < len; i++) { if (!split[i]) continue; namespaces = split[i].replace(/\*/g, ".*?"); if (namespaces[0] === "-") { exports2.skips.push(new RegExp("^" + namespaces.substr(1) + "$")); } else { exports2.names.push(new RegExp("^" + namespaces + "$")); } } } __name(enable, "enable"); function disable() { exports2.enable(""); } __name(disable, "disable"); function enabled(name) { var i, len; for (i = 0, len = exports2.skips.length; i < len; i++) { if (exports2.skips[i].test(name)) { return false; } } for (i = 0, len = exports2.names.length; i < len; i++) { if (exports2.names[i].test(name)) { return true; } } return false; } __name(enabled, "enabled"); function coerce(val) { if (val instanceof Error) return val.stack || val.message; return val; } __name(coerce, "coerce"); } }); // ../../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/browser.js var require_browser = __commonJS({ "../../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/browser.js"(exports2, module2) { exports2 = module2.exports = require_debug(); exports2.log = log; exports2.formatArgs = formatArgs; exports2.save = save; exports2.load = load; exports2.useColors = useColors; exports2.storage = "undefined" != typeof chrome && "undefined" != typeof chrome.storage ? chrome.storage.local : localstorage(); exports2.colors = [ "lightseagreen", "forestgreen", "goldenrod", "dodgerblue", "darkorchid", "crimson" ]; function useColors() { if (typeof window !== "undefined" && window.process && window.process.type === "renderer") { return true; } return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // is firebug? http://stackoverflow.com/a/398120/376773 typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // is firefox >= v31? // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // double check webkit in userAgent just in case we are in a worker typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); } __name(useColors, "useColors"); exports2.formatters.j = function(v) { try { return JSON.stringify(v); } catch (err) { return "[UnexpectedJSONParseError]: " + err.message; } }; function formatArgs(args) { var useColors2 = this.useColors; args[0] = (useColors2 ? "%c" : "") + this.namespace + (useColors2 ? " %c" : " ") + args[0] + (useColors2 ? "%c " : " ") + "+" + exports2.humanize(this.diff); if (!useColors2) return; var c = "color: " + this.color; args.splice(1, 0, c, "color: inherit"); var index = 0; var lastC = 0; args[0].replace(/%[a-zA-Z%]/g, function(match) { if ("%%" === match) return; index++; if ("%c" === match) { lastC = index; } }); args.splice(lastC, 0, c); } __name(formatArgs, "formatArgs"); function log() { return "object" === typeof console && console.log && Function.prototype.apply.call(console.log, console, arguments); } __name(log, "log"); function save(namespaces) { try { if (null == namespaces) { exports2.storage.removeItem("debug"); } else { exports2.storage.debug = namespaces; } } catch (e) { } } __name(save, "save"); function load() { var r; try { r = exports2.storage.debug; } catch (e) { } if (!r && typeof process !== "undefined" && "env" in process) { r = process.env.DEBUG; } return r; } __name(load, "load"); exports2.enable(load()); function localstorage() { try { return window.localStorage; } catch (e) { } } __name(localstorage, "localstorage"); } }); // ../../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/node.js var require_node = __commonJS({ "../../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/node.js"(exports2, module2) { var tty = require("tty"); var util2 = require("util"); exports2 = module2.exports = require_debug(); exports2.init = init; exports2.log = log; exports2.formatArgs = formatArgs; exports2.save = save; exports2.load = load; exports2.useColors = useColors; exports2.colors = [6, 2, 3, 4, 5, 1]; exports2.inspectOpts = Object.keys(process.env).filter(function(key) { return /^debug_/i.test(key); }).reduce(function(obj2, key) { var prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, function(_2, k) { return k.toUpperCase(); }); var val = process.env[key]; if (/^(yes|on|true|enabled)$/i.test(val)) val = true; else if (/^(no|off|false|disabled)$/i.test(val)) val = false; else if (val === "null") val = null; else val = Number(val); obj2[prop] = val; return obj2; }, {}); var fd = parseInt(process.env.DEBUG_FD, 10) || 2; if (1 !== fd && 2 !== fd) { util2.deprecate(function() { }, "except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)")(); } var stream = 1 === fd ? process.stdout : 2 === fd ? process.stderr : createWritableStdioStream(fd); function useColors() { return "colors" in exports2.inspectOpts ? Boolean(exports2.inspectOpts.colors) : tty.isatty(fd); } __name(useColors, "useColors"); exports2.formatters.o = function(v) { this.inspectOpts.colors = this.useColors; return util2.inspect(v, this.inspectOpts).split("\n").map(function(str) { return str.trim(); }).join(" "); }; exports2.formatters.O = function(v) { this.inspectOpts.colors = this.useColors; return util2.inspect(v, this.inspectOpts); }; function formatArgs(args) { var name = this.namespace; var useColors2 = this.useColors; if (useColors2) { var c = this.color; var prefix = " \x1B[3" + c + ";1m" + name + " \x1B[0m"; args[0] = prefix + args[0].split("\n").join("\n" + prefix); args.push("\x1B[3" + c + "m+" + exports2.humanize(this.diff) + "\x1B[0m"); } else { args[0] = (/* @__PURE__ */ new Date()).toUTCString() + " " + name + " " + args[0]; } } __name(formatArgs, "formatArgs"); function log() { return stream.write(util2.format.apply(util2, arguments) + "\n"); } __name(log, "log"); function save(namespaces) { if (null == namespaces) { delete process.env.DEBUG; } else { process.env.DEBUG = namespaces; } } __name(save, "save"); function load() { return process.env.DEBUG; } __name(load, "load"); function createWritableStdioStream(fd2) { var stream2; var tty_wrap = process.binding("tty_wrap"); switch (tty_wrap.guessHandleType(fd2)) { case "TTY": stream2 = new tty.WriteStream(fd2); stream2._type = "tty"; if (stream2._handle && stream2._handle.unref) { stream2._handle.unref(); } break; case "FILE": var fs = require("fs"); stream2 = new fs.SyncWriteStream(fd2, { autoClose: false }); stream2._type = "fs"; break; case "PIPE": case "TCP": var net = require("net"); stream2 = new net.Socket({ fd: fd2, readable: false, writable: true }); stream2.readable = false; stream2.read = null; stream2._type = "pipe"; if (stream2._handle && stream2._handle.unref) { stream2._handle.unref(); } break; default: throw new Error("Implement me. Unknown stream file type!"); } stream2.fd = fd2; stream2._isStdio = true; return stream2; } __name(createWritableStdioStream, "createWritableStdioStream"); function init(debug) { debug.inspectOpts = {}; var keys = Object.keys(exports2.inspectOpts); for (var i = 0; i < keys.length; i++) { debug.inspectOpts[keys[i]] = exports2.inspectOpts[keys[i]]; } } __name(init, "init"); exports2.enable(load()); } }); // ../../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/index.js var require_src = __commonJS({ "../../node_modules/.pnpm/debug@2.6.9/node_modules/debug/src/index.js"(exports2, module2) { if (typeof process !== "undefined" && process.type === "renderer") { module2.exports = require_browser(); } else { module2.exports = require_node(); } } }); // ../../node_modules/.pnpm/destroy@1.2.0/node_modules/destroy/index.js var require_destroy = __commonJS({ "../../node_modules/.pnpm/destroy@1.2.0/node_modules/destroy/index.js"(exports2, module2) { "use strict"; var EventEmitter = require("events").EventEmitter; var ReadStream = require("fs").ReadStream; var Stream = require("stream"); var Zlib = require("zlib"); module2.exports = destroy; function destroy(stream, suppress) { if (isFsReadStream(stream)) { destroyReadStream(stream); } else if (isZlibStream(stream)) { destroyZlibStream(stream); } else if (hasDestroy(stream)) { stream.destroy(); } if (isEventEmitter(stream) && suppress) { stream.removeAllListeners("error"); stream.addListener("error", noop); } return stream; } __name(destroy, "destroy"); function destroyReadStream(stream) { stream.destroy(); if (typeof stream.close === "function") { stream.on("open", onOpenClose); } } __name(destroyReadStream, "destroyReadStream"); function closeZlibStream(stream) { if (stream._hadError === true) { var prop = stream._binding === null ? "_binding" : "_handle"; stream[prop] = { close: /* @__PURE__ */ __name(function() { this[prop] = null; }, "close") }; } stream.close(); } __name(closeZlibStream, "closeZlibStream"); function destroyZlibStream(stream) { if (typeof stream.destroy === "function") { if (stream._binding) { stream.destroy(); if (stream._processing) { stream._needDrain = true; stream.once("drain", onDrainClearBinding); } else { stream._binding.clear(); } } else if (stream._destroy && stream._destroy !== Stream.Transform.prototype._destroy) { stream.destroy(); } else if (stream._destroy && typeof stream.close === "function") { stream.destroyed = true; stream.close(); } else { stream.destroy(); } } else if (typeof stream.close === "function") { closeZlibStream(stream); } } __name(destroyZlibStream, "destroyZlibStream"); function hasDestroy(stream) { return stream instanceof Stream && typeof stream.destroy === "function"; } __name(hasDestroy, "hasDestroy"); function isEventEmitter(val) { return val instanceof EventEmitter; } __name(isEventEmitter, "isEventEmitter"); function isFsReadStream(stream) { return stream instanceof ReadStream; } __name(isFsReadStream, "isFsReadStream"); function isZlibStream(stream) { return stream instanceof Zlib.Gzip || stream instanceof Zlib.Gunzip || stream instanceof Zlib.Deflate || stream instanceof Zlib.DeflateRaw || stream instanceof Zlib.Inflate || stream instanceof Zlib.InflateRaw || stream instanceof Zlib.Unzip; } __name(isZlibStream, "isZlibStream"); function noop() { } __name(noop, "noop"); function onDrainClearBinding() { this._binding.clear(); } __name(onDrainClearBinding, "onDrainClearBinding"); function onOpenClose() { if (typeof this.fd === "number") { this.close(); } } __name(onOpenClose, "onOpenClose"); } }); // ../../node_modules/.pnpm/safer-buffer@2.1.2/node_modules/safer-buffer/safer.js var require_safer = __commonJS({ "../../node_modules/.pnpm/safer-buffer@2.1.2/node_modules/safer-buffer/safer.js"(exports2, module2) { "use strict"; var buffer = require("buffer"); var Buffer2 = buffer.Buffer; var safer = {}; var key; for (key in buffer) { if (!buffer.hasOwnProperty(key)) continue; if (key === "SlowBuffer" || key === "Buffer") continue; safer[key] = buffer[key]; } var Safer = safer.Buffer = {}; for (key in Buffer2) { if (!Buffer2.hasOwnProperty(key)) continue; if (key === "allocUnsafe" || key === "allocUnsafeSlow") continue; Safer[key] = Buffer2[key]; } safer.Buffer.prototype = Buffer2.prototype; if (!Safer.from || Safer.from === Uint8Array.from) { Safer.from = function(value, encodingOrOffset, length) { if (typeof value === "number") { throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value); } if (value && typeof value.length === "undefined") { throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value); } return Buffer2(value, encodingOrOffset, length); }; } if (!Safer.alloc) { Safer.alloc = function(size, fill, encoding) { if (typeof size !== "number") { throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size); } if (size < 0 || size >= 2 * (1 << 30)) { throw new RangeError('The value "' + size + '" is invalid for option "size"'); } var buf = Buffer2(size); if (!fill || fill.length === 0) { buf.fill(0); } else if (typeof encoding === "string") { buf.fill(fill, encoding); } else { buf.fill(fill); } return buf; }; } if (!safer.kStringMaxLength) { try { safer.kStringMaxLength = process.binding("buffer").kStringMaxLength; } catch (e) { } } if (!safer.constants) { safer.constants = { MAX_LENGTH: safer.kMaxLength }; if (safer.kStringMaxLength) { safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength; } } module2.exports = safer; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/bom-handling.js var require_bom_handling = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/bom-handling.js"(exports2) { "use strict"; var BOMChar = "\uFEFF"; exports2.PrependBOM = PrependBOMWrapper; function PrependBOMWrapper(encoder, options) { this.encoder = encoder; this.addBOM = true; } __name(PrependBOMWrapper, "PrependBOMWrapper"); PrependBOMWrapper.prototype.write = function(str) { if (this.addBOM) { str = BOMChar + str; this.addBOM = false; } return this.encoder.write(str); }; PrependBOMWrapper.prototype.end = function() { return this.encoder.end(); }; exports2.StripBOM = StripBOMWrapper; function StripBOMWrapper(decoder, options) { this.decoder = decoder; this.pass = false; this.options = options || {}; } __name(StripBOMWrapper, "StripBOMWrapper"); StripBOMWrapper.prototype.write = function(buf) { var res = this.decoder.write(buf); if (this.pass || !res) return res; if (res[0] === BOMChar) { res = res.slice(1); if (typeof this.options.stripBOM === "function") this.options.stripBOM(); } this.pass = true; return res; }; StripBOMWrapper.prototype.end = function() { return this.decoder.end(); }; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/internal.js var require_internal = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/internal.js"(exports2, module2) { "use strict"; var Buffer2 = require_safer().Buffer; module2.exports = { // Encodings utf8: { type: "_internal", bomAware: true }, cesu8: { type: "_internal", bomAware: true }, unicode11utf8: "utf8", ucs2: { type: "_internal", bomAware: true }, utf16le: "ucs2", binary: { type: "_internal" }, base64: { type: "_internal" }, hex: { type: "_internal" }, // Codec. _internal: InternalCodec }; function InternalCodec(codecOptions, iconv) { this.enc = codecOptions.encodingName; this.bomAware = codecOptions.bomAware; if (this.enc === "base64") this.encoder = InternalEncoderBase64; else if (this.enc === "cesu8") { this.enc = "utf8"; this.encoder = InternalEncoderCesu8; if (Buffer2.from("eda0bdedb2a9", "hex").toString() !== "\u{1F4A9}") { this.decoder = InternalDecoderCesu8; this.defaultCharUnicode = iconv.defaultCharUnicode; } } } __name(InternalCodec, "InternalCodec"); InternalCodec.prototype.encoder = InternalEncoder; InternalCodec.prototype.decoder = InternalDecoder; var StringDecoder = require("string_decoder").StringDecoder; if (!StringDecoder.prototype.end) StringDecoder.prototype.end = function() { }; function InternalDecoder(options, codec) { StringDecoder.call(this, codec.enc); } __name(InternalDecoder, "InternalDecoder"); InternalDecoder.prototype = StringDecoder.prototype; function InternalEncoder(options, codec) { this.enc = codec.enc; } __name(InternalEncoder, "InternalEncoder"); InternalEncoder.prototype.write = function(str) { return Buffer2.from(str, this.enc); }; InternalEncoder.prototype.end = function() { }; function InternalEncoderBase64(options, codec) { this.prevStr = ""; } __name(InternalEncoderBase64, "InternalEncoderBase64"); InternalEncoderBase64.prototype.write = function(str) { str = this.prevStr + str; var completeQuads = str.length - str.length % 4; this.prevStr = str.slice(completeQuads); str = str.slice(0, completeQuads); return Buffer2.from(str, "base64"); }; InternalEncoderBase64.prototype.end = function() { return Buffer2.from(this.prevStr, "base64"); }; function InternalEncoderCesu8(options, codec) { } __name(InternalEncoderCesu8, "InternalEncoderCesu8"); InternalEncoderCesu8.prototype.write = function(str) { var buf = Buffer2.alloc(str.length * 3), bufIdx = 0; for (var i = 0; i < str.length; i++) { var charCode = str.charCodeAt(i); if (charCode < 128) buf[bufIdx++] = charCode; else if (charCode < 2048) { buf[bufIdx++] = 192 + (charCode >>> 6); buf[bufIdx++] = 128 + (charCode & 63); } else { buf[bufIdx++] = 224 + (charCode >>> 12); buf[bufIdx++] = 128 + (charCode >>> 6 & 63); buf[bufIdx++] = 128 + (charCode & 63); } } return buf.slice(0, bufIdx); }; InternalEncoderCesu8.prototype.end = function() { }; function InternalDecoderCesu8(options, codec) { this.acc = 0; this.contBytes = 0; this.accBytes = 0; this.defaultCharUnicode = codec.defaultCharUnicode; } __name(InternalDecoderCesu8, "InternalDecoderCesu8"); InternalDecoderCesu8.prototype.write = function(buf) { var acc = this.acc, contBytes = this.contBytes, accBytes = this.accBytes, res = ""; for (var i = 0; i < buf.length; i++) { var curByte = buf[i]; if ((curByte & 192) !== 128) { if (contBytes > 0) { res += this.defaultCharUnicode; contBytes = 0; } if (curByte < 128) { res += String.fromCharCode(curByte); } else if (curByte < 224) { acc = curByte & 31; contBytes = 1; accBytes = 1; } else if (curByte < 240) { acc = curByte & 15; contBytes = 2; accBytes = 1; } else { res += this.defaultCharUnicode; } } else { if (contBytes > 0) { acc = acc << 6 | curByte & 63; contBytes--; accBytes++; if (contBytes === 0) { if (accBytes === 2 && acc < 128 && acc > 0) res += this.defaultCharUnicode; else if (accBytes === 3 && acc < 2048) res += this.defaultCharUnicode; else res += String.fromCharCode(acc); } } else { res += this.defaultCharUnicode; } } } this.acc = acc; this.contBytes = contBytes; this.accBytes = accBytes; return res; }; InternalDecoderCesu8.prototype.end = function() { var res = 0; if (this.contBytes > 0) res += this.defaultCharUnicode; return res; }; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/utf16.js var require_utf16 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/utf16.js"(exports2) { "use strict"; var Buffer2 = require_safer().Buffer; exports2.utf16be = Utf16BECodec; function Utf16BECodec() { } __name(Utf16BECodec, "Utf16BECodec"); Utf16BECodec.prototype.encoder = Utf16BEEncoder; Utf16BECodec.prototype.decoder = Utf16BEDecoder; Utf16BECodec.prototype.bomAware = true; function Utf16BEEncoder() { } __name(Utf16BEEncoder, "Utf16BEEncoder"); Utf16BEEncoder.prototype.write = function(str) { var buf = Buffer2.from(str, "ucs2"); for (var i = 0; i < buf.length; i += 2) { var tmp = buf[i]; buf[i] = buf[i + 1]; buf[i + 1] = tmp; } return buf; }; Utf16BEEncoder.prototype.end = function() { }; function Utf16BEDecoder() { this.overflowByte = -1; } __name(Utf16BEDecoder, "Utf16BEDecoder"); Utf16BEDecoder.prototype.write = function(buf) { if (buf.length == 0) return ""; var buf2 = Buffer2.alloc(buf.length + 1), i = 0, j = 0; if (this.overflowByte !== -1) { buf2[0] = buf[0]; buf2[1] = this.overflowByte; i = 1; j = 2; } for (; i < buf.length - 1; i += 2, j += 2) { buf2[j] = buf[i + 1]; buf2[j + 1] = buf[i]; } this.overflowByte = i == buf.length - 1 ? buf[buf.length - 1] : -1; return buf2.slice(0, j).toString("ucs2"); }; Utf16BEDecoder.prototype.end = function() { }; exports2.utf16 = Utf16Codec; function Utf16Codec(codecOptions, iconv) { this.iconv = iconv; } __name(Utf16Codec, "Utf16Codec"); Utf16Codec.prototype.encoder = Utf16Encoder; Utf16Codec.prototype.decoder = Utf16Decoder; function Utf16Encoder(options, codec) { options = options || {}; if (options.addBOM === void 0) options.addBOM = true; this.encoder = codec.iconv.getEncoder("utf-16le", options); } __name(Utf16Encoder, "Utf16Encoder"); Utf16Encoder.prototype.write = function(str) { return this.encoder.write(str); }; Utf16Encoder.prototype.end = function() { return this.encoder.end(); }; function Utf16Decoder(options, codec) { this.decoder = null; this.initialBytes = []; this.initialBytesLen = 0; this.options = options || {}; this.iconv = codec.iconv; } __name(Utf16Decoder, "Utf16Decoder"); Utf16Decoder.prototype.write = function(buf) { if (!this.decoder) { this.initialBytes.push(buf); this.initialBytesLen += buf.length; if (this.initialBytesLen < 16) return ""; var buf = Buffer2.concat(this.initialBytes), encoding = detectEncoding(buf, this.options.defaultEncoding); this.decoder = this.iconv.getDecoder(encoding, this.options); this.initialBytes.length = this.initialBytesLen = 0; } return this.decoder.write(buf); }; Utf16Decoder.prototype.end = function() { if (!this.decoder) { var buf = Buffer2.concat(this.initialBytes), encoding = detectEncoding(buf, this.options.defaultEncoding); this.decoder = this.iconv.getDecoder(encoding, this.options); var res = this.decoder.write(buf), trail = this.decoder.end(); return trail ? res + trail : res; } return this.decoder.end(); }; function detectEncoding(buf, defaultEncoding) { var enc = defaultEncoding || "utf-16le"; if (buf.length >= 2) { if (buf[0] == 254 && buf[1] == 255) enc = "utf-16be"; else if (buf[0] == 255 && buf[1] == 254) enc = "utf-16le"; else { var asciiCharsLE = 0, asciiCharsBE = 0, _len = Math.min(buf.length - buf.length % 2, 64); for (var i = 0; i < _len; i += 2) { if (buf[i] === 0 && buf[i + 1] !== 0) asciiCharsBE++; if (buf[i] !== 0 && buf[i + 1] === 0) asciiCharsLE++; } if (asciiCharsBE > asciiCharsLE) enc = "utf-16be"; else if (asciiCharsBE < asciiCharsLE) enc = "utf-16le"; } } return enc; } __name(detectEncoding, "detectEncoding"); } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/utf7.js var require_utf7 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/utf7.js"(exports2) { "use strict"; var Buffer2 = require_safer().Buffer; exports2.utf7 = Utf7Codec; exports2.unicode11utf7 = "utf7"; function Utf7Codec(codecOptions, iconv) { this.iconv = iconv; } __name(Utf7Codec, "Utf7Codec"); Utf7Codec.prototype.encoder = Utf7Encoder; Utf7Codec.prototype.decoder = Utf7Decoder; Utf7Codec.prototype.bomAware = true; var nonDirectChars = /[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g; function Utf7Encoder(options, codec) { this.iconv = codec.iconv; } __name(Utf7Encoder, "Utf7Encoder"); Utf7Encoder.prototype.write = function(str) { return Buffer2.from(str.replace(nonDirectChars, function(chunk) { return "+" + (chunk === "+" ? "" : this.iconv.encode(chunk, "utf16-be").toString("base64").replace(/=+$/, "")) + "-"; }.bind(this))); }; Utf7Encoder.prototype.end = function() { }; function Utf7Decoder(options, codec) { this.iconv = codec.iconv; this.inBase64 = false; this.base64Accum = ""; } __name(Utf7Decoder, "Utf7Decoder"); var base64Regex = /[A-Za-z0-9\/+]/; var base64Chars = []; for (i = 0; i < 256; i++) base64Chars[i] = base64Regex.test(String.fromCharCode(i)); var i; var plusChar = "+".charCodeAt(0); var minusChar = "-".charCodeAt(0); var andChar = "&".charCodeAt(0); Utf7Decoder.prototype.write = function(buf) { var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum; for (var i2 = 0; i2 < buf.length; i2++) { if (!inBase64) { if (buf[i2] == plusChar) { res += this.iconv.decode(buf.slice(lastI, i2), "ascii"); lastI = i2 + 1; inBase64 = true; } } else { if (!base64Chars[buf[i2]]) { if (i2 == lastI && buf[i2] == minusChar) { res += "+"; } else { var b64str = base64Accum + buf.slice(lastI, i2).toString(); res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be"); } if (buf[i2] != minusChar) i2--; lastI = i2 + 1; inBase64 = false; base64Accum = ""; } } } if (!inBase64) { res += this.iconv.decode(buf.slice(lastI), "ascii"); } else { var b64str = base64Accum + buf.slice(lastI).toString(); var canBeDecoded = b64str.length - b64str.length % 8; base64Accum = b64str.slice(canBeDecoded); b64str = b64str.slice(0, canBeDecoded); res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be"); } this.inBase64 = inBase64; this.base64Accum = base64Accum; return res; }; Utf7Decoder.prototype.end = function() { var res = ""; if (this.inBase64 && this.base64Accum.length > 0) res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be"); this.inBase64 = false; this.base64Accum = ""; return res; }; exports2.utf7imap = Utf7IMAPCodec; function Utf7IMAPCodec(codecOptions, iconv) { this.iconv = iconv; } __name(Utf7IMAPCodec, "Utf7IMAPCodec"); Utf7IMAPCodec.prototype.encoder = Utf7IMAPEncoder; Utf7IMAPCodec.prototype.decoder = Utf7IMAPDecoder; Utf7IMAPCodec.prototype.bomAware = true; function Utf7IMAPEncoder(options, codec) { this.iconv = codec.iconv; this.inBase64 = false; this.base64Accum = Buffer2.alloc(6); this.base64AccumIdx = 0; } __name(Utf7IMAPEncoder, "Utf7IMAPEncoder"); Utf7IMAPEncoder.prototype.write = function(str) { var inBase64 = this.inBase64, base64Accum = this.base64Accum, base64AccumIdx = this.base64AccumIdx, buf = Buffer2.alloc(str.length * 5 + 10), bufIdx = 0; for (var i2 = 0; i2 < str.length; i2++) { var uChar = str.charCodeAt(i2); if (32 <= uChar && uChar <= 126) { if (inBase64) { if (base64AccumIdx > 0) { bufIdx += buf.write(base64Accum.slice(0, base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx); base64AccumIdx = 0; } buf[bufIdx++] = minusChar; inBase64 = false; } if (!inBase64) { buf[bufIdx++] = uChar; if (uChar === andChar) buf[bufIdx++] = minusChar; } } else { if (!inBase64) { buf[bufIdx++] = andChar; inBase64 = true; } if (inBase64) { base64Accum[base64AccumIdx++] = uChar >> 8; base64Accum[base64AccumIdx++] = uChar & 255; if (base64AccumIdx == base64Accum.length) { bufIdx += buf.write(base64Accum.toString("base64").replace(/\//g, ","), bufIdx); base64AccumIdx = 0; } } } } this.inBase64 = inBase64; this.base64AccumIdx = base64AccumIdx; return buf.slice(0, bufIdx); }; Utf7IMAPEncoder.prototype.end = function() { var buf = Buffer2.alloc(10), bufIdx = 0; if (this.inBase64) { if (this.base64AccumIdx > 0) { bufIdx += buf.write(this.base64Accum.slice(0, this.base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx); this.base64AccumIdx = 0; } buf[bufIdx++] = minusChar; this.inBase64 = false; } return buf.slice(0, bufIdx); }; function Utf7IMAPDecoder(options, codec) { this.iconv = codec.iconv; this.inBase64 = false; this.base64Accum = ""; } __name(Utf7IMAPDecoder, "Utf7IMAPDecoder"); var base64IMAPChars = base64Chars.slice(); base64IMAPChars[",".charCodeAt(0)] = true; Utf7IMAPDecoder.prototype.write = function(buf) { var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum; for (var i2 = 0; i2 < buf.length; i2++) { if (!inBase64) { if (buf[i2] == andChar) { res += this.iconv.decode(buf.slice(lastI, i2), "ascii"); lastI = i2 + 1; inBase64 = true; } } else { if (!base64IMAPChars[buf[i2]]) { if (i2 == lastI && buf[i2] == minusChar) { res += "&"; } else { var b64str = base64Accum + buf.slice(lastI, i2).toString().replace(/,/g, "/"); res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be"); } if (buf[i2] != minusChar) i2--; lastI = i2 + 1; inBase64 = false; base64Accum = ""; } } } if (!inBase64) { res += this.iconv.decode(buf.slice(lastI), "ascii"); } else { var b64str = base64Accum + buf.slice(lastI).toString().replace(/,/g, "/"); var canBeDecoded = b64str.length - b64str.length % 8; base64Accum = b64str.slice(canBeDecoded); b64str = b64str.slice(0, canBeDecoded); res += this.iconv.decode(Buffer2.from(b64str, "base64"), "utf16-be"); } this.inBase64 = inBase64; this.base64Accum = base64Accum; return res; }; Utf7IMAPDecoder.prototype.end = function() { var res = ""; if (this.inBase64 && this.base64Accum.length > 0) res = this.iconv.decode(Buffer2.from(this.base64Accum, "base64"), "utf16-be"); this.inBase64 = false; this.base64Accum = ""; return res; }; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-codec.js var require_sbcs_codec = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-codec.js"(exports2) { "use strict"; var Buffer2 = require_safer().Buffer; exports2._sbcs = SBCSCodec; function SBCSCodec(codecOptions, iconv) { if (!codecOptions) throw new Error("SBCS codec is called without the data."); if (!codecOptions.chars || codecOptions.chars.length !== 128 && codecOptions.chars.length !== 256) throw new Error("Encoding '" + codecOptions.type + "' has incorrect 'chars' (must be of len 128 or 256)"); if (codecOptions.chars.length === 128) { var asciiString = ""; for (var i = 0; i < 128; i++) asciiString += String.fromCharCode(i); codecOptions.chars = asciiString + codecOptions.chars; } this.decodeBuf = Buffer2.from(codecOptions.chars, "ucs2"); var encodeBuf = Buffer2.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0)); for (var i = 0; i < codecOptions.chars.length; i++) encodeBuf[codecOptions.chars.charCodeAt(i)] = i; this.encodeBuf = encodeBuf; } __name(SBCSCodec, "SBCSCodec"); SBCSCodec.prototype.encoder = SBCSEncoder; SBCSCodec.prototype.decoder = SBCSDecoder; function SBCSEncoder(options, codec) { this.encodeBuf = codec.encodeBuf; } __name(SBCSEncoder, "SBCSEncoder"); SBCSEncoder.prototype.write = function(str) { var buf = Buffer2.alloc(str.length); for (var i = 0; i < str.length; i++) buf[i] = this.encodeBuf[str.charCodeAt(i)]; return buf; }; SBCSEncoder.prototype.end = function() { }; function SBCSDecoder(options, codec) { this.decodeBuf = codec.decodeBuf; } __name(SBCSDecoder, "SBCSDecoder"); SBCSDecoder.prototype.write = function(buf) { var decodeBuf = this.decodeBuf; var newBuf = Buffer2.alloc(buf.length * 2); var idx1 = 0, idx2 = 0; for (var i = 0; i < buf.length; i++) { idx1 = buf[i] * 2; idx2 = i * 2; newBuf[idx2] = decodeBuf[idx1]; newBuf[idx2 + 1] = decodeBuf[idx1 + 1]; } return newBuf.toString("ucs2"); }; SBCSDecoder.prototype.end = function() { }; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-data.js var require_sbcs_data = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-data.js"(exports2, module2) { "use strict"; module2.exports = { // Not supported by iconv, not sure why. "10029": "maccenteuro", "maccenteuro": { "type": "_sbcs", "chars": "\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7" }, "808": "cp808", "ibm808": "cp808", "cp808": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0" }, "mik": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, // Aliases of generated encodings. "ascii8bit": "ascii", "usascii": "ascii", "ansix34": "ascii", "ansix341968": "ascii", "ansix341986": "ascii", "csascii": "ascii", "cp367": "ascii", "ibm367": "ascii", "isoir6": "ascii", "iso646us": "ascii", "iso646irv": "ascii", "us": "ascii", "latin1": "iso88591", "latin2": "iso88592", "latin3": "iso88593", "latin4": "iso88594", "latin5": "iso88599", "latin6": "iso885910", "latin7": "iso885913", "latin8": "iso885914", "latin9": "iso885915", "latin10": "iso885916", "csisolatin1": "iso88591", "csisolatin2": "iso88592", "csisolatin3": "iso88593", "csisolatin4": "iso88594", "csisolatincyrillic": "iso88595", "csisolatinarabic": "iso88596", "csisolatingreek": "iso88597", "csisolatinhebrew": "iso88598", "csisolatin5": "iso88599", "csisolatin6": "iso885910", "l1": "iso88591", "l2": "iso88592", "l3": "iso88593", "l4": "iso88594", "l5": "iso88599", "l6": "iso885910", "l7": "iso885913", "l8": "iso885914", "l9": "iso885915", "l10": "iso885916", "isoir14": "iso646jp", "isoir57": "iso646cn", "isoir100": "iso88591", "isoir101": "iso88592", "isoir109": "iso88593", "isoir110": "iso88594", "isoir144": "iso88595", "isoir127": "iso88596", "isoir126": "iso88597", "isoir138": "iso88598", "isoir148": "iso88599", "isoir157": "iso885910", "isoir166": "tis620", "isoir179": "iso885913", "isoir199": "iso885914", "isoir203": "iso885915", "isoir226": "iso885916", "cp819": "iso88591", "ibm819": "iso88591", "cyrillic": "iso88595", "arabic": "iso88596", "arabic8": "iso88596", "ecma114": "iso88596", "asmo708": "iso88596", "greek": "iso88597", "greek8": "iso88597", "ecma118": "iso88597", "elot928": "iso88597", "hebrew": "iso88598", "hebrew8": "iso88598", "turkish": "iso88599", "turkish8": "iso88599", "thai": "iso885911", "thai8": "iso885911", "celtic": "iso885914", "celtic8": "iso885914", "isoceltic": "iso885914", "tis6200": "tis620", "tis62025291": "tis620", "tis62025330": "tis620", "10000": "macroman", "10006": "macgreek", "10007": "maccyrillic", "10079": "maciceland", "10081": "macturkish", "cspc8codepage437": "cp437", "cspc775baltic": "cp775", "cspc850multilingual": "cp850", "cspcp852": "cp852", "cspc862latinhebrew": "cp862", "cpgr": "cp869", "msee": "cp1250", "mscyrl": "cp1251", "msansi": "cp1252", "msgreek": "cp1253", "msturk": "cp1254", "mshebr": "cp1255", "msarab": "cp1256", "winbaltrim": "cp1257", "cp20866": "koi8r", "20866": "koi8r", "ibm878": "koi8r", "cskoi8r": "koi8r", "cp21866": "koi8u", "21866": "koi8u", "ibm1168": "koi8u", "strk10482002": "rk1048", "tcvn5712": "tcvn", "tcvn57121": "tcvn", "gb198880": "iso646cn", "cn": "iso646cn", "csiso14jisc6220ro": "iso646jp", "jisc62201969ro": "iso646jp", "jp": "iso646jp", "cshproman8": "hproman8", "r8": "hproman8", "roman8": "hproman8", "xroman8": "hproman8", "ibm1051": "hproman8", "mac": "macintosh", "csmacintosh": "macintosh" }; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-data-generated.js var require_sbcs_data_generated = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/sbcs-data-generated.js"(exports2, module2) { "use strict"; module2.exports = { "437": "cp437", "737": "cp737", "775": "cp775", "850": "cp850", "852": "cp852", "855": "cp855", "856": "cp856", "857": "cp857", "858": "cp858", "860": "cp860", "861": "cp861", "862": "cp862", "863": "cp863", "864": "cp864", "865": "cp865", "866": "cp866", "869": "cp869", "874": "windows874", "922": "cp922", "1046": "cp1046", "1124": "cp1124", "1125": "cp1125", "1129": "cp1129", "1133": "cp1133", "1161": "cp1161", "1162": "cp1162", "1163": "cp1163", "1250": "windows1250", "1251": "windows1251", "1252": "windows1252", "1253": "windows1253", "1254": "windows1254", "1255": "windows1255", "1256": "windows1256", "1257": "windows1257", "1258": "windows1258", "28591": "iso88591", "28592": "iso88592", "28593": "iso88593", "28594": "iso88594", "28595": "iso88595", "28596": "iso88596", "28597": "iso88597", "28598": "iso88598", "28599": "iso88599", "28600": "iso885910", "28601": "iso885911", "28603": "iso885913", "28604": "iso885914", "28605": "iso885915", "28606": "iso885916", "windows874": { "type": "_sbcs", "chars": "\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" }, "win874": "windows874", "cp874": "windows874", "windows1250": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9" }, "win1250": "windows1250", "cp1250": "windows1250", "windows1251": { "type": "_sbcs", "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F" }, "win1251": "windows1251", "cp1251": "windows1251", "windows1252": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" }, "win1252": "windows1252", "cp1252": "windows1252", "windows1253": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD" }, "win1253": "windows1253", "cp1253": "windows1253", "windows1254": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF" }, "win1254": "windows1254", "cp1254": "windows1254", "windows1255": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD" }, "win1255": "windows1255", "cp1255": "windows1255", "windows1256": { "type": "_sbcs", "chars": "\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2" }, "win1256": "windows1256", "cp1256": "windows1256", "windows1257": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9" }, "win1257": "windows1257", "cp1257": "windows1257", "windows1258": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF" }, "win1258": "windows1258", "cp1258": "windows1258", "iso88591": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" }, "cp28591": "iso88591", "iso88592": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9" }, "cp28592": "iso88592", "iso88593": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9" }, "cp28593": "iso88593", "iso88594": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9" }, "cp28594": "iso88594", "iso88595": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F" }, "cp28595": "iso88595", "iso88596": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" }, "cp28596": "iso88596", "iso88597": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD" }, "cp28597": "iso88597", "iso88598": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD" }, "cp28598": "iso88598", "iso88599": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF" }, "cp28599": "iso88599", "iso885910": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138" }, "cp28600": "iso885910", "iso885911": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" }, "cp28601": "iso885911", "iso885913": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019" }, "cp28603": "iso885913", "iso885914": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF" }, "cp28604": "iso885914", "iso885915": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" }, "cp28605": "iso885915", "iso885916": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF" }, "cp28606": "iso885916", "cp437": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm437": "cp437", "csibm437": "cp437", "cp737": { "type": "_sbcs", "chars": "\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm737": "cp737", "csibm737": "cp737", "cp775": { "type": "_sbcs", "chars": "\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0" }, "ibm775": "cp775", "csibm775": "cp775", "cp850": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" }, "ibm850": "cp850", "csibm850": "cp850", "cp852": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0" }, "ibm852": "cp852", "csibm852": "cp852", "cp855": { "type": "_sbcs", "chars": "\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0" }, "ibm855": "cp855", "csibm855": "cp855", "cp856": { "type": "_sbcs", "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" }, "ibm856": "cp856", "csibm856": "cp856", "cp857": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" }, "ibm857": "cp857", "csibm857": "cp857", "cp858": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" }, "ibm858": "cp858", "csibm858": "cp858", "cp860": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm860": "cp860", "csibm860": "cp860", "cp861": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm861": "cp861", "csibm861": "cp861", "cp862": { "type": "_sbcs", "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm862": "cp862", "csibm862": "cp862", "cp863": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm863": "cp863", "csibm863": "cp863", "cp864": { "type": "_sbcs", "chars": "\0\x07\b \n\v\f\r\x1B !\"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD" }, "ibm864": "cp864", "csibm864": "cp864", "cp865": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm865": "cp865", "csibm865": "cp865", "cp866": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0" }, "ibm866": "cp866", "csibm866": "cp866", "cp869": { "type": "_sbcs", "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0" }, "ibm869": "cp869", "csibm869": "cp869", "cp922": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF" }, "ibm922": "cp922", "csibm922": "cp922", "cp1046": { "type": "_sbcs", "chars": "\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD" }, "ibm1046": "cp1046", "csibm1046": "cp1046", "cp1124": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F" }, "ibm1124": "cp1124", "csibm1124": "cp1124", "cp1125": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0" }, "ibm1125": "cp1125", "csibm1125": "cp1125", "cp1129": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF" }, "ibm1129": "cp1129", "csibm1129": "cp1129", "cp1133": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD" }, "ibm1133": "cp1133", "csibm1133": "cp1133", "cp1161": { "type": "_sbcs", "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0" }, "ibm1161": "cp1161", "csibm1161": "cp1161", "cp1162": { "type": "_sbcs", "chars": "\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" }, "ibm1162": "cp1162", "csibm1162": "cp1162", "cp1163": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF" }, "ibm1163": "cp1163", "csibm1163": "cp1163", "maccroatian": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7" }, "maccyrillic": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4" }, "macgreek": { "type": "_sbcs", "chars": "\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD" }, "maciceland": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" }, "macroman": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" }, "macromania": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" }, "macthai": { "type": "_sbcs", "chars": "\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD" }, "macturkish": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" }, "macukraine": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4" }, "koi8r": { "type": "_sbcs", "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" }, "koi8u": { "type": "_sbcs", "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" }, "koi8ru": { "type": "_sbcs", "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" }, "koi8t": { "type": "_sbcs", "chars": "\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" }, "armscii8": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD" }, "rk1048": { "type": "_sbcs", "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F" }, "tcvn": { "type": "_sbcs", "chars": "\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b \n\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0" }, "georgianacademy": { "type": "_sbcs", "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" }, "georgianps": { "type": "_sbcs", "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" }, "pt154": { "type": "_sbcs", "chars": "\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F" }, "viscii": { "type": "_sbcs", "chars": "\0\u1EB2\u1EB4\u1EAA\x07\b \n\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE" }, "iso646cn": { "type": "_sbcs", "chars": "\0\x07\b \n\v\f\r\x1B !\"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" }, "iso646jp": { "type": "_sbcs", "chars": "\0\x07\b \n\v\f\r\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" }, "hproman8": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD" }, "macintosh": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" }, "ascii": { "type": "_sbcs", "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" }, "tis620": { "type": "_sbcs", "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" } }; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/dbcs-codec.js var require_dbcs_codec = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/dbcs-codec.js"(exports2) { "use strict"; var Buffer2 = require_safer().Buffer; exports2._dbcs = DBCSCodec; var UNASSIGNED = -1; var GB18030_CODE = -2; var SEQ_START = -10; var NODE_START = -1e3; var UNASSIGNED_NODE = new Array(256); var DEF_CHAR = -1; for (i = 0; i < 256; i++) UNASSIGNED_NODE[i] = UNASSIGNED; var i; function DBCSCodec(codecOptions, iconv) { this.encodingName = codecOptions.encodingName; if (!codecOptions) throw new Error("DBCS codec is called without the data."); if (!codecOptions.table) throw new Error("Encoding '" + this.encodingName + "' has no data."); var mappingTable = codecOptions.table(); this.decodeTables = []; this.decodeTables[0] = UNASSIGNED_NODE.slice(0); this.decodeTableSeq = []; for (var i2 = 0; i2 < mappingTable.length; i2++) this._addDecodeChunk(mappingTable[i2]); this.defaultCharUnicode = iconv.defaultCharUnicode; this.encodeTable = []; this.encodeTableSeq = []; var skipEncodeChars = {}; if (codecOptions.encodeSkipVals) for (var i2 = 0; i2 < codecOptions.encodeSkipVals.length; i2++) { var val = codecOptions.encodeSkipVals[i2]; if (typeof val === "number") skipEncodeChars[val] = true; else for (var j = val.from; j <= val.to; j++) skipEncodeChars[j] = true; } this._fillEncodeTable(0, 0, skipEncodeChars); if (codecOptions.encodeAdd) { for (var uChar in codecOptions.encodeAdd) if (Object.prototype.hasOwnProperty.call(codecOptions.encodeAdd, uChar)) this._setEncodeChar(uChar.charCodeAt(0), codecOptions.encodeAdd[uChar]); } this.defCharSB = this.encodeTable[0][iconv.defaultCharSingleByte.charCodeAt(0)]; if (this.defCharSB === UNASSIGNED) this.defCharSB = this.encodeTable[0]["?"]; if (this.defCharSB === UNASSIGNED) this.defCharSB = "?".charCodeAt(0); if (typeof codecOptions.gb18030 === "function") { this.gb18030 = codecOptions.gb18030(); var thirdByteNodeIdx = this.decodeTables.length; var thirdByteNode = this.decodeTables[thirdByteNodeIdx] = UNASSIGNED_NODE.slice(0); var fourthByteNodeIdx = this.decodeTables.length; var fourthByteNode = this.decodeTables[fourthByteNodeIdx] = UNASSIGNED_NODE.slice(0); for (var i2 = 129; i2 <= 254; i2++) { var secondByteNodeIdx = NODE_START - this.decodeTables[0][i2]; var secondByteNode = this.decodeTables[secondByteNodeIdx]; for (var j = 48; j <= 57; j++) secondByteNode[j] = NODE_START - thirdByteNodeIdx; } for (var i2 = 129; i2 <= 254; i2++) thirdByteNode[i2] = NODE_START - fourthByteNodeIdx; for (var i2 = 48; i2 <= 57; i2++) fourthByteNode[i2] = GB18030_CODE; } } __name(DBCSCodec, "DBCSCodec"); DBCSCodec.prototype.encoder = DBCSEncoder; DBCSCodec.prototype.decoder = DBCSDecoder; DBCSCodec.prototype._getDecodeTrieNode = function(addr) { var bytes = []; for (; addr > 0; addr >>= 8) bytes.push(addr & 255); if (bytes.length == 0) bytes.push(0); var node = this.decodeTables[0]; for (var i2 = bytes.length - 1; i2 > 0; i2--) { var val = node[bytes[i2]]; if (val == UNASSIGNED) { node[bytes[i2]] = NODE_START - this.decodeTables.length; this.decodeTables.push(node = UNASSIGNED_NODE.slice(0)); } else if (val <= NODE_START) { node = this.decodeTables[NODE_START - val]; } else throw new Error("Overwrite byte in " + this.encodingName + ", addr: " + addr.toString(16)); } return node; }; DBCSCodec.prototype._addDecodeChunk = function(chunk) { var curAddr = parseInt(chunk[0], 16); var writeTable = this._getDecodeTrieNode(curAddr); curAddr = curAddr & 255; for (var k = 1; k < chunk.length; k++) { var part = chunk[k]; if (typeof part === "string") { for (var l2 = 0; l2 < part.length; ) { var code = part.charCodeAt(l2++); if (55296 <= code && code < 56320) { var codeTrail = part.charCodeAt(l2++); if (56320 <= codeTrail && codeTrail < 57344) writeTable[curAddr++] = 65536 + (code - 55296) * 1024 + (codeTrail - 56320); else throw new Error("Incorrect surrogate pair in " + this.encodingName + " at chunk " + chunk[0]); } else if (4080 < code && code <= 4095) { var len = 4095 - code + 2; var seq = []; for (var m = 0; m < len; m++) seq.push(part.charCodeAt(l2++)); writeTable[curAddr++] = SEQ_START - this.decodeTableSeq.length; this.decodeTableSeq.push(seq); } else writeTable[curAddr++] = code; } } else if (typeof part === "number") { var charCode = writeTable[curAddr - 1] + 1; for (var l2 = 0; l2 < part; l2++) writeTable[curAddr++] = charCode++; } else throw new Error("Incorrect type '" + typeof part + "' given in " + this.encodingName + " at chunk " + chunk[0]); } if (curAddr > 255) throw new Error("Incorrect chunk in " + this.encodingName + " at addr " + chunk[0] + ": too long" + curAddr); }; DBCSCodec.prototype._getEncodeBucket = function(uCode) { var high = uCode >> 8; if (this.encodeTable[high] === void 0) this.encodeTable[high] = UNASSIGNED_NODE.slice(0); return this.encodeTable[high]; }; DBCSCodec.prototype._setEncodeChar = function(uCode, dbcsCode) { var bucket = this._getEncodeBucket(uCode); var low = uCode & 255; if (bucket[low] <= SEQ_START) this.encodeTableSeq[SEQ_START - bucket[low]][DEF_CHAR] = dbcsCode; else if (bucket[low] == UNASSIGNED) bucket[low] = dbcsCode; }; DBCSCodec.prototype._setEncodeSequence = function(seq, dbcsCode) { var uCode = seq[0]; var bucket = this._getEncodeBucket(uCode); var low = uCode & 255; var node; if (bucket[low] <= SEQ_START) { node = this.encodeTableSeq[SEQ_START - bucket[low]]; } else { node = {}; if (bucket[low] !== UNASSIGNED) node[DEF_CHAR] = bucket[low]; bucket[low] = SEQ_START - this.encodeTableSeq.length; this.encodeTableSeq.push(node); } for (var j = 1; j < seq.length - 1; j++) { var oldVal = node[uCode]; if (typeof oldVal === "object") node = oldVal; else { node = node[uCode] = {}; if (oldVal !== void 0) node[DEF_CHAR] = oldVal; } } uCode = seq[seq.length - 1]; node[uCode] = dbcsCode; }; DBCSCodec.prototype._fillEncodeTable = function(nodeIdx, prefix, skipEncodeChars) { var node = this.decodeTables[nodeIdx]; for (var i2 = 0; i2 < 256; i2++) { var uCode = node[i2]; var mbCode = prefix + i2; if (skipEncodeChars[mbCode]) continue; if (uCode >= 0) this._setEncodeChar(uCode, mbCode); else if (uCode <= NODE_START) this._fillEncodeTable(NODE_START - uCode, mbCode << 8, skipEncodeChars); else if (uCode <= SEQ_START) this._setEncodeSequence(this.decodeTableSeq[SEQ_START - uCode], mbCode); } }; function DBCSEncoder(options, codec) { this.leadSurrogate = -1; this.seqObj = void 0; this.encodeTable = codec.encodeTable; this.encodeTableSeq = codec.encodeTableSeq; this.defaultCharSingleByte = codec.defCharSB; this.gb18030 = codec.gb18030; } __name(DBCSEncoder, "DBCSEncoder"); DBCSEncoder.prototype.write = function(str) { var newBuf = Buffer2.alloc(str.length * (this.gb18030 ? 4 : 3)), leadSurrogate = this.leadSurrogate, seqObj = this.seqObj, nextChar = -1, i2 = 0, j = 0; while (true) { if (nextChar === -1) { if (i2 == str.length) break; var uCode = str.charCodeAt(i2++); } else { var uCode = nextChar; nextChar = -1; } if (55296 <= uCode && uCode < 57344) { if (uCode < 56320) { if (leadSurrogate === -1) { leadSurrogate = uCode; continue; } else { leadSurrogate = uCode; uCode = UNASSIGNED; } } else { if (leadSurrogate !== -1) { uCode = 65536 + (leadSurrogate - 55296) * 1024 + (uCode - 56320); leadSurrogate = -1; } else { uCode = UNASSIGNED; } } } else if (leadSurrogate !== -1) { nextChar = uCode; uCode = UNASSIGNED; leadSurrogate = -1; } var dbcsCode = UNASSIGNED; if (seqObj !== void 0 && uCode != UNASSIGNED) { var resCode = seqObj[uCode]; if (typeof resCode === "object") { seqObj = resCode; continue; } else if (typeof resCode == "number") { dbcsCode = resCode; } else if (resCode == void 0) { resCode = seqObj[DEF_CHAR]; if (resCode !== void 0) { dbcsCode = resCode; nextChar = uCode; } else { } } seqObj = void 0; } else if (uCode >= 0) { var subtable = this.encodeTable[uCode >> 8]; if (subtable !== void 0) dbcsCode = subtable[uCode & 255]; if (dbcsCode <= SEQ_START) { seqObj = this.encodeTableSeq[SEQ_START - dbcsCode]; continue; } if (dbcsCode == UNASSIGNED && this.gb18030) { var idx = findIdx(this.gb18030.uChars, uCode); if (idx != -1) { var dbcsCode = this.gb18030.gbChars[idx] + (uCode - this.gb18030.uChars[idx]); newBuf[j++] = 129 + Math.floor(dbcsCode / 12600); dbcsCode = dbcsCode % 12600; newBuf[j++] = 48 + Math.floor(dbcsCode / 1260); dbcsCode = dbcsCode % 1260; newBuf[j++] = 129 + Math.floor(dbcsCode / 10); dbcsCode = dbcsCode % 10; newBuf[j++] = 48 + dbcsCode; continue; } } } if (dbcsCode === UNASSIGNED) dbcsCode = this.defaultCharSingleByte; if (dbcsCode < 256) { newBuf[j++] = dbcsCode; } else if (dbcsCode < 65536) { newBuf[j++] = dbcsCode >> 8; newBuf[j++] = dbcsCode & 255; } else { newBuf[j++] = dbcsCode >> 16; newBuf[j++] = dbcsCode >> 8 & 255; newBuf[j++] = dbcsCode & 255; } } this.seqObj = seqObj; this.leadSurrogate = leadSurrogate; return newBuf.slice(0, j); }; DBCSEncoder.prototype.end = function() { if (this.leadSurrogate === -1 && this.seqObj === void 0) return; var newBuf = Buffer2.alloc(10), j = 0; if (this.seqObj) { var dbcsCode = this.seqObj[DEF_CHAR]; if (dbcsCode !== void 0) { if (dbcsCode < 256) { newBuf[j++] = dbcsCode; } else { newBuf[j++] = dbcsCode >> 8; newBuf[j++] = dbcsCode & 255; } } else { } this.seqObj = void 0; } if (this.leadSurrogate !== -1) { newBuf[j++] = this.defaultCharSingleByte; this.leadSurrogate = -1; } return newBuf.slice(0, j); }; DBCSEncoder.prototype.findIdx = findIdx; function DBCSDecoder(options, codec) { this.nodeIdx = 0; this.prevBuf = Buffer2.alloc(0); this.decodeTables = codec.decodeTables; this.decodeTableSeq = codec.decodeTableSeq; this.defaultCharUnicode = codec.defaultCharUnicode; this.gb18030 = codec.gb18030; } __name(DBCSDecoder, "DBCSDecoder"); DBCSDecoder.prototype.write = function(buf) { var newBuf = Buffer2.alloc(buf.length * 2), nodeIdx = this.nodeIdx, prevBuf = this.prevBuf, prevBufOffset = this.prevBuf.length, seqStart = -this.prevBuf.length, uCode; if (prevBufOffset > 0) prevBuf = Buffer2.concat([prevBuf, buf.slice(0, 10)]); for (var i2 = 0, j = 0; i2 < buf.length; i2++) { var curByte = i2 >= 0 ? buf[i2] : prevBuf[i2 + prevBufOffset]; var uCode = this.decodeTables[nodeIdx][curByte]; if (uCode >= 0) { } else if (uCode === UNASSIGNED) { i2 = seqStart; uCode = this.defaultCharUnicode.charCodeAt(0); } else if (uCode === GB18030_CODE) { var curSeq = seqStart >= 0 ? buf.slice(seqStart, i2 + 1) : prevBuf.slice(seqStart + prevBufOffset, i2 + 1 + prevBufOffset); var ptr = (curSeq[0] - 129) * 12600 + (curSeq[1] - 48) * 1260 + (curSeq[2] - 129) * 10 + (curSeq[3] - 48); var idx = findIdx(this.gb18030.gbChars, ptr); uCode = this.gb18030.uChars[idx] + ptr - this.gb18030.gbChars[idx]; } else if (uCode <= NODE_START) { nodeIdx = NODE_START - uCode; continue; } else if (uCode <= SEQ_START) { var seq = this.decodeTableSeq[SEQ_START - uCode]; for (var k = 0; k < seq.length - 1; k++) { uCode = seq[k]; newBuf[j++] = uCode & 255; newBuf[j++] = uCode >> 8; } uCode = seq[seq.length - 1]; } else throw new Error("iconv-lite internal error: invalid decoding table value " + uCode + " at " + nodeIdx + "/" + curByte); if (uCode > 65535) { uCode -= 65536; var uCodeLead = 55296 + Math.floor(uCode / 1024); newBuf[j++] = uCodeLead & 255; newBuf[j++] = uCodeLead >> 8; uCode = 56320 + uCode % 1024; } newBuf[j++] = uCode & 255; newBuf[j++] = uCode >> 8; nodeIdx = 0; seqStart = i2 + 1; } this.nodeIdx = nodeIdx; this.prevBuf = seqStart >= 0 ? buf.slice(seqStart) : prevBuf.slice(seqStart + prevBufOffset); return newBuf.slice(0, j).toString("ucs2"); }; DBCSDecoder.prototype.end = function() { var ret2 = ""; while (this.prevBuf.length > 0) { ret2 += this.defaultCharUnicode; var buf = this.prevBuf.slice(1); this.prevBuf = Buffer2.alloc(0); this.nodeIdx = 0; if (buf.length > 0) ret2 += this.write(buf); } this.nodeIdx = 0; return ret2; }; function findIdx(table, val) { if (table[0] > val) return -1; var l2 = 0, r = table.length; while (l2 < r - 1) { var mid = l2 + Math.floor((r - l2 + 1) / 2); if (table[mid] <= val) l2 = mid; else r = mid; } return l2; } __name(findIdx, "findIdx"); } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/shiftjis.json var require_shiftjis = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/shiftjis.json"(exports2, module2) { module2.exports = [ ["0", "\0", 128], ["a1", "\uFF61", 62], ["8140", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7"], ["8180", "\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"], ["81b8", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"], ["81c8", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"], ["81da", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"], ["81f0", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"], ["81fc", "\u25EF"], ["824f", "\uFF10", 9], ["8260", "\uFF21", 25], ["8281", "\uFF41", 25], ["829f", "\u3041", 82], ["8340", "\u30A1", 62], ["8380", "\u30E0", 22], ["839f", "\u0391", 16, "\u03A3", 6], ["83bf", "\u03B1", 16, "\u03C3", 6], ["8440", "\u0410", 5, "\u0401\u0416", 25], ["8470", "\u0430", 5, "\u0451\u0436", 7], ["8480", "\u043E", 17], ["849f", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"], ["8740", "\u2460", 19, "\u2160", 9], ["875f", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"], ["877e", "\u337B"], ["8780", "\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"], ["889f", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"], ["8940", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"], ["8980", "\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"], ["8a40", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"], ["8a80", "\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"], ["8b40", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"], ["8b80", "\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"], ["8c40", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"], ["8c80", "\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"], ["8d40", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"], ["8d80", "\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"], ["8e40", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"], ["8e80", "\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"], ["8f40", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"], ["8f80", "\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"], ["9040", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"], ["9080", "\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"], ["9140", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"], ["9180", "\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"], ["9240", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"], ["9280", "\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"], ["9340", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"], ["9380", "\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"], ["9440", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"], ["9480", "\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"], ["9540", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"], ["9580", "\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"], ["9640", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"], ["9680", "\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"], ["9740", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"], ["9780", "\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"], ["9840", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"], ["989f", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"], ["9940", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"], ["9980", "\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"], ["9a40", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"], ["9a80", "\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"], ["9b40", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"], ["9b80", "\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"], ["9c40", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"], ["9c80", "\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"], ["9d40", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"], ["9d80", "\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"], ["9e40", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"], ["9e80", "\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"], ["9f40", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"], ["9f80", "\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"], ["e040", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"], ["e080", "\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"], ["e140", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"], ["e180", "\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"], ["e240", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"], ["e280", "\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"], ["e340", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"], ["e380", "\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"], ["e440", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"], ["e480", "\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"], ["e540", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"], ["e580", "\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"], ["e640", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"], ["e680", "\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"], ["e740", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"], ["e780", "\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"], ["e840", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"], ["e880", "\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"], ["e940", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"], ["e980", "\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"], ["ea40", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"], ["ea80", "\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"], ["ed40", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"], ["ed80", "\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"], ["ee40", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"], ["ee80", "\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"], ["eeef", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"], ["f040", "\uE000", 62], ["f080", "\uE03F", 124], ["f140", "\uE0BC", 62], ["f180", "\uE0FB", 124], ["f240", "\uE178", 62], ["f280", "\uE1B7", 124], ["f340", "\uE234", 62], ["f380", "\uE273", 124], ["f440", "\uE2F0", 62], ["f480", "\uE32F", 124], ["f540", "\uE3AC", 62], ["f580", "\uE3EB", 124], ["f640", "\uE468", 62], ["f680", "\uE4A7", 124], ["f740", "\uE524", 62], ["f780", "\uE563", 124], ["f840", "\uE5E0", 62], ["f880", "\uE61F", 124], ["f940", "\uE69C"], ["fa40", "\u2170", 9, "\u2160", 9, "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"], ["fa80", "\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"], ["fb40", "\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"], ["fb80", "\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"], ["fc40", "\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/eucjp.json var require_eucjp = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/eucjp.json"(exports2, module2) { module2.exports = [ ["0", "\0", 127], ["8ea1", "\uFF61", 62], ["a1a1", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"], ["a2a1", "\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"], ["a2ba", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"], ["a2ca", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"], ["a2dc", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"], ["a2f2", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"], ["a2fe", "\u25EF"], ["a3b0", "\uFF10", 9], ["a3c1", "\uFF21", 25], ["a3e1", "\uFF41", 25], ["a4a1", "\u3041", 82], ["a5a1", "\u30A1", 85], ["a6a1", "\u0391", 16, "\u03A3", 6], ["a6c1", "\u03B1", 16, "\u03C3", 6], ["a7a1", "\u0410", 5, "\u0401\u0416", 25], ["a7d1", "\u0430", 5, "\u0451\u0436", 25], ["a8a1", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"], ["ada1", "\u2460", 19, "\u2160", 9], ["adc0", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"], ["addf", "\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"], ["b0a1", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"], ["b1a1", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"], ["b2a1", "\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"], ["b3a1", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"], ["b4a1", "\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"], ["b5a1", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"], ["b6a1", "\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"], ["b7a1", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"], ["b8a1", "\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"], ["b9a1", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"], ["baa1", "\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"], ["bba1", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"], ["bca1", "\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"], ["bda1", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"], ["bea1", "\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"], ["bfa1", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"], ["c0a1", "\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"], ["c1a1", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"], ["c2a1", "\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"], ["c3a1", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"], ["c4a1", "\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"], ["c5a1", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"], ["c6a1", "\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"], ["c7a1", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"], ["c8a1", "\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"], ["c9a1", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"], ["caa1", "\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"], ["cba1", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"], ["cca1", "\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"], ["cda1", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"], ["cea1", "\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"], ["cfa1", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"], ["d0a1", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"], ["d1a1", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"], ["d2a1", "\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"], ["d3a1", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"], ["d4a1", "\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"], ["d5a1", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"], ["d6a1", "\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"], ["d7a1", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"], ["d8a1", "\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"], ["d9a1", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"], ["daa1", "\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"], ["dba1", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"], ["dca1", "\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"], ["dda1", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"], ["dea1", "\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"], ["dfa1", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"], ["e0a1", "\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"], ["e1a1", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"], ["e2a1", "\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"], ["e3a1", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"], ["e4a1", "\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"], ["e5a1", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"], ["e6a1", "\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"], ["e7a1", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"], ["e8a1", "\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"], ["e9a1", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"], ["eaa1", "\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"], ["eba1", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"], ["eca1", "\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"], ["eda1", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"], ["eea1", "\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"], ["efa1", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"], ["f0a1", "\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"], ["f1a1", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"], ["f2a1", "\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"], ["f3a1", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"], ["f4a1", "\u582F\u69C7\u9059\u7464\u51DC\u7199"], ["f9a1", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"], ["faa1", "\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"], ["fba1", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"], ["fca1", "\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"], ["fcf1", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"], ["8fa2af", "\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"], ["8fa2c2", "\xA1\xA6\xBF"], ["8fa2eb", "\xBA\xAA\xA9\xAE\u2122\xA4\u2116"], ["8fa6e1", "\u0386\u0388\u0389\u038A\u03AA"], ["8fa6e7", "\u038C"], ["8fa6e9", "\u038E\u03AB"], ["8fa6ec", "\u038F"], ["8fa6f1", "\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"], ["8fa7c2", "\u0402", 10, "\u040E\u040F"], ["8fa7f2", "\u0452", 10, "\u045E\u045F"], ["8fa9a1", "\xC6\u0110"], ["8fa9a4", "\u0126"], ["8fa9a6", "\u0132"], ["8fa9a8", "\u0141\u013F"], ["8fa9ab", "\u014A\xD8\u0152"], ["8fa9af", "\u0166\xDE"], ["8fa9c1", "\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"], ["8faaa1", "\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"], ["8faaba", "\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"], ["8faba1", "\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"], ["8fabbd", "\u0121\u0125\xED\xEC\xEF\xEE\u01D0"], ["8fabc5", "\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"], ["8fb0a1", "\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"], ["8fb1a1", "\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"], ["8fb2a1", "\u5092\u5093\u5094\u5096\u509B\u509C\u509E", 4, "\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"], ["8fb3a1", "\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"], ["8fb4a1", "\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"], ["8fb5a1", "\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"], ["8fb6a1", "\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D", 5, "\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4", 4, "\u56F1\u56EB\u56ED"], ["8fb7a1", "\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D", 4, "\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"], ["8fb8a1", "\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"], ["8fb9a1", "\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"], ["8fbaa1", "\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6", 4, "\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"], ["8fbba1", "\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"], ["8fbca1", "\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A", 4, "\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"], ["8fbda1", "\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0", 4, "\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"], ["8fbea1", "\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110", 4, "\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"], ["8fbfa1", "\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"], ["8fc0a1", "\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"], ["8fc1a1", "\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"], ["8fc2a1", "\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"], ["8fc3a1", "\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E", 4, "\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"], ["8fc4a1", "\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"], ["8fc5a1", "\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"], ["8fc6a1", "\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"], ["8fc7a1", "\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"], ["8fc8a1", "\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"], ["8fc9a1", "\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094", 4, "\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103", 4, "\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"], ["8fcaa1", "\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"], ["8fcba1", "\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"], ["8fcca1", "\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428", 9, "\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"], ["8fcda1", "\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579", 5, "\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"], ["8fcea1", "\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2", 6, "\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"], ["8fcfa1", "\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"], ["8fd0a1", "\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"], ["8fd1a1", "\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"], ["8fd2a1", "\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59", 5], ["8fd3a1", "\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"], ["8fd4a1", "\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2", 4, "\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"], ["8fd5a1", "\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"], ["8fd6a1", "\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"], ["8fd7a1", "\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"], ["8fd8a1", "\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"], ["8fd9a1", "\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F", 4, "\u8556\u8559\u855C", 6, "\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"], ["8fdaa1", "\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660", 4, "\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"], ["8fdba1", "\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783", 6, "\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"], ["8fdca1", "\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA", 4, "\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"], ["8fdda1", "\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4", 4, "\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"], ["8fdea1", "\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42", 4, "\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"], ["8fdfa1", "\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"], ["8fe0a1", "\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"], ["8fe1a1", "\u8F43\u8F47\u8F4F\u8F51", 4, "\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"], ["8fe2a1", "\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"], ["8fe3a1", "\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC", 5, "\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275", 4, "\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"], ["8fe4a1", "\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF", 4, "\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"], ["8fe5a1", "\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9", 4, "\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"], ["8fe6a1", "\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"], ["8fe7a1", "\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"], ["8fe8a1", "\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931", 4, "\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"], ["8fe9a1", "\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF", 4], ["8feaa1", "\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A", 4, "\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"], ["8feba1", "\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26", 4, "\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"], ["8feca1", "\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"], ["8feda1", "\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43", 4, "\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D", 4, "\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp936.json var require_cp936 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp936.json"(exports2, module2) { module2.exports = [ ["0", "\0", 127, "\u20AC"], ["8140", "\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A", 5, "\u4E72\u4E74", 9, "\u4E7F", 6, "\u4E87\u4E8A"], ["8180", "\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02", 6, "\u4F0B\u4F0C\u4F12", 4, "\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E", 4, "\u4F44\u4F45\u4F47", 5, "\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"], ["8240", "\u4FA4\u4FAB\u4FAD\u4FB0", 4, "\u4FB6", 8, "\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2", 4, "\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF", 11], ["8280", "\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F", 10, "\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050", 4, "\u5056\u5057\u5058\u5059\u505B\u505D", 7, "\u5066", 5, "\u506D", 8, "\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E", 20, "\u50A4\u50A6\u50AA\u50AB\u50AD", 4, "\u50B3", 6, "\u50BC"], ["8340", "\u50BD", 17, "\u50D0", 5, "\u50D7\u50D8\u50D9\u50DB", 10, "\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6", 4, "\u50FC", 9, "\u5108"], ["8380", "\u5109\u510A\u510C", 5, "\u5113", 13, "\u5122", 28, "\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D", 4, "\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6", 4, "\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2", 5], ["8440", "\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5", 5, "\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244", 5, "\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"], ["8480", "\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273", 9, "\u527E\u5280\u5283", 4, "\u5289", 6, "\u5291\u5292\u5294", 6, "\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4", 9, "\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9", 5, "\u52E0\u52E1\u52E2\u52E3\u52E5", 10, "\u52F1", 7, "\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"], ["8540", "\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F", 9, "\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"], ["8580", "\u5390", 4, "\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF", 6, "\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3", 4, "\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D", 4, "\u5463\u5465\u5467\u5469", 7, "\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"], ["8640", "\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0", 4, "\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4", 5, "\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A", 4, "\u5512\u5513\u5515", 5, "\u551C\u551D\u551E\u551F\u5521\u5525\u5526"], ["8680", "\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B", 4, "\u5551\u5552\u5553\u5554\u5557", 4, "\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F", 5, "\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0", 6, "\u55A8", 8, "\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF", 4, "\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7", 4, "\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8", 4, "\u55FF\u5602\u5603\u5604\u5605"], ["8740", "\u5606\u5607\u560A\u560B\u560D\u5610", 7, "\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640", 11, "\u564F", 4, "\u5655\u5656\u565A\u565B\u565D", 4], ["8780", "\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D", 7, "\u5687", 6, "\u5690\u5691\u5692\u5694", 14, "\u56A4", 10, "\u56B0", 6, "\u56B8\u56B9\u56BA\u56BB\u56BD", 12, "\u56CB", 8, "\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5", 5, "\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B", 6], ["8840", "\u5712", 9, "\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734", 4, "\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752", 4, "\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"], ["8880", "\u5781\u5787\u5788\u5789\u578A\u578D", 4, "\u5794", 6, "\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9", 8, "\u57C4", 6, "\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5", 7, "\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825", 4, "\u582B", 4, "\u5831\u5832\u5833\u5834\u5836", 7], ["8940", "\u583E", 5, "\u5845", 6, "\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859", 4, "\u585F", 5, "\u5866", 4, "\u586D", 16, "\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"], ["8980", "\u588D", 4, "\u5894", 4, "\u589B\u589C\u589D\u58A0", 7, "\u58AA", 17, "\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6", 10, "\u58D2\u58D3\u58D4\u58D6", 13, "\u58E5", 5, "\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA", 7, "\u5903\u5905\u5906\u5908", 4, "\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"], ["8a40", "\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B", 4, "\u5961\u5963\u5964\u5966", 12, "\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"], ["8a80", "\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3", 5, "\u59BA\u59BC\u59BD\u59BF", 6, "\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE", 4, "\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED", 11, "\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A", 6, "\u5A33\u5A35\u5A37", 4, "\u5A3D\u5A3E\u5A3F\u5A41", 4, "\u5A47\u5A48\u5A4B", 9, "\u5A56\u5A57\u5A58\u5A59\u5A5B", 5], ["8b40", "\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B", 8, "\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80", 17, "\u5A93", 6, "\u5A9C", 13, "\u5AAB\u5AAC"], ["8b80", "\u5AAD", 4, "\u5AB4\u5AB6\u5AB7\u5AB9", 4, "\u5ABF\u5AC0\u5AC3", 5, "\u5ACA\u5ACB\u5ACD", 4, "\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC", 4, "\u5AF2", 22, "\u5B0A", 11, "\u5B18", 25, "\u5B33\u5B35\u5B36\u5B38", 7, "\u5B41", 6], ["8c40", "\u5B48", 7, "\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"], ["8c80", "\u5BD1\u5BD4", 8, "\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9", 4, "\u5BEF\u5BF1", 6, "\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67", 6, "\u5C70\u5C72", 6, "\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83", 4, "\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D", 4, "\u5CA4", 4], ["8d40", "\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5", 5, "\u5CCC", 5, "\u5CD3", 5, "\u5CDA", 6, "\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1", 9, "\u5CFC", 4], ["8d80", "\u5D01\u5D04\u5D05\u5D08", 5, "\u5D0F", 4, "\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F", 4, "\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F", 4, "\u5D35", 7, "\u5D3F", 7, "\u5D48\u5D49\u5D4D", 10, "\u5D59\u5D5A\u5D5C\u5D5E", 10, "\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75", 12, "\u5D83", 21, "\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"], ["8e40", "\u5DA1", 21, "\u5DB8", 12, "\u5DC6", 6, "\u5DCE", 12, "\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"], ["8e80", "\u5DF0\u5DF5\u5DF6\u5DF8", 4, "\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E", 7, "\u5E28", 4, "\u5E2F\u5E30\u5E32", 4, "\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46", 5, "\u5E4D", 6, "\u5E56", 4, "\u5E5C\u5E5D\u5E5F\u5E60\u5E63", 14, "\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8", 4, "\u5EAE", 4, "\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF", 6], ["8f40", "\u5EC6\u5EC7\u5EC8\u5ECB", 5, "\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC", 11, "\u5EE9\u5EEB", 8, "\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"], ["8f80", "\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32", 6, "\u5F3B\u5F3D\u5F3E\u5F3F\u5F41", 14, "\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2", 5, "\u5FA9\u5FAB\u5FAC\u5FAF", 5, "\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE", 4, "\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"], ["9040", "\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030", 4, "\u6036", 4, "\u603D\u603E\u6040\u6044", 6, "\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"], ["9080", "\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD", 7, "\u60C7\u60C8\u60C9\u60CC", 4, "\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1", 4, "\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB", 4, "\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110", 4, "\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C", 18, "\u6140", 6], ["9140", "\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156", 6, "\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169", 6, "\u6171\u6172\u6173\u6174\u6176\u6178", 18, "\u618C\u618D\u618F", 4, "\u6195"], ["9180", "\u6196", 6, "\u619E", 8, "\u61AA\u61AB\u61AD", 9, "\u61B8", 5, "\u61BF\u61C0\u61C1\u61C3", 4, "\u61C9\u61CC", 4, "\u61D3\u61D5", 16, "\u61E7", 13, "\u61F6", 8, "\u6200", 5, "\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238", 4, "\u6242\u6244\u6245\u6246\u624A"], ["9240", "\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C", 6, "\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B", 5, "\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"], ["9280", "\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333", 5, "\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356", 7, "\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399", 6, "\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"], ["9340", "\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7", 6, "\u63DF\u63E2\u63E4", 4, "\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406", 4, "\u640D\u640E\u6411\u6412\u6415", 5, "\u641D\u641F\u6422\u6423\u6424"], ["9380", "\u6425\u6427\u6428\u6429\u642B\u642E", 5, "\u6435", 4, "\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B", 6, "\u6453\u6455\u6456\u6457\u6459", 4, "\u645F", 7, "\u6468\u646A\u646B\u646C\u646E", 9, "\u647B", 6, "\u6483\u6486\u6488", 8, "\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F", 4, "\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6", 6, "\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"], ["9440", "\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7", 24, "\u6501", 7, "\u650A", 7, "\u6513", 4, "\u6519", 8], ["9480", "\u6522\u6523\u6524\u6526", 4, "\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540", 4, "\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578", 14, "\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1", 7, "\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8", 7, "\u65E1\u65E3\u65E4\u65EA\u65EB"], ["9540", "\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB", 4, "\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637", 4, "\u663D\u663F\u6640\u6642\u6644", 6, "\u664D\u664E\u6650\u6651\u6658"], ["9580", "\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669", 4, "\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698", 4, "\u669E", 8, "\u66A9", 4, "\u66AF", 4, "\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF", 25, "\u66DA\u66DE", 7, "\u66E7\u66E8\u66EA", 5, "\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"], ["9640", "\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720", 5, "\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757", 4, "\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"], ["9680", "\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9", 7, "\u67C2\u67C5", 9, "\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5", 7, "\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818", 4, "\u681E\u681F\u6820\u6822", 6, "\u682B", 6, "\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856", 5], ["9740", "\u685C\u685D\u685E\u685F\u686A\u686C", 7, "\u6875\u6878", 8, "\u6882\u6884\u6887", 7, "\u6890\u6891\u6892\u6894\u6895\u6896\u6898", 9, "\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"], ["9780", "\u68B9", 6, "\u68C1\u68C3", 5, "\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB", 4, "\u68E1\u68E2\u68E4", 9, "\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906", 4, "\u690C\u690F\u6911\u6913", 11, "\u6921\u6922\u6923\u6925", 7, "\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943", 16, "\u6955\u6956\u6958\u6959\u695B\u695C\u695F"], ["9840", "\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972", 4, "\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E", 5, "\u6996\u6997\u6999\u699A\u699D", 9, "\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"], ["9880", "\u69BE\u69BF\u69C0\u69C2", 7, "\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5", 5, "\u69DC\u69DD\u69DE\u69E1", 11, "\u69EE\u69EF\u69F0\u69F1\u69F3", 9, "\u69FE\u6A00", 9, "\u6A0B", 11, "\u6A19", 5, "\u6A20\u6A22", 5, "\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36", 6, "\u6A3F", 4, "\u6A45\u6A46\u6A48", 7, "\u6A51", 6, "\u6A5A"], ["9940", "\u6A5C", 4, "\u6A62\u6A63\u6A64\u6A66", 10, "\u6A72", 6, "\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85", 8, "\u6A8F\u6A92", 4, "\u6A98", 7, "\u6AA1", 5], ["9980", "\u6AA7\u6AA8\u6AAA\u6AAD", 114, "\u6B25\u6B26\u6B28", 6], ["9a40", "\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D", 11, "\u6B5A", 7, "\u6B68\u6B69\u6B6B", 13, "\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"], ["9a80", "\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C", 4, "\u6BA2", 7, "\u6BAB", 7, "\u6BB6\u6BB8", 6, "\u6BC0\u6BC3\u6BC4\u6BC6", 4, "\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC", 4, "\u6BE2", 7, "\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE", 6, "\u6C08", 4, "\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B", 4, "\u6C51\u6C52\u6C53\u6C56\u6C58"], ["9b40", "\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B", 4, "\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"], ["9b80", "\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F", 5, "\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D", 4, "\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96", 4, "\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9", 5, "\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"], ["9c40", "\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD", 7, "\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"], ["9c80", "\u6E36\u6E37\u6E39\u6E3B", 7, "\u6E45", 7, "\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60", 10, "\u6E6C\u6E6D\u6E6F", 14, "\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A", 4, "\u6E91", 6, "\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA", 5], ["9d40", "\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA", 7, "\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A", 4, "\u6F10\u6F11\u6F12\u6F16", 9, "\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37", 6, "\u6F3F\u6F40\u6F41\u6F42"], ["9d80", "\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E", 9, "\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67", 5, "\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D", 6, "\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F", 12, "\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2", 4, "\u6FA8", 10, "\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA", 5, "\u6FC1\u6FC3", 5, "\u6FCA", 6, "\u6FD3", 10, "\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"], ["9e40", "\u6FE6", 7, "\u6FF0", 32, "\u7012", 7, "\u701C", 6, "\u7024", 6], ["9e80", "\u702B", 9, "\u7036\u7037\u7038\u703A", 17, "\u704D\u704E\u7050", 13, "\u705F", 11, "\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E", 12, "\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB", 12, "\u70DA"], ["9f40", "\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0", 6, "\u70F8\u70FA\u70FB\u70FC\u70FE", 10, "\u710B", 4, "\u7111\u7112\u7114\u7117\u711B", 10, "\u7127", 7, "\u7132\u7133\u7134"], ["9f80", "\u7135\u7137", 13, "\u7146\u7147\u7148\u7149\u714B\u714D\u714F", 12, "\u715D\u715F", 4, "\u7165\u7169", 4, "\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E", 5, "\u7185", 4, "\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A", 4, "\u71A1", 6, "\u71A9\u71AA\u71AB\u71AD", 5, "\u71B4\u71B6\u71B7\u71B8\u71BA", 8, "\u71C4", 9, "\u71CF", 4], ["a040", "\u71D6", 9, "\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8", 5, "\u71EF", 9, "\u71FA", 11, "\u7207", 19], ["a080", "\u721B\u721C\u721E", 9, "\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240", 6, "\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285", 4, "\u728C\u728E\u7290\u7291\u7293", 11, "\u72A0", 11, "\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA", 6, "\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"], ["a1a1", "\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 7, "\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"], ["a2a1", "\u2170", 9], ["a2b1", "\u2488", 19, "\u2474", 19, "\u2460", 9], ["a2e5", "\u3220", 9], ["a2f1", "\u2160", 11], ["a3a1", "\uFF01\uFF02\uFF03\uFFE5\uFF05", 88, "\uFFE3"], ["a4a1", "\u3041", 82], ["a5a1", "\u30A1", 85], ["a6a1", "\u0391", 16, "\u03A3", 6], ["a6c1", "\u03B1", 16, "\u03C3", 6], ["a6e0", "\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"], ["a6ee", "\uFE3B\uFE3C\uFE37\uFE38\uFE31"], ["a6f4", "\uFE33\uFE34"], ["a7a1", "\u0410", 5, "\u0401\u0416", 25], ["a7d1", "\u0430", 5, "\u0451\u0436", 25], ["a840", "\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550", 35, "\u2581", 6], ["a880", "\u2588", 7, "\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"], ["a8a1", "\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"], ["a8bd", "\u0144\u0148"], ["a8c0", "\u0261"], ["a8c5", "\u3105", 36], ["a940", "\u3021", 8, "\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"], ["a959", "\u2121\u3231"], ["a95c", "\u2010"], ["a960", "\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49", 9, "\uFE54\uFE55\uFE56\uFE57\uFE59", 8], ["a980", "\uFE62", 4, "\uFE68\uFE69\uFE6A\uFE6B"], ["a996", "\u3007"], ["a9a4", "\u2500", 75], ["aa40", "\u72DC\u72DD\u72DF\u72E2", 5, "\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304", 5, "\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340", 8], ["aa80", "\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358", 7, "\u7361", 10, "\u736E\u7370\u7371"], ["ab40", "\u7372", 11, "\u737F", 4, "\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3", 5, "\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3", 4], ["ab80", "\u73CB\u73CC\u73CE\u73D2", 6, "\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3", 4], ["ac40", "\u73F8", 10, "\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411", 8, "\u741C", 5, "\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437", 4, "\u743D\u743E\u743F\u7440\u7442", 11], ["ac80", "\u744E", 6, "\u7456\u7458\u745D\u7460", 12, "\u746E\u746F\u7471", 4, "\u7478\u7479\u747A"], ["ad40", "\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491", 10, "\u749D\u749F", 7, "\u74AA", 15, "\u74BB", 12], ["ad80", "\u74C8", 9, "\u74D3", 8, "\u74DD\u74DF\u74E1\u74E5\u74E7", 6, "\u74F0\u74F1\u74F2"], ["ae40", "\u74F3\u74F5\u74F8", 6, "\u7500\u7501\u7502\u7503\u7505", 7, "\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520", 4, "\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"], ["ae80", "\u755D", 7, "\u7567\u7568\u7569\u756B", 6, "\u7573\u7575\u7576\u7577\u757A", 4, "\u7580\u7581\u7582\u7584\u7585\u7587"], ["af40", "\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6", 4, "\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"], ["af80", "\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"], ["b040", "\u7645", 6, "\u764E", 5, "\u7655\u7657", 4, "\u765D\u765F\u7660\u7661\u7662\u7664", 6, "\u766C\u766D\u766E\u7670", 7, "\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"], ["b080", "\u769C", 7, "\u76A5", 8, "\u76AF\u76B0\u76B3\u76B5", 9, "\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"], ["b140", "\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0", 4, "\u76E6", 7, "\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E", 10, "\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"], ["b180", "\u772C\u772E\u7730", 4, "\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748", 7, "\u7752", 7, "\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"], ["b240", "\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D", 11, "\u777A\u777B\u777C\u7781\u7782\u7783\u7786", 5, "\u778F\u7790\u7793", 11, "\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6", 4], ["b280", "\u77BC\u77BE\u77C0", 12, "\u77CE", 8, "\u77D8\u77D9\u77DA\u77DD", 4, "\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"], ["b340", "\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803", 5, "\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"], ["b380", "\u785B\u785C\u785E", 11, "\u786F", 7, "\u7878\u7879\u787A\u787B\u787D", 6, "\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"], ["b440", "\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8", 7, "\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA", 9], ["b480", "\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED", 4, "\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB", 5, "\u7902\u7903\u7904\u7906", 6, "\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"], ["b540", "\u790D", 5, "\u7914", 9, "\u791F", 4, "\u7925", 14, "\u7935", 4, "\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A", 8, "\u7954\u7955\u7958\u7959\u7961\u7963"], ["b580", "\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970", 6, "\u7979\u797B", 4, "\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"], ["b640", "\u7993", 6, "\u799B", 11, "\u79A8", 10, "\u79B4", 4, "\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9", 5, "\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"], ["b680", "\u79EC\u79EE\u79F1", 6, "\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F", 4, "\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"], ["b740", "\u7A1D\u7A1F\u7A21\u7A22\u7A24", 14, "\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40", 5, "\u7A47", 9, "\u7A52", 4, "\u7A58", 16], ["b780", "\u7A69", 6, "\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"], ["b840", "\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE", 4, "\u7AB4", 10, "\u7AC0", 10, "\u7ACC", 9, "\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7", 5, "\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"], ["b880", "\u7AF4", 4, "\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"], ["b940", "\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F", 5, "\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63", 10, "\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86", 6, "\u7B8E\u7B8F"], ["b980", "\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9", 7, "\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"], ["ba40", "\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4", 4, "\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2", 4, "\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF", 7, "\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10", 5, "\u7C17\u7C18\u7C19"], ["ba80", "\u7C1A", 4, "\u7C20", 5, "\u7C28\u7C29\u7C2B", 12, "\u7C39", 5, "\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"], ["bb40", "\u7C43", 9, "\u7C4E", 36, "\u7C75", 5, "\u7C7E", 9], ["bb80", "\u7C88\u7C8A", 6, "\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4", 4, "\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"], ["bc40", "\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE", 6, "\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1", 6, "\u7CE9", 5, "\u7CF0", 7, "\u7CF9\u7CFA\u7CFC", 13, "\u7D0B", 5], ["bc80", "\u7D11", 14, "\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30", 6, "\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"], ["bd40", "\u7D37", 54, "\u7D6F", 7], ["bd80", "\u7D78", 32, "\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"], ["be40", "\u7D99", 12, "\u7DA7", 6, "\u7DAF", 42], ["be80", "\u7DDA", 32, "\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"], ["bf40", "\u7DFB", 62], ["bf80", "\u7E3A\u7E3C", 4, "\u7E42", 4, "\u7E48", 21, "\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"], ["c040", "\u7E5E", 35, "\u7E83", 23, "\u7E9C\u7E9D\u7E9E"], ["c080", "\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B", 6, "\u7F43\u7F46", 9, "\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"], ["c140", "\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63", 4, "\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82", 7, "\u7F8B\u7F8D\u7F8F", 4, "\u7F95", 4, "\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8", 6, "\u7FB1"], ["c180", "\u7FB3", 4, "\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF", 4, "\u7FD6\u7FD7\u7FD9", 5, "\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"], ["c240", "\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4", 6, "\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B", 5, "\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"], ["c280", "\u8059\u805B", 13, "\u806B", 5, "\u8072", 11, "\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"], ["c340", "\u807E\u8081\u8082\u8085\u8088\u808A\u808D", 5, "\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7", 4, "\u80CF", 6, "\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"], ["c380", "\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F", 12, "\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139", 4, "\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"], ["c440", "\u8140", 5, "\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B", 4, "\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183", 4, "\u8189\u818B\u818C\u818D\u818E\u8190\u8192", 5, "\u8199\u819A\u819E", 4, "\u81A4\u81A5"], ["c480", "\u81A7\u81A9\u81AB", 7, "\u81B4", 5, "\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD", 6, "\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"], ["c540", "\u81D4", 14, "\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE", 4, "\u81F5", 5, "\u81FD\u81FF\u8203\u8207", 4, "\u820E\u820F\u8211\u8213\u8215", 5, "\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"], ["c580", "\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250", 7, "\u8259\u825B\u825C\u825D\u825E\u8260", 7, "\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"], ["c640", "\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"], ["c680", "\u82FA\u82FC", 4, "\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D", 9, "\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"], ["c740", "\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A", 4, "\u8353\u8355", 4, "\u835D\u8362\u8370", 6, "\u8379\u837A\u837E", 6, "\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1", 6, "\u83AC\u83AD\u83AE"], ["c780", "\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"], ["c840", "\u83EE\u83EF\u83F3", 4, "\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412", 5, "\u8419\u841A\u841B\u841E", 5, "\u8429", 7, "\u8432", 5, "\u8439\u843A\u843B\u843E", 7, "\u8447\u8448\u8449"], ["c880", "\u844A", 6, "\u8452", 4, "\u8458\u845D\u845E\u845F\u8460\u8462\u8464", 4, "\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"], ["c940", "\u847D", 4, "\u8483\u8484\u8485\u8486\u848A\u848D\u848F", 7, "\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2", 12, "\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"], ["c980", "\u84D8", 4, "\u84DE\u84E1\u84E2\u84E4\u84E7", 4, "\u84ED\u84EE\u84EF\u84F1", 10, "\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"], ["ca40", "\u8503", 8, "\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522", 8, "\u852D", 9, "\u853E", 4, "\u8544\u8545\u8546\u8547\u854B", 10], ["ca80", "\u8557\u8558\u855A\u855B\u855C\u855D\u855F", 4, "\u8565\u8566\u8567\u8569", 8, "\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"], ["cb40", "\u8582\u8583\u8586\u8588", 6, "\u8590", 10, "\u859D", 6, "\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1", 5, "\u85B8\u85BA", 6, "\u85C2", 6, "\u85CA", 4, "\u85D1\u85D2"], ["cb80", "\u85D4\u85D6", 5, "\u85DD", 6, "\u85E5\u85E6\u85E7\u85E8\u85EA", 14, "\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"], ["cc40", "\u85F9\u85FA\u85FC\u85FD\u85FE\u8600", 4, "\u8606", 10, "\u8612\u8613\u8614\u8615\u8617", 15, "\u8628\u862A", 13, "\u8639\u863A\u863B\u863D\u863E\u863F\u8640"], ["cc80", "\u8641", 11, "\u8652\u8653\u8655", 4, "\u865B\u865C\u865D\u865F\u8660\u8661\u8663", 7, "\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"], ["cd40", "\u866D\u866F\u8670\u8672", 6, "\u8683", 6, "\u868E", 4, "\u8694\u8696", 5, "\u869E", 4, "\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB", 4, "\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"], ["cd80", "\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"], ["ce40", "\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740", 6, "\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A", 5, "\u8761\u8762\u8766", 7, "\u876F\u8771\u8772\u8773\u8775"], ["ce80", "\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E", 4, "\u8794\u8795\u8796\u8798", 6, "\u87A0", 4, "\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"], ["cf40", "\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1", 4, "\u87C7\u87C8\u87C9\u87CC", 4, "\u87D4", 6, "\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF", 9], ["cf80", "\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804", 5, "\u880B", 7, "\u8814\u8817\u8818\u8819\u881A\u881C", 4, "\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"], ["d040", "\u8824", 13, "\u8833", 5, "\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846", 5, "\u884E", 5, "\u8855\u8856\u8858\u885A", 6, "\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"], ["d080", "\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897", 4, "\u889D", 4, "\u88A3\u88A5", 5, "\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"], ["d140", "\u88AC\u88AE\u88AF\u88B0\u88B2", 4, "\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA", 4, "\u88E0\u88E1\u88E6\u88E7\u88E9", 6, "\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903", 5], ["d180", "\u8909\u890B", 4, "\u8911\u8914", 4, "\u891C", 4, "\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"], ["d240", "\u8938", 8, "\u8942\u8943\u8945", 24, "\u8960", 5, "\u8967", 19, "\u897C"], ["d280", "\u897D\u897E\u8980\u8982\u8984\u8985\u8987", 26, "\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"], ["d340", "\u89A2", 30, "\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4", 6], ["d380", "\u89FB", 4, "\u8A01", 5, "\u8A08", 21, "\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"], ["d440", "\u8A1E", 31, "\u8A3F", 8, "\u8A49", 21], ["d480", "\u8A5F", 25, "\u8A7A", 6, "\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"], ["d540", "\u8A81", 7, "\u8A8B", 7, "\u8A94", 46], ["d580", "\u8AC3", 32, "\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"], ["d640", "\u8AE4", 34, "\u8B08", 27], ["d680", "\u8B24\u8B25\u8B27", 30, "\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"], ["d740", "\u8B46", 31, "\u8B67", 4, "\u8B6D", 25], ["d780", "\u8B87", 24, "\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"], ["d840", "\u8C38", 8, "\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D", 7, "\u8C56\u8C57\u8C58\u8C59\u8C5B", 5, "\u8C63", 6, "\u8C6C", 6, "\u8C74\u8C75\u8C76\u8C77\u8C7B", 6, "\u8C83\u8C84\u8C86\u8C87"], ["d880", "\u8C88\u8C8B\u8C8D", 6, "\u8C95\u8C96\u8C97\u8C99", 20, "\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"], ["d940", "\u8CAE", 62], ["d980", "\u8CED", 32, "\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"], ["da40", "\u8D0E", 14, "\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78", 8, "\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C", 4, "\u8D92\u8D93\u8D95", 9, "\u8DA0\u8DA1"], ["da80", "\u8DA2\u8DA4", 12, "\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"], ["db40", "\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE", 6, "\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15", 7, "\u8E20\u8E21\u8E24", 4, "\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"], ["db80", "\u8E3F\u8E43\u8E45\u8E46\u8E4C", 4, "\u8E53", 5, "\u8E5A", 11, "\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"], ["dc40", "\u8E73\u8E75\u8E77", 4, "\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88", 6, "\u8E91\u8E92\u8E93\u8E95", 6, "\u8E9D\u8E9F", 11, "\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3", 6, "\u8EBB", 7], ["dc80", "\u8EC3", 10, "\u8ECF", 21, "\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"], ["dd40", "\u8EE5", 62], ["dd80", "\u8F24", 32, "\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"], ["de40", "\u8F45", 32, "\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"], ["de80", "\u8FC9", 4, "\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"], ["df40", "\u9019\u901C\u9023\u9024\u9025\u9027", 5, "\u9030", 4, "\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048", 4, "\u904E\u9054\u9055\u9056\u9059\u905A\u905C", 5, "\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F", 4, "\u9076", 6, "\u907E\u9081"], ["df80", "\u9084\u9085\u9086\u9087\u9089\u908A\u908C", 4, "\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"], ["e040", "\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105", 19, "\u911A\u911B\u911C"], ["e080", "\u911D\u911F\u9120\u9121\u9124", 10, "\u9130\u9132", 6, "\u913A", 8, "\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"], ["e140", "\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180", 4, "\u9186\u9188\u918A\u918E\u918F\u9193", 6, "\u919C", 5, "\u91A4", 5, "\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"], ["e180", "\u91BC", 10, "\u91C8\u91CB\u91D0\u91D2", 9, "\u91DD", 8, "\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"], ["e240", "\u91E6", 62], ["e280", "\u9225", 32, "\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967", 5, "\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"], ["e340", "\u9246", 45, "\u9275", 16], ["e380", "\u9286", 7, "\u928F", 24, "\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"], ["e440", "\u92A8", 5, "\u92AF", 24, "\u92C9", 31], ["e480", "\u92E9", 32, "\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"], ["e540", "\u930A", 51, "\u933F", 10], ["e580", "\u934A", 31, "\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"], ["e640", "\u936C", 34, "\u9390", 27], ["e680", "\u93AC", 29, "\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"], ["e740", "\u93CE", 7, "\u93D7", 54], ["e780", "\u940E", 32, "\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21", 6, "\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F", 4, "\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"], ["e840", "\u942F", 14, "\u943F", 43, "\u946C\u946D\u946E\u946F"], ["e880", "\u9470", 20, "\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"], ["e940", "\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577", 7, "\u9580", 42], ["e980", "\u95AB", 32, "\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"], ["ea40", "\u95CC", 27, "\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623", 6, "\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"], ["ea80", "\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D", 4, "\u9673\u9678", 12, "\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"], ["eb40", "\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D", 9, "\u96A8", 7, "\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6", 9, "\u96E1", 6, "\u96EB"], ["eb80", "\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717", 4, "\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"], ["ec40", "\u9721", 8, "\u972B\u972C\u972E\u972F\u9731\u9733", 4, "\u973A\u973B\u973C\u973D\u973F", 18, "\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A", 7], ["ec80", "\u9772\u9775\u9777", 4, "\u977D", 7, "\u9786", 4, "\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799", 4, "\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"], ["ed40", "\u979E\u979F\u97A1\u97A2\u97A4", 6, "\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5", 46], ["ed80", "\u97E4\u97E5\u97E8\u97EE", 4, "\u97F4\u97F7", 23, "\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"], ["ee40", "\u980F", 62], ["ee80", "\u984E", 32, "\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6", 4, "\u94BC\u94BD\u94BF\u94C4\u94C8", 6, "\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"], ["ef40", "\u986F", 5, "\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8", 37, "\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0", 4], ["ef80", "\u98E5\u98E6\u98E9", 30, "\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512", 4, "\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564", 8, "\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"], ["f040", "\u9908", 4, "\u990E\u990F\u9911", 28, "\u992F", 26], ["f080", "\u994A", 9, "\u9956", 12, "\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28", 4, "\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66", 6, "\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"], ["f140", "\u998C\u998E\u999A", 10, "\u99A6\u99A7\u99A9", 47], ["f180", "\u99D9", 32, "\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"], ["f240", "\u99FA", 62], ["f280", "\u9A39", 32, "\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"], ["f340", "\u9A5A", 17, "\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9", 6, "\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6", 4, "\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"], ["f380", "\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0", 8, "\u9AFA\u9AFC", 6, "\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"], ["f440", "\u9B07\u9B09", 5, "\u9B10\u9B11\u9B12\u9B14", 10, "\u9B20\u9B21\u9B22\u9B24", 10, "\u9B30\u9B31\u9B33", 7, "\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55", 5], ["f480", "\u9B5B", 32, "\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"], ["f540", "\u9B7C", 62], ["f580", "\u9BBB", 32, "\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"], ["f640", "\u9BDC", 62], ["f680", "\u9C1B", 32, "\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85", 5, "\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E", 5, "\u9CA5", 4, "\u9CAB\u9CAD\u9CAE\u9CB0", 7, "\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"], ["f740", "\u9C3C", 62], ["f780", "\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE", 4, "\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC", 4, "\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"], ["f840", "\u9CE3", 62], ["f880", "\u9D22", 32], ["f940", "\u9D43", 62], ["f980", "\u9D82", 32], ["fa40", "\u9DA3", 62], ["fa80", "\u9DE2", 32], ["fb40", "\u9E03", 27, "\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74", 9, "\u9E80"], ["fb80", "\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C", 5, "\u9E94", 8, "\u9E9E\u9EA0", 5, "\u9EA7\u9EA8\u9EA9\u9EAA"], ["fc40", "\u9EAB", 8, "\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF", 4, "\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0", 8, "\u9EFA\u9EFD\u9EFF", 6], ["fc80", "\u9F06", 4, "\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A", 5, "\u9F21\u9F23", 8, "\u9F2D\u9F2E\u9F30\u9F31"], ["fd40", "\u9F32", 4, "\u9F38\u9F3A\u9F3C\u9F3F", 4, "\u9F45", 10, "\u9F52", 38], ["fd80", "\u9F79", 5, "\u9F81\u9F82\u9F8D", 11, "\u9F9C\u9F9D\u9F9E\u9FA1", 4, "\uF92C\uF979\uF995\uF9E7\uF9F1"], ["fe40", "\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/gbk-added.json var require_gbk_added = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/gbk-added.json"(exports2, module2) { module2.exports = [ ["a140", "\uE4C6", 62], ["a180", "\uE505", 32], ["a240", "\uE526", 62], ["a280", "\uE565", 32], ["a2ab", "\uE766", 5], ["a2e3", "\u20AC\uE76D"], ["a2ef", "\uE76E\uE76F"], ["a2fd", "\uE770\uE771"], ["a340", "\uE586", 62], ["a380", "\uE5C5", 31, "\u3000"], ["a440", "\uE5E6", 62], ["a480", "\uE625", 32], ["a4f4", "\uE772", 10], ["a540", "\uE646", 62], ["a580", "\uE685", 32], ["a5f7", "\uE77D", 7], ["a640", "\uE6A6", 62], ["a680", "\uE6E5", 32], ["a6b9", "\uE785", 7], ["a6d9", "\uE78D", 6], ["a6ec", "\uE794\uE795"], ["a6f3", "\uE796"], ["a6f6", "\uE797", 8], ["a740", "\uE706", 62], ["a780", "\uE745", 32], ["a7c2", "\uE7A0", 14], ["a7f2", "\uE7AF", 12], ["a896", "\uE7BC", 10], ["a8bc", "\uE7C7"], ["a8bf", "\u01F9"], ["a8c1", "\uE7C9\uE7CA\uE7CB\uE7CC"], ["a8ea", "\uE7CD", 20], ["a958", "\uE7E2"], ["a95b", "\uE7E3"], ["a95d", "\uE7E4\uE7E5\uE7E6"], ["a989", "\u303E\u2FF0", 11], ["a997", "\uE7F4", 12], ["a9f0", "\uE801", 14], ["aaa1", "\uE000", 93], ["aba1", "\uE05E", 93], ["aca1", "\uE0BC", 93], ["ada1", "\uE11A", 93], ["aea1", "\uE178", 93], ["afa1", "\uE1D6", 93], ["d7fa", "\uE810", 4], ["f8a1", "\uE234", 93], ["f9a1", "\uE292", 93], ["faa1", "\uE2F0", 93], ["fba1", "\uE34E", 93], ["fca1", "\uE3AC", 93], ["fda1", "\uE40A", 93], ["fe50", "\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"], ["fe80", "\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13", 6, "\u4DAE\uE864\uE468", 93] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json var require_gb18030_ranges = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json"(exports2, module2) { module2.exports = { uChars: [128, 165, 169, 178, 184, 216, 226, 235, 238, 244, 248, 251, 253, 258, 276, 284, 300, 325, 329, 334, 364, 463, 465, 467, 469, 471, 473, 475, 477, 506, 594, 610, 712, 716, 730, 930, 938, 962, 970, 1026, 1104, 1106, 8209, 8215, 8218, 8222, 8231, 8241, 8244, 8246, 8252, 8365, 8452, 8454, 8458, 8471, 8482, 8556, 8570, 8596, 8602, 8713, 8720, 8722, 8726, 8731, 8737, 8740, 8742, 8748, 8751, 8760, 8766, 8777, 8781, 8787, 8802, 8808, 8816, 8854, 8858, 8870, 8896, 8979, 9322, 9372, 9548, 9588, 9616, 9622, 9634, 9652, 9662, 9672, 9676, 9680, 9702, 9735, 9738, 9793, 9795, 11906, 11909, 11913, 11917, 11928, 11944, 11947, 11951, 11956, 11960, 11964, 11979, 12284, 12292, 12312, 12319, 12330, 12351, 12436, 12447, 12535, 12543, 12586, 12842, 12850, 12964, 13200, 13215, 13218, 13253, 13263, 13267, 13270, 13384, 13428, 13727, 13839, 13851, 14617, 14703, 14801, 14816, 14964, 15183, 15471, 15585, 16471, 16736, 17208, 17325, 17330, 17374, 17623, 17997, 18018, 18212, 18218, 18301, 18318, 18760, 18811, 18814, 18820, 18823, 18844, 18848, 18872, 19576, 19620, 19738, 19887, 40870, 59244, 59336, 59367, 59413, 59417, 59423, 59431, 59437, 59443, 59452, 59460, 59478, 59493, 63789, 63866, 63894, 63976, 63986, 64016, 64018, 64021, 64025, 64034, 64037, 64042, 65074, 65093, 65107, 65112, 65127, 65132, 65375, 65510, 65536], gbChars: [0, 36, 38, 45, 50, 81, 89, 95, 96, 100, 103, 104, 105, 109, 126, 133, 148, 172, 175, 179, 208, 306, 307, 308, 309, 310, 311, 312, 313, 341, 428, 443, 544, 545, 558, 741, 742, 749, 750, 805, 819, 820, 7922, 7924, 7925, 7927, 7934, 7943, 7944, 7945, 7950, 8062, 8148, 8149, 8152, 8164, 8174, 8236, 8240, 8262, 8264, 8374, 8380, 8381, 8384, 8388, 8390, 8392, 8393, 8394, 8396, 8401, 8406, 8416, 8419, 8424, 8437, 8439, 8445, 8482, 8485, 8496, 8521, 8603, 8936, 8946, 9046, 9050, 9063, 9066, 9076, 9092, 9100, 9108, 9111, 9113, 9131, 9162, 9164, 9218, 9219, 11329, 11331, 11334, 11336, 11346, 11361, 11363, 11366, 11370, 11372, 11375, 11389, 11682, 11686, 11687, 11692, 11694, 11714, 11716, 11723, 11725, 11730, 11736, 11982, 11989, 12102, 12336, 12348, 12350, 12384, 12393, 12395, 12397, 12510, 12553, 12851, 12962, 12973, 13738, 13823, 13919, 13933, 14080, 14298, 14585, 14698, 15583, 15847, 16318, 16434, 16438, 16481, 16729, 17102, 17122, 17315, 17320, 17402, 17418, 17859, 17909, 17911, 17915, 17916, 17936, 17939, 17961, 18664, 18703, 18814, 18962, 19043, 33469, 33470, 33471, 33484, 33485, 33490, 33497, 33501, 33505, 33513, 33520, 33536, 33550, 37845, 37921, 37948, 38029, 38038, 38064, 38065, 38066, 38069, 38075, 38076, 38078, 39108, 39109, 39113, 39114, 39115, 39116, 39265, 39394, 189e3] }; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp949.json var require_cp949 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp949.json"(exports2, module2) { module2.exports = [ ["0", "\0", 127], ["8141", "\uAC02\uAC03\uAC05\uAC06\uAC0B", 4, "\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25", 6, "\uAC2E\uAC32\uAC33\uAC34"], ["8161", "\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41", 9, "\uAC4C\uAC4E", 5, "\uAC55"], ["8181", "\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D", 18, "\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B", 4, "\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95", 6, "\uAC9E\uACA2", 5, "\uACAB\uACAD\uACAE\uACB1", 6, "\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD", 7, "\uACD6\uACD8", 7, "\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7", 4, "\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07", 4, "\uAD0E\uAD10\uAD12\uAD13"], ["8241", "\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21", 7, "\uAD2A\uAD2B\uAD2E", 5], ["8261", "\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D", 6, "\uAD46\uAD48\uAD4A", 5, "\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"], ["8281", "\uAD59", 7, "\uAD62\uAD64", 7, "\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83", 4, "\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91", 10, "\uAD9E", 5, "\uADA5", 17, "\uADB8", 7, "\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9", 6, "\uADD2\uADD4", 7, "\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5", 18], ["8341", "\uADFA\uADFB\uADFD\uADFE\uAE02", 5, "\uAE0A\uAE0C\uAE0E", 5, "\uAE15", 7], ["8361", "\uAE1D", 18, "\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"], ["8381", "\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57", 4, "\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71", 6, "\uAE7A\uAE7E", 5, "\uAE86", 5, "\uAE8D", 46, "\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5", 6, "\uAECE\uAED2", 5, "\uAEDA\uAEDB\uAEDD", 8], ["8441", "\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE", 5, "\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD", 8], ["8461", "\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11", 18], ["8481", "\uAF24", 7, "\uAF2E\uAF2F\uAF31\uAF33\uAF35", 6, "\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A", 5, "\uAF51", 10, "\uAF5E", 5, "\uAF66", 18, "\uAF7A", 5, "\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89", 6, "\uAF92\uAF93\uAF94\uAF96", 5, "\uAF9D", 26, "\uAFBA\uAFBB\uAFBD\uAFBE"], ["8541", "\uAFBF\uAFC1", 5, "\uAFCA\uAFCC\uAFCF", 4, "\uAFD5", 6, "\uAFDD", 4], ["8561", "\uAFE2", 5, "\uAFEA", 5, "\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9", 6, "\uB002\uB003"], ["8581", "\uB005", 6, "\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015", 6, "\uB01E", 9, "\uB029", 26, "\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E", 29, "\uB07E\uB07F\uB081\uB082\uB083\uB085", 6, "\uB08E\uB090\uB092", 5, "\uB09B\uB09D\uB09E\uB0A3\uB0A4"], ["8641", "\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD", 6, "\uB0C6\uB0CA", 5, "\uB0D2"], ["8661", "\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9", 6, "\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6", 10], ["8681", "\uB0F1", 22, "\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E", 4, "\uB126\uB127\uB129\uB12A\uB12B\uB12D", 6, "\uB136\uB13A", 5, "\uB142\uB143\uB145\uB146\uB147\uB149", 6, "\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161", 22, "\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183", 4, "\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"], ["8741", "\uB19E", 9, "\uB1A9", 15], ["8761", "\uB1B9", 18, "\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"], ["8781", "\uB1D6", 5, "\uB1DE\uB1E0", 7, "\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1", 7, "\uB1FA\uB1FC\uB1FE", 5, "\uB206\uB207\uB209\uB20A\uB20D", 6, "\uB216\uB218\uB21A", 5, "\uB221", 18, "\uB235", 6, "\uB23D", 26, "\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261", 6, "\uB26A", 4], ["8841", "\uB26F", 4, "\uB276", 5, "\uB27D", 6, "\uB286\uB287\uB288\uB28A", 4], ["8861", "\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B", 4, "\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"], ["8881", "\uB2B8", 15, "\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3", 4, "\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309", 6, "\uB312\uB316", 5, "\uB31D", 54, "\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"], ["8941", "\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379", 6, "\uB382\uB386", 5, "\uB38D"], ["8961", "\uB38E\uB38F\uB391\uB392\uB393\uB395", 10, "\uB3A2", 5, "\uB3A9\uB3AA\uB3AB\uB3AD"], ["8981", "\uB3AE", 21, "\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9", 18, "\uB3FD", 18, "\uB411", 6, "\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421", 6, "\uB42A\uB42C", 7, "\uB435", 15], ["8a41", "\uB445", 10, "\uB452\uB453\uB455\uB456\uB457\uB459", 6, "\uB462\uB464\uB466"], ["8a61", "\uB467", 4, "\uB46D", 18, "\uB481\uB482"], ["8a81", "\uB483", 4, "\uB489", 19, "\uB49E", 5, "\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD", 7, "\uB4B6\uB4B8\uB4BA", 5, "\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9", 6, "\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6", 5, "\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7", 4, "\uB4EE\uB4F0\uB4F2", 5, "\uB4F9", 26, "\uB516\uB517\uB519\uB51A\uB51D"], ["8b41", "\uB51E", 5, "\uB526\uB52B", 4, "\uB532\uB533\uB535\uB536\uB537\uB539", 6, "\uB542\uB546"], ["8b61", "\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555", 6, "\uB55E\uB562", 8], ["8b81", "\uB56B", 52, "\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6", 4, "\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5", 6, "\uB5CE\uB5D2", 5, "\uB5D9", 18, "\uB5ED", 18], ["8c41", "\uB600", 15, "\uB612\uB613\uB615\uB616\uB617\uB619", 4], ["8c61", "\uB61E", 6, "\uB626", 5, "\uB62D", 6, "\uB635", 5], ["8c81", "\uB63B", 12, "\uB649", 26, "\uB665\uB666\uB667\uB669", 50, "\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5", 5, "\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2", 16], ["8d41", "\uB6C3", 16, "\uB6D5", 8], ["8d61", "\uB6DE", 17, "\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"], ["8d81", "\uB6FB", 4, "\uB702\uB703\uB704\uB706", 33, "\uB72A\uB72B\uB72D\uB72E\uB731", 6, "\uB73A\uB73C", 7, "\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D", 6, "\uB756", 9, "\uB761\uB762\uB763\uB765\uB766\uB767\uB769", 6, "\uB772\uB774\uB776", 5, "\uB77E\uB77F\uB781\uB782\uB783\uB785", 6, "\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"], ["8e41", "\uB79F\uB7A1", 6, "\uB7AA\uB7AE", 5, "\uB7B6\uB7B7\uB7B9", 8], ["8e61", "\uB7C2", 4, "\uB7C8\uB7CA", 19], ["8e81", "\uB7DE", 13, "\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5", 6, "\uB7FE\uB802", 4, "\uB80A\uB80B\uB80D\uB80E\uB80F\uB811", 6, "\uB81A\uB81C\uB81E", 5, "\uB826\uB827\uB829\uB82A\uB82B\uB82D", 6, "\uB836\uB83A", 5, "\uB841\uB842\uB843\uB845", 11, "\uB852\uB854", 7, "\uB85E\uB85F\uB861\uB862\uB863\uB865", 6, "\uB86E\uB870\uB872", 5, "\uB879\uB87A\uB87B\uB87D", 7], ["8f41", "\uB885", 7, "\uB88E", 17], ["8f61", "\uB8A0", 7, "\uB8A9", 6, "\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9", 4], ["8f81", "\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6", 5, "\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5", 7, "\uB8DE\uB8E0\uB8E2", 5, "\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1", 6, "\uB8FA\uB8FC\uB8FE", 5, "\uB905", 18, "\uB919", 6, "\uB921", 26, "\uB93E\uB93F\uB941\uB942\uB943\uB945", 6, "\uB94D\uB94E\uB950\uB952", 5], ["9041", "\uB95A\uB95B\uB95D\uB95E\uB95F\uB961", 6, "\uB96A\uB96C\uB96E", 5, "\uB976\uB977\uB979\uB97A\uB97B\uB97D"], ["9061", "\uB97E", 5, "\uB986\uB988\uB98B\uB98C\uB98F", 15], ["9081", "\uB99F", 12, "\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5", 6, "\uB9BE\uB9C0\uB9C2", 5, "\uB9CA\uB9CB\uB9CD\uB9D3", 4, "\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED", 6, "\uB9F6\uB9FB", 4, "\uBA02", 5, "\uBA09", 11, "\uBA16", 33, "\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"], ["9141", "\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D", 6, "\uBA66\uBA6A", 5], ["9161", "\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79", 9, "\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D", 5], ["9181", "\uBA93", 20, "\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3", 4, "\uBABA\uBABC\uBABE", 5, "\uBAC5\uBAC6\uBAC7\uBAC9", 14, "\uBADA", 33, "\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05", 7, "\uBB0E\uBB10\uBB12", 5, "\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21", 6], ["9241", "\uBB28\uBB2A\uBB2C", 7, "\uBB37\uBB39\uBB3A\uBB3F", 4, "\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"], ["9261", "\uBB53\uBB55\uBB56\uBB57\uBB59", 7, "\uBB62\uBB64", 7, "\uBB6D", 4], ["9281", "\uBB72", 21, "\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91", 18, "\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD", 6, "\uBBB5\uBBB6\uBBB8", 7, "\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9", 6, "\uBBD1\uBBD2\uBBD4", 35, "\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"], ["9341", "\uBC03", 4, "\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"], ["9361", "\uBC36\uBC37\uBC39", 6, "\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51", 8], ["9381", "\uBC5A\uBC5B\uBC5C\uBC5E", 37, "\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F", 4, "\uBC96\uBC98\uBC9B", 4, "\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9", 6, "\uBCB2\uBCB6", 5, "\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5", 7, "\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD", 22, "\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"], ["9441", "\uBCFE", 5, "\uBD06\uBD08\uBD0A", 5, "\uBD11\uBD12\uBD13\uBD15", 8], ["9461", "\uBD1E", 5, "\uBD25", 6, "\uBD2D", 12], ["9481", "\uBD3A", 5, "\uBD41", 6, "\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51", 6, "\uBD5A", 9, "\uBD65\uBD66\uBD67\uBD69", 22, "\uBD82\uBD83\uBD85\uBD86\uBD8B", 4, "\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D", 6, "\uBDA5", 10, "\uBDB1", 6, "\uBDB9", 24], ["9541", "\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD", 11, "\uBDEA", 5, "\uBDF1"], ["9561", "\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9", 6, "\uBE01\uBE02\uBE04\uBE06", 5, "\uBE0E\uBE0F\uBE11\uBE12\uBE13"], ["9581", "\uBE15", 6, "\uBE1E\uBE20", 35, "\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F", 4, "\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B", 4, "\uBE72\uBE76", 4, "\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85", 6, "\uBE8E\uBE92", 5, "\uBE9A", 13, "\uBEA9", 14], ["9641", "\uBEB8", 23, "\uBED2\uBED3"], ["9661", "\uBED5\uBED6\uBED9", 6, "\uBEE1\uBEE2\uBEE6", 5, "\uBEED", 8], ["9681", "\uBEF6", 10, "\uBF02", 5, "\uBF0A", 13, "\uBF1A\uBF1E", 33, "\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49", 6, "\uBF52\uBF53\uBF54\uBF56", 44], ["9741", "\uBF83", 16, "\uBF95", 8], ["9761", "\uBF9E", 17, "\uBFB1", 7], ["9781", "\uBFB9", 11, "\uBFC6", 5, "\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5", 6, "\uBFDD\uBFDE\uBFE0\uBFE2", 89, "\uC03D\uC03E\uC03F"], ["9841", "\uC040", 16, "\uC052", 5, "\uC059\uC05A\uC05B"], ["9861", "\uC05D\uC05E\uC05F\uC061", 6, "\uC06A", 15], ["9881", "\uC07A", 21, "\uC092\uC093\uC095\uC096\uC097\uC099", 6, "\uC0A2\uC0A4\uC0A6", 5, "\uC0AE\uC0B1\uC0B2\uC0B7", 4, "\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1", 6, "\uC0DA\uC0DE", 5, "\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED", 6, "\uC0F6\uC0F8\uC0FA", 5, "\uC101\uC102\uC103\uC105\uC106\uC107\uC109", 6, "\uC111\uC112\uC113\uC114\uC116", 5, "\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"], ["9941", "\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141", 6, "\uC14A\uC14E", 5, "\uC156\uC157"], ["9961", "\uC159\uC15A\uC15B\uC15D", 6, "\uC166\uC16A", 5, "\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"], ["9981", "\uC17C", 8, "\uC186", 5, "\uC18F\uC191\uC192\uC193\uC195\uC197", 4, "\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1", 11, "\uC1BE", 5, "\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD", 6, "\uC1D5\uC1D6\uC1D9", 6, "\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9", 6, "\uC1F2\uC1F4", 7, "\uC1FE\uC1FF\uC201\uC202\uC203\uC205", 6, "\uC20E\uC210\uC212", 5, "\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"], ["9a41", "\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235", 16], ["9a61", "\uC246\uC247\uC249", 6, "\uC252\uC253\uC255\uC256\uC257\uC259", 6, "\uC261\uC262\uC263\uC264\uC266"], ["9a81", "\uC267", 4, "\uC26E\uC26F\uC271\uC272\uC273\uC275", 6, "\uC27E\uC280\uC282", 5, "\uC28A", 5, "\uC291", 6, "\uC299\uC29A\uC29C\uC29E", 5, "\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE", 5, "\uC2B6\uC2B8\uC2BA", 33, "\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5", 5, "\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301", 6, "\uC30A\uC30B\uC30E\uC30F"], ["9b41", "\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D", 6, "\uC326\uC327\uC32A", 8], ["9b61", "\uC333", 17, "\uC346", 7], ["9b81", "\uC34E", 25, "\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373", 4, "\uC37A\uC37B\uC37E", 5, "\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D", 50, "\uC3C1", 22, "\uC3DA"], ["9c41", "\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3", 4, "\uC3EA\uC3EB\uC3EC\uC3EE", 5, "\uC3F6\uC3F7\uC3F9", 5], ["9c61", "\uC3FF", 8, "\uC409", 6, "\uC411", 9], ["9c81", "\uC41B", 8, "\uC425", 6, "\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435", 6, "\uC43E", 9, "\uC449", 26, "\uC466\uC467\uC469\uC46A\uC46B\uC46D", 6, "\uC476\uC477\uC478\uC47A", 5, "\uC481", 18, "\uC495", 6, "\uC49D", 12], ["9d41", "\uC4AA", 13, "\uC4B9\uC4BA\uC4BB\uC4BD", 8], ["9d61", "\uC4C6", 25], ["9d81", "\uC4E0", 8, "\uC4EA", 5, "\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502", 9, "\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515", 6, "\uC51D", 10, "\uC52A\uC52B\uC52D\uC52E\uC52F\uC531", 6, "\uC53A\uC53C\uC53E", 5, "\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569", 6, "\uC572\uC576", 5, "\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"], ["9e41", "\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1", 7, "\uC5AA", 9, "\uC5B6"], ["9e61", "\uC5B7\uC5BA\uC5BF", 4, "\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9", 6, "\uC5E2\uC5E4\uC5E6\uC5E7"], ["9e81", "\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611", 6, "\uC61A\uC61D", 6, "\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649", 6, "\uC652\uC656", 5, "\uC65E\uC65F\uC661", 10, "\uC66D\uC66E\uC670\uC672", 5, "\uC67A\uC67B\uC67D\uC67E\uC67F\uC681", 6, "\uC68A\uC68C\uC68E", 5, "\uC696\uC697\uC699\uC69A\uC69B\uC69D", 6, "\uC6A6"], ["9f41", "\uC6A8\uC6AA", 5, "\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB", 4, "\uC6C2\uC6C4\uC6C6", 5, "\uC6CE"], ["9f61", "\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5", 6, "\uC6DE\uC6DF\uC6E2", 5, "\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"], ["9f81", "\uC6F3", 4, "\uC6FA\uC6FB\uC6FC\uC6FE", 5, "\uC706\uC707\uC709\uC70A\uC70B\uC70D", 6, "\uC716\uC718\uC71A", 5, "\uC722\uC723\uC725\uC726\uC727\uC729", 6, "\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745", 4, "\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761", 6, "\uC769\uC76A\uC76C", 7, "\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B", 4, "\uC7A2\uC7A7", 4, "\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"], ["a041", "\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2", 5, "\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1", 6, "\uC7D9\uC7DA\uC7DB\uC7DC"], ["a061", "\uC7DE", 5, "\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED", 13], ["a081", "\uC7FB", 4, "\uC802\uC803\uC805\uC806\uC807\uC809\uC80B", 4, "\uC812\uC814\uC817", 4, "\uC81E\uC81F\uC821\uC822\uC823\uC825", 6, "\uC82E\uC830\uC832", 5, "\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841", 6, "\uC84A\uC84B\uC84E", 5, "\uC855", 26, "\uC872\uC873\uC875\uC876\uC877\uC879\uC87B", 4, "\uC882\uC884\uC888\uC889\uC88A\uC88E", 5, "\uC895", 7, "\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"], ["a141", "\uC8A5\uC8A6\uC8A7\uC8A9", 18, "\uC8BE\uC8BF\uC8C0\uC8C1"], ["a161", "\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD", 6, "\uC8D6\uC8D8\uC8DA", 5, "\uC8E2\uC8E3\uC8E5"], ["a181", "\uC8E6", 14, "\uC8F6", 5, "\uC8FE\uC8FF\uC901\uC902\uC903\uC907", 4, "\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 9, "\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"], ["a241", "\uC910\uC912", 5, "\uC919", 18], ["a261", "\uC92D", 6, "\uC935", 18], ["a281", "\uC948", 7, "\uC952\uC953\uC955\uC956\uC957\uC959", 6, "\uC962\uC964", 7, "\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"], ["a341", "\uC971\uC972\uC973\uC975", 6, "\uC97D", 10, "\uC98A\uC98B\uC98D\uC98E\uC98F"], ["a361", "\uC991", 6, "\uC99A\uC99C\uC99E", 16], ["a381", "\uC9AF", 16, "\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB", 4, "\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01", 58, "\uFFE6\uFF3D", 32, "\uFFE3"], ["a441", "\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2", 5, "\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"], ["a461", "\uCA05\uCA06\uCA07\uCA0A\uCA0E", 5, "\uCA15\uCA16\uCA17\uCA19", 12], ["a481", "\uCA26\uCA27\uCA28\uCA2A", 28, "\u3131", 93], ["a541", "\uCA47", 4, "\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55", 6, "\uCA5E\uCA62", 5, "\uCA69\uCA6A"], ["a561", "\uCA6B", 17, "\uCA7E", 5, "\uCA85\uCA86"], ["a581", "\uCA87", 16, "\uCA99", 14, "\u2170", 9], ["a5b0", "\u2160", 9], ["a5c1", "\u0391", 16, "\u03A3", 6], ["a5e1", "\u03B1", 16, "\u03C3", 6], ["a641", "\uCAA8", 19, "\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"], ["a661", "\uCAC6", 5, "\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA", 5, "\uCAE1", 6], ["a681", "\uCAE8\uCAE9\uCAEA\uCAEB\uCAED", 6, "\uCAF5", 18, "\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543", 7], ["a741", "\uCB0B", 4, "\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19", 6, "\uCB22", 7], ["a761", "\uCB2A", 22, "\uCB42\uCB43\uCB44"], ["a781", "\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51", 6, "\uCB5A\uCB5B\uCB5C\uCB5E", 5, "\uCB65", 7, "\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399", 9, "\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0", 9, "\u3380", 4, "\u33BA", 5, "\u3390", 4, "\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"], ["a841", "\uCB6D", 10, "\uCB7A", 14], ["a861", "\uCB89", 18, "\uCB9D", 6], ["a881", "\uCBA4", 19, "\uCBB9", 11, "\xC6\xD0\xAA\u0126"], ["a8a6", "\u0132"], ["a8a8", "\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"], ["a8b1", "\u3260", 27, "\u24D0", 25, "\u2460", 14, "\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"], ["a941", "\uCBC5", 14, "\uCBD5", 10], ["a961", "\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA", 18], ["a981", "\uCBFD", 14, "\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15", 6, "\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200", 27, "\u249C", 25, "\u2474", 14, "\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"], ["aa41", "\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31", 6, "\uCC3A\uCC3F", 4, "\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"], ["aa61", "\uCC4F", 4, "\uCC56\uCC5A", 5, "\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69", 6, "\uCC71\uCC72"], ["aa81", "\uCC73\uCC74\uCC76", 29, "\u3041", 82], ["ab41", "\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1", 6, "\uCCAA\uCCAE", 5, "\uCCB6\uCCB7\uCCB9"], ["ab61", "\uCCBA\uCCBB\uCCBD", 6, "\uCCC6\uCCC8\uCCCA", 5, "\uCCD1\uCCD2\uCCD3\uCCD5", 5], ["ab81", "\uCCDB", 8, "\uCCE5", 6, "\uCCED\uCCEE\uCCEF\uCCF1", 12, "\u30A1", 85], ["ac41", "\uCCFE\uCCFF\uCD00\uCD02", 5, "\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11", 6, "\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"], ["ac61", "\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D", 11, "\uCD3A", 4], ["ac81", "\uCD3F", 28, "\uCD5D\uCD5E\uCD5F\u0410", 5, "\u0401\u0416", 25], ["acd1", "\u0430", 5, "\u0451\u0436", 25], ["ad41", "\uCD61\uCD62\uCD63\uCD65", 6, "\uCD6E\uCD70\uCD72", 5, "\uCD79", 7], ["ad61", "\uCD81", 6, "\uCD89", 10, "\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"], ["ad81", "\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA", 5, "\uCDB1", 18, "\uCDC5"], ["ae41", "\uCDC6", 5, "\uCDCD\uCDCE\uCDCF\uCDD1", 16], ["ae61", "\uCDE2", 5, "\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1", 6, "\uCDFA\uCDFC\uCDFE", 4], ["ae81", "\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D", 6, "\uCE15\uCE16\uCE17\uCE18\uCE1A", 5, "\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"], ["af41", "\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36", 19], ["af61", "\uCE4A", 13, "\uCE5A\uCE5B\uCE5D\uCE5E\uCE62", 5, "\uCE6A\uCE6C"], ["af81", "\uCE6E", 5, "\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D", 6, "\uCE86\uCE88\uCE8A", 5, "\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"], ["b041", "\uCE9A", 5, "\uCEA2\uCEA6", 5, "\uCEAE", 12], ["b061", "\uCEBB", 5, "\uCEC2", 19], ["b081", "\uCED6", 13, "\uCEE6\uCEE7\uCEE9\uCEEA\uCEED", 6, "\uCEF6\uCEFA", 5, "\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10", 7, "\uAC19", 4, "\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"], ["b141", "\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09", 6, "\uCF12\uCF14\uCF16", 5, "\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"], ["b161", "\uCF25", 6, "\uCF2E\uCF32", 5, "\uCF39", 11], ["b181", "\uCF45", 14, "\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D", 6, "\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"], ["b241", "\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79", 6, "\uCF81\uCF82\uCF83\uCF84\uCF86", 5, "\uCF8D"], ["b261", "\uCF8E", 18, "\uCFA2", 5, "\uCFA9"], ["b281", "\uCFAA", 5, "\uCFB1", 18, "\uCFC5", 6, "\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"], ["b341", "\uCFCC", 19, "\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"], ["b361", "\uCFEA", 5, "\uCFF2\uCFF4\uCFF6", 5, "\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005", 5], ["b381", "\uD00B", 5, "\uD012", 5, "\uD019", 19, "\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB", 4, "\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"], ["b441", "\uD02E", 5, "\uD036\uD037\uD039\uD03A\uD03B\uD03D", 6, "\uD046\uD048\uD04A", 5], ["b461", "\uD051\uD052\uD053\uD055\uD056\uD057\uD059", 6, "\uD061", 10, "\uD06E\uD06F"], ["b481", "\uD071\uD072\uD073\uD075", 6, "\uD07E\uD07F\uD080\uD082", 18, "\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB", 4, "\uB2F3\uB2F4\uB2F5\uB2F7", 4, "\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"], ["b541", "\uD095", 14, "\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD", 5], ["b561", "\uD0B3\uD0B6\uD0B8\uD0BA", 5, "\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA", 5, "\uD0D2\uD0D6", 4], ["b581", "\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5", 6, "\uD0EE\uD0F2", 5, "\uD0F9", 11, "\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"], ["b641", "\uD105", 7, "\uD10E", 17], ["b661", "\uD120", 15, "\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"], ["b681", "\uD13F\uD142\uD146", 5, "\uD14E\uD14F\uD151\uD152\uD153\uD155", 6, "\uD15E\uD160\uD162", 5, "\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"], ["b741", "\uD16E", 13, "\uD17D", 6, "\uD185\uD186\uD187\uD189\uD18A"], ["b761", "\uD18B", 20, "\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"], ["b781", "\uD1A9", 6, "\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1", 14, "\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"], ["b841", "\uD1D0", 7, "\uD1D9", 17], ["b861", "\uD1EB", 8, "\uD1F5\uD1F6\uD1F7\uD1F9", 13], ["b881", "\uD208\uD20A", 5, "\uD211", 24, "\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE", 4, "\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"], ["b941", "\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235", 6, "\uD23E\uD240\uD242", 5, "\uD249\uD24A\uD24B\uD24C"], ["b961", "\uD24D", 14, "\uD25D", 6, "\uD265\uD266\uD267\uD268"], ["b981", "\uD269", 22, "\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14", 4, "\uBC1B", 4, "\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"], ["ba41", "\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296", 5, "\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5", 6, "\uD2AD"], ["ba61", "\uD2AE\uD2AF\uD2B0\uD2B2", 5, "\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3", 4, "\uD2CA\uD2CC", 5], ["ba81", "\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD", 6, "\uD2E6", 9, "\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"], ["bb41", "\uD2FB", 4, "\uD302\uD304\uD306", 5, "\uD30F\uD311\uD312\uD313\uD315\uD317", 4, "\uD31E\uD322\uD323"], ["bb61", "\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331", 6, "\uD33A\uD33E", 5, "\uD346\uD347\uD348\uD349"], ["bb81", "\uD34A", 31, "\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"], ["bc41", "\uD36A", 17, "\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"], ["bc61", "\uD388\uD389\uD38A\uD38B\uD38E\uD392", 5, "\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1", 6, "\uD3AA\uD3AC\uD3AE"], ["bc81", "\uD3AF", 4, "\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD", 6, "\uD3C6\uD3C7\uD3CA", 5, "\uD3D1", 5, "\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C", 4, "\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"], ["bd41", "\uD3D7\uD3D9", 7, "\uD3E2\uD3E4", 7, "\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"], ["bd61", "\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402", 5, "\uD409", 13], ["bd81", "\uD417", 5, "\uD41E", 25, "\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"], ["be41", "\uD438", 7, "\uD441\uD442\uD443\uD445", 14], ["be61", "\uD454", 7, "\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465", 7, "\uD46E\uD470\uD471\uD472"], ["be81", "\uD473", 4, "\uD47A\uD47B\uD47D\uD47E\uD481\uD483", 4, "\uD48A\uD48C\uD48E", 5, "\uD495", 8, "\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4", 6, "\uC5CC\uC5CE"], ["bf41", "\uD49E", 10, "\uD4AA", 14], ["bf61", "\uD4B9", 18, "\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"], ["bf81", "\uD4D6", 5, "\uD4DD\uD4DE\uD4E0", 7, "\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1", 6, "\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC", 5, "\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"], ["c041", "\uD4FE", 5, "\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D", 6, "\uD516\uD518", 5], ["c061", "\uD51E", 25], ["c081", "\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545", 6, "\uD54E\uD550\uD552", 5, "\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751", 7, "\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"], ["c141", "\uD564\uD566\uD567\uD56A\uD56C\uD56E", 5, "\uD576\uD577\uD579\uD57A\uD57B\uD57D", 6, "\uD586\uD58A\uD58B"], ["c161", "\uD58C\uD58D\uD58E\uD58F\uD591", 19, "\uD5A6\uD5A7"], ["c181", "\uD5A8", 31, "\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"], ["c241", "\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3", 4, "\uD5DA\uD5DC\uD5DE", 5, "\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"], ["c261", "\uD5EF", 4, "\uD5F6\uD5F8\uD5FA", 5, "\uD602\uD603\uD605\uD606\uD607\uD609", 6, "\uD612"], ["c281", "\uD616", 5, "\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625", 7, "\uD62E", 9, "\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"], ["c341", "\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D", 4], ["c361", "\uD662", 4, "\uD668\uD66A", 5, "\uD672\uD673\uD675", 11], ["c381", "\uD681\uD682\uD684\uD686", 5, "\uD68E\uD68F\uD691\uD692\uD693\uD695", 7, "\uD69E\uD6A0\uD6A2", 5, "\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"], ["c441", "\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1", 7, "\uD6BA\uD6BC", 7, "\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"], ["c461", "\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA", 5, "\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9", 4], ["c481", "\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6", 5, "\uD6FE\uD6FF\uD701\uD702\uD703\uD705", 11, "\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"], ["c541", "\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721", 6, "\uD72A\uD72C\uD72E", 5, "\uD736\uD737\uD739"], ["c561", "\uD73A\uD73B\uD73D", 6, "\uD745\uD746\uD748\uD74A", 5, "\uD752\uD753\uD755\uD75A", 4], ["c581", "\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775", 6, "\uD77E\uD77F\uD780\uD782", 5, "\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"], ["c641", "\uD78D\uD78E\uD78F\uD791", 6, "\uD79A\uD79C\uD79E", 5], ["c6a1", "\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"], ["c7a1", "\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"], ["c8a1", "\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"], ["caa1", "\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"], ["cba1", "\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"], ["cca1", "\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"], ["cda1", "\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"], ["cea1", "\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"], ["cfa1", "\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"], ["d0a1", "\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"], ["d1a1", "\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E", 5, "\u90A3\uF914", 4, "\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"], ["d2a1", "\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928", 4, "\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933", 5, "\u99D1\uF939", 10, "\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A", 7, "\u5AE9\u8A25\u677B\u7D10\uF952", 5, "\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"], ["d3a1", "\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"], ["d4a1", "\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"], ["d5a1", "\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"], ["d6a1", "\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"], ["d7a1", "\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"], ["d8a1", "\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"], ["d9a1", "\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"], ["daa1", "\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"], ["dba1", "\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"], ["dca1", "\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"], ["dda1", "\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"], ["dea1", "\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"], ["dfa1", "\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"], ["e0a1", "\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"], ["e1a1", "\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"], ["e2a1", "\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"], ["e3a1", "\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"], ["e4a1", "\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"], ["e5a1", "\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"], ["e6a1", "\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"], ["e7a1", "\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"], ["e8a1", "\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"], ["e9a1", "\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"], ["eaa1", "\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"], ["eba1", "\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"], ["eca1", "\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"], ["eda1", "\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"], ["eea1", "\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"], ["efa1", "\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"], ["f0a1", "\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"], ["f1a1", "\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"], ["f2a1", "\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"], ["f3a1", "\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"], ["f4a1", "\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"], ["f5a1", "\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"], ["f6a1", "\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"], ["f7a1", "\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"], ["f8a1", "\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"], ["f9a1", "\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"], ["faa1", "\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"], ["fba1", "\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"], ["fca1", "\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"], ["fda1", "\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp950.json var require_cp950 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/cp950.json"(exports2, module2) { module2.exports = [ ["0", "\0", 127], ["a140", "\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"], ["a1a1", "\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62", 4, "\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"], ["a240", "\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581", 7, "\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"], ["a2a1", "\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10", 9, "\u2160", 9, "\u3021", 8, "\u5341\u5344\u5345\uFF21", 25, "\uFF41", 21], ["a340", "\uFF57\uFF58\uFF59\uFF5A\u0391", 16, "\u03A3", 6, "\u03B1", 16, "\u03C3", 6, "\u3105", 10], ["a3a1", "\u3110", 25, "\u02D9\u02C9\u02CA\u02C7\u02CB"], ["a3e1", "\u20AC"], ["a440", "\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"], ["a4a1", "\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"], ["a540", "\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"], ["a5a1", "\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"], ["a640", "\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"], ["a6a1", "\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"], ["a740", "\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"], ["a7a1", "\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"], ["a840", "\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"], ["a8a1", "\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"], ["a940", "\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"], ["a9a1", "\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"], ["aa40", "\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"], ["aaa1", "\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"], ["ab40", "\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"], ["aba1", "\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"], ["ac40", "\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"], ["aca1", "\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"], ["ad40", "\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"], ["ada1", "\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"], ["ae40", "\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"], ["aea1", "\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"], ["af40", "\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"], ["afa1", "\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"], ["b040", "\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"], ["b0a1", "\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"], ["b140", "\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"], ["b1a1", "\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"], ["b240", "\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"], ["b2a1", "\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"], ["b340", "\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"], ["b3a1", "\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"], ["b440", "\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"], ["b4a1", "\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"], ["b540", "\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"], ["b5a1", "\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"], ["b640", "\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"], ["b6a1", "\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"], ["b740", "\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"], ["b7a1", "\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"], ["b840", "\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"], ["b8a1", "\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"], ["b940", "\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"], ["b9a1", "\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"], ["ba40", "\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"], ["baa1", "\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"], ["bb40", "\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"], ["bba1", "\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"], ["bc40", "\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"], ["bca1", "\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"], ["bd40", "\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"], ["bda1", "\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"], ["be40", "\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"], ["bea1", "\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"], ["bf40", "\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"], ["bfa1", "\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"], ["c040", "\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"], ["c0a1", "\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"], ["c140", "\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"], ["c1a1", "\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"], ["c240", "\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"], ["c2a1", "\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"], ["c340", "\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"], ["c3a1", "\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"], ["c440", "\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"], ["c4a1", "\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"], ["c540", "\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"], ["c5a1", "\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"], ["c640", "\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"], ["c940", "\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"], ["c9a1", "\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"], ["ca40", "\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"], ["caa1", "\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"], ["cb40", "\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"], ["cba1", "\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"], ["cc40", "\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"], ["cca1", "\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"], ["cd40", "\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"], ["cda1", "\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"], ["ce40", "\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"], ["cea1", "\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"], ["cf40", "\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"], ["cfa1", "\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"], ["d040", "\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"], ["d0a1", "\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"], ["d140", "\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"], ["d1a1", "\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"], ["d240", "\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"], ["d2a1", "\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"], ["d340", "\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"], ["d3a1", "\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"], ["d440", "\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"], ["d4a1", "\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"], ["d540", "\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"], ["d5a1", "\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"], ["d640", "\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"], ["d6a1", "\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"], ["d740", "\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"], ["d7a1", "\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"], ["d840", "\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"], ["d8a1", "\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"], ["d940", "\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"], ["d9a1", "\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"], ["da40", "\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"], ["daa1", "\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"], ["db40", "\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"], ["dba1", "\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"], ["dc40", "\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"], ["dca1", "\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"], ["dd40", "\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"], ["dda1", "\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"], ["de40", "\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"], ["dea1", "\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"], ["df40", "\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"], ["dfa1", "\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"], ["e040", "\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"], ["e0a1", "\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"], ["e140", "\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"], ["e1a1", "\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"], ["e240", "\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"], ["e2a1", "\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"], ["e340", "\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"], ["e3a1", "\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"], ["e440", "\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"], ["e4a1", "\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"], ["e540", "\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"], ["e5a1", "\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"], ["e640", "\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"], ["e6a1", "\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"], ["e740", "\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"], ["e7a1", "\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"], ["e840", "\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"], ["e8a1", "\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"], ["e940", "\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"], ["e9a1", "\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"], ["ea40", "\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"], ["eaa1", "\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"], ["eb40", "\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"], ["eba1", "\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"], ["ec40", "\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"], ["eca1", "\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"], ["ed40", "\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"], ["eda1", "\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"], ["ee40", "\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"], ["eea1", "\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"], ["ef40", "\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"], ["efa1", "\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"], ["f040", "\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"], ["f0a1", "\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"], ["f140", "\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"], ["f1a1", "\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"], ["f240", "\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"], ["f2a1", "\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"], ["f340", "\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"], ["f3a1", "\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"], ["f440", "\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"], ["f4a1", "\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"], ["f540", "\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"], ["f5a1", "\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"], ["f640", "\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"], ["f6a1", "\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"], ["f740", "\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"], ["f7a1", "\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"], ["f840", "\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"], ["f8a1", "\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"], ["f940", "\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"], ["f9a1", "\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/big5-added.json var require_big5_added = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/tables/big5-added.json"(exports2, module2) { module2.exports = [ ["8740", "\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"], ["8767", "\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"], ["87a1", "\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"], ["8840", "\u31C0", 4, "\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"], ["88a1", "\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"], ["8940", "\u{2A3A9}\u{21145}"], ["8943", "\u650A"], ["8946", "\u4E3D\u6EDD\u9D4E\u91DF"], ["894c", "\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"], ["89a1", "\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"], ["89ab", "\u918C\u78B8\u915E\u80BC"], ["89b0", "\u8D0B\u80F6\u{209E7}"], ["89b5", "\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"], ["89c1", "\u6E9A\u823E\u7519"], ["89c5", "\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"], ["8a40", "\u{27D84}\u5525"], ["8a43", "\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"], ["8a64", "\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"], ["8a76", "\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"], ["8aa1", "\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"], ["8aac", "\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"], ["8ab2", "\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"], ["8abb", "\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"], ["8ac9", "\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"], ["8ace", "\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"], ["8adf", "\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"], ["8af6", "\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"], ["8b40", "\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"], ["8b55", "\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"], ["8ba1", "\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"], ["8bde", "\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"], ["8c40", "\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"], ["8ca1", "\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"], ["8ca7", "\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"], ["8cc9", "\u9868\u676B\u4276\u573D"], ["8cce", "\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"], ["8ce6", "\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"], ["8d40", "\u{20B9F}"], ["8d42", "\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"], ["8da1", "\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"], ["8e40", "\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"], ["8ea1", "\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"], ["8f40", "\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"], ["8fa1", "\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"], ["9040", "\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"], ["90a1", "\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"], ["9140", "\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"], ["91a1", "\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"], ["9240", "\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"], ["92a1", "\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"], ["9340", "\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"], ["93a1", "\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"], ["9440", "\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"], ["94a1", "\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"], ["9540", "\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"], ["95a1", "\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"], ["9640", "\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"], ["96a1", "\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"], ["9740", "\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"], ["97a1", "\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"], ["9840", "\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"], ["98a1", "\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"], ["9940", "\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"], ["99a1", "\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"], ["9a40", "\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"], ["9aa1", "\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"], ["9b40", "\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"], ["9b62", "\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"], ["9ba1", "\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"], ["9c40", "\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"], ["9ca1", "\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"], ["9d40", "\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"], ["9da1", "\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"], ["9e40", "\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"], ["9ea1", "\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"], ["9ead", "\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"], ["9ec5", "\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"], ["9ef5", "\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"], ["9f40", "\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"], ["9f4f", "\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"], ["9fa1", "\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"], ["9fae", "\u9159\u9681\u915C"], ["9fb2", "\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"], ["9fc1", "\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"], ["9fc9", "\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"], ["9fdb", "\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"], ["9fe7", "\u6BFA\u8818\u7F78"], ["9feb", "\u5620\u{2A64A}\u8E77\u9F53"], ["9ff0", "\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"], ["a040", "\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"], ["a055", "\u{2183B}\u{26E05}"], ["a058", "\u8A7E\u{2251B}"], ["a05b", "\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"], ["a063", "\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"], ["a073", "\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"], ["a0a1", "\u5D57\u{28BC2}\u8FDA\u{28E39}"], ["a0a6", "\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"], ["a0ae", "\u77FE"], ["a0b0", "\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"], ["a0d4", "\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"], ["a0e2", "\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"], ["a3c0", "\u2400", 31, "\u2421"], ["c6a1", "\u2460", 9, "\u2474", 9, "\u2170", 9, "\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041", 23], ["c740", "\u3059", 58, "\u30A1\u30A2\u30A3\u30A4"], ["c7a1", "\u30A5", 81, "\u0410", 5, "\u0401\u0416", 4], ["c840", "\u041B", 26, "\u0451\u0436", 25, "\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"], ["c8a1", "\u9FB0\u5188\u9FB1\u{27607}"], ["c8cd", "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"], ["c8f5", "\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"], ["f9fe", "\uFFED"], ["fa40", "\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"], ["faa1", "\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"], ["fb40", "\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"], ["fba1", "\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"], ["fc40", "\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"], ["fca1", "\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"], ["fd40", "\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"], ["fda1", "\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"], ["fe40", "\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"], ["fea1", "\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/dbcs-data.js var require_dbcs_data = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/dbcs-data.js"(exports2, module2) { "use strict"; module2.exports = { // == Japanese/ShiftJIS ==================================================== // All japanese encodings are based on JIS X set of standards: // JIS X 0201 - Single-byte encoding of ASCII + ¥ + Kana chars at 0xA1-0xDF. // JIS X 0208 - Main set of 6879 characters, placed in 94x94 plane, to be encoded by 2 bytes. // Has several variations in 1978, 1983, 1990 and 1997. // JIS X 0212 - Supplementary plane of 6067 chars in 94x94 plane. 1990. Effectively dead. // JIS X 0213 - Extension and modern replacement of 0208 and 0212. Total chars: 11233. // 2 planes, first is superset of 0208, second - revised 0212. // Introduced in 2000, revised 2004. Some characters are in Unicode Plane 2 (0x2xxxx) // Byte encodings are: // * Shift_JIS: Compatible with 0201, uses not defined chars in top half as lead bytes for double-byte // encoding of 0208. Lead byte ranges: 0x81-0x9F, 0xE0-0xEF; Trail byte ranges: 0x40-0x7E, 0x80-0x9E, 0x9F-0xFC. // Windows CP932 is a superset of Shift_JIS. Some companies added more chars, notably KDDI. // * EUC-JP: Up to 3 bytes per character. Used mostly on *nixes. // 0x00-0x7F - lower part of 0201 // 0x8E, 0xA1-0xDF - upper part of 0201 // (0xA1-0xFE)x2 - 0208 plane (94x94). // 0x8F, (0xA1-0xFE)x2 - 0212 plane (94x94). // * JIS X 208: 7-bit, direct encoding of 0208. Byte ranges: 0x21-0x7E (94 values). Uncommon. // Used as-is in ISO2022 family. // * ISO2022-JP: Stateful encoding, with escape sequences to switch between ASCII, // 0201-1976 Roman, 0208-1978, 0208-1983. // * ISO2022-JP-1: Adds esc seq for 0212-1990. // * ISO2022-JP-2: Adds esc seq for GB2313-1980, KSX1001-1992, ISO8859-1, ISO8859-7. // * ISO2022-JP-3: Adds esc seq for 0201-1976 Kana set, 0213-2000 Planes 1, 2. // * ISO2022-JP-2004: Adds 0213-2004 Plane 1. // // After JIS X 0213 appeared, Shift_JIS-2004, EUC-JISX0213 and ISO2022-JP-2004 followed, with just changing the planes. // // Overall, it seems that it's a mess :( http://www8.plala.or.jp/tkubota1/unicode-symbols-map2.html "shiftjis": { type: "_dbcs", table: /* @__PURE__ */ __name(function() { return require_shiftjis(); }, "table"), encodeAdd: { "\xA5": 92, "\u203E": 126 }, encodeSkipVals: [{ from: 60736, to: 63808 }] }, "csshiftjis": "shiftjis", "mskanji": "shiftjis", "sjis": "shiftjis", "windows31j": "shiftjis", "ms31j": "shiftjis", "xsjis": "shiftjis", "windows932": "shiftjis", "ms932": "shiftjis", "932": "shiftjis", "cp932": "shiftjis", "eucjp": { type: "_dbcs", table: /* @__PURE__ */ __name(function() { return require_eucjp(); }, "table"), encodeAdd: { "\xA5": 92, "\u203E": 126 } }, // TODO: KDDI extension to Shift_JIS // TODO: IBM CCSID 942 = CP932, but F0-F9 custom chars and other char changes. // TODO: IBM CCSID 943 = Shift_JIS = CP932 with original Shift_JIS lower 128 chars. // == Chinese/GBK ========================================================== // http://en.wikipedia.org/wiki/GBK // We mostly implement W3C recommendation: https://www.w3.org/TR/encoding/#gbk-encoder // Oldest GB2312 (1981, ~7600 chars) is a subset of CP936 "gb2312": "cp936", "gb231280": "cp936", "gb23121980": "cp936", "csgb2312": "cp936", "csiso58gb231280": "cp936", "euccn": "cp936", // Microsoft's CP936 is a subset and approximation of GBK. "windows936": "cp936", "ms936": "cp936", "936": "cp936", "cp936": { type: "_dbcs", table: /* @__PURE__ */ __name(function() { return require_cp936(); }, "table") }, // GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other. "gbk": { type: "_dbcs", table: /* @__PURE__ */ __name(function() { return require_cp936().concat(require_gbk_added()); }, "table") }, "xgbk": "gbk", "isoir58": "gbk", // GB18030 is an algorithmic extension of GBK. // Main source: https://www.w3.org/TR/encoding/#gbk-encoder // http://icu-project.org/docs/papers/gb18030.html // http://source.icu-project.org/repos/icu/data/trunk/charset/data/xml/gb-18030-2000.xml // http://www.khngai.com/chinese/charmap/tblgbk.php?page=0 "gb18030": { type: "_dbcs", table: /* @__PURE__ */ __name(function() { return require_cp936().concat(require_gbk_added()); }, "table"), gb18030: /* @__PURE__ */ __name(function() { return require_gb18030_ranges(); }, "gb18030"), encodeSkipVals: [128], encodeAdd: { "\u20AC": 41699 } }, "chinese": "gb18030", // == Korean =============================================================== // EUC-KR, KS_C_5601 and KS X 1001 are exactly the same. "windows949": "cp949", "ms949": "cp949", "949": "cp949", "cp949": { type: "_dbcs", table: /* @__PURE__ */ __name(function() { return require_cp949(); }, "table") }, "cseuckr": "cp949", "csksc56011987": "cp949", "euckr": "cp949", "isoir149": "cp949", "korean": "cp949", "ksc56011987": "cp949", "ksc56011989": "cp949", "ksc5601": "cp949", // == Big5/Taiwan/Hong Kong ================================================ // There are lots of tables for Big5 and cp950. Please see the following links for history: // http://moztw.org/docs/big5/ http://www.haible.de/bruno/charsets/conversion-tables/Big5.html // Variations, in roughly number of defined chars: // * Windows CP 950: Microsoft variant of Big5. Canonical: http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP950.TXT // * Windows CP 951: Microsoft variant of Big5-HKSCS-2001. Seems to be never public. http://me.abelcheung.org/articles/research/what-is-cp951/ // * Big5-2003 (Taiwan standard) almost superset of cp950. // * Unicode-at-on (UAO) / Mozilla 1.8. Falling out of use on the Web. Not supported by other browsers. // * Big5-HKSCS (-2001, -2004, -2008). Hong Kong standard. // many unicode code points moved from PUA to Supplementary plane (U+2XXXX) over the years. // Plus, it has 4 combining sequences. // Seems that Mozilla refused to support it for 10 yrs. https://bugzilla.mozilla.org/show_bug.cgi?id=162431 https://bugzilla.mozilla.org/show_bug.cgi?id=310299 // because big5-hkscs is the only encoding to include astral characters in non-algorithmic way. // Implementations are not consistent within browsers; sometimes labeled as just big5. // MS Internet Explorer switches from big5 to big5-hkscs when a patch applied. // Great discussion & recap of what's going on https://bugzilla.mozilla.org/show_bug.cgi?id=912470#c31 // In the encoder, it might make sense to support encoding old PUA mappings to Big5 bytes seq-s. // Official spec: http://www.ogcio.gov.hk/en/business/tech_promotion/ccli/terms/doc/2003cmp_2008.txt // http://www.ogcio.gov.hk/tc/business/tech_promotion/ccli/terms/doc/hkscs-2008-big5-iso.txt // // Current understanding of how to deal with Big5(-HKSCS) is in the Encoding Standard, http://encoding.spec.whatwg.org/#big5-encoder // Unicode mapping (http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/BIG5.TXT) is said to be wrong. "windows950": "cp950", "ms950": "cp950", "950": "cp950", "cp950": { type: "_dbcs", table: /* @__PURE__ */ __name(function() { return require_cp950(); }, "table") }, // Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus. "big5": "big5hkscs", "big5hkscs": { type: "_dbcs", table: /* @__PURE__ */ __name(function() { return require_cp950().concat(require_big5_added()); }, "table"), encodeSkipVals: [41676] }, "cnbig5": "big5hkscs", "csbig5": "big5hkscs", "xxbig5": "big5hkscs" }; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/index.js var require_encodings = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/encodings/index.js"(exports2, module2) { "use strict"; var modules = [ require_internal(), require_utf16(), require_utf7(), require_sbcs_codec(), require_sbcs_data(), require_sbcs_data_generated(), require_dbcs_codec(), require_dbcs_data() ]; for (i = 0; i < modules.length; i++) { module2 = modules[i]; for (enc in module2) if (Object.prototype.hasOwnProperty.call(module2, enc)) exports2[enc] = module2[enc]; } var module2; var enc; var i; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/streams.js var require_streams = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/streams.js"(exports2, module2) { "use strict"; var Buffer2 = require("buffer").Buffer; var Transform = require("stream").Transform; module2.exports = function(iconv) { iconv.encodeStream = /* @__PURE__ */ __name(function encodeStream(encoding, options) { return new IconvLiteEncoderStream(iconv.getEncoder(encoding, options), options); }, "encodeStream"); iconv.decodeStream = /* @__PURE__ */ __name(function decodeStream(encoding, options) { return new IconvLiteDecoderStream(iconv.getDecoder(encoding, options), options); }, "decodeStream"); iconv.supportsStreams = true; iconv.IconvLiteEncoderStream = IconvLiteEncoderStream; iconv.IconvLiteDecoderStream = IconvLiteDecoderStream; iconv._collect = IconvLiteDecoderStream.prototype.collect; }; function IconvLiteEncoderStream(conv, options) { this.conv = conv; options = options || {}; options.decodeStrings = false; Transform.call(this, options); } __name(IconvLiteEncoderStream, "IconvLiteEncoderStream"); IconvLiteEncoderStream.prototype = Object.create(Transform.prototype, { constructor: { value: IconvLiteEncoderStream } }); IconvLiteEncoderStream.prototype._transform = function(chunk, encoding, done) { if (typeof chunk != "string") return done(new Error("Iconv encoding stream needs strings as its input.")); try { var res = this.conv.write(chunk); if (res && res.length) this.push(res); done(); } catch (e) { done(e); } }; IconvLiteEncoderStream.prototype._flush = function(done) { try { var res = this.conv.end(); if (res && res.length) this.push(res); done(); } catch (e) { done(e); } }; IconvLiteEncoderStream.prototype.collect = function(cb) { var chunks = []; this.on("error", cb); this.on("data", function(chunk) { chunks.push(chunk); }); this.on("end", function() { cb(null, Buffer2.concat(chunks)); }); return this; }; function IconvLiteDecoderStream(conv, options) { this.conv = conv; options = options || {}; options.encoding = this.encoding = "utf8"; Transform.call(this, options); } __name(IconvLiteDecoderStream, "IconvLiteDecoderStream"); IconvLiteDecoderStream.prototype = Object.create(Transform.prototype, { constructor: { value: IconvLiteDecoderStream } }); IconvLiteDecoderStream.prototype._transform = function(chunk, encoding, done) { if (!Buffer2.isBuffer(chunk)) return done(new Error("Iconv decoding stream needs buffers as its input.")); try { var res = this.conv.write(chunk); if (res && res.length) this.push(res, this.encoding); done(); } catch (e) { done(e); } }; IconvLiteDecoderStream.prototype._flush = function(done) { try { var res = this.conv.end(); if (res && res.length) this.push(res, this.encoding); done(); } catch (e) { done(e); } }; IconvLiteDecoderStream.prototype.collect = function(cb) { var res = ""; this.on("error", cb); this.on("data", function(chunk) { res += chunk; }); this.on("end", function() { cb(null, res); }); return this; }; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/extend-node.js var require_extend_node = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/extend-node.js"(exports2, module2) { "use strict"; var Buffer2 = require("buffer").Buffer; module2.exports = function(iconv) { var original = void 0; iconv.supportsNodeEncodingsExtension = !(Buffer2.from || new Buffer2(0) instanceof Uint8Array); iconv.extendNodeEncodings = /* @__PURE__ */ __name(function extendNodeEncodings() { if (original) return; original = {}; if (!iconv.supportsNodeEncodingsExtension) { console.error("ACTION NEEDED: require('iconv-lite').extendNodeEncodings() is not supported in your version of Node"); console.error("See more info at https://github.com/ashtuchkin/iconv-lite/wiki/Node-v4-compatibility"); return; } var nodeNativeEncodings = { "hex": true, "utf8": true, "utf-8": true, "ascii": true, "binary": true, "base64": true, "ucs2": true, "ucs-2": true, "utf16le": true, "utf-16le": true }; Buffer2.isNativeEncoding = function(enc) { return enc && nodeNativeEncodings[enc.toLowerCase()]; }; var SlowBuffer = require("buffer").SlowBuffer; original.SlowBufferToString = SlowBuffer.prototype.toString; SlowBuffer.prototype.toString = function(encoding, start, end) { encoding = String(encoding || "utf8").toLowerCase(); if (Buffer2.isNativeEncoding(encoding)) return original.SlowBufferToString.call(this, encoding, start, end); if (typeof start == "undefined") start = 0; if (typeof end == "undefined") end = this.length; return iconv.decode(this.slice(start, end), encoding); }; original.SlowBufferWrite = SlowBuffer.prototype.write; SlowBuffer.prototype.write = function(string, offset, length, encoding) { if (isFinite(offset)) { if (!isFinite(length)) { encoding = length; length = void 0; } } else { var swap = encoding; encoding = offset; offset = length; length = swap; } offset = +offset || 0; var remaining = this.length - offset; if (!length) { length = remaining; } else { length = +length; if (length > remaining) { length = remaining; } } encoding = String(encoding || "utf8").toLowerCase(); if (Buffer2.isNativeEncoding(encoding)) return original.SlowBufferWrite.call(this, string, offset, length, encoding); if (string.length > 0 && (length < 0 || offset < 0)) throw new RangeError("attempt to write beyond buffer bounds"); var buf = iconv.encode(string, encoding); if (buf.length < length) length = buf.length; buf.copy(this, offset, 0, length); return length; }; original.BufferIsEncoding = Buffer2.isEncoding; Buffer2.isEncoding = function(encoding) { return Buffer2.isNativeEncoding(encoding) || iconv.encodingExists(encoding); }; original.BufferByteLength = Buffer2.byteLength; Buffer2.byteLength = SlowBuffer.byteLength = function(str, encoding) { encoding = String(encoding || "utf8").toLowerCase(); if (Buffer2.isNativeEncoding(encoding)) return original.BufferByteLength.call(this, str, encoding); return iconv.encode(str, encoding).length; }; original.BufferToString = Buffer2.prototype.toString; Buffer2.prototype.toString = function(encoding, start, end) { encoding = String(encoding || "utf8").toLowerCase(); if (Buffer2.isNativeEncoding(encoding)) return original.BufferToString.call(this, encoding, start, end); if (typeof start == "undefined") start = 0; if (typeof end == "undefined") end = this.length; return iconv.decode(this.slice(start, end), encoding); }; original.BufferWrite = Buffer2.prototype.write; Buffer2.prototype.write = function(string, offset, length, encoding) { var _offset = offset, _length = length, _encoding = encoding; if (isFinite(offset)) { if (!isFinite(length)) { encoding = length; length = void 0; } } else { var swap = encoding; encoding = offset; offset = length; length = swap; } encoding = String(encoding || "utf8").toLowerCase(); if (Buffer2.isNativeEncoding(encoding)) return original.BufferWrite.call(this, string, _offset, _length, _encoding); offset = +offset || 0; var remaining = this.length - offset; if (!length) { length = remaining; } else { length = +length; if (length > remaining) { length = remaining; } } if (string.length > 0 && (length < 0 || offset < 0)) throw new RangeError("attempt to write beyond buffer bounds"); var buf = iconv.encode(string, encoding); if (buf.length < length) length = buf.length; buf.copy(this, offset, 0, length); return length; }; if (iconv.supportsStreams) { var Readable = require("stream").Readable; original.ReadableSetEncoding = Readable.prototype.setEncoding; Readable.prototype.setEncoding = /* @__PURE__ */ __name(function setEncoding(enc, options) { this._readableState.decoder = iconv.getDecoder(enc, options); this._readableState.encoding = enc; }, "setEncoding"); Readable.prototype.collect = iconv._collect; } }, "extendNodeEncodings"); iconv.undoExtendNodeEncodings = /* @__PURE__ */ __name(function undoExtendNodeEncodings() { if (!iconv.supportsNodeEncodingsExtension) return; if (!original) throw new Error("require('iconv-lite').undoExtendNodeEncodings(): Nothing to undo; extendNodeEncodings() is not called."); delete Buffer2.isNativeEncoding; var SlowBuffer = require("buffer").SlowBuffer; SlowBuffer.prototype.toString = original.SlowBufferToString; SlowBuffer.prototype.write = original.SlowBufferWrite; Buffer2.isEncoding = original.BufferIsEncoding; Buffer2.byteLength = original.BufferByteLength; Buffer2.prototype.toString = original.BufferToString; Buffer2.prototype.write = original.BufferWrite; if (iconv.supportsStreams) { var Readable = require("stream").Readable; Readable.prototype.setEncoding = original.ReadableSetEncoding; delete Readable.prototype.collect; } original = void 0; }, "undoExtendNodeEncodings"); }; } }); // ../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/index.js var require_lib2 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.4.24/node_modules/iconv-lite/lib/index.js"(exports2, module2) { "use strict"; var Buffer2 = require_safer().Buffer; var bomHandling = require_bom_handling(); var iconv = module2.exports; iconv.encodings = null; iconv.defaultCharUnicode = "\uFFFD"; iconv.defaultCharSingleByte = "?"; iconv.encode = /* @__PURE__ */ __name(function encode(str, encoding, options) { str = "" + (str || ""); var encoder = iconv.getEncoder(encoding, options); var res = encoder.write(str); var trail = encoder.end(); return trail && trail.length > 0 ? Buffer2.concat([res, trail]) : res; }, "encode"); iconv.decode = /* @__PURE__ */ __name(function decode(buf, encoding, options) { if (typeof buf === "string") { if (!iconv.skipDecodeWarning) { console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"); iconv.skipDecodeWarning = true; } buf = Buffer2.from("" + (buf || ""), "binary"); } var decoder = iconv.getDecoder(encoding, options); var res = decoder.write(buf); var trail = decoder.end(); return trail ? res + trail : res; }, "decode"); iconv.encodingExists = /* @__PURE__ */ __name(function encodingExists(enc) { try { iconv.getCodec(enc); return true; } catch (e) { return false; } }, "encodingExists"); iconv.toEncoding = iconv.encode; iconv.fromEncoding = iconv.decode; iconv._codecDataCache = {}; iconv.getCodec = /* @__PURE__ */ __name(function getCodec(encoding) { if (!iconv.encodings) iconv.encodings = require_encodings(); var enc = iconv._canonicalizeEncoding(encoding); var codecOptions = {}; while (true) { var codec = iconv._codecDataCache[enc]; if (codec) return codec; var codecDef = iconv.encodings[enc]; switch (typeof codecDef) { case "string": enc = codecDef; break; case "object": for (var key in codecDef) codecOptions[key] = codecDef[key]; if (!codecOptions.encodingName) codecOptions.encodingName = enc; enc = codecDef.type; break; case "function": if (!codecOptions.encodingName) codecOptions.encodingName = enc; codec = new codecDef(codecOptions, iconv); iconv._codecDataCache[codecOptions.encodingName] = codec; return codec; default: throw new Error("Encoding not recognized: '" + encoding + "' (searched as: '" + enc + "')"); } } }, "getCodec"); iconv._canonicalizeEncoding = function(encoding) { return ("" + encoding).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g, ""); }; iconv.getEncoder = /* @__PURE__ */ __name(function getEncoder(encoding, options) { var codec = iconv.getCodec(encoding), encoder = new codec.encoder(options, codec); if (codec.bomAware && options && options.addBOM) encoder = new bomHandling.PrependBOM(encoder, options); return encoder; }, "getEncoder"); iconv.getDecoder = /* @__PURE__ */ __name(function getDecoder(encoding, options) { var codec = iconv.getCodec(encoding), decoder = new codec.decoder(options, codec); if (codec.bomAware && !(options && options.stripBOM === false)) decoder = new bomHandling.StripBOM(decoder, options); return decoder; }, "getDecoder"); var nodeVer = typeof process !== "undefined" && process.versions && process.versions.node; if (nodeVer) { nodeVerArr = nodeVer.split(".").map(Number); if (nodeVerArr[0] > 0 || nodeVerArr[1] >= 10) { require_streams()(iconv); } require_extend_node()(iconv); } var nodeVerArr; if (false) { console.error("iconv-lite warning: javascript files use encoding different from utf-8. See https://github.com/ashtuchkin/iconv-lite/wiki/Javascript-source-file-encodings for more info."); } } }); // ../../node_modules/.pnpm/unpipe@1.0.0/node_modules/unpipe/index.js var require_unpipe = __commonJS({ "../../node_modules/.pnpm/unpipe@1.0.0/node_modules/unpipe/index.js"(exports2, module2) { "use strict"; module2.exports = unpipe; function hasPipeDataListeners(stream) { var listeners = stream.listeners("data"); for (var i = 0; i < listeners.length; i++) { if (listeners[i].name === "ondata") { return true; } } return false; } __name(hasPipeDataListeners, "hasPipeDataListeners"); function unpipe(stream) { if (!stream) { throw new TypeError("argument stream is required"); } if (typeof stream.unpipe === "function") { stream.unpipe(); return; } if (!hasPipeDataListeners(stream)) { return; } var listener; var listeners = stream.listeners("close"); for (var i = 0; i < listeners.length; i++) { listener = listeners[i]; if (listener.name !== "cleanup" && listener.name !== "onclose") { continue; } listener.call(stream); } } __name(unpipe, "unpipe"); } }); // ../../node_modules/.pnpm/raw-body@2.5.3/node_modules/raw-body/index.js var require_raw_body = __commonJS({ "../../node_modules/.pnpm/raw-body@2.5.3/node_modules/raw-body/index.js"(exports2, module2) { "use strict"; var asyncHooks = tryRequireAsyncHooks(); var bytes = require_bytes(); var createError = require_http_errors(); var iconv = require_lib2(); var unpipe = require_unpipe(); module2.exports = getRawBody; var ICONV_ENCODING_MESSAGE_REGEXP = /^Encoding not recognized: /; function getDecoder(encoding) { if (!encoding) return null; try { return iconv.getDecoder(encoding); } catch (e) { if (!ICONV_ENCODING_MESSAGE_REGEXP.test(e.message)) throw e; throw createError(415, "specified encoding unsupported", { encoding, type: "encoding.unsupported" }); } } __name(getDecoder, "getDecoder"); function getRawBody(stream, options, callback) { var done = callback; var opts = options || {}; if (stream === void 0) { throw new TypeError("argument stream is required"); } else if (typeof stream !== "object" || stream === null || typeof stream.on !== "function") { throw new TypeError("argument stream must be a stream"); } if (options === true || typeof options === "string") { opts = { encoding: options }; } if (typeof options === "function") { done = options; opts = {}; } if (done !== void 0 && typeof done !== "function") { throw new TypeError("argument callback must be a function"); } if (!done && !global.Promise) { throw new TypeError("argument callback is required"); } var encoding = opts.encoding !== true ? opts.encoding : "utf-8"; var limit = bytes.parse(opts.limit); var length = opts.length != null && !isNaN(opts.length) ? parseInt(opts.length, 10) : null; if (done) { return readStream(stream, encoding, length, limit, wrap(done)); } return new Promise(/* @__PURE__ */ __name(function executor(resolve, reject) { readStream(stream, encoding, length, limit, /* @__PURE__ */ __name(function onRead(err, buf) { if (err) return reject(err); resolve(buf); }, "onRead")); }, "executor")); } __name(getRawBody, "getRawBody"); function halt(stream) { unpipe(stream); if (typeof stream.pause === "function") { stream.pause(); } } __name(halt, "halt"); function readStream(stream, encoding, length, limit, callback) { var complete = false; var sync = true; if (limit !== null && length !== null && length > limit) { return done(createError(413, "request entity too large", { expected: length, length, limit, type: "entity.too.large" })); } var state = stream._readableState; if (stream._decoder || state && (state.encoding || state.decoder)) { return done(createError(500, "stream encoding should not be set", { type: "stream.encoding.set" })); } if (typeof stream.readable !== "undefined" && !stream.readable) { return done(createError(500, "stream is not readable", { type: "stream.not.readable" })); } var received = 0; var decoder; try { decoder = getDecoder(encoding); } catch (err) { return done(err); } var buffer = decoder ? "" : []; stream.on("aborted", onAborted); stream.on("close", cleanup); stream.on("data", onData); stream.on("end", onEnd); stream.on("error", onEnd); sync = false; function done() { var args = new Array(arguments.length); for (var i = 0; i < args.length; i++) { args[i] = arguments[i]; } complete = true; if (sync) { process.nextTick(invokeCallback); } else { invokeCallback(); } function invokeCallback() { cleanup(); if (args[0]) { halt(stream); } callback.apply(null, args); } __name(invokeCallback, "invokeCallback"); } __name(done, "done"); function onAborted() { if (complete) return; done(createError(400, "request aborted", { code: "ECONNABORTED", expected: length, length, received, type: "request.aborted" })); } __name(onAborted, "onAborted"); function onData(chunk) { if (complete) return; received += chunk.length; if (limit !== null && received > limit) { done(createError(413, "request entity too large", { limit, received, type: "entity.too.large" })); } else if (decoder) { buffer += decoder.write(chunk); } else { buffer.push(chunk); } } __name(onData, "onData"); function onEnd(err) { if (complete) return; if (err) return done(err); if (length !== null && received !== length) { done(createError(400, "request size did not match content length", { expected: length, length, received, type: "request.size.invalid" })); } else { var string = decoder ? buffer + (decoder.end() || "") : Buffer.concat(buffer); done(null, string); } } __name(onEnd, "onEnd"); function cleanup() { buffer = null; stream.removeListener("aborted", onAborted); stream.removeListener("data", onData); stream.removeListener("end", onEnd); stream.removeListener("error", onEnd); stream.removeListener("close", cleanup); } __name(cleanup, "cleanup"); } __name(readStream, "readStream"); function tryRequireAsyncHooks() { try { return require("async_hooks"); } catch (e) { return {}; } } __name(tryRequireAsyncHooks, "tryRequireAsyncHooks"); function wrap(fn) { var res; if (asyncHooks.AsyncResource) { res = new asyncHooks.AsyncResource(fn.name || "bound-anonymous-fn"); } if (!res || !res.runInAsyncScope) { return fn; } return res.runInAsyncScope.bind(res, fn, null); } __name(wrap, "wrap"); } }); // ../../node_modules/.pnpm/ee-first@1.1.1/node_modules/ee-first/index.js var require_ee_first = __commonJS({ "../../node_modules/.pnpm/ee-first@1.1.1/node_modules/ee-first/index.js"(exports2, module2) { "use strict"; module2.exports = first; function first(stuff, done) { if (!Array.isArray(stuff)) throw new TypeError("arg must be an array of [ee, events...] arrays"); var cleanups = []; for (var i = 0; i < stuff.length; i++) { var arr = stuff[i]; if (!Array.isArray(arr) || arr.length < 2) throw new TypeError("each array member must be [ee, events...]"); var ee = arr[0]; for (var j = 1; j < arr.length; j++) { var event = arr[j]; var fn = listener(event, callback); ee.on(event, fn); cleanups.push({ ee, event, fn }); } } function callback() { cleanup(); done.apply(null, arguments); } __name(callback, "callback"); function cleanup() { var x; for (var i2 = 0; i2 < cleanups.length; i2++) { x = cleanups[i2]; x.ee.removeListener(x.event, x.fn); } } __name(cleanup, "cleanup"); function thunk(fn2) { done = fn2; } __name(thunk, "thunk"); thunk.cancel = cleanup; return thunk; } __name(first, "first"); function listener(event, done) { return /* @__PURE__ */ __name(function onevent(arg1) { var args = new Array(arguments.length); var ee = this; var err = event === "error" ? arg1 : null; for (var i = 0; i < args.length; i++) { args[i] = arguments[i]; } done(err, ee, event, args); }, "onevent"); } __name(listener, "listener"); } }); // ../../node_modules/.pnpm/on-finished@2.4.1/node_modules/on-finished/index.js var require_on_finished = __commonJS({ "../../node_modules/.pnpm/on-finished@2.4.1/node_modules/on-finished/index.js"(exports2, module2) { "use strict"; module2.exports = onFinished; module2.exports.isFinished = isFinished; var asyncHooks = tryRequireAsyncHooks(); var first = require_ee_first(); var defer = typeof setImmediate === "function" ? setImmediate : function(fn) { process.nextTick(fn.bind.apply(fn, arguments)); }; function onFinished(msg, listener) { if (isFinished(msg) !== false) { defer(listener, null, msg); return msg; } attachListener(msg, wrap(listener)); return msg; } __name(onFinished, "onFinished"); function isFinished(msg) { var socket = msg.socket; if (typeof msg.finished === "boolean") { return Boolean(msg.finished || socket && !socket.writable); } if (typeof msg.complete === "boolean") { return Boolean(msg.upgrade || !socket || !socket.readable || msg.complete && !msg.readable); } return void 0; } __name(isFinished, "isFinished"); function attachFinishedListener(msg, callback) { var eeMsg; var eeSocket; var finished = false; function onFinish(error) { eeMsg.cancel(); eeSocket.cancel(); finished = true; callback(error); } __name(onFinish, "onFinish"); eeMsg = eeSocket = first([[msg, "end", "finish"]], onFinish); function onSocket(socket) { msg.removeListener("socket", onSocket); if (finished) return; if (eeMsg !== eeSocket) return; eeSocket = first([[socket, "error", "close"]], onFinish); } __name(onSocket, "onSocket"); if (msg.socket) { onSocket(msg.socket); return; } msg.on("socket", onSocket); if (msg.socket === void 0) { patchAssignSocket(msg, onSocket); } } __name(attachFinishedListener, "attachFinishedListener"); function attachListener(msg, listener) { var attached = msg.__onFinished; if (!attached || !attached.queue) { attached = msg.__onFinished = createListener(msg); attachFinishedListener(msg, attached); } attached.queue.push(listener); } __name(attachListener, "attachListener"); function createListener(msg) { function listener(err) { if (msg.__onFinished === listener) msg.__onFinished = null; if (!listener.queue) return; var queue = listener.queue; listener.queue = null; for (var i = 0; i < queue.length; i++) { queue[i](err, msg); } } __name(listener, "listener"); listener.queue = []; return listener; } __name(createListener, "createListener"); function patchAssignSocket(res, callback) { var assignSocket = res.assignSocket; if (typeof assignSocket !== "function") return; res.assignSocket = /* @__PURE__ */ __name(function _assignSocket(socket) { assignSocket.call(this, socket); callback(socket); }, "_assignSocket"); } __name(patchAssignSocket, "patchAssignSocket"); function tryRequireAsyncHooks() { try { return require("async_hooks"); } catch (e) { return {}; } } __name(tryRequireAsyncHooks, "tryRequireAsyncHooks"); function wrap(fn) { var res; if (asyncHooks.AsyncResource) { res = new asyncHooks.AsyncResource(fn.name || "bound-anonymous-fn"); } if (!res || !res.runInAsyncScope) { return fn; } return res.runInAsyncScope.bind(res, fn, null); } __name(wrap, "wrap"); } }); // ../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/lib/read.js var require_read = __commonJS({ "../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/lib/read.js"(exports2, module2) { "use strict"; var createError = require_http_errors(); var destroy = require_destroy(); var getBody = require_raw_body(); var iconv = require_lib2(); var onFinished = require_on_finished(); var unpipe = require_unpipe(); var zlib = require("zlib"); module2.exports = read; function read(req, res, next, parse2, debug, options) { var length; var opts = options; var stream; req._body = true; var encoding = opts.encoding !== null ? opts.encoding : null; var verify = opts.verify; try { stream = contentstream(req, debug, opts.inflate); length = stream.length; stream.length = void 0; } catch (err) { return next(err); } opts.length = length; opts.encoding = verify ? null : encoding; if (opts.encoding === null && encoding !== null && !iconv.encodingExists(encoding)) { return next(createError(415, 'unsupported charset "' + encoding.toUpperCase() + '"', { charset: encoding.toLowerCase(), type: "charset.unsupported" })); } debug("read body"); getBody(stream, opts, function(error, body) { if (error) { var _error; if (error.type === "encoding.unsupported") { _error = createError(415, 'unsupported charset "' + encoding.toUpperCase() + '"', { charset: encoding.toLowerCase(), type: "charset.unsupported" }); } else { _error = createError(400, error); } if (stream !== req) { unpipe(req); destroy(stream, true); } dump(req, /* @__PURE__ */ __name(function onfinished() { next(createError(400, _error)); }, "onfinished")); return; } if (verify) { try { debug("verify body"); verify(req, res, body, encoding); } catch (err) { next(createError(403, err, { body, type: err.type || "entity.verify.failed" })); return; } } var str = body; try { debug("parse body"); str = typeof body !== "string" && encoding !== null ? iconv.decode(body, encoding) : body; req.body = parse2(str); } catch (err) { next(createError(400, err, { body: str, type: err.type || "entity.parse.failed" })); return; } next(); }); } __name(read, "read"); function contentstream(req, debug, inflate) { var encoding = (req.headers["content-encoding"] || "identity").toLowerCase(); var length = req.headers["content-length"]; var stream; debug('content-encoding "%s"', encoding); if (inflate === false && encoding !== "identity") { throw createError(415, "content encoding unsupported", { encoding, type: "encoding.unsupported" }); } switch (encoding) { case "deflate": stream = zlib.createInflate(); debug("inflate body"); req.pipe(stream); break; case "gzip": stream = zlib.createGunzip(); debug("gunzip body"); req.pipe(stream); break; case "identity": stream = req; stream.length = length; break; default: throw createError(415, 'unsupported content encoding "' + encoding + '"', { encoding, type: "encoding.unsupported" }); } return stream; } __name(contentstream, "contentstream"); function dump(req, callback) { if (onFinished.isFinished(req)) { callback(null); } else { onFinished(req, callback); req.resume(); } } __name(dump, "dump"); } }); // ../../node_modules/.pnpm/media-typer@0.3.0/node_modules/media-typer/index.js var require_media_typer = __commonJS({ "../../node_modules/.pnpm/media-typer@0.3.0/node_modules/media-typer/index.js"(exports2) { var paramRegExp = /; *([!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) *= *("(?:[ !\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u0020-\u007e])*"|[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) */g; var textRegExp = /^[\u0020-\u007e\u0080-\u00ff]+$/; var tokenRegExp = /^[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+$/; var qescRegExp = /\\([\u0000-\u007f])/g; var quoteRegExp = /([\\"])/g; var subtypeNameRegExp = /^[A-Za-z0-9][A-Za-z0-9!#$&^_.-]{0,126}$/; var typeNameRegExp = /^[A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126}$/; var typeRegExp = /^ *([A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126})\/([A-Za-z0-9][A-Za-z0-9!#$&^_.+-]{0,126}) *$/; exports2.format = format; exports2.parse = parse2; function format(obj2) { if (!obj2 || typeof obj2 !== "object") { throw new TypeError("argument obj is required"); } var parameters = obj2.parameters; var subtype = obj2.subtype; var suffix = obj2.suffix; var type = obj2.type; if (!type || !typeNameRegExp.test(type)) { throw new TypeError("invalid type"); } if (!subtype || !subtypeNameRegExp.test(subtype)) { throw new TypeError("invalid subtype"); } var string = type + "/" + subtype; if (suffix) { if (!typeNameRegExp.test(suffix)) { throw new TypeError("invalid suffix"); } string += "+" + suffix; } if (parameters && typeof parameters === "object") { var param; var params = Object.keys(parameters).sort(); for (var i = 0; i < params.length; i++) { param = params[i]; if (!tokenRegExp.test(param)) { throw new TypeError("invalid parameter name"); } string += "; " + param + "=" + qstring(parameters[param]); } } return string; } __name(format, "format"); function parse2(string) { if (!string) { throw new TypeError("argument string is required"); } if (typeof string === "object") { string = getcontenttype(string); } if (typeof string !== "string") { throw new TypeError("argument string is required to be a string"); } var index = string.indexOf(";"); var type = index !== -1 ? string.substr(0, index) : string; var key; var match; var obj2 = splitType(type); var params = {}; var value; paramRegExp.lastIndex = index; while (match = paramRegExp.exec(string)) { if (match.index !== index) { throw new TypeError("invalid parameter format"); } index += match[0].length; key = match[1].toLowerCase(); value = match[2]; if (value[0] === '"') { value = value.substr(1, value.length - 2).replace(qescRegExp, "$1"); } params[key] = value; } if (index !== -1 && index !== string.length) { throw new TypeError("invalid parameter format"); } obj2.parameters = params; return obj2; } __name(parse2, "parse"); function getcontenttype(obj2) { if (typeof obj2.getHeader === "function") { return obj2.getHeader("content-type"); } if (typeof obj2.headers === "object") { return obj2.headers && obj2.headers["content-type"]; } } __name(getcontenttype, "getcontenttype"); function qstring(val) { var str = String(val); if (tokenRegExp.test(str)) { return str; } if (str.length > 0 && !textRegExp.test(str)) { throw new TypeError("invalid parameter value"); } return '"' + str.replace(quoteRegExp, "\\$1") + '"'; } __name(qstring, "qstring"); function splitType(string) { var match = typeRegExp.exec(string.toLowerCase()); if (!match) { throw new TypeError("invalid media type"); } var type = match[1]; var subtype = match[2]; var suffix; var index = subtype.lastIndexOf("+"); if (index !== -1) { suffix = subtype.substr(index + 1); subtype = subtype.substr(0, index); } var obj2 = { type, subtype, suffix }; return obj2; } __name(splitType, "splitType"); } }); // ../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/db.json var require_db = __commonJS({ "../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/db.json"(exports2, module2) { module2.exports = { "application/1d-interleaved-parityfec": { source: "iana" }, "application/3gpdash-qoe-report+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/3gpp-ims+xml": { source: "iana", compressible: true }, "application/3gpphal+json": { source: "iana", compressible: true }, "application/3gpphalforms+json": { source: "iana", compressible: true }, "application/a2l": { source: "iana" }, "application/ace+cbor": { source: "iana" }, "application/activemessage": { source: "iana" }, "application/activity+json": { source: "iana", compressible: true }, "application/alto-costmap+json": { source: "iana", compressible: true }, "application/alto-costmapfilter+json": { source: "iana", compressible: true }, "application/alto-directory+json": { source: "iana", compressible: true }, "application/alto-endpointcost+json": { source: "iana", compressible: true }, "application/alto-endpointcostparams+json": { source: "iana", compressible: true }, "application/alto-endpointprop+json": { source: "iana", compressible: true }, "application/alto-endpointpropparams+json": { source: "iana", compressible: true }, "application/alto-error+json": { source: "iana", compressible: true }, "application/alto-networkmap+json": { source: "iana", compressible: true }, "application/alto-networkmapfilter+json": { source: "iana", compressible: true }, "application/alto-updatestreamcontrol+json": { source: "iana", compressible: true }, "application/alto-updatestreamparams+json": { source: "iana", compressible: true }, "application/aml": { source: "iana" }, "application/andrew-inset": { source: "iana", extensions: ["ez"] }, "application/applefile": { source: "iana" }, "application/applixware": { source: "apache", extensions: ["aw"] }, "application/at+jwt": { source: "iana" }, "application/atf": { source: "iana" }, "application/atfx": { source: "iana" }, "application/atom+xml": { source: "iana", compressible: true, extensions: ["atom"] }, "application/atomcat+xml": { source: "iana", compressible: true, extensions: ["atomcat"] }, "application/atomdeleted+xml": { source: "iana", compressible: true, extensions: ["atomdeleted"] }, "application/atomicmail": { source: "iana" }, "application/atomsvc+xml": { source: "iana", compressible: true, extensions: ["atomsvc"] }, "application/atsc-dwd+xml": { source: "iana", compressible: true, extensions: ["dwd"] }, "application/atsc-dynamic-event-message": { source: "iana" }, "application/atsc-held+xml": { source: "iana", compressible: true, extensions: ["held"] }, "application/atsc-rdt+json": { source: "iana", compressible: true }, "application/atsc-rsat+xml": { source: "iana", compressible: true, extensions: ["rsat"] }, "application/atxml": { source: "iana" }, "application/auth-policy+xml": { source: "iana", compressible: true }, "application/bacnet-xdd+zip": { source: "iana", compressible: false }, "application/batch-smtp": { source: "iana" }, "application/bdoc": { compressible: false, extensions: ["bdoc"] }, "application/beep+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/calendar+json": { source: "iana", compressible: true }, "application/calendar+xml": { source: "iana", compressible: true, extensions: ["xcs"] }, "application/call-completion": { source: "iana" }, "application/cals-1840": { source: "iana" }, "application/captive+json": { source: "iana", compressible: true }, "application/cbor": { source: "iana" }, "application/cbor-seq": { source: "iana" }, "application/cccex": { source: "iana" }, "application/ccmp+xml": { source: "iana", compressible: true }, "application/ccxml+xml": { source: "iana", compressible: true, extensions: ["ccxml"] }, "application/cdfx+xml": { source: "iana", compressible: true, extensions: ["cdfx"] }, "application/cdmi-capability": { source: "iana", extensions: ["cdmia"] }, "application/cdmi-container": { source: "iana", extensions: ["cdmic"] }, "application/cdmi-domain": { source: "iana", extensions: ["cdmid"] }, "application/cdmi-object": { source: "iana", extensions: ["cdmio"] }, "application/cdmi-queue": { source: "iana", extensions: ["cdmiq"] }, "application/cdni": { source: "iana" }, "application/cea": { source: "iana" }, "application/cea-2018+xml": { source: "iana", compressible: true }, "application/cellml+xml": { source: "iana", compressible: true }, "application/cfw": { source: "iana" }, "application/city+json": { source: "iana", compressible: true }, "application/clr": { source: "iana" }, "application/clue+xml": { source: "iana", compressible: true }, "application/clue_info+xml": { source: "iana", compressible: true }, "application/cms": { source: "iana" }, "application/cnrp+xml": { source: "iana", compressible: true }, "application/coap-group+json": { source: "iana", compressible: true }, "application/coap-payload": { source: "iana" }, "application/commonground": { source: "iana" }, "application/conference-info+xml": { source: "iana", compressible: true }, "application/cose": { source: "iana" }, "application/cose-key": { source: "iana" }, "application/cose-key-set": { source: "iana" }, "application/cpl+xml": { source: "iana", compressible: true, extensions: ["cpl"] }, "application/csrattrs": { source: "iana" }, "application/csta+xml": { source: "iana", compressible: true }, "application/cstadata+xml": { source: "iana", compressible: true }, "application/csvm+json": { source: "iana", compressible: true }, "application/cu-seeme": { source: "apache", extensions: ["cu"] }, "application/cwt": { source: "iana" }, "application/cybercash": { source: "iana" }, "application/dart": { compressible: true }, "application/dash+xml": { source: "iana", compressible: true, extensions: ["mpd"] }, "application/dash-patch+xml": { source: "iana", compressible: true, extensions: ["mpp"] }, "application/dashdelta": { source: "iana" }, "application/davmount+xml": { source: "iana", compressible: true, extensions: ["davmount"] }, "application/dca-rft": { source: "iana" }, "application/dcd": { source: "iana" }, "application/dec-dx": { source: "iana" }, "application/dialog-info+xml": { source: "iana", compressible: true }, "application/dicom": { source: "iana" }, "application/dicom+json": { source: "iana", compressible: true }, "application/dicom+xml": { source: "iana", compressible: true }, "application/dii": { source: "iana" }, "application/dit": { source: "iana" }, "application/dns": { source: "iana" }, "application/dns+json": { source: "iana", compressible: true }, "application/dns-message": { source: "iana" }, "application/docbook+xml": { source: "apache", compressible: true, extensions: ["dbk"] }, "application/dots+cbor": { source: "iana" }, "application/dskpp+xml": { source: "iana", compressible: true }, "application/dssc+der": { source: "iana", extensions: ["dssc"] }, "application/dssc+xml": { source: "iana", compressible: true, extensions: ["xdssc"] }, "application/dvcs": { source: "iana" }, "application/ecmascript": { source: "iana", compressible: true, extensions: ["es", "ecma"] }, "application/edi-consent": { source: "iana" }, "application/edi-x12": { source: "iana", compressible: false }, "application/edifact": { source: "iana", compressible: false }, "application/efi": { source: "iana" }, "application/elm+json": { source: "iana", charset: "UTF-8", compressible: true }, "application/elm+xml": { source: "iana", compressible: true }, "application/emergencycalldata.cap+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/emergencycalldata.comment+xml": { source: "iana", compressible: true }, "application/emergencycalldata.control+xml": { source: "iana", compressible: true }, "application/emergencycalldata.deviceinfo+xml": { source: "iana", compressible: true }, "application/emergencycalldata.ecall.msd": { source: "iana" }, "application/emergencycalldata.providerinfo+xml": { source: "iana", compressible: true }, "application/emergencycalldata.serviceinfo+xml": { source: "iana", compressible: true }, "application/emergencycalldata.subscriberinfo+xml": { source: "iana", compressible: true }, "application/emergencycalldata.veds+xml": { source: "iana", compressible: true }, "application/emma+xml": { source: "iana", compressible: true, extensions: ["emma"] }, "application/emotionml+xml": { source: "iana", compressible: true, extensions: ["emotionml"] }, "application/encaprtp": { source: "iana" }, "application/epp+xml": { source: "iana", compressible: true }, "application/epub+zip": { source: "iana", compressible: false, extensions: ["epub"] }, "application/eshop": { source: "iana" }, "application/exi": { source: "iana", extensions: ["exi"] }, "application/expect-ct-report+json": { source: "iana", compressible: true }, "application/express": { source: "iana", extensions: ["exp"] }, "application/fastinfoset": { source: "iana" }, "application/fastsoap": { source: "iana" }, "application/fdt+xml": { source: "iana", compressible: true, extensions: ["fdt"] }, "application/fhir+json": { source: "iana", charset: "UTF-8", compressible: true }, "application/fhir+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/fido.trusted-apps+json": { compressible: true }, "application/fits": { source: "iana" }, "application/flexfec": { source: "iana" }, "application/font-sfnt": { source: "iana" }, "application/font-tdpfr": { source: "iana", extensions: ["pfr"] }, "application/font-woff": { source: "iana", compressible: false }, "application/framework-attributes+xml": { source: "iana", compressible: true }, "application/geo+json": { source: "iana", compressible: true, extensions: ["geojson"] }, "application/geo+json-seq": { source: "iana" }, "application/geopackage+sqlite3": { source: "iana" }, "application/geoxacml+xml": { source: "iana", compressible: true }, "application/gltf-buffer": { source: "iana" }, "application/gml+xml": { source: "iana", compressible: true, extensions: ["gml"] }, "application/gpx+xml": { source: "apache", compressible: true, extensions: ["gpx"] }, "application/gxf": { source: "apache", extensions: ["gxf"] }, "application/gzip": { source: "iana", compressible: false, extensions: ["gz"] }, "application/h224": { source: "iana" }, "application/held+xml": { source: "iana", compressible: true }, "application/hjson": { extensions: ["hjson"] }, "application/http": { source: "iana" }, "application/hyperstudio": { source: "iana", extensions: ["stk"] }, "application/ibe-key-request+xml": { source: "iana", compressible: true }, "application/ibe-pkg-reply+xml": { source: "iana", compressible: true }, "application/ibe-pp-data": { source: "iana" }, "application/iges": { source: "iana" }, "application/im-iscomposing+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/index": { source: "iana" }, "application/index.cmd": { source: "iana" }, "application/index.obj": { source: "iana" }, "application/index.response": { source: "iana" }, "application/index.vnd": { source: "iana" }, "application/inkml+xml": { source: "iana", compressible: true, extensions: ["ink", "inkml"] }, "application/iotp": { source: "iana" }, "application/ipfix": { source: "iana", extensions: ["ipfix"] }, "application/ipp": { source: "iana" }, "application/isup": { source: "iana" }, "application/its+xml": { source: "iana", compressible: true, extensions: ["its"] }, "application/java-archive": { source: "apache", compressible: false, extensions: ["jar", "war", "ear"] }, "application/java-serialized-object": { source: "apache", compressible: false, extensions: ["ser"] }, "application/java-vm": { source: "apache", compressible: false, extensions: ["class"] }, "application/javascript": { source: "iana", charset: "UTF-8", compressible: true, extensions: ["js", "mjs"] }, "application/jf2feed+json": { source: "iana", compressible: true }, "application/jose": { source: "iana" }, "application/jose+json": { source: "iana", compressible: true }, "application/jrd+json": { source: "iana", compressible: true }, "application/jscalendar+json": { source: "iana", compressible: true }, "application/json": { source: "iana", charset: "UTF-8", compressible: true, extensions: ["json", "map"] }, "application/json-patch+json": { source: "iana", compressible: true }, "application/json-seq": { source: "iana" }, "application/json5": { extensions: ["json5"] }, "application/jsonml+json": { source: "apache", compressible: true, extensions: ["jsonml"] }, "application/jwk+json": { source: "iana", compressible: true }, "application/jwk-set+json": { source: "iana", compressible: true }, "application/jwt": { source: "iana" }, "application/kpml-request+xml": { source: "iana", compressible: true }, "application/kpml-response+xml": { source: "iana", compressible: true }, "application/ld+json": { source: "iana", compressible: true, extensions: ["jsonld"] }, "application/lgr+xml": { source: "iana", compressible: true, extensions: ["lgr"] }, "application/link-format": { source: "iana" }, "application/load-control+xml": { source: "iana", compressible: true }, "application/lost+xml": { source: "iana", compressible: true, extensions: ["lostxml"] }, "application/lostsync+xml": { source: "iana", compressible: true }, "application/lpf+zip": { source: "iana", compressible: false }, "application/lxf": { source: "iana" }, "application/mac-binhex40": { source: "iana", extensions: ["hqx"] }, "application/mac-compactpro": { source: "apache", extensions: ["cpt"] }, "application/macwriteii": { source: "iana" }, "application/mads+xml": { source: "iana", compressible: true, extensions: ["mads"] }, "application/manifest+json": { source: "iana", charset: "UTF-8", compressible: true, extensions: ["webmanifest"] }, "application/marc": { source: "iana", extensions: ["mrc"] }, "application/marcxml+xml": { source: "iana", compressible: true, extensions: ["mrcx"] }, "application/mathematica": { source: "iana", extensions: ["ma", "nb", "mb"] }, "application/mathml+xml": { source: "iana", compressible: true, extensions: ["mathml"] }, "application/mathml-content+xml": { source: "iana", compressible: true }, "application/mathml-presentation+xml": { source: "iana", compressible: true }, "application/mbms-associated-procedure-description+xml": { source: "iana", compressible: true }, "application/mbms-deregister+xml": { source: "iana", compressible: true }, "application/mbms-envelope+xml": { source: "iana", compressible: true }, "application/mbms-msk+xml": { source: "iana", compressible: true }, "application/mbms-msk-response+xml": { source: "iana", compressible: true }, "application/mbms-protection-description+xml": { source: "iana", compressible: true }, "application/mbms-reception-report+xml": { source: "iana", compressible: true }, "application/mbms-register+xml": { source: "iana", compressible: true }, "application/mbms-register-response+xml": { source: "iana", compressible: true }, "application/mbms-schedule+xml": { source: "iana", compressible: true }, "application/mbms-user-service-description+xml": { source: "iana", compressible: true }, "application/mbox": { source: "iana", extensions: ["mbox"] }, "application/media-policy-dataset+xml": { source: "iana", compressible: true, extensions: ["mpf"] }, "application/media_control+xml": { source: "iana", compressible: true }, "application/mediaservercontrol+xml": { source: "iana", compressible: true, extensions: ["mscml"] }, "application/merge-patch+json": { source: "iana", compressible: true }, "application/metalink+xml": { source: "apache", compressible: true, extensions: ["metalink"] }, "application/metalink4+xml": { source: "iana", compressible: true, extensions: ["meta4"] }, "application/mets+xml": { source: "iana", compressible: true, extensions: ["mets"] }, "application/mf4": { source: "iana" }, "application/mikey": { source: "iana" }, "application/mipc": { source: "iana" }, "application/missing-blocks+cbor-seq": { source: "iana" }, "application/mmt-aei+xml": { source: "iana", compressible: true, extensions: ["maei"] }, "application/mmt-usd+xml": { source: "iana", compressible: true, extensions: ["musd"] }, "application/mods+xml": { source: "iana", compressible: true, extensions: ["mods"] }, "application/moss-keys": { source: "iana" }, "application/moss-signature": { source: "iana" }, "application/mosskey-data": { source: "iana" }, "application/mosskey-request": { source: "iana" }, "application/mp21": { source: "iana", extensions: ["m21", "mp21"] }, "application/mp4": { source: "iana", extensions: ["mp4s", "m4p"] }, "application/mpeg4-generic": { source: "iana" }, "application/mpeg4-iod": { source: "iana" }, "application/mpeg4-iod-xmt": { source: "iana" }, "application/mrb-consumer+xml": { source: "iana", compressible: true }, "application/mrb-publish+xml": { source: "iana", compressible: true }, "application/msc-ivr+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/msc-mixer+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/msword": { source: "iana", compressible: false, extensions: ["doc", "dot"] }, "application/mud+json": { source: "iana", compressible: true }, "application/multipart-core": { source: "iana" }, "application/mxf": { source: "iana", extensions: ["mxf"] }, "application/n-quads": { source: "iana", extensions: ["nq"] }, "application/n-triples": { source: "iana", extensions: ["nt"] }, "application/nasdata": { source: "iana" }, "application/news-checkgroups": { source: "iana", charset: "US-ASCII" }, "application/news-groupinfo": { source: "iana", charset: "US-ASCII" }, "application/news-transmission": { source: "iana" }, "application/nlsml+xml": { source: "iana", compressible: true }, "application/node": { source: "iana", extensions: ["cjs"] }, "application/nss": { source: "iana" }, "application/oauth-authz-req+jwt": { source: "iana" }, "application/oblivious-dns-message": { source: "iana" }, "application/ocsp-request": { source: "iana" }, "application/ocsp-response": { source: "iana" }, "application/octet-stream": { source: "iana", compressible: false, extensions: ["bin", "dms", "lrf", "mar", "so", "dist", "distz", "pkg", "bpk", "dump", "elc", "deploy", "exe", "dll", "deb", "dmg", "iso", "img", "msi", "msp", "msm", "buffer"] }, "application/oda": { source: "iana", extensions: ["oda"] }, "application/odm+xml": { source: "iana", compressible: true }, "application/odx": { source: "iana" }, "application/oebps-package+xml": { source: "iana", compressible: true, extensions: ["opf"] }, "application/ogg": { source: "iana", compressible: false, extensions: ["ogx"] }, "application/omdoc+xml": { source: "apache", compressible: true, extensions: ["omdoc"] }, "application/onenote": { source: "apache", extensions: ["onetoc", "onetoc2", "onetmp", "onepkg"] }, "application/opc-nodeset+xml": { source: "iana", compressible: true }, "application/oscore": { source: "iana" }, "application/oxps": { source: "iana", extensions: ["oxps"] }, "application/p21": { source: "iana" }, "application/p21+zip": { source: "iana", compressible: false }, "application/p2p-overlay+xml": { source: "iana", compressible: true, extensions: ["relo"] }, "application/parityfec": { source: "iana" }, "application/passport": { source: "iana" }, "application/patch-ops-error+xml": { source: "iana", compressible: true, extensions: ["xer"] }, "application/pdf": { source: "iana", compressible: false, extensions: ["pdf"] }, "application/pdx": { source: "iana" }, "application/pem-certificate-chain": { source: "iana" }, "application/pgp-encrypted": { source: "iana", compressible: false, extensions: ["pgp"] }, "application/pgp-keys": { source: "iana", extensions: ["asc"] }, "application/pgp-signature": { source: "iana", extensions: ["asc", "sig"] }, "application/pics-rules": { source: "apache", extensions: ["prf"] }, "application/pidf+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/pidf-diff+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/pkcs10": { source: "iana", extensions: ["p10"] }, "application/pkcs12": { source: "iana" }, "application/pkcs7-mime": { source: "iana", extensions: ["p7m", "p7c"] }, "application/pkcs7-signature": { source: "iana", extensions: ["p7s"] }, "application/pkcs8": { source: "iana", extensions: ["p8"] }, "application/pkcs8-encrypted": { source: "iana" }, "application/pkix-attr-cert": { source: "iana", extensions: ["ac"] }, "application/pkix-cert": { source: "iana", extensions: ["cer"] }, "application/pkix-crl": { source: "iana", extensions: ["crl"] }, "application/pkix-pkipath": { source: "iana", extensions: ["pkipath"] }, "application/pkixcmp": { source: "iana", extensions: ["pki"] }, "application/pls+xml": { source: "iana", compressible: true, extensions: ["pls"] }, "application/poc-settings+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/postscript": { source: "iana", compressible: true, extensions: ["ai", "eps", "ps"] }, "application/ppsp-tracker+json": { source: "iana", compressible: true }, "application/problem+json": { source: "iana", compressible: true }, "application/problem+xml": { source: "iana", compressible: true }, "application/provenance+xml": { source: "iana", compressible: true, extensions: ["provx"] }, "application/prs.alvestrand.titrax-sheet": { source: "iana" }, "application/prs.cww": { source: "iana", extensions: ["cww"] }, "application/prs.cyn": { source: "iana", charset: "7-BIT" }, "application/prs.hpub+zip": { source: "iana", compressible: false }, "application/prs.nprend": { source: "iana" }, "application/prs.plucker": { source: "iana" }, "application/prs.rdf-xml-crypt": { source: "iana" }, "application/prs.xsf+xml": { source: "iana", compressible: true }, "application/pskc+xml": { source: "iana", compressible: true, extensions: ["pskcxml"] }, "application/pvd+json": { source: "iana", compressible: true }, "application/qsig": { source: "iana" }, "application/raml+yaml": { compressible: true, extensions: ["raml"] }, "application/raptorfec": { source: "iana" }, "application/rdap+json": { source: "iana", compressible: true }, "application/rdf+xml": { source: "iana", compressible: true, extensions: ["rdf", "owl"] }, "application/reginfo+xml": { source: "iana", compressible: true, extensions: ["rif"] }, "application/relax-ng-compact-syntax": { source: "iana", extensions: ["rnc"] }, "application/remote-printing": { source: "iana" }, "application/reputon+json": { source: "iana", compressible: true }, "application/resource-lists+xml": { source: "iana", compressible: true, extensions: ["rl"] }, "application/resource-lists-diff+xml": { source: "iana", compressible: true, extensions: ["rld"] }, "application/rfc+xml": { source: "iana", compressible: true }, "application/riscos": { source: "iana" }, "application/rlmi+xml": { source: "iana", compressible: true }, "application/rls-services+xml": { source: "iana", compressible: true, extensions: ["rs"] }, "application/route-apd+xml": { source: "iana", compressible: true, extensions: ["rapd"] }, "application/route-s-tsid+xml": { source: "iana", compressible: true, extensions: ["sls"] }, "application/route-usd+xml": { source: "iana", compressible: true, extensions: ["rusd"] }, "application/rpki-ghostbusters": { source: "iana", extensions: ["gbr"] }, "application/rpki-manifest": { source: "iana", extensions: ["mft"] }, "application/rpki-publication": { source: "iana" }, "application/rpki-roa": { source: "iana", extensions: ["roa"] }, "application/rpki-updown": { source: "iana" }, "application/rsd+xml": { source: "apache", compressible: true, extensions: ["rsd"] }, "application/rss+xml": { source: "apache", compressible: true, extensions: ["rss"] }, "application/rtf": { source: "iana", compressible: true, extensions: ["rtf"] }, "application/rtploopback": { source: "iana" }, "application/rtx": { source: "iana" }, "application/samlassertion+xml": { source: "iana", compressible: true }, "application/samlmetadata+xml": { source: "iana", compressible: true }, "application/sarif+json": { source: "iana", compressible: true }, "application/sarif-external-properties+json": { source: "iana", compressible: true }, "application/sbe": { source: "iana" }, "application/sbml+xml": { source: "iana", compressible: true, extensions: ["sbml"] }, "application/scaip+xml": { source: "iana", compressible: true }, "application/scim+json": { source: "iana", compressible: true }, "application/scvp-cv-request": { source: "iana", extensions: ["scq"] }, "application/scvp-cv-response": { source: "iana", extensions: ["scs"] }, "application/scvp-vp-request": { source: "iana", extensions: ["spq"] }, "application/scvp-vp-response": { source: "iana", extensions: ["spp"] }, "application/sdp": { source: "iana", extensions: ["sdp"] }, "application/secevent+jwt": { source: "iana" }, "application/senml+cbor": { source: "iana" }, "application/senml+json": { source: "iana", compressible: true }, "application/senml+xml": { source: "iana", compressible: true, extensions: ["senmlx"] }, "application/senml-etch+cbor": { source: "iana" }, "application/senml-etch+json": { source: "iana", compressible: true }, "application/senml-exi": { source: "iana" }, "application/sensml+cbor": { source: "iana" }, "application/sensml+json": { source: "iana", compressible: true }, "application/sensml+xml": { source: "iana", compressible: true, extensions: ["sensmlx"] }, "application/sensml-exi": { source: "iana" }, "application/sep+xml": { source: "iana", compressible: true }, "application/sep-exi": { source: "iana" }, "application/session-info": { source: "iana" }, "application/set-payment": { source: "iana" }, "application/set-payment-initiation": { source: "iana", extensions: ["setpay"] }, "application/set-registration": { source: "iana" }, "application/set-registration-initiation": { source: "iana", extensions: ["setreg"] }, "application/sgml": { source: "iana" }, "application/sgml-open-catalog": { source: "iana" }, "application/shf+xml": { source: "iana", compressible: true, extensions: ["shf"] }, "application/sieve": { source: "iana", extensions: ["siv", "sieve"] }, "application/simple-filter+xml": { source: "iana", compressible: true }, "application/simple-message-summary": { source: "iana" }, "application/simplesymbolcontainer": { source: "iana" }, "application/sipc": { source: "iana" }, "application/slate": { source: "iana" }, "application/smil": { source: "iana" }, "application/smil+xml": { source: "iana", compressible: true, extensions: ["smi", "smil"] }, "application/smpte336m": { source: "iana" }, "application/soap+fastinfoset": { source: "iana" }, "application/soap+xml": { source: "iana", compressible: true }, "application/sparql-query": { source: "iana", extensions: ["rq"] }, "application/sparql-results+xml": { source: "iana", compressible: true, extensions: ["srx"] }, "application/spdx+json": { source: "iana", compressible: true }, "application/spirits-event+xml": { source: "iana", compressible: true }, "application/sql": { source: "iana" }, "application/srgs": { source: "iana", extensions: ["gram"] }, "application/srgs+xml": { source: "iana", compressible: true, extensions: ["grxml"] }, "application/sru+xml": { source: "iana", compressible: true, extensions: ["sru"] }, "application/ssdl+xml": { source: "apache", compressible: true, extensions: ["ssdl"] }, "application/ssml+xml": { source: "iana", compressible: true, extensions: ["ssml"] }, "application/stix+json": { source: "iana", compressible: true }, "application/swid+xml": { source: "iana", compressible: true, extensions: ["swidtag"] }, "application/tamp-apex-update": { source: "iana" }, "application/tamp-apex-update-confirm": { source: "iana" }, "application/tamp-community-update": { source: "iana" }, "application/tamp-community-update-confirm": { source: "iana" }, "application/tamp-error": { source: "iana" }, "application/tamp-sequence-adjust": { source: "iana" }, "application/tamp-sequence-adjust-confirm": { source: "iana" }, "application/tamp-status-query": { source: "iana" }, "application/tamp-status-response": { source: "iana" }, "application/tamp-update": { source: "iana" }, "application/tamp-update-confirm": { source: "iana" }, "application/tar": { compressible: true }, "application/taxii+json": { source: "iana", compressible: true }, "application/td+json": { source: "iana", compressible: true }, "application/tei+xml": { source: "iana", compressible: true, extensions: ["tei", "teicorpus"] }, "application/tetra_isi": { source: "iana" }, "application/thraud+xml": { source: "iana", compressible: true, extensions: ["tfi"] }, "application/timestamp-query": { source: "iana" }, "application/timestamp-reply": { source: "iana" }, "application/timestamped-data": { source: "iana", extensions: ["tsd"] }, "application/tlsrpt+gzip": { source: "iana" }, "application/tlsrpt+json": { source: "iana", compressible: true }, "application/tnauthlist": { source: "iana" }, "application/token-introspection+jwt": { source: "iana" }, "application/toml": { compressible: true, extensions: ["toml"] }, "application/trickle-ice-sdpfrag": { source: "iana" }, "application/trig": { source: "iana", extensions: ["trig"] }, "application/ttml+xml": { source: "iana", compressible: true, extensions: ["ttml"] }, "application/tve-trigger": { source: "iana" }, "application/tzif": { source: "iana" }, "application/tzif-leap": { source: "iana" }, "application/ubjson": { compressible: false, extensions: ["ubj"] }, "application/ulpfec": { source: "iana" }, "application/urc-grpsheet+xml": { source: "iana", compressible: true }, "application/urc-ressheet+xml": { source: "iana", compressible: true, extensions: ["rsheet"] }, "application/urc-targetdesc+xml": { source: "iana", compressible: true, extensions: ["td"] }, "application/urc-uisocketdesc+xml": { source: "iana", compressible: true }, "application/vcard+json": { source: "iana", compressible: true }, "application/vcard+xml": { source: "iana", compressible: true }, "application/vemmi": { source: "iana" }, "application/vividence.scriptfile": { source: "apache" }, "application/vnd.1000minds.decision-model+xml": { source: "iana", compressible: true, extensions: ["1km"] }, "application/vnd.3gpp-prose+xml": { source: "iana", compressible: true }, "application/vnd.3gpp-prose-pc3ch+xml": { source: "iana", compressible: true }, "application/vnd.3gpp-v2x-local-service-information": { source: "iana" }, "application/vnd.3gpp.5gnas": { source: "iana" }, "application/vnd.3gpp.access-transfer-events+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.bsf+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.gmop+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.gtpc": { source: "iana" }, "application/vnd.3gpp.interworking-data": { source: "iana" }, "application/vnd.3gpp.lpp": { source: "iana" }, "application/vnd.3gpp.mc-signalling-ear": { source: "iana" }, "application/vnd.3gpp.mcdata-affiliation-command+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcdata-info+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcdata-payload": { source: "iana" }, "application/vnd.3gpp.mcdata-service-config+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcdata-signalling": { source: "iana" }, "application/vnd.3gpp.mcdata-ue-config+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcdata-user-profile+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcptt-affiliation-command+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcptt-floor-request+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcptt-info+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcptt-location-info+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcptt-mbms-usage-info+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcptt-service-config+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcptt-signed+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcptt-ue-config+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcptt-ue-init-config+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcptt-user-profile+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcvideo-affiliation-command+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcvideo-affiliation-info+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcvideo-info+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcvideo-location-info+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcvideo-mbms-usage-info+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcvideo-service-config+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcvideo-transmission-request+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcvideo-ue-config+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mcvideo-user-profile+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.mid-call+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.ngap": { source: "iana" }, "application/vnd.3gpp.pfcp": { source: "iana" }, "application/vnd.3gpp.pic-bw-large": { source: "iana", extensions: ["plb"] }, "application/vnd.3gpp.pic-bw-small": { source: "iana", extensions: ["psb"] }, "application/vnd.3gpp.pic-bw-var": { source: "iana", extensions: ["pvb"] }, "application/vnd.3gpp.s1ap": { source: "iana" }, "application/vnd.3gpp.sms": { source: "iana" }, "application/vnd.3gpp.sms+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.srvcc-ext+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.srvcc-info+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.state-and-event-info+xml": { source: "iana", compressible: true }, "application/vnd.3gpp.ussd+xml": { source: "iana", compressible: true }, "application/vnd.3gpp2.bcmcsinfo+xml": { source: "iana", compressible: true }, "application/vnd.3gpp2.sms": { source: "iana" }, "application/vnd.3gpp2.tcap": { source: "iana", extensions: ["tcap"] }, "application/vnd.3lightssoftware.imagescal": { source: "iana" }, "application/vnd.3m.post-it-notes": { source: "iana", extensions: ["pwn"] }, "application/vnd.accpac.simply.aso": { source: "iana", extensions: ["aso"] }, "application/vnd.accpac.simply.imp": { source: "iana", extensions: ["imp"] }, "application/vnd.acucobol": { source: "iana", extensions: ["acu"] }, "application/vnd.acucorp": { source: "iana", extensions: ["atc", "acutc"] }, "application/vnd.adobe.air-application-installer-package+zip": { source: "apache", compressible: false, extensions: ["air"] }, "application/vnd.adobe.flash.movie": { source: "iana" }, "application/vnd.adobe.formscentral.fcdt": { source: "iana", extensions: ["fcdt"] }, "application/vnd.adobe.fxp": { source: "iana", extensions: ["fxp", "fxpl"] }, "application/vnd.adobe.partial-upload": { source: "iana" }, "application/vnd.adobe.xdp+xml": { source: "iana", compressible: true, extensions: ["xdp"] }, "application/vnd.adobe.xfdf": { source: "iana", extensions: ["xfdf"] }, "application/vnd.aether.imp": { source: "iana" }, "application/vnd.afpc.afplinedata": { source: "iana" }, "application/vnd.afpc.afplinedata-pagedef": { source: "iana" }, "application/vnd.afpc.cmoca-cmresource": { source: "iana" }, "application/vnd.afpc.foca-charset": { source: "iana" }, "application/vnd.afpc.foca-codedfont": { source: "iana" }, "application/vnd.afpc.foca-codepage": { source: "iana" }, "application/vnd.afpc.modca": { source: "iana" }, "application/vnd.afpc.modca-cmtable": { source: "iana" }, "application/vnd.afpc.modca-formdef": { source: "iana" }, "application/vnd.afpc.modca-mediummap": { source: "iana" }, "application/vnd.afpc.modca-objectcontainer": { source: "iana" }, "application/vnd.afpc.modca-overlay": { source: "iana" }, "application/vnd.afpc.modca-pagesegment": { source: "iana" }, "application/vnd.age": { source: "iana", extensions: ["age"] }, "application/vnd.ah-barcode": { source: "iana" }, "application/vnd.ahead.space": { source: "iana", extensions: ["ahead"] }, "application/vnd.airzip.filesecure.azf": { source: "iana", extensions: ["azf"] }, "application/vnd.airzip.filesecure.azs": { source: "iana", extensions: ["azs"] }, "application/vnd.amadeus+json": { source: "iana", compressible: true }, "application/vnd.amazon.ebook": { source: "apache", extensions: ["azw"] }, "application/vnd.amazon.mobi8-ebook": { source: "iana" }, "application/vnd.americandynamics.acc": { source: "iana", extensions: ["acc"] }, "application/vnd.amiga.ami": { source: "iana", extensions: ["ami"] }, "application/vnd.amundsen.maze+xml": { source: "iana", compressible: true }, "application/vnd.android.ota": { source: "iana" }, "application/vnd.android.package-archive": { source: "apache", compressible: false, extensions: ["apk"] }, "application/vnd.anki": { source: "iana" }, "application/vnd.anser-web-certificate-issue-initiation": { source: "iana", extensions: ["cii"] }, "application/vnd.anser-web-funds-transfer-initiation": { source: "apache", extensions: ["fti"] }, "application/vnd.antix.game-component": { source: "iana", extensions: ["atx"] }, "application/vnd.apache.arrow.file": { source: "iana" }, "application/vnd.apache.arrow.stream": { source: "iana" }, "application/vnd.apache.thrift.binary": { source: "iana" }, "application/vnd.apache.thrift.compact": { source: "iana" }, "application/vnd.apache.thrift.json": { source: "iana" }, "application/vnd.api+json": { source: "iana", compressible: true }, "application/vnd.aplextor.warrp+json": { source: "iana", compressible: true }, "application/vnd.apothekende.reservation+json": { source: "iana", compressible: true }, "application/vnd.apple.installer+xml": { source: "iana", compressible: true, extensions: ["mpkg"] }, "application/vnd.apple.keynote": { source: "iana", extensions: ["key"] }, "application/vnd.apple.mpegurl": { source: "iana", extensions: ["m3u8"] }, "application/vnd.apple.numbers": { source: "iana", extensions: ["numbers"] }, "application/vnd.apple.pages": { source: "iana", extensions: ["pages"] }, "application/vnd.apple.pkpass": { compressible: false, extensions: ["pkpass"] }, "application/vnd.arastra.swi": { source: "iana" }, "application/vnd.aristanetworks.swi": { source: "iana", extensions: ["swi"] }, "application/vnd.artisan+json": { source: "iana", compressible: true }, "application/vnd.artsquare": { source: "iana" }, "application/vnd.astraea-software.iota": { source: "iana", extensions: ["iota"] }, "application/vnd.audiograph": { source: "iana", extensions: ["aep"] }, "application/vnd.autopackage": { source: "iana" }, "application/vnd.avalon+json": { source: "iana", compressible: true }, "application/vnd.avistar+xml": { source: "iana", compressible: true }, "application/vnd.balsamiq.bmml+xml": { source: "iana", compressible: true, extensions: ["bmml"] }, "application/vnd.balsamiq.bmpr": { source: "iana" }, "application/vnd.banana-accounting": { source: "iana" }, "application/vnd.bbf.usp.error": { source: "iana" }, "application/vnd.bbf.usp.msg": { source: "iana" }, "application/vnd.bbf.usp.msg+json": { source: "iana", compressible: true }, "application/vnd.bekitzur-stech+json": { source: "iana", compressible: true }, "application/vnd.bint.med-content": { source: "iana" }, "application/vnd.biopax.rdf+xml": { source: "iana", compressible: true }, "application/vnd.blink-idb-value-wrapper": { source: "iana" }, "application/vnd.blueice.multipass": { source: "iana", extensions: ["mpm"] }, "application/vnd.bluetooth.ep.oob": { source: "iana" }, "application/vnd.bluetooth.le.oob": { source: "iana" }, "application/vnd.bmi": { source: "iana", extensions: ["bmi"] }, "application/vnd.bpf": { source: "iana" }, "application/vnd.bpf3": { source: "iana" }, "application/vnd.businessobjects": { source: "iana", extensions: ["rep"] }, "application/vnd.byu.uapi+json": { source: "iana", compressible: true }, "application/vnd.cab-jscript": { source: "iana" }, "application/vnd.canon-cpdl": { source: "iana" }, "application/vnd.canon-lips": { source: "iana" }, "application/vnd.capasystems-pg+json": { source: "iana", compressible: true }, "application/vnd.cendio.thinlinc.clientconf": { source: "iana" }, "application/vnd.century-systems.tcp_stream": { source: "iana" }, "application/vnd.chemdraw+xml": { source: "iana", compressible: true, extensions: ["cdxml"] }, "application/vnd.chess-pgn": { source: "iana" }, "application/vnd.chipnuts.karaoke-mmd": { source: "iana", extensions: ["mmd"] }, "application/vnd.ciedi": { source: "iana" }, "application/vnd.cinderella": { source: "iana", extensions: ["cdy"] }, "application/vnd.cirpack.isdn-ext": { source: "iana" }, "application/vnd.citationstyles.style+xml": { source: "iana", compressible: true, extensions: ["csl"] }, "application/vnd.claymore": { source: "iana", extensions: ["cla"] }, "application/vnd.cloanto.rp9": { source: "iana", extensions: ["rp9"] }, "application/vnd.clonk.c4group": { source: "iana", extensions: ["c4g", "c4d", "c4f", "c4p", "c4u"] }, "application/vnd.cluetrust.cartomobile-config": { source: "iana", extensions: ["c11amc"] }, "application/vnd.cluetrust.cartomobile-config-pkg": { source: "iana", extensions: ["c11amz"] }, "application/vnd.coffeescript": { source: "iana" }, "application/vnd.collabio.xodocuments.document": { source: "iana" }, "application/vnd.collabio.xodocuments.document-template": { source: "iana" }, "application/vnd.collabio.xodocuments.presentation": { source: "iana" }, "application/vnd.collabio.xodocuments.presentation-template": { source: "iana" }, "application/vnd.collabio.xodocuments.spreadsheet": { source: "iana" }, "application/vnd.collabio.xodocuments.spreadsheet-template": { source: "iana" }, "application/vnd.collection+json": { source: "iana", compressible: true }, "application/vnd.collection.doc+json": { source: "iana", compressible: true }, "application/vnd.collection.next+json": { source: "iana", compressible: true }, "application/vnd.comicbook+zip": { source: "iana", compressible: false }, "application/vnd.comicbook-rar": { source: "iana" }, "application/vnd.commerce-battelle": { source: "iana" }, "application/vnd.commonspace": { source: "iana", extensions: ["csp"] }, "application/vnd.contact.cmsg": { source: "iana", extensions: ["cdbcmsg"] }, "application/vnd.coreos.ignition+json": { source: "iana", compressible: true }, "application/vnd.cosmocaller": { source: "iana", extensions: ["cmc"] }, "application/vnd.crick.clicker": { source: "iana", extensions: ["clkx"] }, "application/vnd.crick.clicker.keyboard": { source: "iana", extensions: ["clkk"] }, "application/vnd.crick.clicker.palette": { source: "iana", extensions: ["clkp"] }, "application/vnd.crick.clicker.template": { source: "iana", extensions: ["clkt"] }, "application/vnd.crick.clicker.wordbank": { source: "iana", extensions: ["clkw"] }, "application/vnd.criticaltools.wbs+xml": { source: "iana", compressible: true, extensions: ["wbs"] }, "application/vnd.cryptii.pipe+json": { source: "iana", compressible: true }, "application/vnd.crypto-shade-file": { source: "iana" }, "application/vnd.cryptomator.encrypted": { source: "iana" }, "application/vnd.cryptomator.vault": { source: "iana" }, "application/vnd.ctc-posml": { source: "iana", extensions: ["pml"] }, "application/vnd.ctct.ws+xml": { source: "iana", compressible: true }, "application/vnd.cups-pdf": { source: "iana" }, "application/vnd.cups-postscript": { source: "iana" }, "application/vnd.cups-ppd": { source: "iana", extensions: ["ppd"] }, "application/vnd.cups-raster": { source: "iana" }, "application/vnd.cups-raw": { source: "iana" }, "application/vnd.curl": { source: "iana" }, "application/vnd.curl.car": { source: "apache", extensions: ["car"] }, "application/vnd.curl.pcurl": { source: "apache", extensions: ["pcurl"] }, "application/vnd.cyan.dean.root+xml": { source: "iana", compressible: true }, "application/vnd.cybank": { source: "iana" }, "application/vnd.cyclonedx+json": { source: "iana", compressible: true }, "application/vnd.cyclonedx+xml": { source: "iana", compressible: true }, "application/vnd.d2l.coursepackage1p0+zip": { source: "iana", compressible: false }, "application/vnd.d3m-dataset": { source: "iana" }, "application/vnd.d3m-problem": { source: "iana" }, "application/vnd.dart": { source: "iana", compressible: true, extensions: ["dart"] }, "application/vnd.data-vision.rdz": { source: "iana", extensions: ["rdz"] }, "application/vnd.datapackage+json": { source: "iana", compressible: true }, "application/vnd.dataresource+json": { source: "iana", compressible: true }, "application/vnd.dbf": { source: "iana", extensions: ["dbf"] }, "application/vnd.debian.binary-package": { source: "iana" }, "application/vnd.dece.data": { source: "iana", extensions: ["uvf", "uvvf", "uvd", "uvvd"] }, "application/vnd.dece.ttml+xml": { source: "iana", compressible: true, extensions: ["uvt", "uvvt"] }, "application/vnd.dece.unspecified": { source: "iana", extensions: ["uvx", "uvvx"] }, "application/vnd.dece.zip": { source: "iana", extensions: ["uvz", "uvvz"] }, "application/vnd.denovo.fcselayout-link": { source: "iana", extensions: ["fe_launch"] }, "application/vnd.desmume.movie": { source: "iana" }, "application/vnd.dir-bi.plate-dl-nosuffix": { source: "iana" }, "application/vnd.dm.delegation+xml": { source: "iana", compressible: true }, "application/vnd.dna": { source: "iana", extensions: ["dna"] }, "application/vnd.document+json": { source: "iana", compressible: true }, "application/vnd.dolby.mlp": { source: "apache", extensions: ["mlp"] }, "application/vnd.dolby.mobile.1": { source: "iana" }, "application/vnd.dolby.mobile.2": { source: "iana" }, "application/vnd.doremir.scorecloud-binary-document": { source: "iana" }, "application/vnd.dpgraph": { source: "iana", extensions: ["dpg"] }, "application/vnd.dreamfactory": { source: "iana", extensions: ["dfac"] }, "application/vnd.drive+json": { source: "iana", compressible: true }, "application/vnd.ds-keypoint": { source: "apache", extensions: ["kpxx"] }, "application/vnd.dtg.local": { source: "iana" }, "application/vnd.dtg.local.flash": { source: "iana" }, "application/vnd.dtg.local.html": { source: "iana" }, "application/vnd.dvb.ait": { source: "iana", extensions: ["ait"] }, "application/vnd.dvb.dvbisl+xml": { source: "iana", compressible: true }, "application/vnd.dvb.dvbj": { source: "iana" }, "application/vnd.dvb.esgcontainer": { source: "iana" }, "application/vnd.dvb.ipdcdftnotifaccess": { source: "iana" }, "application/vnd.dvb.ipdcesgaccess": { source: "iana" }, "application/vnd.dvb.ipdcesgaccess2": { source: "iana" }, "application/vnd.dvb.ipdcesgpdd": { source: "iana" }, "application/vnd.dvb.ipdcroaming": { source: "iana" }, "application/vnd.dvb.iptv.alfec-base": { source: "iana" }, "application/vnd.dvb.iptv.alfec-enhancement": { source: "iana" }, "application/vnd.dvb.notif-aggregate-root+xml": { source: "iana", compressible: true }, "application/vnd.dvb.notif-container+xml": { source: "iana", compressible: true }, "application/vnd.dvb.notif-generic+xml": { source: "iana", compressible: true }, "application/vnd.dvb.notif-ia-msglist+xml": { source: "iana", compressible: true }, "application/vnd.dvb.notif-ia-registration-request+xml": { source: "iana", compressible: true }, "application/vnd.dvb.notif-ia-registration-response+xml": { source: "iana", compressible: true }, "application/vnd.dvb.notif-init+xml": { source: "iana", compressible: true }, "application/vnd.dvb.pfr": { source: "iana" }, "application/vnd.dvb.service": { source: "iana", extensions: ["svc"] }, "application/vnd.dxr": { source: "iana" }, "application/vnd.dynageo": { source: "iana", extensions: ["geo"] }, "application/vnd.dzr": { source: "iana" }, "application/vnd.easykaraoke.cdgdownload": { source: "iana" }, "application/vnd.ecdis-update": { source: "iana" }, "application/vnd.ecip.rlp": { source: "iana" }, "application/vnd.eclipse.ditto+json": { source: "iana", compressible: true }, "application/vnd.ecowin.chart": { source: "iana", extensions: ["mag"] }, "application/vnd.ecowin.filerequest": { source: "iana" }, "application/vnd.ecowin.fileupdate": { source: "iana" }, "application/vnd.ecowin.series": { source: "iana" }, "application/vnd.ecowin.seriesrequest": { source: "iana" }, "application/vnd.ecowin.seriesupdate": { source: "iana" }, "application/vnd.efi.img": { source: "iana" }, "application/vnd.efi.iso": { source: "iana" }, "application/vnd.emclient.accessrequest+xml": { source: "iana", compressible: true }, "application/vnd.enliven": { source: "iana", extensions: ["nml"] }, "application/vnd.enphase.envoy": { source: "iana" }, "application/vnd.eprints.data+xml": { source: "iana", compressible: true }, "application/vnd.epson.esf": { source: "iana", extensions: ["esf"] }, "application/vnd.epson.msf": { source: "iana", extensions: ["msf"] }, "application/vnd.epson.quickanime": { source: "iana", extensions: ["qam"] }, "application/vnd.epson.salt": { source: "iana", extensions: ["slt"] }, "application/vnd.epson.ssf": { source: "iana", extensions: ["ssf"] }, "application/vnd.ericsson.quickcall": { source: "iana" }, "application/vnd.espass-espass+zip": { source: "iana", compressible: false }, "application/vnd.eszigno3+xml": { source: "iana", compressible: true, extensions: ["es3", "et3"] }, "application/vnd.etsi.aoc+xml": { source: "iana", compressible: true }, "application/vnd.etsi.asic-e+zip": { source: "iana", compressible: false }, "application/vnd.etsi.asic-s+zip": { source: "iana", compressible: false }, "application/vnd.etsi.cug+xml": { source: "iana", compressible: true }, "application/vnd.etsi.iptvcommand+xml": { source: "iana", compressible: true }, "application/vnd.etsi.iptvdiscovery+xml": { source: "iana", compressible: true }, "application/vnd.etsi.iptvprofile+xml": { source: "iana", compressible: true }, "application/vnd.etsi.iptvsad-bc+xml": { source: "iana", compressible: true }, "application/vnd.etsi.iptvsad-cod+xml": { source: "iana", compressible: true }, "application/vnd.etsi.iptvsad-npvr+xml": { source: "iana", compressible: true }, "application/vnd.etsi.iptvservice+xml": { source: "iana", compressible: true }, "application/vnd.etsi.iptvsync+xml": { source: "iana", compressible: true }, "application/vnd.etsi.iptvueprofile+xml": { source: "iana", compressible: true }, "application/vnd.etsi.mcid+xml": { source: "iana", compressible: true }, "application/vnd.etsi.mheg5": { source: "iana" }, "application/vnd.etsi.overload-control-policy-dataset+xml": { source: "iana", compressible: true }, "application/vnd.etsi.pstn+xml": { source: "iana", compressible: true }, "application/vnd.etsi.sci+xml": { source: "iana", compressible: true }, "application/vnd.etsi.simservs+xml": { source: "iana", compressible: true }, "application/vnd.etsi.timestamp-token": { source: "iana" }, "application/vnd.etsi.tsl+xml": { source: "iana", compressible: true }, "application/vnd.etsi.tsl.der": { source: "iana" }, "application/vnd.eu.kasparian.car+json": { source: "iana", compressible: true }, "application/vnd.eudora.data": { source: "iana" }, "application/vnd.evolv.ecig.profile": { source: "iana" }, "application/vnd.evolv.ecig.settings": { source: "iana" }, "application/vnd.evolv.ecig.theme": { source: "iana" }, "application/vnd.exstream-empower+zip": { source: "iana", compressible: false }, "application/vnd.exstream-package": { source: "iana" }, "application/vnd.ezpix-album": { source: "iana", extensions: ["ez2"] }, "application/vnd.ezpix-package": { source: "iana", extensions: ["ez3"] }, "application/vnd.f-secure.mobile": { source: "iana" }, "application/vnd.familysearch.gedcom+zip": { source: "iana", compressible: false }, "application/vnd.fastcopy-disk-image": { source: "iana" }, "application/vnd.fdf": { source: "iana", extensions: ["fdf"] }, "application/vnd.fdsn.mseed": { source: "iana", extensions: ["mseed"] }, "application/vnd.fdsn.seed": { source: "iana", extensions: ["seed", "dataless"] }, "application/vnd.ffsns": { source: "iana" }, "application/vnd.ficlab.flb+zip": { source: "iana", compressible: false }, "application/vnd.filmit.zfc": { source: "iana" }, "application/vnd.fints": { source: "iana" }, "application/vnd.firemonkeys.cloudcell": { source: "iana" }, "application/vnd.flographit": { source: "iana", extensions: ["gph"] }, "application/vnd.fluxtime.clip": { source: "iana", extensions: ["ftc"] }, "application/vnd.font-fontforge-sfd": { source: "iana" }, "application/vnd.framemaker": { source: "iana", extensions: ["fm", "frame", "maker", "book"] }, "application/vnd.frogans.fnc": { source: "iana", extensions: ["fnc"] }, "application/vnd.frogans.ltf": { source: "iana", extensions: ["ltf"] }, "application/vnd.fsc.weblaunch": { source: "iana", extensions: ["fsc"] }, "application/vnd.fujifilm.fb.docuworks": { source: "iana" }, "application/vnd.fujifilm.fb.docuworks.binder": { source: "iana" }, "application/vnd.fujifilm.fb.docuworks.container": { source: "iana" }, "application/vnd.fujifilm.fb.jfi+xml": { source: "iana", compressible: true }, "application/vnd.fujitsu.oasys": { source: "iana", extensions: ["oas"] }, "application/vnd.fujitsu.oasys2": { source: "iana", extensions: ["oa2"] }, "application/vnd.fujitsu.oasys3": { source: "iana", extensions: ["oa3"] }, "application/vnd.fujitsu.oasysgp": { source: "iana", extensions: ["fg5"] }, "application/vnd.fujitsu.oasysprs": { source: "iana", extensions: ["bh2"] }, "application/vnd.fujixerox.art-ex": { source: "iana" }, "application/vnd.fujixerox.art4": { source: "iana" }, "application/vnd.fujixerox.ddd": { source: "iana", extensions: ["ddd"] }, "application/vnd.fujixerox.docuworks": { source: "iana", extensions: ["xdw"] }, "application/vnd.fujixerox.docuworks.binder": { source: "iana", extensions: ["xbd"] }, "application/vnd.fujixerox.docuworks.container": { source: "iana" }, "application/vnd.fujixerox.hbpl": { source: "iana" }, "application/vnd.fut-misnet": { source: "iana" }, "application/vnd.futoin+cbor": { source: "iana" }, "application/vnd.futoin+json": { source: "iana", compressible: true }, "application/vnd.fuzzysheet": { source: "iana", extensions: ["fzs"] }, "application/vnd.genomatix.tuxedo": { source: "iana", extensions: ["txd"] }, "application/vnd.gentics.grd+json": { source: "iana", compressible: true }, "application/vnd.geo+json": { source: "iana", compressible: true }, "application/vnd.geocube+xml": { source: "iana", compressible: true }, "application/vnd.geogebra.file": { source: "iana", extensions: ["ggb"] }, "application/vnd.geogebra.slides": { source: "iana" }, "application/vnd.geogebra.tool": { source: "iana", extensions: ["ggt"] }, "application/vnd.geometry-explorer": { source: "iana", extensions: ["gex", "gre"] }, "application/vnd.geonext": { source: "iana", extensions: ["gxt"] }, "application/vnd.geoplan": { source: "iana", extensions: ["g2w"] }, "application/vnd.geospace": { source: "iana", extensions: ["g3w"] }, "application/vnd.gerber": { source: "iana" }, "application/vnd.globalplatform.card-content-mgt": { source: "iana" }, "application/vnd.globalplatform.card-content-mgt-response": { source: "iana" }, "application/vnd.gmx": { source: "iana", extensions: ["gmx"] }, "application/vnd.google-apps.document": { compressible: false, extensions: ["gdoc"] }, "application/vnd.google-apps.presentation": { compressible: false, extensions: ["gslides"] }, "application/vnd.google-apps.spreadsheet": { compressible: false, extensions: ["gsheet"] }, "application/vnd.google-earth.kml+xml": { source: "iana", compressible: true, extensions: ["kml"] }, "application/vnd.google-earth.kmz": { source: "iana", compressible: false, extensions: ["kmz"] }, "application/vnd.gov.sk.e-form+xml": { source: "iana", compressible: true }, "application/vnd.gov.sk.e-form+zip": { source: "iana", compressible: false }, "application/vnd.gov.sk.xmldatacontainer+xml": { source: "iana", compressible: true }, "application/vnd.grafeq": { source: "iana", extensions: ["gqf", "gqs"] }, "application/vnd.gridmp": { source: "iana" }, "application/vnd.groove-account": { source: "iana", extensions: ["gac"] }, "application/vnd.groove-help": { source: "iana", extensions: ["ghf"] }, "application/vnd.groove-identity-message": { source: "iana", extensions: ["gim"] }, "application/vnd.groove-injector": { source: "iana", extensions: ["grv"] }, "application/vnd.groove-tool-message": { source: "iana", extensions: ["gtm"] }, "application/vnd.groove-tool-template": { source: "iana", extensions: ["tpl"] }, "application/vnd.groove-vcard": { source: "iana", extensions: ["vcg"] }, "application/vnd.hal+json": { source: "iana", compressible: true }, "application/vnd.hal+xml": { source: "iana", compressible: true, extensions: ["hal"] }, "application/vnd.handheld-entertainment+xml": { source: "iana", compressible: true, extensions: ["zmm"] }, "application/vnd.hbci": { source: "iana", extensions: ["hbci"] }, "application/vnd.hc+json": { source: "iana", compressible: true }, "application/vnd.hcl-bireports": { source: "iana" }, "application/vnd.hdt": { source: "iana" }, "application/vnd.heroku+json": { source: "iana", compressible: true }, "application/vnd.hhe.lesson-player": { source: "iana", extensions: ["les"] }, "application/vnd.hl7cda+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/vnd.hl7v2+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/vnd.hp-hpgl": { source: "iana", extensions: ["hpgl"] }, "application/vnd.hp-hpid": { source: "iana", extensions: ["hpid"] }, "application/vnd.hp-hps": { source: "iana", extensions: ["hps"] }, "application/vnd.hp-jlyt": { source: "iana", extensions: ["jlt"] }, "application/vnd.hp-pcl": { source: "iana", extensions: ["pcl"] }, "application/vnd.hp-pclxl": { source: "iana", extensions: ["pclxl"] }, "application/vnd.httphone": { source: "iana" }, "application/vnd.hydrostatix.sof-data": { source: "iana", extensions: ["sfd-hdstx"] }, "application/vnd.hyper+json": { source: "iana", compressible: true }, "application/vnd.hyper-item+json": { source: "iana", compressible: true }, "application/vnd.hyperdrive+json": { source: "iana", compressible: true }, "application/vnd.hzn-3d-crossword": { source: "iana" }, "application/vnd.ibm.afplinedata": { source: "iana" }, "application/vnd.ibm.electronic-media": { source: "iana" }, "application/vnd.ibm.minipay": { source: "iana", extensions: ["mpy"] }, "application/vnd.ibm.modcap": { source: "iana", extensions: ["afp", "listafp", "list3820"] }, "application/vnd.ibm.rights-management": { source: "iana", extensions: ["irm"] }, "application/vnd.ibm.secure-container": { source: "iana", extensions: ["sc"] }, "application/vnd.iccprofile": { source: "iana", extensions: ["icc", "icm"] }, "application/vnd.ieee.1905": { source: "iana" }, "application/vnd.igloader": { source: "iana", extensions: ["igl"] }, "application/vnd.imagemeter.folder+zip": { source: "iana", compressible: false }, "application/vnd.imagemeter.image+zip": { source: "iana", compressible: false }, "application/vnd.immervision-ivp": { source: "iana", extensions: ["ivp"] }, "application/vnd.immervision-ivu": { source: "iana", extensions: ["ivu"] }, "application/vnd.ims.imsccv1p1": { source: "iana" }, "application/vnd.ims.imsccv1p2": { source: "iana" }, "application/vnd.ims.imsccv1p3": { source: "iana" }, "application/vnd.ims.lis.v2.result+json": { source: "iana", compressible: true }, "application/vnd.ims.lti.v2.toolconsumerprofile+json": { source: "iana", compressible: true }, "application/vnd.ims.lti.v2.toolproxy+json": { source: "iana", compressible: true }, "application/vnd.ims.lti.v2.toolproxy.id+json": { source: "iana", compressible: true }, "application/vnd.ims.lti.v2.toolsettings+json": { source: "iana", compressible: true }, "application/vnd.ims.lti.v2.toolsettings.simple+json": { source: "iana", compressible: true }, "application/vnd.informedcontrol.rms+xml": { source: "iana", compressible: true }, "application/vnd.informix-visionary": { source: "iana" }, "application/vnd.infotech.project": { source: "iana" }, "application/vnd.infotech.project+xml": { source: "iana", compressible: true }, "application/vnd.innopath.wamp.notification": { source: "iana" }, "application/vnd.insors.igm": { source: "iana", extensions: ["igm"] }, "application/vnd.intercon.formnet": { source: "iana", extensions: ["xpw", "xpx"] }, "application/vnd.intergeo": { source: "iana", extensions: ["i2g"] }, "application/vnd.intertrust.digibox": { source: "iana" }, "application/vnd.intertrust.nncp": { source: "iana" }, "application/vnd.intu.qbo": { source: "iana", extensions: ["qbo"] }, "application/vnd.intu.qfx": { source: "iana", extensions: ["qfx"] }, "application/vnd.iptc.g2.catalogitem+xml": { source: "iana", compressible: true }, "application/vnd.iptc.g2.conceptitem+xml": { source: "iana", compressible: true }, "application/vnd.iptc.g2.knowledgeitem+xml": { source: "iana", compressible: true }, "application/vnd.iptc.g2.newsitem+xml": { source: "iana", compressible: true }, "application/vnd.iptc.g2.newsmessage+xml": { source: "iana", compressible: true }, "application/vnd.iptc.g2.packageitem+xml": { source: "iana", compressible: true }, "application/vnd.iptc.g2.planningitem+xml": { source: "iana", compressible: true }, "application/vnd.ipunplugged.rcprofile": { source: "iana", extensions: ["rcprofile"] }, "application/vnd.irepository.package+xml": { source: "iana", compressible: true, extensions: ["irp"] }, "application/vnd.is-xpr": { source: "iana", extensions: ["xpr"] }, "application/vnd.isac.fcs": { source: "iana", extensions: ["fcs"] }, "application/vnd.iso11783-10+zip": { source: "iana", compressible: false }, "application/vnd.jam": { source: "iana", extensions: ["jam"] }, "application/vnd.japannet-directory-service": { source: "iana" }, "application/vnd.japannet-jpnstore-wakeup": { source: "iana" }, "application/vnd.japannet-payment-wakeup": { source: "iana" }, "application/vnd.japannet-registration": { source: "iana" }, "application/vnd.japannet-registration-wakeup": { source: "iana" }, "application/vnd.japannet-setstore-wakeup": { source: "iana" }, "application/vnd.japannet-verification": { source: "iana" }, "application/vnd.japannet-verification-wakeup": { source: "iana" }, "application/vnd.jcp.javame.midlet-rms": { source: "iana", extensions: ["rms"] }, "application/vnd.jisp": { source: "iana", extensions: ["jisp"] }, "application/vnd.joost.joda-archive": { source: "iana", extensions: ["joda"] }, "application/vnd.jsk.isdn-ngn": { source: "iana" }, "application/vnd.kahootz": { source: "iana", extensions: ["ktz", "ktr"] }, "application/vnd.kde.karbon": { source: "iana", extensions: ["karbon"] }, "application/vnd.kde.kchart": { source: "iana", extensions: ["chrt"] }, "application/vnd.kde.kformula": { source: "iana", extensions: ["kfo"] }, "application/vnd.kde.kivio": { source: "iana", extensions: ["flw"] }, "application/vnd.kde.kontour": { source: "iana", extensions: ["kon"] }, "application/vnd.kde.kpresenter": { source: "iana", extensions: ["kpr", "kpt"] }, "application/vnd.kde.kspread": { source: "iana", extensions: ["ksp"] }, "application/vnd.kde.kword": { source: "iana", extensions: ["kwd", "kwt"] }, "application/vnd.kenameaapp": { source: "iana", extensions: ["htke"] }, "application/vnd.kidspiration": { source: "iana", extensions: ["kia"] }, "application/vnd.kinar": { source: "iana", extensions: ["kne", "knp"] }, "application/vnd.koan": { source: "iana", extensions: ["skp", "skd", "skt", "skm"] }, "application/vnd.kodak-descriptor": { source: "iana", extensions: ["sse"] }, "application/vnd.las": { source: "iana" }, "application/vnd.las.las+json": { source: "iana", compressible: true }, "application/vnd.las.las+xml": { source: "iana", compressible: true, extensions: ["lasxml"] }, "application/vnd.laszip": { source: "iana" }, "application/vnd.leap+json": { source: "iana", compressible: true }, "application/vnd.liberty-request+xml": { source: "iana", compressible: true }, "application/vnd.llamagraphics.life-balance.desktop": { source: "iana", extensions: ["lbd"] }, "application/vnd.llamagraphics.life-balance.exchange+xml": { source: "iana", compressible: true, extensions: ["lbe"] }, "application/vnd.logipipe.circuit+zip": { source: "iana", compressible: false }, "application/vnd.loom": { source: "iana" }, "application/vnd.lotus-1-2-3": { source: "iana", extensions: ["123"] }, "application/vnd.lotus-approach": { source: "iana", extensions: ["apr"] }, "application/vnd.lotus-freelance": { source: "iana", extensions: ["pre"] }, "application/vnd.lotus-notes": { source: "iana", extensions: ["nsf"] }, "application/vnd.lotus-organizer": { source: "iana", extensions: ["org"] }, "application/vnd.lotus-screencam": { source: "iana", extensions: ["scm"] }, "application/vnd.lotus-wordpro": { source: "iana", extensions: ["lwp"] }, "application/vnd.macports.portpkg": { source: "iana", extensions: ["portpkg"] }, "application/vnd.mapbox-vector-tile": { source: "iana", extensions: ["mvt"] }, "application/vnd.marlin.drm.actiontoken+xml": { source: "iana", compressible: true }, "application/vnd.marlin.drm.conftoken+xml": { source: "iana", compressible: true }, "application/vnd.marlin.drm.license+xml": { source: "iana", compressible: true }, "application/vnd.marlin.drm.mdcf": { source: "iana" }, "application/vnd.mason+json": { source: "iana", compressible: true }, "application/vnd.maxar.archive.3tz+zip": { source: "iana", compressible: false }, "application/vnd.maxmind.maxmind-db": { source: "iana" }, "application/vnd.mcd": { source: "iana", extensions: ["mcd"] }, "application/vnd.medcalcdata": { source: "iana", extensions: ["mc1"] }, "application/vnd.mediastation.cdkey": { source: "iana", extensions: ["cdkey"] }, "application/vnd.meridian-slingshot": { source: "iana" }, "application/vnd.mfer": { source: "iana", extensions: ["mwf"] }, "application/vnd.mfmp": { source: "iana", extensions: ["mfm"] }, "application/vnd.micro+json": { source: "iana", compressible: true }, "application/vnd.micrografx.flo": { source: "iana", extensions: ["flo"] }, "application/vnd.micrografx.igx": { source: "iana", extensions: ["igx"] }, "application/vnd.microsoft.portable-executable": { source: "iana" }, "application/vnd.microsoft.windows.thumbnail-cache": { source: "iana" }, "application/vnd.miele+json": { source: "iana", compressible: true }, "application/vnd.mif": { source: "iana", extensions: ["mif"] }, "application/vnd.minisoft-hp3000-save": { source: "iana" }, "application/vnd.mitsubishi.misty-guard.trustweb": { source: "iana" }, "application/vnd.mobius.daf": { source: "iana", extensions: ["daf"] }, "application/vnd.mobius.dis": { source: "iana", extensions: ["dis"] }, "application/vnd.mobius.mbk": { source: "iana", extensions: ["mbk"] }, "application/vnd.mobius.mqy": { source: "iana", extensions: ["mqy"] }, "application/vnd.mobius.msl": { source: "iana", extensions: ["msl"] }, "application/vnd.mobius.plc": { source: "iana", extensions: ["plc"] }, "application/vnd.mobius.txf": { source: "iana", extensions: ["txf"] }, "application/vnd.mophun.application": { source: "iana", extensions: ["mpn"] }, "application/vnd.mophun.certificate": { source: "iana", extensions: ["mpc"] }, "application/vnd.motorola.flexsuite": { source: "iana" }, "application/vnd.motorola.flexsuite.adsi": { source: "iana" }, "application/vnd.motorola.flexsuite.fis": { source: "iana" }, "application/vnd.motorola.flexsuite.gotap": { source: "iana" }, "application/vnd.motorola.flexsuite.kmr": { source: "iana" }, "application/vnd.motorola.flexsuite.ttc": { source: "iana" }, "application/vnd.motorola.flexsuite.wem": { source: "iana" }, "application/vnd.motorola.iprm": { source: "iana" }, "application/vnd.mozilla.xul+xml": { source: "iana", compressible: true, extensions: ["xul"] }, "application/vnd.ms-3mfdocument": { source: "iana" }, "application/vnd.ms-artgalry": { source: "iana", extensions: ["cil"] }, "application/vnd.ms-asf": { source: "iana" }, "application/vnd.ms-cab-compressed": { source: "iana", extensions: ["cab"] }, "application/vnd.ms-color.iccprofile": { source: "apache" }, "application/vnd.ms-excel": { source: "iana", compressible: false, extensions: ["xls", "xlm", "xla", "xlc", "xlt", "xlw"] }, "application/vnd.ms-excel.addin.macroenabled.12": { source: "iana", extensions: ["xlam"] }, "application/vnd.ms-excel.sheet.binary.macroenabled.12": { source: "iana", extensions: ["xlsb"] }, "application/vnd.ms-excel.sheet.macroenabled.12": { source: "iana", extensions: ["xlsm"] }, "application/vnd.ms-excel.template.macroenabled.12": { source: "iana", extensions: ["xltm"] }, "application/vnd.ms-fontobject": { source: "iana", compressible: true, extensions: ["eot"] }, "application/vnd.ms-htmlhelp": { source: "iana", extensions: ["chm"] }, "application/vnd.ms-ims": { source: "iana", extensions: ["ims"] }, "application/vnd.ms-lrm": { source: "iana", extensions: ["lrm"] }, "application/vnd.ms-office.activex+xml": { source: "iana", compressible: true }, "application/vnd.ms-officetheme": { source: "iana", extensions: ["thmx"] }, "application/vnd.ms-opentype": { source: "apache", compressible: true }, "application/vnd.ms-outlook": { compressible: false, extensions: ["msg"] }, "application/vnd.ms-package.obfuscated-opentype": { source: "apache" }, "application/vnd.ms-pki.seccat": { source: "apache", extensions: ["cat"] }, "application/vnd.ms-pki.stl": { source: "apache", extensions: ["stl"] }, "application/vnd.ms-playready.initiator+xml": { source: "iana", compressible: true }, "application/vnd.ms-powerpoint": { source: "iana", compressible: false, extensions: ["ppt", "pps", "pot"] }, "application/vnd.ms-powerpoint.addin.macroenabled.12": { source: "iana", extensions: ["ppam"] }, "application/vnd.ms-powerpoint.presentation.macroenabled.12": { source: "iana", extensions: ["pptm"] }, "application/vnd.ms-powerpoint.slide.macroenabled.12": { source: "iana", extensions: ["sldm"] }, "application/vnd.ms-powerpoint.slideshow.macroenabled.12": { source: "iana", extensions: ["ppsm"] }, "application/vnd.ms-powerpoint.template.macroenabled.12": { source: "iana", extensions: ["potm"] }, "application/vnd.ms-printdevicecapabilities+xml": { source: "iana", compressible: true }, "application/vnd.ms-printing.printticket+xml": { source: "apache", compressible: true }, "application/vnd.ms-printschematicket+xml": { source: "iana", compressible: true }, "application/vnd.ms-project": { source: "iana", extensions: ["mpp", "mpt"] }, "application/vnd.ms-tnef": { source: "iana" }, "application/vnd.ms-windows.devicepairing": { source: "iana" }, "application/vnd.ms-windows.nwprinting.oob": { source: "iana" }, "application/vnd.ms-windows.printerpairing": { source: "iana" }, "application/vnd.ms-windows.wsd.oob": { source: "iana" }, "application/vnd.ms-wmdrm.lic-chlg-req": { source: "iana" }, "application/vnd.ms-wmdrm.lic-resp": { source: "iana" }, "application/vnd.ms-wmdrm.meter-chlg-req": { source: "iana" }, "application/vnd.ms-wmdrm.meter-resp": { source: "iana" }, "application/vnd.ms-word.document.macroenabled.12": { source: "iana", extensions: ["docm"] }, "application/vnd.ms-word.template.macroenabled.12": { source: "iana", extensions: ["dotm"] }, "application/vnd.ms-works": { source: "iana", extensions: ["wps", "wks", "wcm", "wdb"] }, "application/vnd.ms-wpl": { source: "iana", extensions: ["wpl"] }, "application/vnd.ms-xpsdocument": { source: "iana", compressible: false, extensions: ["xps"] }, "application/vnd.msa-disk-image": { source: "iana" }, "application/vnd.mseq": { source: "iana", extensions: ["mseq"] }, "application/vnd.msign": { source: "iana" }, "application/vnd.multiad.creator": { source: "iana" }, "application/vnd.multiad.creator.cif": { source: "iana" }, "application/vnd.music-niff": { source: "iana" }, "application/vnd.musician": { source: "iana", extensions: ["mus"] }, "application/vnd.muvee.style": { source: "iana", extensions: ["msty"] }, "application/vnd.mynfc": { source: "iana", extensions: ["taglet"] }, "application/vnd.nacamar.ybrid+json": { source: "iana", compressible: true }, "application/vnd.ncd.control": { source: "iana" }, "application/vnd.ncd.reference": { source: "iana" }, "application/vnd.nearst.inv+json": { source: "iana", compressible: true }, "application/vnd.nebumind.line": { source: "iana" }, "application/vnd.nervana": { source: "iana" }, "application/vnd.netfpx": { source: "iana" }, "application/vnd.neurolanguage.nlu": { source: "iana", extensions: ["nlu"] }, "application/vnd.nimn": { source: "iana" }, "application/vnd.nintendo.nitro.rom": { source: "iana" }, "application/vnd.nintendo.snes.rom": { source: "iana" }, "application/vnd.nitf": { source: "iana", extensions: ["ntf", "nitf"] }, "application/vnd.noblenet-directory": { source: "iana", extensions: ["nnd"] }, "application/vnd.noblenet-sealer": { source: "iana", extensions: ["nns"] }, "application/vnd.noblenet-web": { source: "iana", extensions: ["nnw"] }, "application/vnd.nokia.catalogs": { source: "iana" }, "application/vnd.nokia.conml+wbxml": { source: "iana" }, "application/vnd.nokia.conml+xml": { source: "iana", compressible: true }, "application/vnd.nokia.iptv.config+xml": { source: "iana", compressible: true }, "application/vnd.nokia.isds-radio-presets": { source: "iana" }, "application/vnd.nokia.landmark+wbxml": { source: "iana" }, "application/vnd.nokia.landmark+xml": { source: "iana", compressible: true }, "application/vnd.nokia.landmarkcollection+xml": { source: "iana", compressible: true }, "application/vnd.nokia.n-gage.ac+xml": { source: "iana", compressible: true, extensions: ["ac"] }, "application/vnd.nokia.n-gage.data": { source: "iana", extensions: ["ngdat"] }, "application/vnd.nokia.n-gage.symbian.install": { source: "iana", extensions: ["n-gage"] }, "application/vnd.nokia.ncd": { source: "iana" }, "application/vnd.nokia.pcd+wbxml": { source: "iana" }, "application/vnd.nokia.pcd+xml": { source: "iana", compressible: true }, "application/vnd.nokia.radio-preset": { source: "iana", extensions: ["rpst"] }, "application/vnd.nokia.radio-presets": { source: "iana", extensions: ["rpss"] }, "application/vnd.novadigm.edm": { source: "iana", extensions: ["edm"] }, "application/vnd.novadigm.edx": { source: "iana", extensions: ["edx"] }, "application/vnd.novadigm.ext": { source: "iana", extensions: ["ext"] }, "application/vnd.ntt-local.content-share": { source: "iana" }, "application/vnd.ntt-local.file-transfer": { source: "iana" }, "application/vnd.ntt-local.ogw_remote-access": { source: "iana" }, "application/vnd.ntt-local.sip-ta_remote": { source: "iana" }, "application/vnd.ntt-local.sip-ta_tcp_stream": { source: "iana" }, "application/vnd.oasis.opendocument.chart": { source: "iana", extensions: ["odc"] }, "application/vnd.oasis.opendocument.chart-template": { source: "iana", extensions: ["otc"] }, "application/vnd.oasis.opendocument.database": { source: "iana", extensions: ["odb"] }, "application/vnd.oasis.opendocument.formula": { source: "iana", extensions: ["odf"] }, "application/vnd.oasis.opendocument.formula-template": { source: "iana", extensions: ["odft"] }, "application/vnd.oasis.opendocument.graphics": { source: "iana", compressible: false, extensions: ["odg"] }, "application/vnd.oasis.opendocument.graphics-template": { source: "iana", extensions: ["otg"] }, "application/vnd.oasis.opendocument.image": { source: "iana", extensions: ["odi"] }, "application/vnd.oasis.opendocument.image-template": { source: "iana", extensions: ["oti"] }, "application/vnd.oasis.opendocument.presentation": { source: "iana", compressible: false, extensions: ["odp"] }, "application/vnd.oasis.opendocument.presentation-template": { source: "iana", extensions: ["otp"] }, "application/vnd.oasis.opendocument.spreadsheet": { source: "iana", compressible: false, extensions: ["ods"] }, "application/vnd.oasis.opendocument.spreadsheet-template": { source: "iana", extensions: ["ots"] }, "application/vnd.oasis.opendocument.text": { source: "iana", compressible: false, extensions: ["odt"] }, "application/vnd.oasis.opendocument.text-master": { source: "iana", extensions: ["odm"] }, "application/vnd.oasis.opendocument.text-template": { source: "iana", extensions: ["ott"] }, "application/vnd.oasis.opendocument.text-web": { source: "iana", extensions: ["oth"] }, "application/vnd.obn": { source: "iana" }, "application/vnd.ocf+cbor": { source: "iana" }, "application/vnd.oci.image.manifest.v1+json": { source: "iana", compressible: true }, "application/vnd.oftn.l10n+json": { source: "iana", compressible: true }, "application/vnd.oipf.contentaccessdownload+xml": { source: "iana", compressible: true }, "application/vnd.oipf.contentaccessstreaming+xml": { source: "iana", compressible: true }, "application/vnd.oipf.cspg-hexbinary": { source: "iana" }, "application/vnd.oipf.dae.svg+xml": { source: "iana", compressible: true }, "application/vnd.oipf.dae.xhtml+xml": { source: "iana", compressible: true }, "application/vnd.oipf.mippvcontrolmessage+xml": { source: "iana", compressible: true }, "application/vnd.oipf.pae.gem": { source: "iana" }, "application/vnd.oipf.spdiscovery+xml": { source: "iana", compressible: true }, "application/vnd.oipf.spdlist+xml": { source: "iana", compressible: true }, "application/vnd.oipf.ueprofile+xml": { source: "iana", compressible: true }, "application/vnd.oipf.userprofile+xml": { source: "iana", compressible: true }, "application/vnd.olpc-sugar": { source: "iana", extensions: ["xo"] }, "application/vnd.oma-scws-config": { source: "iana" }, "application/vnd.oma-scws-http-request": { source: "iana" }, "application/vnd.oma-scws-http-response": { source: "iana" }, "application/vnd.oma.bcast.associated-procedure-parameter+xml": { source: "iana", compressible: true }, "application/vnd.oma.bcast.drm-trigger+xml": { source: "iana", compressible: true }, "application/vnd.oma.bcast.imd+xml": { source: "iana", compressible: true }, "application/vnd.oma.bcast.ltkm": { source: "iana" }, "application/vnd.oma.bcast.notification+xml": { source: "iana", compressible: true }, "application/vnd.oma.bcast.provisioningtrigger": { source: "iana" }, "application/vnd.oma.bcast.sgboot": { source: "iana" }, "application/vnd.oma.bcast.sgdd+xml": { source: "iana", compressible: true }, "application/vnd.oma.bcast.sgdu": { source: "iana" }, "application/vnd.oma.bcast.simple-symbol-container": { source: "iana" }, "application/vnd.oma.bcast.smartcard-trigger+xml": { source: "iana", compressible: true }, "application/vnd.oma.bcast.sprov+xml": { source: "iana", compressible: true }, "application/vnd.oma.bcast.stkm": { source: "iana" }, "application/vnd.oma.cab-address-book+xml": { source: "iana", compressible: true }, "application/vnd.oma.cab-feature-handler+xml": { source: "iana", compressible: true }, "application/vnd.oma.cab-pcc+xml": { source: "iana", compressible: true }, "application/vnd.oma.cab-subs-invite+xml": { source: "iana", compressible: true }, "application/vnd.oma.cab-user-prefs+xml": { source: "iana", compressible: true }, "application/vnd.oma.dcd": { source: "iana" }, "application/vnd.oma.dcdc": { source: "iana" }, "application/vnd.oma.dd2+xml": { source: "iana", compressible: true, extensions: ["dd2"] }, "application/vnd.oma.drm.risd+xml": { source: "iana", compressible: true }, "application/vnd.oma.group-usage-list+xml": { source: "iana", compressible: true }, "application/vnd.oma.lwm2m+cbor": { source: "iana" }, "application/vnd.oma.lwm2m+json": { source: "iana", compressible: true }, "application/vnd.oma.lwm2m+tlv": { source: "iana" }, "application/vnd.oma.pal+xml": { source: "iana", compressible: true }, "application/vnd.oma.poc.detailed-progress-report+xml": { source: "iana", compressible: true }, "application/vnd.oma.poc.final-report+xml": { source: "iana", compressible: true }, "application/vnd.oma.poc.groups+xml": { source: "iana", compressible: true }, "application/vnd.oma.poc.invocation-descriptor+xml": { source: "iana", compressible: true }, "application/vnd.oma.poc.optimized-progress-report+xml": { source: "iana", compressible: true }, "application/vnd.oma.push": { source: "iana" }, "application/vnd.oma.scidm.messages+xml": { source: "iana", compressible: true }, "application/vnd.oma.xcap-directory+xml": { source: "iana", compressible: true }, "application/vnd.omads-email+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/vnd.omads-file+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/vnd.omads-folder+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/vnd.omaloc-supl-init": { source: "iana" }, "application/vnd.onepager": { source: "iana" }, "application/vnd.onepagertamp": { source: "iana" }, "application/vnd.onepagertamx": { source: "iana" }, "application/vnd.onepagertat": { source: "iana" }, "application/vnd.onepagertatp": { source: "iana" }, "application/vnd.onepagertatx": { source: "iana" }, "application/vnd.openblox.game+xml": { source: "iana", compressible: true, extensions: ["obgx"] }, "application/vnd.openblox.game-binary": { source: "iana" }, "application/vnd.openeye.oeb": { source: "iana" }, "application/vnd.openofficeorg.extension": { source: "apache", extensions: ["oxt"] }, "application/vnd.openstreetmap.data+xml": { source: "iana", compressible: true, extensions: ["osm"] }, "application/vnd.opentimestamps.ots": { source: "iana" }, "application/vnd.openxmlformats-officedocument.custom-properties+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.customxmlproperties+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.drawing+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.drawingml.chart+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.extended-properties+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.comments+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.presentation": { source: "iana", compressible: false, extensions: ["pptx"] }, "application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.presprops+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.slide": { source: "iana", extensions: ["sldx"] }, "application/vnd.openxmlformats-officedocument.presentationml.slide+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.slideshow": { source: "iana", extensions: ["ppsx"] }, "application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.tags+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.template": { source: "iana", extensions: ["potx"] }, "application/vnd.openxmlformats-officedocument.presentationml.template.main+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { source: "iana", compressible: false, extensions: ["xlsx"] }, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.template": { source: "iana", extensions: ["xltx"] }, "application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.theme+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.themeoverride+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.vmldrawing": { source: "iana" }, "application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.wordprocessingml.document": { source: "iana", compressible: false, extensions: ["docx"] }, "application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.wordprocessingml.template": { source: "iana", extensions: ["dotx"] }, "application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-package.core-properties+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml": { source: "iana", compressible: true }, "application/vnd.openxmlformats-package.relationships+xml": { source: "iana", compressible: true }, "application/vnd.oracle.resource+json": { source: "iana", compressible: true }, "application/vnd.orange.indata": { source: "iana" }, "application/vnd.osa.netdeploy": { source: "iana" }, "application/vnd.osgeo.mapguide.package": { source: "iana", extensions: ["mgp"] }, "application/vnd.osgi.bundle": { source: "iana" }, "application/vnd.osgi.dp": { source: "iana", extensions: ["dp"] }, "application/vnd.osgi.subsystem": { source: "iana", extensions: ["esa"] }, "application/vnd.otps.ct-kip+xml": { source: "iana", compressible: true }, "application/vnd.oxli.countgraph": { source: "iana" }, "application/vnd.pagerduty+json": { source: "iana", compressible: true }, "application/vnd.palm": { source: "iana", extensions: ["pdb", "pqa", "oprc"] }, "application/vnd.panoply": { source: "iana" }, "application/vnd.paos.xml": { source: "iana" }, "application/vnd.patentdive": { source: "iana" }, "application/vnd.patientecommsdoc": { source: "iana" }, "application/vnd.pawaafile": { source: "iana", extensions: ["paw"] }, "application/vnd.pcos": { source: "iana" }, "application/vnd.pg.format": { source: "iana", extensions: ["str"] }, "application/vnd.pg.osasli": { source: "iana", extensions: ["ei6"] }, "application/vnd.piaccess.application-licence": { source: "iana" }, "application/vnd.picsel": { source: "iana", extensions: ["efif"] }, "application/vnd.pmi.widget": { source: "iana", extensions: ["wg"] }, "application/vnd.poc.group-advertisement+xml": { source: "iana", compressible: true }, "application/vnd.pocketlearn": { source: "iana", extensions: ["plf"] }, "application/vnd.powerbuilder6": { source: "iana", extensions: ["pbd"] }, "application/vnd.powerbuilder6-s": { source: "iana" }, "application/vnd.powerbuilder7": { source: "iana" }, "application/vnd.powerbuilder7-s": { source: "iana" }, "application/vnd.powerbuilder75": { source: "iana" }, "application/vnd.powerbuilder75-s": { source: "iana" }, "application/vnd.preminet": { source: "iana" }, "application/vnd.previewsystems.box": { source: "iana", extensions: ["box"] }, "application/vnd.proteus.magazine": { source: "iana", extensions: ["mgz"] }, "application/vnd.psfs": { source: "iana" }, "application/vnd.publishare-delta-tree": { source: "iana", extensions: ["qps"] }, "application/vnd.pvi.ptid1": { source: "iana", extensions: ["ptid"] }, "application/vnd.pwg-multiplexed": { source: "iana" }, "application/vnd.pwg-xhtml-print+xml": { source: "iana", compressible: true }, "application/vnd.qualcomm.brew-app-res": { source: "iana" }, "application/vnd.quarantainenet": { source: "iana" }, "application/vnd.quark.quarkxpress": { source: "iana", extensions: ["qxd", "qxt", "qwd", "qwt", "qxl", "qxb"] }, "application/vnd.quobject-quoxdocument": { source: "iana" }, "application/vnd.radisys.moml+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-audit+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-audit-conf+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-audit-conn+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-audit-dialog+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-audit-stream+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-conf+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-dialog+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-dialog-base+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-dialog-fax-detect+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-dialog-fax-sendrecv+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-dialog-group+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-dialog-speech+xml": { source: "iana", compressible: true }, "application/vnd.radisys.msml-dialog-transform+xml": { source: "iana", compressible: true }, "application/vnd.rainstor.data": { source: "iana" }, "application/vnd.rapid": { source: "iana" }, "application/vnd.rar": { source: "iana", extensions: ["rar"] }, "application/vnd.realvnc.bed": { source: "iana", extensions: ["bed"] }, "application/vnd.recordare.musicxml": { source: "iana", extensions: ["mxl"] }, "application/vnd.recordare.musicxml+xml": { source: "iana", compressible: true, extensions: ["musicxml"] }, "application/vnd.renlearn.rlprint": { source: "iana" }, "application/vnd.resilient.logic": { source: "iana" }, "application/vnd.restful+json": { source: "iana", compressible: true }, "application/vnd.rig.cryptonote": { source: "iana", extensions: ["cryptonote"] }, "application/vnd.rim.cod": { source: "apache", extensions: ["cod"] }, "application/vnd.rn-realmedia": { source: "apache", extensions: ["rm"] }, "application/vnd.rn-realmedia-vbr": { source: "apache", extensions: ["rmvb"] }, "application/vnd.route66.link66+xml": { source: "iana", compressible: true, extensions: ["link66"] }, "application/vnd.rs-274x": { source: "iana" }, "application/vnd.ruckus.download": { source: "iana" }, "application/vnd.s3sms": { source: "iana" }, "application/vnd.sailingtracker.track": { source: "iana", extensions: ["st"] }, "application/vnd.sar": { source: "iana" }, "application/vnd.sbm.cid": { source: "iana" }, "application/vnd.sbm.mid2": { source: "iana" }, "application/vnd.scribus": { source: "iana" }, "application/vnd.sealed.3df": { source: "iana" }, "application/vnd.sealed.csf": { source: "iana" }, "application/vnd.sealed.doc": { source: "iana" }, "application/vnd.sealed.eml": { source: "iana" }, "application/vnd.sealed.mht": { source: "iana" }, "application/vnd.sealed.net": { source: "iana" }, "application/vnd.sealed.ppt": { source: "iana" }, "application/vnd.sealed.tiff": { source: "iana" }, "application/vnd.sealed.xls": { source: "iana" }, "application/vnd.sealedmedia.softseal.html": { source: "iana" }, "application/vnd.sealedmedia.softseal.pdf": { source: "iana" }, "application/vnd.seemail": { source: "iana", extensions: ["see"] }, "application/vnd.seis+json": { source: "iana", compressible: true }, "application/vnd.sema": { source: "iana", extensions: ["sema"] }, "application/vnd.semd": { source: "iana", extensions: ["semd"] }, "application/vnd.semf": { source: "iana", extensions: ["semf"] }, "application/vnd.shade-save-file": { source: "iana" }, "application/vnd.shana.informed.formdata": { source: "iana", extensions: ["ifm"] }, "application/vnd.shana.informed.formtemplate": { source: "iana", extensions: ["itp"] }, "application/vnd.shana.informed.interchange": { source: "iana", extensions: ["iif"] }, "application/vnd.shana.informed.package": { source: "iana", extensions: ["ipk"] }, "application/vnd.shootproof+json": { source: "iana", compressible: true }, "application/vnd.shopkick+json": { source: "iana", compressible: true }, "application/vnd.shp": { source: "iana" }, "application/vnd.shx": { source: "iana" }, "application/vnd.sigrok.session": { source: "iana" }, "application/vnd.simtech-mindmapper": { source: "iana", extensions: ["twd", "twds"] }, "application/vnd.siren+json": { source: "iana", compressible: true }, "application/vnd.smaf": { source: "iana", extensions: ["mmf"] }, "application/vnd.smart.notebook": { source: "iana" }, "application/vnd.smart.teacher": { source: "iana", extensions: ["teacher"] }, "application/vnd.snesdev-page-table": { source: "iana" }, "application/vnd.software602.filler.form+xml": { source: "iana", compressible: true, extensions: ["fo"] }, "application/vnd.software602.filler.form-xml-zip": { source: "iana" }, "application/vnd.solent.sdkm+xml": { source: "iana", compressible: true, extensions: ["sdkm", "sdkd"] }, "application/vnd.spotfire.dxp": { source: "iana", extensions: ["dxp"] }, "application/vnd.spotfire.sfs": { source: "iana", extensions: ["sfs"] }, "application/vnd.sqlite3": { source: "iana" }, "application/vnd.sss-cod": { source: "iana" }, "application/vnd.sss-dtf": { source: "iana" }, "application/vnd.sss-ntf": { source: "iana" }, "application/vnd.stardivision.calc": { source: "apache", extensions: ["sdc"] }, "application/vnd.stardivision.draw": { source: "apache", extensions: ["sda"] }, "application/vnd.stardivision.impress": { source: "apache", extensions: ["sdd"] }, "application/vnd.stardivision.math": { source: "apache", extensions: ["smf"] }, "application/vnd.stardivision.writer": { source: "apache", extensions: ["sdw", "vor"] }, "application/vnd.stardivision.writer-global": { source: "apache", extensions: ["sgl"] }, "application/vnd.stepmania.package": { source: "iana", extensions: ["smzip"] }, "application/vnd.stepmania.stepchart": { source: "iana", extensions: ["sm"] }, "application/vnd.street-stream": { source: "iana" }, "application/vnd.sun.wadl+xml": { source: "iana", compressible: true, extensions: ["wadl"] }, "application/vnd.sun.xml.calc": { source: "apache", extensions: ["sxc"] }, "application/vnd.sun.xml.calc.template": { source: "apache", extensions: ["stc"] }, "application/vnd.sun.xml.draw": { source: "apache", extensions: ["sxd"] }, "application/vnd.sun.xml.draw.template": { source: "apache", extensions: ["std"] }, "application/vnd.sun.xml.impress": { source: "apache", extensions: ["sxi"] }, "application/vnd.sun.xml.impress.template": { source: "apache", extensions: ["sti"] }, "application/vnd.sun.xml.math": { source: "apache", extensions: ["sxm"] }, "application/vnd.sun.xml.writer": { source: "apache", extensions: ["sxw"] }, "application/vnd.sun.xml.writer.global": { source: "apache", extensions: ["sxg"] }, "application/vnd.sun.xml.writer.template": { source: "apache", extensions: ["stw"] }, "application/vnd.sus-calendar": { source: "iana", extensions: ["sus", "susp"] }, "application/vnd.svd": { source: "iana", extensions: ["svd"] }, "application/vnd.swiftview-ics": { source: "iana" }, "application/vnd.sycle+xml": { source: "iana", compressible: true }, "application/vnd.syft+json": { source: "iana", compressible: true }, "application/vnd.symbian.install": { source: "apache", extensions: ["sis", "sisx"] }, "application/vnd.syncml+xml": { source: "iana", charset: "UTF-8", compressible: true, extensions: ["xsm"] }, "application/vnd.syncml.dm+wbxml": { source: "iana", charset: "UTF-8", extensions: ["bdm"] }, "application/vnd.syncml.dm+xml": { source: "iana", charset: "UTF-8", compressible: true, extensions: ["xdm"] }, "application/vnd.syncml.dm.notification": { source: "iana" }, "application/vnd.syncml.dmddf+wbxml": { source: "iana" }, "application/vnd.syncml.dmddf+xml": { source: "iana", charset: "UTF-8", compressible: true, extensions: ["ddf"] }, "application/vnd.syncml.dmtnds+wbxml": { source: "iana" }, "application/vnd.syncml.dmtnds+xml": { source: "iana", charset: "UTF-8", compressible: true }, "application/vnd.syncml.ds.notification": { source: "iana" }, "application/vnd.tableschema+json": { source: "iana", compressible: true }, "application/vnd.tao.intent-module-archive": { source: "iana", extensions: ["tao"] }, "application/vnd.tcpdump.pcap": { source: "iana", extensions: ["pcap", "cap", "dmp"] }, "application/vnd.think-cell.ppttc+json": { source: "iana", compressible: true }, "application/vnd.tmd.mediaflex.api+xml": { source: "iana", compressible: true }, "application/vnd.tml": { source: "iana" }, "application/vnd.tmobile-livetv": { source: "iana", extensions: ["tmo"] }, "application/vnd.tri.onesource": { source: "iana" }, "application/vnd.trid.tpt": { source: "iana", extensions: ["tpt"] }, "application/vnd.triscape.mxs": { source: "iana", extensions: ["mxs"] }, "application/vnd.trueapp": { source: "iana", extensions: ["tra"] }, "application/vnd.truedoc": { source: "iana" }, "application/vnd.ubisoft.webplayer": { source: "iana" }, "application/vnd.ufdl": { source: "iana", extensions: ["ufd", "ufdl"] }, "application/vnd.uiq.theme": { source: "iana", extensions: ["utz"] }, "application/vnd.umajin": { source: "iana", extensions: ["umj"] }, "application/vnd.unity": { source: "iana", extensions: ["unityweb"] }, "application/vnd.uoml+xml": { source: "iana", compressible: true, extensions: ["uoml"] }, "application/vnd.uplanet.alert": { source: "iana" }, "application/vnd.uplanet.alert-wbxml": { source: "iana" }, "application/vnd.uplanet.bearer-choice": { source: "iana" }, "application/vnd.uplanet.bearer-choice-wbxml": { source: "iana" }, "application/vnd.uplanet.cacheop": { source: "iana" }, "application/vnd.uplanet.cacheop-wbxml": { source: "iana" }, "application/vnd.uplanet.channel": { source: "iana" }, "application/vnd.uplanet.channel-wbxml": { source: "iana" }, "application/vnd.uplanet.list": { source: "iana" }, "application/vnd.uplanet.list-wbxml": { source: "iana" }, "application/vnd.uplanet.listcmd": { source: "iana" }, "application/vnd.uplanet.listcmd-wbxml": { source: "iana" }, "application/vnd.uplanet.signal": { source: "iana" }, "application/vnd.uri-map": { source: "iana" }, "application/vnd.valve.source.material": { source: "iana" }, "application/vnd.vcx": { source: "iana", extensions: ["vcx"] }, "application/vnd.vd-study": { source: "iana" }, "application/vnd.vectorworks": { source: "iana" }, "application/vnd.vel+json": { source: "iana", compressible: true }, "application/vnd.verimatrix.vcas": { source: "iana" }, "application/vnd.veritone.aion+json": { source: "iana", compressible: true }, "application/vnd.veryant.thin": { source: "iana" }, "application/vnd.ves.encrypted": { source: "iana" }, "application/vnd.vidsoft.vidconference": { source: "iana" }, "application/vnd.visio": { source: "iana", extensions: ["vsd", "vst", "vss", "vsw"] }, "application/vnd.visionary": { source: "iana", extensions: ["vis"] }, "application/vnd.vividence.scriptfile": { source: "iana" }, "application/vnd.vsf": { source: "iana", extensions: ["vsf"] }, "application/vnd.wap.sic": { source: "iana" }, "application/vnd.wap.slc": { source: "iana" }, "application/vnd.wap.wbxml": { source: "iana", charset: "UTF-8", extensions: ["wbxml"] }, "application/vnd.wap.wmlc": { source: "iana", extensions: ["wmlc"] }, "application/vnd.wap.wmlscriptc": { source: "iana", extensions: ["wmlsc"] }, "application/vnd.webturbo": { source: "iana", extensions: ["wtb"] }, "application/vnd.wfa.dpp": { source: "iana" }, "application/vnd.wfa.p2p": { source: "iana" }, "application/vnd.wfa.wsc": { source: "iana" }, "application/vnd.windows.devicepairing": { source: "iana" }, "application/vnd.wmc": { source: "iana" }, "application/vnd.wmf.bootstrap": { source: "iana" }, "application/vnd.wolfram.mathematica": { source: "iana" }, "application/vnd.wolfram.mathematica.package": { source: "iana" }, "application/vnd.wolfram.player": { source: "iana", extensions: ["nbp"] }, "application/vnd.wordperfect": { source: "iana", extensions: ["wpd"] }, "application/vnd.wqd": { source: "iana", extensions: ["wqd"] }, "application/vnd.wrq-hp3000-labelled": { source: "iana" }, "application/vnd.wt.stf": { source: "iana", extensions: ["stf"] }, "application/vnd.wv.csp+wbxml": { source: "iana" }, "application/vnd.wv.csp+xml": { source: "iana", compressible: true }, "application/vnd.wv.ssp+xml": { source: "iana", compressible: true }, "application/vnd.xacml+json": { source: "iana", compressible: true }, "application/vnd.xara": { source: "iana", extensions: ["xar"] }, "application/vnd.xfdl": { source: "iana", extensions: ["xfdl"] }, "application/vnd.xfdl.webform": { source: "iana" }, "application/vnd.xmi+xml": { source: "iana", compressible: true }, "application/vnd.xmpie.cpkg": { source: "iana" }, "application/vnd.xmpie.dpkg": { source: "iana" }, "application/vnd.xmpie.plan": { source: "iana" }, "application/vnd.xmpie.ppkg": { source: "iana" }, "application/vnd.xmpie.xlim": { source: "iana" }, "application/vnd.yamaha.hv-dic": { source: "iana", extensions: ["hvd"] }, "application/vnd.yamaha.hv-script": { source: "iana", extensions: ["hvs"] }, "application/vnd.yamaha.hv-voice": { source: "iana", extensions: ["hvp"] }, "application/vnd.yamaha.openscoreformat": { source: "iana", extensions: ["osf"] }, "application/vnd.yamaha.openscoreformat.osfpvg+xml": { source: "iana", compressible: true, extensions: ["osfpvg"] }, "application/vnd.yamaha.remote-setup": { source: "iana" }, "application/vnd.yamaha.smaf-audio": { source: "iana", extensions: ["saf"] }, "application/vnd.yamaha.smaf-phrase": { source: "iana", extensions: ["spf"] }, "application/vnd.yamaha.through-ngn": { source: "iana" }, "application/vnd.yamaha.tunnel-udpencap": { source: "iana" }, "application/vnd.yaoweme": { source: "iana" }, "application/vnd.yellowriver-custom-menu": { source: "iana", extensions: ["cmp"] }, "application/vnd.youtube.yt": { source: "iana" }, "application/vnd.zul": { source: "iana", extensions: ["zir", "zirz"] }, "application/vnd.zzazz.deck+xml": { source: "iana", compressible: true, extensions: ["zaz"] }, "application/voicexml+xml": { source: "iana", compressible: true, extensions: ["vxml"] }, "application/voucher-cms+json": { source: "iana", compressible: true }, "application/vq-rtcpxr": { source: "iana" }, "application/wasm": { source: "iana", compressible: true, extensions: ["wasm"] }, "application/watcherinfo+xml": { source: "iana", compressible: true, extensions: ["wif"] }, "application/webpush-options+json": { source: "iana", compressible: true }, "application/whoispp-query": { source: "iana" }, "application/whoispp-response": { source: "iana" }, "application/widget": { source: "iana", extensions: ["wgt"] }, "application/winhlp": { source: "apache", extensions: ["hlp"] }, "application/wita": { source: "iana" }, "application/wordperfect5.1": { source: "iana" }, "application/wsdl+xml": { source: "iana", compressible: true, extensions: ["wsdl"] }, "application/wspolicy+xml": { source: "iana", compressible: true, extensions: ["wspolicy"] }, "application/x-7z-compressed": { source: "apache", compressible: false, extensions: ["7z"] }, "application/x-abiword": { source: "apache", extensions: ["abw"] }, "application/x-ace-compressed": { source: "apache", extensions: ["ace"] }, "application/x-amf": { source: "apache" }, "application/x-apple-diskimage": { source: "apache", extensions: ["dmg"] }, "application/x-arj": { compressible: false, extensions: ["arj"] }, "application/x-authorware-bin": { source: "apache", extensions: ["aab", "x32", "u32", "vox"] }, "application/x-authorware-map": { source: "apache", extensions: ["aam"] }, "application/x-authorware-seg": { source: "apache", extensions: ["aas"] }, "application/x-bcpio": { source: "apache", extensions: ["bcpio"] }, "application/x-bdoc": { compressible: false, extensions: ["bdoc"] }, "application/x-bittorrent": { source: "apache", extensions: ["torrent"] }, "application/x-blorb": { source: "apache", extensions: ["blb", "blorb"] }, "application/x-bzip": { source: "apache", compressible: false, extensions: ["bz"] }, "application/x-bzip2": { source: "apache", compressible: false, extensions: ["bz2", "boz"] }, "application/x-cbr": { source: "apache", extensions: ["cbr", "cba", "cbt", "cbz", "cb7"] }, "application/x-cdlink": { source: "apache", extensions: ["vcd"] }, "application/x-cfs-compressed": { source: "apache", extensions: ["cfs"] }, "application/x-chat": { source: "apache", extensions: ["chat"] }, "application/x-chess-pgn": { source: "apache", extensions: ["pgn"] }, "application/x-chrome-extension": { extensions: ["crx"] }, "application/x-cocoa": { source: "nginx", extensions: ["cco"] }, "application/x-compress": { source: "apache" }, "application/x-conference": { source: "apache", extensions: ["nsc"] }, "application/x-cpio": { source: "apache", extensions: ["cpio"] }, "application/x-csh": { source: "apache", extensions: ["csh"] }, "application/x-deb": { compressible: false }, "application/x-debian-package": { source: "apache", extensions: ["deb", "udeb"] }, "application/x-dgc-compressed": { source: "apache", extensions: ["dgc"] }, "application/x-director": { source: "apache", extensions: ["dir", "dcr", "dxr", "cst", "cct", "cxt", "w3d", "fgd", "swa"] }, "application/x-doom": { source: "apache", extensions: ["wad"] }, "application/x-dtbncx+xml": { source: "apache", compressible: true, extensions: ["ncx"] }, "application/x-dtbook+xml": { source: "apache", compressible: true, extensions: ["dtb"] }, "application/x-dtbresource+xml": { source: "apache", compressible: true, extensions: ["res"] }, "application/x-dvi": { source: "apache", compressible: false, extensions: ["dvi"] }, "application/x-envoy": { source: "apache", extensions: ["evy"] }, "application/x-eva": { source: "apache", extensions: ["eva"] }, "application/x-font-bdf": { source: "apache", extensions: ["bdf"] }, "application/x-font-dos": { source: "apache" }, "application/x-font-framemaker": { source: "apache" }, "application/x-font-ghostscript": { source: "apache", extensions: ["gsf"] }, "application/x-font-libgrx": { source: "apache" }, "application/x-font-linux-psf": { source: "apache", extensions: ["psf"] }, "application/x-font-pcf": { source: "apache", extensions: ["pcf"] }, "application/x-font-snf": { source: "apache", extensions: ["snf"] }, "application/x-font-speedo": { source: "apache" }, "application/x-font-sunos-news": { source: "apache" }, "application/x-font-type1": { source: "apache", extensions: ["pfa", "pfb", "pfm", "afm"] }, "application/x-font-vfont": { source: "apache" }, "application/x-freearc": { source: "apache", extensions: ["arc"] }, "application/x-futuresplash": { source: "apache", extensions: ["spl"] }, "application/x-gca-compressed": { source: "apache", extensions: ["gca"] }, "application/x-glulx": { source: "apache", extensions: ["ulx"] }, "application/x-gnumeric": { source: "apache", extensions: ["gnumeric"] }, "application/x-gramps-xml": { source: "apache", extensions: ["gramps"] }, "application/x-gtar": { source: "apache", extensions: ["gtar"] }, "application/x-gzip": { source: "apache" }, "application/x-hdf": { source: "apache", extensions: ["hdf"] }, "application/x-httpd-php": { compressible: true, extensions: ["php"] }, "application/x-install-instructions": { source: "apache", extensions: ["install"] }, "application/x-iso9660-image": { source: "apache", extensions: ["iso"] }, "application/x-iwork-keynote-sffkey": { extensions: ["key"] }, "application/x-iwork-numbers-sffnumbers": { extensions: ["numbers"] }, "application/x-iwork-pages-sffpages": { extensions: ["pages"] }, "application/x-java-archive-diff": { source: "nginx", extensions: ["jardiff"] }, "application/x-java-jnlp-file": { source: "apache", compressible: false, extensions: ["jnlp"] }, "application/x-javascript": { compressible: true }, "application/x-keepass2": { extensions: ["kdbx"] }, "application/x-latex": { source: "apache", compressible: false, extensions: ["latex"] }, "application/x-lua-bytecode": { extensions: ["luac"] }, "application/x-lzh-compressed": { source: "apache", extensions: ["lzh", "lha"] }, "application/x-makeself": { source: "nginx", extensions: ["run"] }, "application/x-mie": { source: "apache", extensions: ["mie"] }, "application/x-mobipocket-ebook": { source: "apache", extensions: ["prc", "mobi"] }, "application/x-mpegurl": { compressible: false }, "application/x-ms-application": { source: "apache", extensions: ["application"] }, "application/x-ms-shortcut": { source: "apache", extensions: ["lnk"] }, "application/x-ms-wmd": { source: "apache", extensions: ["wmd"] }, "application/x-ms-wmz": { source: "apache", extensions: ["wmz"] }, "application/x-ms-xbap": { source: "apache", extensions: ["xbap"] }, "application/x-msaccess": { source: "apache", extensions: ["mdb"] }, "application/x-msbinder": { source: "apache", extensions: ["obd"] }, "application/x-mscardfile": { source: "apache", extensions: ["crd"] }, "application/x-msclip": { source: "apache", extensions: ["clp"] }, "application/x-msdos-program": { extensions: ["exe"] }, "application/x-msdownload": { source: "apache", extensions: ["exe", "dll", "com", "bat", "msi"] }, "application/x-msmediaview": { source: "apache", extensions: ["mvb", "m13", "m14"] }, "application/x-msmetafile": { source: "apache", extensions: ["wmf", "wmz", "emf", "emz"] }, "application/x-msmoney": { source: "apache", extensions: ["mny"] }, "application/x-mspublisher": { source: "apache", extensions: ["pub"] }, "application/x-msschedule": { source: "apache", extensions: ["scd"] }, "application/x-msterminal": { source: "apache", extensions: ["trm"] }, "application/x-mswrite": { source: "apache", extensions: ["wri"] }, "application/x-netcdf": { source: "apache", extensions: ["nc", "cdf"] }, "application/x-ns-proxy-autoconfig": { compressible: true, extensions: ["pac"] }, "application/x-nzb": { source: "apache", extensions: ["nzb"] }, "application/x-perl": { source: "nginx", extensions: ["pl", "pm"] }, "application/x-pilot": { source: "nginx", extensions: ["prc", "pdb"] }, "application/x-pkcs12": { source: "apache", compressible: false, extensions: ["p12", "pfx"] }, "application/x-pkcs7-certificates": { source: "apache", extensions: ["p7b", "spc"] }, "application/x-pkcs7-certreqresp": { source: "apache", extensions: ["p7r"] }, "application/x-pki-message": { source: "iana" }, "application/x-rar-compressed": { source: "apache", compressible: false, extensions: ["rar"] }, "application/x-redhat-package-manager": { source: "nginx", extensions: ["rpm"] }, "application/x-research-info-systems": { source: "apache", extensions: ["ris"] }, "application/x-sea": { source: "nginx", extensions: ["sea"] }, "application/x-sh": { source: "apache", compressible: true, extensions: ["sh"] }, "application/x-shar": { source: "apache", extensions: ["shar"] }, "application/x-shockwave-flash": { source: "apache", compressible: false, extensions: ["swf"] }, "application/x-silverlight-app": { source: "apache", extensions: ["xap"] }, "application/x-sql": { source: "apache", extensions: ["sql"] }, "application/x-stuffit": { source: "apache", compressible: false, extensions: ["sit"] }, "application/x-stuffitx": { source: "apache", extensions: ["sitx"] }, "application/x-subrip": { source: "apache", extensions: ["srt"] }, "application/x-sv4cpio": { source: "apache", extensions: ["sv4cpio"] }, "application/x-sv4crc": { source: "apache", extensions: ["sv4crc"] }, "application/x-t3vm-image": { source: "apache", extensions: ["t3"] }, "application/x-tads": { source: "apache", extensions: ["gam"] }, "application/x-tar": { source: "apache", compressible: true, extensions: ["tar"] }, "application/x-tcl": { source: "apache", extensions: ["tcl", "tk"] }, "application/x-tex": { source: "apache", extensions: ["tex"] }, "application/x-tex-tfm": { source: "apache", extensions: ["tfm"] }, "application/x-texinfo": { source: "apache", extensions: ["texinfo", "texi"] }, "application/x-tgif": { source: "apache", extensions: ["obj"] }, "application/x-ustar": { source: "apache", extensions: ["ustar"] }, "application/x-virtualbox-hdd": { compressible: true, extensions: ["hdd"] }, "application/x-virtualbox-ova": { compressible: true, extensions: ["ova"] }, "application/x-virtualbox-ovf": { compressible: true, extensions: ["ovf"] }, "application/x-virtualbox-vbox": { compressible: true, extensions: ["vbox"] }, "application/x-virtualbox-vbox-extpack": { compressible: false, extensions: ["vbox-extpack"] }, "application/x-virtualbox-vdi": { compressible: true, extensions: ["vdi"] }, "application/x-virtualbox-vhd": { compressible: true, extensions: ["vhd"] }, "application/x-virtualbox-vmdk": { compressible: true, extensions: ["vmdk"] }, "application/x-wais-source": { source: "apache", extensions: ["src"] }, "application/x-web-app-manifest+json": { compressible: true, extensions: ["webapp"] }, "application/x-www-form-urlencoded": { source: "iana", compressible: true }, "application/x-x509-ca-cert": { source: "iana", extensions: ["der", "crt", "pem"] }, "application/x-x509-ca-ra-cert": { source: "iana" }, "application/x-x509-next-ca-cert": { source: "iana" }, "application/x-xfig": { source: "apache", extensions: ["fig"] }, "application/x-xliff+xml": { source: "apache", compressible: true, extensions: ["xlf"] }, "application/x-xpinstall": { source: "apache", compressible: false, extensions: ["xpi"] }, "application/x-xz": { source: "apache", extensions: ["xz"] }, "application/x-zmachine": { source: "apache", extensions: ["z1", "z2", "z3", "z4", "z5", "z6", "z7", "z8"] }, "application/x400-bp": { source: "iana" }, "application/xacml+xml": { source: "iana", compressible: true }, "application/xaml+xml": { source: "apache", compressible: true, extensions: ["xaml"] }, "application/xcap-att+xml": { source: "iana", compressible: true, extensions: ["xav"] }, "application/xcap-caps+xml": { source: "iana", compressible: true, extensions: ["xca"] }, "application/xcap-diff+xml": { source: "iana", compressible: true, extensions: ["xdf"] }, "application/xcap-el+xml": { source: "iana", compressible: true, extensions: ["xel"] }, "application/xcap-error+xml": { source: "iana", compressible: true }, "application/xcap-ns+xml": { source: "iana", compressible: true, extensions: ["xns"] }, "application/xcon-conference-info+xml": { source: "iana", compressible: true }, "application/xcon-conference-info-diff+xml": { source: "iana", compressible: true }, "application/xenc+xml": { source: "iana", compressible: true, extensions: ["xenc"] }, "application/xhtml+xml": { source: "iana", compressible: true, extensions: ["xhtml", "xht"] }, "application/xhtml-voice+xml": { source: "apache", compressible: true }, "application/xliff+xml": { source: "iana", compressible: true, extensions: ["xlf"] }, "application/xml": { source: "iana", compressible: true, extensions: ["xml", "xsl", "xsd", "rng"] }, "application/xml-dtd": { source: "iana", compressible: true, extensions: ["dtd"] }, "application/xml-external-parsed-entity": { source: "iana" }, "application/xml-patch+xml": { source: "iana", compressible: true }, "application/xmpp+xml": { source: "iana", compressible: true }, "application/xop+xml": { source: "iana", compressible: true, extensions: ["xop"] }, "application/xproc+xml": { source: "apache", compressible: true, extensions: ["xpl"] }, "application/xslt+xml": { source: "iana", compressible: true, extensions: ["xsl", "xslt"] }, "application/xspf+xml": { source: "apache", compressible: true, extensions: ["xspf"] }, "application/xv+xml": { source: "iana", compressible: true, extensions: ["mxml", "xhvml", "xvml", "xvm"] }, "application/yang": { source: "iana", extensions: ["yang"] }, "application/yang-data+json": { source: "iana", compressible: true }, "application/yang-data+xml": { source: "iana", compressible: true }, "application/yang-patch+json": { source: "iana", compressible: true }, "application/yang-patch+xml": { source: "iana", compressible: true }, "application/yin+xml": { source: "iana", compressible: true, extensions: ["yin"] }, "application/zip": { source: "iana", compressible: false, extensions: ["zip"] }, "application/zlib": { source: "iana" }, "application/zstd": { source: "iana" }, "audio/1d-interleaved-parityfec": { source: "iana" }, "audio/32kadpcm": { source: "iana" }, "audio/3gpp": { source: "iana", compressible: false, extensions: ["3gpp"] }, "audio/3gpp2": { source: "iana" }, "audio/aac": { source: "iana" }, "audio/ac3": { source: "iana" }, "audio/adpcm": { source: "apache", extensions: ["adp"] }, "audio/amr": { source: "iana", extensions: ["amr"] }, "audio/amr-wb": { source: "iana" }, "audio/amr-wb+": { source: "iana" }, "audio/aptx": { source: "iana" }, "audio/asc": { source: "iana" }, "audio/atrac-advanced-lossless": { source: "iana" }, "audio/atrac-x": { source: "iana" }, "audio/atrac3": { source: "iana" }, "audio/basic": { source: "iana", compressible: false, extensions: ["au", "snd"] }, "audio/bv16": { source: "iana" }, "audio/bv32": { source: "iana" }, "audio/clearmode": { source: "iana" }, "audio/cn": { source: "iana" }, "audio/dat12": { source: "iana" }, "audio/dls": { source: "iana" }, "audio/dsr-es201108": { source: "iana" }, "audio/dsr-es202050": { source: "iana" }, "audio/dsr-es202211": { source: "iana" }, "audio/dsr-es202212": { source: "iana" }, "audio/dv": { source: "iana" }, "audio/dvi4": { source: "iana" }, "audio/eac3": { source: "iana" }, "audio/encaprtp": { source: "iana" }, "audio/evrc": { source: "iana" }, "audio/evrc-qcp": { source: "iana" }, "audio/evrc0": { source: "iana" }, "audio/evrc1": { source: "iana" }, "audio/evrcb": { source: "iana" }, "audio/evrcb0": { source: "iana" }, "audio/evrcb1": { source: "iana" }, "audio/evrcnw": { source: "iana" }, "audio/evrcnw0": { source: "iana" }, "audio/evrcnw1": { source: "iana" }, "audio/evrcwb": { source: "iana" }, "audio/evrcwb0": { source: "iana" }, "audio/evrcwb1": { source: "iana" }, "audio/evs": { source: "iana" }, "audio/flexfec": { source: "iana" }, "audio/fwdred": { source: "iana" }, "audio/g711-0": { source: "iana" }, "audio/g719": { source: "iana" }, "audio/g722": { source: "iana" }, "audio/g7221": { source: "iana" }, "audio/g723": { source: "iana" }, "audio/g726-16": { source: "iana" }, "audio/g726-24": { source: "iana" }, "audio/g726-32": { source: "iana" }, "audio/g726-40": { source: "iana" }, "audio/g728": { source: "iana" }, "audio/g729": { source: "iana" }, "audio/g7291": { source: "iana" }, "audio/g729d": { source: "iana" }, "audio/g729e": { source: "iana" }, "audio/gsm": { source: "iana" }, "audio/gsm-efr": { source: "iana" }, "audio/gsm-hr-08": { source: "iana" }, "audio/ilbc": { source: "iana" }, "audio/ip-mr_v2.5": { source: "iana" }, "audio/isac": { source: "apache" }, "audio/l16": { source: "iana" }, "audio/l20": { source: "iana" }, "audio/l24": { source: "iana", compressible: false }, "audio/l8": { source: "iana" }, "audio/lpc": { source: "iana" }, "audio/melp": { source: "iana" }, "audio/melp1200": { source: "iana" }, "audio/melp2400": { source: "iana" }, "audio/melp600": { source: "iana" }, "audio/mhas": { source: "iana" }, "audio/midi": { source: "apache", extensions: ["mid", "midi", "kar", "rmi"] }, "audio/mobile-xmf": { source: "iana", extensions: ["mxmf"] }, "audio/mp3": { compressible: false, extensions: ["mp3"] }, "audio/mp4": { source: "iana", compressible: false, extensions: ["m4a", "mp4a"] }, "audio/mp4a-latm": { source: "iana" }, "audio/mpa": { source: "iana" }, "audio/mpa-robust": { source: "iana" }, "audio/mpeg": { source: "iana", compressible: false, extensions: ["mpga", "mp2", "mp2a", "mp3", "m2a", "m3a"] }, "audio/mpeg4-generic": { source: "iana" }, "audio/musepack": { source: "apache" }, "audio/ogg": { source: "iana", compressible: false, extensions: ["oga", "ogg", "spx", "opus"] }, "audio/opus": { source: "iana" }, "audio/parityfec": { source: "iana" }, "audio/pcma": { source: "iana" }, "audio/pcma-wb": { source: "iana" }, "audio/pcmu": { source: "iana" }, "audio/pcmu-wb": { source: "iana" }, "audio/prs.sid": { source: "iana" }, "audio/qcelp": { source: "iana" }, "audio/raptorfec": { source: "iana" }, "audio/red": { source: "iana" }, "audio/rtp-enc-aescm128": { source: "iana" }, "audio/rtp-midi": { source: "iana" }, "audio/rtploopback": { source: "iana" }, "audio/rtx": { source: "iana" }, "audio/s3m": { source: "apache", extensions: ["s3m"] }, "audio/scip": { source: "iana" }, "audio/silk": { source: "apache", extensions: ["sil"] }, "audio/smv": { source: "iana" }, "audio/smv-qcp": { source: "iana" }, "audio/smv0": { source: "iana" }, "audio/sofa": { source: "iana" }, "audio/sp-midi": { source: "iana" }, "audio/speex": { source: "iana" }, "audio/t140c": { source: "iana" }, "audio/t38": { source: "iana" }, "audio/telephone-event": { source: "iana" }, "audio/tetra_acelp": { source: "iana" }, "audio/tetra_acelp_bb": { source: "iana" }, "audio/tone": { source: "iana" }, "audio/tsvcis": { source: "iana" }, "audio/uemclip": { source: "iana" }, "audio/ulpfec": { source: "iana" }, "audio/usac": { source: "iana" }, "audio/vdvi": { source: "iana" }, "audio/vmr-wb": { source: "iana" }, "audio/vnd.3gpp.iufp": { source: "iana" }, "audio/vnd.4sb": { source: "iana" }, "audio/vnd.audiokoz": { source: "iana" }, "audio/vnd.celp": { source: "iana" }, "audio/vnd.cisco.nse": { source: "iana" }, "audio/vnd.cmles.radio-events": { source: "iana" }, "audio/vnd.cns.anp1": { source: "iana" }, "audio/vnd.cns.inf1": { source: "iana" }, "audio/vnd.dece.audio": { source: "iana", extensions: ["uva", "uvva"] }, "audio/vnd.digital-winds": { source: "iana", extensions: ["eol"] }, "audio/vnd.dlna.adts": { source: "iana" }, "audio/vnd.dolby.heaac.1": { source: "iana" }, "audio/vnd.dolby.heaac.2": { source: "iana" }, "audio/vnd.dolby.mlp": { source: "iana" }, "audio/vnd.dolby.mps": { source: "iana" }, "audio/vnd.dolby.pl2": { source: "iana" }, "audio/vnd.dolby.pl2x": { source: "iana" }, "audio/vnd.dolby.pl2z": { source: "iana" }, "audio/vnd.dolby.pulse.1": { source: "iana" }, "audio/vnd.dra": { source: "iana", extensions: ["dra"] }, "audio/vnd.dts": { source: "iana", extensions: ["dts"] }, "audio/vnd.dts.hd": { source: "iana", extensions: ["dtshd"] }, "audio/vnd.dts.uhd": { source: "iana" }, "audio/vnd.dvb.file": { source: "iana" }, "audio/vnd.everad.plj": { source: "iana" }, "audio/vnd.hns.audio": { source: "iana" }, "audio/vnd.lucent.voice": { source: "iana", extensions: ["lvp"] }, "audio/vnd.ms-playready.media.pya": { source: "iana", extensions: ["pya"] }, "audio/vnd.nokia.mobile-xmf": { source: "iana" }, "audio/vnd.nortel.vbk": { source: "iana" }, "audio/vnd.nuera.ecelp4800": { source: "iana", extensions: ["ecelp4800"] }, "audio/vnd.nuera.ecelp7470": { source: "iana", extensions: ["ecelp7470"] }, "audio/vnd.nuera.ecelp9600": { source: "iana", extensions: ["ecelp9600"] }, "audio/vnd.octel.sbc": { source: "iana" }, "audio/vnd.presonus.multitrack": { source: "iana" }, "audio/vnd.qcelp": { source: "iana" }, "audio/vnd.rhetorex.32kadpcm": { source: "iana" }, "audio/vnd.rip": { source: "iana", extensions: ["rip"] }, "audio/vnd.rn-realaudio": { compressible: false }, "audio/vnd.sealedmedia.softseal.mpeg": { source: "iana" }, "audio/vnd.vmx.cvsd": { source: "iana" }, "audio/vnd.wave": { compressible: false }, "audio/vorbis": { source: "iana", compressible: false }, "audio/vorbis-config": { source: "iana" }, "audio/wav": { compressible: false, extensions: ["wav"] }, "audio/wave": { compressible: false, extensions: ["wav"] }, "audio/webm": { source: "apache", compressible: false, extensions: ["weba"] }, "audio/x-aac": { source: "apache", compressible: false, extensions: ["aac"] }, "audio/x-aiff": { source: "apache", extensions: ["aif", "aiff", "aifc"] }, "audio/x-caf": { source: "apache", compressible: false, extensions: ["caf"] }, "audio/x-flac": { source: "apache", extensions: ["flac"] }, "audio/x-m4a": { source: "nginx", extensions: ["m4a"] }, "audio/x-matroska": { source: "apache", extensions: ["mka"] }, "audio/x-mpegurl": { source: "apache", extensions: ["m3u"] }, "audio/x-ms-wax": { source: "apache", extensions: ["wax"] }, "audio/x-ms-wma": { source: "apache", extensions: ["wma"] }, "audio/x-pn-realaudio": { source: "apache", extensions: ["ram", "ra"] }, "audio/x-pn-realaudio-plugin": { source: "apache", extensions: ["rmp"] }, "audio/x-realaudio": { source: "nginx", extensions: ["ra"] }, "audio/x-tta": { source: "apache" }, "audio/x-wav": { source: "apache", extensions: ["wav"] }, "audio/xm": { source: "apache", extensions: ["xm"] }, "chemical/x-cdx": { source: "apache", extensions: ["cdx"] }, "chemical/x-cif": { source: "apache", extensions: ["cif"] }, "chemical/x-cmdf": { source: "apache", extensions: ["cmdf"] }, "chemical/x-cml": { source: "apache", extensions: ["cml"] }, "chemical/x-csml": { source: "apache", extensions: ["csml"] }, "chemical/x-pdb": { source: "apache" }, "chemical/x-xyz": { source: "apache", extensions: ["xyz"] }, "font/collection": { source: "iana", extensions: ["ttc"] }, "font/otf": { source: "iana", compressible: true, extensions: ["otf"] }, "font/sfnt": { source: "iana" }, "font/ttf": { source: "iana", compressible: true, extensions: ["ttf"] }, "font/woff": { source: "iana", extensions: ["woff"] }, "font/woff2": { source: "iana", extensions: ["woff2"] }, "image/aces": { source: "iana", extensions: ["exr"] }, "image/apng": { compressible: false, extensions: ["apng"] }, "image/avci": { source: "iana", extensions: ["avci"] }, "image/avcs": { source: "iana", extensions: ["avcs"] }, "image/avif": { source: "iana", compressible: false, extensions: ["avif"] }, "image/bmp": { source: "iana", compressible: true, extensions: ["bmp"] }, "image/cgm": { source: "iana", extensions: ["cgm"] }, "image/dicom-rle": { source: "iana", extensions: ["drle"] }, "image/emf": { source: "iana", extensions: ["emf"] }, "image/fits": { source: "iana", extensions: ["fits"] }, "image/g3fax": { source: "iana", extensions: ["g3"] }, "image/gif": { source: "iana", compressible: false, extensions: ["gif"] }, "image/heic": { source: "iana", extensions: ["heic"] }, "image/heic-sequence": { source: "iana", extensions: ["heics"] }, "image/heif": { source: "iana", extensions: ["heif"] }, "image/heif-sequence": { source: "iana", extensions: ["heifs"] }, "image/hej2k": { source: "iana", extensions: ["hej2"] }, "image/hsj2": { source: "iana", extensions: ["hsj2"] }, "image/ief": { source: "iana", extensions: ["ief"] }, "image/jls": { source: "iana", extensions: ["jls"] }, "image/jp2": { source: "iana", compressible: false, extensions: ["jp2", "jpg2"] }, "image/jpeg": { source: "iana", compressible: false, extensions: ["jpeg", "jpg", "jpe"] }, "image/jph": { source: "iana", extensions: ["jph"] }, "image/jphc": { source: "iana", extensions: ["jhc"] }, "image/jpm": { source: "iana", compressible: false, extensions: ["jpm"] }, "image/jpx": { source: "iana", compressible: false, extensions: ["jpx", "jpf"] }, "image/jxr": { source: "iana", extensions: ["jxr"] }, "image/jxra": { source: "iana", extensions: ["jxra"] }, "image/jxrs": { source: "iana", extensions: ["jxrs"] }, "image/jxs": { source: "iana", extensions: ["jxs"] }, "image/jxsc": { source: "iana", extensions: ["jxsc"] }, "image/jxsi": { source: "iana", extensions: ["jxsi"] }, "image/jxss": { source: "iana", extensions: ["jxss"] }, "image/ktx": { source: "iana", extensions: ["ktx"] }, "image/ktx2": { source: "iana", extensions: ["ktx2"] }, "image/naplps": { source: "iana" }, "image/pjpeg": { compressible: false }, "image/png": { source: "iana", compressible: false, extensions: ["png"] }, "image/prs.btif": { source: "iana", extensions: ["btif"] }, "image/prs.pti": { source: "iana", extensions: ["pti"] }, "image/pwg-raster": { source: "iana" }, "image/sgi": { source: "apache", extensions: ["sgi"] }, "image/svg+xml": { source: "iana", compressible: true, extensions: ["svg", "svgz"] }, "image/t38": { source: "iana", extensions: ["t38"] }, "image/tiff": { source: "iana", compressible: false, extensions: ["tif", "tiff"] }, "image/tiff-fx": { source: "iana", extensions: ["tfx"] }, "image/vnd.adobe.photoshop": { source: "iana", compressible: true, extensions: ["psd"] }, "image/vnd.airzip.accelerator.azv": { source: "iana", extensions: ["azv"] }, "image/vnd.cns.inf2": { source: "iana" }, "image/vnd.dece.graphic": { source: "iana", extensions: ["uvi", "uvvi", "uvg", "uvvg"] }, "image/vnd.djvu": { source: "iana", extensions: ["djvu", "djv"] }, "image/vnd.dvb.subtitle": { source: "iana", extensions: ["sub"] }, "image/vnd.dwg": { source: "iana", extensions: ["dwg"] }, "image/vnd.dxf": { source: "iana", extensions: ["dxf"] }, "image/vnd.fastbidsheet": { source: "iana", extensions: ["fbs"] }, "image/vnd.fpx": { source: "iana", extensions: ["fpx"] }, "image/vnd.fst": { source: "iana", extensions: ["fst"] }, "image/vnd.fujixerox.edmics-mmr": { source: "iana", extensions: ["mmr"] }, "image/vnd.fujixerox.edmics-rlc": { source: "iana", extensions: ["rlc"] }, "image/vnd.globalgraphics.pgb": { source: "iana" }, "image/vnd.microsoft.icon": { source: "iana", compressible: true, extensions: ["ico"] }, "image/vnd.mix": { source: "iana" }, "image/vnd.mozilla.apng": { source: "iana" }, "image/vnd.ms-dds": { compressible: true, extensions: ["dds"] }, "image/vnd.ms-modi": { source: "iana", extensions: ["mdi"] }, "image/vnd.ms-photo": { source: "apache", extensions: ["wdp"] }, "image/vnd.net-fpx": { source: "iana", extensions: ["npx"] }, "image/vnd.pco.b16": { source: "iana", extensions: ["b16"] }, "image/vnd.radiance": { source: "iana" }, "image/vnd.sealed.png": { source: "iana" }, "image/vnd.sealedmedia.softseal.gif": { source: "iana" }, "image/vnd.sealedmedia.softseal.jpg": { source: "iana" }, "image/vnd.svf": { source: "iana" }, "image/vnd.tencent.tap": { source: "iana", extensions: ["tap"] }, "image/vnd.valve.source.texture": { source: "iana", extensions: ["vtf"] }, "image/vnd.wap.wbmp": { source: "iana", extensions: ["wbmp"] }, "image/vnd.xiff": { source: "iana", extensions: ["xif"] }, "image/vnd.zbrush.pcx": { source: "iana", extensions: ["pcx"] }, "image/webp": { source: "apache", extensions: ["webp"] }, "image/wmf": { source: "iana", extensions: ["wmf"] }, "image/x-3ds": { source: "apache", extensions: ["3ds"] }, "image/x-cmu-raster": { source: "apache", extensions: ["ras"] }, "image/x-cmx": { source: "apache", extensions: ["cmx"] }, "image/x-freehand": { source: "apache", extensions: ["fh", "fhc", "fh4", "fh5", "fh7"] }, "image/x-icon": { source: "apache", compressible: true, extensions: ["ico"] }, "image/x-jng": { source: "nginx", extensions: ["jng"] }, "image/x-mrsid-image": { source: "apache", extensions: ["sid"] }, "image/x-ms-bmp": { source: "nginx", compressible: true, extensions: ["bmp"] }, "image/x-pcx": { source: "apache", extensions: ["pcx"] }, "image/x-pict": { source: "apache", extensions: ["pic", "pct"] }, "image/x-portable-anymap": { source: "apache", extensions: ["pnm"] }, "image/x-portable-bitmap": { source: "apache", extensions: ["pbm"] }, "image/x-portable-graymap": { source: "apache", extensions: ["pgm"] }, "image/x-portable-pixmap": { source: "apache", extensions: ["ppm"] }, "image/x-rgb": { source: "apache", extensions: ["rgb"] }, "image/x-tga": { source: "apache", extensions: ["tga"] }, "image/x-xbitmap": { source: "apache", extensions: ["xbm"] }, "image/x-xcf": { compressible: false }, "image/x-xpixmap": { source: "apache", extensions: ["xpm"] }, "image/x-xwindowdump": { source: "apache", extensions: ["xwd"] }, "message/cpim": { source: "iana" }, "message/delivery-status": { source: "iana" }, "message/disposition-notification": { source: "iana", extensions: [ "disposition-notification" ] }, "message/external-body": { source: "iana" }, "message/feedback-report": { source: "iana" }, "message/global": { source: "iana", extensions: ["u8msg"] }, "message/global-delivery-status": { source: "iana", extensions: ["u8dsn"] }, "message/global-disposition-notification": { source: "iana", extensions: ["u8mdn"] }, "message/global-headers": { source: "iana", extensions: ["u8hdr"] }, "message/http": { source: "iana", compressible: false }, "message/imdn+xml": { source: "iana", compressible: true }, "message/news": { source: "iana" }, "message/partial": { source: "iana", compressible: false }, "message/rfc822": { source: "iana", compressible: true, extensions: ["eml", "mime"] }, "message/s-http": { source: "iana" }, "message/sip": { source: "iana" }, "message/sipfrag": { source: "iana" }, "message/tracking-status": { source: "iana" }, "message/vnd.si.simp": { source: "iana" }, "message/vnd.wfa.wsc": { source: "iana", extensions: ["wsc"] }, "model/3mf": { source: "iana", extensions: ["3mf"] }, "model/e57": { source: "iana" }, "model/gltf+json": { source: "iana", compressible: true, extensions: ["gltf"] }, "model/gltf-binary": { source: "iana", compressible: true, extensions: ["glb"] }, "model/iges": { source: "iana", compressible: false, extensions: ["igs", "iges"] }, "model/mesh": { source: "iana", compressible: false, extensions: ["msh", "mesh", "silo"] }, "model/mtl": { source: "iana", extensions: ["mtl"] }, "model/obj": { source: "iana", extensions: ["obj"] }, "model/step": { source: "iana" }, "model/step+xml": { source: "iana", compressible: true, extensions: ["stpx"] }, "model/step+zip": { source: "iana", compressible: false, extensions: ["stpz"] }, "model/step-xml+zip": { source: "iana", compressible: false, extensions: ["stpxz"] }, "model/stl": { source: "iana", extensions: ["stl"] }, "model/vnd.collada+xml": { source: "iana", compressible: true, extensions: ["dae"] }, "model/vnd.dwf": { source: "iana", extensions: ["dwf"] }, "model/vnd.flatland.3dml": { source: "iana" }, "model/vnd.gdl": { source: "iana", extensions: ["gdl"] }, "model/vnd.gs-gdl": { source: "apache" }, "model/vnd.gs.gdl": { source: "iana" }, "model/vnd.gtw": { source: "iana", extensions: ["gtw"] }, "model/vnd.moml+xml": { source: "iana", compressible: true }, "model/vnd.mts": { source: "iana", extensions: ["mts"] }, "model/vnd.opengex": { source: "iana", extensions: ["ogex"] }, "model/vnd.parasolid.transmit.binary": { source: "iana", extensions: ["x_b"] }, "model/vnd.parasolid.transmit.text": { source: "iana", extensions: ["x_t"] }, "model/vnd.pytha.pyox": { source: "iana" }, "model/vnd.rosette.annotated-data-model": { source: "iana" }, "model/vnd.sap.vds": { source: "iana", extensions: ["vds"] }, "model/vnd.usdz+zip": { source: "iana", compressible: false, extensions: ["usdz"] }, "model/vnd.valve.source.compiled-map": { source: "iana", extensions: ["bsp"] }, "model/vnd.vtu": { source: "iana", extensions: ["vtu"] }, "model/vrml": { source: "iana", compressible: false, extensions: ["wrl", "vrml"] }, "model/x3d+binary": { source: "apache", compressible: false, extensions: ["x3db", "x3dbz"] }, "model/x3d+fastinfoset": { source: "iana", extensions: ["x3db"] }, "model/x3d+vrml": { source: "apache", compressible: false, extensions: ["x3dv", "x3dvz"] }, "model/x3d+xml": { source: "iana", compressible: true, extensions: ["x3d", "x3dz"] }, "model/x3d-vrml": { source: "iana", extensions: ["x3dv"] }, "multipart/alternative": { source: "iana", compressible: false }, "multipart/appledouble": { source: "iana" }, "multipart/byteranges": { source: "iana" }, "multipart/digest": { source: "iana" }, "multipart/encrypted": { source: "iana", compressible: false }, "multipart/form-data": { source: "iana", compressible: false }, "multipart/header-set": { source: "iana" }, "multipart/mixed": { source: "iana" }, "multipart/multilingual": { source: "iana" }, "multipart/parallel": { source: "iana" }, "multipart/related": { source: "iana", compressible: false }, "multipart/report": { source: "iana" }, "multipart/signed": { source: "iana", compressible: false }, "multipart/vnd.bint.med-plus": { source: "iana" }, "multipart/voice-message": { source: "iana" }, "multipart/x-mixed-replace": { source: "iana" }, "text/1d-interleaved-parityfec": { source: "iana" }, "text/cache-manifest": { source: "iana", compressible: true, extensions: ["appcache", "manifest"] }, "text/calendar": { source: "iana", extensions: ["ics", "ifb"] }, "text/calender": { compressible: true }, "text/cmd": { compressible: true }, "text/coffeescript": { extensions: ["coffee", "litcoffee"] }, "text/cql": { source: "iana" }, "text/cql-expression": { source: "iana" }, "text/cql-identifier": { source: "iana" }, "text/css": { source: "iana", charset: "UTF-8", compressible: true, extensions: ["css"] }, "text/csv": { source: "iana", compressible: true, extensions: ["csv"] }, "text/csv-schema": { source: "iana" }, "text/directory": { source: "iana" }, "text/dns": { source: "iana" }, "text/ecmascript": { source: "iana" }, "text/encaprtp": { source: "iana" }, "text/enriched": { source: "iana" }, "text/fhirpath": { source: "iana" }, "text/flexfec": { source: "iana" }, "text/fwdred": { source: "iana" }, "text/gff3": { source: "iana" }, "text/grammar-ref-list": { source: "iana" }, "text/html": { source: "iana", compressible: true, extensions: ["html", "htm", "shtml"] }, "text/jade": { extensions: ["jade"] }, "text/javascript": { source: "iana", compressible: true }, "text/jcr-cnd": { source: "iana" }, "text/jsx": { compressible: true, extensions: ["jsx"] }, "text/less": { compressible: true, extensions: ["less"] }, "text/markdown": { source: "iana", compressible: true, extensions: ["markdown", "md"] }, "text/mathml": { source: "nginx", extensions: ["mml"] }, "text/mdx": { compressible: true, extensions: ["mdx"] }, "text/mizar": { source: "iana" }, "text/n3": { source: "iana", charset: "UTF-8", compressible: true, extensions: ["n3"] }, "text/parameters": { source: "iana", charset: "UTF-8" }, "text/parityfec": { source: "iana" }, "text/plain": { source: "iana", compressible: true, extensions: ["txt", "text", "conf", "def", "list", "log", "in", "ini"] }, "text/provenance-notation": { source: "iana", charset: "UTF-8" }, "text/prs.fallenstein.rst": { source: "iana" }, "text/prs.lines.tag": { source: "iana", extensions: ["dsc"] }, "text/prs.prop.logic": { source: "iana" }, "text/raptorfec": { source: "iana" }, "text/red": { source: "iana" }, "text/rfc822-headers": { source: "iana" }, "text/richtext": { source: "iana", compressible: true, extensions: ["rtx"] }, "text/rtf": { source: "iana", compressible: true, extensions: ["rtf"] }, "text/rtp-enc-aescm128": { source: "iana" }, "text/rtploopback": { source: "iana" }, "text/rtx": { source: "iana" }, "text/sgml": { source: "iana", extensions: ["sgml", "sgm"] }, "text/shaclc": { source: "iana" }, "text/shex": { source: "iana", extensions: ["shex"] }, "text/slim": { extensions: ["slim", "slm"] }, "text/spdx": { source: "iana", extensions: ["spdx"] }, "text/strings": { source: "iana" }, "text/stylus": { extensions: ["stylus", "styl"] }, "text/t140": { source: "iana" }, "text/tab-separated-values": { source: "iana", compressible: true, extensions: ["tsv"] }, "text/troff": { source: "iana", extensions: ["t", "tr", "roff", "man", "me", "ms"] }, "text/turtle": { source: "iana", charset: "UTF-8", extensions: ["ttl"] }, "text/ulpfec": { source: "iana" }, "text/uri-list": { source: "iana", compressible: true, extensions: ["uri", "uris", "urls"] }, "text/vcard": { source: "iana", compressible: true, extensions: ["vcard"] }, "text/vnd.a": { source: "iana" }, "text/vnd.abc": { source: "iana" }, "text/vnd.ascii-art": { source: "iana" }, "text/vnd.curl": { source: "iana", extensions: ["curl"] }, "text/vnd.curl.dcurl": { source: "apache", extensions: ["dcurl"] }, "text/vnd.curl.mcurl": { source: "apache", extensions: ["mcurl"] }, "text/vnd.curl.scurl": { source: "apache", extensions: ["scurl"] }, "text/vnd.debian.copyright": { source: "iana", charset: "UTF-8" }, "text/vnd.dmclientscript": { source: "iana" }, "text/vnd.dvb.subtitle": { source: "iana", extensions: ["sub"] }, "text/vnd.esmertec.theme-descriptor": { source: "iana", charset: "UTF-8" }, "text/vnd.familysearch.gedcom": { source: "iana", extensions: ["ged"] }, "text/vnd.ficlab.flt": { source: "iana" }, "text/vnd.fly": { source: "iana", extensions: ["fly"] }, "text/vnd.fmi.flexstor": { source: "iana", extensions: ["flx"] }, "text/vnd.gml": { source: "iana" }, "text/vnd.graphviz": { source: "iana", extensions: ["gv"] }, "text/vnd.hans": { source: "iana" }, "text/vnd.hgl": { source: "iana" }, "text/vnd.in3d.3dml": { source: "iana", extensions: ["3dml"] }, "text/vnd.in3d.spot": { source: "iana", extensions: ["spot"] }, "text/vnd.iptc.newsml": { source: "iana" }, "text/vnd.iptc.nitf": { source: "iana" }, "text/vnd.latex-z": { source: "iana" }, "text/vnd.motorola.reflex": { source: "iana" }, "text/vnd.ms-mediapackage": { source: "iana" }, "text/vnd.net2phone.commcenter.command": { source: "iana" }, "text/vnd.radisys.msml-basic-layout": { source: "iana" }, "text/vnd.senx.warpscript": { source: "iana" }, "text/vnd.si.uricatalogue": { source: "iana" }, "text/vnd.sosi": { source: "iana" }, "text/vnd.sun.j2me.app-descriptor": { source: "iana", charset: "UTF-8", extensions: ["jad"] }, "text/vnd.trolltech.linguist": { source: "iana", charset: "UTF-8" }, "text/vnd.wap.si": { source: "iana" }, "text/vnd.wap.sl": { source: "iana" }, "text/vnd.wap.wml": { source: "iana", extensions: ["wml"] }, "text/vnd.wap.wmlscript": { source: "iana", extensions: ["wmls"] }, "text/vtt": { source: "iana", charset: "UTF-8", compressible: true, extensions: ["vtt"] }, "text/x-asm": { source: "apache", extensions: ["s", "asm"] }, "text/x-c": { source: "apache", extensions: ["c", "cc", "cxx", "cpp", "h", "hh", "dic"] }, "text/x-component": { source: "nginx", extensions: ["htc"] }, "text/x-fortran": { source: "apache", extensions: ["f", "for", "f77", "f90"] }, "text/x-gwt-rpc": { compressible: true }, "text/x-handlebars-template": { extensions: ["hbs"] }, "text/x-java-source": { source: "apache", extensions: ["java"] }, "text/x-jquery-tmpl": { compressible: true }, "text/x-lua": { extensions: ["lua"] }, "text/x-markdown": { compressible: true, extensions: ["mkd"] }, "text/x-nfo": { source: "apache", extensions: ["nfo"] }, "text/x-opml": { source: "apache", extensions: ["opml"] }, "text/x-org": { compressible: true, extensions: ["org"] }, "text/x-pascal": { source: "apache", extensions: ["p", "pas"] }, "text/x-processing": { compressible: true, extensions: ["pde"] }, "text/x-sass": { extensions: ["sass"] }, "text/x-scss": { extensions: ["scss"] }, "text/x-setext": { source: "apache", extensions: ["etx"] }, "text/x-sfv": { source: "apache", extensions: ["sfv"] }, "text/x-suse-ymp": { compressible: true, extensions: ["ymp"] }, "text/x-uuencode": { source: "apache", extensions: ["uu"] }, "text/x-vcalendar": { source: "apache", extensions: ["vcs"] }, "text/x-vcard": { source: "apache", extensions: ["vcf"] }, "text/xml": { source: "iana", compressible: true, extensions: ["xml"] }, "text/xml-external-parsed-entity": { source: "iana" }, "text/yaml": { compressible: true, extensions: ["yaml", "yml"] }, "video/1d-interleaved-parityfec": { source: "iana" }, "video/3gpp": { source: "iana", extensions: ["3gp", "3gpp"] }, "video/3gpp-tt": { source: "iana" }, "video/3gpp2": { source: "iana", extensions: ["3g2"] }, "video/av1": { source: "iana" }, "video/bmpeg": { source: "iana" }, "video/bt656": { source: "iana" }, "video/celb": { source: "iana" }, "video/dv": { source: "iana" }, "video/encaprtp": { source: "iana" }, "video/ffv1": { source: "iana" }, "video/flexfec": { source: "iana" }, "video/h261": { source: "iana", extensions: ["h261"] }, "video/h263": { source: "iana", extensions: ["h263"] }, "video/h263-1998": { source: "iana" }, "video/h263-2000": { source: "iana" }, "video/h264": { source: "iana", extensions: ["h264"] }, "video/h264-rcdo": { source: "iana" }, "video/h264-svc": { source: "iana" }, "video/h265": { source: "iana" }, "video/iso.segment": { source: "iana", extensions: ["m4s"] }, "video/jpeg": { source: "iana", extensions: ["jpgv"] }, "video/jpeg2000": { source: "iana" }, "video/jpm": { source: "apache", extensions: ["jpm", "jpgm"] }, "video/jxsv": { source: "iana" }, "video/mj2": { source: "iana", extensions: ["mj2", "mjp2"] }, "video/mp1s": { source: "iana" }, "video/mp2p": { source: "iana" }, "video/mp2t": { source: "iana", extensions: ["ts"] }, "video/mp4": { source: "iana", compressible: false, extensions: ["mp4", "mp4v", "mpg4"] }, "video/mp4v-es": { source: "iana" }, "video/mpeg": { source: "iana", compressible: false, extensions: ["mpeg", "mpg", "mpe", "m1v", "m2v"] }, "video/mpeg4-generic": { source: "iana" }, "video/mpv": { source: "iana" }, "video/nv": { source: "iana" }, "video/ogg": { source: "iana", compressible: false, extensions: ["ogv"] }, "video/parityfec": { source: "iana" }, "video/pointer": { source: "iana" }, "video/quicktime": { source: "iana", compressible: false, extensions: ["qt", "mov"] }, "video/raptorfec": { source: "iana" }, "video/raw": { source: "iana" }, "video/rtp-enc-aescm128": { source: "iana" }, "video/rtploopback": { source: "iana" }, "video/rtx": { source: "iana" }, "video/scip": { source: "iana" }, "video/smpte291": { source: "iana" }, "video/smpte292m": { source: "iana" }, "video/ulpfec": { source: "iana" }, "video/vc1": { source: "iana" }, "video/vc2": { source: "iana" }, "video/vnd.cctv": { source: "iana" }, "video/vnd.dece.hd": { source: "iana", extensions: ["uvh", "uvvh"] }, "video/vnd.dece.mobile": { source: "iana", extensions: ["uvm", "uvvm"] }, "video/vnd.dece.mp4": { source: "iana" }, "video/vnd.dece.pd": { source: "iana", extensions: ["uvp", "uvvp"] }, "video/vnd.dece.sd": { source: "iana", extensions: ["uvs", "uvvs"] }, "video/vnd.dece.video": { source: "iana", extensions: ["uvv", "uvvv"] }, "video/vnd.directv.mpeg": { source: "iana" }, "video/vnd.directv.mpeg-tts": { source: "iana" }, "video/vnd.dlna.mpeg-tts": { source: "iana" }, "video/vnd.dvb.file": { source: "iana", extensions: ["dvb"] }, "video/vnd.fvt": { source: "iana", extensions: ["fvt"] }, "video/vnd.hns.video": { source: "iana" }, "video/vnd.iptvforum.1dparityfec-1010": { source: "iana" }, "video/vnd.iptvforum.1dparityfec-2005": { source: "iana" }, "video/vnd.iptvforum.2dparityfec-1010": { source: "iana" }, "video/vnd.iptvforum.2dparityfec-2005": { source: "iana" }, "video/vnd.iptvforum.ttsavc": { source: "iana" }, "video/vnd.iptvforum.ttsmpeg2": { source: "iana" }, "video/vnd.motorola.video": { source: "iana" }, "video/vnd.motorola.videop": { source: "iana" }, "video/vnd.mpegurl": { source: "iana", extensions: ["mxu", "m4u"] }, "video/vnd.ms-playready.media.pyv": { source: "iana", extensions: ["pyv"] }, "video/vnd.nokia.interleaved-multimedia": { source: "iana" }, "video/vnd.nokia.mp4vr": { source: "iana" }, "video/vnd.nokia.videovoip": { source: "iana" }, "video/vnd.objectvideo": { source: "iana" }, "video/vnd.radgamettools.bink": { source: "iana" }, "video/vnd.radgamettools.smacker": { source: "iana" }, "video/vnd.sealed.mpeg1": { source: "iana" }, "video/vnd.sealed.mpeg4": { source: "iana" }, "video/vnd.sealed.swf": { source: "iana" }, "video/vnd.sealedmedia.softseal.mov": { source: "iana" }, "video/vnd.uvvu.mp4": { source: "iana", extensions: ["uvu", "uvvu"] }, "video/vnd.vivo": { source: "iana", extensions: ["viv"] }, "video/vnd.youtube.yt": { source: "iana" }, "video/vp8": { source: "iana" }, "video/vp9": { source: "iana" }, "video/webm": { source: "apache", compressible: false, extensions: ["webm"] }, "video/x-f4v": { source: "apache", extensions: ["f4v"] }, "video/x-fli": { source: "apache", extensions: ["fli"] }, "video/x-flv": { source: "apache", compressible: false, extensions: ["flv"] }, "video/x-m4v": { source: "apache", extensions: ["m4v"] }, "video/x-matroska": { source: "apache", compressible: false, extensions: ["mkv", "mk3d", "mks"] }, "video/x-mng": { source: "apache", extensions: ["mng"] }, "video/x-ms-asf": { source: "apache", extensions: ["asf", "asx"] }, "video/x-ms-vob": { source: "apache", extensions: ["vob"] }, "video/x-ms-wm": { source: "apache", extensions: ["wm"] }, "video/x-ms-wmv": { source: "apache", compressible: false, extensions: ["wmv"] }, "video/x-ms-wmx": { source: "apache", extensions: ["wmx"] }, "video/x-ms-wvx": { source: "apache", extensions: ["wvx"] }, "video/x-msvideo": { source: "apache", extensions: ["avi"] }, "video/x-sgi-movie": { source: "apache", extensions: ["movie"] }, "video/x-smv": { source: "apache", extensions: ["smv"] }, "x-conference/x-cooltalk": { source: "apache", extensions: ["ice"] }, "x-shader/x-fragment": { compressible: true }, "x-shader/x-vertex": { compressible: true } }; } }); // ../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/index.js var require_mime_db = __commonJS({ "../../node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/index.js"(exports2, module2) { module2.exports = require_db(); } }); // ../../node_modules/.pnpm/mime-types@2.1.35/node_modules/mime-types/index.js var require_mime_types = __commonJS({ "../../node_modules/.pnpm/mime-types@2.1.35/node_modules/mime-types/index.js"(exports2) { "use strict"; var db = require_mime_db(); var extname = require("path").extname; var EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/; var TEXT_TYPE_REGEXP = /^text\//i; exports2.charset = charset; exports2.charsets = { lookup: charset }; exports2.contentType = contentType; exports2.extension = extension; exports2.extensions = /* @__PURE__ */ Object.create(null); exports2.lookup = lookup; exports2.types = /* @__PURE__ */ Object.create(null); populateMaps(exports2.extensions, exports2.types); function charset(type) { if (!type || typeof type !== "string") { return false; } var match = EXTRACT_TYPE_REGEXP.exec(type); var mime = match && db[match[1].toLowerCase()]; if (mime && mime.charset) { return mime.charset; } if (match && TEXT_TYPE_REGEXP.test(match[1])) { return "UTF-8"; } return false; } __name(charset, "charset"); function contentType(str) { if (!str || typeof str !== "string") { return false; } var mime = str.indexOf("/") === -1 ? exports2.lookup(str) : str; if (!mime) { return false; } if (mime.indexOf("charset") === -1) { var charset2 = exports2.charset(mime); if (charset2) mime += "; charset=" + charset2.toLowerCase(); } return mime; } __name(contentType, "contentType"); function extension(type) { if (!type || typeof type !== "string") { return false; } var match = EXTRACT_TYPE_REGEXP.exec(type); var exts = match && exports2.extensions[match[1].toLowerCase()]; if (!exts || !exts.length) { return false; } return exts[0]; } __name(extension, "extension"); function lookup(path) { if (!path || typeof path !== "string") { return false; } var extension2 = extname("x." + path).toLowerCase().substr(1); if (!extension2) { return false; } return exports2.types[extension2] || false; } __name(lookup, "lookup"); function populateMaps(extensions, types) { var preference = ["nginx", "apache", void 0, "iana"]; Object.keys(db).forEach(/* @__PURE__ */ __name(function forEachMimeType(type) { var mime = db[type]; var exts = mime.extensions; if (!exts || !exts.length) { return; } extensions[type] = exts; for (var i = 0; i < exts.length; i++) { var extension2 = exts[i]; if (types[extension2]) { var from = preference.indexOf(db[types[extension2]].source); var to = preference.indexOf(mime.source); if (types[extension2] !== "application/octet-stream" && (from > to || from === to && types[extension2].substr(0, 12) === "application/")) { continue; } } types[extension2] = type; } }, "forEachMimeType")); } __name(populateMaps, "populateMaps"); } }); // ../../node_modules/.pnpm/type-is@1.6.18/node_modules/type-is/index.js var require_type_is = __commonJS({ "../../node_modules/.pnpm/type-is@1.6.18/node_modules/type-is/index.js"(exports2, module2) { "use strict"; var typer = require_media_typer(); var mime = require_mime_types(); module2.exports = typeofrequest; module2.exports.is = typeis; module2.exports.hasBody = hasbody; module2.exports.normalize = normalize; module2.exports.match = mimeMatch; function typeis(value, types_) { var i; var types = types_; var val = tryNormalizeType(value); if (!val) { return false; } if (types && !Array.isArray(types)) { types = new Array(arguments.length - 1); for (i = 0; i < types.length; i++) { types[i] = arguments[i + 1]; } } if (!types || !types.length) { return val; } var type; for (i = 0; i < types.length; i++) { if (mimeMatch(normalize(type = types[i]), val)) { return type[0] === "+" || type.indexOf("*") !== -1 ? val : type; } } return false; } __name(typeis, "typeis"); function hasbody(req) { return req.headers["transfer-encoding"] !== void 0 || !isNaN(req.headers["content-length"]); } __name(hasbody, "hasbody"); function typeofrequest(req, types_) { var types = types_; if (!hasbody(req)) { return null; } if (arguments.length > 2) { types = new Array(arguments.length - 1); for (var i = 0; i < types.length; i++) { types[i] = arguments[i + 1]; } } var value = req.headers["content-type"]; return typeis(value, types); } __name(typeofrequest, "typeofrequest"); function normalize(type) { if (typeof type !== "string") { return false; } switch (type) { case "urlencoded": return "application/x-www-form-urlencoded"; case "multipart": return "multipart/*"; } if (type[0] === "+") { return "*/*" + type; } return type.indexOf("/") === -1 ? mime.lookup(type) : type; } __name(normalize, "normalize"); function mimeMatch(expected, actual) { if (expected === false) { return false; } var actualParts = actual.split("/"); var expectedParts = expected.split("/"); if (actualParts.length !== 2 || expectedParts.length !== 2) { return false; } if (expectedParts[0] !== "*" && expectedParts[0] !== actualParts[0]) { return false; } if (expectedParts[1].substr(0, 2) === "*+") { return expectedParts[1].length <= actualParts[1].length + 1 && expectedParts[1].substr(1) === actualParts[1].substr(1 - expectedParts[1].length); } if (expectedParts[1] !== "*" && expectedParts[1] !== actualParts[1]) { return false; } return true; } __name(mimeMatch, "mimeMatch"); function normalizeType(value) { var type = typer.parse(value); type.parameters = void 0; return typer.format(type); } __name(normalizeType, "normalizeType"); function tryNormalizeType(value) { if (!value) { return null; } try { return normalizeType(value); } catch (err) { return null; } } __name(tryNormalizeType, "tryNormalizeType"); } }); // ../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/lib/types/json.js var require_json = __commonJS({ "../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/lib/types/json.js"(exports2, module2) { "use strict"; var bytes = require_bytes(); var contentType = require_content_type(); var createError = require_http_errors(); var debug = require_src()("body-parser:json"); var read = require_read(); var typeis = require_type_is(); module2.exports = json; var FIRST_CHAR_REGEXP = /^[\x20\x09\x0a\x0d]*([^\x20\x09\x0a\x0d])/; var JSON_SYNTAX_CHAR = "#"; var JSON_SYNTAX_REGEXP = /#+/g; function json(options) { var opts = options || {}; var limit = typeof opts.limit !== "number" ? bytes.parse(opts.limit || "100kb") : opts.limit; var inflate = opts.inflate !== false; var reviver = opts.reviver; var strict = opts.strict !== false; var type = opts.type || "application/json"; var verify = opts.verify || false; if (verify !== false && typeof verify !== "function") { throw new TypeError("option verify must be function"); } var shouldParse = typeof type !== "function" ? typeChecker(type) : type; function parse2(body) { if (body.length === 0) { return {}; } if (strict) { var first = firstchar(body); if (first !== "{" && first !== "[") { debug("strict violation"); throw createStrictSyntaxError(body, first); } } try { debug("parse json"); return JSON.parse(body, reviver); } catch (e) { throw normalizeJsonSyntaxError(e, { message: e.message, stack: e.stack }); } } __name(parse2, "parse"); return /* @__PURE__ */ __name(function jsonParser(req, res, next) { if (req._body) { debug("body already parsed"); next(); return; } req.body = req.body || {}; if (!typeis.hasBody(req)) { debug("skip empty body"); next(); return; } debug("content-type %j", req.headers["content-type"]); if (!shouldParse(req)) { debug("skip parsing"); next(); return; } var charset = getCharset(req) || "utf-8"; if (charset.slice(0, 4) !== "utf-") { debug("invalid charset"); next(createError(415, 'unsupported charset "' + charset.toUpperCase() + '"', { charset, type: "charset.unsupported" })); return; } read(req, res, next, parse2, debug, { encoding: charset, inflate, limit, verify }); }, "jsonParser"); } __name(json, "json"); function createStrictSyntaxError(str, char) { var index = str.indexOf(char); var partial = ""; if (index !== -1) { partial = str.substring(0, index) + JSON_SYNTAX_CHAR; for (var i = index + 1; i < str.length; i++) { partial += JSON_SYNTAX_CHAR; } } try { JSON.parse(partial); throw new SyntaxError("strict violation"); } catch (e) { return normalizeJsonSyntaxError(e, { message: e.message.replace(JSON_SYNTAX_REGEXP, function(placeholder) { return str.substring(index, index + placeholder.length); }), stack: e.stack }); } } __name(createStrictSyntaxError, "createStrictSyntaxError"); function firstchar(str) { var match = FIRST_CHAR_REGEXP.exec(str); return match ? match[1] : void 0; } __name(firstchar, "firstchar"); function getCharset(req) { try { return (contentType.parse(req).parameters.charset || "").toLowerCase(); } catch (e) { return void 0; } } __name(getCharset, "getCharset"); function normalizeJsonSyntaxError(error, obj2) { var keys = Object.getOwnPropertyNames(error); for (var i = 0; i < keys.length; i++) { var key = keys[i]; if (key !== "stack" && key !== "message") { delete error[key]; } } error.stack = obj2.stack.replace(error.message, obj2.message); error.message = obj2.message; return error; } __name(normalizeJsonSyntaxError, "normalizeJsonSyntaxError"); function typeChecker(type) { return /* @__PURE__ */ __name(function checkType(req) { return Boolean(typeis(req, type)); }, "checkType"); } __name(typeChecker, "typeChecker"); } }); // ../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/lib/types/raw.js var require_raw = __commonJS({ "../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/lib/types/raw.js"(exports2, module2) { "use strict"; var bytes = require_bytes(); var debug = require_src()("body-parser:raw"); var read = require_read(); var typeis = require_type_is(); module2.exports = raw; function raw(options) { var opts = options || {}; var inflate = opts.inflate !== false; var limit = typeof opts.limit !== "number" ? bytes.parse(opts.limit || "100kb") : opts.limit; var type = opts.type || "application/octet-stream"; var verify = opts.verify || false; if (verify !== false && typeof verify !== "function") { throw new TypeError("option verify must be function"); } var shouldParse = typeof type !== "function" ? typeChecker(type) : type; function parse2(buf) { return buf; } __name(parse2, "parse"); return /* @__PURE__ */ __name(function rawParser(req, res, next) { if (req._body) { debug("body already parsed"); next(); return; } req.body = req.body || {}; if (!typeis.hasBody(req)) { debug("skip empty body"); next(); return; } debug("content-type %j", req.headers["content-type"]); if (!shouldParse(req)) { debug("skip parsing"); next(); return; } read(req, res, next, parse2, debug, { encoding: null, inflate, limit, verify }); }, "rawParser"); } __name(raw, "raw"); function typeChecker(type) { return /* @__PURE__ */ __name(function checkType(req) { return Boolean(typeis(req, type)); }, "checkType"); } __name(typeChecker, "typeChecker"); } }); // ../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/lib/types/text.js var require_text = __commonJS({ "../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/lib/types/text.js"(exports2, module2) { "use strict"; var bytes = require_bytes(); var contentType = require_content_type(); var debug = require_src()("body-parser:text"); var read = require_read(); var typeis = require_type_is(); module2.exports = text; function text(options) { var opts = options || {}; var defaultCharset = opts.defaultCharset || "utf-8"; var inflate = opts.inflate !== false; var limit = typeof opts.limit !== "number" ? bytes.parse(opts.limit || "100kb") : opts.limit; var type = opts.type || "text/plain"; var verify = opts.verify || false; if (verify !== false && typeof verify !== "function") { throw new TypeError("option verify must be function"); } var shouldParse = typeof type !== "function" ? typeChecker(type) : type; function parse2(buf) { return buf; } __name(parse2, "parse"); return /* @__PURE__ */ __name(function textParser(req, res, next) { if (req._body) { debug("body already parsed"); next(); return; } req.body = req.body || {}; if (!typeis.hasBody(req)) { debug("skip empty body"); next(); return; } debug("content-type %j", req.headers["content-type"]); if (!shouldParse(req)) { debug("skip parsing"); next(); return; } var charset = getCharset(req) || defaultCharset; read(req, res, next, parse2, debug, { encoding: charset, inflate, limit, verify }); }, "textParser"); } __name(text, "text"); function getCharset(req) { try { return (contentType.parse(req).parameters.charset || "").toLowerCase(); } catch (e) { return void 0; } } __name(getCharset, "getCharset"); function typeChecker(type) { return /* @__PURE__ */ __name(function checkType(req) { return Boolean(typeis(req, type)); }, "checkType"); } __name(typeChecker, "typeChecker"); } }); // ../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/type.js var require_type = __commonJS({ "../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/type.js"(exports2, module2) { "use strict"; module2.exports = TypeError; } }); // ../../node_modules/.pnpm/object-inspect@1.13.4/node_modules/object-inspect/util.inspect.js var require_util_inspect = __commonJS({ "../../node_modules/.pnpm/object-inspect@1.13.4/node_modules/object-inspect/util.inspect.js"(exports2, module2) { module2.exports = require("util").inspect; } }); // ../../node_modules/.pnpm/object-inspect@1.13.4/node_modules/object-inspect/index.js var require_object_inspect = __commonJS({ "../../node_modules/.pnpm/object-inspect@1.13.4/node_modules/object-inspect/index.js"(exports2, module2) { var hasMap = typeof Map === "function" && Map.prototype; var mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, "size") : null; var mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === "function" ? mapSizeDescriptor.get : null; var mapForEach = hasMap && Map.prototype.forEach; var hasSet = typeof Set === "function" && Set.prototype; var setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, "size") : null; var setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === "function" ? setSizeDescriptor.get : null; var setForEach = hasSet && Set.prototype.forEach; var hasWeakMap = typeof WeakMap === "function" && WeakMap.prototype; var weakMapHas = hasWeakMap ? WeakMap.prototype.has : null; var hasWeakSet = typeof WeakSet === "function" && WeakSet.prototype; var weakSetHas = hasWeakSet ? WeakSet.prototype.has : null; var hasWeakRef = typeof WeakRef === "function" && WeakRef.prototype; var weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null; var booleanValueOf = Boolean.prototype.valueOf; var objectToString = Object.prototype.toString; var functionToString = Function.prototype.toString; var $match = String.prototype.match; var $slice = String.prototype.slice; var $replace = String.prototype.replace; var $toUpperCase = String.prototype.toUpperCase; var $toLowerCase = String.prototype.toLowerCase; var $test = RegExp.prototype.test; var $concat = Array.prototype.concat; var $join = Array.prototype.join; var $arrSlice = Array.prototype.slice; var $floor = Math.floor; var bigIntValueOf = typeof BigInt === "function" ? BigInt.prototype.valueOf : null; var gOPS = Object.getOwnPropertySymbols; var symToString = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? Symbol.prototype.toString : null; var hasShammedSymbols = typeof Symbol === "function" && typeof Symbol.iterator === "object"; var toStringTag = typeof Symbol === "function" && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? "object" : "symbol") ? Symbol.toStringTag : null; var isEnumerable = Object.prototype.propertyIsEnumerable; var gPO = (typeof Reflect === "function" ? Reflect.getPrototypeOf : Object.getPrototypeOf) || ([].__proto__ === Array.prototype ? function(O) { return O.__proto__; } : null); function addNumericSeparator(num, str) { if (num === Infinity || num === -Infinity || num !== num || num && num > -1e3 && num < 1e3 || $test.call(/e/, str)) { return str; } var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g; if (typeof num === "number") { var int = num < 0 ? -$floor(-num) : $floor(num); if (int !== num) { var intStr = String(int); var dec = $slice.call(str, intStr.length + 1); return $replace.call(intStr, sepRegex, "$&_") + "." + $replace.call($replace.call(dec, /([0-9]{3})/g, "$&_"), /_$/, ""); } } return $replace.call(str, sepRegex, "$&_"); } __name(addNumericSeparator, "addNumericSeparator"); var utilInspect = require_util_inspect(); var inspectCustom = utilInspect.custom; var inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null; var quotes = { __proto__: null, "double": '"', single: "'" }; var quoteREs = { __proto__: null, "double": /(["\\])/g, single: /(['\\])/g }; module2.exports = /* @__PURE__ */ __name(function inspect_(obj2, options, depth, seen) { var opts = options || {}; if (has(opts, "quoteStyle") && !has(quotes, opts.quoteStyle)) { throw new TypeError('option "quoteStyle" must be "single" or "double"'); } if (has(opts, "maxStringLength") && (typeof opts.maxStringLength === "number" ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity : opts.maxStringLength !== null)) { throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`'); } var customInspect = has(opts, "customInspect") ? opts.customInspect : true; if (typeof customInspect !== "boolean" && customInspect !== "symbol") { throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`"); } if (has(opts, "indent") && opts.indent !== null && opts.indent !== " " && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)) { throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`'); } if (has(opts, "numericSeparator") && typeof opts.numericSeparator !== "boolean") { throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`'); } var numericSeparator = opts.numericSeparator; if (typeof obj2 === "undefined") { return "undefined"; } if (obj2 === null) { return "null"; } if (typeof obj2 === "boolean") { return obj2 ? "true" : "false"; } if (typeof obj2 === "string") { return inspectString(obj2, opts); } if (typeof obj2 === "number") { if (obj2 === 0) { return Infinity / obj2 > 0 ? "0" : "-0"; } var str = String(obj2); return numericSeparator ? addNumericSeparator(obj2, str) : str; } if (typeof obj2 === "bigint") { var bigIntStr = String(obj2) + "n"; return numericSeparator ? addNumericSeparator(obj2, bigIntStr) : bigIntStr; } var maxDepth = typeof opts.depth === "undefined" ? 5 : opts.depth; if (typeof depth === "undefined") { depth = 0; } if (depth >= maxDepth && maxDepth > 0 && typeof obj2 === "object") { return isArray(obj2) ? "[Array]" : "[Object]"; } var indent = getIndent(opts, depth); if (typeof seen === "undefined") { seen = []; } else if (indexOf(seen, obj2) >= 0) { return "[Circular]"; } function inspect(value, from, noIndent) { if (from) { seen = $arrSlice.call(seen); seen.push(from); } if (noIndent) { var newOpts = { depth: opts.depth }; if (has(opts, "quoteStyle")) { newOpts.quoteStyle = opts.quoteStyle; } return inspect_(value, newOpts, depth + 1, seen); } return inspect_(value, opts, depth + 1, seen); } __name(inspect, "inspect"); if (typeof obj2 === "function" && !isRegExp(obj2)) { var name = nameOf(obj2); var keys = arrObjKeys(obj2, inspect); return "[Function" + (name ? ": " + name : " (anonymous)") + "]" + (keys.length > 0 ? " { " + $join.call(keys, ", ") + " }" : ""); } if (isSymbol(obj2)) { var symString = hasShammedSymbols ? $replace.call(String(obj2), /^(Symbol\(.*\))_[^)]*$/, "$1") : symToString.call(obj2); return typeof obj2 === "object" && !hasShammedSymbols ? markBoxed(symString) : symString; } if (isElement(obj2)) { var s = "<" + $toLowerCase.call(String(obj2.nodeName)); var attrs = obj2.attributes || []; for (var i = 0; i < attrs.length; i++) { s += " " + attrs[i].name + "=" + wrapQuotes(quote(attrs[i].value), "double", opts); } s += ">"; if (obj2.childNodes && obj2.childNodes.length) { s += "..."; } s += ""; return s; } if (isArray(obj2)) { if (obj2.length === 0) { return "[]"; } var xs = arrObjKeys(obj2, inspect); if (indent && !singleLineValues(xs)) { return "[" + indentedJoin(xs, indent) + "]"; } return "[ " + $join.call(xs, ", ") + " ]"; } if (isError2(obj2)) { var parts = arrObjKeys(obj2, inspect); if (!("cause" in Error.prototype) && "cause" in obj2 && !isEnumerable.call(obj2, "cause")) { return "{ [" + String(obj2) + "] " + $join.call($concat.call("[cause]: " + inspect(obj2.cause), parts), ", ") + " }"; } if (parts.length === 0) { return "[" + String(obj2) + "]"; } return "{ [" + String(obj2) + "] " + $join.call(parts, ", ") + " }"; } if (typeof obj2 === "object" && customInspect) { if (inspectSymbol && typeof obj2[inspectSymbol] === "function" && utilInspect) { return utilInspect(obj2, { depth: maxDepth - depth }); } else if (customInspect !== "symbol" && typeof obj2.inspect === "function") { return obj2.inspect(); } } if (isMap(obj2)) { var mapParts = []; if (mapForEach) { mapForEach.call(obj2, function(value, key) { mapParts.push(inspect(key, obj2, true) + " => " + inspect(value, obj2)); }); } return collectionOf("Map", mapSize.call(obj2), mapParts, indent); } if (isSet(obj2)) { var setParts = []; if (setForEach) { setForEach.call(obj2, function(value) { setParts.push(inspect(value, obj2)); }); } return collectionOf("Set", setSize.call(obj2), setParts, indent); } if (isWeakMap(obj2)) { return weakCollectionOf("WeakMap"); } if (isWeakSet(obj2)) { return weakCollectionOf("WeakSet"); } if (isWeakRef(obj2)) { return weakCollectionOf("WeakRef"); } if (isNumber(obj2)) { return markBoxed(inspect(Number(obj2))); } if (isBigInt(obj2)) { return markBoxed(inspect(bigIntValueOf.call(obj2))); } if (isBoolean(obj2)) { return markBoxed(booleanValueOf.call(obj2)); } if (isString(obj2)) { return markBoxed(inspect(String(obj2))); } if (typeof window !== "undefined" && obj2 === window) { return "{ [object Window] }"; } if (typeof globalThis !== "undefined" && obj2 === globalThis || typeof global !== "undefined" && obj2 === global) { return "{ [object globalThis] }"; } if (!isDate(obj2) && !isRegExp(obj2)) { var ys = arrObjKeys(obj2, inspect); var isPlainObject = gPO ? gPO(obj2) === Object.prototype : obj2 instanceof Object || obj2.constructor === Object; var protoTag = obj2 instanceof Object ? "" : "null prototype"; var stringTag = !isPlainObject && toStringTag && Object(obj2) === obj2 && toStringTag in obj2 ? $slice.call(toStr(obj2), 8, -1) : protoTag ? "Object" : ""; var constructorTag = isPlainObject || typeof obj2.constructor !== "function" ? "" : obj2.constructor.name ? obj2.constructor.name + " " : ""; var tag = constructorTag + (stringTag || protoTag ? "[" + $join.call($concat.call([], stringTag || [], protoTag || []), ": ") + "] " : ""); if (ys.length === 0) { return tag + "{}"; } if (indent) { return tag + "{" + indentedJoin(ys, indent) + "}"; } return tag + "{ " + $join.call(ys, ", ") + " }"; } return String(obj2); }, "inspect_"); function wrapQuotes(s, defaultStyle, opts) { var style = opts.quoteStyle || defaultStyle; var quoteChar = quotes[style]; return quoteChar + s + quoteChar; } __name(wrapQuotes, "wrapQuotes"); function quote(s) { return $replace.call(String(s), /"/g, """); } __name(quote, "quote"); function canTrustToString(obj2) { return !toStringTag || !(typeof obj2 === "object" && (toStringTag in obj2 || typeof obj2[toStringTag] !== "undefined")); } __name(canTrustToString, "canTrustToString"); function isArray(obj2) { return toStr(obj2) === "[object Array]" && canTrustToString(obj2); } __name(isArray, "isArray"); function isDate(obj2) { return toStr(obj2) === "[object Date]" && canTrustToString(obj2); } __name(isDate, "isDate"); function isRegExp(obj2) { return toStr(obj2) === "[object RegExp]" && canTrustToString(obj2); } __name(isRegExp, "isRegExp"); function isError2(obj2) { return toStr(obj2) === "[object Error]" && canTrustToString(obj2); } __name(isError2, "isError"); function isString(obj2) { return toStr(obj2) === "[object String]" && canTrustToString(obj2); } __name(isString, "isString"); function isNumber(obj2) { return toStr(obj2) === "[object Number]" && canTrustToString(obj2); } __name(isNumber, "isNumber"); function isBoolean(obj2) { return toStr(obj2) === "[object Boolean]" && canTrustToString(obj2); } __name(isBoolean, "isBoolean"); function isSymbol(obj2) { if (hasShammedSymbols) { return obj2 && typeof obj2 === "object" && obj2 instanceof Symbol; } if (typeof obj2 === "symbol") { return true; } if (!obj2 || typeof obj2 !== "object" || !symToString) { return false; } try { symToString.call(obj2); return true; } catch (e) { } return false; } __name(isSymbol, "isSymbol"); function isBigInt(obj2) { if (!obj2 || typeof obj2 !== "object" || !bigIntValueOf) { return false; } try { bigIntValueOf.call(obj2); return true; } catch (e) { } return false; } __name(isBigInt, "isBigInt"); var hasOwn = Object.prototype.hasOwnProperty || function(key) { return key in this; }; function has(obj2, key) { return hasOwn.call(obj2, key); } __name(has, "has"); function toStr(obj2) { return objectToString.call(obj2); } __name(toStr, "toStr"); function nameOf(f) { if (f.name) { return f.name; } var m = $match.call(functionToString.call(f), /^function\s*([\w$]+)/); if (m) { return m[1]; } return null; } __name(nameOf, "nameOf"); function indexOf(xs, x) { if (xs.indexOf) { return xs.indexOf(x); } for (var i = 0, l2 = xs.length; i < l2; i++) { if (xs[i] === x) { return i; } } return -1; } __name(indexOf, "indexOf"); function isMap(x) { if (!mapSize || !x || typeof x !== "object") { return false; } try { mapSize.call(x); try { setSize.call(x); } catch (s) { return true; } return x instanceof Map; } catch (e) { } return false; } __name(isMap, "isMap"); function isWeakMap(x) { if (!weakMapHas || !x || typeof x !== "object") { return false; } try { weakMapHas.call(x, weakMapHas); try { weakSetHas.call(x, weakSetHas); } catch (s) { return true; } return x instanceof WeakMap; } catch (e) { } return false; } __name(isWeakMap, "isWeakMap"); function isWeakRef(x) { if (!weakRefDeref || !x || typeof x !== "object") { return false; } try { weakRefDeref.call(x); return true; } catch (e) { } return false; } __name(isWeakRef, "isWeakRef"); function isSet(x) { if (!setSize || !x || typeof x !== "object") { return false; } try { setSize.call(x); try { mapSize.call(x); } catch (m) { return true; } return x instanceof Set; } catch (e) { } return false; } __name(isSet, "isSet"); function isWeakSet(x) { if (!weakSetHas || !x || typeof x !== "object") { return false; } try { weakSetHas.call(x, weakSetHas); try { weakMapHas.call(x, weakMapHas); } catch (s) { return true; } return x instanceof WeakSet; } catch (e) { } return false; } __name(isWeakSet, "isWeakSet"); function isElement(x) { if (!x || typeof x !== "object") { return false; } if (typeof HTMLElement !== "undefined" && x instanceof HTMLElement) { return true; } return typeof x.nodeName === "string" && typeof x.getAttribute === "function"; } __name(isElement, "isElement"); function inspectString(str, opts) { if (str.length > opts.maxStringLength) { var remaining = str.length - opts.maxStringLength; var trailer = "... " + remaining + " more character" + (remaining > 1 ? "s" : ""); return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer; } var quoteRE = quoteREs[opts.quoteStyle || "single"]; quoteRE.lastIndex = 0; var s = $replace.call($replace.call(str, quoteRE, "\\$1"), /[\x00-\x1f]/g, lowbyte); return wrapQuotes(s, "single", opts); } __name(inspectString, "inspectString"); function lowbyte(c) { var n = c.charCodeAt(0); var x = { 8: "b", 9: "t", 10: "n", 12: "f", 13: "r" }[n]; if (x) { return "\\" + x; } return "\\x" + (n < 16 ? "0" : "") + $toUpperCase.call(n.toString(16)); } __name(lowbyte, "lowbyte"); function markBoxed(str) { return "Object(" + str + ")"; } __name(markBoxed, "markBoxed"); function weakCollectionOf(type) { return type + " { ? }"; } __name(weakCollectionOf, "weakCollectionOf"); function collectionOf(type, size, entries, indent) { var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ", "); return type + " (" + size + ") {" + joinedEntries + "}"; } __name(collectionOf, "collectionOf"); function singleLineValues(xs) { for (var i = 0; i < xs.length; i++) { if (indexOf(xs[i], "\n") >= 0) { return false; } } return true; } __name(singleLineValues, "singleLineValues"); function getIndent(opts, depth) { var baseIndent; if (opts.indent === " ") { baseIndent = " "; } else if (typeof opts.indent === "number" && opts.indent > 0) { baseIndent = $join.call(Array(opts.indent + 1), " "); } else { return null; } return { base: baseIndent, prev: $join.call(Array(depth + 1), baseIndent) }; } __name(getIndent, "getIndent"); function indentedJoin(xs, indent) { if (xs.length === 0) { return ""; } var lineJoiner = "\n" + indent.prev + indent.base; return lineJoiner + $join.call(xs, "," + lineJoiner) + "\n" + indent.prev; } __name(indentedJoin, "indentedJoin"); function arrObjKeys(obj2, inspect) { var isArr = isArray(obj2); var xs = []; if (isArr) { xs.length = obj2.length; for (var i = 0; i < obj2.length; i++) { xs[i] = has(obj2, i) ? inspect(obj2[i], obj2) : ""; } } var syms = typeof gOPS === "function" ? gOPS(obj2) : []; var symMap; if (hasShammedSymbols) { symMap = {}; for (var k = 0; k < syms.length; k++) { symMap["$" + syms[k]] = syms[k]; } } for (var key in obj2) { if (!has(obj2, key)) { continue; } if (isArr && String(Number(key)) === key && key < obj2.length) { continue; } if (hasShammedSymbols && symMap["$" + key] instanceof Symbol) { continue; } else if ($test.call(/[^\w$]/, key)) { xs.push(inspect(key, obj2) + ": " + inspect(obj2[key], obj2)); } else { xs.push(key + ": " + inspect(obj2[key], obj2)); } } if (typeof gOPS === "function") { for (var j = 0; j < syms.length; j++) { if (isEnumerable.call(obj2, syms[j])) { xs.push("[" + inspect(syms[j]) + "]: " + inspect(obj2[syms[j]], obj2)); } } } return xs; } __name(arrObjKeys, "arrObjKeys"); } }); // ../../node_modules/.pnpm/side-channel-list@1.0.1/node_modules/side-channel-list/index.js var require_side_channel_list = __commonJS({ "../../node_modules/.pnpm/side-channel-list@1.0.1/node_modules/side-channel-list/index.js"(exports2, module2) { "use strict"; var inspect = require_object_inspect(); var $TypeError = require_type(); var listGetNode = /* @__PURE__ */ __name(function(list, key, isDelete) { var prev = list; var curr; for (; (curr = prev.next) != null; prev = curr) { if (curr.key === key) { prev.next = curr.next; if (!isDelete) { curr.next = /** @type {NonNullable} */ list.next; list.next = curr; } return curr; } } }, "listGetNode"); var listGet = /* @__PURE__ */ __name(function(objects, key) { if (!objects) { return void 0; } var node = listGetNode(objects, key); return node && node.value; }, "listGet"); var listSet = /* @__PURE__ */ __name(function(objects, key, value) { var node = listGetNode(objects, key); if (node) { node.value = value; } else { objects.next = /** @type {import('./list.d.ts').ListNode} */ { // eslint-disable-line no-param-reassign, no-extra-parens key, next: objects.next, value }; } }, "listSet"); var listHas = /* @__PURE__ */ __name(function(objects, key) { if (!objects) { return false; } return !!listGetNode(objects, key); }, "listHas"); var listDelete = /* @__PURE__ */ __name(function(objects, key) { if (objects) { return listGetNode(objects, key, true); } }, "listDelete"); module2.exports = /* @__PURE__ */ __name(function getSideChannelList() { var $o; var channel = { assert: /* @__PURE__ */ __name(function(key) { if (!channel.has(key)) { throw new $TypeError("Side channel does not contain " + inspect(key)); } }, "assert"), "delete": /* @__PURE__ */ __name(function(key) { var deletedNode = listDelete($o, key); if (deletedNode && $o && !$o.next) { $o = void 0; } return !!deletedNode; }, "delete"), get: /* @__PURE__ */ __name(function(key) { return listGet($o, key); }, "get"), has: /* @__PURE__ */ __name(function(key) { return listHas($o, key); }, "has"), set: /* @__PURE__ */ __name(function(key, value) { if (!$o) { $o = { next: void 0 }; } listSet( /** @type {NonNullable} */ $o, key, value ); }, "set") }; return channel; }, "getSideChannelList"); } }); // ../../node_modules/.pnpm/es-object-atoms@1.1.2/node_modules/es-object-atoms/index.js var require_es_object_atoms = __commonJS({ "../../node_modules/.pnpm/es-object-atoms@1.1.2/node_modules/es-object-atoms/index.js"(exports2, module2) { "use strict"; module2.exports = Object; } }); // ../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/index.js var require_es_errors = __commonJS({ "../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/index.js"(exports2, module2) { "use strict"; module2.exports = Error; } }); // ../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/eval.js var require_eval = __commonJS({ "../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/eval.js"(exports2, module2) { "use strict"; module2.exports = EvalError; } }); // ../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/range.js var require_range2 = __commonJS({ "../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/range.js"(exports2, module2) { "use strict"; module2.exports = RangeError; } }); // ../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/ref.js var require_ref = __commonJS({ "../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/ref.js"(exports2, module2) { "use strict"; module2.exports = ReferenceError; } }); // ../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/syntax.js var require_syntax = __commonJS({ "../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/syntax.js"(exports2, module2) { "use strict"; module2.exports = SyntaxError; } }); // ../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/uri.js var require_uri = __commonJS({ "../../node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/uri.js"(exports2, module2) { "use strict"; module2.exports = URIError; } }); // ../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/abs.js var require_abs = __commonJS({ "../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/abs.js"(exports2, module2) { "use strict"; module2.exports = Math.abs; } }); // ../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/floor.js var require_floor = __commonJS({ "../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/floor.js"(exports2, module2) { "use strict"; module2.exports = Math.floor; } }); // ../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/max.js var require_max3 = __commonJS({ "../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/max.js"(exports2, module2) { "use strict"; module2.exports = Math.max; } }); // ../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/min.js var require_min2 = __commonJS({ "../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/min.js"(exports2, module2) { "use strict"; module2.exports = Math.min; } }); // ../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/pow.js var require_pow = __commonJS({ "../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/pow.js"(exports2, module2) { "use strict"; module2.exports = Math.pow; } }); // ../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/round.js var require_round = __commonJS({ "../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/round.js"(exports2, module2) { "use strict"; module2.exports = Math.round; } }); // ../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/isNaN.js var require_isNaN = __commonJS({ "../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/isNaN.js"(exports2, module2) { "use strict"; module2.exports = Number.isNaN || /* @__PURE__ */ __name(function isNaN2(a) { return a !== a; }, "isNaN"); } }); // ../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/sign.js var require_sign = __commonJS({ "../../node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/sign.js"(exports2, module2) { "use strict"; var $isNaN = require_isNaN(); module2.exports = /* @__PURE__ */ __name(function sign(number) { if ($isNaN(number) || number === 0) { return number; } return number < 0 ? -1 : 1; }, "sign"); } }); // ../../node_modules/.pnpm/gopd@1.2.0/node_modules/gopd/gOPD.js var require_gOPD = __commonJS({ "../../node_modules/.pnpm/gopd@1.2.0/node_modules/gopd/gOPD.js"(exports2, module2) { "use strict"; module2.exports = Object.getOwnPropertyDescriptor; } }); // ../../node_modules/.pnpm/gopd@1.2.0/node_modules/gopd/index.js var require_gopd = __commonJS({ "../../node_modules/.pnpm/gopd@1.2.0/node_modules/gopd/index.js"(exports2, module2) { "use strict"; var $gOPD = require_gOPD(); if ($gOPD) { try { $gOPD([], "length"); } catch (e) { $gOPD = null; } } module2.exports = $gOPD; } }); // ../../node_modules/.pnpm/es-define-property@1.0.1/node_modules/es-define-property/index.js var require_es_define_property = __commonJS({ "../../node_modules/.pnpm/es-define-property@1.0.1/node_modules/es-define-property/index.js"(exports2, module2) { "use strict"; var $defineProperty = Object.defineProperty || false; if ($defineProperty) { try { $defineProperty({}, "a", { value: 1 }); } catch (e) { $defineProperty = false; } } module2.exports = $defineProperty; } }); // ../../node_modules/.pnpm/has-symbols@1.1.0/node_modules/has-symbols/shams.js var require_shams = __commonJS({ "../../node_modules/.pnpm/has-symbols@1.1.0/node_modules/has-symbols/shams.js"(exports2, module2) { "use strict"; module2.exports = /* @__PURE__ */ __name(function hasSymbols() { if (typeof Symbol !== "function" || typeof Object.getOwnPropertySymbols !== "function") { return false; } if (typeof Symbol.iterator === "symbol") { return true; } var obj2 = {}; var sym = Symbol("test"); var symObj = Object(sym); if (typeof sym === "string") { return false; } if (Object.prototype.toString.call(sym) !== "[object Symbol]") { return false; } if (Object.prototype.toString.call(symObj) !== "[object Symbol]") { return false; } var symVal = 42; obj2[sym] = symVal; for (var _2 in obj2) { return false; } if (typeof Object.keys === "function" && Object.keys(obj2).length !== 0) { return false; } if (typeof Object.getOwnPropertyNames === "function" && Object.getOwnPropertyNames(obj2).length !== 0) { return false; } var syms = Object.getOwnPropertySymbols(obj2); if (syms.length !== 1 || syms[0] !== sym) { return false; } if (!Object.prototype.propertyIsEnumerable.call(obj2, sym)) { return false; } if (typeof Object.getOwnPropertyDescriptor === "function") { var descriptor = ( /** @type {PropertyDescriptor} */ Object.getOwnPropertyDescriptor(obj2, sym) ); if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; } } return true; }, "hasSymbols"); } }); // ../../node_modules/.pnpm/has-symbols@1.1.0/node_modules/has-symbols/index.js var require_has_symbols = __commonJS({ "../../node_modules/.pnpm/has-symbols@1.1.0/node_modules/has-symbols/index.js"(exports2, module2) { "use strict"; var origSymbol = typeof Symbol !== "undefined" && Symbol; var hasSymbolSham = require_shams(); module2.exports = /* @__PURE__ */ __name(function hasNativeSymbols() { if (typeof origSymbol !== "function") { return false; } if (typeof Symbol !== "function") { return false; } if (typeof origSymbol("foo") !== "symbol") { return false; } if (typeof Symbol("bar") !== "symbol") { return false; } return hasSymbolSham(); }, "hasNativeSymbols"); } }); // ../../node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/Reflect.getPrototypeOf.js var require_Reflect_getPrototypeOf = __commonJS({ "../../node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/Reflect.getPrototypeOf.js"(exports2, module2) { "use strict"; module2.exports = typeof Reflect !== "undefined" && Reflect.getPrototypeOf || null; } }); // ../../node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/Object.getPrototypeOf.js var require_Object_getPrototypeOf = __commonJS({ "../../node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/Object.getPrototypeOf.js"(exports2, module2) { "use strict"; var $Object = require_es_object_atoms(); module2.exports = $Object.getPrototypeOf || null; } }); // ../../node_modules/.pnpm/function-bind@1.1.2/node_modules/function-bind/implementation.js var require_implementation = __commonJS({ "../../node_modules/.pnpm/function-bind@1.1.2/node_modules/function-bind/implementation.js"(exports2, module2) { "use strict"; var ERROR_MESSAGE = "Function.prototype.bind called on incompatible "; var toStr = Object.prototype.toString; var max = Math.max; var funcType = "[object Function]"; var concatty = /* @__PURE__ */ __name(function concatty2(a, b) { var arr = []; for (var i = 0; i < a.length; i += 1) { arr[i] = a[i]; } for (var j = 0; j < b.length; j += 1) { arr[j + a.length] = b[j]; } return arr; }, "concatty"); var slicy = /* @__PURE__ */ __name(function slicy2(arrLike, offset) { var arr = []; for (var i = offset || 0, j = 0; i < arrLike.length; i += 1, j += 1) { arr[j] = arrLike[i]; } return arr; }, "slicy"); var joiny = /* @__PURE__ */ __name(function(arr, joiner) { var str = ""; for (var i = 0; i < arr.length; i += 1) { str += arr[i]; if (i + 1 < arr.length) { str += joiner; } } return str; }, "joiny"); module2.exports = /* @__PURE__ */ __name(function bind(that) { var target = this; if (typeof target !== "function" || toStr.apply(target) !== funcType) { throw new TypeError(ERROR_MESSAGE + target); } var args = slicy(arguments, 1); var bound; var binder = /* @__PURE__ */ __name(function() { if (this instanceof bound) { var result = target.apply( this, concatty(args, arguments) ); if (Object(result) === result) { return result; } return this; } return target.apply( that, concatty(args, arguments) ); }, "binder"); var boundLength = max(0, target.length - args.length); var boundArgs = []; for (var i = 0; i < boundLength; i++) { boundArgs[i] = "$" + i; } bound = Function("binder", "return function (" + joiny(boundArgs, ",") + "){ return binder.apply(this,arguments); }")(binder); if (target.prototype) { var Empty = /* @__PURE__ */ __name(function Empty2() { }, "Empty"); Empty.prototype = target.prototype; bound.prototype = new Empty(); Empty.prototype = null; } return bound; }, "bind"); } }); // ../../node_modules/.pnpm/function-bind@1.1.2/node_modules/function-bind/index.js var require_function_bind = __commonJS({ "../../node_modules/.pnpm/function-bind@1.1.2/node_modules/function-bind/index.js"(exports2, module2) { "use strict"; var implementation = require_implementation(); module2.exports = Function.prototype.bind || implementation; } }); // ../../node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/functionCall.js var require_functionCall = __commonJS({ "../../node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/functionCall.js"(exports2, module2) { "use strict"; module2.exports = Function.prototype.call; } }); // ../../node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/functionApply.js var require_functionApply = __commonJS({ "../../node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/functionApply.js"(exports2, module2) { "use strict"; module2.exports = Function.prototype.apply; } }); // ../../node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/reflectApply.js var require_reflectApply = __commonJS({ "../../node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/reflectApply.js"(exports2, module2) { "use strict"; module2.exports = typeof Reflect !== "undefined" && Reflect && Reflect.apply; } }); // ../../node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/actualApply.js var require_actualApply = __commonJS({ "../../node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/actualApply.js"(exports2, module2) { "use strict"; var bind = require_function_bind(); var $apply = require_functionApply(); var $call = require_functionCall(); var $reflectApply = require_reflectApply(); module2.exports = $reflectApply || bind.call($call, $apply); } }); // ../../node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/index.js var require_call_bind_apply_helpers = __commonJS({ "../../node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/index.js"(exports2, module2) { "use strict"; var bind = require_function_bind(); var $TypeError = require_type(); var $call = require_functionCall(); var $actualApply = require_actualApply(); module2.exports = /* @__PURE__ */ __name(function callBindBasic(args) { if (args.length < 1 || typeof args[0] !== "function") { throw new $TypeError("a function is required"); } return $actualApply(bind, $call, args); }, "callBindBasic"); } }); // ../../node_modules/.pnpm/dunder-proto@1.0.1/node_modules/dunder-proto/get.js var require_get2 = __commonJS({ "../../node_modules/.pnpm/dunder-proto@1.0.1/node_modules/dunder-proto/get.js"(exports2, module2) { "use strict"; var callBind = require_call_bind_apply_helpers(); var gOPD = require_gopd(); var hasProtoAccessor; try { hasProtoAccessor = /** @type {{ __proto__?: typeof Array.prototype }} */ [].__proto__ === Array.prototype; } catch (e) { if (!e || typeof e !== "object" || !("code" in e) || e.code !== "ERR_PROTO_ACCESS") { throw e; } } var desc = !!hasProtoAccessor && gOPD && gOPD( Object.prototype, /** @type {keyof typeof Object.prototype} */ "__proto__" ); var $Object = Object; var $getPrototypeOf = $Object.getPrototypeOf; module2.exports = desc && typeof desc.get === "function" ? callBind([desc.get]) : typeof $getPrototypeOf === "function" ? ( /** @type {import('./get')} */ /* @__PURE__ */ __name(function getDunder(value) { return $getPrototypeOf(value == null ? value : $Object(value)); }, "getDunder") ) : false; } }); // ../../node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/index.js var require_get_proto = __commonJS({ "../../node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/index.js"(exports2, module2) { "use strict"; var reflectGetProto = require_Reflect_getPrototypeOf(); var originalGetProto = require_Object_getPrototypeOf(); var getDunderProto = require_get2(); module2.exports = reflectGetProto ? /* @__PURE__ */ __name(function getProto(O) { return reflectGetProto(O); }, "getProto") : originalGetProto ? /* @__PURE__ */ __name(function getProto(O) { if (!O || typeof O !== "object" && typeof O !== "function") { throw new TypeError("getProto: not an object"); } return originalGetProto(O); }, "getProto") : getDunderProto ? /* @__PURE__ */ __name(function getProto(O) { return getDunderProto(O); }, "getProto") : null; } }); // ../../node_modules/.pnpm/hasown@2.0.4/node_modules/hasown/index.js var require_hasown = __commonJS({ "../../node_modules/.pnpm/hasown@2.0.4/node_modules/hasown/index.js"(exports2, module2) { "use strict"; var call = Function.prototype.call; var $hasOwn = Object.prototype.hasOwnProperty; var bind = require_function_bind(); module2.exports = bind.call(call, $hasOwn); } }); // ../../node_modules/.pnpm/get-intrinsic@1.3.0/node_modules/get-intrinsic/index.js var require_get_intrinsic = __commonJS({ "../../node_modules/.pnpm/get-intrinsic@1.3.0/node_modules/get-intrinsic/index.js"(exports2, module2) { "use strict"; var undefined2; var $Object = require_es_object_atoms(); var $Error = require_es_errors(); var $EvalError = require_eval(); var $RangeError = require_range2(); var $ReferenceError = require_ref(); var $SyntaxError = require_syntax(); var $TypeError = require_type(); var $URIError = require_uri(); var abs = require_abs(); var floor = require_floor(); var max = require_max3(); var min = require_min2(); var pow = require_pow(); var round = require_round(); var sign = require_sign(); var $Function = Function; var getEvalledConstructor = /* @__PURE__ */ __name(function(expressionSyntax) { try { return $Function('"use strict"; return (' + expressionSyntax + ").constructor;")(); } catch (e) { } }, "getEvalledConstructor"); var $gOPD = require_gopd(); var $defineProperty = require_es_define_property(); var throwTypeError = /* @__PURE__ */ __name(function() { throw new $TypeError(); }, "throwTypeError"); var ThrowTypeError = $gOPD ? (function() { try { arguments.callee; return throwTypeError; } catch (calleeThrows) { try { return $gOPD(arguments, "callee").get; } catch (gOPDthrows) { return throwTypeError; } } })() : throwTypeError; var hasSymbols = require_has_symbols()(); var getProto = require_get_proto(); var $ObjectGPO = require_Object_getPrototypeOf(); var $ReflectGPO = require_Reflect_getPrototypeOf(); var $apply = require_functionApply(); var $call = require_functionCall(); var needsEval = {}; var TypedArray = typeof Uint8Array === "undefined" || !getProto ? undefined2 : getProto(Uint8Array); var INTRINSICS = { __proto__: null, "%AggregateError%": typeof AggregateError === "undefined" ? undefined2 : AggregateError, "%Array%": Array, "%ArrayBuffer%": typeof ArrayBuffer === "undefined" ? undefined2 : ArrayBuffer, "%ArrayIteratorPrototype%": hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined2, "%AsyncFromSyncIteratorPrototype%": undefined2, "%AsyncFunction%": needsEval, "%AsyncGenerator%": needsEval, "%AsyncGeneratorFunction%": needsEval, "%AsyncIteratorPrototype%": needsEval, "%Atomics%": typeof Atomics === "undefined" ? undefined2 : Atomics, "%BigInt%": typeof BigInt === "undefined" ? undefined2 : BigInt, "%BigInt64Array%": typeof BigInt64Array === "undefined" ? undefined2 : BigInt64Array, "%BigUint64Array%": typeof BigUint64Array === "undefined" ? undefined2 : BigUint64Array, "%Boolean%": Boolean, "%DataView%": typeof DataView === "undefined" ? undefined2 : DataView, "%Date%": Date, "%decodeURI%": decodeURI, "%decodeURIComponent%": decodeURIComponent, "%encodeURI%": encodeURI, "%encodeURIComponent%": encodeURIComponent, "%Error%": $Error, "%eval%": eval, // eslint-disable-line no-eval "%EvalError%": $EvalError, "%Float16Array%": typeof Float16Array === "undefined" ? undefined2 : Float16Array, "%Float32Array%": typeof Float32Array === "undefined" ? undefined2 : Float32Array, "%Float64Array%": typeof Float64Array === "undefined" ? undefined2 : Float64Array, "%FinalizationRegistry%": typeof FinalizationRegistry === "undefined" ? undefined2 : FinalizationRegistry, "%Function%": $Function, "%GeneratorFunction%": needsEval, "%Int8Array%": typeof Int8Array === "undefined" ? undefined2 : Int8Array, "%Int16Array%": typeof Int16Array === "undefined" ? undefined2 : Int16Array, "%Int32Array%": typeof Int32Array === "undefined" ? undefined2 : Int32Array, "%isFinite%": isFinite, "%isNaN%": isNaN, "%IteratorPrototype%": hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined2, "%JSON%": typeof JSON === "object" ? JSON : undefined2, "%Map%": typeof Map === "undefined" ? undefined2 : Map, "%MapIteratorPrototype%": typeof Map === "undefined" || !hasSymbols || !getProto ? undefined2 : getProto((/* @__PURE__ */ new Map())[Symbol.iterator]()), "%Math%": Math, "%Number%": Number, "%Object%": $Object, "%Object.getOwnPropertyDescriptor%": $gOPD, "%parseFloat%": parseFloat, "%parseInt%": parseInt, "%Promise%": typeof Promise === "undefined" ? undefined2 : Promise, "%Proxy%": typeof Proxy === "undefined" ? undefined2 : Proxy, "%RangeError%": $RangeError, "%ReferenceError%": $ReferenceError, "%Reflect%": typeof Reflect === "undefined" ? undefined2 : Reflect, "%RegExp%": RegExp, "%Set%": typeof Set === "undefined" ? undefined2 : Set, "%SetIteratorPrototype%": typeof Set === "undefined" || !hasSymbols || !getProto ? undefined2 : getProto((/* @__PURE__ */ new Set())[Symbol.iterator]()), "%SharedArrayBuffer%": typeof SharedArrayBuffer === "undefined" ? undefined2 : SharedArrayBuffer, "%String%": String, "%StringIteratorPrototype%": hasSymbols && getProto ? getProto(""[Symbol.iterator]()) : undefined2, "%Symbol%": hasSymbols ? Symbol : undefined2, "%SyntaxError%": $SyntaxError, "%ThrowTypeError%": ThrowTypeError, "%TypedArray%": TypedArray, "%TypeError%": $TypeError, "%Uint8Array%": typeof Uint8Array === "undefined" ? undefined2 : Uint8Array, "%Uint8ClampedArray%": typeof Uint8ClampedArray === "undefined" ? undefined2 : Uint8ClampedArray, "%Uint16Array%": typeof Uint16Array === "undefined" ? undefined2 : Uint16Array, "%Uint32Array%": typeof Uint32Array === "undefined" ? undefined2 : Uint32Array, "%URIError%": $URIError, "%WeakMap%": typeof WeakMap === "undefined" ? undefined2 : WeakMap, "%WeakRef%": typeof WeakRef === "undefined" ? undefined2 : WeakRef, "%WeakSet%": typeof WeakSet === "undefined" ? undefined2 : WeakSet, "%Function.prototype.call%": $call, "%Function.prototype.apply%": $apply, "%Object.defineProperty%": $defineProperty, "%Object.getPrototypeOf%": $ObjectGPO, "%Math.abs%": abs, "%Math.floor%": floor, "%Math.max%": max, "%Math.min%": min, "%Math.pow%": pow, "%Math.round%": round, "%Math.sign%": sign, "%Reflect.getPrototypeOf%": $ReflectGPO }; if (getProto) { try { null.error; } catch (e) { errorProto = getProto(getProto(e)); INTRINSICS["%Error.prototype%"] = errorProto; } } var errorProto; var doEval = /* @__PURE__ */ __name(function doEval2(name) { var value; if (name === "%AsyncFunction%") { value = getEvalledConstructor("async function () {}"); } else if (name === "%GeneratorFunction%") { value = getEvalledConstructor("function* () {}"); } else if (name === "%AsyncGeneratorFunction%") { value = getEvalledConstructor("async function* () {}"); } else if (name === "%AsyncGenerator%") { var fn = doEval2("%AsyncGeneratorFunction%"); if (fn) { value = fn.prototype; } } else if (name === "%AsyncIteratorPrototype%") { var gen = doEval2("%AsyncGenerator%"); if (gen && getProto) { value = getProto(gen.prototype); } } INTRINSICS[name] = value; return value; }, "doEval"); var LEGACY_ALIASES = { __proto__: null, "%ArrayBufferPrototype%": ["ArrayBuffer", "prototype"], "%ArrayPrototype%": ["Array", "prototype"], "%ArrayProto_entries%": ["Array", "prototype", "entries"], "%ArrayProto_forEach%": ["Array", "prototype", "forEach"], "%ArrayProto_keys%": ["Array", "prototype", "keys"], "%ArrayProto_values%": ["Array", "prototype", "values"], "%AsyncFunctionPrototype%": ["AsyncFunction", "prototype"], "%AsyncGenerator%": ["AsyncGeneratorFunction", "prototype"], "%AsyncGeneratorPrototype%": ["AsyncGeneratorFunction", "prototype", "prototype"], "%BooleanPrototype%": ["Boolean", "prototype"], "%DataViewPrototype%": ["DataView", "prototype"], "%DatePrototype%": ["Date", "prototype"], "%ErrorPrototype%": ["Error", "prototype"], "%EvalErrorPrototype%": ["EvalError", "prototype"], "%Float32ArrayPrototype%": ["Float32Array", "prototype"], "%Float64ArrayPrototype%": ["Float64Array", "prototype"], "%FunctionPrototype%": ["Function", "prototype"], "%Generator%": ["GeneratorFunction", "prototype"], "%GeneratorPrototype%": ["GeneratorFunction", "prototype", "prototype"], "%Int8ArrayPrototype%": ["Int8Array", "prototype"], "%Int16ArrayPrototype%": ["Int16Array", "prototype"], "%Int32ArrayPrototype%": ["Int32Array", "prototype"], "%JSONParse%": ["JSON", "parse"], "%JSONStringify%": ["JSON", "stringify"], "%MapPrototype%": ["Map", "prototype"], "%NumberPrototype%": ["Number", "prototype"], "%ObjectPrototype%": ["Object", "prototype"], "%ObjProto_toString%": ["Object", "prototype", "toString"], "%ObjProto_valueOf%": ["Object", "prototype", "valueOf"], "%PromisePrototype%": ["Promise", "prototype"], "%PromiseProto_then%": ["Promise", "prototype", "then"], "%Promise_all%": ["Promise", "all"], "%Promise_reject%": ["Promise", "reject"], "%Promise_resolve%": ["Promise", "resolve"], "%RangeErrorPrototype%": ["RangeError", "prototype"], "%ReferenceErrorPrototype%": ["ReferenceError", "prototype"], "%RegExpPrototype%": ["RegExp", "prototype"], "%SetPrototype%": ["Set", "prototype"], "%SharedArrayBufferPrototype%": ["SharedArrayBuffer", "prototype"], "%StringPrototype%": ["String", "prototype"], "%SymbolPrototype%": ["Symbol", "prototype"], "%SyntaxErrorPrototype%": ["SyntaxError", "prototype"], "%TypedArrayPrototype%": ["TypedArray", "prototype"], "%TypeErrorPrototype%": ["TypeError", "prototype"], "%Uint8ArrayPrototype%": ["Uint8Array", "prototype"], "%Uint8ClampedArrayPrototype%": ["Uint8ClampedArray", "prototype"], "%Uint16ArrayPrototype%": ["Uint16Array", "prototype"], "%Uint32ArrayPrototype%": ["Uint32Array", "prototype"], "%URIErrorPrototype%": ["URIError", "prototype"], "%WeakMapPrototype%": ["WeakMap", "prototype"], "%WeakSetPrototype%": ["WeakSet", "prototype"] }; var bind = require_function_bind(); var hasOwn = require_hasown(); var $concat = bind.call($call, Array.prototype.concat); var $spliceApply = bind.call($apply, Array.prototype.splice); var $replace = bind.call($call, String.prototype.replace); var $strSlice = bind.call($call, String.prototype.slice); var $exec = bind.call($call, RegExp.prototype.exec); var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g; var reEscapeChar = /\\(\\)?/g; var stringToPath = /* @__PURE__ */ __name(function stringToPath2(string) { var first = $strSlice(string, 0, 1); var last = $strSlice(string, -1); if (first === "%" && last !== "%") { throw new $SyntaxError("invalid intrinsic syntax, expected closing `%`"); } else if (last === "%" && first !== "%") { throw new $SyntaxError("invalid intrinsic syntax, expected opening `%`"); } var result = []; $replace(string, rePropName, function(match, number, quote, subString) { result[result.length] = quote ? $replace(subString, reEscapeChar, "$1") : number || match; }); return result; }, "stringToPath"); var getBaseIntrinsic = /* @__PURE__ */ __name(function getBaseIntrinsic2(name, allowMissing) { var intrinsicName = name; var alias; if (hasOwn(LEGACY_ALIASES, intrinsicName)) { alias = LEGACY_ALIASES[intrinsicName]; intrinsicName = "%" + alias[0] + "%"; } if (hasOwn(INTRINSICS, intrinsicName)) { var value = INTRINSICS[intrinsicName]; if (value === needsEval) { value = doEval(intrinsicName); } if (typeof value === "undefined" && !allowMissing) { throw new $TypeError("intrinsic " + name + " exists, but is not available. Please file an issue!"); } return { alias, name: intrinsicName, value }; } throw new $SyntaxError("intrinsic " + name + " does not exist!"); }, "getBaseIntrinsic"); module2.exports = /* @__PURE__ */ __name(function GetIntrinsic(name, allowMissing) { if (typeof name !== "string" || name.length === 0) { throw new $TypeError("intrinsic name must be a non-empty string"); } if (arguments.length > 1 && typeof allowMissing !== "boolean") { throw new $TypeError('"allowMissing" argument must be a boolean'); } if ($exec(/^%?[^%]*%?$/, name) === null) { throw new $SyntaxError("`%` may not be present anywhere but at the beginning and end of the intrinsic name"); } var parts = stringToPath(name); var intrinsicBaseName = parts.length > 0 ? parts[0] : ""; var intrinsic = getBaseIntrinsic("%" + intrinsicBaseName + "%", allowMissing); var intrinsicRealName = intrinsic.name; var value = intrinsic.value; var skipFurtherCaching = false; var alias = intrinsic.alias; if (alias) { intrinsicBaseName = alias[0]; $spliceApply(parts, $concat([0, 1], alias)); } for (var i = 1, isOwn = true; i < parts.length; i += 1) { var part = parts[i]; var first = $strSlice(part, 0, 1); var last = $strSlice(part, -1); if ((first === '"' || first === "'" || first === "`" || (last === '"' || last === "'" || last === "`")) && first !== last) { throw new $SyntaxError("property names with quotes must have matching quotes"); } if (part === "constructor" || !isOwn) { skipFurtherCaching = true; } intrinsicBaseName += "." + part; intrinsicRealName = "%" + intrinsicBaseName + "%"; if (hasOwn(INTRINSICS, intrinsicRealName)) { value = INTRINSICS[intrinsicRealName]; } else if (value != null) { if (!(part in value)) { if (!allowMissing) { throw new $TypeError("base intrinsic for " + name + " exists, but the property is not available."); } return void undefined2; } if ($gOPD && i + 1 >= parts.length) { var desc = $gOPD(value, part); isOwn = !!desc; if (isOwn && "get" in desc && !("originalValue" in desc.get)) { value = desc.get; } else { value = value[part]; } } else { isOwn = hasOwn(value, part); value = value[part]; } if (isOwn && !skipFurtherCaching) { INTRINSICS[intrinsicRealName] = value; } } } return value; }, "GetIntrinsic"); } }); // ../../node_modules/.pnpm/call-bound@1.0.4/node_modules/call-bound/index.js var require_call_bound = __commonJS({ "../../node_modules/.pnpm/call-bound@1.0.4/node_modules/call-bound/index.js"(exports2, module2) { "use strict"; var GetIntrinsic = require_get_intrinsic(); var callBindBasic = require_call_bind_apply_helpers(); var $indexOf = callBindBasic([GetIntrinsic("%String.prototype.indexOf%")]); module2.exports = /* @__PURE__ */ __name(function callBoundIntrinsic(name, allowMissing) { var intrinsic = ( /** @type {(this: unknown, ...args: unknown[]) => unknown} */ GetIntrinsic(name, !!allowMissing) ); if (typeof intrinsic === "function" && $indexOf(name, ".prototype.") > -1) { return callBindBasic( /** @type {const} */ [intrinsic] ); } return intrinsic; }, "callBoundIntrinsic"); } }); // ../../node_modules/.pnpm/side-channel-map@1.0.1/node_modules/side-channel-map/index.js var require_side_channel_map = __commonJS({ "../../node_modules/.pnpm/side-channel-map@1.0.1/node_modules/side-channel-map/index.js"(exports2, module2) { "use strict"; var GetIntrinsic = require_get_intrinsic(); var callBound = require_call_bound(); var inspect = require_object_inspect(); var $TypeError = require_type(); var $Map = GetIntrinsic("%Map%", true); var $mapGet = callBound("Map.prototype.get", true); var $mapSet = callBound("Map.prototype.set", true); var $mapHas = callBound("Map.prototype.has", true); var $mapDelete = callBound("Map.prototype.delete", true); var $mapSize = callBound("Map.prototype.size", true); module2.exports = !!$Map && /** @type {Exclude} */ /* @__PURE__ */ __name(function getSideChannelMap() { var $m; var channel = { assert: /* @__PURE__ */ __name(function(key) { if (!channel.has(key)) { throw new $TypeError("Side channel does not contain " + inspect(key)); } }, "assert"), "delete": /* @__PURE__ */ __name(function(key) { if ($m) { var result = $mapDelete($m, key); if ($mapSize($m) === 0) { $m = void 0; } return result; } return false; }, "delete"), get: /* @__PURE__ */ __name(function(key) { if ($m) { return $mapGet($m, key); } }, "get"), has: /* @__PURE__ */ __name(function(key) { if ($m) { return $mapHas($m, key); } return false; }, "has"), set: /* @__PURE__ */ __name(function(key, value) { if (!$m) { $m = new $Map(); } $mapSet($m, key, value); }, "set") }; return channel; }, "getSideChannelMap"); } }); // ../../node_modules/.pnpm/side-channel-weakmap@1.0.2/node_modules/side-channel-weakmap/index.js var require_side_channel_weakmap = __commonJS({ "../../node_modules/.pnpm/side-channel-weakmap@1.0.2/node_modules/side-channel-weakmap/index.js"(exports2, module2) { "use strict"; var GetIntrinsic = require_get_intrinsic(); var callBound = require_call_bound(); var inspect = require_object_inspect(); var getSideChannelMap = require_side_channel_map(); var $TypeError = require_type(); var $WeakMap = GetIntrinsic("%WeakMap%", true); var $weakMapGet = callBound("WeakMap.prototype.get", true); var $weakMapSet = callBound("WeakMap.prototype.set", true); var $weakMapHas = callBound("WeakMap.prototype.has", true); var $weakMapDelete = callBound("WeakMap.prototype.delete", true); module2.exports = $WeakMap ? ( /** @type {Exclude} */ /* @__PURE__ */ __name(function getSideChannelWeakMap() { var $wm; var $m; var channel = { assert: /* @__PURE__ */ __name(function(key) { if (!channel.has(key)) { throw new $TypeError("Side channel does not contain " + inspect(key)); } }, "assert"), "delete": /* @__PURE__ */ __name(function(key) { if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) { if ($wm) { return $weakMapDelete($wm, key); } } else if (getSideChannelMap) { if ($m) { return $m["delete"](key); } } return false; }, "delete"), get: /* @__PURE__ */ __name(function(key) { if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) { if ($wm) { return $weakMapGet($wm, key); } } return $m && $m.get(key); }, "get"), has: /* @__PURE__ */ __name(function(key) { if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) { if ($wm) { return $weakMapHas($wm, key); } } return !!$m && $m.has(key); }, "has"), set: /* @__PURE__ */ __name(function(key, value) { if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) { if (!$wm) { $wm = new $WeakMap(); } $weakMapSet($wm, key, value); } else if (getSideChannelMap) { if (!$m) { $m = getSideChannelMap(); } $m.set(key, value); } }, "set") }; return channel; }, "getSideChannelWeakMap") ) : getSideChannelMap; } }); // ../../node_modules/.pnpm/side-channel@1.1.1/node_modules/side-channel/index.js var require_side_channel = __commonJS({ "../../node_modules/.pnpm/side-channel@1.1.1/node_modules/side-channel/index.js"(exports2, module2) { "use strict"; var $TypeError = require_type(); var inspect = require_object_inspect(); var getSideChannelList = require_side_channel_list(); var getSideChannelMap = require_side_channel_map(); var getSideChannelWeakMap = require_side_channel_weakmap(); var makeChannel = getSideChannelWeakMap || getSideChannelMap || getSideChannelList; module2.exports = /* @__PURE__ */ __name(function getSideChannel() { var $channelData; var channel = { assert: /* @__PURE__ */ __name(function(key) { if (!channel.has(key)) { var keyDesc = key && Object(key) === key ? "the given object key" : inspect(key); throw new $TypeError("Side channel does not contain " + keyDesc); } }, "assert"), "delete": /* @__PURE__ */ __name(function(key) { return !!$channelData && $channelData["delete"](key); }, "delete"), get: /* @__PURE__ */ __name(function(key) { return $channelData && $channelData.get(key); }, "get"), has: /* @__PURE__ */ __name(function(key) { return !!$channelData && $channelData.has(key); }, "has"), set: /* @__PURE__ */ __name(function(key, value) { if (!$channelData) { $channelData = makeChannel(); } $channelData.set(key, value); }, "set") }; return channel; }, "getSideChannel"); } }); // ../../node_modules/.pnpm/qs@6.14.2/node_modules/qs/lib/formats.js var require_formats = __commonJS({ "../../node_modules/.pnpm/qs@6.14.2/node_modules/qs/lib/formats.js"(exports2, module2) { "use strict"; var replace = String.prototype.replace; var percentTwenties = /%20/g; var Format = { RFC1738: "RFC1738", RFC3986: "RFC3986" }; module2.exports = { "default": Format.RFC3986, formatters: { RFC1738: /* @__PURE__ */ __name(function(value) { return replace.call(value, percentTwenties, "+"); }, "RFC1738"), RFC3986: /* @__PURE__ */ __name(function(value) { return String(value); }, "RFC3986") }, RFC1738: Format.RFC1738, RFC3986: Format.RFC3986 }; } }); // ../../node_modules/.pnpm/qs@6.14.2/node_modules/qs/lib/utils.js var require_utils10 = __commonJS({ "../../node_modules/.pnpm/qs@6.14.2/node_modules/qs/lib/utils.js"(exports2, module2) { "use strict"; var formats = require_formats(); var getSideChannel = require_side_channel(); var has = Object.prototype.hasOwnProperty; var isArray = Array.isArray; var overflowChannel = getSideChannel(); var markOverflow = /* @__PURE__ */ __name(function markOverflow2(obj2, maxIndex) { overflowChannel.set(obj2, maxIndex); return obj2; }, "markOverflow"); var isOverflow = /* @__PURE__ */ __name(function isOverflow2(obj2) { return overflowChannel.has(obj2); }, "isOverflow"); var getMaxIndex = /* @__PURE__ */ __name(function getMaxIndex2(obj2) { return overflowChannel.get(obj2); }, "getMaxIndex"); var setMaxIndex = /* @__PURE__ */ __name(function setMaxIndex2(obj2, maxIndex) { overflowChannel.set(obj2, maxIndex); }, "setMaxIndex"); var hexTable = (function() { var array = []; for (var i = 0; i < 256; ++i) { array[array.length] = "%" + ((i < 16 ? "0" : "") + i.toString(16)).toUpperCase(); } return array; })(); var compactQueue = /* @__PURE__ */ __name(function compactQueue2(queue) { while (queue.length > 1) { var item = queue.pop(); var obj2 = item.obj[item.prop]; if (isArray(obj2)) { var compacted = []; for (var j = 0; j < obj2.length; ++j) { if (typeof obj2[j] !== "undefined") { compacted[compacted.length] = obj2[j]; } } item.obj[item.prop] = compacted; } } }, "compactQueue"); var arrayToObject = /* @__PURE__ */ __name(function arrayToObject2(source, options) { var obj2 = options && options.plainObjects ? { __proto__: null } : {}; for (var i = 0; i < source.length; ++i) { if (typeof source[i] !== "undefined") { obj2[i] = source[i]; } } return obj2; }, "arrayToObject"); var merge = /* @__PURE__ */ __name(function merge2(target, source, options) { if (!source) { return target; } if (typeof source !== "object" && typeof source !== "function") { if (isArray(target)) { var nextIndex = target.length; if (options && typeof options.arrayLimit === "number" && nextIndex > options.arrayLimit) { return markOverflow(arrayToObject(target.concat(source), options), nextIndex); } target[nextIndex] = source; } else if (target && typeof target === "object") { if (isOverflow(target)) { var newIndex = getMaxIndex(target) + 1; target[newIndex] = source; setMaxIndex(target, newIndex); } else if (options && (options.plainObjects || options.allowPrototypes) || !has.call(Object.prototype, source)) { target[source] = true; } } else { return [target, source]; } return target; } if (!target || typeof target !== "object") { if (isOverflow(source)) { var sourceKeys = Object.keys(source); var result = options && options.plainObjects ? { __proto__: null, 0: target } : { 0: target }; for (var m = 0; m < sourceKeys.length; m++) { var oldKey = parseInt(sourceKeys[m], 10); result[oldKey + 1] = source[sourceKeys[m]]; } return markOverflow(result, getMaxIndex(source) + 1); } var combined = [target].concat(source); if (options && typeof options.arrayLimit === "number" && combined.length > options.arrayLimit) { return markOverflow(arrayToObject(combined, options), combined.length - 1); } return combined; } var mergeTarget = target; if (isArray(target) && !isArray(source)) { mergeTarget = arrayToObject(target, options); } if (isArray(target) && isArray(source)) { source.forEach(function(item, i) { if (has.call(target, i)) { var targetItem = target[i]; if (targetItem && typeof targetItem === "object" && item && typeof item === "object") { target[i] = merge2(targetItem, item, options); } else { target[target.length] = item; } } else { target[i] = item; } }); return target; } return Object.keys(source).reduce(function(acc, key) { var value = source[key]; if (has.call(acc, key)) { acc[key] = merge2(acc[key], value, options); } else { acc[key] = value; } if (isOverflow(source) && !isOverflow(acc)) { markOverflow(acc, getMaxIndex(source)); } if (isOverflow(acc)) { var keyNum = parseInt(key, 10); if (String(keyNum) === key && keyNum >= 0 && keyNum > getMaxIndex(acc)) { setMaxIndex(acc, keyNum); } } return acc; }, mergeTarget); }, "merge"); var assign = /* @__PURE__ */ __name(function assignSingleSource(target, source) { return Object.keys(source).reduce(function(acc, key) { acc[key] = source[key]; return acc; }, target); }, "assignSingleSource"); var decode = /* @__PURE__ */ __name(function(str, defaultDecoder, charset) { var strWithoutPlus = str.replace(/\+/g, " "); if (charset === "iso-8859-1") { return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape); } try { return decodeURIComponent(strWithoutPlus); } catch (e) { return strWithoutPlus; } }, "decode"); var limit = 1024; var encode = /* @__PURE__ */ __name(function encode2(str, defaultEncoder, charset, kind, format) { if (str.length === 0) { return str; } var string = str; if (typeof str === "symbol") { string = Symbol.prototype.toString.call(str); } else if (typeof str !== "string") { string = String(str); } if (charset === "iso-8859-1") { return escape(string).replace(/%u[0-9a-f]{4}/gi, function($0) { return "%26%23" + parseInt($0.slice(2), 16) + "%3B"; }); } var out = ""; for (var j = 0; j < string.length; j += limit) { var segment = string.length >= limit ? string.slice(j, j + limit) : string; var arr = []; for (var i = 0; i < segment.length; ++i) { var c = segment.charCodeAt(i); if (c === 45 || c === 46 || c === 95 || c === 126 || c >= 48 && c <= 57 || c >= 65 && c <= 90 || c >= 97 && c <= 122 || format === formats.RFC1738 && (c === 40 || c === 41)) { arr[arr.length] = segment.charAt(i); continue; } if (c < 128) { arr[arr.length] = hexTable[c]; continue; } if (c < 2048) { arr[arr.length] = hexTable[192 | c >> 6] + hexTable[128 | c & 63]; continue; } if (c < 55296 || c >= 57344) { arr[arr.length] = hexTable[224 | c >> 12] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63]; continue; } i += 1; c = 65536 + ((c & 1023) << 10 | segment.charCodeAt(i) & 1023); arr[arr.length] = hexTable[240 | c >> 18] + hexTable[128 | c >> 12 & 63] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63]; } out += arr.join(""); } return out; }, "encode"); var compact = /* @__PURE__ */ __name(function compact2(value) { var queue = [{ obj: { o: value }, prop: "o" }]; var refs = []; for (var i = 0; i < queue.length; ++i) { var item = queue[i]; var obj2 = item.obj[item.prop]; var keys = Object.keys(obj2); for (var j = 0; j < keys.length; ++j) { var key = keys[j]; var val = obj2[key]; if (typeof val === "object" && val !== null && refs.indexOf(val) === -1) { queue[queue.length] = { obj: obj2, prop: key }; refs[refs.length] = val; } } } compactQueue(queue); return value; }, "compact"); var isRegExp = /* @__PURE__ */ __name(function isRegExp2(obj2) { return Object.prototype.toString.call(obj2) === "[object RegExp]"; }, "isRegExp"); var isBuffer = /* @__PURE__ */ __name(function isBuffer2(obj2) { if (!obj2 || typeof obj2 !== "object") { return false; } return !!(obj2.constructor && obj2.constructor.isBuffer && obj2.constructor.isBuffer(obj2)); }, "isBuffer"); var combine = /* @__PURE__ */ __name(function combine2(a, b, arrayLimit, plainObjects) { if (isOverflow(a)) { var newIndex = getMaxIndex(a) + 1; a[newIndex] = b; setMaxIndex(a, newIndex); return a; } var result = [].concat(a, b); if (result.length > arrayLimit) { return markOverflow(arrayToObject(result, { plainObjects }), result.length - 1); } return result; }, "combine"); var maybeMap = /* @__PURE__ */ __name(function maybeMap2(val, fn) { if (isArray(val)) { var mapped = []; for (var i = 0; i < val.length; i += 1) { mapped[mapped.length] = fn(val[i]); } return mapped; } return fn(val); }, "maybeMap"); module2.exports = { arrayToObject, assign, combine, compact, decode, encode, isBuffer, isOverflow, isRegExp, markOverflow, maybeMap, merge }; } }); // ../../node_modules/.pnpm/qs@6.14.2/node_modules/qs/lib/stringify.js var require_stringify = __commonJS({ "../../node_modules/.pnpm/qs@6.14.2/node_modules/qs/lib/stringify.js"(exports2, module2) { "use strict"; var getSideChannel = require_side_channel(); var utils = require_utils10(); var formats = require_formats(); var has = Object.prototype.hasOwnProperty; var arrayPrefixGenerators = { brackets: /* @__PURE__ */ __name(function brackets(prefix) { return prefix + "[]"; }, "brackets"), comma: "comma", indices: /* @__PURE__ */ __name(function indices(prefix, key) { return prefix + "[" + key + "]"; }, "indices"), repeat: /* @__PURE__ */ __name(function repeat(prefix) { return prefix; }, "repeat") }; var isArray = Array.isArray; var push = Array.prototype.push; var pushToArray = /* @__PURE__ */ __name(function(arr, valueOrArray) { push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]); }, "pushToArray"); var toISO = Date.prototype.toISOString; var defaultFormat = formats["default"]; var defaults = { addQueryPrefix: false, allowDots: false, allowEmptyArrays: false, arrayFormat: "indices", charset: "utf-8", charsetSentinel: false, commaRoundTrip: false, delimiter: "&", encode: true, encodeDotInKeys: false, encoder: utils.encode, encodeValuesOnly: false, filter: void 0, format: defaultFormat, formatter: formats.formatters[defaultFormat], // deprecated indices: false, serializeDate: /* @__PURE__ */ __name(function serializeDate(date) { return toISO.call(date); }, "serializeDate"), skipNulls: false, strictNullHandling: false }; var isNonNullishPrimitive = /* @__PURE__ */ __name(function isNonNullishPrimitive2(v) { return typeof v === "string" || typeof v === "number" || typeof v === "boolean" || typeof v === "symbol" || typeof v === "bigint"; }, "isNonNullishPrimitive"); var sentinel = {}; var stringify2 = /* @__PURE__ */ __name(function stringify3(object, prefix, generateArrayPrefix, commaRoundTrip, allowEmptyArrays, strictNullHandling, skipNulls, encodeDotInKeys, encoder, filter, sort, allowDots, serializeDate, format, formatter, encodeValuesOnly, charset, sideChannel) { var obj2 = object; var tmpSc = sideChannel; var step = 0; var findFlag = false; while ((tmpSc = tmpSc.get(sentinel)) !== void 0 && !findFlag) { var pos = tmpSc.get(object); step += 1; if (typeof pos !== "undefined") { if (pos === step) { throw new RangeError("Cyclic object value"); } else { findFlag = true; } } if (typeof tmpSc.get(sentinel) === "undefined") { step = 0; } } if (typeof filter === "function") { obj2 = filter(prefix, obj2); } else if (obj2 instanceof Date) { obj2 = serializeDate(obj2); } else if (generateArrayPrefix === "comma" && isArray(obj2)) { obj2 = utils.maybeMap(obj2, function(value2) { if (value2 instanceof Date) { return serializeDate(value2); } return value2; }); } if (obj2 === null) { if (strictNullHandling) { return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, "key", format) : prefix; } obj2 = ""; } if (isNonNullishPrimitive(obj2) || utils.isBuffer(obj2)) { if (encoder) { var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, "key", format); return [formatter(keyValue) + "=" + formatter(encoder(obj2, defaults.encoder, charset, "value", format))]; } return [formatter(prefix) + "=" + formatter(String(obj2))]; } var values = []; if (typeof obj2 === "undefined") { return values; } var objKeys; if (generateArrayPrefix === "comma" && isArray(obj2)) { if (encodeValuesOnly && encoder) { obj2 = utils.maybeMap(obj2, encoder); } objKeys = [{ value: obj2.length > 0 ? obj2.join(",") || null : void 0 }]; } else if (isArray(filter)) { objKeys = filter; } else { var keys = Object.keys(obj2); objKeys = sort ? keys.sort(sort) : keys; } var encodedPrefix = encodeDotInKeys ? String(prefix).replace(/\./g, "%2E") : String(prefix); var adjustedPrefix = commaRoundTrip && isArray(obj2) && obj2.length === 1 ? encodedPrefix + "[]" : encodedPrefix; if (allowEmptyArrays && isArray(obj2) && obj2.length === 0) { return adjustedPrefix + "[]"; } for (var j = 0; j < objKeys.length; ++j) { var key = objKeys[j]; var value = typeof key === "object" && key && typeof key.value !== "undefined" ? key.value : obj2[key]; if (skipNulls && value === null) { continue; } var encodedKey = allowDots && encodeDotInKeys ? String(key).replace(/\./g, "%2E") : String(key); var keyPrefix = isArray(obj2) ? typeof generateArrayPrefix === "function" ? generateArrayPrefix(adjustedPrefix, encodedKey) : adjustedPrefix : adjustedPrefix + (allowDots ? "." + encodedKey : "[" + encodedKey + "]"); sideChannel.set(object, step); var valueSideChannel = getSideChannel(); valueSideChannel.set(sentinel, sideChannel); pushToArray(values, stringify3( value, keyPrefix, generateArrayPrefix, commaRoundTrip, allowEmptyArrays, strictNullHandling, skipNulls, encodeDotInKeys, generateArrayPrefix === "comma" && encodeValuesOnly && isArray(obj2) ? null : encoder, filter, sort, allowDots, serializeDate, format, formatter, encodeValuesOnly, charset, valueSideChannel )); } return values; }, "stringify"); var normalizeStringifyOptions = /* @__PURE__ */ __name(function normalizeStringifyOptions2(opts) { if (!opts) { return defaults; } if (typeof opts.allowEmptyArrays !== "undefined" && typeof opts.allowEmptyArrays !== "boolean") { throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided"); } if (typeof opts.encodeDotInKeys !== "undefined" && typeof opts.encodeDotInKeys !== "boolean") { throw new TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided"); } if (opts.encoder !== null && typeof opts.encoder !== "undefined" && typeof opts.encoder !== "function") { throw new TypeError("Encoder has to be a function."); } var charset = opts.charset || defaults.charset; if (typeof opts.charset !== "undefined" && opts.charset !== "utf-8" && opts.charset !== "iso-8859-1") { throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined"); } var format = formats["default"]; if (typeof opts.format !== "undefined") { if (!has.call(formats.formatters, opts.format)) { throw new TypeError("Unknown format option provided."); } format = opts.format; } var formatter = formats.formatters[format]; var filter = defaults.filter; if (typeof opts.filter === "function" || isArray(opts.filter)) { filter = opts.filter; } var arrayFormat; if (opts.arrayFormat in arrayPrefixGenerators) { arrayFormat = opts.arrayFormat; } else if ("indices" in opts) { arrayFormat = opts.indices ? "indices" : "repeat"; } else { arrayFormat = defaults.arrayFormat; } if ("commaRoundTrip" in opts && typeof opts.commaRoundTrip !== "boolean") { throw new TypeError("`commaRoundTrip` must be a boolean, or absent"); } var allowDots = typeof opts.allowDots === "undefined" ? opts.encodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots; return { addQueryPrefix: typeof opts.addQueryPrefix === "boolean" ? opts.addQueryPrefix : defaults.addQueryPrefix, allowDots, allowEmptyArrays: typeof opts.allowEmptyArrays === "boolean" ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays, arrayFormat, charset, charsetSentinel: typeof opts.charsetSentinel === "boolean" ? opts.charsetSentinel : defaults.charsetSentinel, commaRoundTrip: !!opts.commaRoundTrip, delimiter: typeof opts.delimiter === "undefined" ? defaults.delimiter : opts.delimiter, encode: typeof opts.encode === "boolean" ? opts.encode : defaults.encode, encodeDotInKeys: typeof opts.encodeDotInKeys === "boolean" ? opts.encodeDotInKeys : defaults.encodeDotInKeys, encoder: typeof opts.encoder === "function" ? opts.encoder : defaults.encoder, encodeValuesOnly: typeof opts.encodeValuesOnly === "boolean" ? opts.encodeValuesOnly : defaults.encodeValuesOnly, filter, format, formatter, serializeDate: typeof opts.serializeDate === "function" ? opts.serializeDate : defaults.serializeDate, skipNulls: typeof opts.skipNulls === "boolean" ? opts.skipNulls : defaults.skipNulls, sort: typeof opts.sort === "function" ? opts.sort : null, strictNullHandling: typeof opts.strictNullHandling === "boolean" ? opts.strictNullHandling : defaults.strictNullHandling }; }, "normalizeStringifyOptions"); module2.exports = function(object, opts) { var obj2 = object; var options = normalizeStringifyOptions(opts); var objKeys; var filter; if (typeof options.filter === "function") { filter = options.filter; obj2 = filter("", obj2); } else if (isArray(options.filter)) { filter = options.filter; objKeys = filter; } var keys = []; if (typeof obj2 !== "object" || obj2 === null) { return ""; } var generateArrayPrefix = arrayPrefixGenerators[options.arrayFormat]; var commaRoundTrip = generateArrayPrefix === "comma" && options.commaRoundTrip; if (!objKeys) { objKeys = Object.keys(obj2); } if (options.sort) { objKeys.sort(options.sort); } var sideChannel = getSideChannel(); for (var i = 0; i < objKeys.length; ++i) { var key = objKeys[i]; var value = obj2[key]; if (options.skipNulls && value === null) { continue; } pushToArray(keys, stringify2( value, key, generateArrayPrefix, commaRoundTrip, options.allowEmptyArrays, options.strictNullHandling, options.skipNulls, options.encodeDotInKeys, options.encode ? options.encoder : null, options.filter, options.sort, options.allowDots, options.serializeDate, options.format, options.formatter, options.encodeValuesOnly, options.charset, sideChannel )); } var joined = keys.join(options.delimiter); var prefix = options.addQueryPrefix === true ? "?" : ""; if (options.charsetSentinel) { if (options.charset === "iso-8859-1") { prefix += "utf8=%26%2310003%3B&"; } else { prefix += "utf8=%E2%9C%93&"; } } return joined.length > 0 ? prefix + joined : ""; }; } }); // ../../node_modules/.pnpm/qs@6.14.2/node_modules/qs/lib/parse.js var require_parse2 = __commonJS({ "../../node_modules/.pnpm/qs@6.14.2/node_modules/qs/lib/parse.js"(exports2, module2) { "use strict"; var utils = require_utils10(); var has = Object.prototype.hasOwnProperty; var isArray = Array.isArray; var defaults = { allowDots: false, allowEmptyArrays: false, allowPrototypes: false, allowSparse: false, arrayLimit: 20, charset: "utf-8", charsetSentinel: false, comma: false, decodeDotInKeys: false, decoder: utils.decode, delimiter: "&", depth: 5, duplicates: "combine", ignoreQueryPrefix: false, interpretNumericEntities: false, parameterLimit: 1e3, parseArrays: true, plainObjects: false, strictDepth: false, strictNullHandling: false, throwOnLimitExceeded: false }; var interpretNumericEntities = /* @__PURE__ */ __name(function(str) { return str.replace(/&#(\d+);/g, function($0, numberStr) { return String.fromCharCode(parseInt(numberStr, 10)); }); }, "interpretNumericEntities"); var parseArrayValue = /* @__PURE__ */ __name(function(val, options, currentArrayLength) { if (val && typeof val === "string" && options.comma && val.indexOf(",") > -1) { return val.split(","); } if (options.throwOnLimitExceeded && currentArrayLength >= options.arrayLimit) { throw new RangeError("Array limit exceeded. Only " + options.arrayLimit + " element" + (options.arrayLimit === 1 ? "" : "s") + " allowed in an array."); } return val; }, "parseArrayValue"); var isoSentinel = "utf8=%26%2310003%3B"; var charsetSentinel = "utf8=%E2%9C%93"; var parseValues = /* @__PURE__ */ __name(function parseQueryStringValues(str, options) { var obj2 = { __proto__: null }; var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\?/, "") : str; cleanStr = cleanStr.replace(/%5B/gi, "[").replace(/%5D/gi, "]"); var limit = options.parameterLimit === Infinity ? void 0 : options.parameterLimit; var parts = cleanStr.split( options.delimiter, options.throwOnLimitExceeded ? limit + 1 : limit ); if (options.throwOnLimitExceeded && parts.length > limit) { throw new RangeError("Parameter limit exceeded. Only " + limit + " parameter" + (limit === 1 ? "" : "s") + " allowed."); } var skipIndex = -1; var i; var charset = options.charset; if (options.charsetSentinel) { for (i = 0; i < parts.length; ++i) { if (parts[i].indexOf("utf8=") === 0) { if (parts[i] === charsetSentinel) { charset = "utf-8"; } else if (parts[i] === isoSentinel) { charset = "iso-8859-1"; } skipIndex = i; i = parts.length; } } } for (i = 0; i < parts.length; ++i) { if (i === skipIndex) { continue; } var part = parts[i]; var bracketEqualsPos = part.indexOf("]="); var pos = bracketEqualsPos === -1 ? part.indexOf("=") : bracketEqualsPos + 1; var key; var val; if (pos === -1) { key = options.decoder(part, defaults.decoder, charset, "key"); val = options.strictNullHandling ? null : ""; } else { key = options.decoder(part.slice(0, pos), defaults.decoder, charset, "key"); if (key !== null) { val = utils.maybeMap( parseArrayValue( part.slice(pos + 1), options, isArray(obj2[key]) ? obj2[key].length : 0 ), function(encodedVal) { return options.decoder(encodedVal, defaults.decoder, charset, "value"); } ); } } if (val && options.interpretNumericEntities && charset === "iso-8859-1") { val = interpretNumericEntities(String(val)); } if (part.indexOf("[]=") > -1) { val = isArray(val) ? [val] : val; } if (options.comma && isArray(val) && val.length > options.arrayLimit) { if (options.throwOnLimitExceeded) { throw new RangeError("Array limit exceeded. Only " + options.arrayLimit + " element" + (options.arrayLimit === 1 ? "" : "s") + " allowed in an array."); } val = utils.combine([], val, options.arrayLimit, options.plainObjects); } if (key !== null) { var existing = has.call(obj2, key); if (existing && options.duplicates === "combine") { obj2[key] = utils.combine( obj2[key], val, options.arrayLimit, options.plainObjects ); } else if (!existing || options.duplicates === "last") { obj2[key] = val; } } } return obj2; }, "parseQueryStringValues"); var parseObject = /* @__PURE__ */ __name(function(chain, val, options, valuesParsed) { var currentArrayLength = 0; if (chain.length > 0 && chain[chain.length - 1] === "[]") { var parentKey = chain.slice(0, -1).join(""); currentArrayLength = Array.isArray(val) && val[parentKey] ? val[parentKey].length : 0; } var leaf = valuesParsed ? val : parseArrayValue(val, options, currentArrayLength); for (var i = chain.length - 1; i >= 0; --i) { var obj2; var root = chain[i]; if (root === "[]" && options.parseArrays) { if (utils.isOverflow(leaf)) { obj2 = leaf; } else { obj2 = options.allowEmptyArrays && (leaf === "" || options.strictNullHandling && leaf === null) ? [] : utils.combine( [], leaf, options.arrayLimit, options.plainObjects ); } } else { obj2 = options.plainObjects ? { __proto__: null } : {}; var cleanRoot = root.charAt(0) === "[" && root.charAt(root.length - 1) === "]" ? root.slice(1, -1) : root; var decodedRoot = options.decodeDotInKeys ? cleanRoot.replace(/%2E/g, ".") : cleanRoot; var index = parseInt(decodedRoot, 10); var isValidArrayIndex = !isNaN(index) && root !== decodedRoot && String(index) === decodedRoot && index >= 0 && options.parseArrays; if (!options.parseArrays && decodedRoot === "") { obj2 = { 0: leaf }; } else if (isValidArrayIndex && index < options.arrayLimit) { obj2 = []; obj2[index] = leaf; } else if (isValidArrayIndex && options.throwOnLimitExceeded) { throw new RangeError("Array limit exceeded. Only " + options.arrayLimit + " element" + (options.arrayLimit === 1 ? "" : "s") + " allowed in an array."); } else if (isValidArrayIndex) { obj2[index] = leaf; utils.markOverflow(obj2, index); } else if (decodedRoot !== "__proto__") { obj2[decodedRoot] = leaf; } } leaf = obj2; } return leaf; }, "parseObject"); var splitKeyIntoSegments = /* @__PURE__ */ __name(function splitKeyIntoSegments2(givenKey, options) { var key = options.allowDots ? givenKey.replace(/\.([^.[]+)/g, "[$1]") : givenKey; if (options.depth <= 0) { if (!options.plainObjects && has.call(Object.prototype, key)) { if (!options.allowPrototypes) { return; } } return [key]; } var brackets = /(\[[^[\]]*])/; var child = /(\[[^[\]]*])/g; var segment = brackets.exec(key); var parent = segment ? key.slice(0, segment.index) : key; var keys = []; if (parent) { if (!options.plainObjects && has.call(Object.prototype, parent)) { if (!options.allowPrototypes) { return; } } keys[keys.length] = parent; } var i = 0; while ((segment = child.exec(key)) !== null && i < options.depth) { i += 1; var segmentContent = segment[1].slice(1, -1); if (!options.plainObjects && has.call(Object.prototype, segmentContent)) { if (!options.allowPrototypes) { return; } } keys[keys.length] = segment[1]; } if (segment) { if (options.strictDepth === true) { throw new RangeError("Input depth exceeded depth option of " + options.depth + " and strictDepth is true"); } keys[keys.length] = "[" + key.slice(segment.index) + "]"; } return keys; }, "splitKeyIntoSegments"); var parseKeys = /* @__PURE__ */ __name(function parseQueryStringKeys(givenKey, val, options, valuesParsed) { if (!givenKey) { return; } var keys = splitKeyIntoSegments(givenKey, options); if (!keys) { return; } return parseObject(keys, val, options, valuesParsed); }, "parseQueryStringKeys"); var normalizeParseOptions = /* @__PURE__ */ __name(function normalizeParseOptions2(opts) { if (!opts) { return defaults; } if (typeof opts.allowEmptyArrays !== "undefined" && typeof opts.allowEmptyArrays !== "boolean") { throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided"); } if (typeof opts.decodeDotInKeys !== "undefined" && typeof opts.decodeDotInKeys !== "boolean") { throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided"); } if (opts.decoder !== null && typeof opts.decoder !== "undefined" && typeof opts.decoder !== "function") { throw new TypeError("Decoder has to be a function."); } if (typeof opts.charset !== "undefined" && opts.charset !== "utf-8" && opts.charset !== "iso-8859-1") { throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined"); } if (typeof opts.throwOnLimitExceeded !== "undefined" && typeof opts.throwOnLimitExceeded !== "boolean") { throw new TypeError("`throwOnLimitExceeded` option must be a boolean"); } var charset = typeof opts.charset === "undefined" ? defaults.charset : opts.charset; var duplicates = typeof opts.duplicates === "undefined" ? defaults.duplicates : opts.duplicates; if (duplicates !== "combine" && duplicates !== "first" && duplicates !== "last") { throw new TypeError("The duplicates option must be either combine, first, or last"); } var allowDots = typeof opts.allowDots === "undefined" ? opts.decodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots; return { allowDots, allowEmptyArrays: typeof opts.allowEmptyArrays === "boolean" ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays, allowPrototypes: typeof opts.allowPrototypes === "boolean" ? opts.allowPrototypes : defaults.allowPrototypes, allowSparse: typeof opts.allowSparse === "boolean" ? opts.allowSparse : defaults.allowSparse, arrayLimit: typeof opts.arrayLimit === "number" ? opts.arrayLimit : defaults.arrayLimit, charset, charsetSentinel: typeof opts.charsetSentinel === "boolean" ? opts.charsetSentinel : defaults.charsetSentinel, comma: typeof opts.comma === "boolean" ? opts.comma : defaults.comma, decodeDotInKeys: typeof opts.decodeDotInKeys === "boolean" ? opts.decodeDotInKeys : defaults.decodeDotInKeys, decoder: typeof opts.decoder === "function" ? opts.decoder : defaults.decoder, delimiter: typeof opts.delimiter === "string" || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter, // eslint-disable-next-line no-implicit-coercion, no-extra-parens depth: typeof opts.depth === "number" || opts.depth === false ? +opts.depth : defaults.depth, duplicates, ignoreQueryPrefix: opts.ignoreQueryPrefix === true, interpretNumericEntities: typeof opts.interpretNumericEntities === "boolean" ? opts.interpretNumericEntities : defaults.interpretNumericEntities, parameterLimit: typeof opts.parameterLimit === "number" ? opts.parameterLimit : defaults.parameterLimit, parseArrays: opts.parseArrays !== false, plainObjects: typeof opts.plainObjects === "boolean" ? opts.plainObjects : defaults.plainObjects, strictDepth: typeof opts.strictDepth === "boolean" ? !!opts.strictDepth : defaults.strictDepth, strictNullHandling: typeof opts.strictNullHandling === "boolean" ? opts.strictNullHandling : defaults.strictNullHandling, throwOnLimitExceeded: typeof opts.throwOnLimitExceeded === "boolean" ? opts.throwOnLimitExceeded : false }; }, "normalizeParseOptions"); module2.exports = function(str, opts) { var options = normalizeParseOptions(opts); if (str === "" || str === null || typeof str === "undefined") { return options.plainObjects ? { __proto__: null } : {}; } var tempObj = typeof str === "string" ? parseValues(str, options) : str; var obj2 = options.plainObjects ? { __proto__: null } : {}; var keys = Object.keys(tempObj); for (var i = 0; i < keys.length; ++i) { var key = keys[i]; var newObj = parseKeys(key, tempObj[key], options, typeof str === "string"); obj2 = utils.merge(obj2, newObj, options); } if (options.allowSparse === true) { return obj2; } return utils.compact(obj2); }; } }); // ../../node_modules/.pnpm/qs@6.14.2/node_modules/qs/lib/index.js var require_lib3 = __commonJS({ "../../node_modules/.pnpm/qs@6.14.2/node_modules/qs/lib/index.js"(exports2, module2) { "use strict"; var stringify2 = require_stringify(); var parse2 = require_parse2(); var formats = require_formats(); module2.exports = { formats, parse: parse2, stringify: stringify2 }; } }); // ../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/lib/types/urlencoded.js var require_urlencoded = __commonJS({ "../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/lib/types/urlencoded.js"(exports2, module2) { "use strict"; var bytes = require_bytes(); var contentType = require_content_type(); var createError = require_http_errors(); var debug = require_src()("body-parser:urlencoded"); var deprecate = require_depd()("body-parser"); var read = require_read(); var typeis = require_type_is(); module2.exports = urlencoded; var parsers = /* @__PURE__ */ Object.create(null); function urlencoded(options) { var opts = options || {}; if (opts.extended === void 0) { deprecate("undefined extended: provide extended option"); } var extended = opts.extended !== false; var inflate = opts.inflate !== false; var limit = typeof opts.limit !== "number" ? bytes.parse(opts.limit || "100kb") : opts.limit; var type = opts.type || "application/x-www-form-urlencoded"; var verify = opts.verify || false; if (verify !== false && typeof verify !== "function") { throw new TypeError("option verify must be function"); } var queryparse = extended ? extendedparser(opts) : simpleparser(opts); var shouldParse = typeof type !== "function" ? typeChecker(type) : type; function parse2(body) { return body.length ? queryparse(body) : {}; } __name(parse2, "parse"); return /* @__PURE__ */ __name(function urlencodedParser(req, res, next) { if (req._body) { debug("body already parsed"); next(); return; } req.body = req.body || {}; if (!typeis.hasBody(req)) { debug("skip empty body"); next(); return; } debug("content-type %j", req.headers["content-type"]); if (!shouldParse(req)) { debug("skip parsing"); next(); return; } var charset = getCharset(req) || "utf-8"; if (charset !== "utf-8") { debug("invalid charset"); next(createError(415, 'unsupported charset "' + charset.toUpperCase() + '"', { charset, type: "charset.unsupported" })); return; } read(req, res, next, parse2, debug, { debug, encoding: charset, inflate, limit, verify }); }, "urlencodedParser"); } __name(urlencoded, "urlencoded"); function extendedparser(options) { var parameterLimit = options.parameterLimit !== void 0 ? options.parameterLimit : 1e3; var depth = options.depth !== void 0 ? options.depth : 32; var parse2 = parser("qs"); if (isNaN(parameterLimit) || parameterLimit < 1) { throw new TypeError("option parameterLimit must be a positive number"); } if (isNaN(depth) || depth < 0) { throw new TypeError("option depth must be a zero or a positive number"); } if (isFinite(parameterLimit)) { parameterLimit = parameterLimit | 0; } return /* @__PURE__ */ __name(function queryparse(body) { var paramCount = parameterCount(body, parameterLimit); if (paramCount === void 0) { debug("too many parameters"); throw createError(413, "too many parameters", { type: "parameters.too.many" }); } var arrayLimit = Math.max(100, paramCount); debug("parse extended urlencoding"); try { return parse2(body, { allowPrototypes: true, arrayLimit, depth, strictDepth: true, parameterLimit }); } catch (err) { if (err instanceof RangeError) { throw createError(400, "The input exceeded the depth", { type: "querystring.parse.rangeError" }); } else { throw err; } } }, "queryparse"); } __name(extendedparser, "extendedparser"); function getCharset(req) { try { return (contentType.parse(req).parameters.charset || "").toLowerCase(); } catch (e) { return void 0; } } __name(getCharset, "getCharset"); function parameterCount(body, limit) { var count = 0; var index = 0; while ((index = body.indexOf("&", index)) !== -1) { count++; index++; if (count === limit) { return void 0; } } return count; } __name(parameterCount, "parameterCount"); function parser(name) { var mod = parsers[name]; if (mod !== void 0) { return mod.parse; } switch (name) { case "qs": mod = require_lib3(); break; case "querystring": mod = require("querystring"); break; } parsers[name] = mod; return mod.parse; } __name(parser, "parser"); function simpleparser(options) { var parameterLimit = options.parameterLimit !== void 0 ? options.parameterLimit : 1e3; var parse2 = parser("querystring"); if (isNaN(parameterLimit) || parameterLimit < 1) { throw new TypeError("option parameterLimit must be a positive number"); } if (isFinite(parameterLimit)) { parameterLimit = parameterLimit | 0; } return /* @__PURE__ */ __name(function queryparse(body) { var paramCount = parameterCount(body, parameterLimit); if (paramCount === void 0) { debug("too many parameters"); throw createError(413, "too many parameters", { type: "parameters.too.many" }); } debug("parse urlencoding"); return parse2(body, void 0, void 0, { maxKeys: parameterLimit }); }, "queryparse"); } __name(simpleparser, "simpleparser"); function typeChecker(type) { return /* @__PURE__ */ __name(function checkType(req) { return Boolean(typeis(req, type)); }, "checkType"); } __name(typeChecker, "typeChecker"); } }); // ../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/index.js var require_body_parser = __commonJS({ "../../node_modules/.pnpm/body-parser@1.20.4/node_modules/body-parser/index.js"(exports2, module2) { "use strict"; var deprecate = require_depd()("body-parser"); var parsers = /* @__PURE__ */ Object.create(null); exports2 = module2.exports = deprecate.function( bodyParser, "bodyParser: use individual json/urlencoded middlewares" ); Object.defineProperty(exports2, "json", { configurable: true, enumerable: true, get: createParserGetter("json") }); Object.defineProperty(exports2, "raw", { configurable: true, enumerable: true, get: createParserGetter("raw") }); Object.defineProperty(exports2, "text", { configurable: true, enumerable: true, get: createParserGetter("text") }); Object.defineProperty(exports2, "urlencoded", { configurable: true, enumerable: true, get: createParserGetter("urlencoded") }); function bodyParser(options) { var opts = Object.create(options || null, { type: { configurable: true, enumerable: true, value: void 0, writable: true } }); var _urlencoded = exports2.urlencoded(opts); var _json = exports2.json(opts); return /* @__PURE__ */ __name(function bodyParser2(req, res, next) { _json(req, res, function(err) { if (err) return next(err); _urlencoded(req, res, next); }); }, "bodyParser"); } __name(bodyParser, "bodyParser"); function createParserGetter(name) { return /* @__PURE__ */ __name(function get() { return loadParser(name); }, "get"); } __name(createParserGetter, "createParserGetter"); function loadParser(parserName) { var parser = parsers[parserName]; if (parser !== void 0) { return parser; } switch (parserName) { case "json": parser = require_json(); break; case "raw": parser = require_raw(); break; case "text": parser = require_text(); break; case "urlencoded": parser = require_urlencoded(); break; } return parsers[parserName] = parser; } __name(loadParser, "loadParser"); } }); // ../../node_modules/.pnpm/object-assign@4.1.1/node_modules/object-assign/index.js var require_object_assign = __commonJS({ "../../node_modules/.pnpm/object-assign@4.1.1/node_modules/object-assign/index.js"(exports2, module2) { "use strict"; var getOwnPropertySymbols = Object.getOwnPropertySymbols; var hasOwnProperty = Object.prototype.hasOwnProperty; var propIsEnumerable = Object.prototype.propertyIsEnumerable; function toObject(val) { if (val === null || val === void 0) { throw new TypeError("Object.assign cannot be called with null or undefined"); } return Object(val); } __name(toObject, "toObject"); function shouldUseNative() { try { if (!Object.assign) { return false; } var test1 = new String("abc"); test1[5] = "de"; if (Object.getOwnPropertyNames(test1)[0] === "5") { return false; } var test2 = {}; for (var i = 0; i < 10; i++) { test2["_" + String.fromCharCode(i)] = i; } var order2 = Object.getOwnPropertyNames(test2).map(function(n) { return test2[n]; }); if (order2.join("") !== "0123456789") { return false; } var test3 = {}; "abcdefghijklmnopqrst".split("").forEach(function(letter) { test3[letter] = letter; }); if (Object.keys(Object.assign({}, test3)).join("") !== "abcdefghijklmnopqrst") { return false; } return true; } catch (err) { return false; } } __name(shouldUseNative, "shouldUseNative"); module2.exports = shouldUseNative() ? Object.assign : function(target, source) { var from; var to = toObject(target); var symbols; for (var s = 1; s < arguments.length; s++) { from = Object(arguments[s]); for (var key in from) { if (hasOwnProperty.call(from, key)) { to[key] = from[key]; } } if (getOwnPropertySymbols) { symbols = getOwnPropertySymbols(from); for (var i = 0; i < symbols.length; i++) { if (propIsEnumerable.call(from, symbols[i])) { to[symbols[i]] = from[symbols[i]]; } } } } return to; }; } }); // ../../node_modules/.pnpm/vary@1.1.2/node_modules/vary/index.js var require_vary = __commonJS({ "../../node_modules/.pnpm/vary@1.1.2/node_modules/vary/index.js"(exports2, module2) { "use strict"; module2.exports = vary; module2.exports.append = append; var FIELD_NAME_REGEXP = /^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/; function append(header, field) { if (typeof header !== "string") { throw new TypeError("header argument is required"); } if (!field) { throw new TypeError("field argument is required"); } var fields = !Array.isArray(field) ? parse2(String(field)) : field; for (var j = 0; j < fields.length; j++) { if (!FIELD_NAME_REGEXP.test(fields[j])) { throw new TypeError("field argument contains an invalid header name"); } } if (header === "*") { return header; } var val = header; var vals = parse2(header.toLowerCase()); if (fields.indexOf("*") !== -1 || vals.indexOf("*") !== -1) { return "*"; } for (var i = 0; i < fields.length; i++) { var fld = fields[i].toLowerCase(); if (vals.indexOf(fld) === -1) { vals.push(fld); val = val ? val + ", " + fields[i] : fields[i]; } } return val; } __name(append, "append"); function parse2(header) { var end = 0; var list = []; var start = 0; for (var i = 0, len = header.length; i < len; i++) { switch (header.charCodeAt(i)) { case 32: if (start === end) { start = end = i + 1; } break; case 44: list.push(header.substring(start, end)); start = end = i + 1; break; default: end = i + 1; break; } } list.push(header.substring(start, end)); return list; } __name(parse2, "parse"); function vary(res, field) { if (!res || !res.getHeader || !res.setHeader) { throw new TypeError("res argument is required"); } var val = res.getHeader("Vary") || ""; var header = Array.isArray(val) ? val.join(", ") : String(val); if (val = append(header, field)) { res.setHeader("Vary", val); } } __name(vary, "vary"); } }); // ../../node_modules/.pnpm/cors@2.8.5/node_modules/cors/lib/index.js var require_lib4 = __commonJS({ "../../node_modules/.pnpm/cors@2.8.5/node_modules/cors/lib/index.js"(exports2, module2) { (function() { "use strict"; var assign = require_object_assign(); var vary = require_vary(); var defaults = { origin: "*", methods: "GET,HEAD,PUT,PATCH,POST,DELETE", preflightContinue: false, optionsSuccessStatus: 204 }; function isString(s) { return typeof s === "string" || s instanceof String; } __name(isString, "isString"); function isOriginAllowed(origin, allowedOrigin) { if (Array.isArray(allowedOrigin)) { for (var i = 0; i < allowedOrigin.length; ++i) { if (isOriginAllowed(origin, allowedOrigin[i])) { return true; } } return false; } else if (isString(allowedOrigin)) { return origin === allowedOrigin; } else if (allowedOrigin instanceof RegExp) { return allowedOrigin.test(origin); } else { return !!allowedOrigin; } } __name(isOriginAllowed, "isOriginAllowed"); function configureOrigin(options, req) { var requestOrigin = req.headers.origin, headers = [], isAllowed; if (!options.origin || options.origin === "*") { headers.push([{ key: "Access-Control-Allow-Origin", value: "*" }]); } else if (isString(options.origin)) { headers.push([{ key: "Access-Control-Allow-Origin", value: options.origin }]); headers.push([{ key: "Vary", value: "Origin" }]); } else { isAllowed = isOriginAllowed(requestOrigin, options.origin); headers.push([{ key: "Access-Control-Allow-Origin", value: isAllowed ? requestOrigin : false }]); headers.push([{ key: "Vary", value: "Origin" }]); } return headers; } __name(configureOrigin, "configureOrigin"); function configureMethods(options) { var methods = options.methods; if (methods.join) { methods = options.methods.join(","); } return { key: "Access-Control-Allow-Methods", value: methods }; } __name(configureMethods, "configureMethods"); function configureCredentials(options) { if (options.credentials === true) { return { key: "Access-Control-Allow-Credentials", value: "true" }; } return null; } __name(configureCredentials, "configureCredentials"); function configureAllowedHeaders(options, req) { var allowedHeaders = options.allowedHeaders || options.headers; var headers = []; if (!allowedHeaders) { allowedHeaders = req.headers["access-control-request-headers"]; headers.push([{ key: "Vary", value: "Access-Control-Request-Headers" }]); } else if (allowedHeaders.join) { allowedHeaders = allowedHeaders.join(","); } if (allowedHeaders && allowedHeaders.length) { headers.push([{ key: "Access-Control-Allow-Headers", value: allowedHeaders }]); } return headers; } __name(configureAllowedHeaders, "configureAllowedHeaders"); function configureExposedHeaders(options) { var headers = options.exposedHeaders; if (!headers) { return null; } else if (headers.join) { headers = headers.join(","); } if (headers && headers.length) { return { key: "Access-Control-Expose-Headers", value: headers }; } return null; } __name(configureExposedHeaders, "configureExposedHeaders"); function configureMaxAge(options) { var maxAge = (typeof options.maxAge === "number" || options.maxAge) && options.maxAge.toString(); if (maxAge && maxAge.length) { return { key: "Access-Control-Max-Age", value: maxAge }; } return null; } __name(configureMaxAge, "configureMaxAge"); function applyHeaders(headers, res) { for (var i = 0, n = headers.length; i < n; i++) { var header = headers[i]; if (header) { if (Array.isArray(header)) { applyHeaders(header, res); } else if (header.key === "Vary" && header.value) { vary(res, header.value); } else if (header.value) { res.setHeader(header.key, header.value); } } } } __name(applyHeaders, "applyHeaders"); function cors(options, req, res, next) { var headers = [], method = req.method && req.method.toUpperCase && req.method.toUpperCase(); if (method === "OPTIONS") { headers.push(configureOrigin(options, req)); headers.push(configureCredentials(options, req)); headers.push(configureMethods(options, req)); headers.push(configureAllowedHeaders(options, req)); headers.push(configureMaxAge(options, req)); headers.push(configureExposedHeaders(options, req)); applyHeaders(headers, res); if (options.preflightContinue) { next(); } else { res.statusCode = options.optionsSuccessStatus; res.setHeader("Content-Length", "0"); res.end(); } } else { headers.push(configureOrigin(options, req)); headers.push(configureCredentials(options, req)); headers.push(configureExposedHeaders(options, req)); applyHeaders(headers, res); next(); } } __name(cors, "cors"); function middlewareWrapper(o) { var optionsCallback = null; if (typeof o === "function") { optionsCallback = o; } else { optionsCallback = /* @__PURE__ */ __name(function(req, cb) { cb(null, o); }, "optionsCallback"); } return /* @__PURE__ */ __name(function corsMiddleware(req, res, next) { optionsCallback(req, function(err, options) { if (err) { next(err); } else { var corsOptions = assign({}, defaults, options); var originCallback = null; if (corsOptions.origin && typeof corsOptions.origin === "function") { originCallback = corsOptions.origin; } else if (corsOptions.origin) { originCallback = /* @__PURE__ */ __name(function(origin, cb) { cb(null, corsOptions.origin); }, "originCallback"); } if (originCallback) { originCallback(req.headers.origin, function(err2, origin) { if (err2 || !origin) { next(err2); } else { corsOptions.origin = origin; cors(corsOptions, req, res, next); } }); } else { next(); } } }); }, "corsMiddleware"); } __name(middlewareWrapper, "middlewareWrapper"); module2.exports = middlewareWrapper; })(); } }); // ../../node_modules/.pnpm/merge-descriptors@1.0.3/node_modules/merge-descriptors/index.js var require_merge_descriptors = __commonJS({ "../../node_modules/.pnpm/merge-descriptors@1.0.3/node_modules/merge-descriptors/index.js"(exports2, module2) { "use strict"; module2.exports = merge; var hasOwnProperty = Object.prototype.hasOwnProperty; function merge(dest, src, redefine) { if (!dest) { throw new TypeError("argument dest is required"); } if (!src) { throw new TypeError("argument src is required"); } if (redefine === void 0) { redefine = true; } Object.getOwnPropertyNames(src).forEach(/* @__PURE__ */ __name(function forEachOwnPropertyName(name) { if (!redefine && hasOwnProperty.call(dest, name)) { return; } var descriptor = Object.getOwnPropertyDescriptor(src, name); Object.defineProperty(dest, name, descriptor); }, "forEachOwnPropertyName")); return dest; } __name(merge, "merge"); } }); // ../../node_modules/.pnpm/encodeurl@2.0.0/node_modules/encodeurl/index.js var require_encodeurl = __commonJS({ "../../node_modules/.pnpm/encodeurl@2.0.0/node_modules/encodeurl/index.js"(exports2, module2) { "use strict"; module2.exports = encodeUrl; var ENCODE_CHARS_REGEXP = /(?:[^\x21\x23-\x3B\x3D\x3F-\x5F\x61-\x7A\x7C\x7E]|%(?:[^0-9A-Fa-f]|[0-9A-Fa-f][^0-9A-Fa-f]|$))+/g; var UNMATCHED_SURROGATE_PAIR_REGEXP = /(^|[^\uD800-\uDBFF])[\uDC00-\uDFFF]|[\uD800-\uDBFF]([^\uDC00-\uDFFF]|$)/g; var UNMATCHED_SURROGATE_PAIR_REPLACE = "$1\uFFFD$2"; function encodeUrl(url) { return String(url).replace(UNMATCHED_SURROGATE_PAIR_REGEXP, UNMATCHED_SURROGATE_PAIR_REPLACE).replace(ENCODE_CHARS_REGEXP, encodeURI); } __name(encodeUrl, "encodeUrl"); } }); // ../../node_modules/.pnpm/escape-html@1.0.3/node_modules/escape-html/index.js var require_escape_html = __commonJS({ "../../node_modules/.pnpm/escape-html@1.0.3/node_modules/escape-html/index.js"(exports2, module2) { "use strict"; var matchHtmlRegExp = /["'&<>]/; module2.exports = escapeHtml; function escapeHtml(string) { var str = "" + string; var match = matchHtmlRegExp.exec(str); if (!match) { return str; } var escape2; var html = ""; var index = 0; var lastIndex = 0; for (index = match.index; index < str.length; index++) { switch (str.charCodeAt(index)) { case 34: escape2 = """; break; case 38: escape2 = "&"; break; case 39: escape2 = "'"; break; case 60: escape2 = "<"; break; case 62: escape2 = ">"; break; default: continue; } if (lastIndex !== index) { html += str.substring(lastIndex, index); } lastIndex = index + 1; html += escape2; } return lastIndex !== index ? html + str.substring(lastIndex, index) : html; } __name(escapeHtml, "escapeHtml"); } }); // ../../node_modules/.pnpm/parseurl@1.3.3/node_modules/parseurl/index.js var require_parseurl = __commonJS({ "../../node_modules/.pnpm/parseurl@1.3.3/node_modules/parseurl/index.js"(exports2, module2) { "use strict"; var url = require("url"); var parse2 = url.parse; var Url = url.Url; module2.exports = parseurl; module2.exports.original = originalurl; function parseurl(req) { var url2 = req.url; if (url2 === void 0) { return void 0; } var parsed = req._parsedUrl; if (fresh(url2, parsed)) { return parsed; } parsed = fastparse(url2); parsed._raw = url2; return req._parsedUrl = parsed; } __name(parseurl, "parseurl"); function originalurl(req) { var url2 = req.originalUrl; if (typeof url2 !== "string") { return parseurl(req); } var parsed = req._parsedOriginalUrl; if (fresh(url2, parsed)) { return parsed; } parsed = fastparse(url2); parsed._raw = url2; return req._parsedOriginalUrl = parsed; } __name(originalurl, "originalurl"); function fastparse(str) { if (typeof str !== "string" || str.charCodeAt(0) !== 47) { return parse2(str); } var pathname = str; var query = null; var search = null; for (var i = 1; i < str.length; i++) { switch (str.charCodeAt(i)) { case 63: if (search === null) { pathname = str.substring(0, i); query = str.substring(i + 1); search = str.substring(i); } break; case 9: /* \t */ case 10: /* \n */ case 12: /* \f */ case 13: /* \r */ case 32: /* */ case 35: /* # */ case 160: case 65279: return parse2(str); } } var url2 = Url !== void 0 ? new Url() : {}; url2.path = str; url2.href = str; url2.pathname = pathname; if (search !== null) { url2.query = query; url2.search = search; } return url2; } __name(fastparse, "fastparse"); function fresh(url2, parsedUrl) { return typeof parsedUrl === "object" && parsedUrl !== null && (Url === void 0 || parsedUrl instanceof Url) && parsedUrl._raw === url2; } __name(fresh, "fresh"); } }); // ../../node_modules/.pnpm/finalhandler@1.3.2/node_modules/finalhandler/index.js var require_finalhandler = __commonJS({ "../../node_modules/.pnpm/finalhandler@1.3.2/node_modules/finalhandler/index.js"(exports2, module2) { "use strict"; var debug = require_src()("finalhandler"); var encodeUrl = require_encodeurl(); var escapeHtml = require_escape_html(); var onFinished = require_on_finished(); var parseUrl = require_parseurl(); var statuses = require_statuses(); var unpipe = require_unpipe(); var DOUBLE_SPACE_REGEXP = /\x20{2}/g; var NEWLINE_REGEXP = /\n/g; var defer = typeof setImmediate === "function" ? setImmediate : function(fn) { process.nextTick(fn.bind.apply(fn, arguments)); }; var isFinished = onFinished.isFinished; function createHtmlDocument(message) { var body = escapeHtml(message).replace(NEWLINE_REGEXP, "
").replace(DOUBLE_SPACE_REGEXP, "  "); return '\n\n\n\nError\n\n\n
' + body + "
\n\n\n"; } __name(createHtmlDocument, "createHtmlDocument"); module2.exports = finalhandler; function finalhandler(req, res, options) { var opts = options || {}; var env2 = opts.env || process.env.NODE_ENV || "development"; var onerror = opts.onerror; return function(err) { var headers; var msg; var status; if (!err && headersSent(res)) { debug("cannot 404 after headers sent"); return; } if (err) { status = getErrorStatusCode(err); if (status === void 0) { status = getResponseStatusCode(res); } else { headers = getErrorHeaders(err); } msg = getErrorMessage(err, status, env2); } else { status = 404; msg = "Cannot " + req.method + " " + encodeUrl(getResourceName(req)); } debug("default %s", status); if (err && onerror) { defer(onerror, err, req, res); } if (headersSent(res)) { debug("cannot %d after headers sent", status); if (req.socket) { req.socket.destroy(); } return; } send(req, res, status, headers, msg); }; } __name(finalhandler, "finalhandler"); function getErrorHeaders(err) { if (!err.headers || typeof err.headers !== "object") { return void 0; } var headers = /* @__PURE__ */ Object.create(null); var keys = Object.keys(err.headers); for (var i = 0; i < keys.length; i++) { var key = keys[i]; headers[key] = err.headers[key]; } return headers; } __name(getErrorHeaders, "getErrorHeaders"); function getErrorMessage(err, status, env2) { var msg; if (env2 !== "production") { msg = err.stack; if (!msg && typeof err.toString === "function") { msg = err.toString(); } } return msg || statuses.message[status]; } __name(getErrorMessage, "getErrorMessage"); function getErrorStatusCode(err) { if (typeof err.status === "number" && err.status >= 400 && err.status < 600) { return err.status; } if (typeof err.statusCode === "number" && err.statusCode >= 400 && err.statusCode < 600) { return err.statusCode; } return void 0; } __name(getErrorStatusCode, "getErrorStatusCode"); function getResourceName(req) { try { return parseUrl.original(req).pathname; } catch (e) { return "resource"; } } __name(getResourceName, "getResourceName"); function getResponseStatusCode(res) { var status = res.statusCode; if (typeof status !== "number" || status < 400 || status > 599) { status = 500; } return status; } __name(getResponseStatusCode, "getResponseStatusCode"); function headersSent(res) { return typeof res.headersSent !== "boolean" ? Boolean(res._header) : res.headersSent; } __name(headersSent, "headersSent"); function send(req, res, status, headers, message) { function write() { var body = createHtmlDocument(message); res.statusCode = status; if (req.httpVersionMajor < 2) { res.statusMessage = statuses.message[status]; } res.removeHeader("Content-Encoding"); res.removeHeader("Content-Language"); res.removeHeader("Content-Range"); setHeaders(res, headers); res.setHeader("Content-Security-Policy", "default-src 'none'"); res.setHeader("X-Content-Type-Options", "nosniff"); res.setHeader("Content-Type", "text/html; charset=utf-8"); res.setHeader("Content-Length", Buffer.byteLength(body, "utf8")); if (req.method === "HEAD") { res.end(); return; } res.end(body, "utf8"); } __name(write, "write"); if (isFinished(req)) { write(); return; } unpipe(req); onFinished(req, write); req.resume(); } __name(send, "send"); function setHeaders(res, headers) { if (!headers) { return; } var keys = Object.keys(headers); for (var i = 0; i < keys.length; i++) { var key = keys[i]; res.setHeader(key, headers[key]); } } __name(setHeaders, "setHeaders"); } }); // ../../node_modules/.pnpm/array-flatten@1.1.1/node_modules/array-flatten/array-flatten.js var require_array_flatten = __commonJS({ "../../node_modules/.pnpm/array-flatten@1.1.1/node_modules/array-flatten/array-flatten.js"(exports2, module2) { "use strict"; module2.exports = arrayFlatten; function flattenWithDepth(array, result, depth) { for (var i = 0; i < array.length; i++) { var value = array[i]; if (depth > 0 && Array.isArray(value)) { flattenWithDepth(value, result, depth - 1); } else { result.push(value); } } return result; } __name(flattenWithDepth, "flattenWithDepth"); function flattenForever(array, result) { for (var i = 0; i < array.length; i++) { var value = array[i]; if (Array.isArray(value)) { flattenForever(value, result); } else { result.push(value); } } return result; } __name(flattenForever, "flattenForever"); function arrayFlatten(array, depth) { if (depth == null) { return flattenForever(array, []); } return flattenWithDepth(array, [], depth); } __name(arrayFlatten, "arrayFlatten"); } }); // ../../node_modules/.pnpm/path-to-regexp@0.1.13/node_modules/path-to-regexp/index.js var require_path_to_regexp2 = __commonJS({ "../../node_modules/.pnpm/path-to-regexp@0.1.13/node_modules/path-to-regexp/index.js"(exports2, module2) { module2.exports = pathToRegexp; var MATCHING_GROUP_REGEXP = /\\.|\((?:\?<(.*?)>)?(?!\?)/g; function pathToRegexp(path, keys, options) { options = options || {}; keys = keys || []; var strict = options.strict; var end = options.end !== false; var flags = options.sensitive ? "" : "i"; var lookahead = options.lookahead !== false; var extraOffset = 0; var keysOffset = keys.length; var i = 0; var name = 0; var pos = 0; var backtrack = ""; var m; if (path instanceof RegExp) { while (m = MATCHING_GROUP_REGEXP.exec(path.source)) { if (m[0][0] === "\\") continue; keys.push({ name: m[1] || name++, optional: false, offset: m.index }); } return path; } if (Array.isArray(path)) { path = path.map(function(value) { return pathToRegexp(value, keys, options).source; }); return new RegExp(path.join("|"), flags); } if (typeof path !== "string") { throw new TypeError("path must be a string, array of strings, or regular expression"); } path = path.replace( /\\.|(\/)?(\.)?:(\w+)(\(.*?\))?(\*)?(\?)?|[.*]|\/\(/g, function(match, slash, format, key, capture, star, optional, offset) { if (match[0] === "\\") { backtrack += match; pos += 2; return match; } if (match === ".") { backtrack += "\\."; extraOffset += 1; pos += 1; return "\\."; } if (slash || format) { backtrack = ""; } else { backtrack += path.slice(pos, offset); } pos = offset + match.length; if (match === "*") { backtrack = ""; extraOffset += 3; return "(.*)"; } if (match === "/(") { backtrack += "/"; extraOffset += 2; return "/(?:"; } slash = slash || ""; format = format ? "\\." : ""; optional = optional || ""; capture = capture ? capture.replace(/\\.|\*/, function(m2) { return m2 === "*" ? "(.*)" : m2; }) : backtrack ? "((?:(?!/|" + backtrack + ").)+?)" : "([^/" + format + "]+?)"; keys.push({ name: key, optional: !!optional, offset: offset + extraOffset }); var result = "(?:" + format + slash + capture + (star ? "((?:[/" + format + "].+?)?)" : "") + ")" + optional; backtrack = ""; extraOffset += result.length - match.length; return result; } ); while (m = MATCHING_GROUP_REGEXP.exec(path)) { if (m[0][0] === "\\") continue; if (keysOffset + i === keys.length || keys[keysOffset + i].offset > m.index) { keys.splice(keysOffset + i, 0, { name: name++, // Unnamed matching groups must be consistently linear. optional: false, offset: m.index }); } i++; } path += strict ? "" : path[path.length - 1] === "/" ? "?" : "/?"; if (end) { path += "$"; } else if (path[path.length - 1] !== "/") { path += lookahead ? "(?=/|$)" : "(?:/|$)"; } return new RegExp("^" + path, flags); } __name(pathToRegexp, "pathToRegexp"); } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/router/layer.js var require_layer = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/router/layer.js"(exports2, module2) { "use strict"; var pathRegexp = require_path_to_regexp2(); var debug = require_src()("express:router:layer"); var hasOwnProperty = Object.prototype.hasOwnProperty; module2.exports = Layer; function Layer(path, options, fn) { if (!(this instanceof Layer)) { return new Layer(path, options, fn); } debug("new %o", path); var opts = options || {}; this.handle = fn; this.name = fn.name || ""; this.params = void 0; this.path = void 0; this.regexp = pathRegexp(path, this.keys = [], opts); this.regexp.fast_star = path === "*"; this.regexp.fast_slash = path === "/" && opts.end === false; } __name(Layer, "Layer"); Layer.prototype.handle_error = /* @__PURE__ */ __name(function handle_error(error, req, res, next) { var fn = this.handle; if (fn.length !== 4) { return next(error); } try { fn(error, req, res, next); } catch (err) { next(err); } }, "handle_error"); Layer.prototype.handle_request = /* @__PURE__ */ __name(function handle(req, res, next) { var fn = this.handle; if (fn.length > 3) { return next(); } try { fn(req, res, next); } catch (err) { next(err); } }, "handle"); Layer.prototype.match = /* @__PURE__ */ __name(function match(path) { var match2; if (path != null) { if (this.regexp.fast_slash) { this.params = {}; this.path = ""; return true; } if (this.regexp.fast_star) { this.params = { "0": decode_param(path) }; this.path = path; return true; } match2 = this.regexp.exec(path); } if (!match2) { this.params = void 0; this.path = void 0; return false; } this.params = {}; this.path = match2[0]; var keys = this.keys; var params = this.params; for (var i = 1; i < match2.length; i++) { var key = keys[i - 1]; var prop = key.name; var val = decode_param(match2[i]); if (val !== void 0 || !hasOwnProperty.call(params, prop)) { params[prop] = val; } } return true; }, "match"); function decode_param(val) { if (typeof val !== "string" || val.length === 0) { return val; } try { return decodeURIComponent(val); } catch (err) { if (err instanceof URIError) { err.message = "Failed to decode param '" + val + "'"; err.status = err.statusCode = 400; } throw err; } } __name(decode_param, "decode_param"); } }); // ../../node_modules/.pnpm/methods@1.1.2/node_modules/methods/index.js var require_methods = __commonJS({ "../../node_modules/.pnpm/methods@1.1.2/node_modules/methods/index.js"(exports2, module2) { "use strict"; var http = require("http"); module2.exports = getCurrentNodeMethods() || getBasicNodeMethods(); function getCurrentNodeMethods() { return http.METHODS && http.METHODS.map(/* @__PURE__ */ __name(function lowerCaseMethod(method) { return method.toLowerCase(); }, "lowerCaseMethod")); } __name(getCurrentNodeMethods, "getCurrentNodeMethods"); function getBasicNodeMethods() { return [ "get", "post", "put", "head", "delete", "options", "trace", "copy", "lock", "mkcol", "move", "purge", "propfind", "proppatch", "unlock", "report", "mkactivity", "checkout", "merge", "m-search", "notify", "subscribe", "unsubscribe", "patch", "search", "connect" ]; } __name(getBasicNodeMethods, "getBasicNodeMethods"); } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/router/route.js var require_route = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/router/route.js"(exports2, module2) { "use strict"; var debug = require_src()("express:router:route"); var flatten = require_array_flatten(); var Layer = require_layer(); var methods = require_methods(); var slice = Array.prototype.slice; var toString2 = Object.prototype.toString; module2.exports = Route; function Route(path) { this.path = path; this.stack = []; debug("new %o", path); this.methods = {}; } __name(Route, "Route"); Route.prototype._handles_method = /* @__PURE__ */ __name(function _handles_method(method) { if (this.methods._all) { return true; } var name = typeof method === "string" ? method.toLowerCase() : method; if (name === "head" && !this.methods["head"]) { name = "get"; } return Boolean(this.methods[name]); }, "_handles_method"); Route.prototype._options = /* @__PURE__ */ __name(function _options() { var methods2 = Object.keys(this.methods); if (this.methods.get && !this.methods.head) { methods2.push("head"); } for (var i = 0; i < methods2.length; i++) { methods2[i] = methods2[i].toUpperCase(); } return methods2; }, "_options"); Route.prototype.dispatch = /* @__PURE__ */ __name(function dispatch(req, res, done) { var idx = 0; var stack = this.stack; var sync = 0; if (stack.length === 0) { return done(); } var method = typeof req.method === "string" ? req.method.toLowerCase() : req.method; if (method === "head" && !this.methods["head"]) { method = "get"; } req.route = this; next(); function next(err) { if (err && err === "route") { return done(); } if (err && err === "router") { return done(err); } if (++sync > 100) { return setImmediate(next, err); } var layer = stack[idx++]; if (!layer) { return done(err); } if (layer.method && layer.method !== method) { next(err); } else if (err) { layer.handle_error(err, req, res, next); } else { layer.handle_request(req, res, next); } sync = 0; } __name(next, "next"); }, "dispatch"); Route.prototype.all = /* @__PURE__ */ __name(function all() { var handles = flatten(slice.call(arguments)); for (var i = 0; i < handles.length; i++) { var handle = handles[i]; if (typeof handle !== "function") { var type = toString2.call(handle); var msg = "Route.all() requires a callback function but got a " + type; throw new TypeError(msg); } var layer = Layer("/", {}, handle); layer.method = void 0; this.methods._all = true; this.stack.push(layer); } return this; }, "all"); methods.forEach(function(method) { Route.prototype[method] = function() { var handles = flatten(slice.call(arguments)); for (var i = 0; i < handles.length; i++) { var handle = handles[i]; if (typeof handle !== "function") { var type = toString2.call(handle); var msg = "Route." + method + "() requires a callback function but got a " + type; throw new Error(msg); } debug("%s %o", method, this.path); var layer = Layer("/", {}, handle); layer.method = method; this.methods[method] = true; this.stack.push(layer); } return this; }; }); } }); // ../../node_modules/.pnpm/utils-merge@1.0.1/node_modules/utils-merge/index.js var require_utils_merge = __commonJS({ "../../node_modules/.pnpm/utils-merge@1.0.1/node_modules/utils-merge/index.js"(exports2, module2) { exports2 = module2.exports = function(a, b) { if (a && b) { for (var key in b) { a[key] = b[key]; } } return a; }; } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/router/index.js var require_router = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/router/index.js"(exports2, module2) { "use strict"; var Route = require_route(); var Layer = require_layer(); var methods = require_methods(); var mixin = require_utils_merge(); var debug = require_src()("express:router"); var deprecate = require_depd()("express"); var flatten = require_array_flatten(); var parseUrl = require_parseurl(); var setPrototypeOf = require_setprototypeof(); var objectRegExp = /^\[object (\S+)\]$/; var slice = Array.prototype.slice; var toString2 = Object.prototype.toString; var proto = module2.exports = function(options) { var opts = options || {}; function router(req, res, next) { router.handle(req, res, next); } __name(router, "router"); setPrototypeOf(router, proto); router.params = {}; router._params = []; router.caseSensitive = opts.caseSensitive; router.mergeParams = opts.mergeParams; router.strict = opts.strict; router.stack = []; return router; }; proto.param = /* @__PURE__ */ __name(function param(name, fn) { if (typeof name === "function") { deprecate("router.param(fn): Refactor to use path params"); this._params.push(name); return; } var params = this._params; var len = params.length; var ret2; if (name[0] === ":") { deprecate("router.param(" + JSON.stringify(name) + ", fn): Use router.param(" + JSON.stringify(name.slice(1)) + ", fn) instead"); name = name.slice(1); } for (var i = 0; i < len; ++i) { if (ret2 = params[i](name, fn)) { fn = ret2; } } if ("function" !== typeof fn) { throw new Error("invalid param() call for " + name + ", got " + fn); } (this.params[name] = this.params[name] || []).push(fn); return this; }, "param"); proto.handle = /* @__PURE__ */ __name(function handle(req, res, out) { var self2 = this; debug("dispatching %s %s", req.method, req.url); var idx = 0; var protohost = getProtohost(req.url) || ""; var removed = ""; var slashAdded = false; var sync = 0; var paramcalled = {}; var options = []; var stack = self2.stack; var parentParams = req.params; var parentUrl = req.baseUrl || ""; var done = restore(out, req, "baseUrl", "next", "params"); req.next = next; if (req.method === "OPTIONS") { done = wrap(done, function(old, err) { if (err || options.length === 0) return old(err); sendOptionsResponse(res, options, old); }); } req.baseUrl = parentUrl; req.originalUrl = req.originalUrl || req.url; next(); function next(err) { var layerError = err === "route" ? null : err; if (slashAdded) { req.url = req.url.slice(1); slashAdded = false; } if (removed.length !== 0) { req.baseUrl = parentUrl; req.url = protohost + removed + req.url.slice(protohost.length); removed = ""; } if (layerError === "router") { setImmediate(done, null); return; } if (idx >= stack.length) { setImmediate(done, layerError); return; } if (++sync > 100) { return setImmediate(next, err); } var path = getPathname(req); if (path == null) { return done(layerError); } var layer; var match; var route; while (match !== true && idx < stack.length) { layer = stack[idx++]; match = matchLayer(layer, path); route = layer.route; if (typeof match !== "boolean") { layerError = layerError || match; } if (match !== true) { continue; } if (!route) { continue; } if (layerError) { match = false; continue; } var method = req.method; var has_method = route._handles_method(method); if (!has_method && method === "OPTIONS") { appendMethods(options, route._options()); } if (!has_method && method !== "HEAD") { match = false; } } if (match !== true) { return done(layerError); } if (route) { req.route = route; } req.params = self2.mergeParams ? mergeParams(layer.params, parentParams) : layer.params; var layerPath = layer.path; self2.process_params(layer, paramcalled, req, res, function(err2) { if (err2) { next(layerError || err2); } else if (route) { layer.handle_request(req, res, next); } else { trim_prefix(layer, layerError, layerPath, path); } sync = 0; }); } __name(next, "next"); function trim_prefix(layer, layerError, layerPath, path) { if (layerPath.length !== 0) { if (layerPath !== path.slice(0, layerPath.length)) { next(layerError); return; } var c = path[layerPath.length]; if (c && c !== "/" && c !== ".") return next(layerError); debug("trim prefix (%s) from url %s", layerPath, req.url); removed = layerPath; req.url = protohost + req.url.slice(protohost.length + removed.length); if (!protohost && req.url[0] !== "/") { req.url = "/" + req.url; slashAdded = true; } req.baseUrl = parentUrl + (removed[removed.length - 1] === "/" ? removed.substring(0, removed.length - 1) : removed); } debug("%s %s : %s", layer.name, layerPath, req.originalUrl); if (layerError) { layer.handle_error(layerError, req, res, next); } else { layer.handle_request(req, res, next); } } __name(trim_prefix, "trim_prefix"); }, "handle"); proto.process_params = /* @__PURE__ */ __name(function process_params(layer, called, req, res, done) { var params = this.params; var keys = layer.keys; if (!keys || keys.length === 0) { return done(); } var i = 0; var name; var paramIndex = 0; var key; var paramVal; var paramCallbacks; var paramCalled; function param(err) { if (err) { return done(err); } if (i >= keys.length) { return done(); } paramIndex = 0; key = keys[i++]; name = key.name; paramVal = req.params[name]; paramCallbacks = params[name]; paramCalled = called[name]; if (paramVal === void 0 || !paramCallbacks) { return param(); } if (paramCalled && (paramCalled.match === paramVal || paramCalled.error && paramCalled.error !== "route")) { req.params[name] = paramCalled.value; return param(paramCalled.error); } called[name] = paramCalled = { error: null, match: paramVal, value: paramVal }; paramCallback(); } __name(param, "param"); function paramCallback(err) { var fn = paramCallbacks[paramIndex++]; paramCalled.value = req.params[key.name]; if (err) { paramCalled.error = err; param(err); return; } if (!fn) return param(); try { fn(req, res, paramCallback, paramVal, key.name); } catch (e) { paramCallback(e); } } __name(paramCallback, "paramCallback"); param(); }, "process_params"); proto.use = /* @__PURE__ */ __name(function use(fn) { var offset = 0; var path = "/"; if (typeof fn !== "function") { var arg = fn; while (Array.isArray(arg) && arg.length !== 0) { arg = arg[0]; } if (typeof arg !== "function") { offset = 1; path = fn; } } var callbacks = flatten(slice.call(arguments, offset)); if (callbacks.length === 0) { throw new TypeError("Router.use() requires a middleware function"); } for (var i = 0; i < callbacks.length; i++) { var fn = callbacks[i]; if (typeof fn !== "function") { throw new TypeError("Router.use() requires a middleware function but got a " + gettype(fn)); } debug("use %o %s", path, fn.name || ""); var layer = new Layer(path, { sensitive: this.caseSensitive, strict: false, end: false }, fn); layer.route = void 0; this.stack.push(layer); } return this; }, "use"); proto.route = /* @__PURE__ */ __name(function route(path) { var route2 = new Route(path); var layer = new Layer(path, { sensitive: this.caseSensitive, strict: this.strict, end: true }, route2.dispatch.bind(route2)); layer.route = route2; this.stack.push(layer); return route2; }, "route"); methods.concat("all").forEach(function(method) { proto[method] = function(path) { var route = this.route(path); route[method].apply(route, slice.call(arguments, 1)); return this; }; }); function appendMethods(list, addition) { for (var i = 0; i < addition.length; i++) { var method = addition[i]; if (list.indexOf(method) === -1) { list.push(method); } } } __name(appendMethods, "appendMethods"); function getPathname(req) { try { return parseUrl(req).pathname; } catch (err) { return void 0; } } __name(getPathname, "getPathname"); function getProtohost(url) { if (typeof url !== "string" || url.length === 0 || url[0] === "/") { return void 0; } var searchIndex = url.indexOf("?"); var pathLength = searchIndex !== -1 ? searchIndex : url.length; var fqdnIndex = url.slice(0, pathLength).indexOf("://"); return fqdnIndex !== -1 ? url.substring(0, url.indexOf("/", 3 + fqdnIndex)) : void 0; } __name(getProtohost, "getProtohost"); function gettype(obj2) { var type = typeof obj2; if (type !== "object") { return type; } return toString2.call(obj2).replace(objectRegExp, "$1"); } __name(gettype, "gettype"); function matchLayer(layer, path) { try { return layer.match(path); } catch (err) { return err; } } __name(matchLayer, "matchLayer"); function mergeParams(params, parent) { if (typeof parent !== "object" || !parent) { return params; } var obj2 = mixin({}, parent); if (!(0 in params) || !(0 in parent)) { return mixin(obj2, params); } var i = 0; var o = 0; while (i in params) { i++; } while (o in parent) { o++; } for (i--; i >= 0; i--) { params[i + o] = params[i]; if (i < o) { delete params[i]; } } return mixin(obj2, params); } __name(mergeParams, "mergeParams"); function restore(fn, obj2) { var props = new Array(arguments.length - 2); var vals = new Array(arguments.length - 2); for (var i = 0; i < props.length; i++) { props[i] = arguments[i + 2]; vals[i] = obj2[props[i]]; } return function() { for (var i2 = 0; i2 < props.length; i2++) { obj2[props[i2]] = vals[i2]; } return fn.apply(this, arguments); }; } __name(restore, "restore"); function sendOptionsResponse(res, options, next) { try { var body = options.join(","); res.set("Allow", body); res.send(body); } catch (err) { next(err); } } __name(sendOptionsResponse, "sendOptionsResponse"); function wrap(old, fn) { return /* @__PURE__ */ __name(function proxy() { var args = new Array(arguments.length + 1); args[0] = old; for (var i = 0, len = arguments.length; i < len; i++) { args[i + 1] = arguments[i]; } fn.apply(this, args); }, "proxy"); } __name(wrap, "wrap"); } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/middleware/init.js var require_init = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/middleware/init.js"(exports2) { "use strict"; var setPrototypeOf = require_setprototypeof(); exports2.init = function(app) { return /* @__PURE__ */ __name(function expressInit(req, res, next) { if (app.enabled("x-powered-by")) res.setHeader("X-Powered-By", "Express"); req.res = res; res.req = req; req.next = next; setPrototypeOf(req, app.request); setPrototypeOf(res, app.response); res.locals = res.locals || /* @__PURE__ */ Object.create(null); next(); }, "expressInit"); }; } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/middleware/query.js var require_query = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/middleware/query.js"(exports2, module2) { "use strict"; var merge = require_utils_merge(); var parseUrl = require_parseurl(); var qs = require_lib3(); module2.exports = /* @__PURE__ */ __name(function query(options) { var opts = merge({}, options); var queryparse = qs.parse; if (typeof options === "function") { queryparse = options; opts = void 0; } if (opts !== void 0 && opts.allowPrototypes === void 0) { opts.allowPrototypes = true; } return /* @__PURE__ */ __name(function query2(req, res, next) { if (!req.query) { var val = parseUrl(req).query; req.query = queryparse(val, opts); } next(); }, "query"); }, "query"); } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/view.js var require_view = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/view.js"(exports2, module2) { "use strict"; var debug = require_src()("express:view"); var path = require("path"); var fs = require("fs"); var dirname = path.dirname; var basename = path.basename; var extname = path.extname; var join = path.join; var resolve = path.resolve; module2.exports = View; function View(name, options) { var opts = options || {}; this.defaultEngine = opts.defaultEngine; this.ext = extname(name); this.name = name; this.root = opts.root; if (!this.ext && !this.defaultEngine) { throw new Error("No default engine was specified and no extension was provided."); } var fileName = name; if (!this.ext) { this.ext = this.defaultEngine[0] !== "." ? "." + this.defaultEngine : this.defaultEngine; fileName += this.ext; } if (!opts.engines[this.ext]) { var mod = this.ext.slice(1); debug('require "%s"', mod); var fn = require(mod).__express; if (typeof fn !== "function") { throw new Error('Module "' + mod + '" does not provide a view engine.'); } opts.engines[this.ext] = fn; } this.engine = opts.engines[this.ext]; this.path = this.lookup(fileName); } __name(View, "View"); View.prototype.lookup = /* @__PURE__ */ __name(function lookup(name) { var path2; var roots = [].concat(this.root); debug('lookup "%s"', name); for (var i = 0; i < roots.length && !path2; i++) { var root = roots[i]; var loc = resolve(root, name); var dir = dirname(loc); var file2 = basename(loc); path2 = this.resolve(dir, file2); } return path2; }, "lookup"); View.prototype.render = /* @__PURE__ */ __name(function render(options, callback) { debug('render "%s"', this.path); this.engine(this.path, options, callback); }, "render"); View.prototype.resolve = /* @__PURE__ */ __name(function resolve2(dir, file2) { var ext = this.ext; var path2 = join(dir, file2); var stat = tryStat(path2); if (stat && stat.isFile()) { return path2; } path2 = join(dir, basename(file2, ext), "index" + ext); stat = tryStat(path2); if (stat && stat.isFile()) { return path2; } }, "resolve"); function tryStat(path2) { debug('stat "%s"', path2); try { return fs.statSync(path2); } catch (e) { return void 0; } } __name(tryStat, "tryStat"); } }); // ../../node_modules/.pnpm/safe-buffer@5.2.1/node_modules/safe-buffer/index.js var require_safe_buffer = __commonJS({ "../../node_modules/.pnpm/safe-buffer@5.2.1/node_modules/safe-buffer/index.js"(exports2, module2) { var buffer = require("buffer"); var Buffer2 = buffer.Buffer; function copyProps(src, dst) { for (var key in src) { dst[key] = src[key]; } } __name(copyProps, "copyProps"); if (Buffer2.from && Buffer2.alloc && Buffer2.allocUnsafe && Buffer2.allocUnsafeSlow) { module2.exports = buffer; } else { copyProps(buffer, exports2); exports2.Buffer = SafeBuffer; } function SafeBuffer(arg, encodingOrOffset, length) { return Buffer2(arg, encodingOrOffset, length); } __name(SafeBuffer, "SafeBuffer"); SafeBuffer.prototype = Object.create(Buffer2.prototype); copyProps(Buffer2, SafeBuffer); SafeBuffer.from = function(arg, encodingOrOffset, length) { if (typeof arg === "number") { throw new TypeError("Argument must not be a number"); } return Buffer2(arg, encodingOrOffset, length); }; SafeBuffer.alloc = function(size, fill, encoding) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } var buf = Buffer2(size); if (fill !== void 0) { if (typeof encoding === "string") { buf.fill(fill, encoding); } else { buf.fill(fill); } } else { buf.fill(0); } return buf; }; SafeBuffer.allocUnsafe = function(size) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } return Buffer2(size); }; SafeBuffer.allocUnsafeSlow = function(size) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } return buffer.SlowBuffer(size); }; } }); // ../../node_modules/.pnpm/content-disposition@0.5.4/node_modules/content-disposition/index.js var require_content_disposition = __commonJS({ "../../node_modules/.pnpm/content-disposition@0.5.4/node_modules/content-disposition/index.js"(exports2, module2) { "use strict"; module2.exports = contentDisposition; module2.exports.parse = parse2; var basename = require("path").basename; var Buffer2 = require_safe_buffer().Buffer; var ENCODE_URL_ATTR_CHAR_REGEXP = /[\x00-\x20"'()*,/:;<=>?@[\\\]{}\x7f]/g; var HEX_ESCAPE_REGEXP = /%[0-9A-Fa-f]{2}/; var HEX_ESCAPE_REPLACE_REGEXP = /%([0-9A-Fa-f]{2})/g; var NON_LATIN1_REGEXP = /[^\x20-\x7e\xa0-\xff]/g; var QESC_REGEXP = /\\([\u0000-\u007f])/g; var QUOTE_REGEXP = /([\\"])/g; var PARAM_REGEXP = /;[\x09\x20]*([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*=[\x09\x20]*("(?:[\x20!\x23-\x5b\x5d-\x7e\x80-\xff]|\\[\x20-\x7e])*"|[!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*/g; var TEXT_REGEXP = /^[\x20-\x7e\x80-\xff]+$/; var TOKEN_REGEXP = /^[!#$%&'*+.0-9A-Z^_`a-z|~-]+$/; var EXT_VALUE_REGEXP = /^([A-Za-z0-9!#$%&+\-^_`{}~]+)'(?:[A-Za-z]{2,3}(?:-[A-Za-z]{3}){0,3}|[A-Za-z]{4,8}|)'((?:%[0-9A-Fa-f]{2}|[A-Za-z0-9!#$&+.^_`|~-])+)$/; var DISPOSITION_TYPE_REGEXP = /^([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*(?:$|;)/; function contentDisposition(filename, options) { var opts = options || {}; var type = opts.type || "attachment"; var params = createparams(filename, opts.fallback); return format(new ContentDisposition(type, params)); } __name(contentDisposition, "contentDisposition"); function createparams(filename, fallback) { if (filename === void 0) { return; } var params = {}; if (typeof filename !== "string") { throw new TypeError("filename must be a string"); } if (fallback === void 0) { fallback = true; } if (typeof fallback !== "string" && typeof fallback !== "boolean") { throw new TypeError("fallback must be a string or boolean"); } if (typeof fallback === "string" && NON_LATIN1_REGEXP.test(fallback)) { throw new TypeError("fallback must be ISO-8859-1 string"); } var name = basename(filename); var isQuotedString = TEXT_REGEXP.test(name); var fallbackName = typeof fallback !== "string" ? fallback && getlatin1(name) : basename(fallback); var hasFallback = typeof fallbackName === "string" && fallbackName !== name; if (hasFallback || !isQuotedString || HEX_ESCAPE_REGEXP.test(name)) { params["filename*"] = name; } if (isQuotedString || hasFallback) { params.filename = hasFallback ? fallbackName : name; } return params; } __name(createparams, "createparams"); function format(obj2) { var parameters = obj2.parameters; var type = obj2.type; if (!type || typeof type !== "string" || !TOKEN_REGEXP.test(type)) { throw new TypeError("invalid type"); } var string = String(type).toLowerCase(); if (parameters && typeof parameters === "object") { var param; var params = Object.keys(parameters).sort(); for (var i = 0; i < params.length; i++) { param = params[i]; var val = param.substr(-1) === "*" ? ustring(parameters[param]) : qstring(parameters[param]); string += "; " + param + "=" + val; } } return string; } __name(format, "format"); function decodefield(str) { var match = EXT_VALUE_REGEXP.exec(str); if (!match) { throw new TypeError("invalid extended field value"); } var charset = match[1].toLowerCase(); var encoded = match[2]; var value; var binary = encoded.replace(HEX_ESCAPE_REPLACE_REGEXP, pdecode); switch (charset) { case "iso-8859-1": value = getlatin1(binary); break; case "utf-8": value = Buffer2.from(binary, "binary").toString("utf8"); break; default: throw new TypeError("unsupported charset in extended field"); } return value; } __name(decodefield, "decodefield"); function getlatin1(val) { return String(val).replace(NON_LATIN1_REGEXP, "?"); } __name(getlatin1, "getlatin1"); function parse2(string) { if (!string || typeof string !== "string") { throw new TypeError("argument string is required"); } var match = DISPOSITION_TYPE_REGEXP.exec(string); if (!match) { throw new TypeError("invalid type format"); } var index = match[0].length; var type = match[1].toLowerCase(); var key; var names = []; var params = {}; var value; index = PARAM_REGEXP.lastIndex = match[0].substr(-1) === ";" ? index - 1 : index; while (match = PARAM_REGEXP.exec(string)) { if (match.index !== index) { throw new TypeError("invalid parameter format"); } index += match[0].length; key = match[1].toLowerCase(); value = match[2]; if (names.indexOf(key) !== -1) { throw new TypeError("invalid duplicate parameter"); } names.push(key); if (key.indexOf("*") + 1 === key.length) { key = key.slice(0, -1); value = decodefield(value); params[key] = value; continue; } if (typeof params[key] === "string") { continue; } if (value[0] === '"') { value = value.substr(1, value.length - 2).replace(QESC_REGEXP, "$1"); } params[key] = value; } if (index !== -1 && index !== string.length) { throw new TypeError("invalid parameter format"); } return new ContentDisposition(type, params); } __name(parse2, "parse"); function pdecode(str, hex) { return String.fromCharCode(parseInt(hex, 16)); } __name(pdecode, "pdecode"); function pencode(char) { return "%" + String(char).charCodeAt(0).toString(16).toUpperCase(); } __name(pencode, "pencode"); function qstring(val) { var str = String(val); return '"' + str.replace(QUOTE_REGEXP, "\\$1") + '"'; } __name(qstring, "qstring"); function ustring(val) { var str = String(val); var encoded = encodeURIComponent(str).replace(ENCODE_URL_ATTR_CHAR_REGEXP, pencode); return "UTF-8''" + encoded; } __name(ustring, "ustring"); function ContentDisposition(type, parameters) { this.type = type; this.parameters = parameters; } __name(ContentDisposition, "ContentDisposition"); } }); // ../../node_modules/.pnpm/etag@1.8.1/node_modules/etag/index.js var require_etag = __commonJS({ "../../node_modules/.pnpm/etag@1.8.1/node_modules/etag/index.js"(exports2, module2) { "use strict"; module2.exports = etag; var crypto5 = require("crypto"); var Stats = require("fs").Stats; var toString2 = Object.prototype.toString; function entitytag(entity) { if (entity.length === 0) { return '"0-2jmj7l5rSw0yVb/vlWAYkK/YBwk"'; } var hash = crypto5.createHash("sha1").update(entity, "utf8").digest("base64").substring(0, 27); var len = typeof entity === "string" ? Buffer.byteLength(entity, "utf8") : entity.length; return '"' + len.toString(16) + "-" + hash + '"'; } __name(entitytag, "entitytag"); function etag(entity, options) { if (entity == null) { throw new TypeError("argument entity is required"); } var isStats = isstats(entity); var weak = options && typeof options.weak === "boolean" ? options.weak : isStats; if (!isStats && typeof entity !== "string" && !Buffer.isBuffer(entity)) { throw new TypeError("argument entity must be string, Buffer, or fs.Stats"); } var tag = isStats ? stattag(entity) : entitytag(entity); return weak ? "W/" + tag : tag; } __name(etag, "etag"); function isstats(obj2) { if (typeof Stats === "function" && obj2 instanceof Stats) { return true; } return obj2 && typeof obj2 === "object" && "ctime" in obj2 && toString2.call(obj2.ctime) === "[object Date]" && "mtime" in obj2 && toString2.call(obj2.mtime) === "[object Date]" && "ino" in obj2 && typeof obj2.ino === "number" && "size" in obj2 && typeof obj2.size === "number"; } __name(isstats, "isstats"); function stattag(stat) { var mtime = stat.mtime.getTime().toString(16); var size = stat.size.toString(16); return '"' + size + "-" + mtime + '"'; } __name(stattag, "stattag"); } }); // ../../node_modules/.pnpm/fresh@0.5.2/node_modules/fresh/index.js var require_fresh = __commonJS({ "../../node_modules/.pnpm/fresh@0.5.2/node_modules/fresh/index.js"(exports2, module2) { "use strict"; var CACHE_CONTROL_NO_CACHE_REGEXP = /(?:^|,)\s*?no-cache\s*?(?:,|$)/; module2.exports = fresh; function fresh(reqHeaders, resHeaders) { var modifiedSince = reqHeaders["if-modified-since"]; var noneMatch = reqHeaders["if-none-match"]; if (!modifiedSince && !noneMatch) { return false; } var cacheControl = reqHeaders["cache-control"]; if (cacheControl && CACHE_CONTROL_NO_CACHE_REGEXP.test(cacheControl)) { return false; } if (noneMatch && noneMatch !== "*") { var etag = resHeaders["etag"]; if (!etag) { return false; } var etagStale = true; var matches = parseTokenList(noneMatch); for (var i = 0; i < matches.length; i++) { var match = matches[i]; if (match === etag || match === "W/" + etag || "W/" + match === etag) { etagStale = false; break; } } if (etagStale) { return false; } } if (modifiedSince) { var lastModified = resHeaders["last-modified"]; var modifiedStale = !lastModified || !(parseHttpDate(lastModified) <= parseHttpDate(modifiedSince)); if (modifiedStale) { return false; } } return true; } __name(fresh, "fresh"); function parseHttpDate(date) { var timestamp = date && Date.parse(date); return typeof timestamp === "number" ? timestamp : NaN; } __name(parseHttpDate, "parseHttpDate"); function parseTokenList(str) { var end = 0; var list = []; var start = 0; for (var i = 0, len = str.length; i < len; i++) { switch (str.charCodeAt(i)) { case 32: if (start === end) { start = end = i + 1; } break; case 44: list.push(str.substring(start, end)); start = end = i + 1; break; default: end = i + 1; break; } } list.push(str.substring(start, end)); return list; } __name(parseTokenList, "parseTokenList"); } }); // ../../node_modules/.pnpm/mime@1.6.0/node_modules/mime/types.json var require_types3 = __commonJS({ "../../node_modules/.pnpm/mime@1.6.0/node_modules/mime/types.json"(exports2, module2) { module2.exports = { "application/andrew-inset": ["ez"], "application/applixware": ["aw"], "application/atom+xml": ["atom"], "application/atomcat+xml": ["atomcat"], "application/atomsvc+xml": ["atomsvc"], "application/bdoc": ["bdoc"], "application/ccxml+xml": ["ccxml"], "application/cdmi-capability": ["cdmia"], "application/cdmi-container": ["cdmic"], "application/cdmi-domain": ["cdmid"], "application/cdmi-object": ["cdmio"], "application/cdmi-queue": ["cdmiq"], "application/cu-seeme": ["cu"], "application/dash+xml": ["mpd"], "application/davmount+xml": ["davmount"], "application/docbook+xml": ["dbk"], "application/dssc+der": ["dssc"], "application/dssc+xml": ["xdssc"], "application/ecmascript": ["ecma"], "application/emma+xml": ["emma"], "application/epub+zip": ["epub"], "application/exi": ["exi"], "application/font-tdpfr": ["pfr"], "application/font-woff": [], "application/font-woff2": [], "application/geo+json": ["geojson"], "application/gml+xml": ["gml"], "application/gpx+xml": ["gpx"], "application/gxf": ["gxf"], "application/gzip": ["gz"], "application/hyperstudio": ["stk"], "application/inkml+xml": ["ink", "inkml"], "application/ipfix": ["ipfix"], "application/java-archive": ["jar", "war", "ear"], "application/java-serialized-object": ["ser"], "application/java-vm": ["class"], "application/javascript": ["js", "mjs"], "application/json": ["json", "map"], "application/json5": ["json5"], "application/jsonml+json": ["jsonml"], "application/ld+json": ["jsonld"], "application/lost+xml": ["lostxml"], "application/mac-binhex40": ["hqx"], "application/mac-compactpro": ["cpt"], "application/mads+xml": ["mads"], "application/manifest+json": ["webmanifest"], "application/marc": ["mrc"], "application/marcxml+xml": ["mrcx"], "application/mathematica": ["ma", "nb", "mb"], "application/mathml+xml": ["mathml"], "application/mbox": ["mbox"], "application/mediaservercontrol+xml": ["mscml"], "application/metalink+xml": ["metalink"], "application/metalink4+xml": ["meta4"], "application/mets+xml": ["mets"], "application/mods+xml": ["mods"], "application/mp21": ["m21", "mp21"], "application/mp4": ["mp4s", "m4p"], "application/msword": ["doc", "dot"], "application/mxf": ["mxf"], "application/octet-stream": ["bin", "dms", "lrf", "mar", "so", "dist", "distz", "pkg", "bpk", "dump", "elc", "deploy", "exe", "dll", "deb", "dmg", "iso", "img", "msi", "msp", "msm", "buffer"], "application/oda": ["oda"], "application/oebps-package+xml": ["opf"], "application/ogg": ["ogx"], "application/omdoc+xml": ["omdoc"], "application/onenote": ["onetoc", "onetoc2", "onetmp", "onepkg"], "application/oxps": ["oxps"], "application/patch-ops-error+xml": ["xer"], "application/pdf": ["pdf"], "application/pgp-encrypted": ["pgp"], "application/pgp-signature": ["asc", "sig"], "application/pics-rules": ["prf"], "application/pkcs10": ["p10"], "application/pkcs7-mime": ["p7m", "p7c"], "application/pkcs7-signature": ["p7s"], "application/pkcs8": ["p8"], "application/pkix-attr-cert": ["ac"], "application/pkix-cert": ["cer"], "application/pkix-crl": ["crl"], "application/pkix-pkipath": ["pkipath"], "application/pkixcmp": ["pki"], "application/pls+xml": ["pls"], "application/postscript": ["ai", "eps", "ps"], "application/prs.cww": ["cww"], "application/pskc+xml": ["pskcxml"], "application/raml+yaml": ["raml"], "application/rdf+xml": ["rdf"], "application/reginfo+xml": ["rif"], "application/relax-ng-compact-syntax": ["rnc"], "application/resource-lists+xml": ["rl"], "application/resource-lists-diff+xml": ["rld"], "application/rls-services+xml": ["rs"], "application/rpki-ghostbusters": ["gbr"], "application/rpki-manifest": ["mft"], "application/rpki-roa": ["roa"], "application/rsd+xml": ["rsd"], "application/rss+xml": ["rss"], "application/rtf": ["rtf"], "application/sbml+xml": ["sbml"], "application/scvp-cv-request": ["scq"], "application/scvp-cv-response": ["scs"], "application/scvp-vp-request": ["spq"], "application/scvp-vp-response": ["spp"], "application/sdp": ["sdp"], "application/set-payment-initiation": ["setpay"], "application/set-registration-initiation": ["setreg"], "application/shf+xml": ["shf"], "application/smil+xml": ["smi", "smil"], "application/sparql-query": ["rq"], "application/sparql-results+xml": ["srx"], "application/srgs": ["gram"], "application/srgs+xml": ["grxml"], "application/sru+xml": ["sru"], "application/ssdl+xml": ["ssdl"], "application/ssml+xml": ["ssml"], "application/tei+xml": ["tei", "teicorpus"], "application/thraud+xml": ["tfi"], "application/timestamped-data": ["tsd"], "application/vnd.3gpp.pic-bw-large": ["plb"], "application/vnd.3gpp.pic-bw-small": ["psb"], "application/vnd.3gpp.pic-bw-var": ["pvb"], "application/vnd.3gpp2.tcap": ["tcap"], "application/vnd.3m.post-it-notes": ["pwn"], "application/vnd.accpac.simply.aso": ["aso"], "application/vnd.accpac.simply.imp": ["imp"], "application/vnd.acucobol": ["acu"], "application/vnd.acucorp": ["atc", "acutc"], "application/vnd.adobe.air-application-installer-package+zip": ["air"], "application/vnd.adobe.formscentral.fcdt": ["fcdt"], "application/vnd.adobe.fxp": ["fxp", "fxpl"], "application/vnd.adobe.xdp+xml": ["xdp"], "application/vnd.adobe.xfdf": ["xfdf"], "application/vnd.ahead.space": ["ahead"], "application/vnd.airzip.filesecure.azf": ["azf"], "application/vnd.airzip.filesecure.azs": ["azs"], "application/vnd.amazon.ebook": ["azw"], "application/vnd.americandynamics.acc": ["acc"], "application/vnd.amiga.ami": ["ami"], "application/vnd.android.package-archive": ["apk"], "application/vnd.anser-web-certificate-issue-initiation": ["cii"], "application/vnd.anser-web-funds-transfer-initiation": ["fti"], "application/vnd.antix.game-component": ["atx"], "application/vnd.apple.installer+xml": ["mpkg"], "application/vnd.apple.mpegurl": ["m3u8"], "application/vnd.apple.pkpass": ["pkpass"], "application/vnd.aristanetworks.swi": ["swi"], "application/vnd.astraea-software.iota": ["iota"], "application/vnd.audiograph": ["aep"], "application/vnd.blueice.multipass": ["mpm"], "application/vnd.bmi": ["bmi"], "application/vnd.businessobjects": ["rep"], "application/vnd.chemdraw+xml": ["cdxml"], "application/vnd.chipnuts.karaoke-mmd": ["mmd"], "application/vnd.cinderella": ["cdy"], "application/vnd.claymore": ["cla"], "application/vnd.cloanto.rp9": ["rp9"], "application/vnd.clonk.c4group": ["c4g", "c4d", "c4f", "c4p", "c4u"], "application/vnd.cluetrust.cartomobile-config": ["c11amc"], "application/vnd.cluetrust.cartomobile-config-pkg": ["c11amz"], "application/vnd.commonspace": ["csp"], "application/vnd.contact.cmsg": ["cdbcmsg"], "application/vnd.cosmocaller": ["cmc"], "application/vnd.crick.clicker": ["clkx"], "application/vnd.crick.clicker.keyboard": ["clkk"], "application/vnd.crick.clicker.palette": ["clkp"], "application/vnd.crick.clicker.template": ["clkt"], "application/vnd.crick.clicker.wordbank": ["clkw"], "application/vnd.criticaltools.wbs+xml": ["wbs"], "application/vnd.ctc-posml": ["pml"], "application/vnd.cups-ppd": ["ppd"], "application/vnd.curl.car": ["car"], "application/vnd.curl.pcurl": ["pcurl"], "application/vnd.dart": ["dart"], "application/vnd.data-vision.rdz": ["rdz"], "application/vnd.dece.data": ["uvf", "uvvf", "uvd", "uvvd"], "application/vnd.dece.ttml+xml": ["uvt", "uvvt"], "application/vnd.dece.unspecified": ["uvx", "uvvx"], "application/vnd.dece.zip": ["uvz", "uvvz"], "application/vnd.denovo.fcselayout-link": ["fe_launch"], "application/vnd.dna": ["dna"], "application/vnd.dolby.mlp": ["mlp"], "application/vnd.dpgraph": ["dpg"], "application/vnd.dreamfactory": ["dfac"], "application/vnd.ds-keypoint": ["kpxx"], "application/vnd.dvb.ait": ["ait"], "application/vnd.dvb.service": ["svc"], "application/vnd.dynageo": ["geo"], "application/vnd.ecowin.chart": ["mag"], "application/vnd.enliven": ["nml"], "application/vnd.epson.esf": ["esf"], "application/vnd.epson.msf": ["msf"], "application/vnd.epson.quickanime": ["qam"], "application/vnd.epson.salt": ["slt"], "application/vnd.epson.ssf": ["ssf"], "application/vnd.eszigno3+xml": ["es3", "et3"], "application/vnd.ezpix-album": ["ez2"], "application/vnd.ezpix-package": ["ez3"], "application/vnd.fdf": ["fdf"], "application/vnd.fdsn.mseed": ["mseed"], "application/vnd.fdsn.seed": ["seed", "dataless"], "application/vnd.flographit": ["gph"], "application/vnd.fluxtime.clip": ["ftc"], "application/vnd.framemaker": ["fm", "frame", "maker", "book"], "application/vnd.frogans.fnc": ["fnc"], "application/vnd.frogans.ltf": ["ltf"], "application/vnd.fsc.weblaunch": ["fsc"], "application/vnd.fujitsu.oasys": ["oas"], "application/vnd.fujitsu.oasys2": ["oa2"], "application/vnd.fujitsu.oasys3": ["oa3"], "application/vnd.fujitsu.oasysgp": ["fg5"], "application/vnd.fujitsu.oasysprs": ["bh2"], "application/vnd.fujixerox.ddd": ["ddd"], "application/vnd.fujixerox.docuworks": ["xdw"], "application/vnd.fujixerox.docuworks.binder": ["xbd"], "application/vnd.fuzzysheet": ["fzs"], "application/vnd.genomatix.tuxedo": ["txd"], "application/vnd.geogebra.file": ["ggb"], "application/vnd.geogebra.tool": ["ggt"], "application/vnd.geometry-explorer": ["gex", "gre"], "application/vnd.geonext": ["gxt"], "application/vnd.geoplan": ["g2w"], "application/vnd.geospace": ["g3w"], "application/vnd.gmx": ["gmx"], "application/vnd.google-apps.document": ["gdoc"], "application/vnd.google-apps.presentation": ["gslides"], "application/vnd.google-apps.spreadsheet": ["gsheet"], "application/vnd.google-earth.kml+xml": ["kml"], "application/vnd.google-earth.kmz": ["kmz"], "application/vnd.grafeq": ["gqf", "gqs"], "application/vnd.groove-account": ["gac"], "application/vnd.groove-help": ["ghf"], "application/vnd.groove-identity-message": ["gim"], "application/vnd.groove-injector": ["grv"], "application/vnd.groove-tool-message": ["gtm"], "application/vnd.groove-tool-template": ["tpl"], "application/vnd.groove-vcard": ["vcg"], "application/vnd.hal+xml": ["hal"], "application/vnd.handheld-entertainment+xml": ["zmm"], "application/vnd.hbci": ["hbci"], "application/vnd.hhe.lesson-player": ["les"], "application/vnd.hp-hpgl": ["hpgl"], "application/vnd.hp-hpid": ["hpid"], "application/vnd.hp-hps": ["hps"], "application/vnd.hp-jlyt": ["jlt"], "application/vnd.hp-pcl": ["pcl"], "application/vnd.hp-pclxl": ["pclxl"], "application/vnd.hydrostatix.sof-data": ["sfd-hdstx"], "application/vnd.ibm.minipay": ["mpy"], "application/vnd.ibm.modcap": ["afp", "listafp", "list3820"], "application/vnd.ibm.rights-management": ["irm"], "application/vnd.ibm.secure-container": ["sc"], "application/vnd.iccprofile": ["icc", "icm"], "application/vnd.igloader": ["igl"], "application/vnd.immervision-ivp": ["ivp"], "application/vnd.immervision-ivu": ["ivu"], "application/vnd.insors.igm": ["igm"], "application/vnd.intercon.formnet": ["xpw", "xpx"], "application/vnd.intergeo": ["i2g"], "application/vnd.intu.qbo": ["qbo"], "application/vnd.intu.qfx": ["qfx"], "application/vnd.ipunplugged.rcprofile": ["rcprofile"], "application/vnd.irepository.package+xml": ["irp"], "application/vnd.is-xpr": ["xpr"], "application/vnd.isac.fcs": ["fcs"], "application/vnd.jam": ["jam"], "application/vnd.jcp.javame.midlet-rms": ["rms"], "application/vnd.jisp": ["jisp"], "application/vnd.joost.joda-archive": ["joda"], "application/vnd.kahootz": ["ktz", "ktr"], "application/vnd.kde.karbon": ["karbon"], "application/vnd.kde.kchart": ["chrt"], "application/vnd.kde.kformula": ["kfo"], "application/vnd.kde.kivio": ["flw"], "application/vnd.kde.kontour": ["kon"], "application/vnd.kde.kpresenter": ["kpr", "kpt"], "application/vnd.kde.kspread": ["ksp"], "application/vnd.kde.kword": ["kwd", "kwt"], "application/vnd.kenameaapp": ["htke"], "application/vnd.kidspiration": ["kia"], "application/vnd.kinar": ["kne", "knp"], "application/vnd.koan": ["skp", "skd", "skt", "skm"], "application/vnd.kodak-descriptor": ["sse"], "application/vnd.las.las+xml": ["lasxml"], "application/vnd.llamagraphics.life-balance.desktop": ["lbd"], "application/vnd.llamagraphics.life-balance.exchange+xml": ["lbe"], "application/vnd.lotus-1-2-3": ["123"], "application/vnd.lotus-approach": ["apr"], "application/vnd.lotus-freelance": ["pre"], "application/vnd.lotus-notes": ["nsf"], "application/vnd.lotus-organizer": ["org"], "application/vnd.lotus-screencam": ["scm"], "application/vnd.lotus-wordpro": ["lwp"], "application/vnd.macports.portpkg": ["portpkg"], "application/vnd.mcd": ["mcd"], "application/vnd.medcalcdata": ["mc1"], "application/vnd.mediastation.cdkey": ["cdkey"], "application/vnd.mfer": ["mwf"], "application/vnd.mfmp": ["mfm"], "application/vnd.micrografx.flo": ["flo"], "application/vnd.micrografx.igx": ["igx"], "application/vnd.mif": ["mif"], "application/vnd.mobius.daf": ["daf"], "application/vnd.mobius.dis": ["dis"], "application/vnd.mobius.mbk": ["mbk"], "application/vnd.mobius.mqy": ["mqy"], "application/vnd.mobius.msl": ["msl"], "application/vnd.mobius.plc": ["plc"], "application/vnd.mobius.txf": ["txf"], "application/vnd.mophun.application": ["mpn"], "application/vnd.mophun.certificate": ["mpc"], "application/vnd.mozilla.xul+xml": ["xul"], "application/vnd.ms-artgalry": ["cil"], "application/vnd.ms-cab-compressed": ["cab"], "application/vnd.ms-excel": ["xls", "xlm", "xla", "xlc", "xlt", "xlw"], "application/vnd.ms-excel.addin.macroenabled.12": ["xlam"], "application/vnd.ms-excel.sheet.binary.macroenabled.12": ["xlsb"], "application/vnd.ms-excel.sheet.macroenabled.12": ["xlsm"], "application/vnd.ms-excel.template.macroenabled.12": ["xltm"], "application/vnd.ms-fontobject": ["eot"], "application/vnd.ms-htmlhelp": ["chm"], "application/vnd.ms-ims": ["ims"], "application/vnd.ms-lrm": ["lrm"], "application/vnd.ms-officetheme": ["thmx"], "application/vnd.ms-outlook": ["msg"], "application/vnd.ms-pki.seccat": ["cat"], "application/vnd.ms-pki.stl": ["stl"], "application/vnd.ms-powerpoint": ["ppt", "pps", "pot"], "application/vnd.ms-powerpoint.addin.macroenabled.12": ["ppam"], "application/vnd.ms-powerpoint.presentation.macroenabled.12": ["pptm"], "application/vnd.ms-powerpoint.slide.macroenabled.12": ["sldm"], "application/vnd.ms-powerpoint.slideshow.macroenabled.12": ["ppsm"], "application/vnd.ms-powerpoint.template.macroenabled.12": ["potm"], "application/vnd.ms-project": ["mpp", "mpt"], "application/vnd.ms-word.document.macroenabled.12": ["docm"], "application/vnd.ms-word.template.macroenabled.12": ["dotm"], "application/vnd.ms-works": ["wps", "wks", "wcm", "wdb"], "application/vnd.ms-wpl": ["wpl"], "application/vnd.ms-xpsdocument": ["xps"], "application/vnd.mseq": ["mseq"], "application/vnd.musician": ["mus"], "application/vnd.muvee.style": ["msty"], "application/vnd.mynfc": ["taglet"], "application/vnd.neurolanguage.nlu": ["nlu"], "application/vnd.nitf": ["ntf", "nitf"], "application/vnd.noblenet-directory": ["nnd"], "application/vnd.noblenet-sealer": ["nns"], "application/vnd.noblenet-web": ["nnw"], "application/vnd.nokia.n-gage.data": ["ngdat"], "application/vnd.nokia.n-gage.symbian.install": ["n-gage"], "application/vnd.nokia.radio-preset": ["rpst"], "application/vnd.nokia.radio-presets": ["rpss"], "application/vnd.novadigm.edm": ["edm"], "application/vnd.novadigm.edx": ["edx"], "application/vnd.novadigm.ext": ["ext"], "application/vnd.oasis.opendocument.chart": ["odc"], "application/vnd.oasis.opendocument.chart-template": ["otc"], "application/vnd.oasis.opendocument.database": ["odb"], "application/vnd.oasis.opendocument.formula": ["odf"], "application/vnd.oasis.opendocument.formula-template": ["odft"], "application/vnd.oasis.opendocument.graphics": ["odg"], "application/vnd.oasis.opendocument.graphics-template": ["otg"], "application/vnd.oasis.opendocument.image": ["odi"], "application/vnd.oasis.opendocument.image-template": ["oti"], "application/vnd.oasis.opendocument.presentation": ["odp"], "application/vnd.oasis.opendocument.presentation-template": ["otp"], "application/vnd.oasis.opendocument.spreadsheet": ["ods"], "application/vnd.oasis.opendocument.spreadsheet-template": ["ots"], "application/vnd.oasis.opendocument.text": ["odt"], "application/vnd.oasis.opendocument.text-master": ["odm"], "application/vnd.oasis.opendocument.text-template": ["ott"], "application/vnd.oasis.opendocument.text-web": ["oth"], "application/vnd.olpc-sugar": ["xo"], "application/vnd.oma.dd2+xml": ["dd2"], "application/vnd.openofficeorg.extension": ["oxt"], "application/vnd.openxmlformats-officedocument.presentationml.presentation": ["pptx"], "application/vnd.openxmlformats-officedocument.presentationml.slide": ["sldx"], "application/vnd.openxmlformats-officedocument.presentationml.slideshow": ["ppsx"], "application/vnd.openxmlformats-officedocument.presentationml.template": ["potx"], "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": ["xlsx"], "application/vnd.openxmlformats-officedocument.spreadsheetml.template": ["xltx"], "application/vnd.openxmlformats-officedocument.wordprocessingml.document": ["docx"], "application/vnd.openxmlformats-officedocument.wordprocessingml.template": ["dotx"], "application/vnd.osgeo.mapguide.package": ["mgp"], "application/vnd.osgi.dp": ["dp"], "application/vnd.osgi.subsystem": ["esa"], "application/vnd.palm": ["pdb", "pqa", "oprc"], "application/vnd.pawaafile": ["paw"], "application/vnd.pg.format": ["str"], "application/vnd.pg.osasli": ["ei6"], "application/vnd.picsel": ["efif"], "application/vnd.pmi.widget": ["wg"], "application/vnd.pocketlearn": ["plf"], "application/vnd.powerbuilder6": ["pbd"], "application/vnd.previewsystems.box": ["box"], "application/vnd.proteus.magazine": ["mgz"], "application/vnd.publishare-delta-tree": ["qps"], "application/vnd.pvi.ptid1": ["ptid"], "application/vnd.quark.quarkxpress": ["qxd", "qxt", "qwd", "qwt", "qxl", "qxb"], "application/vnd.realvnc.bed": ["bed"], "application/vnd.recordare.musicxml": ["mxl"], "application/vnd.recordare.musicxml+xml": ["musicxml"], "application/vnd.rig.cryptonote": ["cryptonote"], "application/vnd.rim.cod": ["cod"], "application/vnd.rn-realmedia": ["rm"], "application/vnd.rn-realmedia-vbr": ["rmvb"], "application/vnd.route66.link66+xml": ["link66"], "application/vnd.sailingtracker.track": ["st"], "application/vnd.seemail": ["see"], "application/vnd.sema": ["sema"], "application/vnd.semd": ["semd"], "application/vnd.semf": ["semf"], "application/vnd.shana.informed.formdata": ["ifm"], "application/vnd.shana.informed.formtemplate": ["itp"], "application/vnd.shana.informed.interchange": ["iif"], "application/vnd.shana.informed.package": ["ipk"], "application/vnd.simtech-mindmapper": ["twd", "twds"], "application/vnd.smaf": ["mmf"], "application/vnd.smart.teacher": ["teacher"], "application/vnd.solent.sdkm+xml": ["sdkm", "sdkd"], "application/vnd.spotfire.dxp": ["dxp"], "application/vnd.spotfire.sfs": ["sfs"], "application/vnd.stardivision.calc": ["sdc"], "application/vnd.stardivision.draw": ["sda"], "application/vnd.stardivision.impress": ["sdd"], "application/vnd.stardivision.math": ["smf"], "application/vnd.stardivision.writer": ["sdw", "vor"], "application/vnd.stardivision.writer-global": ["sgl"], "application/vnd.stepmania.package": ["smzip"], "application/vnd.stepmania.stepchart": ["sm"], "application/vnd.sun.wadl+xml": ["wadl"], "application/vnd.sun.xml.calc": ["sxc"], "application/vnd.sun.xml.calc.template": ["stc"], "application/vnd.sun.xml.draw": ["sxd"], "application/vnd.sun.xml.draw.template": ["std"], "application/vnd.sun.xml.impress": ["sxi"], "application/vnd.sun.xml.impress.template": ["sti"], "application/vnd.sun.xml.math": ["sxm"], "application/vnd.sun.xml.writer": ["sxw"], "application/vnd.sun.xml.writer.global": ["sxg"], "application/vnd.sun.xml.writer.template": ["stw"], "application/vnd.sus-calendar": ["sus", "susp"], "application/vnd.svd": ["svd"], "application/vnd.symbian.install": ["sis", "sisx"], "application/vnd.syncml+xml": ["xsm"], "application/vnd.syncml.dm+wbxml": ["bdm"], "application/vnd.syncml.dm+xml": ["xdm"], "application/vnd.tao.intent-module-archive": ["tao"], "application/vnd.tcpdump.pcap": ["pcap", "cap", "dmp"], "application/vnd.tmobile-livetv": ["tmo"], "application/vnd.trid.tpt": ["tpt"], "application/vnd.triscape.mxs": ["mxs"], "application/vnd.trueapp": ["tra"], "application/vnd.ufdl": ["ufd", "ufdl"], "application/vnd.uiq.theme": ["utz"], "application/vnd.umajin": ["umj"], "application/vnd.unity": ["unityweb"], "application/vnd.uoml+xml": ["uoml"], "application/vnd.vcx": ["vcx"], "application/vnd.visio": ["vsd", "vst", "vss", "vsw"], "application/vnd.visionary": ["vis"], "application/vnd.vsf": ["vsf"], "application/vnd.wap.wbxml": ["wbxml"], "application/vnd.wap.wmlc": ["wmlc"], "application/vnd.wap.wmlscriptc": ["wmlsc"], "application/vnd.webturbo": ["wtb"], "application/vnd.wolfram.player": ["nbp"], "application/vnd.wordperfect": ["wpd"], "application/vnd.wqd": ["wqd"], "application/vnd.wt.stf": ["stf"], "application/vnd.xara": ["xar"], "application/vnd.xfdl": ["xfdl"], "application/vnd.yamaha.hv-dic": ["hvd"], "application/vnd.yamaha.hv-script": ["hvs"], "application/vnd.yamaha.hv-voice": ["hvp"], "application/vnd.yamaha.openscoreformat": ["osf"], "application/vnd.yamaha.openscoreformat.osfpvg+xml": ["osfpvg"], "application/vnd.yamaha.smaf-audio": ["saf"], "application/vnd.yamaha.smaf-phrase": ["spf"], "application/vnd.yellowriver-custom-menu": ["cmp"], "application/vnd.zul": ["zir", "zirz"], "application/vnd.zzazz.deck+xml": ["zaz"], "application/voicexml+xml": ["vxml"], "application/wasm": ["wasm"], "application/widget": ["wgt"], "application/winhlp": ["hlp"], "application/wsdl+xml": ["wsdl"], "application/wspolicy+xml": ["wspolicy"], "application/x-7z-compressed": ["7z"], "application/x-abiword": ["abw"], "application/x-ace-compressed": ["ace"], "application/x-apple-diskimage": [], "application/x-arj": ["arj"], "application/x-authorware-bin": ["aab", "x32", "u32", "vox"], "application/x-authorware-map": ["aam"], "application/x-authorware-seg": ["aas"], "application/x-bcpio": ["bcpio"], "application/x-bdoc": [], "application/x-bittorrent": ["torrent"], "application/x-blorb": ["blb", "blorb"], "application/x-bzip": ["bz"], "application/x-bzip2": ["bz2", "boz"], "application/x-cbr": ["cbr", "cba", "cbt", "cbz", "cb7"], "application/x-cdlink": ["vcd"], "application/x-cfs-compressed": ["cfs"], "application/x-chat": ["chat"], "application/x-chess-pgn": ["pgn"], "application/x-chrome-extension": ["crx"], "application/x-cocoa": ["cco"], "application/x-conference": ["nsc"], "application/x-cpio": ["cpio"], "application/x-csh": ["csh"], "application/x-debian-package": ["udeb"], "application/x-dgc-compressed": ["dgc"], "application/x-director": ["dir", "dcr", "dxr", "cst", "cct", "cxt", "w3d", "fgd", "swa"], "application/x-doom": ["wad"], "application/x-dtbncx+xml": ["ncx"], "application/x-dtbook+xml": ["dtb"], "application/x-dtbresource+xml": ["res"], "application/x-dvi": ["dvi"], "application/x-envoy": ["evy"], "application/x-eva": ["eva"], "application/x-font-bdf": ["bdf"], "application/x-font-ghostscript": ["gsf"], "application/x-font-linux-psf": ["psf"], "application/x-font-pcf": ["pcf"], "application/x-font-snf": ["snf"], "application/x-font-type1": ["pfa", "pfb", "pfm", "afm"], "application/x-freearc": ["arc"], "application/x-futuresplash": ["spl"], "application/x-gca-compressed": ["gca"], "application/x-glulx": ["ulx"], "application/x-gnumeric": ["gnumeric"], "application/x-gramps-xml": ["gramps"], "application/x-gtar": ["gtar"], "application/x-hdf": ["hdf"], "application/x-httpd-php": ["php"], "application/x-install-instructions": ["install"], "application/x-iso9660-image": [], "application/x-java-archive-diff": ["jardiff"], "application/x-java-jnlp-file": ["jnlp"], "application/x-latex": ["latex"], "application/x-lua-bytecode": ["luac"], "application/x-lzh-compressed": ["lzh", "lha"], "application/x-makeself": ["run"], "application/x-mie": ["mie"], "application/x-mobipocket-ebook": ["prc", "mobi"], "application/x-ms-application": ["application"], "application/x-ms-shortcut": ["lnk"], "application/x-ms-wmd": ["wmd"], "application/x-ms-wmz": ["wmz"], "application/x-ms-xbap": ["xbap"], "application/x-msaccess": ["mdb"], "application/x-msbinder": ["obd"], "application/x-mscardfile": ["crd"], "application/x-msclip": ["clp"], "application/x-msdos-program": [], "application/x-msdownload": ["com", "bat"], "application/x-msmediaview": ["mvb", "m13", "m14"], "application/x-msmetafile": ["wmf", "emf", "emz"], "application/x-msmoney": ["mny"], "application/x-mspublisher": ["pub"], "application/x-msschedule": ["scd"], "application/x-msterminal": ["trm"], "application/x-mswrite": ["wri"], "application/x-netcdf": ["nc", "cdf"], "application/x-ns-proxy-autoconfig": ["pac"], "application/x-nzb": ["nzb"], "application/x-perl": ["pl", "pm"], "application/x-pilot": [], "application/x-pkcs12": ["p12", "pfx"], "application/x-pkcs7-certificates": ["p7b", "spc"], "application/x-pkcs7-certreqresp": ["p7r"], "application/x-rar-compressed": ["rar"], "application/x-redhat-package-manager": ["rpm"], "application/x-research-info-systems": ["ris"], "application/x-sea": ["sea"], "application/x-sh": ["sh"], "application/x-shar": ["shar"], "application/x-shockwave-flash": ["swf"], "application/x-silverlight-app": ["xap"], "application/x-sql": ["sql"], "application/x-stuffit": ["sit"], "application/x-stuffitx": ["sitx"], "application/x-subrip": ["srt"], "application/x-sv4cpio": ["sv4cpio"], "application/x-sv4crc": ["sv4crc"], "application/x-t3vm-image": ["t3"], "application/x-tads": ["gam"], "application/x-tar": ["tar"], "application/x-tcl": ["tcl", "tk"], "application/x-tex": ["tex"], "application/x-tex-tfm": ["tfm"], "application/x-texinfo": ["texinfo", "texi"], "application/x-tgif": ["obj"], "application/x-ustar": ["ustar"], "application/x-virtualbox-hdd": ["hdd"], "application/x-virtualbox-ova": ["ova"], "application/x-virtualbox-ovf": ["ovf"], "application/x-virtualbox-vbox": ["vbox"], "application/x-virtualbox-vbox-extpack": ["vbox-extpack"], "application/x-virtualbox-vdi": ["vdi"], "application/x-virtualbox-vhd": ["vhd"], "application/x-virtualbox-vmdk": ["vmdk"], "application/x-wais-source": ["src"], "application/x-web-app-manifest+json": ["webapp"], "application/x-x509-ca-cert": ["der", "crt", "pem"], "application/x-xfig": ["fig"], "application/x-xliff+xml": ["xlf"], "application/x-xpinstall": ["xpi"], "application/x-xz": ["xz"], "application/x-zmachine": ["z1", "z2", "z3", "z4", "z5", "z6", "z7", "z8"], "application/xaml+xml": ["xaml"], "application/xcap-diff+xml": ["xdf"], "application/xenc+xml": ["xenc"], "application/xhtml+xml": ["xhtml", "xht"], "application/xml": ["xml", "xsl", "xsd", "rng"], "application/xml-dtd": ["dtd"], "application/xop+xml": ["xop"], "application/xproc+xml": ["xpl"], "application/xslt+xml": ["xslt"], "application/xspf+xml": ["xspf"], "application/xv+xml": ["mxml", "xhvml", "xvml", "xvm"], "application/yang": ["yang"], "application/yin+xml": ["yin"], "application/zip": ["zip"], "audio/3gpp": [], "audio/adpcm": ["adp"], "audio/basic": ["au", "snd"], "audio/midi": ["mid", "midi", "kar", "rmi"], "audio/mp3": [], "audio/mp4": ["m4a", "mp4a"], "audio/mpeg": ["mpga", "mp2", "mp2a", "mp3", "m2a", "m3a"], "audio/ogg": ["oga", "ogg", "spx"], "audio/s3m": ["s3m"], "audio/silk": ["sil"], "audio/vnd.dece.audio": ["uva", "uvva"], "audio/vnd.digital-winds": ["eol"], "audio/vnd.dra": ["dra"], "audio/vnd.dts": ["dts"], "audio/vnd.dts.hd": ["dtshd"], "audio/vnd.lucent.voice": ["lvp"], "audio/vnd.ms-playready.media.pya": ["pya"], "audio/vnd.nuera.ecelp4800": ["ecelp4800"], "audio/vnd.nuera.ecelp7470": ["ecelp7470"], "audio/vnd.nuera.ecelp9600": ["ecelp9600"], "audio/vnd.rip": ["rip"], "audio/wav": ["wav"], "audio/wave": [], "audio/webm": ["weba"], "audio/x-aac": ["aac"], "audio/x-aiff": ["aif", "aiff", "aifc"], "audio/x-caf": ["caf"], "audio/x-flac": ["flac"], "audio/x-m4a": [], "audio/x-matroska": ["mka"], "audio/x-mpegurl": ["m3u"], "audio/x-ms-wax": ["wax"], "audio/x-ms-wma": ["wma"], "audio/x-pn-realaudio": ["ram", "ra"], "audio/x-pn-realaudio-plugin": ["rmp"], "audio/x-realaudio": [], "audio/x-wav": [], "audio/xm": ["xm"], "chemical/x-cdx": ["cdx"], "chemical/x-cif": ["cif"], "chemical/x-cmdf": ["cmdf"], "chemical/x-cml": ["cml"], "chemical/x-csml": ["csml"], "chemical/x-xyz": ["xyz"], "font/collection": ["ttc"], "font/otf": ["otf"], "font/ttf": ["ttf"], "font/woff": ["woff"], "font/woff2": ["woff2"], "image/apng": ["apng"], "image/bmp": ["bmp"], "image/cgm": ["cgm"], "image/g3fax": ["g3"], "image/gif": ["gif"], "image/ief": ["ief"], "image/jp2": ["jp2", "jpg2"], "image/jpeg": ["jpeg", "jpg", "jpe"], "image/jpm": ["jpm"], "image/jpx": ["jpx", "jpf"], "image/ktx": ["ktx"], "image/png": ["png"], "image/prs.btif": ["btif"], "image/sgi": ["sgi"], "image/svg+xml": ["svg", "svgz"], "image/tiff": ["tiff", "tif"], "image/vnd.adobe.photoshop": ["psd"], "image/vnd.dece.graphic": ["uvi", "uvvi", "uvg", "uvvg"], "image/vnd.djvu": ["djvu", "djv"], "image/vnd.dvb.subtitle": [], "image/vnd.dwg": ["dwg"], "image/vnd.dxf": ["dxf"], "image/vnd.fastbidsheet": ["fbs"], "image/vnd.fpx": ["fpx"], "image/vnd.fst": ["fst"], "image/vnd.fujixerox.edmics-mmr": ["mmr"], "image/vnd.fujixerox.edmics-rlc": ["rlc"], "image/vnd.ms-modi": ["mdi"], "image/vnd.ms-photo": ["wdp"], "image/vnd.net-fpx": ["npx"], "image/vnd.wap.wbmp": ["wbmp"], "image/vnd.xiff": ["xif"], "image/webp": ["webp"], "image/x-3ds": ["3ds"], "image/x-cmu-raster": ["ras"], "image/x-cmx": ["cmx"], "image/x-freehand": ["fh", "fhc", "fh4", "fh5", "fh7"], "image/x-icon": ["ico"], "image/x-jng": ["jng"], "image/x-mrsid-image": ["sid"], "image/x-ms-bmp": [], "image/x-pcx": ["pcx"], "image/x-pict": ["pic", "pct"], "image/x-portable-anymap": ["pnm"], "image/x-portable-bitmap": ["pbm"], "image/x-portable-graymap": ["pgm"], "image/x-portable-pixmap": ["ppm"], "image/x-rgb": ["rgb"], "image/x-tga": ["tga"], "image/x-xbitmap": ["xbm"], "image/x-xpixmap": ["xpm"], "image/x-xwindowdump": ["xwd"], "message/rfc822": ["eml", "mime"], "model/gltf+json": ["gltf"], "model/gltf-binary": ["glb"], "model/iges": ["igs", "iges"], "model/mesh": ["msh", "mesh", "silo"], "model/vnd.collada+xml": ["dae"], "model/vnd.dwf": ["dwf"], "model/vnd.gdl": ["gdl"], "model/vnd.gtw": ["gtw"], "model/vnd.mts": ["mts"], "model/vnd.vtu": ["vtu"], "model/vrml": ["wrl", "vrml"], "model/x3d+binary": ["x3db", "x3dbz"], "model/x3d+vrml": ["x3dv", "x3dvz"], "model/x3d+xml": ["x3d", "x3dz"], "text/cache-manifest": ["appcache", "manifest"], "text/calendar": ["ics", "ifb"], "text/coffeescript": ["coffee", "litcoffee"], "text/css": ["css"], "text/csv": ["csv"], "text/hjson": ["hjson"], "text/html": ["html", "htm", "shtml"], "text/jade": ["jade"], "text/jsx": ["jsx"], "text/less": ["less"], "text/markdown": ["markdown", "md"], "text/mathml": ["mml"], "text/n3": ["n3"], "text/plain": ["txt", "text", "conf", "def", "list", "log", "in", "ini"], "text/prs.lines.tag": ["dsc"], "text/richtext": ["rtx"], "text/rtf": [], "text/sgml": ["sgml", "sgm"], "text/slim": ["slim", "slm"], "text/stylus": ["stylus", "styl"], "text/tab-separated-values": ["tsv"], "text/troff": ["t", "tr", "roff", "man", "me", "ms"], "text/turtle": ["ttl"], "text/uri-list": ["uri", "uris", "urls"], "text/vcard": ["vcard"], "text/vnd.curl": ["curl"], "text/vnd.curl.dcurl": ["dcurl"], "text/vnd.curl.mcurl": ["mcurl"], "text/vnd.curl.scurl": ["scurl"], "text/vnd.dvb.subtitle": ["sub"], "text/vnd.fly": ["fly"], "text/vnd.fmi.flexstor": ["flx"], "text/vnd.graphviz": ["gv"], "text/vnd.in3d.3dml": ["3dml"], "text/vnd.in3d.spot": ["spot"], "text/vnd.sun.j2me.app-descriptor": ["jad"], "text/vnd.wap.wml": ["wml"], "text/vnd.wap.wmlscript": ["wmls"], "text/vtt": ["vtt"], "text/x-asm": ["s", "asm"], "text/x-c": ["c", "cc", "cxx", "cpp", "h", "hh", "dic"], "text/x-component": ["htc"], "text/x-fortran": ["f", "for", "f77", "f90"], "text/x-handlebars-template": ["hbs"], "text/x-java-source": ["java"], "text/x-lua": ["lua"], "text/x-markdown": ["mkd"], "text/x-nfo": ["nfo"], "text/x-opml": ["opml"], "text/x-org": [], "text/x-pascal": ["p", "pas"], "text/x-processing": ["pde"], "text/x-sass": ["sass"], "text/x-scss": ["scss"], "text/x-setext": ["etx"], "text/x-sfv": ["sfv"], "text/x-suse-ymp": ["ymp"], "text/x-uuencode": ["uu"], "text/x-vcalendar": ["vcs"], "text/x-vcard": ["vcf"], "text/xml": [], "text/yaml": ["yaml", "yml"], "video/3gpp": ["3gp", "3gpp"], "video/3gpp2": ["3g2"], "video/h261": ["h261"], "video/h263": ["h263"], "video/h264": ["h264"], "video/jpeg": ["jpgv"], "video/jpm": ["jpgm"], "video/mj2": ["mj2", "mjp2"], "video/mp2t": ["ts"], "video/mp4": ["mp4", "mp4v", "mpg4"], "video/mpeg": ["mpeg", "mpg", "mpe", "m1v", "m2v"], "video/ogg": ["ogv"], "video/quicktime": ["qt", "mov"], "video/vnd.dece.hd": ["uvh", "uvvh"], "video/vnd.dece.mobile": ["uvm", "uvvm"], "video/vnd.dece.pd": ["uvp", "uvvp"], "video/vnd.dece.sd": ["uvs", "uvvs"], "video/vnd.dece.video": ["uvv", "uvvv"], "video/vnd.dvb.file": ["dvb"], "video/vnd.fvt": ["fvt"], "video/vnd.mpegurl": ["mxu", "m4u"], "video/vnd.ms-playready.media.pyv": ["pyv"], "video/vnd.uvvu.mp4": ["uvu", "uvvu"], "video/vnd.vivo": ["viv"], "video/webm": ["webm"], "video/x-f4v": ["f4v"], "video/x-fli": ["fli"], "video/x-flv": ["flv"], "video/x-m4v": ["m4v"], "video/x-matroska": ["mkv", "mk3d", "mks"], "video/x-mng": ["mng"], "video/x-ms-asf": ["asf", "asx"], "video/x-ms-vob": ["vob"], "video/x-ms-wm": ["wm"], "video/x-ms-wmv": ["wmv"], "video/x-ms-wmx": ["wmx"], "video/x-ms-wvx": ["wvx"], "video/x-msvideo": ["avi"], "video/x-sgi-movie": ["movie"], "video/x-smv": ["smv"], "x-conference/x-cooltalk": ["ice"] }; } }); // ../../node_modules/.pnpm/mime@1.6.0/node_modules/mime/mime.js var require_mime = __commonJS({ "../../node_modules/.pnpm/mime@1.6.0/node_modules/mime/mime.js"(exports2, module2) { var path = require("path"); var fs = require("fs"); function Mime() { this.types = /* @__PURE__ */ Object.create(null); this.extensions = /* @__PURE__ */ Object.create(null); } __name(Mime, "Mime"); Mime.prototype.define = function(map) { for (var type in map) { var exts = map[type]; for (var i = 0; i < exts.length; i++) { if (process.env.DEBUG_MIME && this.types[exts[i]]) { console.warn((this._loading || "define()").replace(/.*\//, ""), 'changes "' + exts[i] + '" extension type from ' + this.types[exts[i]] + " to " + type); } this.types[exts[i]] = type; } if (!this.extensions[type]) { this.extensions[type] = exts[0]; } } }; Mime.prototype.load = function(file2) { this._loading = file2; var map = {}, content = fs.readFileSync(file2, "ascii"), lines = content.split(/[\r\n]+/); lines.forEach(function(line) { var fields = line.replace(/\s*#.*|^\s*|\s*$/g, "").split(/\s+/); map[fields.shift()] = fields; }); this.define(map); this._loading = null; }; Mime.prototype.lookup = function(path2, fallback) { var ext = path2.replace(/^.*[\.\/\\]/, "").toLowerCase(); return this.types[ext] || fallback || this.default_type; }; Mime.prototype.extension = function(mimeType) { var type = mimeType.match(/^\s*([^;\s]*)(?:;|\s|$)/)[1].toLowerCase(); return this.extensions[type]; }; var mime = new Mime(); mime.define(require_types3()); mime.default_type = mime.lookup("bin"); mime.Mime = Mime; mime.charsets = { lookup: /* @__PURE__ */ __name(function(mimeType, fallback) { return /^text\/|^application\/(javascript|json)/.test(mimeType) ? "UTF-8" : fallback; }, "lookup") }; module2.exports = mime; } }); // ../../node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js var require_ms2 = __commonJS({ "../../node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js"(exports2, module2) { var s = 1e3; var m = s * 60; var h = m * 60; var d = h * 24; var w = d * 7; var y = d * 365.25; module2.exports = function(val, options) { options = options || {}; var type = typeof val; if (type === "string" && val.length > 0) { return parse2(val); } else if (type === "number" && isFinite(val)) { return options.long ? fmtLong(val) : fmtShort(val); } throw new Error( "val is not a non-empty string or a valid number. val=" + JSON.stringify(val) ); }; function parse2(str) { str = String(str); if (str.length > 100) { return; } var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec( str ); if (!match) { return; } var n = parseFloat(match[1]); var type = (match[2] || "ms").toLowerCase(); switch (type) { case "years": case "year": case "yrs": case "yr": case "y": return n * y; case "weeks": case "week": case "w": return n * w; case "days": case "day": case "d": return n * d; case "hours": case "hour": case "hrs": case "hr": case "h": return n * h; case "minutes": case "minute": case "mins": case "min": case "m": return n * m; case "seconds": case "second": case "secs": case "sec": case "s": return n * s; case "milliseconds": case "millisecond": case "msecs": case "msec": case "ms": return n; default: return void 0; } } __name(parse2, "parse"); function fmtShort(ms) { var msAbs = Math.abs(ms); if (msAbs >= d) { return Math.round(ms / d) + "d"; } if (msAbs >= h) { return Math.round(ms / h) + "h"; } if (msAbs >= m) { return Math.round(ms / m) + "m"; } if (msAbs >= s) { return Math.round(ms / s) + "s"; } return ms + "ms"; } __name(fmtShort, "fmtShort"); function fmtLong(ms) { var msAbs = Math.abs(ms); if (msAbs >= d) { return plural(ms, msAbs, d, "day"); } if (msAbs >= h) { return plural(ms, msAbs, h, "hour"); } if (msAbs >= m) { return plural(ms, msAbs, m, "minute"); } if (msAbs >= s) { return plural(ms, msAbs, s, "second"); } return ms + " ms"; } __name(fmtLong, "fmtLong"); function plural(ms, msAbs, n, name) { var isPlural = msAbs >= n * 1.5; return Math.round(ms / n) + " " + name + (isPlural ? "s" : ""); } __name(plural, "plural"); } }); // ../../node_modules/.pnpm/range-parser@1.2.1/node_modules/range-parser/index.js var require_range_parser = __commonJS({ "../../node_modules/.pnpm/range-parser@1.2.1/node_modules/range-parser/index.js"(exports2, module2) { "use strict"; module2.exports = rangeParser; function rangeParser(size, str, options) { if (typeof str !== "string") { throw new TypeError("argument str must be a string"); } var index = str.indexOf("="); if (index === -1) { return -2; } var arr = str.slice(index + 1).split(","); var ranges = []; ranges.type = str.slice(0, index); for (var i = 0; i < arr.length; i++) { var range = arr[i].split("-"); var start = parseInt(range[0], 10); var end = parseInt(range[1], 10); if (isNaN(start)) { start = size - end; end = size - 1; } else if (isNaN(end)) { end = size - 1; } if (end > size - 1) { end = size - 1; } if (isNaN(start) || isNaN(end) || start > end || start < 0) { continue; } ranges.push({ start, end }); } if (ranges.length < 1) { return -1; } return options && options.combine ? combineRanges(ranges) : ranges; } __name(rangeParser, "rangeParser"); function combineRanges(ranges) { var ordered = ranges.map(mapWithIndex).sort(sortByRangeStart); for (var j = 0, i = 1; i < ordered.length; i++) { var range = ordered[i]; var current = ordered[j]; if (range.start > current.end + 1) { ordered[++j] = range; } else if (range.end > current.end) { current.end = range.end; current.index = Math.min(current.index, range.index); } } ordered.length = j + 1; var combined = ordered.sort(sortByRangeIndex).map(mapWithoutIndex); combined.type = ranges.type; return combined; } __name(combineRanges, "combineRanges"); function mapWithIndex(range, index) { return { start: range.start, end: range.end, index }; } __name(mapWithIndex, "mapWithIndex"); function mapWithoutIndex(range) { return { start: range.start, end: range.end }; } __name(mapWithoutIndex, "mapWithoutIndex"); function sortByRangeIndex(a, b) { return a.index - b.index; } __name(sortByRangeIndex, "sortByRangeIndex"); function sortByRangeStart(a, b) { return a.start - b.start; } __name(sortByRangeStart, "sortByRangeStart"); } }); // ../../node_modules/.pnpm/send@0.19.2/node_modules/send/index.js var require_send = __commonJS({ "../../node_modules/.pnpm/send@0.19.2/node_modules/send/index.js"(exports2, module2) { "use strict"; var createError = require_http_errors(); var debug = require_src()("send"); var deprecate = require_depd()("send"); var destroy = require_destroy(); var encodeUrl = require_encodeurl(); var escapeHtml = require_escape_html(); var etag = require_etag(); var fresh = require_fresh(); var fs = require("fs"); var mime = require_mime(); var ms = require_ms2(); var onFinished = require_on_finished(); var parseRange = require_range_parser(); var path = require("path"); var statuses = require_statuses(); var Stream = require("stream"); var util2 = require("util"); var extname = path.extname; var join = path.join; var normalize = path.normalize; var resolve = path.resolve; var sep = path.sep; var BYTES_RANGE_REGEXP = /^ *bytes=/; var MAX_MAXAGE = 60 * 60 * 24 * 365 * 1e3; var UP_PATH_REGEXP = /(?:^|[\\/])\.\.(?:[\\/]|$)/; module2.exports = send; module2.exports.mime = mime; function send(req, path2, options) { return new SendStream(req, path2, options); } __name(send, "send"); function SendStream(req, path2, options) { Stream.call(this); var opts = options || {}; this.options = opts; this.path = path2; this.req = req; this._acceptRanges = opts.acceptRanges !== void 0 ? Boolean(opts.acceptRanges) : true; this._cacheControl = opts.cacheControl !== void 0 ? Boolean(opts.cacheControl) : true; this._etag = opts.etag !== void 0 ? Boolean(opts.etag) : true; this._dotfiles = opts.dotfiles !== void 0 ? opts.dotfiles : "ignore"; if (this._dotfiles !== "ignore" && this._dotfiles !== "allow" && this._dotfiles !== "deny") { throw new TypeError('dotfiles option must be "allow", "deny", or "ignore"'); } this._hidden = Boolean(opts.hidden); if (opts.hidden !== void 0) { deprecate("hidden: use dotfiles: '" + (this._hidden ? "allow" : "ignore") + "' instead"); } if (opts.dotfiles === void 0) { this._dotfiles = void 0; } this._extensions = opts.extensions !== void 0 ? normalizeList(opts.extensions, "extensions option") : []; this._immutable = opts.immutable !== void 0 ? Boolean(opts.immutable) : false; this._index = opts.index !== void 0 ? normalizeList(opts.index, "index option") : ["index.html"]; this._lastModified = opts.lastModified !== void 0 ? Boolean(opts.lastModified) : true; this._maxage = opts.maxAge || opts.maxage; this._maxage = typeof this._maxage === "string" ? ms(this._maxage) : Number(this._maxage); this._maxage = !isNaN(this._maxage) ? Math.min(Math.max(0, this._maxage), MAX_MAXAGE) : 0; this._root = opts.root ? resolve(opts.root) : null; if (!this._root && opts.from) { this.from(opts.from); } } __name(SendStream, "SendStream"); util2.inherits(SendStream, Stream); SendStream.prototype.etag = deprecate.function(/* @__PURE__ */ __name(function etag2(val) { this._etag = Boolean(val); debug("etag %s", this._etag); return this; }, "etag"), "send.etag: pass etag as option"); SendStream.prototype.hidden = deprecate.function(/* @__PURE__ */ __name(function hidden(val) { this._hidden = Boolean(val); this._dotfiles = void 0; debug("hidden %s", this._hidden); return this; }, "hidden"), "send.hidden: use dotfiles option"); SendStream.prototype.index = deprecate.function(/* @__PURE__ */ __name(function index(paths) { var index2 = !paths ? [] : normalizeList(paths, "paths argument"); debug("index %o", paths); this._index = index2; return this; }, "index"), "send.index: pass index as option"); SendStream.prototype.root = /* @__PURE__ */ __name(function root(path2) { this._root = resolve(String(path2)); debug("root %s", this._root); return this; }, "root"); SendStream.prototype.from = deprecate.function( SendStream.prototype.root, "send.from: pass root as option" ); SendStream.prototype.root = deprecate.function( SendStream.prototype.root, "send.root: pass root as option" ); SendStream.prototype.maxage = deprecate.function(/* @__PURE__ */ __name(function maxage(maxAge) { this._maxage = typeof maxAge === "string" ? ms(maxAge) : Number(maxAge); this._maxage = !isNaN(this._maxage) ? Math.min(Math.max(0, this._maxage), MAX_MAXAGE) : 0; debug("max-age %d", this._maxage); return this; }, "maxage"), "send.maxage: pass maxAge as option"); SendStream.prototype.error = /* @__PURE__ */ __name(function error(status, err) { if (hasListeners(this, "error")) { return this.emit("error", createHttpError(status, err)); } var res = this.res; var msg = statuses.message[status] || String(status); var doc = createHtmlDocument("Error", escapeHtml(msg)); clearHeaders(res); if (err && err.headers) { setHeaders(res, err.headers); } res.statusCode = status; res.setHeader("Content-Type", "text/html; charset=UTF-8"); res.setHeader("Content-Length", Buffer.byteLength(doc)); res.setHeader("Content-Security-Policy", "default-src 'none'"); res.setHeader("X-Content-Type-Options", "nosniff"); res.end(doc); }, "error"); SendStream.prototype.hasTrailingSlash = /* @__PURE__ */ __name(function hasTrailingSlash() { return this.path[this.path.length - 1] === "/"; }, "hasTrailingSlash"); SendStream.prototype.isConditionalGET = /* @__PURE__ */ __name(function isConditionalGET() { return this.req.headers["if-match"] || this.req.headers["if-unmodified-since"] || this.req.headers["if-none-match"] || this.req.headers["if-modified-since"]; }, "isConditionalGET"); SendStream.prototype.isPreconditionFailure = /* @__PURE__ */ __name(function isPreconditionFailure() { var req = this.req; var res = this.res; var match = req.headers["if-match"]; if (match) { var etag2 = res.getHeader("ETag"); return !etag2 || match !== "*" && parseTokenList(match).every(function(match2) { return match2 !== etag2 && match2 !== "W/" + etag2 && "W/" + match2 !== etag2; }); } var unmodifiedSince = parseHttpDate(req.headers["if-unmodified-since"]); if (!isNaN(unmodifiedSince)) { var lastModified = parseHttpDate(res.getHeader("Last-Modified")); return isNaN(lastModified) || lastModified > unmodifiedSince; } return false; }, "isPreconditionFailure"); SendStream.prototype.removeContentHeaderFields = /* @__PURE__ */ __name(function removeContentHeaderFields() { var res = this.res; res.removeHeader("Content-Encoding"); res.removeHeader("Content-Language"); res.removeHeader("Content-Length"); res.removeHeader("Content-Range"); res.removeHeader("Content-Type"); }, "removeContentHeaderFields"); SendStream.prototype.notModified = /* @__PURE__ */ __name(function notModified() { var res = this.res; debug("not modified"); this.removeContentHeaderFields(); res.statusCode = 304; res.end(); }, "notModified"); SendStream.prototype.headersAlreadySent = /* @__PURE__ */ __name(function headersAlreadySent() { var err = new Error("Can't set headers after they are sent."); debug("headers already sent"); this.error(500, err); }, "headersAlreadySent"); SendStream.prototype.isCachable = /* @__PURE__ */ __name(function isCachable() { var statusCode = this.res.statusCode; return statusCode >= 200 && statusCode < 300 || statusCode === 304; }, "isCachable"); SendStream.prototype.onStatError = /* @__PURE__ */ __name(function onStatError(error) { switch (error.code) { case "ENAMETOOLONG": case "ENOENT": case "ENOTDIR": this.error(404, error); break; default: this.error(500, error); break; } }, "onStatError"); SendStream.prototype.isFresh = /* @__PURE__ */ __name(function isFresh() { return fresh(this.req.headers, { etag: this.res.getHeader("ETag"), "last-modified": this.res.getHeader("Last-Modified") }); }, "isFresh"); SendStream.prototype.isRangeFresh = /* @__PURE__ */ __name(function isRangeFresh() { var ifRange = this.req.headers["if-range"]; if (!ifRange) { return true; } if (ifRange.indexOf('"') !== -1) { var etag2 = this.res.getHeader("ETag"); return Boolean(etag2 && ifRange.indexOf(etag2) !== -1); } var lastModified = this.res.getHeader("Last-Modified"); return parseHttpDate(lastModified) <= parseHttpDate(ifRange); }, "isRangeFresh"); SendStream.prototype.redirect = /* @__PURE__ */ __name(function redirect(path2) { var res = this.res; if (hasListeners(this, "directory")) { this.emit("directory", res, path2); return; } if (this.hasTrailingSlash()) { this.error(403); return; } var loc = encodeUrl(collapseLeadingSlashes(this.path + "/")); var doc = createHtmlDocument("Redirecting", "Redirecting to " + escapeHtml(loc)); res.statusCode = 301; res.setHeader("Content-Type", "text/html; charset=UTF-8"); res.setHeader("Content-Length", Buffer.byteLength(doc)); res.setHeader("Content-Security-Policy", "default-src 'none'"); res.setHeader("X-Content-Type-Options", "nosniff"); res.setHeader("Location", loc); res.end(doc); }, "redirect"); SendStream.prototype.pipe = /* @__PURE__ */ __name(function pipe(res) { var root = this._root; this.res = res; var path2 = decode(this.path); if (path2 === -1) { this.error(400); return res; } if (~path2.indexOf("\0")) { this.error(400); return res; } var parts; if (root !== null) { if (path2) { path2 = normalize("." + sep + path2); } if (UP_PATH_REGEXP.test(path2)) { debug('malicious path "%s"', path2); this.error(403); return res; } parts = path2.split(sep); path2 = normalize(join(root, path2)); } else { if (UP_PATH_REGEXP.test(path2)) { debug('malicious path "%s"', path2); this.error(403); return res; } parts = normalize(path2).split(sep); path2 = resolve(path2); } if (containsDotFile(parts)) { var access = this._dotfiles; if (access === void 0) { access = parts[parts.length - 1][0] === "." ? this._hidden ? "allow" : "ignore" : "allow"; } debug('%s dotfile "%s"', access, path2); switch (access) { case "allow": break; case "deny": this.error(403); return res; case "ignore": default: this.error(404); return res; } } if (this._index.length && this.hasTrailingSlash()) { this.sendIndex(path2); return res; } this.sendFile(path2); return res; }, "pipe"); SendStream.prototype.send = /* @__PURE__ */ __name(function send2(path2, stat) { var len = stat.size; var options = this.options; var opts = {}; var res = this.res; var req = this.req; var ranges = req.headers.range; var offset = options.start || 0; if (headersSent(res)) { this.headersAlreadySent(); return; } debug('pipe "%s"', path2); this.setHeader(path2, stat); this.type(path2); if (this.isConditionalGET()) { if (this.isPreconditionFailure()) { this.error(412); return; } if (this.isCachable() && this.isFresh()) { this.notModified(); return; } } len = Math.max(0, len - offset); if (options.end !== void 0) { var bytes = options.end - offset + 1; if (len > bytes) len = bytes; } if (this._acceptRanges && BYTES_RANGE_REGEXP.test(ranges)) { ranges = parseRange(len, ranges, { combine: true }); if (!this.isRangeFresh()) { debug("range stale"); ranges = -2; } if (ranges === -1) { debug("range unsatisfiable"); res.setHeader("Content-Range", contentRange("bytes", len)); return this.error(416, { headers: { "Content-Range": res.getHeader("Content-Range") } }); } if (ranges !== -2 && ranges.length === 1) { debug("range %j", ranges); res.statusCode = 206; res.setHeader("Content-Range", contentRange("bytes", len, ranges[0])); offset += ranges[0].start; len = ranges[0].end - ranges[0].start + 1; } } for (var prop in options) { opts[prop] = options[prop]; } opts.start = offset; opts.end = Math.max(offset, offset + len - 1); res.setHeader("Content-Length", len); if (req.method === "HEAD") { res.end(); return; } this.stream(path2, opts); }, "send"); SendStream.prototype.sendFile = /* @__PURE__ */ __name(function sendFile(path2) { var i = 0; var self2 = this; debug('stat "%s"', path2); fs.stat(path2, /* @__PURE__ */ __name(function onstat(err, stat) { if (err && err.code === "ENOENT" && !extname(path2) && path2[path2.length - 1] !== sep) { return next(err); } if (err) return self2.onStatError(err); if (stat.isDirectory()) return self2.redirect(path2); self2.emit("file", path2, stat); self2.send(path2, stat); }, "onstat")); function next(err) { if (self2._extensions.length <= i) { return err ? self2.onStatError(err) : self2.error(404); } var p = path2 + "." + self2._extensions[i++]; debug('stat "%s"', p); fs.stat(p, function(err2, stat) { if (err2) return next(err2); if (stat.isDirectory()) return next(); self2.emit("file", p, stat); self2.send(p, stat); }); } __name(next, "next"); }, "sendFile"); SendStream.prototype.sendIndex = /* @__PURE__ */ __name(function sendIndex(path2) { var i = -1; var self2 = this; function next(err) { if (++i >= self2._index.length) { if (err) return self2.onStatError(err); return self2.error(404); } var p = join(path2, self2._index[i]); debug('stat "%s"', p); fs.stat(p, function(err2, stat) { if (err2) return next(err2); if (stat.isDirectory()) return next(); self2.emit("file", p, stat); self2.send(p, stat); }); } __name(next, "next"); next(); }, "sendIndex"); SendStream.prototype.stream = /* @__PURE__ */ __name(function stream(path2, options) { var self2 = this; var res = this.res; var stream2 = fs.createReadStream(path2, options); this.emit("stream", stream2); stream2.pipe(res); function cleanup() { destroy(stream2, true); } __name(cleanup, "cleanup"); onFinished(res, cleanup); stream2.on("error", /* @__PURE__ */ __name(function onerror(err) { cleanup(); self2.onStatError(err); }, "onerror")); stream2.on("end", /* @__PURE__ */ __name(function onend() { self2.emit("end"); }, "onend")); }, "stream"); SendStream.prototype.type = /* @__PURE__ */ __name(function type(path2) { var res = this.res; if (res.getHeader("Content-Type")) return; var type2 = mime.lookup(path2); if (!type2) { debug("no content-type"); return; } var charset = mime.charsets.lookup(type2); debug("content-type %s", type2); res.setHeader("Content-Type", type2 + (charset ? "; charset=" + charset : "")); }, "type"); SendStream.prototype.setHeader = /* @__PURE__ */ __name(function setHeader(path2, stat) { var res = this.res; this.emit("headers", res, path2, stat); if (this._acceptRanges && !res.getHeader("Accept-Ranges")) { debug("accept ranges"); res.setHeader("Accept-Ranges", "bytes"); } if (this._cacheControl && !res.getHeader("Cache-Control")) { var cacheControl = "public, max-age=" + Math.floor(this._maxage / 1e3); if (this._immutable) { cacheControl += ", immutable"; } debug("cache-control %s", cacheControl); res.setHeader("Cache-Control", cacheControl); } if (this._lastModified && !res.getHeader("Last-Modified")) { var modified = stat.mtime.toUTCString(); debug("modified %s", modified); res.setHeader("Last-Modified", modified); } if (this._etag && !res.getHeader("ETag")) { var val = etag(stat); debug("etag %s", val); res.setHeader("ETag", val); } }, "setHeader"); function clearHeaders(res) { var headers = getHeaderNames(res); for (var i = 0; i < headers.length; i++) { res.removeHeader(headers[i]); } } __name(clearHeaders, "clearHeaders"); function collapseLeadingSlashes(str) { for (var i = 0; i < str.length; i++) { if (str[i] !== "/") { break; } } return i > 1 ? "/" + str.substr(i) : str; } __name(collapseLeadingSlashes, "collapseLeadingSlashes"); function containsDotFile(parts) { for (var i = 0; i < parts.length; i++) { var part = parts[i]; if (part.length > 1 && part[0] === ".") { return true; } } return false; } __name(containsDotFile, "containsDotFile"); function contentRange(type, size, range) { return type + " " + (range ? range.start + "-" + range.end : "*") + "/" + size; } __name(contentRange, "contentRange"); function createHtmlDocument(title, body) { return '\n\n\n\n' + title + "\n\n\n
" + body + "
\n\n\n"; } __name(createHtmlDocument, "createHtmlDocument"); function createHttpError(status, err) { if (!err) { return createError(status); } return err instanceof Error ? createError(status, err, { expose: false }) : createError(status, err); } __name(createHttpError, "createHttpError"); function decode(path2) { try { return decodeURIComponent(path2); } catch (err) { return -1; } } __name(decode, "decode"); function getHeaderNames(res) { return typeof res.getHeaderNames !== "function" ? Object.keys(res._headers || {}) : res.getHeaderNames(); } __name(getHeaderNames, "getHeaderNames"); function hasListeners(emitter, type) { var count = typeof emitter.listenerCount !== "function" ? emitter.listeners(type).length : emitter.listenerCount(type); return count > 0; } __name(hasListeners, "hasListeners"); function headersSent(res) { return typeof res.headersSent !== "boolean" ? Boolean(res._header) : res.headersSent; } __name(headersSent, "headersSent"); function normalizeList(val, name) { var list = [].concat(val || []); for (var i = 0; i < list.length; i++) { if (typeof list[i] !== "string") { throw new TypeError(name + " must be array of strings or false"); } } return list; } __name(normalizeList, "normalizeList"); function parseHttpDate(date) { var timestamp = date && Date.parse(date); return typeof timestamp === "number" ? timestamp : NaN; } __name(parseHttpDate, "parseHttpDate"); function parseTokenList(str) { var end = 0; var list = []; var start = 0; for (var i = 0, len = str.length; i < len; i++) { switch (str.charCodeAt(i)) { case 32: if (start === end) { start = end = i + 1; } break; case 44: if (start !== end) { list.push(str.substring(start, end)); } start = end = i + 1; break; default: end = i + 1; break; } } if (start !== end) { list.push(str.substring(start, end)); } return list; } __name(parseTokenList, "parseTokenList"); function setHeaders(res, headers) { var keys = Object.keys(headers); for (var i = 0; i < keys.length; i++) { var key = keys[i]; res.setHeader(key, headers[key]); } } __name(setHeaders, "setHeaders"); } }); // ../../node_modules/.pnpm/forwarded@0.2.0/node_modules/forwarded/index.js var require_forwarded = __commonJS({ "../../node_modules/.pnpm/forwarded@0.2.0/node_modules/forwarded/index.js"(exports2, module2) { "use strict"; module2.exports = forwarded; function forwarded(req) { if (!req) { throw new TypeError("argument req is required"); } var proxyAddrs = parse2(req.headers["x-forwarded-for"] || ""); var socketAddr = getSocketAddr(req); var addrs = [socketAddr].concat(proxyAddrs); return addrs; } __name(forwarded, "forwarded"); function getSocketAddr(req) { return req.socket ? req.socket.remoteAddress : req.connection.remoteAddress; } __name(getSocketAddr, "getSocketAddr"); function parse2(header) { var end = header.length; var list = []; var start = header.length; for (var i = header.length - 1; i >= 0; i--) { switch (header.charCodeAt(i)) { case 32: if (start === end) { start = end = i; } break; case 44: if (start !== end) { list.push(header.substring(start, end)); } start = end = i; break; default: start = i; break; } } if (start !== end) { list.push(header.substring(start, end)); } return list; } __name(parse2, "parse"); } }); // ../../node_modules/.pnpm/ipaddr.js@1.9.1/node_modules/ipaddr.js/lib/ipaddr.js var require_ipaddr = __commonJS({ "../../node_modules/.pnpm/ipaddr.js@1.9.1/node_modules/ipaddr.js/lib/ipaddr.js"(exports2, module2) { (function() { var expandIPv6, ipaddr, ipv4Part, ipv4Regexes, ipv6Part, ipv6Regexes, matchCIDR, root, zoneIndex; ipaddr = {}; root = this; if (typeof module2 !== "undefined" && module2 !== null && module2.exports) { module2.exports = ipaddr; } else { root["ipaddr"] = ipaddr; } matchCIDR = /* @__PURE__ */ __name(function(first, second, partSize, cidrBits) { var part, shift; if (first.length !== second.length) { throw new Error("ipaddr: cannot match CIDR for objects with different lengths"); } part = 0; while (cidrBits > 0) { shift = partSize - cidrBits; if (shift < 0) { shift = 0; } if (first[part] >> shift !== second[part] >> shift) { return false; } cidrBits -= partSize; part += 1; } return true; }, "matchCIDR"); ipaddr.subnetMatch = function(address, rangeList, defaultName) { var k, len, rangeName, rangeSubnets, subnet; if (defaultName == null) { defaultName = "unicast"; } for (rangeName in rangeList) { rangeSubnets = rangeList[rangeName]; if (rangeSubnets[0] && !(rangeSubnets[0] instanceof Array)) { rangeSubnets = [rangeSubnets]; } for (k = 0, len = rangeSubnets.length; k < len; k++) { subnet = rangeSubnets[k]; if (address.kind() === subnet[0].kind()) { if (address.match.apply(address, subnet)) { return rangeName; } } } } return defaultName; }; ipaddr.IPv4 = (function() { function IPv4(octets) { var k, len, octet; if (octets.length !== 4) { throw new Error("ipaddr: ipv4 octet count should be 4"); } for (k = 0, len = octets.length; k < len; k++) { octet = octets[k]; if (!(0 <= octet && octet <= 255)) { throw new Error("ipaddr: ipv4 octet should fit in 8 bits"); } } this.octets = octets; } __name(IPv4, "IPv4"); IPv4.prototype.kind = function() { return "ipv4"; }; IPv4.prototype.toString = function() { return this.octets.join("."); }; IPv4.prototype.toNormalizedString = function() { return this.toString(); }; IPv4.prototype.toByteArray = function() { return this.octets.slice(0); }; IPv4.prototype.match = function(other, cidrRange) { var ref; if (cidrRange === void 0) { ref = other, other = ref[0], cidrRange = ref[1]; } if (other.kind() !== "ipv4") { throw new Error("ipaddr: cannot match ipv4 address with non-ipv4 one"); } return matchCIDR(this.octets, other.octets, 8, cidrRange); }; IPv4.prototype.SpecialRanges = { unspecified: [[new IPv4([0, 0, 0, 0]), 8]], broadcast: [[new IPv4([255, 255, 255, 255]), 32]], multicast: [[new IPv4([224, 0, 0, 0]), 4]], linkLocal: [[new IPv4([169, 254, 0, 0]), 16]], loopback: [[new IPv4([127, 0, 0, 0]), 8]], carrierGradeNat: [[new IPv4([100, 64, 0, 0]), 10]], "private": [[new IPv4([10, 0, 0, 0]), 8], [new IPv4([172, 16, 0, 0]), 12], [new IPv4([192, 168, 0, 0]), 16]], reserved: [[new IPv4([192, 0, 0, 0]), 24], [new IPv4([192, 0, 2, 0]), 24], [new IPv4([192, 88, 99, 0]), 24], [new IPv4([198, 51, 100, 0]), 24], [new IPv4([203, 0, 113, 0]), 24], [new IPv4([240, 0, 0, 0]), 4]] }; IPv4.prototype.range = function() { return ipaddr.subnetMatch(this, this.SpecialRanges); }; IPv4.prototype.toIPv4MappedAddress = function() { return ipaddr.IPv6.parse("::ffff:" + this.toString()); }; IPv4.prototype.prefixLengthFromSubnetMask = function() { var cidr, i, k, octet, stop, zeros, zerotable; zerotable = { 0: 8, 128: 7, 192: 6, 224: 5, 240: 4, 248: 3, 252: 2, 254: 1, 255: 0 }; cidr = 0; stop = false; for (i = k = 3; k >= 0; i = k += -1) { octet = this.octets[i]; if (octet in zerotable) { zeros = zerotable[octet]; if (stop && zeros !== 0) { return null; } if (zeros !== 8) { stop = true; } cidr += zeros; } else { return null; } } return 32 - cidr; }; return IPv4; })(); ipv4Part = "(0?\\d+|0x[a-f0-9]+)"; ipv4Regexes = { fourOctet: new RegExp("^" + ipv4Part + "\\." + ipv4Part + "\\." + ipv4Part + "\\." + ipv4Part + "$", "i"), longValue: new RegExp("^" + ipv4Part + "$", "i") }; ipaddr.IPv4.parser = function(string) { var match, parseIntAuto, part, shift, value; parseIntAuto = /* @__PURE__ */ __name(function(string2) { if (string2[0] === "0" && string2[1] !== "x") { return parseInt(string2, 8); } else { return parseInt(string2); } }, "parseIntAuto"); if (match = string.match(ipv4Regexes.fourOctet)) { return (function() { var k, len, ref, results; ref = match.slice(1, 6); results = []; for (k = 0, len = ref.length; k < len; k++) { part = ref[k]; results.push(parseIntAuto(part)); } return results; })(); } else if (match = string.match(ipv4Regexes.longValue)) { value = parseIntAuto(match[1]); if (value > 4294967295 || value < 0) { throw new Error("ipaddr: address outside defined range"); } return (function() { var k, results; results = []; for (shift = k = 0; k <= 24; shift = k += 8) { results.push(value >> shift & 255); } return results; })().reverse(); } else { return null; } }; ipaddr.IPv6 = (function() { function IPv6(parts, zoneId) { var i, k, l2, len, part, ref; if (parts.length === 16) { this.parts = []; for (i = k = 0; k <= 14; i = k += 2) { this.parts.push(parts[i] << 8 | parts[i + 1]); } } else if (parts.length === 8) { this.parts = parts; } else { throw new Error("ipaddr: ipv6 part count should be 8 or 16"); } ref = this.parts; for (l2 = 0, len = ref.length; l2 < len; l2++) { part = ref[l2]; if (!(0 <= part && part <= 65535)) { throw new Error("ipaddr: ipv6 part should fit in 16 bits"); } } if (zoneId) { this.zoneId = zoneId; } } __name(IPv6, "IPv6"); IPv6.prototype.kind = function() { return "ipv6"; }; IPv6.prototype.toString = function() { return this.toNormalizedString().replace(/((^|:)(0(:|$))+)/, "::"); }; IPv6.prototype.toRFC5952String = function() { var bestMatchIndex, bestMatchLength, match, regex, string; regex = /((^|:)(0(:|$)){2,})/g; string = this.toNormalizedString(); bestMatchIndex = 0; bestMatchLength = -1; while (match = regex.exec(string)) { if (match[0].length > bestMatchLength) { bestMatchIndex = match.index; bestMatchLength = match[0].length; } } if (bestMatchLength < 0) { return string; } return string.substring(0, bestMatchIndex) + "::" + string.substring(bestMatchIndex + bestMatchLength); }; IPv6.prototype.toByteArray = function() { var bytes, k, len, part, ref; bytes = []; ref = this.parts; for (k = 0, len = ref.length; k < len; k++) { part = ref[k]; bytes.push(part >> 8); bytes.push(part & 255); } return bytes; }; IPv6.prototype.toNormalizedString = function() { var addr, part, suffix; addr = (function() { var k, len, ref, results; ref = this.parts; results = []; for (k = 0, len = ref.length; k < len; k++) { part = ref[k]; results.push(part.toString(16)); } return results; }).call(this).join(":"); suffix = ""; if (this.zoneId) { suffix = "%" + this.zoneId; } return addr + suffix; }; IPv6.prototype.toFixedLengthString = function() { var addr, part, suffix; addr = (function() { var k, len, ref, results; ref = this.parts; results = []; for (k = 0, len = ref.length; k < len; k++) { part = ref[k]; results.push(part.toString(16).padStart(4, "0")); } return results; }).call(this).join(":"); suffix = ""; if (this.zoneId) { suffix = "%" + this.zoneId; } return addr + suffix; }; IPv6.prototype.match = function(other, cidrRange) { var ref; if (cidrRange === void 0) { ref = other, other = ref[0], cidrRange = ref[1]; } if (other.kind() !== "ipv6") { throw new Error("ipaddr: cannot match ipv6 address with non-ipv6 one"); } return matchCIDR(this.parts, other.parts, 16, cidrRange); }; IPv6.prototype.SpecialRanges = { unspecified: [new IPv6([0, 0, 0, 0, 0, 0, 0, 0]), 128], linkLocal: [new IPv6([65152, 0, 0, 0, 0, 0, 0, 0]), 10], multicast: [new IPv6([65280, 0, 0, 0, 0, 0, 0, 0]), 8], loopback: [new IPv6([0, 0, 0, 0, 0, 0, 0, 1]), 128], uniqueLocal: [new IPv6([64512, 0, 0, 0, 0, 0, 0, 0]), 7], ipv4Mapped: [new IPv6([0, 0, 0, 0, 0, 65535, 0, 0]), 96], rfc6145: [new IPv6([0, 0, 0, 0, 65535, 0, 0, 0]), 96], rfc6052: [new IPv6([100, 65435, 0, 0, 0, 0, 0, 0]), 96], "6to4": [new IPv6([8194, 0, 0, 0, 0, 0, 0, 0]), 16], teredo: [new IPv6([8193, 0, 0, 0, 0, 0, 0, 0]), 32], reserved: [[new IPv6([8193, 3512, 0, 0, 0, 0, 0, 0]), 32]] }; IPv6.prototype.range = function() { return ipaddr.subnetMatch(this, this.SpecialRanges); }; IPv6.prototype.isIPv4MappedAddress = function() { return this.range() === "ipv4Mapped"; }; IPv6.prototype.toIPv4Address = function() { var high, low, ref; if (!this.isIPv4MappedAddress()) { throw new Error("ipaddr: trying to convert a generic ipv6 address to ipv4"); } ref = this.parts.slice(-2), high = ref[0], low = ref[1]; return new ipaddr.IPv4([high >> 8, high & 255, low >> 8, low & 255]); }; IPv6.prototype.prefixLengthFromSubnetMask = function() { var cidr, i, k, part, stop, zeros, zerotable; zerotable = { 0: 16, 32768: 15, 49152: 14, 57344: 13, 61440: 12, 63488: 11, 64512: 10, 65024: 9, 65280: 8, 65408: 7, 65472: 6, 65504: 5, 65520: 4, 65528: 3, 65532: 2, 65534: 1, 65535: 0 }; cidr = 0; stop = false; for (i = k = 7; k >= 0; i = k += -1) { part = this.parts[i]; if (part in zerotable) { zeros = zerotable[part]; if (stop && zeros !== 0) { return null; } if (zeros !== 16) { stop = true; } cidr += zeros; } else { return null; } } return 128 - cidr; }; return IPv6; })(); ipv6Part = "(?:[0-9a-f]+::?)+"; zoneIndex = "%[0-9a-z]{1,}"; ipv6Regexes = { zoneIndex: new RegExp(zoneIndex, "i"), "native": new RegExp("^(::)?(" + ipv6Part + ")?([0-9a-f]+)?(::)?(" + zoneIndex + ")?$", "i"), transitional: new RegExp("^((?:" + ipv6Part + ")|(?:::)(?:" + ipv6Part + ")?)" + (ipv4Part + "\\." + ipv4Part + "\\." + ipv4Part + "\\." + ipv4Part) + ("(" + zoneIndex + ")?$"), "i") }; expandIPv6 = /* @__PURE__ */ __name(function(string, parts) { var colonCount, lastColon, part, replacement, replacementCount, zoneId; if (string.indexOf("::") !== string.lastIndexOf("::")) { return null; } zoneId = (string.match(ipv6Regexes["zoneIndex"]) || [])[0]; if (zoneId) { zoneId = zoneId.substring(1); string = string.replace(/%.+$/, ""); } colonCount = 0; lastColon = -1; while ((lastColon = string.indexOf(":", lastColon + 1)) >= 0) { colonCount++; } if (string.substr(0, 2) === "::") { colonCount--; } if (string.substr(-2, 2) === "::") { colonCount--; } if (colonCount > parts) { return null; } replacementCount = parts - colonCount; replacement = ":"; while (replacementCount--) { replacement += "0:"; } string = string.replace("::", replacement); if (string[0] === ":") { string = string.slice(1); } if (string[string.length - 1] === ":") { string = string.slice(0, -1); } parts = (function() { var k, len, ref, results; ref = string.split(":"); results = []; for (k = 0, len = ref.length; k < len; k++) { part = ref[k]; results.push(parseInt(part, 16)); } return results; })(); return { parts, zoneId }; }, "expandIPv6"); ipaddr.IPv6.parser = function(string) { var addr, k, len, match, octet, octets, zoneId; if (ipv6Regexes["native"].test(string)) { return expandIPv6(string, 8); } else if (match = string.match(ipv6Regexes["transitional"])) { zoneId = match[6] || ""; addr = expandIPv6(match[1].slice(0, -1) + zoneId, 6); if (addr.parts) { octets = [parseInt(match[2]), parseInt(match[3]), parseInt(match[4]), parseInt(match[5])]; for (k = 0, len = octets.length; k < len; k++) { octet = octets[k]; if (!(0 <= octet && octet <= 255)) { return null; } } addr.parts.push(octets[0] << 8 | octets[1]); addr.parts.push(octets[2] << 8 | octets[3]); return { parts: addr.parts, zoneId: addr.zoneId }; } } return null; }; ipaddr.IPv4.isIPv4 = ipaddr.IPv6.isIPv6 = function(string) { return this.parser(string) !== null; }; ipaddr.IPv4.isValid = function(string) { var e; try { new this(this.parser(string)); return true; } catch (error1) { e = error1; return false; } }; ipaddr.IPv4.isValidFourPartDecimal = function(string) { if (ipaddr.IPv4.isValid(string) && string.match(/^(0|[1-9]\d*)(\.(0|[1-9]\d*)){3}$/)) { return true; } else { return false; } }; ipaddr.IPv6.isValid = function(string) { var addr, e; if (typeof string === "string" && string.indexOf(":") === -1) { return false; } try { addr = this.parser(string); new this(addr.parts, addr.zoneId); return true; } catch (error1) { e = error1; return false; } }; ipaddr.IPv4.parse = function(string) { var parts; parts = this.parser(string); if (parts === null) { throw new Error("ipaddr: string is not formatted like ip address"); } return new this(parts); }; ipaddr.IPv6.parse = function(string) { var addr; addr = this.parser(string); if (addr.parts === null) { throw new Error("ipaddr: string is not formatted like ip address"); } return new this(addr.parts, addr.zoneId); }; ipaddr.IPv4.parseCIDR = function(string) { var maskLength, match, parsed; if (match = string.match(/^(.+)\/(\d+)$/)) { maskLength = parseInt(match[2]); if (maskLength >= 0 && maskLength <= 32) { parsed = [this.parse(match[1]), maskLength]; Object.defineProperty(parsed, "toString", { value: /* @__PURE__ */ __name(function() { return this.join("/"); }, "value") }); return parsed; } } throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range"); }; ipaddr.IPv4.subnetMaskFromPrefixLength = function(prefix) { var filledOctetCount, j, octets; prefix = parseInt(prefix); if (prefix < 0 || prefix > 32) { throw new Error("ipaddr: invalid IPv4 prefix length"); } octets = [0, 0, 0, 0]; j = 0; filledOctetCount = Math.floor(prefix / 8); while (j < filledOctetCount) { octets[j] = 255; j++; } if (filledOctetCount < 4) { octets[filledOctetCount] = Math.pow(2, prefix % 8) - 1 << 8 - prefix % 8; } return new this(octets); }; ipaddr.IPv4.broadcastAddressFromCIDR = function(string) { var cidr, error, i, ipInterfaceOctets, octets, subnetMaskOctets; try { cidr = this.parseCIDR(string); ipInterfaceOctets = cidr[0].toByteArray(); subnetMaskOctets = this.subnetMaskFromPrefixLength(cidr[1]).toByteArray(); octets = []; i = 0; while (i < 4) { octets.push(parseInt(ipInterfaceOctets[i], 10) | parseInt(subnetMaskOctets[i], 10) ^ 255); i++; } return new this(octets); } catch (error1) { error = error1; throw new Error("ipaddr: the address does not have IPv4 CIDR format"); } }; ipaddr.IPv4.networkAddressFromCIDR = function(string) { var cidr, error, i, ipInterfaceOctets, octets, subnetMaskOctets; try { cidr = this.parseCIDR(string); ipInterfaceOctets = cidr[0].toByteArray(); subnetMaskOctets = this.subnetMaskFromPrefixLength(cidr[1]).toByteArray(); octets = []; i = 0; while (i < 4) { octets.push(parseInt(ipInterfaceOctets[i], 10) & parseInt(subnetMaskOctets[i], 10)); i++; } return new this(octets); } catch (error1) { error = error1; throw new Error("ipaddr: the address does not have IPv4 CIDR format"); } }; ipaddr.IPv6.parseCIDR = function(string) { var maskLength, match, parsed; if (match = string.match(/^(.+)\/(\d+)$/)) { maskLength = parseInt(match[2]); if (maskLength >= 0 && maskLength <= 128) { parsed = [this.parse(match[1]), maskLength]; Object.defineProperty(parsed, "toString", { value: /* @__PURE__ */ __name(function() { return this.join("/"); }, "value") }); return parsed; } } throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range"); }; ipaddr.isValid = function(string) { return ipaddr.IPv6.isValid(string) || ipaddr.IPv4.isValid(string); }; ipaddr.parse = function(string) { if (ipaddr.IPv6.isValid(string)) { return ipaddr.IPv6.parse(string); } else if (ipaddr.IPv4.isValid(string)) { return ipaddr.IPv4.parse(string); } else { throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format"); } }; ipaddr.parseCIDR = function(string) { var e; try { return ipaddr.IPv6.parseCIDR(string); } catch (error1) { e = error1; try { return ipaddr.IPv4.parseCIDR(string); } catch (error12) { e = error12; throw new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format"); } } }; ipaddr.fromByteArray = function(bytes) { var length; length = bytes.length; if (length === 4) { return new ipaddr.IPv4(bytes); } else if (length === 16) { return new ipaddr.IPv6(bytes); } else { throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address"); } }; ipaddr.process = function(string) { var addr; addr = this.parse(string); if (addr.kind() === "ipv6" && addr.isIPv4MappedAddress()) { return addr.toIPv4Address(); } else { return addr; } }; }).call(exports2); } }); // ../../node_modules/.pnpm/proxy-addr@2.0.7/node_modules/proxy-addr/index.js var require_proxy_addr = __commonJS({ "../../node_modules/.pnpm/proxy-addr@2.0.7/node_modules/proxy-addr/index.js"(exports2, module2) { "use strict"; module2.exports = proxyaddr; module2.exports.all = alladdrs; module2.exports.compile = compile; var forwarded = require_forwarded(); var ipaddr = require_ipaddr(); var DIGIT_REGEXP = /^[0-9]+$/; var isip = ipaddr.isValid; var parseip = ipaddr.parse; var IP_RANGES = { linklocal: ["169.254.0.0/16", "fe80::/10"], loopback: ["127.0.0.1/8", "::1/128"], uniquelocal: ["10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16", "fc00::/7"] }; function alladdrs(req, trust) { var addrs = forwarded(req); if (!trust) { return addrs; } if (typeof trust !== "function") { trust = compile(trust); } for (var i = 0; i < addrs.length - 1; i++) { if (trust(addrs[i], i)) continue; addrs.length = i + 1; } return addrs; } __name(alladdrs, "alladdrs"); function compile(val) { if (!val) { throw new TypeError("argument is required"); } var trust; if (typeof val === "string") { trust = [val]; } else if (Array.isArray(val)) { trust = val.slice(); } else { throw new TypeError("unsupported trust argument"); } for (var i = 0; i < trust.length; i++) { val = trust[i]; if (!Object.prototype.hasOwnProperty.call(IP_RANGES, val)) { continue; } val = IP_RANGES[val]; trust.splice.apply(trust, [i, 1].concat(val)); i += val.length - 1; } return compileTrust(compileRangeSubnets(trust)); } __name(compile, "compile"); function compileRangeSubnets(arr) { var rangeSubnets = new Array(arr.length); for (var i = 0; i < arr.length; i++) { rangeSubnets[i] = parseipNotation(arr[i]); } return rangeSubnets; } __name(compileRangeSubnets, "compileRangeSubnets"); function compileTrust(rangeSubnets) { var len = rangeSubnets.length; return len === 0 ? trustNone : len === 1 ? trustSingle(rangeSubnets[0]) : trustMulti(rangeSubnets); } __name(compileTrust, "compileTrust"); function parseipNotation(note) { var pos = note.lastIndexOf("/"); var str = pos !== -1 ? note.substring(0, pos) : note; if (!isip(str)) { throw new TypeError("invalid IP address: " + str); } var ip = parseip(str); if (pos === -1 && ip.kind() === "ipv6" && ip.isIPv4MappedAddress()) { ip = ip.toIPv4Address(); } var max = ip.kind() === "ipv6" ? 128 : 32; var range = pos !== -1 ? note.substring(pos + 1, note.length) : null; if (range === null) { range = max; } else if (DIGIT_REGEXP.test(range)) { range = parseInt(range, 10); } else if (ip.kind() === "ipv4" && isip(range)) { range = parseNetmask(range); } else { range = null; } if (range <= 0 || range > max) { throw new TypeError("invalid range on address: " + note); } return [ip, range]; } __name(parseipNotation, "parseipNotation"); function parseNetmask(netmask) { var ip = parseip(netmask); var kind = ip.kind(); return kind === "ipv4" ? ip.prefixLengthFromSubnetMask() : null; } __name(parseNetmask, "parseNetmask"); function proxyaddr(req, trust) { if (!req) { throw new TypeError("req argument is required"); } if (!trust) { throw new TypeError("trust argument is required"); } var addrs = alladdrs(req, trust); var addr = addrs[addrs.length - 1]; return addr; } __name(proxyaddr, "proxyaddr"); function trustNone() { return false; } __name(trustNone, "trustNone"); function trustMulti(subnets) { return /* @__PURE__ */ __name(function trust(addr) { if (!isip(addr)) return false; var ip = parseip(addr); var ipconv; var kind = ip.kind(); for (var i = 0; i < subnets.length; i++) { var subnet = subnets[i]; var subnetip = subnet[0]; var subnetkind = subnetip.kind(); var subnetrange = subnet[1]; var trusted = ip; if (kind !== subnetkind) { if (subnetkind === "ipv4" && !ip.isIPv4MappedAddress()) { continue; } if (!ipconv) { ipconv = subnetkind === "ipv4" ? ip.toIPv4Address() : ip.toIPv4MappedAddress(); } trusted = ipconv; } if (trusted.match(subnetip, subnetrange)) { return true; } } return false; }, "trust"); } __name(trustMulti, "trustMulti"); function trustSingle(subnet) { var subnetip = subnet[0]; var subnetkind = subnetip.kind(); var subnetisipv4 = subnetkind === "ipv4"; var subnetrange = subnet[1]; return /* @__PURE__ */ __name(function trust(addr) { if (!isip(addr)) return false; var ip = parseip(addr); var kind = ip.kind(); if (kind !== subnetkind) { if (subnetisipv4 && !ip.isIPv4MappedAddress()) { return false; } ip = subnetisipv4 ? ip.toIPv4Address() : ip.toIPv4MappedAddress(); } return ip.match(subnetip, subnetrange); }, "trust"); } __name(trustSingle, "trustSingle"); } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/utils.js var require_utils11 = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/utils.js"(exports2) { "use strict"; var Buffer2 = require_safe_buffer().Buffer; var contentDisposition = require_content_disposition(); var contentType = require_content_type(); var deprecate = require_depd()("express"); var flatten = require_array_flatten(); var mime = require_send().mime; var etag = require_etag(); var proxyaddr = require_proxy_addr(); var qs = require_lib3(); var querystring = require("querystring"); exports2.etag = createETagGenerator({ weak: false }); exports2.wetag = createETagGenerator({ weak: true }); exports2.isAbsolute = function(path) { if ("/" === path[0]) return true; if (":" === path[1] && ("\\" === path[2] || "/" === path[2])) return true; if ("\\\\" === path.substring(0, 2)) return true; }; exports2.flatten = deprecate.function( flatten, "utils.flatten: use array-flatten npm module instead" ); exports2.normalizeType = function(type) { return ~type.indexOf("/") ? acceptParams(type) : { value: mime.lookup(type), params: {} }; }; exports2.normalizeTypes = function(types) { var ret2 = []; for (var i = 0; i < types.length; ++i) { ret2.push(exports2.normalizeType(types[i])); } return ret2; }; exports2.contentDisposition = deprecate.function( contentDisposition, "utils.contentDisposition: use content-disposition npm module instead" ); function acceptParams(str) { var parts = str.split(/ *; */); var ret2 = { value: parts[0], quality: 1, params: {} }; for (var i = 1; i < parts.length; ++i) { var pms = parts[i].split(/ *= */); if ("q" === pms[0]) { ret2.quality = parseFloat(pms[1]); } else { ret2.params[pms[0]] = pms[1]; } } return ret2; } __name(acceptParams, "acceptParams"); exports2.compileETag = function(val) { var fn; if (typeof val === "function") { return val; } switch (val) { case true: case "weak": fn = exports2.wetag; break; case false: break; case "strong": fn = exports2.etag; break; default: throw new TypeError("unknown value for etag function: " + val); } return fn; }; exports2.compileQueryParser = /* @__PURE__ */ __name(function compileQueryParser(val) { var fn; if (typeof val === "function") { return val; } switch (val) { case true: case "simple": fn = querystring.parse; break; case false: fn = newObject; break; case "extended": fn = parseExtendedQueryString; break; default: throw new TypeError("unknown value for query parser function: " + val); } return fn; }, "compileQueryParser"); exports2.compileTrust = function(val) { if (typeof val === "function") return val; if (val === true) { return function() { return true; }; } if (typeof val === "number") { return function(a, i) { return i < val; }; } if (typeof val === "string") { val = val.split(",").map(function(v) { return v.trim(); }); } return proxyaddr.compile(val || []); }; exports2.setCharset = /* @__PURE__ */ __name(function setCharset(type, charset) { if (!type || !charset) { return type; } var parsed = contentType.parse(type); parsed.parameters.charset = charset; return contentType.format(parsed); }, "setCharset"); function createETagGenerator(options) { return /* @__PURE__ */ __name(function generateETag(body, encoding) { var buf = !Buffer2.isBuffer(body) ? Buffer2.from(body, encoding) : body; return etag(buf, options); }, "generateETag"); } __name(createETagGenerator, "createETagGenerator"); function parseExtendedQueryString(str) { return qs.parse(str, { allowPrototypes: true }); } __name(parseExtendedQueryString, "parseExtendedQueryString"); function newObject() { return {}; } __name(newObject, "newObject"); } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/application.js var require_application = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/application.js"(exports2, module2) { "use strict"; var finalhandler = require_finalhandler(); var Router = require_router(); var methods = require_methods(); var middleware = require_init(); var query = require_query(); var debug = require_src()("express:application"); var View = require_view(); var http = require("http"); var compileETag = require_utils11().compileETag; var compileQueryParser = require_utils11().compileQueryParser; var compileTrust = require_utils11().compileTrust; var deprecate = require_depd()("express"); var flatten = require_array_flatten(); var merge = require_utils_merge(); var resolve = require("path").resolve; var setPrototypeOf = require_setprototypeof(); var hasOwnProperty = Object.prototype.hasOwnProperty; var slice = Array.prototype.slice; var app = exports2 = module2.exports = {}; var trustProxyDefaultSymbol = "@@symbol:trust_proxy_default"; app.init = /* @__PURE__ */ __name(function init() { this.cache = {}; this.engines = {}; this.settings = {}; this.defaultConfiguration(); }, "init"); app.defaultConfiguration = /* @__PURE__ */ __name(function defaultConfiguration() { var env2 = process.env.NODE_ENV || "development"; this.enable("x-powered-by"); this.set("etag", "weak"); this.set("env", env2); this.set("query parser", "extended"); this.set("subdomain offset", 2); this.set("trust proxy", false); Object.defineProperty(this.settings, trustProxyDefaultSymbol, { configurable: true, value: true }); debug("booting in %s mode", env2); this.on("mount", /* @__PURE__ */ __name(function onmount(parent) { if (this.settings[trustProxyDefaultSymbol] === true && typeof parent.settings["trust proxy fn"] === "function") { delete this.settings["trust proxy"]; delete this.settings["trust proxy fn"]; } setPrototypeOf(this.request, parent.request); setPrototypeOf(this.response, parent.response); setPrototypeOf(this.engines, parent.engines); setPrototypeOf(this.settings, parent.settings); }, "onmount")); this.locals = /* @__PURE__ */ Object.create(null); this.mountpath = "/"; this.locals.settings = this.settings; this.set("view", View); this.set("views", resolve("views")); this.set("jsonp callback name", "callback"); if (env2 === "production") { this.enable("view cache"); } Object.defineProperty(this, "router", { get: /* @__PURE__ */ __name(function() { throw new Error("'app.router' is deprecated!\nPlease see the 3.x to 4.x migration guide for details on how to update your app."); }, "get") }); }, "defaultConfiguration"); app.lazyrouter = /* @__PURE__ */ __name(function lazyrouter() { if (!this._router) { this._router = new Router({ caseSensitive: this.enabled("case sensitive routing"), strict: this.enabled("strict routing") }); this._router.use(query(this.get("query parser fn"))); this._router.use(middleware.init(this)); } }, "lazyrouter"); app.handle = /* @__PURE__ */ __name(function handle(req, res, callback) { var router = this._router; var done = callback || finalhandler(req, res, { env: this.get("env"), onerror: logerror.bind(this) }); if (!router) { debug("no routes defined on app"); done(); return; } router.handle(req, res, done); }, "handle"); app.use = /* @__PURE__ */ __name(function use(fn) { var offset = 0; var path = "/"; if (typeof fn !== "function") { var arg = fn; while (Array.isArray(arg) && arg.length !== 0) { arg = arg[0]; } if (typeof arg !== "function") { offset = 1; path = fn; } } var fns = flatten(slice.call(arguments, offset)); if (fns.length === 0) { throw new TypeError("app.use() requires a middleware function"); } this.lazyrouter(); var router = this._router; fns.forEach(function(fn2) { if (!fn2 || !fn2.handle || !fn2.set) { return router.use(path, fn2); } debug(".use app under %s", path); fn2.mountpath = path; fn2.parent = this; router.use(path, /* @__PURE__ */ __name(function mounted_app(req, res, next) { var orig = req.app; fn2.handle(req, res, function(err) { setPrototypeOf(req, orig.request); setPrototypeOf(res, orig.response); next(err); }); }, "mounted_app")); fn2.emit("mount", this); }, this); return this; }, "use"); app.route = /* @__PURE__ */ __name(function route(path) { this.lazyrouter(); return this._router.route(path); }, "route"); app.engine = /* @__PURE__ */ __name(function engine(ext, fn) { if (typeof fn !== "function") { throw new Error("callback function required"); } var extension = ext[0] !== "." ? "." + ext : ext; this.engines[extension] = fn; return this; }, "engine"); app.param = /* @__PURE__ */ __name(function param(name, fn) { this.lazyrouter(); if (Array.isArray(name)) { for (var i = 0; i < name.length; i++) { this.param(name[i], fn); } return this; } this._router.param(name, fn); return this; }, "param"); app.set = /* @__PURE__ */ __name(function set(setting, val) { if (arguments.length === 1) { var settings = this.settings; while (settings && settings !== Object.prototype) { if (hasOwnProperty.call(settings, setting)) { return settings[setting]; } settings = Object.getPrototypeOf(settings); } return void 0; } debug('set "%s" to %o', setting, val); this.settings[setting] = val; switch (setting) { case "etag": this.set("etag fn", compileETag(val)); break; case "query parser": this.set("query parser fn", compileQueryParser(val)); break; case "trust proxy": this.set("trust proxy fn", compileTrust(val)); Object.defineProperty(this.settings, trustProxyDefaultSymbol, { configurable: true, value: false }); break; } return this; }, "set"); app.path = /* @__PURE__ */ __name(function path() { return this.parent ? this.parent.path() + this.mountpath : ""; }, "path"); app.enabled = /* @__PURE__ */ __name(function enabled(setting) { return Boolean(this.set(setting)); }, "enabled"); app.disabled = /* @__PURE__ */ __name(function disabled(setting) { return !this.set(setting); }, "disabled"); app.enable = /* @__PURE__ */ __name(function enable(setting) { return this.set(setting, true); }, "enable"); app.disable = /* @__PURE__ */ __name(function disable(setting) { return this.set(setting, false); }, "disable"); methods.forEach(function(method) { app[method] = function(path) { if (method === "get" && arguments.length === 1) { return this.set(path); } this.lazyrouter(); var route = this._router.route(path); route[method].apply(route, slice.call(arguments, 1)); return this; }; }); app.all = /* @__PURE__ */ __name(function all(path) { this.lazyrouter(); var route = this._router.route(path); var args = slice.call(arguments, 1); for (var i = 0; i < methods.length; i++) { route[methods[i]].apply(route, args); } return this; }, "all"); app.del = deprecate.function(app.delete, "app.del: Use app.delete instead"); app.render = /* @__PURE__ */ __name(function render(name, options, callback) { var cache = this.cache; var done = callback; var engines = this.engines; var opts = options; var renderOptions = {}; var view; if (typeof options === "function") { done = options; opts = {}; } merge(renderOptions, this.locals); if (opts._locals) { merge(renderOptions, opts._locals); } merge(renderOptions, opts); if (renderOptions.cache == null) { renderOptions.cache = this.enabled("view cache"); } if (renderOptions.cache) { view = cache[name]; } if (!view) { var View2 = this.get("view"); view = new View2(name, { defaultEngine: this.get("view engine"), root: this.get("views"), engines }); if (!view.path) { var dirs = Array.isArray(view.root) && view.root.length > 1 ? 'directories "' + view.root.slice(0, -1).join('", "') + '" or "' + view.root[view.root.length - 1] + '"' : 'directory "' + view.root + '"'; var err = new Error('Failed to lookup view "' + name + '" in views ' + dirs); err.view = view; return done(err); } if (renderOptions.cache) { cache[name] = view; } } tryRender(view, renderOptions, done); }, "render"); app.listen = /* @__PURE__ */ __name(function listen() { var server = http.createServer(this); return server.listen.apply(server, arguments); }, "listen"); function logerror(err) { if (this.get("env") !== "test") console.error(err.stack || err.toString()); } __name(logerror, "logerror"); function tryRender(view, options, callback) { try { view.render(options, callback); } catch (err) { callback(err); } } __name(tryRender, "tryRender"); } }); // ../../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/charset.js var require_charset = __commonJS({ "../../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/charset.js"(exports2, module2) { "use strict"; module2.exports = preferredCharsets; module2.exports.preferredCharsets = preferredCharsets; var simpleCharsetRegExp = /^\s*([^\s;]+)\s*(?:;(.*))?$/; function parseAcceptCharset(accept) { var accepts = accept.split(","); for (var i = 0, j = 0; i < accepts.length; i++) { var charset = parseCharset(accepts[i].trim(), i); if (charset) { accepts[j++] = charset; } } accepts.length = j; return accepts; } __name(parseAcceptCharset, "parseAcceptCharset"); function parseCharset(str, i) { var match = simpleCharsetRegExp.exec(str); if (!match) return null; var charset = match[1]; var q = 1; if (match[2]) { var params = match[2].split(";"); for (var j = 0; j < params.length; j++) { var p = params[j].trim().split("="); if (p[0] === "q") { q = parseFloat(p[1]); break; } } } return { charset, q, i }; } __name(parseCharset, "parseCharset"); function getCharsetPriority(charset, accepted, index) { var priority = { o: -1, q: 0, s: 0 }; for (var i = 0; i < accepted.length; i++) { var spec = specify(charset, accepted[i], index); if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) { priority = spec; } } return priority; } __name(getCharsetPriority, "getCharsetPriority"); function specify(charset, spec, index) { var s = 0; if (spec.charset.toLowerCase() === charset.toLowerCase()) { s |= 1; } else if (spec.charset !== "*") { return null; } return { i: index, o: spec.i, q: spec.q, s }; } __name(specify, "specify"); function preferredCharsets(accept, provided) { var accepts = parseAcceptCharset(accept === void 0 ? "*" : accept || ""); if (!provided) { return accepts.filter(isQuality).sort(compareSpecs).map(getFullCharset); } var priorities = provided.map(/* @__PURE__ */ __name(function getPriority(type, index) { return getCharsetPriority(type, accepts, index); }, "getPriority")); return priorities.filter(isQuality).sort(compareSpecs).map(/* @__PURE__ */ __name(function getCharset(priority) { return provided[priorities.indexOf(priority)]; }, "getCharset")); } __name(preferredCharsets, "preferredCharsets"); function compareSpecs(a, b) { return b.q - a.q || b.s - a.s || a.o - b.o || a.i - b.i || 0; } __name(compareSpecs, "compareSpecs"); function getFullCharset(spec) { return spec.charset; } __name(getFullCharset, "getFullCharset"); function isQuality(spec) { return spec.q > 0; } __name(isQuality, "isQuality"); } }); // ../../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/encoding.js var require_encoding = __commonJS({ "../../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/encoding.js"(exports2, module2) { "use strict"; module2.exports = preferredEncodings; module2.exports.preferredEncodings = preferredEncodings; var simpleEncodingRegExp = /^\s*([^\s;]+)\s*(?:;(.*))?$/; function parseAcceptEncoding(accept) { var accepts = accept.split(","); var hasIdentity = false; var minQuality = 1; for (var i = 0, j = 0; i < accepts.length; i++) { var encoding = parseEncoding(accepts[i].trim(), i); if (encoding) { accepts[j++] = encoding; hasIdentity = hasIdentity || specify("identity", encoding); minQuality = Math.min(minQuality, encoding.q || 1); } } if (!hasIdentity) { accepts[j++] = { encoding: "identity", q: minQuality, i }; } accepts.length = j; return accepts; } __name(parseAcceptEncoding, "parseAcceptEncoding"); function parseEncoding(str, i) { var match = simpleEncodingRegExp.exec(str); if (!match) return null; var encoding = match[1]; var q = 1; if (match[2]) { var params = match[2].split(";"); for (var j = 0; j < params.length; j++) { var p = params[j].trim().split("="); if (p[0] === "q") { q = parseFloat(p[1]); break; } } } return { encoding, q, i }; } __name(parseEncoding, "parseEncoding"); function getEncodingPriority(encoding, accepted, index) { var priority = { o: -1, q: 0, s: 0 }; for (var i = 0; i < accepted.length; i++) { var spec = specify(encoding, accepted[i], index); if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) { priority = spec; } } return priority; } __name(getEncodingPriority, "getEncodingPriority"); function specify(encoding, spec, index) { var s = 0; if (spec.encoding.toLowerCase() === encoding.toLowerCase()) { s |= 1; } else if (spec.encoding !== "*") { return null; } return { i: index, o: spec.i, q: spec.q, s }; } __name(specify, "specify"); function preferredEncodings(accept, provided) { var accepts = parseAcceptEncoding(accept || ""); if (!provided) { return accepts.filter(isQuality).sort(compareSpecs).map(getFullEncoding); } var priorities = provided.map(/* @__PURE__ */ __name(function getPriority(type, index) { return getEncodingPriority(type, accepts, index); }, "getPriority")); return priorities.filter(isQuality).sort(compareSpecs).map(/* @__PURE__ */ __name(function getEncoding(priority) { return provided[priorities.indexOf(priority)]; }, "getEncoding")); } __name(preferredEncodings, "preferredEncodings"); function compareSpecs(a, b) { return b.q - a.q || b.s - a.s || a.o - b.o || a.i - b.i || 0; } __name(compareSpecs, "compareSpecs"); function getFullEncoding(spec) { return spec.encoding; } __name(getFullEncoding, "getFullEncoding"); function isQuality(spec) { return spec.q > 0; } __name(isQuality, "isQuality"); } }); // ../../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/language.js var require_language = __commonJS({ "../../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/language.js"(exports2, module2) { "use strict"; module2.exports = preferredLanguages; module2.exports.preferredLanguages = preferredLanguages; var simpleLanguageRegExp = /^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/; function parseAcceptLanguage(accept) { var accepts = accept.split(","); for (var i = 0, j = 0; i < accepts.length; i++) { var language = parseLanguage(accepts[i].trim(), i); if (language) { accepts[j++] = language; } } accepts.length = j; return accepts; } __name(parseAcceptLanguage, "parseAcceptLanguage"); function parseLanguage(str, i) { var match = simpleLanguageRegExp.exec(str); if (!match) return null; var prefix = match[1]; var suffix = match[2]; var full = prefix; if (suffix) full += "-" + suffix; var q = 1; if (match[3]) { var params = match[3].split(";"); for (var j = 0; j < params.length; j++) { var p = params[j].split("="); if (p[0] === "q") q = parseFloat(p[1]); } } return { prefix, suffix, q, i, full }; } __name(parseLanguage, "parseLanguage"); function getLanguagePriority(language, accepted, index) { var priority = { o: -1, q: 0, s: 0 }; for (var i = 0; i < accepted.length; i++) { var spec = specify(language, accepted[i], index); if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) { priority = spec; } } return priority; } __name(getLanguagePriority, "getLanguagePriority"); function specify(language, spec, index) { var p = parseLanguage(language); if (!p) return null; var s = 0; if (spec.full.toLowerCase() === p.full.toLowerCase()) { s |= 4; } else if (spec.prefix.toLowerCase() === p.full.toLowerCase()) { s |= 2; } else if (spec.full.toLowerCase() === p.prefix.toLowerCase()) { s |= 1; } else if (spec.full !== "*") { return null; } return { i: index, o: spec.i, q: spec.q, s }; } __name(specify, "specify"); function preferredLanguages(accept, provided) { var accepts = parseAcceptLanguage(accept === void 0 ? "*" : accept || ""); if (!provided) { return accepts.filter(isQuality).sort(compareSpecs).map(getFullLanguage); } var priorities = provided.map(/* @__PURE__ */ __name(function getPriority(type, index) { return getLanguagePriority(type, accepts, index); }, "getPriority")); return priorities.filter(isQuality).sort(compareSpecs).map(/* @__PURE__ */ __name(function getLanguage(priority) { return provided[priorities.indexOf(priority)]; }, "getLanguage")); } __name(preferredLanguages, "preferredLanguages"); function compareSpecs(a, b) { return b.q - a.q || b.s - a.s || a.o - b.o || a.i - b.i || 0; } __name(compareSpecs, "compareSpecs"); function getFullLanguage(spec) { return spec.full; } __name(getFullLanguage, "getFullLanguage"); function isQuality(spec) { return spec.q > 0; } __name(isQuality, "isQuality"); } }); // ../../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/mediaType.js var require_mediaType = __commonJS({ "../../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/lib/mediaType.js"(exports2, module2) { "use strict"; module2.exports = preferredMediaTypes; module2.exports.preferredMediaTypes = preferredMediaTypes; var simpleMediaTypeRegExp = /^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/; function parseAccept(accept) { var accepts = splitMediaTypes(accept); for (var i = 0, j = 0; i < accepts.length; i++) { var mediaType = parseMediaType(accepts[i].trim(), i); if (mediaType) { accepts[j++] = mediaType; } } accepts.length = j; return accepts; } __name(parseAccept, "parseAccept"); function parseMediaType(str, i) { var match = simpleMediaTypeRegExp.exec(str); if (!match) return null; var params = /* @__PURE__ */ Object.create(null); var q = 1; var subtype = match[2]; var type = match[1]; if (match[3]) { var kvps = splitParameters(match[3]).map(splitKeyValuePair); for (var j = 0; j < kvps.length; j++) { var pair = kvps[j]; var key = pair[0].toLowerCase(); var val = pair[1]; var value = val && val[0] === '"' && val[val.length - 1] === '"' ? val.substr(1, val.length - 2) : val; if (key === "q") { q = parseFloat(value); break; } params[key] = value; } } return { type, subtype, params, q, i }; } __name(parseMediaType, "parseMediaType"); function getMediaTypePriority(type, accepted, index) { var priority = { o: -1, q: 0, s: 0 }; for (var i = 0; i < accepted.length; i++) { var spec = specify(type, accepted[i], index); if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) { priority = spec; } } return priority; } __name(getMediaTypePriority, "getMediaTypePriority"); function specify(type, spec, index) { var p = parseMediaType(type); var s = 0; if (!p) { return null; } if (spec.type.toLowerCase() == p.type.toLowerCase()) { s |= 4; } else if (spec.type != "*") { return null; } if (spec.subtype.toLowerCase() == p.subtype.toLowerCase()) { s |= 2; } else if (spec.subtype != "*") { return null; } var keys = Object.keys(spec.params); if (keys.length > 0) { if (keys.every(function(k) { return spec.params[k] == "*" || (spec.params[k] || "").toLowerCase() == (p.params[k] || "").toLowerCase(); })) { s |= 1; } else { return null; } } return { i: index, o: spec.i, q: spec.q, s }; } __name(specify, "specify"); function preferredMediaTypes(accept, provided) { var accepts = parseAccept(accept === void 0 ? "*/*" : accept || ""); if (!provided) { return accepts.filter(isQuality).sort(compareSpecs).map(getFullType); } var priorities = provided.map(/* @__PURE__ */ __name(function getPriority(type, index) { return getMediaTypePriority(type, accepts, index); }, "getPriority")); return priorities.filter(isQuality).sort(compareSpecs).map(/* @__PURE__ */ __name(function getType(priority) { return provided[priorities.indexOf(priority)]; }, "getType")); } __name(preferredMediaTypes, "preferredMediaTypes"); function compareSpecs(a, b) { return b.q - a.q || b.s - a.s || a.o - b.o || a.i - b.i || 0; } __name(compareSpecs, "compareSpecs"); function getFullType(spec) { return spec.type + "/" + spec.subtype; } __name(getFullType, "getFullType"); function isQuality(spec) { return spec.q > 0; } __name(isQuality, "isQuality"); function quoteCount(string) { var count = 0; var index = 0; while ((index = string.indexOf('"', index)) !== -1) { count++; index++; } return count; } __name(quoteCount, "quoteCount"); function splitKeyValuePair(str) { var index = str.indexOf("="); var key; var val; if (index === -1) { key = str; } else { key = str.substr(0, index); val = str.substr(index + 1); } return [key, val]; } __name(splitKeyValuePair, "splitKeyValuePair"); function splitMediaTypes(accept) { var accepts = accept.split(","); for (var i = 1, j = 0; i < accepts.length; i++) { if (quoteCount(accepts[j]) % 2 == 0) { accepts[++j] = accepts[i]; } else { accepts[j] += "," + accepts[i]; } } accepts.length = j + 1; return accepts; } __name(splitMediaTypes, "splitMediaTypes"); function splitParameters(str) { var parameters = str.split(";"); for (var i = 1, j = 0; i < parameters.length; i++) { if (quoteCount(parameters[j]) % 2 == 0) { parameters[++j] = parameters[i]; } else { parameters[j] += ";" + parameters[i]; } } parameters.length = j + 1; for (var i = 0; i < parameters.length; i++) { parameters[i] = parameters[i].trim(); } return parameters; } __name(splitParameters, "splitParameters"); } }); // ../../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/index.js var require_negotiator = __commonJS({ "../../node_modules/.pnpm/negotiator@0.6.3/node_modules/negotiator/index.js"(exports2, module2) { "use strict"; var preferredCharsets = require_charset(); var preferredEncodings = require_encoding(); var preferredLanguages = require_language(); var preferredMediaTypes = require_mediaType(); module2.exports = Negotiator; module2.exports.Negotiator = Negotiator; function Negotiator(request) { if (!(this instanceof Negotiator)) { return new Negotiator(request); } this.request = request; } __name(Negotiator, "Negotiator"); Negotiator.prototype.charset = /* @__PURE__ */ __name(function charset(available) { var set = this.charsets(available); return set && set[0]; }, "charset"); Negotiator.prototype.charsets = /* @__PURE__ */ __name(function charsets(available) { return preferredCharsets(this.request.headers["accept-charset"], available); }, "charsets"); Negotiator.prototype.encoding = /* @__PURE__ */ __name(function encoding(available) { var set = this.encodings(available); return set && set[0]; }, "encoding"); Negotiator.prototype.encodings = /* @__PURE__ */ __name(function encodings(available) { return preferredEncodings(this.request.headers["accept-encoding"], available); }, "encodings"); Negotiator.prototype.language = /* @__PURE__ */ __name(function language(available) { var set = this.languages(available); return set && set[0]; }, "language"); Negotiator.prototype.languages = /* @__PURE__ */ __name(function languages(available) { return preferredLanguages(this.request.headers["accept-language"], available); }, "languages"); Negotiator.prototype.mediaType = /* @__PURE__ */ __name(function mediaType(available) { var set = this.mediaTypes(available); return set && set[0]; }, "mediaType"); Negotiator.prototype.mediaTypes = /* @__PURE__ */ __name(function mediaTypes(available) { return preferredMediaTypes(this.request.headers.accept, available); }, "mediaTypes"); Negotiator.prototype.preferredCharset = Negotiator.prototype.charset; Negotiator.prototype.preferredCharsets = Negotiator.prototype.charsets; Negotiator.prototype.preferredEncoding = Negotiator.prototype.encoding; Negotiator.prototype.preferredEncodings = Negotiator.prototype.encodings; Negotiator.prototype.preferredLanguage = Negotiator.prototype.language; Negotiator.prototype.preferredLanguages = Negotiator.prototype.languages; Negotiator.prototype.preferredMediaType = Negotiator.prototype.mediaType; Negotiator.prototype.preferredMediaTypes = Negotiator.prototype.mediaTypes; } }); // ../../node_modules/.pnpm/accepts@1.3.8/node_modules/accepts/index.js var require_accepts = __commonJS({ "../../node_modules/.pnpm/accepts@1.3.8/node_modules/accepts/index.js"(exports2, module2) { "use strict"; var Negotiator = require_negotiator(); var mime = require_mime_types(); module2.exports = Accepts; function Accepts(req) { if (!(this instanceof Accepts)) { return new Accepts(req); } this.headers = req.headers; this.negotiator = new Negotiator(req); } __name(Accepts, "Accepts"); Accepts.prototype.type = Accepts.prototype.types = function(types_) { var types = types_; if (types && !Array.isArray(types)) { types = new Array(arguments.length); for (var i = 0; i < types.length; i++) { types[i] = arguments[i]; } } if (!types || types.length === 0) { return this.negotiator.mediaTypes(); } if (!this.headers.accept) { return types[0]; } var mimes = types.map(extToMime); var accepts = this.negotiator.mediaTypes(mimes.filter(validMime)); var first = accepts[0]; return first ? types[mimes.indexOf(first)] : false; }; Accepts.prototype.encoding = Accepts.prototype.encodings = function(encodings_) { var encodings = encodings_; if (encodings && !Array.isArray(encodings)) { encodings = new Array(arguments.length); for (var i = 0; i < encodings.length; i++) { encodings[i] = arguments[i]; } } if (!encodings || encodings.length === 0) { return this.negotiator.encodings(); } return this.negotiator.encodings(encodings)[0] || false; }; Accepts.prototype.charset = Accepts.prototype.charsets = function(charsets_) { var charsets = charsets_; if (charsets && !Array.isArray(charsets)) { charsets = new Array(arguments.length); for (var i = 0; i < charsets.length; i++) { charsets[i] = arguments[i]; } } if (!charsets || charsets.length === 0) { return this.negotiator.charsets(); } return this.negotiator.charsets(charsets)[0] || false; }; Accepts.prototype.lang = Accepts.prototype.langs = Accepts.prototype.language = Accepts.prototype.languages = function(languages_) { var languages = languages_; if (languages && !Array.isArray(languages)) { languages = new Array(arguments.length); for (var i = 0; i < languages.length; i++) { languages[i] = arguments[i]; } } if (!languages || languages.length === 0) { return this.negotiator.languages(); } return this.negotiator.languages(languages)[0] || false; }; function extToMime(type) { return type.indexOf("/") === -1 ? mime.lookup(type) : type; } __name(extToMime, "extToMime"); function validMime(type) { return typeof type === "string"; } __name(validMime, "validMime"); } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/request.js var require_request = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/request.js"(exports2, module2) { "use strict"; var accepts = require_accepts(); var deprecate = require_depd()("express"); var isIP = require("net").isIP; var typeis = require_type_is(); var http = require("http"); var fresh = require_fresh(); var parseRange = require_range_parser(); var parse2 = require_parseurl(); var proxyaddr = require_proxy_addr(); var req = Object.create(http.IncomingMessage.prototype); module2.exports = req; req.get = req.header = /* @__PURE__ */ __name(function header(name) { if (!name) { throw new TypeError("name argument is required to req.get"); } if (typeof name !== "string") { throw new TypeError("name must be a string to req.get"); } var lc = name.toLowerCase(); switch (lc) { case "referer": case "referrer": return this.headers.referrer || this.headers.referer; default: return this.headers[lc]; } }, "header"); req.accepts = function() { var accept = accepts(this); return accept.types.apply(accept, arguments); }; req.acceptsEncodings = function() { var accept = accepts(this); return accept.encodings.apply(accept, arguments); }; req.acceptsEncoding = deprecate.function( req.acceptsEncodings, "req.acceptsEncoding: Use acceptsEncodings instead" ); req.acceptsCharsets = function() { var accept = accepts(this); return accept.charsets.apply(accept, arguments); }; req.acceptsCharset = deprecate.function( req.acceptsCharsets, "req.acceptsCharset: Use acceptsCharsets instead" ); req.acceptsLanguages = function() { var accept = accepts(this); return accept.languages.apply(accept, arguments); }; req.acceptsLanguage = deprecate.function( req.acceptsLanguages, "req.acceptsLanguage: Use acceptsLanguages instead" ); req.range = /* @__PURE__ */ __name(function range(size, options) { var range2 = this.get("Range"); if (!range2) return; return parseRange(size, range2, options); }, "range"); req.param = /* @__PURE__ */ __name(function param(name, defaultValue) { var params = this.params || {}; var body = this.body || {}; var query = this.query || {}; var args = arguments.length === 1 ? "name" : "name, default"; deprecate("req.param(" + args + "): Use req.params, req.body, or req.query instead"); if (null != params[name] && params.hasOwnProperty(name)) return params[name]; if (null != body[name]) return body[name]; if (null != query[name]) return query[name]; return defaultValue; }, "param"); req.is = /* @__PURE__ */ __name(function is(types) { var arr = types; if (!Array.isArray(types)) { arr = new Array(arguments.length); for (var i = 0; i < arr.length; i++) { arr[i] = arguments[i]; } } return typeis(this, arr); }, "is"); defineGetter(req, "protocol", /* @__PURE__ */ __name(function protocol() { var proto = this.connection.encrypted ? "https" : "http"; var trust = this.app.get("trust proxy fn"); if (!trust(this.connection.remoteAddress, 0)) { return proto; } var header = this.get("X-Forwarded-Proto") || proto; var index = header.indexOf(","); return index !== -1 ? header.substring(0, index).trim() : header.trim(); }, "protocol")); defineGetter(req, "secure", /* @__PURE__ */ __name(function secure() { return this.protocol === "https"; }, "secure")); defineGetter(req, "ip", /* @__PURE__ */ __name(function ip() { var trust = this.app.get("trust proxy fn"); return proxyaddr(this, trust); }, "ip")); defineGetter(req, "ips", /* @__PURE__ */ __name(function ips() { var trust = this.app.get("trust proxy fn"); var addrs = proxyaddr.all(this, trust); addrs.reverse().pop(); return addrs; }, "ips")); defineGetter(req, "subdomains", /* @__PURE__ */ __name(function subdomains() { var hostname = this.hostname; if (!hostname) return []; var offset = this.app.get("subdomain offset"); var subdomains2 = !isIP(hostname) ? hostname.split(".").reverse() : [hostname]; return subdomains2.slice(offset); }, "subdomains")); defineGetter(req, "path", /* @__PURE__ */ __name(function path() { return parse2(this).pathname; }, "path")); defineGetter(req, "hostname", /* @__PURE__ */ __name(function hostname() { var trust = this.app.get("trust proxy fn"); var host = this.get("X-Forwarded-Host"); if (!host || !trust(this.connection.remoteAddress, 0)) { host = this.get("Host"); } else if (host.indexOf(",") !== -1) { host = host.substring(0, host.indexOf(",")).trimRight(); } if (!host) return; var offset = host[0] === "[" ? host.indexOf("]") + 1 : 0; var index = host.indexOf(":", offset); return index !== -1 ? host.substring(0, index) : host; }, "hostname")); defineGetter(req, "host", deprecate.function(/* @__PURE__ */ __name(function host() { return this.hostname; }, "host"), "req.host: Use req.hostname instead")); defineGetter(req, "fresh", function() { var method = this.method; var res = this.res; var status = res.statusCode; if ("GET" !== method && "HEAD" !== method) return false; if (status >= 200 && status < 300 || 304 === status) { return fresh(this.headers, { "etag": res.get("ETag"), "last-modified": res.get("Last-Modified") }); } return false; }); defineGetter(req, "stale", /* @__PURE__ */ __name(function stale() { return !this.fresh; }, "stale")); defineGetter(req, "xhr", /* @__PURE__ */ __name(function xhr() { var val = this.get("X-Requested-With") || ""; return val.toLowerCase() === "xmlhttprequest"; }, "xhr")); function defineGetter(obj2, name, getter) { Object.defineProperty(obj2, name, { configurable: true, enumerable: true, get: getter }); } __name(defineGetter, "defineGetter"); } }); // ../../node_modules/.pnpm/cookie-signature@1.0.7/node_modules/cookie-signature/index.js var require_cookie_signature = __commonJS({ "../../node_modules/.pnpm/cookie-signature@1.0.7/node_modules/cookie-signature/index.js"(exports2) { var crypto5 = require("crypto"); exports2.sign = function(val, secret) { if ("string" !== typeof val) throw new TypeError("Cookie value must be provided as a string."); if (null == secret) throw new TypeError("Secret key must be provided."); return val + "." + crypto5.createHmac("sha256", secret).update(val).digest("base64").replace(/\=+$/, ""); }; exports2.unsign = function(val, secret) { if ("string" !== typeof val) throw new TypeError("Signed cookie string must be provided."); if (null == secret) throw new TypeError("Secret key must be provided."); var str = val.slice(0, val.lastIndexOf(".")), mac = exports2.sign(str, secret); return sha12(mac) == sha12(val) ? str : false; }; function sha12(str) { return crypto5.createHash("sha1").update(str).digest("hex"); } __name(sha12, "sha1"); } }); // ../../node_modules/.pnpm/cookie@0.7.2/node_modules/cookie/index.js var require_cookie = __commonJS({ "../../node_modules/.pnpm/cookie@0.7.2/node_modules/cookie/index.js"(exports2) { "use strict"; exports2.parse = parse2; exports2.serialize = serialize; var __toString = Object.prototype.toString; var __hasOwnProperty = Object.prototype.hasOwnProperty; var cookieNameRegExp = /^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/; var cookieValueRegExp = /^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/; var domainValueRegExp = /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i; var pathValueRegExp = /^[\u0020-\u003A\u003D-\u007E]*$/; function parse2(str, opt) { if (typeof str !== "string") { throw new TypeError("argument str must be a string"); } var obj2 = {}; var len = str.length; if (len < 2) return obj2; var dec = opt && opt.decode || decode; var index = 0; var eqIdx = 0; var endIdx = 0; do { eqIdx = str.indexOf("=", index); if (eqIdx === -1) break; endIdx = str.indexOf(";", index); if (endIdx === -1) { endIdx = len; } else if (eqIdx > endIdx) { index = str.lastIndexOf(";", eqIdx - 1) + 1; continue; } var keyStartIdx = startIndex(str, index, eqIdx); var keyEndIdx = endIndex(str, eqIdx, keyStartIdx); var key = str.slice(keyStartIdx, keyEndIdx); if (!__hasOwnProperty.call(obj2, key)) { var valStartIdx = startIndex(str, eqIdx + 1, endIdx); var valEndIdx = endIndex(str, endIdx, valStartIdx); if (str.charCodeAt(valStartIdx) === 34 && str.charCodeAt(valEndIdx - 1) === 34) { valStartIdx++; valEndIdx--; } var val = str.slice(valStartIdx, valEndIdx); obj2[key] = tryDecode(val, dec); } index = endIdx + 1; } while (index < len); return obj2; } __name(parse2, "parse"); function startIndex(str, index, max) { do { var code = str.charCodeAt(index); if (code !== 32 && code !== 9) return index; } while (++index < max); return max; } __name(startIndex, "startIndex"); function endIndex(str, index, min) { while (index > min) { var code = str.charCodeAt(--index); if (code !== 32 && code !== 9) return index + 1; } return min; } __name(endIndex, "endIndex"); function serialize(name, val, opt) { var enc = opt && opt.encode || encodeURIComponent; if (typeof enc !== "function") { throw new TypeError("option encode is invalid"); } if (!cookieNameRegExp.test(name)) { throw new TypeError("argument name is invalid"); } var value = enc(val); if (!cookieValueRegExp.test(value)) { throw new TypeError("argument val is invalid"); } var str = name + "=" + value; if (!opt) return str; if (null != opt.maxAge) { var maxAge = Math.floor(opt.maxAge); if (!isFinite(maxAge)) { throw new TypeError("option maxAge is invalid"); } str += "; Max-Age=" + maxAge; } if (opt.domain) { if (!domainValueRegExp.test(opt.domain)) { throw new TypeError("option domain is invalid"); } str += "; Domain=" + opt.domain; } if (opt.path) { if (!pathValueRegExp.test(opt.path)) { throw new TypeError("option path is invalid"); } str += "; Path=" + opt.path; } if (opt.expires) { var expires = opt.expires; if (!isDate(expires) || isNaN(expires.valueOf())) { throw new TypeError("option expires is invalid"); } str += "; Expires=" + expires.toUTCString(); } if (opt.httpOnly) { str += "; HttpOnly"; } if (opt.secure) { str += "; Secure"; } if (opt.partitioned) { str += "; Partitioned"; } if (opt.priority) { var priority = typeof opt.priority === "string" ? opt.priority.toLowerCase() : opt.priority; switch (priority) { case "low": str += "; Priority=Low"; break; case "medium": str += "; Priority=Medium"; break; case "high": str += "; Priority=High"; break; default: throw new TypeError("option priority is invalid"); } } if (opt.sameSite) { var sameSite = typeof opt.sameSite === "string" ? opt.sameSite.toLowerCase() : opt.sameSite; switch (sameSite) { case true: str += "; SameSite=Strict"; break; case "lax": str += "; SameSite=Lax"; break; case "strict": str += "; SameSite=Strict"; break; case "none": str += "; SameSite=None"; break; default: throw new TypeError("option sameSite is invalid"); } } return str; } __name(serialize, "serialize"); function decode(str) { return str.indexOf("%") !== -1 ? decodeURIComponent(str) : str; } __name(decode, "decode"); function isDate(val) { return __toString.call(val) === "[object Date]"; } __name(isDate, "isDate"); function tryDecode(str, decode2) { try { return decode2(str); } catch (e) { return str; } } __name(tryDecode, "tryDecode"); } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/response.js var require_response = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/response.js"(exports2, module2) { "use strict"; var Buffer2 = require_safe_buffer().Buffer; var contentDisposition = require_content_disposition(); var createError = require_http_errors(); var deprecate = require_depd()("express"); var encodeUrl = require_encodeurl(); var escapeHtml = require_escape_html(); var http = require("http"); var isAbsolute = require_utils11().isAbsolute; var onFinished = require_on_finished(); var path = require("path"); var statuses = require_statuses(); var merge = require_utils_merge(); var sign = require_cookie_signature().sign; var normalizeType = require_utils11().normalizeType; var normalizeTypes = require_utils11().normalizeTypes; var setCharset = require_utils11().setCharset; var cookie = require_cookie(); var send = require_send(); var extname = path.extname; var mime = send.mime; var resolve = path.resolve; var vary = require_vary(); var res = Object.create(http.ServerResponse.prototype); module2.exports = res; var charsetRegExp = /;\s*charset\s*=/; res.status = /* @__PURE__ */ __name(function status(code) { if ((typeof code === "string" || Math.floor(code) !== code) && code > 99 && code < 1e3) { deprecate("res.status(" + JSON.stringify(code) + "): use res.status(" + Math.floor(code) + ") instead"); } this.statusCode = code; return this; }, "status"); res.links = function(links) { var link = this.get("Link") || ""; if (link) link += ", "; return this.set("Link", link + Object.keys(links).map(function(rel) { return "<" + links[rel] + '>; rel="' + rel + '"'; }).join(", ")); }; res.send = /* @__PURE__ */ __name(function send2(body) { var chunk = body; var encoding; var req = this.req; var type; var app = this.app; if (arguments.length === 2) { if (typeof arguments[0] !== "number" && typeof arguments[1] === "number") { deprecate("res.send(body, status): Use res.status(status).send(body) instead"); this.statusCode = arguments[1]; } else { deprecate("res.send(status, body): Use res.status(status).send(body) instead"); this.statusCode = arguments[0]; chunk = arguments[1]; } } if (typeof chunk === "number" && arguments.length === 1) { if (!this.get("Content-Type")) { this.type("txt"); } deprecate("res.send(status): Use res.sendStatus(status) instead"); this.statusCode = chunk; chunk = statuses.message[chunk]; } switch (typeof chunk) { // string defaulting to html case "string": if (!this.get("Content-Type")) { this.type("html"); } break; case "boolean": case "number": case "object": if (chunk === null) { chunk = ""; } else if (Buffer2.isBuffer(chunk)) { if (!this.get("Content-Type")) { this.type("bin"); } } else { return this.json(chunk); } break; } if (typeof chunk === "string") { encoding = "utf8"; type = this.get("Content-Type"); if (typeof type === "string") { this.set("Content-Type", setCharset(type, "utf-8")); } } var etagFn = app.get("etag fn"); var generateETag = !this.get("ETag") && typeof etagFn === "function"; var len; if (chunk !== void 0) { if (Buffer2.isBuffer(chunk)) { len = chunk.length; } else if (!generateETag && chunk.length < 1e3) { len = Buffer2.byteLength(chunk, encoding); } else { chunk = Buffer2.from(chunk, encoding); encoding = void 0; len = chunk.length; } this.set("Content-Length", len); } var etag; if (generateETag && len !== void 0) { if (etag = etagFn(chunk, encoding)) { this.set("ETag", etag); } } if (req.fresh) this.statusCode = 304; if (204 === this.statusCode || 304 === this.statusCode) { this.removeHeader("Content-Type"); this.removeHeader("Content-Length"); this.removeHeader("Transfer-Encoding"); chunk = ""; } if (this.statusCode === 205) { this.set("Content-Length", "0"); this.removeHeader("Transfer-Encoding"); chunk = ""; } if (req.method === "HEAD") { this.end(); } else { this.end(chunk, encoding); } return this; }, "send"); res.json = /* @__PURE__ */ __name(function json(obj2) { var val = obj2; if (arguments.length === 2) { if (typeof arguments[1] === "number") { deprecate("res.json(obj, status): Use res.status(status).json(obj) instead"); this.statusCode = arguments[1]; } else { deprecate("res.json(status, obj): Use res.status(status).json(obj) instead"); this.statusCode = arguments[0]; val = arguments[1]; } } var app = this.app; var escape2 = app.get("json escape"); var replacer = app.get("json replacer"); var spaces = app.get("json spaces"); var body = stringify2(val, replacer, spaces, escape2); if (!this.get("Content-Type")) { this.set("Content-Type", "application/json"); } return this.send(body); }, "json"); res.jsonp = /* @__PURE__ */ __name(function jsonp(obj2) { var val = obj2; if (arguments.length === 2) { if (typeof arguments[1] === "number") { deprecate("res.jsonp(obj, status): Use res.status(status).jsonp(obj) instead"); this.statusCode = arguments[1]; } else { deprecate("res.jsonp(status, obj): Use res.status(status).jsonp(obj) instead"); this.statusCode = arguments[0]; val = arguments[1]; } } var app = this.app; var escape2 = app.get("json escape"); var replacer = app.get("json replacer"); var spaces = app.get("json spaces"); var body = stringify2(val, replacer, spaces, escape2); var callback = this.req.query[app.get("jsonp callback name")]; if (!this.get("Content-Type")) { this.set("X-Content-Type-Options", "nosniff"); this.set("Content-Type", "application/json"); } if (Array.isArray(callback)) { callback = callback[0]; } if (typeof callback === "string" && callback.length !== 0) { this.set("X-Content-Type-Options", "nosniff"); this.set("Content-Type", "text/javascript"); callback = callback.replace(/[^\[\]\w$.]/g, ""); if (body === void 0) { body = ""; } else if (typeof body === "string") { body = body.replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029"); } body = "/**/ typeof " + callback + " === 'function' && " + callback + "(" + body + ");"; } return this.send(body); }, "jsonp"); res.sendStatus = /* @__PURE__ */ __name(function sendStatus(statusCode) { var body = statuses.message[statusCode] || String(statusCode); this.statusCode = statusCode; this.type("txt"); return this.send(body); }, "sendStatus"); res.sendFile = /* @__PURE__ */ __name(function sendFile(path2, options, callback) { var done = callback; var req = this.req; var res2 = this; var next = req.next; var opts = options || {}; if (!path2) { throw new TypeError("path argument is required to res.sendFile"); } if (typeof path2 !== "string") { throw new TypeError("path must be a string to res.sendFile"); } if (typeof options === "function") { done = options; opts = {}; } if (!opts.root && !isAbsolute(path2)) { throw new TypeError("path must be absolute or specify root to res.sendFile"); } var pathname = encodeURI(path2); var file2 = send(req, pathname, opts); sendfile(res2, file2, opts, function(err) { if (done) return done(err); if (err && err.code === "EISDIR") return next(); if (err && err.code !== "ECONNABORTED" && err.syscall !== "write") { next(err); } }); }, "sendFile"); res.sendfile = function(path2, options, callback) { var done = callback; var req = this.req; var res2 = this; var next = req.next; var opts = options || {}; if (typeof options === "function") { done = options; opts = {}; } var file2 = send(req, path2, opts); sendfile(res2, file2, opts, function(err) { if (done) return done(err); if (err && err.code === "EISDIR") return next(); if (err && err.code !== "ECONNABORTED" && err.syscall !== "write") { next(err); } }); }; res.sendfile = deprecate.function( res.sendfile, "res.sendfile: Use res.sendFile instead" ); res.download = /* @__PURE__ */ __name(function download(path2, filename, options, callback) { var done = callback; var name = filename; var opts = options || null; if (typeof filename === "function") { done = filename; name = null; opts = null; } else if (typeof options === "function") { done = options; opts = null; } if (typeof filename === "object" && (typeof options === "function" || options === void 0)) { name = null; opts = filename; } var headers = { "Content-Disposition": contentDisposition(name || path2) }; if (opts && opts.headers) { var keys = Object.keys(opts.headers); for (var i = 0; i < keys.length; i++) { var key = keys[i]; if (key.toLowerCase() !== "content-disposition") { headers[key] = opts.headers[key]; } } } opts = Object.create(opts); opts.headers = headers; var fullPath = !opts.root ? resolve(path2) : path2; return this.sendFile(fullPath, opts, done); }, "download"); res.contentType = res.type = /* @__PURE__ */ __name(function contentType(type) { var ct = type.indexOf("/") === -1 ? mime.lookup(type) : type; return this.set("Content-Type", ct); }, "contentType"); res.format = function(obj2) { var req = this.req; var next = req.next; var keys = Object.keys(obj2).filter(function(v) { return v !== "default"; }); var key = keys.length > 0 ? req.accepts(keys) : false; this.vary("Accept"); if (key) { this.set("Content-Type", normalizeType(key).value); obj2[key](req, this, next); } else if (obj2.default) { obj2.default(req, this, next); } else { next(createError(406, { types: normalizeTypes(keys).map(function(o) { return o.value; }) })); } return this; }; res.attachment = /* @__PURE__ */ __name(function attachment(filename) { if (filename) { this.type(extname(filename)); } this.set("Content-Disposition", contentDisposition(filename)); return this; }, "attachment"); res.append = /* @__PURE__ */ __name(function append(field, val) { var prev = this.get(field); var value = val; if (prev) { value = Array.isArray(prev) ? prev.concat(val) : Array.isArray(val) ? [prev].concat(val) : [prev, val]; } return this.set(field, value); }, "append"); res.set = res.header = /* @__PURE__ */ __name(function header(field, val) { if (arguments.length === 2) { var value = Array.isArray(val) ? val.map(String) : String(val); if (field.toLowerCase() === "content-type") { if (Array.isArray(value)) { throw new TypeError("Content-Type cannot be set to an Array"); } if (!charsetRegExp.test(value)) { var charset = mime.charsets.lookup(value.split(";")[0]); if (charset) value += "; charset=" + charset.toLowerCase(); } } this.setHeader(field, value); } else { for (var key in field) { this.set(key, field[key]); } } return this; }, "header"); res.get = function(field) { return this.getHeader(field); }; res.clearCookie = /* @__PURE__ */ __name(function clearCookie(name, options) { if (options) { if (options.maxAge) { deprecate('res.clearCookie: Passing "options.maxAge" is deprecated. In v5.0.0 of Express, this option will be ignored, as res.clearCookie will automatically set cookies to expire immediately. Please update your code to omit this option.'); } if (options.expires) { deprecate('res.clearCookie: Passing "options.expires" is deprecated. In v5.0.0 of Express, this option will be ignored, as res.clearCookie will automatically set cookies to expire immediately. Please update your code to omit this option.'); } } var opts = merge({ expires: /* @__PURE__ */ new Date(1), path: "/" }, options); return this.cookie(name, "", opts); }, "clearCookie"); res.cookie = function(name, value, options) { var opts = merge({}, options); var secret = this.req.secret; var signed = opts.signed; if (signed && !secret) { throw new Error('cookieParser("secret") required for signed cookies'); } var val = typeof value === "object" ? "j:" + JSON.stringify(value) : String(value); if (signed) { val = "s:" + sign(val, secret); } if (opts.maxAge != null) { var maxAge = opts.maxAge - 0; if (!isNaN(maxAge)) { opts.expires = new Date(Date.now() + maxAge); opts.maxAge = Math.floor(maxAge / 1e3); } } if (opts.path == null) { opts.path = "/"; } this.append("Set-Cookie", cookie.serialize(name, String(val), opts)); return this; }; res.location = /* @__PURE__ */ __name(function location(url) { var loc; if (url === "back") { deprecate('res.location("back"): use res.location(req.get("Referrer") || "/") and refer to https://dub.sh/security-redirect for best practices'); loc = this.req.get("Referrer") || "/"; } else { loc = String(url); } return this.set("Location", encodeUrl(loc)); }, "location"); res.redirect = /* @__PURE__ */ __name(function redirect(url) { var address = url; var body; var status = 302; if (arguments.length === 2) { if (typeof arguments[0] === "number") { status = arguments[0]; address = arguments[1]; } else { deprecate("res.redirect(url, status): Use res.redirect(status, url) instead"); status = arguments[1]; } } address = this.location(address).get("Location"); this.format({ text: /* @__PURE__ */ __name(function() { body = statuses.message[status] + ". Redirecting to " + address; }, "text"), html: /* @__PURE__ */ __name(function() { var u = escapeHtml(address); body = "

" + statuses.message[status] + ". Redirecting to " + u + "

"; }, "html"), default: /* @__PURE__ */ __name(function() { body = ""; }, "default") }); this.statusCode = status; this.set("Content-Length", Buffer2.byteLength(body)); if (this.req.method === "HEAD") { this.end(); } else { this.end(body); } }, "redirect"); res.vary = function(field) { if (!field || Array.isArray(field) && !field.length) { deprecate("res.vary(): Provide a field name"); return this; } vary(this, field); return this; }; res.render = /* @__PURE__ */ __name(function render(view, options, callback) { var app = this.req.app; var done = callback; var opts = options || {}; var req = this.req; var self2 = this; if (typeof options === "function") { done = options; opts = {}; } opts._locals = self2.locals; done = done || function(err, str) { if (err) return req.next(err); self2.send(str); }; app.render(view, opts, done); }, "render"); function sendfile(res2, file2, options, callback) { var done = false; var streaming; function onaborted() { if (done) return; done = true; var err = new Error("Request aborted"); err.code = "ECONNABORTED"; callback(err); } __name(onaborted, "onaborted"); function ondirectory() { if (done) return; done = true; var err = new Error("EISDIR, read"); err.code = "EISDIR"; callback(err); } __name(ondirectory, "ondirectory"); function onerror(err) { if (done) return; done = true; callback(err); } __name(onerror, "onerror"); function onend() { if (done) return; done = true; callback(); } __name(onend, "onend"); function onfile() { streaming = false; } __name(onfile, "onfile"); function onfinish(err) { if (err && err.code === "ECONNRESET") return onaborted(); if (err) return onerror(err); if (done) return; setImmediate(function() { if (streaming !== false && !done) { onaborted(); return; } if (done) return; done = true; callback(); }); } __name(onfinish, "onfinish"); function onstream() { streaming = true; } __name(onstream, "onstream"); file2.on("directory", ondirectory); file2.on("end", onend); file2.on("error", onerror); file2.on("file", onfile); file2.on("stream", onstream); onFinished(res2, onfinish); if (options.headers) { file2.on("headers", /* @__PURE__ */ __name(function headers(res3) { var obj2 = options.headers; var keys = Object.keys(obj2); for (var i = 0; i < keys.length; i++) { var k = keys[i]; res3.setHeader(k, obj2[k]); } }, "headers")); } file2.pipe(res2); } __name(sendfile, "sendfile"); function stringify2(value, replacer, spaces, escape2) { var json = replacer || spaces ? JSON.stringify(value, replacer, spaces) : JSON.stringify(value); if (escape2 && typeof json === "string") { json = json.replace(/[<>&]/g, function(c) { switch (c.charCodeAt(0)) { case 60: return "\\u003c"; case 62: return "\\u003e"; case 38: return "\\u0026"; /* istanbul ignore next: unreachable default */ default: return c; } }); } return json; } __name(stringify2, "stringify"); } }); // ../../node_modules/.pnpm/serve-static@1.16.3/node_modules/serve-static/index.js var require_serve_static = __commonJS({ "../../node_modules/.pnpm/serve-static@1.16.3/node_modules/serve-static/index.js"(exports2, module2) { "use strict"; var encodeUrl = require_encodeurl(); var escapeHtml = require_escape_html(); var parseUrl = require_parseurl(); var resolve = require("path").resolve; var send = require_send(); var url = require("url"); module2.exports = serveStatic; module2.exports.mime = send.mime; function serveStatic(root, options) { if (!root) { throw new TypeError("root path required"); } if (typeof root !== "string") { throw new TypeError("root path must be a string"); } var opts = Object.create(options || null); var fallthrough = opts.fallthrough !== false; var redirect = opts.redirect !== false; var setHeaders = opts.setHeaders; if (setHeaders && typeof setHeaders !== "function") { throw new TypeError("option setHeaders must be function"); } opts.maxage = opts.maxage || opts.maxAge || 0; opts.root = resolve(root); var onDirectory = redirect ? createRedirectDirectoryListener() : createNotFoundDirectoryListener(); return /* @__PURE__ */ __name(function serveStatic2(req, res, next) { if (req.method !== "GET" && req.method !== "HEAD") { if (fallthrough) { return next(); } res.statusCode = 405; res.setHeader("Allow", "GET, HEAD"); res.setHeader("Content-Length", "0"); res.end(); return; } var forwardError = !fallthrough; var originalUrl = parseUrl.original(req); var path = parseUrl(req).pathname; if (path === "/" && originalUrl.pathname.substr(-1) !== "/") { path = ""; } var stream = send(req, path, opts); stream.on("directory", onDirectory); if (setHeaders) { stream.on("headers", setHeaders); } if (fallthrough) { stream.on("file", /* @__PURE__ */ __name(function onFile() { forwardError = true; }, "onFile")); } stream.on("error", /* @__PURE__ */ __name(function error(err) { if (forwardError || !(err.statusCode < 500)) { next(err); return; } next(); }, "error")); stream.pipe(res); }, "serveStatic"); } __name(serveStatic, "serveStatic"); function collapseLeadingSlashes(str) { for (var i = 0; i < str.length; i++) { if (str.charCodeAt(i) !== 47) { break; } } return i > 1 ? "/" + str.substr(i) : str; } __name(collapseLeadingSlashes, "collapseLeadingSlashes"); function createHtmlDocument(title, body) { return '\n\n\n\n' + title + "\n\n\n
" + body + "
\n\n\n"; } __name(createHtmlDocument, "createHtmlDocument"); function createNotFoundDirectoryListener() { return /* @__PURE__ */ __name(function notFound() { this.error(404); }, "notFound"); } __name(createNotFoundDirectoryListener, "createNotFoundDirectoryListener"); function createRedirectDirectoryListener() { return /* @__PURE__ */ __name(function redirect(res) { if (this.hasTrailingSlash()) { this.error(404); return; } var originalUrl = parseUrl.original(this.req); originalUrl.path = null; originalUrl.pathname = collapseLeadingSlashes(originalUrl.pathname + "/"); var loc = encodeUrl(url.format(originalUrl)); var doc = createHtmlDocument("Redirecting", "Redirecting to " + escapeHtml(loc)); res.statusCode = 301; res.setHeader("Content-Type", "text/html; charset=UTF-8"); res.setHeader("Content-Length", Buffer.byteLength(doc)); res.setHeader("Content-Security-Policy", "default-src 'none'"); res.setHeader("X-Content-Type-Options", "nosniff"); res.setHeader("Location", loc); res.end(doc); }, "redirect"); } __name(createRedirectDirectoryListener, "createRedirectDirectoryListener"); } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/express.js var require_express = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/lib/express.js"(exports2, module2) { "use strict"; var bodyParser = require_body_parser(); var EventEmitter = require("events").EventEmitter; var mixin = require_merge_descriptors(); var proto = require_application(); var Route = require_route(); var Router = require_router(); var req = require_request(); var res = require_response(); exports2 = module2.exports = createApplication; function createApplication() { var app = /* @__PURE__ */ __name(function(req2, res2, next) { app.handle(req2, res2, next); }, "app"); mixin(app, EventEmitter.prototype, false); mixin(app, proto, false); app.request = Object.create(req, { app: { configurable: true, enumerable: true, writable: true, value: app } }); app.response = Object.create(res, { app: { configurable: true, enumerable: true, writable: true, value: app } }); app.init(); return app; } __name(createApplication, "createApplication"); exports2.application = proto; exports2.request = req; exports2.response = res; exports2.Route = Route; exports2.Router = Router; exports2.json = bodyParser.json; exports2.query = require_query(); exports2.raw = bodyParser.raw; exports2.static = require_serve_static(); exports2.text = bodyParser.text; exports2.urlencoded = bodyParser.urlencoded; var removedMiddlewares = [ "bodyParser", "compress", "cookieSession", "session", "logger", "cookieParser", "favicon", "responseTime", "errorHandler", "timeout", "methodOverride", "vhost", "csrf", "directory", "limit", "multipart", "staticCache" ]; removedMiddlewares.forEach(function(name) { Object.defineProperty(exports2, name, { get: /* @__PURE__ */ __name(function() { throw new Error("Most middleware (like " + name + ") is no longer bundled with Express and must be installed separately. Please see https://github.com/senchalabs/connect#middleware."); }, "get"), configurable: true }); }); } }); // ../../node_modules/.pnpm/express@4.22.1/node_modules/express/index.js var require_express2 = __commonJS({ "../../node_modules/.pnpm/express@4.22.1/node_modules/express/index.js"(exports2, module2) { "use strict"; module2.exports = require_express(); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/adapters/utils/get-body-parser-options.util.js var require_get_body_parser_options_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/adapters/utils/get-body-parser-options.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getBodyParserOptions = getBodyParserOptions; var rawBodyParser = /* @__PURE__ */ __name((req, _res, buffer) => { if (Buffer.isBuffer(buffer)) { req.rawBody = buffer; } return true; }, "rawBodyParser"); function getBodyParserOptions(rawBody, options) { let parserOptions = options || {}; if (rawBody === true) { parserOptions = { ...parserOptions, verify: rawBodyParser }; } return parserOptions; } __name(getBodyParserOptions, "getBodyParserOptions"); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/adapters/express-adapter.js var require_express_adapter = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/adapters/express-adapter.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExpressAdapter = void 0; var common_12 = require_common(); var shared_utils_1 = require_shared_utils(); var http_adapter_1 = require_http_adapter(); var router_method_factory_1 = require_router_method_factory(); var body_parser_1 = require_body_parser(); var bodyparser = require_body_parser(); var cors = require_lib4(); var express = require_express2(); var http = require("http"); var https = require("https"); var stream_1 = require("stream"); var get_body_parser_options_util_1 = require_get_body_parser_options_util(); var ExpressAdapter = class _ExpressAdapter extends http_adapter_1.AbstractHttpAdapter { static { __name(this, "ExpressAdapter"); } constructor(instance) { super(instance || express()); this.routerMethodFactory = new router_method_factory_1.RouterMethodFactory(); this.logger = new common_12.Logger(_ExpressAdapter.name); this.openConnections = /* @__PURE__ */ new Set(); } reply(response, body, statusCode) { if (statusCode) { response.status(statusCode); } if ((0, shared_utils_1.isNil)(body)) { return response.send(); } if (body instanceof common_12.StreamableFile) { const streamHeaders = body.getHeaders(); if (response.getHeader("Content-Type") === void 0 && streamHeaders.type !== void 0) { response.setHeader("Content-Type", streamHeaders.type); } if (response.getHeader("Content-Disposition") === void 0 && streamHeaders.disposition !== void 0) { response.setHeader("Content-Disposition", streamHeaders.disposition); } if (response.getHeader("Content-Length") === void 0 && streamHeaders.length !== void 0) { response.setHeader("Content-Length", streamHeaders.length); } return (0, stream_1.pipeline)(body.getStream().once("error", (err) => { body.errorHandler(err, response); }), response, (err) => { if (err) { body.errorLogger(err); } }); } const responseContentType = response.getHeader("Content-Type"); if (typeof responseContentType === "string" && !responseContentType.startsWith("application/json") && body?.statusCode >= common_12.HttpStatus.BAD_REQUEST) { this.logger.warn("Content-Type doesn't match Reply body, you might need a custom ExceptionFilter for non-JSON responses"); response.setHeader("Content-Type", "application/json"); } return (0, shared_utils_1.isObject)(body) ? response.json(body) : response.send(String(body)); } status(response, statusCode) { return response.status(statusCode); } end(response, message) { return response.end(message); } render(response, view, options) { return response.render(view, options); } redirect(response, statusCode, url) { return response.redirect(statusCode, url); } setErrorHandler(handler, prefix) { return this.use(handler); } setNotFoundHandler(handler, prefix) { return this.use(handler); } isHeadersSent(response) { return response.headersSent; } getHeader(response, name) { return response.get(name); } setHeader(response, name, value) { return response.set(name, value); } appendHeader(response, name, value) { return response.append(name, value); } listen(port, ...args) { return this.httpServer.listen(port, ...args); } close() { this.closeOpenConnections(); if (!this.httpServer) { return void 0; } return new Promise((resolve) => this.httpServer.close(resolve)); } set(...args) { return this.instance.set(...args); } enable(...args) { return this.instance.enable(...args); } disable(...args) { return this.instance.disable(...args); } engine(...args) { return this.instance.engine(...args); } useStaticAssets(path, options) { if (options && options.prefix) { return this.use(options.prefix, express.static(path, options)); } return this.use(express.static(path, options)); } setBaseViewsDir(path) { return this.set("views", path); } setViewEngine(engine) { return this.set("view engine", engine); } getRequestHostname(request) { return request.hostname; } getRequestMethod(request) { return request.method; } getRequestUrl(request) { return request.originalUrl; } enableCors(options) { return this.use(cors(options)); } createMiddlewareFactory(requestMethod) { return this.routerMethodFactory.get(this.instance, requestMethod).bind(this.instance); } initHttpServer(options) { const isHttpsEnabled = options && options.httpsOptions; if (isHttpsEnabled) { this.httpServer = https.createServer(options.httpsOptions, this.getInstance()); } else { this.httpServer = http.createServer(this.getInstance()); } if (options?.forceCloseConnections) { this.trackOpenConnections(); } } registerParserMiddleware(prefix, rawBody) { const bodyParserJsonOptions = (0, get_body_parser_options_util_1.getBodyParserOptions)(rawBody); const bodyParserUrlencodedOptions = (0, get_body_parser_options_util_1.getBodyParserOptions)(rawBody, { extended: true }); const parserMiddleware = { jsonParser: (0, body_parser_1.json)(bodyParserJsonOptions), urlencodedParser: (0, body_parser_1.urlencoded)(bodyParserUrlencodedOptions) }; Object.keys(parserMiddleware).filter((parser) => !this.isMiddlewareApplied(parser)).forEach((parserKey) => this.use(parserMiddleware[parserKey])); } useBodyParser(type, rawBody, options) { const parserOptions = (0, get_body_parser_options_util_1.getBodyParserOptions)(rawBody, options); const parser = bodyparser[type](parserOptions); this.use(parser); return this; } setLocal(key, value) { this.instance.locals[key] = value; return this; } getType() { return "express"; } applyVersionFilter(handler, version2, versioningOptions) { const callNextHandler = /* @__PURE__ */ __name((req, res, next) => { if (!next) { throw new common_12.InternalServerErrorException("HTTP adapter does not support filtering on version"); } return next(); }, "callNextHandler"); if (version2 === common_12.VERSION_NEUTRAL || // URL Versioning is done via the path, so the filter continues forward versioningOptions.type === common_12.VersioningType.URI) { const handlerForNoVersioning = /* @__PURE__ */ __name((req, res, next) => handler(req, res, next), "handlerForNoVersioning"); return handlerForNoVersioning; } if (versioningOptions.type === common_12.VersioningType.CUSTOM) { const handlerForCustomVersioning = /* @__PURE__ */ __name((req, res, next) => { const extractedVersion = versioningOptions.extractor(req); if (Array.isArray(version2)) { if (Array.isArray(extractedVersion) && version2.filter((v) => extractedVersion.includes(v)).length) { return handler(req, res, next); } if ((0, shared_utils_1.isString)(extractedVersion) && version2.includes(extractedVersion)) { return handler(req, res, next); } } else if ((0, shared_utils_1.isString)(version2)) { if (Array.isArray(extractedVersion) && extractedVersion.includes(version2)) { return handler(req, res, next); } if ((0, shared_utils_1.isString)(extractedVersion) && version2 === extractedVersion) { return handler(req, res, next); } } return callNextHandler(req, res, next); }, "handlerForCustomVersioning"); return handlerForCustomVersioning; } if (versioningOptions.type === common_12.VersioningType.MEDIA_TYPE) { const handlerForMediaTypeVersioning = /* @__PURE__ */ __name((req, res, next) => { const MEDIA_TYPE_HEADER = "Accept"; const acceptHeaderValue = req.headers?.[MEDIA_TYPE_HEADER] || req.headers?.[MEDIA_TYPE_HEADER.toLowerCase()]; const acceptHeaderVersionParameter = acceptHeaderValue ? acceptHeaderValue.split(";")[1] : void 0; if ((0, shared_utils_1.isUndefined)(acceptHeaderVersionParameter)) { if (Array.isArray(version2)) { if (version2.includes(common_12.VERSION_NEUTRAL)) { return handler(req, res, next); } } } else { const headerVersion = acceptHeaderVersionParameter.split(versioningOptions.key)[1]; if (Array.isArray(version2)) { if (version2.includes(headerVersion)) { return handler(req, res, next); } } else if ((0, shared_utils_1.isString)(version2)) { if (version2 === headerVersion) { return handler(req, res, next); } } } return callNextHandler(req, res, next); }, "handlerForMediaTypeVersioning"); return handlerForMediaTypeVersioning; } if (versioningOptions.type === common_12.VersioningType.HEADER) { const handlerForHeaderVersioning = /* @__PURE__ */ __name((req, res, next) => { const customHeaderVersionParameter = req.headers?.[versioningOptions.header] || req.headers?.[versioningOptions.header.toLowerCase()]; if ((0, shared_utils_1.isUndefined)(customHeaderVersionParameter)) { if (Array.isArray(version2)) { if (version2.includes(common_12.VERSION_NEUTRAL)) { return handler(req, res, next); } } } else { if (Array.isArray(version2)) { if (version2.includes(customHeaderVersionParameter)) { return handler(req, res, next); } } else if ((0, shared_utils_1.isString)(version2)) { if (version2 === customHeaderVersionParameter) { return handler(req, res, next); } } } return callNextHandler(req, res, next); }, "handlerForHeaderVersioning"); return handlerForHeaderVersioning; } } trackOpenConnections() { this.httpServer.on("connection", (socket) => { this.openConnections.add(socket); socket.on("close", () => this.openConnections.delete(socket)); }); } closeOpenConnections() { for (const socket of this.openConnections) { socket.destroy(); this.openConnections.delete(socket); } } isMiddlewareApplied(name) { const app = this.getInstance(); return !!app._router && !!app._router.stack && (0, shared_utils_1.isFunction)(app._router.stack.filter) && app._router.stack.some((layer) => layer && layer.handle && layer.handle.name === name); } }; exports2.ExpressAdapter = ExpressAdapter; } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/adapters/index.js var require_adapters2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/adapters/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_express_adapter(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/interfaces/nest-express-application.interface.js var require_nest_express_application_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/interfaces/nest-express-application.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/interfaces/nest-express-body-parser.interface.js var require_nest_express_body_parser_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/interfaces/nest-express-body-parser.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/interfaces/index.js var require_interfaces5 = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/interfaces/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_nest_express_application_interface(), exports2); tslib_1.__exportStar(require_nest_express_body_parser_interface(), exports2); } }); // ../../node_modules/.pnpm/busboy@1.6.0/node_modules/busboy/lib/utils.js var require_utils12 = __commonJS({ "../../node_modules/.pnpm/busboy@1.6.0/node_modules/busboy/lib/utils.js"(exports2, module2) { "use strict"; function parseContentType(str) { if (str.length === 0) return; const params = /* @__PURE__ */ Object.create(null); let i = 0; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (TOKEN[code] !== 1) { if (code !== 47 || i === 0) return; break; } } if (i === str.length) return; const type = str.slice(0, i).toLowerCase(); const subtypeStart = ++i; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (TOKEN[code] !== 1) { if (i === subtypeStart) return; if (parseContentTypeParams(str, i, params) === void 0) return; break; } } if (i === subtypeStart) return; const subtype = str.slice(subtypeStart, i).toLowerCase(); return { type, subtype, params }; } __name(parseContentType, "parseContentType"); function parseContentTypeParams(str, i, params) { while (i < str.length) { for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (code !== 32 && code !== 9) break; } if (i === str.length) break; if (str.charCodeAt(i++) !== 59) return; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (code !== 32 && code !== 9) break; } if (i === str.length) return; let name; const nameStart = i; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (TOKEN[code] !== 1) { if (code !== 61) return; break; } } if (i === str.length) return; name = str.slice(nameStart, i); ++i; if (i === str.length) return; let value = ""; let valueStart; if (str.charCodeAt(i) === 34) { valueStart = ++i; let escaping = false; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (code === 92) { if (escaping) { valueStart = i; escaping = false; } else { value += str.slice(valueStart, i); escaping = true; } continue; } if (code === 34) { if (escaping) { valueStart = i; escaping = false; continue; } value += str.slice(valueStart, i); break; } if (escaping) { valueStart = i - 1; escaping = false; } if (QDTEXT[code] !== 1) return; } if (i === str.length) return; ++i; } else { valueStart = i; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (TOKEN[code] !== 1) { if (i === valueStart) return; break; } } value = str.slice(valueStart, i); } name = name.toLowerCase(); if (params[name] === void 0) params[name] = value; } return params; } __name(parseContentTypeParams, "parseContentTypeParams"); function parseDisposition(str, defDecoder) { if (str.length === 0) return; const params = /* @__PURE__ */ Object.create(null); let i = 0; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (TOKEN[code] !== 1) { if (parseDispositionParams(str, i, params, defDecoder) === void 0) return; break; } } const type = str.slice(0, i).toLowerCase(); return { type, params }; } __name(parseDisposition, "parseDisposition"); function parseDispositionParams(str, i, params, defDecoder) { while (i < str.length) { for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (code !== 32 && code !== 9) break; } if (i === str.length) break; if (str.charCodeAt(i++) !== 59) return; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (code !== 32 && code !== 9) break; } if (i === str.length) return; let name; const nameStart = i; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (TOKEN[code] !== 1) { if (code === 61) break; return; } } if (i === str.length) return; let value = ""; let valueStart; let charset; name = str.slice(nameStart, i); if (name.charCodeAt(name.length - 1) === 42) { const charsetStart = ++i; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (CHARSET[code] !== 1) { if (code !== 39) return; break; } } if (i === str.length) return; charset = str.slice(charsetStart, i); ++i; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (code === 39) break; } if (i === str.length) return; ++i; if (i === str.length) return; valueStart = i; let encode = 0; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (EXTENDED_VALUE[code] !== 1) { if (code === 37) { let hexUpper; let hexLower; if (i + 2 < str.length && (hexUpper = HEX_VALUES[str.charCodeAt(i + 1)]) !== -1 && (hexLower = HEX_VALUES[str.charCodeAt(i + 2)]) !== -1) { const byteVal = (hexUpper << 4) + hexLower; value += str.slice(valueStart, i); value += String.fromCharCode(byteVal); i += 2; valueStart = i + 1; if (byteVal >= 128) encode = 2; else if (encode === 0) encode = 1; continue; } return; } break; } } value += str.slice(valueStart, i); value = convertToUTF8(value, charset, encode); if (value === void 0) return; } else { ++i; if (i === str.length) return; if (str.charCodeAt(i) === 34) { valueStart = ++i; let escaping = false; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (code === 92) { if (escaping) { valueStart = i; escaping = false; } else { value += str.slice(valueStart, i); escaping = true; } continue; } if (code === 34) { if (escaping) { valueStart = i; escaping = false; continue; } value += str.slice(valueStart, i); break; } if (escaping) { valueStart = i - 1; escaping = false; } if (QDTEXT[code] !== 1) return; } if (i === str.length) return; ++i; } else { valueStart = i; for (; i < str.length; ++i) { const code = str.charCodeAt(i); if (TOKEN[code] !== 1) { if (i === valueStart) return; break; } } value = str.slice(valueStart, i); } value = defDecoder(value, 2); if (value === void 0) return; } name = name.toLowerCase(); if (params[name] === void 0) params[name] = value; } return params; } __name(parseDispositionParams, "parseDispositionParams"); function getDecoder(charset) { let lc; while (true) { switch (charset) { case "utf-8": case "utf8": return decoders.utf8; case "latin1": case "ascii": // TODO: Make these a separate, strict decoder? case "us-ascii": case "iso-8859-1": case "iso8859-1": case "iso88591": case "iso_8859-1": case "windows-1252": case "iso_8859-1:1987": case "cp1252": case "x-cp1252": return decoders.latin1; case "utf16le": case "utf-16le": case "ucs2": case "ucs-2": return decoders.utf16le; case "base64": return decoders.base64; default: if (lc === void 0) { lc = true; charset = charset.toLowerCase(); continue; } return decoders.other.bind(charset); } } } __name(getDecoder, "getDecoder"); var decoders = { utf8: /* @__PURE__ */ __name((data, hint) => { if (data.length === 0) return ""; if (typeof data === "string") { if (hint < 2) return data; data = Buffer.from(data, "latin1"); } return data.utf8Slice(0, data.length); }, "utf8"), latin1: /* @__PURE__ */ __name((data, hint) => { if (data.length === 0) return ""; if (typeof data === "string") return data; return data.latin1Slice(0, data.length); }, "latin1"), utf16le: /* @__PURE__ */ __name((data, hint) => { if (data.length === 0) return ""; if (typeof data === "string") data = Buffer.from(data, "latin1"); return data.ucs2Slice(0, data.length); }, "utf16le"), base64: /* @__PURE__ */ __name((data, hint) => { if (data.length === 0) return ""; if (typeof data === "string") data = Buffer.from(data, "latin1"); return data.base64Slice(0, data.length); }, "base64"), other: /* @__PURE__ */ __name((data, hint) => { if (data.length === 0) return ""; if (typeof data === "string") data = Buffer.from(data, "latin1"); try { const decoder = new TextDecoder(exports2); return decoder.decode(data); } catch { } }, "other") }; function convertToUTF8(data, charset, hint) { const decode = getDecoder(charset); if (decode) return decode(data, hint); } __name(convertToUTF8, "convertToUTF8"); function basename(path) { if (typeof path !== "string") return ""; for (let i = path.length - 1; i >= 0; --i) { switch (path.charCodeAt(i)) { case 47: // '/' case 92: path = path.slice(i + 1); return path === ".." || path === "." ? "" : path; } } return path === ".." || path === "." ? "" : path; } __name(basename, "basename"); var TOKEN = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]; var QDTEXT = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]; var CHARSET = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]; var EXTENDED_VALUE = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]; var HEX_VALUES = [ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 ]; module2.exports = { basename, convertToUTF8, getDecoder, parseContentType, parseDisposition }; } }); // ../../node_modules/.pnpm/streamsearch@1.1.0/node_modules/streamsearch/lib/sbmh.js var require_sbmh = __commonJS({ "../../node_modules/.pnpm/streamsearch@1.1.0/node_modules/streamsearch/lib/sbmh.js"(exports2, module2) { "use strict"; function memcmp(buf1, pos1, buf2, pos2, num) { for (let i = 0; i < num; ++i) { if (buf1[pos1 + i] !== buf2[pos2 + i]) return false; } return true; } __name(memcmp, "memcmp"); var SBMH = class { static { __name(this, "SBMH"); } constructor(needle, cb) { if (typeof cb !== "function") throw new Error("Missing match callback"); if (typeof needle === "string") needle = Buffer.from(needle); else if (!Buffer.isBuffer(needle)) throw new Error(`Expected Buffer for needle, got ${typeof needle}`); const needleLen = needle.length; this.maxMatches = Infinity; this.matches = 0; this._cb = cb; this._lookbehindSize = 0; this._needle = needle; this._bufPos = 0; this._lookbehind = Buffer.allocUnsafe(needleLen); this._occ = [ needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen, needleLen ]; if (needleLen > 1) { for (let i = 0; i < needleLen - 1; ++i) this._occ[needle[i]] = needleLen - 1 - i; } } reset() { this.matches = 0; this._lookbehindSize = 0; this._bufPos = 0; } push(chunk, pos) { let result; if (!Buffer.isBuffer(chunk)) chunk = Buffer.from(chunk, "latin1"); const chunkLen = chunk.length; this._bufPos = pos || 0; while (result !== chunkLen && this.matches < this.maxMatches) result = feed(this, chunk); return result; } destroy() { const lbSize = this._lookbehindSize; if (lbSize) this._cb(false, this._lookbehind, 0, lbSize, false); this.reset(); } }; function feed(self2, data) { const len = data.length; const needle = self2._needle; const needleLen = needle.length; let pos = -self2._lookbehindSize; const lastNeedleCharPos = needleLen - 1; const lastNeedleChar = needle[lastNeedleCharPos]; const end = len - needleLen; const occ = self2._occ; const lookbehind = self2._lookbehind; if (pos < 0) { while (pos < 0 && pos <= end) { const nextPos = pos + lastNeedleCharPos; const ch = nextPos < 0 ? lookbehind[self2._lookbehindSize + nextPos] : data[nextPos]; if (ch === lastNeedleChar && matchNeedle(self2, data, pos, lastNeedleCharPos)) { self2._lookbehindSize = 0; ++self2.matches; if (pos > -self2._lookbehindSize) self2._cb(true, lookbehind, 0, self2._lookbehindSize + pos, false); else self2._cb(true, void 0, 0, 0, true); return self2._bufPos = pos + needleLen; } pos += occ[ch]; } while (pos < 0 && !matchNeedle(self2, data, pos, len - pos)) ++pos; if (pos < 0) { const bytesToCutOff = self2._lookbehindSize + pos; if (bytesToCutOff > 0) { self2._cb(false, lookbehind, 0, bytesToCutOff, false); } self2._lookbehindSize -= bytesToCutOff; lookbehind.copy(lookbehind, 0, bytesToCutOff, self2._lookbehindSize); lookbehind.set(data, self2._lookbehindSize); self2._lookbehindSize += len; self2._bufPos = len; return len; } self2._cb(false, lookbehind, 0, self2._lookbehindSize, false); self2._lookbehindSize = 0; } pos += self2._bufPos; const firstNeedleChar = needle[0]; while (pos <= end) { const ch = data[pos + lastNeedleCharPos]; if (ch === lastNeedleChar && data[pos] === firstNeedleChar && memcmp(needle, 0, data, pos, lastNeedleCharPos)) { ++self2.matches; if (pos > 0) self2._cb(true, data, self2._bufPos, pos, true); else self2._cb(true, void 0, 0, 0, true); return self2._bufPos = pos + needleLen; } pos += occ[ch]; } while (pos < len) { if (data[pos] !== firstNeedleChar || !memcmp(data, pos, needle, 0, len - pos)) { ++pos; continue; } data.copy(lookbehind, 0, pos, len); self2._lookbehindSize = len - pos; break; } if (pos > 0) self2._cb(false, data, self2._bufPos, pos < len ? pos : len, true); self2._bufPos = len; return len; } __name(feed, "feed"); function matchNeedle(self2, data, pos, len) { const lb = self2._lookbehind; const lbSize = self2._lookbehindSize; const needle = self2._needle; for (let i = 0; i < len; ++i, ++pos) { const ch = pos < 0 ? lb[lbSize + pos] : data[pos]; if (ch !== needle[i]) return false; } return true; } __name(matchNeedle, "matchNeedle"); module2.exports = SBMH; } }); // ../../node_modules/.pnpm/busboy@1.6.0/node_modules/busboy/lib/types/multipart.js var require_multipart = __commonJS({ "../../node_modules/.pnpm/busboy@1.6.0/node_modules/busboy/lib/types/multipart.js"(exports2, module2) { "use strict"; var { Readable, Writable } = require("stream"); var StreamSearch = require_sbmh(); var { basename, convertToUTF8, getDecoder, parseContentType, parseDisposition } = require_utils12(); var BUF_CRLF = Buffer.from("\r\n"); var BUF_CR = Buffer.from("\r"); var BUF_DASH = Buffer.from("-"); function noop() { } __name(noop, "noop"); var MAX_HEADER_PAIRS = 2e3; var MAX_HEADER_SIZE = 16 * 1024; var HPARSER_NAME = 0; var HPARSER_PRE_OWS = 1; var HPARSER_VALUE = 2; var HeaderParser = class { static { __name(this, "HeaderParser"); } constructor(cb) { this.header = /* @__PURE__ */ Object.create(null); this.pairCount = 0; this.byteCount = 0; this.state = HPARSER_NAME; this.name = ""; this.value = ""; this.crlf = 0; this.cb = cb; } reset() { this.header = /* @__PURE__ */ Object.create(null); this.pairCount = 0; this.byteCount = 0; this.state = HPARSER_NAME; this.name = ""; this.value = ""; this.crlf = 0; } push(chunk, pos, end) { let start = pos; while (pos < end) { switch (this.state) { case HPARSER_NAME: { let done = false; for (; pos < end; ++pos) { if (this.byteCount === MAX_HEADER_SIZE) return -1; ++this.byteCount; const code = chunk[pos]; if (TOKEN[code] !== 1) { if (code !== 58) return -1; this.name += chunk.latin1Slice(start, pos); if (this.name.length === 0) return -1; ++pos; done = true; this.state = HPARSER_PRE_OWS; break; } } if (!done) { this.name += chunk.latin1Slice(start, pos); break; } } case HPARSER_PRE_OWS: { let done = false; for (; pos < end; ++pos) { if (this.byteCount === MAX_HEADER_SIZE) return -1; ++this.byteCount; const code = chunk[pos]; if (code !== 32 && code !== 9) { start = pos; done = true; this.state = HPARSER_VALUE; break; } } if (!done) break; } case HPARSER_VALUE: switch (this.crlf) { case 0: for (; pos < end; ++pos) { if (this.byteCount === MAX_HEADER_SIZE) return -1; ++this.byteCount; const code = chunk[pos]; if (FIELD_VCHAR[code] !== 1) { if (code !== 13) return -1; ++this.crlf; break; } } this.value += chunk.latin1Slice(start, pos++); break; case 1: if (this.byteCount === MAX_HEADER_SIZE) return -1; ++this.byteCount; if (chunk[pos++] !== 10) return -1; ++this.crlf; break; case 2: { if (this.byteCount === MAX_HEADER_SIZE) return -1; ++this.byteCount; const code = chunk[pos]; if (code === 32 || code === 9) { start = pos; this.crlf = 0; } else { if (++this.pairCount < MAX_HEADER_PAIRS) { this.name = this.name.toLowerCase(); if (this.header[this.name] === void 0) this.header[this.name] = [this.value]; else this.header[this.name].push(this.value); } if (code === 13) { ++this.crlf; ++pos; } else { start = pos; this.crlf = 0; this.state = HPARSER_NAME; this.name = ""; this.value = ""; } } break; } case 3: { if (this.byteCount === MAX_HEADER_SIZE) return -1; ++this.byteCount; if (chunk[pos++] !== 10) return -1; const header = this.header; this.reset(); this.cb(header); return pos; } } break; } } return pos; } }; var FileStream = class extends Readable { static { __name(this, "FileStream"); } constructor(opts, owner) { super(opts); this.truncated = false; this._readcb = null; this.once("end", () => { this._read(); if (--owner._fileEndsLeft === 0 && owner._finalcb) { const cb = owner._finalcb; owner._finalcb = null; process.nextTick(cb); } }); } _read(n) { const cb = this._readcb; if (cb) { this._readcb = null; cb(); } } }; var ignoreData = { push: /* @__PURE__ */ __name((chunk, pos) => { }, "push"), destroy: /* @__PURE__ */ __name(() => { }, "destroy") }; function callAndUnsetCb(self2, err) { const cb = self2._writecb; self2._writecb = null; if (err) self2.destroy(err); else if (cb) cb(); } __name(callAndUnsetCb, "callAndUnsetCb"); function nullDecoder(val, hint) { return val; } __name(nullDecoder, "nullDecoder"); var Multipart = class extends Writable { static { __name(this, "Multipart"); } constructor(cfg) { const streamOpts = { autoDestroy: true, emitClose: true, highWaterMark: typeof cfg.highWaterMark === "number" ? cfg.highWaterMark : void 0 }; super(streamOpts); if (!cfg.conType.params || typeof cfg.conType.params.boundary !== "string") throw new Error("Multipart: Boundary not found"); const boundary = cfg.conType.params.boundary; const paramDecoder = typeof cfg.defParamCharset === "string" && cfg.defParamCharset ? getDecoder(cfg.defParamCharset) : nullDecoder; const defCharset = cfg.defCharset || "utf8"; const preservePath = cfg.preservePath; const fileOpts = { autoDestroy: true, emitClose: true, highWaterMark: typeof cfg.fileHwm === "number" ? cfg.fileHwm : void 0 }; const limits = cfg.limits; const fieldSizeLimit = limits && typeof limits.fieldSize === "number" ? limits.fieldSize : 1 * 1024 * 1024; const fileSizeLimit = limits && typeof limits.fileSize === "number" ? limits.fileSize : Infinity; const filesLimit = limits && typeof limits.files === "number" ? limits.files : Infinity; const fieldsLimit = limits && typeof limits.fields === "number" ? limits.fields : Infinity; const partsLimit = limits && typeof limits.parts === "number" ? limits.parts : Infinity; let parts = -1; let fields = 0; let files = 0; let skipPart = false; this._fileEndsLeft = 0; this._fileStream = void 0; this._complete = false; let fileSize = 0; let field; let fieldSize = 0; let partCharset; let partEncoding; let partType; let partName; let partTruncated = false; let hitFilesLimit = false; let hitFieldsLimit = false; this._hparser = null; const hparser = new HeaderParser((header) => { this._hparser = null; skipPart = false; partType = "text/plain"; partCharset = defCharset; partEncoding = "7bit"; partName = void 0; partTruncated = false; let filename; if (!header["content-disposition"]) { skipPart = true; return; } const disp = parseDisposition( header["content-disposition"][0], paramDecoder ); if (!disp || disp.type !== "form-data") { skipPart = true; return; } if (disp.params) { if (disp.params.name) partName = disp.params.name; if (disp.params["filename*"]) filename = disp.params["filename*"]; else if (disp.params.filename) filename = disp.params.filename; if (filename !== void 0 && !preservePath) filename = basename(filename); } if (header["content-type"]) { const conType = parseContentType(header["content-type"][0]); if (conType) { partType = `${conType.type}/${conType.subtype}`; if (conType.params && typeof conType.params.charset === "string") partCharset = conType.params.charset.toLowerCase(); } } if (header["content-transfer-encoding"]) partEncoding = header["content-transfer-encoding"][0].toLowerCase(); if (partType === "application/octet-stream" || filename !== void 0) { if (files === filesLimit) { if (!hitFilesLimit) { hitFilesLimit = true; this.emit("filesLimit"); } skipPart = true; return; } ++files; if (this.listenerCount("file") === 0) { skipPart = true; return; } fileSize = 0; this._fileStream = new FileStream(fileOpts, this); ++this._fileEndsLeft; this.emit( "file", partName, this._fileStream, { filename, encoding: partEncoding, mimeType: partType } ); } else { if (fields === fieldsLimit) { if (!hitFieldsLimit) { hitFieldsLimit = true; this.emit("fieldsLimit"); } skipPart = true; return; } ++fields; if (this.listenerCount("field") === 0) { skipPart = true; return; } field = []; fieldSize = 0; } }); let matchPostBoundary = 0; const ssCb = /* @__PURE__ */ __name((isMatch, data, start, end, isDataSafe) => { retrydata: while (data) { if (this._hparser !== null) { const ret2 = this._hparser.push(data, start, end); if (ret2 === -1) { this._hparser = null; hparser.reset(); this.emit("error", new Error("Malformed part header")); break; } start = ret2; } if (start === end) break; if (matchPostBoundary !== 0) { if (matchPostBoundary === 1) { switch (data[start]) { case 45: matchPostBoundary = 2; ++start; break; case 13: matchPostBoundary = 3; ++start; break; default: matchPostBoundary = 0; } if (start === end) return; } if (matchPostBoundary === 2) { matchPostBoundary = 0; if (data[start] === 45) { this._complete = true; this._bparser = ignoreData; return; } const writecb = this._writecb; this._writecb = noop; ssCb(false, BUF_DASH, 0, 1, false); this._writecb = writecb; } else if (matchPostBoundary === 3) { matchPostBoundary = 0; if (data[start] === 10) { ++start; if (parts >= partsLimit) break; this._hparser = hparser; if (start === end) break; continue retrydata; } else { const writecb = this._writecb; this._writecb = noop; ssCb(false, BUF_CR, 0, 1, false); this._writecb = writecb; } } } if (!skipPart) { if (this._fileStream) { let chunk; const actualLen = Math.min(end - start, fileSizeLimit - fileSize); if (!isDataSafe) { chunk = Buffer.allocUnsafe(actualLen); data.copy(chunk, 0, start, start + actualLen); } else { chunk = data.slice(start, start + actualLen); } fileSize += chunk.length; if (fileSize === fileSizeLimit) { if (chunk.length > 0) this._fileStream.push(chunk); this._fileStream.emit("limit"); this._fileStream.truncated = true; skipPart = true; } else if (!this._fileStream.push(chunk)) { if (this._writecb) this._fileStream._readcb = this._writecb; this._writecb = null; } } else if (field !== void 0) { let chunk; const actualLen = Math.min( end - start, fieldSizeLimit - fieldSize ); if (!isDataSafe) { chunk = Buffer.allocUnsafe(actualLen); data.copy(chunk, 0, start, start + actualLen); } else { chunk = data.slice(start, start + actualLen); } fieldSize += actualLen; field.push(chunk); if (fieldSize === fieldSizeLimit) { skipPart = true; partTruncated = true; } } } break; } if (isMatch) { matchPostBoundary = 1; if (this._fileStream) { this._fileStream.push(null); this._fileStream = null; } else if (field !== void 0) { let data2; switch (field.length) { case 0: data2 = ""; break; case 1: data2 = convertToUTF8(field[0], partCharset, 0); break; default: data2 = convertToUTF8( Buffer.concat(field, fieldSize), partCharset, 0 ); } field = void 0; fieldSize = 0; this.emit( "field", partName, data2, { nameTruncated: false, valueTruncated: partTruncated, encoding: partEncoding, mimeType: partType } ); } if (++parts === partsLimit) this.emit("partsLimit"); } }, "ssCb"); this._bparser = new StreamSearch(`\r --${boundary}`, ssCb); this._writecb = null; this._finalcb = null; this.write(BUF_CRLF); } static detect(conType) { return conType.type === "multipart" && conType.subtype === "form-data"; } _write(chunk, enc, cb) { this._writecb = cb; this._bparser.push(chunk, 0); if (this._writecb) callAndUnsetCb(this); } _destroy(err, cb) { this._hparser = null; this._bparser = ignoreData; if (!err) err = checkEndState(this); const fileStream = this._fileStream; if (fileStream) { this._fileStream = null; fileStream.destroy(err); } cb(err); } _final(cb) { this._bparser.destroy(); if (!this._complete) return cb(new Error("Unexpected end of form")); if (this._fileEndsLeft) this._finalcb = finalcb.bind(null, this, cb); else finalcb(this, cb); } }; function finalcb(self2, cb, err) { if (err) return cb(err); err = checkEndState(self2); cb(err); } __name(finalcb, "finalcb"); function checkEndState(self2) { if (self2._hparser) return new Error("Malformed part header"); const fileStream = self2._fileStream; if (fileStream) { self2._fileStream = null; fileStream.destroy(new Error("Unexpected end of file")); } if (!self2._complete) return new Error("Unexpected end of form"); } __name(checkEndState, "checkEndState"); var TOKEN = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]; var FIELD_VCHAR = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]; module2.exports = Multipart; } }); // ../../node_modules/.pnpm/busboy@1.6.0/node_modules/busboy/lib/types/urlencoded.js var require_urlencoded2 = __commonJS({ "../../node_modules/.pnpm/busboy@1.6.0/node_modules/busboy/lib/types/urlencoded.js"(exports2, module2) { "use strict"; var { Writable } = require("stream"); var { getDecoder } = require_utils12(); var URLEncoded = class extends Writable { static { __name(this, "URLEncoded"); } constructor(cfg) { const streamOpts = { autoDestroy: true, emitClose: true, highWaterMark: typeof cfg.highWaterMark === "number" ? cfg.highWaterMark : void 0 }; super(streamOpts); let charset = cfg.defCharset || "utf8"; if (cfg.conType.params && typeof cfg.conType.params.charset === "string") charset = cfg.conType.params.charset; this.charset = charset; const limits = cfg.limits; this.fieldSizeLimit = limits && typeof limits.fieldSize === "number" ? limits.fieldSize : 1 * 1024 * 1024; this.fieldsLimit = limits && typeof limits.fields === "number" ? limits.fields : Infinity; this.fieldNameSizeLimit = limits && typeof limits.fieldNameSize === "number" ? limits.fieldNameSize : 100; this._inKey = true; this._keyTrunc = false; this._valTrunc = false; this._bytesKey = 0; this._bytesVal = 0; this._fields = 0; this._key = ""; this._val = ""; this._byte = -2; this._lastPos = 0; this._encode = 0; this._decoder = getDecoder(charset); } static detect(conType) { return conType.type === "application" && conType.subtype === "x-www-form-urlencoded"; } _write(chunk, enc, cb) { if (this._fields >= this.fieldsLimit) return cb(); let i = 0; const len = chunk.length; this._lastPos = 0; if (this._byte !== -2) { i = readPctEnc(this, chunk, i, len); if (i === -1) return cb(new Error("Malformed urlencoded form")); if (i >= len) return cb(); if (this._inKey) ++this._bytesKey; else ++this._bytesVal; } main: while (i < len) { if (this._inKey) { i = skipKeyBytes(this, chunk, i, len); while (i < len) { switch (chunk[i]) { case 61: if (this._lastPos < i) this._key += chunk.latin1Slice(this._lastPos, i); this._lastPos = ++i; this._key = this._decoder(this._key, this._encode); this._encode = 0; this._inKey = false; continue main; case 38: if (this._lastPos < i) this._key += chunk.latin1Slice(this._lastPos, i); this._lastPos = ++i; this._key = this._decoder(this._key, this._encode); this._encode = 0; if (this._bytesKey > 0) { this.emit( "field", this._key, "", { nameTruncated: this._keyTrunc, valueTruncated: false, encoding: this.charset, mimeType: "text/plain" } ); } this._key = ""; this._val = ""; this._keyTrunc = false; this._valTrunc = false; this._bytesKey = 0; this._bytesVal = 0; if (++this._fields >= this.fieldsLimit) { this.emit("fieldsLimit"); return cb(); } continue; case 43: if (this._lastPos < i) this._key += chunk.latin1Slice(this._lastPos, i); this._key += " "; this._lastPos = i + 1; break; case 37: if (this._encode === 0) this._encode = 1; if (this._lastPos < i) this._key += chunk.latin1Slice(this._lastPos, i); this._lastPos = i + 1; this._byte = -1; i = readPctEnc(this, chunk, i + 1, len); if (i === -1) return cb(new Error("Malformed urlencoded form")); if (i >= len) return cb(); ++this._bytesKey; i = skipKeyBytes(this, chunk, i, len); continue; } ++i; ++this._bytesKey; i = skipKeyBytes(this, chunk, i, len); } if (this._lastPos < i) this._key += chunk.latin1Slice(this._lastPos, i); } else { i = skipValBytes(this, chunk, i, len); while (i < len) { switch (chunk[i]) { case 38: if (this._lastPos < i) this._val += chunk.latin1Slice(this._lastPos, i); this._lastPos = ++i; this._inKey = true; this._val = this._decoder(this._val, this._encode); this._encode = 0; if (this._bytesKey > 0 || this._bytesVal > 0) { this.emit( "field", this._key, this._val, { nameTruncated: this._keyTrunc, valueTruncated: this._valTrunc, encoding: this.charset, mimeType: "text/plain" } ); } this._key = ""; this._val = ""; this._keyTrunc = false; this._valTrunc = false; this._bytesKey = 0; this._bytesVal = 0; if (++this._fields >= this.fieldsLimit) { this.emit("fieldsLimit"); return cb(); } continue main; case 43: if (this._lastPos < i) this._val += chunk.latin1Slice(this._lastPos, i); this._val += " "; this._lastPos = i + 1; break; case 37: if (this._encode === 0) this._encode = 1; if (this._lastPos < i) this._val += chunk.latin1Slice(this._lastPos, i); this._lastPos = i + 1; this._byte = -1; i = readPctEnc(this, chunk, i + 1, len); if (i === -1) return cb(new Error("Malformed urlencoded form")); if (i >= len) return cb(); ++this._bytesVal; i = skipValBytes(this, chunk, i, len); continue; } ++i; ++this._bytesVal; i = skipValBytes(this, chunk, i, len); } if (this._lastPos < i) this._val += chunk.latin1Slice(this._lastPos, i); } } cb(); } _final(cb) { if (this._byte !== -2) return cb(new Error("Malformed urlencoded form")); if (!this._inKey || this._bytesKey > 0 || this._bytesVal > 0) { if (this._inKey) this._key = this._decoder(this._key, this._encode); else this._val = this._decoder(this._val, this._encode); this.emit( "field", this._key, this._val, { nameTruncated: this._keyTrunc, valueTruncated: this._valTrunc, encoding: this.charset, mimeType: "text/plain" } ); } cb(); } }; function readPctEnc(self2, chunk, pos, len) { if (pos >= len) return len; if (self2._byte === -1) { const hexUpper = HEX_VALUES[chunk[pos++]]; if (hexUpper === -1) return -1; if (hexUpper >= 8) self2._encode = 2; if (pos < len) { const hexLower = HEX_VALUES[chunk[pos++]]; if (hexLower === -1) return -1; if (self2._inKey) self2._key += String.fromCharCode((hexUpper << 4) + hexLower); else self2._val += String.fromCharCode((hexUpper << 4) + hexLower); self2._byte = -2; self2._lastPos = pos; } else { self2._byte = hexUpper; } } else { const hexLower = HEX_VALUES[chunk[pos++]]; if (hexLower === -1) return -1; if (self2._inKey) self2._key += String.fromCharCode((self2._byte << 4) + hexLower); else self2._val += String.fromCharCode((self2._byte << 4) + hexLower); self2._byte = -2; self2._lastPos = pos; } return pos; } __name(readPctEnc, "readPctEnc"); function skipKeyBytes(self2, chunk, pos, len) { if (self2._bytesKey > self2.fieldNameSizeLimit) { if (!self2._keyTrunc) { if (self2._lastPos < pos) self2._key += chunk.latin1Slice(self2._lastPos, pos - 1); } self2._keyTrunc = true; for (; pos < len; ++pos) { const code = chunk[pos]; if (code === 61 || code === 38) break; ++self2._bytesKey; } self2._lastPos = pos; } return pos; } __name(skipKeyBytes, "skipKeyBytes"); function skipValBytes(self2, chunk, pos, len) { if (self2._bytesVal > self2.fieldSizeLimit) { if (!self2._valTrunc) { if (self2._lastPos < pos) self2._val += chunk.latin1Slice(self2._lastPos, pos - 1); } self2._valTrunc = true; for (; pos < len; ++pos) { if (chunk[pos] === 38) break; ++self2._bytesVal; } self2._lastPos = pos; } return pos; } __name(skipValBytes, "skipValBytes"); var HEX_VALUES = [ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 ]; module2.exports = URLEncoded; } }); // ../../node_modules/.pnpm/busboy@1.6.0/node_modules/busboy/lib/index.js var require_lib5 = __commonJS({ "../../node_modules/.pnpm/busboy@1.6.0/node_modules/busboy/lib/index.js"(exports2, module2) { "use strict"; var { parseContentType } = require_utils12(); function getInstance(cfg) { const headers = cfg.headers; const conType = parseContentType(headers["content-type"]); if (!conType) throw new Error("Malformed content type"); for (const type of TYPES) { const matched = type.detect(conType); if (!matched) continue; const instanceCfg = { limits: cfg.limits, headers, conType, highWaterMark: void 0, fileHwm: void 0, defCharset: void 0, defParamCharset: void 0, preservePath: false }; if (cfg.highWaterMark) instanceCfg.highWaterMark = cfg.highWaterMark; if (cfg.fileHwm) instanceCfg.fileHwm = cfg.fileHwm; instanceCfg.defCharset = cfg.defCharset; instanceCfg.defParamCharset = cfg.defParamCharset; instanceCfg.preservePath = cfg.preservePath; return new type(instanceCfg); } throw new Error(`Unsupported content type: ${headers["content-type"]}`); } __name(getInstance, "getInstance"); var TYPES = [ require_multipart(), require_urlencoded2() ].filter(function(typemod) { return typeof typemod.detect === "function"; }); module2.exports = (cfg) => { if (typeof cfg !== "object" || cfg === null) cfg = {}; if (typeof cfg.headers !== "object" || cfg.headers === null || typeof cfg.headers["content-type"] !== "string") { throw new Error("Missing Content-Type"); } return getInstance(cfg); }; } }); // ../../node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/immutable.js var require_immutable = __commonJS({ "../../node_modules/.pnpm/xtend@4.0.2/node_modules/xtend/immutable.js"(exports2, module2) { module2.exports = extend; var hasOwnProperty = Object.prototype.hasOwnProperty; function extend() { var target = {}; for (var i = 0; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; } __name(extend, "extend"); } }); // ../../node_modules/.pnpm/append-field@1.0.0/node_modules/append-field/lib/parse-path.js var require_parse_path = __commonJS({ "../../node_modules/.pnpm/append-field@1.0.0/node_modules/append-field/lib/parse-path.js"(exports2, module2) { var reFirstKey = /^[^\[]*/; var reDigitPath = /^\[(\d+)\]/; var reNormalPath = /^\[([^\]]+)\]/; function parsePath(key) { function failure() { return [{ type: "object", key, last: true }]; } __name(failure, "failure"); var firstKey = reFirstKey.exec(key)[0]; if (!firstKey) return failure(); var len = key.length; var pos = firstKey.length; var tail = { type: "object", key: firstKey }; var steps = [tail]; while (pos < len) { var m; if (key[pos] === "[" && key[pos + 1] === "]") { pos += 2; tail.append = true; if (pos !== len) return failure(); continue; } m = reDigitPath.exec(key.substring(pos)); if (m !== null) { pos += m[0].length; tail.nextType = "array"; tail = { type: "array", key: parseInt(m[1], 10) }; steps.push(tail); continue; } m = reNormalPath.exec(key.substring(pos)); if (m !== null) { pos += m[0].length; tail.nextType = "object"; tail = { type: "object", key: m[1] }; steps.push(tail); continue; } return failure(); } tail.last = true; return steps; } __name(parsePath, "parsePath"); module2.exports = parsePath; } }); // ../../node_modules/.pnpm/append-field@1.0.0/node_modules/append-field/lib/set-value.js var require_set_value = __commonJS({ "../../node_modules/.pnpm/append-field@1.0.0/node_modules/append-field/lib/set-value.js"(exports2, module2) { function valueType(value) { if (value === void 0) return "undefined"; if (Array.isArray(value)) return "array"; if (typeof value === "object") return "object"; return "scalar"; } __name(valueType, "valueType"); function setLastValue(context, step, currentValue, entryValue) { switch (valueType(currentValue)) { case "undefined": if (step.append) { context[step.key] = [entryValue]; } else { context[step.key] = entryValue; } break; case "array": context[step.key].push(entryValue); break; case "object": return setLastValue(currentValue, { type: "object", key: "", last: true }, currentValue[""], entryValue); case "scalar": context[step.key] = [context[step.key], entryValue]; break; } return context; } __name(setLastValue, "setLastValue"); function setValue(context, step, currentValue, entryValue) { if (step.last) return setLastValue(context, step, currentValue, entryValue); var obj2; switch (valueType(currentValue)) { case "undefined": if (step.nextType === "array") { context[step.key] = []; } else { context[step.key] = /* @__PURE__ */ Object.create(null); } return context[step.key]; case "object": return context[step.key]; case "array": if (step.nextType === "array") { return currentValue; } obj2 = /* @__PURE__ */ Object.create(null); context[step.key] = obj2; currentValue.forEach(function(item, i) { if (item !== void 0) obj2["" + i] = item; }); return obj2; case "scalar": obj2 = /* @__PURE__ */ Object.create(null); obj2[""] = currentValue; context[step.key] = obj2; return obj2; } } __name(setValue, "setValue"); module2.exports = setValue; } }); // ../../node_modules/.pnpm/append-field@1.0.0/node_modules/append-field/index.js var require_append_field = __commonJS({ "../../node_modules/.pnpm/append-field@1.0.0/node_modules/append-field/index.js"(exports2, module2) { var parsePath = require_parse_path(); var setValue = require_set_value(); function appendField(store, key, value) { var steps = parsePath(key); steps.reduce(function(context, step) { return setValue(context, step, context[step.key], value); }, store); } __name(appendField, "appendField"); module2.exports = appendField; } }); // ../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/lib/counter.js var require_counter = __commonJS({ "../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/lib/counter.js"(exports2, module2) { var EventEmitter = require("events").EventEmitter; function Counter() { EventEmitter.call(this); this.value = 0; } __name(Counter, "Counter"); Counter.prototype = Object.create(EventEmitter.prototype); Counter.prototype.increment = /* @__PURE__ */ __name(function increment() { this.value++; }, "increment"); Counter.prototype.decrement = /* @__PURE__ */ __name(function decrement() { if (--this.value === 0) this.emit("zero"); }, "decrement"); Counter.prototype.isZero = /* @__PURE__ */ __name(function isZero() { return this.value === 0; }, "isZero"); Counter.prototype.onceZero = /* @__PURE__ */ __name(function onceZero(fn) { if (this.isZero()) return fn(); this.once("zero", fn); }, "onceZero"); module2.exports = Counter; } }); // ../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/lib/multer-error.js var require_multer_error = __commonJS({ "../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/lib/multer-error.js"(exports2, module2) { var util2 = require("util"); var errorMessages = { LIMIT_PART_COUNT: "Too many parts", LIMIT_FILE_SIZE: "File too large", LIMIT_FILE_COUNT: "Too many files", LIMIT_FIELD_KEY: "Field name too long", LIMIT_FIELD_VALUE: "Field value too long", LIMIT_FIELD_COUNT: "Too many fields", LIMIT_UNEXPECTED_FILE: "Unexpected field", MISSING_FIELD_NAME: "Field name missing" }; function MulterError(code, field) { Error.captureStackTrace(this, this.constructor); this.name = this.constructor.name; this.message = errorMessages[code]; this.code = code; if (field) this.field = field; } __name(MulterError, "MulterError"); util2.inherits(MulterError, Error); module2.exports = MulterError; } }); // ../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/lib/file-appender.js var require_file_appender = __commonJS({ "../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/lib/file-appender.js"(exports2, module2) { var objectAssign = require_object_assign(); function arrayRemove(arr, item) { var idx = arr.indexOf(item); if (~idx) arr.splice(idx, 1); } __name(arrayRemove, "arrayRemove"); function FileAppender(strategy, req) { this.strategy = strategy; this.req = req; switch (strategy) { case "NONE": break; case "VALUE": break; case "ARRAY": req.files = []; break; case "OBJECT": req.files = /* @__PURE__ */ Object.create(null); break; default: throw new Error("Unknown file strategy: " + strategy); } } __name(FileAppender, "FileAppender"); FileAppender.prototype.insertPlaceholder = function(file2) { var placeholder = { fieldname: file2.fieldname }; switch (this.strategy) { case "NONE": break; case "VALUE": break; case "ARRAY": this.req.files.push(placeholder); break; case "OBJECT": if (this.req.files[file2.fieldname]) { this.req.files[file2.fieldname].push(placeholder); } else { this.req.files[file2.fieldname] = [placeholder]; } break; } return placeholder; }; FileAppender.prototype.removePlaceholder = function(placeholder) { switch (this.strategy) { case "NONE": break; case "VALUE": break; case "ARRAY": arrayRemove(this.req.files, placeholder); break; case "OBJECT": if (this.req.files[placeholder.fieldname].length === 1) { delete this.req.files[placeholder.fieldname]; } else { arrayRemove(this.req.files[placeholder.fieldname], placeholder); } break; } }; FileAppender.prototype.replacePlaceholder = function(placeholder, file2) { if (this.strategy === "VALUE") { this.req.file = file2; return; } delete placeholder.fieldname; objectAssign(placeholder, file2); }; module2.exports = FileAppender; } }); // ../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/lib/remove-uploaded-files.js var require_remove_uploaded_files = __commonJS({ "../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/lib/remove-uploaded-files.js"(exports2, module2) { function removeUploadedFiles(uploadedFiles, remove, cb) { var length = uploadedFiles.length; var errors = []; if (length === 0) return cb(null, errors); function handleFile(idx) { var file2 = uploadedFiles[idx]; remove(file2, function(err) { if (err) { err.file = file2; err.field = file2.fieldname; errors.push(err); } if (idx < length - 1) { handleFile(idx + 1); } else { cb(null, errors); } }); } __name(handleFile, "handleFile"); handleFile(0); } __name(removeUploadedFiles, "removeUploadedFiles"); module2.exports = removeUploadedFiles; } }); // ../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/lib/make-middleware.js var require_make_middleware = __commonJS({ "../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/lib/make-middleware.js"(exports2, module2) { var is = require_type_is(); var Busboy = require_lib5(); var extend = require_immutable(); var appendField = require_append_field(); var Counter = require_counter(); var MulterError = require_multer_error(); var FileAppender = require_file_appender(); var removeUploadedFiles = require_remove_uploaded_files(); function drainStream(stream) { stream.on("readable", () => { while (stream.read() !== null) { } }); } __name(drainStream, "drainStream"); function makeMiddleware(setup) { return /* @__PURE__ */ __name(function multerMiddleware(req, res, next) { if (!is(req, ["multipart"])) return next(); var options = setup(); var limits = options.limits; var storage = options.storage; var fileFilter = options.fileFilter; var fileStrategy = options.fileStrategy; var preservePath = options.preservePath; req.body = /* @__PURE__ */ Object.create(null); req.on("error", function(err) { abortWithError(err); }); var busboy; try { busboy = Busboy({ headers: req.headers, limits, preservePath }); } catch (err) { return next(err); } var appender = new FileAppender(fileStrategy, req); var isDone = false; var readFinished = false; var errorOccured = false; var pendingWrites = new Counter(); var uploadedFiles = []; function done(err) { if (isDone) return; isDone = true; req.unpipe(busboy); drainStream(req); req.resume(); setImmediate(() => { busboy.removeAllListeners(); }); next(err); } __name(done, "done"); function indicateDone() { if (readFinished && pendingWrites.isZero() && !errorOccured) done(); } __name(indicateDone, "indicateDone"); function abortWithError(uploadError) { if (errorOccured) return; errorOccured = true; pendingWrites.onceZero(function() { function remove(file2, cb) { storage._removeFile(req, file2, cb); } __name(remove, "remove"); removeUploadedFiles(uploadedFiles, remove, function(err, storageErrors) { if (err) return done(err); uploadError.storageErrors = storageErrors; done(uploadError); }); }); } __name(abortWithError, "abortWithError"); function abortWithCode(code, optionalField) { abortWithError(new MulterError(code, optionalField)); } __name(abortWithCode, "abortWithCode"); busboy.on("field", function(fieldname, value, { nameTruncated, valueTruncated }) { if (fieldname == null) return abortWithCode("MISSING_FIELD_NAME"); if (nameTruncated) return abortWithCode("LIMIT_FIELD_KEY"); if (valueTruncated) return abortWithCode("LIMIT_FIELD_VALUE", fieldname); if (limits && Object.prototype.hasOwnProperty.call(limits, "fieldNameSize")) { if (fieldname.length > limits.fieldNameSize) return abortWithCode("LIMIT_FIELD_KEY"); } appendField(req.body, fieldname, value); }); busboy.on("file", function(fieldname, fileStream, { filename, encoding, mimeType }) { var pendingWritesIncremented = false; fileStream.on("error", function(err) { if (pendingWritesIncremented) { pendingWrites.decrement(); } abortWithError(err); }); if (fieldname == null) return abortWithCode("MISSING_FIELD_NAME"); if (!filename) return fileStream.resume(); if (limits && Object.prototype.hasOwnProperty.call(limits, "fieldNameSize")) { if (fieldname.length > limits.fieldNameSize) return abortWithCode("LIMIT_FIELD_KEY"); } var file2 = { fieldname, originalname: filename, encoding, mimetype: mimeType }; var placeholder = appender.insertPlaceholder(file2); fileFilter(req, file2, function(err, includeFile) { if (err) { appender.removePlaceholder(placeholder); return abortWithError(err); } if (!includeFile) { appender.removePlaceholder(placeholder); return fileStream.resume(); } var aborting = false; pendingWritesIncremented = true; pendingWrites.increment(); Object.defineProperty(file2, "stream", { configurable: true, enumerable: false, value: fileStream }); fileStream.on("limit", function() { aborting = true; abortWithCode("LIMIT_FILE_SIZE", fieldname); }); storage._handleFile(req, file2, function(err2, info) { if (aborting) { appender.removePlaceholder(placeholder); uploadedFiles.push(extend(file2, info)); return pendingWrites.decrement(); } if (err2) { appender.removePlaceholder(placeholder); pendingWrites.decrement(); return abortWithError(err2); } var fileInfo = extend(file2, info); appender.replacePlaceholder(placeholder, fileInfo); uploadedFiles.push(fileInfo); pendingWrites.decrement(); indicateDone(); }); }); }); busboy.on("error", function(err) { abortWithError(err); }); busboy.on("partsLimit", function() { abortWithCode("LIMIT_PART_COUNT"); }); busboy.on("filesLimit", function() { abortWithCode("LIMIT_FILE_COUNT"); }); busboy.on("fieldsLimit", function() { abortWithCode("LIMIT_FIELD_COUNT"); }); busboy.on("close", function() { readFinished = true; indicateDone(); }); req.pipe(busboy); }, "multerMiddleware"); } __name(makeMiddleware, "makeMiddleware"); module2.exports = makeMiddleware; } }); // ../../node_modules/.pnpm/mkdirp@0.5.6/node_modules/mkdirp/index.js var require_mkdirp = __commonJS({ "../../node_modules/.pnpm/mkdirp@0.5.6/node_modules/mkdirp/index.js"(exports2, module2) { var path = require("path"); var fs = require("fs"); var _0777 = parseInt("0777", 8); module2.exports = mkdirP.mkdirp = mkdirP.mkdirP = mkdirP; function mkdirP(p, opts, f, made) { if (typeof opts === "function") { f = opts; opts = {}; } else if (!opts || typeof opts !== "object") { opts = { mode: opts }; } var mode = opts.mode; var xfs = opts.fs || fs; if (mode === void 0) { mode = _0777; } if (!made) made = null; var cb = f || /* istanbul ignore next */ function() { }; p = path.resolve(p); xfs.mkdir(p, mode, function(er) { if (!er) { made = made || p; return cb(null, made); } switch (er.code) { case "ENOENT": if (path.dirname(p) === p) return cb(er); mkdirP(path.dirname(p), opts, function(er2, made2) { if (er2) cb(er2, made2); else mkdirP(p, opts, cb, made2); }); break; // In the case of any other error, just see if there's a dir // there already. If so, then hooray! If not, then something // is borked. default: xfs.stat(p, function(er2, stat) { if (er2 || !stat.isDirectory()) cb(er, made); else cb(null, made); }); break; } }); } __name(mkdirP, "mkdirP"); mkdirP.sync = /* @__PURE__ */ __name(function sync(p, opts, made) { if (!opts || typeof opts !== "object") { opts = { mode: opts }; } var mode = opts.mode; var xfs = opts.fs || fs; if (mode === void 0) { mode = _0777; } if (!made) made = null; p = path.resolve(p); try { xfs.mkdirSync(p, mode); made = made || p; } catch (err0) { switch (err0.code) { case "ENOENT": made = sync(path.dirname(p), opts, made); sync(p, opts, made); break; // In the case of any other error, just see if there's a dir // there already. If so, then hooray! If not, then something // is borked. default: var stat; try { stat = xfs.statSync(p); } catch (err1) { throw err0; } if (!stat.isDirectory()) throw err0; break; } } return made; }, "sync"); } }); // ../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/storage/disk.js var require_disk = __commonJS({ "../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/storage/disk.js"(exports2, module2) { var fs = require("fs"); var os = require("os"); var path = require("path"); var crypto5 = require("crypto"); var mkdirp = require_mkdirp(); function getFilename(req, file2, cb) { crypto5.randomBytes(16, function(err, raw) { cb(err, err ? void 0 : raw.toString("hex")); }); } __name(getFilename, "getFilename"); function getDestination(req, file2, cb) { cb(null, os.tmpdir()); } __name(getDestination, "getDestination"); function DiskStorage(opts) { this.getFilename = opts.filename || getFilename; if (typeof opts.destination === "string") { mkdirp.sync(opts.destination); this.getDestination = function($0, $1, cb) { cb(null, opts.destination); }; } else { this.getDestination = opts.destination || getDestination; } } __name(DiskStorage, "DiskStorage"); DiskStorage.prototype._handleFile = /* @__PURE__ */ __name(function _handleFile(req, file2, cb) { var that = this; that.getDestination(req, file2, function(err, destination) { if (err) return cb(err); that.getFilename(req, file2, function(err2, filename) { if (err2) return cb(err2); var finalPath = path.join(destination, filename); var outStream = fs.createWriteStream(finalPath); file2.stream.pipe(outStream); outStream.on("error", cb); outStream.on("finish", function() { cb(null, { destination, filename, path: finalPath, size: outStream.bytesWritten }); }); }); }); }, "_handleFile"); DiskStorage.prototype._removeFile = /* @__PURE__ */ __name(function _removeFile(req, file2, cb) { var path2 = file2.path; delete file2.destination; delete file2.filename; delete file2.path; fs.unlink(path2, cb); }, "_removeFile"); module2.exports = function(opts) { return new DiskStorage(opts); }; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/stream.js var require_stream = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/stream.js"(exports2, module2) { module2.exports = require("stream"); } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/buffer_list.js var require_buffer_list = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/buffer_list.js"(exports2, module2) { "use strict"; function ownKeys2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function(sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } __name(ownKeys2, "ownKeys"); function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys2(Object(source), true).forEach(function(key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys2(Object(source)).forEach(function(key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } __name(_objectSpread, "_objectSpread"); function _defineProperty(obj2, key, value) { key = _toPropertyKey(key); if (key in obj2) { Object.defineProperty(obj2, key, { value, enumerable: true, configurable: true, writable: true }); } else { obj2[key] = value; } return obj2; } __name(_defineProperty, "_defineProperty"); function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } } __name(_defineProperties, "_defineProperties"); function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } __name(_createClass, "_createClass"); function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== void 0) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } __name(_toPrimitive, "_toPrimitive"); var _require = require("buffer"); var Buffer2 = _require.Buffer; var _require2 = require("util"); var inspect = _require2.inspect; var custom = inspect && inspect.custom || "inspect"; function copyBuffer(src, target, offset) { Buffer2.prototype.copy.call(src, target, offset); } __name(copyBuffer, "copyBuffer"); module2.exports = /* @__PURE__ */ (function() { function BufferList() { _classCallCheck(this, BufferList); this.head = null; this.tail = null; this.length = 0; } __name(BufferList, "BufferList"); _createClass(BufferList, [{ key: "push", value: /* @__PURE__ */ __name(function push(v) { var entry = { data: v, next: null }; if (this.length > 0) this.tail.next = entry; else this.head = entry; this.tail = entry; ++this.length; }, "push") }, { key: "unshift", value: /* @__PURE__ */ __name(function unshift(v) { var entry = { data: v, next: this.head }; if (this.length === 0) this.tail = entry; this.head = entry; ++this.length; }, "unshift") }, { key: "shift", value: /* @__PURE__ */ __name(function shift() { if (this.length === 0) return; var ret2 = this.head.data; if (this.length === 1) this.head = this.tail = null; else this.head = this.head.next; --this.length; return ret2; }, "shift") }, { key: "clear", value: /* @__PURE__ */ __name(function clear() { this.head = this.tail = null; this.length = 0; }, "clear") }, { key: "join", value: /* @__PURE__ */ __name(function join(s) { if (this.length === 0) return ""; var p = this.head; var ret2 = "" + p.data; while (p = p.next) ret2 += s + p.data; return ret2; }, "join") }, { key: "concat", value: /* @__PURE__ */ __name(function concat(n) { if (this.length === 0) return Buffer2.alloc(0); var ret2 = Buffer2.allocUnsafe(n >>> 0); var p = this.head; var i = 0; while (p) { copyBuffer(p.data, ret2, i); i += p.data.length; p = p.next; } return ret2; }, "concat") // Consumes a specified amount of bytes or characters from the buffered data. }, { key: "consume", value: /* @__PURE__ */ __name(function consume(n, hasStrings) { var ret2; if (n < this.head.data.length) { ret2 = this.head.data.slice(0, n); this.head.data = this.head.data.slice(n); } else if (n === this.head.data.length) { ret2 = this.shift(); } else { ret2 = hasStrings ? this._getString(n) : this._getBuffer(n); } return ret2; }, "consume") }, { key: "first", value: /* @__PURE__ */ __name(function first() { return this.head.data; }, "first") // Consumes a specified amount of characters from the buffered data. }, { key: "_getString", value: /* @__PURE__ */ __name(function _getString(n) { var p = this.head; var c = 1; var ret2 = p.data; n -= ret2.length; while (p = p.next) { var str = p.data; var nb = n > str.length ? str.length : n; if (nb === str.length) ret2 += str; else ret2 += str.slice(0, n); n -= nb; if (n === 0) { if (nb === str.length) { ++c; if (p.next) this.head = p.next; else this.head = this.tail = null; } else { this.head = p; p.data = str.slice(nb); } break; } ++c; } this.length -= c; return ret2; }, "_getString") // Consumes a specified amount of bytes from the buffered data. }, { key: "_getBuffer", value: /* @__PURE__ */ __name(function _getBuffer(n) { var ret2 = Buffer2.allocUnsafe(n); var p = this.head; var c = 1; p.data.copy(ret2); n -= p.data.length; while (p = p.next) { var buf = p.data; var nb = n > buf.length ? buf.length : n; buf.copy(ret2, ret2.length - n, 0, nb); n -= nb; if (n === 0) { if (nb === buf.length) { ++c; if (p.next) this.head = p.next; else this.head = this.tail = null; } else { this.head = p; p.data = buf.slice(nb); } break; } ++c; } this.length -= c; return ret2; }, "_getBuffer") // Make sure the linked list only shows the minimal necessary information. }, { key: custom, value: /* @__PURE__ */ __name(function value(_2, options) { return inspect(this, _objectSpread(_objectSpread({}, options), {}, { // Only inspect one level. depth: 0, // It should not recurse. customInspect: false })); }, "value") }]); return BufferList; })(); } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/destroy.js var require_destroy2 = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/destroy.js"(exports2, module2) { "use strict"; function destroy(err, cb) { var _this = this; var readableDestroyed = this._readableState && this._readableState.destroyed; var writableDestroyed = this._writableState && this._writableState.destroyed; if (readableDestroyed || writableDestroyed) { if (cb) { cb(err); } else if (err) { if (!this._writableState) { process.nextTick(emitErrorNT, this, err); } else if (!this._writableState.errorEmitted) { this._writableState.errorEmitted = true; process.nextTick(emitErrorNT, this, err); } } return this; } if (this._readableState) { this._readableState.destroyed = true; } if (this._writableState) { this._writableState.destroyed = true; } this._destroy(err || null, function(err2) { if (!cb && err2) { if (!_this._writableState) { process.nextTick(emitErrorAndCloseNT, _this, err2); } else if (!_this._writableState.errorEmitted) { _this._writableState.errorEmitted = true; process.nextTick(emitErrorAndCloseNT, _this, err2); } else { process.nextTick(emitCloseNT, _this); } } else if (cb) { process.nextTick(emitCloseNT, _this); cb(err2); } else { process.nextTick(emitCloseNT, _this); } }); return this; } __name(destroy, "destroy"); function emitErrorAndCloseNT(self2, err) { emitErrorNT(self2, err); emitCloseNT(self2); } __name(emitErrorAndCloseNT, "emitErrorAndCloseNT"); function emitCloseNT(self2) { if (self2._writableState && !self2._writableState.emitClose) return; if (self2._readableState && !self2._readableState.emitClose) return; self2.emit("close"); } __name(emitCloseNT, "emitCloseNT"); function undestroy() { if (this._readableState) { this._readableState.destroyed = false; this._readableState.reading = false; this._readableState.ended = false; this._readableState.endEmitted = false; } if (this._writableState) { this._writableState.destroyed = false; this._writableState.ended = false; this._writableState.ending = false; this._writableState.finalCalled = false; this._writableState.prefinished = false; this._writableState.finished = false; this._writableState.errorEmitted = false; } } __name(undestroy, "undestroy"); function emitErrorNT(self2, err) { self2.emit("error", err); } __name(emitErrorNT, "emitErrorNT"); function errorOrDestroy(stream, err) { var rState = stream._readableState; var wState = stream._writableState; if (rState && rState.autoDestroy || wState && wState.autoDestroy) stream.destroy(err); else stream.emit("error", err); } __name(errorOrDestroy, "errorOrDestroy"); module2.exports = { destroy, undestroy, errorOrDestroy }; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/errors.js var require_errors = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/errors.js"(exports2, module2) { "use strict"; var codes = {}; function createErrorType(code, message, Base) { if (!Base) { Base = Error; } function getMessage(arg1, arg2, arg3) { if (typeof message === "string") { return message; } else { return message(arg1, arg2, arg3); } } __name(getMessage, "getMessage"); class NodeError extends Base { static { __name(this, "NodeError"); } constructor(arg1, arg2, arg3) { super(getMessage(arg1, arg2, arg3)); } } NodeError.prototype.name = Base.name; NodeError.prototype.code = code; codes[code] = NodeError; } __name(createErrorType, "createErrorType"); function oneOf(expected, thing) { if (Array.isArray(expected)) { const len = expected.length; expected = expected.map((i) => String(i)); if (len > 2) { return `one of ${thing} ${expected.slice(0, len - 1).join(", ")}, or ` + expected[len - 1]; } else if (len === 2) { return `one of ${thing} ${expected[0]} or ${expected[1]}`; } else { return `of ${thing} ${expected[0]}`; } } else { return `of ${thing} ${String(expected)}`; } } __name(oneOf, "oneOf"); function startsWith(str, search, pos) { return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search; } __name(startsWith, "startsWith"); function endsWith(str, search, this_len) { if (this_len === void 0 || this_len > str.length) { this_len = str.length; } return str.substring(this_len - search.length, this_len) === search; } __name(endsWith, "endsWith"); function includes(str, search, start) { if (typeof start !== "number") { start = 0; } if (start + search.length > str.length) { return false; } else { return str.indexOf(search, start) !== -1; } } __name(includes, "includes"); createErrorType("ERR_INVALID_OPT_VALUE", function(name, value) { return 'The value "' + value + '" is invalid for option "' + name + '"'; }, TypeError); createErrorType("ERR_INVALID_ARG_TYPE", function(name, expected, actual) { let determiner; if (typeof expected === "string" && startsWith(expected, "not ")) { determiner = "must not be"; expected = expected.replace(/^not /, ""); } else { determiner = "must be"; } let msg; if (endsWith(name, " argument")) { msg = `The ${name} ${determiner} ${oneOf(expected, "type")}`; } else { const type = includes(name, ".") ? "property" : "argument"; msg = `The "${name}" ${type} ${determiner} ${oneOf(expected, "type")}`; } msg += `. Received type ${typeof actual}`; return msg; }, TypeError); createErrorType("ERR_STREAM_PUSH_AFTER_EOF", "stream.push() after EOF"); createErrorType("ERR_METHOD_NOT_IMPLEMENTED", function(name) { return "The " + name + " method is not implemented"; }); createErrorType("ERR_STREAM_PREMATURE_CLOSE", "Premature close"); createErrorType("ERR_STREAM_DESTROYED", function(name) { return "Cannot call " + name + " after a stream was destroyed"; }); createErrorType("ERR_MULTIPLE_CALLBACK", "Callback called multiple times"); createErrorType("ERR_STREAM_CANNOT_PIPE", "Cannot pipe, not readable"); createErrorType("ERR_STREAM_WRITE_AFTER_END", "write after end"); createErrorType("ERR_STREAM_NULL_VALUES", "May not write null values to stream", TypeError); createErrorType("ERR_UNKNOWN_ENCODING", function(arg) { return "Unknown encoding: " + arg; }, TypeError); createErrorType("ERR_STREAM_UNSHIFT_AFTER_END_EVENT", "stream.unshift() after end event"); module2.exports.codes = codes; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/state.js var require_state = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/state.js"(exports2, module2) { "use strict"; var ERR_INVALID_OPT_VALUE = require_errors().codes.ERR_INVALID_OPT_VALUE; function highWaterMarkFrom(options, isDuplex, duplexKey) { return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; } __name(highWaterMarkFrom, "highWaterMarkFrom"); function getHighWaterMark(state, options, duplexKey, isDuplex) { var hwm = highWaterMarkFrom(options, isDuplex, duplexKey); if (hwm != null) { if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) { var name = isDuplex ? duplexKey : "highWaterMark"; throw new ERR_INVALID_OPT_VALUE(name, hwm); } return Math.floor(hwm); } return state.objectMode ? 16 : 16 * 1024; } __name(getHighWaterMark, "getHighWaterMark"); module2.exports = { getHighWaterMark }; } }); // ../../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js var require_node2 = __commonJS({ "../../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js"(exports2, module2) { module2.exports = require("util").deprecate; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_writable.js var require_stream_writable = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_writable.js"(exports2, module2) { "use strict"; module2.exports = Writable; function CorkedRequest(state) { var _this = this; this.next = null; this.entry = null; this.finish = function() { onCorkedFinish(_this, state); }; } __name(CorkedRequest, "CorkedRequest"); var Duplex; Writable.WritableState = WritableState; var internalUtil = { deprecate: require_node2() }; var Stream = require_stream(); var Buffer2 = require("buffer").Buffer; var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { }; function _uint8ArrayToBuffer(chunk) { return Buffer2.from(chunk); } __name(_uint8ArrayToBuffer, "_uint8ArrayToBuffer"); function _isUint8Array(obj2) { return Buffer2.isBuffer(obj2) || obj2 instanceof OurUint8Array; } __name(_isUint8Array, "_isUint8Array"); var destroyImpl = require_destroy2(); var _require = require_state(); var getHighWaterMark = _require.getHighWaterMark; var _require$codes = require_errors().codes; var ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE; var ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED; var ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK; var ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE; var ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED; var ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES; var ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END; var ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING; var errorOrDestroy = destroyImpl.errorOrDestroy; require_inherits()(Writable, Stream); function nop() { } __name(nop, "nop"); function WritableState(options, stream, isDuplex) { Duplex = Duplex || require_stream_duplex(); options = options || {}; if (typeof isDuplex !== "boolean") isDuplex = stream instanceof Duplex; this.objectMode = !!options.objectMode; if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; this.highWaterMark = getHighWaterMark(this, options, "writableHighWaterMark", isDuplex); this.finalCalled = false; this.needDrain = false; this.ending = false; this.ended = false; this.finished = false; this.destroyed = false; var noDecode = options.decodeStrings === false; this.decodeStrings = !noDecode; this.defaultEncoding = options.defaultEncoding || "utf8"; this.length = 0; this.writing = false; this.corked = 0; this.sync = true; this.bufferProcessing = false; this.onwrite = function(er) { onwrite(stream, er); }; this.writecb = null; this.writelen = 0; this.bufferedRequest = null; this.lastBufferedRequest = null; this.pendingcb = 0; this.prefinished = false; this.errorEmitted = false; this.emitClose = options.emitClose !== false; this.autoDestroy = !!options.autoDestroy; this.bufferedRequestCount = 0; this.corkedRequestsFree = new CorkedRequest(this); } __name(WritableState, "WritableState"); WritableState.prototype.getBuffer = /* @__PURE__ */ __name(function getBuffer() { var current = this.bufferedRequest; var out = []; while (current) { out.push(current); current = current.next; } return out; }, "getBuffer"); (function() { try { Object.defineProperty(WritableState.prototype, "buffer", { get: internalUtil.deprecate(/* @__PURE__ */ __name(function writableStateBufferGetter() { return this.getBuffer(); }, "writableStateBufferGetter"), "_writableState.buffer is deprecated. Use _writableState.getBuffer instead.", "DEP0003") }); } catch (_2) { } })(); var realHasInstance; if (typeof Symbol === "function" && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === "function") { realHasInstance = Function.prototype[Symbol.hasInstance]; Object.defineProperty(Writable, Symbol.hasInstance, { value: /* @__PURE__ */ __name(function value(object) { if (realHasInstance.call(this, object)) return true; if (this !== Writable) return false; return object && object._writableState instanceof WritableState; }, "value") }); } else { realHasInstance = /* @__PURE__ */ __name(function realHasInstance2(object) { return object instanceof this; }, "realHasInstance"); } function Writable(options) { Duplex = Duplex || require_stream_duplex(); var isDuplex = this instanceof Duplex; if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options); this._writableState = new WritableState(options, this, isDuplex); this.writable = true; if (options) { if (typeof options.write === "function") this._write = options.write; if (typeof options.writev === "function") this._writev = options.writev; if (typeof options.destroy === "function") this._destroy = options.destroy; if (typeof options.final === "function") this._final = options.final; } Stream.call(this); } __name(Writable, "Writable"); Writable.prototype.pipe = function() { errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE()); }; function writeAfterEnd(stream, cb) { var er = new ERR_STREAM_WRITE_AFTER_END(); errorOrDestroy(stream, er); process.nextTick(cb, er); } __name(writeAfterEnd, "writeAfterEnd"); function validChunk(stream, state, chunk, cb) { var er; if (chunk === null) { er = new ERR_STREAM_NULL_VALUES(); } else if (typeof chunk !== "string" && !state.objectMode) { er = new ERR_INVALID_ARG_TYPE("chunk", ["string", "Buffer"], chunk); } if (er) { errorOrDestroy(stream, er); process.nextTick(cb, er); return false; } return true; } __name(validChunk, "validChunk"); Writable.prototype.write = function(chunk, encoding, cb) { var state = this._writableState; var ret2 = false; var isBuf = !state.objectMode && _isUint8Array(chunk); if (isBuf && !Buffer2.isBuffer(chunk)) { chunk = _uint8ArrayToBuffer(chunk); } if (typeof encoding === "function") { cb = encoding; encoding = null; } if (isBuf) encoding = "buffer"; else if (!encoding) encoding = state.defaultEncoding; if (typeof cb !== "function") cb = nop; if (state.ending) writeAfterEnd(this, cb); else if (isBuf || validChunk(this, state, chunk, cb)) { state.pendingcb++; ret2 = writeOrBuffer(this, state, isBuf, chunk, encoding, cb); } return ret2; }; Writable.prototype.cork = function() { this._writableState.corked++; }; Writable.prototype.uncork = function() { var state = this._writableState; if (state.corked) { state.corked--; if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state); } }; Writable.prototype.setDefaultEncoding = /* @__PURE__ */ __name(function setDefaultEncoding(encoding) { if (typeof encoding === "string") encoding = encoding.toLowerCase(); if (!(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((encoding + "").toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding); this._writableState.defaultEncoding = encoding; return this; }, "setDefaultEncoding"); Object.defineProperty(Writable.prototype, "writableBuffer", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { return this._writableState && this._writableState.getBuffer(); }, "get") }); function decodeChunk(state, chunk, encoding) { if (!state.objectMode && state.decodeStrings !== false && typeof chunk === "string") { chunk = Buffer2.from(chunk, encoding); } return chunk; } __name(decodeChunk, "decodeChunk"); Object.defineProperty(Writable.prototype, "writableHighWaterMark", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { return this._writableState.highWaterMark; }, "get") }); function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) { if (!isBuf) { var newChunk = decodeChunk(state, chunk, encoding); if (chunk !== newChunk) { isBuf = true; encoding = "buffer"; chunk = newChunk; } } var len = state.objectMode ? 1 : chunk.length; state.length += len; var ret2 = state.length < state.highWaterMark; if (!ret2) state.needDrain = true; if (state.writing || state.corked) { var last = state.lastBufferedRequest; state.lastBufferedRequest = { chunk, encoding, isBuf, callback: cb, next: null }; if (last) { last.next = state.lastBufferedRequest; } else { state.bufferedRequest = state.lastBufferedRequest; } state.bufferedRequestCount += 1; } else { doWrite(stream, state, false, len, chunk, encoding, cb); } return ret2; } __name(writeOrBuffer, "writeOrBuffer"); function doWrite(stream, state, writev, len, chunk, encoding, cb) { state.writelen = len; state.writecb = cb; state.writing = true; state.sync = true; if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED("write")); else if (writev) stream._writev(chunk, state.onwrite); else stream._write(chunk, encoding, state.onwrite); state.sync = false; } __name(doWrite, "doWrite"); function onwriteError(stream, state, sync, er, cb) { --state.pendingcb; if (sync) { process.nextTick(cb, er); process.nextTick(finishMaybe, stream, state); stream._writableState.errorEmitted = true; errorOrDestroy(stream, er); } else { cb(er); stream._writableState.errorEmitted = true; errorOrDestroy(stream, er); finishMaybe(stream, state); } } __name(onwriteError, "onwriteError"); function onwriteStateUpdate(state) { state.writing = false; state.writecb = null; state.length -= state.writelen; state.writelen = 0; } __name(onwriteStateUpdate, "onwriteStateUpdate"); function onwrite(stream, er) { var state = stream._writableState; var sync = state.sync; var cb = state.writecb; if (typeof cb !== "function") throw new ERR_MULTIPLE_CALLBACK(); onwriteStateUpdate(state); if (er) onwriteError(stream, state, sync, er, cb); else { var finished = needFinish(state) || stream.destroyed; if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) { clearBuffer(stream, state); } if (sync) { process.nextTick(afterWrite, stream, state, finished, cb); } else { afterWrite(stream, state, finished, cb); } } } __name(onwrite, "onwrite"); function afterWrite(stream, state, finished, cb) { if (!finished) onwriteDrain(stream, state); state.pendingcb--; cb(); finishMaybe(stream, state); } __name(afterWrite, "afterWrite"); function onwriteDrain(stream, state) { if (state.length === 0 && state.needDrain) { state.needDrain = false; stream.emit("drain"); } } __name(onwriteDrain, "onwriteDrain"); function clearBuffer(stream, state) { state.bufferProcessing = true; var entry = state.bufferedRequest; if (stream._writev && entry && entry.next) { var l2 = state.bufferedRequestCount; var buffer = new Array(l2); var holder = state.corkedRequestsFree; holder.entry = entry; var count = 0; var allBuffers = true; while (entry) { buffer[count] = entry; if (!entry.isBuf) allBuffers = false; entry = entry.next; count += 1; } buffer.allBuffers = allBuffers; doWrite(stream, state, true, state.length, buffer, "", holder.finish); state.pendingcb++; state.lastBufferedRequest = null; if (holder.next) { state.corkedRequestsFree = holder.next; holder.next = null; } else { state.corkedRequestsFree = new CorkedRequest(state); } state.bufferedRequestCount = 0; } else { while (entry) { var chunk = entry.chunk; var encoding = entry.encoding; var cb = entry.callback; var len = state.objectMode ? 1 : chunk.length; doWrite(stream, state, false, len, chunk, encoding, cb); entry = entry.next; state.bufferedRequestCount--; if (state.writing) { break; } } if (entry === null) state.lastBufferedRequest = null; } state.bufferedRequest = entry; state.bufferProcessing = false; } __name(clearBuffer, "clearBuffer"); Writable.prototype._write = function(chunk, encoding, cb) { cb(new ERR_METHOD_NOT_IMPLEMENTED("_write()")); }; Writable.prototype._writev = null; Writable.prototype.end = function(chunk, encoding, cb) { var state = this._writableState; if (typeof chunk === "function") { cb = chunk; chunk = null; encoding = null; } else if (typeof encoding === "function") { cb = encoding; encoding = null; } if (chunk !== null && chunk !== void 0) this.write(chunk, encoding); if (state.corked) { state.corked = 1; this.uncork(); } if (!state.ending) endWritable(this, state, cb); return this; }; Object.defineProperty(Writable.prototype, "writableLength", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { return this._writableState.length; }, "get") }); function needFinish(state) { return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing; } __name(needFinish, "needFinish"); function callFinal(stream, state) { stream._final(function(err) { state.pendingcb--; if (err) { errorOrDestroy(stream, err); } state.prefinished = true; stream.emit("prefinish"); finishMaybe(stream, state); }); } __name(callFinal, "callFinal"); function prefinish(stream, state) { if (!state.prefinished && !state.finalCalled) { if (typeof stream._final === "function" && !state.destroyed) { state.pendingcb++; state.finalCalled = true; process.nextTick(callFinal, stream, state); } else { state.prefinished = true; stream.emit("prefinish"); } } } __name(prefinish, "prefinish"); function finishMaybe(stream, state) { var need = needFinish(state); if (need) { prefinish(stream, state); if (state.pendingcb === 0) { state.finished = true; stream.emit("finish"); if (state.autoDestroy) { var rState = stream._readableState; if (!rState || rState.autoDestroy && rState.endEmitted) { stream.destroy(); } } } } return need; } __name(finishMaybe, "finishMaybe"); function endWritable(stream, state, cb) { state.ending = true; finishMaybe(stream, state); if (cb) { if (state.finished) process.nextTick(cb); else stream.once("finish", cb); } state.ended = true; stream.writable = false; } __name(endWritable, "endWritable"); function onCorkedFinish(corkReq, state, err) { var entry = corkReq.entry; corkReq.entry = null; while (entry) { var cb = entry.callback; state.pendingcb--; cb(err); entry = entry.next; } state.corkedRequestsFree.next = corkReq; } __name(onCorkedFinish, "onCorkedFinish"); Object.defineProperty(Writable.prototype, "destroyed", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { if (this._writableState === void 0) { return false; } return this._writableState.destroyed; }, "get"), set: /* @__PURE__ */ __name(function set(value) { if (!this._writableState) { return; } this._writableState.destroyed = value; }, "set") }); Writable.prototype.destroy = destroyImpl.destroy; Writable.prototype._undestroy = destroyImpl.undestroy; Writable.prototype._destroy = function(err, cb) { cb(err); }; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_duplex.js var require_stream_duplex = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_duplex.js"(exports2, module2) { "use strict"; var objectKeys = Object.keys || function(obj2) { var keys2 = []; for (var key in obj2) keys2.push(key); return keys2; }; module2.exports = Duplex; var Readable = require_stream_readable(); var Writable = require_stream_writable(); require_inherits()(Duplex, Readable); { keys = objectKeys(Writable.prototype); for (v = 0; v < keys.length; v++) { method = keys[v]; if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method]; } } var keys; var method; var v; function Duplex(options) { if (!(this instanceof Duplex)) return new Duplex(options); Readable.call(this, options); Writable.call(this, options); this.allowHalfOpen = true; if (options) { if (options.readable === false) this.readable = false; if (options.writable === false) this.writable = false; if (options.allowHalfOpen === false) { this.allowHalfOpen = false; this.once("end", onend); } } } __name(Duplex, "Duplex"); Object.defineProperty(Duplex.prototype, "writableHighWaterMark", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { return this._writableState.highWaterMark; }, "get") }); Object.defineProperty(Duplex.prototype, "writableBuffer", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { return this._writableState && this._writableState.getBuffer(); }, "get") }); Object.defineProperty(Duplex.prototype, "writableLength", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { return this._writableState.length; }, "get") }); function onend() { if (this._writableState.ended) return; process.nextTick(onEndNT, this); } __name(onend, "onend"); function onEndNT(self2) { self2.end(); } __name(onEndNT, "onEndNT"); Object.defineProperty(Duplex.prototype, "destroyed", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { if (this._readableState === void 0 || this._writableState === void 0) { return false; } return this._readableState.destroyed && this._writableState.destroyed; }, "get"), set: /* @__PURE__ */ __name(function set(value) { if (this._readableState === void 0 || this._writableState === void 0) { return; } this._readableState.destroyed = value; this._writableState.destroyed = value; }, "set") }); } }); // ../../node_modules/.pnpm/string_decoder@1.3.0/node_modules/string_decoder/lib/string_decoder.js var require_string_decoder = __commonJS({ "../../node_modules/.pnpm/string_decoder@1.3.0/node_modules/string_decoder/lib/string_decoder.js"(exports2) { "use strict"; var Buffer2 = require_safe_buffer().Buffer; var isEncoding = Buffer2.isEncoding || function(encoding) { encoding = "" + encoding; switch (encoding && encoding.toLowerCase()) { case "hex": case "utf8": case "utf-8": case "ascii": case "binary": case "base64": case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": case "raw": return true; default: return false; } }; function _normalizeEncoding(enc) { if (!enc) return "utf8"; var retried; while (true) { switch (enc) { case "utf8": case "utf-8": return "utf8"; case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return "utf16le"; case "latin1": case "binary": return "latin1"; case "base64": case "ascii": case "hex": return enc; default: if (retried) return; enc = ("" + enc).toLowerCase(); retried = true; } } } __name(_normalizeEncoding, "_normalizeEncoding"); function normalizeEncoding(enc) { var nenc = _normalizeEncoding(enc); if (typeof nenc !== "string" && (Buffer2.isEncoding === isEncoding || !isEncoding(enc))) throw new Error("Unknown encoding: " + enc); return nenc || enc; } __name(normalizeEncoding, "normalizeEncoding"); exports2.StringDecoder = StringDecoder; function StringDecoder(encoding) { this.encoding = normalizeEncoding(encoding); var nb; switch (this.encoding) { case "utf16le": this.text = utf16Text; this.end = utf16End; nb = 4; break; case "utf8": this.fillLast = utf8FillLast; nb = 4; break; case "base64": this.text = base64Text; this.end = base64End; nb = 3; break; default: this.write = simpleWrite; this.end = simpleEnd; return; } this.lastNeed = 0; this.lastTotal = 0; this.lastChar = Buffer2.allocUnsafe(nb); } __name(StringDecoder, "StringDecoder"); StringDecoder.prototype.write = function(buf) { if (buf.length === 0) return ""; var r; var i; if (this.lastNeed) { r = this.fillLast(buf); if (r === void 0) return ""; i = this.lastNeed; this.lastNeed = 0; } else { i = 0; } if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i); return r || ""; }; StringDecoder.prototype.end = utf8End; StringDecoder.prototype.text = utf8Text; StringDecoder.prototype.fillLast = function(buf) { if (this.lastNeed <= buf.length) { buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed); return this.lastChar.toString(this.encoding, 0, this.lastTotal); } buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length); this.lastNeed -= buf.length; }; function utf8CheckByte(byte) { if (byte <= 127) return 0; else if (byte >> 5 === 6) return 2; else if (byte >> 4 === 14) return 3; else if (byte >> 3 === 30) return 4; return byte >> 6 === 2 ? -1 : -2; } __name(utf8CheckByte, "utf8CheckByte"); function utf8CheckIncomplete(self2, buf, i) { var j = buf.length - 1; if (j < i) return 0; var nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) self2.lastNeed = nb - 1; return nb; } if (--j < i || nb === -2) return 0; nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) self2.lastNeed = nb - 2; return nb; } if (--j < i || nb === -2) return 0; nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) { if (nb === 2) nb = 0; else self2.lastNeed = nb - 3; } return nb; } return 0; } __name(utf8CheckIncomplete, "utf8CheckIncomplete"); function utf8CheckExtraBytes(self2, buf, p) { if ((buf[0] & 192) !== 128) { self2.lastNeed = 0; return "\uFFFD"; } if (self2.lastNeed > 1 && buf.length > 1) { if ((buf[1] & 192) !== 128) { self2.lastNeed = 1; return "\uFFFD"; } if (self2.lastNeed > 2 && buf.length > 2) { if ((buf[2] & 192) !== 128) { self2.lastNeed = 2; return "\uFFFD"; } } } } __name(utf8CheckExtraBytes, "utf8CheckExtraBytes"); function utf8FillLast(buf) { var p = this.lastTotal - this.lastNeed; var r = utf8CheckExtraBytes(this, buf, p); if (r !== void 0) return r; if (this.lastNeed <= buf.length) { buf.copy(this.lastChar, p, 0, this.lastNeed); return this.lastChar.toString(this.encoding, 0, this.lastTotal); } buf.copy(this.lastChar, p, 0, buf.length); this.lastNeed -= buf.length; } __name(utf8FillLast, "utf8FillLast"); function utf8Text(buf, i) { var total = utf8CheckIncomplete(this, buf, i); if (!this.lastNeed) return buf.toString("utf8", i); this.lastTotal = total; var end = buf.length - (total - this.lastNeed); buf.copy(this.lastChar, 0, end); return buf.toString("utf8", i, end); } __name(utf8Text, "utf8Text"); function utf8End(buf) { var r = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) return r + "\uFFFD"; return r; } __name(utf8End, "utf8End"); function utf16Text(buf, i) { if ((buf.length - i) % 2 === 0) { var r = buf.toString("utf16le", i); if (r) { var c = r.charCodeAt(r.length - 1); if (c >= 55296 && c <= 56319) { this.lastNeed = 2; this.lastTotal = 4; this.lastChar[0] = buf[buf.length - 2]; this.lastChar[1] = buf[buf.length - 1]; return r.slice(0, -1); } } return r; } this.lastNeed = 1; this.lastTotal = 2; this.lastChar[0] = buf[buf.length - 1]; return buf.toString("utf16le", i, buf.length - 1); } __name(utf16Text, "utf16Text"); function utf16End(buf) { var r = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) { var end = this.lastTotal - this.lastNeed; return r + this.lastChar.toString("utf16le", 0, end); } return r; } __name(utf16End, "utf16End"); function base64Text(buf, i) { var n = (buf.length - i) % 3; if (n === 0) return buf.toString("base64", i); this.lastNeed = 3 - n; this.lastTotal = 3; if (n === 1) { this.lastChar[0] = buf[buf.length - 1]; } else { this.lastChar[0] = buf[buf.length - 2]; this.lastChar[1] = buf[buf.length - 1]; } return buf.toString("base64", i, buf.length - n); } __name(base64Text, "base64Text"); function base64End(buf) { var r = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) return r + this.lastChar.toString("base64", 0, 3 - this.lastNeed); return r; } __name(base64End, "base64End"); function simpleWrite(buf) { return buf.toString(this.encoding); } __name(simpleWrite, "simpleWrite"); function simpleEnd(buf) { return buf && buf.length ? this.write(buf) : ""; } __name(simpleEnd, "simpleEnd"); } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/end-of-stream.js var require_end_of_stream = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(exports2, module2) { "use strict"; var ERR_STREAM_PREMATURE_CLOSE = require_errors().codes.ERR_STREAM_PREMATURE_CLOSE; function once(callback) { var called = false; return function() { if (called) return; called = true; for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } callback.apply(this, args); }; } __name(once, "once"); function noop() { } __name(noop, "noop"); function isRequest(stream) { return stream.setHeader && typeof stream.abort === "function"; } __name(isRequest, "isRequest"); function eos(stream, opts, callback) { if (typeof opts === "function") return eos(stream, null, opts); if (!opts) opts = {}; callback = once(callback || noop); var readable = opts.readable || opts.readable !== false && stream.readable; var writable = opts.writable || opts.writable !== false && stream.writable; var onlegacyfinish = /* @__PURE__ */ __name(function onlegacyfinish2() { if (!stream.writable) onfinish(); }, "onlegacyfinish"); var writableEnded = stream._writableState && stream._writableState.finished; var onfinish = /* @__PURE__ */ __name(function onfinish2() { writable = false; writableEnded = true; if (!readable) callback.call(stream); }, "onfinish"); var readableEnded = stream._readableState && stream._readableState.endEmitted; var onend = /* @__PURE__ */ __name(function onend2() { readable = false; readableEnded = true; if (!writable) callback.call(stream); }, "onend"); var onerror = /* @__PURE__ */ __name(function onerror2(err) { callback.call(stream, err); }, "onerror"); var onclose = /* @__PURE__ */ __name(function onclose2() { var err; if (readable && !readableEnded) { if (!stream._readableState || !stream._readableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE(); return callback.call(stream, err); } if (writable && !writableEnded) { if (!stream._writableState || !stream._writableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE(); return callback.call(stream, err); } }, "onclose"); var onrequest = /* @__PURE__ */ __name(function onrequest2() { stream.req.on("finish", onfinish); }, "onrequest"); if (isRequest(stream)) { stream.on("complete", onfinish); stream.on("abort", onclose); if (stream.req) onrequest(); else stream.on("request", onrequest); } else if (writable && !stream._writableState) { stream.on("end", onlegacyfinish); stream.on("close", onlegacyfinish); } stream.on("end", onend); stream.on("finish", onfinish); if (opts.error !== false) stream.on("error", onerror); stream.on("close", onclose); return function() { stream.removeListener("complete", onfinish); stream.removeListener("abort", onclose); stream.removeListener("request", onrequest); if (stream.req) stream.req.removeListener("finish", onfinish); stream.removeListener("end", onlegacyfinish); stream.removeListener("close", onlegacyfinish); stream.removeListener("finish", onfinish); stream.removeListener("end", onend); stream.removeListener("error", onerror); stream.removeListener("close", onclose); }; } __name(eos, "eos"); module2.exports = eos; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/async_iterator.js var require_async_iterator = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/async_iterator.js"(exports2, module2) { "use strict"; var _Object$setPrototypeO; function _defineProperty(obj2, key, value) { key = _toPropertyKey(key); if (key in obj2) { Object.defineProperty(obj2, key, { value, enumerable: true, configurable: true, writable: true }); } else { obj2[key] = value; } return obj2; } __name(_defineProperty, "_defineProperty"); function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== void 0) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } __name(_toPrimitive, "_toPrimitive"); var finished = require_end_of_stream(); var kLastResolve = Symbol("lastResolve"); var kLastReject = Symbol("lastReject"); var kError = Symbol("error"); var kEnded = Symbol("ended"); var kLastPromise = Symbol("lastPromise"); var kHandlePromise = Symbol("handlePromise"); var kStream = Symbol("stream"); function createIterResult(value, done) { return { value, done }; } __name(createIterResult, "createIterResult"); function readAndResolve(iter) { var resolve = iter[kLastResolve]; if (resolve !== null) { var data = iter[kStream].read(); if (data !== null) { iter[kLastPromise] = null; iter[kLastResolve] = null; iter[kLastReject] = null; resolve(createIterResult(data, false)); } } } __name(readAndResolve, "readAndResolve"); function onReadable(iter) { process.nextTick(readAndResolve, iter); } __name(onReadable, "onReadable"); function wrapForNext(lastPromise, iter) { return function(resolve, reject) { lastPromise.then(function() { if (iter[kEnded]) { resolve(createIterResult(void 0, true)); return; } iter[kHandlePromise](resolve, reject); }, reject); }; } __name(wrapForNext, "wrapForNext"); var AsyncIteratorPrototype = Object.getPrototypeOf(function() { }); var ReadableStreamAsyncIteratorPrototype = Object.setPrototypeOf((_Object$setPrototypeO = { get stream() { return this[kStream]; }, next: /* @__PURE__ */ __name(function next() { var _this = this; var error = this[kError]; if (error !== null) { return Promise.reject(error); } if (this[kEnded]) { return Promise.resolve(createIterResult(void 0, true)); } if (this[kStream].destroyed) { return new Promise(function(resolve, reject) { process.nextTick(function() { if (_this[kError]) { reject(_this[kError]); } else { resolve(createIterResult(void 0, true)); } }); }); } var lastPromise = this[kLastPromise]; var promise; if (lastPromise) { promise = new Promise(wrapForNext(lastPromise, this)); } else { var data = this[kStream].read(); if (data !== null) { return Promise.resolve(createIterResult(data, false)); } promise = new Promise(this[kHandlePromise]); } this[kLastPromise] = promise; return promise; }, "next") }, _defineProperty(_Object$setPrototypeO, Symbol.asyncIterator, function() { return this; }), _defineProperty(_Object$setPrototypeO, "return", /* @__PURE__ */ __name(function _return() { var _this2 = this; return new Promise(function(resolve, reject) { _this2[kStream].destroy(null, function(err) { if (err) { reject(err); return; } resolve(createIterResult(void 0, true)); }); }); }, "_return")), _Object$setPrototypeO), AsyncIteratorPrototype); var createReadableStreamAsyncIterator = /* @__PURE__ */ __name(function createReadableStreamAsyncIterator2(stream) { var _Object$create; var iterator = Object.create(ReadableStreamAsyncIteratorPrototype, (_Object$create = {}, _defineProperty(_Object$create, kStream, { value: stream, writable: true }), _defineProperty(_Object$create, kLastResolve, { value: null, writable: true }), _defineProperty(_Object$create, kLastReject, { value: null, writable: true }), _defineProperty(_Object$create, kError, { value: null, writable: true }), _defineProperty(_Object$create, kEnded, { value: stream._readableState.endEmitted, writable: true }), _defineProperty(_Object$create, kHandlePromise, { value: /* @__PURE__ */ __name(function value(resolve, reject) { var data = iterator[kStream].read(); if (data) { iterator[kLastPromise] = null; iterator[kLastResolve] = null; iterator[kLastReject] = null; resolve(createIterResult(data, false)); } else { iterator[kLastResolve] = resolve; iterator[kLastReject] = reject; } }, "value"), writable: true }), _Object$create)); iterator[kLastPromise] = null; finished(stream, function(err) { if (err && err.code !== "ERR_STREAM_PREMATURE_CLOSE") { var reject = iterator[kLastReject]; if (reject !== null) { iterator[kLastPromise] = null; iterator[kLastResolve] = null; iterator[kLastReject] = null; reject(err); } iterator[kError] = err; return; } var resolve = iterator[kLastResolve]; if (resolve !== null) { iterator[kLastPromise] = null; iterator[kLastResolve] = null; iterator[kLastReject] = null; resolve(createIterResult(void 0, true)); } iterator[kEnded] = true; }); stream.on("readable", onReadable.bind(null, iterator)); return iterator; }, "createReadableStreamAsyncIterator"); module2.exports = createReadableStreamAsyncIterator; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/from.js var require_from2 = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/from.js"(exports2, module2) { "use strict"; function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } __name(asyncGeneratorStep, "asyncGeneratorStep"); function _asyncToGenerator(fn) { return function() { var self2 = this, args = arguments; return new Promise(function(resolve, reject) { var gen = fn.apply(self2, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } __name(_next, "_next"); function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } __name(_throw, "_throw"); _next(void 0); }); }; } __name(_asyncToGenerator, "_asyncToGenerator"); function ownKeys2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function(sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } __name(ownKeys2, "ownKeys"); function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys2(Object(source), true).forEach(function(key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys2(Object(source)).forEach(function(key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } __name(_objectSpread, "_objectSpread"); function _defineProperty(obj2, key, value) { key = _toPropertyKey(key); if (key in obj2) { Object.defineProperty(obj2, key, { value, enumerable: true, configurable: true, writable: true }); } else { obj2[key] = value; } return obj2; } __name(_defineProperty, "_defineProperty"); function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } __name(_toPropertyKey, "_toPropertyKey"); function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== void 0) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } __name(_toPrimitive, "_toPrimitive"); var ERR_INVALID_ARG_TYPE = require_errors().codes.ERR_INVALID_ARG_TYPE; function from(Readable, iterable, opts) { var iterator; if (iterable && typeof iterable.next === "function") { iterator = iterable; } else if (iterable && iterable[Symbol.asyncIterator]) iterator = iterable[Symbol.asyncIterator](); else if (iterable && iterable[Symbol.iterator]) iterator = iterable[Symbol.iterator](); else throw new ERR_INVALID_ARG_TYPE("iterable", ["Iterable"], iterable); var readable = new Readable(_objectSpread({ objectMode: true }, opts)); var reading = false; readable._read = function() { if (!reading) { reading = true; next(); } }; function next() { return _next2.apply(this, arguments); } __name(next, "next"); function _next2() { _next2 = _asyncToGenerator(function* () { try { var _yield$iterator$next = yield iterator.next(), value = _yield$iterator$next.value, done = _yield$iterator$next.done; if (done) { readable.push(null); } else if (readable.push(yield value)) { next(); } else { reading = false; } } catch (err) { readable.destroy(err); } }); return _next2.apply(this, arguments); } __name(_next2, "_next2"); return readable; } __name(from, "from"); module2.exports = from; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_readable.js var require_stream_readable = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_readable.js"(exports2, module2) { "use strict"; module2.exports = Readable; var Duplex; Readable.ReadableState = ReadableState; var EE = require("events").EventEmitter; var EElistenerCount = /* @__PURE__ */ __name(function EElistenerCount2(emitter, type) { return emitter.listeners(type).length; }, "EElistenerCount"); var Stream = require_stream(); var Buffer2 = require("buffer").Buffer; var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { }; function _uint8ArrayToBuffer(chunk) { return Buffer2.from(chunk); } __name(_uint8ArrayToBuffer, "_uint8ArrayToBuffer"); function _isUint8Array(obj2) { return Buffer2.isBuffer(obj2) || obj2 instanceof OurUint8Array; } __name(_isUint8Array, "_isUint8Array"); var debugUtil = require("util"); var debug; if (debugUtil && debugUtil.debuglog) { debug = debugUtil.debuglog("stream"); } else { debug = /* @__PURE__ */ __name(function debug2() { }, "debug"); } var BufferList = require_buffer_list(); var destroyImpl = require_destroy2(); var _require = require_state(); var getHighWaterMark = _require.getHighWaterMark; var _require$codes = require_errors().codes; var ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE; var ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF; var ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED; var ERR_STREAM_UNSHIFT_AFTER_END_EVENT = _require$codes.ERR_STREAM_UNSHIFT_AFTER_END_EVENT; var StringDecoder; var createReadableStreamAsyncIterator; var from; require_inherits()(Readable, Stream); var errorOrDestroy = destroyImpl.errorOrDestroy; var kProxyEvents = ["error", "close", "destroy", "pause", "resume"]; function prependListener(emitter, event, fn) { if (typeof emitter.prependListener === "function") return emitter.prependListener(event, fn); if (!emitter._events || !emitter._events[event]) emitter.on(event, fn); else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn); else emitter._events[event] = [fn, emitter._events[event]]; } __name(prependListener, "prependListener"); function ReadableState(options, stream, isDuplex) { Duplex = Duplex || require_stream_duplex(); options = options || {}; if (typeof isDuplex !== "boolean") isDuplex = stream instanceof Duplex; this.objectMode = !!options.objectMode; if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode; this.highWaterMark = getHighWaterMark(this, options, "readableHighWaterMark", isDuplex); this.buffer = new BufferList(); this.length = 0; this.pipes = null; this.pipesCount = 0; this.flowing = null; this.ended = false; this.endEmitted = false; this.reading = false; this.sync = true; this.needReadable = false; this.emittedReadable = false; this.readableListening = false; this.resumeScheduled = false; this.paused = true; this.emitClose = options.emitClose !== false; this.autoDestroy = !!options.autoDestroy; this.destroyed = false; this.defaultEncoding = options.defaultEncoding || "utf8"; this.awaitDrain = 0; this.readingMore = false; this.decoder = null; this.encoding = null; if (options.encoding) { if (!StringDecoder) StringDecoder = require_string_decoder().StringDecoder; this.decoder = new StringDecoder(options.encoding); this.encoding = options.encoding; } } __name(ReadableState, "ReadableState"); function Readable(options) { Duplex = Duplex || require_stream_duplex(); if (!(this instanceof Readable)) return new Readable(options); var isDuplex = this instanceof Duplex; this._readableState = new ReadableState(options, this, isDuplex); this.readable = true; if (options) { if (typeof options.read === "function") this._read = options.read; if (typeof options.destroy === "function") this._destroy = options.destroy; } Stream.call(this); } __name(Readable, "Readable"); Object.defineProperty(Readable.prototype, "destroyed", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { if (this._readableState === void 0) { return false; } return this._readableState.destroyed; }, "get"), set: /* @__PURE__ */ __name(function set(value) { if (!this._readableState) { return; } this._readableState.destroyed = value; }, "set") }); Readable.prototype.destroy = destroyImpl.destroy; Readable.prototype._undestroy = destroyImpl.undestroy; Readable.prototype._destroy = function(err, cb) { cb(err); }; Readable.prototype.push = function(chunk, encoding) { var state = this._readableState; var skipChunkCheck; if (!state.objectMode) { if (typeof chunk === "string") { encoding = encoding || state.defaultEncoding; if (encoding !== state.encoding) { chunk = Buffer2.from(chunk, encoding); encoding = ""; } skipChunkCheck = true; } } else { skipChunkCheck = true; } return readableAddChunk(this, chunk, encoding, false, skipChunkCheck); }; Readable.prototype.unshift = function(chunk) { return readableAddChunk(this, chunk, null, true, false); }; function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) { debug("readableAddChunk", chunk); var state = stream._readableState; if (chunk === null) { state.reading = false; onEofChunk(stream, state); } else { var er; if (!skipChunkCheck) er = chunkInvalid(state, chunk); if (er) { errorOrDestroy(stream, er); } else if (state.objectMode || chunk && chunk.length > 0) { if (typeof chunk !== "string" && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer2.prototype) { chunk = _uint8ArrayToBuffer(chunk); } if (addToFront) { if (state.endEmitted) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT()); else addChunk(stream, state, chunk, true); } else if (state.ended) { errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF()); } else if (state.destroyed) { return false; } else { state.reading = false; if (state.decoder && !encoding) { chunk = state.decoder.write(chunk); if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false); else maybeReadMore(stream, state); } else { addChunk(stream, state, chunk, false); } } } else if (!addToFront) { state.reading = false; maybeReadMore(stream, state); } } return !state.ended && (state.length < state.highWaterMark || state.length === 0); } __name(readableAddChunk, "readableAddChunk"); function addChunk(stream, state, chunk, addToFront) { if (state.flowing && state.length === 0 && !state.sync) { state.awaitDrain = 0; stream.emit("data", chunk); } else { state.length += state.objectMode ? 1 : chunk.length; if (addToFront) state.buffer.unshift(chunk); else state.buffer.push(chunk); if (state.needReadable) emitReadable(stream); } maybeReadMore(stream, state); } __name(addChunk, "addChunk"); function chunkInvalid(state, chunk) { var er; if (!_isUint8Array(chunk) && typeof chunk !== "string" && chunk !== void 0 && !state.objectMode) { er = new ERR_INVALID_ARG_TYPE("chunk", ["string", "Buffer", "Uint8Array"], chunk); } return er; } __name(chunkInvalid, "chunkInvalid"); Readable.prototype.isPaused = function() { return this._readableState.flowing === false; }; Readable.prototype.setEncoding = function(enc) { if (!StringDecoder) StringDecoder = require_string_decoder().StringDecoder; var decoder = new StringDecoder(enc); this._readableState.decoder = decoder; this._readableState.encoding = this._readableState.decoder.encoding; var p = this._readableState.buffer.head; var content = ""; while (p !== null) { content += decoder.write(p.data); p = p.next; } this._readableState.buffer.clear(); if (content !== "") this._readableState.buffer.push(content); this._readableState.length = content.length; return this; }; var MAX_HWM = 1073741824; function computeNewHighWaterMark(n) { if (n >= MAX_HWM) { n = MAX_HWM; } else { n--; n |= n >>> 1; n |= n >>> 2; n |= n >>> 4; n |= n >>> 8; n |= n >>> 16; n++; } return n; } __name(computeNewHighWaterMark, "computeNewHighWaterMark"); function howMuchToRead(n, state) { if (n <= 0 || state.length === 0 && state.ended) return 0; if (state.objectMode) return 1; if (n !== n) { if (state.flowing && state.length) return state.buffer.head.data.length; else return state.length; } if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n); if (n <= state.length) return n; if (!state.ended) { state.needReadable = true; return 0; } return state.length; } __name(howMuchToRead, "howMuchToRead"); Readable.prototype.read = function(n) { debug("read", n); n = parseInt(n, 10); var state = this._readableState; var nOrig = n; if (n !== 0) state.emittedReadable = false; if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) { debug("read: emitReadable", state.length, state.ended); if (state.length === 0 && state.ended) endReadable(this); else emitReadable(this); return null; } n = howMuchToRead(n, state); if (n === 0 && state.ended) { if (state.length === 0) endReadable(this); return null; } var doRead = state.needReadable; debug("need readable", doRead); if (state.length === 0 || state.length - n < state.highWaterMark) { doRead = true; debug("length less than watermark", doRead); } if (state.ended || state.reading) { doRead = false; debug("reading or ended", doRead); } else if (doRead) { debug("do read"); state.reading = true; state.sync = true; if (state.length === 0) state.needReadable = true; this._read(state.highWaterMark); state.sync = false; if (!state.reading) n = howMuchToRead(nOrig, state); } var ret2; if (n > 0) ret2 = fromList(n, state); else ret2 = null; if (ret2 === null) { state.needReadable = state.length <= state.highWaterMark; n = 0; } else { state.length -= n; state.awaitDrain = 0; } if (state.length === 0) { if (!state.ended) state.needReadable = true; if (nOrig !== n && state.ended) endReadable(this); } if (ret2 !== null) this.emit("data", ret2); return ret2; }; function onEofChunk(stream, state) { debug("onEofChunk"); if (state.ended) return; if (state.decoder) { var chunk = state.decoder.end(); if (chunk && chunk.length) { state.buffer.push(chunk); state.length += state.objectMode ? 1 : chunk.length; } } state.ended = true; if (state.sync) { emitReadable(stream); } else { state.needReadable = false; if (!state.emittedReadable) { state.emittedReadable = true; emitReadable_(stream); } } } __name(onEofChunk, "onEofChunk"); function emitReadable(stream) { var state = stream._readableState; debug("emitReadable", state.needReadable, state.emittedReadable); state.needReadable = false; if (!state.emittedReadable) { debug("emitReadable", state.flowing); state.emittedReadable = true; process.nextTick(emitReadable_, stream); } } __name(emitReadable, "emitReadable"); function emitReadable_(stream) { var state = stream._readableState; debug("emitReadable_", state.destroyed, state.length, state.ended); if (!state.destroyed && (state.length || state.ended)) { stream.emit("readable"); state.emittedReadable = false; } state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark; flow(stream); } __name(emitReadable_, "emitReadable_"); function maybeReadMore(stream, state) { if (!state.readingMore) { state.readingMore = true; process.nextTick(maybeReadMore_, stream, state); } } __name(maybeReadMore, "maybeReadMore"); function maybeReadMore_(stream, state) { while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) { var len = state.length; debug("maybeReadMore read 0"); stream.read(0); if (len === state.length) break; } state.readingMore = false; } __name(maybeReadMore_, "maybeReadMore_"); Readable.prototype._read = function(n) { errorOrDestroy(this, new ERR_METHOD_NOT_IMPLEMENTED("_read()")); }; Readable.prototype.pipe = function(dest, pipeOpts) { var src = this; var state = this._readableState; switch (state.pipesCount) { case 0: state.pipes = dest; break; case 1: state.pipes = [state.pipes, dest]; break; default: state.pipes.push(dest); break; } state.pipesCount += 1; debug("pipe count=%d opts=%j", state.pipesCount, pipeOpts); var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr; var endFn = doEnd ? onend : unpipe; if (state.endEmitted) process.nextTick(endFn); else src.once("end", endFn); dest.on("unpipe", onunpipe); function onunpipe(readable, unpipeInfo) { debug("onunpipe"); if (readable === src) { if (unpipeInfo && unpipeInfo.hasUnpiped === false) { unpipeInfo.hasUnpiped = true; cleanup(); } } } __name(onunpipe, "onunpipe"); function onend() { debug("onend"); dest.end(); } __name(onend, "onend"); var ondrain = pipeOnDrain(src); dest.on("drain", ondrain); var cleanedUp = false; function cleanup() { debug("cleanup"); dest.removeListener("close", onclose); dest.removeListener("finish", onfinish); dest.removeListener("drain", ondrain); dest.removeListener("error", onerror); dest.removeListener("unpipe", onunpipe); src.removeListener("end", onend); src.removeListener("end", unpipe); src.removeListener("data", ondata); cleanedUp = true; if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain(); } __name(cleanup, "cleanup"); src.on("data", ondata); function ondata(chunk) { debug("ondata"); var ret2 = dest.write(chunk); debug("dest.write", ret2); if (ret2 === false) { if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) { debug("false write response, pause", state.awaitDrain); state.awaitDrain++; } src.pause(); } } __name(ondata, "ondata"); function onerror(er) { debug("onerror", er); unpipe(); dest.removeListener("error", onerror); if (EElistenerCount(dest, "error") === 0) errorOrDestroy(dest, er); } __name(onerror, "onerror"); prependListener(dest, "error", onerror); function onclose() { dest.removeListener("finish", onfinish); unpipe(); } __name(onclose, "onclose"); dest.once("close", onclose); function onfinish() { debug("onfinish"); dest.removeListener("close", onclose); unpipe(); } __name(onfinish, "onfinish"); dest.once("finish", onfinish); function unpipe() { debug("unpipe"); src.unpipe(dest); } __name(unpipe, "unpipe"); dest.emit("pipe", src); if (!state.flowing) { debug("pipe resume"); src.resume(); } return dest; }; function pipeOnDrain(src) { return /* @__PURE__ */ __name(function pipeOnDrainFunctionResult() { var state = src._readableState; debug("pipeOnDrain", state.awaitDrain); if (state.awaitDrain) state.awaitDrain--; if (state.awaitDrain === 0 && EElistenerCount(src, "data")) { state.flowing = true; flow(src); } }, "pipeOnDrainFunctionResult"); } __name(pipeOnDrain, "pipeOnDrain"); Readable.prototype.unpipe = function(dest) { var state = this._readableState; var unpipeInfo = { hasUnpiped: false }; if (state.pipesCount === 0) return this; if (state.pipesCount === 1) { if (dest && dest !== state.pipes) return this; if (!dest) dest = state.pipes; state.pipes = null; state.pipesCount = 0; state.flowing = false; if (dest) dest.emit("unpipe", this, unpipeInfo); return this; } if (!dest) { var dests = state.pipes; var len = state.pipesCount; state.pipes = null; state.pipesCount = 0; state.flowing = false; for (var i = 0; i < len; i++) dests[i].emit("unpipe", this, { hasUnpiped: false }); return this; } var index = indexOf(state.pipes, dest); if (index === -1) return this; state.pipes.splice(index, 1); state.pipesCount -= 1; if (state.pipesCount === 1) state.pipes = state.pipes[0]; dest.emit("unpipe", this, unpipeInfo); return this; }; Readable.prototype.on = function(ev, fn) { var res = Stream.prototype.on.call(this, ev, fn); var state = this._readableState; if (ev === "data") { state.readableListening = this.listenerCount("readable") > 0; if (state.flowing !== false) this.resume(); } else if (ev === "readable") { if (!state.endEmitted && !state.readableListening) { state.readableListening = state.needReadable = true; state.flowing = false; state.emittedReadable = false; debug("on readable", state.length, state.reading); if (state.length) { emitReadable(this); } else if (!state.reading) { process.nextTick(nReadingNextTick, this); } } } return res; }; Readable.prototype.addListener = Readable.prototype.on; Readable.prototype.removeListener = function(ev, fn) { var res = Stream.prototype.removeListener.call(this, ev, fn); if (ev === "readable") { process.nextTick(updateReadableListening, this); } return res; }; Readable.prototype.removeAllListeners = function(ev) { var res = Stream.prototype.removeAllListeners.apply(this, arguments); if (ev === "readable" || ev === void 0) { process.nextTick(updateReadableListening, this); } return res; }; function updateReadableListening(self2) { var state = self2._readableState; state.readableListening = self2.listenerCount("readable") > 0; if (state.resumeScheduled && !state.paused) { state.flowing = true; } else if (self2.listenerCount("data") > 0) { self2.resume(); } } __name(updateReadableListening, "updateReadableListening"); function nReadingNextTick(self2) { debug("readable nexttick read 0"); self2.read(0); } __name(nReadingNextTick, "nReadingNextTick"); Readable.prototype.resume = function() { var state = this._readableState; if (!state.flowing) { debug("resume"); state.flowing = !state.readableListening; resume(this, state); } state.paused = false; return this; }; function resume(stream, state) { if (!state.resumeScheduled) { state.resumeScheduled = true; process.nextTick(resume_, stream, state); } } __name(resume, "resume"); function resume_(stream, state) { debug("resume", state.reading); if (!state.reading) { stream.read(0); } state.resumeScheduled = false; stream.emit("resume"); flow(stream); if (state.flowing && !state.reading) stream.read(0); } __name(resume_, "resume_"); Readable.prototype.pause = function() { debug("call pause flowing=%j", this._readableState.flowing); if (this._readableState.flowing !== false) { debug("pause"); this._readableState.flowing = false; this.emit("pause"); } this._readableState.paused = true; return this; }; function flow(stream) { var state = stream._readableState; debug("flow", state.flowing); while (state.flowing && stream.read() !== null) ; } __name(flow, "flow"); Readable.prototype.wrap = function(stream) { var _this = this; var state = this._readableState; var paused = false; stream.on("end", function() { debug("wrapped end"); if (state.decoder && !state.ended) { var chunk = state.decoder.end(); if (chunk && chunk.length) _this.push(chunk); } _this.push(null); }); stream.on("data", function(chunk) { debug("wrapped data"); if (state.decoder) chunk = state.decoder.write(chunk); if (state.objectMode && (chunk === null || chunk === void 0)) return; else if (!state.objectMode && (!chunk || !chunk.length)) return; var ret2 = _this.push(chunk); if (!ret2) { paused = true; stream.pause(); } }); for (var i in stream) { if (this[i] === void 0 && typeof stream[i] === "function") { this[i] = (/* @__PURE__ */ __name(function methodWrap(method) { return /* @__PURE__ */ __name(function methodWrapReturnFunction() { return stream[method].apply(stream, arguments); }, "methodWrapReturnFunction"); }, "methodWrap"))(i); } } for (var n = 0; n < kProxyEvents.length; n++) { stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n])); } this._read = function(n2) { debug("wrapped _read", n2); if (paused) { paused = false; stream.resume(); } }; return this; }; if (typeof Symbol === "function") { Readable.prototype[Symbol.asyncIterator] = function() { if (createReadableStreamAsyncIterator === void 0) { createReadableStreamAsyncIterator = require_async_iterator(); } return createReadableStreamAsyncIterator(this); }; } Object.defineProperty(Readable.prototype, "readableHighWaterMark", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { return this._readableState.highWaterMark; }, "get") }); Object.defineProperty(Readable.prototype, "readableBuffer", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { return this._readableState && this._readableState.buffer; }, "get") }); Object.defineProperty(Readable.prototype, "readableFlowing", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { return this._readableState.flowing; }, "get"), set: /* @__PURE__ */ __name(function set(state) { if (this._readableState) { this._readableState.flowing = state; } }, "set") }); Readable._fromList = fromList; Object.defineProperty(Readable.prototype, "readableLength", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function get() { return this._readableState.length; }, "get") }); function fromList(n, state) { if (state.length === 0) return null; var ret2; if (state.objectMode) ret2 = state.buffer.shift(); else if (!n || n >= state.length) { if (state.decoder) ret2 = state.buffer.join(""); else if (state.buffer.length === 1) ret2 = state.buffer.first(); else ret2 = state.buffer.concat(state.length); state.buffer.clear(); } else { ret2 = state.buffer.consume(n, state.decoder); } return ret2; } __name(fromList, "fromList"); function endReadable(stream) { var state = stream._readableState; debug("endReadable", state.endEmitted); if (!state.endEmitted) { state.ended = true; process.nextTick(endReadableNT, state, stream); } } __name(endReadable, "endReadable"); function endReadableNT(state, stream) { debug("endReadableNT", state.endEmitted, state.length); if (!state.endEmitted && state.length === 0) { state.endEmitted = true; stream.readable = false; stream.emit("end"); if (state.autoDestroy) { var wState = stream._writableState; if (!wState || wState.autoDestroy && wState.finished) { stream.destroy(); } } } } __name(endReadableNT, "endReadableNT"); if (typeof Symbol === "function") { Readable.from = function(iterable, opts) { if (from === void 0) { from = require_from2(); } return from(Readable, iterable, opts); }; } function indexOf(xs, x) { for (var i = 0, l2 = xs.length; i < l2; i++) { if (xs[i] === x) return i; } return -1; } __name(indexOf, "indexOf"); } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_transform.js var require_stream_transform = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_transform.js"(exports2, module2) { "use strict"; module2.exports = Transform; var _require$codes = require_errors().codes; var ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED; var ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK; var ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING; var ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0; var Duplex = require_stream_duplex(); require_inherits()(Transform, Duplex); function afterTransform(er, data) { var ts = this._transformState; ts.transforming = false; var cb = ts.writecb; if (cb === null) { return this.emit("error", new ERR_MULTIPLE_CALLBACK()); } ts.writechunk = null; ts.writecb = null; if (data != null) this.push(data); cb(er); var rs = this._readableState; rs.reading = false; if (rs.needReadable || rs.length < rs.highWaterMark) { this._read(rs.highWaterMark); } } __name(afterTransform, "afterTransform"); function Transform(options) { if (!(this instanceof Transform)) return new Transform(options); Duplex.call(this, options); this._transformState = { afterTransform: afterTransform.bind(this), needTransform: false, transforming: false, writecb: null, writechunk: null, writeencoding: null }; this._readableState.needReadable = true; this._readableState.sync = false; if (options) { if (typeof options.transform === "function") this._transform = options.transform; if (typeof options.flush === "function") this._flush = options.flush; } this.on("prefinish", prefinish); } __name(Transform, "Transform"); function prefinish() { var _this = this; if (typeof this._flush === "function" && !this._readableState.destroyed) { this._flush(function(er, data) { done(_this, er, data); }); } else { done(this, null, null); } } __name(prefinish, "prefinish"); Transform.prototype.push = function(chunk, encoding) { this._transformState.needTransform = false; return Duplex.prototype.push.call(this, chunk, encoding); }; Transform.prototype._transform = function(chunk, encoding, cb) { cb(new ERR_METHOD_NOT_IMPLEMENTED("_transform()")); }; Transform.prototype._write = function(chunk, encoding, cb) { var ts = this._transformState; ts.writecb = cb; ts.writechunk = chunk; ts.writeencoding = encoding; if (!ts.transforming) { var rs = this._readableState; if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark); } }; Transform.prototype._read = function(n) { var ts = this._transformState; if (ts.writechunk !== null && !ts.transforming) { ts.transforming = true; this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform); } else { ts.needTransform = true; } }; Transform.prototype._destroy = function(err, cb) { Duplex.prototype._destroy.call(this, err, function(err2) { cb(err2); }); }; function done(stream, er, data) { if (er) return stream.emit("error", er); if (data != null) stream.push(data); if (stream._writableState.length) throw new ERR_TRANSFORM_WITH_LENGTH_0(); if (stream._transformState.transforming) throw new ERR_TRANSFORM_ALREADY_TRANSFORMING(); return stream.push(null); } __name(done, "done"); } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_passthrough.js var require_stream_passthrough = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_passthrough.js"(exports2, module2) { "use strict"; module2.exports = PassThrough; var Transform = require_stream_transform(); require_inherits()(PassThrough, Transform); function PassThrough(options) { if (!(this instanceof PassThrough)) return new PassThrough(options); Transform.call(this, options); } __name(PassThrough, "PassThrough"); PassThrough.prototype._transform = function(chunk, encoding, cb) { cb(null, chunk); }; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/pipeline.js var require_pipeline = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/pipeline.js"(exports2, module2) { "use strict"; var eos; function once(callback) { var called = false; return function() { if (called) return; called = true; callback.apply(void 0, arguments); }; } __name(once, "once"); var _require$codes = require_errors().codes; var ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS; var ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED; function noop(err) { if (err) throw err; } __name(noop, "noop"); function isRequest(stream) { return stream.setHeader && typeof stream.abort === "function"; } __name(isRequest, "isRequest"); function destroyer(stream, reading, writing, callback) { callback = once(callback); var closed = false; stream.on("close", function() { closed = true; }); if (eos === void 0) eos = require_end_of_stream(); eos(stream, { readable: reading, writable: writing }, function(err) { if (err) return callback(err); closed = true; callback(); }); var destroyed = false; return function(err) { if (closed) return; if (destroyed) return; destroyed = true; if (isRequest(stream)) return stream.abort(); if (typeof stream.destroy === "function") return stream.destroy(); callback(err || new ERR_STREAM_DESTROYED("pipe")); }; } __name(destroyer, "destroyer"); function call(fn) { fn(); } __name(call, "call"); function pipe(from, to) { return from.pipe(to); } __name(pipe, "pipe"); function popCallback(streams) { if (!streams.length) return noop; if (typeof streams[streams.length - 1] !== "function") return noop; return streams.pop(); } __name(popCallback, "popCallback"); function pipeline() { for (var _len = arguments.length, streams = new Array(_len), _key = 0; _key < _len; _key++) { streams[_key] = arguments[_key]; } var callback = popCallback(streams); if (Array.isArray(streams[0])) streams = streams[0]; if (streams.length < 2) { throw new ERR_MISSING_ARGS("streams"); } var error; var destroys = streams.map(function(stream, i) { var reading = i < streams.length - 1; var writing = i > 0; return destroyer(stream, reading, writing, function(err) { if (!error) error = err; if (err) destroys.forEach(call); if (reading) return; destroys.forEach(call); callback(error); }); }); return streams.reduce(pipe); } __name(pipeline, "pipeline"); module2.exports = pipeline; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/readable.js var require_readable = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/readable.js"(exports2, module2) { var Stream = require("stream"); if (process.env.READABLE_STREAM === "disable" && Stream) { module2.exports = Stream.Readable; Object.assign(module2.exports, Stream); module2.exports.Stream = Stream; } else { exports2 = module2.exports = require_stream_readable(); exports2.Stream = Stream || exports2; exports2.Readable = exports2; exports2.Writable = require_stream_writable(); exports2.Duplex = require_stream_duplex(); exports2.Transform = require_stream_transform(); exports2.PassThrough = require_stream_passthrough(); exports2.finished = require_end_of_stream(); exports2.pipeline = require_pipeline(); } } }); // ../../node_modules/.pnpm/buffer-from@1.1.2/node_modules/buffer-from/index.js var require_buffer_from = __commonJS({ "../../node_modules/.pnpm/buffer-from@1.1.2/node_modules/buffer-from/index.js"(exports2, module2) { var toString2 = Object.prototype.toString; var isModern = typeof Buffer !== "undefined" && typeof Buffer.alloc === "function" && typeof Buffer.allocUnsafe === "function" && typeof Buffer.from === "function"; function isArrayBuffer(input) { return toString2.call(input).slice(8, -1) === "ArrayBuffer"; } __name(isArrayBuffer, "isArrayBuffer"); function fromArrayBuffer(obj2, byteOffset, length) { byteOffset >>>= 0; var maxLength = obj2.byteLength - byteOffset; if (maxLength < 0) { throw new RangeError("'offset' is out of bounds"); } if (length === void 0) { length = maxLength; } else { length >>>= 0; if (length > maxLength) { throw new RangeError("'length' is out of bounds"); } } return isModern ? Buffer.from(obj2.slice(byteOffset, byteOffset + length)) : new Buffer(new Uint8Array(obj2.slice(byteOffset, byteOffset + length))); } __name(fromArrayBuffer, "fromArrayBuffer"); function fromString(string, encoding) { if (typeof encoding !== "string" || encoding === "") { encoding = "utf8"; } if (!Buffer.isEncoding(encoding)) { throw new TypeError('"encoding" must be a valid string encoding'); } return isModern ? Buffer.from(string, encoding) : new Buffer(string, encoding); } __name(fromString, "fromString"); function bufferFrom(value, encodingOrOffset, length) { if (typeof value === "number") { throw new TypeError('"value" argument must not be a number'); } if (isArrayBuffer(value)) { return fromArrayBuffer(value, encodingOrOffset, length); } if (typeof value === "string") { return fromString(value, encodingOrOffset); } return isModern ? Buffer.from(value) : new Buffer(value); } __name(bufferFrom, "bufferFrom"); module2.exports = bufferFrom; } }); // ../../node_modules/.pnpm/typedarray@0.0.6/node_modules/typedarray/index.js var require_typedarray = __commonJS({ "../../node_modules/.pnpm/typedarray@0.0.6/node_modules/typedarray/index.js"(exports2) { var undefined2 = void 0; var MAX_ARRAY_LENGTH = 1e5; var ECMAScript = /* @__PURE__ */ (function() { var opts = Object.prototype.toString, ophop = Object.prototype.hasOwnProperty; return { // Class returns internal [[Class]] property, used to avoid cross-frame instanceof issues: Class: /* @__PURE__ */ __name(function(v) { return opts.call(v).replace(/^\[object *|\]$/g, ""); }, "Class"), HasProperty: /* @__PURE__ */ __name(function(o, p) { return p in o; }, "HasProperty"), HasOwnProperty: /* @__PURE__ */ __name(function(o, p) { return ophop.call(o, p); }, "HasOwnProperty"), IsCallable: /* @__PURE__ */ __name(function(o) { return typeof o === "function"; }, "IsCallable"), ToInt32: /* @__PURE__ */ __name(function(v) { return v >> 0; }, "ToInt32"), ToUint32: /* @__PURE__ */ __name(function(v) { return v >>> 0; }, "ToUint32") }; })(); var LN2 = Math.LN2; var abs = Math.abs; var floor = Math.floor; var log = Math.log; var min = Math.min; var pow = Math.pow; var round = Math.round; function configureProperties(obj2) { if (getOwnPropNames && defineProp) { var props = getOwnPropNames(obj2), i; for (i = 0; i < props.length; i += 1) { defineProp(obj2, props[i], { value: obj2[props[i]], writable: false, enumerable: false, configurable: false }); } } } __name(configureProperties, "configureProperties"); var defineProp; if (Object.defineProperty && (function() { try { Object.defineProperty({}, "x", {}); return true; } catch (e) { return false; } })()) { defineProp = Object.defineProperty; } else { defineProp = /* @__PURE__ */ __name(function(o, p, desc) { if (!o === Object(o)) throw new TypeError("Object.defineProperty called on non-object"); if (ECMAScript.HasProperty(desc, "get") && Object.prototype.__defineGetter__) { Object.prototype.__defineGetter__.call(o, p, desc.get); } if (ECMAScript.HasProperty(desc, "set") && Object.prototype.__defineSetter__) { Object.prototype.__defineSetter__.call(o, p, desc.set); } if (ECMAScript.HasProperty(desc, "value")) { o[p] = desc.value; } return o; }, "defineProp"); } var getOwnPropNames = Object.getOwnPropertyNames || function(o) { if (o !== Object(o)) throw new TypeError("Object.getOwnPropertyNames called on non-object"); var props = [], p; for (p in o) { if (ECMAScript.HasOwnProperty(o, p)) { props.push(p); } } return props; }; function makeArrayAccessors(obj2) { if (!defineProp) { return; } if (obj2.length > MAX_ARRAY_LENGTH) throw new RangeError("Array too large for polyfill"); function makeArrayAccessor(index) { defineProp(obj2, index, { "get": /* @__PURE__ */ __name(function() { return obj2._getter(index); }, "get"), "set": /* @__PURE__ */ __name(function(v) { obj2._setter(index, v); }, "set"), enumerable: true, configurable: false }); } __name(makeArrayAccessor, "makeArrayAccessor"); var i; for (i = 0; i < obj2.length; i += 1) { makeArrayAccessor(i); } } __name(makeArrayAccessors, "makeArrayAccessors"); function as_signed(value, bits) { var s = 32 - bits; return value << s >> s; } __name(as_signed, "as_signed"); function as_unsigned(value, bits) { var s = 32 - bits; return value << s >>> s; } __name(as_unsigned, "as_unsigned"); function packI8(n) { return [n & 255]; } __name(packI8, "packI8"); function unpackI8(bytes) { return as_signed(bytes[0], 8); } __name(unpackI8, "unpackI8"); function packU8(n) { return [n & 255]; } __name(packU8, "packU8"); function unpackU8(bytes) { return as_unsigned(bytes[0], 8); } __name(unpackU8, "unpackU8"); function packU8Clamped(n) { n = round(Number(n)); return [n < 0 ? 0 : n > 255 ? 255 : n & 255]; } __name(packU8Clamped, "packU8Clamped"); function packI16(n) { return [n >> 8 & 255, n & 255]; } __name(packI16, "packI16"); function unpackI16(bytes) { return as_signed(bytes[0] << 8 | bytes[1], 16); } __name(unpackI16, "unpackI16"); function packU16(n) { return [n >> 8 & 255, n & 255]; } __name(packU16, "packU16"); function unpackU16(bytes) { return as_unsigned(bytes[0] << 8 | bytes[1], 16); } __name(unpackU16, "unpackU16"); function packI32(n) { return [n >> 24 & 255, n >> 16 & 255, n >> 8 & 255, n & 255]; } __name(packI32, "packI32"); function unpackI32(bytes) { return as_signed(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32); } __name(unpackI32, "unpackI32"); function packU32(n) { return [n >> 24 & 255, n >> 16 & 255, n >> 8 & 255, n & 255]; } __name(packU32, "packU32"); function unpackU32(bytes) { return as_unsigned(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32); } __name(unpackU32, "unpackU32"); function packIEEE754(v, ebits, fbits) { var bias = (1 << ebits - 1) - 1, s, e, f, ln, i, bits, str, bytes; function roundToEven(n) { var w = floor(n), f2 = n - w; if (f2 < 0.5) return w; if (f2 > 0.5) return w + 1; return w % 2 ? w + 1 : w; } __name(roundToEven, "roundToEven"); if (v !== v) { e = (1 << ebits) - 1; f = pow(2, fbits - 1); s = 0; } else if (v === Infinity || v === -Infinity) { e = (1 << ebits) - 1; f = 0; s = v < 0 ? 1 : 0; } else if (v === 0) { e = 0; f = 0; s = 1 / v === -Infinity ? 1 : 0; } else { s = v < 0; v = abs(v); if (v >= pow(2, 1 - bias)) { e = min(floor(log(v) / LN2), 1023); f = roundToEven(v / pow(2, e) * pow(2, fbits)); if (f / pow(2, fbits) >= 2) { e = e + 1; f = 1; } if (e > bias) { e = (1 << ebits) - 1; f = 0; } else { e = e + bias; f = f - pow(2, fbits); } } else { e = 0; f = roundToEven(v / pow(2, 1 - bias - fbits)); } } bits = []; for (i = fbits; i; i -= 1) { bits.push(f % 2 ? 1 : 0); f = floor(f / 2); } for (i = ebits; i; i -= 1) { bits.push(e % 2 ? 1 : 0); e = floor(e / 2); } bits.push(s ? 1 : 0); bits.reverse(); str = bits.join(""); bytes = []; while (str.length) { bytes.push(parseInt(str.substring(0, 8), 2)); str = str.substring(8); } return bytes; } __name(packIEEE754, "packIEEE754"); function unpackIEEE754(bytes, ebits, fbits) { var bits = [], i, j, b, str, bias, s, e, f; for (i = bytes.length; i; i -= 1) { b = bytes[i - 1]; for (j = 8; j; j -= 1) { bits.push(b % 2 ? 1 : 0); b = b >> 1; } } bits.reverse(); str = bits.join(""); bias = (1 << ebits - 1) - 1; s = parseInt(str.substring(0, 1), 2) ? -1 : 1; e = parseInt(str.substring(1, 1 + ebits), 2); f = parseInt(str.substring(1 + ebits), 2); if (e === (1 << ebits) - 1) { return f !== 0 ? NaN : s * Infinity; } else if (e > 0) { return s * pow(2, e - bias) * (1 + f / pow(2, fbits)); } else if (f !== 0) { return s * pow(2, -(bias - 1)) * (f / pow(2, fbits)); } else { return s < 0 ? -0 : 0; } } __name(unpackIEEE754, "unpackIEEE754"); function unpackF64(b) { return unpackIEEE754(b, 11, 52); } __name(unpackF64, "unpackF64"); function packF64(v) { return packIEEE754(v, 11, 52); } __name(packF64, "packF64"); function unpackF32(b) { return unpackIEEE754(b, 8, 23); } __name(unpackF32, "unpackF32"); function packF32(v) { return packIEEE754(v, 8, 23); } __name(packF32, "packF32"); (function() { var ArrayBuffer2 = /* @__PURE__ */ __name(function ArrayBuffer3(length) { length = ECMAScript.ToInt32(length); if (length < 0) throw new RangeError("ArrayBuffer size is not a small enough positive integer"); this.byteLength = length; this._bytes = []; this._bytes.length = length; var i; for (i = 0; i < this.byteLength; i += 1) { this._bytes[i] = 0; } configureProperties(this); }, "ArrayBuffer"); exports2.ArrayBuffer = exports2.ArrayBuffer || ArrayBuffer2; var ArrayBufferView = /* @__PURE__ */ __name(function ArrayBufferView2() { }, "ArrayBufferView"); function makeConstructor(bytesPerElement, pack, unpack) { var ctor; ctor = /* @__PURE__ */ __name(function(buffer, byteOffset, length) { var array, sequence, i, s; if (!arguments.length || typeof arguments[0] === "number") { this.length = ECMAScript.ToInt32(arguments[0]); if (length < 0) throw new RangeError("ArrayBufferView size is not a small enough positive integer"); this.byteLength = this.length * this.BYTES_PER_ELEMENT; this.buffer = new ArrayBuffer2(this.byteLength); this.byteOffset = 0; } else if (typeof arguments[0] === "object" && arguments[0].constructor === ctor) { array = arguments[0]; this.length = array.length; this.byteLength = this.length * this.BYTES_PER_ELEMENT; this.buffer = new ArrayBuffer2(this.byteLength); this.byteOffset = 0; for (i = 0; i < this.length; i += 1) { this._setter(i, array._getter(i)); } } else if (typeof arguments[0] === "object" && !(arguments[0] instanceof ArrayBuffer2 || ECMAScript.Class(arguments[0]) === "ArrayBuffer")) { sequence = arguments[0]; this.length = ECMAScript.ToUint32(sequence.length); this.byteLength = this.length * this.BYTES_PER_ELEMENT; this.buffer = new ArrayBuffer2(this.byteLength); this.byteOffset = 0; for (i = 0; i < this.length; i += 1) { s = sequence[i]; this._setter(i, Number(s)); } } else if (typeof arguments[0] === "object" && (arguments[0] instanceof ArrayBuffer2 || ECMAScript.Class(arguments[0]) === "ArrayBuffer")) { this.buffer = buffer; this.byteOffset = ECMAScript.ToUint32(byteOffset); if (this.byteOffset > this.buffer.byteLength) { throw new RangeError("byteOffset out of range"); } if (this.byteOffset % this.BYTES_PER_ELEMENT) { throw new RangeError("ArrayBuffer length minus the byteOffset is not a multiple of the element size."); } if (arguments.length < 3) { this.byteLength = this.buffer.byteLength - this.byteOffset; if (this.byteLength % this.BYTES_PER_ELEMENT) { throw new RangeError("length of buffer minus byteOffset not a multiple of the element size"); } this.length = this.byteLength / this.BYTES_PER_ELEMENT; } else { this.length = ECMAScript.ToUint32(length); this.byteLength = this.length * this.BYTES_PER_ELEMENT; } if (this.byteOffset + this.byteLength > this.buffer.byteLength) { throw new RangeError("byteOffset and length reference an area beyond the end of the buffer"); } } else { throw new TypeError("Unexpected argument type(s)"); } this.constructor = ctor; configureProperties(this); makeArrayAccessors(this); }, "ctor"); ctor.prototype = new ArrayBufferView(); ctor.prototype.BYTES_PER_ELEMENT = bytesPerElement; ctor.prototype._pack = pack; ctor.prototype._unpack = unpack; ctor.BYTES_PER_ELEMENT = bytesPerElement; ctor.prototype._getter = function(index) { if (arguments.length < 1) throw new SyntaxError("Not enough arguments"); index = ECMAScript.ToUint32(index); if (index >= this.length) { return undefined2; } var bytes = [], i, o; for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1, o += 1) { bytes.push(this.buffer._bytes[o]); } return this._unpack(bytes); }; ctor.prototype.get = ctor.prototype._getter; ctor.prototype._setter = function(index, value) { if (arguments.length < 2) throw new SyntaxError("Not enough arguments"); index = ECMAScript.ToUint32(index); if (index >= this.length) { return undefined2; } var bytes = this._pack(value), i, o; for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1, o += 1) { this.buffer._bytes[o] = bytes[i]; } }; ctor.prototype.set = function(index, value) { if (arguments.length < 1) throw new SyntaxError("Not enough arguments"); var array, sequence, offset, len, i, s, d, byteOffset, byteLength, tmp; if (typeof arguments[0] === "object" && arguments[0].constructor === this.constructor) { array = arguments[0]; offset = ECMAScript.ToUint32(arguments[1]); if (offset + array.length > this.length) { throw new RangeError("Offset plus length of array is out of range"); } byteOffset = this.byteOffset + offset * this.BYTES_PER_ELEMENT; byteLength = array.length * this.BYTES_PER_ELEMENT; if (array.buffer === this.buffer) { tmp = []; for (i = 0, s = array.byteOffset; i < byteLength; i += 1, s += 1) { tmp[i] = array.buffer._bytes[s]; } for (i = 0, d = byteOffset; i < byteLength; i += 1, d += 1) { this.buffer._bytes[d] = tmp[i]; } } else { for (i = 0, s = array.byteOffset, d = byteOffset; i < byteLength; i += 1, s += 1, d += 1) { this.buffer._bytes[d] = array.buffer._bytes[s]; } } } else if (typeof arguments[0] === "object" && typeof arguments[0].length !== "undefined") { sequence = arguments[0]; len = ECMAScript.ToUint32(sequence.length); offset = ECMAScript.ToUint32(arguments[1]); if (offset + len > this.length) { throw new RangeError("Offset plus length of array is out of range"); } for (i = 0; i < len; i += 1) { s = sequence[i]; this._setter(offset + i, Number(s)); } } else { throw new TypeError("Unexpected argument type(s)"); } }; ctor.prototype.subarray = function(start, end) { function clamp(v, min2, max) { return v < min2 ? min2 : v > max ? max : v; } __name(clamp, "clamp"); start = ECMAScript.ToInt32(start); end = ECMAScript.ToInt32(end); if (arguments.length < 1) { start = 0; } if (arguments.length < 2) { end = this.length; } if (start < 0) { start = this.length + start; } if (end < 0) { end = this.length + end; } start = clamp(start, 0, this.length); end = clamp(end, 0, this.length); var len = end - start; if (len < 0) { len = 0; } return new this.constructor( this.buffer, this.byteOffset + start * this.BYTES_PER_ELEMENT, len ); }; return ctor; } __name(makeConstructor, "makeConstructor"); var Int8Array2 = makeConstructor(1, packI8, unpackI8); var Uint8Array2 = makeConstructor(1, packU8, unpackU8); var Uint8ClampedArray2 = makeConstructor(1, packU8Clamped, unpackU8); var Int16Array2 = makeConstructor(2, packI16, unpackI16); var Uint16Array2 = makeConstructor(2, packU16, unpackU16); var Int32Array2 = makeConstructor(4, packI32, unpackI32); var Uint32Array2 = makeConstructor(4, packU32, unpackU32); var Float32Array2 = makeConstructor(4, packF32, unpackF32); var Float64Array2 = makeConstructor(8, packF64, unpackF64); exports2.Int8Array = exports2.Int8Array || Int8Array2; exports2.Uint8Array = exports2.Uint8Array || Uint8Array2; exports2.Uint8ClampedArray = exports2.Uint8ClampedArray || Uint8ClampedArray2; exports2.Int16Array = exports2.Int16Array || Int16Array2; exports2.Uint16Array = exports2.Uint16Array || Uint16Array2; exports2.Int32Array = exports2.Int32Array || Int32Array2; exports2.Uint32Array = exports2.Uint32Array || Uint32Array2; exports2.Float32Array = exports2.Float32Array || Float32Array2; exports2.Float64Array = exports2.Float64Array || Float64Array2; })(); (function() { function r(array, index) { return ECMAScript.IsCallable(array.get) ? array.get(index) : array[index]; } __name(r, "r"); var IS_BIG_ENDIAN = (function() { var u16array = new exports2.Uint16Array([4660]), u8array = new exports2.Uint8Array(u16array.buffer); return r(u8array, 0) === 18; })(); var DataView2 = /* @__PURE__ */ __name(function DataView3(buffer, byteOffset, byteLength) { if (arguments.length === 0) { buffer = new exports2.ArrayBuffer(0); } else if (!(buffer instanceof exports2.ArrayBuffer || ECMAScript.Class(buffer) === "ArrayBuffer")) { throw new TypeError("TypeError"); } this.buffer = buffer || new exports2.ArrayBuffer(0); this.byteOffset = ECMAScript.ToUint32(byteOffset); if (this.byteOffset > this.buffer.byteLength) { throw new RangeError("byteOffset out of range"); } if (arguments.length < 3) { this.byteLength = this.buffer.byteLength - this.byteOffset; } else { this.byteLength = ECMAScript.ToUint32(byteLength); } if (this.byteOffset + this.byteLength > this.buffer.byteLength) { throw new RangeError("byteOffset and length reference an area beyond the end of the buffer"); } configureProperties(this); }, "DataView"); function makeGetter(arrayType) { return function(byteOffset, littleEndian) { byteOffset = ECMAScript.ToUint32(byteOffset); if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength) { throw new RangeError("Array index out of range"); } byteOffset += this.byteOffset; var uint8Array = new exports2.Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT), bytes = [], i; for (i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1) { bytes.push(r(uint8Array, i)); } if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN)) { bytes.reverse(); } return r(new arrayType(new exports2.Uint8Array(bytes).buffer), 0); }; } __name(makeGetter, "makeGetter"); DataView2.prototype.getUint8 = makeGetter(exports2.Uint8Array); DataView2.prototype.getInt8 = makeGetter(exports2.Int8Array); DataView2.prototype.getUint16 = makeGetter(exports2.Uint16Array); DataView2.prototype.getInt16 = makeGetter(exports2.Int16Array); DataView2.prototype.getUint32 = makeGetter(exports2.Uint32Array); DataView2.prototype.getInt32 = makeGetter(exports2.Int32Array); DataView2.prototype.getFloat32 = makeGetter(exports2.Float32Array); DataView2.prototype.getFloat64 = makeGetter(exports2.Float64Array); function makeSetter(arrayType) { return function(byteOffset, value, littleEndian) { byteOffset = ECMAScript.ToUint32(byteOffset); if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength) { throw new RangeError("Array index out of range"); } var typeArray = new arrayType([value]), byteArray = new exports2.Uint8Array(typeArray.buffer), bytes = [], i, byteView; for (i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1) { bytes.push(r(byteArray, i)); } if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN)) { bytes.reverse(); } byteView = new exports2.Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT); byteView.set(bytes); }; } __name(makeSetter, "makeSetter"); DataView2.prototype.setUint8 = makeSetter(exports2.Uint8Array); DataView2.prototype.setInt8 = makeSetter(exports2.Int8Array); DataView2.prototype.setUint16 = makeSetter(exports2.Uint16Array); DataView2.prototype.setInt16 = makeSetter(exports2.Int16Array); DataView2.prototype.setUint32 = makeSetter(exports2.Uint32Array); DataView2.prototype.setInt32 = makeSetter(exports2.Int32Array); DataView2.prototype.setFloat32 = makeSetter(exports2.Float32Array); DataView2.prototype.setFloat64 = makeSetter(exports2.Float64Array); exports2.DataView = exports2.DataView || DataView2; })(); } }); // ../../node_modules/.pnpm/concat-stream@2.0.0/node_modules/concat-stream/index.js var require_concat_stream = __commonJS({ "../../node_modules/.pnpm/concat-stream@2.0.0/node_modules/concat-stream/index.js"(exports2, module2) { var Writable = require_readable().Writable; var inherits2 = require_inherits(); var bufferFrom = require_buffer_from(); if (typeof Uint8Array === "undefined") { U8 = require_typedarray().Uint8Array; } else { U8 = Uint8Array; } var U8; function ConcatStream(opts, cb) { if (!(this instanceof ConcatStream)) return new ConcatStream(opts, cb); if (typeof opts === "function") { cb = opts; opts = {}; } if (!opts) opts = {}; var encoding = opts.encoding; var shouldInferEncoding = false; if (!encoding) { shouldInferEncoding = true; } else { encoding = String(encoding).toLowerCase(); if (encoding === "u8" || encoding === "uint8") { encoding = "uint8array"; } } Writable.call(this, { objectMode: true }); this.encoding = encoding; this.shouldInferEncoding = shouldInferEncoding; if (cb) this.on("finish", function() { cb(this.getBody()); }); this.body = []; } __name(ConcatStream, "ConcatStream"); module2.exports = ConcatStream; inherits2(ConcatStream, Writable); ConcatStream.prototype._write = function(chunk, enc, next) { this.body.push(chunk); next(); }; ConcatStream.prototype.inferEncoding = function(buff) { var firstBuffer = buff === void 0 ? this.body[0] : buff; if (Buffer.isBuffer(firstBuffer)) return "buffer"; if (typeof Uint8Array !== "undefined" && firstBuffer instanceof Uint8Array) return "uint8array"; if (Array.isArray(firstBuffer)) return "array"; if (typeof firstBuffer === "string") return "string"; if (Object.prototype.toString.call(firstBuffer) === "[object Object]") return "object"; return "buffer"; }; ConcatStream.prototype.getBody = function() { if (!this.encoding && this.body.length === 0) return []; if (this.shouldInferEncoding) this.encoding = this.inferEncoding(); if (this.encoding === "array") return arrayConcat(this.body); if (this.encoding === "string") return stringConcat(this.body); if (this.encoding === "buffer") return bufferConcat(this.body); if (this.encoding === "uint8array") return u8Concat(this.body); return this.body; }; function isArrayish(arr) { return /Array\]$/.test(Object.prototype.toString.call(arr)); } __name(isArrayish, "isArrayish"); function isBufferish(p) { return typeof p === "string" || isArrayish(p) || p && typeof p.subarray === "function"; } __name(isBufferish, "isBufferish"); function stringConcat(parts) { var strings = []; var needsToString = false; for (var i = 0; i < parts.length; i++) { var p = parts[i]; if (typeof p === "string") { strings.push(p); } else if (Buffer.isBuffer(p)) { strings.push(p); } else if (isBufferish(p)) { strings.push(bufferFrom(p)); } else { strings.push(bufferFrom(String(p))); } } if (Buffer.isBuffer(parts[0])) { strings = Buffer.concat(strings); strings = strings.toString("utf8"); } else { strings = strings.join(""); } return strings; } __name(stringConcat, "stringConcat"); function bufferConcat(parts) { var bufs = []; for (var i = 0; i < parts.length; i++) { var p = parts[i]; if (Buffer.isBuffer(p)) { bufs.push(p); } else if (isBufferish(p)) { bufs.push(bufferFrom(p)); } else { bufs.push(bufferFrom(String(p))); } } return Buffer.concat(bufs); } __name(bufferConcat, "bufferConcat"); function arrayConcat(parts) { var res = []; for (var i = 0; i < parts.length; i++) { res.push.apply(res, parts[i]); } return res; } __name(arrayConcat, "arrayConcat"); function u8Concat(parts) { var len = 0; for (var i = 0; i < parts.length; i++) { if (typeof parts[i] === "string") { parts[i] = bufferFrom(parts[i]); } len += parts[i].length; } var u8 = new U8(len); for (var i = 0, offset = 0; i < parts.length; i++) { var part = parts[i]; for (var j = 0; j < part.length; j++) { u8[offset++] = part[j]; } } return u8; } __name(u8Concat, "u8Concat"); } }); // ../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/storage/memory.js var require_memory = __commonJS({ "../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/storage/memory.js"(exports2, module2) { var concat = require_concat_stream(); function MemoryStorage(opts) { } __name(MemoryStorage, "MemoryStorage"); MemoryStorage.prototype._handleFile = /* @__PURE__ */ __name(function _handleFile(req, file2, cb) { file2.stream.pipe(concat({ encoding: "buffer" }, function(data) { cb(null, { buffer: data, size: data.length }); })); }, "_handleFile"); MemoryStorage.prototype._removeFile = /* @__PURE__ */ __name(function _removeFile(req, file2, cb) { delete file2.buffer; cb(null); }, "_removeFile"); module2.exports = function(opts) { return new MemoryStorage(opts); }; } }); // ../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/index.js var require_multer = __commonJS({ "../../node_modules/.pnpm/multer@2.0.2/node_modules/multer/index.js"(exports2, module2) { var makeMiddleware = require_make_middleware(); var diskStorage = require_disk(); var memoryStorage = require_memory(); var MulterError = require_multer_error(); function allowAll(req, file2, cb) { cb(null, true); } __name(allowAll, "allowAll"); function Multer(options) { if (options.storage) { this.storage = options.storage; } else if (options.dest) { this.storage = diskStorage({ destination: options.dest }); } else { this.storage = memoryStorage(); } this.limits = options.limits; this.preservePath = options.preservePath; this.fileFilter = options.fileFilter || allowAll; } __name(Multer, "Multer"); Multer.prototype._makeMiddleware = function(fields, fileStrategy) { function setup() { var fileFilter = this.fileFilter; var filesLeft = /* @__PURE__ */ Object.create(null); fields.forEach(function(field) { if (typeof field.maxCount === "number") { filesLeft[field.name] = field.maxCount; } else { filesLeft[field.name] = Infinity; } }); function wrappedFileFilter(req, file2, cb) { if ((filesLeft[file2.fieldname] || 0) <= 0) { return cb(new MulterError("LIMIT_UNEXPECTED_FILE", file2.fieldname)); } filesLeft[file2.fieldname] -= 1; fileFilter(req, file2, cb); } __name(wrappedFileFilter, "wrappedFileFilter"); return { limits: this.limits, preservePath: this.preservePath, storage: this.storage, fileFilter: wrappedFileFilter, fileStrategy }; } __name(setup, "setup"); return makeMiddleware(setup.bind(this)); }; Multer.prototype.single = function(name) { return this._makeMiddleware([{ name, maxCount: 1 }], "VALUE"); }; Multer.prototype.array = function(name, maxCount) { return this._makeMiddleware([{ name, maxCount }], "ARRAY"); }; Multer.prototype.fields = function(fields) { return this._makeMiddleware(fields, "OBJECT"); }; Multer.prototype.none = function() { return this._makeMiddleware([], "NONE"); }; Multer.prototype.any = function() { function setup() { return { limits: this.limits, preservePath: this.preservePath, storage: this.storage, fileFilter: this.fileFilter, fileStrategy: "ARRAY" }; } __name(setup, "setup"); return makeMiddleware(setup.bind(this)); }; function multer(options) { if (options === void 0) { return new Multer({}); } if (typeof options === "object" && options !== null) { return new Multer(options); } throw new TypeError("Expected object for argument options"); } __name(multer, "multer"); module2.exports = multer; module2.exports.diskStorage = diskStorage; module2.exports.memoryStorage = memoryStorage; module2.exports.MulterError = MulterError; } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/files.constants.js var require_files_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/files.constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MULTER_MODULE_OPTIONS = void 0; exports2.MULTER_MODULE_OPTIONS = "MULTER_MODULE_OPTIONS"; } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/multer/multer.constants.js var require_multer_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/multer/multer.constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.busboyExceptions = exports2.multerExceptions = void 0; exports2.multerExceptions = { // from https://github.com/expressjs/multer/blob/master/lib/multer-error.js LIMIT_PART_COUNT: "Too many parts", LIMIT_FILE_SIZE: "File too large", LIMIT_FILE_COUNT: "Too many files", LIMIT_FIELD_KEY: "Field name too long", LIMIT_FIELD_VALUE: "Field value too long", LIMIT_FIELD_COUNT: "Too many fields", LIMIT_UNEXPECTED_FILE: "Unexpected field", MISSING_FIELD_NAME: "Field name missing" }; exports2.busboyExceptions = { // from https://github.com/mscdex/busboy/blob/master/lib/types/multipart.js MULTIPART_BOUNDARY_NOT_FOUND: "Multipart: Boundary not found", MULTIPART_MALFORMED_PART_HEADER: "Malformed part header", MULTIPART_UNEXPECTED_END_OF_FORM: "Unexpected end of form", MULTIPART_UNEXPECTED_END_OF_FILE: "Unexpected end of file" }; } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/multer/multer.utils.js var require_multer_utils = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/multer/multer.utils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.transformException = transformException; var common_12 = require_common(); var multer_constants_1 = require_multer_constants(); function transformException(error) { if (!error || error instanceof common_12.HttpException) { return error; } switch (error.message) { case multer_constants_1.multerExceptions.LIMIT_FILE_SIZE: return new common_12.PayloadTooLargeException(error.message); case multer_constants_1.multerExceptions.LIMIT_FILE_COUNT: case multer_constants_1.multerExceptions.LIMIT_FIELD_KEY: case multer_constants_1.multerExceptions.LIMIT_FIELD_VALUE: case multer_constants_1.multerExceptions.LIMIT_FIELD_COUNT: case multer_constants_1.multerExceptions.LIMIT_UNEXPECTED_FILE: case multer_constants_1.multerExceptions.LIMIT_PART_COUNT: case multer_constants_1.multerExceptions.MISSING_FIELD_NAME: return new common_12.BadRequestException(error.message); case multer_constants_1.busboyExceptions.MULTIPART_BOUNDARY_NOT_FOUND: return new common_12.BadRequestException(error.message); case multer_constants_1.busboyExceptions.MULTIPART_MALFORMED_PART_HEADER: case multer_constants_1.busboyExceptions.MULTIPART_UNEXPECTED_END_OF_FORM: case multer_constants_1.busboyExceptions.MULTIPART_UNEXPECTED_END_OF_FILE: return new common_12.BadRequestException(`Multipart: ${error.message}`); } return error; } __name(transformException, "transformException"); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/any-files.interceptor.js var require_any_files_interceptor = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/any-files.interceptor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AnyFilesInterceptor = AnyFilesInterceptor; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var multer = require_multer(); var files_constants_1 = require_files_constants(); var multer_utils_1 = require_multer_utils(); function AnyFilesInterceptor(localOptions) { let MixinInterceptor = class MixinInterceptor { static { __name(this, "MixinInterceptor"); } constructor(options = {}) { this.multer = multer({ ...options, ...localOptions }); } async intercept(context, next) { const ctx = context.switchToHttp(); await new Promise((resolve, reject) => this.multer.any()(ctx.getRequest(), ctx.getResponse(), (err) => { if (err) { const error = (0, multer_utils_1.transformException)(err); return reject(error); } resolve(); })); return next.handle(); } }; MixinInterceptor = tslib_1.__decorate([ tslib_1.__param(0, (0, common_12.Optional)()), tslib_1.__param(0, (0, common_12.Inject)(files_constants_1.MULTER_MODULE_OPTIONS)), tslib_1.__metadata("design:paramtypes", [Object]) ], MixinInterceptor); const Interceptor = (0, common_12.mixin)(MixinInterceptor); return Interceptor; } __name(AnyFilesInterceptor, "AnyFilesInterceptor"); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/file-fields.interceptor.js var require_file_fields_interceptor = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/file-fields.interceptor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.FileFieldsInterceptor = FileFieldsInterceptor; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var multer = require_multer(); var files_constants_1 = require_files_constants(); var multer_utils_1 = require_multer_utils(); function FileFieldsInterceptor(uploadFields, localOptions) { let MixinInterceptor = class MixinInterceptor { static { __name(this, "MixinInterceptor"); } constructor(options = {}) { this.multer = multer({ ...options, ...localOptions }); } async intercept(context, next) { const ctx = context.switchToHttp(); await new Promise((resolve, reject) => this.multer.fields(uploadFields)(ctx.getRequest(), ctx.getResponse(), (err) => { if (err) { const error = (0, multer_utils_1.transformException)(err); return reject(error); } resolve(); })); return next.handle(); } }; MixinInterceptor = tslib_1.__decorate([ tslib_1.__param(0, (0, common_12.Optional)()), tslib_1.__param(0, (0, common_12.Inject)(files_constants_1.MULTER_MODULE_OPTIONS)), tslib_1.__metadata("design:paramtypes", [Object]) ], MixinInterceptor); const Interceptor = (0, common_12.mixin)(MixinInterceptor); return Interceptor; } __name(FileFieldsInterceptor, "FileFieldsInterceptor"); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/file.interceptor.js var require_file_interceptor = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/file.interceptor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.FileInterceptor = FileInterceptor; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var multer = require_multer(); var files_constants_1 = require_files_constants(); var multer_utils_1 = require_multer_utils(); function FileInterceptor(fieldName, localOptions) { let MixinInterceptor = class MixinInterceptor { static { __name(this, "MixinInterceptor"); } constructor(options = {}) { this.multer = multer({ ...options, ...localOptions }); } async intercept(context, next) { const ctx = context.switchToHttp(); await new Promise((resolve, reject) => this.multer.single(fieldName)(ctx.getRequest(), ctx.getResponse(), (err) => { if (err) { const error = (0, multer_utils_1.transformException)(err); return reject(error); } resolve(); })); return next.handle(); } }; MixinInterceptor = tslib_1.__decorate([ tslib_1.__param(0, (0, common_12.Optional)()), tslib_1.__param(0, (0, common_12.Inject)(files_constants_1.MULTER_MODULE_OPTIONS)), tslib_1.__metadata("design:paramtypes", [Object]) ], MixinInterceptor); const Interceptor = (0, common_12.mixin)(MixinInterceptor); return Interceptor; } __name(FileInterceptor, "FileInterceptor"); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/files.interceptor.js var require_files_interceptor = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/files.interceptor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.FilesInterceptor = FilesInterceptor; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var multer = require_multer(); var files_constants_1 = require_files_constants(); var multer_utils_1 = require_multer_utils(); function FilesInterceptor(fieldName, maxCount, localOptions) { let MixinInterceptor = class MixinInterceptor { static { __name(this, "MixinInterceptor"); } constructor(options = {}) { this.multer = multer({ ...options, ...localOptions }); } async intercept(context, next) { const ctx = context.switchToHttp(); await new Promise((resolve, reject) => this.multer.array(fieldName, maxCount)(ctx.getRequest(), ctx.getResponse(), (err) => { if (err) { const error = (0, multer_utils_1.transformException)(err); return reject(error); } resolve(); })); return next.handle(); } }; MixinInterceptor = tslib_1.__decorate([ tslib_1.__param(0, (0, common_12.Optional)()), tslib_1.__param(0, (0, common_12.Inject)(files_constants_1.MULTER_MODULE_OPTIONS)), tslib_1.__metadata("design:paramtypes", [Object]) ], MixinInterceptor); const Interceptor = (0, common_12.mixin)(MixinInterceptor); return Interceptor; } __name(FilesInterceptor, "FilesInterceptor"); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/no-files.interceptor.js var require_no_files_interceptor = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/no-files.interceptor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NoFilesInterceptor = NoFilesInterceptor; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var multer = require_multer(); var files_constants_1 = require_files_constants(); var multer_utils_1 = require_multer_utils(); function NoFilesInterceptor(localOptions) { let MixinInterceptor = class MixinInterceptor { static { __name(this, "MixinInterceptor"); } constructor(options = {}) { this.multer = multer({ ...options, ...localOptions }); } async intercept(context, next) { const ctx = context.switchToHttp(); await new Promise((resolve, reject) => this.multer.none()(ctx.getRequest(), ctx.getResponse(), (err) => { if (err) { const error = (0, multer_utils_1.transformException)(err); return reject(error); } resolve(); })); return next.handle(); } }; MixinInterceptor = tslib_1.__decorate([ tslib_1.__param(0, (0, common_12.Optional)()), tslib_1.__param(0, (0, common_12.Inject)(files_constants_1.MULTER_MODULE_OPTIONS)), tslib_1.__metadata("design:paramtypes", [Object]) ], MixinInterceptor); const Interceptor = (0, common_12.mixin)(MixinInterceptor); return Interceptor; } __name(NoFilesInterceptor, "NoFilesInterceptor"); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/index.js var require_interceptors2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interceptors/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_any_files_interceptor(), exports2); tslib_1.__exportStar(require_file_fields_interceptor(), exports2); tslib_1.__exportStar(require_file_interceptor(), exports2); tslib_1.__exportStar(require_files_interceptor(), exports2); tslib_1.__exportStar(require_no_files_interceptor(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interfaces/files-upload-module.interface.js var require_files_upload_module_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interfaces/files-upload-module.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interfaces/index.js var require_interfaces6 = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/interfaces/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_files_upload_module_interface(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/multer.constants.js var require_multer_constants2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/multer.constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MULTER_MODULE_ID = void 0; exports2.MULTER_MODULE_ID = "MULTER_MODULE_ID"; } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/multer.module.js var require_multer_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/multer.module.js"(exports2) { "use strict"; var MulterModule_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MulterModule = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var random_string_generator_util_1 = require_random_string_generator_util(); var files_constants_1 = require_files_constants(); var multer_constants_1 = require_multer_constants2(); var MulterModule = MulterModule_1 = class MulterModule { static { __name(this, "MulterModule"); } static register(options = {}) { return { module: MulterModule_1, providers: [ { provide: files_constants_1.MULTER_MODULE_OPTIONS, useFactory: /* @__PURE__ */ __name(() => options, "useFactory") }, { provide: multer_constants_1.MULTER_MODULE_ID, useValue: (0, random_string_generator_util_1.randomStringGenerator)() } ], exports: [files_constants_1.MULTER_MODULE_OPTIONS] }; } static registerAsync(options) { return { module: MulterModule_1, imports: options.imports, providers: [ ...this.createAsyncProviders(options), { provide: multer_constants_1.MULTER_MODULE_ID, useValue: (0, random_string_generator_util_1.randomStringGenerator)() } ], exports: [files_constants_1.MULTER_MODULE_OPTIONS] }; } static createAsyncProviders(options) { if (options.useExisting || options.useFactory) { return [this.createAsyncOptionsProvider(options)]; } return [ this.createAsyncOptionsProvider(options), { provide: options.useClass, useClass: options.useClass } ]; } static createAsyncOptionsProvider(options) { if (options.useFactory) { return { provide: files_constants_1.MULTER_MODULE_OPTIONS, useFactory: options.useFactory, inject: options.inject || [] }; } return { provide: files_constants_1.MULTER_MODULE_OPTIONS, useFactory: /* @__PURE__ */ __name(async (optionsFactory) => optionsFactory.createMulterOptions(), "useFactory"), inject: [options.useExisting || options.useClass] }; } }; exports2.MulterModule = MulterModule; exports2.MulterModule = MulterModule = MulterModule_1 = tslib_1.__decorate([ (0, common_12.Module)({}) ], MulterModule); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/index.js var require_multer2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/multer/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_interceptors2(), exports2); tslib_1.__exportStar(require_interfaces6(), exports2); tslib_1.__exportStar(require_multer_module(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/index.js var require_platform_express = __commonJS({ "../../node_modules/.pnpm/@nestjs+platform-express@10_795a7c87fa3e5cd6ba081ef20e3755d8/node_modules/@nestjs/platform-express/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_adapters2(), exports2); tslib_1.__exportStar(require_interfaces5(), exports2); tslib_1.__exportStar(require_multer2(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/nest-factory.js var require_nest_factory = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/nest-factory.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NestFactory = exports2.NestFactoryStatic = void 0; var logger_service_1 = require_logger_service(); var load_package_util_1 = require_load_package_util(); var shared_utils_1 = require_shared_utils(); var application_config_1 = require_application_config(); var constants_1 = require_constants4(); var exceptions_zone_1 = require_exceptions_zone(); var load_adapter_1 = require_load_adapter(); var rethrow_1 = require_rethrow(); var container_1 = require_container2(); var injector_1 = require_injector(); var instance_loader_1 = require_instance_loader(); var graph_inspector_1 = require_graph_inspector(); var noop_graph_inspector_1 = require_noop_graph_inspector(); var uuid_factory_1 = require_uuid_factory(); var metadata_scanner_1 = require_metadata_scanner(); var nest_application_1 = require_nest_application(); var nest_application_context_1 = require_nest_application_context(); var scanner_1 = require_scanner(); var NestFactoryStatic = class { static { __name(this, "NestFactoryStatic"); } constructor() { this.logger = new logger_service_1.Logger("NestFactory", { timestamp: true }); this.abortOnError = true; this.autoFlushLogs = false; } async create(moduleCls, serverOrOptions, options) { const [httpServer, appOptions] = this.isHttpServer(serverOrOptions) ? [serverOrOptions, options] : [this.createHttpAdapter(), serverOrOptions]; const applicationConfig = new application_config_1.ApplicationConfig(); const container = new container_1.NestContainer(applicationConfig); const graphInspector = this.createGraphInspector(appOptions, container); this.setAbortOnError(serverOrOptions, options); this.registerLoggerConfiguration(appOptions); await this.initialize(moduleCls, container, graphInspector, applicationConfig, appOptions, httpServer); const instance = new nest_application_1.NestApplication(container, httpServer, applicationConfig, graphInspector, appOptions); const target = this.createNestInstance(instance); return this.createAdapterProxy(target, httpServer); } /** * Creates an instance of NestMicroservice. * * @param moduleCls Entry (root) application module class * @param options Optional microservice configuration * * @returns A promise that, when resolved, * contains a reference to the NestMicroservice instance. */ async createMicroservice(moduleCls, options) { const { NestMicroservice } = (0, load_package_util_1.loadPackage)("@nestjs/microservices", "NestFactory", () => require("@nestjs/microservices")); const applicationConfig = new application_config_1.ApplicationConfig(); const container = new container_1.NestContainer(applicationConfig); const graphInspector = this.createGraphInspector(options, container); this.setAbortOnError(options); this.registerLoggerConfiguration(options); await this.initialize(moduleCls, container, graphInspector, applicationConfig, options); return this.createNestInstance(new NestMicroservice(container, options, graphInspector, applicationConfig)); } /** * Creates an instance of NestApplicationContext. * * @param moduleCls Entry (root) application module class * @param options Optional Nest application configuration * * @returns A promise that, when resolved, * contains a reference to the NestApplicationContext instance. */ async createApplicationContext(moduleCls, options) { const applicationConfig = new application_config_1.ApplicationConfig(); const container = new container_1.NestContainer(applicationConfig); const graphInspector = this.createGraphInspector(options, container); this.setAbortOnError(options); this.registerLoggerConfiguration(options); await this.initialize(moduleCls, container, graphInspector, applicationConfig, options); const modules = container.getModules().values(); const root = modules.next().value; const context = this.createNestInstance(new nest_application_context_1.NestApplicationContext(container, options, root)); if (this.autoFlushLogs) { context.flushLogsOnOverride(); } return context.init(); } createNestInstance(instance) { return this.createProxy(instance); } async initialize(module3, container, graphInspector, config = new application_config_1.ApplicationConfig(), options = {}, httpServer = null) { uuid_factory_1.UuidFactory.mode = options.snapshot ? uuid_factory_1.UuidFactoryMode.Deterministic : uuid_factory_1.UuidFactoryMode.Random; const injector = new injector_1.Injector({ preview: options.preview }); const instanceLoader = new instance_loader_1.InstanceLoader(container, injector, graphInspector); const metadataScanner = new metadata_scanner_1.MetadataScanner(); const dependenciesScanner = new scanner_1.DependenciesScanner(container, metadataScanner, graphInspector, config); container.setHttpAdapter(httpServer); const teardown = this.abortOnError === false ? rethrow_1.rethrow : void 0; await httpServer?.init(); try { this.logger.log(constants_1.MESSAGES.APPLICATION_START); await exceptions_zone_1.ExceptionsZone.asyncRun(async () => { await dependenciesScanner.scan(module3); await instanceLoader.createInstancesOfDependencies(); dependenciesScanner.applyApplicationProviders(); }, teardown, this.autoFlushLogs); } catch (e) { this.handleInitializationError(e); } } handleInitializationError(err) { if (this.abortOnError) { process.abort(); } (0, rethrow_1.rethrow)(err); } createProxy(target) { const proxy = this.createExceptionProxy(); return new Proxy(target, { get: proxy, set: proxy }); } createExceptionProxy() { return (receiver, prop) => { if (!(prop in receiver)) { return; } if ((0, shared_utils_1.isFunction)(receiver[prop])) { return this.createExceptionZone(receiver, prop); } return receiver[prop]; }; } createExceptionZone(receiver, prop) { const teardown = this.abortOnError === false ? rethrow_1.rethrow : void 0; return (...args) => { let result; exceptions_zone_1.ExceptionsZone.run(() => { result = receiver[prop](...args); }, teardown, this.autoFlushLogs); return result; }; } registerLoggerConfiguration(options) { if (!options) { return; } const { logger, bufferLogs, autoFlushLogs } = options; if (logger !== true && !(0, shared_utils_1.isNil)(logger)) { logger_service_1.Logger.overrideLogger(logger); } if (bufferLogs) { logger_service_1.Logger.attachBuffer(); } this.autoFlushLogs = autoFlushLogs ?? true; } createHttpAdapter(httpServer) { const { ExpressAdapter } = (0, load_adapter_1.loadAdapter)("@nestjs/platform-express", "HTTP", () => require_platform_express()); return new ExpressAdapter(httpServer); } isHttpServer(serverOrOptions) { return !!(serverOrOptions && serverOrOptions.patch); } setAbortOnError(serverOrOptions, options) { this.abortOnError = this.isHttpServer(serverOrOptions) ? !(options && options.abortOnError === false) : !(serverOrOptions && serverOrOptions.abortOnError === false); } createAdapterProxy(app, adapter) { const proxy = new Proxy(app, { get: /* @__PURE__ */ __name((receiver, prop) => { const mapToProxy = /* @__PURE__ */ __name((result) => { return result instanceof Promise ? result.then(mapToProxy) : result instanceof nest_application_1.NestApplication ? proxy : result; }, "mapToProxy"); if (!(prop in receiver) && prop in adapter) { return (...args) => { const result = this.createExceptionZone(adapter, prop)(...args); return mapToProxy(result); }; } if ((0, shared_utils_1.isFunction)(receiver[prop])) { return (...args) => { const result = receiver[prop](...args); return mapToProxy(result); }; } return receiver[prop]; }, "get") }); return proxy; } createGraphInspector(appOptions, container) { return appOptions?.snapshot ? new graph_inspector_1.GraphInspector(container) : noop_graph_inspector_1.NoopGraphInspector; } }; exports2.NestFactoryStatic = NestFactoryStatic; exports2.NestFactory = new NestFactoryStatic(); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/assign-to-object.util.js var require_assign_to_object_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/assign-to-object.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.assignToObject = assignToObject; function assignToObject(target, source) { Object.defineProperties(target, Object.keys(source).reduce((descriptors, key) => { descriptors[key] = Object.getOwnPropertyDescriptor(source, key); return descriptors; }, /* @__PURE__ */ Object.create(null))); return target; } __name(assignToObject, "assignToObject"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/constants.js var require_constants7 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.REPL_INITIALIZED_MESSAGE = void 0; exports2.REPL_INITIALIZED_MESSAGE = "REPL initialized"; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/repl-function.js var require_repl_function = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/repl-function.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ReplFunction = void 0; var cli_colors_util_1 = require_cli_colors_util(); var ReplFunction = class { static { __name(this, "ReplFunction"); } constructor(ctx) { this.ctx = ctx; this.logger = ctx.logger; } /** * @returns A message displayed by calling `.help` */ makeHelpMessage() { const { description, name, signature } = this.fnDefinition; const fnSignatureWithName = `${name}${signature}`; return `${cli_colors_util_1.clc.yellow(description)} ${cli_colors_util_1.clc.magentaBright("Interface:")} ${cli_colors_util_1.clc.bold(fnSignatureWithName)} `; } }; exports2.ReplFunction = ReplFunction; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/help-repl-fn.js var require_help_repl_fn = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/help-repl-fn.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.HelpReplFn = void 0; var iterare_1 = require_lib(); var cli_colors_util_1 = require_cli_colors_util(); var repl_function_1 = require_repl_function(); var HelpReplFn = class _HelpReplFn extends repl_function_1.ReplFunction { static { __name(this, "HelpReplFn"); } constructor() { super(...arguments); this.fnDefinition = { name: "help", signature: "() => void", description: "Display all available REPL native functions." }; } action() { const sortedNativeFunctions = (0, iterare_1.iterate)(this.ctx.nativeFunctions).map(([, nativeFunction]) => nativeFunction.fnDefinition).toArray().sort((a, b) => a.name < b.name ? -1 : 1); this.ctx.writeToStdout(`You can call ${cli_colors_util_1.clc.bold(".help")} on any function listed below (e.g.: ${cli_colors_util_1.clc.bold("help.help")}): ` + sortedNativeFunctions.map(_HelpReplFn.buildHelpMessage).join("\n") + // Without the following LF the last item won't be displayed "\n"); } }; exports2.HelpReplFn = HelpReplFn; HelpReplFn.buildHelpMessage = ({ name, description }) => cli_colors_util_1.clc.cyanBright(name) + (description ? ` ${cli_colors_util_1.clc.bold("-")} ${description}` : ""); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/get-relp-fn.js var require_get_relp_fn = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/get-relp-fn.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GetReplFn = void 0; var repl_function_1 = require_repl_function(); var GetReplFn = class extends repl_function_1.ReplFunction { static { __name(this, "GetReplFn"); } constructor() { super(...arguments); this.fnDefinition = { name: "get", signature: "(token: InjectionToken) => any", description: "Retrieves an instance of either injectable or controller, otherwise, throws exception.", aliases: ["$"] }; } action(token) { return this.ctx.app.get(token); } }; exports2.GetReplFn = GetReplFn; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/resolve-repl-fn.js var require_resolve_repl_fn = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/resolve-repl-fn.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ResolveReplFn = void 0; var repl_function_1 = require_repl_function(); var ResolveReplFn = class extends repl_function_1.ReplFunction { static { __name(this, "ResolveReplFn"); } constructor() { super(...arguments); this.fnDefinition = { name: "resolve", description: "Resolves transient or request-scoped instance of either injectable or controller, otherwise, throws exception.", signature: "(token: InjectionToken, contextId: any) => Promise" }; } action(token, contextId) { return this.ctx.app.resolve(token, contextId); } }; exports2.ResolveReplFn = ResolveReplFn; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/select-relp-fn.js var require_select_relp_fn = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/select-relp-fn.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SelectReplFn = void 0; var repl_function_1 = require_repl_function(); var SelectReplFn = class extends repl_function_1.ReplFunction { static { __name(this, "SelectReplFn"); } constructor() { super(...arguments); this.fnDefinition = { name: "select", description: "Allows navigating through the modules tree, for example, to pull out a specific instance from the selected module.", signature: "(token: DynamicModule | ClassRef) => INestApplicationContext" }; } action(token) { return this.ctx.app.select(token); } }; exports2.SelectReplFn = SelectReplFn; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/debug-repl-fn.js var require_debug_repl_fn = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/debug-repl-fn.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DebugReplFn = void 0; var cli_colors_util_1 = require_cli_colors_util(); var repl_function_1 = require_repl_function(); var DebugReplFn = class extends repl_function_1.ReplFunction { static { __name(this, "DebugReplFn"); } constructor() { super(...arguments); this.fnDefinition = { name: "debug", description: 'Print all registered modules as a list together with their controllers and providers.\nIf the argument is passed in, for example, "debug(MyModule)" then it will only print components of this specific module.', signature: "(moduleCls?: ClassRef | string) => void" }; } action(moduleCls) { this.ctx.writeToStdout("\n"); if (moduleCls) { const token = typeof moduleCls === "function" ? moduleCls.name : moduleCls; const moduleEntry = this.ctx.debugRegistry[token]; if (!moduleEntry) { return this.logger.error(`"${token}" has not been found in the modules registry`); } this.printCtrlsAndProviders(token, moduleEntry); } else { Object.keys(this.ctx.debugRegistry).forEach((moduleKey) => { this.printCtrlsAndProviders(moduleKey, this.ctx.debugRegistry[moduleKey]); }); } this.ctx.writeToStdout("\n"); } printCtrlsAndProviders(moduleName, moduleDebugEntry) { this.ctx.writeToStdout(`${cli_colors_util_1.clc.green(moduleName)}: `); this.printCollection("controllers", moduleDebugEntry["controllers"]); this.printCollection("providers", moduleDebugEntry["providers"]); } printCollection(title, collectionValue) { const collectionEntries = Object.keys(collectionValue); if (collectionEntries.length <= 0) { return; } this.ctx.writeToStdout(` ${cli_colors_util_1.clc.yellow(`- ${title}`)}: `); collectionEntries.forEach((provider) => this.ctx.writeToStdout(` ${cli_colors_util_1.clc.green("\u25FB")} ${provider} `)); } }; exports2.DebugReplFn = DebugReplFn; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/methods-repl-fn.js var require_methods_repl_fn = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/methods-repl-fn.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MethodsReplFn = void 0; var cli_colors_util_1 = require_cli_colors_util(); var metadata_scanner_1 = require_metadata_scanner(); var repl_function_1 = require_repl_function(); var MethodsReplFn = class extends repl_function_1.ReplFunction { static { __name(this, "MethodsReplFn"); } constructor() { super(...arguments); this.fnDefinition = { name: "methods", description: "Display all public methods available on a given provider or controller.", signature: "(token: ClassRef | string) => void" }; this.metadataScanner = new metadata_scanner_1.MetadataScanner(); } action(token) { const proto = typeof token !== "function" ? Object.getPrototypeOf(this.ctx.app.get(token)) : token?.prototype; const methods = this.metadataScanner.getAllMethodNames(proto); this.ctx.writeToStdout("\n"); this.ctx.writeToStdout(`${cli_colors_util_1.clc.green("Methods")}: `); methods.forEach((methodName) => this.ctx.writeToStdout(` ${cli_colors_util_1.clc.yellow("\u25FB")} ${methodName} `)); this.ctx.writeToStdout("\n"); } }; exports2.MethodsReplFn = MethodsReplFn; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/index.js var require_native_functions = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/native-functions/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_help_repl_fn(), exports2); tslib_1.__exportStar(require_get_relp_fn(), exports2); tslib_1.__exportStar(require_resolve_repl_fn(), exports2); tslib_1.__exportStar(require_select_relp_fn(), exports2); tslib_1.__exportStar(require_debug_repl_fn(), exports2); tslib_1.__exportStar(require_methods_repl_fn(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/repl-context.js var require_repl_context = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/repl-context.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ReplContext = void 0; var common_12 = require_common(); var application_config_1 = require_application_config(); var injector_1 = require_injector2(); var internal_core_module_1 = require_internal_core_module(); var native_functions_1 = require_native_functions(); var ReplContext = class _ReplContext { static { __name(this, "ReplContext"); } constructor(app, nativeFunctionsClassRefs) { this.app = app; this.logger = new common_12.Logger(_ReplContext.name); this.debugRegistry = {}; this.globalScope = /* @__PURE__ */ Object.create(null); this.nativeFunctions = /* @__PURE__ */ new Map(); this.container = app.container; this.initializeContext(); this.initializeNativeFunctions(nativeFunctionsClassRefs || []); } writeToStdout(text) { process.stdout.write(text); } initializeContext() { const modules = this.container.getModules(); modules.forEach((moduleRef) => { let moduleName = moduleRef.metatype.name; if (moduleName === internal_core_module_1.InternalCoreModule.name) { return; } if (this.globalScope[moduleName]) { moduleName += ` (${moduleRef.token})`; } this.introspectCollection(moduleRef, moduleName, "providers"); this.introspectCollection(moduleRef, moduleName, "controllers"); Object.defineProperty(this.globalScope, moduleName, { value: moduleRef.metatype, configurable: false, enumerable: true }); }); } introspectCollection(moduleRef, moduleKey, collection) { const moduleDebugEntry = {}; moduleRef[collection].forEach(({ token }) => { const stringifiedToken = this.stringifyToken(token); if (stringifiedToken === application_config_1.ApplicationConfig.name || stringifiedToken === moduleRef.metatype.name) { return; } if (!this.globalScope[stringifiedToken]) { Object.defineProperty(this.globalScope, stringifiedToken, { value: token, configurable: false, enumerable: true }); } if (stringifiedToken === injector_1.ModuleRef.name) { return; } moduleDebugEntry[stringifiedToken] = token; }); this.debugRegistry[moduleKey] = { ...this.debugRegistry?.[moduleKey], [collection]: moduleDebugEntry }; } stringifyToken(token) { return typeof token !== "string" ? typeof token === "function" ? token.name : token?.toString() : `"${token}"`; } addNativeFunction(NativeFunctionRef) { const nativeFunction = new NativeFunctionRef(this); const nativeFunctions = [nativeFunction]; this.nativeFunctions.set(nativeFunction.fnDefinition.name, nativeFunction); nativeFunction.fnDefinition.aliases?.forEach((aliasName) => { const aliasNativeFunction = Object.create(nativeFunction); aliasNativeFunction.fnDefinition = { name: aliasName, description: aliasNativeFunction.fnDefinition.description, signature: aliasNativeFunction.fnDefinition.signature }; this.nativeFunctions.set(aliasName, aliasNativeFunction); nativeFunctions.push(aliasNativeFunction); }); return nativeFunctions; } registerFunctionIntoGlobalScope(nativeFunction) { this.globalScope[nativeFunction.fnDefinition.name] = nativeFunction.action.bind(nativeFunction); const functionBoundRef = this.globalScope[nativeFunction.fnDefinition.name]; Object.defineProperty(functionBoundRef, "help", { enumerable: false, configurable: false, get: /* @__PURE__ */ __name(() => ( // Dynamically builds the help message as will unlikely to be called // several times. this.writeToStdout(nativeFunction.makeHelpMessage()) ), "get") }); } initializeNativeFunctions(nativeFunctionsClassRefs) { const builtInFunctionsClassRefs = [ native_functions_1.HelpReplFn, native_functions_1.GetReplFn, native_functions_1.ResolveReplFn, native_functions_1.SelectReplFn, native_functions_1.DebugReplFn, native_functions_1.MethodsReplFn ]; builtInFunctionsClassRefs.concat(nativeFunctionsClassRefs).forEach((NativeFunction) => { const nativeFunctions = this.addNativeFunction(NativeFunction); nativeFunctions.forEach((nativeFunction) => { this.registerFunctionIntoGlobalScope(nativeFunction); }); }); } }; exports2.ReplContext = ReplContext; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/repl-logger.js var require_repl_logger = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/repl-logger.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ReplLogger = void 0; var common_12 = require_common(); var nest_application_1 = require_nest_application(); var router_explorer_1 = require_router_explorer(); var routes_resolver_1 = require_routes_resolver(); var ReplLogger = class _ReplLogger extends common_12.ConsoleLogger { static { __name(this, "ReplLogger"); } log(_message, context) { if (_ReplLogger.ignoredContexts.includes(context)) { return; } return super.log.apply(this, Array.from(arguments)); } }; exports2.ReplLogger = ReplLogger; ReplLogger.ignoredContexts = [ routes_resolver_1.RoutesResolver.name, router_explorer_1.RouterExplorer.name, nest_application_1.NestApplication.name ]; } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/repl-native-commands.js var require_repl_native_commands = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/repl-native-commands.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defineDefaultCommandsOnRepl = defineDefaultCommandsOnRepl; function listAllCommands(replServer) { Object.keys(replServer.commands).sort().forEach((name) => { const cmd = replServer.commands[name]; if (cmd) { replServer.output.write(`${name} ${cmd.help || ""} `); } }); } __name(listAllCommands, "listAllCommands"); function defineDefaultCommandsOnRepl(replServer) { replServer.defineCommand("help", { help: "Show REPL options", action(name) { this.clearBufferedCommand(); if (name) { const nativeCommandOrFunction = this.commands[name] || this.context[name]; const helpMessage = nativeCommandOrFunction?.help; if (helpMessage) { this.output.write(`${helpMessage} `); } } else { listAllCommands(this); this.output.write("\n\n"); this.context.help(); this.output.write("\nPress Ctrl+C to abort current expression, Ctrl+D to exit the REPL\n"); } this.displayPrompt(); } }); } __name(defineDefaultCommandsOnRepl, "defineDefaultCommandsOnRepl"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/repl.js var require_repl = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/repl.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.repl = repl; var common_12 = require_common(); var cli_colors_util_1 = require_cli_colors_util(); var nest_factory_1 = require_nest_factory(); var assign_to_object_util_1 = require_assign_to_object_util(); var constants_1 = require_constants7(); var repl_context_1 = require_repl_context(); var repl_logger_1 = require_repl_logger(); var repl_native_commands_1 = require_repl_native_commands(); async function repl(module3, replOptions = {}) { const app = await nest_factory_1.NestFactory.createApplicationContext(module3, { abortOnError: false, logger: new repl_logger_1.ReplLogger() }); await app.init(); const replContext = new repl_context_1.ReplContext(app); common_12.Logger.log(constants_1.REPL_INITIALIZED_MESSAGE); const _repl = await Promise.resolve().then(() => require("repl")); const replServer = _repl.start({ prompt: cli_colors_util_1.clc.green("> "), ignoreUndefined: true, ...replOptions }); (0, assign_to_object_util_1.assignToObject)(replServer.context, replContext.globalScope); (0, repl_native_commands_1.defineDefaultCommandsOnRepl)(replServer); return replServer; } __name(repl, "repl"); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/index.js var require_repl2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/repl/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_repl(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/interfaces/routes.interface.js var require_routes_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/interfaces/routes.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/interfaces/index.js var require_interfaces7 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/interfaces/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_routes_interface(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/request/index.js var require_request2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/request/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.REQUEST = void 0; var request_constants_1 = require_request_constants(); Object.defineProperty(exports2, "REQUEST", { enumerable: true, get: /* @__PURE__ */ __name(function() { return request_constants_1.REQUEST; }, "get") }); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/index.js var require_router2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/router/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RouterModule = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_interfaces7(), exports2); tslib_1.__exportStar(require_request2(), exports2); var router_module_1 = require_router_module(); Object.defineProperty(exports2, "RouterModule", { enumerable: true, get: /* @__PURE__ */ __name(function() { return router_module_1.RouterModule; }, "get") }); } }); // ../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/index.js var require_core3 = __commonJS({ "../../node_modules/.pnpm/@nestjs+core@10.4.22_@nestj_558ae3c7cf983d845eb445c3b6d17e96/node_modules/@nestjs/core/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NestFactory = exports2.APP_PIPE = exports2.APP_INTERCEPTOR = exports2.APP_GUARD = exports2.APP_FILTER = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); require_Reflect(); tslib_1.__exportStar(require_adapters(), exports2); tslib_1.__exportStar(require_application_config(), exports2); var constants_1 = require_constants4(); Object.defineProperty(exports2, "APP_FILTER", { enumerable: true, get: /* @__PURE__ */ __name(function() { return constants_1.APP_FILTER; }, "get") }); Object.defineProperty(exports2, "APP_GUARD", { enumerable: true, get: /* @__PURE__ */ __name(function() { return constants_1.APP_GUARD; }, "get") }); Object.defineProperty(exports2, "APP_INTERCEPTOR", { enumerable: true, get: /* @__PURE__ */ __name(function() { return constants_1.APP_INTERCEPTOR; }, "get") }); Object.defineProperty(exports2, "APP_PIPE", { enumerable: true, get: /* @__PURE__ */ __name(function() { return constants_1.APP_PIPE; }, "get") }); tslib_1.__exportStar(require_discovery(), exports2); tslib_1.__exportStar(require_exceptions2(), exports2); tslib_1.__exportStar(require_helpers(), exports2); tslib_1.__exportStar(require_injector2(), exports2); tslib_1.__exportStar(require_inspector(), exports2); tslib_1.__exportStar(require_metadata_scanner(), exports2); tslib_1.__exportStar(require_middleware2(), exports2); tslib_1.__exportStar(require_nest_application(), exports2); tslib_1.__exportStar(require_nest_application_context(), exports2); var nest_factory_1 = require_nest_factory(); Object.defineProperty(exports2, "NestFactory", { enumerable: true, get: /* @__PURE__ */ __name(function() { return nest_factory_1.NestFactory; }, "get") }); tslib_1.__exportStar(require_repl2(), exports2); tslib_1.__exportStar(require_router2(), exports2); tslib_1.__exportStar(require_services2(), exports2); } }); // ../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/lodash.js var require_lodash = __commonJS({ "../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/lodash.js"(exports2, module2) { (function() { var undefined2; var VERSION = "4.17.21"; var LARGE_ARRAY_SIZE = 200; var CORE_ERROR_TEXT = "Unsupported core-js use. Try https://npms.io/search?q=ponyfill.", FUNC_ERROR_TEXT = "Expected a function", INVALID_TEMPL_VAR_ERROR_TEXT = "Invalid `variable` option passed into `_.template`"; var HASH_UNDEFINED = "__lodash_hash_undefined__"; var MAX_MEMOIZE_SIZE = 500; var PLACEHOLDER = "__lodash_placeholder__"; var CLONE_DEEP_FLAG = 1, CLONE_FLAT_FLAG = 2, CLONE_SYMBOLS_FLAG = 4; var COMPARE_PARTIAL_FLAG = 1, COMPARE_UNORDERED_FLAG = 2; var WRAP_BIND_FLAG = 1, WRAP_BIND_KEY_FLAG = 2, WRAP_CURRY_BOUND_FLAG = 4, WRAP_CURRY_FLAG = 8, WRAP_CURRY_RIGHT_FLAG = 16, WRAP_PARTIAL_FLAG = 32, WRAP_PARTIAL_RIGHT_FLAG = 64, WRAP_ARY_FLAG = 128, WRAP_REARG_FLAG = 256, WRAP_FLIP_FLAG = 512; var DEFAULT_TRUNC_LENGTH = 30, DEFAULT_TRUNC_OMISSION = "..."; var HOT_COUNT = 800, HOT_SPAN = 16; var LAZY_FILTER_FLAG = 1, LAZY_MAP_FLAG = 2, LAZY_WHILE_FLAG = 3; var INFINITY = 1 / 0, MAX_SAFE_INTEGER = 9007199254740991, MAX_INTEGER = 17976931348623157e292, NAN = 0 / 0; var MAX_ARRAY_LENGTH = 4294967295, MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1, HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1; var wrapFlags = [ ["ary", WRAP_ARY_FLAG], ["bind", WRAP_BIND_FLAG], ["bindKey", WRAP_BIND_KEY_FLAG], ["curry", WRAP_CURRY_FLAG], ["curryRight", WRAP_CURRY_RIGHT_FLAG], ["flip", WRAP_FLIP_FLAG], ["partial", WRAP_PARTIAL_FLAG], ["partialRight", WRAP_PARTIAL_RIGHT_FLAG], ["rearg", WRAP_REARG_FLAG] ]; var argsTag = "[object Arguments]", arrayTag = "[object Array]", asyncTag = "[object AsyncFunction]", boolTag = "[object Boolean]", dateTag = "[object Date]", domExcTag = "[object DOMException]", errorTag = "[object Error]", funcTag = "[object Function]", genTag = "[object GeneratorFunction]", mapTag = "[object Map]", numberTag = "[object Number]", nullTag = "[object Null]", objectTag = "[object Object]", promiseTag = "[object Promise]", proxyTag = "[object Proxy]", regexpTag = "[object RegExp]", setTag = "[object Set]", stringTag = "[object String]", symbolTag = "[object Symbol]", undefinedTag = "[object Undefined]", weakMapTag = "[object WeakMap]", weakSetTag = "[object WeakSet]"; var arrayBufferTag = "[object ArrayBuffer]", dataViewTag = "[object DataView]", float32Tag = "[object Float32Array]", float64Tag = "[object Float64Array]", int8Tag = "[object Int8Array]", int16Tag = "[object Int16Array]", int32Tag = "[object Int32Array]", uint8Tag = "[object Uint8Array]", uint8ClampedTag = "[object Uint8ClampedArray]", uint16Tag = "[object Uint16Array]", uint32Tag = "[object Uint32Array]"; var reEmptyStringLeading = /\b__p \+= '';/g, reEmptyStringMiddle = /\b(__p \+=) '' \+/g, reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g; var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g, reUnescapedHtml = /[&<>"']/g, reHasEscapedHtml = RegExp(reEscapedHtml.source), reHasUnescapedHtml = RegExp(reUnescapedHtml.source); var reEscape = /<%-([\s\S]+?)%>/g, reEvaluate = /<%([\s\S]+?)%>/g, reInterpolate = /<%=([\s\S]+?)%>/g; var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, reIsPlainProp = /^\w*$/, rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; var reRegExpChar = /[\\^$.*+?()[\]{}|]/g, reHasRegExpChar = RegExp(reRegExpChar.source); var reTrimStart = /^\s+/; var reWhitespace = /\s/; var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/, reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/, reSplitDetails = /,? & /; var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; var reForbiddenIdentifierChars = /[()=,{}\[\]\/\s]/; var reEscapeChar = /\\(\\)?/g; var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g; var reFlags = /\w*$/; var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; var reIsBinary = /^0b[01]+$/i; var reIsHostCtor = /^\[object .+?Constructor\]$/; var reIsOctal = /^0o[0-7]+$/i; var reIsUint = /^(?:0|[1-9]\d*)$/; var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; var reNoMatch = /($^)/; var reUnescapedString = /['\n\r\u2028\u2029\\]/g; var rsAstralRange = "\\ud800-\\udfff", rsComboMarksRange = "\\u0300-\\u036f", reComboHalfMarksRange = "\\ufe20-\\ufe2f", rsComboSymbolsRange = "\\u20d0-\\u20ff", rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, rsDingbatRange = "\\u2700-\\u27bf", rsLowerRange = "a-z\\xdf-\\xf6\\xf8-\\xff", rsMathOpRange = "\\xac\\xb1\\xd7\\xf7", rsNonCharRange = "\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf", rsPunctuationRange = "\\u2000-\\u206f", rsSpaceRange = " \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000", rsUpperRange = "A-Z\\xc0-\\xd6\\xd8-\\xde", rsVarRange = "\\ufe0e\\ufe0f", rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; var rsApos = "['\u2019]", rsAstral = "[" + rsAstralRange + "]", rsBreak = "[" + rsBreakRange + "]", rsCombo = "[" + rsComboRange + "]", rsDigits = "\\d+", rsDingbat = "[" + rsDingbatRange + "]", rsLower = "[" + rsLowerRange + "]", rsMisc = "[^" + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + "]", rsFitz = "\\ud83c[\\udffb-\\udfff]", rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")", rsNonAstral = "[^" + rsAstralRange + "]", rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}", rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]", rsUpper = "[" + rsUpperRange + "]", rsZWJ = "\\u200d"; var rsMiscLower = "(?:" + rsLower + "|" + rsMisc + ")", rsMiscUpper = "(?:" + rsUpper + "|" + rsMisc + ")", rsOptContrLower = "(?:" + rsApos + "(?:d|ll|m|re|s|t|ve))?", rsOptContrUpper = "(?:" + rsApos + "(?:D|LL|M|RE|S|T|VE))?", reOptMod = rsModifier + "?", rsOptVar = "[" + rsVarRange + "]?", rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*", rsOrdLower = "\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])", rsOrdUpper = "\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])", rsSeq = rsOptVar + reOptMod + rsOptJoin, rsEmoji = "(?:" + [rsDingbat, rsRegional, rsSurrPair].join("|") + ")" + rsSeq, rsSymbol = "(?:" + [rsNonAstral + rsCombo + "?", rsCombo, rsRegional, rsSurrPair, rsAstral].join("|") + ")"; var reApos = RegExp(rsApos, "g"); var reComboMark = RegExp(rsCombo, "g"); var reUnicode = RegExp(rsFitz + "(?=" + rsFitz + ")|" + rsSymbol + rsSeq, "g"); var reUnicodeWord = RegExp([ rsUpper + "?" + rsLower + "+" + rsOptContrLower + "(?=" + [rsBreak, rsUpper, "$"].join("|") + ")", rsMiscUpper + "+" + rsOptContrUpper + "(?=" + [rsBreak, rsUpper + rsMiscLower, "$"].join("|") + ")", rsUpper + "?" + rsMiscLower + "+" + rsOptContrLower, rsUpper + "+" + rsOptContrUpper, rsOrdUpper, rsOrdLower, rsDigits, rsEmoji ].join("|"), "g"); var reHasUnicode = RegExp("[" + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + "]"); var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; var contextProps = [ "Array", "Buffer", "DataView", "Date", "Error", "Float32Array", "Float64Array", "Function", "Int8Array", "Int16Array", "Int32Array", "Map", "Math", "Object", "Promise", "RegExp", "Set", "String", "Symbol", "TypeError", "Uint8Array", "Uint8ClampedArray", "Uint16Array", "Uint32Array", "WeakMap", "_", "clearTimeout", "isFinite", "parseInt", "setTimeout" ]; var templateCounter = -1; var typedArrayTags = {}; typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true; typedArrayTags[argsTag] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false; var cloneableTags = {}; cloneableTags[argsTag] = cloneableTags[arrayTag] = cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = cloneableTags[boolTag] = cloneableTags[dateTag] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag] = cloneableTags[numberTag] = cloneableTags[objectTag] = cloneableTags[regexpTag] = cloneableTags[setTag] = cloneableTags[stringTag] = cloneableTags[symbolTag] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; cloneableTags[errorTag] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = false; var deburredLetters = { // Latin-1 Supplement block. "\xC0": "A", "\xC1": "A", "\xC2": "A", "\xC3": "A", "\xC4": "A", "\xC5": "A", "\xE0": "a", "\xE1": "a", "\xE2": "a", "\xE3": "a", "\xE4": "a", "\xE5": "a", "\xC7": "C", "\xE7": "c", "\xD0": "D", "\xF0": "d", "\xC8": "E", "\xC9": "E", "\xCA": "E", "\xCB": "E", "\xE8": "e", "\xE9": "e", "\xEA": "e", "\xEB": "e", "\xCC": "I", "\xCD": "I", "\xCE": "I", "\xCF": "I", "\xEC": "i", "\xED": "i", "\xEE": "i", "\xEF": "i", "\xD1": "N", "\xF1": "n", "\xD2": "O", "\xD3": "O", "\xD4": "O", "\xD5": "O", "\xD6": "O", "\xD8": "O", "\xF2": "o", "\xF3": "o", "\xF4": "o", "\xF5": "o", "\xF6": "o", "\xF8": "o", "\xD9": "U", "\xDA": "U", "\xDB": "U", "\xDC": "U", "\xF9": "u", "\xFA": "u", "\xFB": "u", "\xFC": "u", "\xDD": "Y", "\xFD": "y", "\xFF": "y", "\xC6": "Ae", "\xE6": "ae", "\xDE": "Th", "\xFE": "th", "\xDF": "ss", // Latin Extended-A block. "\u0100": "A", "\u0102": "A", "\u0104": "A", "\u0101": "a", "\u0103": "a", "\u0105": "a", "\u0106": "C", "\u0108": "C", "\u010A": "C", "\u010C": "C", "\u0107": "c", "\u0109": "c", "\u010B": "c", "\u010D": "c", "\u010E": "D", "\u0110": "D", "\u010F": "d", "\u0111": "d", "\u0112": "E", "\u0114": "E", "\u0116": "E", "\u0118": "E", "\u011A": "E", "\u0113": "e", "\u0115": "e", "\u0117": "e", "\u0119": "e", "\u011B": "e", "\u011C": "G", "\u011E": "G", "\u0120": "G", "\u0122": "G", "\u011D": "g", "\u011F": "g", "\u0121": "g", "\u0123": "g", "\u0124": "H", "\u0126": "H", "\u0125": "h", "\u0127": "h", "\u0128": "I", "\u012A": "I", "\u012C": "I", "\u012E": "I", "\u0130": "I", "\u0129": "i", "\u012B": "i", "\u012D": "i", "\u012F": "i", "\u0131": "i", "\u0134": "J", "\u0135": "j", "\u0136": "K", "\u0137": "k", "\u0138": "k", "\u0139": "L", "\u013B": "L", "\u013D": "L", "\u013F": "L", "\u0141": "L", "\u013A": "l", "\u013C": "l", "\u013E": "l", "\u0140": "l", "\u0142": "l", "\u0143": "N", "\u0145": "N", "\u0147": "N", "\u014A": "N", "\u0144": "n", "\u0146": "n", "\u0148": "n", "\u014B": "n", "\u014C": "O", "\u014E": "O", "\u0150": "O", "\u014D": "o", "\u014F": "o", "\u0151": "o", "\u0154": "R", "\u0156": "R", "\u0158": "R", "\u0155": "r", "\u0157": "r", "\u0159": "r", "\u015A": "S", "\u015C": "S", "\u015E": "S", "\u0160": "S", "\u015B": "s", "\u015D": "s", "\u015F": "s", "\u0161": "s", "\u0162": "T", "\u0164": "T", "\u0166": "T", "\u0163": "t", "\u0165": "t", "\u0167": "t", "\u0168": "U", "\u016A": "U", "\u016C": "U", "\u016E": "U", "\u0170": "U", "\u0172": "U", "\u0169": "u", "\u016B": "u", "\u016D": "u", "\u016F": "u", "\u0171": "u", "\u0173": "u", "\u0174": "W", "\u0175": "w", "\u0176": "Y", "\u0177": "y", "\u0178": "Y", "\u0179": "Z", "\u017B": "Z", "\u017D": "Z", "\u017A": "z", "\u017C": "z", "\u017E": "z", "\u0132": "IJ", "\u0133": "ij", "\u0152": "Oe", "\u0153": "oe", "\u0149": "'n", "\u017F": "s" }; var htmlEscapes = { "&": "&", "<": "<", ">": ">", '"': """, "'": "'" }; var htmlUnescapes = { "&": "&", "<": "<", ">": ">", """: '"', "'": "'" }; var stringEscapes = { "\\": "\\", "'": "'", "\n": "n", "\r": "r", "\u2028": "u2028", "\u2029": "u2029" }; var freeParseFloat = parseFloat, freeParseInt = parseInt; var freeGlobal = typeof global == "object" && global && global.Object === Object && global; var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = freeGlobal || freeSelf || Function("return this")(); var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; var moduleExports = freeModule && freeModule.exports === freeExports; var freeProcess = moduleExports && freeGlobal.process; var nodeUtil = (function() { try { var types = freeModule && freeModule.require && freeModule.require("util").types; if (types) { return types; } return freeProcess && freeProcess.binding && freeProcess.binding("util"); } catch (e) { } })(); var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer, nodeIsDate = nodeUtil && nodeUtil.isDate, nodeIsMap = nodeUtil && nodeUtil.isMap, nodeIsRegExp = nodeUtil && nodeUtil.isRegExp, nodeIsSet = nodeUtil && nodeUtil.isSet, nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; function apply(func, thisArg, args) { switch (args.length) { case 0: return func.call(thisArg); case 1: return func.call(thisArg, args[0]); case 2: return func.call(thisArg, args[0], args[1]); case 3: return func.call(thisArg, args[0], args[1], args[2]); } return func.apply(thisArg, args); } __name(apply, "apply"); function arrayAggregator(array, setter, iteratee, accumulator) { var index = -1, length = array == null ? 0 : array.length; while (++index < length) { var value = array[index]; setter(accumulator, value, iteratee(value), array); } return accumulator; } __name(arrayAggregator, "arrayAggregator"); function arrayEach(array, iteratee) { var index = -1, length = array == null ? 0 : array.length; while (++index < length) { if (iteratee(array[index], index, array) === false) { break; } } return array; } __name(arrayEach, "arrayEach"); function arrayEachRight(array, iteratee) { var length = array == null ? 0 : array.length; while (length--) { if (iteratee(array[length], length, array) === false) { break; } } return array; } __name(arrayEachRight, "arrayEachRight"); function arrayEvery(array, predicate) { var index = -1, length = array == null ? 0 : array.length; while (++index < length) { if (!predicate(array[index], index, array)) { return false; } } return true; } __name(arrayEvery, "arrayEvery"); function arrayFilter(array, predicate) { var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result = []; while (++index < length) { var value = array[index]; if (predicate(value, index, array)) { result[resIndex++] = value; } } return result; } __name(arrayFilter, "arrayFilter"); function arrayIncludes(array, value) { var length = array == null ? 0 : array.length; return !!length && baseIndexOf(array, value, 0) > -1; } __name(arrayIncludes, "arrayIncludes"); function arrayIncludesWith(array, value, comparator) { var index = -1, length = array == null ? 0 : array.length; while (++index < length) { if (comparator(value, array[index])) { return true; } } return false; } __name(arrayIncludesWith, "arrayIncludesWith"); function arrayMap(array, iteratee) { var index = -1, length = array == null ? 0 : array.length, result = Array(length); while (++index < length) { result[index] = iteratee(array[index], index, array); } return result; } __name(arrayMap, "arrayMap"); function arrayPush(array, values) { var index = -1, length = values.length, offset = array.length; while (++index < length) { array[offset + index] = values[index]; } return array; } __name(arrayPush, "arrayPush"); function arrayReduce(array, iteratee, accumulator, initAccum) { var index = -1, length = array == null ? 0 : array.length; if (initAccum && length) { accumulator = array[++index]; } while (++index < length) { accumulator = iteratee(accumulator, array[index], index, array); } return accumulator; } __name(arrayReduce, "arrayReduce"); function arrayReduceRight(array, iteratee, accumulator, initAccum) { var length = array == null ? 0 : array.length; if (initAccum && length) { accumulator = array[--length]; } while (length--) { accumulator = iteratee(accumulator, array[length], length, array); } return accumulator; } __name(arrayReduceRight, "arrayReduceRight"); function arraySome(array, predicate) { var index = -1, length = array == null ? 0 : array.length; while (++index < length) { if (predicate(array[index], index, array)) { return true; } } return false; } __name(arraySome, "arraySome"); var asciiSize = baseProperty("length"); function asciiToArray(string) { return string.split(""); } __name(asciiToArray, "asciiToArray"); function asciiWords(string) { return string.match(reAsciiWord) || []; } __name(asciiWords, "asciiWords"); function baseFindKey(collection, predicate, eachFunc) { var result; eachFunc(collection, function(value, key, collection2) { if (predicate(value, key, collection2)) { result = key; return false; } }); return result; } __name(baseFindKey, "baseFindKey"); function baseFindIndex(array, predicate, fromIndex, fromRight) { var length = array.length, index = fromIndex + (fromRight ? 1 : -1); while (fromRight ? index-- : ++index < length) { if (predicate(array[index], index, array)) { return index; } } return -1; } __name(baseFindIndex, "baseFindIndex"); function baseIndexOf(array, value, fromIndex) { return value === value ? strictIndexOf(array, value, fromIndex) : baseFindIndex(array, baseIsNaN, fromIndex); } __name(baseIndexOf, "baseIndexOf"); function baseIndexOfWith(array, value, fromIndex, comparator) { var index = fromIndex - 1, length = array.length; while (++index < length) { if (comparator(array[index], value)) { return index; } } return -1; } __name(baseIndexOfWith, "baseIndexOfWith"); function baseIsNaN(value) { return value !== value; } __name(baseIsNaN, "baseIsNaN"); function baseMean(array, iteratee) { var length = array == null ? 0 : array.length; return length ? baseSum(array, iteratee) / length : NAN; } __name(baseMean, "baseMean"); function baseProperty(key) { return function(object) { return object == null ? undefined2 : object[key]; }; } __name(baseProperty, "baseProperty"); function basePropertyOf(object) { return function(key) { return object == null ? undefined2 : object[key]; }; } __name(basePropertyOf, "basePropertyOf"); function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { eachFunc(collection, function(value, index, collection2) { accumulator = initAccum ? (initAccum = false, value) : iteratee(accumulator, value, index, collection2); }); return accumulator; } __name(baseReduce, "baseReduce"); function baseSortBy(array, comparer) { var length = array.length; array.sort(comparer); while (length--) { array[length] = array[length].value; } return array; } __name(baseSortBy, "baseSortBy"); function baseSum(array, iteratee) { var result, index = -1, length = array.length; while (++index < length) { var current = iteratee(array[index]); if (current !== undefined2) { result = result === undefined2 ? current : result + current; } } return result; } __name(baseSum, "baseSum"); function baseTimes(n, iteratee) { var index = -1, result = Array(n); while (++index < n) { result[index] = iteratee(index); } return result; } __name(baseTimes, "baseTimes"); function baseToPairs(object, props) { return arrayMap(props, function(key) { return [key, object[key]]; }); } __name(baseToPairs, "baseToPairs"); function baseTrim(string) { return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string; } __name(baseTrim, "baseTrim"); function baseUnary(func) { return function(value) { return func(value); }; } __name(baseUnary, "baseUnary"); function baseValues(object, props) { return arrayMap(props, function(key) { return object[key]; }); } __name(baseValues, "baseValues"); function cacheHas(cache, key) { return cache.has(key); } __name(cacheHas, "cacheHas"); function charsStartIndex(strSymbols, chrSymbols) { var index = -1, length = strSymbols.length; while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) { } return index; } __name(charsStartIndex, "charsStartIndex"); function charsEndIndex(strSymbols, chrSymbols) { var index = strSymbols.length; while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) { } return index; } __name(charsEndIndex, "charsEndIndex"); function countHolders(array, placeholder) { var length = array.length, result = 0; while (length--) { if (array[length] === placeholder) { ++result; } } return result; } __name(countHolders, "countHolders"); var deburrLetter = basePropertyOf(deburredLetters); var escapeHtmlChar = basePropertyOf(htmlEscapes); function escapeStringChar(chr) { return "\\" + stringEscapes[chr]; } __name(escapeStringChar, "escapeStringChar"); function getValue(object, key) { return object == null ? undefined2 : object[key]; } __name(getValue, "getValue"); function hasUnicode(string) { return reHasUnicode.test(string); } __name(hasUnicode, "hasUnicode"); function hasUnicodeWord(string) { return reHasUnicodeWord.test(string); } __name(hasUnicodeWord, "hasUnicodeWord"); function iteratorToArray(iterator) { var data, result = []; while (!(data = iterator.next()).done) { result.push(data.value); } return result; } __name(iteratorToArray, "iteratorToArray"); function mapToArray(map) { var index = -1, result = Array(map.size); map.forEach(function(value, key) { result[++index] = [key, value]; }); return result; } __name(mapToArray, "mapToArray"); function overArg(func, transform) { return function(arg) { return func(transform(arg)); }; } __name(overArg, "overArg"); function replaceHolders(array, placeholder) { var index = -1, length = array.length, resIndex = 0, result = []; while (++index < length) { var value = array[index]; if (value === placeholder || value === PLACEHOLDER) { array[index] = PLACEHOLDER; result[resIndex++] = index; } } return result; } __name(replaceHolders, "replaceHolders"); function setToArray(set) { var index = -1, result = Array(set.size); set.forEach(function(value) { result[++index] = value; }); return result; } __name(setToArray, "setToArray"); function setToPairs(set) { var index = -1, result = Array(set.size); set.forEach(function(value) { result[++index] = [value, value]; }); return result; } __name(setToPairs, "setToPairs"); function strictIndexOf(array, value, fromIndex) { var index = fromIndex - 1, length = array.length; while (++index < length) { if (array[index] === value) { return index; } } return -1; } __name(strictIndexOf, "strictIndexOf"); function strictLastIndexOf(array, value, fromIndex) { var index = fromIndex + 1; while (index--) { if (array[index] === value) { return index; } } return index; } __name(strictLastIndexOf, "strictLastIndexOf"); function stringSize(string) { return hasUnicode(string) ? unicodeSize(string) : asciiSize(string); } __name(stringSize, "stringSize"); function stringToArray(string) { return hasUnicode(string) ? unicodeToArray(string) : asciiToArray(string); } __name(stringToArray, "stringToArray"); function trimmedEndIndex(string) { var index = string.length; while (index-- && reWhitespace.test(string.charAt(index))) { } return index; } __name(trimmedEndIndex, "trimmedEndIndex"); var unescapeHtmlChar = basePropertyOf(htmlUnescapes); function unicodeSize(string) { var result = reUnicode.lastIndex = 0; while (reUnicode.test(string)) { ++result; } return result; } __name(unicodeSize, "unicodeSize"); function unicodeToArray(string) { return string.match(reUnicode) || []; } __name(unicodeToArray, "unicodeToArray"); function unicodeWords(string) { return string.match(reUnicodeWord) || []; } __name(unicodeWords, "unicodeWords"); var runInContext = /* @__PURE__ */ __name((function runInContext2(context) { context = context == null ? root : _2.defaults(root.Object(), context, _2.pick(root, contextProps)); var Array2 = context.Array, Date2 = context.Date, Error2 = context.Error, Function2 = context.Function, Math2 = context.Math, Object2 = context.Object, RegExp2 = context.RegExp, String2 = context.String, TypeError2 = context.TypeError; var arrayProto = Array2.prototype, funcProto = Function2.prototype, objectProto = Object2.prototype; var coreJsData = context["__core-js_shared__"]; var funcToString = funcProto.toString; var hasOwnProperty = objectProto.hasOwnProperty; var idCounter = 0; var maskSrcKey = (function() { var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); return uid ? "Symbol(src)_1." + uid : ""; })(); var nativeObjectToString = objectProto.toString; var objectCtorString = funcToString.call(Object2); var oldDash = root._; var reIsNative = RegExp2( "^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" ); var Buffer2 = moduleExports ? context.Buffer : undefined2, Symbol2 = context.Symbol, Uint8Array2 = context.Uint8Array, allocUnsafe = Buffer2 ? Buffer2.allocUnsafe : undefined2, getPrototype = overArg(Object2.getPrototypeOf, Object2), objectCreate = Object2.create, propertyIsEnumerable = objectProto.propertyIsEnumerable, splice = arrayProto.splice, spreadableSymbol = Symbol2 ? Symbol2.isConcatSpreadable : undefined2, symIterator = Symbol2 ? Symbol2.iterator : undefined2, symToStringTag = Symbol2 ? Symbol2.toStringTag : undefined2; var defineProperty = (function() { try { var func = getNative(Object2, "defineProperty"); func({}, "", {}); return func; } catch (e) { } })(); var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout, ctxNow = Date2 && Date2.now !== root.Date.now && Date2.now, ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout; var nativeCeil = Math2.ceil, nativeFloor = Math2.floor, nativeGetSymbols = Object2.getOwnPropertySymbols, nativeIsBuffer = Buffer2 ? Buffer2.isBuffer : undefined2, nativeIsFinite = context.isFinite, nativeJoin = arrayProto.join, nativeKeys = overArg(Object2.keys, Object2), nativeMax = Math2.max, nativeMin = Math2.min, nativeNow = Date2.now, nativeParseInt = context.parseInt, nativeRandom = Math2.random, nativeReverse = arrayProto.reverse; var DataView2 = getNative(context, "DataView"), Map2 = getNative(context, "Map"), Promise2 = getNative(context, "Promise"), Set2 = getNative(context, "Set"), WeakMap2 = getNative(context, "WeakMap"), nativeCreate = getNative(Object2, "create"); var metaMap = WeakMap2 && new WeakMap2(); var realNames = {}; var dataViewCtorString = toSource(DataView2), mapCtorString = toSource(Map2), promiseCtorString = toSource(Promise2), setCtorString = toSource(Set2), weakMapCtorString = toSource(WeakMap2); var symbolProto = Symbol2 ? Symbol2.prototype : undefined2, symbolValueOf = symbolProto ? symbolProto.valueOf : undefined2, symbolToString = symbolProto ? symbolProto.toString : undefined2; function lodash(value) { if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) { if (value instanceof LodashWrapper) { return value; } if (hasOwnProperty.call(value, "__wrapped__")) { return wrapperClone(value); } } return new LodashWrapper(value); } __name(lodash, "lodash"); var baseCreate = /* @__PURE__ */ (function() { function object() { } __name(object, "object"); return function(proto) { if (!isObject2(proto)) { return {}; } if (objectCreate) { return objectCreate(proto); } object.prototype = proto; var result2 = new object(); object.prototype = undefined2; return result2; }; })(); function baseLodash() { } __name(baseLodash, "baseLodash"); function LodashWrapper(value, chainAll) { this.__wrapped__ = value; this.__actions__ = []; this.__chain__ = !!chainAll; this.__index__ = 0; this.__values__ = undefined2; } __name(LodashWrapper, "LodashWrapper"); lodash.templateSettings = { /** * Used to detect `data` property values to be HTML-escaped. * * @memberOf _.templateSettings * @type {RegExp} */ "escape": reEscape, /** * Used to detect code to be evaluated. * * @memberOf _.templateSettings * @type {RegExp} */ "evaluate": reEvaluate, /** * Used to detect `data` property values to inject. * * @memberOf _.templateSettings * @type {RegExp} */ "interpolate": reInterpolate, /** * Used to reference the data object in the template text. * * @memberOf _.templateSettings * @type {string} */ "variable": "", /** * Used to import variables into the compiled template. * * @memberOf _.templateSettings * @type {Object} */ "imports": { /** * A reference to the `lodash` function. * * @memberOf _.templateSettings.imports * @type {Function} */ "_": lodash } }; lodash.prototype = baseLodash.prototype; lodash.prototype.constructor = lodash; LodashWrapper.prototype = baseCreate(baseLodash.prototype); LodashWrapper.prototype.constructor = LodashWrapper; function LazyWrapper(value) { this.__wrapped__ = value; this.__actions__ = []; this.__dir__ = 1; this.__filtered__ = false; this.__iteratees__ = []; this.__takeCount__ = MAX_ARRAY_LENGTH; this.__views__ = []; } __name(LazyWrapper, "LazyWrapper"); function lazyClone() { var result2 = new LazyWrapper(this.__wrapped__); result2.__actions__ = copyArray(this.__actions__); result2.__dir__ = this.__dir__; result2.__filtered__ = this.__filtered__; result2.__iteratees__ = copyArray(this.__iteratees__); result2.__takeCount__ = this.__takeCount__; result2.__views__ = copyArray(this.__views__); return result2; } __name(lazyClone, "lazyClone"); function lazyReverse() { if (this.__filtered__) { var result2 = new LazyWrapper(this); result2.__dir__ = -1; result2.__filtered__ = true; } else { result2 = this.clone(); result2.__dir__ *= -1; } return result2; } __name(lazyReverse, "lazyReverse"); function lazyValue() { var array = this.__wrapped__.value(), dir = this.__dir__, isArr = isArray(array), isRight = dir < 0, arrLength = isArr ? array.length : 0, view = getView(0, arrLength, this.__views__), start = view.start, end = view.end, length = end - start, index = isRight ? end : start - 1, iteratees = this.__iteratees__, iterLength = iteratees.length, resIndex = 0, takeCount = nativeMin(length, this.__takeCount__); if (!isArr || !isRight && arrLength == length && takeCount == length) { return baseWrapperValue(array, this.__actions__); } var result2 = []; outer: while (length-- && resIndex < takeCount) { index += dir; var iterIndex = -1, value = array[index]; while (++iterIndex < iterLength) { var data = iteratees[iterIndex], iteratee2 = data.iteratee, type = data.type, computed = iteratee2(value); if (type == LAZY_MAP_FLAG) { value = computed; } else if (!computed) { if (type == LAZY_FILTER_FLAG) { continue outer; } else { break outer; } } } result2[resIndex++] = value; } return result2; } __name(lazyValue, "lazyValue"); LazyWrapper.prototype = baseCreate(baseLodash.prototype); LazyWrapper.prototype.constructor = LazyWrapper; function Hash(entries) { var index = -1, length = entries == null ? 0 : entries.length; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(Hash, "Hash"); function hashClear() { this.__data__ = nativeCreate ? nativeCreate(null) : {}; this.size = 0; } __name(hashClear, "hashClear"); function hashDelete(key) { var result2 = this.has(key) && delete this.__data__[key]; this.size -= result2 ? 1 : 0; return result2; } __name(hashDelete, "hashDelete"); function hashGet(key) { var data = this.__data__; if (nativeCreate) { var result2 = data[key]; return result2 === HASH_UNDEFINED ? undefined2 : result2; } return hasOwnProperty.call(data, key) ? data[key] : undefined2; } __name(hashGet, "hashGet"); function hashHas(key) { var data = this.__data__; return nativeCreate ? data[key] !== undefined2 : hasOwnProperty.call(data, key); } __name(hashHas, "hashHas"); function hashSet(key, value) { var data = this.__data__; this.size += this.has(key) ? 0 : 1; data[key] = nativeCreate && value === undefined2 ? HASH_UNDEFINED : value; return this; } __name(hashSet, "hashSet"); Hash.prototype.clear = hashClear; Hash.prototype["delete"] = hashDelete; Hash.prototype.get = hashGet; Hash.prototype.has = hashHas; Hash.prototype.set = hashSet; function ListCache(entries) { var index = -1, length = entries == null ? 0 : entries.length; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(ListCache, "ListCache"); function listCacheClear() { this.__data__ = []; this.size = 0; } __name(listCacheClear, "listCacheClear"); function listCacheDelete(key) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { return false; } var lastIndex = data.length - 1; if (index == lastIndex) { data.pop(); } else { splice.call(data, index, 1); } --this.size; return true; } __name(listCacheDelete, "listCacheDelete"); function listCacheGet(key) { var data = this.__data__, index = assocIndexOf(data, key); return index < 0 ? undefined2 : data[index][1]; } __name(listCacheGet, "listCacheGet"); function listCacheHas(key) { return assocIndexOf(this.__data__, key) > -1; } __name(listCacheHas, "listCacheHas"); function listCacheSet(key, value) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { ++this.size; data.push([key, value]); } else { data[index][1] = value; } return this; } __name(listCacheSet, "listCacheSet"); ListCache.prototype.clear = listCacheClear; ListCache.prototype["delete"] = listCacheDelete; ListCache.prototype.get = listCacheGet; ListCache.prototype.has = listCacheHas; ListCache.prototype.set = listCacheSet; function MapCache(entries) { var index = -1, length = entries == null ? 0 : entries.length; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(MapCache, "MapCache"); function mapCacheClear() { this.size = 0; this.__data__ = { "hash": new Hash(), "map": new (Map2 || ListCache)(), "string": new Hash() }; } __name(mapCacheClear, "mapCacheClear"); function mapCacheDelete(key) { var result2 = getMapData(this, key)["delete"](key); this.size -= result2 ? 1 : 0; return result2; } __name(mapCacheDelete, "mapCacheDelete"); function mapCacheGet(key) { return getMapData(this, key).get(key); } __name(mapCacheGet, "mapCacheGet"); function mapCacheHas(key) { return getMapData(this, key).has(key); } __name(mapCacheHas, "mapCacheHas"); function mapCacheSet(key, value) { var data = getMapData(this, key), size2 = data.size; data.set(key, value); this.size += data.size == size2 ? 0 : 1; return this; } __name(mapCacheSet, "mapCacheSet"); MapCache.prototype.clear = mapCacheClear; MapCache.prototype["delete"] = mapCacheDelete; MapCache.prototype.get = mapCacheGet; MapCache.prototype.has = mapCacheHas; MapCache.prototype.set = mapCacheSet; function SetCache(values2) { var index = -1, length = values2 == null ? 0 : values2.length; this.__data__ = new MapCache(); while (++index < length) { this.add(values2[index]); } } __name(SetCache, "SetCache"); function setCacheAdd(value) { this.__data__.set(value, HASH_UNDEFINED); return this; } __name(setCacheAdd, "setCacheAdd"); function setCacheHas(value) { return this.__data__.has(value); } __name(setCacheHas, "setCacheHas"); SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; SetCache.prototype.has = setCacheHas; function Stack(entries) { var data = this.__data__ = new ListCache(entries); this.size = data.size; } __name(Stack, "Stack"); function stackClear() { this.__data__ = new ListCache(); this.size = 0; } __name(stackClear, "stackClear"); function stackDelete(key) { var data = this.__data__, result2 = data["delete"](key); this.size = data.size; return result2; } __name(stackDelete, "stackDelete"); function stackGet(key) { return this.__data__.get(key); } __name(stackGet, "stackGet"); function stackHas(key) { return this.__data__.has(key); } __name(stackHas, "stackHas"); function stackSet(key, value) { var data = this.__data__; if (data instanceof ListCache) { var pairs = data.__data__; if (!Map2 || pairs.length < LARGE_ARRAY_SIZE - 1) { pairs.push([key, value]); this.size = ++data.size; return this; } data = this.__data__ = new MapCache(pairs); } data.set(key, value); this.size = data.size; return this; } __name(stackSet, "stackSet"); Stack.prototype.clear = stackClear; Stack.prototype["delete"] = stackDelete; Stack.prototype.get = stackGet; Stack.prototype.has = stackHas; Stack.prototype.set = stackSet; function arrayLikeKeys(value, inherited) { var isArr = isArray(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer(value), isType = !isArr && !isArg && !isBuff && isTypedArray(value), skipIndexes = isArr || isArg || isBuff || isType, result2 = skipIndexes ? baseTimes(value.length, String2) : [], length = result2.length; for (var key in value) { if ((inherited || hasOwnProperty.call(value, key)) && !(skipIndexes && // Safari 9 has enumerable `arguments.length` in strict mode. (key == "length" || // Node.js 0.10 has enumerable non-index properties on buffers. isBuff && (key == "offset" || key == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays. isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || // Skip index properties. isIndex(key, length)))) { result2.push(key); } } return result2; } __name(arrayLikeKeys, "arrayLikeKeys"); function arraySample(array) { var length = array.length; return length ? array[baseRandom(0, length - 1)] : undefined2; } __name(arraySample, "arraySample"); function arraySampleSize(array, n) { return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length)); } __name(arraySampleSize, "arraySampleSize"); function arrayShuffle(array) { return shuffleSelf(copyArray(array)); } __name(arrayShuffle, "arrayShuffle"); function assignMergeValue(object, key, value) { if (value !== undefined2 && !eq(object[key], value) || value === undefined2 && !(key in object)) { baseAssignValue(object, key, value); } } __name(assignMergeValue, "assignMergeValue"); function assignValue(object, key, value) { var objValue = object[key]; if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || value === undefined2 && !(key in object)) { baseAssignValue(object, key, value); } } __name(assignValue, "assignValue"); function assocIndexOf(array, key) { var length = array.length; while (length--) { if (eq(array[length][0], key)) { return length; } } return -1; } __name(assocIndexOf, "assocIndexOf"); function baseAggregator(collection, setter, iteratee2, accumulator) { baseEach(collection, function(value, key, collection2) { setter(accumulator, value, iteratee2(value), collection2); }); return accumulator; } __name(baseAggregator, "baseAggregator"); function baseAssign(object, source) { return object && copyObject(source, keys(source), object); } __name(baseAssign, "baseAssign"); function baseAssignIn(object, source) { return object && copyObject(source, keysIn(source), object); } __name(baseAssignIn, "baseAssignIn"); function baseAssignValue(object, key, value) { if (key == "__proto__" && defineProperty) { defineProperty(object, key, { "configurable": true, "enumerable": true, "value": value, "writable": true }); } else { object[key] = value; } } __name(baseAssignValue, "baseAssignValue"); function baseAt(object, paths) { var index = -1, length = paths.length, result2 = Array2(length), skip = object == null; while (++index < length) { result2[index] = skip ? undefined2 : get(object, paths[index]); } return result2; } __name(baseAt, "baseAt"); function baseClamp(number, lower, upper) { if (number === number) { if (upper !== undefined2) { number = number <= upper ? number : upper; } if (lower !== undefined2) { number = number >= lower ? number : lower; } } return number; } __name(baseClamp, "baseClamp"); function baseClone(value, bitmask, customizer, key, object, stack) { var result2, isDeep = bitmask & CLONE_DEEP_FLAG, isFlat = bitmask & CLONE_FLAT_FLAG, isFull = bitmask & CLONE_SYMBOLS_FLAG; if (customizer) { result2 = object ? customizer(value, key, object, stack) : customizer(value); } if (result2 !== undefined2) { return result2; } if (!isObject2(value)) { return value; } var isArr = isArray(value); if (isArr) { result2 = initCloneArray(value); if (!isDeep) { return copyArray(value, result2); } } else { var tag = getTag(value), isFunc = tag == funcTag || tag == genTag; if (isBuffer(value)) { return cloneBuffer(value, isDeep); } if (tag == objectTag || tag == argsTag || isFunc && !object) { result2 = isFlat || isFunc ? {} : initCloneObject(value); if (!isDeep) { return isFlat ? copySymbolsIn(value, baseAssignIn(result2, value)) : copySymbols(value, baseAssign(result2, value)); } } else { if (!cloneableTags[tag]) { return object ? value : {}; } result2 = initCloneByTag(value, tag, isDeep); } } stack || (stack = new Stack()); var stacked = stack.get(value); if (stacked) { return stacked; } stack.set(value, result2); if (isSet(value)) { value.forEach(function(subValue) { result2.add(baseClone(subValue, bitmask, customizer, subValue, value, stack)); }); } else if (isMap(value)) { value.forEach(function(subValue, key2) { result2.set(key2, baseClone(subValue, bitmask, customizer, key2, value, stack)); }); } var keysFunc = isFull ? isFlat ? getAllKeysIn : getAllKeys : isFlat ? keysIn : keys; var props = isArr ? undefined2 : keysFunc(value); arrayEach(props || value, function(subValue, key2) { if (props) { key2 = subValue; subValue = value[key2]; } assignValue(result2, key2, baseClone(subValue, bitmask, customizer, key2, value, stack)); }); return result2; } __name(baseClone, "baseClone"); function baseConforms(source) { var props = keys(source); return function(object) { return baseConformsTo(object, source, props); }; } __name(baseConforms, "baseConforms"); function baseConformsTo(object, source, props) { var length = props.length; if (object == null) { return !length; } object = Object2(object); while (length--) { var key = props[length], predicate = source[key], value = object[key]; if (value === undefined2 && !(key in object) || !predicate(value)) { return false; } } return true; } __name(baseConformsTo, "baseConformsTo"); function baseDelay(func, wait, args) { if (typeof func != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } return setTimeout2(function() { func.apply(undefined2, args); }, wait); } __name(baseDelay, "baseDelay"); function baseDifference(array, values2, iteratee2, comparator) { var index = -1, includes2 = arrayIncludes, isCommon = true, length = array.length, result2 = [], valuesLength = values2.length; if (!length) { return result2; } if (iteratee2) { values2 = arrayMap(values2, baseUnary(iteratee2)); } if (comparator) { includes2 = arrayIncludesWith; isCommon = false; } else if (values2.length >= LARGE_ARRAY_SIZE) { includes2 = cacheHas; isCommon = false; values2 = new SetCache(values2); } outer: while (++index < length) { var value = array[index], computed = iteratee2 == null ? value : iteratee2(value); value = comparator || value !== 0 ? value : 0; if (isCommon && computed === computed) { var valuesIndex = valuesLength; while (valuesIndex--) { if (values2[valuesIndex] === computed) { continue outer; } } result2.push(value); } else if (!includes2(values2, computed, comparator)) { result2.push(value); } } return result2; } __name(baseDifference, "baseDifference"); var baseEach = createBaseEach(baseForOwn); var baseEachRight = createBaseEach(baseForOwnRight, true); function baseEvery(collection, predicate) { var result2 = true; baseEach(collection, function(value, index, collection2) { result2 = !!predicate(value, index, collection2); return result2; }); return result2; } __name(baseEvery, "baseEvery"); function baseExtremum(array, iteratee2, comparator) { var index = -1, length = array.length; while (++index < length) { var value = array[index], current = iteratee2(value); if (current != null && (computed === undefined2 ? current === current && !isSymbol(current) : comparator(current, computed))) { var computed = current, result2 = value; } } return result2; } __name(baseExtremum, "baseExtremum"); function baseFill(array, value, start, end) { var length = array.length; start = toInteger(start); if (start < 0) { start = -start > length ? 0 : length + start; } end = end === undefined2 || end > length ? length : toInteger(end); if (end < 0) { end += length; } end = start > end ? 0 : toLength(end); while (start < end) { array[start++] = value; } return array; } __name(baseFill, "baseFill"); function baseFilter(collection, predicate) { var result2 = []; baseEach(collection, function(value, index, collection2) { if (predicate(value, index, collection2)) { result2.push(value); } }); return result2; } __name(baseFilter, "baseFilter"); function baseFlatten(array, depth, predicate, isStrict, result2) { var index = -1, length = array.length; predicate || (predicate = isFlattenable); result2 || (result2 = []); while (++index < length) { var value = array[index]; if (depth > 0 && predicate(value)) { if (depth > 1) { baseFlatten(value, depth - 1, predicate, isStrict, result2); } else { arrayPush(result2, value); } } else if (!isStrict) { result2[result2.length] = value; } } return result2; } __name(baseFlatten, "baseFlatten"); var baseFor = createBaseFor(); var baseForRight = createBaseFor(true); function baseForOwn(object, iteratee2) { return object && baseFor(object, iteratee2, keys); } __name(baseForOwn, "baseForOwn"); function baseForOwnRight(object, iteratee2) { return object && baseForRight(object, iteratee2, keys); } __name(baseForOwnRight, "baseForOwnRight"); function baseFunctions(object, props) { return arrayFilter(props, function(key) { return isFunction(object[key]); }); } __name(baseFunctions, "baseFunctions"); function baseGet(object, path) { path = castPath(path, object); var index = 0, length = path.length; while (object != null && index < length) { object = object[toKey(path[index++])]; } return index && index == length ? object : undefined2; } __name(baseGet, "baseGet"); function baseGetAllKeys(object, keysFunc, symbolsFunc) { var result2 = keysFunc(object); return isArray(object) ? result2 : arrayPush(result2, symbolsFunc(object)); } __name(baseGetAllKeys, "baseGetAllKeys"); function baseGetTag(value) { if (value == null) { return value === undefined2 ? undefinedTag : nullTag; } return symToStringTag && symToStringTag in Object2(value) ? getRawTag(value) : objectToString(value); } __name(baseGetTag, "baseGetTag"); function baseGt(value, other) { return value > other; } __name(baseGt, "baseGt"); function baseHas(object, key) { return object != null && hasOwnProperty.call(object, key); } __name(baseHas, "baseHas"); function baseHasIn(object, key) { return object != null && key in Object2(object); } __name(baseHasIn, "baseHasIn"); function baseInRange(number, start, end) { return number >= nativeMin(start, end) && number < nativeMax(start, end); } __name(baseInRange, "baseInRange"); function baseIntersection(arrays, iteratee2, comparator) { var includes2 = comparator ? arrayIncludesWith : arrayIncludes, length = arrays[0].length, othLength = arrays.length, othIndex = othLength, caches = Array2(othLength), maxLength = Infinity, result2 = []; while (othIndex--) { var array = arrays[othIndex]; if (othIndex && iteratee2) { array = arrayMap(array, baseUnary(iteratee2)); } maxLength = nativeMin(array.length, maxLength); caches[othIndex] = !comparator && (iteratee2 || length >= 120 && array.length >= 120) ? new SetCache(othIndex && array) : undefined2; } array = arrays[0]; var index = -1, seen = caches[0]; outer: while (++index < length && result2.length < maxLength) { var value = array[index], computed = iteratee2 ? iteratee2(value) : value; value = comparator || value !== 0 ? value : 0; if (!(seen ? cacheHas(seen, computed) : includes2(result2, computed, comparator))) { othIndex = othLength; while (--othIndex) { var cache = caches[othIndex]; if (!(cache ? cacheHas(cache, computed) : includes2(arrays[othIndex], computed, comparator))) { continue outer; } } if (seen) { seen.push(computed); } result2.push(value); } } return result2; } __name(baseIntersection, "baseIntersection"); function baseInverter(object, setter, iteratee2, accumulator) { baseForOwn(object, function(value, key, object2) { setter(accumulator, iteratee2(value), key, object2); }); return accumulator; } __name(baseInverter, "baseInverter"); function baseInvoke(object, path, args) { path = castPath(path, object); object = parent(object, path); var func = object == null ? object : object[toKey(last(path))]; return func == null ? undefined2 : apply(func, object, args); } __name(baseInvoke, "baseInvoke"); function baseIsArguments(value) { return isObjectLike(value) && baseGetTag(value) == argsTag; } __name(baseIsArguments, "baseIsArguments"); function baseIsArrayBuffer(value) { return isObjectLike(value) && baseGetTag(value) == arrayBufferTag; } __name(baseIsArrayBuffer, "baseIsArrayBuffer"); function baseIsDate(value) { return isObjectLike(value) && baseGetTag(value) == dateTag; } __name(baseIsDate, "baseIsDate"); function baseIsEqual(value, other, bitmask, customizer, stack) { if (value === other) { return true; } if (value == null || other == null || !isObjectLike(value) && !isObjectLike(other)) { return value !== value && other !== other; } return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); } __name(baseIsEqual, "baseIsEqual"); function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { var objIsArr = isArray(object), othIsArr = isArray(other), objTag = objIsArr ? arrayTag : getTag(object), othTag = othIsArr ? arrayTag : getTag(other); objTag = objTag == argsTag ? objectTag : objTag; othTag = othTag == argsTag ? objectTag : othTag; var objIsObj = objTag == objectTag, othIsObj = othTag == objectTag, isSameTag = objTag == othTag; if (isSameTag && isBuffer(object)) { if (!isBuffer(other)) { return false; } objIsArr = true; objIsObj = false; } if (isSameTag && !objIsObj) { stack || (stack = new Stack()); return objIsArr || isTypedArray(object) ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); } if (!(bitmask & COMPARE_PARTIAL_FLAG)) { var objIsWrapped = objIsObj && hasOwnProperty.call(object, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty.call(other, "__wrapped__"); if (objIsWrapped || othIsWrapped) { var objUnwrapped = objIsWrapped ? object.value() : object, othUnwrapped = othIsWrapped ? other.value() : other; stack || (stack = new Stack()); return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); } } if (!isSameTag) { return false; } stack || (stack = new Stack()); return equalObjects(object, other, bitmask, customizer, equalFunc, stack); } __name(baseIsEqualDeep, "baseIsEqualDeep"); function baseIsMap(value) { return isObjectLike(value) && getTag(value) == mapTag; } __name(baseIsMap, "baseIsMap"); function baseIsMatch(object, source, matchData, customizer) { var index = matchData.length, length = index, noCustomizer = !customizer; if (object == null) { return !length; } object = Object2(object); while (index--) { var data = matchData[index]; if (noCustomizer && data[2] ? data[1] !== object[data[0]] : !(data[0] in object)) { return false; } } while (++index < length) { data = matchData[index]; var key = data[0], objValue = object[key], srcValue = data[1]; if (noCustomizer && data[2]) { if (objValue === undefined2 && !(key in object)) { return false; } } else { var stack = new Stack(); if (customizer) { var result2 = customizer(objValue, srcValue, key, object, source, stack); } if (!(result2 === undefined2 ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) : result2)) { return false; } } } return true; } __name(baseIsMatch, "baseIsMatch"); function baseIsNative(value) { if (!isObject2(value) || isMasked(value)) { return false; } var pattern = isFunction(value) ? reIsNative : reIsHostCtor; return pattern.test(toSource(value)); } __name(baseIsNative, "baseIsNative"); function baseIsRegExp(value) { return isObjectLike(value) && baseGetTag(value) == regexpTag; } __name(baseIsRegExp, "baseIsRegExp"); function baseIsSet(value) { return isObjectLike(value) && getTag(value) == setTag; } __name(baseIsSet, "baseIsSet"); function baseIsTypedArray(value) { return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; } __name(baseIsTypedArray, "baseIsTypedArray"); function baseIteratee(value) { if (typeof value == "function") { return value; } if (value == null) { return identity; } if (typeof value == "object") { return isArray(value) ? baseMatchesProperty(value[0], value[1]) : baseMatches(value); } return property(value); } __name(baseIteratee, "baseIteratee"); function baseKeys(object) { if (!isPrototype(object)) { return nativeKeys(object); } var result2 = []; for (var key in Object2(object)) { if (hasOwnProperty.call(object, key) && key != "constructor") { result2.push(key); } } return result2; } __name(baseKeys, "baseKeys"); function baseKeysIn(object) { if (!isObject2(object)) { return nativeKeysIn(object); } var isProto = isPrototype(object), result2 = []; for (var key in object) { if (!(key == "constructor" && (isProto || !hasOwnProperty.call(object, key)))) { result2.push(key); } } return result2; } __name(baseKeysIn, "baseKeysIn"); function baseLt(value, other) { return value < other; } __name(baseLt, "baseLt"); function baseMap(collection, iteratee2) { var index = -1, result2 = isArrayLike(collection) ? Array2(collection.length) : []; baseEach(collection, function(value, key, collection2) { result2[++index] = iteratee2(value, key, collection2); }); return result2; } __name(baseMap, "baseMap"); function baseMatches(source) { var matchData = getMatchData(source); if (matchData.length == 1 && matchData[0][2]) { return matchesStrictComparable(matchData[0][0], matchData[0][1]); } return function(object) { return object === source || baseIsMatch(object, source, matchData); }; } __name(baseMatches, "baseMatches"); function baseMatchesProperty(path, srcValue) { if (isKey(path) && isStrictComparable(srcValue)) { return matchesStrictComparable(toKey(path), srcValue); } return function(object) { var objValue = get(object, path); return objValue === undefined2 && objValue === srcValue ? hasIn(object, path) : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); }; } __name(baseMatchesProperty, "baseMatchesProperty"); function baseMerge(object, source, srcIndex, customizer, stack) { if (object === source) { return; } baseFor(source, function(srcValue, key) { stack || (stack = new Stack()); if (isObject2(srcValue)) { baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack); } else { var newValue = customizer ? customizer(safeGet(object, key), srcValue, key + "", object, source, stack) : undefined2; if (newValue === undefined2) { newValue = srcValue; } assignMergeValue(object, key, newValue); } }, keysIn); } __name(baseMerge, "baseMerge"); function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) { var objValue = safeGet(object, key), srcValue = safeGet(source, key), stacked = stack.get(srcValue); if (stacked) { assignMergeValue(object, key, stacked); return; } var newValue = customizer ? customizer(objValue, srcValue, key + "", object, source, stack) : undefined2; var isCommon = newValue === undefined2; if (isCommon) { var isArr = isArray(srcValue), isBuff = !isArr && isBuffer(srcValue), isTyped = !isArr && !isBuff && isTypedArray(srcValue); newValue = srcValue; if (isArr || isBuff || isTyped) { if (isArray(objValue)) { newValue = objValue; } else if (isArrayLikeObject(objValue)) { newValue = copyArray(objValue); } else if (isBuff) { isCommon = false; newValue = cloneBuffer(srcValue, true); } else if (isTyped) { isCommon = false; newValue = cloneTypedArray(srcValue, true); } else { newValue = []; } } else if (isPlainObject(srcValue) || isArguments(srcValue)) { newValue = objValue; if (isArguments(objValue)) { newValue = toPlainObject(objValue); } else if (!isObject2(objValue) || isFunction(objValue)) { newValue = initCloneObject(srcValue); } } else { isCommon = false; } } if (isCommon) { stack.set(srcValue, newValue); mergeFunc(newValue, srcValue, srcIndex, customizer, stack); stack["delete"](srcValue); } assignMergeValue(object, key, newValue); } __name(baseMergeDeep, "baseMergeDeep"); function baseNth(array, n) { var length = array.length; if (!length) { return; } n += n < 0 ? length : 0; return isIndex(n, length) ? array[n] : undefined2; } __name(baseNth, "baseNth"); function baseOrderBy(collection, iteratees, orders) { if (iteratees.length) { iteratees = arrayMap(iteratees, function(iteratee2) { if (isArray(iteratee2)) { return function(value) { return baseGet(value, iteratee2.length === 1 ? iteratee2[0] : iteratee2); }; } return iteratee2; }); } else { iteratees = [identity]; } var index = -1; iteratees = arrayMap(iteratees, baseUnary(getIteratee())); var result2 = baseMap(collection, function(value, key, collection2) { var criteria = arrayMap(iteratees, function(iteratee2) { return iteratee2(value); }); return { "criteria": criteria, "index": ++index, "value": value }; }); return baseSortBy(result2, function(object, other) { return compareMultiple(object, other, orders); }); } __name(baseOrderBy, "baseOrderBy"); function basePick(object, paths) { return basePickBy(object, paths, function(value, path) { return hasIn(object, path); }); } __name(basePick, "basePick"); function basePickBy(object, paths, predicate) { var index = -1, length = paths.length, result2 = {}; while (++index < length) { var path = paths[index], value = baseGet(object, path); if (predicate(value, path)) { baseSet(result2, castPath(path, object), value); } } return result2; } __name(basePickBy, "basePickBy"); function basePropertyDeep(path) { return function(object) { return baseGet(object, path); }; } __name(basePropertyDeep, "basePropertyDeep"); function basePullAll(array, values2, iteratee2, comparator) { var indexOf2 = comparator ? baseIndexOfWith : baseIndexOf, index = -1, length = values2.length, seen = array; if (array === values2) { values2 = copyArray(values2); } if (iteratee2) { seen = arrayMap(array, baseUnary(iteratee2)); } while (++index < length) { var fromIndex = 0, value = values2[index], computed = iteratee2 ? iteratee2(value) : value; while ((fromIndex = indexOf2(seen, computed, fromIndex, comparator)) > -1) { if (seen !== array) { splice.call(seen, fromIndex, 1); } splice.call(array, fromIndex, 1); } } return array; } __name(basePullAll, "basePullAll"); function basePullAt(array, indexes) { var length = array ? indexes.length : 0, lastIndex = length - 1; while (length--) { var index = indexes[length]; if (length == lastIndex || index !== previous) { var previous = index; if (isIndex(index)) { splice.call(array, index, 1); } else { baseUnset(array, index); } } } return array; } __name(basePullAt, "basePullAt"); function baseRandom(lower, upper) { return lower + nativeFloor(nativeRandom() * (upper - lower + 1)); } __name(baseRandom, "baseRandom"); function baseRange(start, end, step, fromRight) { var index = -1, length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), result2 = Array2(length); while (length--) { result2[fromRight ? length : ++index] = start; start += step; } return result2; } __name(baseRange, "baseRange"); function baseRepeat(string, n) { var result2 = ""; if (!string || n < 1 || n > MAX_SAFE_INTEGER) { return result2; } do { if (n % 2) { result2 += string; } n = nativeFloor(n / 2); if (n) { string += string; } } while (n); return result2; } __name(baseRepeat, "baseRepeat"); function baseRest(func, start) { return setToString(overRest(func, start, identity), func + ""); } __name(baseRest, "baseRest"); function baseSample(collection) { return arraySample(values(collection)); } __name(baseSample, "baseSample"); function baseSampleSize(collection, n) { var array = values(collection); return shuffleSelf(array, baseClamp(n, 0, array.length)); } __name(baseSampleSize, "baseSampleSize"); function baseSet(object, path, value, customizer) { if (!isObject2(object)) { return object; } path = castPath(path, object); var index = -1, length = path.length, lastIndex = length - 1, nested = object; while (nested != null && ++index < length) { var key = toKey(path[index]), newValue = value; if (key === "__proto__" || key === "constructor" || key === "prototype") { return object; } if (index != lastIndex) { var objValue = nested[key]; newValue = customizer ? customizer(objValue, key, nested) : undefined2; if (newValue === undefined2) { newValue = isObject2(objValue) ? objValue : isIndex(path[index + 1]) ? [] : {}; } } assignValue(nested, key, newValue); nested = nested[key]; } return object; } __name(baseSet, "baseSet"); var baseSetData = !metaMap ? identity : function(func, data) { metaMap.set(func, data); return func; }; var baseSetToString = !defineProperty ? identity : function(func, string) { return defineProperty(func, "toString", { "configurable": true, "enumerable": false, "value": constant(string), "writable": true }); }; function baseShuffle(collection) { return shuffleSelf(values(collection)); } __name(baseShuffle, "baseShuffle"); function baseSlice(array, start, end) { var index = -1, length = array.length; if (start < 0) { start = -start > length ? 0 : length + start; } end = end > length ? length : end; if (end < 0) { end += length; } length = start > end ? 0 : end - start >>> 0; start >>>= 0; var result2 = Array2(length); while (++index < length) { result2[index] = array[index + start]; } return result2; } __name(baseSlice, "baseSlice"); function baseSome(collection, predicate) { var result2; baseEach(collection, function(value, index, collection2) { result2 = predicate(value, index, collection2); return !result2; }); return !!result2; } __name(baseSome, "baseSome"); function baseSortedIndex(array, value, retHighest) { var low = 0, high = array == null ? low : array.length; if (typeof value == "number" && value === value && high <= HALF_MAX_ARRAY_LENGTH) { while (low < high) { var mid = low + high >>> 1, computed = array[mid]; if (computed !== null && !isSymbol(computed) && (retHighest ? computed <= value : computed < value)) { low = mid + 1; } else { high = mid; } } return high; } return baseSortedIndexBy(array, value, identity, retHighest); } __name(baseSortedIndex, "baseSortedIndex"); function baseSortedIndexBy(array, value, iteratee2, retHighest) { var low = 0, high = array == null ? 0 : array.length; if (high === 0) { return 0; } value = iteratee2(value); var valIsNaN = value !== value, valIsNull = value === null, valIsSymbol = isSymbol(value), valIsUndefined = value === undefined2; while (low < high) { var mid = nativeFloor((low + high) / 2), computed = iteratee2(array[mid]), othIsDefined = computed !== undefined2, othIsNull = computed === null, othIsReflexive = computed === computed, othIsSymbol = isSymbol(computed); if (valIsNaN) { var setLow = retHighest || othIsReflexive; } else if (valIsUndefined) { setLow = othIsReflexive && (retHighest || othIsDefined); } else if (valIsNull) { setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull); } else if (valIsSymbol) { setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol); } else if (othIsNull || othIsSymbol) { setLow = false; } else { setLow = retHighest ? computed <= value : computed < value; } if (setLow) { low = mid + 1; } else { high = mid; } } return nativeMin(high, MAX_ARRAY_INDEX); } __name(baseSortedIndexBy, "baseSortedIndexBy"); function baseSortedUniq(array, iteratee2) { var index = -1, length = array.length, resIndex = 0, result2 = []; while (++index < length) { var value = array[index], computed = iteratee2 ? iteratee2(value) : value; if (!index || !eq(computed, seen)) { var seen = computed; result2[resIndex++] = value === 0 ? 0 : value; } } return result2; } __name(baseSortedUniq, "baseSortedUniq"); function baseToNumber(value) { if (typeof value == "number") { return value; } if (isSymbol(value)) { return NAN; } return +value; } __name(baseToNumber, "baseToNumber"); function baseToString(value) { if (typeof value == "string") { return value; } if (isArray(value)) { return arrayMap(value, baseToString) + ""; } if (isSymbol(value)) { return symbolToString ? symbolToString.call(value) : ""; } var result2 = value + ""; return result2 == "0" && 1 / value == -INFINITY ? "-0" : result2; } __name(baseToString, "baseToString"); function baseUniq(array, iteratee2, comparator) { var index = -1, includes2 = arrayIncludes, length = array.length, isCommon = true, result2 = [], seen = result2; if (comparator) { isCommon = false; includes2 = arrayIncludesWith; } else if (length >= LARGE_ARRAY_SIZE) { var set2 = iteratee2 ? null : createSet(array); if (set2) { return setToArray(set2); } isCommon = false; includes2 = cacheHas; seen = new SetCache(); } else { seen = iteratee2 ? [] : result2; } outer: while (++index < length) { var value = array[index], computed = iteratee2 ? iteratee2(value) : value; value = comparator || value !== 0 ? value : 0; if (isCommon && computed === computed) { var seenIndex = seen.length; while (seenIndex--) { if (seen[seenIndex] === computed) { continue outer; } } if (iteratee2) { seen.push(computed); } result2.push(value); } else if (!includes2(seen, computed, comparator)) { if (seen !== result2) { seen.push(computed); } result2.push(value); } } return result2; } __name(baseUniq, "baseUniq"); function baseUnset(object, path) { path = castPath(path, object); object = parent(object, path); return object == null || delete object[toKey(last(path))]; } __name(baseUnset, "baseUnset"); function baseUpdate(object, path, updater, customizer) { return baseSet(object, path, updater(baseGet(object, path)), customizer); } __name(baseUpdate, "baseUpdate"); function baseWhile(array, predicate, isDrop, fromRight) { var length = array.length, index = fromRight ? length : -1; while ((fromRight ? index-- : ++index < length) && predicate(array[index], index, array)) { } return isDrop ? baseSlice(array, fromRight ? 0 : index, fromRight ? index + 1 : length) : baseSlice(array, fromRight ? index + 1 : 0, fromRight ? length : index); } __name(baseWhile, "baseWhile"); function baseWrapperValue(value, actions) { var result2 = value; if (result2 instanceof LazyWrapper) { result2 = result2.value(); } return arrayReduce(actions, function(result3, action) { return action.func.apply(action.thisArg, arrayPush([result3], action.args)); }, result2); } __name(baseWrapperValue, "baseWrapperValue"); function baseXor(arrays, iteratee2, comparator) { var length = arrays.length; if (length < 2) { return length ? baseUniq(arrays[0]) : []; } var index = -1, result2 = Array2(length); while (++index < length) { var array = arrays[index], othIndex = -1; while (++othIndex < length) { if (othIndex != index) { result2[index] = baseDifference(result2[index] || array, arrays[othIndex], iteratee2, comparator); } } } return baseUniq(baseFlatten(result2, 1), iteratee2, comparator); } __name(baseXor, "baseXor"); function baseZipObject(props, values2, assignFunc) { var index = -1, length = props.length, valsLength = values2.length, result2 = {}; while (++index < length) { var value = index < valsLength ? values2[index] : undefined2; assignFunc(result2, props[index], value); } return result2; } __name(baseZipObject, "baseZipObject"); function castArrayLikeObject(value) { return isArrayLikeObject(value) ? value : []; } __name(castArrayLikeObject, "castArrayLikeObject"); function castFunction(value) { return typeof value == "function" ? value : identity; } __name(castFunction, "castFunction"); function castPath(value, object) { if (isArray(value)) { return value; } return isKey(value, object) ? [value] : stringToPath(toString2(value)); } __name(castPath, "castPath"); var castRest = baseRest; function castSlice(array, start, end) { var length = array.length; end = end === undefined2 ? length : end; return !start && end >= length ? array : baseSlice(array, start, end); } __name(castSlice, "castSlice"); var clearTimeout2 = ctxClearTimeout || function(id) { return root.clearTimeout(id); }; function cloneBuffer(buffer, isDeep) { if (isDeep) { return buffer.slice(); } var length = buffer.length, result2 = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); buffer.copy(result2); return result2; } __name(cloneBuffer, "cloneBuffer"); function cloneArrayBuffer(arrayBuffer) { var result2 = new arrayBuffer.constructor(arrayBuffer.byteLength); new Uint8Array2(result2).set(new Uint8Array2(arrayBuffer)); return result2; } __name(cloneArrayBuffer, "cloneArrayBuffer"); function cloneDataView(dataView, isDeep) { var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); } __name(cloneDataView, "cloneDataView"); function cloneRegExp(regexp) { var result2 = new regexp.constructor(regexp.source, reFlags.exec(regexp)); result2.lastIndex = regexp.lastIndex; return result2; } __name(cloneRegExp, "cloneRegExp"); function cloneSymbol(symbol) { return symbolValueOf ? Object2(symbolValueOf.call(symbol)) : {}; } __name(cloneSymbol, "cloneSymbol"); function cloneTypedArray(typedArray, isDeep) { var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); } __name(cloneTypedArray, "cloneTypedArray"); function compareAscending(value, other) { if (value !== other) { var valIsDefined = value !== undefined2, valIsNull = value === null, valIsReflexive = value === value, valIsSymbol = isSymbol(value); var othIsDefined = other !== undefined2, othIsNull = other === null, othIsReflexive = other === other, othIsSymbol = isSymbol(other); if (!othIsNull && !othIsSymbol && !valIsSymbol && value > other || valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol || valIsNull && othIsDefined && othIsReflexive || !valIsDefined && othIsReflexive || !valIsReflexive) { return 1; } if (!valIsNull && !valIsSymbol && !othIsSymbol && value < other || othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol || othIsNull && valIsDefined && valIsReflexive || !othIsDefined && valIsReflexive || !othIsReflexive) { return -1; } } return 0; } __name(compareAscending, "compareAscending"); function compareMultiple(object, other, orders) { var index = -1, objCriteria = object.criteria, othCriteria = other.criteria, length = objCriteria.length, ordersLength = orders.length; while (++index < length) { var result2 = compareAscending(objCriteria[index], othCriteria[index]); if (result2) { if (index >= ordersLength) { return result2; } var order = orders[index]; return result2 * (order == "desc" ? -1 : 1); } } return object.index - other.index; } __name(compareMultiple, "compareMultiple"); function composeArgs(args, partials, holders, isCurried) { var argsIndex = -1, argsLength = args.length, holdersLength = holders.length, leftIndex = -1, leftLength = partials.length, rangeLength = nativeMax(argsLength - holdersLength, 0), result2 = Array2(leftLength + rangeLength), isUncurried = !isCurried; while (++leftIndex < leftLength) { result2[leftIndex] = partials[leftIndex]; } while (++argsIndex < holdersLength) { if (isUncurried || argsIndex < argsLength) { result2[holders[argsIndex]] = args[argsIndex]; } } while (rangeLength--) { result2[leftIndex++] = args[argsIndex++]; } return result2; } __name(composeArgs, "composeArgs"); function composeArgsRight(args, partials, holders, isCurried) { var argsIndex = -1, argsLength = args.length, holdersIndex = -1, holdersLength = holders.length, rightIndex = -1, rightLength = partials.length, rangeLength = nativeMax(argsLength - holdersLength, 0), result2 = Array2(rangeLength + rightLength), isUncurried = !isCurried; while (++argsIndex < rangeLength) { result2[argsIndex] = args[argsIndex]; } var offset = argsIndex; while (++rightIndex < rightLength) { result2[offset + rightIndex] = partials[rightIndex]; } while (++holdersIndex < holdersLength) { if (isUncurried || argsIndex < argsLength) { result2[offset + holders[holdersIndex]] = args[argsIndex++]; } } return result2; } __name(composeArgsRight, "composeArgsRight"); function copyArray(source, array) { var index = -1, length = source.length; array || (array = Array2(length)); while (++index < length) { array[index] = source[index]; } return array; } __name(copyArray, "copyArray"); function copyObject(source, props, object, customizer) { var isNew = !object; object || (object = {}); var index = -1, length = props.length; while (++index < length) { var key = props[index]; var newValue = customizer ? customizer(object[key], source[key], key, object, source) : undefined2; if (newValue === undefined2) { newValue = source[key]; } if (isNew) { baseAssignValue(object, key, newValue); } else { assignValue(object, key, newValue); } } return object; } __name(copyObject, "copyObject"); function copySymbols(source, object) { return copyObject(source, getSymbols(source), object); } __name(copySymbols, "copySymbols"); function copySymbolsIn(source, object) { return copyObject(source, getSymbolsIn(source), object); } __name(copySymbolsIn, "copySymbolsIn"); function createAggregator(setter, initializer) { return function(collection, iteratee2) { var func = isArray(collection) ? arrayAggregator : baseAggregator, accumulator = initializer ? initializer() : {}; return func(collection, setter, getIteratee(iteratee2, 2), accumulator); }; } __name(createAggregator, "createAggregator"); function createAssigner(assigner) { return baseRest(function(object, sources) { var index = -1, length = sources.length, customizer = length > 1 ? sources[length - 1] : undefined2, guard = length > 2 ? sources[2] : undefined2; customizer = assigner.length > 3 && typeof customizer == "function" ? (length--, customizer) : undefined2; if (guard && isIterateeCall(sources[0], sources[1], guard)) { customizer = length < 3 ? undefined2 : customizer; length = 1; } object = Object2(object); while (++index < length) { var source = sources[index]; if (source) { assigner(object, source, index, customizer); } } return object; }); } __name(createAssigner, "createAssigner"); function createBaseEach(eachFunc, fromRight) { return function(collection, iteratee2) { if (collection == null) { return collection; } if (!isArrayLike(collection)) { return eachFunc(collection, iteratee2); } var length = collection.length, index = fromRight ? length : -1, iterable = Object2(collection); while (fromRight ? index-- : ++index < length) { if (iteratee2(iterable[index], index, iterable) === false) { break; } } return collection; }; } __name(createBaseEach, "createBaseEach"); function createBaseFor(fromRight) { return function(object, iteratee2, keysFunc) { var index = -1, iterable = Object2(object), props = keysFunc(object), length = props.length; while (length--) { var key = props[fromRight ? length : ++index]; if (iteratee2(iterable[key], key, iterable) === false) { break; } } return object; }; } __name(createBaseFor, "createBaseFor"); function createBind(func, bitmask, thisArg) { var isBind = bitmask & WRAP_BIND_FLAG, Ctor = createCtor(func); function wrapper() { var fn = this && this !== root && this instanceof wrapper ? Ctor : func; return fn.apply(isBind ? thisArg : this, arguments); } __name(wrapper, "wrapper"); return wrapper; } __name(createBind, "createBind"); function createCaseFirst(methodName) { return function(string) { string = toString2(string); var strSymbols = hasUnicode(string) ? stringToArray(string) : undefined2; var chr = strSymbols ? strSymbols[0] : string.charAt(0); var trailing = strSymbols ? castSlice(strSymbols, 1).join("") : string.slice(1); return chr[methodName]() + trailing; }; } __name(createCaseFirst, "createCaseFirst"); function createCompounder(callback) { return function(string) { return arrayReduce(words(deburr(string).replace(reApos, "")), callback, ""); }; } __name(createCompounder, "createCompounder"); function createCtor(Ctor) { return function() { var args = arguments; switch (args.length) { case 0: return new Ctor(); case 1: return new Ctor(args[0]); case 2: return new Ctor(args[0], args[1]); case 3: return new Ctor(args[0], args[1], args[2]); case 4: return new Ctor(args[0], args[1], args[2], args[3]); case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]); case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]); } var thisBinding = baseCreate(Ctor.prototype), result2 = Ctor.apply(thisBinding, args); return isObject2(result2) ? result2 : thisBinding; }; } __name(createCtor, "createCtor"); function createCurry(func, bitmask, arity) { var Ctor = createCtor(func); function wrapper() { var length = arguments.length, args = Array2(length), index = length, placeholder = getHolder(wrapper); while (index--) { args[index] = arguments[index]; } var holders = length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder ? [] : replaceHolders(args, placeholder); length -= holders.length; if (length < arity) { return createRecurry( func, bitmask, createHybrid, wrapper.placeholder, undefined2, args, holders, undefined2, undefined2, arity - length ); } var fn = this && this !== root && this instanceof wrapper ? Ctor : func; return apply(fn, this, args); } __name(wrapper, "wrapper"); return wrapper; } __name(createCurry, "createCurry"); function createFind(findIndexFunc) { return function(collection, predicate, fromIndex) { var iterable = Object2(collection); if (!isArrayLike(collection)) { var iteratee2 = getIteratee(predicate, 3); collection = keys(collection); predicate = /* @__PURE__ */ __name(function(key) { return iteratee2(iterable[key], key, iterable); }, "predicate"); } var index = findIndexFunc(collection, predicate, fromIndex); return index > -1 ? iterable[iteratee2 ? collection[index] : index] : undefined2; }; } __name(createFind, "createFind"); function createFlow(fromRight) { return flatRest(function(funcs) { var length = funcs.length, index = length, prereq = LodashWrapper.prototype.thru; if (fromRight) { funcs.reverse(); } while (index--) { var func = funcs[index]; if (typeof func != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } if (prereq && !wrapper && getFuncName(func) == "wrapper") { var wrapper = new LodashWrapper([], true); } } index = wrapper ? index : length; while (++index < length) { func = funcs[index]; var funcName = getFuncName(func), data = funcName == "wrapper" ? getData(func) : undefined2; if (data && isLaziable(data[0]) && data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && !data[4].length && data[9] == 1) { wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]); } else { wrapper = func.length == 1 && isLaziable(func) ? wrapper[funcName]() : wrapper.thru(func); } } return function() { var args = arguments, value = args[0]; if (wrapper && args.length == 1 && isArray(value)) { return wrapper.plant(value).value(); } var index2 = 0, result2 = length ? funcs[index2].apply(this, args) : value; while (++index2 < length) { result2 = funcs[index2].call(this, result2); } return result2; }; }); } __name(createFlow, "createFlow"); function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary2, arity) { var isAry = bitmask & WRAP_ARY_FLAG, isBind = bitmask & WRAP_BIND_FLAG, isBindKey = bitmask & WRAP_BIND_KEY_FLAG, isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG), isFlip = bitmask & WRAP_FLIP_FLAG, Ctor = isBindKey ? undefined2 : createCtor(func); function wrapper() { var length = arguments.length, args = Array2(length), index = length; while (index--) { args[index] = arguments[index]; } if (isCurried) { var placeholder = getHolder(wrapper), holdersCount = countHolders(args, placeholder); } if (partials) { args = composeArgs(args, partials, holders, isCurried); } if (partialsRight) { args = composeArgsRight(args, partialsRight, holdersRight, isCurried); } length -= holdersCount; if (isCurried && length < arity) { var newHolders = replaceHolders(args, placeholder); return createRecurry( func, bitmask, createHybrid, wrapper.placeholder, thisArg, args, newHolders, argPos, ary2, arity - length ); } var thisBinding = isBind ? thisArg : this, fn = isBindKey ? thisBinding[func] : func; length = args.length; if (argPos) { args = reorder(args, argPos); } else if (isFlip && length > 1) { args.reverse(); } if (isAry && ary2 < length) { args.length = ary2; } if (this && this !== root && this instanceof wrapper) { fn = Ctor || createCtor(fn); } return fn.apply(thisBinding, args); } __name(wrapper, "wrapper"); return wrapper; } __name(createHybrid, "createHybrid"); function createInverter(setter, toIteratee) { return function(object, iteratee2) { return baseInverter(object, setter, toIteratee(iteratee2), {}); }; } __name(createInverter, "createInverter"); function createMathOperation(operator, defaultValue) { return function(value, other) { var result2; if (value === undefined2 && other === undefined2) { return defaultValue; } if (value !== undefined2) { result2 = value; } if (other !== undefined2) { if (result2 === undefined2) { return other; } if (typeof value == "string" || typeof other == "string") { value = baseToString(value); other = baseToString(other); } else { value = baseToNumber(value); other = baseToNumber(other); } result2 = operator(value, other); } return result2; }; } __name(createMathOperation, "createMathOperation"); function createOver(arrayFunc) { return flatRest(function(iteratees) { iteratees = arrayMap(iteratees, baseUnary(getIteratee())); return baseRest(function(args) { var thisArg = this; return arrayFunc(iteratees, function(iteratee2) { return apply(iteratee2, thisArg, args); }); }); }); } __name(createOver, "createOver"); function createPadding(length, chars) { chars = chars === undefined2 ? " " : baseToString(chars); var charsLength = chars.length; if (charsLength < 2) { return charsLength ? baseRepeat(chars, length) : chars; } var result2 = baseRepeat(chars, nativeCeil(length / stringSize(chars))); return hasUnicode(chars) ? castSlice(stringToArray(result2), 0, length).join("") : result2.slice(0, length); } __name(createPadding, "createPadding"); function createPartial(func, bitmask, thisArg, partials) { var isBind = bitmask & WRAP_BIND_FLAG, Ctor = createCtor(func); function wrapper() { var argsIndex = -1, argsLength = arguments.length, leftIndex = -1, leftLength = partials.length, args = Array2(leftLength + argsLength), fn = this && this !== root && this instanceof wrapper ? Ctor : func; while (++leftIndex < leftLength) { args[leftIndex] = partials[leftIndex]; } while (argsLength--) { args[leftIndex++] = arguments[++argsIndex]; } return apply(fn, isBind ? thisArg : this, args); } __name(wrapper, "wrapper"); return wrapper; } __name(createPartial, "createPartial"); function createRange(fromRight) { return function(start, end, step) { if (step && typeof step != "number" && isIterateeCall(start, end, step)) { end = step = undefined2; } start = toFinite(start); if (end === undefined2) { end = start; start = 0; } else { end = toFinite(end); } step = step === undefined2 ? start < end ? 1 : -1 : toFinite(step); return baseRange(start, end, step, fromRight); }; } __name(createRange, "createRange"); function createRelationalOperation(operator) { return function(value, other) { if (!(typeof value == "string" && typeof other == "string")) { value = toNumber(value); other = toNumber(other); } return operator(value, other); }; } __name(createRelationalOperation, "createRelationalOperation"); function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary2, arity) { var isCurry = bitmask & WRAP_CURRY_FLAG, newHolders = isCurry ? holders : undefined2, newHoldersRight = isCurry ? undefined2 : holders, newPartials = isCurry ? partials : undefined2, newPartialsRight = isCurry ? undefined2 : partials; bitmask |= isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG; bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG); if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) { bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG); } var newData = [ func, bitmask, thisArg, newPartials, newHolders, newPartialsRight, newHoldersRight, argPos, ary2, arity ]; var result2 = wrapFunc.apply(undefined2, newData); if (isLaziable(func)) { setData(result2, newData); } result2.placeholder = placeholder; return setWrapToString(result2, func, bitmask); } __name(createRecurry, "createRecurry"); function createRound(methodName) { var func = Math2[methodName]; return function(number, precision) { number = toNumber(number); precision = precision == null ? 0 : nativeMin(toInteger(precision), 292); if (precision && nativeIsFinite(number)) { var pair = (toString2(number) + "e").split("e"), value = func(pair[0] + "e" + (+pair[1] + precision)); pair = (toString2(value) + "e").split("e"); return +(pair[0] + "e" + (+pair[1] - precision)); } return func(number); }; } __name(createRound, "createRound"); var createSet = !(Set2 && 1 / setToArray(new Set2([, -0]))[1] == INFINITY) ? noop : function(values2) { return new Set2(values2); }; function createToPairs(keysFunc) { return function(object) { var tag = getTag(object); if (tag == mapTag) { return mapToArray(object); } if (tag == setTag) { return setToPairs(object); } return baseToPairs(object, keysFunc(object)); }; } __name(createToPairs, "createToPairs"); function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary2, arity) { var isBindKey = bitmask & WRAP_BIND_KEY_FLAG; if (!isBindKey && typeof func != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } var length = partials ? partials.length : 0; if (!length) { bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG); partials = holders = undefined2; } ary2 = ary2 === undefined2 ? ary2 : nativeMax(toInteger(ary2), 0); arity = arity === undefined2 ? arity : toInteger(arity); length -= holders ? holders.length : 0; if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) { var partialsRight = partials, holdersRight = holders; partials = holders = undefined2; } var data = isBindKey ? undefined2 : getData(func); var newData = [ func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary2, arity ]; if (data) { mergeData(newData, data); } func = newData[0]; bitmask = newData[1]; thisArg = newData[2]; partials = newData[3]; holders = newData[4]; arity = newData[9] = newData[9] === undefined2 ? isBindKey ? 0 : func.length : nativeMax(newData[9] - length, 0); if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) { bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG); } if (!bitmask || bitmask == WRAP_BIND_FLAG) { var result2 = createBind(func, bitmask, thisArg); } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) { result2 = createCurry(func, bitmask, arity); } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) { result2 = createPartial(func, bitmask, thisArg, partials); } else { result2 = createHybrid.apply(undefined2, newData); } var setter = data ? baseSetData : setData; return setWrapToString(setter(result2, newData), func, bitmask); } __name(createWrap, "createWrap"); function customDefaultsAssignIn(objValue, srcValue, key, object) { if (objValue === undefined2 || eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key)) { return srcValue; } return objValue; } __name(customDefaultsAssignIn, "customDefaultsAssignIn"); function customDefaultsMerge(objValue, srcValue, key, object, source, stack) { if (isObject2(objValue) && isObject2(srcValue)) { stack.set(srcValue, objValue); baseMerge(objValue, srcValue, undefined2, customDefaultsMerge, stack); stack["delete"](srcValue); } return objValue; } __name(customDefaultsMerge, "customDefaultsMerge"); function customOmitClone(value) { return isPlainObject(value) ? undefined2 : value; } __name(customOmitClone, "customOmitClone"); function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { var isPartial = bitmask & COMPARE_PARTIAL_FLAG, arrLength = array.length, othLength = other.length; if (arrLength != othLength && !(isPartial && othLength > arrLength)) { return false; } var arrStacked = stack.get(array); var othStacked = stack.get(other); if (arrStacked && othStacked) { return arrStacked == other && othStacked == array; } var index = -1, result2 = true, seen = bitmask & COMPARE_UNORDERED_FLAG ? new SetCache() : undefined2; stack.set(array, other); stack.set(other, array); while (++index < arrLength) { var arrValue = array[index], othValue = other[index]; if (customizer) { var compared = isPartial ? customizer(othValue, arrValue, index, other, array, stack) : customizer(arrValue, othValue, index, array, other, stack); } if (compared !== undefined2) { if (compared) { continue; } result2 = false; break; } if (seen) { if (!arraySome(other, function(othValue2, othIndex) { if (!cacheHas(seen, othIndex) && (arrValue === othValue2 || equalFunc(arrValue, othValue2, bitmask, customizer, stack))) { return seen.push(othIndex); } })) { result2 = false; break; } } else if (!(arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { result2 = false; break; } } stack["delete"](array); stack["delete"](other); return result2; } __name(equalArrays, "equalArrays"); function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { switch (tag) { case dataViewTag: if (object.byteLength != other.byteLength || object.byteOffset != other.byteOffset) { return false; } object = object.buffer; other = other.buffer; case arrayBufferTag: if (object.byteLength != other.byteLength || !equalFunc(new Uint8Array2(object), new Uint8Array2(other))) { return false; } return true; case boolTag: case dateTag: case numberTag: return eq(+object, +other); case errorTag: return object.name == other.name && object.message == other.message; case regexpTag: case stringTag: return object == other + ""; case mapTag: var convert = mapToArray; case setTag: var isPartial = bitmask & COMPARE_PARTIAL_FLAG; convert || (convert = setToArray); if (object.size != other.size && !isPartial) { return false; } var stacked = stack.get(object); if (stacked) { return stacked == other; } bitmask |= COMPARE_UNORDERED_FLAG; stack.set(object, other); var result2 = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); stack["delete"](object); return result2; case symbolTag: if (symbolValueOf) { return symbolValueOf.call(object) == symbolValueOf.call(other); } } return false; } __name(equalByTag, "equalByTag"); function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { var isPartial = bitmask & COMPARE_PARTIAL_FLAG, objProps = getAllKeys(object), objLength = objProps.length, othProps = getAllKeys(other), othLength = othProps.length; if (objLength != othLength && !isPartial) { return false; } var index = objLength; while (index--) { var key = objProps[index]; if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { return false; } } var objStacked = stack.get(object); var othStacked = stack.get(other); if (objStacked && othStacked) { return objStacked == other && othStacked == object; } var result2 = true; stack.set(object, other); stack.set(other, object); var skipCtor = isPartial; while (++index < objLength) { key = objProps[index]; var objValue = object[key], othValue = other[key]; if (customizer) { var compared = isPartial ? customizer(othValue, objValue, key, other, object, stack) : customizer(objValue, othValue, key, object, other, stack); } if (!(compared === undefined2 ? objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack) : compared)) { result2 = false; break; } skipCtor || (skipCtor = key == "constructor"); } if (result2 && !skipCtor) { var objCtor = object.constructor, othCtor = other.constructor; if (objCtor != othCtor && ("constructor" in object && "constructor" in other) && !(typeof objCtor == "function" && objCtor instanceof objCtor && typeof othCtor == "function" && othCtor instanceof othCtor)) { result2 = false; } } stack["delete"](object); stack["delete"](other); return result2; } __name(equalObjects, "equalObjects"); function flatRest(func) { return setToString(overRest(func, undefined2, flatten), func + ""); } __name(flatRest, "flatRest"); function getAllKeys(object) { return baseGetAllKeys(object, keys, getSymbols); } __name(getAllKeys, "getAllKeys"); function getAllKeysIn(object) { return baseGetAllKeys(object, keysIn, getSymbolsIn); } __name(getAllKeysIn, "getAllKeysIn"); var getData = !metaMap ? noop : function(func) { return metaMap.get(func); }; function getFuncName(func) { var result2 = func.name + "", array = realNames[result2], length = hasOwnProperty.call(realNames, result2) ? array.length : 0; while (length--) { var data = array[length], otherFunc = data.func; if (otherFunc == null || otherFunc == func) { return data.name; } } return result2; } __name(getFuncName, "getFuncName"); function getHolder(func) { var object = hasOwnProperty.call(lodash, "placeholder") ? lodash : func; return object.placeholder; } __name(getHolder, "getHolder"); function getIteratee() { var result2 = lodash.iteratee || iteratee; result2 = result2 === iteratee ? baseIteratee : result2; return arguments.length ? result2(arguments[0], arguments[1]) : result2; } __name(getIteratee, "getIteratee"); function getMapData(map2, key) { var data = map2.__data__; return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; } __name(getMapData, "getMapData"); function getMatchData(object) { var result2 = keys(object), length = result2.length; while (length--) { var key = result2[length], value = object[key]; result2[length] = [key, value, isStrictComparable(value)]; } return result2; } __name(getMatchData, "getMatchData"); function getNative(object, key) { var value = getValue(object, key); return baseIsNative(value) ? value : undefined2; } __name(getNative, "getNative"); function getRawTag(value) { var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag]; try { value[symToStringTag] = undefined2; var unmasked = true; } catch (e) { } var result2 = nativeObjectToString.call(value); if (unmasked) { if (isOwn) { value[symToStringTag] = tag; } else { delete value[symToStringTag]; } } return result2; } __name(getRawTag, "getRawTag"); var getSymbols = !nativeGetSymbols ? stubArray : function(object) { if (object == null) { return []; } object = Object2(object); return arrayFilter(nativeGetSymbols(object), function(symbol) { return propertyIsEnumerable.call(object, symbol); }); }; var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { var result2 = []; while (object) { arrayPush(result2, getSymbols(object)); object = getPrototype(object); } return result2; }; var getTag = baseGetTag; if (DataView2 && getTag(new DataView2(new ArrayBuffer(1))) != dataViewTag || Map2 && getTag(new Map2()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set2 && getTag(new Set2()) != setTag || WeakMap2 && getTag(new WeakMap2()) != weakMapTag) { getTag = /* @__PURE__ */ __name(function(value) { var result2 = baseGetTag(value), Ctor = result2 == objectTag ? value.constructor : undefined2, ctorString = Ctor ? toSource(Ctor) : ""; if (ctorString) { switch (ctorString) { case dataViewCtorString: return dataViewTag; case mapCtorString: return mapTag; case promiseCtorString: return promiseTag; case setCtorString: return setTag; case weakMapCtorString: return weakMapTag; } } return result2; }, "getTag"); } function getView(start, end, transforms) { var index = -1, length = transforms.length; while (++index < length) { var data = transforms[index], size2 = data.size; switch (data.type) { case "drop": start += size2; break; case "dropRight": end -= size2; break; case "take": end = nativeMin(end, start + size2); break; case "takeRight": start = nativeMax(start, end - size2); break; } } return { "start": start, "end": end }; } __name(getView, "getView"); function getWrapDetails(source) { var match = source.match(reWrapDetails); return match ? match[1].split(reSplitDetails) : []; } __name(getWrapDetails, "getWrapDetails"); function hasPath(object, path, hasFunc) { path = castPath(path, object); var index = -1, length = path.length, result2 = false; while (++index < length) { var key = toKey(path[index]); if (!(result2 = object != null && hasFunc(object, key))) { break; } object = object[key]; } if (result2 || ++index != length) { return result2; } length = object == null ? 0 : object.length; return !!length && isLength(length) && isIndex(key, length) && (isArray(object) || isArguments(object)); } __name(hasPath, "hasPath"); function initCloneArray(array) { var length = array.length, result2 = new array.constructor(length); if (length && typeof array[0] == "string" && hasOwnProperty.call(array, "index")) { result2.index = array.index; result2.input = array.input; } return result2; } __name(initCloneArray, "initCloneArray"); function initCloneObject(object) { return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {}; } __name(initCloneObject, "initCloneObject"); function initCloneByTag(object, tag, isDeep) { var Ctor = object.constructor; switch (tag) { case arrayBufferTag: return cloneArrayBuffer(object); case boolTag: case dateTag: return new Ctor(+object); case dataViewTag: return cloneDataView(object, isDeep); case float32Tag: case float64Tag: case int8Tag: case int16Tag: case int32Tag: case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: return cloneTypedArray(object, isDeep); case mapTag: return new Ctor(); case numberTag: case stringTag: return new Ctor(object); case regexpTag: return cloneRegExp(object); case setTag: return new Ctor(); case symbolTag: return cloneSymbol(object); } } __name(initCloneByTag, "initCloneByTag"); function insertWrapDetails(source, details) { var length = details.length; if (!length) { return source; } var lastIndex = length - 1; details[lastIndex] = (length > 1 ? "& " : "") + details[lastIndex]; details = details.join(length > 2 ? ", " : " "); return source.replace(reWrapComment, "{\n/* [wrapped with " + details + "] */\n"); } __name(insertWrapDetails, "insertWrapDetails"); function isFlattenable(value) { return isArray(value) || isArguments(value) || !!(spreadableSymbol && value && value[spreadableSymbol]); } __name(isFlattenable, "isFlattenable"); function isIndex(value, length) { var type = typeof value; length = length == null ? MAX_SAFE_INTEGER : length; return !!length && (type == "number" || type != "symbol" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); } __name(isIndex, "isIndex"); function isIterateeCall(value, index, object) { if (!isObject2(object)) { return false; } var type = typeof index; if (type == "number" ? isArrayLike(object) && isIndex(index, object.length) : type == "string" && index in object) { return eq(object[index], value); } return false; } __name(isIterateeCall, "isIterateeCall"); function isKey(value, object) { if (isArray(value)) { return false; } var type = typeof value; if (type == "number" || type == "symbol" || type == "boolean" || value == null || isSymbol(value)) { return true; } return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || object != null && value in Object2(object); } __name(isKey, "isKey"); function isKeyable(value) { var type = typeof value; return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null; } __name(isKeyable, "isKeyable"); function isLaziable(func) { var funcName = getFuncName(func), other = lodash[funcName]; if (typeof other != "function" || !(funcName in LazyWrapper.prototype)) { return false; } if (func === other) { return true; } var data = getData(other); return !!data && func === data[0]; } __name(isLaziable, "isLaziable"); function isMasked(func) { return !!maskSrcKey && maskSrcKey in func; } __name(isMasked, "isMasked"); var isMaskable = coreJsData ? isFunction : stubFalse; function isPrototype(value) { var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto; return value === proto; } __name(isPrototype, "isPrototype"); function isStrictComparable(value) { return value === value && !isObject2(value); } __name(isStrictComparable, "isStrictComparable"); function matchesStrictComparable(key, srcValue) { return function(object) { if (object == null) { return false; } return object[key] === srcValue && (srcValue !== undefined2 || key in Object2(object)); }; } __name(matchesStrictComparable, "matchesStrictComparable"); function memoizeCapped(func) { var result2 = memoize(func, function(key) { if (cache.size === MAX_MEMOIZE_SIZE) { cache.clear(); } return key; }); var cache = result2.cache; return result2; } __name(memoizeCapped, "memoizeCapped"); function mergeData(data, source) { var bitmask = data[1], srcBitmask = source[1], newBitmask = bitmask | srcBitmask, isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG); var isCombo = srcBitmask == WRAP_ARY_FLAG && bitmask == WRAP_CURRY_FLAG || srcBitmask == WRAP_ARY_FLAG && bitmask == WRAP_REARG_FLAG && data[7].length <= source[8] || srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG) && source[7].length <= source[8] && bitmask == WRAP_CURRY_FLAG; if (!(isCommon || isCombo)) { return data; } if (srcBitmask & WRAP_BIND_FLAG) { data[2] = source[2]; newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG; } var value = source[3]; if (value) { var partials = data[3]; data[3] = partials ? composeArgs(partials, value, source[4]) : value; data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4]; } value = source[5]; if (value) { partials = data[5]; data[5] = partials ? composeArgsRight(partials, value, source[6]) : value; data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6]; } value = source[7]; if (value) { data[7] = value; } if (srcBitmask & WRAP_ARY_FLAG) { data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]); } if (data[9] == null) { data[9] = source[9]; } data[0] = source[0]; data[1] = newBitmask; return data; } __name(mergeData, "mergeData"); function nativeKeysIn(object) { var result2 = []; if (object != null) { for (var key in Object2(object)) { result2.push(key); } } return result2; } __name(nativeKeysIn, "nativeKeysIn"); function objectToString(value) { return nativeObjectToString.call(value); } __name(objectToString, "objectToString"); function overRest(func, start, transform2) { start = nativeMax(start === undefined2 ? func.length - 1 : start, 0); return function() { var args = arguments, index = -1, length = nativeMax(args.length - start, 0), array = Array2(length); while (++index < length) { array[index] = args[start + index]; } index = -1; var otherArgs = Array2(start + 1); while (++index < start) { otherArgs[index] = args[index]; } otherArgs[start] = transform2(array); return apply(func, this, otherArgs); }; } __name(overRest, "overRest"); function parent(object, path) { return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1)); } __name(parent, "parent"); function reorder(array, indexes) { var arrLength = array.length, length = nativeMin(indexes.length, arrLength), oldArray = copyArray(array); while (length--) { var index = indexes[length]; array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined2; } return array; } __name(reorder, "reorder"); function safeGet(object, key) { if (key === "constructor" && typeof object[key] === "function") { return; } if (key == "__proto__") { return; } return object[key]; } __name(safeGet, "safeGet"); var setData = shortOut(baseSetData); var setTimeout2 = ctxSetTimeout || function(func, wait) { return root.setTimeout(func, wait); }; var setToString = shortOut(baseSetToString); function setWrapToString(wrapper, reference, bitmask) { var source = reference + ""; return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask))); } __name(setWrapToString, "setWrapToString"); function shortOut(func) { var count = 0, lastCalled = 0; return function() { var stamp = nativeNow(), remaining = HOT_SPAN - (stamp - lastCalled); lastCalled = stamp; if (remaining > 0) { if (++count >= HOT_COUNT) { return arguments[0]; } } else { count = 0; } return func.apply(undefined2, arguments); }; } __name(shortOut, "shortOut"); function shuffleSelf(array, size2) { var index = -1, length = array.length, lastIndex = length - 1; size2 = size2 === undefined2 ? length : size2; while (++index < size2) { var rand = baseRandom(index, lastIndex), value = array[rand]; array[rand] = array[index]; array[index] = value; } array.length = size2; return array; } __name(shuffleSelf, "shuffleSelf"); var stringToPath = memoizeCapped(function(string) { var result2 = []; if (string.charCodeAt(0) === 46) { result2.push(""); } string.replace(rePropName, function(match, number, quote, subString) { result2.push(quote ? subString.replace(reEscapeChar, "$1") : number || match); }); return result2; }); function toKey(value) { if (typeof value == "string" || isSymbol(value)) { return value; } var result2 = value + ""; return result2 == "0" && 1 / value == -INFINITY ? "-0" : result2; } __name(toKey, "toKey"); function toSource(func) { if (func != null) { try { return funcToString.call(func); } catch (e) { } try { return func + ""; } catch (e) { } } return ""; } __name(toSource, "toSource"); function updateWrapDetails(details, bitmask) { arrayEach(wrapFlags, function(pair) { var value = "_." + pair[0]; if (bitmask & pair[1] && !arrayIncludes(details, value)) { details.push(value); } }); return details.sort(); } __name(updateWrapDetails, "updateWrapDetails"); function wrapperClone(wrapper) { if (wrapper instanceof LazyWrapper) { return wrapper.clone(); } var result2 = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); result2.__actions__ = copyArray(wrapper.__actions__); result2.__index__ = wrapper.__index__; result2.__values__ = wrapper.__values__; return result2; } __name(wrapperClone, "wrapperClone"); function chunk(array, size2, guard) { if (guard ? isIterateeCall(array, size2, guard) : size2 === undefined2) { size2 = 1; } else { size2 = nativeMax(toInteger(size2), 0); } var length = array == null ? 0 : array.length; if (!length || size2 < 1) { return []; } var index = 0, resIndex = 0, result2 = Array2(nativeCeil(length / size2)); while (index < length) { result2[resIndex++] = baseSlice(array, index, index += size2); } return result2; } __name(chunk, "chunk"); function compact(array) { var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result2 = []; while (++index < length) { var value = array[index]; if (value) { result2[resIndex++] = value; } } return result2; } __name(compact, "compact"); function concat() { var length = arguments.length; if (!length) { return []; } var args = Array2(length - 1), array = arguments[0], index = length; while (index--) { args[index - 1] = arguments[index]; } return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1)); } __name(concat, "concat"); var difference = baseRest(function(array, values2) { return isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values2, 1, isArrayLikeObject, true)) : []; }); var differenceBy = baseRest(function(array, values2) { var iteratee2 = last(values2); if (isArrayLikeObject(iteratee2)) { iteratee2 = undefined2; } return isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values2, 1, isArrayLikeObject, true), getIteratee(iteratee2, 2)) : []; }); var differenceWith = baseRest(function(array, values2) { var comparator = last(values2); if (isArrayLikeObject(comparator)) { comparator = undefined2; } return isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values2, 1, isArrayLikeObject, true), undefined2, comparator) : []; }); function drop(array, n, guard) { var length = array == null ? 0 : array.length; if (!length) { return []; } n = guard || n === undefined2 ? 1 : toInteger(n); return baseSlice(array, n < 0 ? 0 : n, length); } __name(drop, "drop"); function dropRight(array, n, guard) { var length = array == null ? 0 : array.length; if (!length) { return []; } n = guard || n === undefined2 ? 1 : toInteger(n); n = length - n; return baseSlice(array, 0, n < 0 ? 0 : n); } __name(dropRight, "dropRight"); function dropRightWhile(array, predicate) { return array && array.length ? baseWhile(array, getIteratee(predicate, 3), true, true) : []; } __name(dropRightWhile, "dropRightWhile"); function dropWhile(array, predicate) { return array && array.length ? baseWhile(array, getIteratee(predicate, 3), true) : []; } __name(dropWhile, "dropWhile"); function fill(array, value, start, end) { var length = array == null ? 0 : array.length; if (!length) { return []; } if (start && typeof start != "number" && isIterateeCall(array, value, start)) { start = 0; end = length; } return baseFill(array, value, start, end); } __name(fill, "fill"); function findIndex(array, predicate, fromIndex) { var length = array == null ? 0 : array.length; if (!length) { return -1; } var index = fromIndex == null ? 0 : toInteger(fromIndex); if (index < 0) { index = nativeMax(length + index, 0); } return baseFindIndex(array, getIteratee(predicate, 3), index); } __name(findIndex, "findIndex"); function findLastIndex(array, predicate, fromIndex) { var length = array == null ? 0 : array.length; if (!length) { return -1; } var index = length - 1; if (fromIndex !== undefined2) { index = toInteger(fromIndex); index = fromIndex < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); } return baseFindIndex(array, getIteratee(predicate, 3), index, true); } __name(findLastIndex, "findLastIndex"); function flatten(array) { var length = array == null ? 0 : array.length; return length ? baseFlatten(array, 1) : []; } __name(flatten, "flatten"); function flattenDeep(array) { var length = array == null ? 0 : array.length; return length ? baseFlatten(array, INFINITY) : []; } __name(flattenDeep, "flattenDeep"); function flattenDepth(array, depth) { var length = array == null ? 0 : array.length; if (!length) { return []; } depth = depth === undefined2 ? 1 : toInteger(depth); return baseFlatten(array, depth); } __name(flattenDepth, "flattenDepth"); function fromPairs(pairs) { var index = -1, length = pairs == null ? 0 : pairs.length, result2 = {}; while (++index < length) { var pair = pairs[index]; result2[pair[0]] = pair[1]; } return result2; } __name(fromPairs, "fromPairs"); function head(array) { return array && array.length ? array[0] : undefined2; } __name(head, "head"); function indexOf(array, value, fromIndex) { var length = array == null ? 0 : array.length; if (!length) { return -1; } var index = fromIndex == null ? 0 : toInteger(fromIndex); if (index < 0) { index = nativeMax(length + index, 0); } return baseIndexOf(array, value, index); } __name(indexOf, "indexOf"); function initial(array) { var length = array == null ? 0 : array.length; return length ? baseSlice(array, 0, -1) : []; } __name(initial, "initial"); var intersection = baseRest(function(arrays) { var mapped = arrayMap(arrays, castArrayLikeObject); return mapped.length && mapped[0] === arrays[0] ? baseIntersection(mapped) : []; }); var intersectionBy = baseRest(function(arrays) { var iteratee2 = last(arrays), mapped = arrayMap(arrays, castArrayLikeObject); if (iteratee2 === last(mapped)) { iteratee2 = undefined2; } else { mapped.pop(); } return mapped.length && mapped[0] === arrays[0] ? baseIntersection(mapped, getIteratee(iteratee2, 2)) : []; }); var intersectionWith = baseRest(function(arrays) { var comparator = last(arrays), mapped = arrayMap(arrays, castArrayLikeObject); comparator = typeof comparator == "function" ? comparator : undefined2; if (comparator) { mapped.pop(); } return mapped.length && mapped[0] === arrays[0] ? baseIntersection(mapped, undefined2, comparator) : []; }); function join(array, separator) { return array == null ? "" : nativeJoin.call(array, separator); } __name(join, "join"); function last(array) { var length = array == null ? 0 : array.length; return length ? array[length - 1] : undefined2; } __name(last, "last"); function lastIndexOf(array, value, fromIndex) { var length = array == null ? 0 : array.length; if (!length) { return -1; } var index = length; if (fromIndex !== undefined2) { index = toInteger(fromIndex); index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); } return value === value ? strictLastIndexOf(array, value, index) : baseFindIndex(array, baseIsNaN, index, true); } __name(lastIndexOf, "lastIndexOf"); function nth(array, n) { return array && array.length ? baseNth(array, toInteger(n)) : undefined2; } __name(nth, "nth"); var pull = baseRest(pullAll); function pullAll(array, values2) { return array && array.length && values2 && values2.length ? basePullAll(array, values2) : array; } __name(pullAll, "pullAll"); function pullAllBy(array, values2, iteratee2) { return array && array.length && values2 && values2.length ? basePullAll(array, values2, getIteratee(iteratee2, 2)) : array; } __name(pullAllBy, "pullAllBy"); function pullAllWith(array, values2, comparator) { return array && array.length && values2 && values2.length ? basePullAll(array, values2, undefined2, comparator) : array; } __name(pullAllWith, "pullAllWith"); var pullAt = flatRest(function(array, indexes) { var length = array == null ? 0 : array.length, result2 = baseAt(array, indexes); basePullAt(array, arrayMap(indexes, function(index) { return isIndex(index, length) ? +index : index; }).sort(compareAscending)); return result2; }); function remove(array, predicate) { var result2 = []; if (!(array && array.length)) { return result2; } var index = -1, indexes = [], length = array.length; predicate = getIteratee(predicate, 3); while (++index < length) { var value = array[index]; if (predicate(value, index, array)) { result2.push(value); indexes.push(index); } } basePullAt(array, indexes); return result2; } __name(remove, "remove"); function reverse(array) { return array == null ? array : nativeReverse.call(array); } __name(reverse, "reverse"); function slice(array, start, end) { var length = array == null ? 0 : array.length; if (!length) { return []; } if (end && typeof end != "number" && isIterateeCall(array, start, end)) { start = 0; end = length; } else { start = start == null ? 0 : toInteger(start); end = end === undefined2 ? length : toInteger(end); } return baseSlice(array, start, end); } __name(slice, "slice"); function sortedIndex(array, value) { return baseSortedIndex(array, value); } __name(sortedIndex, "sortedIndex"); function sortedIndexBy(array, value, iteratee2) { return baseSortedIndexBy(array, value, getIteratee(iteratee2, 2)); } __name(sortedIndexBy, "sortedIndexBy"); function sortedIndexOf(array, value) { var length = array == null ? 0 : array.length; if (length) { var index = baseSortedIndex(array, value); if (index < length && eq(array[index], value)) { return index; } } return -1; } __name(sortedIndexOf, "sortedIndexOf"); function sortedLastIndex(array, value) { return baseSortedIndex(array, value, true); } __name(sortedLastIndex, "sortedLastIndex"); function sortedLastIndexBy(array, value, iteratee2) { return baseSortedIndexBy(array, value, getIteratee(iteratee2, 2), true); } __name(sortedLastIndexBy, "sortedLastIndexBy"); function sortedLastIndexOf(array, value) { var length = array == null ? 0 : array.length; if (length) { var index = baseSortedIndex(array, value, true) - 1; if (eq(array[index], value)) { return index; } } return -1; } __name(sortedLastIndexOf, "sortedLastIndexOf"); function sortedUniq(array) { return array && array.length ? baseSortedUniq(array) : []; } __name(sortedUniq, "sortedUniq"); function sortedUniqBy(array, iteratee2) { return array && array.length ? baseSortedUniq(array, getIteratee(iteratee2, 2)) : []; } __name(sortedUniqBy, "sortedUniqBy"); function tail(array) { var length = array == null ? 0 : array.length; return length ? baseSlice(array, 1, length) : []; } __name(tail, "tail"); function take(array, n, guard) { if (!(array && array.length)) { return []; } n = guard || n === undefined2 ? 1 : toInteger(n); return baseSlice(array, 0, n < 0 ? 0 : n); } __name(take, "take"); function takeRight(array, n, guard) { var length = array == null ? 0 : array.length; if (!length) { return []; } n = guard || n === undefined2 ? 1 : toInteger(n); n = length - n; return baseSlice(array, n < 0 ? 0 : n, length); } __name(takeRight, "takeRight"); function takeRightWhile(array, predicate) { return array && array.length ? baseWhile(array, getIteratee(predicate, 3), false, true) : []; } __name(takeRightWhile, "takeRightWhile"); function takeWhile(array, predicate) { return array && array.length ? baseWhile(array, getIteratee(predicate, 3)) : []; } __name(takeWhile, "takeWhile"); var union = baseRest(function(arrays) { return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true)); }); var unionBy = baseRest(function(arrays) { var iteratee2 = last(arrays); if (isArrayLikeObject(iteratee2)) { iteratee2 = undefined2; } return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee2, 2)); }); var unionWith = baseRest(function(arrays) { var comparator = last(arrays); comparator = typeof comparator == "function" ? comparator : undefined2; return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined2, comparator); }); function uniq(array) { return array && array.length ? baseUniq(array) : []; } __name(uniq, "uniq"); function uniqBy(array, iteratee2) { return array && array.length ? baseUniq(array, getIteratee(iteratee2, 2)) : []; } __name(uniqBy, "uniqBy"); function uniqWith(array, comparator) { comparator = typeof comparator == "function" ? comparator : undefined2; return array && array.length ? baseUniq(array, undefined2, comparator) : []; } __name(uniqWith, "uniqWith"); function unzip(array) { if (!(array && array.length)) { return []; } var length = 0; array = arrayFilter(array, function(group) { if (isArrayLikeObject(group)) { length = nativeMax(group.length, length); return true; } }); return baseTimes(length, function(index) { return arrayMap(array, baseProperty(index)); }); } __name(unzip, "unzip"); function unzipWith(array, iteratee2) { if (!(array && array.length)) { return []; } var result2 = unzip(array); if (iteratee2 == null) { return result2; } return arrayMap(result2, function(group) { return apply(iteratee2, undefined2, group); }); } __name(unzipWith, "unzipWith"); var without = baseRest(function(array, values2) { return isArrayLikeObject(array) ? baseDifference(array, values2) : []; }); var xor = baseRest(function(arrays) { return baseXor(arrayFilter(arrays, isArrayLikeObject)); }); var xorBy = baseRest(function(arrays) { var iteratee2 = last(arrays); if (isArrayLikeObject(iteratee2)) { iteratee2 = undefined2; } return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee2, 2)); }); var xorWith = baseRest(function(arrays) { var comparator = last(arrays); comparator = typeof comparator == "function" ? comparator : undefined2; return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined2, comparator); }); var zip = baseRest(unzip); function zipObject(props, values2) { return baseZipObject(props || [], values2 || [], assignValue); } __name(zipObject, "zipObject"); function zipObjectDeep(props, values2) { return baseZipObject(props || [], values2 || [], baseSet); } __name(zipObjectDeep, "zipObjectDeep"); var zipWith = baseRest(function(arrays) { var length = arrays.length, iteratee2 = length > 1 ? arrays[length - 1] : undefined2; iteratee2 = typeof iteratee2 == "function" ? (arrays.pop(), iteratee2) : undefined2; return unzipWith(arrays, iteratee2); }); function chain(value) { var result2 = lodash(value); result2.__chain__ = true; return result2; } __name(chain, "chain"); function tap(value, interceptor) { interceptor(value); return value; } __name(tap, "tap"); function thru(value, interceptor) { return interceptor(value); } __name(thru, "thru"); var wrapperAt = flatRest(function(paths) { var length = paths.length, start = length ? paths[0] : 0, value = this.__wrapped__, interceptor = /* @__PURE__ */ __name(function(object) { return baseAt(object, paths); }, "interceptor"); if (length > 1 || this.__actions__.length || !(value instanceof LazyWrapper) || !isIndex(start)) { return this.thru(interceptor); } value = value.slice(start, +start + (length ? 1 : 0)); value.__actions__.push({ "func": thru, "args": [interceptor], "thisArg": undefined2 }); return new LodashWrapper(value, this.__chain__).thru(function(array) { if (length && !array.length) { array.push(undefined2); } return array; }); }); function wrapperChain() { return chain(this); } __name(wrapperChain, "wrapperChain"); function wrapperCommit() { return new LodashWrapper(this.value(), this.__chain__); } __name(wrapperCommit, "wrapperCommit"); function wrapperNext() { if (this.__values__ === undefined2) { this.__values__ = toArray(this.value()); } var done = this.__index__ >= this.__values__.length, value = done ? undefined2 : this.__values__[this.__index__++]; return { "done": done, "value": value }; } __name(wrapperNext, "wrapperNext"); function wrapperToIterator() { return this; } __name(wrapperToIterator, "wrapperToIterator"); function wrapperPlant(value) { var result2, parent2 = this; while (parent2 instanceof baseLodash) { var clone2 = wrapperClone(parent2); clone2.__index__ = 0; clone2.__values__ = undefined2; if (result2) { previous.__wrapped__ = clone2; } else { result2 = clone2; } var previous = clone2; parent2 = parent2.__wrapped__; } previous.__wrapped__ = value; return result2; } __name(wrapperPlant, "wrapperPlant"); function wrapperReverse() { var value = this.__wrapped__; if (value instanceof LazyWrapper) { var wrapped = value; if (this.__actions__.length) { wrapped = new LazyWrapper(this); } wrapped = wrapped.reverse(); wrapped.__actions__.push({ "func": thru, "args": [reverse], "thisArg": undefined2 }); return new LodashWrapper(wrapped, this.__chain__); } return this.thru(reverse); } __name(wrapperReverse, "wrapperReverse"); function wrapperValue() { return baseWrapperValue(this.__wrapped__, this.__actions__); } __name(wrapperValue, "wrapperValue"); var countBy = createAggregator(function(result2, value, key) { if (hasOwnProperty.call(result2, key)) { ++result2[key]; } else { baseAssignValue(result2, key, 1); } }); function every(collection, predicate, guard) { var func = isArray(collection) ? arrayEvery : baseEvery; if (guard && isIterateeCall(collection, predicate, guard)) { predicate = undefined2; } return func(collection, getIteratee(predicate, 3)); } __name(every, "every"); function filter(collection, predicate) { var func = isArray(collection) ? arrayFilter : baseFilter; return func(collection, getIteratee(predicate, 3)); } __name(filter, "filter"); var find = createFind(findIndex); var findLast = createFind(findLastIndex); function flatMap(collection, iteratee2) { return baseFlatten(map(collection, iteratee2), 1); } __name(flatMap, "flatMap"); function flatMapDeep(collection, iteratee2) { return baseFlatten(map(collection, iteratee2), INFINITY); } __name(flatMapDeep, "flatMapDeep"); function flatMapDepth(collection, iteratee2, depth) { depth = depth === undefined2 ? 1 : toInteger(depth); return baseFlatten(map(collection, iteratee2), depth); } __name(flatMapDepth, "flatMapDepth"); function forEach(collection, iteratee2) { var func = isArray(collection) ? arrayEach : baseEach; return func(collection, getIteratee(iteratee2, 3)); } __name(forEach, "forEach"); function forEachRight(collection, iteratee2) { var func = isArray(collection) ? arrayEachRight : baseEachRight; return func(collection, getIteratee(iteratee2, 3)); } __name(forEachRight, "forEachRight"); var groupBy = createAggregator(function(result2, value, key) { if (hasOwnProperty.call(result2, key)) { result2[key].push(value); } else { baseAssignValue(result2, key, [value]); } }); function includes(collection, value, fromIndex, guard) { collection = isArrayLike(collection) ? collection : values(collection); fromIndex = fromIndex && !guard ? toInteger(fromIndex) : 0; var length = collection.length; if (fromIndex < 0) { fromIndex = nativeMax(length + fromIndex, 0); } return isString(collection) ? fromIndex <= length && collection.indexOf(value, fromIndex) > -1 : !!length && baseIndexOf(collection, value, fromIndex) > -1; } __name(includes, "includes"); var invokeMap = baseRest(function(collection, path, args) { var index = -1, isFunc = typeof path == "function", result2 = isArrayLike(collection) ? Array2(collection.length) : []; baseEach(collection, function(value) { result2[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args); }); return result2; }); var keyBy = createAggregator(function(result2, value, key) { baseAssignValue(result2, key, value); }); function map(collection, iteratee2) { var func = isArray(collection) ? arrayMap : baseMap; return func(collection, getIteratee(iteratee2, 3)); } __name(map, "map"); function orderBy(collection, iteratees, orders, guard) { if (collection == null) { return []; } if (!isArray(iteratees)) { iteratees = iteratees == null ? [] : [iteratees]; } orders = guard ? undefined2 : orders; if (!isArray(orders)) { orders = orders == null ? [] : [orders]; } return baseOrderBy(collection, iteratees, orders); } __name(orderBy, "orderBy"); var partition = createAggregator(function(result2, value, key) { result2[key ? 0 : 1].push(value); }, function() { return [[], []]; }); function reduce(collection, iteratee2, accumulator) { var func = isArray(collection) ? arrayReduce : baseReduce, initAccum = arguments.length < 3; return func(collection, getIteratee(iteratee2, 4), accumulator, initAccum, baseEach); } __name(reduce, "reduce"); function reduceRight(collection, iteratee2, accumulator) { var func = isArray(collection) ? arrayReduceRight : baseReduce, initAccum = arguments.length < 3; return func(collection, getIteratee(iteratee2, 4), accumulator, initAccum, baseEachRight); } __name(reduceRight, "reduceRight"); function reject(collection, predicate) { var func = isArray(collection) ? arrayFilter : baseFilter; return func(collection, negate(getIteratee(predicate, 3))); } __name(reject, "reject"); function sample(collection) { var func = isArray(collection) ? arraySample : baseSample; return func(collection); } __name(sample, "sample"); function sampleSize(collection, n, guard) { if (guard ? isIterateeCall(collection, n, guard) : n === undefined2) { n = 1; } else { n = toInteger(n); } var func = isArray(collection) ? arraySampleSize : baseSampleSize; return func(collection, n); } __name(sampleSize, "sampleSize"); function shuffle(collection) { var func = isArray(collection) ? arrayShuffle : baseShuffle; return func(collection); } __name(shuffle, "shuffle"); function size(collection) { if (collection == null) { return 0; } if (isArrayLike(collection)) { return isString(collection) ? stringSize(collection) : collection.length; } var tag = getTag(collection); if (tag == mapTag || tag == setTag) { return collection.size; } return baseKeys(collection).length; } __name(size, "size"); function some(collection, predicate, guard) { var func = isArray(collection) ? arraySome : baseSome; if (guard && isIterateeCall(collection, predicate, guard)) { predicate = undefined2; } return func(collection, getIteratee(predicate, 3)); } __name(some, "some"); var sortBy = baseRest(function(collection, iteratees) { if (collection == null) { return []; } var length = iteratees.length; if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) { iteratees = []; } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) { iteratees = [iteratees[0]]; } return baseOrderBy(collection, baseFlatten(iteratees, 1), []); }); var now = ctxNow || function() { return root.Date.now(); }; function after(n, func) { if (typeof func != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } n = toInteger(n); return function() { if (--n < 1) { return func.apply(this, arguments); } }; } __name(after, "after"); function ary(func, n, guard) { n = guard ? undefined2 : n; n = func && n == null ? func.length : n; return createWrap(func, WRAP_ARY_FLAG, undefined2, undefined2, undefined2, undefined2, n); } __name(ary, "ary"); function before(n, func) { var result2; if (typeof func != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } n = toInteger(n); return function() { if (--n > 0) { result2 = func.apply(this, arguments); } if (n <= 1) { func = undefined2; } return result2; }; } __name(before, "before"); var bind = baseRest(function(func, thisArg, partials) { var bitmask = WRAP_BIND_FLAG; if (partials.length) { var holders = replaceHolders(partials, getHolder(bind)); bitmask |= WRAP_PARTIAL_FLAG; } return createWrap(func, bitmask, thisArg, partials, holders); }); var bindKey = baseRest(function(object, key, partials) { var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG; if (partials.length) { var holders = replaceHolders(partials, getHolder(bindKey)); bitmask |= WRAP_PARTIAL_FLAG; } return createWrap(key, bitmask, object, partials, holders); }); function curry(func, arity, guard) { arity = guard ? undefined2 : arity; var result2 = createWrap(func, WRAP_CURRY_FLAG, undefined2, undefined2, undefined2, undefined2, undefined2, arity); result2.placeholder = curry.placeholder; return result2; } __name(curry, "curry"); function curryRight(func, arity, guard) { arity = guard ? undefined2 : arity; var result2 = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined2, undefined2, undefined2, undefined2, undefined2, arity); result2.placeholder = curryRight.placeholder; return result2; } __name(curryRight, "curryRight"); function debounce(func, wait, options) { var lastArgs, lastThis, maxWait, result2, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true; if (typeof func != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } wait = toNumber(wait) || 0; if (isObject2(options)) { leading = !!options.leading; maxing = "maxWait" in options; maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; trailing = "trailing" in options ? !!options.trailing : trailing; } function invokeFunc(time) { var args = lastArgs, thisArg = lastThis; lastArgs = lastThis = undefined2; lastInvokeTime = time; result2 = func.apply(thisArg, args); return result2; } __name(invokeFunc, "invokeFunc"); function leadingEdge(time) { lastInvokeTime = time; timerId = setTimeout2(timerExpired, wait); return leading ? invokeFunc(time) : result2; } __name(leadingEdge, "leadingEdge"); function remainingWait(time) { var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall; return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting; } __name(remainingWait, "remainingWait"); function shouldInvoke(time) { var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime; return lastCallTime === undefined2 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait; } __name(shouldInvoke, "shouldInvoke"); function timerExpired() { var time = now(); if (shouldInvoke(time)) { return trailingEdge(time); } timerId = setTimeout2(timerExpired, remainingWait(time)); } __name(timerExpired, "timerExpired"); function trailingEdge(time) { timerId = undefined2; if (trailing && lastArgs) { return invokeFunc(time); } lastArgs = lastThis = undefined2; return result2; } __name(trailingEdge, "trailingEdge"); function cancel() { if (timerId !== undefined2) { clearTimeout2(timerId); } lastInvokeTime = 0; lastArgs = lastCallTime = lastThis = timerId = undefined2; } __name(cancel, "cancel"); function flush() { return timerId === undefined2 ? result2 : trailingEdge(now()); } __name(flush, "flush"); function debounced() { var time = now(), isInvoking = shouldInvoke(time); lastArgs = arguments; lastThis = this; lastCallTime = time; if (isInvoking) { if (timerId === undefined2) { return leadingEdge(lastCallTime); } if (maxing) { clearTimeout2(timerId); timerId = setTimeout2(timerExpired, wait); return invokeFunc(lastCallTime); } } if (timerId === undefined2) { timerId = setTimeout2(timerExpired, wait); } return result2; } __name(debounced, "debounced"); debounced.cancel = cancel; debounced.flush = flush; return debounced; } __name(debounce, "debounce"); var defer = baseRest(function(func, args) { return baseDelay(func, 1, args); }); var delay = baseRest(function(func, wait, args) { return baseDelay(func, toNumber(wait) || 0, args); }); function flip(func) { return createWrap(func, WRAP_FLIP_FLAG); } __name(flip, "flip"); function memoize(func, resolver) { if (typeof func != "function" || resolver != null && typeof resolver != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } var memoized = /* @__PURE__ */ __name(function() { var args = arguments, key = resolver ? resolver.apply(this, args) : args[0], cache = memoized.cache; if (cache.has(key)) { return cache.get(key); } var result2 = func.apply(this, args); memoized.cache = cache.set(key, result2) || cache; return result2; }, "memoized"); memoized.cache = new (memoize.Cache || MapCache)(); return memoized; } __name(memoize, "memoize"); memoize.Cache = MapCache; function negate(predicate) { if (typeof predicate != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } return function() { var args = arguments; switch (args.length) { case 0: return !predicate.call(this); case 1: return !predicate.call(this, args[0]); case 2: return !predicate.call(this, args[0], args[1]); case 3: return !predicate.call(this, args[0], args[1], args[2]); } return !predicate.apply(this, args); }; } __name(negate, "negate"); function once(func) { return before(2, func); } __name(once, "once"); var overArgs = castRest(function(func, transforms) { transforms = transforms.length == 1 && isArray(transforms[0]) ? arrayMap(transforms[0], baseUnary(getIteratee())) : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee())); var funcsLength = transforms.length; return baseRest(function(args) { var index = -1, length = nativeMin(args.length, funcsLength); while (++index < length) { args[index] = transforms[index].call(this, args[index]); } return apply(func, this, args); }); }); var partial = baseRest(function(func, partials) { var holders = replaceHolders(partials, getHolder(partial)); return createWrap(func, WRAP_PARTIAL_FLAG, undefined2, partials, holders); }); var partialRight = baseRest(function(func, partials) { var holders = replaceHolders(partials, getHolder(partialRight)); return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined2, partials, holders); }); var rearg = flatRest(function(func, indexes) { return createWrap(func, WRAP_REARG_FLAG, undefined2, undefined2, undefined2, indexes); }); function rest(func, start) { if (typeof func != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } start = start === undefined2 ? start : toInteger(start); return baseRest(func, start); } __name(rest, "rest"); function spread(func, start) { if (typeof func != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } start = start == null ? 0 : nativeMax(toInteger(start), 0); return baseRest(function(args) { var array = args[start], otherArgs = castSlice(args, 0, start); if (array) { arrayPush(otherArgs, array); } return apply(func, this, otherArgs); }); } __name(spread, "spread"); function throttle(func, wait, options) { var leading = true, trailing = true; if (typeof func != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } if (isObject2(options)) { leading = "leading" in options ? !!options.leading : leading; trailing = "trailing" in options ? !!options.trailing : trailing; } return debounce(func, wait, { "leading": leading, "maxWait": wait, "trailing": trailing }); } __name(throttle, "throttle"); function unary(func) { return ary(func, 1); } __name(unary, "unary"); function wrap(value, wrapper) { return partial(castFunction(wrapper), value); } __name(wrap, "wrap"); function castArray() { if (!arguments.length) { return []; } var value = arguments[0]; return isArray(value) ? value : [value]; } __name(castArray, "castArray"); function clone(value) { return baseClone(value, CLONE_SYMBOLS_FLAG); } __name(clone, "clone"); function cloneWith(value, customizer) { customizer = typeof customizer == "function" ? customizer : undefined2; return baseClone(value, CLONE_SYMBOLS_FLAG, customizer); } __name(cloneWith, "cloneWith"); function cloneDeep(value) { return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); } __name(cloneDeep, "cloneDeep"); function cloneDeepWith(value, customizer) { customizer = typeof customizer == "function" ? customizer : undefined2; return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer); } __name(cloneDeepWith, "cloneDeepWith"); function conformsTo(object, source) { return source == null || baseConformsTo(object, source, keys(source)); } __name(conformsTo, "conformsTo"); function eq(value, other) { return value === other || value !== value && other !== other; } __name(eq, "eq"); var gt = createRelationalOperation(baseGt); var gte = createRelationalOperation(function(value, other) { return value >= other; }); var isArguments = baseIsArguments(/* @__PURE__ */ (function() { return arguments; })()) ? baseIsArguments : function(value) { return isObjectLike(value) && hasOwnProperty.call(value, "callee") && !propertyIsEnumerable.call(value, "callee"); }; var isArray = Array2.isArray; var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer; function isArrayLike(value) { return value != null && isLength(value.length) && !isFunction(value); } __name(isArrayLike, "isArrayLike"); function isArrayLikeObject(value) { return isObjectLike(value) && isArrayLike(value); } __name(isArrayLikeObject, "isArrayLikeObject"); function isBoolean(value) { return value === true || value === false || isObjectLike(value) && baseGetTag(value) == boolTag; } __name(isBoolean, "isBoolean"); var isBuffer = nativeIsBuffer || stubFalse; var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate; function isElement(value) { return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value); } __name(isElement, "isElement"); function isEmpty(value) { if (value == null) { return true; } if (isArrayLike(value) && (isArray(value) || typeof value == "string" || typeof value.splice == "function" || isBuffer(value) || isTypedArray(value) || isArguments(value))) { return !value.length; } var tag = getTag(value); if (tag == mapTag || tag == setTag) { return !value.size; } if (isPrototype(value)) { return !baseKeys(value).length; } for (var key in value) { if (hasOwnProperty.call(value, key)) { return false; } } return true; } __name(isEmpty, "isEmpty"); function isEqual(value, other) { return baseIsEqual(value, other); } __name(isEqual, "isEqual"); function isEqualWith(value, other, customizer) { customizer = typeof customizer == "function" ? customizer : undefined2; var result2 = customizer ? customizer(value, other) : undefined2; return result2 === undefined2 ? baseIsEqual(value, other, undefined2, customizer) : !!result2; } __name(isEqualWith, "isEqualWith"); function isError2(value) { if (!isObjectLike(value)) { return false; } var tag = baseGetTag(value); return tag == errorTag || tag == domExcTag || typeof value.message == "string" && typeof value.name == "string" && !isPlainObject(value); } __name(isError2, "isError"); function isFinite2(value) { return typeof value == "number" && nativeIsFinite(value); } __name(isFinite2, "isFinite"); function isFunction(value) { if (!isObject2(value)) { return false; } var tag = baseGetTag(value); return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; } __name(isFunction, "isFunction"); function isInteger(value) { return typeof value == "number" && value == toInteger(value); } __name(isInteger, "isInteger"); function isLength(value) { return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; } __name(isLength, "isLength"); function isObject2(value) { var type = typeof value; return value != null && (type == "object" || type == "function"); } __name(isObject2, "isObject"); function isObjectLike(value) { return value != null && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; function isMatch(object, source) { return object === source || baseIsMatch(object, source, getMatchData(source)); } __name(isMatch, "isMatch"); function isMatchWith(object, source, customizer) { customizer = typeof customizer == "function" ? customizer : undefined2; return baseIsMatch(object, source, getMatchData(source), customizer); } __name(isMatchWith, "isMatchWith"); function isNaN2(value) { return isNumber(value) && value != +value; } __name(isNaN2, "isNaN"); function isNative(value) { if (isMaskable(value)) { throw new Error2(CORE_ERROR_TEXT); } return baseIsNative(value); } __name(isNative, "isNative"); function isNull(value) { return value === null; } __name(isNull, "isNull"); function isNil(value) { return value == null; } __name(isNil, "isNil"); function isNumber(value) { return typeof value == "number" || isObjectLike(value) && baseGetTag(value) == numberTag; } __name(isNumber, "isNumber"); function isPlainObject(value) { if (!isObjectLike(value) || baseGetTag(value) != objectTag) { return false; } var proto = getPrototype(value); if (proto === null) { return true; } var Ctor = hasOwnProperty.call(proto, "constructor") && proto.constructor; return typeof Ctor == "function" && Ctor instanceof Ctor && funcToString.call(Ctor) == objectCtorString; } __name(isPlainObject, "isPlainObject"); var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; function isSafeInteger(value) { return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER; } __name(isSafeInteger, "isSafeInteger"); var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; function isString(value) { return typeof value == "string" || !isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag; } __name(isString, "isString"); function isSymbol(value) { return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag; } __name(isSymbol, "isSymbol"); var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; function isUndefined(value) { return value === undefined2; } __name(isUndefined, "isUndefined"); function isWeakMap(value) { return isObjectLike(value) && getTag(value) == weakMapTag; } __name(isWeakMap, "isWeakMap"); function isWeakSet(value) { return isObjectLike(value) && baseGetTag(value) == weakSetTag; } __name(isWeakSet, "isWeakSet"); var lt = createRelationalOperation(baseLt); var lte = createRelationalOperation(function(value, other) { return value <= other; }); function toArray(value) { if (!value) { return []; } if (isArrayLike(value)) { return isString(value) ? stringToArray(value) : copyArray(value); } if (symIterator && value[symIterator]) { return iteratorToArray(value[symIterator]()); } var tag = getTag(value), func = tag == mapTag ? mapToArray : tag == setTag ? setToArray : values; return func(value); } __name(toArray, "toArray"); function toFinite(value) { if (!value) { return value === 0 ? value : 0; } value = toNumber(value); if (value === INFINITY || value === -INFINITY) { var sign = value < 0 ? -1 : 1; return sign * MAX_INTEGER; } return value === value ? value : 0; } __name(toFinite, "toFinite"); function toInteger(value) { var result2 = toFinite(value), remainder = result2 % 1; return result2 === result2 ? remainder ? result2 - remainder : result2 : 0; } __name(toInteger, "toInteger"); function toLength(value) { return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0; } __name(toLength, "toLength"); function toNumber(value) { if (typeof value == "number") { return value; } if (isSymbol(value)) { return NAN; } if (isObject2(value)) { var other = typeof value.valueOf == "function" ? value.valueOf() : value; value = isObject2(other) ? other + "" : other; } if (typeof value != "string") { return value === 0 ? value : +value; } value = baseTrim(value); var isBinary = reIsBinary.test(value); return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value; } __name(toNumber, "toNumber"); function toPlainObject(value) { return copyObject(value, keysIn(value)); } __name(toPlainObject, "toPlainObject"); function toSafeInteger(value) { return value ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) : value === 0 ? value : 0; } __name(toSafeInteger, "toSafeInteger"); function toString2(value) { return value == null ? "" : baseToString(value); } __name(toString2, "toString"); var assign = createAssigner(function(object, source) { if (isPrototype(source) || isArrayLike(source)) { copyObject(source, keys(source), object); return; } for (var key in source) { if (hasOwnProperty.call(source, key)) { assignValue(object, key, source[key]); } } }); var assignIn = createAssigner(function(object, source) { copyObject(source, keysIn(source), object); }); var assignInWith = createAssigner(function(object, source, srcIndex, customizer) { copyObject(source, keysIn(source), object, customizer); }); var assignWith = createAssigner(function(object, source, srcIndex, customizer) { copyObject(source, keys(source), object, customizer); }); var at = flatRest(baseAt); function create(prototype, properties) { var result2 = baseCreate(prototype); return properties == null ? result2 : baseAssign(result2, properties); } __name(create, "create"); var defaults = baseRest(function(object, sources) { object = Object2(object); var index = -1; var length = sources.length; var guard = length > 2 ? sources[2] : undefined2; if (guard && isIterateeCall(sources[0], sources[1], guard)) { length = 1; } while (++index < length) { var source = sources[index]; var props = keysIn(source); var propsIndex = -1; var propsLength = props.length; while (++propsIndex < propsLength) { var key = props[propsIndex]; var value = object[key]; if (value === undefined2 || eq(value, objectProto[key]) && !hasOwnProperty.call(object, key)) { object[key] = source[key]; } } } return object; }); var defaultsDeep = baseRest(function(args) { args.push(undefined2, customDefaultsMerge); return apply(mergeWith, undefined2, args); }); function findKey(object, predicate) { return baseFindKey(object, getIteratee(predicate, 3), baseForOwn); } __name(findKey, "findKey"); function findLastKey(object, predicate) { return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight); } __name(findLastKey, "findLastKey"); function forIn(object, iteratee2) { return object == null ? object : baseFor(object, getIteratee(iteratee2, 3), keysIn); } __name(forIn, "forIn"); function forInRight(object, iteratee2) { return object == null ? object : baseForRight(object, getIteratee(iteratee2, 3), keysIn); } __name(forInRight, "forInRight"); function forOwn(object, iteratee2) { return object && baseForOwn(object, getIteratee(iteratee2, 3)); } __name(forOwn, "forOwn"); function forOwnRight(object, iteratee2) { return object && baseForOwnRight(object, getIteratee(iteratee2, 3)); } __name(forOwnRight, "forOwnRight"); function functions(object) { return object == null ? [] : baseFunctions(object, keys(object)); } __name(functions, "functions"); function functionsIn(object) { return object == null ? [] : baseFunctions(object, keysIn(object)); } __name(functionsIn, "functionsIn"); function get(object, path, defaultValue) { var result2 = object == null ? undefined2 : baseGet(object, path); return result2 === undefined2 ? defaultValue : result2; } __name(get, "get"); function has(object, path) { return object != null && hasPath(object, path, baseHas); } __name(has, "has"); function hasIn(object, path) { return object != null && hasPath(object, path, baseHasIn); } __name(hasIn, "hasIn"); var invert = createInverter(function(result2, value, key) { if (value != null && typeof value.toString != "function") { value = nativeObjectToString.call(value); } result2[value] = key; }, constant(identity)); var invertBy = createInverter(function(result2, value, key) { if (value != null && typeof value.toString != "function") { value = nativeObjectToString.call(value); } if (hasOwnProperty.call(result2, value)) { result2[value].push(key); } else { result2[value] = [key]; } }, getIteratee); var invoke = baseRest(baseInvoke); function keys(object) { return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); } __name(keys, "keys"); function keysIn(object) { return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); } __name(keysIn, "keysIn"); function mapKeys(object, iteratee2) { var result2 = {}; iteratee2 = getIteratee(iteratee2, 3); baseForOwn(object, function(value, key, object2) { baseAssignValue(result2, iteratee2(value, key, object2), value); }); return result2; } __name(mapKeys, "mapKeys"); function mapValues(object, iteratee2) { var result2 = {}; iteratee2 = getIteratee(iteratee2, 3); baseForOwn(object, function(value, key, object2) { baseAssignValue(result2, key, iteratee2(value, key, object2)); }); return result2; } __name(mapValues, "mapValues"); var merge = createAssigner(function(object, source, srcIndex) { baseMerge(object, source, srcIndex); }); var mergeWith = createAssigner(function(object, source, srcIndex, customizer) { baseMerge(object, source, srcIndex, customizer); }); var omit = flatRest(function(object, paths) { var result2 = {}; if (object == null) { return result2; } var isDeep = false; paths = arrayMap(paths, function(path) { path = castPath(path, object); isDeep || (isDeep = path.length > 1); return path; }); copyObject(object, getAllKeysIn(object), result2); if (isDeep) { result2 = baseClone(result2, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone); } var length = paths.length; while (length--) { baseUnset(result2, paths[length]); } return result2; }); function omitBy(object, predicate) { return pickBy(object, negate(getIteratee(predicate))); } __name(omitBy, "omitBy"); var pick = flatRest(function(object, paths) { return object == null ? {} : basePick(object, paths); }); function pickBy(object, predicate) { if (object == null) { return {}; } var props = arrayMap(getAllKeysIn(object), function(prop) { return [prop]; }); predicate = getIteratee(predicate); return basePickBy(object, props, function(value, path) { return predicate(value, path[0]); }); } __name(pickBy, "pickBy"); function result(object, path, defaultValue) { path = castPath(path, object); var index = -1, length = path.length; if (!length) { length = 1; object = undefined2; } while (++index < length) { var value = object == null ? undefined2 : object[toKey(path[index])]; if (value === undefined2) { index = length; value = defaultValue; } object = isFunction(value) ? value.call(object) : value; } return object; } __name(result, "result"); function set(object, path, value) { return object == null ? object : baseSet(object, path, value); } __name(set, "set"); function setWith(object, path, value, customizer) { customizer = typeof customizer == "function" ? customizer : undefined2; return object == null ? object : baseSet(object, path, value, customizer); } __name(setWith, "setWith"); var toPairs = createToPairs(keys); var toPairsIn = createToPairs(keysIn); function transform(object, iteratee2, accumulator) { var isArr = isArray(object), isArrLike = isArr || isBuffer(object) || isTypedArray(object); iteratee2 = getIteratee(iteratee2, 4); if (accumulator == null) { var Ctor = object && object.constructor; if (isArrLike) { accumulator = isArr ? new Ctor() : []; } else if (isObject2(object)) { accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {}; } else { accumulator = {}; } } (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object2) { return iteratee2(accumulator, value, index, object2); }); return accumulator; } __name(transform, "transform"); function unset(object, path) { return object == null ? true : baseUnset(object, path); } __name(unset, "unset"); function update(object, path, updater) { return object == null ? object : baseUpdate(object, path, castFunction(updater)); } __name(update, "update"); function updateWith(object, path, updater, customizer) { customizer = typeof customizer == "function" ? customizer : undefined2; return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer); } __name(updateWith, "updateWith"); function values(object) { return object == null ? [] : baseValues(object, keys(object)); } __name(values, "values"); function valuesIn(object) { return object == null ? [] : baseValues(object, keysIn(object)); } __name(valuesIn, "valuesIn"); function clamp(number, lower, upper) { if (upper === undefined2) { upper = lower; lower = undefined2; } if (upper !== undefined2) { upper = toNumber(upper); upper = upper === upper ? upper : 0; } if (lower !== undefined2) { lower = toNumber(lower); lower = lower === lower ? lower : 0; } return baseClamp(toNumber(number), lower, upper); } __name(clamp, "clamp"); function inRange(number, start, end) { start = toFinite(start); if (end === undefined2) { end = start; start = 0; } else { end = toFinite(end); } number = toNumber(number); return baseInRange(number, start, end); } __name(inRange, "inRange"); function random(lower, upper, floating) { if (floating && typeof floating != "boolean" && isIterateeCall(lower, upper, floating)) { upper = floating = undefined2; } if (floating === undefined2) { if (typeof upper == "boolean") { floating = upper; upper = undefined2; } else if (typeof lower == "boolean") { floating = lower; lower = undefined2; } } if (lower === undefined2 && upper === undefined2) { lower = 0; upper = 1; } else { lower = toFinite(lower); if (upper === undefined2) { upper = lower; lower = 0; } else { upper = toFinite(upper); } } if (lower > upper) { var temp = lower; lower = upper; upper = temp; } if (floating || lower % 1 || upper % 1) { var rand = nativeRandom(); return nativeMin(lower + rand * (upper - lower + freeParseFloat("1e-" + ((rand + "").length - 1))), upper); } return baseRandom(lower, upper); } __name(random, "random"); var camelCase = createCompounder(function(result2, word, index) { word = word.toLowerCase(); return result2 + (index ? capitalize(word) : word); }); function capitalize(string) { return upperFirst(toString2(string).toLowerCase()); } __name(capitalize, "capitalize"); function deburr(string) { string = toString2(string); return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ""); } __name(deburr, "deburr"); function endsWith(string, target, position) { string = toString2(string); target = baseToString(target); var length = string.length; position = position === undefined2 ? length : baseClamp(toInteger(position), 0, length); var end = position; position -= target.length; return position >= 0 && string.slice(position, end) == target; } __name(endsWith, "endsWith"); function escape2(string) { string = toString2(string); return string && reHasUnescapedHtml.test(string) ? string.replace(reUnescapedHtml, escapeHtmlChar) : string; } __name(escape2, "escape"); function escapeRegExp(string) { string = toString2(string); return string && reHasRegExpChar.test(string) ? string.replace(reRegExpChar, "\\$&") : string; } __name(escapeRegExp, "escapeRegExp"); var kebabCase = createCompounder(function(result2, word, index) { return result2 + (index ? "-" : "") + word.toLowerCase(); }); var lowerCase = createCompounder(function(result2, word, index) { return result2 + (index ? " " : "") + word.toLowerCase(); }); var lowerFirst = createCaseFirst("toLowerCase"); function pad(string, length, chars) { string = toString2(string); length = toInteger(length); var strLength = length ? stringSize(string) : 0; if (!length || strLength >= length) { return string; } var mid = (length - strLength) / 2; return createPadding(nativeFloor(mid), chars) + string + createPadding(nativeCeil(mid), chars); } __name(pad, "pad"); function padEnd(string, length, chars) { string = toString2(string); length = toInteger(length); var strLength = length ? stringSize(string) : 0; return length && strLength < length ? string + createPadding(length - strLength, chars) : string; } __name(padEnd, "padEnd"); function padStart(string, length, chars) { string = toString2(string); length = toInteger(length); var strLength = length ? stringSize(string) : 0; return length && strLength < length ? createPadding(length - strLength, chars) + string : string; } __name(padStart, "padStart"); function parseInt2(string, radix, guard) { if (guard || radix == null) { radix = 0; } else if (radix) { radix = +radix; } return nativeParseInt(toString2(string).replace(reTrimStart, ""), radix || 0); } __name(parseInt2, "parseInt"); function repeat(string, n, guard) { if (guard ? isIterateeCall(string, n, guard) : n === undefined2) { n = 1; } else { n = toInteger(n); } return baseRepeat(toString2(string), n); } __name(repeat, "repeat"); function replace() { var args = arguments, string = toString2(args[0]); return args.length < 3 ? string : string.replace(args[1], args[2]); } __name(replace, "replace"); var snakeCase = createCompounder(function(result2, word, index) { return result2 + (index ? "_" : "") + word.toLowerCase(); }); function split(string, separator, limit) { if (limit && typeof limit != "number" && isIterateeCall(string, separator, limit)) { separator = limit = undefined2; } limit = limit === undefined2 ? MAX_ARRAY_LENGTH : limit >>> 0; if (!limit) { return []; } string = toString2(string); if (string && (typeof separator == "string" || separator != null && !isRegExp(separator))) { separator = baseToString(separator); if (!separator && hasUnicode(string)) { return castSlice(stringToArray(string), 0, limit); } } return string.split(separator, limit); } __name(split, "split"); var startCase = createCompounder(function(result2, word, index) { return result2 + (index ? " " : "") + upperFirst(word); }); function startsWith(string, target, position) { string = toString2(string); position = position == null ? 0 : baseClamp(toInteger(position), 0, string.length); target = baseToString(target); return string.slice(position, position + target.length) == target; } __name(startsWith, "startsWith"); function template(string, options, guard) { var settings = lodash.templateSettings; if (guard && isIterateeCall(string, options, guard)) { options = undefined2; } string = toString2(string); options = assignInWith({}, options, settings, customDefaultsAssignIn); var imports = assignInWith({}, options.imports, settings.imports, customDefaultsAssignIn), importsKeys = keys(imports), importsValues = baseValues(imports, importsKeys); var isEscaping, isEvaluating, index = 0, interpolate = options.interpolate || reNoMatch, source = "__p += '"; var reDelimiters = RegExp2( (options.escape || reNoMatch).source + "|" + interpolate.source + "|" + (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + "|" + (options.evaluate || reNoMatch).source + "|$", "g" ); var sourceURL = "//# sourceURL=" + (hasOwnProperty.call(options, "sourceURL") ? (options.sourceURL + "").replace(/\s/g, " ") : "lodash.templateSources[" + ++templateCounter + "]") + "\n"; string.replace(reDelimiters, function(match, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) { interpolateValue || (interpolateValue = esTemplateValue); source += string.slice(index, offset).replace(reUnescapedString, escapeStringChar); if (escapeValue) { isEscaping = true; source += "' +\n__e(" + escapeValue + ") +\n'"; } if (evaluateValue) { isEvaluating = true; source += "';\n" + evaluateValue + ";\n__p += '"; } if (interpolateValue) { source += "' +\n((__t = (" + interpolateValue + ")) == null ? '' : __t) +\n'"; } index = offset + match.length; return match; }); source += "';\n"; var variable = hasOwnProperty.call(options, "variable") && options.variable; if (!variable) { source = "with (obj) {\n" + source + "\n}\n"; } else if (reForbiddenIdentifierChars.test(variable)) { throw new Error2(INVALID_TEMPL_VAR_ERROR_TEXT); } source = (isEvaluating ? source.replace(reEmptyStringLeading, "") : source).replace(reEmptyStringMiddle, "$1").replace(reEmptyStringTrailing, "$1;"); source = "function(" + (variable || "obj") + ") {\n" + (variable ? "" : "obj || (obj = {});\n") + "var __t, __p = ''" + (isEscaping ? ", __e = _.escape" : "") + (isEvaluating ? ", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n" : ";\n") + source + "return __p\n}"; var result2 = attempt(function() { return Function2(importsKeys, sourceURL + "return " + source).apply(undefined2, importsValues); }); result2.source = source; if (isError2(result2)) { throw result2; } return result2; } __name(template, "template"); function toLower(value) { return toString2(value).toLowerCase(); } __name(toLower, "toLower"); function toUpper(value) { return toString2(value).toUpperCase(); } __name(toUpper, "toUpper"); function trim(string, chars, guard) { string = toString2(string); if (string && (guard || chars === undefined2)) { return baseTrim(string); } if (!string || !(chars = baseToString(chars))) { return string; } var strSymbols = stringToArray(string), chrSymbols = stringToArray(chars), start = charsStartIndex(strSymbols, chrSymbols), end = charsEndIndex(strSymbols, chrSymbols) + 1; return castSlice(strSymbols, start, end).join(""); } __name(trim, "trim"); function trimEnd(string, chars, guard) { string = toString2(string); if (string && (guard || chars === undefined2)) { return string.slice(0, trimmedEndIndex(string) + 1); } if (!string || !(chars = baseToString(chars))) { return string; } var strSymbols = stringToArray(string), end = charsEndIndex(strSymbols, stringToArray(chars)) + 1; return castSlice(strSymbols, 0, end).join(""); } __name(trimEnd, "trimEnd"); function trimStart(string, chars, guard) { string = toString2(string); if (string && (guard || chars === undefined2)) { return string.replace(reTrimStart, ""); } if (!string || !(chars = baseToString(chars))) { return string; } var strSymbols = stringToArray(string), start = charsStartIndex(strSymbols, stringToArray(chars)); return castSlice(strSymbols, start).join(""); } __name(trimStart, "trimStart"); function truncate(string, options) { var length = DEFAULT_TRUNC_LENGTH, omission = DEFAULT_TRUNC_OMISSION; if (isObject2(options)) { var separator = "separator" in options ? options.separator : separator; length = "length" in options ? toInteger(options.length) : length; omission = "omission" in options ? baseToString(options.omission) : omission; } string = toString2(string); var strLength = string.length; if (hasUnicode(string)) { var strSymbols = stringToArray(string); strLength = strSymbols.length; } if (length >= strLength) { return string; } var end = length - stringSize(omission); if (end < 1) { return omission; } var result2 = strSymbols ? castSlice(strSymbols, 0, end).join("") : string.slice(0, end); if (separator === undefined2) { return result2 + omission; } if (strSymbols) { end += result2.length - end; } if (isRegExp(separator)) { if (string.slice(end).search(separator)) { var match, substring = result2; if (!separator.global) { separator = RegExp2(separator.source, toString2(reFlags.exec(separator)) + "g"); } separator.lastIndex = 0; while (match = separator.exec(substring)) { var newEnd = match.index; } result2 = result2.slice(0, newEnd === undefined2 ? end : newEnd); } } else if (string.indexOf(baseToString(separator), end) != end) { var index = result2.lastIndexOf(separator); if (index > -1) { result2 = result2.slice(0, index); } } return result2 + omission; } __name(truncate, "truncate"); function unescape2(string) { string = toString2(string); return string && reHasEscapedHtml.test(string) ? string.replace(reEscapedHtml, unescapeHtmlChar) : string; } __name(unescape2, "unescape"); var upperCase = createCompounder(function(result2, word, index) { return result2 + (index ? " " : "") + word.toUpperCase(); }); var upperFirst = createCaseFirst("toUpperCase"); function words(string, pattern, guard) { string = toString2(string); pattern = guard ? undefined2 : pattern; if (pattern === undefined2) { return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string); } return string.match(pattern) || []; } __name(words, "words"); var attempt = baseRest(function(func, args) { try { return apply(func, undefined2, args); } catch (e) { return isError2(e) ? e : new Error2(e); } }); var bindAll = flatRest(function(object, methodNames) { arrayEach(methodNames, function(key) { key = toKey(key); baseAssignValue(object, key, bind(object[key], object)); }); return object; }); function cond(pairs) { var length = pairs == null ? 0 : pairs.length, toIteratee = getIteratee(); pairs = !length ? [] : arrayMap(pairs, function(pair) { if (typeof pair[1] != "function") { throw new TypeError2(FUNC_ERROR_TEXT); } return [toIteratee(pair[0]), pair[1]]; }); return baseRest(function(args) { var index = -1; while (++index < length) { var pair = pairs[index]; if (apply(pair[0], this, args)) { return apply(pair[1], this, args); } } }); } __name(cond, "cond"); function conforms(source) { return baseConforms(baseClone(source, CLONE_DEEP_FLAG)); } __name(conforms, "conforms"); function constant(value) { return function() { return value; }; } __name(constant, "constant"); function defaultTo(value, defaultValue) { return value == null || value !== value ? defaultValue : value; } __name(defaultTo, "defaultTo"); var flow = createFlow(); var flowRight = createFlow(true); function identity(value) { return value; } __name(identity, "identity"); function iteratee(func) { return baseIteratee(typeof func == "function" ? func : baseClone(func, CLONE_DEEP_FLAG)); } __name(iteratee, "iteratee"); function matches(source) { return baseMatches(baseClone(source, CLONE_DEEP_FLAG)); } __name(matches, "matches"); function matchesProperty(path, srcValue) { return baseMatchesProperty(path, baseClone(srcValue, CLONE_DEEP_FLAG)); } __name(matchesProperty, "matchesProperty"); var method = baseRest(function(path, args) { return function(object) { return baseInvoke(object, path, args); }; }); var methodOf = baseRest(function(object, args) { return function(path) { return baseInvoke(object, path, args); }; }); function mixin(object, source, options) { var props = keys(source), methodNames = baseFunctions(source, props); if (options == null && !(isObject2(source) && (methodNames.length || !props.length))) { options = source; source = object; object = this; methodNames = baseFunctions(source, keys(source)); } var chain2 = !(isObject2(options) && "chain" in options) || !!options.chain, isFunc = isFunction(object); arrayEach(methodNames, function(methodName) { var func = source[methodName]; object[methodName] = func; if (isFunc) { object.prototype[methodName] = function() { var chainAll = this.__chain__; if (chain2 || chainAll) { var result2 = object(this.__wrapped__), actions = result2.__actions__ = copyArray(this.__actions__); actions.push({ "func": func, "args": arguments, "thisArg": object }); result2.__chain__ = chainAll; return result2; } return func.apply(object, arrayPush([this.value()], arguments)); }; } }); return object; } __name(mixin, "mixin"); function noConflict() { if (root._ === this) { root._ = oldDash; } return this; } __name(noConflict, "noConflict"); function noop() { } __name(noop, "noop"); function nthArg(n) { n = toInteger(n); return baseRest(function(args) { return baseNth(args, n); }); } __name(nthArg, "nthArg"); var over = createOver(arrayMap); var overEvery = createOver(arrayEvery); var overSome = createOver(arraySome); function property(path) { return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path); } __name(property, "property"); function propertyOf(object) { return function(path) { return object == null ? undefined2 : baseGet(object, path); }; } __name(propertyOf, "propertyOf"); var range = createRange(); var rangeRight = createRange(true); function stubArray() { return []; } __name(stubArray, "stubArray"); function stubFalse() { return false; } __name(stubFalse, "stubFalse"); function stubObject() { return {}; } __name(stubObject, "stubObject"); function stubString() { return ""; } __name(stubString, "stubString"); function stubTrue() { return true; } __name(stubTrue, "stubTrue"); function times(n, iteratee2) { n = toInteger(n); if (n < 1 || n > MAX_SAFE_INTEGER) { return []; } var index = MAX_ARRAY_LENGTH, length = nativeMin(n, MAX_ARRAY_LENGTH); iteratee2 = getIteratee(iteratee2); n -= MAX_ARRAY_LENGTH; var result2 = baseTimes(length, iteratee2); while (++index < n) { iteratee2(index); } return result2; } __name(times, "times"); function toPath(value) { if (isArray(value)) { return arrayMap(value, toKey); } return isSymbol(value) ? [value] : copyArray(stringToPath(toString2(value))); } __name(toPath, "toPath"); function uniqueId(prefix) { var id = ++idCounter; return toString2(prefix) + id; } __name(uniqueId, "uniqueId"); var add = createMathOperation(function(augend, addend) { return augend + addend; }, 0); var ceil = createRound("ceil"); var divide = createMathOperation(function(dividend, divisor) { return dividend / divisor; }, 1); var floor = createRound("floor"); function max(array) { return array && array.length ? baseExtremum(array, identity, baseGt) : undefined2; } __name(max, "max"); function maxBy(array, iteratee2) { return array && array.length ? baseExtremum(array, getIteratee(iteratee2, 2), baseGt) : undefined2; } __name(maxBy, "maxBy"); function mean(array) { return baseMean(array, identity); } __name(mean, "mean"); function meanBy(array, iteratee2) { return baseMean(array, getIteratee(iteratee2, 2)); } __name(meanBy, "meanBy"); function min(array) { return array && array.length ? baseExtremum(array, identity, baseLt) : undefined2; } __name(min, "min"); function minBy(array, iteratee2) { return array && array.length ? baseExtremum(array, getIteratee(iteratee2, 2), baseLt) : undefined2; } __name(minBy, "minBy"); var multiply = createMathOperation(function(multiplier, multiplicand) { return multiplier * multiplicand; }, 1); var round = createRound("round"); var subtract = createMathOperation(function(minuend, subtrahend) { return minuend - subtrahend; }, 0); function sum(array) { return array && array.length ? baseSum(array, identity) : 0; } __name(sum, "sum"); function sumBy(array, iteratee2) { return array && array.length ? baseSum(array, getIteratee(iteratee2, 2)) : 0; } __name(sumBy, "sumBy"); lodash.after = after; lodash.ary = ary; lodash.assign = assign; lodash.assignIn = assignIn; lodash.assignInWith = assignInWith; lodash.assignWith = assignWith; lodash.at = at; lodash.before = before; lodash.bind = bind; lodash.bindAll = bindAll; lodash.bindKey = bindKey; lodash.castArray = castArray; lodash.chain = chain; lodash.chunk = chunk; lodash.compact = compact; lodash.concat = concat; lodash.cond = cond; lodash.conforms = conforms; lodash.constant = constant; lodash.countBy = countBy; lodash.create = create; lodash.curry = curry; lodash.curryRight = curryRight; lodash.debounce = debounce; lodash.defaults = defaults; lodash.defaultsDeep = defaultsDeep; lodash.defer = defer; lodash.delay = delay; lodash.difference = difference; lodash.differenceBy = differenceBy; lodash.differenceWith = differenceWith; lodash.drop = drop; lodash.dropRight = dropRight; lodash.dropRightWhile = dropRightWhile; lodash.dropWhile = dropWhile; lodash.fill = fill; lodash.filter = filter; lodash.flatMap = flatMap; lodash.flatMapDeep = flatMapDeep; lodash.flatMapDepth = flatMapDepth; lodash.flatten = flatten; lodash.flattenDeep = flattenDeep; lodash.flattenDepth = flattenDepth; lodash.flip = flip; lodash.flow = flow; lodash.flowRight = flowRight; lodash.fromPairs = fromPairs; lodash.functions = functions; lodash.functionsIn = functionsIn; lodash.groupBy = groupBy; lodash.initial = initial; lodash.intersection = intersection; lodash.intersectionBy = intersectionBy; lodash.intersectionWith = intersectionWith; lodash.invert = invert; lodash.invertBy = invertBy; lodash.invokeMap = invokeMap; lodash.iteratee = iteratee; lodash.keyBy = keyBy; lodash.keys = keys; lodash.keysIn = keysIn; lodash.map = map; lodash.mapKeys = mapKeys; lodash.mapValues = mapValues; lodash.matches = matches; lodash.matchesProperty = matchesProperty; lodash.memoize = memoize; lodash.merge = merge; lodash.mergeWith = mergeWith; lodash.method = method; lodash.methodOf = methodOf; lodash.mixin = mixin; lodash.negate = negate; lodash.nthArg = nthArg; lodash.omit = omit; lodash.omitBy = omitBy; lodash.once = once; lodash.orderBy = orderBy; lodash.over = over; lodash.overArgs = overArgs; lodash.overEvery = overEvery; lodash.overSome = overSome; lodash.partial = partial; lodash.partialRight = partialRight; lodash.partition = partition; lodash.pick = pick; lodash.pickBy = pickBy; lodash.property = property; lodash.propertyOf = propertyOf; lodash.pull = pull; lodash.pullAll = pullAll; lodash.pullAllBy = pullAllBy; lodash.pullAllWith = pullAllWith; lodash.pullAt = pullAt; lodash.range = range; lodash.rangeRight = rangeRight; lodash.rearg = rearg; lodash.reject = reject; lodash.remove = remove; lodash.rest = rest; lodash.reverse = reverse; lodash.sampleSize = sampleSize; lodash.set = set; lodash.setWith = setWith; lodash.shuffle = shuffle; lodash.slice = slice; lodash.sortBy = sortBy; lodash.sortedUniq = sortedUniq; lodash.sortedUniqBy = sortedUniqBy; lodash.split = split; lodash.spread = spread; lodash.tail = tail; lodash.take = take; lodash.takeRight = takeRight; lodash.takeRightWhile = takeRightWhile; lodash.takeWhile = takeWhile; lodash.tap = tap; lodash.throttle = throttle; lodash.thru = thru; lodash.toArray = toArray; lodash.toPairs = toPairs; lodash.toPairsIn = toPairsIn; lodash.toPath = toPath; lodash.toPlainObject = toPlainObject; lodash.transform = transform; lodash.unary = unary; lodash.union = union; lodash.unionBy = unionBy; lodash.unionWith = unionWith; lodash.uniq = uniq; lodash.uniqBy = uniqBy; lodash.uniqWith = uniqWith; lodash.unset = unset; lodash.unzip = unzip; lodash.unzipWith = unzipWith; lodash.update = update; lodash.updateWith = updateWith; lodash.values = values; lodash.valuesIn = valuesIn; lodash.without = without; lodash.words = words; lodash.wrap = wrap; lodash.xor = xor; lodash.xorBy = xorBy; lodash.xorWith = xorWith; lodash.zip = zip; lodash.zipObject = zipObject; lodash.zipObjectDeep = zipObjectDeep; lodash.zipWith = zipWith; lodash.entries = toPairs; lodash.entriesIn = toPairsIn; lodash.extend = assignIn; lodash.extendWith = assignInWith; mixin(lodash, lodash); lodash.add = add; lodash.attempt = attempt; lodash.camelCase = camelCase; lodash.capitalize = capitalize; lodash.ceil = ceil; lodash.clamp = clamp; lodash.clone = clone; lodash.cloneDeep = cloneDeep; lodash.cloneDeepWith = cloneDeepWith; lodash.cloneWith = cloneWith; lodash.conformsTo = conformsTo; lodash.deburr = deburr; lodash.defaultTo = defaultTo; lodash.divide = divide; lodash.endsWith = endsWith; lodash.eq = eq; lodash.escape = escape2; lodash.escapeRegExp = escapeRegExp; lodash.every = every; lodash.find = find; lodash.findIndex = findIndex; lodash.findKey = findKey; lodash.findLast = findLast; lodash.findLastIndex = findLastIndex; lodash.findLastKey = findLastKey; lodash.floor = floor; lodash.forEach = forEach; lodash.forEachRight = forEachRight; lodash.forIn = forIn; lodash.forInRight = forInRight; lodash.forOwn = forOwn; lodash.forOwnRight = forOwnRight; lodash.get = get; lodash.gt = gt; lodash.gte = gte; lodash.has = has; lodash.hasIn = hasIn; lodash.head = head; lodash.identity = identity; lodash.includes = includes; lodash.indexOf = indexOf; lodash.inRange = inRange; lodash.invoke = invoke; lodash.isArguments = isArguments; lodash.isArray = isArray; lodash.isArrayBuffer = isArrayBuffer; lodash.isArrayLike = isArrayLike; lodash.isArrayLikeObject = isArrayLikeObject; lodash.isBoolean = isBoolean; lodash.isBuffer = isBuffer; lodash.isDate = isDate; lodash.isElement = isElement; lodash.isEmpty = isEmpty; lodash.isEqual = isEqual; lodash.isEqualWith = isEqualWith; lodash.isError = isError2; lodash.isFinite = isFinite2; lodash.isFunction = isFunction; lodash.isInteger = isInteger; lodash.isLength = isLength; lodash.isMap = isMap; lodash.isMatch = isMatch; lodash.isMatchWith = isMatchWith; lodash.isNaN = isNaN2; lodash.isNative = isNative; lodash.isNil = isNil; lodash.isNull = isNull; lodash.isNumber = isNumber; lodash.isObject = isObject2; lodash.isObjectLike = isObjectLike; lodash.isPlainObject = isPlainObject; lodash.isRegExp = isRegExp; lodash.isSafeInteger = isSafeInteger; lodash.isSet = isSet; lodash.isString = isString; lodash.isSymbol = isSymbol; lodash.isTypedArray = isTypedArray; lodash.isUndefined = isUndefined; lodash.isWeakMap = isWeakMap; lodash.isWeakSet = isWeakSet; lodash.join = join; lodash.kebabCase = kebabCase; lodash.last = last; lodash.lastIndexOf = lastIndexOf; lodash.lowerCase = lowerCase; lodash.lowerFirst = lowerFirst; lodash.lt = lt; lodash.lte = lte; lodash.max = max; lodash.maxBy = maxBy; lodash.mean = mean; lodash.meanBy = meanBy; lodash.min = min; lodash.minBy = minBy; lodash.stubArray = stubArray; lodash.stubFalse = stubFalse; lodash.stubObject = stubObject; lodash.stubString = stubString; lodash.stubTrue = stubTrue; lodash.multiply = multiply; lodash.nth = nth; lodash.noConflict = noConflict; lodash.noop = noop; lodash.now = now; lodash.pad = pad; lodash.padEnd = padEnd; lodash.padStart = padStart; lodash.parseInt = parseInt2; lodash.random = random; lodash.reduce = reduce; lodash.reduceRight = reduceRight; lodash.repeat = repeat; lodash.replace = replace; lodash.result = result; lodash.round = round; lodash.runInContext = runInContext2; lodash.sample = sample; lodash.size = size; lodash.snakeCase = snakeCase; lodash.some = some; lodash.sortedIndex = sortedIndex; lodash.sortedIndexBy = sortedIndexBy; lodash.sortedIndexOf = sortedIndexOf; lodash.sortedLastIndex = sortedLastIndex; lodash.sortedLastIndexBy = sortedLastIndexBy; lodash.sortedLastIndexOf = sortedLastIndexOf; lodash.startCase = startCase; lodash.startsWith = startsWith; lodash.subtract = subtract; lodash.sum = sum; lodash.sumBy = sumBy; lodash.template = template; lodash.times = times; lodash.toFinite = toFinite; lodash.toInteger = toInteger; lodash.toLength = toLength; lodash.toLower = toLower; lodash.toNumber = toNumber; lodash.toSafeInteger = toSafeInteger; lodash.toString = toString2; lodash.toUpper = toUpper; lodash.trim = trim; lodash.trimEnd = trimEnd; lodash.trimStart = trimStart; lodash.truncate = truncate; lodash.unescape = unescape2; lodash.uniqueId = uniqueId; lodash.upperCase = upperCase; lodash.upperFirst = upperFirst; lodash.each = forEach; lodash.eachRight = forEachRight; lodash.first = head; mixin(lodash, (function() { var source = {}; baseForOwn(lodash, function(func, methodName) { if (!hasOwnProperty.call(lodash.prototype, methodName)) { source[methodName] = func; } }); return source; })(), { "chain": false }); lodash.VERSION = VERSION; arrayEach(["bind", "bindKey", "curry", "curryRight", "partial", "partialRight"], function(methodName) { lodash[methodName].placeholder = lodash; }); arrayEach(["drop", "take"], function(methodName, index) { LazyWrapper.prototype[methodName] = function(n) { n = n === undefined2 ? 1 : nativeMax(toInteger(n), 0); var result2 = this.__filtered__ && !index ? new LazyWrapper(this) : this.clone(); if (result2.__filtered__) { result2.__takeCount__ = nativeMin(n, result2.__takeCount__); } else { result2.__views__.push({ "size": nativeMin(n, MAX_ARRAY_LENGTH), "type": methodName + (result2.__dir__ < 0 ? "Right" : "") }); } return result2; }; LazyWrapper.prototype[methodName + "Right"] = function(n) { return this.reverse()[methodName](n).reverse(); }; }); arrayEach(["filter", "map", "takeWhile"], function(methodName, index) { var type = index + 1, isFilter = type == LAZY_FILTER_FLAG || type == LAZY_WHILE_FLAG; LazyWrapper.prototype[methodName] = function(iteratee2) { var result2 = this.clone(); result2.__iteratees__.push({ "iteratee": getIteratee(iteratee2, 3), "type": type }); result2.__filtered__ = result2.__filtered__ || isFilter; return result2; }; }); arrayEach(["head", "last"], function(methodName, index) { var takeName = "take" + (index ? "Right" : ""); LazyWrapper.prototype[methodName] = function() { return this[takeName](1).value()[0]; }; }); arrayEach(["initial", "tail"], function(methodName, index) { var dropName = "drop" + (index ? "" : "Right"); LazyWrapper.prototype[methodName] = function() { return this.__filtered__ ? new LazyWrapper(this) : this[dropName](1); }; }); LazyWrapper.prototype.compact = function() { return this.filter(identity); }; LazyWrapper.prototype.find = function(predicate) { return this.filter(predicate).head(); }; LazyWrapper.prototype.findLast = function(predicate) { return this.reverse().find(predicate); }; LazyWrapper.prototype.invokeMap = baseRest(function(path, args) { if (typeof path == "function") { return new LazyWrapper(this); } return this.map(function(value) { return baseInvoke(value, path, args); }); }); LazyWrapper.prototype.reject = function(predicate) { return this.filter(negate(getIteratee(predicate))); }; LazyWrapper.prototype.slice = function(start, end) { start = toInteger(start); var result2 = this; if (result2.__filtered__ && (start > 0 || end < 0)) { return new LazyWrapper(result2); } if (start < 0) { result2 = result2.takeRight(-start); } else if (start) { result2 = result2.drop(start); } if (end !== undefined2) { end = toInteger(end); result2 = end < 0 ? result2.dropRight(-end) : result2.take(end - start); } return result2; }; LazyWrapper.prototype.takeRightWhile = function(predicate) { return this.reverse().takeWhile(predicate).reverse(); }; LazyWrapper.prototype.toArray = function() { return this.take(MAX_ARRAY_LENGTH); }; baseForOwn(LazyWrapper.prototype, function(func, methodName) { var checkIteratee = /^(?:filter|find|map|reject)|While$/.test(methodName), isTaker = /^(?:head|last)$/.test(methodName), lodashFunc = lodash[isTaker ? "take" + (methodName == "last" ? "Right" : "") : methodName], retUnwrapped = isTaker || /^find/.test(methodName); if (!lodashFunc) { return; } lodash.prototype[methodName] = function() { var value = this.__wrapped__, args = isTaker ? [1] : arguments, isLazy = value instanceof LazyWrapper, iteratee2 = args[0], useLazy = isLazy || isArray(value); var interceptor = /* @__PURE__ */ __name(function(value2) { var result3 = lodashFunc.apply(lodash, arrayPush([value2], args)); return isTaker && chainAll ? result3[0] : result3; }, "interceptor"); if (useLazy && checkIteratee && typeof iteratee2 == "function" && iteratee2.length != 1) { isLazy = useLazy = false; } var chainAll = this.__chain__, isHybrid = !!this.__actions__.length, isUnwrapped = retUnwrapped && !chainAll, onlyLazy = isLazy && !isHybrid; if (!retUnwrapped && useLazy) { value = onlyLazy ? value : new LazyWrapper(this); var result2 = func.apply(value, args); result2.__actions__.push({ "func": thru, "args": [interceptor], "thisArg": undefined2 }); return new LodashWrapper(result2, chainAll); } if (isUnwrapped && onlyLazy) { return func.apply(this, args); } result2 = this.thru(interceptor); return isUnwrapped ? isTaker ? result2.value()[0] : result2.value() : result2; }; }); arrayEach(["pop", "push", "shift", "sort", "splice", "unshift"], function(methodName) { var func = arrayProto[methodName], chainName = /^(?:push|sort|unshift)$/.test(methodName) ? "tap" : "thru", retUnwrapped = /^(?:pop|shift)$/.test(methodName); lodash.prototype[methodName] = function() { var args = arguments; if (retUnwrapped && !this.__chain__) { var value = this.value(); return func.apply(isArray(value) ? value : [], args); } return this[chainName](function(value2) { return func.apply(isArray(value2) ? value2 : [], args); }); }; }); baseForOwn(LazyWrapper.prototype, function(func, methodName) { var lodashFunc = lodash[methodName]; if (lodashFunc) { var key = lodashFunc.name + ""; if (!hasOwnProperty.call(realNames, key)) { realNames[key] = []; } realNames[key].push({ "name": methodName, "func": lodashFunc }); } }); realNames[createHybrid(undefined2, WRAP_BIND_KEY_FLAG).name] = [{ "name": "wrapper", "func": undefined2 }]; LazyWrapper.prototype.clone = lazyClone; LazyWrapper.prototype.reverse = lazyReverse; LazyWrapper.prototype.value = lazyValue; lodash.prototype.at = wrapperAt; lodash.prototype.chain = wrapperChain; lodash.prototype.commit = wrapperCommit; lodash.prototype.next = wrapperNext; lodash.prototype.plant = wrapperPlant; lodash.prototype.reverse = wrapperReverse; lodash.prototype.toJSON = lodash.prototype.valueOf = lodash.prototype.value = wrapperValue; lodash.prototype.first = lodash.prototype.head; if (symIterator) { lodash.prototype[symIterator] = wrapperToIterator; } return lodash; }), "runInContext"); var _2 = runInContext(); if (typeof define == "function" && typeof define.amd == "object" && define.amd) { root._ = _2; define(function() { return _2; }); } else if (freeModule) { (freeModule.exports = _2)._ = _2; freeExports._ = _2; } else { root._ = _2; } }).call(exports2); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/constants.js var require_constants8 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DECORATORS = exports2.DECORATORS_PREFIX = void 0; exports2.DECORATORS_PREFIX = "swagger"; exports2.DECORATORS = { API_OPERATION: `${exports2.DECORATORS_PREFIX}/apiOperation`, API_RESPONSE: `${exports2.DECORATORS_PREFIX}/apiResponse`, API_PRODUCES: `${exports2.DECORATORS_PREFIX}/apiProduces`, API_CONSUMES: `${exports2.DECORATORS_PREFIX}/apiConsumes`, API_TAGS: `${exports2.DECORATORS_PREFIX}/apiUseTags`, API_PARAMETERS: `${exports2.DECORATORS_PREFIX}/apiParameters`, API_HEADERS: `${exports2.DECORATORS_PREFIX}/apiHeaders`, API_MODEL_PROPERTIES: `${exports2.DECORATORS_PREFIX}/apiModelProperties`, API_MODEL_PROPERTIES_ARRAY: `${exports2.DECORATORS_PREFIX}/apiModelPropertiesArray`, API_SECURITY: `${exports2.DECORATORS_PREFIX}/apiSecurity`, API_EXCLUDE_ENDPOINT: `${exports2.DECORATORS_PREFIX}/apiExcludeEndpoint`, API_EXCLUDE_CONTROLLER: `${exports2.DECORATORS_PREFIX}/apiExcludeController`, API_EXTRA_MODELS: `${exports2.DECORATORS_PREFIX}/apiExtraModels`, API_EXTENSION: `${exports2.DECORATORS_PREFIX}/apiExtension` }; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/extend-metadata.util.js var require_extend_metadata_util2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/extend-metadata.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.extendMetadata = void 0; require_Reflect(); function extendMetadata(metadata, metakey, target) { const existingMetadata = Reflect.getMetadata(metakey, target); if (!existingMetadata) { return metadata; } return existingMetadata.concat(metadata); } __name(extendMetadata, "extendMetadata"); exports2.extendMetadata = extendMetadata; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-security.decorator.js var require_api_security_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-security.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiSecurity = void 0; var lodash_1 = require_lodash(); var constants_1 = require_constants8(); var extend_metadata_util_1 = require_extend_metadata_util2(); function ApiSecurity(name, requirements = []) { let metadata; if ((0, lodash_1.isString)(name)) { metadata = [{ [name]: requirements }]; } else { metadata = [name]; } return (target, key, descriptor) => { if (descriptor) { metadata = (0, extend_metadata_util_1.extendMetadata)(metadata, constants_1.DECORATORS.API_SECURITY, descriptor.value); Reflect.defineMetadata(constants_1.DECORATORS.API_SECURITY, metadata, descriptor.value); return descriptor; } metadata = (0, extend_metadata_util_1.extendMetadata)(metadata, constants_1.DECORATORS.API_SECURITY, target); Reflect.defineMetadata(constants_1.DECORATORS.API_SECURITY, metadata, target); return target; }; } __name(ApiSecurity, "ApiSecurity"); exports2.ApiSecurity = ApiSecurity; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-basic.decorator.js var require_api_basic_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-basic.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiBasicAuth = void 0; var api_security_decorator_1 = require_api_security_decorator(); function ApiBasicAuth(name = "basic") { return (0, api_security_decorator_1.ApiSecurity)(name); } __name(ApiBasicAuth, "ApiBasicAuth"); exports2.ApiBasicAuth = ApiBasicAuth; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-bearer.decorator.js var require_api_bearer_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-bearer.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiBearerAuth = void 0; var api_security_decorator_1 = require_api_security_decorator(); function ApiBearerAuth(name = "bearer") { return (0, api_security_decorator_1.ApiSecurity)(name); } __name(ApiBearerAuth, "ApiBearerAuth"); exports2.ApiBearerAuth = ApiBearerAuth; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/enum.utils.js var require_enum_utils = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/enum.utils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isEnumMetadata = exports2.isEnumDefined = exports2.isEnumArray = exports2.addEnumSchema = exports2.addEnumArraySchema = exports2.getEnumType = exports2.getEnumValues = void 0; var lodash_1 = require_lodash(); function getEnumValues(enumType) { if (typeof enumType === "function") { return getEnumValues(enumType()); } if (Array.isArray(enumType)) { return enumType; } if (typeof enumType !== "object") { return []; } const numericValues = Object.values(enumType).filter((value) => typeof value === "number").map((value) => value.toString()); return Object.keys(enumType).filter((key) => !numericValues.includes(key)).map((key) => enumType[key]); } __name(getEnumValues, "getEnumValues"); exports2.getEnumValues = getEnumValues; function getEnumType(values) { const hasString = values.filter(lodash_1.isString).length > 0; return hasString ? "string" : "number"; } __name(getEnumType, "getEnumType"); exports2.getEnumType = getEnumType; function addEnumArraySchema(paramDefinition, decoratorOptions) { const paramSchema = paramDefinition.schema || {}; paramDefinition.schema = paramSchema; paramSchema.type = "array"; delete paramDefinition.isArray; const enumValues = getEnumValues(decoratorOptions.enum); paramSchema.items = { type: getEnumType(enumValues), enum: enumValues }; if (decoratorOptions.enumName) { paramDefinition.enumName = decoratorOptions.enumName; } } __name(addEnumArraySchema, "addEnumArraySchema"); exports2.addEnumArraySchema = addEnumArraySchema; function addEnumSchema(paramDefinition, decoratorOptions) { const paramSchema = paramDefinition.schema || {}; const enumValues = getEnumValues(decoratorOptions.enum); paramDefinition.schema = paramSchema; paramSchema.enum = enumValues; paramSchema.type = getEnumType(enumValues); if (decoratorOptions.enumName) { paramDefinition.enumName = decoratorOptions.enumName; } } __name(addEnumSchema, "addEnumSchema"); exports2.addEnumSchema = addEnumSchema; var isEnumArray = /* @__PURE__ */ __name((obj2) => obj2.isArray && obj2.enum, "isEnumArray"); exports2.isEnumArray = isEnumArray; var isEnumDefined = /* @__PURE__ */ __name((obj2) => obj2.enum, "isEnumDefined"); exports2.isEnumDefined = isEnumDefined; var isEnumMetadata = /* @__PURE__ */ __name((metadata) => { var _a; return metadata.enum || metadata.isArray && ((_a = metadata.items) === null || _a === void 0 ? void 0 : _a["enum"]); }, "isEnumMetadata"); exports2.isEnumMetadata = isEnumMetadata; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/plugin/plugin-constants.js var require_plugin_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/plugin/plugin-constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.METADATA_FACTORY_NAME = exports2.OPENAPI_PACKAGE_NAME = exports2.OPENAPI_NAMESPACE = void 0; exports2.OPENAPI_NAMESPACE = "openapi"; exports2.OPENAPI_PACKAGE_NAME = "@nestjs/swagger"; exports2.METADATA_FACTORY_NAME = "_OPENAPI_METADATA_FACTORY"; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/helpers.js var require_helpers2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/helpers.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getTypeIsArrayTuple = exports2.createParamDecorator = exports2.createMixedDecorator = exports2.createPropertyDecorator = exports2.createClassDecorator = exports2.createMethodDecorator = void 0; var lodash_1 = require_lodash(); var constants_1 = require_constants8(); var plugin_constants_1 = require_plugin_constants(); var constants_2 = require_constants(); var shared_utils_1 = require_shared_utils(); function createMethodDecorator(metakey, metadata, { overrideExisting } = { overrideExisting: true }) { return (target, key, descriptor) => { if (typeof metadata === "object") { const prevValue = Reflect.getMetadata(metakey, descriptor.value); if (prevValue && !overrideExisting) { return descriptor; } Reflect.defineMetadata(metakey, Object.assign(Object.assign({}, prevValue), metadata), descriptor.value); return descriptor; } Reflect.defineMetadata(metakey, metadata, descriptor.value); return descriptor; }; } __name(createMethodDecorator, "createMethodDecorator"); exports2.createMethodDecorator = createMethodDecorator; function createClassDecorator(metakey, metadata = []) { return (target) => { const prevValue = Reflect.getMetadata(metakey, target) || []; Reflect.defineMetadata(metakey, [...prevValue, ...metadata], target); return target; }; } __name(createClassDecorator, "createClassDecorator"); exports2.createClassDecorator = createClassDecorator; function createPropertyDecorator(metakey, metadata, overrideExisting = true) { return (target, propertyKey) => { var _a, _b, _c, _d; const properties = Reflect.getMetadata(constants_1.DECORATORS.API_MODEL_PROPERTIES_ARRAY, target) || []; const key = `:${propertyKey}`; if (!properties.includes(key)) { Reflect.defineMetadata(constants_1.DECORATORS.API_MODEL_PROPERTIES_ARRAY, [...properties, `:${propertyKey}`], target); } const existingMetadata = Reflect.getMetadata(metakey, target, propertyKey); if (existingMetadata) { const newMetadata = (0, lodash_1.pickBy)(metadata, (0, lodash_1.negate)(lodash_1.isUndefined)); const metadataToSave = overrideExisting ? Object.assign(Object.assign({}, existingMetadata), newMetadata) : Object.assign(Object.assign({}, newMetadata), existingMetadata); Reflect.defineMetadata(metakey, metadataToSave, target, propertyKey); } else { const type = (_d = (_c = (_b = (_a = target === null || target === void 0 ? void 0 : target.constructor) === null || _a === void 0 ? void 0 : _a[plugin_constants_1.METADATA_FACTORY_NAME]) === null || _b === void 0 ? void 0 : _b.call(_a)[propertyKey]) === null || _c === void 0 ? void 0 : _c.type) !== null && _d !== void 0 ? _d : Reflect.getMetadata("design:type", target, propertyKey); Reflect.defineMetadata(metakey, Object.assign({ type }, (0, lodash_1.pickBy)(metadata, (0, lodash_1.negate)(lodash_1.isUndefined))), target, propertyKey); } }; } __name(createPropertyDecorator, "createPropertyDecorator"); exports2.createPropertyDecorator = createPropertyDecorator; function createMixedDecorator(metakey, metadata) { return (target, key, descriptor) => { if (descriptor) { let metadatas; if (Array.isArray(metadata)) { const previousMetadata = Reflect.getMetadata(metakey, descriptor.value) || []; metadatas = [...previousMetadata, ...metadata]; } else { const previousMetadata = Reflect.getMetadata(metakey, descriptor.value) || {}; metadatas = Object.assign(Object.assign({}, previousMetadata), metadata); } Reflect.defineMetadata(metakey, metadatas, descriptor.value); return descriptor; } Reflect.defineMetadata(metakey, metadata, target); return target; }; } __name(createMixedDecorator, "createMixedDecorator"); exports2.createMixedDecorator = createMixedDecorator; function createParamDecorator(metadata, initial) { return (target, key, descriptor) => { const paramOptions = Object.assign(Object.assign({}, initial), (0, lodash_1.pickBy)(metadata, (0, lodash_1.negate)(lodash_1.isUndefined))); if (descriptor) { const parameters = Reflect.getMetadata(constants_1.DECORATORS.API_PARAMETERS, descriptor.value) || []; Reflect.defineMetadata(constants_1.DECORATORS.API_PARAMETERS, [...parameters, paramOptions], descriptor.value); return descriptor; } if (typeof target === "object") { return target; } const propertyKeys = Object.getOwnPropertyNames(target.prototype); for (const propertyKey of propertyKeys) { if ((0, shared_utils_1.isConstructor)(propertyKey)) { continue; } const methodDescriptor = Object.getOwnPropertyDescriptor(target.prototype, propertyKey); if (!methodDescriptor) { continue; } const isApiMethod = Reflect.hasMetadata(constants_2.METHOD_METADATA, methodDescriptor.value); if (!isApiMethod) { continue; } const parameters = Reflect.getMetadata(constants_1.DECORATORS.API_PARAMETERS, methodDescriptor.value) || []; Reflect.defineMetadata(constants_1.DECORATORS.API_PARAMETERS, [...parameters, paramOptions], methodDescriptor.value); } }; } __name(createParamDecorator, "createParamDecorator"); exports2.createParamDecorator = createParamDecorator; function getTypeIsArrayTuple(input, isArrayFlag) { if (!input) { return [input, isArrayFlag]; } if (isArrayFlag) { return [input, isArrayFlag]; } const isInputArray = (0, lodash_1.isArray)(input); const type = isInputArray ? input[0] : input; return [type, isInputArray]; } __name(getTypeIsArrayTuple, "getTypeIsArrayTuple"); exports2.getTypeIsArrayTuple = getTypeIsArrayTuple; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-body.decorator.js var require_api_body_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-body.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiBody = void 0; var lodash_1 = require_lodash(); var enum_utils_1 = require_enum_utils(); var helpers_1 = require_helpers2(); var defaultBodyMetadata = { type: String, required: true }; function ApiBody(options) { const [type, isArray] = (0, helpers_1.getTypeIsArrayTuple)(options.type, options.isArray); const param = Object.assign(Object.assign({ in: "body" }, (0, lodash_1.omit)(options, "enum")), { type, isArray }); if ((0, enum_utils_1.isEnumArray)(options)) { (0, enum_utils_1.addEnumArraySchema)(param, options); } else if ((0, enum_utils_1.isEnumDefined)(options)) { (0, enum_utils_1.addEnumSchema)(param, options); } return (0, helpers_1.createParamDecorator)(param, defaultBodyMetadata); } __name(ApiBody, "ApiBody"); exports2.ApiBody = ApiBody; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-consumes.decorator.js var require_api_consumes_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-consumes.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiConsumes = void 0; var constants_1 = require_constants8(); var helpers_1 = require_helpers2(); function ApiConsumes(...mimeTypes) { return (0, helpers_1.createMixedDecorator)(constants_1.DECORATORS.API_CONSUMES, mimeTypes); } __name(ApiConsumes, "ApiConsumes"); exports2.ApiConsumes = ApiConsumes; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-cookie.decorator.js var require_api_cookie_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-cookie.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiCookieAuth = void 0; var api_security_decorator_1 = require_api_security_decorator(); function ApiCookieAuth(name = "cookie") { return (0, api_security_decorator_1.ApiSecurity)(name); } __name(ApiCookieAuth, "ApiCookieAuth"); exports2.ApiCookieAuth = ApiCookieAuth; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-exclude-endpoint.decorator.js var require_api_exclude_endpoint_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-exclude-endpoint.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiExcludeEndpoint = void 0; var constants_1 = require_constants8(); var helpers_1 = require_helpers2(); function ApiExcludeEndpoint(disable = true) { return (0, helpers_1.createMethodDecorator)(constants_1.DECORATORS.API_EXCLUDE_ENDPOINT, { disable }); } __name(ApiExcludeEndpoint, "ApiExcludeEndpoint"); exports2.ApiExcludeEndpoint = ApiExcludeEndpoint; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-exclude-controller.decorator.js var require_api_exclude_controller_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-exclude-controller.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiExcludeController = void 0; var constants_1 = require_constants8(); var helpers_1 = require_helpers2(); function ApiExcludeController(disable = true) { return (0, helpers_1.createClassDecorator)(constants_1.DECORATORS.API_EXCLUDE_CONTROLLER, [disable]); } __name(ApiExcludeController, "ApiExcludeController"); exports2.ApiExcludeController = ApiExcludeController; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-extra-models.decorator.js var require_api_extra_models_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-extra-models.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiExtraModels = void 0; var constants_1 = require_constants8(); function ApiExtraModels(...models) { return (target, key, descriptor) => { if (descriptor) { const extraModels2 = Reflect.getMetadata(constants_1.DECORATORS.API_EXTRA_MODELS, descriptor.value) || []; Reflect.defineMetadata(constants_1.DECORATORS.API_EXTRA_MODELS, [...extraModels2, ...models], descriptor.value); return descriptor; } const extraModels = Reflect.getMetadata(constants_1.DECORATORS.API_EXTRA_MODELS, target) || []; Reflect.defineMetadata(constants_1.DECORATORS.API_EXTRA_MODELS, [...extraModels, ...models], target); return target; }; } __name(ApiExtraModels, "ApiExtraModels"); exports2.ApiExtraModels = ApiExtraModels; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-header.decorator.js var require_api_header_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-header.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiHeaders = exports2.ApiHeader = void 0; var lodash_1 = require_lodash(); var constants_1 = require_constants8(); var enum_utils_1 = require_enum_utils(); var helpers_1 = require_helpers2(); var defaultHeaderOptions = { name: "" }; function ApiHeader(options) { const param = (0, lodash_1.pickBy)({ name: (0, lodash_1.isNil)(options.name) ? defaultHeaderOptions.name : options.name, in: "header", description: options.description, required: options.required, examples: options.examples, schema: Object.assign({ type: "string" }, options.schema || {}) }, (0, lodash_1.negate)(lodash_1.isUndefined)); if (options.enum) { const enumValues = (0, enum_utils_1.getEnumValues)(options.enum); param.schema = { enum: enumValues, type: (0, enum_utils_1.getEnumType)(enumValues) }; } return (target, key, descriptor) => { if (descriptor) { return (0, helpers_1.createParamDecorator)(param, defaultHeaderOptions)(target, key, descriptor); } return (0, helpers_1.createClassDecorator)(constants_1.DECORATORS.API_HEADERS, [param])(target); }; } __name(ApiHeader, "ApiHeader"); exports2.ApiHeader = ApiHeader; var ApiHeaders = /* @__PURE__ */ __name((headers) => { return (target, key, descriptor) => { headers.forEach((options) => ApiHeader(options)(target, key, descriptor)); }; }, "ApiHeaders"); exports2.ApiHeaders = ApiHeaders; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-hide-property.decorator.js var require_api_hide_property_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-hide-property.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiHideProperty = void 0; function ApiHideProperty() { return (target, propertyKey) => { }; } __name(ApiHideProperty, "ApiHideProperty"); exports2.ApiHideProperty = ApiHideProperty; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-oauth2.decorator.js var require_api_oauth2_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-oauth2.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiOAuth2 = void 0; var api_security_decorator_1 = require_api_security_decorator(); function ApiOAuth2(scopes, name = "oauth2") { return (0, api_security_decorator_1.ApiSecurity)(name, scopes); } __name(ApiOAuth2, "ApiOAuth2"); exports2.ApiOAuth2 = ApiOAuth2; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-operation.decorator.js var require_api_operation_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-operation.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiOperation = void 0; var lodash_1 = require_lodash(); var constants_1 = require_constants8(); var helpers_1 = require_helpers2(); var defaultOperationOptions = { summary: "" }; function ApiOperation(options, { overrideExisting } = { overrideExisting: true }) { return (0, helpers_1.createMethodDecorator)(constants_1.DECORATORS.API_OPERATION, (0, lodash_1.pickBy)(Object.assign(Object.assign({}, defaultOperationOptions), options), (0, lodash_1.negate)(lodash_1.isUndefined)), { overrideExisting }); } __name(ApiOperation, "ApiOperation"); exports2.ApiOperation = ApiOperation; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-param.decorator.js var require_api_param_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-param.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiParam = void 0; var lodash_1 = require_lodash(); var enum_utils_1 = require_enum_utils(); var helpers_1 = require_helpers2(); var defaultParamOptions = { name: "", required: true }; function ApiParam(options) { const param = Object.assign({ name: (0, lodash_1.isNil)(options.name) ? defaultParamOptions.name : options.name, in: "path" }, (0, lodash_1.omit)(options, "enum")); if ((0, enum_utils_1.isEnumDefined)(options)) { (0, enum_utils_1.addEnumSchema)(param, options); } return (0, helpers_1.createParamDecorator)(param, defaultParamOptions); } __name(ApiParam, "ApiParam"); exports2.ApiParam = ApiParam; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-produces.decorator.js var require_api_produces_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-produces.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiProduces = void 0; var constants_1 = require_constants8(); var helpers_1 = require_helpers2(); function ApiProduces(...mimeTypes) { return (0, helpers_1.createMixedDecorator)(constants_1.DECORATORS.API_PRODUCES, mimeTypes); } __name(ApiProduces, "ApiProduces"); exports2.ApiProduces = ApiProduces; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-property.decorator.js var require_api_property_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-property.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiResponseProperty = exports2.ApiPropertyOptional = exports2.createApiPropertyDecorator = exports2.ApiProperty = void 0; var constants_1 = require_constants8(); var enum_utils_1 = require_enum_utils(); var helpers_1 = require_helpers2(); var isEnumArray = /* @__PURE__ */ __name((obj2) => obj2.isArray && !!obj2.enum, "isEnumArray"); function ApiProperty(options = {}) { return createApiPropertyDecorator(options); } __name(ApiProperty, "ApiProperty"); exports2.ApiProperty = ApiProperty; function createApiPropertyDecorator(options = {}, overrideExisting = true) { const [type, isArray] = (0, helpers_1.getTypeIsArrayTuple)(options.type, options.isArray); options = Object.assign(Object.assign({}, options), { type, isArray }); if (isEnumArray(options)) { options.type = "array"; const enumValues = (0, enum_utils_1.getEnumValues)(options.enum); options.items = { type: (0, enum_utils_1.getEnumType)(enumValues), enum: enumValues }; delete options.enum; } else if (options.enum) { const enumValues = (0, enum_utils_1.getEnumValues)(options.enum); options.enum = enumValues; options.type = (0, enum_utils_1.getEnumType)(enumValues); } if (Array.isArray(options.type)) { options.type = "array"; options.items = { type: "array", items: { type: options.type[0] } }; } return (0, helpers_1.createPropertyDecorator)(constants_1.DECORATORS.API_MODEL_PROPERTIES, options, overrideExisting); } __name(createApiPropertyDecorator, "createApiPropertyDecorator"); exports2.createApiPropertyDecorator = createApiPropertyDecorator; function ApiPropertyOptional(options = {}) { return ApiProperty(Object.assign(Object.assign({}, options), { required: false })); } __name(ApiPropertyOptional, "ApiPropertyOptional"); exports2.ApiPropertyOptional = ApiPropertyOptional; function ApiResponseProperty(options = {}) { return ApiProperty(Object.assign({ readOnly: true }, options)); } __name(ApiResponseProperty, "ApiResponseProperty"); exports2.ApiResponseProperty = ApiResponseProperty; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-query.decorator.js var require_api_query_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-query.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiQuery = void 0; var lodash_1 = require_lodash(); var enum_utils_1 = require_enum_utils(); var helpers_1 = require_helpers2(); var defaultQueryOptions = { name: "", required: true }; function ApiQuery(options) { const apiQueryMetadata = options; const [type, isArray] = (0, helpers_1.getTypeIsArrayTuple)(apiQueryMetadata.type, apiQueryMetadata.isArray); const param = Object.assign(Object.assign({ name: (0, lodash_1.isNil)(options.name) ? defaultQueryOptions.name : options.name, in: "query" }, (0, lodash_1.omit)(options, "enum")), { type }); if ((0, enum_utils_1.isEnumArray)(options)) { (0, enum_utils_1.addEnumArraySchema)(param, options); } else if ((0, enum_utils_1.isEnumDefined)(options)) { (0, enum_utils_1.addEnumSchema)(param, options); } if (isArray) { param.isArray = isArray; } return (0, helpers_1.createParamDecorator)(param, defaultQueryOptions); } __name(ApiQuery, "ApiQuery"); exports2.ApiQuery = ApiQuery; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-response.decorator.js var require_api_response_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-response.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiDefaultResponse = exports2.ApiHttpVersionNotSupportedResponse = exports2.ApiGatewayTimeoutResponse = exports2.ApiServiceUnavailableResponse = exports2.ApiBadGatewayResponse = exports2.ApiNotImplementedResponse = exports2.ApiInternalServerErrorResponse = exports2.ApiTooManyRequestsResponse = exports2.ApiPreconditionRequiredResponse = exports2.ApiFailedDependencyResponse = exports2.ApiUnprocessableEntityResponse = exports2.ApiMisdirectedResponse = exports2.ApiIAmATeapotResponse = exports2.ApiExpectationFailedResponse = exports2.ApiRequestedRangeNotSatisfiableResponse = exports2.ApiUnsupportedMediaTypeResponse = exports2.ApiUriTooLongResponse = exports2.ApiPayloadTooLargeResponse = exports2.ApiPreconditionFailedResponse = exports2.ApiLengthRequiredResponse = exports2.ApiGoneResponse = exports2.ApiConflictResponse = exports2.ApiRequestTimeoutResponse = exports2.ApiProxyAuthenticationRequiredResponse = exports2.ApiNotAcceptableResponse = exports2.ApiMethodNotAllowedResponse = exports2.ApiNotFoundResponse = exports2.ApiForbiddenResponse = exports2.ApiPaymentRequiredResponse = exports2.ApiUnauthorizedResponse = exports2.ApiBadRequestResponse = exports2.ApiPermanentRedirectResponse = exports2.ApiTemporaryRedirectResponse = exports2.ApiNotModifiedResponse = exports2.ApiSeeOtherResponse = exports2.ApiFoundResponse = exports2.ApiMovedPermanentlyResponse = exports2.ApiAmbiguousResponse = exports2.ApiPartialContentResponse = exports2.ApiResetContentResponse = exports2.ApiNoContentResponse = exports2.ApiNonAuthoritativeInformationResponse = exports2.ApiAcceptedResponse = exports2.ApiCreatedResponse = exports2.ApiOkResponse = exports2.ApiEarlyhintsResponse = exports2.ApiProcessingResponse = exports2.ApiSwitchingProtocolsResponse = exports2.ApiContinueResponse = exports2.ApiResponse = void 0; var common_12 = require_common(); var lodash_1 = require_lodash(); var constants_1 = require_constants8(); var helpers_1 = require_helpers2(); function ApiResponse(options, { overrideExisting } = { overrideExisting: true }) { const [type, isArray] = (0, helpers_1.getTypeIsArrayTuple)(options.type, options.isArray); options.type = type; options.isArray = isArray; options.description = options.description ? options.description : ""; const groupedMetadata = { [options.status || "default"]: (0, lodash_1.omit)(options, "status") }; return (target, key, descriptor) => { if (descriptor) { const responses2 = Reflect.getMetadata(constants_1.DECORATORS.API_RESPONSE, descriptor.value); if (responses2 && !overrideExisting) { return descriptor; } Reflect.defineMetadata(constants_1.DECORATORS.API_RESPONSE, Object.assign(Object.assign({}, responses2), groupedMetadata), descriptor.value); return descriptor; } const responses = Reflect.getMetadata(constants_1.DECORATORS.API_RESPONSE, target); if (responses && !overrideExisting) { return descriptor; } Reflect.defineMetadata(constants_1.DECORATORS.API_RESPONSE, Object.assign(Object.assign({}, responses), groupedMetadata), target); return target; }; } __name(ApiResponse, "ApiResponse"); exports2.ApiResponse = ApiResponse; var decorators = {}; var statusList = Object.keys(common_12.HttpStatus).filter((key) => !isNaN(Number(common_12.HttpStatus[key]))).map((key) => { const functionName = key.split("_").map((strToken) => `${strToken[0].toUpperCase()}${strToken.slice(1).toLowerCase()}`).join(""); return { code: Number(common_12.HttpStatus[key]), functionName: `Api${functionName}Response` }; }); statusList.forEach(({ code, functionName }) => { decorators[functionName] = function(options = {}) { return ApiResponse(Object.assign(Object.assign({}, options), { status: code })); }; }); exports2.ApiContinueResponse = decorators.ApiContinueResponse, exports2.ApiSwitchingProtocolsResponse = decorators.ApiSwitchingProtocolsResponse, exports2.ApiProcessingResponse = decorators.ApiProcessingResponse, exports2.ApiEarlyhintsResponse = decorators.ApiEarlyhintsResponse, exports2.ApiOkResponse = decorators.ApiOkResponse, exports2.ApiCreatedResponse = decorators.ApiCreatedResponse, exports2.ApiAcceptedResponse = decorators.ApiAcceptedResponse, exports2.ApiNonAuthoritativeInformationResponse = decorators.ApiNonAuthoritativeInformationResponse, exports2.ApiNoContentResponse = decorators.ApiNoContentResponse, exports2.ApiResetContentResponse = decorators.ApiResetContentResponse, exports2.ApiPartialContentResponse = decorators.ApiPartialContentResponse, exports2.ApiAmbiguousResponse = decorators.ApiAmbiguousResponse, exports2.ApiMovedPermanentlyResponse = decorators.ApiMovedPermanentlyResponse, exports2.ApiFoundResponse = decorators.ApiFoundResponse, exports2.ApiSeeOtherResponse = decorators.ApiSeeOtherResponse, exports2.ApiNotModifiedResponse = decorators.ApiNotModifiedResponse, exports2.ApiTemporaryRedirectResponse = decorators.ApiTemporaryRedirectResponse, exports2.ApiPermanentRedirectResponse = decorators.ApiPermanentRedirectResponse, exports2.ApiBadRequestResponse = decorators.ApiBadRequestResponse, exports2.ApiUnauthorizedResponse = decorators.ApiUnauthorizedResponse, exports2.ApiPaymentRequiredResponse = decorators.ApiPaymentRequiredResponse, exports2.ApiForbiddenResponse = decorators.ApiForbiddenResponse, exports2.ApiNotFoundResponse = decorators.ApiNotFoundResponse, exports2.ApiMethodNotAllowedResponse = decorators.ApiMethodNotAllowedResponse, exports2.ApiNotAcceptableResponse = decorators.ApiNotAcceptableResponse, exports2.ApiProxyAuthenticationRequiredResponse = decorators.ApiProxyAuthenticationRequiredResponse, exports2.ApiRequestTimeoutResponse = decorators.ApiRequestTimeoutResponse, exports2.ApiConflictResponse = decorators.ApiConflictResponse, exports2.ApiGoneResponse = decorators.ApiGoneResponse, exports2.ApiLengthRequiredResponse = decorators.ApiLengthRequiredResponse, exports2.ApiPreconditionFailedResponse = decorators.ApiPreconditionFailedResponse, exports2.ApiPayloadTooLargeResponse = decorators.ApiPayloadTooLargeResponse, exports2.ApiUriTooLongResponse = decorators.ApiUriTooLongResponse, exports2.ApiUnsupportedMediaTypeResponse = decorators.ApiUnsupportedMediaTypeResponse, exports2.ApiRequestedRangeNotSatisfiableResponse = decorators.ApiRequestedRangeNotSatisfiableResponse, exports2.ApiExpectationFailedResponse = decorators.ApiExpectationFailedResponse, exports2.ApiIAmATeapotResponse = decorators.ApiIAmATeapotResponse, exports2.ApiMisdirectedResponse = decorators.ApiMisdirectedResponse, exports2.ApiUnprocessableEntityResponse = decorators.ApiUnprocessableEntityResponse, exports2.ApiFailedDependencyResponse = decorators.ApiFailedDependencyResponse, exports2.ApiPreconditionRequiredResponse = decorators.ApiPreconditionRequiredResponse, exports2.ApiTooManyRequestsResponse = decorators.ApiTooManyRequestsResponse, exports2.ApiInternalServerErrorResponse = decorators.ApiInternalServerErrorResponse, exports2.ApiNotImplementedResponse = decorators.ApiNotImplementedResponse, exports2.ApiBadGatewayResponse = decorators.ApiBadGatewayResponse, exports2.ApiServiceUnavailableResponse = decorators.ApiServiceUnavailableResponse, exports2.ApiGatewayTimeoutResponse = decorators.ApiGatewayTimeoutResponse, exports2.ApiHttpVersionNotSupportedResponse = decorators.ApiHttpVersionNotSupportedResponse; var ApiDefaultResponse = /* @__PURE__ */ __name((options = {}) => ApiResponse(Object.assign(Object.assign({}, options), { status: "default" })), "ApiDefaultResponse"); exports2.ApiDefaultResponse = ApiDefaultResponse; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-use-tags.decorator.js var require_api_use_tags_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-use-tags.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiTags = void 0; var constants_1 = require_constants8(); var helpers_1 = require_helpers2(); function ApiTags(...tags) { return (0, helpers_1.createMixedDecorator)(constants_1.DECORATORS.API_TAGS, tags); } __name(ApiTags, "ApiTags"); exports2.ApiTags = ApiTags; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-extension.decorator.js var require_api_extension_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/api-extension.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiExtension = void 0; var constants_1 = require_constants8(); var helpers_1 = require_helpers2(); var lodash_1 = require_lodash(); function ApiExtension(extensionKey, extensionProperties) { if (!extensionKey.startsWith("x-")) { throw new Error("Extension key is not prefixed. Please ensure you prefix it with `x-`."); } const extensionObject = { [extensionKey]: (0, lodash_1.clone)(extensionProperties) }; return (0, helpers_1.createMixedDecorator)(constants_1.DECORATORS.API_EXTENSION, extensionObject); } __name(ApiExtension, "ApiExtension"); exports2.ApiExtension = ApiExtension; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/index.js var require_decorators5 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/decorators/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ApiResponseProperty = exports2.ApiPropertyOptional = exports2.ApiProperty = void 0; __exportStar2(require_api_basic_decorator(), exports2); __exportStar2(require_api_bearer_decorator(), exports2); __exportStar2(require_api_body_decorator(), exports2); __exportStar2(require_api_consumes_decorator(), exports2); __exportStar2(require_api_cookie_decorator(), exports2); __exportStar2(require_api_exclude_endpoint_decorator(), exports2); __exportStar2(require_api_exclude_controller_decorator(), exports2); __exportStar2(require_api_extra_models_decorator(), exports2); __exportStar2(require_api_header_decorator(), exports2); __exportStar2(require_api_hide_property_decorator(), exports2); __exportStar2(require_api_oauth2_decorator(), exports2); __exportStar2(require_api_operation_decorator(), exports2); __exportStar2(require_api_param_decorator(), exports2); __exportStar2(require_api_produces_decorator(), exports2); var api_property_decorator_1 = require_api_property_decorator(); Object.defineProperty(exports2, "ApiProperty", { enumerable: true, get: /* @__PURE__ */ __name(function() { return api_property_decorator_1.ApiProperty; }, "get") }); Object.defineProperty(exports2, "ApiPropertyOptional", { enumerable: true, get: /* @__PURE__ */ __name(function() { return api_property_decorator_1.ApiPropertyOptional; }, "get") }); Object.defineProperty(exports2, "ApiResponseProperty", { enumerable: true, get: /* @__PURE__ */ __name(function() { return api_property_decorator_1.ApiResponseProperty; }, "get") }); __exportStar2(require_api_query_decorator(), exports2); __exportStar2(require_api_response_decorator(), exports2); __exportStar2(require_api_security_decorator(), exports2); __exportStar2(require_api_use_tags_decorator(), exports2); __exportStar2(require_api_extension_decorator(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/fixtures/document.base.js var require_document_base = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/fixtures/document.base.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.buildDocumentBase = void 0; var buildDocumentBase = /* @__PURE__ */ __name(() => ({ openapi: "3.0.0", info: { title: "", description: "", version: "1.0.0", contact: {} }, tags: [], servers: [], components: {} }), "buildDocumentBase"); exports2.buildDocumentBase = buildDocumentBase; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/storages/global-parameters.storage.js var require_global_parameters_storage = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/storages/global-parameters.storage.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.GlobalParametersStorage = exports2.GlobalParametersStorageHost = void 0; var GlobalParametersStorageHost = class { static { __name(this, "GlobalParametersStorageHost"); } constructor() { this.parameters = new Array(); } add(...parameters) { this.parameters.push(...parameters); } getAll() { return this.parameters; } clear() { this.parameters = []; } }; exports2.GlobalParametersStorageHost = GlobalParametersStorageHost; var globalRef = global; exports2.GlobalParametersStorage = globalRef.SwaggerGlobalParametersStorage || (globalRef.SwaggerGlobalParametersStorage = new GlobalParametersStorageHost()); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/document-builder.js var require_document_builder = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/document-builder.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DocumentBuilder = void 0; var common_12 = require_common(); var lodash_1 = require_lodash(); var document_base_1 = require_document_base(); var global_parameters_storage_1 = require_global_parameters_storage(); var DocumentBuilder = class _DocumentBuilder { static { __name(this, "DocumentBuilder"); } constructor() { this.logger = new common_12.Logger(_DocumentBuilder.name); this.document = (0, document_base_1.buildDocumentBase)(); } setTitle(title) { this.document.info.title = title; return this; } setDescription(description) { this.document.info.description = description; return this; } setVersion(version2) { this.document.info.version = version2; return this; } setTermsOfService(termsOfService) { this.document.info.termsOfService = termsOfService; return this; } setContact(name, url, email) { this.document.info.contact = { name, url, email }; return this; } setLicense(name, url) { this.document.info.license = { name, url }; return this; } addServer(url, description, variables) { this.document.servers.push({ url, description, variables }); return this; } setExternalDoc(description, url) { this.document.externalDocs = { description, url }; return this; } setBasePath(path) { this.logger.warn('The "setBasePath" method has been deprecated. Now, a global prefix is populated automatically. If you want to ignore it, take a look here: https://docs.nestjs.com/recipes/swagger#global-prefix. Alternatively, you can use "addServer" method to set up multiple different paths.'); return this; } addTag(name, description = "", externalDocs) { this.document.tags = this.document.tags.concat((0, lodash_1.pickBy)({ name, description, externalDocs }, (0, lodash_1.negate)(lodash_1.isUndefined))); return this; } addExtension(extensionKey, extensionProperties) { if (!extensionKey.startsWith("x-")) { throw new Error("Extension key is not prefixed. Please ensure you prefix it with `x-`."); } this.document[extensionKey] = (0, lodash_1.clone)(extensionProperties); return this; } addSecurity(name, options) { this.document.components.securitySchemes = Object.assign(Object.assign({}, this.document.components.securitySchemes || {}), { [name]: options }); return this; } addGlobalParameters(...parameters) { global_parameters_storage_1.GlobalParametersStorage.add(...parameters); return this; } addSecurityRequirements(name, requirements = []) { let securityRequirement; if ((0, lodash_1.isString)(name)) { securityRequirement = { [name]: requirements }; } else { securityRequirement = name; } this.document.security = (this.document.security || []).concat(Object.assign({}, securityRequirement)); return this; } addBearerAuth(options = { type: "http" }, name = "bearer") { this.addSecurity(name, Object.assign({ scheme: "bearer", bearerFormat: "JWT" }, options)); return this; } addOAuth2(options = { type: "oauth2" }, name = "oauth2") { this.addSecurity(name, Object.assign({ type: "oauth2", flows: {} }, options)); return this; } addApiKey(options = { type: "apiKey" }, name = "api_key") { this.addSecurity(name, Object.assign({ type: "apiKey", in: "header", name }, options)); return this; } addBasicAuth(options = { type: "http" }, name = "basic") { this.addSecurity(name, Object.assign({ type: "http", scheme: "basic" }, options)); return this; } addCookieAuth(cookieName = "connect.sid", options = { type: "apiKey" }, securityName = "cookie") { this.addSecurity(securityName, Object.assign({ type: "apiKey", in: "cookie", name: cookieName }, options)); return this; } build() { return this.document; } }; exports2.DocumentBuilder = DocumentBuilder; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/interfaces/swagger-custom-options.interface.js var require_swagger_custom_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/interfaces/swagger-custom-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/interfaces/swagger-document-options.interface.js var require_swagger_document_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/interfaces/swagger-document-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/interfaces/index.js var require_interfaces8 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/interfaces/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_swagger_custom_options_interface(), exports2); __exportStar2(require_swagger_document_options_interface(), exports2); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/common.js var require_common2 = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/common.js"(exports2, module2) { "use strict"; function isNothing(subject) { return typeof subject === "undefined" || subject === null; } __name(isNothing, "isNothing"); function isObject2(subject) { return typeof subject === "object" && subject !== null; } __name(isObject2, "isObject"); function toArray(sequence) { if (Array.isArray(sequence)) return sequence; else if (isNothing(sequence)) return []; return [sequence]; } __name(toArray, "toArray"); function extend(target, source) { var index, length, key, sourceKeys; if (source) { sourceKeys = Object.keys(source); for (index = 0, length = sourceKeys.length; index < length; index += 1) { key = sourceKeys[index]; target[key] = source[key]; } } return target; } __name(extend, "extend"); function repeat(string, count) { var result = "", cycle; for (cycle = 0; cycle < count; cycle += 1) { result += string; } return result; } __name(repeat, "repeat"); function isNegativeZero(number) { return number === 0 && Number.NEGATIVE_INFINITY === 1 / number; } __name(isNegativeZero, "isNegativeZero"); module2.exports.isNothing = isNothing; module2.exports.isObject = isObject2; module2.exports.toArray = toArray; module2.exports.repeat = repeat; module2.exports.isNegativeZero = isNegativeZero; module2.exports.extend = extend; } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/exception.js var require_exception = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/exception.js"(exports2, module2) { "use strict"; function formatError(exception, compact) { var where = "", message = exception.reason || "(unknown reason)"; if (!exception.mark) return message; if (exception.mark.name) { where += 'in "' + exception.mark.name + '" '; } where += "(" + (exception.mark.line + 1) + ":" + (exception.mark.column + 1) + ")"; if (!compact && exception.mark.snippet) { where += "\n\n" + exception.mark.snippet; } return message + " " + where; } __name(formatError, "formatError"); function YAMLException(reason, mark) { Error.call(this); this.name = "YAMLException"; this.reason = reason; this.mark = mark; this.message = formatError(this, false); if (Error.captureStackTrace) { Error.captureStackTrace(this, this.constructor); } else { this.stack = new Error().stack || ""; } } __name(YAMLException, "YAMLException"); YAMLException.prototype = Object.create(Error.prototype); YAMLException.prototype.constructor = YAMLException; YAMLException.prototype.toString = /* @__PURE__ */ __name(function toString2(compact) { return this.name + ": " + formatError(this, compact); }, "toString"); module2.exports = YAMLException; } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/snippet.js var require_snippet = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/snippet.js"(exports2, module2) { "use strict"; var common = require_common2(); function getLine(buffer, lineStart, lineEnd, position, maxLineLength) { var head = ""; var tail = ""; var maxHalfLength = Math.floor(maxLineLength / 2) - 1; if (position - lineStart > maxHalfLength) { head = " ... "; lineStart = position - maxHalfLength + head.length; } if (lineEnd - position > maxHalfLength) { tail = " ..."; lineEnd = position + maxHalfLength - tail.length; } return { str: head + buffer.slice(lineStart, lineEnd).replace(/\t/g, "\u2192") + tail, pos: position - lineStart + head.length // relative position }; } __name(getLine, "getLine"); function padStart(string, max) { return common.repeat(" ", max - string.length) + string; } __name(padStart, "padStart"); function makeSnippet(mark, options) { options = Object.create(options || null); if (!mark.buffer) return null; if (!options.maxLength) options.maxLength = 79; if (typeof options.indent !== "number") options.indent = 1; if (typeof options.linesBefore !== "number") options.linesBefore = 3; if (typeof options.linesAfter !== "number") options.linesAfter = 2; var re = /\r?\n|\r|\0/g; var lineStarts = [0]; var lineEnds = []; var match; var foundLineNo = -1; while (match = re.exec(mark.buffer)) { lineEnds.push(match.index); lineStarts.push(match.index + match[0].length); if (mark.position <= match.index && foundLineNo < 0) { foundLineNo = lineStarts.length - 2; } } if (foundLineNo < 0) foundLineNo = lineStarts.length - 1; var result = "", i, line; var lineNoLength = Math.min(mark.line + options.linesAfter, lineEnds.length).toString().length; var maxLineLength = options.maxLength - (options.indent + lineNoLength + 3); for (i = 1; i <= options.linesBefore; i++) { if (foundLineNo - i < 0) break; line = getLine( mark.buffer, lineStarts[foundLineNo - i], lineEnds[foundLineNo - i], mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo - i]), maxLineLength ); result = common.repeat(" ", options.indent) + padStart((mark.line - i + 1).toString(), lineNoLength) + " | " + line.str + "\n" + result; } line = getLine(mark.buffer, lineStarts[foundLineNo], lineEnds[foundLineNo], mark.position, maxLineLength); result += common.repeat(" ", options.indent) + padStart((mark.line + 1).toString(), lineNoLength) + " | " + line.str + "\n"; result += common.repeat("-", options.indent + lineNoLength + 3 + line.pos) + "^\n"; for (i = 1; i <= options.linesAfter; i++) { if (foundLineNo + i >= lineEnds.length) break; line = getLine( mark.buffer, lineStarts[foundLineNo + i], lineEnds[foundLineNo + i], mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo + i]), maxLineLength ); result += common.repeat(" ", options.indent) + padStart((mark.line + i + 1).toString(), lineNoLength) + " | " + line.str + "\n"; } return result.replace(/\n$/, ""); } __name(makeSnippet, "makeSnippet"); module2.exports = makeSnippet; } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type.js var require_type2 = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type.js"(exports2, module2) { "use strict"; var YAMLException = require_exception(); var TYPE_CONSTRUCTOR_OPTIONS = [ "kind", "multi", "resolve", "construct", "instanceOf", "predicate", "represent", "representName", "defaultStyle", "styleAliases" ]; var YAML_NODE_KINDS = [ "scalar", "sequence", "mapping" ]; function compileStyleAliases(map) { var result = {}; if (map !== null) { Object.keys(map).forEach(function(style) { map[style].forEach(function(alias) { result[String(alias)] = style; }); }); } return result; } __name(compileStyleAliases, "compileStyleAliases"); function Type(tag, options) { options = options || {}; Object.keys(options).forEach(function(name) { if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); } }); this.options = options; this.tag = tag; this.kind = options["kind"] || null; this.resolve = options["resolve"] || function() { return true; }; this.construct = options["construct"] || function(data) { return data; }; this.instanceOf = options["instanceOf"] || null; this.predicate = options["predicate"] || null; this.represent = options["represent"] || null; this.representName = options["representName"] || null; this.defaultStyle = options["defaultStyle"] || null; this.multi = options["multi"] || false; this.styleAliases = compileStyleAliases(options["styleAliases"] || null); if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); } } __name(Type, "Type"); module2.exports = Type; } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/schema.js var require_schema = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/schema.js"(exports2, module2) { "use strict"; var YAMLException = require_exception(); var Type = require_type2(); function compileList(schema, name) { var result = []; schema[name].forEach(function(currentType) { var newIndex = result.length; result.forEach(function(previousType, previousIndex) { if (previousType.tag === currentType.tag && previousType.kind === currentType.kind && previousType.multi === currentType.multi) { newIndex = previousIndex; } }); result[newIndex] = currentType; }); return result; } __name(compileList, "compileList"); function compileMap() { var result = { scalar: {}, sequence: {}, mapping: {}, fallback: {}, multi: { scalar: [], sequence: [], mapping: [], fallback: [] } }, index, length; function collectType(type) { if (type.multi) { result.multi[type.kind].push(type); result.multi["fallback"].push(type); } else { result[type.kind][type.tag] = result["fallback"][type.tag] = type; } } __name(collectType, "collectType"); for (index = 0, length = arguments.length; index < length; index += 1) { arguments[index].forEach(collectType); } return result; } __name(compileMap, "compileMap"); function Schema(definition) { return this.extend(definition); } __name(Schema, "Schema"); Schema.prototype.extend = /* @__PURE__ */ __name(function extend(definition) { var implicit = []; var explicit = []; if (definition instanceof Type) { explicit.push(definition); } else if (Array.isArray(definition)) { explicit = explicit.concat(definition); } else if (definition && (Array.isArray(definition.implicit) || Array.isArray(definition.explicit))) { if (definition.implicit) implicit = implicit.concat(definition.implicit); if (definition.explicit) explicit = explicit.concat(definition.explicit); } else { throw new YAMLException("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })"); } implicit.forEach(function(type) { if (!(type instanceof Type)) { throw new YAMLException("Specified list of YAML types (or a single Type object) contains a non-Type object."); } if (type.loadKind && type.loadKind !== "scalar") { throw new YAMLException("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported."); } if (type.multi) { throw new YAMLException("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit."); } }); explicit.forEach(function(type) { if (!(type instanceof Type)) { throw new YAMLException("Specified list of YAML types (or a single Type object) contains a non-Type object."); } }); var result = Object.create(Schema.prototype); result.implicit = (this.implicit || []).concat(implicit); result.explicit = (this.explicit || []).concat(explicit); result.compiledImplicit = compileList(result, "implicit"); result.compiledExplicit = compileList(result, "explicit"); result.compiledTypeMap = compileMap(result.compiledImplicit, result.compiledExplicit); return result; }, "extend"); module2.exports = Schema; } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/str.js var require_str = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/str.js"(exports2, module2) { "use strict"; var Type = require_type2(); module2.exports = new Type("tag:yaml.org,2002:str", { kind: "scalar", construct: /* @__PURE__ */ __name(function(data) { return data !== null ? data : ""; }, "construct") }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/seq.js var require_seq = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/seq.js"(exports2, module2) { "use strict"; var Type = require_type2(); module2.exports = new Type("tag:yaml.org,2002:seq", { kind: "sequence", construct: /* @__PURE__ */ __name(function(data) { return data !== null ? data : []; }, "construct") }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/map.js var require_map3 = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/map.js"(exports2, module2) { "use strict"; var Type = require_type2(); module2.exports = new Type("tag:yaml.org,2002:map", { kind: "mapping", construct: /* @__PURE__ */ __name(function(data) { return data !== null ? data : {}; }, "construct") }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/schema/failsafe.js var require_failsafe = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/schema/failsafe.js"(exports2, module2) { "use strict"; var Schema = require_schema(); module2.exports = new Schema({ explicit: [ require_str(), require_seq(), require_map3() ] }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/null.js var require_null = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/null.js"(exports2, module2) { "use strict"; var Type = require_type2(); function resolveYamlNull(data) { if (data === null) return true; var max = data.length; return max === 1 && data === "~" || max === 4 && (data === "null" || data === "Null" || data === "NULL"); } __name(resolveYamlNull, "resolveYamlNull"); function constructYamlNull() { return null; } __name(constructYamlNull, "constructYamlNull"); function isNull(object) { return object === null; } __name(isNull, "isNull"); module2.exports = new Type("tag:yaml.org,2002:null", { kind: "scalar", resolve: resolveYamlNull, construct: constructYamlNull, predicate: isNull, represent: { canonical: /* @__PURE__ */ __name(function() { return "~"; }, "canonical"), lowercase: /* @__PURE__ */ __name(function() { return "null"; }, "lowercase"), uppercase: /* @__PURE__ */ __name(function() { return "NULL"; }, "uppercase"), camelcase: /* @__PURE__ */ __name(function() { return "Null"; }, "camelcase"), empty: /* @__PURE__ */ __name(function() { return ""; }, "empty") }, defaultStyle: "lowercase" }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/bool.js var require_bool = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/bool.js"(exports2, module2) { "use strict"; var Type = require_type2(); function resolveYamlBoolean(data) { if (data === null) return false; var max = data.length; return max === 4 && (data === "true" || data === "True" || data === "TRUE") || max === 5 && (data === "false" || data === "False" || data === "FALSE"); } __name(resolveYamlBoolean, "resolveYamlBoolean"); function constructYamlBoolean(data) { return data === "true" || data === "True" || data === "TRUE"; } __name(constructYamlBoolean, "constructYamlBoolean"); function isBoolean(object) { return Object.prototype.toString.call(object) === "[object Boolean]"; } __name(isBoolean, "isBoolean"); module2.exports = new Type("tag:yaml.org,2002:bool", { kind: "scalar", resolve: resolveYamlBoolean, construct: constructYamlBoolean, predicate: isBoolean, represent: { lowercase: /* @__PURE__ */ __name(function(object) { return object ? "true" : "false"; }, "lowercase"), uppercase: /* @__PURE__ */ __name(function(object) { return object ? "TRUE" : "FALSE"; }, "uppercase"), camelcase: /* @__PURE__ */ __name(function(object) { return object ? "True" : "False"; }, "camelcase") }, defaultStyle: "lowercase" }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/int.js var require_int = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/int.js"(exports2, module2) { "use strict"; var common = require_common2(); var Type = require_type2(); function isHexCode(c) { return 48 <= c && c <= 57 || 65 <= c && c <= 70 || 97 <= c && c <= 102; } __name(isHexCode, "isHexCode"); function isOctCode(c) { return 48 <= c && c <= 55; } __name(isOctCode, "isOctCode"); function isDecCode(c) { return 48 <= c && c <= 57; } __name(isDecCode, "isDecCode"); function resolveYamlInteger(data) { if (data === null) return false; var max = data.length, index = 0, hasDigits = false, ch; if (!max) return false; ch = data[index]; if (ch === "-" || ch === "+") { ch = data[++index]; } if (ch === "0") { if (index + 1 === max) return true; ch = data[++index]; if (ch === "b") { index++; for (; index < max; index++) { ch = data[index]; if (ch === "_") continue; if (ch !== "0" && ch !== "1") return false; hasDigits = true; } return hasDigits && ch !== "_"; } if (ch === "x") { index++; for (; index < max; index++) { ch = data[index]; if (ch === "_") continue; if (!isHexCode(data.charCodeAt(index))) return false; hasDigits = true; } return hasDigits && ch !== "_"; } if (ch === "o") { index++; for (; index < max; index++) { ch = data[index]; if (ch === "_") continue; if (!isOctCode(data.charCodeAt(index))) return false; hasDigits = true; } return hasDigits && ch !== "_"; } } if (ch === "_") return false; for (; index < max; index++) { ch = data[index]; if (ch === "_") continue; if (!isDecCode(data.charCodeAt(index))) { return false; } hasDigits = true; } if (!hasDigits || ch === "_") return false; return true; } __name(resolveYamlInteger, "resolveYamlInteger"); function constructYamlInteger(data) { var value = data, sign = 1, ch; if (value.indexOf("_") !== -1) { value = value.replace(/_/g, ""); } ch = value[0]; if (ch === "-" || ch === "+") { if (ch === "-") sign = -1; value = value.slice(1); ch = value[0]; } if (value === "0") return 0; if (ch === "0") { if (value[1] === "b") return sign * parseInt(value.slice(2), 2); if (value[1] === "x") return sign * parseInt(value.slice(2), 16); if (value[1] === "o") return sign * parseInt(value.slice(2), 8); } return sign * parseInt(value, 10); } __name(constructYamlInteger, "constructYamlInteger"); function isInteger(object) { return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 === 0 && !common.isNegativeZero(object)); } __name(isInteger, "isInteger"); module2.exports = new Type("tag:yaml.org,2002:int", { kind: "scalar", resolve: resolveYamlInteger, construct: constructYamlInteger, predicate: isInteger, represent: { binary: /* @__PURE__ */ __name(function(obj2) { return obj2 >= 0 ? "0b" + obj2.toString(2) : "-0b" + obj2.toString(2).slice(1); }, "binary"), octal: /* @__PURE__ */ __name(function(obj2) { return obj2 >= 0 ? "0o" + obj2.toString(8) : "-0o" + obj2.toString(8).slice(1); }, "octal"), decimal: /* @__PURE__ */ __name(function(obj2) { return obj2.toString(10); }, "decimal"), /* eslint-disable max-len */ hexadecimal: /* @__PURE__ */ __name(function(obj2) { return obj2 >= 0 ? "0x" + obj2.toString(16).toUpperCase() : "-0x" + obj2.toString(16).toUpperCase().slice(1); }, "hexadecimal") }, defaultStyle: "decimal", styleAliases: { binary: [2, "bin"], octal: [8, "oct"], decimal: [10, "dec"], hexadecimal: [16, "hex"] } }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/float.js var require_float = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/float.js"(exports2, module2) { "use strict"; var common = require_common2(); var Type = require_type2(); var YAML_FLOAT_PATTERN = new RegExp( // 2.5e4, 2.5 and integers "^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$" ); function resolveYamlFloat(data) { if (data === null) return false; if (!YAML_FLOAT_PATTERN.test(data) || // Quick hack to not allow integers end with `_` // Probably should update regexp & check speed data[data.length - 1] === "_") { return false; } return true; } __name(resolveYamlFloat, "resolveYamlFloat"); function constructYamlFloat(data) { var value, sign; value = data.replace(/_/g, "").toLowerCase(); sign = value[0] === "-" ? -1 : 1; if ("+-".indexOf(value[0]) >= 0) { value = value.slice(1); } if (value === ".inf") { return sign === 1 ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY; } else if (value === ".nan") { return NaN; } return sign * parseFloat(value, 10); } __name(constructYamlFloat, "constructYamlFloat"); var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/; function representYamlFloat(object, style) { var res; if (isNaN(object)) { switch (style) { case "lowercase": return ".nan"; case "uppercase": return ".NAN"; case "camelcase": return ".NaN"; } } else if (Number.POSITIVE_INFINITY === object) { switch (style) { case "lowercase": return ".inf"; case "uppercase": return ".INF"; case "camelcase": return ".Inf"; } } else if (Number.NEGATIVE_INFINITY === object) { switch (style) { case "lowercase": return "-.inf"; case "uppercase": return "-.INF"; case "camelcase": return "-.Inf"; } } else if (common.isNegativeZero(object)) { return "-0.0"; } res = object.toString(10); return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace("e", ".e") : res; } __name(representYamlFloat, "representYamlFloat"); function isFloat(object) { return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 !== 0 || common.isNegativeZero(object)); } __name(isFloat, "isFloat"); module2.exports = new Type("tag:yaml.org,2002:float", { kind: "scalar", resolve: resolveYamlFloat, construct: constructYamlFloat, predicate: isFloat, represent: representYamlFloat, defaultStyle: "lowercase" }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/schema/json.js var require_json2 = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/schema/json.js"(exports2, module2) { "use strict"; module2.exports = require_failsafe().extend({ implicit: [ require_null(), require_bool(), require_int(), require_float() ] }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/schema/core.js var require_core4 = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/schema/core.js"(exports2, module2) { "use strict"; module2.exports = require_json2(); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/timestamp.js var require_timestamp2 = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/timestamp.js"(exports2, module2) { "use strict"; var Type = require_type2(); var YAML_DATE_REGEXP = new RegExp( "^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$" ); var YAML_TIMESTAMP_REGEXP = new RegExp( "^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$" ); function resolveYamlTimestamp(data) { if (data === null) return false; if (YAML_DATE_REGEXP.exec(data) !== null) return true; if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true; return false; } __name(resolveYamlTimestamp, "resolveYamlTimestamp"); function constructYamlTimestamp(data) { var match, year, month, day, hour, minute, second, fraction = 0, delta = null, tz_hour, tz_minute, date; match = YAML_DATE_REGEXP.exec(data); if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data); if (match === null) throw new Error("Date resolve error"); year = +match[1]; month = +match[2] - 1; day = +match[3]; if (!match[4]) { return new Date(Date.UTC(year, month, day)); } hour = +match[4]; minute = +match[5]; second = +match[6]; if (match[7]) { fraction = match[7].slice(0, 3); while (fraction.length < 3) { fraction += "0"; } fraction = +fraction; } if (match[9]) { tz_hour = +match[10]; tz_minute = +(match[11] || 0); delta = (tz_hour * 60 + tz_minute) * 6e4; if (match[9] === "-") delta = -delta; } date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); if (delta) date.setTime(date.getTime() - delta); return date; } __name(constructYamlTimestamp, "constructYamlTimestamp"); function representYamlTimestamp(object) { return object.toISOString(); } __name(representYamlTimestamp, "representYamlTimestamp"); module2.exports = new Type("tag:yaml.org,2002:timestamp", { kind: "scalar", resolve: resolveYamlTimestamp, construct: constructYamlTimestamp, instanceOf: Date, represent: representYamlTimestamp }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/merge.js var require_merge4 = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/merge.js"(exports2, module2) { "use strict"; var Type = require_type2(); function resolveYamlMerge(data) { return data === "<<" || data === null; } __name(resolveYamlMerge, "resolveYamlMerge"); module2.exports = new Type("tag:yaml.org,2002:merge", { kind: "scalar", resolve: resolveYamlMerge }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/binary.js var require_binary = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/binary.js"(exports2, module2) { "use strict"; var Type = require_type2(); var BASE64_MAP = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"; function resolveYamlBinary(data) { if (data === null) return false; var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP; for (idx = 0; idx < max; idx++) { code = map.indexOf(data.charAt(idx)); if (code > 64) continue; if (code < 0) return false; bitlen += 6; } return bitlen % 8 === 0; } __name(resolveYamlBinary, "resolveYamlBinary"); function constructYamlBinary(data) { var idx, tailbits, input = data.replace(/[\r\n=]/g, ""), max = input.length, map = BASE64_MAP, bits = 0, result = []; for (idx = 0; idx < max; idx++) { if (idx % 4 === 0 && idx) { result.push(bits >> 16 & 255); result.push(bits >> 8 & 255); result.push(bits & 255); } bits = bits << 6 | map.indexOf(input.charAt(idx)); } tailbits = max % 4 * 6; if (tailbits === 0) { result.push(bits >> 16 & 255); result.push(bits >> 8 & 255); result.push(bits & 255); } else if (tailbits === 18) { result.push(bits >> 10 & 255); result.push(bits >> 2 & 255); } else if (tailbits === 12) { result.push(bits >> 4 & 255); } return new Uint8Array(result); } __name(constructYamlBinary, "constructYamlBinary"); function representYamlBinary(object) { var result = "", bits = 0, idx, tail, max = object.length, map = BASE64_MAP; for (idx = 0; idx < max; idx++) { if (idx % 3 === 0 && idx) { result += map[bits >> 18 & 63]; result += map[bits >> 12 & 63]; result += map[bits >> 6 & 63]; result += map[bits & 63]; } bits = (bits << 8) + object[idx]; } tail = max % 3; if (tail === 0) { result += map[bits >> 18 & 63]; result += map[bits >> 12 & 63]; result += map[bits >> 6 & 63]; result += map[bits & 63]; } else if (tail === 2) { result += map[bits >> 10 & 63]; result += map[bits >> 4 & 63]; result += map[bits << 2 & 63]; result += map[64]; } else if (tail === 1) { result += map[bits >> 2 & 63]; result += map[bits << 4 & 63]; result += map[64]; result += map[64]; } return result; } __name(representYamlBinary, "representYamlBinary"); function isBinary(obj2) { return Object.prototype.toString.call(obj2) === "[object Uint8Array]"; } __name(isBinary, "isBinary"); module2.exports = new Type("tag:yaml.org,2002:binary", { kind: "scalar", resolve: resolveYamlBinary, construct: constructYamlBinary, predicate: isBinary, represent: representYamlBinary }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/omap.js var require_omap = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/omap.js"(exports2, module2) { "use strict"; var Type = require_type2(); var _hasOwnProperty = Object.prototype.hasOwnProperty; var _toString = Object.prototype.toString; function resolveYamlOmap(data) { if (data === null) return true; var objectKeys = [], index, length, pair, pairKey, pairHasKey, object = data; for (index = 0, length = object.length; index < length; index += 1) { pair = object[index]; pairHasKey = false; if (_toString.call(pair) !== "[object Object]") return false; for (pairKey in pair) { if (_hasOwnProperty.call(pair, pairKey)) { if (!pairHasKey) pairHasKey = true; else return false; } } if (!pairHasKey) return false; if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey); else return false; } return true; } __name(resolveYamlOmap, "resolveYamlOmap"); function constructYamlOmap(data) { return data !== null ? data : []; } __name(constructYamlOmap, "constructYamlOmap"); module2.exports = new Type("tag:yaml.org,2002:omap", { kind: "sequence", resolve: resolveYamlOmap, construct: constructYamlOmap }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/pairs.js var require_pairs2 = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/pairs.js"(exports2, module2) { "use strict"; var Type = require_type2(); var _toString = Object.prototype.toString; function resolveYamlPairs(data) { if (data === null) return true; var index, length, pair, keys, result, object = data; result = new Array(object.length); for (index = 0, length = object.length; index < length; index += 1) { pair = object[index]; if (_toString.call(pair) !== "[object Object]") return false; keys = Object.keys(pair); if (keys.length !== 1) return false; result[index] = [keys[0], pair[keys[0]]]; } return true; } __name(resolveYamlPairs, "resolveYamlPairs"); function constructYamlPairs(data) { if (data === null) return []; var index, length, pair, keys, result, object = data; result = new Array(object.length); for (index = 0, length = object.length; index < length; index += 1) { pair = object[index]; keys = Object.keys(pair); result[index] = [keys[0], pair[keys[0]]]; } return result; } __name(constructYamlPairs, "constructYamlPairs"); module2.exports = new Type("tag:yaml.org,2002:pairs", { kind: "sequence", resolve: resolveYamlPairs, construct: constructYamlPairs }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/set.js var require_set2 = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/type/set.js"(exports2, module2) { "use strict"; var Type = require_type2(); var _hasOwnProperty = Object.prototype.hasOwnProperty; function resolveYamlSet(data) { if (data === null) return true; var key, object = data; for (key in object) { if (_hasOwnProperty.call(object, key)) { if (object[key] !== null) return false; } } return true; } __name(resolveYamlSet, "resolveYamlSet"); function constructYamlSet(data) { return data !== null ? data : {}; } __name(constructYamlSet, "constructYamlSet"); module2.exports = new Type("tag:yaml.org,2002:set", { kind: "mapping", resolve: resolveYamlSet, construct: constructYamlSet }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/schema/default.js var require_default = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/schema/default.js"(exports2, module2) { "use strict"; module2.exports = require_core4().extend({ implicit: [ require_timestamp2(), require_merge4() ], explicit: [ require_binary(), require_omap(), require_pairs2(), require_set2() ] }); } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/loader.js var require_loader = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/loader.js"(exports2, module2) { "use strict"; var common = require_common2(); var YAMLException = require_exception(); var makeSnippet = require_snippet(); var DEFAULT_SCHEMA = require_default(); var _hasOwnProperty = Object.prototype.hasOwnProperty; var CONTEXT_FLOW_IN = 1; var CONTEXT_FLOW_OUT = 2; var CONTEXT_BLOCK_IN = 3; var CONTEXT_BLOCK_OUT = 4; var CHOMPING_CLIP = 1; var CHOMPING_STRIP = 2; var CHOMPING_KEEP = 3; var PATTERN_NON_PRINTABLE = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/; var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/; var PATTERN_FLOW_INDICATORS = /[,\[\]\{\}]/; var PATTERN_TAG_HANDLE = /^(?:!|!!|![a-z\-]+!)$/i; var PATTERN_TAG_URI = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i; function _class(obj2) { return Object.prototype.toString.call(obj2); } __name(_class, "_class"); function is_EOL(c) { return c === 10 || c === 13; } __name(is_EOL, "is_EOL"); function is_WHITE_SPACE(c) { return c === 9 || c === 32; } __name(is_WHITE_SPACE, "is_WHITE_SPACE"); function is_WS_OR_EOL(c) { return c === 9 || c === 32 || c === 10 || c === 13; } __name(is_WS_OR_EOL, "is_WS_OR_EOL"); function is_FLOW_INDICATOR(c) { return c === 44 || c === 91 || c === 93 || c === 123 || c === 125; } __name(is_FLOW_INDICATOR, "is_FLOW_INDICATOR"); function fromHexCode(c) { var lc; if (48 <= c && c <= 57) { return c - 48; } lc = c | 32; if (97 <= lc && lc <= 102) { return lc - 97 + 10; } return -1; } __name(fromHexCode, "fromHexCode"); function escapedHexLen(c) { if (c === 120) { return 2; } if (c === 117) { return 4; } if (c === 85) { return 8; } return 0; } __name(escapedHexLen, "escapedHexLen"); function fromDecimalCode(c) { if (48 <= c && c <= 57) { return c - 48; } return -1; } __name(fromDecimalCode, "fromDecimalCode"); function simpleEscapeSequence(c) { return c === 48 ? "\0" : c === 97 ? "\x07" : c === 98 ? "\b" : c === 116 ? " " : c === 9 ? " " : c === 110 ? "\n" : c === 118 ? "\v" : c === 102 ? "\f" : c === 114 ? "\r" : c === 101 ? "\x1B" : c === 32 ? " " : c === 34 ? '"' : c === 47 ? "/" : c === 92 ? "\\" : c === 78 ? "\x85" : c === 95 ? "\xA0" : c === 76 ? "\u2028" : c === 80 ? "\u2029" : ""; } __name(simpleEscapeSequence, "simpleEscapeSequence"); function charFromCodepoint(c) { if (c <= 65535) { return String.fromCharCode(c); } return String.fromCharCode( (c - 65536 >> 10) + 55296, (c - 65536 & 1023) + 56320 ); } __name(charFromCodepoint, "charFromCodepoint"); var simpleEscapeCheck = new Array(256); var simpleEscapeMap = new Array(256); for (i = 0; i < 256; i++) { simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0; simpleEscapeMap[i] = simpleEscapeSequence(i); } var i; function State(input, options) { this.input = input; this.filename = options["filename"] || null; this.schema = options["schema"] || DEFAULT_SCHEMA; this.onWarning = options["onWarning"] || null; this.legacy = options["legacy"] || false; this.json = options["json"] || false; this.listener = options["listener"] || null; this.implicitTypes = this.schema.compiledImplicit; this.typeMap = this.schema.compiledTypeMap; this.length = input.length; this.position = 0; this.line = 0; this.lineStart = 0; this.lineIndent = 0; this.firstTabInLine = -1; this.documents = []; } __name(State, "State"); function generateError(state, message) { var mark = { name: state.filename, buffer: state.input.slice(0, -1), // omit trailing \0 position: state.position, line: state.line, column: state.position - state.lineStart }; mark.snippet = makeSnippet(mark); return new YAMLException(message, mark); } __name(generateError, "generateError"); function throwError(state, message) { throw generateError(state, message); } __name(throwError, "throwError"); function throwWarning(state, message) { if (state.onWarning) { state.onWarning.call(null, generateError(state, message)); } } __name(throwWarning, "throwWarning"); var directiveHandlers = { YAML: /* @__PURE__ */ __name(function handleYamlDirective(state, name, args) { var match, major, minor; if (state.version !== null) { throwError(state, "duplication of %YAML directive"); } if (args.length !== 1) { throwError(state, "YAML directive accepts exactly one argument"); } match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]); if (match === null) { throwError(state, "ill-formed argument of the YAML directive"); } major = parseInt(match[1], 10); minor = parseInt(match[2], 10); if (major !== 1) { throwError(state, "unacceptable YAML version of the document"); } state.version = args[0]; state.checkLineBreaks = minor < 2; if (minor !== 1 && minor !== 2) { throwWarning(state, "unsupported YAML version of the document"); } }, "handleYamlDirective"), TAG: /* @__PURE__ */ __name(function handleTagDirective(state, name, args) { var handle, prefix; if (args.length !== 2) { throwError(state, "TAG directive accepts exactly two arguments"); } handle = args[0]; prefix = args[1]; if (!PATTERN_TAG_HANDLE.test(handle)) { throwError(state, "ill-formed tag handle (first argument) of the TAG directive"); } if (_hasOwnProperty.call(state.tagMap, handle)) { throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle'); } if (!PATTERN_TAG_URI.test(prefix)) { throwError(state, "ill-formed tag prefix (second argument) of the TAG directive"); } try { prefix = decodeURIComponent(prefix); } catch (err) { throwError(state, "tag prefix is malformed: " + prefix); } state.tagMap[handle] = prefix; }, "handleTagDirective") }; function captureSegment(state, start, end, checkJson) { var _position, _length, _character, _result; if (start < end) { _result = state.input.slice(start, end); if (checkJson) { for (_position = 0, _length = _result.length; _position < _length; _position += 1) { _character = _result.charCodeAt(_position); if (!(_character === 9 || 32 <= _character && _character <= 1114111)) { throwError(state, "expected valid JSON character"); } } } else if (PATTERN_NON_PRINTABLE.test(_result)) { throwError(state, "the stream contains non-printable characters"); } state.result += _result; } } __name(captureSegment, "captureSegment"); function mergeMappings(state, destination, source, overridableKeys) { var sourceKeys, key, index, quantity; if (!common.isObject(source)) { throwError(state, "cannot merge mappings; the provided source object is unacceptable"); } sourceKeys = Object.keys(source); for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) { key = sourceKeys[index]; if (!_hasOwnProperty.call(destination, key)) { destination[key] = source[key]; overridableKeys[key] = true; } } } __name(mergeMappings, "mergeMappings"); function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startLineStart, startPos) { var index, quantity; if (Array.isArray(keyNode)) { keyNode = Array.prototype.slice.call(keyNode); for (index = 0, quantity = keyNode.length; index < quantity; index += 1) { if (Array.isArray(keyNode[index])) { throwError(state, "nested arrays are not supported inside keys"); } if (typeof keyNode === "object" && _class(keyNode[index]) === "[object Object]") { keyNode[index] = "[object Object]"; } } } if (typeof keyNode === "object" && _class(keyNode) === "[object Object]") { keyNode = "[object Object]"; } keyNode = String(keyNode); if (_result === null) { _result = {}; } if (keyTag === "tag:yaml.org,2002:merge") { if (Array.isArray(valueNode)) { for (index = 0, quantity = valueNode.length; index < quantity; index += 1) { mergeMappings(state, _result, valueNode[index], overridableKeys); } } else { mergeMappings(state, _result, valueNode, overridableKeys); } } else { if (!state.json && !_hasOwnProperty.call(overridableKeys, keyNode) && _hasOwnProperty.call(_result, keyNode)) { state.line = startLine || state.line; state.lineStart = startLineStart || state.lineStart; state.position = startPos || state.position; throwError(state, "duplicated mapping key"); } if (keyNode === "__proto__") { Object.defineProperty(_result, keyNode, { configurable: true, enumerable: true, writable: true, value: valueNode }); } else { _result[keyNode] = valueNode; } delete overridableKeys[keyNode]; } return _result; } __name(storeMappingPair, "storeMappingPair"); function readLineBreak(state) { var ch; ch = state.input.charCodeAt(state.position); if (ch === 10) { state.position++; } else if (ch === 13) { state.position++; if (state.input.charCodeAt(state.position) === 10) { state.position++; } } else { throwError(state, "a line break is expected"); } state.line += 1; state.lineStart = state.position; state.firstTabInLine = -1; } __name(readLineBreak, "readLineBreak"); function skipSeparationSpace(state, allowComments, checkIndent) { var lineBreaks = 0, ch = state.input.charCodeAt(state.position); while (ch !== 0) { while (is_WHITE_SPACE(ch)) { if (ch === 9 && state.firstTabInLine === -1) { state.firstTabInLine = state.position; } ch = state.input.charCodeAt(++state.position); } if (allowComments && ch === 35) { do { ch = state.input.charCodeAt(++state.position); } while (ch !== 10 && ch !== 13 && ch !== 0); } if (is_EOL(ch)) { readLineBreak(state); ch = state.input.charCodeAt(state.position); lineBreaks++; state.lineIndent = 0; while (ch === 32) { state.lineIndent++; ch = state.input.charCodeAt(++state.position); } } else { break; } } if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) { throwWarning(state, "deficient indentation"); } return lineBreaks; } __name(skipSeparationSpace, "skipSeparationSpace"); function testDocumentSeparator(state) { var _position = state.position, ch; ch = state.input.charCodeAt(_position); if ((ch === 45 || ch === 46) && ch === state.input.charCodeAt(_position + 1) && ch === state.input.charCodeAt(_position + 2)) { _position += 3; ch = state.input.charCodeAt(_position); if (ch === 0 || is_WS_OR_EOL(ch)) { return true; } } return false; } __name(testDocumentSeparator, "testDocumentSeparator"); function writeFoldedLines(state, count) { if (count === 1) { state.result += " "; } else if (count > 1) { state.result += common.repeat("\n", count - 1); } } __name(writeFoldedLines, "writeFoldedLines"); function readPlainScalar(state, nodeIndent, withinFlowCollection) { var preceding, following, captureStart, captureEnd, hasPendingContent, _line, _lineStart, _lineIndent, _kind = state.kind, _result = state.result, ch; ch = state.input.charCodeAt(state.position); if (is_WS_OR_EOL(ch) || is_FLOW_INDICATOR(ch) || ch === 35 || ch === 38 || ch === 42 || ch === 33 || ch === 124 || ch === 62 || ch === 39 || ch === 34 || ch === 37 || ch === 64 || ch === 96) { return false; } if (ch === 63 || ch === 45) { following = state.input.charCodeAt(state.position + 1); if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) { return false; } } state.kind = "scalar"; state.result = ""; captureStart = captureEnd = state.position; hasPendingContent = false; while (ch !== 0) { if (ch === 58) { following = state.input.charCodeAt(state.position + 1); if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) { break; } } else if (ch === 35) { preceding = state.input.charCodeAt(state.position - 1); if (is_WS_OR_EOL(preceding)) { break; } } else if (state.position === state.lineStart && testDocumentSeparator(state) || withinFlowCollection && is_FLOW_INDICATOR(ch)) { break; } else if (is_EOL(ch)) { _line = state.line; _lineStart = state.lineStart; _lineIndent = state.lineIndent; skipSeparationSpace(state, false, -1); if (state.lineIndent >= nodeIndent) { hasPendingContent = true; ch = state.input.charCodeAt(state.position); continue; } else { state.position = captureEnd; state.line = _line; state.lineStart = _lineStart; state.lineIndent = _lineIndent; break; } } if (hasPendingContent) { captureSegment(state, captureStart, captureEnd, false); writeFoldedLines(state, state.line - _line); captureStart = captureEnd = state.position; hasPendingContent = false; } if (!is_WHITE_SPACE(ch)) { captureEnd = state.position + 1; } ch = state.input.charCodeAt(++state.position); } captureSegment(state, captureStart, captureEnd, false); if (state.result) { return true; } state.kind = _kind; state.result = _result; return false; } __name(readPlainScalar, "readPlainScalar"); function readSingleQuotedScalar(state, nodeIndent) { var ch, captureStart, captureEnd; ch = state.input.charCodeAt(state.position); if (ch !== 39) { return false; } state.kind = "scalar"; state.result = ""; state.position++; captureStart = captureEnd = state.position; while ((ch = state.input.charCodeAt(state.position)) !== 0) { if (ch === 39) { captureSegment(state, captureStart, state.position, true); ch = state.input.charCodeAt(++state.position); if (ch === 39) { captureStart = state.position; state.position++; captureEnd = state.position; } else { return true; } } else if (is_EOL(ch)) { captureSegment(state, captureStart, captureEnd, true); writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); captureStart = captureEnd = state.position; } else if (state.position === state.lineStart && testDocumentSeparator(state)) { throwError(state, "unexpected end of the document within a single quoted scalar"); } else { state.position++; captureEnd = state.position; } } throwError(state, "unexpected end of the stream within a single quoted scalar"); } __name(readSingleQuotedScalar, "readSingleQuotedScalar"); function readDoubleQuotedScalar(state, nodeIndent) { var captureStart, captureEnd, hexLength, hexResult, tmp, ch; ch = state.input.charCodeAt(state.position); if (ch !== 34) { return false; } state.kind = "scalar"; state.result = ""; state.position++; captureStart = captureEnd = state.position; while ((ch = state.input.charCodeAt(state.position)) !== 0) { if (ch === 34) { captureSegment(state, captureStart, state.position, true); state.position++; return true; } else if (ch === 92) { captureSegment(state, captureStart, state.position, true); ch = state.input.charCodeAt(++state.position); if (is_EOL(ch)) { skipSeparationSpace(state, false, nodeIndent); } else if (ch < 256 && simpleEscapeCheck[ch]) { state.result += simpleEscapeMap[ch]; state.position++; } else if ((tmp = escapedHexLen(ch)) > 0) { hexLength = tmp; hexResult = 0; for (; hexLength > 0; hexLength--) { ch = state.input.charCodeAt(++state.position); if ((tmp = fromHexCode(ch)) >= 0) { hexResult = (hexResult << 4) + tmp; } else { throwError(state, "expected hexadecimal character"); } } state.result += charFromCodepoint(hexResult); state.position++; } else { throwError(state, "unknown escape sequence"); } captureStart = captureEnd = state.position; } else if (is_EOL(ch)) { captureSegment(state, captureStart, captureEnd, true); writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); captureStart = captureEnd = state.position; } else if (state.position === state.lineStart && testDocumentSeparator(state)) { throwError(state, "unexpected end of the document within a double quoted scalar"); } else { state.position++; captureEnd = state.position; } } throwError(state, "unexpected end of the stream within a double quoted scalar"); } __name(readDoubleQuotedScalar, "readDoubleQuotedScalar"); function readFlowCollection(state, nodeIndent) { var readNext = true, _line, _lineStart, _pos, _tag = state.tag, _result, _anchor = state.anchor, following, terminator, isPair, isExplicitPair, isMapping, overridableKeys = /* @__PURE__ */ Object.create(null), keyNode, keyTag, valueNode, ch; ch = state.input.charCodeAt(state.position); if (ch === 91) { terminator = 93; isMapping = false; _result = []; } else if (ch === 123) { terminator = 125; isMapping = true; _result = {}; } else { return false; } if (state.anchor !== null) { state.anchorMap[state.anchor] = _result; } ch = state.input.charCodeAt(++state.position); while (ch !== 0) { skipSeparationSpace(state, true, nodeIndent); ch = state.input.charCodeAt(state.position); if (ch === terminator) { state.position++; state.tag = _tag; state.anchor = _anchor; state.kind = isMapping ? "mapping" : "sequence"; state.result = _result; return true; } else if (!readNext) { throwError(state, "missed comma between flow collection entries"); } else if (ch === 44) { throwError(state, "expected the node content, but found ','"); } keyTag = keyNode = valueNode = null; isPair = isExplicitPair = false; if (ch === 63) { following = state.input.charCodeAt(state.position + 1); if (is_WS_OR_EOL(following)) { isPair = isExplicitPair = true; state.position++; skipSeparationSpace(state, true, nodeIndent); } } _line = state.line; _lineStart = state.lineStart; _pos = state.position; composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); keyTag = state.tag; keyNode = state.result; skipSeparationSpace(state, true, nodeIndent); ch = state.input.charCodeAt(state.position); if ((isExplicitPair || state.line === _line) && ch === 58) { isPair = true; ch = state.input.charCodeAt(++state.position); skipSeparationSpace(state, true, nodeIndent); composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); valueNode = state.result; } if (isMapping) { storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos); } else if (isPair) { _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos)); } else { _result.push(keyNode); } skipSeparationSpace(state, true, nodeIndent); ch = state.input.charCodeAt(state.position); if (ch === 44) { readNext = true; ch = state.input.charCodeAt(++state.position); } else { readNext = false; } } throwError(state, "unexpected end of the stream within a flow collection"); } __name(readFlowCollection, "readFlowCollection"); function readBlockScalar(state, nodeIndent) { var captureStart, folding, chomping = CHOMPING_CLIP, didReadContent = false, detectedIndent = false, textIndent = nodeIndent, emptyLines = 0, atMoreIndented = false, tmp, ch; ch = state.input.charCodeAt(state.position); if (ch === 124) { folding = false; } else if (ch === 62) { folding = true; } else { return false; } state.kind = "scalar"; state.result = ""; while (ch !== 0) { ch = state.input.charCodeAt(++state.position); if (ch === 43 || ch === 45) { if (CHOMPING_CLIP === chomping) { chomping = ch === 43 ? CHOMPING_KEEP : CHOMPING_STRIP; } else { throwError(state, "repeat of a chomping mode identifier"); } } else if ((tmp = fromDecimalCode(ch)) >= 0) { if (tmp === 0) { throwError(state, "bad explicit indentation width of a block scalar; it cannot be less than one"); } else if (!detectedIndent) { textIndent = nodeIndent + tmp - 1; detectedIndent = true; } else { throwError(state, "repeat of an indentation width identifier"); } } else { break; } } if (is_WHITE_SPACE(ch)) { do { ch = state.input.charCodeAt(++state.position); } while (is_WHITE_SPACE(ch)); if (ch === 35) { do { ch = state.input.charCodeAt(++state.position); } while (!is_EOL(ch) && ch !== 0); } } while (ch !== 0) { readLineBreak(state); state.lineIndent = 0; ch = state.input.charCodeAt(state.position); while ((!detectedIndent || state.lineIndent < textIndent) && ch === 32) { state.lineIndent++; ch = state.input.charCodeAt(++state.position); } if (!detectedIndent && state.lineIndent > textIndent) { textIndent = state.lineIndent; } if (is_EOL(ch)) { emptyLines++; continue; } if (state.lineIndent < textIndent) { if (chomping === CHOMPING_KEEP) { state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); } else if (chomping === CHOMPING_CLIP) { if (didReadContent) { state.result += "\n"; } } break; } if (folding) { if (is_WHITE_SPACE(ch)) { atMoreIndented = true; state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); } else if (atMoreIndented) { atMoreIndented = false; state.result += common.repeat("\n", emptyLines + 1); } else if (emptyLines === 0) { if (didReadContent) { state.result += " "; } } else { state.result += common.repeat("\n", emptyLines); } } else { state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines); } didReadContent = true; detectedIndent = true; emptyLines = 0; captureStart = state.position; while (!is_EOL(ch) && ch !== 0) { ch = state.input.charCodeAt(++state.position); } captureSegment(state, captureStart, state.position, false); } return true; } __name(readBlockScalar, "readBlockScalar"); function readBlockSequence(state, nodeIndent) { var _line, _tag = state.tag, _anchor = state.anchor, _result = [], following, detected = false, ch; if (state.firstTabInLine !== -1) return false; if (state.anchor !== null) { state.anchorMap[state.anchor] = _result; } ch = state.input.charCodeAt(state.position); while (ch !== 0) { if (state.firstTabInLine !== -1) { state.position = state.firstTabInLine; throwError(state, "tab characters must not be used in indentation"); } if (ch !== 45) { break; } following = state.input.charCodeAt(state.position + 1); if (!is_WS_OR_EOL(following)) { break; } detected = true; state.position++; if (skipSeparationSpace(state, true, -1)) { if (state.lineIndent <= nodeIndent) { _result.push(null); ch = state.input.charCodeAt(state.position); continue; } } _line = state.line; composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true); _result.push(state.result); skipSeparationSpace(state, true, -1); ch = state.input.charCodeAt(state.position); if ((state.line === _line || state.lineIndent > nodeIndent) && ch !== 0) { throwError(state, "bad indentation of a sequence entry"); } else if (state.lineIndent < nodeIndent) { break; } } if (detected) { state.tag = _tag; state.anchor = _anchor; state.kind = "sequence"; state.result = _result; return true; } return false; } __name(readBlockSequence, "readBlockSequence"); function readBlockMapping(state, nodeIndent, flowIndent) { var following, allowCompact, _line, _keyLine, _keyLineStart, _keyPos, _tag = state.tag, _anchor = state.anchor, _result = {}, overridableKeys = /* @__PURE__ */ Object.create(null), keyTag = null, keyNode = null, valueNode = null, atExplicitKey = false, detected = false, ch; if (state.firstTabInLine !== -1) return false; if (state.anchor !== null) { state.anchorMap[state.anchor] = _result; } ch = state.input.charCodeAt(state.position); while (ch !== 0) { if (!atExplicitKey && state.firstTabInLine !== -1) { state.position = state.firstTabInLine; throwError(state, "tab characters must not be used in indentation"); } following = state.input.charCodeAt(state.position + 1); _line = state.line; if ((ch === 63 || ch === 58) && is_WS_OR_EOL(following)) { if (ch === 63) { if (atExplicitKey) { storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); keyTag = keyNode = valueNode = null; } detected = true; atExplicitKey = true; allowCompact = true; } else if (atExplicitKey) { atExplicitKey = false; allowCompact = true; } else { throwError(state, "incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"); } state.position += 1; ch = following; } else { _keyLine = state.line; _keyLineStart = state.lineStart; _keyPos = state.position; if (!composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) { break; } if (state.line === _line) { ch = state.input.charCodeAt(state.position); while (is_WHITE_SPACE(ch)) { ch = state.input.charCodeAt(++state.position); } if (ch === 58) { ch = state.input.charCodeAt(++state.position); if (!is_WS_OR_EOL(ch)) { throwError(state, "a whitespace character is expected after the key-value separator within a block mapping"); } if (atExplicitKey) { storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); keyTag = keyNode = valueNode = null; } detected = true; atExplicitKey = false; allowCompact = false; keyTag = state.tag; keyNode = state.result; } else if (detected) { throwError(state, "can not read an implicit mapping pair; a colon is missed"); } else { state.tag = _tag; state.anchor = _anchor; return true; } } else if (detected) { throwError(state, "can not read a block mapping entry; a multiline key may not be an implicit key"); } else { state.tag = _tag; state.anchor = _anchor; return true; } } if (state.line === _line || state.lineIndent > nodeIndent) { if (atExplicitKey) { _keyLine = state.line; _keyLineStart = state.lineStart; _keyPos = state.position; } if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) { if (atExplicitKey) { keyNode = state.result; } else { valueNode = state.result; } } if (!atExplicitKey) { storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _keyLine, _keyLineStart, _keyPos); keyTag = keyNode = valueNode = null; } skipSeparationSpace(state, true, -1); ch = state.input.charCodeAt(state.position); } if ((state.line === _line || state.lineIndent > nodeIndent) && ch !== 0) { throwError(state, "bad indentation of a mapping entry"); } else if (state.lineIndent < nodeIndent) { break; } } if (atExplicitKey) { storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); } if (detected) { state.tag = _tag; state.anchor = _anchor; state.kind = "mapping"; state.result = _result; } return detected; } __name(readBlockMapping, "readBlockMapping"); function readTagProperty(state) { var _position, isVerbatim = false, isNamed = false, tagHandle, tagName, ch; ch = state.input.charCodeAt(state.position); if (ch !== 33) return false; if (state.tag !== null) { throwError(state, "duplication of a tag property"); } ch = state.input.charCodeAt(++state.position); if (ch === 60) { isVerbatim = true; ch = state.input.charCodeAt(++state.position); } else if (ch === 33) { isNamed = true; tagHandle = "!!"; ch = state.input.charCodeAt(++state.position); } else { tagHandle = "!"; } _position = state.position; if (isVerbatim) { do { ch = state.input.charCodeAt(++state.position); } while (ch !== 0 && ch !== 62); if (state.position < state.length) { tagName = state.input.slice(_position, state.position); ch = state.input.charCodeAt(++state.position); } else { throwError(state, "unexpected end of the stream within a verbatim tag"); } } else { while (ch !== 0 && !is_WS_OR_EOL(ch)) { if (ch === 33) { if (!isNamed) { tagHandle = state.input.slice(_position - 1, state.position + 1); if (!PATTERN_TAG_HANDLE.test(tagHandle)) { throwError(state, "named tag handle cannot contain such characters"); } isNamed = true; _position = state.position + 1; } else { throwError(state, "tag suffix cannot contain exclamation marks"); } } ch = state.input.charCodeAt(++state.position); } tagName = state.input.slice(_position, state.position); if (PATTERN_FLOW_INDICATORS.test(tagName)) { throwError(state, "tag suffix cannot contain flow indicator characters"); } } if (tagName && !PATTERN_TAG_URI.test(tagName)) { throwError(state, "tag name cannot contain such characters: " + tagName); } try { tagName = decodeURIComponent(tagName); } catch (err) { throwError(state, "tag name is malformed: " + tagName); } if (isVerbatim) { state.tag = tagName; } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) { state.tag = state.tagMap[tagHandle] + tagName; } else if (tagHandle === "!") { state.tag = "!" + tagName; } else if (tagHandle === "!!") { state.tag = "tag:yaml.org,2002:" + tagName; } else { throwError(state, 'undeclared tag handle "' + tagHandle + '"'); } return true; } __name(readTagProperty, "readTagProperty"); function readAnchorProperty(state) { var _position, ch; ch = state.input.charCodeAt(state.position); if (ch !== 38) return false; if (state.anchor !== null) { throwError(state, "duplication of an anchor property"); } ch = state.input.charCodeAt(++state.position); _position = state.position; while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { ch = state.input.charCodeAt(++state.position); } if (state.position === _position) { throwError(state, "name of an anchor node must contain at least one character"); } state.anchor = state.input.slice(_position, state.position); return true; } __name(readAnchorProperty, "readAnchorProperty"); function readAlias(state) { var _position, alias, ch; ch = state.input.charCodeAt(state.position); if (ch !== 42) return false; ch = state.input.charCodeAt(++state.position); _position = state.position; while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { ch = state.input.charCodeAt(++state.position); } if (state.position === _position) { throwError(state, "name of an alias node must contain at least one character"); } alias = state.input.slice(_position, state.position); if (!_hasOwnProperty.call(state.anchorMap, alias)) { throwError(state, 'unidentified alias "' + alias + '"'); } state.result = state.anchorMap[alias]; skipSeparationSpace(state, true, -1); return true; } __name(readAlias, "readAlias"); function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) { var allowBlockStyles, allowBlockScalars, allowBlockCollections, indentStatus = 1, atNewLine = false, hasContent = false, typeIndex, typeQuantity, typeList, type, flowIndent, blockIndent; if (state.listener !== null) { state.listener("open", state); } state.tag = null; state.anchor = null; state.kind = null; state.result = null; allowBlockStyles = allowBlockScalars = allowBlockCollections = CONTEXT_BLOCK_OUT === nodeContext || CONTEXT_BLOCK_IN === nodeContext; if (allowToSeek) { if (skipSeparationSpace(state, true, -1)) { atNewLine = true; if (state.lineIndent > parentIndent) { indentStatus = 1; } else if (state.lineIndent === parentIndent) { indentStatus = 0; } else if (state.lineIndent < parentIndent) { indentStatus = -1; } } } if (indentStatus === 1) { while (readTagProperty(state) || readAnchorProperty(state)) { if (skipSeparationSpace(state, true, -1)) { atNewLine = true; allowBlockCollections = allowBlockStyles; if (state.lineIndent > parentIndent) { indentStatus = 1; } else if (state.lineIndent === parentIndent) { indentStatus = 0; } else if (state.lineIndent < parentIndent) { indentStatus = -1; } } else { allowBlockCollections = false; } } } if (allowBlockCollections) { allowBlockCollections = atNewLine || allowCompact; } if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) { if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) { flowIndent = parentIndent; } else { flowIndent = parentIndent + 1; } blockIndent = state.position - state.lineStart; if (indentStatus === 1) { if (allowBlockCollections && (readBlockSequence(state, blockIndent) || readBlockMapping(state, blockIndent, flowIndent)) || readFlowCollection(state, flowIndent)) { hasContent = true; } else { if (allowBlockScalars && readBlockScalar(state, flowIndent) || readSingleQuotedScalar(state, flowIndent) || readDoubleQuotedScalar(state, flowIndent)) { hasContent = true; } else if (readAlias(state)) { hasContent = true; if (state.tag !== null || state.anchor !== null) { throwError(state, "alias node should not have any properties"); } } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) { hasContent = true; if (state.tag === null) { state.tag = "?"; } } if (state.anchor !== null) { state.anchorMap[state.anchor] = state.result; } } } else if (indentStatus === 0) { hasContent = allowBlockCollections && readBlockSequence(state, blockIndent); } } if (state.tag === null) { if (state.anchor !== null) { state.anchorMap[state.anchor] = state.result; } } else if (state.tag === "?") { if (state.result !== null && state.kind !== "scalar") { throwError(state, 'unacceptable node kind for ! tag; it should be "scalar", not "' + state.kind + '"'); } for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) { type = state.implicitTypes[typeIndex]; if (type.resolve(state.result)) { state.result = type.construct(state.result); state.tag = type.tag; if (state.anchor !== null) { state.anchorMap[state.anchor] = state.result; } break; } } } else if (state.tag !== "!") { if (_hasOwnProperty.call(state.typeMap[state.kind || "fallback"], state.tag)) { type = state.typeMap[state.kind || "fallback"][state.tag]; } else { type = null; typeList = state.typeMap.multi[state.kind || "fallback"]; for (typeIndex = 0, typeQuantity = typeList.length; typeIndex < typeQuantity; typeIndex += 1) { if (state.tag.slice(0, typeList[typeIndex].tag.length) === typeList[typeIndex].tag) { type = typeList[typeIndex]; break; } } } if (!type) { throwError(state, "unknown tag !<" + state.tag + ">"); } if (state.result !== null && type.kind !== state.kind) { throwError(state, "unacceptable node kind for !<" + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"'); } if (!type.resolve(state.result, state.tag)) { throwError(state, "cannot resolve a node with !<" + state.tag + "> explicit tag"); } else { state.result = type.construct(state.result, state.tag); if (state.anchor !== null) { state.anchorMap[state.anchor] = state.result; } } } if (state.listener !== null) { state.listener("close", state); } return state.tag !== null || state.anchor !== null || hasContent; } __name(composeNode, "composeNode"); function readDocument(state) { var documentStart = state.position, _position, directiveName, directiveArgs, hasDirectives = false, ch; state.version = null; state.checkLineBreaks = state.legacy; state.tagMap = /* @__PURE__ */ Object.create(null); state.anchorMap = /* @__PURE__ */ Object.create(null); while ((ch = state.input.charCodeAt(state.position)) !== 0) { skipSeparationSpace(state, true, -1); ch = state.input.charCodeAt(state.position); if (state.lineIndent > 0 || ch !== 37) { break; } hasDirectives = true; ch = state.input.charCodeAt(++state.position); _position = state.position; while (ch !== 0 && !is_WS_OR_EOL(ch)) { ch = state.input.charCodeAt(++state.position); } directiveName = state.input.slice(_position, state.position); directiveArgs = []; if (directiveName.length < 1) { throwError(state, "directive name must not be less than one character in length"); } while (ch !== 0) { while (is_WHITE_SPACE(ch)) { ch = state.input.charCodeAt(++state.position); } if (ch === 35) { do { ch = state.input.charCodeAt(++state.position); } while (ch !== 0 && !is_EOL(ch)); break; } if (is_EOL(ch)) break; _position = state.position; while (ch !== 0 && !is_WS_OR_EOL(ch)) { ch = state.input.charCodeAt(++state.position); } directiveArgs.push(state.input.slice(_position, state.position)); } if (ch !== 0) readLineBreak(state); if (_hasOwnProperty.call(directiveHandlers, directiveName)) { directiveHandlers[directiveName](state, directiveName, directiveArgs); } else { throwWarning(state, 'unknown document directive "' + directiveName + '"'); } } skipSeparationSpace(state, true, -1); if (state.lineIndent === 0 && state.input.charCodeAt(state.position) === 45 && state.input.charCodeAt(state.position + 1) === 45 && state.input.charCodeAt(state.position + 2) === 45) { state.position += 3; skipSeparationSpace(state, true, -1); } else if (hasDirectives) { throwError(state, "directives end mark is expected"); } composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true); skipSeparationSpace(state, true, -1); if (state.checkLineBreaks && PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) { throwWarning(state, "non-ASCII line breaks are interpreted as content"); } state.documents.push(state.result); if (state.position === state.lineStart && testDocumentSeparator(state)) { if (state.input.charCodeAt(state.position) === 46) { state.position += 3; skipSeparationSpace(state, true, -1); } return; } if (state.position < state.length - 1) { throwError(state, "end of the stream or a document separator is expected"); } else { return; } } __name(readDocument, "readDocument"); function loadDocuments(input, options) { input = String(input); options = options || {}; if (input.length !== 0) { if (input.charCodeAt(input.length - 1) !== 10 && input.charCodeAt(input.length - 1) !== 13) { input += "\n"; } if (input.charCodeAt(0) === 65279) { input = input.slice(1); } } var state = new State(input, options); var nullpos = input.indexOf("\0"); if (nullpos !== -1) { state.position = nullpos; throwError(state, "null byte is not allowed in input"); } state.input += "\0"; while (state.input.charCodeAt(state.position) === 32) { state.lineIndent += 1; state.position += 1; } while (state.position < state.length - 1) { readDocument(state); } return state.documents; } __name(loadDocuments, "loadDocuments"); function loadAll(input, iterator, options) { if (iterator !== null && typeof iterator === "object" && typeof options === "undefined") { options = iterator; iterator = null; } var documents = loadDocuments(input, options); if (typeof iterator !== "function") { return documents; } for (var index = 0, length = documents.length; index < length; index += 1) { iterator(documents[index]); } } __name(loadAll, "loadAll"); function load(input, options) { var documents = loadDocuments(input, options); if (documents.length === 0) { return void 0; } else if (documents.length === 1) { return documents[0]; } throw new YAMLException("expected a single document in the stream, but found more"); } __name(load, "load"); module2.exports.loadAll = loadAll; module2.exports.load = load; } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/dumper.js var require_dumper = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/lib/dumper.js"(exports2, module2) { "use strict"; var common = require_common2(); var YAMLException = require_exception(); var DEFAULT_SCHEMA = require_default(); var _toString = Object.prototype.toString; var _hasOwnProperty = Object.prototype.hasOwnProperty; var CHAR_BOM = 65279; var CHAR_TAB = 9; var CHAR_LINE_FEED = 10; var CHAR_CARRIAGE_RETURN = 13; var CHAR_SPACE = 32; var CHAR_EXCLAMATION = 33; var CHAR_DOUBLE_QUOTE = 34; var CHAR_SHARP = 35; var CHAR_PERCENT = 37; var CHAR_AMPERSAND = 38; var CHAR_SINGLE_QUOTE = 39; var CHAR_ASTERISK = 42; var CHAR_COMMA = 44; var CHAR_MINUS = 45; var CHAR_COLON = 58; var CHAR_EQUALS = 61; var CHAR_GREATER_THAN = 62; var CHAR_QUESTION = 63; var CHAR_COMMERCIAL_AT = 64; var CHAR_LEFT_SQUARE_BRACKET = 91; var CHAR_RIGHT_SQUARE_BRACKET = 93; var CHAR_GRAVE_ACCENT = 96; var CHAR_LEFT_CURLY_BRACKET = 123; var CHAR_VERTICAL_LINE = 124; var CHAR_RIGHT_CURLY_BRACKET = 125; var ESCAPE_SEQUENCES = {}; ESCAPE_SEQUENCES[0] = "\\0"; ESCAPE_SEQUENCES[7] = "\\a"; ESCAPE_SEQUENCES[8] = "\\b"; ESCAPE_SEQUENCES[9] = "\\t"; ESCAPE_SEQUENCES[10] = "\\n"; ESCAPE_SEQUENCES[11] = "\\v"; ESCAPE_SEQUENCES[12] = "\\f"; ESCAPE_SEQUENCES[13] = "\\r"; ESCAPE_SEQUENCES[27] = "\\e"; ESCAPE_SEQUENCES[34] = '\\"'; ESCAPE_SEQUENCES[92] = "\\\\"; ESCAPE_SEQUENCES[133] = "\\N"; ESCAPE_SEQUENCES[160] = "\\_"; ESCAPE_SEQUENCES[8232] = "\\L"; ESCAPE_SEQUENCES[8233] = "\\P"; var DEPRECATED_BOOLEANS_SYNTAX = [ "y", "Y", "yes", "Yes", "YES", "on", "On", "ON", "n", "N", "no", "No", "NO", "off", "Off", "OFF" ]; var DEPRECATED_BASE60_SYNTAX = /^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/; function compileStyleMap(schema, map) { var result, keys, index, length, tag, style, type; if (map === null) return {}; result = {}; keys = Object.keys(map); for (index = 0, length = keys.length; index < length; index += 1) { tag = keys[index]; style = String(map[tag]); if (tag.slice(0, 2) === "!!") { tag = "tag:yaml.org,2002:" + tag.slice(2); } type = schema.compiledTypeMap["fallback"][tag]; if (type && _hasOwnProperty.call(type.styleAliases, style)) { style = type.styleAliases[style]; } result[tag] = style; } return result; } __name(compileStyleMap, "compileStyleMap"); function encodeHex(character) { var string, handle, length; string = character.toString(16).toUpperCase(); if (character <= 255) { handle = "x"; length = 2; } else if (character <= 65535) { handle = "u"; length = 4; } else if (character <= 4294967295) { handle = "U"; length = 8; } else { throw new YAMLException("code point within a string may not be greater than 0xFFFFFFFF"); } return "\\" + handle + common.repeat("0", length - string.length) + string; } __name(encodeHex, "encodeHex"); var QUOTING_TYPE_SINGLE = 1; var QUOTING_TYPE_DOUBLE = 2; function State(options) { this.schema = options["schema"] || DEFAULT_SCHEMA; this.indent = Math.max(1, options["indent"] || 2); this.noArrayIndent = options["noArrayIndent"] || false; this.skipInvalid = options["skipInvalid"] || false; this.flowLevel = common.isNothing(options["flowLevel"]) ? -1 : options["flowLevel"]; this.styleMap = compileStyleMap(this.schema, options["styles"] || null); this.sortKeys = options["sortKeys"] || false; this.lineWidth = options["lineWidth"] || 80; this.noRefs = options["noRefs"] || false; this.noCompatMode = options["noCompatMode"] || false; this.condenseFlow = options["condenseFlow"] || false; this.quotingType = options["quotingType"] === '"' ? QUOTING_TYPE_DOUBLE : QUOTING_TYPE_SINGLE; this.forceQuotes = options["forceQuotes"] || false; this.replacer = typeof options["replacer"] === "function" ? options["replacer"] : null; this.implicitTypes = this.schema.compiledImplicit; this.explicitTypes = this.schema.compiledExplicit; this.tag = null; this.result = ""; this.duplicates = []; this.usedDuplicates = null; } __name(State, "State"); function indentString(string, spaces) { var ind = common.repeat(" ", spaces), position = 0, next = -1, result = "", line, length = string.length; while (position < length) { next = string.indexOf("\n", position); if (next === -1) { line = string.slice(position); position = length; } else { line = string.slice(position, next + 1); position = next + 1; } if (line.length && line !== "\n") result += ind; result += line; } return result; } __name(indentString, "indentString"); function generateNextLine(state, level) { return "\n" + common.repeat(" ", state.indent * level); } __name(generateNextLine, "generateNextLine"); function testImplicitResolving(state, str) { var index, length, type; for (index = 0, length = state.implicitTypes.length; index < length; index += 1) { type = state.implicitTypes[index]; if (type.resolve(str)) { return true; } } return false; } __name(testImplicitResolving, "testImplicitResolving"); function isWhitespace(c) { return c === CHAR_SPACE || c === CHAR_TAB; } __name(isWhitespace, "isWhitespace"); function isPrintable(c) { return 32 <= c && c <= 126 || 161 <= c && c <= 55295 && c !== 8232 && c !== 8233 || 57344 <= c && c <= 65533 && c !== CHAR_BOM || 65536 <= c && c <= 1114111; } __name(isPrintable, "isPrintable"); function isNsCharOrWhitespace(c) { return isPrintable(c) && c !== CHAR_BOM && c !== CHAR_CARRIAGE_RETURN && c !== CHAR_LINE_FEED; } __name(isNsCharOrWhitespace, "isNsCharOrWhitespace"); function isPlainSafe(c, prev, inblock) { var cIsNsCharOrWhitespace = isNsCharOrWhitespace(c); var cIsNsChar = cIsNsCharOrWhitespace && !isWhitespace(c); return ( // ns-plain-safe (inblock ? ( // c = flow-in cIsNsCharOrWhitespace ) : cIsNsCharOrWhitespace && c !== CHAR_COMMA && c !== CHAR_LEFT_SQUARE_BRACKET && c !== CHAR_RIGHT_SQUARE_BRACKET && c !== CHAR_LEFT_CURLY_BRACKET && c !== CHAR_RIGHT_CURLY_BRACKET) && c !== CHAR_SHARP && !(prev === CHAR_COLON && !cIsNsChar) || isNsCharOrWhitespace(prev) && !isWhitespace(prev) && c === CHAR_SHARP || prev === CHAR_COLON && cIsNsChar ); } __name(isPlainSafe, "isPlainSafe"); function isPlainSafeFirst(c) { return isPrintable(c) && c !== CHAR_BOM && !isWhitespace(c) && c !== CHAR_MINUS && c !== CHAR_QUESTION && c !== CHAR_COLON && c !== CHAR_COMMA && c !== CHAR_LEFT_SQUARE_BRACKET && c !== CHAR_RIGHT_SQUARE_BRACKET && c !== CHAR_LEFT_CURLY_BRACKET && c !== CHAR_RIGHT_CURLY_BRACKET && c !== CHAR_SHARP && c !== CHAR_AMPERSAND && c !== CHAR_ASTERISK && c !== CHAR_EXCLAMATION && c !== CHAR_VERTICAL_LINE && c !== CHAR_EQUALS && c !== CHAR_GREATER_THAN && c !== CHAR_SINGLE_QUOTE && c !== CHAR_DOUBLE_QUOTE && c !== CHAR_PERCENT && c !== CHAR_COMMERCIAL_AT && c !== CHAR_GRAVE_ACCENT; } __name(isPlainSafeFirst, "isPlainSafeFirst"); function isPlainSafeLast(c) { return !isWhitespace(c) && c !== CHAR_COLON; } __name(isPlainSafeLast, "isPlainSafeLast"); function codePointAt(string, pos) { var first = string.charCodeAt(pos), second; if (first >= 55296 && first <= 56319 && pos + 1 < string.length) { second = string.charCodeAt(pos + 1); if (second >= 56320 && second <= 57343) { return (first - 55296) * 1024 + second - 56320 + 65536; } } return first; } __name(codePointAt, "codePointAt"); function needIndentIndicator(string) { var leadingSpaceRe = /^\n* /; return leadingSpaceRe.test(string); } __name(needIndentIndicator, "needIndentIndicator"); var STYLE_PLAIN = 1; var STYLE_SINGLE = 2; var STYLE_LITERAL = 3; var STYLE_FOLDED = 4; var STYLE_DOUBLE = 5; function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType, quotingType, forceQuotes, inblock) { var i; var char = 0; var prevChar = null; var hasLineBreak = false; var hasFoldableLine = false; var shouldTrackWidth = lineWidth !== -1; var previousLineBreak = -1; var plain = isPlainSafeFirst(codePointAt(string, 0)) && isPlainSafeLast(codePointAt(string, string.length - 1)); if (singleLineOnly || forceQuotes) { for (i = 0; i < string.length; char >= 65536 ? i += 2 : i++) { char = codePointAt(string, i); if (!isPrintable(char)) { return STYLE_DOUBLE; } plain = plain && isPlainSafe(char, prevChar, inblock); prevChar = char; } } else { for (i = 0; i < string.length; char >= 65536 ? i += 2 : i++) { char = codePointAt(string, i); if (char === CHAR_LINE_FEED) { hasLineBreak = true; if (shouldTrackWidth) { hasFoldableLine = hasFoldableLine || // Foldable line = too long, and not more-indented. i - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " "; previousLineBreak = i; } } else if (!isPrintable(char)) { return STYLE_DOUBLE; } plain = plain && isPlainSafe(char, prevChar, inblock); prevChar = char; } hasFoldableLine = hasFoldableLine || shouldTrackWidth && (i - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " "); } if (!hasLineBreak && !hasFoldableLine) { if (plain && !forceQuotes && !testAmbiguousType(string)) { return STYLE_PLAIN; } return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE; } if (indentPerLevel > 9 && needIndentIndicator(string)) { return STYLE_DOUBLE; } if (!forceQuotes) { return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; } return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE; } __name(chooseScalarStyle, "chooseScalarStyle"); function writeScalar(state, string, level, iskey, inblock) { state.dump = (function() { if (string.length === 0) { return state.quotingType === QUOTING_TYPE_DOUBLE ? '""' : "''"; } if (!state.noCompatMode) { if (DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1 || DEPRECATED_BASE60_SYNTAX.test(string)) { return state.quotingType === QUOTING_TYPE_DOUBLE ? '"' + string + '"' : "'" + string + "'"; } } var indent = state.indent * Math.max(1, level); var lineWidth = state.lineWidth === -1 ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent); var singleLineOnly = iskey || state.flowLevel > -1 && level >= state.flowLevel; function testAmbiguity(string2) { return testImplicitResolving(state, string2); } __name(testAmbiguity, "testAmbiguity"); switch (chooseScalarStyle( string, singleLineOnly, state.indent, lineWidth, testAmbiguity, state.quotingType, state.forceQuotes && !iskey, inblock )) { case STYLE_PLAIN: return string; case STYLE_SINGLE: return "'" + string.replace(/'/g, "''") + "'"; case STYLE_LITERAL: return "|" + blockHeader(string, state.indent) + dropEndingNewline(indentString(string, indent)); case STYLE_FOLDED: return ">" + blockHeader(string, state.indent) + dropEndingNewline(indentString(foldString(string, lineWidth), indent)); case STYLE_DOUBLE: return '"' + escapeString(string, lineWidth) + '"'; default: throw new YAMLException("impossible error: invalid scalar style"); } })(); } __name(writeScalar, "writeScalar"); function blockHeader(string, indentPerLevel) { var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : ""; var clip = string[string.length - 1] === "\n"; var keep = clip && (string[string.length - 2] === "\n" || string === "\n"); var chomp = keep ? "+" : clip ? "" : "-"; return indentIndicator + chomp + "\n"; } __name(blockHeader, "blockHeader"); function dropEndingNewline(string) { return string[string.length - 1] === "\n" ? string.slice(0, -1) : string; } __name(dropEndingNewline, "dropEndingNewline"); function foldString(string, width) { var lineRe = /(\n+)([^\n]*)/g; var result = (function() { var nextLF = string.indexOf("\n"); nextLF = nextLF !== -1 ? nextLF : string.length; lineRe.lastIndex = nextLF; return foldLine(string.slice(0, nextLF), width); })(); var prevMoreIndented = string[0] === "\n" || string[0] === " "; var moreIndented; var match; while (match = lineRe.exec(string)) { var prefix = match[1], line = match[2]; moreIndented = line[0] === " "; result += prefix + (!prevMoreIndented && !moreIndented && line !== "" ? "\n" : "") + foldLine(line, width); prevMoreIndented = moreIndented; } return result; } __name(foldString, "foldString"); function foldLine(line, width) { if (line === "" || line[0] === " ") return line; var breakRe = / [^ ]/g; var match; var start = 0, end, curr = 0, next = 0; var result = ""; while (match = breakRe.exec(line)) { next = match.index; if (next - start > width) { end = curr > start ? curr : next; result += "\n" + line.slice(start, end); start = end + 1; } curr = next; } result += "\n"; if (line.length - start > width && curr > start) { result += line.slice(start, curr) + "\n" + line.slice(curr + 1); } else { result += line.slice(start); } return result.slice(1); } __name(foldLine, "foldLine"); function escapeString(string) { var result = ""; var char = 0; var escapeSeq; for (var i = 0; i < string.length; char >= 65536 ? i += 2 : i++) { char = codePointAt(string, i); escapeSeq = ESCAPE_SEQUENCES[char]; if (!escapeSeq && isPrintable(char)) { result += string[i]; if (char >= 65536) result += string[i + 1]; } else { result += escapeSeq || encodeHex(char); } } return result; } __name(escapeString, "escapeString"); function writeFlowSequence(state, level, object) { var _result = "", _tag = state.tag, index, length, value; for (index = 0, length = object.length; index < length; index += 1) { value = object[index]; if (state.replacer) { value = state.replacer.call(object, String(index), value); } if (writeNode(state, level, value, false, false) || typeof value === "undefined" && writeNode(state, level, null, false, false)) { if (_result !== "") _result += "," + (!state.condenseFlow ? " " : ""); _result += state.dump; } } state.tag = _tag; state.dump = "[" + _result + "]"; } __name(writeFlowSequence, "writeFlowSequence"); function writeBlockSequence(state, level, object, compact) { var _result = "", _tag = state.tag, index, length, value; for (index = 0, length = object.length; index < length; index += 1) { value = object[index]; if (state.replacer) { value = state.replacer.call(object, String(index), value); } if (writeNode(state, level + 1, value, true, true, false, true) || typeof value === "undefined" && writeNode(state, level + 1, null, true, true, false, true)) { if (!compact || _result !== "") { _result += generateNextLine(state, level); } if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { _result += "-"; } else { _result += "- "; } _result += state.dump; } } state.tag = _tag; state.dump = _result || "[]"; } __name(writeBlockSequence, "writeBlockSequence"); function writeFlowMapping(state, level, object) { var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, pairBuffer; for (index = 0, length = objectKeyList.length; index < length; index += 1) { pairBuffer = ""; if (_result !== "") pairBuffer += ", "; if (state.condenseFlow) pairBuffer += '"'; objectKey = objectKeyList[index]; objectValue = object[objectKey]; if (state.replacer) { objectValue = state.replacer.call(object, objectKey, objectValue); } if (!writeNode(state, level, objectKey, false, false)) { continue; } if (state.dump.length > 1024) pairBuffer += "? "; pairBuffer += state.dump + (state.condenseFlow ? '"' : "") + ":" + (state.condenseFlow ? "" : " "); if (!writeNode(state, level, objectValue, false, false)) { continue; } pairBuffer += state.dump; _result += pairBuffer; } state.tag = _tag; state.dump = "{" + _result + "}"; } __name(writeFlowMapping, "writeFlowMapping"); function writeBlockMapping(state, level, object, compact) { var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, explicitPair, pairBuffer; if (state.sortKeys === true) { objectKeyList.sort(); } else if (typeof state.sortKeys === "function") { objectKeyList.sort(state.sortKeys); } else if (state.sortKeys) { throw new YAMLException("sortKeys must be a boolean or a function"); } for (index = 0, length = objectKeyList.length; index < length; index += 1) { pairBuffer = ""; if (!compact || _result !== "") { pairBuffer += generateNextLine(state, level); } objectKey = objectKeyList[index]; objectValue = object[objectKey]; if (state.replacer) { objectValue = state.replacer.call(object, objectKey, objectValue); } if (!writeNode(state, level + 1, objectKey, true, true, true)) { continue; } explicitPair = state.tag !== null && state.tag !== "?" || state.dump && state.dump.length > 1024; if (explicitPair) { if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { pairBuffer += "?"; } else { pairBuffer += "? "; } } pairBuffer += state.dump; if (explicitPair) { pairBuffer += generateNextLine(state, level); } if (!writeNode(state, level + 1, objectValue, true, explicitPair)) { continue; } if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { pairBuffer += ":"; } else { pairBuffer += ": "; } pairBuffer += state.dump; _result += pairBuffer; } state.tag = _tag; state.dump = _result || "{}"; } __name(writeBlockMapping, "writeBlockMapping"); function detectType(state, object, explicit) { var _result, typeList, index, length, type, style; typeList = explicit ? state.explicitTypes : state.implicitTypes; for (index = 0, length = typeList.length; index < length; index += 1) { type = typeList[index]; if ((type.instanceOf || type.predicate) && (!type.instanceOf || typeof object === "object" && object instanceof type.instanceOf) && (!type.predicate || type.predicate(object))) { if (explicit) { if (type.multi && type.representName) { state.tag = type.representName(object); } else { state.tag = type.tag; } } else { state.tag = "?"; } if (type.represent) { style = state.styleMap[type.tag] || type.defaultStyle; if (_toString.call(type.represent) === "[object Function]") { _result = type.represent(object, style); } else if (_hasOwnProperty.call(type.represent, style)) { _result = type.represent[style](object, style); } else { throw new YAMLException("!<" + type.tag + '> tag resolver accepts not "' + style + '" style'); } state.dump = _result; } return true; } } return false; } __name(detectType, "detectType"); function writeNode(state, level, object, block, compact, iskey, isblockseq) { state.tag = null; state.dump = object; if (!detectType(state, object, false)) { detectType(state, object, true); } var type = _toString.call(state.dump); var inblock = block; var tagStr; if (block) { block = state.flowLevel < 0 || state.flowLevel > level; } var objectOrArray = type === "[object Object]" || type === "[object Array]", duplicateIndex, duplicate; if (objectOrArray) { duplicateIndex = state.duplicates.indexOf(object); duplicate = duplicateIndex !== -1; } if (state.tag !== null && state.tag !== "?" || duplicate || state.indent !== 2 && level > 0) { compact = false; } if (duplicate && state.usedDuplicates[duplicateIndex]) { state.dump = "*ref_" + duplicateIndex; } else { if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) { state.usedDuplicates[duplicateIndex] = true; } if (type === "[object Object]") { if (block && Object.keys(state.dump).length !== 0) { writeBlockMapping(state, level, state.dump, compact); if (duplicate) { state.dump = "&ref_" + duplicateIndex + state.dump; } } else { writeFlowMapping(state, level, state.dump); if (duplicate) { state.dump = "&ref_" + duplicateIndex + " " + state.dump; } } } else if (type === "[object Array]") { if (block && state.dump.length !== 0) { if (state.noArrayIndent && !isblockseq && level > 0) { writeBlockSequence(state, level - 1, state.dump, compact); } else { writeBlockSequence(state, level, state.dump, compact); } if (duplicate) { state.dump = "&ref_" + duplicateIndex + state.dump; } } else { writeFlowSequence(state, level, state.dump); if (duplicate) { state.dump = "&ref_" + duplicateIndex + " " + state.dump; } } } else if (type === "[object String]") { if (state.tag !== "?") { writeScalar(state, state.dump, level, iskey, inblock); } } else if (type === "[object Undefined]") { return false; } else { if (state.skipInvalid) return false; throw new YAMLException("unacceptable kind of an object to dump " + type); } if (state.tag !== null && state.tag !== "?") { tagStr = encodeURI( state.tag[0] === "!" ? state.tag.slice(1) : state.tag ).replace(/!/g, "%21"); if (state.tag[0] === "!") { tagStr = "!" + tagStr; } else if (tagStr.slice(0, 18) === "tag:yaml.org,2002:") { tagStr = "!!" + tagStr.slice(18); } else { tagStr = "!<" + tagStr + ">"; } state.dump = tagStr + " " + state.dump; } } return true; } __name(writeNode, "writeNode"); function getDuplicateReferences(object, state) { var objects = [], duplicatesIndexes = [], index, length; inspectNode(object, objects, duplicatesIndexes); for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) { state.duplicates.push(objects[duplicatesIndexes[index]]); } state.usedDuplicates = new Array(length); } __name(getDuplicateReferences, "getDuplicateReferences"); function inspectNode(object, objects, duplicatesIndexes) { var objectKeyList, index, length; if (object !== null && typeof object === "object") { index = objects.indexOf(object); if (index !== -1) { if (duplicatesIndexes.indexOf(index) === -1) { duplicatesIndexes.push(index); } } else { objects.push(object); if (Array.isArray(object)) { for (index = 0, length = object.length; index < length; index += 1) { inspectNode(object[index], objects, duplicatesIndexes); } } else { objectKeyList = Object.keys(object); for (index = 0, length = objectKeyList.length; index < length; index += 1) { inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes); } } } } } __name(inspectNode, "inspectNode"); function dump(input, options) { options = options || {}; var state = new State(options); if (!state.noRefs) getDuplicateReferences(input, state); var value = input; if (state.replacer) { value = state.replacer.call({ "": value }, "", value); } if (writeNode(state, 0, value, true, true)) return state.dump + "\n"; return ""; } __name(dump, "dump"); module2.exports.dump = dump; } }); // ../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/index.js var require_js_yaml = __commonJS({ "../../node_modules/.pnpm/js-yaml@4.1.0/node_modules/js-yaml/index.js"(exports2, module2) { "use strict"; var loader = require_loader(); var dumper = require_dumper(); function renamed(from, to) { return function() { throw new Error("Function yaml." + from + " is removed in js-yaml 4. Use yaml." + to + " instead, which is now safe by default."); }; } __name(renamed, "renamed"); module2.exports.Type = require_type2(); module2.exports.Schema = require_schema(); module2.exports.FAILSAFE_SCHEMA = require_failsafe(); module2.exports.JSON_SCHEMA = require_json2(); module2.exports.CORE_SCHEMA = require_core4(); module2.exports.DEFAULT_SCHEMA = require_default(); module2.exports.load = loader.load; module2.exports.loadAll = loader.loadAll; module2.exports.dump = dumper.dump; module2.exports.YAMLException = require_exception(); module2.exports.types = { binary: require_binary(), float: require_float(), map: require_map3(), null: require_null(), pairs: require_pairs2(), set: require_set2(), timestamp: require_timestamp2(), bool: require_bool(), int: require_int(), merge: require_merge4(), omap: require_omap(), seq: require_seq(), str: require_str() }; module2.exports.safeLoad = renamed("safeLoad", "load"); module2.exports.safeLoadAll = renamed("safeLoadAll", "loadAll"); module2.exports.safeDump = renamed("safeDump", "dump"); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/plugin/metadata-loader.js var require_metadata_loader = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/plugin/metadata-loader.js"(exports2) { "use strict"; var __awaiter2 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function(resolve) { resolve(value); }); } __name(adopt, "adopt"); return new (P || (P = Promise))(function(resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } __name(fulfilled, "fulfilled"); function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } __name(rejected, "rejected"); function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } __name(step, "step"); step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MetadataLoader = void 0; var plugin_constants_1 = require_plugin_constants(); var MetadataLoader = class _MetadataLoader { static { __name(this, "MetadataLoader"); } static addRefreshHook(hook) { return _MetadataLoader.refreshHooks.push(hook); } load(metadata) { return __awaiter2(this, void 0, void 0, function* () { const pkgMetadata = metadata["@nestjs/swagger"]; if (!pkgMetadata) { return; } const { models, controllers } = pkgMetadata; if (models) { yield this.applyMetadata(models); } if (controllers) { yield this.applyMetadata(controllers); } this.runHooks(); }); } applyMetadata(meta) { return __awaiter2(this, void 0, void 0, function* () { const loadPromises = meta.map(([fileImport, fileMeta]) => __awaiter2(this, void 0, void 0, function* () { const fileRef = yield fileImport; Object.keys(fileMeta).map((key) => { const clsRef = fileRef[key]; clsRef[plugin_constants_1.METADATA_FACTORY_NAME] = () => fileMeta[key]; }); })); yield Promise.all(loadPromises); }); } runHooks() { _MetadataLoader.refreshHooks.forEach((hook) => hook()); } }; exports2.MetadataLoader = MetadataLoader; MetadataLoader.refreshHooks = new Array(); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/model-properties-accessor.js var require_model_properties_accessor = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/model-properties-accessor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ModelPropertiesAccessor = void 0; var shared_utils_1 = require_shared_utils(); require_Reflect(); var constants_1 = require_constants8(); var api_property_decorator_1 = require_api_property_decorator(); var plugin_constants_1 = require_plugin_constants(); var ModelPropertiesAccessor = class { static { __name(this, "ModelPropertiesAccessor"); } getModelProperties(prototype) { const properties = Reflect.getMetadata(constants_1.DECORATORS.API_MODEL_PROPERTIES_ARRAY, prototype) || []; return properties.filter(shared_utils_1.isString).filter((key) => key.charAt(0) === ":" && !(0, shared_utils_1.isFunction)(prototype[key])).map((key) => key.slice(1)); } applyMetadataFactory(prototype) { const classPrototype = prototype; do { if (!prototype.constructor) { return; } if (!prototype.constructor[plugin_constants_1.METADATA_FACTORY_NAME]) { continue; } const metadata = prototype.constructor[plugin_constants_1.METADATA_FACTORY_NAME](); const properties = Object.keys(metadata); properties.forEach((key) => { (0, api_property_decorator_1.createApiPropertyDecorator)(metadata[key], false)(classPrototype, key); }); } while ((prototype = Reflect.getPrototypeOf(prototype)) && prototype !== Object.prototype && prototype); } }; exports2.ModelPropertiesAccessor = ModelPropertiesAccessor; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-extra-models.explorer.js var require_api_extra_models_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-extra-models.explorer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exploreApiExtraModelsMetadata = exports2.exploreGlobalApiExtraModelsMetadata = void 0; var constants_1 = require_constants8(); var exploreGlobalApiExtraModelsMetadata = /* @__PURE__ */ __name((metatype) => { const extraModels = Reflect.getMetadata(constants_1.DECORATORS.API_EXTRA_MODELS, metatype); return extraModels || []; }, "exploreGlobalApiExtraModelsMetadata"); exports2.exploreGlobalApiExtraModelsMetadata = exploreGlobalApiExtraModelsMetadata; var exploreApiExtraModelsMetadata = /* @__PURE__ */ __name((instance, prototype, method) => Reflect.getMetadata(constants_1.DECORATORS.API_EXTRA_MODELS, method) || [], "exploreApiExtraModelsMetadata"); exports2.exploreApiExtraModelsMetadata = exploreApiExtraModelsMetadata; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/get-schema-path.util.js var require_get_schema_path_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/get-schema-path.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.refs = exports2.getSchemaPath = void 0; var shared_utils_1 = require_shared_utils(); function getSchemaPath(model) { const modelName = (0, shared_utils_1.isString)(model) ? model : model && model.name; return `#/components/schemas/${modelName}`; } __name(getSchemaPath, "getSchemaPath"); exports2.getSchemaPath = getSchemaPath; function refs(...models) { return models.map((item) => ({ $ref: getSchemaPath(item.name) })); } __name(refs, "refs"); exports2.refs = refs; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/index.js var require_utils13 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_get_schema_path_util(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/is-body-parameter.util.js var require_is_body_parameter_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/is-body-parameter.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isBodyParameter = void 0; function isBodyParameter(param) { return param.in === "body"; } __name(isBodyParameter, "isBodyParameter"); exports2.isBodyParameter = isBodyParameter; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/constants.js var require_constants9 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BUILT_IN_TYPES = void 0; exports2.BUILT_IN_TYPES = [String, Boolean, Number, Object, Array]; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/is-built-in-type.util.js var require_is_built_in_type_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/is-built-in-type.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isBuiltInType = void 0; var lodash_1 = require_lodash(); var constants_1 = require_constants9(); function isBuiltInType(type) { return (0, lodash_1.isFunction)(type) && constants_1.BUILT_IN_TYPES.some((item) => item === type); } __name(isBuiltInType, "isBuiltInType"); exports2.isBuiltInType = isBuiltInType; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/is-date-ctor.util.js var require_is_date_ctor_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/is-date-ctor.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isDateCtor = void 0; function isDateCtor(type) { return type === Date; } __name(isDateCtor, "isDateCtor"); exports2.isDateCtor = isDateCtor; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js var require_schema_object_factory = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SchemaObjectFactory = void 0; var shared_utils_1 = require_shared_utils(); var lodash_1 = require_lodash(); var constants_1 = require_constants8(); var helpers_1 = require_helpers2(); var api_extra_models_explorer_1 = require_api_extra_models_explorer(); var utils_1 = require_utils13(); var enum_utils_1 = require_enum_utils(); var is_body_parameter_util_1 = require_is_body_parameter_util(); var is_built_in_type_util_1 = require_is_built_in_type_util(); var is_date_ctor_util_1 = require_is_date_ctor_util(); var SchemaObjectFactory = class { static { __name(this, "SchemaObjectFactory"); } constructor(modelPropertiesAccessor, swaggerTypesMapper) { this.modelPropertiesAccessor = modelPropertiesAccessor; this.swaggerTypesMapper = swaggerTypesMapper; } createFromModel(parameters, schemas) { const parameterObjects = parameters.map((param) => { if (this.isLazyTypeFunc(param.type)) { [param.type, param.isArray] = (0, helpers_1.getTypeIsArrayTuple)(param.type(), void 0); } if (!(0, is_body_parameter_util_1.isBodyParameter)(param) && param.enumName) { return this.createEnumParam(param, schemas); } if (this.isPrimitiveType(param.type)) { return param; } if (this.isArrayCtor(param.type)) { return this.mapArrayCtorParam(param); } if (!(0, is_body_parameter_util_1.isBodyParameter)(param)) { return this.createQueryOrParamSchema(param, schemas); } const modelName = this.exploreModelSchema(param.type, schemas); const name = param.name || modelName; const schema = Object.assign(Object.assign({}, param.schema || {}), { $ref: (0, utils_1.getSchemaPath)(modelName) }); const isArray = param.isArray; param = (0, lodash_1.omit)(param, "isArray"); if (isArray) { return Object.assign(Object.assign({}, param), { name, schema: { type: "array", items: schema } }); } return Object.assign(Object.assign({}, param), { name, schema }); }); return (0, lodash_1.flatten)(parameterObjects); } createQueryOrParamSchema(param, schemas) { if ((0, is_date_ctor_util_1.isDateCtor)(param.type)) { return Object.assign(Object.assign({ format: "date-time" }, param), { type: "string" }); } if (this.isBigInt(param.type)) { return Object.assign(Object.assign({ format: "int64" }, param), { type: "integer" }); } if ((0, lodash_1.isFunction)(param.type)) { const propertiesWithType = this.extractPropertiesFromType(param.type, schemas); if (!propertiesWithType) { return param; } return propertiesWithType.map((property) => { var _a, _b; const parameterObject = Object.assign(Object.assign({}, (0, lodash_1.omit)(property, "enumName")), { in: (_a = param.in) !== null && _a !== void 0 ? _a : "query", required: (_b = property.required) !== null && _b !== void 0 ? _b : true }); return parameterObject; }); } return param; } extractPropertiesFromType(type, schemas, pendingSchemasRefs = []) { const { prototype } = type; if (!prototype) { return; } const extraModels = (0, api_extra_models_explorer_1.exploreGlobalApiExtraModelsMetadata)(type); extraModels.forEach((item) => this.exploreModelSchema(item, schemas, pendingSchemasRefs)); this.modelPropertiesAccessor.applyMetadataFactory(prototype); const modelProperties = this.modelPropertiesAccessor.getModelProperties(prototype); const propertiesWithType = modelProperties.map((key) => { const property = this.mergePropertyWithMetadata(key, prototype, schemas, pendingSchemasRefs); const schemaCombinators = ["oneOf", "anyOf", "allOf"]; let keyOfCombinators = ""; if (schemaCombinators.some((_key) => { keyOfCombinators = _key; return _key in property; })) { if (((property === null || property === void 0 ? void 0 : property.type) === "array" || property.isArray) && keyOfCombinators) { property.items = {}; property.items[keyOfCombinators] = property[keyOfCombinators]; delete property[keyOfCombinators]; } else { delete property.type; } } return property; }); return propertiesWithType; } exploreModelSchema(type, schemas, pendingSchemasRefs = []) { if (this.isLazyTypeFunc(type)) { type = type(); } const propertiesWithType = this.extractPropertiesFromType(type, schemas, pendingSchemasRefs); if (!propertiesWithType) { return ""; } const extensionProperties = Reflect.getMetadata(constants_1.DECORATORS.API_EXTENSION, type) || {}; const typeDefinition = Object.assign({ type: "object", properties: (0, lodash_1.mapValues)((0, lodash_1.keyBy)(propertiesWithType, "name"), (property) => (0, lodash_1.omit)(property, ["name", "isArray", "required", "enumName"])) }, extensionProperties); const typeDefinitionRequiredFields = propertiesWithType.filter((property) => property.required != false).map((property) => property.name); if (typeDefinitionRequiredFields.length > 0) { typeDefinition["required"] = typeDefinitionRequiredFields; } schemas[type.name] = typeDefinition; return type.name; } mergePropertyWithMetadata(key, prototype, schemas, pendingSchemaRefs, metadata) { if (!metadata) { metadata = Reflect.getMetadata(constants_1.DECORATORS.API_MODEL_PROPERTIES, prototype, key) || {}; } if (this.isLazyTypeFunc(metadata.type)) { metadata.type = metadata.type(); [metadata.type, metadata.isArray] = (0, helpers_1.getTypeIsArrayTuple)(metadata.type, metadata.isArray); } if (Array.isArray(metadata.type)) { return this.createFromNestedArray(key, metadata, schemas, pendingSchemaRefs); } return this.createSchemaMetadata(key, metadata, schemas, pendingSchemaRefs); } createEnumParam(param, schemas) { var _a, _b, _c, _d, _e; const enumName = param.enumName; const $ref = (0, utils_1.getSchemaPath)(enumName); if (!(enumName in schemas)) { const _enum = param.enum ? param.enum : param.schema ? param.schema["items"] ? param.schema["items"]["enum"] : param.schema["enum"] : param.isArray && param.items ? param.items.enum : void 0; schemas[enumName] = Object.assign({ type: (_d = param.isArray ? (_b = (_a = param.schema) === null || _a === void 0 ? void 0 : _a["items"]) === null || _b === void 0 ? void 0 : _b["type"] : (_c = param.schema) === null || _c === void 0 ? void 0 : _c["type"]) !== null && _d !== void 0 ? _d : "string", enum: _enum }, param["x-enumNames"] ? { "x-enumNames": param["x-enumNames"] } : {}); } param.schema = param.isArray || ((_e = param.schema) === null || _e === void 0 ? void 0 : _e["items"]) ? { type: "array", items: { $ref } } : { $ref }; return (0, lodash_1.omit)(param, ["isArray", "items", "enumName", "enum", "x-enumNames"]); } createEnumSchemaType(key, metadata, schemas) { var _a; if (!metadata.enumName) { return Object.assign(Object.assign({}, metadata), { name: metadata.name || key }); } const enumName = metadata.enumName; const $ref = (0, utils_1.getSchemaPath)(enumName); const additionalParams = ["description", "deprecated", "default"]; const additionalFields = additionalParams.reduce((acc, param) => Object.assign(Object.assign({}, acc), metadata[param] && { [param]: metadata[param] }), {}); const enumType = (_a = metadata.isArray ? metadata.items["type"] : metadata.type) !== null && _a !== void 0 ? _a : "string"; schemas[enumName] = Object.assign(Object.assign({ type: enumType }, additionalFields), { enum: metadata.isArray && metadata.items ? metadata.items["enum"] : metadata.enum }); const _schemaObject = Object.assign(Object.assign({}, metadata), { name: metadata.name || key, type: metadata.isArray ? "array" : "string" }); const refHost = metadata.isArray ? { items: { $ref } } : { $ref }; const paramObject = Object.assign(Object.assign({}, _schemaObject), refHost); const pathsToOmit = ["enum", "enumName", ...additionalParams]; if (!metadata.isArray) { pathsToOmit.push("type"); } return (0, lodash_1.omit)(paramObject, pathsToOmit); } createNotBuiltInTypeReference(key, metadata, trueMetadataType, schemas, pendingSchemaRefs) { if ((0, shared_utils_1.isUndefined)(trueMetadataType)) { throw new Error(`A circular dependency has been detected (property key: "${key}"). Please, make sure that each side of a bidirectional relationships are using lazy resolvers ("type: () => ClassType").`); } let schemaObjectName = trueMetadataType.name; if (!(schemaObjectName in schemas) && !pendingSchemaRefs.includes(schemaObjectName)) { schemaObjectName = this.exploreModelSchema(trueMetadataType, schemas, [...pendingSchemaRefs, schemaObjectName]); } const $ref = (0, utils_1.getSchemaPath)(schemaObjectName); if (metadata.isArray) { return this.transformToArraySchemaProperty(metadata, key, { $ref }); } const keysToRemove = ["type", "isArray", "required", "name"]; const validMetadataObject = (0, lodash_1.omit)(metadata, keysToRemove); const extraMetadataKeys = Object.keys(validMetadataObject); if (extraMetadataKeys.length > 0) { return Object.assign(Object.assign({ name: metadata.name || key, required: metadata.required }, validMetadataObject), { allOf: [{ $ref }] }); } return { name: metadata.name || key, required: metadata.required, $ref }; } transformToArraySchemaProperty(metadata, key, type) { const keysToRemove = ["type", "enum"]; const [movedProperties, keysToMove] = this.extractPropertyModifiers(metadata); const schemaHost = Object.assign(Object.assign({}, (0, lodash_1.omit)(metadata, [...keysToRemove, ...keysToMove])), { name: metadata.name || key, type: "array", items: (0, lodash_1.isString)(type) ? Object.assign({ type }, movedProperties) : Object.assign(Object.assign({}, type), movedProperties) }); schemaHost.items = (0, lodash_1.omitBy)(schemaHost.items, shared_utils_1.isUndefined); return schemaHost; } mapArrayCtorParam(param) { return Object.assign(Object.assign({}, (0, lodash_1.omit)(param, "type")), { schema: { type: "array", items: { type: "string" } } }); } createFromObjectLiteral(key, literalObj, schemas) { const objLiteralKeys = Object.keys(literalObj); const properties = {}; objLiteralKeys.forEach((key2) => { const propertyCompilerMetadata = literalObj[key2]; if ((0, enum_utils_1.isEnumArray)(propertyCompilerMetadata)) { propertyCompilerMetadata.type = "array"; const enumValues = (0, enum_utils_1.getEnumValues)(propertyCompilerMetadata.enum); propertyCompilerMetadata.items = { type: (0, enum_utils_1.getEnumType)(enumValues), enum: enumValues }; delete propertyCompilerMetadata.enum; } else if (propertyCompilerMetadata.enum) { const enumValues = (0, enum_utils_1.getEnumValues)(propertyCompilerMetadata.enum); propertyCompilerMetadata.enum = enumValues; propertyCompilerMetadata.type = (0, enum_utils_1.getEnumType)(enumValues); } const propertyMetadata = this.mergePropertyWithMetadata(key2, Object, schemas, [], propertyCompilerMetadata); const keysToRemove = ["isArray", "name"]; const validMetadataObject = (0, lodash_1.omit)(propertyMetadata, keysToRemove); properties[key2] = validMetadataObject; }); return { name: key, type: "object", properties }; } createFromNestedArray(key, metadata, schemas, pendingSchemaRefs) { const recurse = /* @__PURE__ */ __name((type) => { if (!Array.isArray(type)) { const schemaMetadata = this.createSchemaMetadata(key, metadata, schemas, pendingSchemaRefs, type); return (0, lodash_1.omit)(schemaMetadata, ["isArray", "name"]); } return { name: key, type: "array", items: recurse(type[0]) }; }, "recurse"); return recurse(metadata.type); } createSchemaMetadata(key, metadata, schemas, pendingSchemaRefs, nestedArrayType) { const typeRef = nestedArrayType || metadata.type; if (this.isObjectLiteral(typeRef)) { return this.createFromObjectLiteral(key, typeRef, schemas); } if ((0, lodash_1.isString)(typeRef)) { if ((0, enum_utils_1.isEnumMetadata)(metadata)) { return this.createEnumSchemaType(key, metadata, schemas); } if (metadata.isArray) { return this.transformToArraySchemaProperty(metadata, key, typeRef); } return Object.assign(Object.assign({}, metadata), { name: metadata.name || key }); } if ((0, is_date_ctor_util_1.isDateCtor)(typeRef)) { if (metadata.isArray) { return this.transformToArraySchemaProperty(metadata, key, { format: metadata.format || "date-time", type: "string" }); } return Object.assign(Object.assign({ format: "date-time" }, metadata), { type: "string", name: metadata.name || key }); } if (this.isBigInt(typeRef)) { return Object.assign(Object.assign({ format: "int64" }, metadata), { type: "integer", name: metadata.name || key }); } if (!(0, is_built_in_type_util_1.isBuiltInType)(typeRef)) { return this.createNotBuiltInTypeReference(key, metadata, typeRef, schemas, pendingSchemaRefs); } const typeName = this.getTypeName(typeRef); const itemType = this.swaggerTypesMapper.mapTypeToOpenAPIType(typeName); if (metadata.isArray) { return this.transformToArraySchemaProperty(metadata, key, { type: itemType }); } else if (itemType === "array") { const defaultOnArray = "string"; return this.transformToArraySchemaProperty(metadata, key, { type: defaultOnArray }); } return Object.assign(Object.assign({}, metadata), { name: metadata.name || key, type: itemType }); } isArrayCtor(type) { return type === Array; } isPrimitiveType(type) { return (0, lodash_1.isFunction)(type) && [String, Boolean, Number].some((item) => item === type); } isLazyTypeFunc(type) { return (0, lodash_1.isFunction)(type) && type.name == "type"; } getTypeName(type) { return type && (0, lodash_1.isFunction)(type) ? type.name : type; } isObjectLiteral(obj2) { if (typeof obj2 !== "object" || !obj2) { return false; } const hasOwnProp = Object.prototype.hasOwnProperty; let objPrototype = obj2; while (Object.getPrototypeOf(objPrototype = Object.getPrototypeOf(objPrototype)) !== null) ; for (const prop in obj2) { if (!hasOwnProp.call(obj2, prop) && !hasOwnProp.call(objPrototype, prop)) { return false; } } return Object.getPrototypeOf(obj2) === objPrototype; } isBigInt(type) { return type === BigInt; } extractPropertyModifiers(metadata) { const modifierKeys = [ "format", "maximum", "maxLength", "minimum", "minLength", "pattern" ]; return [(0, lodash_1.pick)(metadata, modifierKeys), modifierKeys]; } }; exports2.SchemaObjectFactory = SchemaObjectFactory; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/swagger-types-mapper.js var require_swagger_types_mapper = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/swagger-types-mapper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SwaggerTypesMapper = void 0; var lodash_1 = require_lodash(); var SwaggerTypesMapper = class { static { __name(this, "SwaggerTypesMapper"); } constructor() { this.keysToRemove = [ "type", "isArray", "enum", "enumName", "items", "$ref", ...this.getSchemaOptionsKeys() ]; } mapParamTypes(parameters) { return parameters.map((param) => { if (this.hasSchemaDefinition(param)) { return this.omitParamKeys(param); } const { type } = param; const typeName = type && (0, lodash_1.isFunction)(type) ? this.mapTypeToOpenAPIType(type.name) : this.mapTypeToOpenAPIType(type); const paramWithTypeMetadata = (0, lodash_1.omitBy)(Object.assign(Object.assign({}, param), { type: typeName }), lodash_1.isUndefined); if (this.isEnumArrayType(paramWithTypeMetadata)) { return this.mapEnumArrayType(paramWithTypeMetadata, this.keysToRemove); } else if (paramWithTypeMetadata.isArray) { return this.mapArrayType(paramWithTypeMetadata, this.keysToRemove); } return Object.assign(Object.assign({}, (0, lodash_1.omit)(param, this.keysToRemove)), { schema: (0, lodash_1.omitBy)(Object.assign(Object.assign(Object.assign({}, this.getSchemaOptions(param)), param.schema || {}), { enum: paramWithTypeMetadata.enum, type: paramWithTypeMetadata.type, $ref: paramWithTypeMetadata.$ref }), lodash_1.isUndefined) }); }); } mapTypeToOpenAPIType(type) { if (!(type && type.charAt)) { return; } return type.charAt(0).toLowerCase() + type.slice(1); } mapEnumArrayType(param, keysToRemove) { return Object.assign(Object.assign({}, (0, lodash_1.omit)(param, keysToRemove)), { schema: Object.assign(Object.assign({}, this.getSchemaOptions(param)), { type: "array", items: param.items }) }); } mapArrayType(param, keysToRemove) { const items = param.items || (0, lodash_1.omitBy)(Object.assign(Object.assign({}, param.schema || {}), { enum: param.enum, type: this.mapTypeToOpenAPIType(param.type) }), lodash_1.isUndefined); return Object.assign(Object.assign({}, (0, lodash_1.omit)(param, keysToRemove)), { schema: Object.assign(Object.assign({}, this.getSchemaOptions(param)), { type: "array", items }) }); } getSchemaOptions(param) { const schemaKeys = this.getSchemaOptionsKeys(); const optionsObject = schemaKeys.reduce((acc, key) => Object.assign(Object.assign({}, acc), { [key]: param[key] }), {}); return (0, lodash_1.omitBy)(optionsObject, lodash_1.isUndefined); } isEnumArrayType(param) { return param.isArray && param.items && param.items.enum; } hasSchemaDefinition(param) { return !!param.schema; } omitParamKeys(param) { return (0, lodash_1.omit)(param, this.keysToRemove); } getSchemaOptionsKeys() { return [ "properties", "patternProperties", "additionalProperties", "minimum", "maximum", "maxProperties", "minItems", "minProperties", "maxItems", "minLength", "maxLength", "exclusiveMaximum", "exclusiveMinimum", "uniqueItems", "title", "format", "pattern", "nullable", "default", "example" ]; } }; exports2.SwaggerTypesMapper = SwaggerTypesMapper; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-exclude-controller.explorer.js var require_api_exclude_controller_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-exclude-controller.explorer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exploreApiExcludeControllerMetadata = void 0; var constants_1 = require_constants8(); var exploreApiExcludeControllerMetadata = /* @__PURE__ */ __name((metatype) => { var _a; return ((_a = Reflect.getMetadata(constants_1.DECORATORS.API_EXCLUDE_CONTROLLER, metatype)) === null || _a === void 0 ? void 0 : _a[0]) === true; }, "exploreApiExcludeControllerMetadata"); exports2.exploreApiExcludeControllerMetadata = exploreApiExcludeControllerMetadata; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-exclude-endpoint.explorer.js var require_api_exclude_endpoint_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-exclude-endpoint.explorer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exploreApiExcludeEndpointMetadata = void 0; var constants_1 = require_constants8(); var exploreApiExcludeEndpointMetadata = /* @__PURE__ */ __name((instance, prototype, method) => Reflect.getMetadata(constants_1.DECORATORS.API_EXCLUDE_ENDPOINT, method), "exploreApiExcludeEndpointMetadata"); exports2.exploreApiExcludeEndpointMetadata = exploreApiExcludeEndpointMetadata; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-headers.explorer.js var require_api_headers_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-headers.explorer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exploreGlobalApiHeaderMetadata = void 0; var constants_1 = require_constants8(); var exploreGlobalApiHeaderMetadata = /* @__PURE__ */ __name((metatype) => { const headers = Reflect.getMetadata(constants_1.DECORATORS.API_HEADERS, metatype); return headers ? { root: { parameters: headers }, depth: 1 } : void 0; }, "exploreGlobalApiHeaderMetadata"); exports2.exploreGlobalApiHeaderMetadata = exploreGlobalApiHeaderMetadata; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-operation.explorer.js var require_api_operation_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-operation.explorer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exploreApiOperationMetadata = void 0; var constants_1 = require_constants8(); var api_operation_decorator_1 = require_api_operation_decorator(); var plugin_constants_1 = require_plugin_constants(); var exploreApiOperationMetadata = /* @__PURE__ */ __name((instance, prototype, method) => { applyMetadataFactory(prototype, instance); return Reflect.getMetadata(constants_1.DECORATORS.API_OPERATION, method); }, "exploreApiOperationMetadata"); exports2.exploreApiOperationMetadata = exploreApiOperationMetadata; function applyMetadataFactory(prototype, instance) { const classPrototype = prototype; do { if (!prototype.constructor) { return; } if (!prototype.constructor[plugin_constants_1.METADATA_FACTORY_NAME]) { continue; } const metadata = prototype.constructor[plugin_constants_1.METADATA_FACTORY_NAME](); const methodKeys = Object.keys(metadata).filter((key) => typeof instance[key] === "function"); methodKeys.forEach((key) => { const operationMeta = {}; const { summary, deprecated, tags } = metadata[key]; applyIfNotNil(operationMeta, "summary", summary); applyIfNotNil(operationMeta, "deprecated", deprecated); applyIfNotNil(operationMeta, "tags", tags); if (Object.keys(operationMeta).length === 0) { return; } (0, api_operation_decorator_1.ApiOperation)(operationMeta, { overrideExisting: false })(classPrototype, key, Object.getOwnPropertyDescriptor(classPrototype, key)); }); } while ((prototype = Reflect.getPrototypeOf(prototype)) && prototype !== Object.prototype && prototype); } __name(applyMetadataFactory, "applyMetadataFactory"); function applyIfNotNil(target, key, value) { if (value !== void 0 && value !== null) { target[key] = value; } } __name(applyIfNotNil, "applyIfNotNil"); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/reverse-object-keys.util.js var require_reverse_object_keys_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/reverse-object-keys.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.reverseObjectKeys = void 0; function reverseObjectKeys(originalObject) { const reversedObject = {}; const keys = Object.keys(originalObject).reverse(); for (const key of keys) { reversedObject[key] = originalObject[key]; } return reversedObject; } __name(reverseObjectKeys, "reverseObjectKeys"); exports2.reverseObjectKeys = reverseObjectKeys; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/parameter-metadata-accessor.js var require_parameter_metadata_accessor = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/parameter-metadata-accessor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParameterMetadataAccessor = void 0; var constants_1 = require_constants(); var route_paramtypes_enum_1 = require_route_paramtypes_enum(); var lodash_1 = require_lodash(); var reverse_object_keys_util_1 = require_reverse_object_keys_util(); var PARAM_TOKEN_PLACEHOLDER = "placeholder"; var ParameterMetadataAccessor = class { static { __name(this, "ParameterMetadataAccessor"); } explore(instance, prototype, method) { const types = Reflect.getMetadata(constants_1.PARAMTYPES_METADATA, instance, method.name); const routeArgsMetadata = Reflect.getMetadata(constants_1.ROUTE_ARGS_METADATA, instance.constructor, method.name) || {}; const parametersWithType = (0, lodash_1.mapValues)((0, reverse_object_keys_util_1.reverseObjectKeys)(routeArgsMetadata), (param) => ({ type: types[param.index], name: param.data, required: true })); const excludePredicate = /* @__PURE__ */ __name((val) => val.in === PARAM_TOKEN_PLACEHOLDER || val.name && val.in === "body", "excludePredicate"); const parameters = (0, lodash_1.omitBy)((0, lodash_1.mapValues)(parametersWithType, (val, key) => Object.assign(Object.assign({}, val), { in: this.mapParamType(key) })), excludePredicate); return !(0, lodash_1.isEmpty)(parameters) ? parameters : void 0; } mapParamType(key) { const keyPair = key.split(":"); switch (Number(keyPair[0])) { case route_paramtypes_enum_1.RouteParamtypes.BODY: return "body"; case route_paramtypes_enum_1.RouteParamtypes.PARAM: return "path"; case route_paramtypes_enum_1.RouteParamtypes.QUERY: return "query"; case route_paramtypes_enum_1.RouteParamtypes.HEADERS: return "header"; default: return PARAM_TOKEN_PLACEHOLDER; } } }; exports2.ParameterMetadataAccessor = ParameterMetadataAccessor; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/parameters-metadata-mapper.js var require_parameters_metadata_mapper = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/parameters-metadata-mapper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParametersMetadataMapper = void 0; var shared_utils_1 = require_shared_utils(); var lodash_1 = require_lodash(); var constants_1 = require_constants8(); var is_body_parameter_util_1 = require_is_body_parameter_util(); var ParametersMetadataMapper = class { static { __name(this, "ParametersMetadataMapper"); } constructor(modelPropertiesAccessor) { this.modelPropertiesAccessor = modelPropertiesAccessor; } transformModelToProperties(parameters) { const properties = (0, lodash_1.flatMap)(parameters, (param) => { if (!param || param.type === Object || !param.type) { return void 0; } if (param.name) { return param; } if ((0, is_body_parameter_util_1.isBodyParameter)(param)) { const isCtor = param.type && (0, shared_utils_1.isFunction)(param.type); const name = isCtor ? param.type.name : param.type; return Object.assign(Object.assign({}, param), { name }); } const { prototype } = param.type; this.modelPropertiesAccessor.applyMetadataFactory(prototype); const modelProperties = this.modelPropertiesAccessor.getModelProperties(prototype); return modelProperties.map((key) => this.mergeImplicitWithExplicit(key, prototype, param)); }); return properties.filter(lodash_1.identity); } mergeImplicitWithExplicit(key, prototype, param) { const reflectedParam = Reflect.getMetadata(constants_1.DECORATORS.API_MODEL_PROPERTIES, prototype, key) || {}; return Object.assign(Object.assign(Object.assign({}, param), reflectedParam), { name: reflectedParam.name || key }); } }; exports2.ParametersMetadataMapper = ParametersMetadataMapper; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-parameters.explorer.js var require_api_parameters_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-parameters.explorer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exploreApiParametersMetadata = void 0; var lodash_1 = require_lodash(); var constants_1 = require_constants8(); var model_properties_accessor_1 = require_model_properties_accessor(); var parameter_metadata_accessor_1 = require_parameter_metadata_accessor(); var parameters_metadata_mapper_1 = require_parameters_metadata_mapper(); var schema_object_factory_1 = require_schema_object_factory(); var swagger_types_mapper_1 = require_swagger_types_mapper(); var global_parameters_storage_1 = require_global_parameters_storage(); var parameterMetadataAccessor = new parameter_metadata_accessor_1.ParameterMetadataAccessor(); var modelPropertiesAccessor = new model_properties_accessor_1.ModelPropertiesAccessor(); var parametersMetadataMapper = new parameters_metadata_mapper_1.ParametersMetadataMapper(modelPropertiesAccessor); var swaggerTypesMapper = new swagger_types_mapper_1.SwaggerTypesMapper(); var schemaObjectFactory = new schema_object_factory_1.SchemaObjectFactory(modelPropertiesAccessor, swaggerTypesMapper); var exploreApiParametersMetadata = /* @__PURE__ */ __name((schemas, instance, prototype, method) => { const explicitParameters = Reflect.getMetadata(constants_1.DECORATORS.API_PARAMETERS, method); const globalParameters = global_parameters_storage_1.GlobalParametersStorage.getAll(); const parametersMetadata = parameterMetadataAccessor.explore(instance, prototype, method); const noExplicitAndGlobalMetadata = (0, lodash_1.isNil)(explicitParameters) && (0, lodash_1.isNil)(globalParameters); if (noExplicitAndGlobalMetadata && (0, lodash_1.isNil)(parametersMetadata)) { return void 0; } const reflectedParametersAsProperties = parametersMetadataMapper.transformModelToProperties(parametersMetadata || {}); let properties = reflectedParametersAsProperties; if (!noExplicitAndGlobalMetadata) { const mergeImplicitAndExplicit = /* @__PURE__ */ __name((item) => (0, lodash_1.assign)(item, (0, lodash_1.find)(explicitParameters, ["name", item.name])), "mergeImplicitAndExplicit"); properties = removeBodyMetadataIfExplicitExists(properties, explicitParameters); properties = (0, lodash_1.map)(properties, mergeImplicitAndExplicit); properties = (0, lodash_1.unionWith)(properties, explicitParameters, globalParameters, (arrVal, othVal) => { return arrVal.name === othVal.name && arrVal.in === othVal.in; }); } const paramsWithDefinitions = schemaObjectFactory.createFromModel(properties, schemas); const parameters = swaggerTypesMapper.mapParamTypes(paramsWithDefinitions); return parameters ? { parameters } : void 0; }, "exploreApiParametersMetadata"); exports2.exploreApiParametersMetadata = exploreApiParametersMetadata; function removeBodyMetadataIfExplicitExists(properties, explicitParams) { const isBodyReflected = (0, lodash_1.some)(properties, (p) => p.in === "body"); const isBodyDefinedExplicitly = (0, lodash_1.some)(explicitParams, (p) => p.in === "body"); if (isBodyReflected && isBodyDefinedExplicitly) { return (0, lodash_1.omitBy)(properties, (p) => p.in === "body"); } return properties; } __name(removeBodyMetadataIfExplicitExists, "removeBodyMetadataIfExplicitExists"); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/mimetype-content-wrapper.js var require_mimetype_content_wrapper = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/mimetype-content-wrapper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MimetypeContentWrapper = void 0; function removeUndefinedKeys(obj2) { Object.entries(obj2).forEach(([key, value]) => { if (value === void 0) { delete obj2[key]; } }); return obj2; } __name(removeUndefinedKeys, "removeUndefinedKeys"); var MimetypeContentWrapper = class { static { __name(this, "MimetypeContentWrapper"); } wrap(mimetype, obj2) { const content = mimetype.reduce((acc, item) => Object.assign(Object.assign({}, acc), { [item]: removeUndefinedKeys(obj2) }), {}); return { content }; } }; exports2.MimetypeContentWrapper = MimetypeContentWrapper; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/response-object-mapper.js var require_response_object_mapper = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/response-object-mapper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ResponseObjectMapper = void 0; var lodash_1 = require_lodash(); var utils_1 = require_utils13(); var mimetype_content_wrapper_1 = require_mimetype_content_wrapper(); var ResponseObjectMapper = class { static { __name(this, "ResponseObjectMapper"); } constructor() { this.mimetypeContentWrapper = new mimetype_content_wrapper_1.MimetypeContentWrapper(); } toArrayRefObject(response, name, produces) { return Object.assign(Object.assign({}, response), this.mimetypeContentWrapper.wrap(produces, { schema: { type: "array", items: { $ref: (0, utils_1.getSchemaPath)(name) } }, example: response.example })); } toRefObject(response, name, produces) { return Object.assign(Object.assign({}, response), this.mimetypeContentWrapper.wrap(produces, { schema: { $ref: (0, utils_1.getSchemaPath)(name) }, example: response.example })); } wrapSchemaWithContent(response, produces) { if (!response.schema && !response.example) { return response; } const content = this.mimetypeContentWrapper.wrap(produces, { schema: response.schema, example: response.example }); return Object.assign(Object.assign({}, (0, lodash_1.omit)(response, ["schema", "example"])), content); } }; exports2.ResponseObjectMapper = ResponseObjectMapper; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/response-object-factory.js var require_response_object_factory = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/services/response-object-factory.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ResponseObjectFactory = void 0; var lodash_1 = require_lodash(); var is_built_in_type_util_1 = require_is_built_in_type_util(); var mimetype_content_wrapper_1 = require_mimetype_content_wrapper(); var model_properties_accessor_1 = require_model_properties_accessor(); var response_object_mapper_1 = require_response_object_mapper(); var schema_object_factory_1 = require_schema_object_factory(); var swagger_types_mapper_1 = require_swagger_types_mapper(); var ResponseObjectFactory = class { static { __name(this, "ResponseObjectFactory"); } constructor() { this.mimetypeContentWrapper = new mimetype_content_wrapper_1.MimetypeContentWrapper(); this.modelPropertiesAccessor = new model_properties_accessor_1.ModelPropertiesAccessor(); this.swaggerTypesMapper = new swagger_types_mapper_1.SwaggerTypesMapper(); this.schemaObjectFactory = new schema_object_factory_1.SchemaObjectFactory(this.modelPropertiesAccessor, this.swaggerTypesMapper); this.responseObjectMapper = new response_object_mapper_1.ResponseObjectMapper(); } create(response, produces, schemas) { const { type, isArray } = response; response = (0, lodash_1.omit)(response, ["isArray"]); if (!type) { return this.responseObjectMapper.wrapSchemaWithContent(response, produces); } if ((0, is_built_in_type_util_1.isBuiltInType)(type)) { const typeName = type && (0, lodash_1.isFunction)(type) ? type.name : type; const swaggerType = this.swaggerTypesMapper.mapTypeToOpenAPIType(typeName); if (isArray) { const content2 = this.mimetypeContentWrapper.wrap(produces, { schema: { type: "array", items: { type: swaggerType } } }); return Object.assign(Object.assign({}, response), content2); } const content = this.mimetypeContentWrapper.wrap(produces, { schema: { type: swaggerType } }); return Object.assign(Object.assign({}, response), content); } const name = this.schemaObjectFactory.exploreModelSchema(type, schemas); if (isArray) { return this.responseObjectMapper.toArrayRefObject(response, name, produces); } return this.responseObjectMapper.toRefObject(response, name, produces); } }; exports2.ResponseObjectFactory = ResponseObjectFactory; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/merge-and-uniq.util.js var require_merge_and_uniq_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/merge-and-uniq.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.mergeAndUniq = void 0; var lodash_1 = require_lodash(); function mergeAndUniq(a = [], b = []) { return (0, lodash_1.uniq)((0, lodash_1.merge)(a, b)); } __name(mergeAndUniq, "mergeAndUniq"); exports2.mergeAndUniq = mergeAndUniq; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-response.explorer.js var require_api_response_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-response.explorer.js"(exports2) { "use strict"; var __rest2 = exports2 && exports2.__rest || function(s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exploreApiResponseMetadata = exports2.exploreGlobalApiResponseMetadata = void 0; var common_12 = require_common(); var constants_1 = require_constants(); var shared_utils_1 = require_shared_utils(); var lodash_1 = require_lodash(); var constants_2 = require_constants8(); var decorators_1 = require_decorators5(); var plugin_constants_1 = require_plugin_constants(); var response_object_factory_1 = require_response_object_factory(); var merge_and_uniq_util_1 = require_merge_and_uniq_util(); var responseObjectFactory = new response_object_factory_1.ResponseObjectFactory(); var exploreGlobalApiResponseMetadata = /* @__PURE__ */ __name((schemas, metatype) => { const responses = Reflect.getMetadata(constants_2.DECORATORS.API_RESPONSE, metatype); const produces = Reflect.getMetadata(constants_2.DECORATORS.API_PRODUCES, metatype); return responses ? { responses: mapResponsesToSwaggerResponses(responses, schemas, produces) } : void 0; }, "exploreGlobalApiResponseMetadata"); exports2.exploreGlobalApiResponseMetadata = exploreGlobalApiResponseMetadata; var exploreApiResponseMetadata = /* @__PURE__ */ __name((schemas, instance, prototype, method) => { applyMetadataFactory(prototype, instance); const responses = Reflect.getMetadata(constants_2.DECORATORS.API_RESPONSE, method); if (responses) { const classProduces = Reflect.getMetadata(constants_2.DECORATORS.API_PRODUCES, prototype); const methodProduces = Reflect.getMetadata(constants_2.DECORATORS.API_PRODUCES, method); const produces = (0, merge_and_uniq_util_1.mergeAndUniq)((0, lodash_1.get)(classProduces, "produces"), methodProduces); return mapResponsesToSwaggerResponses(responses, schemas, produces); } const status = getStatusCode(method); if (status) { return { [status]: { description: "" } }; } return void 0; }, "exploreApiResponseMetadata"); exports2.exploreApiResponseMetadata = exploreApiResponseMetadata; var getStatusCode = /* @__PURE__ */ __name((method) => { const status = Reflect.getMetadata(constants_1.HTTP_CODE_METADATA, method); if (status) { return status; } const requestMethod = Reflect.getMetadata(constants_1.METHOD_METADATA, method); switch (requestMethod) { case common_12.RequestMethod.POST: return common_12.HttpStatus.CREATED; default: return common_12.HttpStatus.OK; } }, "getStatusCode"); var omitParamType = /* @__PURE__ */ __name((param) => (0, lodash_1.omit)(param, "type"), "omitParamType"); var mapResponsesToSwaggerResponses = /* @__PURE__ */ __name((responses, schemas, produces = ["application/json"]) => { produces = (0, shared_utils_1.isEmpty)(produces) ? ["application/json"] : produces; const openApiResponses = (0, lodash_1.mapValues)(responses, (response) => responseObjectFactory.create(response, produces, schemas)); return (0, lodash_1.mapValues)(openApiResponses, omitParamType); }, "mapResponsesToSwaggerResponses"); function applyMetadataFactory(prototype, instance) { const classPrototype = prototype; do { if (!prototype.constructor) { return; } if (!prototype.constructor[plugin_constants_1.METADATA_FACTORY_NAME]) { continue; } const metadata = prototype.constructor[plugin_constants_1.METADATA_FACTORY_NAME](); const methodKeys = Object.keys(metadata).filter((key) => typeof instance[key] === "function"); methodKeys.forEach((key) => { const _a = metadata[key], { summary, deprecated, tags } = _a, meta = __rest2(_a, ["summary", "deprecated", "tags"]); if (Object.keys(meta).length === 0) { return; } if (meta.status === void 0) { meta.status = getStatusCode(instance[key]); } (0, decorators_1.ApiResponse)(meta, { overrideExisting: false })(classPrototype, key, Object.getOwnPropertyDescriptor(classPrototype, key)); }); } while ((prototype = Reflect.getPrototypeOf(prototype)) && prototype !== Object.prototype && prototype); } __name(applyMetadataFactory, "applyMetadataFactory"); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-security.explorer.js var require_api_security_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-security.explorer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exploreApiSecurityMetadata = exports2.exploreGlobalApiSecurityMetadata = void 0; var constants_1 = require_constants8(); var exploreGlobalApiSecurityMetadata = /* @__PURE__ */ __name((metatype) => { const security = Reflect.getMetadata(constants_1.DECORATORS.API_SECURITY, metatype); return security ? { security } : void 0; }, "exploreGlobalApiSecurityMetadata"); exports2.exploreGlobalApiSecurityMetadata = exploreGlobalApiSecurityMetadata; var exploreApiSecurityMetadata = /* @__PURE__ */ __name((instance, prototype, method) => { return Reflect.getMetadata(constants_1.DECORATORS.API_SECURITY, method); }, "exploreApiSecurityMetadata"); exports2.exploreApiSecurityMetadata = exploreApiSecurityMetadata; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-use-tags.explorer.js var require_api_use_tags_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/explorers/api-use-tags.explorer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.exploreApiTagsMetadata = exports2.exploreGlobalApiTagsMetadata = void 0; var constants_1 = require_constants8(); var exploreGlobalApiTagsMetadata = /* @__PURE__ */ __name((metatype) => { const tags = Reflect.getMetadata(constants_1.DECORATORS.API_TAGS, metatype); return tags ? { tags } : void 0; }, "exploreGlobalApiTagsMetadata"); exports2.exploreGlobalApiTagsMetadata = exploreGlobalApiTagsMetadata; var exploreApiTagsMetadata = /* @__PURE__ */ __name((instance, prototype, method) => Reflect.getMetadata(constants_1.DECORATORS.API_TAGS, method), "exploreApiTagsMetadata"); exports2.exploreApiTagsMetadata = exploreApiTagsMetadata; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-explorer.js var require_swagger_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-explorer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SwaggerExplorer = void 0; var common_12 = require_common(); var constants_1 = require_constants(); var interfaces_1 = require_interfaces(); var shared_utils_1 = require_shared_utils(); var core_12 = require_core3(); var route_path_factory_1 = require_route_path_factory(); var lodash_1 = require_lodash(); var pathToRegexp = require_path_to_regexp(); var constants_2 = require_constants8(); var api_exclude_controller_explorer_1 = require_api_exclude_controller_explorer(); var api_exclude_endpoint_explorer_1 = require_api_exclude_endpoint_explorer(); var api_extra_models_explorer_1 = require_api_extra_models_explorer(); var api_headers_explorer_1 = require_api_headers_explorer(); var api_operation_explorer_1 = require_api_operation_explorer(); var api_parameters_explorer_1 = require_api_parameters_explorer(); var api_response_explorer_1 = require_api_response_explorer(); var api_security_explorer_1 = require_api_security_explorer(); var api_use_tags_explorer_1 = require_api_use_tags_explorer(); var mimetype_content_wrapper_1 = require_mimetype_content_wrapper(); var is_body_parameter_util_1 = require_is_body_parameter_util(); var merge_and_uniq_util_1 = require_merge_and_uniq_util(); var SwaggerExplorer = class { static { __name(this, "SwaggerExplorer"); } constructor(schemaObjectFactory) { this.schemaObjectFactory = schemaObjectFactory; this.mimetypeContentWrapper = new mimetype_content_wrapper_1.MimetypeContentWrapper(); this.metadataScanner = new core_12.MetadataScanner(); this.schemas = {}; this.operationIdFactory = (controllerKey, methodKey) => controllerKey ? `${controllerKey}_${methodKey}` : methodKey; } exploreController(wrapper, applicationConfig, modulePath, globalPrefix, operationIdFactory) { this.routePathFactory = new route_path_factory_1.RoutePathFactory(applicationConfig); if (operationIdFactory) { this.operationIdFactory = operationIdFactory; } const { instance, metatype } = wrapper; const prototype = Object.getPrototypeOf(instance); const documentResolvers = { root: [ this.exploreRoutePathAndMethod, api_operation_explorer_1.exploreApiOperationMetadata, api_parameters_explorer_1.exploreApiParametersMetadata.bind(null, this.schemas) ], security: [api_security_explorer_1.exploreApiSecurityMetadata], tags: [api_use_tags_explorer_1.exploreApiTagsMetadata], responses: [api_response_explorer_1.exploreApiResponseMetadata.bind(null, this.schemas)] }; return this.generateDenormalizedDocument(metatype, prototype, instance, documentResolvers, applicationConfig, modulePath, globalPrefix); } getSchemas() { return this.schemas; } generateDenormalizedDocument(metatype, prototype, instance, documentResolvers, applicationConfig, modulePath, globalPrefix) { const self2 = this; const excludeController = (0, api_exclude_controller_explorer_1.exploreApiExcludeControllerMetadata)(metatype); if (excludeController) { return []; } const globalMetadata = this.exploreGlobalMetadata(metatype); const ctrlExtraModels = (0, api_extra_models_explorer_1.exploreGlobalApiExtraModelsMetadata)(metatype); this.registerExtraModels(ctrlExtraModels); const denormalizedPaths = this.metadataScanner.scanFromPrototype(instance, prototype, (name) => { const targetCallback = prototype[name]; const excludeEndpoint = (0, api_exclude_endpoint_explorer_1.exploreApiExcludeEndpointMetadata)(instance, prototype, targetCallback); if (excludeEndpoint && excludeEndpoint.disable) { return; } const ctrlExtraModels2 = (0, api_extra_models_explorer_1.exploreApiExtraModelsMetadata)(instance, prototype, targetCallback); this.registerExtraModels(ctrlExtraModels2); const methodMetadata = (0, lodash_1.mapValues)(documentResolvers, (explorers) => explorers.reduce((metadata, fn) => { const exploredMetadata = fn.call(self2, instance, prototype, targetCallback, metatype, globalPrefix, modulePath, applicationConfig); if (!exploredMetadata) { return metadata; } if (!(0, lodash_1.isArray)(exploredMetadata)) { if (Array.isArray(metadata)) { return metadata.map((item) => Object.assign(Object.assign({}, item), exploredMetadata)); } return Object.assign(Object.assign({}, metadata), exploredMetadata); } return (0, lodash_1.isArray)(metadata) ? [...metadata, ...exploredMetadata] : exploredMetadata; }, {})); if (Array.isArray(methodMetadata.root)) { return methodMetadata.root.map((endpointMetadata) => { endpointMetadata = (0, lodash_1.cloneDeep)(Object.assign(Object.assign({}, methodMetadata), { root: endpointMetadata })); const mergedMethodMetadata2 = this.mergeMetadata(globalMetadata, (0, lodash_1.omitBy)(endpointMetadata, lodash_1.isEmpty)); return this.migrateOperationSchema(Object.assign(Object.assign({ responses: {} }, (0, lodash_1.omit)(globalMetadata, "chunks")), mergedMethodMetadata2), prototype, targetCallback); }); } const mergedMethodMetadata = this.mergeMetadata(globalMetadata, (0, lodash_1.omitBy)(methodMetadata, lodash_1.isEmpty)); return [ this.migrateOperationSchema(Object.assign(Object.assign({ responses: {} }, (0, lodash_1.omit)(globalMetadata, "chunks")), mergedMethodMetadata), prototype, targetCallback) ]; }); return (0, lodash_1.flatten)(denormalizedPaths).filter((path) => { var _a; return (_a = path.root) === null || _a === void 0 ? void 0 : _a.path; }); } exploreGlobalMetadata(metatype) { const globalExplorers = [ api_use_tags_explorer_1.exploreGlobalApiTagsMetadata, api_security_explorer_1.exploreGlobalApiSecurityMetadata, api_response_explorer_1.exploreGlobalApiResponseMetadata.bind(null, this.schemas), api_headers_explorer_1.exploreGlobalApiHeaderMetadata ]; const globalMetadata = globalExplorers.map((explorer) => explorer.call(explorer, metatype)).filter((val) => !(0, shared_utils_1.isUndefined)(val)).reduce((curr, next) => { if (next.depth) { return Object.assign(Object.assign({}, curr), { chunks: (curr.chunks || []).concat(next) }); } return Object.assign(Object.assign({}, curr), next); }, {}); return globalMetadata; } exploreRoutePathAndMethod(instance, prototype, method, metatype, globalPrefix, modulePath, applicationConfig) { const methodPath = Reflect.getMetadata(constants_1.PATH_METADATA, method); if ((0, shared_utils_1.isUndefined)(methodPath)) { return void 0; } const requestMethod = Reflect.getMetadata(constants_1.METHOD_METADATA, method); const methodVersion = Reflect.getMetadata(constants_1.VERSION_METADATA, method); const versioningOptions = applicationConfig.getVersioning(); const controllerVersion = this.getVersionMetadata(metatype, versioningOptions); const versionOrVersions = methodVersion !== null && methodVersion !== void 0 ? methodVersion : controllerVersion; const versions = this.getRoutePathVersions(versionOrVersions, versioningOptions); const allRoutePaths = this.routePathFactory.create({ methodPath, methodVersion, modulePath, globalPrefix, controllerVersion, ctrlPath: this.reflectControllerPath(metatype), versioningOptions: applicationConfig.getVersioning() }, requestMethod); return (0, lodash_1.flatten)(allRoutePaths.map((routePath) => { const fullPath = this.validateRoutePath(routePath); const apiExtension = Reflect.getMetadata(constants_2.DECORATORS.API_EXTENSION, method); if (requestMethod === common_12.RequestMethod.ALL) { const validMethods = Object.values(common_12.RequestMethod).filter((meth) => meth !== "ALL" && typeof meth === "string"); return validMethods.map((meth) => Object.assign({ method: meth.toLowerCase(), path: fullPath === "" ? "/" : fullPath, operationId: `${this.getOperationId(instance, method)}_${meth.toLowerCase()}` }, apiExtension)); } const pathVersion = versions.find((v) => fullPath.includes(`/${v}/`)); return Object.assign({ method: common_12.RequestMethod[requestMethod].toLowerCase(), path: fullPath === "" ? "/" : fullPath, operationId: this.getOperationId(instance, method, pathVersion) }, apiExtension); })); } getOperationId(instance, method, version2) { var _a; return this.operationIdFactory(((_a = instance.constructor) === null || _a === void 0 ? void 0 : _a.name) || "", method.name, version2); } getRoutePathVersions(versionValue, versioningOptions) { let versions = []; if (!versionValue || (versioningOptions === null || versioningOptions === void 0 ? void 0 : versioningOptions.type) !== common_12.VersioningType.URI) { return versions; } if (Array.isArray(versionValue)) { versions = versionValue.filter((v) => v !== interfaces_1.VERSION_NEUTRAL); } else if (versionValue !== interfaces_1.VERSION_NEUTRAL) { versions = [versionValue]; } const prefix = this.routePathFactory.getVersionPrefix(versioningOptions); versions = versions.map((v) => `${prefix}${v}`); return versions; } reflectControllerPath(metatype) { return Reflect.getMetadata(constants_1.PATH_METADATA, metatype); } validateRoutePath(path) { if ((0, shared_utils_1.isUndefined)(path)) { return ""; } if (Array.isArray(path)) { path = (0, lodash_1.head)(path); } let pathWithParams = ""; for (const item of pathToRegexp.parse(path)) { pathWithParams += (0, shared_utils_1.isString)(item) ? item : `${item.prefix}{${item.name}}`; } return pathWithParams === "/" ? "" : (0, shared_utils_1.addLeadingSlash)(pathWithParams); } mergeMetadata(globalMetadata, methodMetadata) { if (methodMetadata.root && !methodMetadata.root.parameters) { methodMetadata.root.parameters = []; } const deepMerge = /* @__PURE__ */ __name((metadata) => (value, key) => { if (!metadata[key]) { return value; } const globalValue = metadata[key]; if (metadata.depth) { return this.deepMergeMetadata(globalValue, value, metadata.depth); } return this.mergeValues(globalValue, value); }, "deepMerge"); if (globalMetadata.chunks) { const { chunks } = globalMetadata; chunks.forEach((chunk) => { methodMetadata = (0, lodash_1.mapValues)(methodMetadata, deepMerge(chunk)); }); } return (0, lodash_1.mapValues)(methodMetadata, deepMerge(globalMetadata)); } deepMergeMetadata(globalValue, methodValue, maxDepth, currentDepthLevel = 0) { if (currentDepthLevel === maxDepth) { return this.mergeValues(globalValue, methodValue); } return (0, lodash_1.mapValues)(methodValue, (value, key) => { if (key in globalValue) { return this.deepMergeMetadata(globalValue[key], methodValue[key], maxDepth, currentDepthLevel + 1); } return value; }); } mergeValues(globalValue, methodValue) { if (!(0, lodash_1.isArray)(globalValue)) { return Object.assign(Object.assign({}, globalValue), methodValue); } return [...globalValue, ...methodValue]; } migrateOperationSchema(document2, prototype, method) { const parametersObject = (0, lodash_1.get)(document2, "root.parameters"); const requestBodyIndex = (parametersObject || []).findIndex(is_body_parameter_util_1.isBodyParameter); if (requestBodyIndex < 0) { return document2; } const requestBody = parametersObject[requestBodyIndex]; parametersObject.splice(requestBodyIndex, 1); const classConsumes = Reflect.getMetadata(constants_2.DECORATORS.API_CONSUMES, prototype); const methodConsumes = Reflect.getMetadata(constants_2.DECORATORS.API_CONSUMES, method); let consumes = (0, merge_and_uniq_util_1.mergeAndUniq)(classConsumes, methodConsumes); consumes = (0, lodash_1.isEmpty)(consumes) ? ["application/json"] : consumes; const keysToRemove = ["schema", "in", "name", "examples"]; document2.root.requestBody = Object.assign(Object.assign({}, (0, lodash_1.omit)(requestBody, keysToRemove)), this.mimetypeContentWrapper.wrap(consumes, (0, lodash_1.pick)(requestBody, ["schema", "examples"]))); return document2; } registerExtraModels(extraModels) { extraModels.forEach((item) => this.schemaObjectFactory.exploreModelSchema(item, this.schemas)); } getVersionMetadata(metatype, versioningOptions) { var _a; if ((versioningOptions === null || versioningOptions === void 0 ? void 0 : versioningOptions.type) === common_12.VersioningType.URI) { return (_a = Reflect.getMetadata(constants_1.VERSION_METADATA, metatype)) !== null && _a !== void 0 ? _a : versioningOptions.defaultVersion; } } }; exports2.SwaggerExplorer = SwaggerExplorer; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-transformer.js var require_swagger_transformer = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-transformer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SwaggerTransformer = void 0; var lodash_1 = require_lodash(); var SwaggerTransformer = class { static { __name(this, "SwaggerTransformer"); } normalizePaths(denormalizedDoc) { const roots = (0, lodash_1.filter)(denormalizedDoc, (r) => r.root); const groupedByPath = (0, lodash_1.groupBy)(roots, ({ root }) => root.path); const paths = (0, lodash_1.mapValues)(groupedByPath, (routes) => { const keyByMethod = (0, lodash_1.keyBy)(routes, ({ root }) => root.method); return (0, lodash_1.mapValues)(keyByMethod, (route) => { return Object.assign(Object.assign({}, (0, lodash_1.omit)(route.root, ["method", "path"])), (0, lodash_1.omit)(route, "root")); }); }); return { paths }; } unescapeColonsInPath(app, moduleRoutes) { const httpAdapter = app.getHttpAdapter(); const usingFastify = httpAdapter && httpAdapter.getType() === "fastify"; const unescapeColon = usingFastify ? (path) => path.replace(/:\{([^}]+)\}/g, ":$1") : (path) => path.replace(/\[:\]/g, ":"); return moduleRoutes.map((moduleRoute) => Object.assign(Object.assign({}, moduleRoute), { root: Object.assign(Object.assign({}, moduleRoute.root), { path: unescapeColon(moduleRoute.root.path) }) })); } }; exports2.SwaggerTransformer = SwaggerTransformer; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/get-global-prefix.js var require_get_global_prefix = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/get-global-prefix.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getGlobalPrefix = void 0; function getGlobalPrefix(app) { const internalConfigRef = app.config; return internalConfigRef && internalConfigRef.getGlobalPrefix() || ""; } __name(getGlobalPrefix, "getGlobalPrefix"); exports2.getGlobalPrefix = getGlobalPrefix; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/strip-last-slash.util.js var require_strip_last_slash_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/strip-last-slash.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.stripLastSlash = void 0; function stripLastSlash(path) { return path && path[path.length - 1] === "/" ? path.slice(0, path.length - 1) : path; } __name(stripLastSlash, "stripLastSlash"); exports2.stripLastSlash = stripLastSlash; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-scanner.js var require_swagger_scanner = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-scanner.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SwaggerScanner = void 0; var constants_1 = require_constants(); var lodash_1 = require_lodash(); var model_properties_accessor_1 = require_model_properties_accessor(); var schema_object_factory_1 = require_schema_object_factory(); var swagger_types_mapper_1 = require_swagger_types_mapper(); var swagger_explorer_1 = require_swagger_explorer(); var swagger_transformer_1 = require_swagger_transformer(); var get_global_prefix_1 = require_get_global_prefix(); var strip_last_slash_util_1 = require_strip_last_slash_util(); var SwaggerScanner = class { static { __name(this, "SwaggerScanner"); } constructor() { this.transformer = new swagger_transformer_1.SwaggerTransformer(); this.schemaObjectFactory = new schema_object_factory_1.SchemaObjectFactory(new model_properties_accessor_1.ModelPropertiesAccessor(), new swagger_types_mapper_1.SwaggerTypesMapper()); this.explorer = new swagger_explorer_1.SwaggerExplorer(this.schemaObjectFactory); } scanApplication(app, options) { const { deepScanRoutes, include: includedModules = [], extraModels = [], ignoreGlobalPrefix = false, operationIdFactory } = options; const container = app.container; const internalConfigRef = app.config; const modules = this.getModules(container.getModules(), includedModules); const globalPrefix = !ignoreGlobalPrefix ? (0, strip_last_slash_util_1.stripLastSlash)((0, get_global_prefix_1.getGlobalPrefix)(app)) : ""; const denormalizedPaths = modules.map(({ controllers, metatype, imports }) => { let result = []; if (deepScanRoutes) { const isGlobal = /* @__PURE__ */ __name((module3) => !container.isGlobalModule(module3), "isGlobal"); Array.from(imports.values()).filter(isGlobal).forEach(({ metatype: metatype2, controllers: controllers2 }) => { const modulePath2 = this.getModulePathMetadata(container, metatype2); result = result.concat(this.scanModuleControllers(controllers2, modulePath2, globalPrefix, internalConfigRef, operationIdFactory)); }); } const modulePath = this.getModulePathMetadata(container, metatype); result = result.concat(this.scanModuleControllers(controllers, modulePath, globalPrefix, internalConfigRef, operationIdFactory)); return this.transformer.unescapeColonsInPath(app, result); }); const schemas = this.explorer.getSchemas(); this.addExtraModels(schemas, extraModels); return Object.assign(Object.assign({}, this.transformer.normalizePaths((0, lodash_1.flatten)(denormalizedPaths))), { components: { schemas } }); } scanModuleControllers(controller, modulePath, globalPrefix, applicationConfig, operationIdFactory) { const denormalizedArray = [...controller.values()].map((ctrl) => this.explorer.exploreController(ctrl, applicationConfig, modulePath, globalPrefix, operationIdFactory)); return (0, lodash_1.flatten)(denormalizedArray); } getModules(modulesContainer, include) { if (!include || (0, lodash_1.isEmpty)(include)) { return [...modulesContainer.values()]; } return [...modulesContainer.values()].filter(({ metatype }) => include.some((item) => item === metatype)); } addExtraModels(schemas, extraModels) { extraModels.forEach((item) => { this.schemaObjectFactory.exploreModelSchema(item, schemas); }); } getModulePathMetadata(container, metatype) { const modulesContainer = container.getModules(); const modulePath = Reflect.getMetadata(constants_1.MODULE_PATH + modulesContainer.applicationId, metatype); return modulePath !== null && modulePath !== void 0 ? modulePath : Reflect.getMetadata(constants_1.MODULE_PATH, metatype); } }; exports2.SwaggerScanner = SwaggerScanner; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-ui/constants.js var require_constants10 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-ui/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.jsTemplateString = exports2.htmlTemplateString = exports2.favIconHtml = void 0; exports2.favIconHtml = ''; exports2.htmlTemplateString = ` <% title %> <% favIconString %>
<% customJs %> <% customJsStr %> <% customCssUrl %> `; exports2.jsTemplateString = ` window.onload = function() { // Build a system let url = window.location.search.match(/url=([^&]+)/); if (url && url.length > 1) { url = decodeURIComponent(url[1]); } else { url = window.location.origin; } <% swaggerOptions %> url = options.swaggerUrl || url let urls = options.swaggerUrls let customOptions = options.customOptions let spec1 = options.swaggerDoc let swaggerOptions = { spec: spec1, url: url, urls: urls, dom_id: '#swagger-ui', deepLinking: true, presets: [ SwaggerUIBundle.presets.apis, SwaggerUIStandalonePreset ], plugins: [ SwaggerUIBundle.plugins.DownloadUrl ], layout: "StandaloneLayout" } for (let attrname in customOptions) { swaggerOptions[attrname] = customOptions[attrname]; } let ui = SwaggerUIBundle(swaggerOptions) if (customOptions.initOAuth) { ui.initOAuth(customOptions.initOAuth) } if (customOptions.authAction) { ui.authActions.authorize(customOptions.authAction) } window.ui = ui } `; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-ui/helpers.js var require_helpers3 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-ui/helpers.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.buildJSInitOptions = void 0; function buildJSInitOptions(initOptions) { const functionPlaceholder = "____FUNCTION_PLACEHOLDER____"; const fns = []; let json = JSON.stringify(initOptions, (key, value) => { if (typeof value === "function") { fns.push(value); return functionPlaceholder; } return value; }, 2); json = json.replace(new RegExp('"' + functionPlaceholder + '"', "g"), () => fns.shift()); return `let options = ${json};`; } __name(buildJSInitOptions, "buildJSInitOptions"); exports2.buildJSInitOptions = buildJSInitOptions; } }); // ../../node_modules/.pnpm/swagger-ui-dist@5.17.14/node_modules/swagger-ui-dist/absolute-path.js var require_absolute_path = __commonJS({ "../../node_modules/.pnpm/swagger-ui-dist@5.17.14/node_modules/swagger-ui-dist/absolute-path.js"(exports2, module2) { var getAbsoluteFSPath = /* @__PURE__ */ __name(function() { if (typeof module2 !== "undefined" && module2.exports) { return require("path").resolve(__dirname); } throw new Error("getAbsoluteFSPath can only be called within a Nodejs environment"); }, "getAbsoluteFSPath"); module2.exports = getAbsoluteFSPath; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-ui/swagger-ui.js var require_swagger_ui = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-ui/swagger-ui.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.buildSwaggerHTML = exports2.getSwaggerAssetsAbsoluteFSPath = exports2.buildSwaggerInitJS = void 0; var constants_1 = require_constants10(); var helpers_1 = require_helpers3(); function buildSwaggerInitJS(swaggerDoc, customOptions = {}) { const { swaggerOptions = {}, swaggerUrl } = customOptions; const swaggerInitOptions = { swaggerDoc, swaggerUrl, customOptions: swaggerOptions }; const jsInitOptions = (0, helpers_1.buildJSInitOptions)(swaggerInitOptions); return constants_1.jsTemplateString.replace("<% swaggerOptions %>", jsInitOptions); } __name(buildSwaggerInitJS, "buildSwaggerInitJS"); exports2.buildSwaggerInitJS = buildSwaggerInitJS; var swaggerAssetsAbsoluteFSPath; function getSwaggerAssetsAbsoluteFSPath() { if (!swaggerAssetsAbsoluteFSPath) { swaggerAssetsAbsoluteFSPath = require_absolute_path()(); } return swaggerAssetsAbsoluteFSPath; } __name(getSwaggerAssetsAbsoluteFSPath, "getSwaggerAssetsAbsoluteFSPath"); exports2.getSwaggerAssetsAbsoluteFSPath = getSwaggerAssetsAbsoluteFSPath; function toExternalScriptTag(url) { return ``; } __name(toExternalScriptTag, "toExternalScriptTag"); function toInlineScriptTag(jsCode) { return ``; } __name(toInlineScriptTag, "toInlineScriptTag"); function toExternalStylesheetTag(url) { return ``; } __name(toExternalStylesheetTag, "toExternalStylesheetTag"); function toTags(customCode, toScript) { if (!customCode) { return ""; } if (typeof customCode === "string") { return toScript(customCode); } else { return customCode.map(toScript).join("\n"); } } __name(toTags, "toTags"); function buildSwaggerHTML(baseUrl, customOptions = {}) { const { customCss = "", customJs = "", customJsStr = "", customfavIcon = false, customSiteTitle = "Swagger UI", customCssUrl = "", explorer = false } = customOptions; const favIconString = customfavIcon ? `` : constants_1.favIconHtml; const explorerCss = explorer ? "" : ".swagger-ui .topbar .download-url-wrapper { display: none }"; return constants_1.htmlTemplateString.replace("<% customCss %>", customCss).replace("<% explorerCss %>", explorerCss).replace("<% favIconString %>", favIconString).replace(/<% baseUrl %>/g, baseUrl).replace("<% customJs %>", toTags(customJs, toExternalScriptTag)).replace("<% customJsStr %>", toTags(customJsStr, toInlineScriptTag)).replace("<% customCssUrl %>", toTags(customCssUrl, toExternalStylesheetTag)).replace("<% title %>", customSiteTitle); } __name(buildSwaggerHTML, "buildSwaggerHTML"); exports2.buildSwaggerHTML = buildSwaggerHTML; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-ui/index.js var require_swagger_ui2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-ui/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_swagger_ui(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/assign-two-levels-deep.js var require_assign_two_levels_deep = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/assign-two-levels-deep.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.assignTwoLevelsDeep = void 0; function assignTwoLevelsDeep(_dest, ...args) { const dest = _dest; for (const arg of args) { for (const [key, value] of Object.entries(arg !== null && arg !== void 0 ? arg : {})) { dest[key] = Object.assign(Object.assign({}, dest[key]), value); } } return dest; } __name(assignTwoLevelsDeep, "assignTwoLevelsDeep"); exports2.assignTwoLevelsDeep = assignTwoLevelsDeep; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/normalize-rel-path.js var require_normalize_rel_path = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/normalize-rel-path.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.normalizeRelPath = void 0; function normalizeRelPath(input) { const output = input.replace(/\/\/+/g, "/"); return output; } __name(normalizeRelPath, "normalizeRelPath"); exports2.normalizeRelPath = normalizeRelPath; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/resolve-path.util.js var require_resolve_path_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/resolve-path.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.resolvePath = void 0; var pathLib = require("path"); function resolvePath(path) { return path ? pathLib.resolve(path) : path; } __name(resolvePath, "resolvePath"); exports2.resolvePath = resolvePath; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/validate-global-prefix.util.js var require_validate_global_prefix_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/validate-global-prefix.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.validateGlobalPrefix = void 0; var validateGlobalPrefix = /* @__PURE__ */ __name((globalPrefix) => globalPrefix && !globalPrefix.match(/^(\/?)$/), "validateGlobalPrefix"); exports2.validateGlobalPrefix = validateGlobalPrefix; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/validate-path.util.js var require_validate_path_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/utils/validate-path.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.validatePath = void 0; var validatePath = /* @__PURE__ */ __name((inputPath) => inputPath.charAt(0) !== "/" ? "/" + inputPath : inputPath, "validatePath"); exports2.validatePath = validatePath; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-module.js var require_swagger_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/swagger-module.js"(exports2) { "use strict"; var __awaiter2 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function(resolve) { resolve(value); }); } __name(adopt, "adopt"); return new (P || (P = Promise))(function(resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } __name(fulfilled, "fulfilled"); function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } __name(rejected, "rejected"); function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } __name(step, "step"); step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SwaggerModule = void 0; var jsyaml = require_js_yaml(); var metadata_loader_1 = require_metadata_loader(); var swagger_scanner_1 = require_swagger_scanner(); var swagger_ui_1 = require_swagger_ui2(); var assign_two_levels_deep_1 = require_assign_two_levels_deep(); var get_global_prefix_1 = require_get_global_prefix(); var normalize_rel_path_1 = require_normalize_rel_path(); var resolve_path_util_1 = require_resolve_path_util(); var validate_global_prefix_util_1 = require_validate_global_prefix_util(); var validate_path_util_1 = require_validate_path_util(); var SwaggerModule = class _SwaggerModule { static { __name(this, "SwaggerModule"); } static createDocument(app, config, options = {}) { const swaggerScanner = new swagger_scanner_1.SwaggerScanner(); const document2 = swaggerScanner.scanApplication(app, options); document2.components = (0, assign_two_levels_deep_1.assignTwoLevelsDeep)({}, config.components, document2.components); return Object.assign(Object.assign({ openapi: "3.0.0", paths: {} }, config), document2); } static loadPluginMetadata(metadataFn) { return __awaiter2(this, void 0, void 0, function* () { const metadata = yield metadataFn(); return this.metadataLoader.load(metadata); }); } static serveStatic(finalPath, app, customStaticPath) { const httpAdapter = app.getHttpAdapter(); const swaggerAssetsPath = customStaticPath ? (0, resolve_path_util_1.resolvePath)(customStaticPath) : (0, swagger_ui_1.getSwaggerAssetsAbsoluteFSPath)(); if (httpAdapter && httpAdapter.getType() === "fastify") { app.useStaticAssets({ root: swaggerAssetsPath, prefix: finalPath, decorateReply: false }); } else { app.useStaticAssets(swaggerAssetsPath, { prefix: finalPath }); } } static serveDocuments(finalPath, urlLastSubdirectory, httpAdapter, documentOrFactory, options) { let document2; const getBuiltDocument = /* @__PURE__ */ __name(() => { if (!document2) { document2 = typeof documentOrFactory === "function" ? documentOrFactory() : documentOrFactory; } return document2; }, "getBuiltDocument"); if (options.swaggerUiEnabled) { this.serveSwaggerUi(finalPath, urlLastSubdirectory, httpAdapter, getBuiltDocument, options.swaggerOptions); } this.serveDefinitions(httpAdapter, getBuiltDocument, options); } static serveSwaggerUi(finalPath, urlLastSubdirectory, httpAdapter, getBuiltDocument, swaggerOptions) { const baseUrlForSwaggerUI = (0, normalize_rel_path_1.normalizeRelPath)(`./${urlLastSubdirectory}/`); let swaggerUiHtml; let swaggerUiInitJS; httpAdapter.get((0, normalize_rel_path_1.normalizeRelPath)(`${finalPath}/swagger-ui-init.js`), (req, res) => { res.type("application/javascript"); const document2 = getBuiltDocument(); if (swaggerOptions.patchDocumentOnRequest) { const documentToSerialize = swaggerOptions.patchDocumentOnRequest(req, res, document2); const swaggerInitJsPerRequest = (0, swagger_ui_1.buildSwaggerInitJS)(documentToSerialize, swaggerOptions); return res.send(swaggerInitJsPerRequest); } if (!swaggerUiInitJS) { swaggerUiInitJS = (0, swagger_ui_1.buildSwaggerInitJS)(document2, swaggerOptions); } res.send(swaggerUiInitJS); }); try { httpAdapter.get((0, normalize_rel_path_1.normalizeRelPath)(`${finalPath}/${urlLastSubdirectory}/swagger-ui-init.js`), (req, res) => { res.type("application/javascript"); const document2 = getBuiltDocument(); if (swaggerOptions.patchDocumentOnRequest) { const documentToSerialize = swaggerOptions.patchDocumentOnRequest(req, res, document2); const swaggerInitJsPerRequest = (0, swagger_ui_1.buildSwaggerInitJS)(documentToSerialize, swaggerOptions); return res.send(swaggerInitJsPerRequest); } if (!swaggerUiInitJS) { swaggerUiInitJS = (0, swagger_ui_1.buildSwaggerInitJS)(document2, swaggerOptions); } res.send(swaggerUiInitJS); }); } catch (err) { } httpAdapter.get(finalPath, (_2, res) => { res.type("text/html"); if (!swaggerUiHtml) { swaggerUiHtml = (0, swagger_ui_1.buildSwaggerHTML)(baseUrlForSwaggerUI, swaggerOptions); } res.send(swaggerUiHtml); }); try { httpAdapter.get((0, normalize_rel_path_1.normalizeRelPath)(`${finalPath}/`), (_2, res) => { res.type("text/html"); if (!swaggerUiHtml) { swaggerUiHtml = (0, swagger_ui_1.buildSwaggerHTML)(baseUrlForSwaggerUI, swaggerOptions); } res.send(swaggerUiHtml); }); } catch (err) { } } static serveDefinitions(httpAdapter, getBuiltDocument, options) { httpAdapter.get((0, normalize_rel_path_1.normalizeRelPath)(options.jsonDocumentUrl), (req, res) => { res.type("application/json"); const document2 = getBuiltDocument(); const documentToSerialize = options.swaggerOptions.patchDocumentOnRequest ? options.swaggerOptions.patchDocumentOnRequest(req, res, document2) : document2; res.send(JSON.stringify(documentToSerialize)); }); httpAdapter.get((0, normalize_rel_path_1.normalizeRelPath)(options.yamlDocumentUrl), (req, res) => { res.type("text/yaml"); const document2 = getBuiltDocument(); const documentToSerialize = options.swaggerOptions.patchDocumentOnRequest ? options.swaggerOptions.patchDocumentOnRequest(req, res, document2) : document2; const yamlDocument = jsyaml.dump(documentToSerialize, { skipInvalid: true, noRefs: true }); res.send(yamlDocument); }); } static setup(path, app, documentOrFactory, options) { var _a; const globalPrefix = (0, get_global_prefix_1.getGlobalPrefix)(app); const finalPath = (0, validate_path_util_1.validatePath)((options === null || options === void 0 ? void 0 : options.useGlobalPrefix) && (0, validate_global_prefix_util_1.validateGlobalPrefix)(globalPrefix) ? `${globalPrefix}${(0, validate_path_util_1.validatePath)(path)}` : path); const urlLastSubdirectory = finalPath.split("/").slice(-1).pop() || ""; const validatedGlobalPrefix = (options === null || options === void 0 ? void 0 : options.useGlobalPrefix) && (0, validate_global_prefix_util_1.validateGlobalPrefix)(globalPrefix) ? (0, validate_path_util_1.validatePath)(globalPrefix) : ""; const finalJSONDocumentPath = (options === null || options === void 0 ? void 0 : options.jsonDocumentUrl) ? `${validatedGlobalPrefix}${(0, validate_path_util_1.validatePath)(options.jsonDocumentUrl)}` : `${finalPath}-json`; const finalYAMLDocumentPath = (options === null || options === void 0 ? void 0 : options.yamlDocumentUrl) ? `${validatedGlobalPrefix}${(0, validate_path_util_1.validatePath)(options.yamlDocumentUrl)}` : `${finalPath}-yaml`; const swaggerUiEnabled = (_a = options === null || options === void 0 ? void 0 : options.swaggerUiEnabled) !== null && _a !== void 0 ? _a : true; const httpAdapter = app.getHttpAdapter(); _SwaggerModule.serveDocuments(finalPath, urlLastSubdirectory, httpAdapter, documentOrFactory, { swaggerUiEnabled, jsonDocumentUrl: finalJSONDocumentPath, yamlDocumentUrl: finalYAMLDocumentPath, swaggerOptions: options || {} }); if (swaggerUiEnabled) { _SwaggerModule.serveStatic(finalPath, app, options === null || options === void 0 ? void 0 : options.customSwaggerUiPath); const serveStaticSlashEndingPath = `${finalPath}/${urlLastSubdirectory}`; if (serveStaticSlashEndingPath !== finalPath) { _SwaggerModule.serveStatic(serveStaticSlashEndingPath, app); } } } }; exports2.SwaggerModule = SwaggerModule; SwaggerModule.metadataLoader = new metadata_loader_1.MetadataLoader(); } }); // ../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/type-helpers.utils.js var require_type_helpers_utils = __commonJS({ "../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/type-helpers.utils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.inheritPropertyInitializers = exports2.inheritTransformationMetadata = exports2.inheritValidationMetadata = exports2.applyValidateIfDefinedDecorator = exports2.applyIsOptionalDecorator = void 0; var common_12 = require_common(); var logger = new common_12.Logger("MappedTypes"); function applyIsOptionalDecorator(targetClass, propertyKey) { if (!isClassValidatorAvailable()) { return; } const classValidator = require_cjs(); const decoratorFactory = classValidator.IsOptional(); decoratorFactory(targetClass.prototype, propertyKey); } __name(applyIsOptionalDecorator, "applyIsOptionalDecorator"); exports2.applyIsOptionalDecorator = applyIsOptionalDecorator; function applyValidateIfDefinedDecorator(targetClass, propertyKey) { if (!isClassValidatorAvailable()) { return; } const classValidator = require_cjs(); const decoratorFactory = classValidator.ValidateIf((_2, value) => value !== void 0); decoratorFactory(targetClass.prototype, propertyKey); } __name(applyValidateIfDefinedDecorator, "applyValidateIfDefinedDecorator"); exports2.applyValidateIfDefinedDecorator = applyValidateIfDefinedDecorator; function inheritValidationMetadata(parentClass, targetClass, isPropertyInherited) { if (!isClassValidatorAvailable()) { return; } try { const classValidator = require_cjs(); const metadataStorage = classValidator.getMetadataStorage ? classValidator.getMetadataStorage() : classValidator.getFromContainer(classValidator.MetadataStorage); const getTargetValidationMetadatasArgs = [parentClass, null, false, false]; const targetMetadata = metadataStorage.getTargetValidationMetadatas(...getTargetValidationMetadatasArgs); return targetMetadata.filter(({ propertyName }) => !isPropertyInherited || isPropertyInherited(propertyName)).map((value) => { const originalType = Reflect.getMetadata("design:type", parentClass.prototype, value.propertyName); if (originalType) { Reflect.defineMetadata("design:type", originalType, targetClass.prototype, value.propertyName); } metadataStorage.addValidationMetadata({ ...value, target: targetClass }); return value.propertyName; }); } catch (err) { logger.error(`Validation ("class-validator") metadata cannot be inherited for "${parentClass.name}" class.`); logger.error(err); } } __name(inheritValidationMetadata, "inheritValidationMetadata"); exports2.inheritValidationMetadata = inheritValidationMetadata; function inheritTransformationMetadata(parentClass, targetClass, isPropertyInherited) { if (!isClassTransformerAvailable()) { return; } try { const transformMetadataKeys = [ "_excludeMetadatas", "_exposeMetadatas", "_transformMetadatas", "_typeMetadatas" ]; transformMetadataKeys.forEach((key) => inheritTransformerMetadata(key, parentClass, targetClass, isPropertyInherited)); } catch (err) { logger.error(`Transformer ("class-transformer") metadata cannot be inherited for "${parentClass.name}" class.`); logger.error(err); } } __name(inheritTransformationMetadata, "inheritTransformationMetadata"); exports2.inheritTransformationMetadata = inheritTransformationMetadata; function inheritTransformerMetadata(key, parentClass, targetClass, isPropertyInherited) { let classTransformer; try { classTransformer = require_storage(); } catch { classTransformer = require("class-transformer/storage"); } const metadataStorage = classTransformer.defaultMetadataStorage; while (parentClass && parentClass !== Object) { if (metadataStorage[key].has(parentClass)) { const metadataMap = metadataStorage[key]; const parentMetadata = metadataMap.get(parentClass); const targetMetadataEntries = Array.from(parentMetadata.entries()).filter(([key2]) => !isPropertyInherited || isPropertyInherited(key2)).map(([key2, metadata]) => { if (Array.isArray(metadata)) { const targetMetadata = metadata.map((item) => ({ ...item, target: targetClass })); return [key2, targetMetadata]; } return [key2, { ...metadata, target: targetClass }]; }); if (metadataMap.has(targetClass)) { const existingRules = metadataMap.get(targetClass).entries(); const mergeMap = /* @__PURE__ */ new Map(); [existingRules, targetMetadataEntries].forEach((entries) => { for (const [valueKey, value] of entries) { if (mergeMap.has(valueKey)) { const parentValue = mergeMap.get(valueKey); if (Array.isArray(parentValue)) { parentValue.push(...Array.isArray(value) ? value : [value]); } } else { mergeMap.set(valueKey, value); } } }); metadataMap.set(targetClass, mergeMap); } else { metadataMap.set(targetClass, new Map(targetMetadataEntries)); } } parentClass = Object.getPrototypeOf(parentClass); } } __name(inheritTransformerMetadata, "inheritTransformerMetadata"); function isClassValidatorAvailable() { try { require_cjs(); return true; } catch { return false; } } __name(isClassValidatorAvailable, "isClassValidatorAvailable"); function isClassTransformerAvailable() { try { require_cjs2(); return true; } catch { return false; } } __name(isClassTransformerAvailable, "isClassTransformerAvailable"); function inheritPropertyInitializers(target, sourceClass, isPropertyInherited = (key) => true) { try { const tempInstance = new sourceClass(); const propertyNames = Object.getOwnPropertyNames(tempInstance); propertyNames.filter((propertyName) => typeof tempInstance[propertyName] !== "undefined" && typeof target[propertyName] === "undefined").filter((propertyName) => isPropertyInherited(propertyName)).forEach((propertyName) => { target[propertyName] = tempInstance[propertyName]; }); } catch { } } __name(inheritPropertyInitializers, "inheritPropertyInitializers"); exports2.inheritPropertyInitializers = inheritPropertyInitializers; } }); // ../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/intersection-type.helper.js var require_intersection_type_helper = __commonJS({ "../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/intersection-type.helper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IntersectionType = void 0; var type_helpers_utils_1 = require_type_helpers_utils(); function IntersectionType(...classRefs) { class IntersectionClassType { static { __name(this, "IntersectionClassType"); } constructor() { classRefs.forEach((classRef) => { (0, type_helpers_utils_1.inheritPropertyInitializers)(this, classRef); }); } } classRefs.forEach((classRef) => { (0, type_helpers_utils_1.inheritValidationMetadata)(classRef, IntersectionClassType); (0, type_helpers_utils_1.inheritTransformationMetadata)(classRef, IntersectionClassType); }); const intersectedNames = classRefs.reduce((prev, ref) => prev + ref.name, ""); Object.defineProperty(IntersectionClassType, "name", { value: `Intersection${intersectedNames}` }); return IntersectionClassType; } __name(IntersectionType, "IntersectionType"); exports2.IntersectionType = IntersectionType; } }); // ../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/mapped-type.interface.js var require_mapped_type_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/mapped-type.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/omit-type.helper.js var require_omit_type_helper = __commonJS({ "../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/omit-type.helper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.OmitType = void 0; var type_helpers_utils_1 = require_type_helpers_utils(); function OmitType(classRef, keys) { const isInheritedPredicate = /* @__PURE__ */ __name((propertyKey) => !keys.includes(propertyKey), "isInheritedPredicate"); class OmitClassType { static { __name(this, "OmitClassType"); } constructor() { (0, type_helpers_utils_1.inheritPropertyInitializers)(this, classRef, isInheritedPredicate); } } (0, type_helpers_utils_1.inheritValidationMetadata)(classRef, OmitClassType, isInheritedPredicate); (0, type_helpers_utils_1.inheritTransformationMetadata)(classRef, OmitClassType, isInheritedPredicate); return OmitClassType; } __name(OmitType, "OmitType"); exports2.OmitType = OmitType; } }); // ../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/partial-type.helper.js var require_partial_type_helper = __commonJS({ "../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/partial-type.helper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PartialType = void 0; var type_helpers_utils_1 = require_type_helpers_utils(); function PartialType(classRef, options = {}) { class PartialClassType { static { __name(this, "PartialClassType"); } constructor() { (0, type_helpers_utils_1.inheritPropertyInitializers)(this, classRef); } } const propertyKeys = (0, type_helpers_utils_1.inheritValidationMetadata)(classRef, PartialClassType); (0, type_helpers_utils_1.inheritTransformationMetadata)(classRef, PartialClassType); if (propertyKeys) { propertyKeys.forEach((key) => { options.skipNullProperties === false ? (0, type_helpers_utils_1.applyValidateIfDefinedDecorator)(PartialClassType, key) : (0, type_helpers_utils_1.applyIsOptionalDecorator)(PartialClassType, key); }); } Object.defineProperty(PartialClassType, "name", { value: `Partial${classRef.name}` }); return PartialClassType; } __name(PartialType, "PartialType"); exports2.PartialType = PartialType; } }); // ../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/pick-type.helper.js var require_pick_type_helper = __commonJS({ "../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/pick-type.helper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PickType = void 0; var type_helpers_utils_1 = require_type_helpers_utils(); function PickType(classRef, keys) { const isInheritedPredicate = /* @__PURE__ */ __name((propertyKey) => keys.includes(propertyKey), "isInheritedPredicate"); class PickClassType { static { __name(this, "PickClassType"); } constructor() { (0, type_helpers_utils_1.inheritPropertyInitializers)(this, classRef, isInheritedPredicate); } } (0, type_helpers_utils_1.inheritValidationMetadata)(classRef, PickClassType, isInheritedPredicate); (0, type_helpers_utils_1.inheritTransformationMetadata)(classRef, PickClassType, isInheritedPredicate); return PickClassType; } __name(PickType, "PickType"); exports2.PickType = PickType; } }); // ../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/index.js var require_dist3 = __commonJS({ "../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/dist/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.inheritValidationMetadata = exports2.inheritTransformationMetadata = exports2.inheritPropertyInitializers = exports2.applyValidateIfDefinedDecorator = exports2.applyIsOptionalDecorator = void 0; __exportStar2(require_intersection_type_helper(), exports2); __exportStar2(require_mapped_type_interface(), exports2); __exportStar2(require_omit_type_helper(), exports2); __exportStar2(require_partial_type_helper(), exports2); __exportStar2(require_pick_type_helper(), exports2); var type_helpers_utils_1 = require_type_helpers_utils(); Object.defineProperty(exports2, "applyIsOptionalDecorator", { enumerable: true, get: /* @__PURE__ */ __name(function() { return type_helpers_utils_1.applyIsOptionalDecorator; }, "get") }); Object.defineProperty(exports2, "applyValidateIfDefinedDecorator", { enumerable: true, get: /* @__PURE__ */ __name(function() { return type_helpers_utils_1.applyValidateIfDefinedDecorator; }, "get") }); Object.defineProperty(exports2, "inheritPropertyInitializers", { enumerable: true, get: /* @__PURE__ */ __name(function() { return type_helpers_utils_1.inheritPropertyInitializers; }, "get") }); Object.defineProperty(exports2, "inheritTransformationMetadata", { enumerable: true, get: /* @__PURE__ */ __name(function() { return type_helpers_utils_1.inheritTransformationMetadata; }, "get") }); Object.defineProperty(exports2, "inheritValidationMetadata", { enumerable: true, get: /* @__PURE__ */ __name(function() { return type_helpers_utils_1.inheritValidationMetadata; }, "get") }); } }); // ../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/index.js var require_mapped_types = __commonJS({ "../../node_modules/.pnpm/@nestjs+mapped-types@2.0.5__e07689ba9b8294aeb18030689c9110ad/node_modules/@nestjs/mapped-types/index.js"(exports2) { "use strict"; function __export2(m) { for (var p in m) if (!exports2.hasOwnProperty(p)) exports2[p] = m[p]; } __name(__export2, "__export"); exports2.__esModule = true; __export2(require_dist3()); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/mapped-types.utils.js var require_mapped_types_utils = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/mapped-types.utils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.clonePluginMetadataFactory = void 0; var lodash_1 = require_lodash(); var plugin_constants_1 = require_plugin_constants(); function clonePluginMetadataFactory(target, parent, transformFn = lodash_1.identity) { let targetMetadata = {}; do { if (!parent.constructor) { return; } if (!parent.constructor[plugin_constants_1.METADATA_FACTORY_NAME]) { continue; } const parentMetadata = parent.constructor[plugin_constants_1.METADATA_FACTORY_NAME](); targetMetadata = Object.assign(Object.assign({}, parentMetadata), targetMetadata); } while ((parent = Reflect.getPrototypeOf(parent)) && parent !== Object.prototype && parent); targetMetadata = transformFn(targetMetadata); if (target[plugin_constants_1.METADATA_FACTORY_NAME]) { const originalFactory = target[plugin_constants_1.METADATA_FACTORY_NAME]; target[plugin_constants_1.METADATA_FACTORY_NAME] = () => { const originalMetadata = originalFactory(); return Object.assign(Object.assign({}, originalMetadata), targetMetadata); }; } else { target[plugin_constants_1.METADATA_FACTORY_NAME] = () => targetMetadata; } } __name(clonePluginMetadataFactory, "clonePluginMetadataFactory"); exports2.clonePluginMetadataFactory = clonePluginMetadataFactory; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/intersection-type.helper.js var require_intersection_type_helper2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/intersection-type.helper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.IntersectionType = void 0; var mapped_types_1 = require_mapped_types(); var constants_1 = require_constants8(); var decorators_1 = require_decorators5(); var metadata_loader_1 = require_metadata_loader(); var model_properties_accessor_1 = require_model_properties_accessor(); var mapped_types_utils_1 = require_mapped_types_utils(); var modelPropertiesAccessor = new model_properties_accessor_1.ModelPropertiesAccessor(); function IntersectionType(...classRefs) { class IntersectionClassType { static { __name(this, "IntersectionClassType"); } constructor() { classRefs.forEach((classRef) => { (0, mapped_types_1.inheritPropertyInitializers)(this, classRef); }); } } classRefs.forEach((classRef) => { const fields = modelPropertiesAccessor.getModelProperties(classRef.prototype); (0, mapped_types_1.inheritValidationMetadata)(classRef, IntersectionClassType); (0, mapped_types_1.inheritTransformationMetadata)(classRef, IntersectionClassType); function applyFields(fields2) { (0, mapped_types_utils_1.clonePluginMetadataFactory)(IntersectionClassType, classRef.prototype); fields2.forEach((propertyKey) => { const metadata = Reflect.getMetadata(constants_1.DECORATORS.API_MODEL_PROPERTIES, classRef.prototype, propertyKey); const decoratorFactory = (0, decorators_1.ApiProperty)(metadata); decoratorFactory(IntersectionClassType.prototype, propertyKey); }); } __name(applyFields, "applyFields"); applyFields(fields); metadata_loader_1.MetadataLoader.addRefreshHook(() => { const fields2 = modelPropertiesAccessor.getModelProperties(classRef.prototype); applyFields(fields2); }); }); const intersectedNames = classRefs.reduce((prev, ref) => prev + ref.name, ""); Object.defineProperty(IntersectionClassType, "name", { value: `Intersection${intersectedNames}` }); return IntersectionClassType; } __name(IntersectionType, "IntersectionType"); exports2.IntersectionType = IntersectionType; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/omit-type.helper.js var require_omit_type_helper2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/omit-type.helper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.OmitType = void 0; var mapped_types_1 = require_mapped_types(); var lodash_1 = require_lodash(); var constants_1 = require_constants8(); var decorators_1 = require_decorators5(); var metadata_loader_1 = require_metadata_loader(); var model_properties_accessor_1 = require_model_properties_accessor(); var mapped_types_utils_1 = require_mapped_types_utils(); var modelPropertiesAccessor = new model_properties_accessor_1.ModelPropertiesAccessor(); function OmitType(classRef, keys) { const fields = modelPropertiesAccessor.getModelProperties(classRef.prototype).filter((item) => !keys.includes(item)); const isInheritedPredicate = /* @__PURE__ */ __name((propertyKey) => !keys.includes(propertyKey), "isInheritedPredicate"); class OmitTypeClass { static { __name(this, "OmitTypeClass"); } constructor() { (0, mapped_types_1.inheritPropertyInitializers)(this, classRef, isInheritedPredicate); } } (0, mapped_types_1.inheritValidationMetadata)(classRef, OmitTypeClass, isInheritedPredicate); (0, mapped_types_1.inheritTransformationMetadata)(classRef, OmitTypeClass, isInheritedPredicate); function applyFields(fields2) { (0, mapped_types_utils_1.clonePluginMetadataFactory)(OmitTypeClass, classRef.prototype, (metadata) => (0, lodash_1.omit)(metadata, keys)); fields2.forEach((propertyKey) => { const metadata = Reflect.getMetadata(constants_1.DECORATORS.API_MODEL_PROPERTIES, classRef.prototype, propertyKey); const decoratorFactory = (0, decorators_1.ApiProperty)(metadata); decoratorFactory(OmitTypeClass.prototype, propertyKey); }); } __name(applyFields, "applyFields"); applyFields(fields); metadata_loader_1.MetadataLoader.addRefreshHook(() => { const fields2 = modelPropertiesAccessor.getModelProperties(classRef.prototype).filter((item) => !keys.includes(item)); applyFields(fields2); }); return OmitTypeClass; } __name(OmitType, "OmitType"); exports2.OmitType = OmitType; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/partial-type.helper.js var require_partial_type_helper2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/partial-type.helper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PartialType = void 0; var mapped_types_1 = require_mapped_types(); var lodash_1 = require_lodash(); var constants_1 = require_constants8(); var decorators_1 = require_decorators5(); var metadata_loader_1 = require_metadata_loader(); var plugin_constants_1 = require_plugin_constants(); var model_properties_accessor_1 = require_model_properties_accessor(); var mapped_types_utils_1 = require_mapped_types_utils(); var modelPropertiesAccessor = new model_properties_accessor_1.ModelPropertiesAccessor(); function PartialType(classRef, options = {}) { const applyPartialDecoratorFn = options.skipNullProperties === false ? mapped_types_1.applyValidateIfDefinedDecorator : mapped_types_1.applyIsOptionalDecorator; const fields = modelPropertiesAccessor.getModelProperties(classRef.prototype); class PartialTypeClass { static { __name(this, "PartialTypeClass"); } constructor() { (0, mapped_types_1.inheritPropertyInitializers)(this, classRef); } } const keysWithValidationConstraints = (0, mapped_types_1.inheritValidationMetadata)(classRef, PartialTypeClass); if (keysWithValidationConstraints) { keysWithValidationConstraints.filter((key) => !fields.includes(key)).forEach((key) => applyPartialDecoratorFn(PartialTypeClass, key)); } (0, mapped_types_1.inheritTransformationMetadata)(classRef, PartialTypeClass); function applyFields(fields2) { (0, mapped_types_utils_1.clonePluginMetadataFactory)(PartialTypeClass, classRef.prototype, (metadata) => (0, lodash_1.mapValues)(metadata, (item) => Object.assign(Object.assign({}, item), { required: false }))); if (PartialTypeClass[plugin_constants_1.METADATA_FACTORY_NAME]) { const pluginFields = Object.keys(PartialTypeClass[plugin_constants_1.METADATA_FACTORY_NAME]()); pluginFields.forEach((key) => applyPartialDecoratorFn(PartialTypeClass, key)); } fields2.forEach((key) => { const metadata = Reflect.getMetadata(constants_1.DECORATORS.API_MODEL_PROPERTIES, classRef.prototype, key) || {}; const decoratorFactory = (0, decorators_1.ApiProperty)(Object.assign(Object.assign({}, metadata), { required: false })); decoratorFactory(PartialTypeClass.prototype, key); applyPartialDecoratorFn(PartialTypeClass, key); }); } __name(applyFields, "applyFields"); applyFields(fields); metadata_loader_1.MetadataLoader.addRefreshHook(() => { const fields2 = modelPropertiesAccessor.getModelProperties(classRef.prototype); applyFields(fields2); }); return PartialTypeClass; } __name(PartialType, "PartialType"); exports2.PartialType = PartialType; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/pick-type.helper.js var require_pick_type_helper2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/pick-type.helper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PickType = void 0; var mapped_types_1 = require_mapped_types(); var lodash_1 = require_lodash(); var constants_1 = require_constants8(); var decorators_1 = require_decorators5(); var metadata_loader_1 = require_metadata_loader(); var model_properties_accessor_1 = require_model_properties_accessor(); var mapped_types_utils_1 = require_mapped_types_utils(); var modelPropertiesAccessor = new model_properties_accessor_1.ModelPropertiesAccessor(); function PickType(classRef, keys) { const fields = modelPropertiesAccessor.getModelProperties(classRef.prototype).filter((item) => keys.includes(item)); const isInheritedPredicate = /* @__PURE__ */ __name((propertyKey) => keys.includes(propertyKey), "isInheritedPredicate"); class PickTypeClass { static { __name(this, "PickTypeClass"); } constructor() { (0, mapped_types_1.inheritPropertyInitializers)(this, classRef, isInheritedPredicate); } } (0, mapped_types_1.inheritValidationMetadata)(classRef, PickTypeClass, isInheritedPredicate); (0, mapped_types_1.inheritTransformationMetadata)(classRef, PickTypeClass, isInheritedPredicate); function applyFields(fields2) { (0, mapped_types_utils_1.clonePluginMetadataFactory)(PickTypeClass, classRef.prototype, (metadata) => (0, lodash_1.pick)(metadata, keys)); fields2.forEach((propertyKey) => { const metadata = Reflect.getMetadata(constants_1.DECORATORS.API_MODEL_PROPERTIES, classRef.prototype, propertyKey); const decoratorFactory = (0, decorators_1.ApiProperty)(metadata); decoratorFactory(PickTypeClass.prototype, propertyKey); }); } __name(applyFields, "applyFields"); applyFields(fields); metadata_loader_1.MetadataLoader.addRefreshHook(() => { const fields2 = modelPropertiesAccessor.getModelProperties(classRef.prototype).filter((item) => keys.includes(item)); applyFields(fields2); }); return PickTypeClass; } __name(PickType, "PickType"); exports2.PickType = PickType; } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/index.js var require_type_helpers = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/type-helpers/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_intersection_type_helper2(), exports2); __exportStar2(require_omit_type_helper2(), exports2); __exportStar2(require_partial_type_helper2(), exports2); __exportStar2(require_pick_type_helper2(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/index.js var require_dist4 = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/dist/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); require_Reflect(); __exportStar2(require_decorators5(), exports2); __exportStar2(require_document_builder(), exports2); __exportStar2(require_interfaces8(), exports2); __exportStar2(require_swagger_module(), exports2); __exportStar2(require_type_helpers(), exports2); __exportStar2(require_utils13(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/index.js var require_swagger = __commonJS({ "../../node_modules/.pnpm/@nestjs+swagger@7.4.2_@nest_545c33ea55b481a52d80116fa63a44c2/node_modules/@nestjs/swagger/index.js"(exports2) { "use strict"; function __export2(m) { for (var p in m) if (!exports2.hasOwnProperty(p)) exports2[p] = m[p]; } __name(__export2, "__export"); exports2.__esModule = true; __export2(require_dist4()); } }); // ../../node_modules/.pnpm/helmet@7.2.0/node_modules/helmet/index.cjs var require_helmet = __commonJS({ "../../node_modules/.pnpm/helmet@7.2.0/node_modules/helmet/index.cjs"(exports2, module2) { "use strict"; Object.defineProperties(exports2, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); var dangerouslyDisableDefaultSrc = Symbol("dangerouslyDisableDefaultSrc"); var DEFAULT_DIRECTIVES = { "default-src": ["'self'"], "base-uri": ["'self'"], "font-src": ["'self'", "https:", "data:"], "form-action": ["'self'"], "frame-ancestors": ["'self'"], "img-src": ["'self'", "data:"], "object-src": ["'none'"], "script-src": ["'self'"], "script-src-attr": ["'none'"], "style-src": ["'self'", "https:", "'unsafe-inline'"], "upgrade-insecure-requests": [] }; var SHOULD_BE_QUOTED = /* @__PURE__ */ new Set(["none", "self", "strict-dynamic", "report-sample", "inline-speculation-rules", "unsafe-inline", "unsafe-eval", "unsafe-hashes", "wasm-unsafe-eval"]); var getDefaultDirectives = /* @__PURE__ */ __name(() => Object.assign({}, DEFAULT_DIRECTIVES), "getDefaultDirectives"); var dashify = /* @__PURE__ */ __name((str) => str.replace(/[A-Z]/g, (capitalLetter) => "-" + capitalLetter.toLowerCase()), "dashify"); var isDirectiveValueInvalid = /* @__PURE__ */ __name((directiveValue) => /;|,/.test(directiveValue), "isDirectiveValueInvalid"); var shouldDirectiveValueEntryBeQuoted = /* @__PURE__ */ __name((directiveValueEntry) => SHOULD_BE_QUOTED.has(directiveValueEntry) || directiveValueEntry.startsWith("nonce-") || directiveValueEntry.startsWith("sha256-") || directiveValueEntry.startsWith("sha384-") || directiveValueEntry.startsWith("sha512-"), "shouldDirectiveValueEntryBeQuoted"); var warnIfDirectiveValueEntryShouldBeQuoted = /* @__PURE__ */ __name((value) => { if (shouldDirectiveValueEntryBeQuoted(value)) { console.warn(`Content-Security-Policy got directive value \`${value}\` which should be single-quoted and changed to \`'${value}'\`. This will be an error in future versions of Helmet.`); } }, "warnIfDirectiveValueEntryShouldBeQuoted"); var has = /* @__PURE__ */ __name((obj2, key) => Object.prototype.hasOwnProperty.call(obj2, key), "has"); function normalizeDirectives(options) { const defaultDirectives = getDefaultDirectives(); const { useDefaults = true, directives: rawDirectives = defaultDirectives } = options; const result = /* @__PURE__ */ new Map(); const directiveNamesSeen = /* @__PURE__ */ new Set(); const directivesExplicitlyDisabled = /* @__PURE__ */ new Set(); for (const rawDirectiveName in rawDirectives) { if (!has(rawDirectives, rawDirectiveName)) { continue; } if (rawDirectiveName.length === 0 || /[^a-zA-Z0-9-]/.test(rawDirectiveName)) { throw new Error(`Content-Security-Policy received an invalid directive name ${JSON.stringify(rawDirectiveName)}`); } const directiveName = dashify(rawDirectiveName); if (directiveNamesSeen.has(directiveName)) { throw new Error(`Content-Security-Policy received a duplicate directive ${JSON.stringify(directiveName)}`); } directiveNamesSeen.add(directiveName); const rawDirectiveValue = rawDirectives[rawDirectiveName]; let directiveValue; if (rawDirectiveValue === null) { if (directiveName === "default-src") { throw new Error("Content-Security-Policy needs a default-src but it was set to `null`. If you really want to disable it, set it to `contentSecurityPolicy.dangerouslyDisableDefaultSrc`."); } directivesExplicitlyDisabled.add(directiveName); continue; } else if (typeof rawDirectiveValue === "string") { directiveValue = [rawDirectiveValue]; } else if (!rawDirectiveValue) { throw new Error(`Content-Security-Policy received an invalid directive value for ${JSON.stringify(directiveName)}`); } else if (rawDirectiveValue === dangerouslyDisableDefaultSrc) { if (directiveName === "default-src") { directivesExplicitlyDisabled.add("default-src"); continue; } else { throw new Error(`Content-Security-Policy: tried to disable ${JSON.stringify(directiveName)} as if it were default-src; simply omit the key`); } } else { directiveValue = rawDirectiveValue; } for (const element of directiveValue) { if (typeof element === "string") { if (isDirectiveValueInvalid(element)) { throw new Error(`Content-Security-Policy received an invalid directive value for ${JSON.stringify(directiveName)}`); } warnIfDirectiveValueEntryShouldBeQuoted(element); } } result.set(directiveName, directiveValue); } if (useDefaults) { Object.entries(defaultDirectives).forEach(([defaultDirectiveName, defaultDirectiveValue]) => { if (!result.has(defaultDirectiveName) && !directivesExplicitlyDisabled.has(defaultDirectiveName)) { result.set(defaultDirectiveName, defaultDirectiveValue); } }); } if (!result.size) { throw new Error("Content-Security-Policy has no directives. Either set some or disable the header"); } if (!result.has("default-src") && !directivesExplicitlyDisabled.has("default-src")) { throw new Error("Content-Security-Policy needs a default-src but none was provided. If you really want to disable it, set it to `contentSecurityPolicy.dangerouslyDisableDefaultSrc`."); } return result; } __name(normalizeDirectives, "normalizeDirectives"); function getHeaderValue(req, res, normalizedDirectives) { let err; const result = []; normalizedDirectives.forEach((rawDirectiveValue, directiveName) => { let directiveValue = ""; for (const element of rawDirectiveValue) { if (typeof element === "function") { const newElement = element(req, res); warnIfDirectiveValueEntryShouldBeQuoted(newElement); directiveValue += " " + newElement; } else { directiveValue += " " + element; } } if (!directiveValue) { result.push(directiveName); } else if (isDirectiveValueInvalid(directiveValue)) { err = new Error(`Content-Security-Policy received an invalid directive value for ${JSON.stringify(directiveName)}`); } else { result.push(`${directiveName}${directiveValue}`); } }); return err ? err : result.join(";"); } __name(getHeaderValue, "getHeaderValue"); var contentSecurityPolicy = /* @__PURE__ */ __name(function contentSecurityPolicy2(options = {}) { const headerName = options.reportOnly ? "Content-Security-Policy-Report-Only" : "Content-Security-Policy"; const normalizedDirectives = normalizeDirectives(options); return /* @__PURE__ */ __name(function contentSecurityPolicyMiddleware(req, res, next) { const result = getHeaderValue(req, res, normalizedDirectives); if (result instanceof Error) { next(result); } else { res.setHeader(headerName, result); next(); } }, "contentSecurityPolicyMiddleware"); }, "contentSecurityPolicy"); contentSecurityPolicy.getDefaultDirectives = getDefaultDirectives; contentSecurityPolicy.dangerouslyDisableDefaultSrc = dangerouslyDisableDefaultSrc; var ALLOWED_POLICIES$2 = /* @__PURE__ */ new Set(["require-corp", "credentialless", "unsafe-none"]); function getHeaderValueFromOptions$6({ policy = "require-corp" }) { if (ALLOWED_POLICIES$2.has(policy)) { return policy; } else { throw new Error(`Cross-Origin-Embedder-Policy does not support the ${JSON.stringify(policy)} policy`); } } __name(getHeaderValueFromOptions$6, "getHeaderValueFromOptions$6"); function crossOriginEmbedderPolicy(options = {}) { const headerValue = getHeaderValueFromOptions$6(options); return /* @__PURE__ */ __name(function crossOriginEmbedderPolicyMiddleware(_req, res, next) { res.setHeader("Cross-Origin-Embedder-Policy", headerValue); next(); }, "crossOriginEmbedderPolicyMiddleware"); } __name(crossOriginEmbedderPolicy, "crossOriginEmbedderPolicy"); var ALLOWED_POLICIES$1 = /* @__PURE__ */ new Set(["same-origin", "same-origin-allow-popups", "unsafe-none"]); function getHeaderValueFromOptions$5({ policy = "same-origin" }) { if (ALLOWED_POLICIES$1.has(policy)) { return policy; } else { throw new Error(`Cross-Origin-Opener-Policy does not support the ${JSON.stringify(policy)} policy`); } } __name(getHeaderValueFromOptions$5, "getHeaderValueFromOptions$5"); function crossOriginOpenerPolicy(options = {}) { const headerValue = getHeaderValueFromOptions$5(options); return /* @__PURE__ */ __name(function crossOriginOpenerPolicyMiddleware(_req, res, next) { res.setHeader("Cross-Origin-Opener-Policy", headerValue); next(); }, "crossOriginOpenerPolicyMiddleware"); } __name(crossOriginOpenerPolicy, "crossOriginOpenerPolicy"); var ALLOWED_POLICIES = /* @__PURE__ */ new Set(["same-origin", "same-site", "cross-origin"]); function getHeaderValueFromOptions$4({ policy = "same-origin" }) { if (ALLOWED_POLICIES.has(policy)) { return policy; } else { throw new Error(`Cross-Origin-Resource-Policy does not support the ${JSON.stringify(policy)} policy`); } } __name(getHeaderValueFromOptions$4, "getHeaderValueFromOptions$4"); function crossOriginResourcePolicy(options = {}) { const headerValue = getHeaderValueFromOptions$4(options); return /* @__PURE__ */ __name(function crossOriginResourcePolicyMiddleware(_req, res, next) { res.setHeader("Cross-Origin-Resource-Policy", headerValue); next(); }, "crossOriginResourcePolicyMiddleware"); } __name(crossOriginResourcePolicy, "crossOriginResourcePolicy"); function originAgentCluster() { return /* @__PURE__ */ __name(function originAgentClusterMiddleware(_req, res, next) { res.setHeader("Origin-Agent-Cluster", "?1"); next(); }, "originAgentClusterMiddleware"); } __name(originAgentCluster, "originAgentCluster"); var ALLOWED_TOKENS = /* @__PURE__ */ new Set(["no-referrer", "no-referrer-when-downgrade", "same-origin", "origin", "strict-origin", "origin-when-cross-origin", "strict-origin-when-cross-origin", "unsafe-url", ""]); function getHeaderValueFromOptions$3({ policy = ["no-referrer"] }) { const tokens = typeof policy === "string" ? [policy] : policy; if (tokens.length === 0) { throw new Error("Referrer-Policy received no policy tokens"); } const tokensSeen = /* @__PURE__ */ new Set(); tokens.forEach((token) => { if (!ALLOWED_TOKENS.has(token)) { throw new Error(`Referrer-Policy received an unexpected policy token ${JSON.stringify(token)}`); } else if (tokensSeen.has(token)) { throw new Error(`Referrer-Policy received a duplicate policy token ${JSON.stringify(token)}`); } tokensSeen.add(token); }); return tokens.join(","); } __name(getHeaderValueFromOptions$3, "getHeaderValueFromOptions$3"); function referrerPolicy(options = {}) { const headerValue = getHeaderValueFromOptions$3(options); return /* @__PURE__ */ __name(function referrerPolicyMiddleware(_req, res, next) { res.setHeader("Referrer-Policy", headerValue); next(); }, "referrerPolicyMiddleware"); } __name(referrerPolicy, "referrerPolicy"); var DEFAULT_MAX_AGE = 180 * 24 * 60 * 60; function parseMaxAge(value = DEFAULT_MAX_AGE) { if (value >= 0 && Number.isFinite(value)) { return Math.floor(value); } else { throw new Error(`Strict-Transport-Security: ${JSON.stringify(value)} is not a valid value for maxAge. Please choose a positive integer.`); } } __name(parseMaxAge, "parseMaxAge"); function getHeaderValueFromOptions$2(options) { if ("maxage" in options) { throw new Error("Strict-Transport-Security received an unsupported property, `maxage`. Did you mean to pass `maxAge`?"); } if ("includeSubdomains" in options) { console.warn('Strict-Transport-Security middleware should use `includeSubDomains` instead of `includeSubdomains`. (The correct one has an uppercase "D".)'); } const directives = [`max-age=${parseMaxAge(options.maxAge)}`]; if (options.includeSubDomains === void 0 || options.includeSubDomains) { directives.push("includeSubDomains"); } if (options.preload) { directives.push("preload"); } return directives.join("; "); } __name(getHeaderValueFromOptions$2, "getHeaderValueFromOptions$2"); function strictTransportSecurity(options = {}) { const headerValue = getHeaderValueFromOptions$2(options); return /* @__PURE__ */ __name(function strictTransportSecurityMiddleware(_req, res, next) { res.setHeader("Strict-Transport-Security", headerValue); next(); }, "strictTransportSecurityMiddleware"); } __name(strictTransportSecurity, "strictTransportSecurity"); function xContentTypeOptions() { return /* @__PURE__ */ __name(function xContentTypeOptionsMiddleware(_req, res, next) { res.setHeader("X-Content-Type-Options", "nosniff"); next(); }, "xContentTypeOptionsMiddleware"); } __name(xContentTypeOptions, "xContentTypeOptions"); function xDnsPrefetchControl(options = {}) { const headerValue = options.allow ? "on" : "off"; return /* @__PURE__ */ __name(function xDnsPrefetchControlMiddleware(_req, res, next) { res.setHeader("X-DNS-Prefetch-Control", headerValue); next(); }, "xDnsPrefetchControlMiddleware"); } __name(xDnsPrefetchControl, "xDnsPrefetchControl"); function xDownloadOptions() { return /* @__PURE__ */ __name(function xDownloadOptionsMiddleware(_req, res, next) { res.setHeader("X-Download-Options", "noopen"); next(); }, "xDownloadOptionsMiddleware"); } __name(xDownloadOptions, "xDownloadOptions"); function getHeaderValueFromOptions$1({ action = "sameorigin" }) { const normalizedAction = typeof action === "string" ? action.toUpperCase() : action; switch (normalizedAction) { case "SAME-ORIGIN": return "SAMEORIGIN"; case "DENY": case "SAMEORIGIN": return normalizedAction; default: throw new Error(`X-Frame-Options received an invalid action ${JSON.stringify(action)}`); } } __name(getHeaderValueFromOptions$1, "getHeaderValueFromOptions$1"); function xFrameOptions(options = {}) { const headerValue = getHeaderValueFromOptions$1(options); return /* @__PURE__ */ __name(function xFrameOptionsMiddleware(_req, res, next) { res.setHeader("X-Frame-Options", headerValue); next(); }, "xFrameOptionsMiddleware"); } __name(xFrameOptions, "xFrameOptions"); var ALLOWED_PERMITTED_POLICIES = /* @__PURE__ */ new Set(["none", "master-only", "by-content-type", "all"]); function getHeaderValueFromOptions({ permittedPolicies = "none" }) { if (ALLOWED_PERMITTED_POLICIES.has(permittedPolicies)) { return permittedPolicies; } else { throw new Error(`X-Permitted-Cross-Domain-Policies does not support ${JSON.stringify(permittedPolicies)}`); } } __name(getHeaderValueFromOptions, "getHeaderValueFromOptions"); function xPermittedCrossDomainPolicies(options = {}) { const headerValue = getHeaderValueFromOptions(options); return /* @__PURE__ */ __name(function xPermittedCrossDomainPoliciesMiddleware(_req, res, next) { res.setHeader("X-Permitted-Cross-Domain-Policies", headerValue); next(); }, "xPermittedCrossDomainPoliciesMiddleware"); } __name(xPermittedCrossDomainPolicies, "xPermittedCrossDomainPolicies"); function xPoweredBy() { return /* @__PURE__ */ __name(function xPoweredByMiddleware(_req, res, next) { res.removeHeader("X-Powered-By"); next(); }, "xPoweredByMiddleware"); } __name(xPoweredBy, "xPoweredBy"); function xXssProtection() { return /* @__PURE__ */ __name(function xXssProtectionMiddleware(_req, res, next) { res.setHeader("X-XSS-Protection", "0"); next(); }, "xXssProtectionMiddleware"); } __name(xXssProtection, "xXssProtection"); function getMiddlewareFunctionsFromOptions(options) { var _a, _b, _c, _d, _e, _f, _g, _h; const result = []; switch (options.contentSecurityPolicy) { case void 0: case true: result.push(contentSecurityPolicy()); break; case false: break; default: result.push(contentSecurityPolicy(options.contentSecurityPolicy)); break; } switch (options.crossOriginEmbedderPolicy) { case void 0: case false: break; case true: result.push(crossOriginEmbedderPolicy()); break; default: result.push(crossOriginEmbedderPolicy(options.crossOriginEmbedderPolicy)); break; } switch (options.crossOriginOpenerPolicy) { case void 0: case true: result.push(crossOriginOpenerPolicy()); break; case false: break; default: result.push(crossOriginOpenerPolicy(options.crossOriginOpenerPolicy)); break; } switch (options.crossOriginResourcePolicy) { case void 0: case true: result.push(crossOriginResourcePolicy()); break; case false: break; default: result.push(crossOriginResourcePolicy(options.crossOriginResourcePolicy)); break; } switch (options.originAgentCluster) { case void 0: case true: result.push(originAgentCluster()); break; case false: break; default: console.warn("Origin-Agent-Cluster does not take options. Remove the property to silence this warning."); result.push(originAgentCluster()); break; } switch (options.referrerPolicy) { case void 0: case true: result.push(referrerPolicy()); break; case false: break; default: result.push(referrerPolicy(options.referrerPolicy)); break; } if ("strictTransportSecurity" in options && "hsts" in options) { throw new Error("Strict-Transport-Security option was specified twice. Remove `hsts` to silence this warning."); } const strictTransportSecurityOption = (_a = options.strictTransportSecurity) !== null && _a !== void 0 ? _a : options.hsts; switch (strictTransportSecurityOption) { case void 0: case true: result.push(strictTransportSecurity()); break; case false: break; default: result.push(strictTransportSecurity(strictTransportSecurityOption)); break; } if ("xContentTypeOptions" in options && "noSniff" in options) { throw new Error("X-Content-Type-Options option was specified twice. Remove `noSniff` to silence this warning."); } const xContentTypeOptionsOption = (_b = options.xContentTypeOptions) !== null && _b !== void 0 ? _b : options.noSniff; switch (xContentTypeOptionsOption) { case void 0: case true: result.push(xContentTypeOptions()); break; case false: break; default: console.warn("X-Content-Type-Options does not take options. Remove the property to silence this warning."); result.push(xContentTypeOptions()); break; } if ("xDnsPrefetchControl" in options && "dnsPrefetchControl" in options) { throw new Error("X-DNS-Prefetch-Control option was specified twice. Remove `dnsPrefetchControl` to silence this warning."); } const xDnsPrefetchControlOption = (_c = options.xDnsPrefetchControl) !== null && _c !== void 0 ? _c : options.dnsPrefetchControl; switch (xDnsPrefetchControlOption) { case void 0: case true: result.push(xDnsPrefetchControl()); break; case false: break; default: result.push(xDnsPrefetchControl(xDnsPrefetchControlOption)); break; } if ("xDownloadOptions" in options && "ieNoOpen" in options) { throw new Error("X-Download-Options option was specified twice. Remove `ieNoOpen` to silence this warning."); } const xDownloadOptionsOption = (_d = options.xDownloadOptions) !== null && _d !== void 0 ? _d : options.ieNoOpen; switch (xDownloadOptionsOption) { case void 0: case true: result.push(xDownloadOptions()); break; case false: break; default: console.warn("X-Download-Options does not take options. Remove the property to silence this warning."); result.push(xDownloadOptions()); break; } if ("xFrameOptions" in options && "frameguard" in options) { throw new Error("X-Frame-Options option was specified twice. Remove `frameguard` to silence this warning."); } const xFrameOptionsOption = (_e = options.xFrameOptions) !== null && _e !== void 0 ? _e : options.frameguard; switch (xFrameOptionsOption) { case void 0: case true: result.push(xFrameOptions()); break; case false: break; default: result.push(xFrameOptions(xFrameOptionsOption)); break; } if ("xPermittedCrossDomainPolicies" in options && "permittedCrossDomainPolicies" in options) { throw new Error("X-Permitted-Cross-Domain-Policies option was specified twice. Remove `permittedCrossDomainPolicies` to silence this warning."); } const xPermittedCrossDomainPoliciesOption = (_f = options.xPermittedCrossDomainPolicies) !== null && _f !== void 0 ? _f : options.permittedCrossDomainPolicies; switch (xPermittedCrossDomainPoliciesOption) { case void 0: case true: result.push(xPermittedCrossDomainPolicies()); break; case false: break; default: result.push(xPermittedCrossDomainPolicies(xPermittedCrossDomainPoliciesOption)); break; } if ("xPoweredBy" in options && "hidePoweredBy" in options) { throw new Error("X-Powered-By option was specified twice. Remove `hidePoweredBy` to silence this warning."); } const xPoweredByOption = (_g = options.xPoweredBy) !== null && _g !== void 0 ? _g : options.hidePoweredBy; switch (xPoweredByOption) { case void 0: case true: result.push(xPoweredBy()); break; case false: break; default: console.warn("X-Powered-By does not take options. Remove the property to silence this warning."); result.push(xPoweredBy()); break; } if ("xXssProtection" in options && "xssFilter" in options) { throw new Error("X-XSS-Protection option was specified twice. Remove `xssFilter` to silence this warning."); } const xXssProtectionOption = (_h = options.xXssProtection) !== null && _h !== void 0 ? _h : options.xssFilter; switch (xXssProtectionOption) { case void 0: case true: result.push(xXssProtection()); break; case false: break; default: console.warn("X-XSS-Protection does not take options. Remove the property to silence this warning."); result.push(xXssProtection()); break; } return result; } __name(getMiddlewareFunctionsFromOptions, "getMiddlewareFunctionsFromOptions"); var helmet = Object.assign( /* @__PURE__ */ __name(function helmet2(options = {}) { var _a; if (((_a = options.constructor) === null || _a === void 0 ? void 0 : _a.name) === "IncomingMessage") { throw new Error("It appears you have done something like `app.use(helmet)`, but it should be `app.use(helmet())`."); } const middlewareFunctions = getMiddlewareFunctionsFromOptions(options); return /* @__PURE__ */ __name(function helmetMiddleware(req, res, next) { let middlewareIndex = 0; (/* @__PURE__ */ __name((function internalNext(err) { if (err) { next(err); return; } const middlewareFunction = middlewareFunctions[middlewareIndex]; if (middlewareFunction) { middlewareIndex++; middlewareFunction(req, res, internalNext); } else { next(); } }), "internalNext"))(); }, "helmetMiddleware"); }, "helmet"), { contentSecurityPolicy, crossOriginEmbedderPolicy, crossOriginOpenerPolicy, crossOriginResourcePolicy, originAgentCluster, referrerPolicy, strictTransportSecurity, xContentTypeOptions, xDnsPrefetchControl, xDownloadOptions, xFrameOptions, xPermittedCrossDomainPolicies, xPoweredBy, xXssProtection, // Legacy aliases dnsPrefetchControl: xDnsPrefetchControl, xssFilter: xXssProtection, permittedCrossDomainPolicies: xPermittedCrossDomainPolicies, ieNoOpen: xDownloadOptions, noSniff: xContentTypeOptions, frameguard: xFrameOptions, hidePoweredBy: xPoweredBy, hsts: strictTransportSecurity } ); exports2.contentSecurityPolicy = contentSecurityPolicy; exports2.crossOriginEmbedderPolicy = crossOriginEmbedderPolicy; exports2.crossOriginOpenerPolicy = crossOriginOpenerPolicy; exports2.crossOriginResourcePolicy = crossOriginResourcePolicy; exports2.default = helmet; exports2.dnsPrefetchControl = xDnsPrefetchControl; exports2.frameguard = xFrameOptions; exports2.hidePoweredBy = xPoweredBy; exports2.hsts = strictTransportSecurity; exports2.ieNoOpen = xDownloadOptions; exports2.noSniff = xContentTypeOptions; exports2.originAgentCluster = originAgentCluster; exports2.permittedCrossDomainPolicies = xPermittedCrossDomainPolicies; exports2.referrerPolicy = referrerPolicy; exports2.strictTransportSecurity = strictTransportSecurity; exports2.xContentTypeOptions = xContentTypeOptions; exports2.xDnsPrefetchControl = xDnsPrefetchControl; exports2.xDownloadOptions = xDownloadOptions; exports2.xFrameOptions = xFrameOptions; exports2.xPermittedCrossDomainPolicies = xPermittedCrossDomainPolicies; exports2.xPoweredBy = xPoweredBy; exports2.xXssProtection = xXssProtection; exports2.xssFilter = xXssProtection; module2.exports = exports2.default; module2.exports.default = module2.exports; } }); // ../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/bull.messages.js var require_bull_messages = __commonJS({ "../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/bull.messages.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NO_QUEUE_FOUND = void 0; var NO_QUEUE_FOUND = /* @__PURE__ */ __name((name) => name ? `No Queue was found with the given name (${name}). Check your configuration.` : "No Queue was found. Check your configuration.", "NO_QUEUE_FOUND"); exports2.NO_QUEUE_FOUND = NO_QUEUE_FOUND; } }); // ../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/bull.tokens.js var require_bull_tokens = __commonJS({ "../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/bull.tokens.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.JOB_REF = void 0; var core_12 = require_core3(); exports2.JOB_REF = core_12.REQUEST; } }); // ../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/errors/missing-shared-bull-config.error.js var require_missing_shared_bull_config_error = __commonJS({ "../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/errors/missing-shared-bull-config.error.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MissingBullSharedConfigurationError = void 0; var MissingBullSharedConfigurationError = class extends Error { static { __name(this, "MissingBullSharedConfigurationError"); } constructor(configKey, queueName) { super(`Configuration "${configKey}" referenced from the "Queue(${queueName})" options does not exist.`); } }; exports2.MissingBullSharedConfigurationError = MissingBullSharedConfigurationError; } }); // ../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/errors/index.js var require_errors2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/errors/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_missing_shared_bull_config_error(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/helpers/create-conditional-dep-holder.helper.js var require_create_conditional_dep_holder_helper = __commonJS({ "../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/helpers/create-conditional-dep-holder.helper.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createConditionalDepHolder = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var missing_shared_bull_config_error_1 = require_missing_shared_bull_config_error(); function createConditionalDepHolder(depToken, optionalDep, errorFactory = (caller) => new missing_shared_bull_config_error_1.MissingBullSharedConfigurationError(depToken, caller)) { let ConditionalDepHolder = class ConditionalDepHolder { static { __name(this, "ConditionalDepHolder"); } constructor(_dependencyRef) { this._dependencyRef = _dependencyRef; } getDependencyRef(caller) { if (depToken !== optionalDep && !this._dependencyRef) { throw errorFactory(caller); } return this._dependencyRef; } }; ConditionalDepHolder = tslib_1.__decorate([ tslib_1.__param(0, (0, common_12.Optional)()), tslib_1.__param(0, (0, common_12.Inject)(depToken)), tslib_1.__metadata("design:paramtypes", [Object]) ], ConditionalDepHolder); return (0, common_12.mixin)(ConditionalDepHolder); } __name(createConditionalDepHolder, "createConditionalDepHolder"); exports2.createConditionalDepHolder = createConditionalDepHolder; } }); // ../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/helpers/index.js var require_helpers4 = __commonJS({ "../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/helpers/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_create_conditional_dep_holder_helper(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/utils/get-queue-token.util.js var require_get_queue_token_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/utils/get-queue-token.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getQueueToken = void 0; function getQueueToken(name) { return name ? `BullQueue_${name}` : "BullQueue_default"; } __name(getQueueToken, "getQueueToken"); exports2.getQueueToken = getQueueToken; } }); // ../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/utils/index.js var require_utils14 = __commonJS({ "../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/utils/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_get_queue_token_util(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/index.js var require_dist5 = __commonJS({ "../../node_modules/.pnpm/@nestjs+bull-shared@10.2.3__03617ab26d87d1c33db1ae79113d69dd/node_modules/@nestjs/bull-shared/dist/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_bull_messages(), exports2); tslib_1.__exportStar(require_bull_tokens(), exports2); tslib_1.__exportStar(require_errors2(), exports2); tslib_1.__exportStar(require_helpers4(), exports2); tslib_1.__exportStar(require_utils14(), exports2); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/async-fifo-queue.js var require_async_fifo_queue = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/async-fifo-queue.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AsyncFifoQueue = void 0; var Node = class { static { __name(this, "Node"); } constructor(value) { this.value = void 0; this.next = null; this.value = value; } }; var LinkedList = class { static { __name(this, "LinkedList"); } constructor() { this.length = 0; this.head = null; this.tail = null; } push(value) { const newNode = new Node(value); if (!this.length) { this.head = newNode; } else { this.tail.next = newNode; } this.tail = newNode; this.length += 1; return newNode; } shift() { if (!this.length) { return null; } else { const head = this.head; this.head = this.head.next; this.length -= 1; return head; } } }; var AsyncFifoQueue = class { static { __name(this, "AsyncFifoQueue"); } constructor(ignoreErrors = false) { this.ignoreErrors = ignoreErrors; this.queue = new LinkedList(); this.pending = /* @__PURE__ */ new Set(); this.newPromise(); } /** * Adds a promise to the queue. When it resolves, its value is enqueued * and, if a consumer is waiting via {@link fetch}, the next pending * promise is resolved with the value. * * @param promise - The asynchronous operation to add to the queue. */ add(promise) { this.pending.add(promise); promise.then((data) => { this.pending.delete(promise); if (this.queue.length === 0) { this.resolvePromise(data); } this.queue.push(data); }).catch((err) => { if (this.ignoreErrors) { this.queue.push(void 0); } this.pending.delete(promise); this.rejectPromise(err); }); } /** * Waits for all currently pending promises to settle. * * @returns A promise that resolves once every in-flight promise has resolved. */ async waitAll() { await Promise.all(this.pending); } /** * Returns the total number of items currently tracked by the queue, * including both pending (in-flight) promises and resolved items that * have not yet been fetched. * * @returns The sum of pending and queued items. */ numTotal() { return this.pending.size + this.queue.length; } /** * Returns the number of promises that are still pending (in-flight). * * @returns The number of unresolved promises currently in the queue. */ numPending() { return this.pending.size; } /** * Returns the number of items that have already resolved but have not * yet been fetched by a consumer. * * @returns The number of resolved items waiting to be consumed. */ numQueued() { return this.queue.length; } resolvePromise(data) { this.resolve(data); this.newPromise(); } rejectPromise(err) { this.reject(err); this.newPromise(); } newPromise() { this.nextPromise = new Promise((resolve, reject) => { this.resolve = resolve; this.reject = reject; }); } async wait() { return this.nextPromise; } /** * Fetches the next resolved item from the queue in FIFO order. If no * items are currently resolved but pending promises exist, it waits * until the next one resolves. * * @returns The next resolved value, or `undefined` if there are no * pending or queued items. */ async fetch() { var _a; if (this.pending.size === 0 && this.queue.length === 0) { return; } while (this.queue.length === 0) { try { await this.wait(); } catch (err) { if (!this.ignoreErrors) { console.error("Unexpected Error in AsyncFifoQueue", err); } } } return (_a = this.queue.shift()) === null || _a === void 0 ? void 0 : _a.value; } }; exports2.AsyncFifoQueue = AsyncFifoQueue; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/backoffs.js var require_backoffs = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/backoffs.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Backoffs = void 0; var Backoffs = class { static { __name(this, "Backoffs"); } static normalize(backoff) { if (Number.isFinite(backoff)) { return { type: "fixed", delay: backoff }; } else if (backoff) { return backoff; } } static calculate(backoff, attemptsMade, err, job, customStrategy) { if (backoff) { const strategy = lookupStrategy(backoff, customStrategy); return strategy(attemptsMade, backoff.type, err, job); } } }; exports2.Backoffs = Backoffs; Backoffs.builtinStrategies = { fixed: /* @__PURE__ */ __name(function(delay, jitter = 0) { return function() { if (jitter > 0) { const minDelay = delay * (1 - jitter); return Math.floor(Math.random() * delay * jitter + minDelay); } else { return delay; } }; }, "fixed"), exponential: /* @__PURE__ */ __name(function(delay, jitter = 0) { return function(attemptsMade) { if (jitter > 0) { const maxDelay = Math.round(Math.pow(2, attemptsMade - 1) * delay); const minDelay = maxDelay * (1 - jitter); return Math.floor(Math.random() * maxDelay * jitter + minDelay); } else { return Math.round(Math.pow(2, attemptsMade - 1) * delay); } }; }, "exponential") }; function lookupStrategy(backoff, customStrategy) { if (backoff.type in Backoffs.builtinStrategies) { return Backoffs.builtinStrategies[backoff.type](backoff.delay, backoff.jitter); } else if (customStrategy) { return customStrategy; } else { throw new Error(`Unknown backoff strategy ${backoff.type}. If a custom backoff strategy is used, specify it when the queue is created.`); } } __name(lookupStrategy, "lookupStrategy"); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/child-command.js var require_child_command = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/child-command.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ChildCommand = void 0; var ChildCommand; (function(ChildCommand2) { ChildCommand2[ChildCommand2["Init"] = 0] = "Init"; ChildCommand2[ChildCommand2["Start"] = 1] = "Start"; ChildCommand2[ChildCommand2["Stop"] = 2] = "Stop"; ChildCommand2[ChildCommand2["GetChildrenValuesResponse"] = 3] = "GetChildrenValuesResponse"; ChildCommand2[ChildCommand2["GetIgnoredChildrenFailuresResponse"] = 4] = "GetIgnoredChildrenFailuresResponse"; ChildCommand2[ChildCommand2["GetDependenciesCountResponse"] = 5] = "GetDependenciesCountResponse"; ChildCommand2[ChildCommand2["MoveToWaitingChildrenResponse"] = 6] = "MoveToWaitingChildrenResponse"; ChildCommand2[ChildCommand2["Cancel"] = 7] = "Cancel"; ChildCommand2[ChildCommand2["GetDependenciesResponse"] = 8] = "GetDependenciesResponse"; })(ChildCommand || (exports2.ChildCommand = ChildCommand = {})); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/error-code.js var require_error_code = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/error-code.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ErrorCode = void 0; var ErrorCode; (function(ErrorCode2) { ErrorCode2[ErrorCode2["JobNotExist"] = -1] = "JobNotExist"; ErrorCode2[ErrorCode2["JobLockNotExist"] = -2] = "JobLockNotExist"; ErrorCode2[ErrorCode2["JobNotInState"] = -3] = "JobNotInState"; ErrorCode2[ErrorCode2["JobPendingChildren"] = -4] = "JobPendingChildren"; ErrorCode2[ErrorCode2["ParentJobNotExist"] = -5] = "ParentJobNotExist"; ErrorCode2[ErrorCode2["JobLockMismatch"] = -6] = "JobLockMismatch"; ErrorCode2[ErrorCode2["ParentJobCannotBeReplaced"] = -7] = "ParentJobCannotBeReplaced"; ErrorCode2[ErrorCode2["JobBelongsToJobScheduler"] = -8] = "JobBelongsToJobScheduler"; ErrorCode2[ErrorCode2["JobHasFailedChildren"] = -9] = "JobHasFailedChildren"; ErrorCode2[ErrorCode2["SchedulerJobIdCollision"] = -10] = "SchedulerJobIdCollision"; ErrorCode2[ErrorCode2["SchedulerJobSlotsBusy"] = -11] = "SchedulerJobSlotsBusy"; })(ErrorCode || (exports2.ErrorCode = ErrorCode = {})); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/parent-command.js var require_parent_command = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/parent-command.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParentCommand = void 0; var ParentCommand; (function(ParentCommand2) { ParentCommand2[ParentCommand2["Completed"] = 0] = "Completed"; ParentCommand2[ParentCommand2["Error"] = 1] = "Error"; ParentCommand2[ParentCommand2["Failed"] = 2] = "Failed"; ParentCommand2[ParentCommand2["InitFailed"] = 3] = "InitFailed"; ParentCommand2[ParentCommand2["InitCompleted"] = 4] = "InitCompleted"; ParentCommand2[ParentCommand2["Log"] = 5] = "Log"; ParentCommand2[ParentCommand2["MoveToDelayed"] = 6] = "MoveToDelayed"; ParentCommand2[ParentCommand2["MoveToWait"] = 7] = "MoveToWait"; ParentCommand2[ParentCommand2["Progress"] = 8] = "Progress"; ParentCommand2[ParentCommand2["Update"] = 9] = "Update"; ParentCommand2[ParentCommand2["GetChildrenValues"] = 10] = "GetChildrenValues"; ParentCommand2[ParentCommand2["GetIgnoredChildrenFailures"] = 11] = "GetIgnoredChildrenFailures"; ParentCommand2[ParentCommand2["GetDependenciesCount"] = 12] = "GetDependenciesCount"; ParentCommand2[ParentCommand2["MoveToWaitingChildren"] = 13] = "MoveToWaitingChildren"; ParentCommand2[ParentCommand2["GetDependencies"] = 14] = "GetDependencies"; })(ParentCommand || (exports2.ParentCommand = ParentCommand = {})); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/metrics-time.js var require_metrics_time = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/metrics-time.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MetricsTime = void 0; var MetricsTime; (function(MetricsTime2) { MetricsTime2[MetricsTime2["ONE_MINUTE"] = 1] = "ONE_MINUTE"; MetricsTime2[MetricsTime2["FIVE_MINUTES"] = 5] = "FIVE_MINUTES"; MetricsTime2[MetricsTime2["FIFTEEN_MINUTES"] = 15] = "FIFTEEN_MINUTES"; MetricsTime2[MetricsTime2["THIRTY_MINUTES"] = 30] = "THIRTY_MINUTES"; MetricsTime2[MetricsTime2["ONE_HOUR"] = 60] = "ONE_HOUR"; MetricsTime2[MetricsTime2["ONE_WEEK"] = 10080] = "ONE_WEEK"; MetricsTime2[MetricsTime2["TWO_WEEKS"] = 20160] = "TWO_WEEKS"; MetricsTime2[MetricsTime2["ONE_MONTH"] = 80640] = "ONE_MONTH"; })(MetricsTime || (exports2.MetricsTime = MetricsTime = {})); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/telemetry-attributes.js var require_telemetry_attributes = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/telemetry-attributes.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SpanKind = exports2.MetricNames = exports2.TelemetryAttributes = void 0; var TelemetryAttributes; (function(TelemetryAttributes2) { TelemetryAttributes2["QueueName"] = "bullmq.queue.name"; TelemetryAttributes2["QueueOperation"] = "bullmq.queue.operation"; TelemetryAttributes2["BulkCount"] = "bullmq.job.bulk.count"; TelemetryAttributes2["BulkNames"] = "bullmq.job.bulk.names"; TelemetryAttributes2["JobName"] = "bullmq.job.name"; TelemetryAttributes2["JobId"] = "bullmq.job.id"; TelemetryAttributes2["JobKey"] = "bullmq.job.key"; TelemetryAttributes2["JobIds"] = "bullmq.job.ids"; TelemetryAttributes2["JobAttemptsMade"] = "bullmq.job.attempts.made"; TelemetryAttributes2["DeduplicationKey"] = "bullmq.job.deduplication.key"; TelemetryAttributes2["JobOptions"] = "bullmq.job.options"; TelemetryAttributes2["JobProgress"] = "bullmq.job.progress"; TelemetryAttributes2["QueueDrainDelay"] = "bullmq.queue.drain.delay"; TelemetryAttributes2["QueueGrace"] = "bullmq.queue.grace"; TelemetryAttributes2["QueueCleanLimit"] = "bullmq.queue.clean.limit"; TelemetryAttributes2["QueueRateLimit"] = "bullmq.queue.rate.limit"; TelemetryAttributes2["JobType"] = "bullmq.job.type"; TelemetryAttributes2["QueueOptions"] = "bullmq.queue.options"; TelemetryAttributes2["QueueEventMaxLength"] = "bullmq.queue.event.max.length"; TelemetryAttributes2["QueueJobsState"] = "bullmq.queue.jobs.state"; TelemetryAttributes2["WorkerOptions"] = "bullmq.worker.options"; TelemetryAttributes2["WorkerName"] = "bullmq.worker.name"; TelemetryAttributes2["WorkerId"] = "bullmq.worker.id"; TelemetryAttributes2["WorkerRateLimit"] = "bullmq.worker.rate.limit"; TelemetryAttributes2["WorkerDoNotWaitActive"] = "bullmq.worker.do.not.wait.active"; TelemetryAttributes2["WorkerForceClose"] = "bullmq.worker.force.close"; TelemetryAttributes2["WorkerStalledJobs"] = "bullmq.worker.stalled.jobs"; TelemetryAttributes2["WorkerFailedJobs"] = "bullmq.worker.failed.jobs"; TelemetryAttributes2["WorkerJobsToExtendLocks"] = "bullmq.worker.jobs.to.extend.locks"; TelemetryAttributes2["JobFinishedTimestamp"] = "bullmq.job.finished.timestamp"; TelemetryAttributes2["JobAttemptFinishedTimestamp"] = "bullmq.job.attempt_finished_timestamp"; TelemetryAttributes2["JobProcessedTimestamp"] = "bullmq.job.processed.timestamp"; TelemetryAttributes2["JobResult"] = "bullmq.job.result"; TelemetryAttributes2["JobFailedReason"] = "bullmq.job.failed.reason"; TelemetryAttributes2["FlowName"] = "bullmq.flow.name"; TelemetryAttributes2["JobSchedulerId"] = "bullmq.job.scheduler.id"; TelemetryAttributes2["JobStatus"] = "bullmq.job.status"; TelemetryAttributes2["JobState"] = "bullmq.job.state"; })(TelemetryAttributes || (exports2.TelemetryAttributes = TelemetryAttributes = {})); var MetricNames; (function(MetricNames2) { MetricNames2["QueueJobsCount"] = "bullmq.queue.jobs"; MetricNames2["JobsCompleted"] = "bullmq.jobs.completed"; MetricNames2["JobsFailed"] = "bullmq.jobs.failed"; MetricNames2["JobsDelayed"] = "bullmq.jobs.delayed"; MetricNames2["JobsRetried"] = "bullmq.jobs.retried"; MetricNames2["JobsWaiting"] = "bullmq.jobs.waiting"; MetricNames2["JobsWaitingChildren"] = "bullmq.jobs.waiting_children"; MetricNames2["JobDuration"] = "bullmq.job.duration"; })(MetricNames || (exports2.MetricNames = MetricNames = {})); var SpanKind; (function(SpanKind2) { SpanKind2[SpanKind2["INTERNAL"] = 0] = "INTERNAL"; SpanKind2[SpanKind2["SERVER"] = 1] = "SERVER"; SpanKind2[SpanKind2["CLIENT"] = 2] = "CLIENT"; SpanKind2[SpanKind2["PRODUCER"] = 3] = "PRODUCER"; SpanKind2[SpanKind2["CONSUMER"] = 4] = "CONSUMER"; })(SpanKind || (exports2.SpanKind = SpanKind = {})); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/index.js var require_enums3 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/enums/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_child_command(), exports2); tslib_1.__exportStar(require_error_code(), exports2); tslib_1.__exportStar(require_parent_command(), exports2); tslib_1.__exportStar(require_metrics_time(), exports2); tslib_1.__exportStar(require_telemetry_attributes(), exports2); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/child.js var require_child = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/child.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Child = void 0; var child_process_1 = require("child_process"); var net_1 = require("net"); var worker_threads_1 = require("worker_threads"); var enums_1 = require_enums3(); var events_1 = require("events"); var exitCodesErrors = { 1: "Uncaught Fatal Exception", 2: "Unused", 3: "Internal JavaScript Parse Error", 4: "Internal JavaScript Evaluation Failure", 5: "Fatal Error", 6: "Non-function Internal Exception Handler", 7: "Internal Exception Handler Run-Time Failure", 8: "Unused", 9: "Invalid Argument", 10: "Internal JavaScript Run-Time Failure", 12: "Invalid Debug Argument", 13: "Unfinished Top-Level Await" }; var Child = class extends events_1.EventEmitter { static { __name(this, "Child"); } constructor(mainFile, processFile, opts = { useWorkerThreads: false }) { super(); this.mainFile = mainFile; this.processFile = processFile; this.opts = opts; this._exitCode = null; this._signalCode = null; this._killed = false; } get pid() { if (this.childProcess) { return this.childProcess.pid; } else if (this.worker) { return Math.abs(this.worker.threadId); } else { throw new Error("No child process or worker thread"); } } get exitCode() { return this._exitCode; } get signalCode() { return this._signalCode; } get killed() { if (this.childProcess) { return this.childProcess.killed; } return this._killed; } async init() { var _a, _b; const execArgv = await convertExecArgv(process.execArgv); let parent; if (this.opts.useWorkerThreads) { this.worker = parent = new worker_threads_1.Worker(this.mainFile, Object.assign({ execArgv, stdin: true, stdout: true, stderr: true }, this.opts.workerThreadsOptions ? this.opts.workerThreadsOptions : {})); } else { this.childProcess = parent = (0, child_process_1.fork)(this.mainFile, [], Object.assign({ execArgv, stdio: "pipe" }, this.opts.workerForkOptions ? this.opts.workerForkOptions : {})); } parent.on("exit", (exitCode, signalCode) => { this._exitCode = exitCode; signalCode = typeof signalCode === "undefined" ? null : signalCode; this._signalCode = signalCode; this._killed = true; this.emit("exit", exitCode, signalCode); parent.removeAllListeners(); this.removeAllListeners(); }); parent.on("error", (...args) => this.emit("error", ...args)); parent.on("message", (...args) => this.emit("message", ...args)); parent.on("close", (...args) => this.emit("close", ...args)); (_a = parent.stdout) === null || _a === void 0 ? void 0 : _a.pipe(process.stdout); (_b = parent.stderr) === null || _b === void 0 ? void 0 : _b.pipe(process.stderr); await this.initChild(); } async send(msg) { return new Promise((resolve, reject) => { if (this.childProcess) { this.childProcess.send(msg, (err) => { if (err) { reject(err); } else { resolve(); } }); } else if (this.worker) { resolve(this.worker.postMessage(msg)); } else { resolve(); } }); } killProcess(signal = "SIGKILL") { if (this.childProcess) { this.childProcess.kill(signal); } else if (this.worker) { this.worker.terminate(); } } async kill(signal = "SIGKILL", timeoutMs) { if (this.hasProcessExited()) { return; } const onExit = onExitOnce(this.childProcess || this.worker); this.killProcess(signal); if (timeoutMs !== void 0 && (timeoutMs === 0 || isFinite(timeoutMs))) { const timeoutHandle = setTimeout(() => { if (!this.hasProcessExited()) { this.killProcess("SIGKILL"); } }, timeoutMs); await onExit; clearTimeout(timeoutHandle); } await onExit; } async initChild() { const onComplete = new Promise((resolve, reject) => { const onMessageHandler = /* @__PURE__ */ __name((msg) => { if (!Object.values(enums_1.ParentCommand).includes(msg.cmd)) { return; } if (msg.cmd === enums_1.ParentCommand.InitCompleted) { resolve(); } else if (msg.cmd === enums_1.ParentCommand.InitFailed) { const err = new Error(); err.stack = msg.err.stack; err.message = msg.err.message; reject(err); } this.off("message", onMessageHandler); this.off("close", onCloseHandler); }, "onMessageHandler"); const onCloseHandler = /* @__PURE__ */ __name((code, signal) => { if (code > 128) { code -= 128; } const msg = exitCodesErrors[code] || `Unknown exit code ${code}`; reject(new Error(`Error initializing child: ${msg} and signal ${signal}`)); this.off("message", onMessageHandler); this.off("close", onCloseHandler); }, "onCloseHandler"); this.on("message", onMessageHandler); this.on("close", onCloseHandler); }); await this.send({ cmd: enums_1.ChildCommand.Init, value: this.processFile }); await onComplete; } hasProcessExited() { return !!(this.exitCode !== null || this.signalCode); } }; exports2.Child = Child; function onExitOnce(child) { return new Promise((resolve) => { child.once("exit", () => resolve()); }); } __name(onExitOnce, "onExitOnce"); var getFreePort = /* @__PURE__ */ __name(async () => { return new Promise((resolve) => { const server = (0, net_1.createServer)(); server.listen(0, () => { const { port } = server.address(); server.close(() => resolve(port)); }); }); }, "getFreePort"); var convertExecArgv = /* @__PURE__ */ __name(async (execArgv) => { const standard = []; const convertedArgs = []; for (let i = 0; i < execArgv.length; i++) { const arg = execArgv[i]; if (arg.indexOf("--inspect") === -1) { standard.push(arg); } else { const argName = arg.split("=")[0]; const port = await getFreePort(); convertedArgs.push(`${argName}=${port}`); } } return standard.concat(convertedArgs); }, "convertExecArgv"); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/child-pool.js var require_child_pool = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/child-pool.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ChildPool = void 0; var path = require("path"); var child_1 = require_child(); var CHILD_KILL_TIMEOUT = 3e4; var supportCJS = /* @__PURE__ */ __name(() => { return typeof require === "function" && typeof module2 === "object" && typeof module2.exports === "object"; }, "supportCJS"); var ChildPool = class { static { __name(this, "ChildPool"); } constructor({ mainFile = supportCJS() ? path.join(process.cwd(), "dist/cjs/classes/main.js") : path.join(process.cwd(), "dist/esm/classes/main.js"), useWorkerThreads, workerForkOptions, workerThreadsOptions }) { this.retained = {}; this.free = {}; this.opts = { mainFile, useWorkerThreads, workerForkOptions, workerThreadsOptions }; } async retain(processFile) { let child = this.getFree(processFile).pop(); if (child) { this.retained[child.pid] = child; return child; } child = new child_1.Child(this.opts.mainFile, processFile, { useWorkerThreads: this.opts.useWorkerThreads, workerForkOptions: this.opts.workerForkOptions, workerThreadsOptions: this.opts.workerThreadsOptions }); child.on("exit", this.remove.bind(this, child)); try { await child.init(); if (child.exitCode !== null || child.signalCode !== null) { throw new Error("Child exited before it could be retained"); } this.retained[child.pid] = child; return child; } catch (err) { console.error(err); if (child.childProcess || child.worker) { try { this.kill(child, "SIGKILL").catch((killErr) => { console.error("Failed to kill child after init error:", killErr); }); } catch (killErr) { console.error("Failed to kill child after init error:", killErr); } } throw err; } } release(child) { delete this.retained[child.pid]; this.getFree(child.processFile).push(child); } remove(child) { delete this.retained[child.pid]; const free = this.getFree(child.processFile); const childIndex = free.indexOf(child); if (childIndex > -1) { free.splice(childIndex, 1); } } async kill(child, signal = "SIGKILL") { this.remove(child); return child.kill(signal, CHILD_KILL_TIMEOUT); } async clean() { const children = Object.values(this.retained).concat(this.getAllFree()); this.retained = {}; this.free = {}; await Promise.all(children.map((c) => this.kill(c, "SIGTERM"))); } getFree(id) { return this.free[id] = this.free[id] || []; } getAllFree() { return Object.values(this.free).reduce((first, second) => first.concat(second), []); } }; exports2.ChildPool = ChildPool; } }); // ../../node_modules/.pnpm/node-abort-controller@3.1.1/node_modules/node-abort-controller/index.js var require_node_abort_controller = __commonJS({ "../../node_modules/.pnpm/node-abort-controller@3.1.1/node_modules/node-abort-controller/index.js"(exports2, module2) { var { EventEmitter } = require("events"); var AbortSignal = class { static { __name(this, "AbortSignal"); } constructor() { this.eventEmitter = new EventEmitter(); this.onabort = null; this.aborted = false; this.reason = void 0; } toString() { return "[object AbortSignal]"; } get [Symbol.toStringTag]() { return "AbortSignal"; } removeEventListener(name, handler) { this.eventEmitter.removeListener(name, handler); } addEventListener(name, handler) { this.eventEmitter.on(name, handler); } dispatchEvent(type) { const event = { type, target: this }; const handlerName = `on${type}`; if (typeof this[handlerName] === "function") this[handlerName](event); this.eventEmitter.emit(type, event); } throwIfAborted() { if (this.aborted) { throw this.reason; } } static abort(reason) { const controller = new AbortController(); controller.abort(); return controller.signal; } static timeout(time) { const controller = new AbortController(); setTimeout(() => controller.abort(new Error("TimeoutError")), time); return controller.signal; } }; var AbortController = class { static { __name(this, "AbortController"); } constructor() { this.signal = new AbortSignal(); } abort(reason) { if (this.signal.aborted) return; this.signal.aborted = true; if (reason) this.signal.reason = reason; else this.signal.reason = new Error("AbortError"); this.signal.dispatchEvent("abort"); } toString() { return "[object AbortController]"; } get [Symbol.toStringTag]() { return "AbortController"; } }; module2.exports = { AbortController, AbortSignal }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/abort-controller.js var require_abort_controller = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/abort-controller.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AbortController = void 0; var node_abort_controller_1 = require_node_abort_controller(); var AbortControllerImpl; if (globalThis.AbortController) { AbortControllerImpl = globalThis.AbortController; } else { AbortControllerImpl = node_abort_controller_1.AbortController; } var AbortController = class extends AbortControllerImpl { static { __name(this, "AbortController"); } }; exports2.AbortController = AbortController; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/defaults.js var require_defaults = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/defaults.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defaults = void 0; var IS_UNSIGNED_INTEGER = /^(?:0|[1-9]\d*)$/; function isNil(value) { return value == null; } __name(isNil, "isNil"); function eq(value, other) { return value === other || Number.isNaN(value) && Number.isNaN(other); } __name(eq, "eq"); function isLength(value) { return Number.isSafeInteger(value) && value >= 0; } __name(isLength, "isLength"); function isArrayLike(value) { return value != null && typeof value !== "function" && isLength(value.length); } __name(isArrayLike, "isArrayLike"); function isObject2(value) { return value !== null && (typeof value === "object" || typeof value === "function"); } __name(isObject2, "isObject"); function isIndex(value, length = Number.MAX_SAFE_INTEGER) { switch (typeof value) { case "number": return Number.isInteger(value) && value >= 0 && value < length; case "symbol": return false; case "string": return IS_UNSIGNED_INTEGER.test(value); } } __name(isIndex, "isIndex"); function isIterateeCall(value, index, object) { if (!isObject2(object)) { return false; } if (typeof index === "number" && isArrayLike(object) && isIndex(index) && index < object.length || typeof index === "string" && index in object) { return eq(object[index], value); } return false; } __name(isIterateeCall, "isIterateeCall"); function defaults(object, ...sources) { object = Object(object); const objectProto = Object.prototype; let length = sources.length; const guard = length > 2 ? sources[2] : void 0; if (guard && isIterateeCall(sources[0], sources[1], guard)) { length = 1; } for (let i = 0; i < length; i++) { if (isNil(sources[i])) { continue; } const source = sources[i]; for (const key in source) { const value = object[key]; if (value === void 0 || !objectProto.hasOwnProperty.call(object, key) && eq(value, objectProto[key])) { object[key] = source[key]; } } } return object; } __name(defaults, "defaults"); exports2.defaults = defaults; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/isArguments.js var require_isArguments2 = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/isArguments.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isArguments = void 0; function getTag(value) { if (value == null) { return value === void 0 ? "[object Undefined]" : "[object Null]"; } return Object.prototype.toString.call(value); } __name(getTag, "getTag"); function isArguments(value) { return value !== null && typeof value === "object" && getTag(value) === "[object Arguments]"; } __name(isArguments, "isArguments"); exports2.isArguments = isArguments; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/lodash.js var require_lodash2 = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/lodash.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.noop = void 0; function noop() { } __name(noop, "noop"); exports2.noop = noop; __exportStar2(require_defaults(), exports2); __exportStar2(require_isArguments2(), exports2); } }); // ../../node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/common.js var require_common3 = __commonJS({ "../../node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/common.js"(exports2, module2) { function setup(env2) { createDebug.debug = createDebug; createDebug.default = createDebug; createDebug.coerce = coerce; createDebug.disable = disable; createDebug.enable = enable; createDebug.enabled = enabled; createDebug.humanize = require_ms2(); createDebug.destroy = destroy; Object.keys(env2).forEach((key) => { createDebug[key] = env2[key]; }); createDebug.names = []; createDebug.skips = []; createDebug.formatters = {}; function selectColor(namespace) { let hash = 0; for (let i = 0; i < namespace.length; i++) { hash = (hash << 5) - hash + namespace.charCodeAt(i); hash |= 0; } return createDebug.colors[Math.abs(hash) % createDebug.colors.length]; } __name(selectColor, "selectColor"); createDebug.selectColor = selectColor; function createDebug(namespace) { let prevTime; let enableOverride = null; let namespacesCache; let enabledCache; function debug(...args) { if (!debug.enabled) { return; } const self2 = debug; const curr = Number(/* @__PURE__ */ new Date()); const ms = curr - (prevTime || curr); self2.diff = ms; self2.prev = prevTime; self2.curr = curr; prevTime = curr; args[0] = createDebug.coerce(args[0]); if (typeof args[0] !== "string") { args.unshift("%O"); } let index = 0; args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => { if (match === "%%") { return "%"; } index++; const formatter = createDebug.formatters[format]; if (typeof formatter === "function") { const val = args[index]; match = formatter.call(self2, val); args.splice(index, 1); index--; } return match; }); createDebug.formatArgs.call(self2, args); const logFn = self2.log || createDebug.log; logFn.apply(self2, args); } __name(debug, "debug"); debug.namespace = namespace; debug.useColors = createDebug.useColors(); debug.color = createDebug.selectColor(namespace); debug.extend = extend; debug.destroy = createDebug.destroy; Object.defineProperty(debug, "enabled", { enumerable: true, configurable: false, get: /* @__PURE__ */ __name(() => { if (enableOverride !== null) { return enableOverride; } if (namespacesCache !== createDebug.namespaces) { namespacesCache = createDebug.namespaces; enabledCache = createDebug.enabled(namespace); } return enabledCache; }, "get"), set: /* @__PURE__ */ __name((v) => { enableOverride = v; }, "set") }); if (typeof createDebug.init === "function") { createDebug.init(debug); } return debug; } __name(createDebug, "createDebug"); function extend(namespace, delimiter) { const newDebug = createDebug(this.namespace + (typeof delimiter === "undefined" ? ":" : delimiter) + namespace); newDebug.log = this.log; return newDebug; } __name(extend, "extend"); function enable(namespaces) { createDebug.save(namespaces); createDebug.namespaces = namespaces; createDebug.names = []; createDebug.skips = []; const split = (typeof namespaces === "string" ? namespaces : "").trim().replace(/\s+/g, ",").split(",").filter(Boolean); for (const ns of split) { if (ns[0] === "-") { createDebug.skips.push(ns.slice(1)); } else { createDebug.names.push(ns); } } } __name(enable, "enable"); function matchesTemplate(search, template) { let searchIndex = 0; let templateIndex = 0; let starIndex = -1; let matchIndex = 0; while (searchIndex < search.length) { if (templateIndex < template.length && (template[templateIndex] === search[searchIndex] || template[templateIndex] === "*")) { if (template[templateIndex] === "*") { starIndex = templateIndex; matchIndex = searchIndex; templateIndex++; } else { searchIndex++; templateIndex++; } } else if (starIndex !== -1) { templateIndex = starIndex + 1; matchIndex++; searchIndex = matchIndex; } else { return false; } } while (templateIndex < template.length && template[templateIndex] === "*") { templateIndex++; } return templateIndex === template.length; } __name(matchesTemplate, "matchesTemplate"); function disable() { const namespaces = [ ...createDebug.names, ...createDebug.skips.map((namespace) => "-" + namespace) ].join(","); createDebug.enable(""); return namespaces; } __name(disable, "disable"); function enabled(name) { for (const skip of createDebug.skips) { if (matchesTemplate(name, skip)) { return false; } } for (const ns of createDebug.names) { if (matchesTemplate(name, ns)) { return true; } } return false; } __name(enabled, "enabled"); function coerce(val) { if (val instanceof Error) { return val.stack || val.message; } return val; } __name(coerce, "coerce"); function destroy() { console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."); } __name(destroy, "destroy"); createDebug.enable(createDebug.load()); return createDebug; } __name(setup, "setup"); module2.exports = setup; } }); // ../../node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/browser.js var require_browser2 = __commonJS({ "../../node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/browser.js"(exports2, module2) { exports2.formatArgs = formatArgs; exports2.save = save; exports2.load = load; exports2.useColors = useColors; exports2.storage = localstorage(); exports2.destroy = /* @__PURE__ */ (() => { let warned = false; return () => { if (!warned) { warned = true; console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."); } }; })(); exports2.colors = [ "#0000CC", "#0000FF", "#0033CC", "#0033FF", "#0066CC", "#0066FF", "#0099CC", "#0099FF", "#00CC00", "#00CC33", "#00CC66", "#00CC99", "#00CCCC", "#00CCFF", "#3300CC", "#3300FF", "#3333CC", "#3333FF", "#3366CC", "#3366FF", "#3399CC", "#3399FF", "#33CC00", "#33CC33", "#33CC66", "#33CC99", "#33CCCC", "#33CCFF", "#6600CC", "#6600FF", "#6633CC", "#6633FF", "#66CC00", "#66CC33", "#9900CC", "#9900FF", "#9933CC", "#9933FF", "#99CC00", "#99CC33", "#CC0000", "#CC0033", "#CC0066", "#CC0099", "#CC00CC", "#CC00FF", "#CC3300", "#CC3333", "#CC3366", "#CC3399", "#CC33CC", "#CC33FF", "#CC6600", "#CC6633", "#CC9900", "#CC9933", "#CCCC00", "#CCCC33", "#FF0000", "#FF0033", "#FF0066", "#FF0099", "#FF00CC", "#FF00FF", "#FF3300", "#FF3333", "#FF3366", "#FF3399", "#FF33CC", "#FF33FF", "#FF6600", "#FF6633", "#FF9900", "#FF9933", "#FFCC00", "#FFCC33" ]; function useColors() { if (typeof window !== "undefined" && window.process && (window.process.type === "renderer" || window.process.__nwjs)) { return true; } if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { return false; } let m; return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // Is firebug? http://stackoverflow.com/a/398120/376773 typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31? // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages typeof navigator !== "undefined" && navigator.userAgent && (m = navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)) && parseInt(m[1], 10) >= 31 || // Double check webkit in userAgent just in case we are in a worker typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); } __name(useColors, "useColors"); function formatArgs(args) { args[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + args[0] + (this.useColors ? "%c " : " ") + "+" + module2.exports.humanize(this.diff); if (!this.useColors) { return; } const c = "color: " + this.color; args.splice(1, 0, c, "color: inherit"); let index = 0; let lastC = 0; args[0].replace(/%[a-zA-Z%]/g, (match) => { if (match === "%%") { return; } index++; if (match === "%c") { lastC = index; } }); args.splice(lastC, 0, c); } __name(formatArgs, "formatArgs"); exports2.log = console.debug || console.log || (() => { }); function save(namespaces) { try { if (namespaces) { exports2.storage.setItem("debug", namespaces); } else { exports2.storage.removeItem("debug"); } } catch (error) { } } __name(save, "save"); function load() { let r; try { r = exports2.storage.getItem("debug") || exports2.storage.getItem("DEBUG"); } catch (error) { } if (!r && typeof process !== "undefined" && "env" in process) { r = process.env.DEBUG; } return r; } __name(load, "load"); function localstorage() { try { return localStorage; } catch (error) { } } __name(localstorage, "localstorage"); module2.exports = require_common3()(exports2); var { formatters } = module2.exports; formatters.j = function(v) { try { return JSON.stringify(v); } catch (error) { return "[UnexpectedJSONParseError]: " + error.message; } }; } }); // ../../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js var require_has_flag = __commonJS({ "../../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js"(exports2, module2) { "use strict"; module2.exports = (flag, argv = process.argv) => { const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--"; const position = argv.indexOf(prefix + flag); const terminatorPosition = argv.indexOf("--"); return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition); }; } }); // ../../node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js var require_supports_color = __commonJS({ "../../node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js"(exports2, module2) { "use strict"; var os = require("os"); var tty = require("tty"); var hasFlag = require_has_flag(); var { env: env2 } = process; var forceColor; if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) { forceColor = 0; } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { forceColor = 1; } if ("FORCE_COLOR" in env2) { if (env2.FORCE_COLOR === "true") { forceColor = 1; } else if (env2.FORCE_COLOR === "false") { forceColor = 0; } else { forceColor = env2.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env2.FORCE_COLOR, 10), 3); } } function translateLevel(level) { if (level === 0) { return false; } return { level, hasBasic: true, has256: level >= 2, has16m: level >= 3 }; } __name(translateLevel, "translateLevel"); function supportsColor(haveStream, streamIsTTY) { if (forceColor === 0) { return 0; } if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { return 3; } if (hasFlag("color=256")) { return 2; } if (haveStream && !streamIsTTY && forceColor === void 0) { return 0; } const min = forceColor || 0; if (env2.TERM === "dumb") { return min; } if (process.platform === "win32") { const osRelease = os.release().split("."); if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) { return Number(osRelease[2]) >= 14931 ? 3 : 2; } return 1; } if ("CI" in env2) { if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE"].some((sign) => sign in env2) || env2.CI_NAME === "codeship") { return 1; } return min; } if ("TEAMCITY_VERSION" in env2) { return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env2.TEAMCITY_VERSION) ? 1 : 0; } if (env2.COLORTERM === "truecolor") { return 3; } if ("TERM_PROGRAM" in env2) { const version2 = parseInt((env2.TERM_PROGRAM_VERSION || "").split(".")[0], 10); switch (env2.TERM_PROGRAM) { case "iTerm.app": return version2 >= 3 ? 3 : 2; case "Apple_Terminal": return 2; } } if (/-256(color)?$/i.test(env2.TERM)) { return 2; } if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env2.TERM)) { return 1; } if ("COLORTERM" in env2) { return 1; } return min; } __name(supportsColor, "supportsColor"); function getSupportLevel(stream) { const level = supportsColor(stream, stream && stream.isTTY); return translateLevel(level); } __name(getSupportLevel, "getSupportLevel"); module2.exports = { supportsColor: getSupportLevel, stdout: translateLevel(supportsColor(true, tty.isatty(1))), stderr: translateLevel(supportsColor(true, tty.isatty(2))) }; } }); // ../../node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/node.js var require_node3 = __commonJS({ "../../node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/node.js"(exports2, module2) { var tty = require("tty"); var util2 = require("util"); exports2.init = init; exports2.log = log; exports2.formatArgs = formatArgs; exports2.save = save; exports2.load = load; exports2.useColors = useColors; exports2.destroy = util2.deprecate( () => { }, "Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`." ); exports2.colors = [6, 2, 3, 4, 5, 1]; try { const supportsColor = require_supports_color(); if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) { exports2.colors = [ 20, 21, 26, 27, 32, 33, 38, 39, 40, 41, 42, 43, 44, 45, 56, 57, 62, 63, 68, 69, 74, 75, 76, 77, 78, 79, 80, 81, 92, 93, 98, 99, 112, 113, 128, 129, 134, 135, 148, 149, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 178, 179, 184, 185, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 214, 215, 220, 221 ]; } } catch (error) { } exports2.inspectOpts = Object.keys(process.env).filter((key) => { return /^debug_/i.test(key); }).reduce((obj2, key) => { const prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, (_2, k) => { return k.toUpperCase(); }); let val = process.env[key]; if (/^(yes|on|true|enabled)$/i.test(val)) { val = true; } else if (/^(no|off|false|disabled)$/i.test(val)) { val = false; } else if (val === "null") { val = null; } else { val = Number(val); } obj2[prop] = val; return obj2; }, {}); function useColors() { return "colors" in exports2.inspectOpts ? Boolean(exports2.inspectOpts.colors) : tty.isatty(process.stderr.fd); } __name(useColors, "useColors"); function formatArgs(args) { const { namespace: name, useColors: useColors2 } = this; if (useColors2) { const c = this.color; const colorCode = "\x1B[3" + (c < 8 ? c : "8;5;" + c); const prefix = ` ${colorCode};1m${name} \x1B[0m`; args[0] = prefix + args[0].split("\n").join("\n" + prefix); args.push(colorCode + "m+" + module2.exports.humanize(this.diff) + "\x1B[0m"); } else { args[0] = getDate() + name + " " + args[0]; } } __name(formatArgs, "formatArgs"); function getDate() { if (exports2.inspectOpts.hideDate) { return ""; } return (/* @__PURE__ */ new Date()).toISOString() + " "; } __name(getDate, "getDate"); function log(...args) { return process.stderr.write(util2.formatWithOptions(exports2.inspectOpts, ...args) + "\n"); } __name(log, "log"); function save(namespaces) { if (namespaces) { process.env.DEBUG = namespaces; } else { delete process.env.DEBUG; } } __name(save, "save"); function load() { return process.env.DEBUG; } __name(load, "load"); function init(debug) { debug.inspectOpts = {}; const keys = Object.keys(exports2.inspectOpts); for (let i = 0; i < keys.length; i++) { debug.inspectOpts[keys[i]] = exports2.inspectOpts[keys[i]]; } } __name(init, "init"); module2.exports = require_common3()(exports2); var { formatters } = module2.exports; formatters.o = function(v) { this.inspectOpts.colors = this.useColors; return util2.inspect(v, this.inspectOpts).split("\n").map((str) => str.trim()).join(" "); }; formatters.O = function(v) { this.inspectOpts.colors = this.useColors; return util2.inspect(v, this.inspectOpts); }; } }); // ../../node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/index.js var require_src2 = __commonJS({ "../../node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/index.js"(exports2, module2) { if (typeof process === "undefined" || process.type === "renderer" || process.browser === true || process.__nwjs) { module2.exports = require_browser2(); } else { module2.exports = require_node3(); } } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/debug.js var require_debug2 = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/debug.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.genRedactedString = exports2.getStringValue = exports2.MAX_ARGUMENT_LENGTH = void 0; var debug_1 = require_src2(); var MAX_ARGUMENT_LENGTH = 200; exports2.MAX_ARGUMENT_LENGTH = MAX_ARGUMENT_LENGTH; var NAMESPACE_PREFIX = "ioredis"; function getStringValue(v) { if (v === null) { return; } switch (typeof v) { case "boolean": return; case "number": return; case "object": if (Buffer.isBuffer(v)) { return v.toString("hex"); } if (Array.isArray(v)) { return v.join(","); } try { return JSON.stringify(v); } catch (e) { return; } case "string": return v; } } __name(getStringValue, "getStringValue"); exports2.getStringValue = getStringValue; function genRedactedString(str, maxLen) { const { length } = str; return length <= maxLen ? str : str.slice(0, maxLen) + ' ... '; } __name(genRedactedString, "genRedactedString"); exports2.genRedactedString = genRedactedString; function genDebugFunction(namespace) { const fn = (0, debug_1.default)(`${NAMESPACE_PREFIX}:${namespace}`); function wrappedDebug(...args) { if (!fn.enabled) { return; } for (let i = 1; i < args.length; i++) { const str = getStringValue(args[i]); if (typeof str === "string" && str.length > MAX_ARGUMENT_LENGTH) { args[i] = genRedactedString(str, MAX_ARGUMENT_LENGTH); } } return fn.apply(null, args); } __name(wrappedDebug, "wrappedDebug"); Object.defineProperties(wrappedDebug, { namespace: { get() { return fn.namespace; } }, enabled: { get() { return fn.enabled; } }, destroy: { get() { return fn.destroy; } }, log: { get() { return fn.log; }, set(l2) { fn.log = l2; } } }); return wrappedDebug; } __name(genDebugFunction, "genDebugFunction"); exports2.default = genDebugFunction; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/constants/TLSProfiles.js var require_TLSProfiles = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/constants/TLSProfiles.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var RedisCloudCA = `-----BEGIN CERTIFICATE----- MIIDTzCCAjegAwIBAgIJAKSVpiDswLcwMA0GCSqGSIb3DQEBBQUAMD4xFjAUBgNV BAoMDUdhcmFudGlhIERhdGExJDAiBgNVBAMMG1NTTCBDZXJ0aWZpY2F0aW9uIEF1 dGhvcml0eTAeFw0xMzEwMDExMjE0NTVaFw0yMzA5MjkxMjE0NTVaMD4xFjAUBgNV BAoMDUdhcmFudGlhIERhdGExJDAiBgNVBAMMG1NTTCBDZXJ0aWZpY2F0aW9uIEF1 dGhvcml0eTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALZqkh/DczWP JnxnHLQ7QL0T4B4CDKWBKCcisriGbA6ZePWVNo4hfKQC6JrzfR+081NeD6VcWUiz rmd+jtPhIY4c+WVQYm5PKaN6DT1imYdxQw7aqO5j2KUCEh/cznpLxeSHoTxlR34E QwF28Wl3eg2vc5ct8LjU3eozWVk3gb7alx9mSA2SgmuX5lEQawl++rSjsBStemY2 BDwOpAMXIrdEyP/cVn8mkvi/BDs5M5G+09j0gfhyCzRWMQ7Hn71u1eolRxwVxgi3 TMn+/vTaFSqxKjgck6zuAYjBRPaHe7qLxHNr1So/Mc9nPy+3wHebFwbIcnUojwbp 4nctkWbjb2cCAwEAAaNQME4wHQYDVR0OBBYEFP1whtcrydmW3ZJeuSoKZIKjze3w MB8GA1UdIwQYMBaAFP1whtcrydmW3ZJeuSoKZIKjze3wMAwGA1UdEwQFMAMBAf8w DQYJKoZIhvcNAQEFBQADggEBAG2erXhwRAa7+ZOBs0B6X57Hwyd1R4kfmXcs0rta lbPpvgULSiB+TCbf3EbhJnHGyvdCY1tvlffLjdA7HJ0PCOn+YYLBA0pTU/dyvrN6 Su8NuS5yubnt9mb13nDGYo1rnt0YRfxN+8DM3fXIVr038A30UlPX2Ou1ExFJT0MZ uFKY6ZvLdI6/1cbgmguMlAhM+DhKyV6Sr5699LM3zqeI816pZmlREETYkGr91q7k BpXJu/dtHaGxg1ZGu6w/PCsYGUcECWENYD4VQPd8N32JjOfu6vEgoEAwfPP+3oGp Z4m3ewACcWOAenqflb+cQYC4PsF7qbXDmRaWrbKntOlZ3n0= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGMTCCBBmgAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwajELMAkGA1UEBhMCVVMx CzAJBgNVBAgMAkNBMQswCQYDVQQHDAJDQTESMBAGA1UECgwJUmVkaXNMYWJzMS0w KwYDVQQDDCRSZWRpc0xhYnMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcN MTgwMjI1MTUzNzM3WhcNMjgwMjIzMTUzNzM3WjBfMQswCQYDVQQGEwJVUzELMAkG A1UECAwCQ0ExEjAQBgNVBAoMCVJlZGlzTGFiczEvMC0GA1UEAwwmUkNQIEludGVy bWVkaWF0ZSBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUA A4ICDwAwggIKAoICAQDf9dqbxc8Bq7Ctq9rWcxrGNKKHivqLAFpPq02yLPx6fsOv Tq7GsDChAYBBc4v7Y2Ap9RD5Vs3dIhEANcnolf27QwrG9RMnnvzk8pCvp1o6zSU4 VuOE1W66/O1/7e2rVxyrnTcP7UgK43zNIXu7+tiAqWsO92uSnuMoGPGpeaUm1jym hjWKtkAwDFSqvHY+XL5qDVBEjeUe+WHkYUg40cAXjusAqgm2hZt29c2wnVrxW25W P0meNlzHGFdA2AC5z54iRiqj57dTfBTkHoBczQxcyw6hhzxZQ4e5I5zOKjXXEhZN r0tA3YC14CTabKRus/JmZieyZzRgEy2oti64tmLYTqSlAD78pRL40VNoaSYetXLw hhNsXCHgWaY6d5bLOc/aIQMAV5oLvZQKvuXAF1IDmhPA+bZbpWipp0zagf1P1H3s UzsMdn2KM0ejzgotbtNlj5TcrVwpmvE3ktvUAuA+hi3FkVx1US+2Gsp5x4YOzJ7u P1WPk6ShF0JgnJH2ILdj6kttTWwFzH17keSFICWDfH/+kM+k7Y1v3EXMQXE7y0T9 MjvJskz6d/nv+sQhY04xt64xFMGTnZjlJMzfQNi7zWFLTZnDD0lPowq7l3YiPoTT t5Xky83lu0KZsZBo0WlWaDG00gLVdtRgVbcuSWxpi5BdLb1kRab66JptWjxwXQID AQABo4HrMIHoMDoGA1UdHwQzMDEwL6AtoCuGKWh0dHBzOi8vcmwtY2Etc2VydmVy LnJlZGlzbGFicy5jb20vdjEvY3JsMEYGCCsGAQUFBwEBBDowODA2BggrBgEFBQcw AYYqaHR0cHM6Ly9ybC1jYS1zZXJ2ZXIucmVkaXNsYWJzLmNvbS92MS9vY3NwMB0G A1UdDgQWBBQHar5OKvQUpP2qWt6mckzToeCOHDAfBgNVHSMEGDAWgBQi42wH6hM4 L2sujEvLM0/u8lRXTzASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIB hjANBgkqhkiG9w0BAQsFAAOCAgEAirEn/iTsAKyhd+pu2W3Z5NjCko4NPU0EYUbr AP7+POK2rzjIrJO3nFYQ/LLuC7KCXG+2qwan2SAOGmqWst13Y+WHp44Kae0kaChW vcYLXXSoGQGC8QuFSNUdaeg3RbMDYFT04dOkqufeWVccoHVxyTSg9eD8LZuHn5jw 7QDLiEECBmIJHk5Eeo2TAZrx4Yx6ufSUX5HeVjlAzqwtAqdt99uCJ/EL8bgpWbe+ XoSpvUv0SEC1I1dCAhCKAvRlIOA6VBcmzg5Am12KzkqTul12/VEFIgzqu0Zy2Jbc AUPrYVu/+tOGXQaijy7YgwH8P8n3s7ZeUa1VABJHcxrxYduDDJBLZi+MjheUDaZ1 jQRHYevI2tlqeSBqdPKG4zBY5lS0GiAlmuze5oENt0P3XboHoZPHiqcK3VECgTVh /BkJcuudETSJcZDmQ8YfoKfBzRQNg2sv/hwvUv73Ss51Sco8GEt2lD8uEdib1Q6z zDT5lXJowSzOD5ZA9OGDjnSRL+2riNtKWKEqvtEG3VBJoBzu9GoxbAc7wIZLxmli iF5a/Zf5X+UXD3s4TMmy6C4QZJpAA2egsSQCnraWO2ULhh7iXMysSkF/nzVfZn43 iqpaB8++9a37hWq14ZmOv0TJIDz//b2+KC4VFXWQ5W5QC6whsjT+OlG4p5ZYG0jo 616pxqo= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFujCCA6KgAwIBAgIJAJ1aTT1lu2ScMA0GCSqGSIb3DQEBCwUAMGoxCzAJBgNV BAYTAlVTMQswCQYDVQQIDAJDQTELMAkGA1UEBwwCQ0ExEjAQBgNVBAoMCVJlZGlz TGFiczEtMCsGA1UEAwwkUmVkaXNMYWJzIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9y aXR5MB4XDTE4MDIyNTE1MjA0MloXDTM4MDIyMDE1MjA0MlowajELMAkGA1UEBhMC VVMxCzAJBgNVBAgMAkNBMQswCQYDVQQHDAJDQTESMBAGA1UECgwJUmVkaXNMYWJz MS0wKwYDVQQDDCRSZWRpc0xhYnMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkw ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDLEjXy7YrbN5Waau5cd6g1 G5C2tMmeTpZ0duFAPxNU4oE3RHS5gGiok346fUXuUxbZ6QkuzeN2/2Z+RmRcJhQY Dm0ZgdG4x59An1TJfnzKKoWj8ISmoHS/TGNBdFzXV7FYNLBuqZouqePI6ReC6Qhl pp45huV32Q3a6IDrrvx7Wo5ZczEQeFNbCeCOQYNDdTmCyEkHqc2AGo8eoIlSTutT ULOC7R5gzJVTS0e1hesQ7jmqHjbO+VQS1NAL4/5K6cuTEqUl+XhVhPdLWBXJQ5ag 54qhX4v+ojLzeU1R/Vc6NjMvVtptWY6JihpgplprN0Yh2556ewcXMeturcKgXfGJ xeYzsjzXerEjrVocX5V8BNrg64NlifzTMKNOOv4fVZszq1SIHR8F9ROrqiOdh8iC JpUbLpXH9hWCSEO6VRMB2xJoKu3cgl63kF30s77x7wLFMEHiwsQRKxooE1UhgS9K 2sO4TlQ1eWUvFvHSTVDQDlGQ6zu4qjbOpb3Q8bQwoK+ai2alkXVR4Ltxe9QlgYK3 StsnPhruzZGA0wbXdpw0bnM+YdlEm5ffSTpNIfgHeaa7Dtb801FtA71ZlH7A6TaI SIQuUST9EKmv7xrJyx0W1pGoPOLw5T029aTjnICSLdtV9bLwysrLhIYG5bnPq78B cS+jZHFGzD7PUVGQD01nOQIDAQABo2MwYTAdBgNVHQ4EFgQUIuNsB+oTOC9rLoxL yzNP7vJUV08wHwYDVR0jBBgwFoAUIuNsB+oTOC9rLoxLyzNP7vJUV08wDwYDVR0T AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAYYwDQYJKoZIhvcNAQELBQADggIBAHfg z5pMNUAKdMzK1aS1EDdK9yKz4qicILz5czSLj1mC7HKDRy8cVADUxEICis++CsCu rYOvyCVergHQLREcxPq4rc5Nq1uj6J6649NEeh4WazOOjL4ZfQ1jVznMbGy+fJm3 3Hoelv6jWRG9iqeJZja7/1s6YC6bWymI/OY1e4wUKeNHAo+Vger7MlHV+RuabaX+ hSJ8bJAM59NCM7AgMTQpJCncrcdLeceYniGy5Q/qt2b5mJkQVkIdy4TPGGB+AXDJ D0q3I/JDRkDUFNFdeW0js7fHdsvCR7O3tJy5zIgEV/o/BCkmJVtuwPYOrw/yOlKj TY/U7ATAx9VFF6/vYEOMYSmrZlFX+98L6nJtwDqfLB5VTltqZ4H/KBxGE3IRSt9l FXy40U+LnXzhhW+7VBAvyYX8GEXhHkKU8Gqk1xitrqfBXY74xKgyUSTolFSfFVgj mcM/X4K45bka+qpkj7Kfv/8D4j6aZekwhN2ly6hhC1SmQ8qjMjpG/mrWOSSHZFmf ybu9iD2AYHeIOkshIl6xYIa++Q/00/vs46IzAbQyriOi0XxlSMMVtPx0Q3isp+ji n8Mq9eOuxYOEQ4of8twUkUDd528iwGtEdwf0Q01UyT84S62N8AySl1ZBKXJz6W4F UhWfa/HQYOAPDdEjNgnVwLI23b8t0TozyCWw7q8h -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEjzCCA3egAwIBAgIQe55B/ALCKJDZtdNT8kD6hTANBgkqhkiG9w0BAQsFADBM MSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEGA1UEChMKR2xv YmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjAeFw0yMjAxMjYxMjAwMDBaFw0y NTAxMjYwMDAwMDBaMFgxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWdu IG52LXNhMS4wLAYDVQQDEyVHbG9iYWxTaWduIEF0bGFzIFIzIE9WIFRMUyBDQSAy MDIyIFEyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmGmg1LW9b7Lf 8zDD83yBDTEkt+FOxKJZqF4veWc5KZsQj9HfnUS2e5nj/E+JImlGPsQuoiosLuXD BVBNAMcUFa11buFMGMeEMwiTmCXoXRrXQmH0qjpOfKgYc5gHG3BsRGaRrf7VR4eg ofNMG9wUBw4/g/TT7+bQJdA4NfE7Y4d5gEryZiBGB/swaX6Jp/8MF4TgUmOWmalK dZCKyb4sPGQFRTtElk67F7vU+wdGcrcOx1tDcIB0ncjLPMnaFicagl+daWGsKqTh counQb6QJtYHa91KvCfKWocMxQ7OIbB5UARLPmC4CJ1/f8YFm35ebfzAeULYdGXu jE9CLor0OwIDAQABo4IBXzCCAVswDgYDVR0PAQH/BAQDAgGGMB0GA1UdJQQWMBQG CCsGAQUFBwMBBggrBgEFBQcDAjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQW BBSH5Zq7a7B/t95GfJWkDBpA8HHqdjAfBgNVHSMEGDAWgBSP8Et/qC5FJK5NUPpj move4t0bvDB7BggrBgEFBQcBAQRvMG0wLgYIKwYBBQUHMAGGImh0dHA6Ly9vY3Nw Mi5nbG9iYWxzaWduLmNvbS9yb290cjMwOwYIKwYBBQUHMAKGL2h0dHA6Ly9zZWN1 cmUuZ2xvYmFsc2lnbi5jb20vY2FjZXJ0L3Jvb3QtcjMuY3J0MDYGA1UdHwQvMC0w K6ApoCeGJWh0dHA6Ly9jcmwuZ2xvYmFsc2lnbi5jb20vcm9vdC1yMy5jcmwwIQYD VR0gBBowGDAIBgZngQwBAgIwDAYKKwYBBAGgMgoBAjANBgkqhkiG9w0BAQsFAAOC AQEAKRic9/f+nmhQU/wz04APZLjgG5OgsuUOyUEZjKVhNGDwxGTvKhyXGGAMW2B/ 3bRi+aElpXwoxu3pL6fkElbX3B0BeS5LoDtxkyiVEBMZ8m+sXbocwlPyxrPbX6mY 0rVIvnuUeBH8X0L5IwfpNVvKnBIilTbcebfHyXkPezGwz7E1yhUULjJFm2bt0SdX y+4X/WeiiYIv+fTVgZZgl+/2MKIsu/qdBJc3f3TvJ8nz+Eax1zgZmww+RSQWeOj3 15Iw6Z5FX+NwzY/Ab+9PosR5UosSeq+9HhtaxZttXG1nVh+avYPGYddWmiMT90J5 ZgKnO/Fx2hBgTxhOTMYaD312kg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4 MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8 RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK 6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH WD9f -----END CERTIFICATE-----`; var TLSProfiles = { RedisCloudFixed: { ca: RedisCloudCA }, RedisCloudFlexible: { ca: RedisCloudCA } }; exports2.default = TLSProfiles; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/index.js var require_utils15 = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.noop = exports2.isArguments = exports2.defaults = exports2.Debug = exports2.getPackageMeta = exports2.zipMap = exports2.CONNECTION_CLOSED_ERROR_MSG = exports2.shuffle = exports2.sample = exports2.resolveTLSProfile = exports2.parseURL = exports2.optimizeErrorStack = exports2.toArg = exports2.convertMapToArray = exports2.convertObjectToArray = exports2.timeout = exports2.packObject = exports2.isInt = exports2.wrapMultiResult = exports2.convertBufferToString = void 0; var fs_1 = require("fs"); var path_12 = require("path"); var lodash_1 = require_lodash2(); Object.defineProperty(exports2, "defaults", { enumerable: true, get: /* @__PURE__ */ __name(function() { return lodash_1.defaults; }, "get") }); Object.defineProperty(exports2, "isArguments", { enumerable: true, get: /* @__PURE__ */ __name(function() { return lodash_1.isArguments; }, "get") }); Object.defineProperty(exports2, "noop", { enumerable: true, get: /* @__PURE__ */ __name(function() { return lodash_1.noop; }, "get") }); var debug_1 = require_debug2(); exports2.Debug = debug_1.default; var TLSProfiles_1 = require_TLSProfiles(); function convertBufferToString(value, encoding) { if (value instanceof Buffer) { return value.toString(encoding); } if (Array.isArray(value)) { const length = value.length; const res = Array(length); for (let i = 0; i < length; ++i) { res[i] = value[i] instanceof Buffer && encoding === "utf8" ? value[i].toString() : convertBufferToString(value[i], encoding); } return res; } return value; } __name(convertBufferToString, "convertBufferToString"); exports2.convertBufferToString = convertBufferToString; function wrapMultiResult(arr) { if (!arr) { return null; } const result = []; const length = arr.length; for (let i = 0; i < length; ++i) { const item = arr[i]; if (item instanceof Error) { result.push([item]); } else { result.push([null, item]); } } return result; } __name(wrapMultiResult, "wrapMultiResult"); exports2.wrapMultiResult = wrapMultiResult; function isInt(value) { const x = parseFloat(value); return !isNaN(value) && (x | 0) === x; } __name(isInt, "isInt"); exports2.isInt = isInt; function packObject(array) { const result = {}; const length = array.length; for (let i = 1; i < length; i += 2) { result[array[i - 1]] = array[i]; } return result; } __name(packObject, "packObject"); exports2.packObject = packObject; function timeout(callback, timeout2) { let timer = null; const run = /* @__PURE__ */ __name(function() { if (timer) { clearTimeout(timer); timer = null; callback.apply(this, arguments); } }, "run"); timer = setTimeout(run, timeout2, new Error("timeout")); return run; } __name(timeout, "timeout"); exports2.timeout = timeout; function convertObjectToArray(obj2) { const result = []; const keys = Object.keys(obj2); for (let i = 0, l2 = keys.length; i < l2; i++) { result.push(keys[i], obj2[keys[i]]); } return result; } __name(convertObjectToArray, "convertObjectToArray"); exports2.convertObjectToArray = convertObjectToArray; function convertMapToArray(map) { const result = []; let pos = 0; map.forEach(function(value, key) { result[pos] = key; result[pos + 1] = value; pos += 2; }); return result; } __name(convertMapToArray, "convertMapToArray"); exports2.convertMapToArray = convertMapToArray; function toArg(arg) { if (arg === null || typeof arg === "undefined") { return ""; } return String(arg); } __name(toArg, "toArg"); exports2.toArg = toArg; function optimizeErrorStack(error, friendlyStack, filterPath) { const stacks = friendlyStack.split("\n"); let lines = ""; let i; for (i = 1; i < stacks.length; ++i) { if (stacks[i].indexOf(filterPath) === -1) { break; } } for (let j = i; j < stacks.length; ++j) { lines += "\n" + stacks[j]; } if (error.stack) { const pos = error.stack.indexOf("\n"); error.stack = error.stack.slice(0, pos) + lines; } return error; } __name(optimizeErrorStack, "optimizeErrorStack"); exports2.optimizeErrorStack = optimizeErrorStack; function parseURL(url) { if (isInt(url)) { return { port: url }; } const rawUrl = url; const hasProtocol = /^rediss?:\/\//i.test(rawUrl); const isProtocolRelative = rawUrl.startsWith("//"); if (rawUrl[0] === "/" && !isProtocolRelative) { const qIdx = rawUrl.indexOf("?"); const result2 = { path: qIdx === -1 ? rawUrl : rawUrl.slice(0, qIdx) }; if (qIdx !== -1) { const options2 = {}; const params = new URLSearchParams(rawUrl.slice(qIdx + 1)); params.forEach((value, key) => { options2[key] = parseURLQueryItem(key, value); }); (0, lodash_1.defaults)(result2, options2); } return result2; } let parsed; if (hasProtocol) { parsed = new URL(rawUrl); } else if (isProtocolRelative) { parsed = new URL("redis:" + rawUrl); } else { parsed = new URL("redis://" + rawUrl); } const options = {}; parsed.searchParams.forEach((value, key) => { options[key] = parseURLQueryItem(key, value); }); const result = {}; if (parsed.username || parsed.password) { result.username = decodeURIComponent(parsed.username); result.password = decodeURIComponent(parsed.password); } if (parsed.pathname && parsed.pathname !== "/") { if (hasProtocol || isProtocolRelative) { if (parsed.pathname.length > 1) { result.db = parsed.pathname.slice(1); } } else { result.path = parsed.pathname; } } if (parsed.hostname) { result.host = parsed.hostname.replace(/^\[|\]$/g, ""); } if (parsed.port) { result.port = parsed.port; } (0, lodash_1.defaults)(result, options); return result; } __name(parseURL, "parseURL"); exports2.parseURL = parseURL; function parseURLQueryItem(key, value) { if (key === "family") { const intFamily = Number.parseInt(value, 10); if (!Number.isNaN(intFamily)) { return intFamily; } } return value; } __name(parseURLQueryItem, "parseURLQueryItem"); function resolveTLSProfile(options) { let tls = options === null || options === void 0 ? void 0 : options.tls; if (typeof tls === "string") tls = { profile: tls }; const profile = TLSProfiles_1.default[tls === null || tls === void 0 ? void 0 : tls.profile]; if (profile) { tls = Object.assign({}, profile, tls); delete tls.profile; options = Object.assign({}, options, { tls }); } return options; } __name(resolveTLSProfile, "resolveTLSProfile"); exports2.resolveTLSProfile = resolveTLSProfile; function sample(array, from = 0) { const length = array.length; if (from >= length) { return null; } return array[from + Math.floor(Math.random() * (length - from))]; } __name(sample, "sample"); exports2.sample = sample; function shuffle(array) { let counter = array.length; while (counter > 0) { const index = Math.floor(Math.random() * counter); counter--; [array[counter], array[index]] = [array[index], array[counter]]; } return array; } __name(shuffle, "shuffle"); exports2.shuffle = shuffle; exports2.CONNECTION_CLOSED_ERROR_MSG = "Connection is closed."; function zipMap(keys, values) { const map = /* @__PURE__ */ new Map(); keys.forEach((key, index) => { map.set(key, values[index]); }); return map; } __name(zipMap, "zipMap"); exports2.zipMap = zipMap; var cachedPackageMeta = null; async function getPackageMeta() { if (cachedPackageMeta) { return cachedPackageMeta; } try { const filePath = (0, path_12.resolve)(__dirname, "..", "..", "package.json"); const data = await fs_1.promises.readFile(filePath, "utf8"); const parsed = JSON.parse(data); cachedPackageMeta = { version: parsed.version }; return cachedPackageMeta; } catch (err) { cachedPackageMeta = { version: "error-fetching-version" }; return cachedPackageMeta; } } __name(getPackageMeta, "getPackageMeta"); exports2.getPackageMeta = getPackageMeta; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/connection-closed-error.js var require_connection_closed_error = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/connection-closed-error.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ConnectionClosedError = void 0; var ConnectionClosedError = class extends Error { static { __name(this, "ConnectionClosedError"); } constructor(message, cause) { super(message !== null && message !== void 0 ? message : "Connection is closed"); this.cause = cause; this.name = "ConnectionClosedError"; Object.setPrototypeOf(this, new.target.prototype); } }; exports2.ConnectionClosedError = ConnectionClosedError; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/constants.js var require_constants11 = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/constants.js"(exports2, module2) { "use strict"; var SEMVER_SPEC_VERSION = "2.0.0"; var MAX_LENGTH = 256; var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */ 9007199254740991; var MAX_SAFE_COMPONENT_LENGTH = 16; var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6; var RELEASE_TYPES = [ "major", "premajor", "minor", "preminor", "patch", "prepatch", "prerelease" ]; module2.exports = { MAX_LENGTH, MAX_SAFE_COMPONENT_LENGTH, MAX_SAFE_BUILD_LENGTH, MAX_SAFE_INTEGER, RELEASE_TYPES, SEMVER_SPEC_VERSION, FLAG_INCLUDE_PRERELEASE: 1, FLAG_LOOSE: 2 }; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/debug.js var require_debug3 = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/debug.js"(exports2, module2) { "use strict"; var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => { }; module2.exports = debug; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/re.js var require_re = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/re.js"(exports2, module2) { "use strict"; var { MAX_SAFE_COMPONENT_LENGTH, MAX_SAFE_BUILD_LENGTH, MAX_LENGTH } = require_constants11(); var debug = require_debug3(); exports2 = module2.exports = {}; var re = exports2.re = []; var safeRe = exports2.safeRe = []; var src = exports2.src = []; var safeSrc = exports2.safeSrc = []; var t = exports2.t = {}; var R = 0; var LETTERDASHNUMBER = "[a-zA-Z0-9-]"; var safeRegexReplacements = [ ["\\s", 1], ["\\d", MAX_LENGTH], [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH] ]; var makeSafeRegex = /* @__PURE__ */ __name((value) => { for (const [token, max] of safeRegexReplacements) { value = value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`); } return value; }, "makeSafeRegex"); var createToken = /* @__PURE__ */ __name((name, value, isGlobal) => { const safe = makeSafeRegex(value); const index = R++; debug(name, index, value); t[name] = index; src[index] = value; safeSrc[index] = safe; re[index] = new RegExp(value, isGlobal ? "g" : void 0); safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0); }, "createToken"); createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*"); createToken("NUMERICIDENTIFIERLOOSE", "\\d+"); createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`); createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})`); createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})`); createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIER]})`); createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NONNUMERICIDENTIFIER]}|${src[t.NUMERICIDENTIFIERLOOSE]})`); createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`); createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`); createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`); createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`); createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`); createToken("FULL", `^${src[t.FULLPLAIN]}$`); createToken("LOOSEPLAIN", `[v=\\s]*${src[t.MAINVERSIONLOOSE]}${src[t.PRERELEASELOOSE]}?${src[t.BUILD]}?`); createToken("LOOSE", `^${src[t.LOOSEPLAIN]}$`); createToken("GTLT", "((?:<|>)?=?)"); createToken("XRANGEIDENTIFIERLOOSE", `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`); createToken("XRANGEIDENTIFIER", `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`); createToken("XRANGEPLAIN", `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:${src[t.PRERELEASE]})?${src[t.BUILD]}?)?)?`); createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`); createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`); createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`); createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`); createToken("COERCE", `${src[t.COERCEPLAIN]}(?:$|[^\\d])`); createToken("COERCEFULL", src[t.COERCEPLAIN] + `(?:${src[t.PRERELEASE]})?(?:${src[t.BUILD]})?(?:$|[^\\d])`); createToken("COERCERTL", src[t.COERCE], true); createToken("COERCERTLFULL", src[t.COERCEFULL], true); createToken("LONETILDE", "(?:~>?)"); createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true); exports2.tildeTrimReplace = "$1~"; createToken("TILDE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`); createToken("TILDELOOSE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`); createToken("LONECARET", "(?:\\^)"); createToken("CARETTRIM", `(\\s*)${src[t.LONECARET]}\\s+`, true); exports2.caretTrimReplace = "$1^"; createToken("CARET", `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`); createToken("CARETLOOSE", `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`); createToken("COMPARATORLOOSE", `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`); createToken("COMPARATOR", `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`); createToken("COMPARATORTRIM", `(\\s*)${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true); exports2.comparatorTrimReplace = "$1$2$3"; createToken("HYPHENRANGE", `^\\s*(${src[t.XRANGEPLAIN]})\\s+-\\s+(${src[t.XRANGEPLAIN]})\\s*$`); createToken("HYPHENRANGELOOSE", `^\\s*(${src[t.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t.XRANGEPLAINLOOSE]})\\s*$`); createToken("STAR", "(<|>)?=?\\s*\\*"); createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$"); createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$"); } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/parse-options.js var require_parse_options = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/parse-options.js"(exports2, module2) { "use strict"; var looseOption = Object.freeze({ loose: true }); var emptyOpts = Object.freeze({}); var parseOptions = /* @__PURE__ */ __name((options) => { if (!options) { return emptyOpts; } if (typeof options !== "object") { return looseOption; } return options; }, "parseOptions"); module2.exports = parseOptions; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/identifiers.js var require_identifiers = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/identifiers.js"(exports2, module2) { "use strict"; var numeric = /^[0-9]+$/; var compareIdentifiers = /* @__PURE__ */ __name((a, b) => { if (typeof a === "number" && typeof b === "number") { return a === b ? 0 : a < b ? -1 : 1; } const anum = numeric.test(a); const bnum = numeric.test(b); if (anum && bnum) { a = +a; b = +b; } return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1; }, "compareIdentifiers"); var rcompareIdentifiers = /* @__PURE__ */ __name((a, b) => compareIdentifiers(b, a), "rcompareIdentifiers"); module2.exports = { compareIdentifiers, rcompareIdentifiers }; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/semver.js var require_semver = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/semver.js"(exports2, module2) { "use strict"; var debug = require_debug3(); var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants11(); var { safeRe: re, t } = require_re(); var parseOptions = require_parse_options(); var { compareIdentifiers } = require_identifiers(); var isPrereleaseIdentifier = /* @__PURE__ */ __name((prerelease, identifier) => { const identifiers = identifier.split("."); if (identifiers.length > prerelease.length) { return false; } for (let i = 0; i < identifiers.length; i++) { if (compareIdentifiers(prerelease[i], identifiers[i]) !== 0) { return false; } } return true; }, "isPrereleaseIdentifier"); var SemVer = class _SemVer { static { __name(this, "SemVer"); } constructor(version2, options) { options = parseOptions(options); if (version2 instanceof _SemVer) { if (version2.loose === !!options.loose && version2.includePrerelease === !!options.includePrerelease) { return version2; } else { version2 = version2.version; } } else if (typeof version2 !== "string") { throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version2}".`); } if (version2.length > MAX_LENGTH) { throw new TypeError( `version is longer than ${MAX_LENGTH} characters` ); } debug("SemVer", version2, options); this.options = options; this.loose = !!options.loose; this.includePrerelease = !!options.includePrerelease; const m = version2.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]); if (!m) { throw new TypeError(`Invalid Version: ${version2}`); } this.raw = version2; this.major = +m[1]; this.minor = +m[2]; this.patch = +m[3]; if (this.major > MAX_SAFE_INTEGER || this.major < 0) { throw new TypeError("Invalid major version"); } if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { throw new TypeError("Invalid minor version"); } if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { throw new TypeError("Invalid patch version"); } if (!m[4]) { this.prerelease = []; } else { this.prerelease = m[4].split(".").map((id) => { if (/^[0-9]+$/.test(id)) { const num = +id; if (num >= 0 && num < MAX_SAFE_INTEGER) { return num; } } return id; }); } this.build = m[5] ? m[5].split(".") : []; this.format(); } format() { this.version = `${this.major}.${this.minor}.${this.patch}`; if (this.prerelease.length) { this.version += `-${this.prerelease.join(".")}`; } return this.version; } toString() { return this.version; } compare(other) { debug("SemVer.compare", this.version, this.options, other); if (!(other instanceof _SemVer)) { if (typeof other === "string" && other === this.version) { return 0; } other = new _SemVer(other, this.options); } if (other.version === this.version) { return 0; } return this.compareMain(other) || this.comparePre(other); } compareMain(other) { if (!(other instanceof _SemVer)) { other = new _SemVer(other, this.options); } if (this.major < other.major) { return -1; } if (this.major > other.major) { return 1; } if (this.minor < other.minor) { return -1; } if (this.minor > other.minor) { return 1; } if (this.patch < other.patch) { return -1; } if (this.patch > other.patch) { return 1; } return 0; } comparePre(other) { if (!(other instanceof _SemVer)) { other = new _SemVer(other, this.options); } if (this.prerelease.length && !other.prerelease.length) { return -1; } else if (!this.prerelease.length && other.prerelease.length) { return 1; } else if (!this.prerelease.length && !other.prerelease.length) { return 0; } let i = 0; do { const a = this.prerelease[i]; const b = other.prerelease[i]; debug("prerelease compare", i, a, b); if (a === void 0 && b === void 0) { return 0; } else if (b === void 0) { return 1; } else if (a === void 0) { return -1; } else if (a === b) { continue; } else { return compareIdentifiers(a, b); } } while (++i); } compareBuild(other) { if (!(other instanceof _SemVer)) { other = new _SemVer(other, this.options); } let i = 0; do { const a = this.build[i]; const b = other.build[i]; debug("build compare", i, a, b); if (a === void 0 && b === void 0) { return 0; } else if (b === void 0) { return 1; } else if (a === void 0) { return -1; } else if (a === b) { continue; } else { return compareIdentifiers(a, b); } } while (++i); } // preminor will bump the version up to the next minor release, and immediately // down to pre-release. premajor and prepatch work the same way. inc(release, identifier, identifierBase) { if (release.startsWith("pre")) { if (!identifier && identifierBase === false) { throw new Error("invalid increment argument: identifier is empty"); } if (identifier) { const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE]); if (!match || match[1] !== identifier) { throw new Error(`invalid identifier: ${identifier}`); } } } switch (release) { case "premajor": this.prerelease.length = 0; this.patch = 0; this.minor = 0; this.major++; this.inc("pre", identifier, identifierBase); break; case "preminor": this.prerelease.length = 0; this.patch = 0; this.minor++; this.inc("pre", identifier, identifierBase); break; case "prepatch": this.prerelease.length = 0; this.inc("patch", identifier, identifierBase); this.inc("pre", identifier, identifierBase); break; // If the input is a non-prerelease version, this acts the same as // prepatch. case "prerelease": if (this.prerelease.length === 0) { this.inc("patch", identifier, identifierBase); } this.inc("pre", identifier, identifierBase); break; case "release": if (this.prerelease.length === 0) { throw new Error(`version ${this.raw} is not a prerelease`); } this.prerelease.length = 0; break; case "major": if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { this.major++; } this.minor = 0; this.patch = 0; this.prerelease = []; break; case "minor": if (this.patch !== 0 || this.prerelease.length === 0) { this.minor++; } this.patch = 0; this.prerelease = []; break; case "patch": if (this.prerelease.length === 0) { this.patch++; } this.prerelease = []; break; // This probably shouldn't be used publicly. // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction. case "pre": { const base = Number(identifierBase) ? 1 : 0; if (this.prerelease.length === 0) { this.prerelease = [base]; } else { let i = this.prerelease.length; while (--i >= 0) { if (typeof this.prerelease[i] === "number") { this.prerelease[i]++; i = -2; } } if (i === -1) { if (identifier === this.prerelease.join(".") && identifierBase === false) { throw new Error("invalid increment argument: identifier already exists"); } this.prerelease.push(base); } } if (identifier) { let prerelease = [identifier, base]; if (identifierBase === false) { prerelease = [identifier]; } if (isPrereleaseIdentifier(this.prerelease, identifier)) { const prereleaseBase = this.prerelease[identifier.split(".").length]; if (isNaN(prereleaseBase)) { this.prerelease = prerelease; } } else { this.prerelease = prerelease; } } break; } default: throw new Error(`invalid increment argument: ${release}`); } this.raw = this.format(); if (this.build.length) { this.raw += `+${this.build.join(".")}`; } return this; } }; module2.exports = SemVer; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/parse.js var require_parse3 = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/parse.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var parse2 = /* @__PURE__ */ __name((version2, options, throwErrors = false) => { if (version2 instanceof SemVer) { return version2; } try { return new SemVer(version2, options); } catch (er) { if (!throwErrors) { return null; } throw er; } }, "parse"); module2.exports = parse2; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/valid.js var require_valid = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/valid.js"(exports2, module2) { "use strict"; var parse2 = require_parse3(); var valid = /* @__PURE__ */ __name((version2, options) => { const v = parse2(version2, options); return v ? v.version : null; }, "valid"); module2.exports = valid; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/clean.js var require_clean = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/clean.js"(exports2, module2) { "use strict"; var parse2 = require_parse3(); var clean = /* @__PURE__ */ __name((version2, options) => { const s = parse2(version2.trim().replace(/^[=v]+/, ""), options); return s ? s.version : null; }, "clean"); module2.exports = clean; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/inc.js var require_inc = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/inc.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var inc = /* @__PURE__ */ __name((version2, release, options, identifier, identifierBase) => { if (typeof options === "string") { identifierBase = identifier; identifier = options; options = void 0; } try { return new SemVer( version2 instanceof SemVer ? version2.version : version2, options ).inc(release, identifier, identifierBase).version; } catch (er) { return null; } }, "inc"); module2.exports = inc; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/diff.js var require_diff = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/diff.js"(exports2, module2) { "use strict"; var parse2 = require_parse3(); var diff = /* @__PURE__ */ __name((version1, version2) => { const v12 = parse2(version1, null, true); const v2 = parse2(version2, null, true); const comparison = v12.compare(v2); if (comparison === 0) { return null; } const v1Higher = comparison > 0; const highVersion = v1Higher ? v12 : v2; const lowVersion = v1Higher ? v2 : v12; const highHasPre = !!highVersion.prerelease.length; const lowHasPre = !!lowVersion.prerelease.length; if (lowHasPre && !highHasPre) { if (!lowVersion.patch && !lowVersion.minor) { return "major"; } if (lowVersion.compareMain(highVersion) === 0) { if (lowVersion.minor && !lowVersion.patch) { return "minor"; } return "patch"; } } const prefix = highHasPre ? "pre" : ""; if (v12.major !== v2.major) { return prefix + "major"; } if (v12.minor !== v2.minor) { return prefix + "minor"; } if (v12.patch !== v2.patch) { return prefix + "patch"; } return "prerelease"; }, "diff"); module2.exports = diff; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/major.js var require_major = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/major.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var major = /* @__PURE__ */ __name((a, loose) => new SemVer(a, loose).major, "major"); module2.exports = major; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/minor.js var require_minor = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/minor.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var minor = /* @__PURE__ */ __name((a, loose) => new SemVer(a, loose).minor, "minor"); module2.exports = minor; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/patch.js var require_patch = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/patch.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var patch = /* @__PURE__ */ __name((a, loose) => new SemVer(a, loose).patch, "patch"); module2.exports = patch; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/prerelease.js var require_prerelease = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/prerelease.js"(exports2, module2) { "use strict"; var parse2 = require_parse3(); var prerelease = /* @__PURE__ */ __name((version2, options) => { const parsed = parse2(version2, options); return parsed && parsed.prerelease.length ? parsed.prerelease : null; }, "prerelease"); module2.exports = prerelease; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare.js var require_compare = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var compare = /* @__PURE__ */ __name((a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose)), "compare"); module2.exports = compare; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/rcompare.js var require_rcompare = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/rcompare.js"(exports2, module2) { "use strict"; var compare = require_compare(); var rcompare = /* @__PURE__ */ __name((a, b, loose) => compare(b, a, loose), "rcompare"); module2.exports = rcompare; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare-loose.js var require_compare_loose = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare-loose.js"(exports2, module2) { "use strict"; var compare = require_compare(); var compareLoose = /* @__PURE__ */ __name((a, b) => compare(a, b, true), "compareLoose"); module2.exports = compareLoose; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare-build.js var require_compare_build = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare-build.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var compareBuild = /* @__PURE__ */ __name((a, b, loose) => { const versionA = new SemVer(a, loose); const versionB = new SemVer(b, loose); return versionA.compare(versionB) || versionA.compareBuild(versionB); }, "compareBuild"); module2.exports = compareBuild; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/sort.js var require_sort = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/sort.js"(exports2, module2) { "use strict"; var compareBuild = require_compare_build(); var sort = /* @__PURE__ */ __name((list, loose) => list.sort((a, b) => compareBuild(a, b, loose)), "sort"); module2.exports = sort; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/rsort.js var require_rsort = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/rsort.js"(exports2, module2) { "use strict"; var compareBuild = require_compare_build(); var rsort = /* @__PURE__ */ __name((list, loose) => list.sort((a, b) => compareBuild(b, a, loose)), "rsort"); module2.exports = rsort; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gt.js var require_gt = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gt.js"(exports2, module2) { "use strict"; var compare = require_compare(); var gt = /* @__PURE__ */ __name((a, b, loose) => compare(a, b, loose) > 0, "gt"); module2.exports = gt; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lt.js var require_lt = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lt.js"(exports2, module2) { "use strict"; var compare = require_compare(); var lt = /* @__PURE__ */ __name((a, b, loose) => compare(a, b, loose) < 0, "lt"); module2.exports = lt; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/eq.js var require_eq2 = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/eq.js"(exports2, module2) { "use strict"; var compare = require_compare(); var eq = /* @__PURE__ */ __name((a, b, loose) => compare(a, b, loose) === 0, "eq"); module2.exports = eq; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/neq.js var require_neq = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/neq.js"(exports2, module2) { "use strict"; var compare = require_compare(); var neq = /* @__PURE__ */ __name((a, b, loose) => compare(a, b, loose) !== 0, "neq"); module2.exports = neq; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gte.js var require_gte = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gte.js"(exports2, module2) { "use strict"; var compare = require_compare(); var gte = /* @__PURE__ */ __name((a, b, loose) => compare(a, b, loose) >= 0, "gte"); module2.exports = gte; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lte.js var require_lte = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lte.js"(exports2, module2) { "use strict"; var compare = require_compare(); var lte = /* @__PURE__ */ __name((a, b, loose) => compare(a, b, loose) <= 0, "lte"); module2.exports = lte; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/cmp.js var require_cmp = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/cmp.js"(exports2, module2) { "use strict"; var eq = require_eq2(); var neq = require_neq(); var gt = require_gt(); var gte = require_gte(); var lt = require_lt(); var lte = require_lte(); var cmp = /* @__PURE__ */ __name((a, op, b, loose) => { switch (op) { case "===": if (typeof a === "object") { a = a.version; } if (typeof b === "object") { b = b.version; } return a === b; case "!==": if (typeof a === "object") { a = a.version; } if (typeof b === "object") { b = b.version; } return a !== b; case "": case "=": case "==": return eq(a, b, loose); case "!=": return neq(a, b, loose); case ">": return gt(a, b, loose); case ">=": return gte(a, b, loose); case "<": return lt(a, b, loose); case "<=": return lte(a, b, loose); default: throw new TypeError(`Invalid operator: ${op}`); } }, "cmp"); module2.exports = cmp; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/coerce.js var require_coerce = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/coerce.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var parse2 = require_parse3(); var { safeRe: re, t } = require_re(); var coerce = /* @__PURE__ */ __name((version2, options) => { if (version2 instanceof SemVer) { return version2; } if (typeof version2 === "number") { version2 = String(version2); } if (typeof version2 !== "string") { return null; } options = options || {}; let match = null; if (!options.rtl) { match = version2.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]); } else { const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL]; let next; while ((next = coerceRtlRegex.exec(version2)) && (!match || match.index + match[0].length !== version2.length)) { if (!match || next.index + next[0].length !== match.index + match[0].length) { match = next; } coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length; } coerceRtlRegex.lastIndex = -1; } if (match === null) { return null; } const major = match[2]; const minor = match[3] || "0"; const patch = match[4] || "0"; const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : ""; const build = options.includePrerelease && match[6] ? `+${match[6]}` : ""; return parse2(`${major}.${minor}.${patch}${prerelease}${build}`, options); }, "coerce"); module2.exports = coerce; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/truncate.js var require_truncate = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/truncate.js"(exports2, module2) { "use strict"; var parse2 = require_parse3(); var constants = require_constants11(); var SemVer = require_semver(); var truncate = /* @__PURE__ */ __name((version2, truncation, options) => { if (!constants.RELEASE_TYPES.includes(truncation)) { return null; } const clonedVersion = cloneInputVersion(version2, options); return clonedVersion && doTruncation(clonedVersion, truncation); }, "truncate"); var cloneInputVersion = /* @__PURE__ */ __name((version2, options) => { const versionStringToParse = version2 instanceof SemVer ? version2.version : version2; return parse2(versionStringToParse, options); }, "cloneInputVersion"); var doTruncation = /* @__PURE__ */ __name((version2, truncation) => { if (isPrerelease(truncation)) { return version2.version; } version2.prerelease = []; switch (truncation) { case "major": version2.minor = 0; version2.patch = 0; break; case "minor": version2.patch = 0; break; } return version2.format(); }, "doTruncation"); var isPrerelease = /* @__PURE__ */ __name((type) => { return type.startsWith("pre"); }, "isPrerelease"); module2.exports = truncate; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/lrucache.js var require_lrucache = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/lrucache.js"(exports2, module2) { "use strict"; var LRUCache = class { static { __name(this, "LRUCache"); } constructor() { this.max = 1e3; this.map = /* @__PURE__ */ new Map(); } get(key) { const value = this.map.get(key); if (value === void 0) { return void 0; } else { this.map.delete(key); this.map.set(key, value); return value; } } delete(key) { return this.map.delete(key); } set(key, value) { const deleted = this.delete(key); if (!deleted && value !== void 0) { if (this.map.size >= this.max) { const firstKey = this.map.keys().next().value; this.delete(firstKey); } this.map.set(key, value); } return this; } }; module2.exports = LRUCache; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/range.js var require_range3 = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/range.js"(exports2, module2) { "use strict"; var SPACE_CHARACTERS = /\s+/g; var Range = class _Range { static { __name(this, "Range"); } constructor(range, options) { options = parseOptions(options); if (range instanceof _Range) { if (range.loose === !!options.loose && range.includePrerelease === !!options.includePrerelease) { return range; } else { return new _Range(range.raw, options); } } if (range instanceof Comparator) { this.raw = range.value; this.set = [[range]]; this.formatted = void 0; return this; } this.options = options; this.loose = !!options.loose; this.includePrerelease = !!options.includePrerelease; this.raw = range.trim().replace(SPACE_CHARACTERS, " "); this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length); if (!this.set.length) { throw new TypeError(`Invalid SemVer Range: ${this.raw}`); } if (this.set.length > 1) { const first = this.set[0]; this.set = this.set.filter((c) => !isNullSet(c[0])); if (this.set.length === 0) { this.set = [first]; } else if (this.set.length > 1) { for (const c of this.set) { if (c.length === 1 && isAny(c[0])) { this.set = [c]; break; } } } } this.formatted = void 0; } get range() { if (this.formatted === void 0) { this.formatted = ""; for (let i = 0; i < this.set.length; i++) { if (i > 0) { this.formatted += "||"; } const comps = this.set[i]; for (let k = 0; k < comps.length; k++) { if (k > 0) { this.formatted += " "; } this.formatted += comps[k].toString().trim(); } } } return this.formatted; } format() { return this.range; } toString() { return this.range; } parseRange(range) { range = range.replace(BUILDSTRIPRE, ""); const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE); const memoKey = memoOpts + ":" + range; const cached = cache.get(memoKey); if (cached) { return cached; } const loose = this.options.loose; const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]; range = range.replace(hr, hyphenReplace(this.options.includePrerelease)); debug("hyphen replace", range); range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace); debug("comparator trim", range); range = range.replace(re[t.TILDETRIM], tildeTrimReplace); debug("tilde trim", range); range = range.replace(re[t.CARETTRIM], caretTrimReplace); debug("caret trim", range); let rangeList = range.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options)); if (loose) { rangeList = rangeList.filter((comp) => { debug("loose invalid filter", comp, this.options); return !!comp.match(re[t.COMPARATORLOOSE]); }); } debug("range list", rangeList); const rangeMap = /* @__PURE__ */ new Map(); const comparators = rangeList.map((comp) => new Comparator(comp, this.options)); for (const comp of comparators) { if (isNullSet(comp)) { return [comp]; } rangeMap.set(comp.value, comp); } if (rangeMap.size > 1 && rangeMap.has("")) { rangeMap.delete(""); } const result = [...rangeMap.values()]; cache.set(memoKey, result); return result; } intersects(range, options) { if (!(range instanceof _Range)) { throw new TypeError("a Range is required"); } return this.set.some((thisComparators) => { return isSatisfiable(thisComparators, options) && range.set.some((rangeComparators) => { return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => { return rangeComparators.every((rangeComparator) => { return thisComparator.intersects(rangeComparator, options); }); }); }); }); } // if ANY of the sets match ALL of its comparators, then pass test(version2) { if (!version2) { return false; } if (typeof version2 === "string") { try { version2 = new SemVer(version2, this.options); } catch (er) { return false; } } for (let i = 0; i < this.set.length; i++) { if (testSet(this.set[i], version2, this.options)) { return true; } } return false; } }; module2.exports = Range; var LRU = require_lrucache(); var cache = new LRU(); var parseOptions = require_parse_options(); var Comparator = require_comparator(); var debug = require_debug3(); var SemVer = require_semver(); var { safeRe: re, src, t, comparatorTrimReplace, tildeTrimReplace, caretTrimReplace } = require_re(); var { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require_constants11(); var BUILDSTRIPRE = new RegExp(src[t.BUILD], "g"); var isNullSet = /* @__PURE__ */ __name((c) => c.value === "<0.0.0-0", "isNullSet"); var isAny = /* @__PURE__ */ __name((c) => c.value === "", "isAny"); var isSatisfiable = /* @__PURE__ */ __name((comparators, options) => { let result = true; const remainingComparators = comparators.slice(); let testComparator = remainingComparators.pop(); while (result && remainingComparators.length) { result = remainingComparators.every((otherComparator) => { return testComparator.intersects(otherComparator, options); }); testComparator = remainingComparators.pop(); } return result; }, "isSatisfiable"); var parseComparator = /* @__PURE__ */ __name((comp, options) => { comp = comp.replace(re[t.BUILD], ""); debug("comp", comp, options); comp = replaceCarets(comp, options); debug("caret", comp); comp = replaceTildes(comp, options); debug("tildes", comp); comp = replaceXRanges(comp, options); debug("xrange", comp); comp = replaceStars(comp, options); debug("stars", comp); return comp; }, "parseComparator"); var isX = /* @__PURE__ */ __name((id) => !id || id.toLowerCase() === "x" || id === "*", "isX"); var invalidXRangeOrder = /* @__PURE__ */ __name((M, m, p) => isX(M) && !isX(m) || isX(m) && p && !isX(p), "invalidXRangeOrder"); var replaceTildes = /* @__PURE__ */ __name((comp, options) => { return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" "); }, "replaceTildes"); var replaceTilde = /* @__PURE__ */ __name((comp, options) => { const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]; const z = options.includePrerelease ? "-0" : ""; return comp.replace(r, (_2, M, m, p, pr) => { debug("tilde", comp, _2, M, m, p, pr); let ret2; if (isX(M)) { ret2 = ""; } else if (isX(m)) { ret2 = `>=${M}.0.0${z} <${+M + 1}.0.0-0`; } else if (isX(p)) { ret2 = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`; } else if (pr) { debug("replaceTilde pr", pr); ret2 = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`; } else { ret2 = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`; } debug("tilde return", ret2); return ret2; }); }, "replaceTilde"); var replaceCarets = /* @__PURE__ */ __name((comp, options) => { return comp.trim().split(/\s+/).map((c) => replaceCaret(c, options)).join(" "); }, "replaceCarets"); var replaceCaret = /* @__PURE__ */ __name((comp, options) => { debug("caret", comp, options); const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]; const z = options.includePrerelease ? "-0" : ""; return comp.replace(r, (_2, M, m, p, pr) => { debug("caret", comp, _2, M, m, p, pr); let ret2; if (isX(M)) { ret2 = ""; } else if (isX(m)) { ret2 = `>=${M}.0.0${z} <${+M + 1}.0.0-0`; } else if (isX(p)) { if (M === "0") { ret2 = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`; } else { ret2 = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`; } } else if (pr) { debug("replaceCaret pr", pr); if (M === "0") { if (m === "0") { ret2 = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0`; } else { ret2 = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`; } } else { ret2 = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`; } } else { debug("no pr"); if (M === "0") { if (m === "0") { ret2 = `>=${M}.${m}.${p} <${M}.${m}.${+p + 1}-0`; } else { ret2 = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`; } } else { ret2 = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`; } } debug("caret return", ret2); return ret2; }); }, "replaceCaret"); var replaceXRanges = /* @__PURE__ */ __name((comp, options) => { debug("replaceXRanges", comp, options); return comp.split(/\s+/).map((c) => replaceXRange(c, options)).join(" "); }, "replaceXRanges"); var replaceXRange = /* @__PURE__ */ __name((comp, options) => { comp = comp.trim(); const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]; return comp.replace(r, (ret2, gtlt, M, m, p, pr) => { debug("xRange", comp, ret2, gtlt, M, m, p, pr); if (invalidXRangeOrder(M, m, p)) { return comp; } const xM = isX(M); const xm = xM || isX(m); const xp = xm || isX(p); const anyX = xp; if (gtlt === "=" && anyX) { gtlt = ""; } pr = options.includePrerelease ? "-0" : ""; if (xM) { if (gtlt === ">" || gtlt === "<") { ret2 = "<0.0.0-0"; } else { ret2 = "*"; } } else if (gtlt && anyX) { if (xm) { m = 0; } p = 0; if (gtlt === ">") { gtlt = ">="; if (xm) { M = +M + 1; m = 0; p = 0; } else { m = +m + 1; p = 0; } } else if (gtlt === "<=") { gtlt = "<"; if (xm) { M = +M + 1; } else { m = +m + 1; } } if (gtlt === "<") { pr = "-0"; } ret2 = `${gtlt + M}.${m}.${p}${pr}`; } else if (xm) { ret2 = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`; } else if (xp) { ret2 = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`; } debug("xRange return", ret2); return ret2; }); }, "replaceXRange"); var replaceStars = /* @__PURE__ */ __name((comp, options) => { debug("replaceStars", comp, options); return comp.trim().replace(re[t.STAR], ""); }, "replaceStars"); var replaceGTE0 = /* @__PURE__ */ __name((comp, options) => { debug("replaceGTE0", comp, options); return comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], ""); }, "replaceGTE0"); var hyphenReplace = /* @__PURE__ */ __name((incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr) => { if (isX(fM)) { from = ""; } else if (isX(fm)) { from = `>=${fM}.0.0${incPr ? "-0" : ""}`; } else if (isX(fp)) { from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`; } else if (fpr) { from = `>=${from}`; } else { from = `>=${from}${incPr ? "-0" : ""}`; } if (isX(tM)) { to = ""; } else if (isX(tm)) { to = `<${+tM + 1}.0.0-0`; } else if (isX(tp)) { to = `<${tM}.${+tm + 1}.0-0`; } else if (tpr) { to = `<=${tM}.${tm}.${tp}-${tpr}`; } else if (incPr) { to = `<${tM}.${tm}.${+tp + 1}-0`; } else { to = `<=${to}`; } return `${from} ${to}`.trim(); }, "hyphenReplace"); var testSet = /* @__PURE__ */ __name((set, version2, options) => { for (let i = 0; i < set.length; i++) { if (!set[i].test(version2)) { return false; } } if (version2.prerelease.length && !options.includePrerelease) { for (let i = 0; i < set.length; i++) { debug(set[i].semver); if (set[i].semver === Comparator.ANY) { continue; } if (set[i].semver.prerelease.length > 0) { const allowed = set[i].semver; if (allowed.major === version2.major && allowed.minor === version2.minor && allowed.patch === version2.patch) { return true; } } } return false; } return true; }, "testSet"); } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/comparator.js var require_comparator = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/comparator.js"(exports2, module2) { "use strict"; var ANY = Symbol("SemVer ANY"); var Comparator = class _Comparator { static { __name(this, "Comparator"); } static get ANY() { return ANY; } constructor(comp, options) { options = parseOptions(options); if (comp instanceof _Comparator) { if (comp.loose === !!options.loose) { return comp; } else { comp = comp.value; } } comp = comp.trim().split(/\s+/).join(" "); debug("comparator", comp, options); this.options = options; this.loose = !!options.loose; this.parse(comp); if (this.semver === ANY) { this.value = ""; } else { this.value = this.operator + this.semver.version; } debug("comp", this); } parse(comp) { const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]; const m = comp.match(r); if (!m) { throw new TypeError(`Invalid comparator: ${comp}`); } this.operator = m[1] !== void 0 ? m[1] : ""; if (this.operator === "=") { this.operator = ""; } if (!m[2]) { this.semver = ANY; } else { this.semver = new SemVer(m[2], this.options.loose); } } toString() { return this.value; } test(version2) { debug("Comparator.test", version2, this.options.loose); if (this.semver === ANY || version2 === ANY) { return true; } if (typeof version2 === "string") { try { version2 = new SemVer(version2, this.options); } catch (er) { return false; } } return cmp(version2, this.operator, this.semver, this.options); } intersects(comp, options) { if (!(comp instanceof _Comparator)) { throw new TypeError("a Comparator is required"); } if (this.operator === "") { if (this.value === "") { return true; } return new Range(comp.value, options).test(this.value); } else if (comp.operator === "") { if (comp.value === "") { return true; } return new Range(this.value, options).test(comp.semver); } options = parseOptions(options); if (options.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0")) { return false; } if (!options.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0"))) { return false; } if (this.operator.startsWith(">") && comp.operator.startsWith(">")) { return true; } if (this.operator.startsWith("<") && comp.operator.startsWith("<")) { return true; } if (this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=")) { return true; } if (cmp(this.semver, "<", comp.semver, options) && this.operator.startsWith(">") && comp.operator.startsWith("<")) { return true; } if (cmp(this.semver, ">", comp.semver, options) && this.operator.startsWith("<") && comp.operator.startsWith(">")) { return true; } return false; } }; module2.exports = Comparator; var parseOptions = require_parse_options(); var { safeRe: re, t } = require_re(); var cmp = require_cmp(); var debug = require_debug3(); var SemVer = require_semver(); var Range = require_range3(); } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/satisfies.js var require_satisfies = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/satisfies.js"(exports2, module2) { "use strict"; var Range = require_range3(); var satisfies = /* @__PURE__ */ __name((version2, range, options) => { try { range = new Range(range, options); } catch (er) { return false; } return range.test(version2); }, "satisfies"); module2.exports = satisfies; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/to-comparators.js var require_to_comparators = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/to-comparators.js"(exports2, module2) { "use strict"; var Range = require_range3(); var toComparators = /* @__PURE__ */ __name((range, options) => new Range(range, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" ")), "toComparators"); module2.exports = toComparators; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/max-satisfying.js var require_max_satisfying = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var Range = require_range3(); var maxSatisfying = /* @__PURE__ */ __name((versions, range, options) => { let max = null; let maxSV = null; let rangeObj = null; try { rangeObj = new Range(range, options); } catch (er) { return null; } versions.forEach((v) => { if (rangeObj.test(v)) { if (!max || maxSV.compare(v) === -1) { max = v; maxSV = new SemVer(max, options); } } }); return max; }, "maxSatisfying"); module2.exports = maxSatisfying; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/min-satisfying.js var require_min_satisfying = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var Range = require_range3(); var minSatisfying = /* @__PURE__ */ __name((versions, range, options) => { let min = null; let minSV = null; let rangeObj = null; try { rangeObj = new Range(range, options); } catch (er) { return null; } versions.forEach((v) => { if (rangeObj.test(v)) { if (!min || minSV.compare(v) === 1) { min = v; minSV = new SemVer(min, options); } } }); return min; }, "minSatisfying"); module2.exports = minSatisfying; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/min-version.js var require_min_version = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/min-version.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var Range = require_range3(); var gt = require_gt(); var minVersion = /* @__PURE__ */ __name((range, loose) => { range = new Range(range, loose); let minver = new SemVer("0.0.0"); if (range.test(minver)) { return minver; } minver = new SemVer("0.0.0-0"); if (range.test(minver)) { return minver; } minver = null; for (let i = 0; i < range.set.length; ++i) { const comparators = range.set[i]; let setMin = null; comparators.forEach((comparator) => { const compver = new SemVer(comparator.semver.version); switch (comparator.operator) { case ">": if (compver.prerelease.length === 0) { compver.patch++; } else { compver.prerelease.push(0); } compver.raw = compver.format(); /* fallthrough */ case "": case ">=": if (!setMin || gt(compver, setMin)) { setMin = compver; } break; case "<": case "<=": break; /* istanbul ignore next */ default: throw new Error(`Unexpected operation: ${comparator.operator}`); } }); if (setMin && (!minver || gt(minver, setMin))) { minver = setMin; } } if (minver && range.test(minver)) { return minver; } return null; }, "minVersion"); module2.exports = minVersion; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/valid.js var require_valid2 = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/valid.js"(exports2, module2) { "use strict"; var Range = require_range3(); var validRange = /* @__PURE__ */ __name((range, options) => { try { return new Range(range, options).range || "*"; } catch (er) { return null; } }, "validRange"); module2.exports = validRange; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/outside.js var require_outside = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/outside.js"(exports2, module2) { "use strict"; var SemVer = require_semver(); var Comparator = require_comparator(); var { ANY } = Comparator; var Range = require_range3(); var satisfies = require_satisfies(); var gt = require_gt(); var lt = require_lt(); var lte = require_lte(); var gte = require_gte(); var outside = /* @__PURE__ */ __name((version2, range, hilo, options) => { version2 = new SemVer(version2, options); range = new Range(range, options); let gtfn, ltefn, ltfn, comp, ecomp; switch (hilo) { case ">": gtfn = gt; ltefn = lte; ltfn = lt; comp = ">"; ecomp = ">="; break; case "<": gtfn = lt; ltefn = gte; ltfn = gt; comp = "<"; ecomp = "<="; break; default: throw new TypeError('Must provide a hilo val of "<" or ">"'); } if (satisfies(version2, range, options)) { return false; } for (let i = 0; i < range.set.length; ++i) { const comparators = range.set[i]; let high = null; let low = null; comparators.forEach((comparator) => { if (comparator.semver === ANY) { comparator = new Comparator(">=0.0.0"); } high = high || comparator; low = low || comparator; if (gtfn(comparator.semver, high.semver, options)) { high = comparator; } else if (ltfn(comparator.semver, low.semver, options)) { low = comparator; } }); if (high.operator === comp || high.operator === ecomp) { return false; } if ((!low.operator || low.operator === comp) && ltefn(version2, low.semver)) { return false; } else if (low.operator === ecomp && ltfn(version2, low.semver)) { return false; } } return true; }, "outside"); module2.exports = outside; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/gtr.js var require_gtr = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/gtr.js"(exports2, module2) { "use strict"; var outside = require_outside(); var gtr = /* @__PURE__ */ __name((version2, range, options) => outside(version2, range, ">", options), "gtr"); module2.exports = gtr; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/ltr.js var require_ltr = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/ltr.js"(exports2, module2) { "use strict"; var outside = require_outside(); var ltr = /* @__PURE__ */ __name((version2, range, options) => outside(version2, range, "<", options), "ltr"); module2.exports = ltr; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/intersects.js var require_intersects = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/intersects.js"(exports2, module2) { "use strict"; var Range = require_range3(); var intersects = /* @__PURE__ */ __name((r1, r2, options) => { r1 = new Range(r1, options); r2 = new Range(r2, options); return r1.intersects(r2, options); }, "intersects"); module2.exports = intersects; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/simplify.js var require_simplify = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/simplify.js"(exports2, module2) { "use strict"; var satisfies = require_satisfies(); var compare = require_compare(); module2.exports = (versions, range, options) => { const set = []; let first = null; let prev = null; const v = versions.sort((a, b) => compare(a, b, options)); for (const version2 of v) { const included = satisfies(version2, range, options); if (included) { prev = version2; if (!first) { first = version2; } } else { if (prev) { set.push([first, prev]); } prev = null; first = null; } } if (first) { set.push([first, null]); } const ranges = []; for (const [min, max] of set) { if (min === max) { ranges.push(min); } else if (!max && min === v[0]) { ranges.push("*"); } else if (!max) { ranges.push(`>=${min}`); } else if (min === v[0]) { ranges.push(`<=${max}`); } else { ranges.push(`${min} - ${max}`); } } const simplified = ranges.join(" || "); const original = typeof range.raw === "string" ? range.raw : String(range); return simplified.length < original.length ? simplified : range; }; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/subset.js var require_subset = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/subset.js"(exports2, module2) { "use strict"; var Range = require_range3(); var Comparator = require_comparator(); var { ANY } = Comparator; var satisfies = require_satisfies(); var compare = require_compare(); var subset = /* @__PURE__ */ __name((sub, dom, options = {}) => { if (sub === dom) { return true; } sub = new Range(sub, options); dom = new Range(dom, options); let sawNonNull = false; OUTER: for (const simpleSub of sub.set) { for (const simpleDom of dom.set) { const isSub = simpleSubset(simpleSub, simpleDom, options); sawNonNull = sawNonNull || isSub !== null; if (isSub) { continue OUTER; } } if (sawNonNull) { return false; } } return true; }, "subset"); var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")]; var minimumVersion = [new Comparator(">=0.0.0")]; var simpleSubset = /* @__PURE__ */ __name((sub, dom, options) => { if (sub === dom) { return true; } if (sub.length === 1 && sub[0].semver === ANY) { if (dom.length === 1 && dom[0].semver === ANY) { return true; } else if (options.includePrerelease) { sub = minimumVersionWithPreRelease; } else { sub = minimumVersion; } } if (dom.length === 1 && dom[0].semver === ANY) { if (options.includePrerelease) { return true; } else { dom = minimumVersion; } } const eqSet = /* @__PURE__ */ new Set(); let gt, lt; for (const c of sub) { if (c.operator === ">" || c.operator === ">=") { gt = higherGT(gt, c, options); } else if (c.operator === "<" || c.operator === "<=") { lt = lowerLT(lt, c, options); } else { eqSet.add(c.semver); } } if (eqSet.size > 1) { return null; } let gtltComp; if (gt && lt) { gtltComp = compare(gt.semver, lt.semver, options); if (gtltComp > 0) { return null; } else if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<=")) { return null; } } for (const eq of eqSet) { if (gt && !satisfies(eq, String(gt), options)) { return null; } if (lt && !satisfies(eq, String(lt), options)) { return null; } for (const c of dom) { if (!satisfies(eq, String(c), options)) { return false; } } return true; } let higher, lower; let hasDomLT, hasDomGT; let needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : false; let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false; if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) { needDomLTPre = false; } for (const c of dom) { hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">="; hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<="; if (gt) { if (needDomGTPre) { if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch) { needDomGTPre = false; } } if (c.operator === ">" || c.operator === ">=") { higher = higherGT(gt, c, options); if (higher === c && higher !== gt) { return false; } } else if (gt.operator === ">=" && !c.test(gt.semver)) { return false; } } if (lt) { if (needDomLTPre) { if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomLTPre.major && c.semver.minor === needDomLTPre.minor && c.semver.patch === needDomLTPre.patch) { needDomLTPre = false; } } if (c.operator === "<" || c.operator === "<=") { lower = lowerLT(lt, c, options); if (lower === c && lower !== lt) { return false; } } else if (lt.operator === "<=" && !c.test(lt.semver)) { return false; } } if (!c.operator && (lt || gt) && gtltComp !== 0) { return false; } } if (gt && hasDomLT && !lt && gtltComp !== 0) { return false; } if (lt && hasDomGT && !gt && gtltComp !== 0) { return false; } if (needDomGTPre || needDomLTPre) { return false; } return true; }, "simpleSubset"); var higherGT = /* @__PURE__ */ __name((a, b, options) => { if (!a) { return b; } const comp = compare(a.semver, b.semver, options); return comp > 0 ? a : comp < 0 ? b : b.operator === ">" && a.operator === ">=" ? b : a; }, "higherGT"); var lowerLT = /* @__PURE__ */ __name((a, b, options) => { if (!a) { return b; } const comp = compare(a.semver, b.semver, options); return comp < 0 ? a : comp > 0 ? b : b.operator === "<" && a.operator === "<=" ? b : a; }, "lowerLT"); module2.exports = subset; } }); // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/index.js var require_semver2 = __commonJS({ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/index.js"(exports2, module2) { "use strict"; var internalRe = require_re(); var constants = require_constants11(); var SemVer = require_semver(); var identifiers = require_identifiers(); var parse2 = require_parse3(); var valid = require_valid(); var clean = require_clean(); var inc = require_inc(); var diff = require_diff(); var major = require_major(); var minor = require_minor(); var patch = require_patch(); var prerelease = require_prerelease(); var compare = require_compare(); var rcompare = require_rcompare(); var compareLoose = require_compare_loose(); var compareBuild = require_compare_build(); var sort = require_sort(); var rsort = require_rsort(); var gt = require_gt(); var lt = require_lt(); var eq = require_eq2(); var neq = require_neq(); var gte = require_gte(); var lte = require_lte(); var cmp = require_cmp(); var coerce = require_coerce(); var truncate = require_truncate(); var Comparator = require_comparator(); var Range = require_range3(); var satisfies = require_satisfies(); var toComparators = require_to_comparators(); var maxSatisfying = require_max_satisfying(); var minSatisfying = require_min_satisfying(); var minVersion = require_min_version(); var validRange = require_valid2(); var outside = require_outside(); var gtr = require_gtr(); var ltr = require_ltr(); var intersects = require_intersects(); var simplifyRange = require_simplify(); var subset = require_subset(); module2.exports = { parse: parse2, valid, clean, inc, diff, major, minor, patch, prerelease, compare, rcompare, compareLoose, compareBuild, sort, rsort, gt, lt, eq, neq, gte, lte, cmp, coerce, truncate, Comparator, Range, satisfies, toComparators, maxSatisfying, minSatisfying, minVersion, validRange, outside, gtr, ltr, intersects, simplifyRange, subset, SemVer, re: internalRe.re, src: internalRe.src, tokens: internalRe.t, SEMVER_SPEC_VERSION: constants.SEMVER_SPEC_VERSION, RELEASE_TYPES: constants.RELEASE_TYPES, compareIdentifiers: identifiers.compareIdentifiers, rcompareIdentifiers: identifiers.rcompareIdentifiers }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/utils/index.js var require_utils16 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/utils/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QUEUE_EVENT_SUFFIX = exports2.toString = exports2.errorToJSON = exports2.parseObjectValues = exports2.isRedisVersionLowerThan = exports2.childSend = exports2.asyncSend = exports2.DELAY_TIME_1 = exports2.DELAY_TIME_5 = exports2.clientCommandMessageReg = exports2.optsEncodeMap = exports2.optsDecodeMap = exports2.errorObject = void 0; exports2.tryCatch = tryCatch2; exports2.lengthInUtf8Bytes = lengthInUtf8Bytes; exports2.isEmpty = isEmpty; exports2.array2obj = array2obj; exports2.objectToFlatArray = objectToFlatArray; exports2.delay = delay; exports2.forwardConnectionError = forwardConnectionError; exports2.increaseMaxListeners = increaseMaxListeners; exports2.invertObject = invertObject; exports2.isRedisInstance = isRedisInstance; exports2.isRedisCluster = isRedisCluster; exports2.decreaseMaxListeners = decreaseMaxListeners; exports2.removeAllQueueData = removeAllQueueData; exports2.getParentKey = getParentKey; exports2.isNotConnectionError = isNotConnectionError; exports2.removeUndefinedFields = removeUndefinedFields; exports2.trace = trace; exports2.randomUUID = randomUUID; var crypto_1 = require("crypto"); var utils_1 = require_utils15(); var connection_closed_error_1 = require_connection_closed_error(); var semver = require_semver2(); var enums_1 = require_enums3(); exports2.errorObject = { value: null }; function tryCatch2(fn, ctx, args) { try { return fn.apply(ctx, args); } catch (e) { exports2.errorObject.value = e; return exports2.errorObject; } } __name(tryCatch2, "tryCatch"); function lengthInUtf8Bytes(str) { return Buffer.byteLength(str, "utf8"); } __name(lengthInUtf8Bytes, "lengthInUtf8Bytes"); function isEmpty(obj2) { for (const key in obj2) { if (Object.prototype.hasOwnProperty.call(obj2, key)) { return false; } } return true; } __name(isEmpty, "isEmpty"); function array2obj(arr) { const obj2 = {}; for (let i = 0; i < arr.length; i += 2) { obj2[arr[i]] = arr[i + 1]; } return obj2; } __name(array2obj, "array2obj"); function objectToFlatArray(obj2) { const arr = []; for (const key in obj2) { if (Object.prototype.hasOwnProperty.call(obj2, key) && obj2[key] !== void 0) { arr[arr.length] = key; arr[arr.length] = obj2[key]; } } return arr; } __name(objectToFlatArray, "objectToFlatArray"); function delay(ms, abortController) { return new Promise((resolve) => { let timeout; const callback = /* @__PURE__ */ __name(() => { abortController === null || abortController === void 0 ? void 0 : abortController.signal.removeEventListener("abort", callback); clearTimeout(timeout); resolve(); }, "callback"); timeout = setTimeout(callback, ms); abortController === null || abortController === void 0 ? void 0 : abortController.signal.addEventListener("abort", callback); }); } __name(delay, "delay"); function forwardConnectionError(emitter, connection) { connection.on("error", (error) => { if (emitter.listenerCount("error") > 0) { emitter.emit("error", error); } }); } __name(forwardConnectionError, "forwardConnectionError"); function increaseMaxListeners(emitter, count) { const maxListeners = emitter.getMaxListeners(); emitter.setMaxListeners(maxListeners + count); } __name(increaseMaxListeners, "increaseMaxListeners"); function invertObject(obj2) { return Object.entries(obj2).reduce((result, [key, value]) => { result[value] = key; return result; }, {}); } __name(invertObject, "invertObject"); exports2.optsDecodeMap = { de: "deduplication", fpof: "failParentOnFailure", cpof: "continueParentOnFailure", idof: "ignoreDependencyOnFailure", kl: "keepLogs", rdof: "removeDependencyOnFailure" }; exports2.optsEncodeMap = Object.assign(Object.assign({}, invertObject(exports2.optsDecodeMap)), { /*/ Legacy for backwards compatibility */ debounce: "de" }); function isRedisInstance(obj2) { if (!obj2) { return false; } const redisApi = ["connect", "disconnect", "duplicate"]; return redisApi.every((name) => typeof obj2[name] === "function"); } __name(isRedisInstance, "isRedisInstance"); function isRedisCluster(obj2) { return isRedisInstance(obj2) && !!obj2.isCluster; } __name(isRedisCluster, "isRedisCluster"); function decreaseMaxListeners(emitter, count) { increaseMaxListeners(emitter, -count); } __name(decreaseMaxListeners, "decreaseMaxListeners"); async function removeAllQueueData(client, queueName, prefix = process.env.BULLMQ_TEST_PREFIX || "bull") { if (client.isCluster) { return false; } const pattern = `${prefix}:${queueName}:*`; const pendingOperations = []; await new Promise((resolve, reject) => { const stream = client.scanStream({ match: pattern }); stream.on("data", (keys) => { if (keys.length) { const pipeline = client.pipeline(); keys.forEach((key) => { pipeline.del(key); }); const execPromise = pipeline.exec().catch((error) => { reject(error); throw error; }); pendingOperations.push(execPromise); } }); stream.on("end", () => resolve()); stream.on("error", (error) => reject(error)); }); await Promise.all(pendingOperations); try { await client.quit(); } catch (error) { if (isNotConnectionError(error)) { throw error; } } } __name(removeAllQueueData, "removeAllQueueData"); function getParentKey(opts) { if (opts) { return `${opts.queue}:${opts.id}`; } } __name(getParentKey, "getParentKey"); exports2.clientCommandMessageReg = /ERR unknown command ['`]\s*client\s*['`]/; exports2.DELAY_TIME_5 = 5e3; exports2.DELAY_TIME_1 = 100; function isNotConnectionError(error) { if (error instanceof connection_closed_error_1.ConnectionClosedError) { return false; } const { code, message: errorMessage } = error; return errorMessage !== utils_1.CONNECTION_CLOSED_ERROR_MSG && !errorMessage.includes("ECONNREFUSED") && code !== "ECONNREFUSED"; } __name(isNotConnectionError, "isNotConnectionError"); var asyncSend = /* @__PURE__ */ __name((proc, msg) => { return new Promise((resolve, reject) => { if (typeof proc.send === "function") { proc.send(msg, (err) => { if (err) { reject(err); } else { resolve(); } }); } else if (typeof proc.postMessage === "function") { resolve(proc.postMessage(msg)); } else { resolve(); } }); }, "asyncSend"); exports2.asyncSend = asyncSend; var childSend = /* @__PURE__ */ __name((proc, msg) => (0, exports2.asyncSend)(proc, msg), "childSend"); exports2.childSend = childSend; var isRedisVersionLowerThan = /* @__PURE__ */ __name((currentVersion, minimumVersion, currentDatabaseType, desiredDatabaseType = "redis") => { if (currentDatabaseType === desiredDatabaseType) { const version2 = semver.valid(semver.coerce(currentVersion)); return semver.lt(version2, minimumVersion); } return false; }, "isRedisVersionLowerThan"); exports2.isRedisVersionLowerThan = isRedisVersionLowerThan; var parseObjectValues = /* @__PURE__ */ __name((obj2) => { const accumulator = {}; for (const value of Object.entries(obj2)) { accumulator[value[0]] = JSON.parse(value[1]); } return accumulator; }, "parseObjectValues"); exports2.parseObjectValues = parseObjectValues; var getCircularReplacer = /* @__PURE__ */ __name((rootReference) => { const references = /* @__PURE__ */ new WeakSet(); references.add(rootReference); return (_2, value) => { if (typeof value === "object" && value !== null) { if (references.has(value)) { return "[Circular]"; } references.add(value); } return value; }; }, "getCircularReplacer"); var errorToJSON = /* @__PURE__ */ __name((value) => { const error = {}; Object.getOwnPropertyNames(value).forEach(function(propName) { error[propName] = value[propName]; }); return JSON.parse(JSON.stringify(error, getCircularReplacer(value))); }, "errorToJSON"); exports2.errorToJSON = errorToJSON; var INFINITY = 1 / 0; var toString2 = /* @__PURE__ */ __name((value) => { if (value == null) { return ""; } if (typeof value === "string") { return value; } if (Array.isArray(value)) { return `${value.map((other) => other == null ? other : (0, exports2.toString)(other))}`; } if (typeof value == "symbol" || Object.prototype.toString.call(value) == "[object Symbol]") { return value.toString(); } const result = `${value}`; return result === "0" && 1 / value === -INFINITY ? "-0" : result; }, "toString"); exports2.toString = toString2; exports2.QUEUE_EVENT_SUFFIX = ":qe"; function removeUndefinedFields(obj2) { const newObj = {}; for (const key in obj2) { if (obj2[key] !== void 0) { newObj[key] = obj2[key]; } } return newObj; } __name(removeUndefinedFields, "removeUndefinedFields"); async function trace(telemetry, spanKind, queueName, operation, destination, callback, srcPropagationMetadata) { if (!telemetry) { return callback(); } else { const { tracer, contextManager } = telemetry; const currentContext = contextManager.active(); let parentContext; if (srcPropagationMetadata) { parentContext = contextManager.fromMetadata(currentContext, srcPropagationMetadata); } const spanName = destination ? `${operation} ${destination}` : operation; const span = tracer.startSpan(spanName, { kind: spanKind }, parentContext); try { span.setAttributes({ [enums_1.TelemetryAttributes.QueueName]: queueName, [enums_1.TelemetryAttributes.QueueOperation]: operation }); let messageContext; let dstPropagationMetadata; if (spanKind === enums_1.SpanKind.CONSUMER && parentContext) { messageContext = span.setSpanOnContext(parentContext); } else { messageContext = span.setSpanOnContext(currentContext); } if (callback.length == 2) { dstPropagationMetadata = contextManager.getMetadata(messageContext); } return await contextManager.with(messageContext, () => callback(span, dstPropagationMetadata)); } catch (err) { span.recordException(err); throw err; } finally { span.end(); } } } __name(trace, "trace"); function randomUUID() { if (typeof crypto_1.randomUUID === "function") { return (0, crypto_1.randomUUID)(); } const bytes = (0, crypto_1.randomBytes)(16); bytes[6] = bytes[6] & 15 | 64; bytes[8] = bytes[8] & 63 | 128; return [ bytes.toString("hex", 0, 4), bytes.toString("hex", 4, 6), bytes.toString("hex", 6, 8), bytes.toString("hex", 8, 10), bytes.toString("hex", 10, 16) ].join("-"); } __name(randomUUID, "randomUUID"); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/child-processor.js var require_child_processor = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/child-processor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ChildProcessor = void 0; var abort_controller_1 = require_abort_controller(); var enums_1 = require_enums3(); var utils_1 = require_utils16(); var ChildStatus; (function(ChildStatus2) { ChildStatus2[ChildStatus2["Idle"] = 0] = "Idle"; ChildStatus2[ChildStatus2["Started"] = 1] = "Started"; ChildStatus2[ChildStatus2["Terminating"] = 2] = "Terminating"; ChildStatus2[ChildStatus2["Errored"] = 3] = "Errored"; })(ChildStatus || (ChildStatus = {})); var RESPONSE_TIMEOUT = process.env.NODE_ENV === "test" ? 500 : 5e3; var ChildProcessor = class { static { __name(this, "ChildProcessor"); } constructor(send, receiver) { this.send = send; this.receiver = receiver; } async init(processorFile) { var _a; let processor; try { const { default: processorFn } = await import(processorFile); processor = processorFn; if (processor.default) { processor = processor.default; } if (typeof processor !== "function") { throw new Error("No function is exported in processor file"); } } catch (err) { this.status = ChildStatus.Errored; try { await this.send({ cmd: enums_1.ParentCommand.InitFailed, err: (0, utils_1.errorToJSON)(err) }); } finally { process.exit((_a = process.exitCode) !== null && _a !== void 0 ? _a : 1); } } const origProcessor = processor; processor = /* @__PURE__ */ __name(function(job, token, signal) { try { return Promise.resolve(origProcessor(job, token, signal)); } catch (err) { return Promise.reject(err); } }, "processor"); this.processor = processor; this.status = ChildStatus.Idle; await this.send({ cmd: enums_1.ParentCommand.InitCompleted }); } async start(jobJson, token) { if (this.status !== ChildStatus.Idle) { return this.send({ cmd: enums_1.ParentCommand.Error, err: (0, utils_1.errorToJSON)(new Error("cannot start a not idling child process")) }); } this.status = ChildStatus.Started; this.abortController = new abort_controller_1.AbortController(); this.currentJobPromise = (async () => { try { const job = this.wrapJob(jobJson, this.send); const result = await this.processor(job, token, this.abortController.signal); await this.send({ cmd: enums_1.ParentCommand.Completed, value: typeof result === "undefined" ? null : result }); } catch (err) { await this.send({ cmd: enums_1.ParentCommand.Failed, value: (0, utils_1.errorToJSON)(!err.message ? new Error(err) : err) }); } finally { this.status = ChildStatus.Idle; this.currentJobPromise = void 0; this.abortController = void 0; } })(); } /** * Cancels the currently running job by aborting its signal. * @param reason - Optional reason for the cancellation */ cancel(reason) { if (this.abortController) { this.abortController.abort(reason); } } async stop() { } async waitForCurrentJobAndExit() { this.status = ChildStatus.Terminating; try { await this.currentJobPromise; } finally { process.exit(process.exitCode || 0); } } /** * Enhance the given job argument with some functions * that can be called from the sandboxed job processor. * * Note, the `job` argument is a JSON deserialized message * from the main node process to this forked child process, * the functions on the original job object are not in tact. * The wrapped job adds back some of those original functions. */ wrapJob(job, send) { const wrappedJob = Object.assign(Object.assign({}, job), { queueQualifiedName: job.queueQualifiedName, data: JSON.parse(job.data || "{}"), opts: job.opts, returnValue: JSON.parse(job.returnvalue || "{}"), /* * Proxy `updateProgress` function, should works as `progress` function. */ async updateProgress(progress) { this.progress = progress; await send({ cmd: enums_1.ParentCommand.Progress, value: progress }); }, /* * Proxy job `log` function. */ log: /* @__PURE__ */ __name(async (row) => { await send({ cmd: enums_1.ParentCommand.Log, value: row }); }, "log"), /* * Proxy `moveToDelayed` function. */ moveToDelayed: /* @__PURE__ */ __name(async (timestamp, token) => { await send({ cmd: enums_1.ParentCommand.MoveToDelayed, value: { timestamp, token } }); }, "moveToDelayed"), /* * Proxy `moveToWait` function. */ moveToWait: /* @__PURE__ */ __name(async (token) => { await send({ cmd: enums_1.ParentCommand.MoveToWait, value: { token } }); }, "moveToWait"), /* * Proxy `moveToWaitingChildren` function. */ moveToWaitingChildren: /* @__PURE__ */ __name(async (token, opts) => { const requestId = Math.random().toString(36).substring(2, 15); await send({ requestId, cmd: enums_1.ParentCommand.MoveToWaitingChildren, value: { token, opts } }); return waitResponse(requestId, this.receiver, RESPONSE_TIMEOUT, "moveToWaitingChildren"); }, "moveToWaitingChildren"), /* * Proxy `updateData` function. */ updateData: /* @__PURE__ */ __name(async (data) => { await send({ cmd: enums_1.ParentCommand.Update, value: data }); wrappedJob.data = data; }, "updateData"), /** * Proxy `getChildrenValues` function. */ getChildrenValues: /* @__PURE__ */ __name(async () => { const requestId = Math.random().toString(36).substring(2, 15); await send({ requestId, cmd: enums_1.ParentCommand.GetChildrenValues }); return waitResponse(requestId, this.receiver, RESPONSE_TIMEOUT, "getChildrenValues"); }, "getChildrenValues"), /** * Proxy `getIgnoredChildrenFailures` function. * * This method sends a request to retrieve the failures of ignored children * and waits for a response from the parent process. * * @returns - A promise that resolves with the ignored children failures. * The exact structure of the returned data depends on the parent process implementation. */ getIgnoredChildrenFailures: /* @__PURE__ */ __name(async () => { const requestId = Math.random().toString(36).substring(2, 15); await send({ requestId, cmd: enums_1.ParentCommand.GetIgnoredChildrenFailures }); return waitResponse(requestId, this.receiver, RESPONSE_TIMEOUT, "getIgnoredChildrenFailures"); }, "getIgnoredChildrenFailures"), /** * Proxy `getDependenciesCount` function. */ getDependenciesCount: /* @__PURE__ */ __name(async (opts) => { const requestId = Math.random().toString(36).substring(2, 15); await send({ requestId, cmd: enums_1.ParentCommand.GetDependenciesCount, value: opts }); return waitResponse(requestId, this.receiver, RESPONSE_TIMEOUT, "getDependenciesCount"); }, "getDependenciesCount"), /** * Proxy `getDependencies` function. */ getDependencies: /* @__PURE__ */ __name(async (opts) => { const requestId = Math.random().toString(36).substring(2, 15); await send({ requestId, cmd: enums_1.ParentCommand.GetDependencies, value: opts }); return waitResponse(requestId, this.receiver, RESPONSE_TIMEOUT, "getDependencies"); }, "getDependencies") }); return wrappedJob; } }; exports2.ChildProcessor = ChildProcessor; var waitResponse = /* @__PURE__ */ __name(async (requestId, receiver, timeout, cmd) => { return new Promise((resolve, reject) => { const listener = /* @__PURE__ */ __name((msg) => { if (msg.requestId === requestId) { resolve(msg.value); receiver.off("message", listener); } }, "listener"); receiver.on("message", listener); setTimeout(() => { receiver.off("message", listener); reject(new Error(`TimeoutError: ${cmd} timed out in (${timeout}ms)`)); }, timeout); }); }, "waitResponse"); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/delayed-error.js var require_delayed_error = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/delayed-error.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DelayedError = exports2.DELAYED_ERROR = void 0; exports2.DELAYED_ERROR = "bullmq:movedToDelayed"; var DelayedError = class extends Error { static { __name(this, "DelayedError"); } constructor(message = exports2.DELAYED_ERROR) { super(message); this.name = this.constructor.name; Object.setPrototypeOf(this, new.target.prototype); } }; exports2.DelayedError = DelayedError; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/rate-limit-error.js var require_rate_limit_error = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/rate-limit-error.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RateLimitError = exports2.RATE_LIMIT_ERROR = void 0; exports2.RATE_LIMIT_ERROR = "bullmq:rateLimitExceeded"; var RateLimitError = class extends Error { static { __name(this, "RateLimitError"); } constructor(message = exports2.RATE_LIMIT_ERROR) { super(message); this.name = this.constructor.name; Object.setPrototypeOf(this, new.target.prototype); } }; exports2.RateLimitError = RateLimitError; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/unrecoverable-error.js var require_unrecoverable_error = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/unrecoverable-error.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UnrecoverableError = exports2.UNRECOVERABLE_ERROR = void 0; exports2.UNRECOVERABLE_ERROR = "bullmq:unrecoverable"; var UnrecoverableError = class extends Error { static { __name(this, "UnrecoverableError"); } constructor(message = exports2.UNRECOVERABLE_ERROR) { super(message); this.name = this.constructor.name; Object.setPrototypeOf(this, new.target.prototype); } }; exports2.UnrecoverableError = UnrecoverableError; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/waiting-children-error.js var require_waiting_children_error = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/waiting-children-error.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.WaitingChildrenError = exports2.WAITING_CHILDREN_ERROR = void 0; exports2.WAITING_CHILDREN_ERROR = "bullmq:movedToWaitingChildren"; var WaitingChildrenError = class extends Error { static { __name(this, "WaitingChildrenError"); } constructor(message = exports2.WAITING_CHILDREN_ERROR) { super(message); this.name = this.constructor.name; Object.setPrototypeOf(this, new.target.prototype); } }; exports2.WaitingChildrenError = WaitingChildrenError; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/waiting-error.js var require_waiting_error = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/waiting-error.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.WaitingError = exports2.WAITING_ERROR = void 0; exports2.WAITING_ERROR = "bullmq:movedToWait"; var WaitingError = class extends Error { static { __name(this, "WaitingError"); } constructor(message = exports2.WAITING_ERROR) { super(message); this.name = this.constructor.name; Object.setPrototypeOf(this, new.target.prototype); } }; exports2.WaitingError = WaitingError; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/index.js var require_errors3 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/errors/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_connection_closed_error(), exports2); tslib_1.__exportStar(require_delayed_error(), exports2); tslib_1.__exportStar(require_rate_limit_error(), exports2); tslib_1.__exportStar(require_unrecoverable_error(), exports2); tslib_1.__exportStar(require_waiting_children_error(), exports2); tslib_1.__exportStar(require_waiting_error(), exports2); } }); // ../../node_modules/.pnpm/detect-libc@2.1.2/node_modules/detect-libc/lib/process.js var require_process = __commonJS({ "../../node_modules/.pnpm/detect-libc@2.1.2/node_modules/detect-libc/lib/process.js"(exports2, module2) { "use strict"; var isLinux = /* @__PURE__ */ __name(() => process.platform === "linux", "isLinux"); var report = null; var getReport = /* @__PURE__ */ __name(() => { if (!report) { if (isLinux() && process.report) { const orig = process.report.excludeNetwork; process.report.excludeNetwork = true; report = process.report.getReport(); process.report.excludeNetwork = orig; } else { report = {}; } } return report; }, "getReport"); module2.exports = { isLinux, getReport }; } }); // ../../node_modules/.pnpm/detect-libc@2.1.2/node_modules/detect-libc/lib/filesystem.js var require_filesystem = __commonJS({ "../../node_modules/.pnpm/detect-libc@2.1.2/node_modules/detect-libc/lib/filesystem.js"(exports2, module2) { "use strict"; var fs = require("fs"); var LDD_PATH = "/usr/bin/ldd"; var SELF_PATH = "/proc/self/exe"; var MAX_LENGTH = 2048; var readFileSync = /* @__PURE__ */ __name((path) => { const fd = fs.openSync(path, "r"); const buffer = Buffer.alloc(MAX_LENGTH); const bytesRead = fs.readSync(fd, buffer, 0, MAX_LENGTH, 0); fs.close(fd, () => { }); return buffer.subarray(0, bytesRead); }, "readFileSync"); var readFile = /* @__PURE__ */ __name((path) => new Promise((resolve, reject) => { fs.open(path, "r", (err, fd) => { if (err) { reject(err); } else { const buffer = Buffer.alloc(MAX_LENGTH); fs.read(fd, buffer, 0, MAX_LENGTH, 0, (_2, bytesRead) => { resolve(buffer.subarray(0, bytesRead)); fs.close(fd, () => { }); }); } }); }), "readFile"); module2.exports = { LDD_PATH, SELF_PATH, readFileSync, readFile }; } }); // ../../node_modules/.pnpm/detect-libc@2.1.2/node_modules/detect-libc/lib/elf.js var require_elf = __commonJS({ "../../node_modules/.pnpm/detect-libc@2.1.2/node_modules/detect-libc/lib/elf.js"(exports2, module2) { "use strict"; var interpreterPath = /* @__PURE__ */ __name((elf) => { if (elf.length < 64) { return null; } if (elf.readUInt32BE(0) !== 2135247942) { return null; } if (elf.readUInt8(4) !== 2) { return null; } if (elf.readUInt8(5) !== 1) { return null; } const offset = elf.readUInt32LE(32); const size = elf.readUInt16LE(54); const count = elf.readUInt16LE(56); for (let i = 0; i < count; i++) { const headerOffset = offset + i * size; const type = elf.readUInt32LE(headerOffset); if (type === 3) { const fileOffset = elf.readUInt32LE(headerOffset + 8); const fileSize = elf.readUInt32LE(headerOffset + 32); return elf.subarray(fileOffset, fileOffset + fileSize).toString().replace(/\0.*$/g, ""); } } return null; }, "interpreterPath"); module2.exports = { interpreterPath }; } }); // ../../node_modules/.pnpm/detect-libc@2.1.2/node_modules/detect-libc/lib/detect-libc.js var require_detect_libc = __commonJS({ "../../node_modules/.pnpm/detect-libc@2.1.2/node_modules/detect-libc/lib/detect-libc.js"(exports2, module2) { "use strict"; var childProcess = require("child_process"); var { isLinux, getReport } = require_process(); var { LDD_PATH, SELF_PATH, readFile, readFileSync } = require_filesystem(); var { interpreterPath } = require_elf(); var cachedFamilyInterpreter; var cachedFamilyFilesystem; var cachedVersionFilesystem; var command = "getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true"; var commandOut = ""; var safeCommand = /* @__PURE__ */ __name(() => { if (!commandOut) { return new Promise((resolve) => { childProcess.exec(command, (err, out) => { commandOut = err ? " " : out; resolve(commandOut); }); }); } return commandOut; }, "safeCommand"); var safeCommandSync = /* @__PURE__ */ __name(() => { if (!commandOut) { try { commandOut = childProcess.execSync(command, { encoding: "utf8" }); } catch (_err) { commandOut = " "; } } return commandOut; }, "safeCommandSync"); var GLIBC = "glibc"; var RE_GLIBC_VERSION = /LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i; var MUSL = "musl"; var isFileMusl = /* @__PURE__ */ __name((f) => f.includes("libc.musl-") || f.includes("ld-musl-"), "isFileMusl"); var familyFromReport = /* @__PURE__ */ __name(() => { const report = getReport(); if (report.header && report.header.glibcVersionRuntime) { return GLIBC; } if (Array.isArray(report.sharedObjects)) { if (report.sharedObjects.some(isFileMusl)) { return MUSL; } } return null; }, "familyFromReport"); var familyFromCommand = /* @__PURE__ */ __name((out) => { const [getconf, ldd1] = out.split(/[\r\n]+/); if (getconf && getconf.includes(GLIBC)) { return GLIBC; } if (ldd1 && ldd1.includes(MUSL)) { return MUSL; } return null; }, "familyFromCommand"); var familyFromInterpreterPath = /* @__PURE__ */ __name((path) => { if (path) { if (path.includes("/ld-musl-")) { return MUSL; } else if (path.includes("/ld-linux-")) { return GLIBC; } } return null; }, "familyFromInterpreterPath"); var getFamilyFromLddContent = /* @__PURE__ */ __name((content) => { content = content.toString(); if (content.includes("musl")) { return MUSL; } if (content.includes("GNU C Library")) { return GLIBC; } return null; }, "getFamilyFromLddContent"); var familyFromFilesystem = /* @__PURE__ */ __name(async () => { if (cachedFamilyFilesystem !== void 0) { return cachedFamilyFilesystem; } cachedFamilyFilesystem = null; try { const lddContent = await readFile(LDD_PATH); cachedFamilyFilesystem = getFamilyFromLddContent(lddContent); } catch (e) { } return cachedFamilyFilesystem; }, "familyFromFilesystem"); var familyFromFilesystemSync = /* @__PURE__ */ __name(() => { if (cachedFamilyFilesystem !== void 0) { return cachedFamilyFilesystem; } cachedFamilyFilesystem = null; try { const lddContent = readFileSync(LDD_PATH); cachedFamilyFilesystem = getFamilyFromLddContent(lddContent); } catch (e) { } return cachedFamilyFilesystem; }, "familyFromFilesystemSync"); var familyFromInterpreter = /* @__PURE__ */ __name(async () => { if (cachedFamilyInterpreter !== void 0) { return cachedFamilyInterpreter; } cachedFamilyInterpreter = null; try { const selfContent = await readFile(SELF_PATH); const path = interpreterPath(selfContent); cachedFamilyInterpreter = familyFromInterpreterPath(path); } catch (e) { } return cachedFamilyInterpreter; }, "familyFromInterpreter"); var familyFromInterpreterSync = /* @__PURE__ */ __name(() => { if (cachedFamilyInterpreter !== void 0) { return cachedFamilyInterpreter; } cachedFamilyInterpreter = null; try { const selfContent = readFileSync(SELF_PATH); const path = interpreterPath(selfContent); cachedFamilyInterpreter = familyFromInterpreterPath(path); } catch (e) { } return cachedFamilyInterpreter; }, "familyFromInterpreterSync"); var family = /* @__PURE__ */ __name(async () => { let family2 = null; if (isLinux()) { family2 = await familyFromInterpreter(); if (!family2) { family2 = await familyFromFilesystem(); if (!family2) { family2 = familyFromReport(); } if (!family2) { const out = await safeCommand(); family2 = familyFromCommand(out); } } } return family2; }, "family"); var familySync = /* @__PURE__ */ __name(() => { let family2 = null; if (isLinux()) { family2 = familyFromInterpreterSync(); if (!family2) { family2 = familyFromFilesystemSync(); if (!family2) { family2 = familyFromReport(); } if (!family2) { const out = safeCommandSync(); family2 = familyFromCommand(out); } } } return family2; }, "familySync"); var isNonGlibcLinux = /* @__PURE__ */ __name(async () => isLinux() && await family() !== GLIBC, "isNonGlibcLinux"); var isNonGlibcLinuxSync = /* @__PURE__ */ __name(() => isLinux() && familySync() !== GLIBC, "isNonGlibcLinuxSync"); var versionFromFilesystem = /* @__PURE__ */ __name(async () => { if (cachedVersionFilesystem !== void 0) { return cachedVersionFilesystem; } cachedVersionFilesystem = null; try { const lddContent = await readFile(LDD_PATH); const versionMatch = lddContent.match(RE_GLIBC_VERSION); if (versionMatch) { cachedVersionFilesystem = versionMatch[1]; } } catch (e) { } return cachedVersionFilesystem; }, "versionFromFilesystem"); var versionFromFilesystemSync = /* @__PURE__ */ __name(() => { if (cachedVersionFilesystem !== void 0) { return cachedVersionFilesystem; } cachedVersionFilesystem = null; try { const lddContent = readFileSync(LDD_PATH); const versionMatch = lddContent.match(RE_GLIBC_VERSION); if (versionMatch) { cachedVersionFilesystem = versionMatch[1]; } } catch (e) { } return cachedVersionFilesystem; }, "versionFromFilesystemSync"); var versionFromReport = /* @__PURE__ */ __name(() => { const report = getReport(); if (report.header && report.header.glibcVersionRuntime) { return report.header.glibcVersionRuntime; } return null; }, "versionFromReport"); var versionSuffix = /* @__PURE__ */ __name((s) => s.trim().split(/\s+/)[1], "versionSuffix"); var versionFromCommand = /* @__PURE__ */ __name((out) => { const [getconf, ldd1, ldd2] = out.split(/[\r\n]+/); if (getconf && getconf.includes(GLIBC)) { return versionSuffix(getconf); } if (ldd1 && ldd2 && ldd1.includes(MUSL)) { return versionSuffix(ldd2); } return null; }, "versionFromCommand"); var version2 = /* @__PURE__ */ __name(async () => { let version3 = null; if (isLinux()) { version3 = await versionFromFilesystem(); if (!version3) { version3 = versionFromReport(); } if (!version3) { const out = await safeCommand(); version3 = versionFromCommand(out); } } return version3; }, "version"); var versionSync = /* @__PURE__ */ __name(() => { let version3 = null; if (isLinux()) { version3 = versionFromFilesystemSync(); if (!version3) { version3 = versionFromReport(); } if (!version3) { const out = safeCommandSync(); version3 = versionFromCommand(out); } } return version3; }, "versionSync"); module2.exports = { GLIBC, MUSL, family, familySync, isNonGlibcLinux, isNonGlibcLinuxSync, version: version2, versionSync }; } }); // ../../node_modules/.pnpm/node-gyp-build-optional-packages@5.2.2/node_modules/node-gyp-build-optional-packages/node-gyp-build.js var require_node_gyp_build = __commonJS({ "../../node_modules/.pnpm/node-gyp-build-optional-packages@5.2.2/node_modules/node-gyp-build-optional-packages/node-gyp-build.js"(exports2, module2) { var fs = require("fs"); var path = require("path"); var url = require("url"); var os = require("os"); var runtimeRequire = typeof __webpack_require__ === "function" ? __non_webpack_require__ : require; var vars = process.config && process.config.variables || {}; var prebuildsOnly = !!process.env.PREBUILDS_ONLY; var versions = process.versions; var abi = versions.modules; if (versions.deno || process.isBun) { abi = "unsupported"; } var runtime = isElectron() ? "electron" : isNwjs() ? "node-webkit" : "node"; var arch = process.env.npm_config_arch || os.arch(); var platform = process.env.npm_config_platform || os.platform(); var libc = process.env.LIBC || (isMusl(platform) ? "musl" : "glibc"); var armv = process.env.ARM_VERSION || (arch === "arm64" ? "8" : vars.arm_version) || ""; var uv = (versions.uv || "").split(".")[0]; module2.exports = load; function load(dir) { return runtimeRequire(load.resolve(dir)); } __name(load, "load"); load.resolve = load.path = function(dir) { dir = path.resolve(dir || "."); var packageName = ""; var packageNameError; try { packageName = runtimeRequire(path.join(dir, "package.json")).name; var varName = packageName.toUpperCase().replace(/-/g, "_"); if (process.env[varName + "_PREBUILD"]) dir = process.env[varName + "_PREBUILD"]; } catch (err) { packageNameError = err; } if (!prebuildsOnly) { var release = getFirst(path.join(dir, "build/Release"), matchBuild); if (release) return release; var debug = getFirst(path.join(dir, "build/Debug"), matchBuild); if (debug) return debug; } var prebuild = resolve(dir); if (prebuild) return prebuild; var nearby = resolve(path.dirname(process.execPath)); if (nearby) return nearby; var platformPackage = (packageName[0] == "@" ? "" : "@" + packageName + "/") + packageName + "-" + platform + "-" + arch; var packageResolutionError; try { var prebuildPackage = path.dirname(require("module").createRequire(url.pathToFileURL(path.join(dir, "package.json"))).resolve(platformPackage)); return resolveFile(prebuildPackage); } catch (error) { packageResolutionError = error; } var target = [ "platform=" + platform, "arch=" + arch, "runtime=" + runtime, "abi=" + abi, "uv=" + uv, armv ? "armv=" + armv : "", "libc=" + libc, "node=" + process.versions.node, process.versions.electron ? "electron=" + process.versions.electron : "", typeof __webpack_require__ === "function" ? "webpack=true" : "" // eslint-disable-line ].filter(Boolean).join(" "); let errMessage = "No native build was found for " + target + "\n attempted loading from: " + dir + " and package: " + platformPackage + "\n"; if (packageNameError) { errMessage += "Error finding package.json: " + packageNameError.message + "\n"; } if (packageResolutionError) { errMessage += "Error resolving package: " + packageResolutionError.message + "\n"; } throw new Error(errMessage); function resolve(dir2) { var tuples = readdirSync(path.join(dir2, "prebuilds")).map(parseTuple); var tuple = tuples.filter(matchTuple(platform, arch)).sort(compareTuples)[0]; if (!tuple) return; return resolveFile(path.join(dir2, "prebuilds", tuple.name)); } __name(resolve, "resolve"); function resolveFile(prebuilds) { var parsed = readdirSync(prebuilds).map(parseTags); var candidates = parsed.filter(matchTags(runtime, abi)); var winner = candidates.sort(compareTags(runtime))[0]; if (winner) return path.join(prebuilds, winner.file); } __name(resolveFile, "resolveFile"); }; function readdirSync(dir) { try { return fs.readdirSync(dir); } catch (err) { return []; } } __name(readdirSync, "readdirSync"); function getFirst(dir, filter) { var files = readdirSync(dir).filter(filter); return files[0] && path.join(dir, files[0]); } __name(getFirst, "getFirst"); function matchBuild(name) { return /\.node$/.test(name); } __name(matchBuild, "matchBuild"); function parseTuple(name) { var arr = name.split("-"); if (arr.length !== 2) return; var platform2 = arr[0]; var architectures = arr[1].split("+"); if (!platform2) return; if (!architectures.length) return; if (!architectures.every(Boolean)) return; return { name, platform: platform2, architectures }; } __name(parseTuple, "parseTuple"); function matchTuple(platform2, arch2) { return function(tuple) { if (tuple == null) return false; if (tuple.platform !== platform2) return false; return tuple.architectures.includes(arch2); }; } __name(matchTuple, "matchTuple"); function compareTuples(a, b) { return a.architectures.length - b.architectures.length; } __name(compareTuples, "compareTuples"); function parseTags(file2) { var arr = file2.split("."); var extension = arr.pop(); var tags = { file: file2, specificity: 0 }; if (extension !== "node") return; for (var i = 0; i < arr.length; i++) { var tag = arr[i]; if (tag === "node" || tag === "electron" || tag === "node-webkit") { tags.runtime = tag; } else if (tag === "napi") { tags.napi = true; } else if (tag.slice(0, 3) === "abi") { tags.abi = tag.slice(3); } else if (tag.slice(0, 2) === "uv") { tags.uv = tag.slice(2); } else if (tag.slice(0, 4) === "armv") { tags.armv = tag.slice(4); } else if (tag === "glibc" || tag === "musl") { tags.libc = tag; } else { continue; } tags.specificity++; } return tags; } __name(parseTags, "parseTags"); function matchTags(runtime2, abi2) { return function(tags) { if (tags == null) return false; if (tags.runtime !== runtime2 && !runtimeAgnostic(tags)) return false; if (tags.abi !== abi2 && !tags.napi) return false; if (tags.uv && tags.uv !== uv) return false; if (tags.armv && tags.armv !== armv) return false; if (tags.libc && tags.libc !== libc) return false; return true; }; } __name(matchTags, "matchTags"); function runtimeAgnostic(tags) { return tags.runtime === "node" && tags.napi; } __name(runtimeAgnostic, "runtimeAgnostic"); function compareTags(runtime2) { return function(a, b) { if (a.runtime !== b.runtime) { return a.runtime === runtime2 ? -1 : 1; } else if (a.abi !== b.abi) { return a.abi ? -1 : 1; } else if (a.specificity !== b.specificity) { return a.specificity > b.specificity ? -1 : 1; } else { return 0; } }; } __name(compareTags, "compareTags"); function isNwjs() { return !!(process.versions && process.versions.nw); } __name(isNwjs, "isNwjs"); function isElectron() { if (process.versions && process.versions.electron) return true; if (process.env.ELECTRON_RUN_AS_NODE) return true; return typeof window !== "undefined" && window.process && window.process.type === "renderer"; } __name(isElectron, "isElectron"); function isMusl(platform2) { if (platform2 !== "linux") return false; const { familySync, MUSL } = require_detect_libc(); return familySync() === MUSL; } __name(isMusl, "isMusl"); load.parseTags = parseTags; load.matchTags = matchTags; load.compareTags = compareTags; load.parseTuple = parseTuple; load.matchTuple = matchTuple; load.compareTuples = compareTuples; } }); // ../../node_modules/.pnpm/node-gyp-build-optional-packages@5.2.2/node_modules/node-gyp-build-optional-packages/index.js var require_node_gyp_build_optional_packages = __commonJS({ "../../node_modules/.pnpm/node-gyp-build-optional-packages@5.2.2/node_modules/node-gyp-build-optional-packages/index.js"(exports2, module2) { var runtimeRequire = typeof __webpack_require__ === "function" ? __non_webpack_require__ : require; if (typeof runtimeRequire.addon === "function") { module2.exports = runtimeRequire.addon.bind(runtimeRequire); } else { module2.exports = require_node_gyp_build(); } } }); // ../../node_modules/.pnpm/msgpackr-extract@3.0.4/node_modules/msgpackr-extract/index.js var require_msgpackr_extract = __commonJS({ "../../node_modules/.pnpm/msgpackr-extract@3.0.4/node_modules/msgpackr-extract/index.js"(exports2, module2) { module2.exports = require_node_gyp_build_optional_packages()(__dirname); } }); // ../../node_modules/.pnpm/msgpackr@2.0.5/node_modules/msgpackr/dist/node.cjs var require_node4 = __commonJS({ "../../node_modules/.pnpm/msgpackr@2.0.5/node_modules/msgpackr/dist/node.cjs"(exports2) { "use strict"; var stream = require("stream"); var module$1 = require("module"); var _documentCurrentScript = typeof document !== "undefined" ? document.currentScript : null; var decoder; try { decoder = new TextDecoder(); } catch (error) { } var src; var srcEnd; var position$1 = 0; var EMPTY_ARRAY = []; var strings = EMPTY_ARRAY; var stringPosition = 0; var currentUnpackr = {}; var currentStructures; var srcString; var srcStringStart = 0; var srcStringEnd = 0; var bundledStrings$1; var referenceMap; var currentExtensions = []; var dataView; var defaultOptions = { useRecords: false, mapsAsObjects: true }; var C1Type = class { static { __name(this, "C1Type"); } }; var C1 = new C1Type(); C1.name = "MessagePack 0xC1"; var sequentialMode = false; var inlineObjectReadThreshold = 2; var Unpackr = class _Unpackr { static { __name(this, "Unpackr"); } constructor(options) { if (options) { if (options.useRecords === false && options.mapsAsObjects === void 0) options.mapsAsObjects = true; if (options.sequential && options.trusted !== false) { options.trusted = true; if (!options.structures && options.useRecords != false) { options.structures = []; if (!options.maxSharedStructures) options.maxSharedStructures = 0; } } if (options.structures) options.structures.sharedLength = options.structures.length; else if (options.getStructures) { (options.structures = []).uninitialized = true; options.structures.sharedLength = 0; } if (options.int64AsNumber) { options.int64AsType = "number"; } } Object.assign(this, options); } unpack(source, options) { if (src) { return saveState(() => { clearSource(); return this ? this.unpack(source, options) : _Unpackr.prototype.unpack.call(defaultOptions, source, options); }); } if (!source.buffer && source.constructor === ArrayBuffer) source = typeof Buffer !== "undefined" ? Buffer.from(source) : new Uint8Array(source); if (typeof options === "object") { srcEnd = options.end || source.length; position$1 = options.start || 0; } else { position$1 = 0; srcEnd = options > -1 ? options : source.length; } stringPosition = 0; srcStringEnd = 0; srcString = null; strings = EMPTY_ARRAY; bundledStrings$1 = null; src = source; try { dataView = source.dataView || (source.dataView = new DataView(source.buffer, source.byteOffset, source.byteLength)); } catch (error) { src = null; if (source instanceof Uint8Array) throw error; throw new Error("Source must be a Uint8Array or Buffer but was a " + (source && typeof source == "object" ? source.constructor.name : typeof source)); } if (this instanceof _Unpackr) { currentUnpackr = this; if (this.structures) { currentStructures = this.structures; return checkedRead(options); } else if (!currentStructures || currentStructures.length > 0) { currentStructures = []; } } else { currentUnpackr = defaultOptions; if (!currentStructures || currentStructures.length > 0) currentStructures = []; } return checkedRead(options); } unpackMultiple(source, forEach) { let values, lastPosition = 0; try { sequentialMode = true; let size = source.length; let value = this ? this.unpack(source, size) : defaultUnpackr.unpack(source, size); if (forEach) { if (forEach(value, lastPosition, position$1) === false) return; while (position$1 < size) { lastPosition = position$1; if (forEach(checkedRead(), lastPosition, position$1) === false) { return; } } } else { values = [value]; while (position$1 < size) { lastPosition = position$1; values.push(checkedRead()); } return values; } } catch (error) { error.lastPosition = lastPosition; error.values = values; throw error; } finally { sequentialMode = false; clearSource(); } } _mergeStructures(loadedStructures, existingStructures) { if (this._onLoadedStructures) loadedStructures = this._onLoadedStructures(loadedStructures); loadedStructures = loadedStructures || []; if (Object.isFrozen(loadedStructures)) loadedStructures = loadedStructures.map((structure) => structure.slice(0)); for (let i = 0, l2 = loadedStructures.length; i < l2; i++) { let structure = loadedStructures[i]; if (structure) { structure.isShared = true; if (i >= 32) structure.highByte = i - 32 >> 5; } } loadedStructures.sharedLength = loadedStructures.length; for (let id in existingStructures || []) { if (id >= 0) { let structure = loadedStructures[id]; let existing = existingStructures[id]; if (existing) { if (structure) (loadedStructures.restoreStructures || (loadedStructures.restoreStructures = []))[id] = structure; loadedStructures[id] = existing; } } } return this.structures = loadedStructures; } decode(source, options) { return this.unpack(source, options); } }; function checkedRead(options) { try { if (!currentUnpackr.trusted && !sequentialMode) { let sharedLength = currentStructures.sharedLength || 0; if (sharedLength < currentStructures.length) currentStructures.length = sharedLength; } let result; if (currentUnpackr._readStruct && src[position$1] < 64 && src[position$1] >= 32) { result = currentUnpackr._readStruct(src, position$1, srcEnd); src = null; if (!(options && options.lazy) && result) result = result.toJSON(); position$1 = srcEnd; } else result = read(); if (bundledStrings$1) { position$1 = bundledStrings$1.postBundlePosition; bundledStrings$1 = null; } if (sequentialMode) currentStructures.restoreStructures = null; if (position$1 == srcEnd) { if (currentStructures && currentStructures.restoreStructures) restoreStructures(); currentStructures = null; src = null; if (referenceMap) referenceMap = null; } else if (position$1 > srcEnd) { throw new Error("Unexpected end of MessagePack data"); } else if (!sequentialMode) { let jsonView; try { jsonView = JSON.stringify(result, (_2, value) => typeof value === "bigint" ? `${value}n` : value).slice(0, 100); } catch (error) { jsonView = "(JSON view not available " + error + ")"; } throw new Error("Data read, but end of buffer not reached " + jsonView); } return result; } catch (error) { if (currentStructures && currentStructures.restoreStructures) restoreStructures(); clearSource(); if (error instanceof RangeError || error.message.startsWith("Unexpected end of buffer") || position$1 > srcEnd) { error.incomplete = true; } throw error; } } __name(checkedRead, "checkedRead"); function restoreStructures() { for (let id in currentStructures.restoreStructures) { currentStructures[id] = currentStructures.restoreStructures[id]; } currentStructures.restoreStructures = null; } __name(restoreStructures, "restoreStructures"); function read() { let token = src[position$1++]; if (token < 160) { if (token < 128) { if (token < 64) return token; else { let structure = currentStructures[token & 63] || currentUnpackr.getStructures && loadStructures()[token & 63]; if (structure) { if (!structure.read) { structure.read = createStructureReader(structure, token & 63); } return structure.read(); } else return token; } } else if (token < 144) { token -= 128; if (currentUnpackr.mapsAsObjects) { let object = {}; for (let i = 0; i < token; i++) { let key = readKey(); if (key === "__proto__") key = "__proto_"; object[key] = read(); } return object; } else { let map = /* @__PURE__ */ new Map(); for (let i = 0; i < token; i++) { map.set(read(), read()); } return map; } } else { token -= 144; let array = new Array(token); for (let i = 0; i < token; i++) { array[i] = read(); } if (currentUnpackr.freezeData) return Object.freeze(array); return array; } } else if (token < 192) { let length = token - 160; if (srcStringEnd >= position$1) { return srcString.slice(position$1 - srcStringStart, (position$1 += length) - srcStringStart); } if (srcStringEnd == 0 && srcEnd < 140) { let string = length < 16 ? shortStringInJS(length) : longStringInJS(length); if (string != null) return string; } return readFixedString(length); } else { let value; switch (token) { case 192: return null; case 193: if (bundledStrings$1) { value = read(); if (value > 0) return bundledStrings$1[1].slice(bundledStrings$1.position1, bundledStrings$1.position1 += value); else return bundledStrings$1[0].slice(bundledStrings$1.position0, bundledStrings$1.position0 -= value); } return C1; // "never-used", return special object to denote that case 194: return false; case 195: return true; case 196: value = src[position$1++]; if (value === void 0) throw new Error("Unexpected end of buffer"); return readBin(value); case 197: value = dataView.getUint16(position$1); position$1 += 2; return readBin(value); case 198: value = dataView.getUint32(position$1); position$1 += 4; return readBin(value); case 199: return readExt(src[position$1++]); case 200: value = dataView.getUint16(position$1); position$1 += 2; return readExt(value); case 201: value = dataView.getUint32(position$1); position$1 += 4; return readExt(value); case 202: value = dataView.getFloat32(position$1); if (currentUnpackr.useFloat32 > 2) { let multiplier = mult10[(src[position$1] & 127) << 1 | src[position$1 + 1] >> 7]; position$1 += 4; return (multiplier * value + (value > 0 ? 0.5 : -0.5) >> 0) / multiplier; } position$1 += 4; return value; case 203: value = dataView.getFloat64(position$1); position$1 += 8; return value; // uint handlers case 204: return src[position$1++]; case 205: value = dataView.getUint16(position$1); position$1 += 2; return value; case 206: value = dataView.getUint32(position$1); position$1 += 4; return value; case 207: if (currentUnpackr.int64AsType === "number") { value = dataView.getUint32(position$1) * 4294967296; value += dataView.getUint32(position$1 + 4); } else if (currentUnpackr.int64AsType === "string") { value = dataView.getBigUint64(position$1).toString(); } else if (currentUnpackr.int64AsType === "auto") { value = dataView.getBigUint64(position$1); if (value <= BigInt(2) << BigInt(52)) value = Number(value); } else value = dataView.getBigUint64(position$1); position$1 += 8; return value; // int handlers case 208: return dataView.getInt8(position$1++); case 209: value = dataView.getInt16(position$1); position$1 += 2; return value; case 210: value = dataView.getInt32(position$1); position$1 += 4; return value; case 211: if (currentUnpackr.int64AsType === "number") { value = dataView.getInt32(position$1) * 4294967296; value += dataView.getUint32(position$1 + 4); } else if (currentUnpackr.int64AsType === "string") { value = dataView.getBigInt64(position$1).toString(); } else if (currentUnpackr.int64AsType === "auto") { value = dataView.getBigInt64(position$1); if (value >= BigInt(-2) << BigInt(52) && value <= BigInt(2) << BigInt(52)) value = Number(value); } else value = dataView.getBigInt64(position$1); position$1 += 8; return value; case 212: value = src[position$1++]; if (value == 114) { return recordDefinition(src[position$1++] & 63); } else { let extension = currentExtensions[value]; if (extension) { if (extension.read) { position$1++; return extension.read(read()); } else if (extension.noBuffer) { position$1++; return extension(); } else return extension(src.subarray(position$1, ++position$1)); } else throw new Error("Unknown extension " + value); } case 213: value = src[position$1]; if (value == 114) { position$1++; return recordDefinition(src[position$1++] & 63, src[position$1++]); } else return readExt(2); case 214: return readExt(4); case 215: return readExt(8); case 216: return readExt(16); case 217: value = src[position$1++]; if (srcStringEnd >= position$1) { return srcString.slice(position$1 - srcStringStart, (position$1 += value) - srcStringStart); } return readString8(value); case 218: value = dataView.getUint16(position$1); position$1 += 2; if (srcStringEnd >= position$1) { return srcString.slice(position$1 - srcStringStart, (position$1 += value) - srcStringStart); } return readString16(value); case 219: value = dataView.getUint32(position$1); position$1 += 4; if (srcStringEnd >= position$1) { return srcString.slice(position$1 - srcStringStart, (position$1 += value) - srcStringStart); } return readString32(value); case 220: value = dataView.getUint16(position$1); position$1 += 2; return readArray(value); case 221: value = dataView.getUint32(position$1); position$1 += 4; return readArray(value); case 222: value = dataView.getUint16(position$1); position$1 += 2; return readMap(value); case 223: value = dataView.getUint32(position$1); position$1 += 4; return readMap(value); default: if (token >= 224) return token - 256; if (token === void 0) { let error = new Error("Unexpected end of MessagePack data"); error.incomplete = true; throw error; } throw new Error("Unknown MessagePack token " + token); } } } __name(read, "read"); var validName = /^[a-zA-Z_$][a-zA-Z\d_$]*$/; function createStructureReader(structure, firstId) { function readObject() { if (readObject.count++ > inlineObjectReadThreshold) { let optimizedReadObject; try { optimizedReadObject = structure.read = new Function("r", "return function(){return " + (currentUnpackr.freezeData ? "Object.freeze" : "") + "({" + structure.map((key) => key === "__proto__" ? "__proto_:r()" : validName.test(key) ? key + ":r()" : "[" + JSON.stringify(key) + "]:r()").join(",") + "})}")(read); } catch (error) { inlineObjectReadThreshold = Infinity; return readObject(); } structure.read0 = optimizedReadObject; if (structure.highByte === 0) structure.read = createSecondByteReader(firstId, structure.read); return optimizedReadObject(); } let object = {}; for (let i = 0, l2 = structure.length; i < l2; i++) { let key = structure[i]; if (key === "__proto__") key = "__proto_"; object[key] = read(); } if (currentUnpackr.freezeData) return Object.freeze(object); return object; } __name(readObject, "readObject"); readObject.count = 0; structure.read0 = readObject; if (structure.highByte === 0) { return createSecondByteReader(firstId, readObject); } return readObject; } __name(createStructureReader, "createStructureReader"); var createSecondByteReader = /* @__PURE__ */ __name((firstId, read0) => { return function() { let highByte = src[position$1++]; if (highByte === 0) return read0(); let id = firstId < 32 ? -(firstId + (highByte << 5)) : firstId + (highByte << 5); let structure = currentStructures[id] || loadStructures()[id]; if (!structure) { throw new Error("Record id is not defined for " + id); } if (!structure.read) structure.read = createStructureReader(structure, firstId); return structure.read(); }; }, "createSecondByteReader"); function loadStructures() { let loadedStructures = saveState(() => { src = null; return currentUnpackr.getStructures(); }); return currentStructures = currentUnpackr._mergeStructures(loadedStructures, currentStructures); } __name(loadStructures, "loadStructures"); var readFixedString = readStringJS; var readString8 = readStringJS; var readString16 = readStringJS; var readString32 = readStringJS; exports2.isNativeAccelerationEnabled = false; function setExtractor(extractStrings) { exports2.isNativeAccelerationEnabled = true; readFixedString = readString(1); readString8 = readString(2); readString16 = readString(3); readString32 = readString(5); function readString(headerLength) { return /* @__PURE__ */ __name(function readString2(length) { let string = strings[stringPosition++]; if (string == null) { if (bundledStrings$1) return readStringJS(length); let byteOffset = src.byteOffset; let extraction = extractStrings(position$1 - headerLength + byteOffset, srcEnd + byteOffset, src.buffer); if (typeof extraction == "string") { string = extraction; strings = EMPTY_ARRAY; } else { strings = extraction; stringPosition = 1; srcStringEnd = 1; string = strings[0]; if (string === void 0) throw new Error("Unexpected end of buffer"); } } let srcStringLength = string.length; if (srcStringLength <= length) { position$1 += length; return string; } srcString = string; srcStringStart = position$1; srcStringEnd = position$1 + srcStringLength; position$1 += length; return string.slice(0, length); }, "readString"); } __name(readString, "readString"); } __name(setExtractor, "setExtractor"); function readStringJS(length) { let result; if (length < 16) { if (result = shortStringInJS(length)) return result; } if (length > 64 && decoder) return decoder.decode(src.subarray(position$1, position$1 += length)); const end = position$1 + length; const units = []; result = ""; while (position$1 < end) { const byte1 = src[position$1++]; if ((byte1 & 128) === 0) { units.push(byte1); } else if ((byte1 & 224) === 192) { if (byte1 < 194 || position$1 >= end || (src[position$1] & 192) !== 128) { units.push(65533); } else { const byte2 = src[position$1++] & 63; units.push((byte1 & 31) << 6 | byte2); } } else if ((byte1 & 240) === 224) { const byte2 = position$1 < end ? src[position$1] : 0; if (position$1 >= end || (byte2 & 192) !== 128 || byte1 === 224 && byte2 < 160 || byte1 === 237 && byte2 >= 160) { units.push(65533); } else { position$1++; if (position$1 >= end || (src[position$1] & 192) !== 128) { units.push(65533); } else { const byte3 = src[position$1++] & 63; units.push((byte1 & 31) << 12 | (byte2 & 63) << 6 | byte3); } } } else if ((byte1 & 248) === 240) { const byte2 = position$1 < end ? src[position$1] : 0; if (byte1 > 244 || position$1 >= end || (byte2 & 192) !== 128 || byte1 === 240 && byte2 < 144 || byte1 === 244 && byte2 >= 144) { units.push(65533); } else { position$1++; if (position$1 >= end || (src[position$1] & 192) !== 128) { units.push(65533); } else { const byte3 = src[position$1++] & 63; if (position$1 >= end || (src[position$1] & 192) !== 128) { units.push(65533); } else { const byte4 = src[position$1++] & 63; let unit = (byte1 & 7) << 18 | (byte2 & 63) << 12 | byte3 << 6 | byte4; unit -= 65536; units.push(unit >>> 10 & 1023 | 55296); units.push(56320 | unit & 1023); } } } } else { units.push(65533); } if (units.length >= 4096) { result += fromCharCode.apply(String, units); units.length = 0; } } if (units.length > 0) { result += fromCharCode.apply(String, units); } return result; } __name(readStringJS, "readStringJS"); function readArray(length) { let array = new Array(length); for (let i = 0; i < length; i++) { array[i] = read(); } if (currentUnpackr.freezeData) return Object.freeze(array); return array; } __name(readArray, "readArray"); function readMap(length) { if (currentUnpackr.mapsAsObjects) { let object = {}; for (let i = 0; i < length; i++) { let key = readKey(); if (key === "__proto__") key = "__proto_"; object[key] = read(); } return object; } else { let map = /* @__PURE__ */ new Map(); for (let i = 0; i < length; i++) { map.set(read(), read()); } return map; } } __name(readMap, "readMap"); var fromCharCode = String.fromCharCode; function longStringInJS(length) { let start = position$1; let bytes = new Array(length); for (let i = 0; i < length; i++) { const byte = src[position$1++]; if ((byte & 128) > 0) { position$1 = start; return; } bytes[i] = byte; } return fromCharCode.apply(String, bytes); } __name(longStringInJS, "longStringInJS"); function shortStringInJS(length) { if (length < 4) { if (length < 2) { if (length === 0) return ""; else { let a = src[position$1++]; if ((a & 128) > 1) { position$1 -= 1; return; } return fromCharCode(a); } } else { let a = src[position$1++]; let b = src[position$1++]; if ((a & 128) > 0 || (b & 128) > 0) { position$1 -= 2; return; } if (length < 3) return fromCharCode(a, b); let c = src[position$1++]; if ((c & 128) > 0) { position$1 -= 3; return; } return fromCharCode(a, b, c); } } else { let a = src[position$1++]; let b = src[position$1++]; let c = src[position$1++]; let d = src[position$1++]; if ((a & 128) > 0 || (b & 128) > 0 || (c & 128) > 0 || (d & 128) > 0) { position$1 -= 4; return; } if (length < 6) { if (length === 4) return fromCharCode(a, b, c, d); else { let e = src[position$1++]; if ((e & 128) > 0) { position$1 -= 5; return; } return fromCharCode(a, b, c, d, e); } } else if (length < 8) { let e = src[position$1++]; let f = src[position$1++]; if ((e & 128) > 0 || (f & 128) > 0) { position$1 -= 6; return; } if (length < 7) return fromCharCode(a, b, c, d, e, f); let g = src[position$1++]; if ((g & 128) > 0) { position$1 -= 7; return; } return fromCharCode(a, b, c, d, e, f, g); } else { let e = src[position$1++]; let f = src[position$1++]; let g = src[position$1++]; let h = src[position$1++]; if ((e & 128) > 0 || (f & 128) > 0 || (g & 128) > 0 || (h & 128) > 0) { position$1 -= 8; return; } if (length < 10) { if (length === 8) return fromCharCode(a, b, c, d, e, f, g, h); else { let i = src[position$1++]; if ((i & 128) > 0) { position$1 -= 9; return; } return fromCharCode(a, b, c, d, e, f, g, h, i); } } else if (length < 12) { let i = src[position$1++]; let j = src[position$1++]; if ((i & 128) > 0 || (j & 128) > 0) { position$1 -= 10; return; } if (length < 11) return fromCharCode(a, b, c, d, e, f, g, h, i, j); let k = src[position$1++]; if ((k & 128) > 0) { position$1 -= 11; return; } return fromCharCode(a, b, c, d, e, f, g, h, i, j, k); } else { let i = src[position$1++]; let j = src[position$1++]; let k = src[position$1++]; let l2 = src[position$1++]; if ((i & 128) > 0 || (j & 128) > 0 || (k & 128) > 0 || (l2 & 128) > 0) { position$1 -= 12; return; } if (length < 14) { if (length === 12) return fromCharCode(a, b, c, d, e, f, g, h, i, j, k, l2); else { let m = src[position$1++]; if ((m & 128) > 0) { position$1 -= 13; return; } return fromCharCode(a, b, c, d, e, f, g, h, i, j, k, l2, m); } } else { let m = src[position$1++]; let n = src[position$1++]; if ((m & 128) > 0 || (n & 128) > 0) { position$1 -= 14; return; } if (length < 15) return fromCharCode(a, b, c, d, e, f, g, h, i, j, k, l2, m, n); let o = src[position$1++]; if ((o & 128) > 0) { position$1 -= 15; return; } return fromCharCode(a, b, c, d, e, f, g, h, i, j, k, l2, m, n, o); } } } } } __name(shortStringInJS, "shortStringInJS"); function readOnlyJSString() { let token = src[position$1++]; let length; if (token < 192) { length = token - 160; } else { switch (token) { case 217: length = src[position$1++]; break; case 218: length = dataView.getUint16(position$1); position$1 += 2; break; case 219: length = dataView.getUint32(position$1); position$1 += 4; break; default: throw new Error("Expected string"); } } return readStringJS(length); } __name(readOnlyJSString, "readOnlyJSString"); function readBin(length) { return currentUnpackr.copyBuffers ? ( // specifically use the copying slice (not the node one) Uint8Array.prototype.slice.call(src, position$1, position$1 += length) ) : src.subarray(position$1, position$1 += length); } __name(readBin, "readBin"); function readExt(length) { let type = src[position$1++]; if (currentExtensions[type]) { let end; return currentExtensions[type](src.subarray(position$1, end = position$1 += length), (readPosition) => { position$1 = readPosition; try { return read(); } finally { position$1 = end; } }); } else throw new Error("Unknown extension type " + type); } __name(readExt, "readExt"); var keyCache = new Array(4096); function readKey() { let length = src[position$1++]; if (length >= 160 && length < 192) { length = length - 160; if (srcStringEnd >= position$1) return srcString.slice(position$1 - srcStringStart, (position$1 += length) - srcStringStart); else if (!(srcStringEnd == 0 && srcEnd < 180)) return readFixedString(length); } else { position$1--; return asSafeString(read()); } let key = (length << 5 ^ (length > 1 ? dataView.getUint16(position$1) : length > 0 ? src[position$1] : 0)) & 4095; let entry = keyCache[key]; let checkPosition = position$1; let end = position$1 + length - 3; let chunk; let i = 0; if (entry && entry.bytes == length) { while (checkPosition < end) { chunk = dataView.getUint32(checkPosition); if (chunk != entry[i++]) { checkPosition = 1879048192; break; } checkPosition += 4; } end += 3; while (checkPosition < end) { chunk = src[checkPosition++]; if (chunk != entry[i++]) { checkPosition = 1879048192; break; } } if (checkPosition === end) { position$1 = checkPosition; return entry.string; } end -= 3; checkPosition = position$1; } entry = []; keyCache[key] = entry; entry.bytes = length; while (checkPosition < end) { chunk = dataView.getUint32(checkPosition); entry.push(chunk); checkPosition += 4; } end += 3; while (checkPosition < end) { chunk = src[checkPosition++]; entry.push(chunk); } let string = length < 16 ? shortStringInJS(length) : longStringInJS(length); if (string != null) return entry.string = string; return entry.string = readFixedString(length); } __name(readKey, "readKey"); function asSafeString(property) { if (typeof property === "string") return property; if (typeof property === "number" || typeof property === "boolean" || typeof property === "bigint") return property.toString(); if (property == null) return property + ""; if (currentUnpackr.allowArraysInMapKeys && Array.isArray(property) && property.flat().every((item) => ["string", "number", "boolean", "bigint"].includes(typeof item))) { return property.flat().toString(); } throw new Error(`Invalid property type for record: ${typeof property}`); } __name(asSafeString, "asSafeString"); var recordDefinition = /* @__PURE__ */ __name((id, highByte) => { let structure = read().map(asSafeString); let firstByte = id; if (highByte !== void 0) { id = id < 32 ? -((highByte << 5) + id) : (highByte << 5) + id; structure.highByte = highByte; } let existingStructure = currentStructures[id]; if (existingStructure && (existingStructure.isShared || sequentialMode)) { (currentStructures.restoreStructures || (currentStructures.restoreStructures = []))[id] = existingStructure; } currentStructures[id] = structure; structure.read = createStructureReader(structure, firstByte); return (structure.read0 || structure.read)(); }, "recordDefinition"); currentExtensions[0] = () => { }; currentExtensions[0].noBuffer = true; currentExtensions[66] = (data) => { let headLength = data.byteLength % 8 || 8; let head = BigInt(data[0] & 128 ? data[0] - 256 : data[0]); for (let i = 1; i < headLength; i++) { head <<= BigInt(8); head += BigInt(data[i]); } if (data.byteLength !== headLength) { let view = new DataView(data.buffer, data.byteOffset, data.byteLength); let decode2 = /* @__PURE__ */ __name((start, end) => { let length = end - start; if (length <= 40) { let out = view.getBigUint64(start); for (let i = start + 8; i < end; i += 8) { out <<= BigInt(64); out |= view.getBigUint64(i); } return out; } let middle = start + (length >> 4 << 3); let left = decode2(start, middle); let right = decode2(middle, end); return left << BigInt((end - middle) * 8) | right; }, "decode"); head = head << BigInt((view.byteLength - headLength) * 8) | decode2(headLength, view.byteLength); } return head; }; var errors = { Error, EvalError, RangeError, ReferenceError, SyntaxError, TypeError, URIError, AggregateError: typeof AggregateError === "function" ? AggregateError : null }; currentExtensions[101] = () => { let data = read(); if (!errors[data[0]]) { let error = Error(data[1], { cause: data[2] }); error.name = data[0]; return error; } return errors[data[0]](data[1], { cause: data[2] }); }; currentExtensions[105] = (data) => { if (currentUnpackr.structuredClone === false) throw new Error("Structured clone extension is disabled"); let id = dataView.getUint32(position$1 - 4); if (!referenceMap) referenceMap = /* @__PURE__ */ new Map(); let token = src[position$1]; let target2; if (token >= 144 && token < 160 || token == 220 || token == 221) target2 = []; else if (token >= 128 && token < 144 || token == 222 || token == 223) target2 = /* @__PURE__ */ new Map(); else if ((token >= 199 && token <= 201 || token >= 212 && token <= 216) && src[position$1 + 1] === 115) target2 = /* @__PURE__ */ new Set(); else target2 = {}; let refEntry = { target: target2 }; referenceMap.set(id, refEntry); let targetProperties = read(); if (!refEntry.used) { return refEntry.target = targetProperties; } else { Object.assign(target2, targetProperties); } if (target2 instanceof Map) for (let [k, v] of targetProperties.entries()) target2.set(k, v); if (target2 instanceof Set) for (let i of Array.from(targetProperties)) target2.add(i); return target2; }; currentExtensions[112] = (data) => { if (currentUnpackr.structuredClone === false) throw new Error("Structured clone extension is disabled"); let id = dataView.getUint32(position$1 - 4); let refEntry = referenceMap.get(id); refEntry.used = true; return refEntry.target; }; currentExtensions[115] = () => new Set(read()); var typedArrays = ["Int8", "Uint8", "Uint8Clamped", "Int16", "Uint16", "Int32", "Uint32", "Float32", "Float64", "BigInt64", "BigUint64"].map((type) => type + "Array"); var glbl = typeof globalThis === "object" ? globalThis : window; currentExtensions[116] = (data) => { let typeCode = data[0]; let buffer = Uint8Array.prototype.slice.call(data, 1).buffer; let typedArrayName = typedArrays[typeCode]; if (!typedArrayName) { if (typeCode === 16) return buffer; if (typeCode === 17) return new DataView(buffer); throw new Error("Could not find typed array for code " + typeCode); } return new glbl[typedArrayName](buffer); }; currentExtensions[120] = () => { let data = read(); return new RegExp(data[0], data[1]); }; var TEMP_BUNDLE = []; currentExtensions[98] = (data) => { let dataSize = (data[0] << 24) + (data[1] << 16) + (data[2] << 8) + data[3]; let dataPosition = position$1; position$1 += dataSize - data.length; bundledStrings$1 = TEMP_BUNDLE; bundledStrings$1 = [readOnlyJSString(), readOnlyJSString()]; bundledStrings$1.position0 = 0; bundledStrings$1.position1 = 0; bundledStrings$1.postBundlePosition = position$1; position$1 = dataPosition; return read(); }; currentExtensions[255] = (data) => { if (data.length == 4) return new Date((data[0] * 16777216 + (data[1] << 16) + (data[2] << 8) + data[3]) * 1e3); else if (data.length == 8) return new Date( ((data[0] << 22) + (data[1] << 14) + (data[2] << 6) + (data[3] >> 2)) / 1e6 + ((data[3] & 3) * 4294967296 + data[4] * 16777216 + (data[5] << 16) + (data[6] << 8) + data[7]) * 1e3 ); else if (data.length == 12) return new Date( ((data[0] << 24) + (data[1] << 16) + (data[2] << 8) + data[3]) / 1e6 + ((data[4] & 128 ? -281474976710656 : 0) + data[6] * 1099511627776 + data[7] * 4294967296 + data[8] * 16777216 + (data[9] << 16) + (data[10] << 8) + data[11]) * 1e3 ); else return /* @__PURE__ */ new Date("invalid"); }; function saveState(callback) { if (currentUnpackr && currentUnpackr._onSaveState) currentUnpackr._onSaveState(); let savedSrcEnd = srcEnd; let savedPosition = position$1; let savedStringPosition = stringPosition; let savedSrcStringStart = srcStringStart; let savedSrcStringEnd = srcStringEnd; let savedSrcString = srcString; let savedStrings = strings; let savedReferenceMap = referenceMap; let savedBundledStrings = bundledStrings$1; let savedSrc = new Uint8Array(src.slice(0, srcEnd)); let savedStructures = currentStructures; let savedStructuresContents = currentStructures.slice(0, currentStructures.length); let savedPackr = currentUnpackr; let savedSequentialMode = sequentialMode; let value = callback(); srcEnd = savedSrcEnd; position$1 = savedPosition; stringPosition = savedStringPosition; srcStringStart = savedSrcStringStart; srcStringEnd = savedSrcStringEnd; srcString = savedSrcString; strings = savedStrings; referenceMap = savedReferenceMap; bundledStrings$1 = savedBundledStrings; src = savedSrc; sequentialMode = savedSequentialMode; currentStructures = savedStructures; currentStructures.splice(0, currentStructures.length, ...savedStructuresContents); currentUnpackr = savedPackr; dataView = new DataView(src.buffer, src.byteOffset, src.byteLength); return value; } __name(saveState, "saveState"); function clearSource() { src = null; referenceMap = null; currentStructures = null; } __name(clearSource, "clearSource"); function addExtension$1(extension) { if (extension.unpack) currentExtensions[extension.type] = extension.unpack; else currentExtensions[extension.type] = extension; } __name(addExtension$1, "addExtension$1"); var mult10 = new Array(147); for (let i = 0; i < 256; i++) { mult10[i] = +("1e" + Math.floor(45.15 - i * 0.30103)); } var Decoder = Unpackr; var defaultUnpackr = new Unpackr({ useRecords: false }); var unpack = defaultUnpackr.unpack; var unpackMultiple = defaultUnpackr.unpackMultiple; var decode = defaultUnpackr.unpack; var FLOAT32_OPTIONS = { NEVER: 0, ALWAYS: 1, DECIMAL_ROUND: 3, DECIMAL_FIT: 4 }; var f32Array = new Float32Array(1); var u8Array = new Uint8Array(f32Array.buffer, 0, 4); function roundFloat32(float32Number) { f32Array[0] = float32Number; let multiplier = mult10[(u8Array[3] & 127) << 1 | u8Array[2] >> 7]; return (multiplier * float32Number + (float32Number > 0 ? 0.5 : -0.5) >> 0) / multiplier; } __name(roundFloat32, "roundFloat32"); Unpackr.SUPPORTS_STRUCT_HOOKS = true; var textEncoder; try { textEncoder = new TextEncoder(); } catch (error) { } var extensions; var extensionClasses; var hasNodeBuffer = typeof Buffer !== "undefined"; var ByteArrayAllocate = hasNodeBuffer ? function(length) { return Buffer.allocUnsafeSlow(length); } : Uint8Array; var ByteArray = hasNodeBuffer ? Buffer : Uint8Array; var MAX_BUFFER_SIZE = hasNodeBuffer ? 4294967296 : 2144337920; var target; var keysTarget; var targetView; var position = 0; var safeEnd; var bundledStrings = null; var MAX_BUNDLE_SIZE = 21760; var hasNonLatin = /[\u0080-\uFFFF]/; var RECORD_SYMBOL = Symbol("record-id"); var Packr = class extends Unpackr { static { __name(this, "Packr"); } constructor(options) { super(options); this.offset = 0; let start; let hasSharedUpdate; let structures; let referenceMap2; let encodeUtf8 = ByteArray.prototype.utf8Write ? function(string, position2) { return target.utf8Write(string, position2, target.byteLength - position2); } : textEncoder && textEncoder.encodeInto ? function(string, position2) { return textEncoder.encodeInto(string, target.subarray(position2)).written; } : false; let packr = this; if (!options) options = {}; let isSequential = options && options.sequential; let hasSharedStructures = options.structures || options.saveStructures; let maxSharedStructures = options.maxSharedStructures; if (maxSharedStructures == null) maxSharedStructures = hasSharedStructures ? 32 : 0; if (maxSharedStructures > 8160) throw new Error("Maximum maxSharedStructure is 8160"); if (options.structuredClone && options.moreTypes == void 0) { this.moreTypes = true; } let maxOwnStructures = options.maxOwnStructures; if (maxOwnStructures == null) maxOwnStructures = hasSharedStructures ? 32 : 64; if (!this.structures && options.useRecords != false) this.structures = []; let useTwoByteRecords = maxSharedStructures > 32 || maxOwnStructures + maxSharedStructures > 64; let sharedLimitId = maxSharedStructures + 64; let maxStructureId = maxSharedStructures + maxOwnStructures + 64; if (maxStructureId > 8256) { throw new Error("Maximum maxSharedStructure + maxOwnStructure is 8192"); } let recordIdsToRemove = []; let transitionsCount = 0; let serializationsSinceTransitionRebuild = 0; this.pack = this.encode = function(value, encodeOptions) { if (!target) { target = new ByteArrayAllocate(8192); targetView = target.dataView || (target.dataView = new DataView(target.buffer, 0, 8192)); position = 0; } safeEnd = target.length - 10; if (safeEnd - position < 2048) { target = new ByteArrayAllocate(target.length); targetView = target.dataView || (target.dataView = new DataView(target.buffer, 0, target.length)); safeEnd = target.length - 10; position = 0; } else position = position + 7 & 2147483640; start = position; if (encodeOptions & RESERVE_START_SPACE) position += encodeOptions & 255; referenceMap2 = packr.structuredClone ? /* @__PURE__ */ new Map() : null; if (packr.bundleStrings && typeof value !== "string") { bundledStrings = []; bundledStrings.size = Infinity; } else bundledStrings = null; structures = packr.structures; if (structures) { if (structures.uninitialized) structures = packr._mergeStructures(packr.getStructures()); let sharedLength = structures.sharedLength || 0; if (sharedLength > maxSharedStructures) { throw new Error("Shared structures is larger than maximum shared structures, try increasing maxSharedStructures to " + structures.sharedLength); } if (!structures.transitions) { structures.transitions = /* @__PURE__ */ Object.create(null); for (let i = 0; i < sharedLength; i++) { let keys = structures[i]; if (!keys) continue; let nextTransition, transition = structures.transitions; for (let j = 0, l2 = keys.length; j < l2; j++) { let key = keys[j]; nextTransition = transition[key]; if (!nextTransition) { nextTransition = transition[key] = /* @__PURE__ */ Object.create(null); } transition = nextTransition; } transition[RECORD_SYMBOL] = i + 64; } this.lastNamedStructuresLength = sharedLength; } if (!isSequential) { structures.nextId = sharedLength + 64; } } if (hasSharedUpdate) hasSharedUpdate = false; let encodingError; try { if (packr._writeStruct && value && typeof value === "object") { if (value.constructor === Object) writeStruct(value); else if (value.constructor !== Map && !Array.isArray(value) && !extensionClasses.some((extClass) => value instanceof extClass)) { writeStruct(value.toJSON ? value.toJSON() : value); } else pack2(value); } else pack2(value); let lastBundle = bundledStrings; if (bundledStrings) writeBundles(start, pack2, 0); if (referenceMap2 && referenceMap2.idsToInsert) { let idsToInsert = referenceMap2.idsToInsert.sort((a, b) => a.offset > b.offset ? 1 : -1); let i = idsToInsert.length; let incrementPosition = -1; while (lastBundle && i > 0) { let insertionPoint = idsToInsert[--i].offset + start; if (insertionPoint < lastBundle.stringsPosition + start && incrementPosition === -1) incrementPosition = 0; if (insertionPoint > lastBundle.position + start) { if (incrementPosition >= 0) incrementPosition += 6; } else { if (incrementPosition >= 0) { targetView.setUint32( lastBundle.position + start, targetView.getUint32(lastBundle.position + start) + incrementPosition ); incrementPosition = -1; } lastBundle = lastBundle.previous; i++; } } if (incrementPosition >= 0 && lastBundle) { targetView.setUint32( lastBundle.position + start, targetView.getUint32(lastBundle.position + start) + incrementPosition ); } position += idsToInsert.length * 6; if (position > safeEnd) makeRoom(position); packr.offset = position; let serialized = insertIds(target.subarray(start, position), idsToInsert); referenceMap2 = null; return serialized; } packr.offset = position; if (encodeOptions & REUSE_BUFFER_MODE) { target.start = start; target.end = position; return target; } return target.subarray(start, position); } catch (error) { encodingError = error; throw error; } finally { if (structures) { resetStructures(); if (hasSharedUpdate && packr.saveStructures) { let sharedLength = structures.sharedLength || 0; let returnBuffer = target.subarray(start, position); let newSharedData = (packr._prepareStructures || prepareStructures)(structures, packr); if (!encodingError) { if (packr.saveStructures(newSharedData, newSharedData.isCompatible) === false) { structures.uninitialized = true; return packr.pack(value, encodeOptions); } packr.lastNamedStructuresLength = sharedLength; if (target.length > 1073741824) target = null; return returnBuffer; } } } if (target.length > 1073741824) target = null; if (encodeOptions & RESET_BUFFER_MODE) position = start; } }; const resetStructures = /* @__PURE__ */ __name(() => { if (serializationsSinceTransitionRebuild < 10) serializationsSinceTransitionRebuild++; let sharedLength = structures.sharedLength || 0; if (structures.length > sharedLength && !isSequential) structures.length = sharedLength; if (transitionsCount > 1e4) { structures.transitions = null; serializationsSinceTransitionRebuild = 0; transitionsCount = 0; if (recordIdsToRemove.length > 0) recordIdsToRemove = []; } else if (recordIdsToRemove.length > 0 && !isSequential) { for (let i = 0, l2 = recordIdsToRemove.length; i < l2; i++) { recordIdsToRemove[i][RECORD_SYMBOL] = 0; } recordIdsToRemove = []; } }, "resetStructures"); const packArray = /* @__PURE__ */ __name((value) => { var length = value.length; if (length < 16) { target[position++] = 144 | length; } else if (length < 65536) { target[position++] = 220; target[position++] = length >> 8; target[position++] = length & 255; } else { target[position++] = 221; targetView.setUint32(position, length); position += 4; } for (let i = 0; i < length; i++) { pack2(value[i]); } }, "packArray"); const pack2 = /* @__PURE__ */ __name((value) => { if (position > safeEnd) target = makeRoom(position); var type = typeof value; var length; if (type === "string") { let strLength = value.length; if (bundledStrings && strLength >= 4 && strLength < 4096) { if ((bundledStrings.size += strLength) > MAX_BUNDLE_SIZE) { let extStart; let maxBytes2 = (bundledStrings[0] ? bundledStrings[0].length * 3 + bundledStrings[1].length : 0) + 10; if (position + maxBytes2 > safeEnd) target = makeRoom(position + maxBytes2); let lastBundle; if (bundledStrings.position) { lastBundle = bundledStrings; target[position] = 200; position += 3; target[position++] = 98; extStart = position - start; position += 4; writeBundles(start, pack2, 0); targetView.setUint16(extStart + start - 3, position - start - extStart); } else { target[position++] = 214; target[position++] = 98; extStart = position - start; position += 4; } bundledStrings = ["", ""]; bundledStrings.previous = lastBundle; bundledStrings.size = 0; bundledStrings.position = extStart; } let twoByte = hasNonLatin.test(value); bundledStrings[twoByte ? 0 : 1] += value; target[position++] = 193; pack2(twoByte ? -strLength : strLength); return; } let headerSize; if (strLength < 32) { headerSize = 1; } else if (strLength < 256) { headerSize = 2; } else if (strLength < 65536) { headerSize = 3; } else { headerSize = 5; } let maxBytes = strLength * 3; if (position + maxBytes > safeEnd) target = makeRoom(position + maxBytes); if (strLength < 64 || !encodeUtf8) { let i, c1, c2, strPosition = position + headerSize; for (i = 0; i < strLength; i++) { c1 = value.charCodeAt(i); if (c1 < 128) { target[strPosition++] = c1; } else if (c1 < 2048) { target[strPosition++] = c1 >> 6 | 192; target[strPosition++] = c1 & 63 | 128; } else if ((c1 & 64512) === 55296 && ((c2 = value.charCodeAt(i + 1)) & 64512) === 56320) { c1 = 65536 + ((c1 & 1023) << 10) + (c2 & 1023); i++; target[strPosition++] = c1 >> 18 | 240; target[strPosition++] = c1 >> 12 & 63 | 128; target[strPosition++] = c1 >> 6 & 63 | 128; target[strPosition++] = c1 & 63 | 128; } else { target[strPosition++] = c1 >> 12 | 224; target[strPosition++] = c1 >> 6 & 63 | 128; target[strPosition++] = c1 & 63 | 128; } } length = strPosition - position - headerSize; } else { length = encodeUtf8(value, position + headerSize); } if (length < 32) { target[position++] = 160 | length; } else if (length < 256) { if (headerSize < 2) { target.copyWithin(position + 2, position + 1, position + 1 + length); } target[position++] = 217; target[position++] = length; } else if (length < 65536) { if (headerSize < 3) { target.copyWithin(position + 3, position + 2, position + 2 + length); } target[position++] = 218; target[position++] = length >> 8; target[position++] = length & 255; } else { if (headerSize < 5) { target.copyWithin(position + 5, position + 3, position + 3 + length); } target[position++] = 219; targetView.setUint32(position, length); position += 4; } position += length; } else if (type === "number") { if (value >>> 0 === value) { if (value < 32 || value < 128 && this.useRecords === false || value < 64 && !this._writeStruct) { target[position++] = value; } else if (value < 256) { target[position++] = 204; target[position++] = value; } else if (value < 65536) { target[position++] = 205; target[position++] = value >> 8; target[position++] = value & 255; } else { target[position++] = 206; targetView.setUint32(position, value); position += 4; } } else if (value >> 0 === value) { if (value >= -32) { target[position++] = 256 + value; } else if (value >= -128) { target[position++] = 208; target[position++] = value + 256; } else if (value >= -32768) { target[position++] = 209; targetView.setInt16(position, value); position += 2; } else { target[position++] = 210; targetView.setInt32(position, value); position += 4; } } else { let useFloat32; if ((useFloat32 = this.useFloat32) > 0 && value < 4294967296 && value >= -2147483648) { target[position++] = 202; targetView.setFloat32(position, value); let xShifted; if (useFloat32 < 4 || // this checks for rounding of numbers that were encoded in 32-bit float to nearest significant decimal digit that could be preserved (xShifted = value * mult10[(target[position] & 127) << 1 | target[position + 1] >> 7]) >> 0 === xShifted) { position += 4; return; } else position--; } target[position++] = 203; targetView.setFloat64(position, value); position += 8; } } else if (type === "object" || type === "function") { if (!value) target[position++] = 192; else { if (referenceMap2) { let referee = referenceMap2.get(value); if (referee) { if (!referee.id) { let idsToInsert = referenceMap2.idsToInsert || (referenceMap2.idsToInsert = []); referee.id = idsToInsert.push(referee); } target[position++] = 214; target[position++] = 112; targetView.setUint32(position, referee.id); position += 4; return; } else referenceMap2.set(value, { offset: position - start }); } let constructor = value.constructor; if (constructor === Object) { writeObject(value); } else if (constructor === Array) { packArray(value); } else if (constructor === Map) { if (this.mapAsEmptyObject) target[position++] = 128; else { length = value.size; if (length < 16) { target[position++] = 128 | length; } else if (length < 65536) { target[position++] = 222; target[position++] = length >> 8; target[position++] = length & 255; } else { target[position++] = 223; targetView.setUint32(position, length); position += 4; } for (let [key, entryValue] of value) { pack2(key); pack2(entryValue); } } } else { for (let i = 0, l2 = extensions.length; i < l2; i++) { let extensionClass = extensionClasses[i]; if (value instanceof extensionClass) { let extension = extensions[i]; if (extension.write) { if (extension.type) { target[position++] = 212; target[position++] = extension.type; target[position++] = 0; } let writeResult = extension.write.call(this, value); if (writeResult === value) { if (Array.isArray(value)) { packArray(value); } else { writeObject(value); } } else { pack2(writeResult); } return; } let currentTarget = target; let currentTargetView = targetView; let currentPosition = position; target = null; let result; try { result = extension.pack.call(this, value, (size) => { target = currentTarget; currentTarget = null; position += size; if (position > safeEnd) makeRoom(position); return { target, targetView, position: position - size }; }, pack2); } finally { if (currentTarget) { target = currentTarget; targetView = currentTargetView; position = currentPosition; safeEnd = target.length - 10; } } if (result) { if (result.length + position > safeEnd) makeRoom(result.length + position); position = writeExtensionData(result, target, position, extension.type); } return; } } if (Array.isArray(value)) { packArray(value); } else { if (value.toJSON) { const json = value.toJSON(); if (json !== value) return pack2(json); } if (type === "function") return pack2(this.writeFunction && this.writeFunction(value)); writeObject(value); } } } } else if (type === "boolean") { target[position++] = value ? 195 : 194; } else if (type === "bigint") { if (value < 9223372036854776e3 && value >= -9223372036854776e3) { target[position++] = 211; targetView.setBigInt64(position, value); } else if (value < 18446744073709552e3 && value > 0) { target[position++] = 207; targetView.setBigUint64(position, value); } else { if (this.largeBigIntToFloat) { target[position++] = 203; targetView.setFloat64(position, Number(value)); } else if (this.largeBigIntToString) { return pack2(value.toString()); } else if (this.useBigIntExtension || this.moreTypes) { let empty = value < 0 ? BigInt(-1) : BigInt(0); let array; if (value >> BigInt(65536) === empty) { let mask = BigInt(18446744073709552e3) - BigInt(1); let chunks = []; while (true) { chunks.push(value & mask); if (value >> BigInt(63) === empty) break; value >>= BigInt(64); } array = new Uint8Array(new BigUint64Array(chunks).buffer); array.reverse(); } else { let invert = value < 0; let string = (invert ? ~value : value).toString(16); if (string.length % 2) { string = "0" + string; } else if (parseInt(string.charAt(0), 16) >= 8) { string = "00" + string; } if (hasNodeBuffer) { array = Buffer.from(string, "hex"); } else { array = new Uint8Array(string.length / 2); for (let i = 0; i < array.length; i++) { array[i] = parseInt(string.slice(i * 2, i * 2 + 2), 16); } } if (invert) { for (let i = 0; i < array.length; i++) array[i] = ~array[i]; } } if (array.length + position > safeEnd) makeRoom(array.length + position); position = writeExtensionData(array, target, position, 66); return; } else { throw new RangeError(value + " was too large to fit in MessagePack 64-bit integer format, use useBigIntExtension, or set largeBigIntToFloat to convert to float-64, or set largeBigIntToString to convert to string"); } } position += 8; } else if (type === "undefined") { if (this.encodeUndefinedAsNil) target[position++] = 192; else { target[position++] = 212; target[position++] = 0; target[position++] = 0; } } else { throw new Error("Unknown type: " + type); } }, "pack"); const writePlainObject = this.variableMapSize || this.coercibleKeyAsNumber || this.skipValues ? (object) => { let keys; if (this.skipValues) { keys = []; for (let key2 in object) { if ((typeof object.hasOwnProperty !== "function" || object.hasOwnProperty(key2)) && !this.skipValues.includes(object[key2])) keys.push(key2); } } else { keys = Object.keys(object); } let length = keys.length; if (length < 16) { target[position++] = 128 | length; } else if (length < 65536) { target[position++] = 222; target[position++] = length >> 8; target[position++] = length & 255; } else { target[position++] = 223; targetView.setUint32(position, length); position += 4; } let key; if (this.coercibleKeyAsNumber) { for (let i = 0; i < length; i++) { key = keys[i]; let num = Number(key); pack2(isNaN(num) ? key : num); pack2(object[key]); } } else { for (let i = 0; i < length; i++) { pack2(key = keys[i]); pack2(object[key]); } } } : (object) => { target[position++] = 222; let objectOffset = position - start; position += 2; let size = 0; for (let key in object) { if (typeof object.hasOwnProperty !== "function" || object.hasOwnProperty(key)) { pack2(key); pack2(object[key]); size++; } } if (size > 65535) { throw new Error('Object is too large to serialize with fast 16-bit map size, use the "variableMapSize" option to serialize this object'); } target[objectOffset++ + start] = size >> 8; target[objectOffset + start] = size & 255; }; const writeRecord = this.useRecords === false ? writePlainObject : options.progressiveRecords && !useTwoByteRecords ? ( // this is about 2% faster for highly stable structures, since it only requires one for-in loop (but much more expensive when new structure needs to be written) (object) => { let nextTransition, transition = structures.transitions || (structures.transitions = /* @__PURE__ */ Object.create(null)); let objectOffset = position++ - start; let wroteKeys; for (let key in object) { if (typeof object.hasOwnProperty !== "function" || object.hasOwnProperty(key)) { nextTransition = transition[key]; if (nextTransition) transition = nextTransition; else { let keys = Object.keys(object); let lastTransition = transition; transition = structures.transitions; let newTransitions = 0; for (let i = 0, l2 = keys.length; i < l2; i++) { let key2 = keys[i]; nextTransition = transition[key2]; if (!nextTransition) { nextTransition = transition[key2] = /* @__PURE__ */ Object.create(null); newTransitions++; } transition = nextTransition; } if (objectOffset + start + 1 == position) { position--; newRecord(transition, keys, newTransitions); } else insertNewRecord(transition, keys, objectOffset, newTransitions); wroteKeys = true; transition = lastTransition[key]; } pack2(object[key]); } } if (!wroteKeys) { let recordId = transition[RECORD_SYMBOL]; if (recordId) target[objectOffset + start] = recordId; else insertNewRecord(transition, Object.keys(object), objectOffset, 0); } } ) : (object) => { let nextTransition, transition = structures.transitions || (structures.transitions = /* @__PURE__ */ Object.create(null)); let newTransitions = 0; for (let key in object) if (typeof object.hasOwnProperty !== "function" || object.hasOwnProperty(key)) { nextTransition = transition[key]; if (!nextTransition) { nextTransition = transition[key] = /* @__PURE__ */ Object.create(null); newTransitions++; } transition = nextTransition; } let recordId = transition[RECORD_SYMBOL]; if (recordId) { if (recordId >= 96 && useTwoByteRecords) { target[position++] = ((recordId -= 96) & 31) + 96; target[position++] = recordId >> 5; } else target[position++] = recordId; } else { newRecord(transition, transition.__keys__ || Object.keys(object), newTransitions); } for (let key in object) if (typeof object.hasOwnProperty !== "function" || object.hasOwnProperty(key)) { pack2(object[key]); } }; const checkUseRecords = typeof this.useRecords == "function" && this.useRecords; const writeObject = checkUseRecords ? (object) => { checkUseRecords(object) ? writeRecord(object) : writePlainObject(object); } : writeRecord; const writeStruct = /* @__PURE__ */ __name((object) => { let newPosition = packr._writeStruct(object, target, start, position, structures, makeRoom, (value, newPosition2, notifySharedUpdate) => { if (notifySharedUpdate) return hasSharedUpdate = true; position = newPosition2; let startTarget = target; pack2(value); resetStructures(); if (startTarget !== target) { return { position, targetView, target }; } return position; }); if (newPosition === 0) return writeObject(object); position = newPosition; }, "writeStruct"); const makeRoom = /* @__PURE__ */ __name((end) => { let newSize; if (end > 16777216) { if (end - start > MAX_BUFFER_SIZE) throw new Error("Packed buffer would be larger than maximum buffer size"); newSize = Math.min( MAX_BUFFER_SIZE, Math.round(Math.max((end - start) * (end > 67108864 ? 1.25 : 2), 4194304) / 4096) * 4096 ); } else newSize = (Math.max(end - start << 2, target.length - 1) >> 12) + 1 << 12; let newBuffer = new ByteArrayAllocate(newSize); targetView = newBuffer.dataView || (newBuffer.dataView = new DataView(newBuffer.buffer, 0, newSize)); end = Math.min(end, target.length); if (target.copy) target.copy(newBuffer, 0, start, end); else newBuffer.set(target.slice(start, end)); position -= start; start = 0; safeEnd = newBuffer.length - 10; return target = newBuffer; }, "makeRoom"); const newRecord = /* @__PURE__ */ __name((transition, keys, newTransitions) => { let recordId = structures.nextId; if (!recordId) recordId = 64; if (recordId < sharedLimitId && this.shouldShareStructure && !this.shouldShareStructure(keys)) { recordId = structures.nextOwnId; if (!(recordId < maxStructureId)) recordId = sharedLimitId; structures.nextOwnId = recordId + 1; } else { if (recordId >= maxStructureId) recordId = sharedLimitId; structures.nextId = recordId + 1; } let highByte = keys.highByte = recordId >= 96 && useTwoByteRecords ? recordId - 96 >> 5 : -1; transition[RECORD_SYMBOL] = recordId; transition.__keys__ = keys; structures[recordId - 64] = keys; if (recordId < sharedLimitId) { keys.isShared = true; structures.sharedLength = recordId - 63; hasSharedUpdate = true; if (highByte >= 0) { target[position++] = (recordId & 31) + 96; target[position++] = highByte; } else { target[position++] = recordId; } } else { if (highByte >= 0) { target[position++] = 213; target[position++] = 114; target[position++] = (recordId & 31) + 96; target[position++] = highByte; } else { target[position++] = 212; target[position++] = 114; target[position++] = recordId; } if (newTransitions) transitionsCount += serializationsSinceTransitionRebuild * newTransitions; if (recordIdsToRemove.length >= maxOwnStructures) recordIdsToRemove.shift()[RECORD_SYMBOL] = 0; recordIdsToRemove.push(transition); pack2(keys); } }, "newRecord"); const insertNewRecord = /* @__PURE__ */ __name((transition, keys, insertionOffset, newTransitions) => { let mainTarget = target; let mainPosition = position; let mainSafeEnd = safeEnd; let mainStart = start; target = keysTarget; position = 0; start = 0; if (!target) keysTarget = target = new ByteArrayAllocate(8192); safeEnd = target.length - 10; newRecord(transition, keys, newTransitions); keysTarget = target; let keysPosition = position; target = mainTarget; position = mainPosition; safeEnd = mainSafeEnd; start = mainStart; if (keysPosition > 1) { let newEnd = position + keysPosition - 1; if (newEnd > safeEnd) makeRoom(newEnd); let insertionPosition = insertionOffset + start; target.copyWithin(insertionPosition + keysPosition, insertionPosition + 1, position); target.set(keysTarget.slice(0, keysPosition), insertionPosition); position = newEnd; } else { target[insertionOffset + start] = keysTarget[0]; } }, "insertNewRecord"); } useBuffer(buffer) { target = buffer; target.dataView || (target.dataView = new DataView(target.buffer, target.byteOffset, target.byteLength)); targetView = target.dataView; position = 0; } set position(value) { position = value; } get position() { return position; } clearSharedData() { if (this.structures) this.structures = []; if (this.typedStructs) this.typedStructs = []; } }; extensionClasses = [Date, Set, Error, RegExp, ArrayBuffer, Object.getPrototypeOf(Uint8Array.prototype).constructor, DataView, C1Type]; extensions = [{ pack(date, allocateForWrite, pack2) { let seconds = date.getTime() / 1e3; if ((this.useTimestamp32 || date.getMilliseconds() === 0) && seconds >= 0 && seconds < 4294967296) { let { target: target2, targetView: targetView2, position: position2 } = allocateForWrite(6); target2[position2++] = 214; target2[position2++] = 255; targetView2.setUint32(position2, seconds); } else if (seconds > 0 && seconds < 4294967296) { let { target: target2, targetView: targetView2, position: position2 } = allocateForWrite(10); target2[position2++] = 215; target2[position2++] = 255; targetView2.setUint32(position2, date.getMilliseconds() * 4e6 + (seconds / 1e3 / 4294967296 >> 0)); targetView2.setUint32(position2 + 4, seconds); } else if (isNaN(seconds)) { if (this.onInvalidDate) { allocateForWrite(0); return pack2(this.onInvalidDate()); } let { target: target2, targetView: targetView2, position: position2 } = allocateForWrite(3); target2[position2++] = 212; target2[position2++] = 255; target2[position2++] = 255; } else { let { target: target2, targetView: targetView2, position: position2 } = allocateForWrite(15); target2[position2++] = 199; target2[position2++] = 12; target2[position2++] = 255; targetView2.setUint32(position2, date.getMilliseconds() * 1e6); targetView2.setBigInt64(position2 + 4, BigInt(Math.floor(seconds))); } } }, { pack(set, allocateForWrite, pack2) { if (this.setAsEmptyObject) { allocateForWrite(0); return pack2({}); } let array = Array.from(set); let { target: target2, position: position2 } = allocateForWrite(this.moreTypes ? 3 : 0); if (this.moreTypes) { target2[position2++] = 212; target2[position2++] = 115; target2[position2++] = 0; } pack2(array); } }, { pack(error, allocateForWrite, pack2) { let { target: target2, position: position2 } = allocateForWrite(this.moreTypes ? 3 : 0); if (this.moreTypes) { target2[position2++] = 212; target2[position2++] = 101; target2[position2++] = 0; } pack2([error.name, error.message, error.cause]); } }, { pack(regex, allocateForWrite, pack2) { let { target: target2, position: position2 } = allocateForWrite(this.moreTypes ? 3 : 0); if (this.moreTypes) { target2[position2++] = 212; target2[position2++] = 120; target2[position2++] = 0; } pack2([regex.source, regex.flags]); } }, { pack(arrayBuffer, allocateForWrite) { if (this.moreTypes) writeExtBuffer(arrayBuffer, 16, allocateForWrite); else writeBuffer(hasNodeBuffer ? Buffer.from(arrayBuffer) : new Uint8Array(arrayBuffer), allocateForWrite); } }, { pack(typedArray, allocateForWrite) { let constructor = typedArray.constructor; if (constructor !== ByteArray && this.moreTypes) writeExtBuffer(typedArray, typedArrays.indexOf(constructor.name), allocateForWrite); else writeBuffer(typedArray, allocateForWrite); } }, { pack(arrayBuffer, allocateForWrite) { if (this.moreTypes) writeExtBuffer(arrayBuffer, 17, allocateForWrite); else writeBuffer(hasNodeBuffer ? Buffer.from(arrayBuffer) : new Uint8Array(arrayBuffer), allocateForWrite); } }, { pack(c1, allocateForWrite) { let { target: target2, position: position2 } = allocateForWrite(1); target2[position2] = 193; } }]; function writeExtBuffer(typedArray, type, allocateForWrite, encode2) { let length = typedArray.byteLength; if (length + 1 < 256) { var { target: target2, position: position2 } = allocateForWrite(4 + length); target2[position2++] = 199; target2[position2++] = length + 1; } else if (length + 1 < 65536) { var { target: target2, position: position2 } = allocateForWrite(5 + length); target2[position2++] = 200; target2[position2++] = length + 1 >> 8; target2[position2++] = length + 1 & 255; } else { var { target: target2, position: position2, targetView: targetView2 } = allocateForWrite(7 + length); target2[position2++] = 201; targetView2.setUint32(position2, length + 1); position2 += 4; } target2[position2++] = 116; target2[position2++] = type; if (!typedArray.buffer) typedArray = new Uint8Array(typedArray); target2.set(new Uint8Array(typedArray.buffer, typedArray.byteOffset, typedArray.byteLength), position2); } __name(writeExtBuffer, "writeExtBuffer"); function writeBuffer(buffer, allocateForWrite) { let length = buffer.byteLength; var target2, position2; if (length < 256) { var { target: target2, position: position2 } = allocateForWrite(length + 2); target2[position2++] = 196; target2[position2++] = length; } else if (length < 65536) { var { target: target2, position: position2 } = allocateForWrite(length + 3); target2[position2++] = 197; target2[position2++] = length >> 8; target2[position2++] = length & 255; } else { var { target: target2, position: position2, targetView: targetView2 } = allocateForWrite(length + 5); target2[position2++] = 198; targetView2.setUint32(position2, length); position2 += 4; } target2.set(buffer, position2); } __name(writeBuffer, "writeBuffer"); function writeExtensionData(result, target2, position2, type) { let length = result.length; switch (length) { case 1: target2[position2++] = 212; break; case 2: target2[position2++] = 213; break; case 4: target2[position2++] = 214; break; case 8: target2[position2++] = 215; break; case 16: target2[position2++] = 216; break; default: if (length < 256) { target2[position2++] = 199; target2[position2++] = length; } else if (length < 65536) { target2[position2++] = 200; target2[position2++] = length >> 8; target2[position2++] = length & 255; } else { target2[position2++] = 201; target2[position2++] = length >> 24; target2[position2++] = length >> 16 & 255; target2[position2++] = length >> 8 & 255; target2[position2++] = length & 255; } } target2[position2++] = type; target2.set(result, position2); position2 += length; return position2; } __name(writeExtensionData, "writeExtensionData"); function insertIds(serialized, idsToInsert) { let nextId; let distanceToMove = idsToInsert.length * 6; let lastEnd = serialized.length - distanceToMove; while (nextId = idsToInsert.pop()) { let offset = nextId.offset; let id = nextId.id; serialized.copyWithin(offset + distanceToMove, offset, lastEnd); distanceToMove -= 6; let position2 = offset + distanceToMove; serialized[position2++] = 214; serialized[position2++] = 105; serialized[position2++] = id >> 24; serialized[position2++] = id >> 16 & 255; serialized[position2++] = id >> 8 & 255; serialized[position2++] = id & 255; lastEnd = offset; } return serialized; } __name(insertIds, "insertIds"); function writeBundles(start, pack2, incrementPosition) { if (bundledStrings.length > 0) { targetView.setUint32(bundledStrings.position + start, position + incrementPosition - bundledStrings.position - start); bundledStrings.stringsPosition = position - start; let writeStrings = bundledStrings; bundledStrings = null; pack2(writeStrings[0]); pack2(writeStrings[1]); } } __name(writeBundles, "writeBundles"); function addExtension(extension) { if (extension.Class) { if (!extension.pack && !extension.write) throw new Error("Extension has no pack or write function"); if (extension.pack && !extension.type) throw new Error("Extension has no type (numeric code to identify the extension)"); extensionClasses.unshift(extension.Class); extensions.unshift(extension); } addExtension$1(extension); } __name(addExtension, "addExtension"); function prepareStructures(structures, packr) { structures.isCompatible = (existingStructures) => { let compatible = !existingStructures || (packr.lastNamedStructuresLength || 0) === existingStructures.length; if (!compatible) packr._mergeStructures(existingStructures); return compatible; }; return structures; } __name(prepareStructures, "prepareStructures"); Packr.SUPPORTS_STRUCT_HOOKS = true; var defaultPackr = new Packr({ useRecords: false }); var pack = defaultPackr.pack; var encode = defaultPackr.pack; var Encoder = Packr; var { NEVER, ALWAYS, DECIMAL_ROUND, DECIMAL_FIT } = FLOAT32_OPTIONS; var REUSE_BUFFER_MODE = 512; var RESET_BUFFER_MODE = 1024; var RESERVE_START_SPACE = 2048; var PackrStream = class extends stream.Transform { static { __name(this, "PackrStream"); } constructor(options) { if (!options) options = {}; options.writableObjectMode = true; super(options); options.sequential = true; this.packr = options.packr || new Packr(options); } _transform(value, encoding, callback) { this.push(this.packr.pack(value)); callback(); } }; var UnpackrStream = class extends stream.Transform { static { __name(this, "UnpackrStream"); } constructor(options) { if (!options) options = {}; options.objectMode = true; super(options); options.structures = []; this.maxIncompleteBufferSize = options.maxIncompleteBufferSize !== void 0 ? options.maxIncompleteBufferSize : 67108864; this.unpackr = options.unpackr || new Unpackr(options); } _transform(chunk, encoding, callback) { if (this.incompleteBuffer) { chunk = Buffer.concat([this.incompleteBuffer, chunk]); this.incompleteBuffer = null; } let values; try { values = this.unpackr.unpackMultiple(chunk); } catch (error) { if (error.incomplete) { let incompleteBuffer = chunk.slice(error.lastPosition); if (incompleteBuffer.length > this.maxIncompleteBufferSize) { this.incompleteBuffer = null; return callback(new Error("Maximum incomplete buffer size exceeded")); } this.incompleteBuffer = incompleteBuffer; values = error.values; } else { return callback(error); } } for (let value of values || []) { if (value === null) value = this.getNullValue(); this.push(value); } callback(); } getNullValue() { return Symbol.for(null); } }; function packIter(objectIterator, options = {}) { if (!objectIterator || typeof objectIterator !== "object") { throw new Error("first argument must be an Iterable, Async Iterable, or a Promise for an Async Iterable"); } else if (typeof objectIterator[Symbol.iterator] === "function") { return packIterSync(objectIterator, options); } else if (typeof objectIterator.then === "function" || typeof objectIterator[Symbol.asyncIterator] === "function") { return packIterAsync(objectIterator, options); } else { throw new Error("first argument must be an Iterable, Async Iterable, Iterator, Async Iterator, or a Promise"); } } __name(packIter, "packIter"); function* packIterSync(objectIterator, options) { const packr = new Packr(options); for (const value of objectIterator) { yield packr.pack(value); } } __name(packIterSync, "packIterSync"); async function* packIterAsync(objectIterator, options) { const packr = new Packr(options); for await (const value of objectIterator) { yield packr.pack(value); } } __name(packIterAsync, "packIterAsync"); function unpackIter(bufferIterator, options = {}) { if (!bufferIterator || typeof bufferIterator !== "object") { throw new Error("first argument must be an Iterable, Async Iterable, Iterator, Async Iterator, or a promise"); } const unpackr = new Unpackr(options); let incomplete; const parser = /* @__PURE__ */ __name((chunk) => { let yields; if (incomplete) { chunk = Buffer.concat([incomplete, chunk]); incomplete = void 0; } try { yields = unpackr.unpackMultiple(chunk); } catch (err) { if (err.incomplete) { incomplete = chunk.slice(err.lastPosition); yields = err.values; } else { throw err; } } return yields; }, "parser"); if (typeof bufferIterator[Symbol.iterator] === "function") { return (/* @__PURE__ */ __name((function* iter() { for (const value of bufferIterator) { yield* parser(value); } }), "iter"))(); } else if (typeof bufferIterator[Symbol.asyncIterator] === "function") { return (/* @__PURE__ */ __name((async function* iter() { for await (const value of bufferIterator) { yield* parser(value); } }), "iter"))(); } } __name(unpackIter, "unpackIter"); var decodeIter = unpackIter; var encodeIter = packIter; var useRecords = false; var mapsAsObjects = true; var nativeAccelerationDisabled = process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED !== void 0 && process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED.toLowerCase() === "true"; if (!nativeAccelerationDisabled) { let extractor; try { if (typeof require == "function") extractor = require_msgpackr_extract(); else extractor = module$1.createRequire(typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("node.cjs", document.baseURI).href)("msgpackr-extract"); if (extractor) setExtractor(extractor.extractStrings); } catch (error) { } } exports2.ALWAYS = ALWAYS; exports2.C1 = C1; exports2.DECIMAL_FIT = DECIMAL_FIT; exports2.DECIMAL_ROUND = DECIMAL_ROUND; exports2.Decoder = Decoder; exports2.DecoderStream = UnpackrStream; exports2.Encoder = Encoder; exports2.EncoderStream = PackrStream; exports2.FLOAT32_OPTIONS = FLOAT32_OPTIONS; exports2.NEVER = NEVER; exports2.Packr = Packr; exports2.PackrStream = PackrStream; exports2.RESERVE_START_SPACE = RESERVE_START_SPACE; exports2.RESET_BUFFER_MODE = RESET_BUFFER_MODE; exports2.REUSE_BUFFER_MODE = REUSE_BUFFER_MODE; exports2.Unpackr = Unpackr; exports2.UnpackrStream = UnpackrStream; exports2.addExtension = addExtension; exports2.clearSource = clearSource; exports2.decode = decode; exports2.decodeIter = decodeIter; exports2.encode = encode; exports2.encodeIter = encodeIter; exports2.mapsAsObjects = mapsAsObjects; exports2.pack = pack; exports2.roundFloat32 = roundFloat32; exports2.unpack = unpack; exports2.unpackMultiple = unpackMultiple; exports2.useRecords = useRecords; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/version.js var require_version = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/version.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.version = void 0; exports2.version = "5.81.4"; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/scripts.js var require_scripts = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/scripts.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Scripts = void 0; exports2.raw2NextJobData = raw2NextJobData; var msgpackr_1 = require_node4(); var packer = new msgpackr_1.Packr({ useRecords: false, encodeUndefinedAsNil: true }); var pack = packer.pack; var enums_1 = require_enums3(); var utils_1 = require_utils16(); var version_1 = require_version(); var errors_1 = require_errors3(); var GET_JOBS_MAX_BACKFILL_ITERATIONS = 5; var Scripts = class { static { __name(this, "Scripts"); } constructor(queue) { this.queue = queue; this.version = version_1.version; const queueKeys = this.queue.keys; this.moveToFinishedKeys = [ queueKeys.wait, queueKeys.active, queueKeys.prioritized, queueKeys.events, queueKeys.stalled, queueKeys.limiter, queueKeys.delayed, queueKeys.paused, queueKeys.meta, queueKeys.pc, void 0, void 0, void 0, void 0 ]; } /** * Executes a registered Lua script on the given Redis client, resolving the * versioned command name (e.g. `addJob:`) so the script * belonging to the current BullMQ version is invoked. * * @param client - The Redis client or pipeline/transaction on which to run the command. * @param commandName - The base name of the Lua script (without version suffix). * @param args - Positional arguments forwarded to the Lua script (keys followed by argv). * @returns The raw result produced by the Lua script. * * @private */ execCommand(client, commandName, args) { const commandNameWithVersion = `${commandName}:${this.version}`; return client.runCommand(commandNameWithVersion, args); } /** * Checks whether a job with the given id is present in a Redis list * (e.g. the wait or active list). Uses `LPOS` on Redis \>= 6.0.6, and * falls back to a Lua script on older versions. * * @param listKey - The Redis list key to search. * @param jobId - The job id to look up in the list. * @returns `true` if the job is found in the list, `false` otherwise. * * @private */ async isJobInList(listKey, jobId) { const client = await this.queue.client; let result; if ((0, utils_1.isRedisVersionLowerThan)(this.queue.redisVersion, "6.0.6", this.queue.databaseType)) { result = await this.execCommand(client, "isJobInList", [listKey, jobId]); } else { result = await client.lpos(listKey, jobId); } return Number.isInteger(result); } addDelayedJobArgs(job, encodedOpts, args) { const queueKeys = this.queue.keys; const keys = [ queueKeys.marker, queueKeys.meta, queueKeys.id, queueKeys.delayed, queueKeys.completed, queueKeys.events ]; keys.push(pack(args), job.data, encodedOpts); return keys; } addDelayedJob(client, job, encodedOpts, args) { const argsList = this.addDelayedJobArgs(job, encodedOpts, args); return this.execCommand(client, "addDelayedJob", argsList); } addPrioritizedJobArgs(job, encodedOpts, args) { const queueKeys = this.queue.keys; const keys = [ queueKeys.marker, queueKeys.meta, queueKeys.id, queueKeys.prioritized, queueKeys.delayed, queueKeys.completed, queueKeys.active, queueKeys.events, queueKeys.pc ]; keys.push(pack(args), job.data, encodedOpts); return keys; } addPrioritizedJob(client, job, encodedOpts, args) { const argsList = this.addPrioritizedJobArgs(job, encodedOpts, args); return this.execCommand(client, "addPrioritizedJob", argsList); } addParentJobArgs(job, encodedOpts, args) { const queueKeys = this.queue.keys; const keys = [ queueKeys.meta, queueKeys.id, queueKeys.delayed, queueKeys["waiting-children"], queueKeys.completed, queueKeys.events ]; keys.push(pack(args), job.data, encodedOpts); return keys; } addParentJob(client, job, encodedOpts, args) { const argsList = this.addParentJobArgs(job, encodedOpts, args); return this.execCommand(client, "addParentJob", argsList); } addStandardJobArgs(job, encodedOpts, args) { const queueKeys = this.queue.keys; const keys = [ queueKeys.wait, queueKeys.paused, queueKeys.meta, queueKeys.id, queueKeys.completed, queueKeys.delayed, queueKeys.active, queueKeys.events, queueKeys.marker ]; keys.push(pack(args), job.data, encodedOpts); return keys; } addStandardJob(client, job, encodedOpts, args) { const argsList = this.addStandardJobArgs(job, encodedOpts, args); return this.execCommand(client, "addStandardJob", argsList); } async addJob(client, job, opts, jobId, parentKeyOpts = {}) { const queueKeys = this.queue.keys; const parent = job.parent; const args = [ queueKeys[""], typeof jobId !== "undefined" ? jobId : "", job.name, job.timestamp, job.parentKey || null, parentKeyOpts.parentDependenciesKey || null, parent, job.repeatJobKey, job.deduplicationId ? `${queueKeys.de}:${job.deduplicationId}` : null ]; let encodedOpts; if (opts.repeat) { const repeat = Object.assign({}, opts.repeat); if (repeat.startDate) { repeat.startDate = +new Date(repeat.startDate); } if (repeat.endDate) { repeat.endDate = +new Date(repeat.endDate); } encodedOpts = pack(Object.assign(Object.assign({}, opts), { repeat })); } else { encodedOpts = pack(opts); } let result; if (parentKeyOpts.addToWaitingChildren) { result = await this.addParentJob(client, job, encodedOpts, args); } else if (typeof opts.delay == "number" && opts.delay > 0) { result = await this.addDelayedJob(client, job, encodedOpts, args); } else if (opts.priority) { result = await this.addPrioritizedJob(client, job, encodedOpts, args); } else { result = await this.addStandardJob(client, job, encodedOpts, args); } if (result < 0) { throw this.finishedErrors({ code: result, parentKey: parentKeyOpts.parentKey, command: "addJob" }); } return result; } pauseArgs(pause) { let src = "wait", dst = "paused"; if (!pause) { src = "paused"; dst = "wait"; } const keys = [src, dst, "meta", "prioritized"].map((name) => this.queue.toKey(name)); keys.push(this.queue.keys.events, this.queue.keys.delayed, this.queue.keys.marker); const args = [pause ? "paused" : "resumed"]; return keys.concat(args); } async pause(pause) { const client = await this.queue.client; const args = this.pauseArgs(pause); return this.execCommand(client, "pause", args); } addRepeatableJobArgs(customKey, nextMillis, opts, legacyCustomKey) { const queueKeys = this.queue.keys; const keys = [ queueKeys.repeat, queueKeys.delayed ]; const args = [ nextMillis, pack(opts), legacyCustomKey, customKey, queueKeys[""] ]; return keys.concat(args); } /** * Adds (or updates) a repeatable job entry in the repeat zset and stores * its repeat options under the corresponding repeat hash. If a previous * delayed iteration for this repeat key exists, it is cleaned up so the * next iteration can be scheduled separately when the job is created. * * @param customKey - The current repeat key identifying this repeatable job. * @param nextMillis - The timestamp (ms since epoch) for the next run. * @param opts - Repeatable options (cron/every pattern, tz, limit, etc.). * @param legacyCustomKey - The previous/legacy repeat key, used for migration and cleanup. * @returns The repeatable job key that was stored (either `customKey` or, * for backwards-compatible entries, `legacyCustomKey`). The actual delayed * iteration is scheduled later when the job for `nextMillis` is created. * * @private */ async addRepeatableJob(customKey, nextMillis, opts, legacyCustomKey) { const client = await this.queue.client; const args = this.addRepeatableJobArgs(customKey, nextMillis, opts, legacyCustomKey); return this.execCommand(client, "addRepeatableJob", args); } /** * Removes a deduplication key from Redis so that a new job with the same * deduplication id can be enqueued again. The key is only removed if it * currently maps to the provided `jobId`, preventing races between * producers and finishing jobs. * * @param deduplicationId - The deduplication id whose key should be cleared. * @param jobId - The id of the job that currently owns the dedup key. * @returns `1` if the key was removed, `0` otherwise. * * @private */ async removeDeduplicationKey(deduplicationId, jobId) { const client = await this.queue.client; const queueKeys = this.queue.keys; const keys = [`${queueKeys.de}:${deduplicationId}`]; const args = [jobId]; return this.execCommand(client, "removeDeduplicationKey", keys.concat(args)); } /** * Registers a job scheduler and enqueues its next delayed iteration. * The scheduler stores the template data/options so subsequent iterations * can be produced automatically based on the repeat options. * * @param jobSchedulerId - The id that uniquely identifies this scheduler. * @param nextMillis - Timestamp (ms since epoch) for the next iteration. * @param templateData - Serialized template data reused for every iteration. * @param templateOpts - Redis-encoded job options applied to every iteration. * @param opts - Repeat options describing the scheduling pattern. * @param delayedJobOpts - Options applied to the next delayed job that is produced. * @param producerId - Optional id of the job that produced this iteration, used to prevent duplicates. * @returns A tuple of `[jobId, delay]`, where `delay` is the computed delay in milliseconds * for the next iteration. When `delay` is `0`, the job is enqueued immediately. * @throws An error resolved from `finishedErrors` when the Lua script returns a negative status code. * * @private */ async addJobScheduler(jobSchedulerId, nextMillis, templateData, templateOpts, opts, delayedJobOpts, producerId) { const client = await this.queue.client; const queueKeys = this.queue.keys; const keys = [ queueKeys.repeat, queueKeys.delayed, queueKeys.wait, queueKeys.paused, queueKeys.meta, queueKeys.prioritized, queueKeys.marker, queueKeys.id, queueKeys.events, queueKeys.pc, queueKeys.active ]; const args = [ nextMillis, pack(opts), jobSchedulerId, templateData, pack(templateOpts), pack(delayedJobOpts), Date.now(), queueKeys[""], producerId ? this.queue.toKey(producerId) : "" ]; const result = await this.execCommand(client, "addJobScheduler", keys.concat(args)); if (typeof result === "number" && result < 0) { throw this.finishedErrors({ code: result, command: "addJobScheduler" }); } return result; } async updateRepeatableJobMillis(client, customKey, nextMillis, legacyCustomKey) { const args = [ this.queue.keys.repeat, nextMillis, customKey, legacyCustomKey ]; return this.execCommand(client, "updateRepeatableJobMillis", args); } async updateJobSchedulerNextMillis(jobSchedulerId, nextMillis, templateData, delayedJobOpts, producerId) { const client = await this.queue.client; const queueKeys = this.queue.keys; const keys = [ queueKeys.repeat, queueKeys.delayed, queueKeys.wait, queueKeys.paused, queueKeys.meta, queueKeys.prioritized, queueKeys.marker, queueKeys.id, queueKeys.events, queueKeys.pc, producerId ? this.queue.toKey(producerId) : "", queueKeys.active ]; const args = [ nextMillis, jobSchedulerId, templateData, pack(delayedJobOpts), Date.now(), queueKeys[""], producerId ]; return this.execCommand(client, "updateJobScheduler", keys.concat(args)); } removeRepeatableArgs(legacyRepeatJobId, repeatConcatOptions, repeatJobKey) { const queueKeys = this.queue.keys; const keys = [queueKeys.repeat, queueKeys.delayed, queueKeys.events]; const args = [ legacyRepeatJobId, this.getRepeatConcatOptions(repeatConcatOptions, repeatJobKey), repeatJobKey, queueKeys[""] ]; return keys.concat(args); } // TODO: remove this check in next breaking change getRepeatConcatOptions(repeatConcatOptions, repeatJobKey) { if (repeatJobKey && repeatJobKey.split(":").length > 2) { return repeatJobKey; } return repeatConcatOptions; } async removeRepeatable(legacyRepeatJobId, repeatConcatOptions, repeatJobKey) { const client = await this.queue.client; const args = this.removeRepeatableArgs(legacyRepeatJobId, repeatConcatOptions, repeatJobKey); return this.execCommand(client, "removeRepeatable", args); } async removeJobScheduler(jobSchedulerId) { const client = await this.queue.client; const queueKeys = this.queue.keys; const keys = [queueKeys.repeat, queueKeys.delayed, queueKeys.events]; const args = [jobSchedulerId, queueKeys[""]]; return this.execCommand(client, "removeJobScheduler", keys.concat(args)); } removeArgs(jobId, removeChildren) { const keys = [jobId, "repeat"].map((name) => this.queue.toKey(name)); const args = [jobId, removeChildren ? 1 : 0, this.queue.toKey("")]; return keys.concat(args); } async remove(jobId, removeChildren) { const client = await this.queue.client; const args = this.removeArgs(jobId, removeChildren); const result = await this.execCommand(client, "removeJob", args); if (result < 0) { throw this.finishedErrors({ code: result, jobId, command: "removeJob" }); } return result; } async removeUnprocessedChildren(jobId) { const client = await this.queue.client; const args = [ this.queue.toKey(jobId), this.queue.keys.meta, this.queue.toKey(""), jobId ]; await this.execCommand(client, "removeUnprocessedChildren", args); } async extendLock(jobId, token, duration, client) { client = client || await this.queue.client; const args = [ this.queue.toKey(jobId) + ":lock", this.queue.keys.stalled, token, duration, jobId ]; return this.execCommand(client, "extendLock", args); } async extendLocks(jobIds, tokens, duration) { const client = await this.queue.client; const args = [ this.queue.keys.stalled, this.queue.toKey(""), pack(tokens), pack(jobIds), duration ]; return this.execCommand(client, "extendLocks", args); } async updateData(job, data) { const client = await this.queue.client; const keys = [this.queue.toKey(job.id)]; const dataJson = JSON.stringify(data); const result = await this.execCommand(client, "updateData", keys.concat([dataJson])); if (result < 0) { throw this.finishedErrors({ code: result, jobId: job.id, command: "updateData" }); } } async updateProgress(jobId, progress) { const client = await this.queue.client; const keys = [ this.queue.toKey(jobId), this.queue.keys.events, this.queue.keys.meta ]; const progressJson = JSON.stringify(progress); const result = await this.execCommand(client, "updateProgress", keys.concat([jobId, progressJson])); if (result < 0) { throw this.finishedErrors({ code: result, jobId, command: "updateProgress" }); } } async addLog(jobId, logRow, keepLogs) { const client = await this.queue.client; const keys = [ this.queue.toKey(jobId), this.queue.toKey(jobId) + ":logs" ]; const result = await this.execCommand(client, "addLog", keys.concat([jobId, logRow, keepLogs ? keepLogs : ""])); if (result < 0) { throw this.finishedErrors({ code: result, jobId, command: "addLog" }); } return result; } moveToFinishedArgs(job, val, propVal, shouldRemove, target, token, timestamp, fetchNext = true, fieldsToUpdate) { var _a, _b, _c, _d, _e, _f, _g; const queueKeys = this.queue.keys; const opts = this.queue.opts; const workerKeepJobs = target === "completed" ? opts.removeOnComplete : opts.removeOnFail; const metricsKey = this.queue.toKey(`metrics:${target}`); const keys = this.moveToFinishedKeys; keys[10] = queueKeys[target]; keys[11] = this.queue.toKey((_a = job.id) !== null && _a !== void 0 ? _a : ""); keys[12] = metricsKey; keys[13] = this.queue.keys.marker; const keepJobs = this.getKeepJobs(shouldRemove, workerKeepJobs); const args = [ job.id, timestamp, propVal, typeof val === "undefined" ? "null" : val, target, !fetchNext || this.queue.closing ? 0 : 1, queueKeys[""], pack({ token, name: opts.name, keepJobs, limiter: opts.limiter, lockDuration: opts.lockDuration, attempts: job.opts.attempts, maxMetricsSize: ((_b = opts.metrics) === null || _b === void 0 ? void 0 : _b.maxDataPoints) ? (_c = opts.metrics) === null || _c === void 0 ? void 0 : _c.maxDataPoints : "", fpof: !!((_d = job.opts) === null || _d === void 0 ? void 0 : _d.failParentOnFailure), cpof: !!((_e = job.opts) === null || _e === void 0 ? void 0 : _e.continueParentOnFailure), idof: !!((_f = job.opts) === null || _f === void 0 ? void 0 : _f.ignoreDependencyOnFailure), rdof: !!((_g = job.opts) === null || _g === void 0 ? void 0 : _g.removeDependencyOnFailure) }), fieldsToUpdate ? pack((0, utils_1.objectToFlatArray)(fieldsToUpdate)) : void 0 ]; return keys.concat(args); } getKeepJobs(shouldRemove, workerKeepJobs) { if (typeof shouldRemove === "undefined") { return workerKeepJobs || { count: shouldRemove ? 0 : -1 }; } return typeof shouldRemove === "object" ? shouldRemove : typeof shouldRemove === "number" ? { count: shouldRemove } : { count: shouldRemove ? 0 : -1 }; } async moveToFinished(jobId, args) { const client = await this.queue.client; const result = await this.execCommand(client, "moveToFinished", args); if (result < 0) { throw this.finishedErrors({ code: result, jobId, command: "moveToFinished", state: "active" }); } else { if (typeof result !== "undefined") { return raw2NextJobData(result); } } } drainArgs(delayed) { const queueKeys = this.queue.keys; const keys = [ queueKeys.wait, queueKeys.paused, queueKeys.delayed, queueKeys.prioritized, queueKeys.repeat ]; const args = [queueKeys[""], delayed ? "1" : "0"]; return keys.concat(args); } async drain(delayed) { const client = await this.queue.client; const args = this.drainArgs(delayed); return this.execCommand(client, "drain", args); } removeChildDependencyArgs(jobId, parentKey) { const queueKeys = this.queue.keys; const keys = [queueKeys[""]]; const args = [this.queue.toKey(jobId), parentKey]; return keys.concat(args); } async removeChildDependency(jobId, parentKey) { const client = await this.queue.client; const args = this.removeChildDependencyArgs(jobId, parentKey); const result = await this.execCommand(client, "removeChildDependency", args); switch (result) { case 0: return true; case 1: return false; default: throw this.finishedErrors({ code: result, jobId, parentKey, command: "removeChildDependency" }); } } getRangesArgs(types, start, end, asc) { const queueKeys = this.queue.keys; const transformedTypes = types.map((type) => { return type === "waiting" ? "wait" : type; }); const keys = [queueKeys[""]]; const args = [start, end, asc ? "1" : "0", ...transformedTypes]; return keys.concat(args); } async getRanges(types, start = 0, end = 1, asc = false) { const client = await this.queue.client; const args = this.getRangesArgs(types, start, end, asc); return await this.execCommand(client, "getRanges", args); } getJobsArgs(types, start, end, asc) { const queueKeys = this.queue.keys; const transformedTypes = [ ...new Set(types.map((type) => type === "waiting" ? "wait" : type)) ]; const keys = [queueKeys[""]]; const args = [ start, end, asc ? "1" : "0", GET_JOBS_MAX_BACKFILL_ITERATIONS, ...transformedTypes ]; return keys.concat(args); } /** * Fetches job ids and their job hashes for the provided states in a single * script, skipping ids whose job hash is missing (for example the deprecated * wait list marker or jobs removed after their id was read). Each returned * entry is a `[jobId, jobHashFields]` tuple grouped per requested type. */ async getJobs(types, start = 0, end = -1, asc = false) { const client = await this.queue.client; const args = this.getJobsArgs(types, start, end, asc); return await this.execCommand(client, "getJobs", args); } getCountsArgs(types) { const queueKeys = this.queue.keys; const transformedTypes = types.map((type) => { return type === "waiting" ? "wait" : type; }); const keys = [queueKeys[""]]; const args = [...transformedTypes]; return keys.concat(args); } async getCounts(types) { const client = await this.queue.client; const args = this.getCountsArgs(types); return await this.execCommand(client, "getCounts", args); } getCountsPerPriorityArgs(priorities) { const keys = [ this.queue.keys.wait, this.queue.keys.paused, this.queue.keys.meta, this.queue.keys.prioritized ]; const args = priorities; return keys.concat(args); } async getCountsPerPriority(priorities) { const client = await this.queue.client; const args = this.getCountsPerPriorityArgs(priorities); return await this.execCommand(client, "getCountsPerPriority", args); } getDependencyCountsArgs(jobId, types) { const keys = [ `${jobId}:processed`, `${jobId}:dependencies`, `${jobId}:failed`, `${jobId}:unsuccessful` ].map((name) => { return this.queue.toKey(name); }); const args = types; return keys.concat(args); } async getDependencyCounts(jobId, types) { const client = await this.queue.client; const args = this.getDependencyCountsArgs(jobId, types); return await this.execCommand(client, "getDependencyCounts", args); } moveToCompletedArgs(job, returnvalue, removeOnComplete, token, fetchNext = false) { const timestamp = Date.now(); return this.moveToFinishedArgs(job, returnvalue, "returnvalue", removeOnComplete, "completed", token, timestamp, fetchNext); } moveToFailedArgs(job, failedReason, removeOnFailed, token, fetchNext = false, fieldsToUpdate) { const timestamp = Date.now(); return this.moveToFinishedArgs(job, failedReason, "failedReason", removeOnFailed, "failed", token, timestamp, fetchNext, fieldsToUpdate); } async isFinished(jobId, returnValue = false) { const client = await this.queue.client; const keys = ["completed", "failed", jobId].map((key) => { return this.queue.toKey(key); }); return this.execCommand(client, "isFinished", keys.concat([jobId, returnValue ? "1" : ""])); } async getState(jobId) { const client = await this.queue.client; const keys = [ "completed", "failed", "delayed", "active", "wait", "paused", "waiting-children", "prioritized" ].map((key) => { return this.queue.toKey(key); }); if ((0, utils_1.isRedisVersionLowerThan)(this.queue.redisVersion, "6.0.6", this.queue.databaseType)) { return this.execCommand(client, "getState", keys.concat([jobId])); } return this.execCommand(client, "getStateV2", keys.concat([jobId])); } /** * Change delay of a delayed job. * * Reschedules a delayed job by setting a new delay from the current time. * For example, calling changeDelay(5000) will reschedule the job to execute * 5000 milliseconds (5 seconds) from now, regardless of the original delay. * * @param jobId - the ID of the job to change the delay for. * @param delay - milliseconds from now when the job should be processed. * @returns delay in milliseconds. * @throws JobNotExist * This exception is thrown if jobId is missing. * @throws JobNotInState * This exception is thrown if job is not in delayed state. */ async changeDelay(jobId, delay) { const client = await this.queue.client; const args = this.changeDelayArgs(jobId, delay); const result = await this.execCommand(client, "changeDelay", args); if (result < 0) { throw this.finishedErrors({ code: result, jobId, command: "changeDelay", state: "delayed" }); } } changeDelayArgs(jobId, delay) { const timestamp = Date.now(); const keys = [ this.queue.keys.delayed, this.queue.keys.meta, this.queue.keys.marker, this.queue.keys.events ]; return keys.concat([ delay, JSON.stringify(timestamp), jobId, this.queue.toKey(jobId) ]); } async changePriority(jobId, priority = 0, lifo = false) { const client = await this.queue.client; const args = this.changePriorityArgs(jobId, priority, lifo); const result = await this.execCommand(client, "changePriority", args); if (result < 0) { throw this.finishedErrors({ code: result, jobId, command: "changePriority" }); } } changePriorityArgs(jobId, priority = 0, lifo = false) { const keys = [ this.queue.keys.wait, this.queue.keys.paused, this.queue.keys.meta, this.queue.keys.prioritized, this.queue.keys.active, this.queue.keys.pc, this.queue.keys.marker ]; return keys.concat([priority, this.queue.toKey(""), jobId, lifo ? 1 : 0]); } moveToDelayedArgs(jobId, timestamp, token, delay, opts = {}) { const queueKeys = this.queue.keys; const workerOpts = this.queue.opts; const keys = [ queueKeys.marker, queueKeys.active, queueKeys.prioritized, queueKeys.delayed, this.queue.toKey(jobId), queueKeys.events, queueKeys.meta, queueKeys.stalled, queueKeys.wait, queueKeys.limiter, queueKeys.paused, queueKeys.pc ]; const fetchNext = opts.fetchNext && !this.queue.closing ? 1 : 0; return keys.concat([ this.queue.keys[""], timestamp, jobId, token, delay, opts.skipAttempt ? "1" : "0", opts.fieldsToUpdate ? pack((0, utils_1.objectToFlatArray)(opts.fieldsToUpdate)) : void 0, fetchNext, fetchNext ? pack({ token, lockDuration: workerOpts.lockDuration, limiter: workerOpts.limiter, name: workerOpts.name }) : void 0 ]); } moveToWaitingChildrenArgs(jobId, token, opts) { const timestamp = Date.now(); const childKey = (0, utils_1.getParentKey)(opts.child); const keys = [ "active", "waiting-children", jobId, `${jobId}:dependencies`, `${jobId}:unsuccessful`, "stalled", "events" ].map((name) => { return this.queue.toKey(name); }); return keys.concat([ token, childKey !== null && childKey !== void 0 ? childKey : "", JSON.stringify(timestamp), jobId, this.queue.toKey("") ]); } isMaxedArgs() { const queueKeys = this.queue.keys; const keys = [queueKeys.meta, queueKeys.active]; return keys; } async isMaxed() { const client = await this.queue.client; const args = this.isMaxedArgs(); return !!await this.execCommand(client, "isMaxed", args); } async moveToDelayed(jobId, timestamp, delay, token = "0", opts = {}) { const client = await this.queue.client; const args = this.moveToDelayedArgs(jobId, timestamp, token, delay, opts); const result = await this.execCommand(client, "moveToDelayed", args); if (result < 0) { throw this.finishedErrors({ code: result, jobId, command: "moveToDelayed", state: "active" }); } else if (typeof result !== "undefined") { return raw2NextJobData(result); } } /** * Move parent job to waiting-children state. * * @returns true if job is successfully moved, false if there are pending dependencies. * @throws JobNotExist * This exception is thrown if jobId is missing. * @throws JobLockNotExist * This exception is thrown if job lock is missing. * @throws JobNotInState * This exception is thrown if job is not in active state. */ async moveToWaitingChildren(jobId, token, opts = {}) { const client = await this.queue.client; const args = this.moveToWaitingChildrenArgs(jobId, token, opts); const result = await this.execCommand(client, "moveToWaitingChildren", args); switch (result) { case 0: return true; case 1: return false; default: throw this.finishedErrors({ code: result, jobId, command: "moveToWaitingChildren", state: "active" }); } } getRateLimitTtlArgs(maxJobs) { const keys = [ this.queue.keys.limiter, this.queue.keys.meta ]; return keys.concat([maxJobs !== null && maxJobs !== void 0 ? maxJobs : "0"]); } async getRateLimitTtl(maxJobs) { const client = await this.queue.client; const args = this.getRateLimitTtlArgs(maxJobs); return this.execCommand(client, "getRateLimitTtl", args); } /** * Remove jobs in a specific state. * * @returns Id jobs from the deleted records. */ async cleanJobsInSet(set, timestamp, limit = 0) { const client = await this.queue.client; return this.execCommand(client, "cleanJobsInSet", [ this.queue.toKey(set), this.queue.toKey("events"), this.queue.toKey("repeat"), this.queue.toKey(""), timestamp, limit, set ]); } getJobSchedulerArgs(id) { const keys = [this.queue.keys.repeat]; return keys.concat([id]); } async getJobScheduler(id) { const client = await this.queue.client; const args = this.getJobSchedulerArgs(id); return this.execCommand(client, "getJobScheduler", args); } retryJobArgs(jobId, lifo, token, opts = {}) { const keys = [ this.queue.keys.active, this.queue.keys.wait, this.queue.keys.paused, this.queue.toKey(jobId), this.queue.keys.meta, this.queue.keys.events, this.queue.keys.delayed, this.queue.keys.prioritized, this.queue.keys.pc, this.queue.keys.marker, this.queue.keys.stalled ]; const pushCmd = (lifo ? "R" : "L") + "PUSH"; return keys.concat([ this.queue.toKey(""), Date.now(), pushCmd, jobId, token, opts.fieldsToUpdate ? pack((0, utils_1.objectToFlatArray)(opts.fieldsToUpdate)) : void 0 ]); } async retryJob(jobId, lifo, token = "0", opts = {}) { const client = await this.queue.client; const args = this.retryJobArgs(jobId, lifo, token, opts); const result = await this.execCommand(client, "retryJob", args); if (result < 0) { throw this.finishedErrors({ code: result, jobId, command: "retryJob", state: "active" }); } } moveJobsToWaitArgs(state, count, timestamp) { const keys = [ this.queue.toKey(""), this.queue.keys.events, this.queue.toKey(state), this.queue.toKey("wait"), this.queue.toKey("paused"), this.queue.keys.meta, this.queue.keys.active, this.queue.keys.marker ]; const args = [count, timestamp, state]; return keys.concat(args); } async retryJobs(state = "failed", count = 1e3, timestamp = (/* @__PURE__ */ new Date()).getTime()) { const client = await this.queue.client; const args = this.moveJobsToWaitArgs(state, count, timestamp); return this.execCommand(client, "moveJobsToWait", args); } async promoteJobs(count = 1e3) { const client = await this.queue.client; const args = this.moveJobsToWaitArgs("delayed", count, Number.MAX_VALUE); return this.execCommand(client, "moveJobsToWait", args); } /** * Attempts to reprocess a job * * @param job - The job to reprocess * @param state - The expected job state. If the job is not found * on the provided state, then it's not reprocessed. Supported states: 'failed', 'completed' * * @returns A promise that resolves when the job has been successfully moved to the wait queue. * @throws Will throw an error with a code property indicating the failure reason: * - code 0: Job does not exist * - code -1: Job is currently locked and can't be retried * - code -2: Job was not found in the expected set */ async reprocessJob(job, state, opts = {}) { const client = await this.queue.client; const keys = [ this.queue.toKey(job.id), this.queue.keys.events, this.queue.toKey(state), this.queue.keys.wait, this.queue.keys.meta, this.queue.keys.paused, this.queue.keys.active, this.queue.keys.marker ]; const args = [ job.id, (job.opts.lifo ? "R" : "L") + "PUSH", state === "failed" ? "failedReason" : "returnvalue", state, opts.resetAttemptsMade ? "1" : "0", opts.resetAttemptsStarted ? "1" : "0" ]; const result = await this.execCommand(client, "reprocessJob", keys.concat(args)); switch (result) { case 1: return; default: throw this.finishedErrors({ code: result, jobId: job.id, command: "reprocessJob", state }); } } async getMetrics(type, start = 0, end = -1) { const client = await this.queue.client; const keys = [ this.queue.toKey(`metrics:${type}`), this.queue.toKey(`metrics:${type}:data`) ]; const args = [start, end]; const result = await this.execCommand(client, "getMetrics", keys.concat(args)); return result; } async moveToActive(client, token, name) { const opts = this.queue.opts; const queueKeys = this.queue.keys; const keys = [ queueKeys.wait, queueKeys.active, queueKeys.prioritized, queueKeys.events, queueKeys.stalled, queueKeys.limiter, queueKeys.delayed, queueKeys.paused, queueKeys.meta, queueKeys.pc, queueKeys.marker ]; const args = [ queueKeys[""], Date.now(), pack({ token, lockDuration: opts.lockDuration, limiter: opts.limiter, name }) ]; const result = await this.execCommand(client, "moveToActive", keys.concat(args)); return raw2NextJobData(result); } async promote(jobId) { const client = await this.queue.client; const keys = [ this.queue.keys.delayed, this.queue.keys.wait, this.queue.keys.paused, this.queue.keys.meta, this.queue.keys.prioritized, this.queue.keys.active, this.queue.keys.pc, this.queue.keys.events, this.queue.keys.marker ]; const args = [this.queue.toKey(""), jobId]; const code = await this.execCommand(client, "promote", keys.concat(args)); if (code < 0) { throw this.finishedErrors({ code, jobId, command: "promote", state: "delayed" }); } } moveStalledJobsToWaitArgs() { const opts = this.queue.opts; const keys = [ this.queue.keys.stalled, this.queue.keys.wait, this.queue.keys.active, this.queue.keys["stalled-check"], this.queue.keys.meta, this.queue.keys.paused, this.queue.keys.marker, this.queue.keys.events, this.queue.keys.repeat ]; const args = [ opts.maxStalledCount, this.queue.toKey(""), Date.now(), opts.stalledInterval ]; return keys.concat(args); } /** * Looks for unlocked jobs in the active queue. * * The job was being worked on, but the worker process died and it failed to renew the lock. * We call these jobs 'stalled'. This is the most common case. We resolve these by moving them * back to wait to be re-processed. To prevent jobs from cycling endlessly between active and wait, * (e.g. if the job handler keeps crashing), * we limit the number stalled job recoveries to settings.maxStalledCount. */ async moveStalledJobsToWait() { const client = await this.queue.client; const args = this.moveStalledJobsToWaitArgs(); return this.execCommand(client, "moveStalledJobsToWait", args); } /** * Moves a job back from Active to Wait. * This script is used when a job has been manually rate limited and needs * to be moved back to wait from active status. * * @param client - Redis client * @param jobId - Job id * @returns */ async moveJobFromActiveToWait(jobId, token = "0") { const client = await this.queue.client; const keys = [ this.queue.keys.active, this.queue.keys.wait, this.queue.keys.stalled, this.queue.keys.paused, this.queue.keys.meta, this.queue.keys.limiter, this.queue.keys.prioritized, this.queue.keys.marker, this.queue.keys.events ]; const args = [jobId, token, this.queue.toKey(jobId)]; const result = await this.execCommand(client, "moveJobFromActiveToWait", keys.concat(args)); if (result < 0) { throw this.finishedErrors({ code: result, jobId, command: "moveJobFromActiveToWait", state: "active" }); } return result; } async obliterate(opts) { const client = await this.queue.client; const keys = [ this.queue.keys.meta, this.queue.toKey("") ]; const args = [opts.count, opts.force ? "force" : null]; const result = await this.execCommand(client, "obliterate", keys.concat(args)); if (result < 0) { switch (result) { case -1: throw new Error("Cannot obliterate non-paused queue"); case -2: throw new Error("Cannot obliterate queue with active jobs"); } } return result; } /** * Paginate a set or hash keys. * @param opts - options to define the pagination behaviour * */ async paginate(key, opts) { const client = await this.queue.client; const keys = [key]; const maxIterations = 5; const pageSize = opts.end >= 0 ? opts.end - opts.start + 1 : Infinity; let cursor = "0", offset = 0, items, total, rawJobs, page = [], jobs = []; do { const args = [ opts.start + page.length, opts.end, cursor, offset, maxIterations ]; if (opts.fetchJobs) { args.push(1); } [cursor, offset, items, total, rawJobs] = await this.execCommand(client, "paginate", keys.concat(args)); page = page.concat(items); if (rawJobs && rawJobs.length) { jobs = jobs.concat(rawJobs.map(utils_1.array2obj)); } } while (cursor != "0" && page.length < pageSize); if (page.length && Array.isArray(page[0])) { const result = []; for (let index = 0; index < page.length; index++) { const [id, value] = page[index]; try { result.push({ id, v: JSON.parse(value) }); } catch (err) { result.push({ id, err: err.message }); } } return { cursor, items: result, total, jobs }; } else { return { cursor, items: page.map((item) => ({ id: item })), total, jobs }; } } finishedErrors({ code, jobId, parentKey, command, state }) { let error; switch (code) { case enums_1.ErrorCode.JobNotExist: error = new Error(`Missing key for job ${jobId}. ${command}`); break; case enums_1.ErrorCode.JobLockNotExist: error = new Error(`Missing lock for job ${jobId}. ${command}`); break; case enums_1.ErrorCode.JobNotInState: error = new Error(`Job ${jobId} is not in the ${state} state. ${command}`); break; case enums_1.ErrorCode.JobPendingChildren: error = new Error(`Job ${jobId} has pending dependencies. ${command}`); break; case enums_1.ErrorCode.ParentJobNotExist: error = new Error(`Missing key for parent job ${parentKey}. ${command}`); break; case enums_1.ErrorCode.JobLockMismatch: error = new Error(`Lock mismatch for job ${jobId}. Cmd ${command} from ${state}`); break; case enums_1.ErrorCode.ParentJobCannotBeReplaced: error = new Error(`The parent job ${parentKey} cannot be replaced. ${command}`); break; case enums_1.ErrorCode.JobBelongsToJobScheduler: error = new Error(`Job ${jobId} belongs to a job scheduler and cannot be removed directly. ${command}`); break; case enums_1.ErrorCode.JobHasFailedChildren: error = new errors_1.UnrecoverableError(`Cannot complete job ${jobId} because it has at least one failed child. ${command}`); break; case enums_1.ErrorCode.SchedulerJobIdCollision: error = new Error(`Cannot create job scheduler iteration - job ID already exists. ${command}`); break; case enums_1.ErrorCode.SchedulerJobSlotsBusy: error = new Error(`Cannot create job scheduler iteration - current and next time slots already have jobs. ${command}`); break; default: error = new Error(`Unknown code ${code} error for ${jobId}. ${command}`); } error.code = code; return error; } async removeOrphanedJobs(candidateJobIds, stateKeySuffixes, jobSubKeySuffixes) { const client = await this.queue.client; const args = [ this.queue.toKey(""), stateKeySuffixes.length, ...stateKeySuffixes, jobSubKeySuffixes.length, ...jobSubKeySuffixes, ...candidateJobIds ]; return this.execCommand(client, "removeOrphanedJobs", args); } }; exports2.Scripts = Scripts; function raw2NextJobData(raw) { if (raw) { const result = [null, raw[1], raw[2], raw[3]]; if (raw[0]) { result[0] = (0, utils_1.array2obj)(raw[0]); } return result; } return []; } __name(raw2NextJobData, "raw2NextJobData"); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/utils/create-scripts.js var require_create_scripts = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/utils/create-scripts.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createScripts = void 0; var scripts_1 = require_scripts(); var createScripts = /* @__PURE__ */ __name((queue) => { return new scripts_1.Scripts({ keys: queue.keys, client: queue.client, get redisVersion() { return queue.redisVersion; }, toKey: queue.toKey, opts: queue.opts, closing: queue.closing, databaseType: queue.databaseType }); }, "createScripts"); exports2.createScripts = createScripts; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/job.js var require_job = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/job.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Job = exports2.PRIORITY_LIMIT = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var util_1 = require("util"); var utils_1 = require_utils16(); var create_scripts_1 = require_create_scripts(); var backoffs_1 = require_backoffs(); var unrecoverable_error_1 = require_unrecoverable_error(); var enums_1 = require_enums3(); var logger = (0, util_1.debuglog)("bull"); exports2.PRIORITY_LIMIT = 2 ** 21 - 1; var Job = class _Job { static { __name(this, "Job"); } constructor(queue, name, data, opts = {}, id) { this.queue = queue; this.name = name; this.data = data; this.opts = opts; this.id = id; this.progress = 0; this.returnvalue = null; this.stacktrace = null; this.delay = 0; this.priority = 0; this.attemptsStarted = 0; this.attemptsMade = 0; this.stalledCounter = 0; const _a = this.opts, { repeatJobKey } = _a, restOpts = tslib_1.__rest(_a, ["repeatJobKey"]); this.opts = Object.assign({ attempts: 0 }, restOpts); this.delay = this.opts.delay; this.priority = this.opts.priority || 0; this.repeatJobKey = repeatJobKey; this.timestamp = opts.timestamp ? opts.timestamp : Date.now(); this.opts.backoff = backoffs_1.Backoffs.normalize(opts.backoff); this.parentKey = (0, utils_1.getParentKey)(opts.parent); if (opts.parent) { this.parent = { id: opts.parent.id, queueKey: opts.parent.queue }; if (opts.failParentOnFailure) { this.parent.fpof = true; } if (opts.removeDependencyOnFailure) { this.parent.rdof = true; } if (opts.ignoreDependencyOnFailure) { this.parent.idof = true; } if (opts.continueParentOnFailure) { this.parent.cpof = true; } } this.debounceId = opts.debounce ? opts.debounce.id : void 0; this.deduplicationId = opts.deduplication ? opts.deduplication.id : this.debounceId; this.toKey = queue.toKey.bind(queue); this.createScripts(); this.queueQualifiedName = queue.qualifiedName; } /** * Creates a new job and adds it to the queue. * * @param queue - the queue where to add the job. * @param name - the name of the job. * @param data - the payload of the job. It will be serialized with * `JSON.stringify` before being stored in Redis, so it must be * JSON-serializable. Class instances are flattened to plain objects and * lose their prototype methods on the worker side; see the * {@link Job} class for details. * @param opts - the options bag for this job. * @returns The created Job instance */ static async create(queue, name, data, opts) { const client = await queue.client; const job = new this(queue, name, data, opts, opts && opts.jobId); job.id = await job.addJob(client, { parentKey: job.parentKey, parentDependenciesKey: job.parentKey ? `${job.parentKey}:dependencies` : "" }); return job; } /** * Creates a bulk of jobs and adds them atomically to the given queue. * * @param queue - the queue where to add the jobs. * @param jobs - an array of jobs to be added to the queue. * @returns The created Job instances */ static async createBulk(queue, jobs) { const client = await queue.client; const jobInstances = jobs.map((job) => { var _a; return new this(queue, job.name, job.data, job.opts, (_a = job.opts) === null || _a === void 0 ? void 0 : _a.jobId); }); const pipeline = client.pipeline(); for (const job of jobInstances) { job.addJob(pipeline, { parentKey: job.parentKey, parentDependenciesKey: job.parentKey ? `${job.parentKey}:dependencies` : "" }); } const results = await pipeline.exec(); for (let index = 0; index < results.length; ++index) { const [err, id] = results[index]; if (err) { throw err; } jobInstances[index].id = id; } return jobInstances; } /** * Instantiates a Job from a JobJsonRaw object (coming from a deserialized JSON object) * * @param queue - the queue where the job belongs to. * @param json - the plain object containing the job. * @param jobId - an optional job id (overrides the id coming from the JSON object) * @returns A Job instance reconstructed from the JSON data */ static fromJSON(queue, json, jobId) { const data = JSON.parse(json.data || "{}"); const opts = _Job.optsFromJSON(json.opts); const job = new this(queue, json.name, data, opts, json.id || jobId); job.progress = JSON.parse(json.progress || "0"); job.delay = parseInt(json.delay); job.priority = parseInt(json.priority); job.timestamp = parseInt(json.timestamp); if (json.finishedOn) { job.finishedOn = parseInt(json.finishedOn); } if (json.processedOn) { job.processedOn = parseInt(json.processedOn); } if (json.rjk) { job.repeatJobKey = json.rjk; } if (json.deid) { job.debounceId = json.deid; job.deduplicationId = json.deid; } if (json.failedReason) { job.failedReason = json.failedReason; } job.attemptsStarted = parseInt(json.ats || "0"); job.attemptsMade = parseInt(json.attemptsMade || json.atm || "0"); job.stalledCounter = parseInt(json.stc || "0"); if (json.defa) { job.deferredFailure = json.defa; } job.stacktrace = getTraces(json.stacktrace); if (typeof json.returnvalue === "string") { job.returnvalue = getReturnValue(json.returnvalue); } if (json.parentKey) { job.parentKey = json.parentKey; } else { job.parentKey = void 0; } if (json.parent) { job.parent = JSON.parse(json.parent); } else { job.parent = void 0; } if (json.pb) { job.processedBy = json.pb; } if (json.nrjid) { job.nextRepeatableJobId = json.nrjid; } return job; } createScripts() { var _a; this.scripts = (_a = this.queue.scripts) !== null && _a !== void 0 ? _a : (0, create_scripts_1.createScripts)(this.queue); } static optsFromJSON(rawOpts, optsDecode = utils_1.optsDecodeMap) { const opts = JSON.parse(rawOpts || "{}"); const optionEntries = Object.entries(opts); const options = {}; for (const item of optionEntries) { const [attributeName, value] = item; if (optsDecode[attributeName]) { options[optsDecode[attributeName]] = value; } else { if (attributeName === "tm") { options.telemetry = Object.assign(Object.assign({}, options.telemetry), { metadata: value }); } else if (attributeName === "omc") { options.telemetry = Object.assign(Object.assign({}, options.telemetry), { omitContext: value }); } else { options[attributeName] = value; } } } return options; } /** * Fetches a Job from the queue given the passed job id. * * @param queue - the queue where the job belongs to. * @param jobId - the job id. * @returns */ static async fromId(queue, jobId) { if (jobId) { const client = await queue.client; const jobData = await client.hgetall(queue.toKey(jobId)); return (0, utils_1.isEmpty)(jobData) ? void 0 : this.fromJSON(queue, jobData, jobId); } } /** * addJobLog * * @param queue - A minimal queue instance * @param jobId - Job id * @param logRow - String with a row of log data to be logged * @param keepLogs - The optional amount of log entries to preserve * * @returns The total number of log entries for this job so far. */ static addJobLog(queue, jobId, logRow, keepLogs) { var _a; const scripts = (_a = queue.scripts) !== null && _a !== void 0 ? _a : (0, create_scripts_1.createScripts)(queue); return scripts.addLog(jobId, logRow, keepLogs); } toJSON() { const _a = this, { queue, scripts } = _a, withoutQueueAndScripts = tslib_1.__rest(_a, ["queue", "scripts"]); return withoutQueueAndScripts; } /** * Prepares a job to be serialized for storage in Redis. * @returns */ asJSON() { return (0, utils_1.removeUndefinedFields)({ id: this.id, name: this.name, data: JSON.stringify(typeof this.data === "undefined" ? {} : this.data), opts: _Job.optsAsJSON(this.opts), parent: this.parent ? Object.assign({}, this.parent) : void 0, parentKey: this.parentKey, progress: this.progress, attemptsMade: this.attemptsMade, attemptsStarted: this.attemptsStarted, stalledCounter: this.stalledCounter, finishedOn: this.finishedOn, processedOn: this.processedOn, timestamp: this.timestamp, failedReason: JSON.stringify(this.failedReason), stacktrace: JSON.stringify(this.stacktrace), debounceId: this.debounceId, deduplicationId: this.deduplicationId, repeatJobKey: this.repeatJobKey, returnvalue: JSON.stringify(this.returnvalue), nrjid: this.nextRepeatableJobId }); } static optsAsJSON(opts = {}, optsEncode = utils_1.optsEncodeMap) { const optionEntries = Object.entries(opts); const options = {}; for (const [attributeName, value] of optionEntries) { if (typeof value === "undefined") { continue; } if (attributeName in optsEncode) { const compressableAttribute = attributeName; const key = optsEncode[compressableAttribute]; options[key] = value; } else { if (attributeName === "telemetry") { if (value.metadata !== void 0) { options.tm = value.metadata; } if (value.omitContext !== void 0) { options.omc = value.omitContext; } } else { options[attributeName] = value; } } } return options; } /** * Prepares a job to be passed to Sandbox. * @returns */ asJSONSandbox() { return Object.assign(Object.assign({}, this.asJSON()), { queueName: this.queueName, queueQualifiedName: this.queueQualifiedName, prefix: this.prefix }); } /** * Updates a job's data * * @param data - the data that will replace the current jobs data. */ updateData(data) { this.data = data; return this.scripts.updateData(this, data); } /** * Updates a job's progress * * @param progress - number or object to be saved as progress. */ async updateProgress(progress) { this.progress = progress; await this.scripts.updateProgress(this.id, progress); this.queue.emit("progress", this, progress); } /** * Logs one row of log data. * * @param logRow - string with log data to be logged. * @returns The total number of log entries for this job so far. */ async log(logRow) { return _Job.addJobLog(this.queue, this.id, logRow, this.opts.keepLogs); } /** * Removes child dependency from parent when child is not yet finished * * @returns True if the relationship existed and if it was removed. */ async removeChildDependency() { const childDependencyIsRemoved = await this.scripts.removeChildDependency(this.id, this.parentKey); if (childDependencyIsRemoved) { this.parent = void 0; this.parentKey = void 0; return true; } return false; } /** * Clears job's logs * * @param keepLogs - the amount of log entries to preserve */ async clearLogs(keepLogs) { const client = await this.queue.client; const logsKey = this.toKey(this.id) + ":logs"; if (keepLogs) { await client.ltrim(logsKey, -keepLogs, -1); } else { await client.del(logsKey); } } /** * Completely remove the job from the queue. * Note, this call will throw an exception if the job * is being processed when the call is performed. * * @param opts - Options to remove a job */ async remove({ removeChildren = true } = {}) { await this.queue.waitUntilReady(); const queue = this.queue; const job = this; const removed = await this.scripts.remove(job.id, removeChildren); if (removed) { queue.emit("removed", job); } else { throw new Error(`Job ${this.id} could not be removed because it is locked by another worker`); } } /** * Remove all children from this job that are not yet processed, * in other words that are in any other state than completed, failed or active. * * @remarks * - Jobs with locks (most likely active) are ignored. * - This method can be slow if the number of children is large (\> 1000). */ async removeUnprocessedChildren() { const jobId = this.id; await this.scripts.removeUnprocessedChildren(jobId); } /** * Extend the lock for this job. * * @param token - unique token for the lock * @param duration - lock duration in milliseconds */ extendLock(token, duration) { return this.scripts.extendLock(this.id, token, duration); } /** * Moves a job to the completed queue. * Returned job to be used with Queue.prototype.nextJobFromJobData. * * @param returnValue - The jobs success message. * @param token - Worker token used to acquire completed job. * @param fetchNext - True when wanting to fetch the next job. * @returns Returns the jobData of the next job in the waiting queue or void. */ async moveToCompleted(returnValue, token, fetchNext = true) { return this.queue.trace(enums_1.SpanKind.INTERNAL, "complete", this.queue.name, async (span) => { this.setSpanJobAttributes(span); await this.queue.waitUntilReady(); this.returnvalue = returnValue || void 0; const stringifiedReturnValue = (0, utils_1.tryCatch)(JSON.stringify, JSON, [ returnValue ]); if (stringifiedReturnValue === utils_1.errorObject) { throw utils_1.errorObject.value; } const args = this.scripts.moveToCompletedArgs(this, stringifiedReturnValue, this.opts.removeOnComplete, token, fetchNext); const result = await this.scripts.moveToFinished(this.id, args); this.finishedOn = args[this.scripts.moveToFinishedKeys.length + 1]; this.attemptsMade += 1; this.recordJobMetrics("completed"); return result; }); } /** * Moves a job to the wait or prioritized state. * * @param token - Worker token used to acquire completed job. * @returns Returns pttl. */ async moveToWait(token) { const result = await this.scripts.moveJobFromActiveToWait(this.id, token); this.recordJobMetrics("waiting"); return result; } async shouldRetryJob(err) { if (this.attemptsMade + 1 < this.opts.attempts && !this.discarded && !(err instanceof unrecoverable_error_1.UnrecoverableError || err.name == "UnrecoverableError")) { const opts = this.queue.opts; const delay = await backoffs_1.Backoffs.calculate(this.opts.backoff, this.attemptsMade + 1, err, this, opts.settings && opts.settings.backoffStrategy); return [delay == -1 ? false : true, delay == -1 ? 0 : delay]; } else { return [false, 0]; } } /** * Moves a job to the failed queue. * * @param err - the jobs error message. * @param token - token to check job is locked by current worker * @param fetchNext - true when wanting to fetch the next job * @returns Returns the jobData of the next job in the waiting queue or void. */ async moveToFailed(err, token, fetchNext = false) { this.failedReason = err === null || err === void 0 ? void 0 : err.message; const [shouldRetry, retryDelay] = await this.shouldRetryJob(err); return this.queue.trace(enums_1.SpanKind.INTERNAL, this.getSpanOperation(shouldRetry, retryDelay), this.queue.name, async (span, dstPropagationMetadata) => { var _a, _b; this.setSpanJobAttributes(span); let tm; if (!((_b = (_a = this.opts) === null || _a === void 0 ? void 0 : _a.telemetry) === null || _b === void 0 ? void 0 : _b.omitContext) && dstPropagationMetadata) { tm = dstPropagationMetadata; } let result; this.updateStacktrace(err); const fieldsToUpdate = { failedReason: this.failedReason, stacktrace: JSON.stringify(this.stacktrace), tm }; let finishedOn; if (shouldRetry) { if (retryDelay) { result = await this.scripts.moveToDelayed(this.id, Date.now(), retryDelay, token, { fieldsToUpdate, fetchNext }); this.recordJobMetrics("delayed"); } else { result = await this.scripts.retryJob(this.id, this.opts.lifo, token, { fieldsToUpdate }); this.recordJobMetrics("retried"); } } else { const args = this.scripts.moveToFailedArgs(this, this.failedReason, this.opts.removeOnFail, token, fetchNext, fieldsToUpdate); result = await this.scripts.moveToFinished(this.id, args); finishedOn = args[this.scripts.moveToFinishedKeys.length + 1]; this.recordJobMetrics("failed"); } if (finishedOn && typeof finishedOn === "number") { this.finishedOn = finishedOn; } if (retryDelay && typeof retryDelay === "number") { this.delay = retryDelay; } this.attemptsMade += 1; return result; }); } getSpanOperation(shouldRetry, retryDelay) { if (shouldRetry) { if (retryDelay) { return "delay"; } return "retry"; } return "fail"; } /** * Records job metrics if a meter is configured in telemetry options. * * @param state - The job state */ recordJobMetrics(state) { var _a, _b; const meter = (_b = (_a = this.queue.opts) === null || _a === void 0 ? void 0 : _a.telemetry) === null || _b === void 0 ? void 0 : _b.meter; if (!meter) { return; } const attributes = { [enums_1.TelemetryAttributes.QueueName]: this.queue.name, [enums_1.TelemetryAttributes.JobName]: this.name, [enums_1.TelemetryAttributes.JobStatus]: state, [enums_1.TelemetryAttributes.JobState]: state }; const statusToCounterName = { completed: enums_1.MetricNames.JobsCompleted, failed: enums_1.MetricNames.JobsFailed, delayed: enums_1.MetricNames.JobsDelayed, retried: enums_1.MetricNames.JobsRetried, waiting: enums_1.MetricNames.JobsWaiting, "waiting-children": enums_1.MetricNames.JobsWaitingChildren }; const counterName = statusToCounterName[state]; const counter = meter.createCounter(counterName, { description: `Number of jobs ${state}`, unit: "1" }); counter.add(1, attributes); if (this.processedOn) { const duration = Date.now() - this.processedOn; const histogram = meter.createHistogram(enums_1.MetricNames.JobDuration, { description: "Job processing duration", unit: "ms" }); histogram.record(duration, attributes); } } /** * @returns true if the job has completed. */ isCompleted() { return this.isInZSet("completed"); } /** * @returns true if the job has failed. */ isFailed() { return this.isInZSet("failed"); } /** * @returns true if the job is delayed. */ isDelayed() { return this.isInZSet("delayed"); } /** * @returns true if the job is waiting for children. */ isWaitingChildren() { return this.isInZSet("waiting-children"); } /** * @returns true of the job is active. */ isActive() { return this.isInList("active"); } /** * @returns true if the job is waiting. */ async isWaiting() { return await this.isInList("wait") || await this.isInList("paused"); } /** * @returns the queue name this job belongs to. */ get queueName() { return this.queue.name; } /** * @returns the prefix that is used. */ get prefix() { return this.queue.opts.prefix; } /** * Get current state. * * @returns Returns one of these values: * 'completed', 'failed', 'delayed', 'active', 'waiting', 'waiting-children', 'unknown'. */ getState() { return this.scripts.getState(this.id); } /** * Change delay of a delayed job. * * Reschedules a delayed job by setting a new delay from the current time. * For example, calling changeDelay(5000) will reschedule the job to execute * 5000 milliseconds (5 seconds) from now, regardless of the original delay. * * @param delay - milliseconds from now when the job should be processed. * @returns void * @throws JobNotExist * This exception is thrown if jobId is missing. * @throws JobNotInState * This exception is thrown if job is not in delayed state. */ async changeDelay(delay) { await this.scripts.changeDelay(this.id, delay); this.delay = delay; } /** * Change job priority. * * @param opts - options containing priority and lifo values. * @returns void */ async changePriority(opts) { await this.scripts.changePriority(this.id, opts.priority, opts.lifo); this.priority = opts.priority || 0; } /** * Get this jobs children result values if any. * * @returns Object mapping children job keys with their values. */ async getChildrenValues() { const client = await this.queue.client; const result = await client.hgetall(this.toKey(`${this.id}:processed`)); if (result) { return (0, utils_1.parseObjectValues)(result); } } /** * Retrieves the failures of child jobs that were explicitly ignored while using ignoreDependencyOnFailure option. * This method is useful for inspecting which child jobs were intentionally ignored when an error occurred. * @see {@link https://docs.bullmq.io/guide/flows/ignore-dependency} * * @returns Object mapping children job keys with their failure values. */ async getIgnoredChildrenFailures() { const client = await this.queue.client; return client.hgetall(this.toKey(`${this.id}:failed`)); } /** * Get job's children failure values that were ignored if any. * * @deprecated This method is deprecated and will be removed in v6. Use getIgnoredChildrenFailures instead. * * @returns Object mapping children job keys with their failure values. */ async getFailedChildrenValues() { const client = await this.queue.client; return client.hgetall(this.toKey(`${this.id}:failed`)); } /** * Get children job keys if this job is a parent and has children. * @remarks * Count options before Redis v7.2 works as expected with any quantity of entries * on processed/unprocessed dependencies, since v7.2 you must consider that count * won't have any effect until processed/unprocessed dependencies have a length * greater than 127 * @see {@link https://redis.io/docs/management/optimization/memory-optimization/#redis--72} * @see {@link https://docs.bullmq.io/guide/flows#getters} * @returns dependencies separated by processed, unprocessed, ignored and failed. */ async getDependencies(opts = {}) { const client = await this.queue.client; const multi = client.pipeline(); if (!opts.processed && !opts.unprocessed && !opts.ignored && !opts.failed) { multi.hgetall(this.toKey(`${this.id}:processed`)); multi.smembers(this.toKey(`${this.id}:dependencies`)); multi.hgetall(this.toKey(`${this.id}:failed`)); multi.zrange(this.toKey(`${this.id}:unsuccessful`), 0, -1); const [[err1, processed], [err2, unprocessed], [err3, ignored], [err4, failed]] = await multi.exec(); return { processed: (0, utils_1.parseObjectValues)(processed), unprocessed, failed, ignored }; } else { const defaultOpts = { cursor: 0, count: 20 }; const childrenResultOrder = []; if (opts.processed) { childrenResultOrder.push("processed"); const processedOpts = Object.assign(Object.assign({}, defaultOpts), opts.processed); multi.hscan(this.toKey(`${this.id}:processed`), processedOpts.cursor, { COUNT: processedOpts.count }); } if (opts.unprocessed) { childrenResultOrder.push("unprocessed"); const unprocessedOpts = Object.assign(Object.assign({}, defaultOpts), opts.unprocessed); multi.sscan(this.toKey(`${this.id}:dependencies`), unprocessedOpts.cursor, { COUNT: unprocessedOpts.count }); } if (opts.ignored) { childrenResultOrder.push("ignored"); const ignoredOpts = Object.assign(Object.assign({}, defaultOpts), opts.ignored); multi.hscan(this.toKey(`${this.id}:failed`), ignoredOpts.cursor, { COUNT: ignoredOpts.count }); } let failedCursor; if (opts.failed) { childrenResultOrder.push("failed"); const failedOpts = Object.assign(Object.assign({}, defaultOpts), opts.failed); failedCursor = failedOpts.cursor + failedOpts.count; multi.zrange(this.toKey(`${this.id}:unsuccessful`), failedOpts.cursor, failedOpts.count - 1); } const results = await multi.exec(); let processedCursor, processed, unprocessedCursor, unprocessed, failed, ignoredCursor, ignored; childrenResultOrder.forEach((key, index) => { switch (key) { case "processed": { processedCursor = results[index][1][0]; const rawProcessed = results[index][1][1]; const transformedProcessed = {}; for (let ind = 0; ind < rawProcessed.length; ++ind) { if (ind % 2) { transformedProcessed[rawProcessed[ind - 1]] = JSON.parse(rawProcessed[ind]); } } processed = transformedProcessed; break; } case "failed": { failed = results[index][1]; break; } case "ignored": { ignoredCursor = results[index][1][0]; const rawIgnored = results[index][1][1]; const transformedIgnored = {}; for (let ind = 0; ind < rawIgnored.length; ++ind) { if (ind % 2) { transformedIgnored[rawIgnored[ind - 1]] = rawIgnored[ind]; } } ignored = transformedIgnored; break; } case "unprocessed": { unprocessedCursor = results[index][1][0]; unprocessed = results[index][1][1]; break; } } }); return Object.assign(Object.assign(Object.assign(Object.assign({}, processedCursor ? { processed, nextProcessedCursor: Number(processedCursor) } : {}), ignoredCursor ? { ignored, nextIgnoredCursor: Number(ignoredCursor) } : {}), failedCursor ? { failed, nextFailedCursor: failedCursor } : {}), unprocessedCursor ? { unprocessed, nextUnprocessedCursor: Number(unprocessedCursor) } : {}); } } /** * Get children job counts if this job is a parent and has children. * * @returns dependencies count separated by processed, unprocessed, ignored and failed. */ async getDependenciesCount(opts = {}) { const types = []; Object.entries(opts).forEach(([key, value]) => { if (value) { types.push(key); } }); const finalTypes = types.length ? types : ["processed", "unprocessed", "ignored", "failed"]; const responses = await this.scripts.getDependencyCounts(this.id, finalTypes); const counts = {}; responses.forEach((res, index) => { counts[`${finalTypes[index]}`] = res || 0; }); return counts; } /** * Returns a promise the resolves when the job has completed (containing the return value of the job), * or rejects when the job has failed (containing the failedReason). * * @param queueEvents - Instance of QueueEvents. * @param ttl - Time in milliseconds to wait for job to finish before timing out. */ async waitUntilFinished(queueEvents, ttl) { await this.queue.waitUntilReady(); const jobId = this.id; return new Promise(async (resolve, reject) => { let timeout; if (ttl) { timeout = setTimeout(() => onFailed( /* eslint-disable max-len */ `Job wait ${this.name} timed out before finishing, no finish notification arrived after ${ttl}ms (id=${jobId})` ), ttl); } function onCompleted(args) { removeListeners(); resolve(args.returnvalue); } __name(onCompleted, "onCompleted"); function onFailed(args) { removeListeners(); reject(new Error(args.failedReason || args)); } __name(onFailed, "onFailed"); const completedEvent = `completed:${jobId}`; const failedEvent = `failed:${jobId}`; queueEvents.on(completedEvent, onCompleted); queueEvents.on(failedEvent, onFailed); this.queue.on("closing", onFailed); const removeListeners = /* @__PURE__ */ __name(() => { clearInterval(timeout); queueEvents.removeListener(completedEvent, onCompleted); queueEvents.removeListener(failedEvent, onFailed); this.queue.removeListener("closing", onFailed); }, "removeListeners"); await queueEvents.waitUntilReady(); const [status, result] = await this.scripts.isFinished(jobId, true); const finished = status != 0; if (finished) { if (status == -1 || status == 2) { onFailed({ failedReason: result }); } else { onCompleted({ returnvalue: getReturnValue(result) }); } } }); } /** * Moves the job to the delay set. * * @param timestamp - timestamp when the job should be moved back to "wait" * @param token - token to check job is locked by current worker * @returns */ async moveToDelayed(timestamp, token) { const now = Date.now(); const delay = timestamp - now; const finalDelay = delay > 0 ? delay : 0; await this.scripts.moveToDelayed(this.id, now, finalDelay, token, { skipAttempt: true }); this.delay = finalDelay; this.recordJobMetrics("delayed"); } /** * Moves the job to the waiting-children set. * * @param token - Token to check job is locked by current worker * @param opts - The options bag for moving a job to waiting-children. * @returns true if the job was moved */ async moveToWaitingChildren(token, opts = {}) { const movedToWaitingChildren = await this.scripts.moveToWaitingChildren(this.id, token, opts); if (movedToWaitingChildren) { this.recordJobMetrics("waiting-children"); } return movedToWaitingChildren; } /** * Promotes a delayed job so that it starts to be processed as soon as possible. */ async promote() { const jobId = this.id; await this.scripts.promote(jobId); this.delay = 0; } /** * Attempts to retry the job. Only a job that has failed or completed can be retried. * * @param state - completed / failed * @param opts - options to retry a job * @returns A promise that resolves when the job has been successfully moved to the wait queue. * The queue emits a waiting event when the job is successfully moved. * @throws Will throw an error if the job does not exist, is locked, or is not in the expected state. */ async retry(state = "failed", opts = {}) { await this.scripts.reprocessJob(this, state, opts); this.failedReason = null; this.finishedOn = null; this.processedOn = null; this.returnvalue = null; if (opts.resetAttemptsMade) { this.attemptsMade = 0; } if (opts.resetAttemptsStarted) { this.attemptsStarted = 0; } } /** * Marks a job to not be retried if it fails (even if attempts has been configured) * @deprecated use UnrecoverableError */ discard() { this.discarded = true; } async isInZSet(set) { const client = await this.queue.client; const score = await client.zscore(this.queue.toKey(set), this.id); return score !== null; } async isInList(list) { return this.scripts.isJobInList(this.queue.toKey(list), this.id); } /** * Adds the job to Redis. * * @param client - The Redis client to use for adding the job. * @param parentOpts - Options for the parent-child relationship. * @returns The job ID */ addJob(client, parentOpts) { const jobData = this.asJSON(); this.validateOptions(jobData); return this.scripts.addJob(client, jobData, jobData.opts, this.id, parentOpts); } /** * Removes a deduplication key if job is still the cause of deduplication. * @returns true if the deduplication key was removed. */ async removeDeduplicationKey() { if (this.deduplicationId) { const result = await this.scripts.removeDeduplicationKey(this.deduplicationId, this.id); return result > 0; } return false; } validateOptions(jobData) { var _a, _b, _c, _d, _e, _f, _g, _h; const exclusiveOptions = [ "removeDependencyOnFailure", "failParentOnFailure", "continueParentOnFailure", "ignoreDependencyOnFailure" ]; const exceedLimit = this.opts.sizeLimit && (0, utils_1.lengthInUtf8Bytes)(jobData.data) > this.opts.sizeLimit; if (exceedLimit) { throw new Error(`The size of job ${this.name} exceeds the limit ${this.opts.sizeLimit} bytes`); } if (this.opts.delay && this.opts.repeat && !((_a = this.opts.repeat) === null || _a === void 0 ? void 0 : _a.count)) { throw new Error(`Delay and repeat options cannot be used together`); } const enabledExclusiveOptions = exclusiveOptions.filter((opt) => this.opts[opt]); if (enabledExclusiveOptions.length > 1) { const optionsList = enabledExclusiveOptions.join(", "); throw new Error(`The following options cannot be used together: ${optionsList}`); } if ((_b = this.opts) === null || _b === void 0 ? void 0 : _b.jobId) { if (`${parseInt(this.opts.jobId, 10)}` === ((_c = this.opts) === null || _c === void 0 ? void 0 : _c.jobId)) { throw new Error("Custom Id cannot be integers"); } if (((_d = this.opts) === null || _d === void 0 ? void 0 : _d.jobId.includes(":")) && ((_f = (_e = this.opts) === null || _e === void 0 ? void 0 : _e.jobId) === null || _f === void 0 ? void 0 : _f.split(":").length) !== 3) { throw new Error("Custom Id cannot contain :"); } } if (this.opts.priority) { if (Math.trunc(this.opts.priority) !== this.opts.priority) { throw new Error(`Priority should not be float`); } if (this.opts.priority > exports2.PRIORITY_LIMIT) { throw new Error(`Priority should be between 0 and ${exports2.PRIORITY_LIMIT}`); } } if (this.opts.deduplication) { if (!((_g = this.opts.deduplication) === null || _g === void 0 ? void 0 : _g.id)) { throw new Error("Deduplication id must be provided"); } if (this.parentKey) { throw new Error("Deduplication and parent options cannot be used together"); } } if (this.opts.debounce) { if (!((_h = this.opts.debounce) === null || _h === void 0 ? void 0 : _h.id)) { throw new Error("Debounce id must be provided"); } if (this.parentKey) { throw new Error("Debounce and parent options cannot be used together"); } } if (typeof this.opts.backoff === "object" && typeof this.opts.backoff.jitter === "number") { if (this.opts.backoff.jitter < 0 || this.opts.backoff.jitter > 1) { throw new Error(`Jitter should be between 0 and 1`); } } } updateStacktrace(err) { this.stacktrace = this.stacktrace || []; if (err === null || err === void 0 ? void 0 : err.stack) { this.stacktrace.push(err.stack); if (this.opts.stackTraceLimit === 0) { this.stacktrace = []; } else if (this.opts.stackTraceLimit) { this.stacktrace = this.stacktrace.slice(-this.opts.stackTraceLimit); } } } setSpanJobAttributes(span) { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobName]: this.name, [enums_1.TelemetryAttributes.JobId]: this.id }); } }; exports2.Job = Job; function getTraces(stacktrace) { if (!stacktrace) { return []; } const traces = (0, utils_1.tryCatch)(JSON.parse, JSON, [stacktrace]); if (traces === utils_1.errorObject || !(traces instanceof Array)) { return []; } else { return traces; } } __name(getTraces, "getTraces"); function getReturnValue(_value) { const value = (0, utils_1.tryCatch)(JSON.parse, JSON, [_value]); if (value !== utils_1.errorObject) { return value; } else { logger("corrupted returnvalue: " + _value, value); } } __name(getReturnValue, "getReturnValue"); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue-keys.js var require_queue_keys = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue-keys.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QueueKeys = void 0; var QueueKeys = class { static { __name(this, "QueueKeys"); } constructor(prefix = "bull") { this.prefix = prefix; } getKeys(name) { const keys = {}; [ "", "active", "wait", "waiting-children", "paused", "id", "delayed", "prioritized", "stalled-check", "completed", "failed", "stalled", "repeat", "limiter", "meta", "events", "pc", // priority counter key "marker", // marker key "de" // deduplication key ].forEach((key) => { keys[key] = this.toKey(name, key); }); return keys; } toKey(name, type) { return `${this.getQueueQualifiedName(name)}:${type}`; } getQueueQualifiedName(name) { return `${this.prefix}:${name}`; } }; exports2.QueueKeys = QueueKeys; } }); // ../../node_modules/.pnpm/@ioredis+commands@1.10.0/node_modules/@ioredis/commands/built/commands.json var require_commands = __commonJS({ "../../node_modules/.pnpm/@ioredis+commands@1.10.0/node_modules/@ioredis/commands/built/commands.json"(exports2, module2) { module2.exports = { vadd: { arity: -5, flags: [ "write", "denyoom", "module" ], keyStart: 1, keyStop: 1, step: 1 }, vcard: { arity: 2, flags: [ "readonly", "module", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, vdim: { arity: 2, flags: [ "readonly", "module", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, vemb: { arity: -3, flags: [ "readonly", "module", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, vgetattr: { arity: 3, flags: [ "readonly", "module", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, vinfo: { arity: 2, flags: [ "readonly", "module", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, vismember: { arity: 3, flags: [ "readonly", "module" ], keyStart: 1, keyStop: 1, step: 1 }, vlinks: { arity: -3, flags: [ "readonly", "module", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, vrandmember: { arity: -2, flags: [ "readonly", "module" ], keyStart: 1, keyStop: 1, step: 1 }, vrange: { arity: -4, flags: [ "readonly", "module" ], keyStart: 1, keyStop: 1, step: 1 }, vrem: { arity: 3, flags: [ "write", "module" ], keyStart: 1, keyStop: 1, step: 1 }, vsetattr: { arity: 4, flags: [ "write", "module", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, vsim: { arity: -4, flags: [ "readonly", "module" ], keyStart: 1, keyStop: 1, step: 1 }, acl: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, append: { arity: 3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, arcount: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, ardel: { arity: -3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, ardelrange: { arity: -4, flags: [ "write" ], keyStart: 1, keyStop: 1, step: 1 }, arget: { arity: 3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, argetrange: { arity: 4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, argrep: { arity: -6, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, arinfo: { arity: -2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, arinsert: { arity: -3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, arlastitems: { arity: -3, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, arlen: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, armget: { arity: -3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, armset: { arity: -4, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, arnext: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, arop: { arity: -5, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, arring: { arity: -4, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 1, step: 1 }, arscan: { arity: -4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, arseek: { arity: 3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, arset: { arity: -4, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, asking: { arity: 1, flags: [ "fast" ], keyStart: 0, keyStop: 0, step: 0 }, auth: { arity: -2, flags: [ "noscript", "loading", "stale", "fast", "no_auth", "allow_busy" ], keyStart: 0, keyStop: 0, step: 0 }, bgrewriteaof: { arity: 1, flags: [ "admin", "noscript", "no_async_loading" ], keyStart: 0, keyStop: 0, step: 0 }, bgsave: { arity: -1, flags: [ "admin", "noscript", "no_async_loading" ], keyStart: 0, keyStop: 0, step: 0 }, bitcount: { arity: -2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, bitfield: { arity: -2, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 1, step: 1 }, bitfield_ro: { arity: -2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, bitop: { arity: -4, flags: [ "write", "denyoom" ], keyStart: 2, keyStop: -1, step: 1 }, bitpos: { arity: -3, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, blmove: { arity: 6, flags: [ "write", "denyoom", "noscript", "blocking" ], keyStart: 1, keyStop: 2, step: 1 }, blmpop: { arity: -5, flags: [ "write", "blocking", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, blpop: { arity: -3, flags: [ "write", "noscript", "blocking" ], keyStart: 1, keyStop: -2, step: 1 }, brpop: { arity: -3, flags: [ "write", "noscript", "blocking" ], keyStart: 1, keyStop: -2, step: 1 }, brpoplpush: { arity: 4, flags: [ "write", "denyoom", "noscript", "blocking" ], keyStart: 1, keyStop: 2, step: 1 }, bzmpop: { arity: -5, flags: [ "write", "blocking", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, bzpopmax: { arity: -3, flags: [ "write", "noscript", "blocking", "fast" ], keyStart: 1, keyStop: -2, step: 1 }, bzpopmin: { arity: -3, flags: [ "write", "noscript", "blocking", "fast" ], keyStart: 1, keyStop: -2, step: 1 }, client: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, cluster: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, command: { arity: -1, flags: [ "loading", "stale" ], keyStart: 0, keyStop: 0, step: 0 }, config: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, copy: { arity: -3, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 2, step: 1 }, dbsize: { arity: 1, flags: [ "readonly", "fast" ], keyStart: 0, keyStop: 0, step: 0 }, debug: { arity: -2, flags: [ "admin", "noscript", "loading", "stale" ], keyStart: 0, keyStop: 0, step: 0 }, decr: { arity: 2, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, decrby: { arity: 3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, del: { arity: -2, flags: [ "write" ], keyStart: 1, keyStop: -1, step: 1 }, discard: { arity: 1, flags: [ "noscript", "loading", "stale", "fast", "allow_busy" ], keyStart: 0, keyStop: 0, step: 0 }, dump: { arity: 2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, echo: { arity: 2, flags: [ "fast" ], keyStart: 0, keyStop: 0, step: 0 }, eval: { arity: -3, flags: [ "noscript", "stale", "skip_monitor", "no_mandatory_keys", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, eval_ro: { arity: -3, flags: [ "readonly", "noscript", "stale", "skip_monitor", "no_mandatory_keys", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, evalsha: { arity: -3, flags: [ "noscript", "stale", "skip_monitor", "no_mandatory_keys", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, evalsha_ro: { arity: -3, flags: [ "readonly", "noscript", "stale", "skip_monitor", "no_mandatory_keys", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, exec: { arity: 1, flags: [ "noscript", "loading", "stale", "skip_slowlog" ], keyStart: 0, keyStop: 0, step: 0 }, exists: { arity: -2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: -1, step: 1 }, expire: { arity: -3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, expireat: { arity: -3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, expiretime: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, failover: { arity: -1, flags: [ "admin", "noscript", "stale" ], keyStart: 0, keyStop: 0, step: 0 }, fcall: { arity: -3, flags: [ "noscript", "stale", "skip_monitor", "no_mandatory_keys", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, fcall_ro: { arity: -3, flags: [ "readonly", "noscript", "stale", "skip_monitor", "no_mandatory_keys", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, flushall: { arity: -1, flags: [ "write" ], keyStart: 0, keyStop: 0, step: 0 }, flushdb: { arity: -1, flags: [ "write" ], keyStart: 0, keyStop: 0, step: 0 }, function: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, geoadd: { arity: -5, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 1, step: 1 }, geodist: { arity: -4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, geohash: { arity: -2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, geopos: { arity: -2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, georadius: { arity: -6, flags: [ "write", "denyoom", "movablekeys" ], keyStart: 1, keyStop: 1, step: 1 }, georadius_ro: { arity: -6, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, georadiusbymember: { arity: -5, flags: [ "write", "denyoom", "movablekeys" ], keyStart: 1, keyStop: 1, step: 1 }, georadiusbymember_ro: { arity: -5, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, geosearch: { arity: -7, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, geosearchstore: { arity: -8, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 2, step: 1 }, get: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, getbit: { arity: 3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, getdel: { arity: 2, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, getex: { arity: -2, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, getrange: { arity: 4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, getset: { arity: 3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hdel: { arity: -3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hello: { arity: -1, flags: [ "noscript", "loading", "stale", "fast", "no_auth", "allow_busy" ], keyStart: 0, keyStop: 0, step: 0 }, hexists: { arity: 3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hexpire: { arity: -6, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hexpireat: { arity: -6, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hexpiretime: { arity: -5, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hget: { arity: 3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hgetall: { arity: 2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, hgetdel: { arity: -5, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hgetex: { arity: -5, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hincrby: { arity: 4, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hincrbyfloat: { arity: 4, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hkeys: { arity: 2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, hlen: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hmget: { arity: -3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hmset: { arity: -4, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hpersist: { arity: -5, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hpexpire: { arity: -6, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hpexpireat: { arity: -6, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hpexpiretime: { arity: -5, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hpttl: { arity: -5, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hrandfield: { arity: -2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, hscan: { arity: -3, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, hset: { arity: -4, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hsetex: { arity: -6, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hsetnx: { arity: 4, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hstrlen: { arity: 3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, httl: { arity: -5, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, hvals: { arity: 2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, incr: { arity: 2, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, incrby: { arity: 3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, incrbyfloat: { arity: 3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, increx: { arity: -2, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, info: { arity: -1, flags: [ "loading", "stale" ], keyStart: 0, keyStop: 0, step: 0 }, keys: { arity: 2, flags: [ "readonly" ], keyStart: 0, keyStop: 0, step: 0 }, lastsave: { arity: 1, flags: [ "loading", "stale", "fast" ], keyStart: 0, keyStop: 0, step: 0 }, latency: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, lcs: { arity: -3, flags: [ "readonly" ], keyStart: 1, keyStop: 2, step: 1 }, lindex: { arity: 3, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, linsert: { arity: 5, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 1, step: 1 }, llen: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, lmove: { arity: 5, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 2, step: 1 }, lmpop: { arity: -4, flags: [ "write", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, lolwut: { arity: -1, flags: [ "readonly", "fast" ], keyStart: 0, keyStop: 0, step: 0 }, lpop: { arity: -2, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, lpos: { arity: -3, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, lpush: { arity: -3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, lpushx: { arity: -3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, lrange: { arity: 4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, lrem: { arity: 4, flags: [ "write" ], keyStart: 1, keyStop: 1, step: 1 }, lset: { arity: 4, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 1, step: 1 }, ltrim: { arity: 4, flags: [ "write" ], keyStart: 1, keyStop: 1, step: 1 }, memory: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, mget: { arity: -2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: -1, step: 1 }, migrate: { arity: -6, flags: [ "write", "movablekeys" ], keyStart: 3, keyStop: 3, step: 1 }, module: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, monitor: { arity: 1, flags: [ "admin", "noscript", "loading", "stale" ], keyStart: 0, keyStop: 0, step: 0 }, move: { arity: 3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, mset: { arity: -3, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: -1, step: 2 }, msetex: { arity: -4, flags: [ "write", "denyoom", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, msetnx: { arity: -3, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: -1, step: 2 }, multi: { arity: 1, flags: [ "noscript", "loading", "stale", "fast", "allow_busy" ], keyStart: 0, keyStop: 0, step: 0 }, object: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, persist: { arity: 2, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, pexpire: { arity: -3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, pexpireat: { arity: -3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, pexpiretime: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, pfadd: { arity: -2, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, pfcount: { arity: -2, flags: [ "readonly" ], keyStart: 1, keyStop: -1, step: 1 }, pfdebug: { arity: 3, flags: [ "write", "denyoom", "admin" ], keyStart: 2, keyStop: 2, step: 1 }, pfmerge: { arity: -2, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: -1, step: 1 }, pfselftest: { arity: 1, flags: [ "admin" ], keyStart: 0, keyStop: 0, step: 0 }, ping: { arity: -1, flags: [ "fast" ], keyStart: 0, keyStop: 0, step: 0 }, psetex: { arity: 4, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 1, step: 1 }, psubscribe: { arity: -2, flags: [ "pubsub", "noscript", "loading", "stale" ], keyStart: 0, keyStop: 0, step: 0 }, psync: { arity: -3, flags: [ "admin", "noscript", "no_async_loading", "no_multi" ], keyStart: 0, keyStop: 0, step: 0 }, pttl: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, publish: { arity: 3, flags: [ "pubsub", "loading", "stale", "fast" ], keyStart: 0, keyStop: 0, step: 0 }, pubsub: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, punsubscribe: { arity: -1, flags: [ "pubsub", "noscript", "loading", "stale" ], keyStart: 0, keyStop: 0, step: 0 }, quit: { arity: -1, flags: [ "noscript", "loading", "stale", "fast", "no_auth", "allow_busy" ], keyStart: 0, keyStop: 0, step: 0 }, randomkey: { arity: 1, flags: [ "readonly" ], keyStart: 0, keyStop: 0, step: 0 }, readonly: { arity: 1, flags: [ "loading", "stale", "fast" ], keyStart: 0, keyStop: 0, step: 0 }, readwrite: { arity: 1, flags: [ "loading", "stale", "fast" ], keyStart: 0, keyStop: 0, step: 0 }, rename: { arity: 3, flags: [ "write" ], keyStart: 1, keyStop: 2, step: 1 }, renamenx: { arity: 3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 2, step: 1 }, replconf: { arity: -1, flags: [ "admin", "noscript", "loading", "stale", "allow_busy" ], keyStart: 0, keyStop: 0, step: 0 }, replicaof: { arity: 3, flags: [ "admin", "noscript", "stale", "no_async_loading" ], keyStart: 0, keyStop: 0, step: 0 }, reset: { arity: 1, flags: [ "noscript", "loading", "stale", "fast", "no_auth", "allow_busy" ], keyStart: 0, keyStop: 0, step: 0 }, restore: { arity: -4, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 1, step: 1 }, "restore-asking": { arity: -4, flags: [ "write", "denyoom", "asking" ], keyStart: 1, keyStop: 1, step: 1 }, role: { arity: 1, flags: [ "noscript", "loading", "stale", "fast" ], keyStart: 0, keyStop: 0, step: 0 }, rpop: { arity: -2, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, rpoplpush: { arity: 3, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 2, step: 1 }, rpush: { arity: -3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, rpushx: { arity: -3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, sadd: { arity: -3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, save: { arity: 1, flags: [ "admin", "noscript", "no_async_loading", "no_multi" ], keyStart: 0, keyStop: 0, step: 0 }, scan: { arity: -2, flags: [ "readonly" ], keyStart: 0, keyStop: 0, step: 0 }, scard: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, script: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, sdiff: { arity: -2, flags: [ "readonly" ], keyStart: 1, keyStop: -1, step: 1 }, sdiffstore: { arity: -3, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: -1, step: 1 }, select: { arity: 2, flags: [ "loading", "stale", "fast" ], keyStart: 0, keyStop: 0, step: 0 }, set: { arity: -3, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 1, step: 1 }, setbit: { arity: 4, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 1, step: 1 }, setex: { arity: 4, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 1, step: 1 }, setnx: { arity: 3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, setrange: { arity: 4, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 1, step: 1 }, shutdown: { arity: -1, flags: [ "admin", "noscript", "loading", "stale", "no_multi", "allow_busy" ], keyStart: 0, keyStop: 0, step: 0 }, sinter: { arity: -2, flags: [ "readonly" ], keyStart: 1, keyStop: -1, step: 1 }, sintercard: { arity: -3, flags: [ "readonly", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, sinterstore: { arity: -3, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: -1, step: 1 }, sismember: { arity: 3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, slaveof: { arity: 3, flags: [ "admin", "noscript", "stale", "no_async_loading" ], keyStart: 0, keyStop: 0, step: 0 }, slowlog: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, smembers: { arity: 2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, smismember: { arity: -3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, smove: { arity: 4, flags: [ "write", "fast" ], keyStart: 1, keyStop: 2, step: 1 }, sort: { arity: -2, flags: [ "write", "denyoom", "movablekeys" ], keyStart: 1, keyStop: 1, step: 1 }, sort_ro: { arity: -2, flags: [ "readonly", "movablekeys" ], keyStart: 1, keyStop: 1, step: 1 }, spop: { arity: -2, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, spublish: { arity: 3, flags: [ "pubsub", "loading", "stale", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, srandmember: { arity: -2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, srem: { arity: -3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, sscan: { arity: -3, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, ssubscribe: { arity: -2, flags: [ "pubsub", "noscript", "loading", "stale" ], keyStart: 1, keyStop: -1, step: 1 }, strlen: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, subscribe: { arity: -2, flags: [ "pubsub", "noscript", "loading", "stale" ], keyStart: 0, keyStop: 0, step: 0 }, substr: { arity: 4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, sunion: { arity: -2, flags: [ "readonly" ], keyStart: 1, keyStop: -1, step: 1 }, sunionstore: { arity: -3, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: -1, step: 1 }, sunsubscribe: { arity: -1, flags: [ "pubsub", "noscript", "loading", "stale" ], keyStart: 1, keyStop: -1, step: 1 }, swapdb: { arity: 3, flags: [ "write", "fast" ], keyStart: 0, keyStop: 0, step: 0 }, sync: { arity: 1, flags: [ "admin", "noscript", "no_async_loading", "no_multi" ], keyStart: 0, keyStop: 0, step: 0 }, time: { arity: 1, flags: [ "loading", "stale", "fast" ], keyStart: 0, keyStop: 0, step: 0 }, touch: { arity: -2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: -1, step: 1 }, ttl: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, type: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, unlink: { arity: -2, flags: [ "write", "fast" ], keyStart: 1, keyStop: -1, step: 1 }, unsubscribe: { arity: -1, flags: [ "pubsub", "noscript", "loading", "stale" ], keyStart: 0, keyStop: 0, step: 0 }, unwatch: { arity: 1, flags: [ "noscript", "loading", "stale", "fast", "allow_busy" ], keyStart: 0, keyStop: 0, step: 0 }, wait: { arity: 3, flags: [ "noscript" ], keyStart: 0, keyStop: 0, step: 0 }, watch: { arity: -2, flags: [ "noscript", "loading", "stale", "fast", "allow_busy" ], keyStart: 1, keyStop: -1, step: 1 }, xack: { arity: -4, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, xadd: { arity: -5, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, xautoclaim: { arity: -6, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, xclaim: { arity: -6, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, xdel: { arity: -3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, xdelex: { arity: -5, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, xgroup: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, xinfo: { arity: -2, flags: [], keyStart: 0, keyStop: 0, step: 0 }, xlen: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, xnack: { arity: -7, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, xpending: { arity: -3, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, xrange: { arity: -4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, xread: { arity: -4, flags: [ "readonly", "blocking", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, xreadgroup: { arity: -7, flags: [ "write", "blocking", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, xrevrange: { arity: -4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, xsetid: { arity: -3, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, xtrim: { arity: -4, flags: [ "write" ], keyStart: 1, keyStop: 1, step: 1 }, zadd: { arity: -4, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zcard: { arity: 2, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zcount: { arity: 4, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zdiff: { arity: -3, flags: [ "readonly", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, zdiffstore: { arity: -4, flags: [ "write", "denyoom", "movablekeys" ], keyStart: 1, keyStop: 1, step: 1 }, zincrby: { arity: 4, flags: [ "write", "denyoom", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zinter: { arity: -3, flags: [ "readonly", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, zintercard: { arity: -3, flags: [ "readonly", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, zinterstore: { arity: -4, flags: [ "write", "denyoom", "movablekeys" ], keyStart: 1, keyStop: 1, step: 1 }, zlexcount: { arity: 4, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zmpop: { arity: -4, flags: [ "write", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, zmscore: { arity: -3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zpopmax: { arity: -2, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zpopmin: { arity: -2, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zrandmember: { arity: -2, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, zrange: { arity: -4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, zrangebylex: { arity: -4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, zrangebyscore: { arity: -4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, zrangestore: { arity: -5, flags: [ "write", "denyoom" ], keyStart: 1, keyStop: 2, step: 1 }, zrank: { arity: 3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zrem: { arity: -3, flags: [ "write", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zremrangebylex: { arity: 4, flags: [ "write" ], keyStart: 1, keyStop: 1, step: 1 }, zremrangebyrank: { arity: 4, flags: [ "write" ], keyStart: 1, keyStop: 1, step: 1 }, zremrangebyscore: { arity: 4, flags: [ "write" ], keyStart: 1, keyStop: 1, step: 1 }, zrevrange: { arity: -4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, zrevrangebylex: { arity: -4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, zrevrangebyscore: { arity: -4, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, zrevrank: { arity: 3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zscan: { arity: -3, flags: [ "readonly" ], keyStart: 1, keyStop: 1, step: 1 }, zscore: { arity: 3, flags: [ "readonly", "fast" ], keyStart: 1, keyStop: 1, step: 1 }, zunion: { arity: -3, flags: [ "readonly", "movablekeys" ], keyStart: 0, keyStop: 0, step: 0 }, zunionstore: { arity: -4, flags: [ "write", "denyoom", "movablekeys" ], keyStart: 1, keyStop: 1, step: 1 } }; } }); // ../../node_modules/.pnpm/@ioredis+commands@1.10.0/node_modules/@ioredis/commands/built/index.js var require_built = __commonJS({ "../../node_modules/.pnpm/@ioredis+commands@1.10.0/node_modules/@ioredis/commands/built/index.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getKeyIndexes = exports2.hasFlag = exports2.exists = exports2.list = void 0; var commands_json_1 = __importDefault2(require_commands()); exports2.list = Object.keys(commands_json_1.default); var flags = {}; exports2.list.forEach((commandName) => { flags[commandName] = commands_json_1.default[commandName].flags.reduce(function(flags2, flag) { flags2[flag] = true; return flags2; }, {}); }); function exists(commandName, options) { commandName = (options === null || options === void 0 ? void 0 : options.caseInsensitive) ? String(commandName).toLowerCase() : commandName; return Boolean(commands_json_1.default[commandName]); } __name(exists, "exists"); exports2.exists = exists; function hasFlag(commandName, flag, options) { commandName = (options === null || options === void 0 ? void 0 : options.nameCaseInsensitive) ? String(commandName).toLowerCase() : commandName; if (!flags[commandName]) { throw new Error("Unknown command " + commandName); } return Boolean(flags[commandName][flag]); } __name(hasFlag, "hasFlag"); exports2.hasFlag = hasFlag; function getKeyIndexes(commandName, args, options) { commandName = (options === null || options === void 0 ? void 0 : options.nameCaseInsensitive) ? String(commandName).toLowerCase() : commandName; const command = commands_json_1.default[commandName]; if (!command) { throw new Error("Unknown command " + commandName); } if (!Array.isArray(args)) { throw new Error("Expect args to be an array"); } const keys = []; const parseExternalKey = Boolean(options && options.parseExternalKey); const takeDynamicKeys = /* @__PURE__ */ __name((args2, startIndex) => { const keys2 = []; const keyStop = Number(args2[startIndex]); for (let i = 0; i < keyStop; i++) { keys2.push(i + startIndex + 1); } return keys2; }, "takeDynamicKeys"); const takeKeyAfterToken = /* @__PURE__ */ __name((args2, startIndex, token) => { for (let i = startIndex; i < args2.length - 1; i += 1) { if (String(args2[i]).toLowerCase() === token.toLowerCase()) { return i + 1; } } return null; }, "takeKeyAfterToken"); switch (commandName) { case "zunionstore": case "zinterstore": case "zdiffstore": keys.push(0, ...takeDynamicKeys(args, 1)); break; case "eval": case "evalsha": case "eval_ro": case "evalsha_ro": case "fcall": case "fcall_ro": case "blmpop": case "bzmpop": keys.push(...takeDynamicKeys(args, 1)); break; case "sintercard": case "lmpop": case "zunion": case "zinter": case "zmpop": case "zintercard": case "zdiff": { keys.push(...takeDynamicKeys(args, 0)); break; } case "msetex": { const numKeys = Number(args[0]); for (let i = 0; i < numKeys; i++) { keys.push(1 + i * 2); } break; } case "georadius": { keys.push(0); const storeKey = takeKeyAfterToken(args, 5, "STORE"); if (storeKey) keys.push(storeKey); const distKey = takeKeyAfterToken(args, 5, "STOREDIST"); if (distKey) keys.push(distKey); break; } case "georadiusbymember": { keys.push(0); const storeKey = takeKeyAfterToken(args, 4, "STORE"); if (storeKey) keys.push(storeKey); const distKey = takeKeyAfterToken(args, 4, "STOREDIST"); if (distKey) keys.push(distKey); break; } case "sort": case "sort_ro": keys.push(0); for (let i = 1; i < args.length - 1; i++) { let arg = args[i]; if (typeof arg !== "string") { continue; } const directive = arg.toUpperCase(); if (directive === "GET") { i += 1; arg = args[i]; if (arg !== "#") { if (parseExternalKey) { keys.push([i, getExternalKeyNameLength(arg)]); } else { keys.push(i); } } } else if (directive === "BY") { i += 1; if (parseExternalKey) { keys.push([i, getExternalKeyNameLength(args[i])]); } else { keys.push(i); } } else if (directive === "STORE") { i += 1; keys.push(i); } } break; case "migrate": if (args[2] === "") { for (let i = 5; i < args.length - 1; i++) { const arg = args[i]; if (typeof arg === "string" && arg.toUpperCase() === "KEYS") { for (let j = i + 1; j < args.length; j++) { keys.push(j); } break; } } } else { keys.push(2); } break; case "xreadgroup": case "xread": for (let i = commandName === "xread" ? 0 : 3; i < args.length - 1; i++) { if (String(args[i]).toUpperCase() === "STREAMS") { for (let j = i + 1; j <= i + (args.length - 1 - i) / 2; j++) { keys.push(j); } break; } } break; default: if (command.step > 0) { const keyStart = command.keyStart - 1; const keyStop = command.keyStop > 0 ? command.keyStop : args.length + command.keyStop + 1; for (let i = keyStart; i < keyStop; i += command.step) { keys.push(i); } } break; } return keys; } __name(getKeyIndexes, "getKeyIndexes"); exports2.getKeyIndexes = getKeyIndexes; function getExternalKeyNameLength(key) { if (typeof key !== "string") { key = String(key); } const hashPos = key.indexOf("->"); return hashPos === -1 ? key.length : hashPos; } __name(getExternalKeyNameLength, "getExternalKeyNameLength"); } }); // ../../node_modules/.pnpm/standard-as-callback@2.1.0/node_modules/standard-as-callback/built/utils.js var require_utils17 = __commonJS({ "../../node_modules/.pnpm/standard-as-callback@2.1.0/node_modules/standard-as-callback/built/utils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.tryCatch = exports2.errorObj = void 0; exports2.errorObj = { e: {} }; var tryCatchTarget2; function tryCatcher2(err, val) { try { const target = tryCatchTarget2; tryCatchTarget2 = null; return target.apply(this, arguments); } catch (e) { exports2.errorObj.e = e; return exports2.errorObj; } } __name(tryCatcher2, "tryCatcher"); function tryCatch2(fn) { tryCatchTarget2 = fn; return tryCatcher2; } __name(tryCatch2, "tryCatch"); exports2.tryCatch = tryCatch2; } }); // ../../node_modules/.pnpm/standard-as-callback@2.1.0/node_modules/standard-as-callback/built/index.js var require_built2 = __commonJS({ "../../node_modules/.pnpm/standard-as-callback@2.1.0/node_modules/standard-as-callback/built/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var utils_1 = require_utils17(); function throwLater(e) { setTimeout(function() { throw e; }, 0); } __name(throwLater, "throwLater"); function asCallback(promise, nodeback, options) { if (typeof nodeback === "function") { promise.then((val) => { let ret2; if (options !== void 0 && Object(options).spread && Array.isArray(val)) { ret2 = utils_1.tryCatch(nodeback).apply(void 0, [null].concat(val)); } else { ret2 = val === void 0 ? utils_1.tryCatch(nodeback)(null) : utils_1.tryCatch(nodeback)(null, val); } if (ret2 === utils_1.errorObj) { throwLater(ret2.e); } }, (cause) => { if (!cause) { const newReason = new Error(cause + ""); Object.assign(newReason, { cause }); cause = newReason; } const ret2 = utils_1.tryCatch(nodeback)(cause); if (ret2 === utils_1.errorObj) { throwLater(ret2.e); } }); } return promise; } __name(asCallback, "asCallback"); exports2.default = asCallback; } }); // ../../node_modules/.pnpm/redis-errors@1.2.0/node_modules/redis-errors/lib/old.js var require_old = __commonJS({ "../../node_modules/.pnpm/redis-errors@1.2.0/node_modules/redis-errors/lib/old.js"(exports2, module2) { "use strict"; var assert = require("assert"); var util2 = require("util"); function RedisError(message) { Object.defineProperty(this, "message", { value: message || "", configurable: true, writable: true }); Error.captureStackTrace(this, this.constructor); } __name(RedisError, "RedisError"); util2.inherits(RedisError, Error); Object.defineProperty(RedisError.prototype, "name", { value: "RedisError", configurable: true, writable: true }); function ParserError(message, buffer, offset) { assert(buffer); assert.strictEqual(typeof offset, "number"); Object.defineProperty(this, "message", { value: message || "", configurable: true, writable: true }); const tmp = Error.stackTraceLimit; Error.stackTraceLimit = 2; Error.captureStackTrace(this, this.constructor); Error.stackTraceLimit = tmp; this.offset = offset; this.buffer = buffer; } __name(ParserError, "ParserError"); util2.inherits(ParserError, RedisError); Object.defineProperty(ParserError.prototype, "name", { value: "ParserError", configurable: true, writable: true }); function ReplyError(message) { Object.defineProperty(this, "message", { value: message || "", configurable: true, writable: true }); const tmp = Error.stackTraceLimit; Error.stackTraceLimit = 2; Error.captureStackTrace(this, this.constructor); Error.stackTraceLimit = tmp; } __name(ReplyError, "ReplyError"); util2.inherits(ReplyError, RedisError); Object.defineProperty(ReplyError.prototype, "name", { value: "ReplyError", configurable: true, writable: true }); function AbortError(message) { Object.defineProperty(this, "message", { value: message || "", configurable: true, writable: true }); Error.captureStackTrace(this, this.constructor); } __name(AbortError, "AbortError"); util2.inherits(AbortError, RedisError); Object.defineProperty(AbortError.prototype, "name", { value: "AbortError", configurable: true, writable: true }); function InterruptError(message) { Object.defineProperty(this, "message", { value: message || "", configurable: true, writable: true }); Error.captureStackTrace(this, this.constructor); } __name(InterruptError, "InterruptError"); util2.inherits(InterruptError, AbortError); Object.defineProperty(InterruptError.prototype, "name", { value: "InterruptError", configurable: true, writable: true }); module2.exports = { RedisError, ParserError, ReplyError, AbortError, InterruptError }; } }); // ../../node_modules/.pnpm/redis-errors@1.2.0/node_modules/redis-errors/lib/modern.js var require_modern = __commonJS({ "../../node_modules/.pnpm/redis-errors@1.2.0/node_modules/redis-errors/lib/modern.js"(exports2, module2) { "use strict"; var assert = require("assert"); var RedisError = class extends Error { static { __name(this, "RedisError"); } get name() { return this.constructor.name; } }; var ParserError = class extends RedisError { static { __name(this, "ParserError"); } constructor(message, buffer, offset) { assert(buffer); assert.strictEqual(typeof offset, "number"); const tmp = Error.stackTraceLimit; Error.stackTraceLimit = 2; super(message); Error.stackTraceLimit = tmp; this.offset = offset; this.buffer = buffer; } get name() { return this.constructor.name; } }; var ReplyError = class extends RedisError { static { __name(this, "ReplyError"); } constructor(message) { const tmp = Error.stackTraceLimit; Error.stackTraceLimit = 2; super(message); Error.stackTraceLimit = tmp; } get name() { return this.constructor.name; } }; var AbortError = class extends RedisError { static { __name(this, "AbortError"); } get name() { return this.constructor.name; } }; var InterruptError = class extends AbortError { static { __name(this, "InterruptError"); } get name() { return this.constructor.name; } }; module2.exports = { RedisError, ParserError, ReplyError, AbortError, InterruptError }; } }); // ../../node_modules/.pnpm/redis-errors@1.2.0/node_modules/redis-errors/index.js var require_redis_errors = __commonJS({ "../../node_modules/.pnpm/redis-errors@1.2.0/node_modules/redis-errors/index.js"(exports2, module2) { "use strict"; var Errors = process.version.charCodeAt(1) < 55 && process.version.charCodeAt(2) === 46 ? require_old() : require_modern(); module2.exports = Errors; } }); // ../../node_modules/.pnpm/cluster-key-slot@1.1.1/node_modules/cluster-key-slot/lib/index.js var require_lib6 = __commonJS({ "../../node_modules/.pnpm/cluster-key-slot@1.1.1/node_modules/cluster-key-slot/lib/index.js"(exports2, module2) { var lookup = [ 0, 4129, 8258, 12387, 16516, 20645, 24774, 28903, 33032, 37161, 41290, 45419, 49548, 53677, 57806, 61935, 4657, 528, 12915, 8786, 21173, 17044, 29431, 25302, 37689, 33560, 45947, 41818, 54205, 50076, 62463, 58334, 9314, 13379, 1056, 5121, 25830, 29895, 17572, 21637, 42346, 46411, 34088, 38153, 58862, 62927, 50604, 54669, 13907, 9842, 5649, 1584, 30423, 26358, 22165, 18100, 46939, 42874, 38681, 34616, 63455, 59390, 55197, 51132, 18628, 22757, 26758, 30887, 2112, 6241, 10242, 14371, 51660, 55789, 59790, 63919, 35144, 39273, 43274, 47403, 23285, 19156, 31415, 27286, 6769, 2640, 14899, 10770, 56317, 52188, 64447, 60318, 39801, 35672, 47931, 43802, 27814, 31879, 19684, 23749, 11298, 15363, 3168, 7233, 60846, 64911, 52716, 56781, 44330, 48395, 36200, 40265, 32407, 28342, 24277, 20212, 15891, 11826, 7761, 3696, 65439, 61374, 57309, 53244, 48923, 44858, 40793, 36728, 37256, 33193, 45514, 41451, 53516, 49453, 61774, 57711, 4224, 161, 12482, 8419, 20484, 16421, 28742, 24679, 33721, 37784, 41979, 46042, 49981, 54044, 58239, 62302, 689, 4752, 8947, 13010, 16949, 21012, 25207, 29270, 46570, 42443, 38312, 34185, 62830, 58703, 54572, 50445, 13538, 9411, 5280, 1153, 29798, 25671, 21540, 17413, 42971, 47098, 34713, 38840, 59231, 63358, 50973, 55100, 9939, 14066, 1681, 5808, 26199, 30326, 17941, 22068, 55628, 51565, 63758, 59695, 39368, 35305, 47498, 43435, 22596, 18533, 30726, 26663, 6336, 2273, 14466, 10403, 52093, 56156, 60223, 64286, 35833, 39896, 43963, 48026, 19061, 23124, 27191, 31254, 2801, 6864, 10931, 14994, 64814, 60687, 56684, 52557, 48554, 44427, 40424, 36297, 31782, 27655, 23652, 19525, 15522, 11395, 7392, 3265, 61215, 65342, 53085, 57212, 44955, 49082, 36825, 40952, 28183, 32310, 20053, 24180, 11923, 16050, 3793, 7920 ]; var toUTF8Array = /* @__PURE__ */ __name(function toUTF8Array2(str) { var char; var i = 0; var p = 0; var utf8 = []; var len = str.length; for (; i < len; i++) { char = str.charCodeAt(i); if (char < 128) { utf8[p++] = char; } else if (char < 2048) { utf8[p++] = char >> 6 | 192; utf8[p++] = char & 63 | 128; } else if ((char & 64512) === 55296 && i + 1 < str.length && (str.charCodeAt(i + 1) & 64512) === 56320) { char = 65536 + ((char & 1023) << 10) + (str.charCodeAt(++i) & 1023); utf8[p++] = char >> 18 | 240; utf8[p++] = char >> 12 & 63 | 128; utf8[p++] = char >> 6 & 63 | 128; utf8[p++] = char & 63 | 128; } else { utf8[p++] = char >> 12 | 224; utf8[p++] = char >> 6 & 63 | 128; utf8[p++] = char & 63 | 128; } } return utf8; }, "toUTF8Array"); var generate = module2.exports = /* @__PURE__ */ __name(function generate2(str) { var char; var i = 0; var start = -1; var result = 0; var resultHash = 0; var utf8 = typeof str === "string" ? toUTF8Array(str) : str; var len = utf8.length; while (i < len) { char = utf8[i++]; if (start === -1) { if (char === 123) { start = i; } } else if (char !== 125) { resultHash = lookup[(char ^ resultHash >> 8) & 255] ^ resultHash << 8; } else if (i - 1 !== start) { return resultHash & 16383; } result = lookup[(char ^ result >> 8) & 255] ^ result << 8; } return result & 16383; }, "generate"); module2.exports.generateMulti = /* @__PURE__ */ __name(function generateMulti(keys) { var i = 1; var len = keys.length; var base = generate(keys[0]); while (i < len) { if (generate(keys[i++]) !== base) return -1; } return base; }, "generateMulti"); } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/argumentParsers.js var require_argumentParsers = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/argumentParsers.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.parseBlockOption = exports2.parseSecondsArgument = void 0; var parseNumberArgument = /* @__PURE__ */ __name((arg) => { if (typeof arg === "number") { return arg; } if (Buffer.isBuffer(arg)) { return parseNumberArgument(arg.toString()); } if (typeof arg === "string") { const value = Number(arg); return Number.isFinite(value) ? value : void 0; } return void 0; }, "parseNumberArgument"); var parseStringArgument = /* @__PURE__ */ __name((arg) => { if (typeof arg === "string") { return arg; } if (Buffer.isBuffer(arg)) { return arg.toString(); } return void 0; }, "parseStringArgument"); var parseSecondsArgument = /* @__PURE__ */ __name((arg) => { const value = parseNumberArgument(arg); if (value === void 0) { return void 0; } if (value <= 0) { return 0; } return value * 1e3; }, "parseSecondsArgument"); exports2.parseSecondsArgument = parseSecondsArgument; var parseBlockOption = /* @__PURE__ */ __name((args) => { for (let i = 0; i < args.length; i++) { const token = parseStringArgument(args[i]); if (token && token.toLowerCase() === "block") { const duration = parseNumberArgument(args[i + 1]); if (duration === void 0) { return void 0; } if (duration <= 0) { return 0; } return duration; } } return null; }, "parseBlockOption"); exports2.parseBlockOption = parseBlockOption; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/Command.js var require_Command = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/Command.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var commands_1 = require_built(); var calculateSlot = require_lib6(); var standard_as_callback_1 = require_built2(); var utils_1 = require_utils15(); var argumentParsers_1 = require_argumentParsers(); var Command = class _Command { static { __name(this, "Command"); } /** * Creates an instance of Command. * @param name Command name * @param args An array of command arguments * @param options * @param callback The callback that handles the response. * If omit, the response will be handled via Promise */ constructor(name, args = [], options = {}, callback) { this.name = name; this.inTransaction = false; this.isTraced = false; this.isResolved = false; this.transformed = false; this.replyEncoding = options.replyEncoding; this.errorStack = options.errorStack; this.args = args.flat(); this.callback = callback; this.initPromise(); if (options.keyPrefix) { const isBufferKeyPrefix = options.keyPrefix instanceof Buffer; let keyPrefixBuffer = isBufferKeyPrefix ? options.keyPrefix : null; this._iterateKeys((key) => { if (key instanceof Buffer) { if (keyPrefixBuffer === null) { keyPrefixBuffer = Buffer.from(options.keyPrefix); } return Buffer.concat([keyPrefixBuffer, key]); } else if (isBufferKeyPrefix) { return Buffer.concat([options.keyPrefix, Buffer.from(String(key))]); } return options.keyPrefix + key; }); } if (options.readOnly) { this.isReadOnly = true; } } /** * Check whether the command has the flag */ static checkFlag(flagName, commandName) { commandName = commandName.toLowerCase(); return !!this.getFlagMap()[flagName][commandName]; } static setArgumentTransformer(name, func) { this._transformer.argument[name] = func; } static setReplyTransformer(name, func) { this._transformer.reply[name] = func; } static getFlagMap() { if (!this.flagMap) { this.flagMap = Object.keys(_Command.FLAGS).reduce((map, flagName) => { map[flagName] = {}; _Command.FLAGS[flagName].forEach((commandName) => { map[flagName][commandName] = true; }); return map; }, {}); } return this.flagMap; } getSlot() { if (typeof this.slot === "undefined") { const key = this.getKeys()[0]; this.slot = key == null ? null : calculateSlot(key); } return this.slot; } getKeys() { return this._iterateKeys(); } /** * Convert command to writable buffer or string */ toWritable(_socket) { let result; const commandStr = "*" + (this.args.length + 1) + "\r\n$" + Buffer.byteLength(this.name) + "\r\n" + this.name + "\r\n"; if (this.bufferMode) { const buffers = new MixedBuffers(); buffers.push(commandStr); for (let i = 0; i < this.args.length; ++i) { const arg = this.args[i]; if (arg instanceof Buffer) { if (arg.length === 0) { buffers.push("$0\r\n\r\n"); } else { buffers.push("$" + arg.length + "\r\n"); buffers.push(arg); buffers.push("\r\n"); } } else { buffers.push("$" + Buffer.byteLength(arg) + "\r\n" + arg + "\r\n"); } } result = buffers.toBuffer(); } else { result = commandStr; for (let i = 0; i < this.args.length; ++i) { const arg = this.args[i]; result += "$" + Buffer.byteLength(arg) + "\r\n" + arg + "\r\n"; } } return result; } stringifyArguments() { for (let i = 0; i < this.args.length; ++i) { const arg = this.args[i]; if (typeof arg === "string") { } else if (arg instanceof Buffer) { this.bufferMode = true; } else { this.args[i] = (0, utils_1.toArg)(arg); } } } /** * Convert buffer/buffer[] to string/string[], * and apply reply transformer. */ transformReply(result) { if (this.replyEncoding) { result = (0, utils_1.convertBufferToString)(result, this.replyEncoding); } const transformer = _Command._transformer.reply[this.name]; if (transformer) { result = transformer(result); } return result; } /** * Set the wait time before terminating the attempt to execute a command * and generating an error. */ setTimeout(ms) { if (!this._commandTimeoutTimer) { this._commandTimeoutTimer = setTimeout(() => { if (!this.isResolved) { this.reject(new Error("Command timed out")); } }, ms); } } /** * Set a timeout for blocking commands. * When the timeout expires, the command resolves with null (matching Redis behavior). * This handles the case of undetectable network failures (e.g., docker network disconnect) * where the TCP connection becomes a zombie and no close event fires. */ setBlockingTimeout(ms) { if (ms <= 0) { return; } if (this._blockingTimeoutTimer) { clearTimeout(this._blockingTimeoutTimer); this._blockingTimeoutTimer = void 0; } const now = Date.now(); if (this._blockingDeadline === void 0) { this._blockingDeadline = now + ms; } const remaining = this._blockingDeadline - now; if (remaining <= 0) { this.resolve(null); return; } this._blockingTimeoutTimer = setTimeout(() => { if (this.isResolved) { this._blockingTimeoutTimer = void 0; return; } this._blockingTimeoutTimer = void 0; this.resolve(null); }, remaining); } /** * Extract the blocking timeout from the command arguments. * * @returns The timeout in seconds, null for indefinite blocking (timeout of 0), * or undefined if this is not a blocking command */ extractBlockingTimeout() { const args = this.args; if (!args || args.length === 0) { return void 0; } const name = this.name.toLowerCase(); if (_Command.checkFlag("LAST_ARG_TIMEOUT_COMMANDS", name)) { return (0, argumentParsers_1.parseSecondsArgument)(args[args.length - 1]); } if (_Command.checkFlag("FIRST_ARG_TIMEOUT_COMMANDS", name)) { return (0, argumentParsers_1.parseSecondsArgument)(args[0]); } if (_Command.checkFlag("BLOCK_OPTION_COMMANDS", name)) { return (0, argumentParsers_1.parseBlockOption)(args); } return void 0; } /** * Clear the command and blocking timers */ _clearTimers() { const existingTimer = this._commandTimeoutTimer; if (existingTimer) { clearTimeout(existingTimer); delete this._commandTimeoutTimer; } const blockingTimer = this._blockingTimeoutTimer; if (blockingTimer) { clearTimeout(blockingTimer); delete this._blockingTimeoutTimer; } } initPromise() { const promise = new Promise((resolve, reject) => { if (!this.transformed) { this.transformed = true; const transformer = _Command._transformer.argument[this.name]; if (transformer) { this.args = transformer(this.args); } this.stringifyArguments(); } this.resolve = this._convertValue(resolve); this.reject = (err) => { this._clearTimers(); if (this.errorStack) { reject((0, utils_1.optimizeErrorStack)(err, this.errorStack.stack, __dirname)); } else { reject(err); } }; }); this.promise = (0, standard_as_callback_1.default)(promise, this.callback); } /** * Iterate through the command arguments that are considered keys. */ _iterateKeys(transform = (key) => key) { if (typeof this.keys === "undefined") { this.keys = []; if ((0, commands_1.exists)(this.name, { caseInsensitive: true })) { const keyIndexes = (0, commands_1.getKeyIndexes)(this.name, this.args, { nameCaseInsensitive: true }); for (const index of keyIndexes) { this.args[index] = transform(this.args[index]); this.keys.push(this.args[index]); } } } return this.keys; } /** * Convert the value from buffer to the target encoding. */ _convertValue(resolve) { return (value) => { try { this._clearTimers(); resolve(this.transformReply(value)); this.isResolved = true; } catch (err) { this.reject(err); } return this.promise; }; } }; exports2.default = Command; Command.FLAGS = { VALID_IN_SUBSCRIBER_MODE: [ "subscribe", "psubscribe", "unsubscribe", "punsubscribe", "ssubscribe", "sunsubscribe", "ping", "quit" ], VALID_IN_MONITOR_MODE: ["monitor", "auth"], ENTER_SUBSCRIBER_MODE: ["subscribe", "psubscribe", "ssubscribe"], EXIT_SUBSCRIBER_MODE: ["unsubscribe", "punsubscribe", "sunsubscribe"], WILL_DISCONNECT: ["quit"], HANDSHAKE_COMMANDS: ["auth", "select", "client", "readonly", "info"], IGNORE_RECONNECT_ON_ERROR: ["client"], BLOCKING_COMMANDS: [ "blpop", "brpop", "brpoplpush", "blmove", "bzpopmin", "bzpopmax", "bzmpop", "blmpop", "xread", "xreadgroup" ], LAST_ARG_TIMEOUT_COMMANDS: [ "blpop", "brpop", "brpoplpush", "blmove", "bzpopmin", "bzpopmax" ], FIRST_ARG_TIMEOUT_COMMANDS: ["bzmpop", "blmpop"], BLOCK_OPTION_COMMANDS: ["xread", "xreadgroup"] }; Command._transformer = { argument: {}, reply: {} }; var msetArgumentTransformer = /* @__PURE__ */ __name(function(args) { if (args.length === 1) { if (args[0] instanceof Map) { return (0, utils_1.convertMapToArray)(args[0]); } if (typeof args[0] === "object" && args[0] !== null) { return (0, utils_1.convertObjectToArray)(args[0]); } } return args; }, "msetArgumentTransformer"); var hsetArgumentTransformer = /* @__PURE__ */ __name(function(args) { if (args.length === 2) { if (args[1] instanceof Map) { return [args[0]].concat((0, utils_1.convertMapToArray)(args[1])); } if (typeof args[1] === "object" && args[1] !== null) { return [args[0]].concat((0, utils_1.convertObjectToArray)(args[1])); } } return args; }, "hsetArgumentTransformer"); Command.setArgumentTransformer("mset", msetArgumentTransformer); Command.setArgumentTransformer("msetnx", msetArgumentTransformer); Command.setArgumentTransformer("hset", hsetArgumentTransformer); Command.setArgumentTransformer("hmset", hsetArgumentTransformer); Command.setReplyTransformer("hgetall", function(result) { if (Array.isArray(result)) { const obj2 = {}; for (let i = 0; i < result.length; i += 2) { const key = result[i]; const value = result[i + 1]; if (key in obj2) { Object.defineProperty(obj2, key, { value, configurable: true, enumerable: true, writable: true }); } else { obj2[key] = value; } } return obj2; } return result; }); var MixedBuffers = class { static { __name(this, "MixedBuffers"); } constructor() { this.length = 0; this.items = []; } push(x) { this.length += Buffer.byteLength(x); this.items.push(x); } toBuffer() { const result = Buffer.allocUnsafe(this.length); let offset = 0; for (const item of this.items) { const length = Buffer.byteLength(item); Buffer.isBuffer(item) ? item.copy(result, offset) : result.write(item, offset, length); offset += length; } return result; } }; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/errors/ClusterAllFailedError.js var require_ClusterAllFailedError = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/errors/ClusterAllFailedError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var redis_errors_1 = require_redis_errors(); var ClusterAllFailedError = class extends redis_errors_1.RedisError { static { __name(this, "ClusterAllFailedError"); } constructor(message, lastNodeError) { super(message); this.lastNodeError = lastNodeError; Error.captureStackTrace(this, this.constructor); } get name() { return this.constructor.name; } }; exports2.default = ClusterAllFailedError; ClusterAllFailedError.defaultMessage = "Failed to refresh slots cache."; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/ScanStream.js var require_ScanStream = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/ScanStream.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var stream_1 = require("stream"); var ScanStream = class extends stream_1.Readable { static { __name(this, "ScanStream"); } constructor(opt) { super(opt); this.opt = opt; this._redisCursor = "0"; this._redisDrained = false; } _read() { if (this._redisDrained) { this.push(null); return; } const args = [this._redisCursor]; if (this.opt.key) { args.unshift(this.opt.key); } if (this.opt.match) { args.push("MATCH", this.opt.match); } if (this.opt.type) { args.push("TYPE", this.opt.type); } if (this.opt.count) { args.push("COUNT", String(this.opt.count)); } if (this.opt.noValues) { args.push("NOVALUES"); } this.opt.redis[this.opt.command](args, (err, res) => { if (err) { this.emit("error", err); return; } this._redisCursor = res[0] instanceof Buffer ? res[0].toString() : res[0]; if (this._redisCursor === "0") { this._redisDrained = true; } this.push(res[1]); }); } close() { this._redisDrained = true; } }; exports2.default = ScanStream; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/autoPipelining.js var require_autoPipelining = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/autoPipelining.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.executeWithAutoPipelining = exports2.getFirstValueInFlattenedArray = exports2.shouldUseAutoPipelining = exports2.notAllowedAutoPipelineCommands = exports2.kCallbacks = exports2.kExec = void 0; var lodash_1 = require_lodash2(); var calculateSlot = require_lib6(); var standard_as_callback_1 = require_built2(); var commands_1 = require_built(); exports2.kExec = Symbol("exec"); exports2.kCallbacks = Symbol("callbacks"); exports2.notAllowedAutoPipelineCommands = [ "auth", "info", "script", "quit", "cluster", "pipeline", "multi", "subscribe", "psubscribe", "unsubscribe", "unpsubscribe", "select", "client" ]; function executeAutoPipeline(client, slotKey) { if (client._runningAutoPipelines.has(slotKey)) { return; } if (!client._autoPipelines.has(slotKey)) { return; } client._runningAutoPipelines.add(slotKey); const pipeline = client._autoPipelines.get(slotKey); client._autoPipelines.delete(slotKey); const callbacks = pipeline[exports2.kCallbacks]; pipeline[exports2.kCallbacks] = null; pipeline.exec(function(err, results) { client._runningAutoPipelines.delete(slotKey); if (err) { for (let i = 0; i < callbacks.length; i++) { process.nextTick(callbacks[i], err); } } else { for (let i = 0; i < callbacks.length; i++) { process.nextTick(callbacks[i], ...results[i]); } } if (client._autoPipelines.has(slotKey)) { executeAutoPipeline(client, slotKey); } }); } __name(executeAutoPipeline, "executeAutoPipeline"); function shouldUseAutoPipelining(client, functionName, commandName) { return functionName && client.options.enableAutoPipelining && !client.isPipeline && !exports2.notAllowedAutoPipelineCommands.includes(commandName) && !client.options.autoPipeliningIgnoredCommands.includes(commandName); } __name(shouldUseAutoPipelining, "shouldUseAutoPipelining"); exports2.shouldUseAutoPipelining = shouldUseAutoPipelining; function getFirstValueInFlattenedArray(args) { for (let i = 0; i < args.length; i++) { const arg = args[i]; if (typeof arg === "string") { return arg; } else if (Array.isArray(arg) || (0, lodash_1.isArguments)(arg)) { if (arg.length === 0) { continue; } return arg[0]; } const flattened = [arg].flat(); if (flattened.length > 0) { return flattened[0]; } } return void 0; } __name(getFirstValueInFlattenedArray, "getFirstValueInFlattenedArray"); exports2.getFirstValueInFlattenedArray = getFirstValueInFlattenedArray; function getFirstKeyForCommand(commandName, args) { if ((0, commands_1.exists)(commandName, { caseInsensitive: true })) { const flattenedArgs = args.flat(); const keyIndexes = (0, commands_1.getKeyIndexes)(commandName, flattenedArgs, { nameCaseInsensitive: true }); if (keyIndexes.length) { return flattenedArgs[keyIndexes[0]]; } } return getFirstValueInFlattenedArray(args); } __name(getFirstKeyForCommand, "getFirstKeyForCommand"); function executeWithAutoPipelining(client, functionName, commandName, args, callback) { if (client.isCluster && !client.slots.length) { if (client.status === "wait") client.connect().catch(lodash_1.noop); return (0, standard_as_callback_1.default)(new Promise(function(resolve, reject) { client.delayUntilReady((err) => { if (err) { reject(err); return; } executeWithAutoPipelining(client, functionName, commandName, args, null).then(resolve, reject); }); }), callback); } const prefix = client.options.keyPrefix || ""; let slotKey = client.isCluster ? client.slots[calculateSlot(`${prefix}${getFirstKeyForCommand(commandName, args)}`)].join(",") : "main"; if (client.isCluster && client.options.scaleReads !== "master") { const isReadOnly = (0, commands_1.exists)(commandName) && (0, commands_1.hasFlag)(commandName, "readonly"); slotKey += isReadOnly ? ":read" : ":write"; } if (!client._autoPipelines.has(slotKey)) { const pipeline2 = client.pipeline(); pipeline2[exports2.kExec] = false; pipeline2[exports2.kCallbacks] = []; client._autoPipelines.set(slotKey, pipeline2); } const pipeline = client._autoPipelines.get(slotKey); if (!pipeline[exports2.kExec]) { pipeline[exports2.kExec] = true; setImmediate(executeAutoPipeline, client, slotKey); } const autoPipelinePromise = new Promise(function(resolve, reject) { pipeline[exports2.kCallbacks].push(function(err, value) { if (err) { reject(err); return; } resolve(value); }); if (functionName === "call") { args.unshift(commandName); } pipeline[functionName](...args); }); return (0, standard_as_callback_1.default)(autoPipelinePromise, callback); } __name(executeWithAutoPipelining, "executeWithAutoPipelining"); exports2.executeWithAutoPipelining = executeWithAutoPipelining; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/Script.js var require_Script = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/Script.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var crypto_1 = require("crypto"); var Command_1 = require_Command(); var standard_as_callback_1 = require_built2(); var Script = class { static { __name(this, "Script"); } constructor(lua, numberOfKeys = null, keyPrefix = "", readOnly = false) { this.lua = lua; this.numberOfKeys = numberOfKeys; this.keyPrefix = keyPrefix; this.readOnly = readOnly; this.sha = (0, crypto_1.createHash)("sha1").update(lua).digest("hex"); const sha = this.sha; const socketHasScriptLoaded = /* @__PURE__ */ new WeakSet(); this.Command = class CustomScriptCommand extends Command_1.default { static { __name(this, "CustomScriptCommand"); } toWritable(socket) { const origReject = this.reject; this.reject = (err) => { if (err.message.indexOf("NOSCRIPT") !== -1) { socketHasScriptLoaded.delete(socket); } origReject.call(this, err); }; if (!socketHasScriptLoaded.has(socket)) { socketHasScriptLoaded.add(socket); this.name = "eval"; this.args[0] = lua; } else if (this.name === "eval") { this.name = "evalsha"; this.args[0] = sha; } return super.toWritable(socket); } }; } execute(container, args, options, callback) { if (typeof this.numberOfKeys === "number") { args.unshift(this.numberOfKeys); } if (this.keyPrefix) { options.keyPrefix = this.keyPrefix; } if (this.readOnly) { options.readOnly = true; } const evalsha = new this.Command("evalsha", [this.sha, ...args], options); evalsha.promise = evalsha.promise.catch((err) => { if (err.message.indexOf("NOSCRIPT") === -1) { throw err; } const resend = new this.Command("evalsha", [this.sha, ...args], options); const client = container.isPipeline ? container.redis : container; return client.sendCommand(resend); }); (0, standard_as_callback_1.default)(evalsha.promise, callback); return container.sendCommand(evalsha); } }; exports2.default = Script; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/Commander.js var require_Commander = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/Commander.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var commands_1 = require_built(); var autoPipelining_1 = require_autoPipelining(); var Command_1 = require_Command(); var Script_1 = require_Script(); var Commander = class { static { __name(this, "Commander"); } constructor() { this.options = {}; this.scriptsSet = {}; this.addedBuiltinSet = /* @__PURE__ */ new Set(); } /** * Return supported builtin commands */ getBuiltinCommands() { return commands.slice(0); } /** * Create a builtin command */ createBuiltinCommand(commandName) { return { string: generateFunction(null, commandName, "utf8"), buffer: generateFunction(null, commandName, null) }; } /** * Create add builtin command */ addBuiltinCommand(commandName) { this.addedBuiltinSet.add(commandName); this[commandName] = generateFunction(commandName, commandName, "utf8"); this[commandName + "Buffer"] = generateFunction(commandName + "Buffer", commandName, null); } /** * Define a custom command using lua script */ defineCommand(name, definition) { const script = new Script_1.default(definition.lua, definition.numberOfKeys, this.options.keyPrefix, definition.readOnly); this.scriptsSet[name] = script; this[name] = generateScriptingFunction(name, name, script, "utf8"); this[name + "Buffer"] = generateScriptingFunction(name + "Buffer", name, script, null); } /** * @ignore */ sendCommand(command, stream, node) { throw new Error('"sendCommand" is not implemented'); } }; var commands = commands_1.list.filter((command) => command !== "monitor"); commands.push("sentinel"); commands.forEach(function(commandName) { Commander.prototype[commandName] = generateFunction(commandName, commandName, "utf8"); Commander.prototype[commandName + "Buffer"] = generateFunction(commandName + "Buffer", commandName, null); }); Commander.prototype.call = generateFunction("call", "utf8"); Commander.prototype.callBuffer = generateFunction("callBuffer", null); Commander.prototype.send_command = Commander.prototype.call; function generateFunction(functionName, _commandName, _encoding) { if (typeof _encoding === "undefined") { _encoding = _commandName; _commandName = null; } return function(...args) { const commandName = _commandName || args.shift(); let callback = args[args.length - 1]; if (typeof callback === "function") { args.pop(); } else { callback = void 0; } const options = { errorStack: this.options.showFriendlyErrorStack ? new Error() : void 0, keyPrefix: this.options.keyPrefix, replyEncoding: _encoding }; if (!(0, autoPipelining_1.shouldUseAutoPipelining)(this, functionName, commandName)) { return this.sendCommand( // @ts-expect-error new Command_1.default(commandName, args, options, callback) ); } return (0, autoPipelining_1.executeWithAutoPipelining)( this, functionName, commandName, // @ts-expect-error args, callback ); }; } __name(generateFunction, "generateFunction"); function generateScriptingFunction(functionName, commandName, script, encoding) { return function(...args) { const callback = typeof args[args.length - 1] === "function" ? args.pop() : void 0; const options = { replyEncoding: encoding }; if (this.options.showFriendlyErrorStack) { options.errorStack = new Error(); } if (!(0, autoPipelining_1.shouldUseAutoPipelining)(this, functionName, commandName)) { return script.execute(this, args, options, callback); } return (0, autoPipelining_1.executeWithAutoPipelining)(this, functionName, commandName, args, callback); }; } __name(generateScriptingFunction, "generateScriptingFunction"); exports2.default = Commander; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/Pipeline.js var require_Pipeline = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/Pipeline.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var calculateSlot = require_lib6(); var commands_1 = require_built(); var standard_as_callback_1 = require_built2(); var util_1 = require("util"); var Command_1 = require_Command(); var buffer_1 = require("buffer"); var utils_1 = require_utils15(); var Commander_1 = require_Commander(); function generateMultiWithNodes(redis, keys) { const slot = calculateSlot(keys[0]); const target = redis._groupsBySlot[slot]; for (let i = 1; i < keys.length; i++) { if (redis._groupsBySlot[calculateSlot(keys[i])] !== target) { return -1; } } return slot; } __name(generateMultiWithNodes, "generateMultiWithNodes"); var Pipeline = class extends Commander_1.default { static { __name(this, "Pipeline"); } constructor(redis) { super(); this.redis = redis; this.isPipeline = true; this.replyPending = 0; this._queue = []; this._result = []; this._transactions = 0; this._shaToScript = {}; this.isCluster = this.redis.constructor.name === "Cluster" || this.redis.isCluster; this.options = redis.options; Object.keys(redis.scriptsSet).forEach((name) => { const script = redis.scriptsSet[name]; this._shaToScript[script.sha] = script; this[name] = redis[name]; this[name + "Buffer"] = redis[name + "Buffer"]; }); redis.addedBuiltinSet.forEach((name) => { this[name] = redis[name]; this[name + "Buffer"] = redis[name + "Buffer"]; }); this.promise = new Promise((resolve, reject) => { this.resolve = resolve; this.reject = reject; }); const _this = this; Object.defineProperty(this, "length", { get: /* @__PURE__ */ __name(function() { return _this._queue.length; }, "get") }); } fillResult(value, position) { if (this._queue[position].name === "exec" && Array.isArray(value[1])) { const execLength = value[1].length; for (let i = 0; i < execLength; i++) { if (value[1][i] instanceof Error) { continue; } const cmd = this._queue[position - (execLength - i)]; try { value[1][i] = cmd.transformReply(value[1][i]); } catch (err) { value[1][i] = err; } } } this._result[position] = value; if (--this.replyPending) { return; } if (this.isCluster) { let retriable = true; let commonError; for (let i = 0; i < this._result.length; ++i) { const error = this._result[i][0]; const command = this._queue[i]; if (error) { if (command.name === "exec" && error.message === "EXECABORT Transaction discarded because of previous errors.") { continue; } if (!commonError) { commonError = { name: error.name, message: error.message }; } else if (commonError.name !== error.name || commonError.message !== error.message) { retriable = false; break; } } else if (!command.inTransaction) { const isReadOnly = (0, commands_1.exists)(command.name, { caseInsensitive: true }) && (0, commands_1.hasFlag)(command.name, "readonly", { nameCaseInsensitive: true }); if (!isReadOnly) { retriable = false; break; } } } if (commonError && retriable) { const _this = this; const errv = commonError.message.split(" "); const queue = this._queue; let inTransaction = false; this._queue = []; for (let i = 0; i < queue.length; ++i) { if (errv[0] === "ASK" && !inTransaction && queue[i].name !== "asking" && (!queue[i - 1] || queue[i - 1].name !== "asking")) { const asking = new Command_1.default("asking"); asking.ignore = true; this.sendCommand(asking); } queue[i].initPromise(); this.sendCommand(queue[i]); inTransaction = queue[i].inTransaction; } let matched = true; if (typeof this.leftRedirections === "undefined") { this.leftRedirections = {}; } const exec = /* @__PURE__ */ __name(function() { _this.exec(); }, "exec"); const cluster = this.redis; cluster.handleError(commonError, this.leftRedirections, { moved: /* @__PURE__ */ __name(function(_slot, key) { _this.preferKey = key; if (cluster.slots[errv[1]]) { if (cluster.slots[errv[1]][0] !== key) { cluster.slots[errv[1]] = [key]; } } else { cluster.slots[errv[1]] = [key]; } cluster._groupsBySlot[errv[1]] = cluster._groupsIds[cluster.slots[errv[1]].join(";")]; cluster.refreshSlotsCache(); _this.exec(); }, "moved"), ask: /* @__PURE__ */ __name(function(_slot, key) { _this.preferKey = key; _this.exec(); }, "ask"), tryagain: exec, clusterDown: exec, connectionClosed: exec, maxRedirections: /* @__PURE__ */ __name(() => { matched = false; }, "maxRedirections"), defaults: /* @__PURE__ */ __name(() => { matched = false; }, "defaults") }); if (matched) { return; } } } let ignoredCount = 0; for (let i = 0; i < this._queue.length - ignoredCount; ++i) { if (this._queue[i + ignoredCount].ignore) { ignoredCount += 1; } this._result[i] = this._result[i + ignoredCount]; } this.resolve(this._result.slice(0, this._result.length - ignoredCount)); } sendCommand(command) { if (this._transactions > 0) { command.inTransaction = true; } const position = this._queue.length; command.pipelineIndex = position; command.promise.then((result) => { this.fillResult([null, result], position); }).catch((error) => { this.fillResult([error], position); }); this._queue.push(command); return this; } addBatch(commands) { let command, commandName, args; for (let i = 0; i < commands.length; ++i) { command = commands[i]; commandName = command[0]; args = command.slice(1); this[commandName].apply(this, args); } return this; } }; exports2.default = Pipeline; var multi = Pipeline.prototype.multi; Pipeline.prototype.multi = function() { this._transactions += 1; return multi.apply(this, arguments); }; var execBuffer = Pipeline.prototype.execBuffer; Pipeline.prototype.execBuffer = (0, util_1.deprecate)(function() { if (this._transactions > 0) { this._transactions -= 1; } return execBuffer.apply(this, arguments); }, "Pipeline#execBuffer: Use Pipeline#exec instead"); Pipeline.prototype.exec = function(callback) { if (this.isCluster && !this.redis.slots.length) { if (this.redis.status === "wait") this.redis.connect().catch(utils_1.noop); if (callback && !this.nodeifiedPromise) { this.nodeifiedPromise = true; (0, standard_as_callback_1.default)(this.promise, callback); } this.redis.delayUntilReady((err) => { if (err) { this.reject(err); return; } this.exec(callback); }); return this.promise; } if (this._transactions > 0) { this._transactions -= 1; return execBuffer.apply(this, arguments); } if (!this.nodeifiedPromise) { this.nodeifiedPromise = true; (0, standard_as_callback_1.default)(this.promise, callback); } if (!this._queue.length) { this.resolve([]); } let pipelineSlot; if (this.isCluster) { const sampleKeys = []; for (let i = 0; i < this._queue.length; i++) { const keys = this._queue[i].getKeys(); if (keys.length) { sampleKeys.push(keys[0]); } if (keys.length && calculateSlot.generateMulti(keys) < 0) { this.reject(new Error("All the keys in a pipeline command should belong to the same slot")); return this.promise; } } if (sampleKeys.length) { pipelineSlot = generateMultiWithNodes(this.redis, sampleKeys); if (pipelineSlot < 0) { this.reject(new Error("All keys in the pipeline should belong to the same slots allocation group")); return this.promise; } } else { pipelineSlot = Math.random() * 16384 | 0; } } const _this = this; execPipeline(); return this.promise; function execPipeline() { let writePending = _this.replyPending = _this._queue.length; let node; if (_this.isCluster) { node = { slot: pipelineSlot, redis: _this.redis.connectionPool.nodes.all[_this.preferKey] }; } let data = ""; let buffers; const stream = { isPipeline: true, destination: _this.isCluster ? node : { redis: _this.redis }, write(writable) { if (typeof writable !== "string") { if (!buffers) { buffers = []; } if (data) { buffers.push(Buffer.from(data, "utf8")); data = ""; } buffers.push(writable); } else { if (data.length + writable.length >= buffer_1.constants.MAX_STRING_LENGTH) { if (!buffers) { buffers = []; } if (data) { buffers.push(Buffer.from(data, "utf8")); data = ""; } } data += writable; } if (!--writePending) { if (buffers) { if (data) { buffers.push(Buffer.from(data, "utf8")); } stream.destination.redis.stream.write(Buffer.concat(buffers)); } else { stream.destination.redis.stream.write(data); } writePending = _this._queue.length; data = ""; buffers = void 0; } } }; for (let i = 0; i < _this._queue.length; ++i) { _this.redis.sendCommand(_this._queue[i], stream, node); } return _this.promise; } __name(execPipeline, "execPipeline"); }; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/tracing.js var require_tracing = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/tracing.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.traceConnect = exports2.traceBatch = exports2.traceCommand = exports2.sanitizeArgs = void 0; var SERIALIZATION_SUBSETS = [ { regex: /^ECHO/i, args: 0 }, { regex: /^(LPUSH|MSET|PFA|PUBLISH|RPUSH|SADD|SET|SPUBLISH|XADD|ZADD)/i, args: 1 }, { regex: /^(HSET|HMSET|LSET|LINSERT)/i, args: 2 }, { regex: /^(ACL|BIT|B[LRZ]|CLIENT|CLUSTER|CONFIG|COMMAND|DECR|DEL|EVAL|EX|FUNCTION|GEO|GET|HINCR|HMGET|HSCAN|INCR|L[TRLM]|MEMORY|P[EFISTU]|RPOP|S[CDIMORSU]|XACK|X[CDGILPRT]|Z[CDILMPRS])/i, args: -1 } ]; function sanitizeArgs(commandName, args) { let allowedArgCount = 0; for (const subset of SERIALIZATION_SUBSETS) { if (subset.regex.test(commandName)) { allowedArgCount = subset.args; break; } } if (allowedArgCount === -1) { return args.map((a) => String(a)); } const result = []; for (let i = 0; i < args.length; i++) { if (i < allowedArgCount) { result.push(String(args[i])); } else { result.push("?"); } } return result; } __name(sanitizeArgs, "sanitizeArgs"); exports2.sanitizeArgs = sanitizeArgs; var dc = (() => { try { return "getBuiltinModule" in process ? process.getBuiltinModule("node:diagnostics_channel") : require("node:diagnostics_channel"); } catch { return void 0; } })(); var hasTracingChannel = dc && typeof dc.tracingChannel === "function"; var commandChannel = hasTracingChannel ? dc.tracingChannel("ioredis:command") : void 0; var batchChannel = hasTracingChannel ? dc.tracingChannel("ioredis:batch") : void 0; var connectChannel = hasTracingChannel ? dc.tracingChannel("ioredis:connect") : void 0; function shouldTrace(channel) { return !!channel && channel.hasSubscribers !== false; } __name(shouldTrace, "shouldTrace"); var noop = /* @__PURE__ */ __name(() => { }, "noop"); function traceCommand(fn, contextFactory) { if (!shouldTrace(commandChannel)) return fn(); const traced = commandChannel.tracePromise(fn, contextFactory()); traced.catch(noop); return traced; } __name(traceCommand, "traceCommand"); exports2.traceCommand = traceCommand; function traceBatch(fn, contextFactory) { if (!shouldTrace(batchChannel)) return fn(); const traced = batchChannel.tracePromise(fn, contextFactory()); traced.catch(noop); return traced; } __name(traceBatch, "traceBatch"); exports2.traceBatch = traceBatch; function traceConnect(fn, contextFactory) { if (!shouldTrace(connectChannel)) return fn(); return connectChannel.tracePromise(fn, contextFactory()); } __name(traceConnect, "traceConnect"); exports2.traceConnect = traceConnect; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/transaction.js var require_transaction = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/transaction.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.addTransactionSupport = void 0; var utils_1 = require_utils15(); var standard_as_callback_1 = require_built2(); var Pipeline_1 = require_Pipeline(); var tracing_1 = require_tracing(); function addTransactionSupport(redis) { redis.pipeline = function(commands) { const pipeline = new Pipeline_1.default(this); if (Array.isArray(commands)) { pipeline.addBatch(commands); } return pipeline; }; const { multi } = redis; redis.multi = function(commands, options) { if (typeof options === "undefined" && !Array.isArray(commands)) { options = commands; commands = null; } if (options && options.pipeline === false) { return multi.call(this); } const pipeline = new Pipeline_1.default(this); pipeline.multi(); if (Array.isArray(commands)) { pipeline.addBatch(commands); } const exec2 = pipeline.exec; pipeline.exec = function(callback) { if (this.isCluster && !this.redis.slots.length) { if (this.redis.status === "wait") this.redis.connect().catch(utils_1.noop); return (0, standard_as_callback_1.default)(new Promise((resolve, reject) => { this.redis.delayUntilReady((err) => { if (err) { reject(err); return; } this.exec(pipeline).then(resolve, reject); }); }), callback); } if (this._transactions > 0) { exec2.call(pipeline); } if (this.nodeifiedPromise) { return exec2.call(pipeline); } const batchSize = Math.max(pipeline.length - 2, 0); const execAndUnwrap = /* @__PURE__ */ __name(() => exec2.call(pipeline).then(function(result) { const execResult = result[result.length - 1]; if (typeof execResult === "undefined") { throw new Error("Pipeline cannot be used to send any commands when the `exec()` has been called on it."); } if (execResult[0]) { execResult[0].previousErrors = []; for (let i = 0; i < result.length - 1; ++i) { if (result[i][0]) { execResult[0].previousErrors.push(result[i][0]); } } throw execResult[0]; } return (0, utils_1.wrapMultiResult)(execResult[1]); }), "execAndUnwrap"); const promise = "_buildBatchContext" in this.redis ? (0, tracing_1.traceBatch)(execAndUnwrap, () => this.redis._buildBatchContext(batchSize)) : execAndUnwrap(); return (0, standard_as_callback_1.default)(promise, callback); }; const { execBuffer } = pipeline; pipeline.execBuffer = function(callback) { if (this._transactions > 0) { execBuffer.call(pipeline); } return pipeline.exec(callback); }; return pipeline; }; const { exec } = redis; redis.exec = function(callback) { return (0, standard_as_callback_1.default)(exec.call(this).then(function(results) { if (Array.isArray(results)) { results = (0, utils_1.wrapMultiResult)(results); } return results; }), callback); }; } __name(addTransactionSupport, "addTransactionSupport"); exports2.addTransactionSupport = addTransactionSupport; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/applyMixin.js var require_applyMixin = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/utils/applyMixin.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); function applyMixin(derivedConstructor, mixinConstructor) { Object.getOwnPropertyNames(mixinConstructor.prototype).forEach((name) => { Object.defineProperty(derivedConstructor.prototype, name, Object.getOwnPropertyDescriptor(mixinConstructor.prototype, name)); }); } __name(applyMixin, "applyMixin"); exports2.default = applyMixin; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/ClusterOptions.js var require_ClusterOptions = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/ClusterOptions.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DEFAULT_CLUSTER_OPTIONS = void 0; var dns_1 = require("dns"); exports2.DEFAULT_CLUSTER_OPTIONS = { clusterRetryStrategy: /* @__PURE__ */ __name((times) => Math.min(100 + times * 2, 2e3), "clusterRetryStrategy"), clusterNodeRetryStrategy: null, enableOfflineQueue: true, enableReadyCheck: true, scaleReads: "master", maxRedirections: 16, retryDelayOnMoved: 0, retryDelayOnFailover: 100, retryDelayOnClusterDown: 100, retryDelayOnTryAgain: 100, slotsRefreshTimeout: 1e3, useSRVRecords: false, resolveSrv: dns_1.resolveSrv, dnsLookup: dns_1.lookup, enableAutoPipelining: false, autoPipeliningIgnoredCommands: [], shardedSubscribers: false }; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/util.js var require_util2 = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getConnectionName = exports2.weightSrvRecords = exports2.groupSrvRecords = exports2.getUniqueHostnamesFromOptions = exports2.normalizeNodeOptions = exports2.nodeKeyToRedisOptions = exports2.getNodeKey = void 0; var utils_1 = require_utils15(); var net_1 = require("net"); function getNodeKey(node) { node.port = node.port || 6379; node.host = node.host || "127.0.0.1"; return node.host + ":" + node.port; } __name(getNodeKey, "getNodeKey"); exports2.getNodeKey = getNodeKey; function nodeKeyToRedisOptions(nodeKey) { const portIndex = nodeKey.lastIndexOf(":"); if (portIndex === -1) { throw new Error(`Invalid node key ${nodeKey}`); } return { host: nodeKey.slice(0, portIndex), port: Number(nodeKey.slice(portIndex + 1)) }; } __name(nodeKeyToRedisOptions, "nodeKeyToRedisOptions"); exports2.nodeKeyToRedisOptions = nodeKeyToRedisOptions; function normalizeNodeOptions(nodes) { return nodes.map((node) => { const options = {}; if (typeof node === "object") { Object.assign(options, node); } else if (typeof node === "string") { Object.assign(options, (0, utils_1.parseURL)(node)); } else if (typeof node === "number") { options.port = node; } else { throw new Error("Invalid argument " + node); } if (typeof options.port === "string") { options.port = parseInt(options.port, 10); } delete options.db; if (!options.port) { options.port = 6379; } if (!options.host) { options.host = "127.0.0.1"; } return (0, utils_1.resolveTLSProfile)(options); }); } __name(normalizeNodeOptions, "normalizeNodeOptions"); exports2.normalizeNodeOptions = normalizeNodeOptions; function getUniqueHostnamesFromOptions(nodes) { const uniqueHostsMap = {}; nodes.forEach((node) => { uniqueHostsMap[node.host] = true; }); return Object.keys(uniqueHostsMap).filter((host) => !(0, net_1.isIP)(host)); } __name(getUniqueHostnamesFromOptions, "getUniqueHostnamesFromOptions"); exports2.getUniqueHostnamesFromOptions = getUniqueHostnamesFromOptions; function groupSrvRecords(records) { const recordsByPriority = {}; for (const record of records) { if (!recordsByPriority.hasOwnProperty(record.priority)) { recordsByPriority[record.priority] = { totalWeight: record.weight, records: [record] }; } else { recordsByPriority[record.priority].totalWeight += record.weight; recordsByPriority[record.priority].records.push(record); } } return recordsByPriority; } __name(groupSrvRecords, "groupSrvRecords"); exports2.groupSrvRecords = groupSrvRecords; function weightSrvRecords(recordsGroup) { if (recordsGroup.records.length === 1) { recordsGroup.totalWeight = 0; return recordsGroup.records.shift(); } const random = Math.floor(Math.random() * (recordsGroup.totalWeight + recordsGroup.records.length)); let total = 0; for (const [i, record] of recordsGroup.records.entries()) { total += 1 + record.weight; if (total > random) { recordsGroup.totalWeight -= record.weight; recordsGroup.records.splice(i, 1); return record; } } } __name(weightSrvRecords, "weightSrvRecords"); exports2.weightSrvRecords = weightSrvRecords; function getConnectionName(component, nodeConnectionName) { const prefix = `ioredis-cluster(${component})`; return nodeConnectionName ? `${prefix}:${nodeConnectionName}` : prefix; } __name(getConnectionName, "getConnectionName"); exports2.getConnectionName = getConnectionName; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/ClusterSubscriber.js var require_ClusterSubscriber = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/ClusterSubscriber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var util_1 = require_util2(); var utils_1 = require_utils15(); var Redis_1 = require_Redis(); var debug = (0, utils_1.Debug)("cluster:subscriber"); var ClusterSubscriber = class { static { __name(this, "ClusterSubscriber"); } constructor(connectionPool, emitter, isSharded = false) { this.connectionPool = connectionPool; this.emitter = emitter; this.isSharded = isSharded; this.started = false; this.subscriber = null; this.slotRange = []; this.onSubscriberEnd = () => { if (!this.started) { debug("subscriber has disconnected, but ClusterSubscriber is not started, so not reconnecting."); return; } debug("subscriber has disconnected, selecting a new one..."); this.selectSubscriber(); }; this.connectionPool.on("-node", (_2, key) => { if (!this.started || !this.subscriber) { return; } if ((0, util_1.getNodeKey)(this.subscriber.options) === key) { debug("subscriber has left, selecting a new one..."); this.selectSubscriber(); } }); this.connectionPool.on("+node", () => { if (!this.started || this.subscriber) { return; } debug("a new node is discovered and there is no subscriber, selecting a new one..."); this.selectSubscriber(); }); } getInstance() { return this.subscriber; } /** * Associate this subscriber to a specific slot range. * * Returns the range or an empty array if the slot range couldn't be associated. * * BTW: This is more for debugging and testing purposes. * * @param range */ associateSlotRange(range) { if (this.isSharded) { this.slotRange = range; } return this.slotRange; } start() { this.started = true; this.selectSubscriber(); debug("started"); } stop() { this.started = false; if (this.subscriber) { this.subscriber.disconnect(); this.subscriber = null; } } isStarted() { return this.started; } selectSubscriber() { const lastActiveSubscriber = this.lastActiveSubscriber; if (lastActiveSubscriber) { lastActiveSubscriber.off("end", this.onSubscriberEnd); lastActiveSubscriber.disconnect(); } if (this.subscriber) { this.subscriber.off("end", this.onSubscriberEnd); this.subscriber.disconnect(); } const sampleNode = (0, utils_1.sample)(this.connectionPool.getNodes()); if (!sampleNode) { debug("selecting subscriber failed since there is no node discovered in the cluster yet"); this.subscriber = null; return; } const { options } = sampleNode; debug("selected a subscriber %s:%s", options.host, options.port); let connectionPrefix = "subscriber"; if (this.isSharded) connectionPrefix = "ssubscriber"; this.subscriber = new Redis_1.default({ port: options.port, host: options.host, username: options.username, password: options.password, enableReadyCheck: true, connectionName: (0, util_1.getConnectionName)(connectionPrefix, options.connectionName), lazyConnect: true, tls: options.tls, // Don't try to reconnect the subscriber connection. If the connection fails // we will get an end event (handled below), at which point we'll pick a new // node from the pool and try to connect to that as the subscriber connection. retryStrategy: null }); this.subscriber.on("error", utils_1.noop); this.subscriber.on("moved", () => { this.emitter.emit("forceRefresh"); }); this.subscriber.once("end", this.onSubscriberEnd); const previousChannels = { subscribe: [], psubscribe: [], ssubscribe: [] }; if (lastActiveSubscriber) { const condition = lastActiveSubscriber.condition || lastActiveSubscriber.prevCondition; if (condition && condition.subscriber) { previousChannels.subscribe = condition.subscriber.channels("subscribe"); previousChannels.psubscribe = condition.subscriber.channels("psubscribe"); previousChannels.ssubscribe = condition.subscriber.channels("ssubscribe"); } } if (previousChannels.subscribe.length || previousChannels.psubscribe.length || previousChannels.ssubscribe.length) { let pending = 0; for (const type of ["subscribe", "psubscribe", "ssubscribe"]) { const channels = previousChannels[type]; if (channels.length == 0) { continue; } debug("%s %d channels", type, channels.length); if (type === "ssubscribe") { for (const channel of channels) { pending += 1; this.subscriber[type](channel).then(() => { if (!--pending) { this.lastActiveSubscriber = this.subscriber; } }).catch(() => { debug("failed to ssubscribe to channel: %s", channel); }); } } else { pending += 1; this.subscriber[type](channels).then(() => { if (!--pending) { this.lastActiveSubscriber = this.subscriber; } }).catch(() => { debug("failed to %s %d channels", type, channels.length); }); } } } else { this.lastActiveSubscriber = this.subscriber; } for (const event of [ "message", "messageBuffer" ]) { this.subscriber.on(event, (arg1, arg2) => { this.emitter.emit(event, arg1, arg2); }); } for (const event of ["pmessage", "pmessageBuffer"]) { this.subscriber.on(event, (arg1, arg2, arg3) => { this.emitter.emit(event, arg1, arg2, arg3); }); } if (this.isSharded == true) { for (const event of [ "smessage", "smessageBuffer" ]) { this.subscriber.on(event, (arg1, arg2) => { this.emitter.emit(event, arg1, arg2); }); } } } }; exports2.default = ClusterSubscriber; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/ConnectionPool.js var require_ConnectionPool = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/ConnectionPool.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var events_1 = require("events"); var utils_1 = require_utils15(); var util_1 = require_util2(); var Redis_1 = require_Redis(); var debug = (0, utils_1.Debug)("cluster:connectionPool"); var ConnectionPool = class extends events_1.EventEmitter { static { __name(this, "ConnectionPool"); } constructor(redisOptions, clusterNodeRetryStrategy = null) { super(); this.redisOptions = redisOptions; this.clusterNodeRetryStrategy = clusterNodeRetryStrategy; this.nodes = { all: {}, master: {}, slave: {} }; this.specifiedOptions = {}; } getNodes(role = "all") { const nodes = this.nodes[role]; return Object.keys(nodes).map((key) => nodes[key]); } getInstanceByKey(key) { return this.nodes.all[key]; } getSampleInstance(role) { const keys = Object.keys(this.nodes[role]); const sampleKey = (0, utils_1.sample)(keys); return this.nodes[role][sampleKey]; } /** * Add a master node to the pool * @param node */ addMasterNode(node) { const key = (0, util_1.getNodeKey)(node.options); const redis = this.createRedisFromOptions(node, node.options.readOnly); if (!node.options.readOnly) { this.nodes.all[key] = redis; this.nodes.master[key] = redis; return true; } return false; } /** * Creates a Redis connection instance from the node options * @param node * @param readOnly */ createRedisFromOptions(node, readOnly) { const redis = new Redis_1.default((0, utils_1.defaults)({ // By default, never try to reconnect when a node is lost, // instead, waiting for a `MOVED` error and fetching slots again. // When `clusterNodeRetryStrategy` is set, use it to allow // reconnection (e.g. for replica nodes that restart without // any slot changes). retryStrategy: typeof this.clusterNodeRetryStrategy === "function" ? this.clusterNodeRetryStrategy : null, // Offline queue should be enabled so that // we don't need to wait for the `ready` event // before sending commands to the node. enableOfflineQueue: true, readOnly }, node, this.redisOptions, { lazyConnect: true })); return redis; } /** * Find or create a connection to the node */ findOrCreate(node, readOnly = false) { const key = (0, util_1.getNodeKey)(node); readOnly = Boolean(readOnly); if (this.specifiedOptions[key]) { Object.assign(node, this.specifiedOptions[key]); } else { this.specifiedOptions[key] = node; } let redis; if (this.nodes.all[key]) { redis = this.nodes.all[key]; if (redis.options.readOnly !== readOnly) { redis.options.readOnly = readOnly; debug("Change role of %s to %s", key, readOnly ? "slave" : "master"); redis[readOnly ? "readonly" : "readwrite"]().catch(utils_1.noop); if (readOnly) { delete this.nodes.master[key]; this.nodes.slave[key] = redis; } else { delete this.nodes.slave[key]; this.nodes.master[key] = redis; } } } else { debug("Connecting to %s as %s", key, readOnly ? "slave" : "master"); redis = this.createRedisFromOptions(node, readOnly); this.nodes.all[key] = redis; this.nodes[readOnly ? "slave" : "master"][key] = redis; redis.once("end", () => { this.removeNode(key); this.emit("-node", redis, key); if (!Object.keys(this.nodes.all).length) { this.emit("drain"); } }); this.emit("+node", redis, key); redis.on("error", (error) => { this.emit("nodeError", error, key); }); } return redis; } /** * Reset the pool with a set of nodes. * The old node will be removed. */ reset(nodes) { debug("Reset with %O", nodes); const newNodes = {}; nodes.forEach((node) => { const key = (0, util_1.getNodeKey)(node); if (!(node.readOnly && newNodes[key])) { newNodes[key] = node; } }); Object.keys(this.nodes.all).forEach((key) => { if (!newNodes[key]) { debug("Disconnect %s because the node does not hold any slot", key); this.nodes.all[key].disconnect(); this.removeNode(key); } }); Object.keys(newNodes).forEach((key) => { const node = newNodes[key]; this.findOrCreate(node, node.readOnly); }); } /** * Remove a node from the pool. */ removeNode(key) { const { nodes } = this; if (nodes.all[key]) { debug("Remove %s from the pool", key); delete nodes.all[key]; } delete nodes.master[key]; delete nodes.slave[key]; } }; exports2.default = ConnectionPool; } }); // ../../node_modules/.pnpm/denque@2.1.0/node_modules/denque/index.js var require_denque = __commonJS({ "../../node_modules/.pnpm/denque@2.1.0/node_modules/denque/index.js"(exports2, module2) { "use strict"; function Denque(array, options) { var options = options || {}; this._capacity = options.capacity; this._head = 0; this._tail = 0; if (Array.isArray(array)) { this._fromArray(array); } else { this._capacityMask = 3; this._list = new Array(4); } } __name(Denque, "Denque"); Denque.prototype.peekAt = /* @__PURE__ */ __name(function peekAt(index) { var i = index; if (i !== (i | 0)) { return void 0; } var len = this.size(); if (i >= len || i < -len) return void 0; if (i < 0) i += len; i = this._head + i & this._capacityMask; return this._list[i]; }, "peekAt"); Denque.prototype.get = /* @__PURE__ */ __name(function get(i) { return this.peekAt(i); }, "get"); Denque.prototype.peek = /* @__PURE__ */ __name(function peek() { if (this._head === this._tail) return void 0; return this._list[this._head]; }, "peek"); Denque.prototype.peekFront = /* @__PURE__ */ __name(function peekFront() { return this.peek(); }, "peekFront"); Denque.prototype.peekBack = /* @__PURE__ */ __name(function peekBack() { return this.peekAt(-1); }, "peekBack"); Object.defineProperty(Denque.prototype, "length", { get: /* @__PURE__ */ __name(function length() { return this.size(); }, "length") }); Denque.prototype.size = /* @__PURE__ */ __name(function size() { if (this._head === this._tail) return 0; if (this._head < this._tail) return this._tail - this._head; else return this._capacityMask + 1 - (this._head - this._tail); }, "size"); Denque.prototype.unshift = /* @__PURE__ */ __name(function unshift(item) { if (arguments.length === 0) return this.size(); var len = this._list.length; this._head = this._head - 1 + len & this._capacityMask; this._list[this._head] = item; if (this._tail === this._head) this._growArray(); if (this._capacity && this.size() > this._capacity) this.pop(); if (this._head < this._tail) return this._tail - this._head; else return this._capacityMask + 1 - (this._head - this._tail); }, "unshift"); Denque.prototype.shift = /* @__PURE__ */ __name(function shift() { var head = this._head; if (head === this._tail) return void 0; var item = this._list[head]; this._list[head] = void 0; this._head = head + 1 & this._capacityMask; if (head < 2 && this._tail > 1e4 && this._tail <= this._list.length >>> 2) this._shrinkArray(); return item; }, "shift"); Denque.prototype.push = /* @__PURE__ */ __name(function push(item) { if (arguments.length === 0) return this.size(); var tail = this._tail; this._list[tail] = item; this._tail = tail + 1 & this._capacityMask; if (this._tail === this._head) { this._growArray(); } if (this._capacity && this.size() > this._capacity) { this.shift(); } if (this._head < this._tail) return this._tail - this._head; else return this._capacityMask + 1 - (this._head - this._tail); }, "push"); Denque.prototype.pop = /* @__PURE__ */ __name(function pop() { var tail = this._tail; if (tail === this._head) return void 0; var len = this._list.length; this._tail = tail - 1 + len & this._capacityMask; var item = this._list[this._tail]; this._list[this._tail] = void 0; if (this._head < 2 && tail > 1e4 && tail <= len >>> 2) this._shrinkArray(); return item; }, "pop"); Denque.prototype.removeOne = /* @__PURE__ */ __name(function removeOne(index) { var i = index; if (i !== (i | 0)) { return void 0; } if (this._head === this._tail) return void 0; var size = this.size(); var len = this._list.length; if (i >= size || i < -size) return void 0; if (i < 0) i += size; i = this._head + i & this._capacityMask; var item = this._list[i]; var k; if (index < size / 2) { for (k = index; k > 0; k--) { this._list[i] = this._list[i = i - 1 + len & this._capacityMask]; } this._list[i] = void 0; this._head = this._head + 1 + len & this._capacityMask; } else { for (k = size - 1 - index; k > 0; k--) { this._list[i] = this._list[i = i + 1 + len & this._capacityMask]; } this._list[i] = void 0; this._tail = this._tail - 1 + len & this._capacityMask; } return item; }, "removeOne"); Denque.prototype.remove = /* @__PURE__ */ __name(function remove(index, count) { var i = index; var removed; var del_count = count; if (i !== (i | 0)) { return void 0; } if (this._head === this._tail) return void 0; var size = this.size(); var len = this._list.length; if (i >= size || i < -size || count < 1) return void 0; if (i < 0) i += size; if (count === 1 || !count) { removed = new Array(1); removed[0] = this.removeOne(i); return removed; } if (i === 0 && i + count >= size) { removed = this.toArray(); this.clear(); return removed; } if (i + count > size) count = size - i; var k; removed = new Array(count); for (k = 0; k < count; k++) { removed[k] = this._list[this._head + i + k & this._capacityMask]; } i = this._head + i & this._capacityMask; if (index + count === size) { this._tail = this._tail - count + len & this._capacityMask; for (k = count; k > 0; k--) { this._list[i = i + 1 + len & this._capacityMask] = void 0; } return removed; } if (index === 0) { this._head = this._head + count + len & this._capacityMask; for (k = count - 1; k > 0; k--) { this._list[i = i + 1 + len & this._capacityMask] = void 0; } return removed; } if (i < size / 2) { this._head = this._head + index + count + len & this._capacityMask; for (k = index; k > 0; k--) { this.unshift(this._list[i = i - 1 + len & this._capacityMask]); } i = this._head - 1 + len & this._capacityMask; while (del_count > 0) { this._list[i = i - 1 + len & this._capacityMask] = void 0; del_count--; } if (index < 0) this._tail = i; } else { this._tail = i; i = i + count + len & this._capacityMask; for (k = size - (count + index); k > 0; k--) { this.push(this._list[i++]); } i = this._tail; while (del_count > 0) { this._list[i = i + 1 + len & this._capacityMask] = void 0; del_count--; } } if (this._head < 2 && this._tail > 1e4 && this._tail <= len >>> 2) this._shrinkArray(); return removed; }, "remove"); Denque.prototype.splice = /* @__PURE__ */ __name(function splice(index, count) { var i = index; if (i !== (i | 0)) { return void 0; } var size = this.size(); if (i < 0) i += size; if (i > size) return void 0; if (arguments.length > 2) { var k; var temp; var removed; var arg_len = arguments.length; var len = this._list.length; var arguments_index = 2; if (!size || i < size / 2) { temp = new Array(i); for (k = 0; k < i; k++) { temp[k] = this._list[this._head + k & this._capacityMask]; } if (count === 0) { removed = []; if (i > 0) { this._head = this._head + i + len & this._capacityMask; } } else { removed = this.remove(i, count); this._head = this._head + i + len & this._capacityMask; } while (arg_len > arguments_index) { this.unshift(arguments[--arg_len]); } for (k = i; k > 0; k--) { this.unshift(temp[k - 1]); } } else { temp = new Array(size - (i + count)); var leng = temp.length; for (k = 0; k < leng; k++) { temp[k] = this._list[this._head + i + count + k & this._capacityMask]; } if (count === 0) { removed = []; if (i != size) { this._tail = this._head + i + len & this._capacityMask; } } else { removed = this.remove(i, count); this._tail = this._tail - leng + len & this._capacityMask; } while (arguments_index < arg_len) { this.push(arguments[arguments_index++]); } for (k = 0; k < leng; k++) { this.push(temp[k]); } } return removed; } else { return this.remove(i, count); } }, "splice"); Denque.prototype.clear = /* @__PURE__ */ __name(function clear() { this._list = new Array(this._list.length); this._head = 0; this._tail = 0; }, "clear"); Denque.prototype.isEmpty = /* @__PURE__ */ __name(function isEmpty() { return this._head === this._tail; }, "isEmpty"); Denque.prototype.toArray = /* @__PURE__ */ __name(function toArray() { return this._copyArray(false); }, "toArray"); Denque.prototype._fromArray = /* @__PURE__ */ __name(function _fromArray(array) { var length = array.length; var capacity = this._nextPowerOf2(length); this._list = new Array(capacity); this._capacityMask = capacity - 1; this._tail = length; for (var i = 0; i < length; i++) this._list[i] = array[i]; }, "_fromArray"); Denque.prototype._copyArray = /* @__PURE__ */ __name(function _copyArray(fullCopy, size) { var src = this._list; var capacity = src.length; var length = this.length; size = size | length; if (size == length && this._head < this._tail) { return this._list.slice(this._head, this._tail); } var dest = new Array(size); var k = 0; var i; if (fullCopy || this._head > this._tail) { for (i = this._head; i < capacity; i++) dest[k++] = src[i]; for (i = 0; i < this._tail; i++) dest[k++] = src[i]; } else { for (i = this._head; i < this._tail; i++) dest[k++] = src[i]; } return dest; }, "_copyArray"); Denque.prototype._growArray = /* @__PURE__ */ __name(function _growArray() { if (this._head != 0) { var newList = this._copyArray(true, this._list.length << 1); this._tail = this._list.length; this._head = 0; this._list = newList; } else { this._tail = this._list.length; this._list.length <<= 1; } this._capacityMask = this._capacityMask << 1 | 1; }, "_growArray"); Denque.prototype._shrinkArray = /* @__PURE__ */ __name(function _shrinkArray() { this._list.length >>>= 1; this._capacityMask >>>= 1; }, "_shrinkArray"); Denque.prototype._nextPowerOf2 = /* @__PURE__ */ __name(function _nextPowerOf2(num) { var log2 = Math.log(num) / Math.log(2); var nextPow2 = 1 << log2 + 1; return Math.max(nextPow2, 4); }, "_nextPowerOf2"); module2.exports = Denque; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/DelayQueue.js var require_DelayQueue = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/DelayQueue.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var utils_1 = require_utils15(); var Deque = require_denque(); var debug = (0, utils_1.Debug)("delayqueue"); var DelayQueue = class { static { __name(this, "DelayQueue"); } constructor() { this.queues = {}; this.timeouts = {}; } /** * Add a new item to the queue * * @param bucket bucket name * @param item function that will run later * @param options */ push(bucket, item, options) { const callback = options.callback || process.nextTick; if (!this.queues[bucket]) { this.queues[bucket] = new Deque(); } const queue = this.queues[bucket]; queue.push(item); if (!this.timeouts[bucket]) { this.timeouts[bucket] = setTimeout(() => { callback(() => { this.timeouts[bucket] = null; this.execute(bucket); }); }, options.timeout); } } execute(bucket) { const queue = this.queues[bucket]; if (!queue) { return; } const { length } = queue; if (!length) { return; } debug("send %d commands in %s queue", length, bucket); this.queues[bucket] = null; while (queue.length > 0) { queue.shift()(); } } }; exports2.default = DelayQueue; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/ShardedSubscriber.js var require_ShardedSubscriber = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/ShardedSubscriber.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var util_1 = require_util2(); var utils_1 = require_utils15(); var Redis_1 = require_Redis(); var debug = (0, utils_1.Debug)("cluster:subscriberGroup:shardedSubscriber"); var SubscriberStatus = { IDLE: "idle", STARTING: "starting", CONNECTED: "connected", STOPPING: "stopping", ENDED: "ended" }; var ALLOWED_STATUS_UPDATES = { [SubscriberStatus.IDLE]: [ SubscriberStatus.STARTING, SubscriberStatus.STOPPING, SubscriberStatus.ENDED ], [SubscriberStatus.STARTING]: [ SubscriberStatus.CONNECTED, SubscriberStatus.STOPPING, SubscriberStatus.ENDED ], [SubscriberStatus.CONNECTED]: [ SubscriberStatus.STOPPING, SubscriberStatus.ENDED ], [SubscriberStatus.STOPPING]: [SubscriberStatus.ENDED], [SubscriberStatus.ENDED]: [] }; var ShardedSubscriber = class { static { __name(this, "ShardedSubscriber"); } constructor(emitter, options, redisOptions) { var _a; this.emitter = emitter; this.status = SubscriberStatus.IDLE; this.instance = null; this.connectPromise = null; this.messageListeners = /* @__PURE__ */ new Map(); this.onEnd = () => { this.updateStatus(SubscriberStatus.ENDED); this.emitter.emit("-node", this.instance, this.nodeKey); }; this.onError = (error) => { this.emitter.emit("nodeError", error, this.nodeKey); }; this.onMoved = () => { this.emitter.emit("moved"); }; this.instance = new Redis_1.default((0, utils_1.defaults)({ enableReadyCheck: false, enableOfflineQueue: true, connectionName: (0, util_1.getConnectionName)("ssubscriber", options.connectionName), /** * Disable auto reconnection for subscribers. * The ClusterSubscriberGroup will handle the reconnection. */ retryStrategy: null, lazyConnect: true }, options, redisOptions)); this.lazyConnect = (_a = redisOptions === null || redisOptions === void 0 ? void 0 : redisOptions.lazyConnect) !== null && _a !== void 0 ? _a : true; this.nodeKey = (0, util_1.getNodeKey)(options); this.instance.on("end", this.onEnd); this.instance.on("error", this.onError); this.instance.on("moved", this.onMoved); for (const event of ["smessage", "smessageBuffer"]) { const listener = /* @__PURE__ */ __name((...args) => { this.emitter.emit(event, ...args); }, "listener"); this.messageListeners.set(event, listener); this.instance.on(event, listener); } } async start() { if (this.connectPromise) { return this.connectPromise; } if (this.status === SubscriberStatus.STARTING || this.status === SubscriberStatus.CONNECTED) { return; } if (this.status === SubscriberStatus.ENDED || !this.instance) { throw new Error(`Sharded subscriber ${this.nodeKey} cannot be restarted once ended.`); } this.updateStatus(SubscriberStatus.STARTING); this.connectPromise = this.instance.connect(); try { await this.connectPromise; this.updateStatus(SubscriberStatus.CONNECTED); } catch (err) { this.updateStatus(SubscriberStatus.ENDED); throw err; } finally { this.connectPromise = null; } } stop() { this.updateStatus(SubscriberStatus.STOPPING); if (this.instance) { this.instance.disconnect(); this.instance.removeAllListeners(); this.messageListeners.clear(); this.instance = null; } this.updateStatus(SubscriberStatus.ENDED); debug("stopped %s", this.nodeKey); } isStarted() { return [ SubscriberStatus.CONNECTED, SubscriberStatus.STARTING ].includes(this.status); } get subscriberStatus() { return this.status; } isHealthy() { return (this.status === SubscriberStatus.IDLE || this.status === SubscriberStatus.CONNECTED || this.status === SubscriberStatus.STARTING) && this.instance !== null; } getInstance() { return this.instance; } getNodeKey() { return this.nodeKey; } isLazyConnect() { return this.lazyConnect; } updateStatus(nextStatus) { if (this.status === nextStatus) { return; } if (!ALLOWED_STATUS_UPDATES[this.status].includes(nextStatus)) { debug("Invalid status transition for %s: %s -> %s", this.nodeKey, this.status, nextStatus); return; } this.status = nextStatus; } }; exports2.default = ShardedSubscriber; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/ClusterSubscriberGroup.js var require_ClusterSubscriberGroup = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/ClusterSubscriberGroup.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var utils_1 = require_utils15(); var util_1 = require_util2(); var calculateSlot = require_lib6(); var ShardedSubscriber_1 = require_ShardedSubscriber(); var debug = (0, utils_1.Debug)("cluster:subscriberGroup"); var ClusterSubscriberGroup = class _ClusterSubscriberGroup { static { __name(this, "ClusterSubscriberGroup"); } /** * Register callbacks * * @param cluster */ constructor(subscriberGroupEmitter, options) { this.subscriberGroupEmitter = subscriberGroupEmitter; this.options = options; this.shardedSubscribers = /* @__PURE__ */ new Map(); this.clusterSlots = []; this.subscriberToSlotsIndex = /* @__PURE__ */ new Map(); this.channels = /* @__PURE__ */ new Map(); this.failedAttemptsByNode = /* @__PURE__ */ new Map(); this.isResetting = false; this.pendingReset = null; this.handleSubscriberConnectFailed = (error, nodeKey) => { const currentAttempts = this.failedAttemptsByNode.get(nodeKey) || 0; const failedAttempts = currentAttempts + 1; this.failedAttemptsByNode.set(nodeKey, failedAttempts); const attempts = Math.min(failedAttempts, _ClusterSubscriberGroup.MAX_RETRY_ATTEMPTS); const backoff = Math.min(_ClusterSubscriberGroup.BASE_BACKOFF_MS * 2 ** attempts, _ClusterSubscriberGroup.MAX_BACKOFF_MS); const jitter = Math.floor((Math.random() - 0.5) * (backoff * 0.5)); const delay = Math.max(0, backoff + jitter); debug("Failed to connect subscriber for %s. Refreshing slots in %dms", nodeKey, delay); this.subscriberGroupEmitter.emit("subscriberConnectFailed", { delay, error }); }; this.handleSubscriberConnectSucceeded = (nodeKey) => { this.failedAttemptsByNode.delete(nodeKey); }; } /** * Get the responsible subscriber. * * @param slot */ getResponsibleSubscriber(slot) { const nodeKey = this.clusterSlots[slot][0]; const sub = this.shardedSubscribers.get(nodeKey); if (sub && sub.subscriberStatus === "idle") { sub.start().then(() => { this.handleSubscriberConnectSucceeded(sub.getNodeKey()); }).catch((err) => { this.handleSubscriberConnectFailed(err, sub.getNodeKey()); }); } return sub; } /** * Adds a channel for which this subscriber group is responsible * * @param channels */ addChannels(channels) { const slot = calculateSlot(channels[0]); for (const c of channels) { if (calculateSlot(c) !== slot) { return -1; } } const currChannels = this.channels.get(slot); if (!currChannels) { this.channels.set(slot, channels); } else { this.channels.set(slot, currChannels.concat(channels)); } return Array.from(this.channels.values()).reduce((sum, array) => sum + array.length, 0); } /** * Removes channels for which the subscriber group is responsible by optionally unsubscribing * @param channels */ removeChannels(channels) { const slot = calculateSlot(channels[0]); for (const c of channels) { if (calculateSlot(c) !== slot) { return -1; } } const slotChannels = this.channels.get(slot); if (slotChannels) { const updatedChannels = slotChannels.filter((c) => !channels.includes(c)); this.channels.set(slot, updatedChannels); } return Array.from(this.channels.values()).reduce((sum, array) => sum + array.length, 0); } /** * Disconnect all subscribers and clear some of the internal state. */ stop() { for (const s of this.shardedSubscribers.values()) { s.stop(); } this.pendingReset = null; this.shardedSubscribers.clear(); this.subscriberToSlotsIndex.clear(); } /** * Start all not yet started subscribers */ start() { const startPromises = []; for (const s of this.shardedSubscribers.values()) { if (this.shouldStartSubscriber(s)) { startPromises.push(s.start().then(() => { this.handleSubscriberConnectSucceeded(s.getNodeKey()); }).catch((err) => { this.handleSubscriberConnectFailed(err, s.getNodeKey()); })); this.subscriberGroupEmitter.emit("+subscriber"); } } return Promise.all(startPromises); } /** * Resets the subscriber group by disconnecting all subscribers that are no longer needed and connecting new ones. */ async reset(clusterSlots, clusterNodes) { if (this.isResetting) { this.pendingReset = { slots: clusterSlots, nodes: clusterNodes }; return; } this.isResetting = true; try { const hasTopologyChanged = this._refreshSlots(clusterSlots); const hasFailedSubscribers = this.hasUnhealthySubscribers(); if (!hasTopologyChanged && !hasFailedSubscribers) { debug("No topology change detected or failed subscribers. Skipping reset."); return; } for (const [nodeKey, shardedSubscriber] of this.shardedSubscribers) { if ( // If the subscriber is still responsible for a slot range and is healthy then keep it this.subscriberToSlotsIndex.has(nodeKey) && shardedSubscriber.isHealthy() ) { debug("Skipping deleting subscriber for %s", nodeKey); continue; } debug("Removing subscriber for %s", nodeKey); shardedSubscriber.stop(); this.shardedSubscribers.delete(nodeKey); this.subscriberGroupEmitter.emit("-subscriber"); } const startPromises = []; for (const [nodeKey, _2] of this.subscriberToSlotsIndex) { const existingSubscriber = this.shardedSubscribers.get(nodeKey); if (existingSubscriber && existingSubscriber.isHealthy()) { debug("Skipping creating new subscriber for %s", nodeKey); if (!existingSubscriber.isStarted() && this.shouldStartSubscriber(existingSubscriber)) { startPromises.push(existingSubscriber.start().then(() => { this.handleSubscriberConnectSucceeded(nodeKey); }).catch((error) => { this.handleSubscriberConnectFailed(error, nodeKey); })); } continue; } if (existingSubscriber && !existingSubscriber.isHealthy()) { debug("Replacing subscriber for %s", nodeKey); existingSubscriber.stop(); this.shardedSubscribers.delete(nodeKey); this.subscriberGroupEmitter.emit("-subscriber"); } debug("Creating new subscriber for %s", nodeKey); const redis = clusterNodes.find((node) => { return (0, util_1.getNodeKey)(node.options) === nodeKey; }); if (!redis) { debug("Failed to find node for key %s", nodeKey); continue; } const sub = new ShardedSubscriber_1.default(this.subscriberGroupEmitter, redis.options, this.options.redisOptions); this.shardedSubscribers.set(nodeKey, sub); if (this.shouldStartSubscriber(sub)) { startPromises.push(sub.start().then(() => { this.handleSubscriberConnectSucceeded(nodeKey); }).catch((error) => { this.handleSubscriberConnectFailed(error, nodeKey); })); } this.subscriberGroupEmitter.emit("+subscriber"); } await Promise.all(startPromises); this._resubscribe(); this.subscriberGroupEmitter.emit("subscribersReady"); } finally { this.isResetting = false; if (this.pendingReset) { const { slots, nodes } = this.pendingReset; this.pendingReset = null; await this.reset(slots, nodes); } } } /** * Refreshes the subscriber-related slot ranges * * Returns false if no refresh was needed * * @param targetSlots */ _refreshSlots(targetSlots) { if (this._slotsAreEqual(targetSlots) && this.subscriberToSlotsIndex.size > 0) { debug("Nothing to refresh because the new cluster map is equal to the previous one."); return false; } debug("Refreshing the slots of the subscriber group."); this.subscriberToSlotsIndex = /* @__PURE__ */ new Map(); for (let slot = 0; slot < targetSlots.length; slot++) { const node = targetSlots[slot][0]; if (!this.subscriberToSlotsIndex.has(node)) { this.subscriberToSlotsIndex.set(node, []); } this.subscriberToSlotsIndex.get(node).push(Number(slot)); } this.clusterSlots = JSON.parse(JSON.stringify(targetSlots)); return true; } /** * Resubscribes to the previous channels * * @private */ _resubscribe() { if (this.shardedSubscribers) { this.shardedSubscribers.forEach((s, nodeKey) => { const subscriberSlots = this.subscriberToSlotsIndex.get(nodeKey); if (subscriberSlots) { subscriberSlots.forEach((ss) => { const redis = s.getInstance(); const channels = this.channels.get(ss); if (channels && channels.length > 0) { if (!redis || redis.status === "end") { return; } if (redis.status === "ready") { redis.ssubscribe(...channels).catch((err) => { debug("Failed to ssubscribe on node %s: %s", nodeKey, err); }); } else { redis.once("ready", () => { redis.ssubscribe(...channels).catch((err) => { debug("Failed to ssubscribe on node %s: %s", nodeKey, err); }); }); } } }); } }); } } /** * Deep equality of the cluster slots objects * * @param other * @private */ _slotsAreEqual(other) { if (this.clusterSlots === void 0) { return false; } else { return JSON.stringify(this.clusterSlots) === JSON.stringify(other); } } /** * Checks if any subscribers are in an unhealthy state. * * A subscriber is considered unhealthy if: * - It exists but is not started (failed/disconnected) * - It's missing entirely for a node that should have one * * @returns true if any subscribers need to be recreated */ hasUnhealthySubscribers() { const hasFailedSubscribers = Array.from(this.shardedSubscribers.values()).some((sub) => !sub.isHealthy()); const hasMissingSubscribers = Array.from(this.subscriberToSlotsIndex.keys()).some((nodeKey) => !this.shardedSubscribers.has(nodeKey)); return hasFailedSubscribers || hasMissingSubscribers; } shouldStartSubscriber(sub) { if (sub.isStarted()) { return false; } if (!sub.isLazyConnect()) { return true; } const subscriberSlots = this.subscriberToSlotsIndex.get(sub.getNodeKey()); if (!subscriberSlots) { return false; } return subscriberSlots.some((slot) => { const channels = this.channels.get(slot); return Boolean(channels && channels.length > 0); }); } }; exports2.default = ClusterSubscriberGroup; ClusterSubscriberGroup.MAX_RETRY_ATTEMPTS = 10; ClusterSubscriberGroup.MAX_BACKOFF_MS = 2e3; ClusterSubscriberGroup.BASE_BACKOFF_MS = 100; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/index.js var require_cluster = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/cluster/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var commands_1 = require_built(); var events_1 = require("events"); var redis_errors_1 = require_redis_errors(); var standard_as_callback_1 = require_built2(); var Command_1 = require_Command(); var ClusterAllFailedError_1 = require_ClusterAllFailedError(); var Redis_1 = require_Redis(); var ScanStream_1 = require_ScanStream(); var transaction_1 = require_transaction(); var utils_1 = require_utils15(); var applyMixin_1 = require_applyMixin(); var Commander_1 = require_Commander(); var ClusterOptions_1 = require_ClusterOptions(); var ClusterSubscriber_1 = require_ClusterSubscriber(); var ConnectionPool_1 = require_ConnectionPool(); var DelayQueue_1 = require_DelayQueue(); var util_1 = require_util2(); var Deque = require_denque(); var ClusterSubscriberGroup_1 = require_ClusterSubscriberGroup(); var debug = (0, utils_1.Debug)("cluster"); var REJECT_OVERWRITTEN_COMMANDS = /* @__PURE__ */ new WeakSet(); var Cluster = class _Cluster extends Commander_1.default { static { __name(this, "Cluster"); } /** * Creates an instance of Cluster. */ //TODO: Add an option that enables or disables sharded PubSub constructor(startupNodes, options = {}) { var _a; super(); this.slots = []; this._groupsIds = {}; this._groupsBySlot = Array(16384); this.isCluster = true; this.retryAttempts = 0; this.delayQueue = new DelayQueue_1.default(); this.offlineQueue = new Deque(); this.isRefreshing = false; this._refreshSlotsCacheCallbacks = []; this._autoPipelines = /* @__PURE__ */ new Map(); this._runningAutoPipelines = /* @__PURE__ */ new Set(); this._readyDelayedCallbacks = []; this.connectionEpoch = 0; events_1.EventEmitter.call(this); this.startupNodes = startupNodes; this.options = (0, utils_1.defaults)({}, options, ClusterOptions_1.DEFAULT_CLUSTER_OPTIONS, this.options); if (this.options.shardedSubscribers) { this.createShardedSubscriberGroup(); } if (this.options.redisOptions && this.options.redisOptions.keyPrefix && !this.options.keyPrefix) { this.options.keyPrefix = this.options.redisOptions.keyPrefix; } if (typeof this.options.scaleReads !== "function" && ["all", "master", "slave"].indexOf(this.options.scaleReads) === -1) { throw new Error('Invalid option scaleReads "' + this.options.scaleReads + '". Expected "all", "master", "slave" or a custom function'); } this.connectionPool = new ConnectionPool_1.default((_a = this.options.redisOptions) !== null && _a !== void 0 ? _a : {}, this.options.clusterNodeRetryStrategy); this.connectionPool.on("-node", (redis, key) => { this.emit("-node", redis); }); this.connectionPool.on("+node", (redis) => { this.emit("+node", redis); }); this.connectionPool.on("drain", () => { this.setStatus("close"); }); this.connectionPool.on("nodeError", (error, key) => { this.emit("node error", error, key); }); this.subscriber = new ClusterSubscriber_1.default(this.connectionPool, this); if (this.options.scripts) { Object.entries(this.options.scripts).forEach(([name, definition]) => { this.defineCommand(name, definition); }); } if (this.options.lazyConnect) { this.setStatus("wait"); } else { this.connect().catch((err) => { debug("connecting failed: %s", err); }); } } /** * Connect to a cluster */ connect() { return new Promise((resolve, reject) => { if (this.status === "connecting" || this.status === "connect" || this.status === "ready") { reject(new Error("Redis is already connecting/connected")); return; } const epoch = ++this.connectionEpoch; this.setStatus("connecting"); this.resolveStartupNodeHostnames().then((nodes) => { if (this.connectionEpoch !== epoch) { debug("discard connecting after resolving startup nodes because epoch not match: %d != %d", epoch, this.connectionEpoch); reject(new redis_errors_1.RedisError("Connection is discarded because a new connection is made")); return; } if (this.status !== "connecting") { debug("discard connecting after resolving startup nodes because the status changed to %s", this.status); reject(new redis_errors_1.RedisError("Connection is aborted")); return; } this.connectionPool.reset(nodes); if (this.options.shardedSubscribers) { this.shardedSubscribers.reset(this.slots, this.connectionPool.getNodes("all")).catch((err) => { debug("Error while starting subscribers: %s", err); }); } const readyHandler = /* @__PURE__ */ __name(() => { this.setStatus("ready"); this.retryAttempts = 0; this.executeOfflineCommands(); this.resetNodesRefreshInterval(); resolve(); }, "readyHandler"); let closeListener = void 0; const refreshListener = /* @__PURE__ */ __name(() => { this.invokeReadyDelayedCallbacks(void 0); this.removeListener("close", closeListener); this.manuallyClosing = false; this.setStatus("connect"); if (this.options.enableReadyCheck) { this.readyCheck((err, fail) => { if (err || fail) { debug("Ready check failed (%s). Reconnecting...", err || fail); if (this.status === "connect") { this.disconnect(true); } } else { readyHandler(); } }); } else { readyHandler(); } }, "refreshListener"); closeListener = /* @__PURE__ */ __name(() => { const error = new Error("None of startup nodes is available"); this.removeListener("refresh", refreshListener); this.invokeReadyDelayedCallbacks(error); reject(error); }, "closeListener"); this.once("refresh", refreshListener); this.once("close", closeListener); this.once("close", this.handleCloseEvent.bind(this)); this.refreshSlotsCache((err) => { if (err && err.message === ClusterAllFailedError_1.default.defaultMessage) { Redis_1.default.prototype.silentEmit.call(this, "error", err); this.connectionPool.reset([]); } }); this.subscriber.start(); if (this.options.shardedSubscribers) { this.shardedSubscribers.start().catch((err) => { debug("Error while starting subscribers: %s", err); }); } }).catch((err) => { this.setStatus("close"); this.handleCloseEvent(err); this.invokeReadyDelayedCallbacks(err); reject(err); }); }); } /** * Disconnect from every node in the cluster. */ disconnect(reconnect = false) { const status = this.status; this.setStatus("disconnecting"); if (!reconnect) { this.manuallyClosing = true; } if (this.reconnectTimeout && !reconnect) { clearTimeout(this.reconnectTimeout); this.reconnectTimeout = null; debug("Canceled reconnecting attempts"); } this.clearNodesRefreshInterval(); this.subscriber.stop(); if (this.options.shardedSubscribers) { this.shardedSubscribers.stop(); } if (status === "wait") { this.setStatus("close"); this.handleCloseEvent(); } else { this.connectionPool.reset([]); } } /** * Quit the cluster gracefully. */ quit(callback) { const status = this.status; this.setStatus("disconnecting"); this.manuallyClosing = true; if (this.reconnectTimeout) { clearTimeout(this.reconnectTimeout); this.reconnectTimeout = null; } this.clearNodesRefreshInterval(); this.subscriber.stop(); if (this.options.shardedSubscribers) { this.shardedSubscribers.stop(); } if (status === "wait") { const ret2 = (0, standard_as_callback_1.default)(Promise.resolve("OK"), callback); setImmediate(function() { this.setStatus("close"); this.handleCloseEvent(); }.bind(this)); return ret2; } return (0, standard_as_callback_1.default)(Promise.all(this.nodes().map((node) => node.quit().catch((err) => { if (err.message === utils_1.CONNECTION_CLOSED_ERROR_MSG) { return "OK"; } throw err; }))).then(() => "OK"), callback); } /** * Create a new instance with the same startup nodes and options as the current one. * * @example * ```js * var cluster = new Redis.Cluster([{ host: "127.0.0.1", port: "30001" }]); * var anotherCluster = cluster.duplicate(); * ``` */ duplicate(overrideStartupNodes = [], overrideOptions = {}) { const startupNodes = overrideStartupNodes.length > 0 ? overrideStartupNodes : this.startupNodes.slice(0); const options = Object.assign({}, this.options, overrideOptions); return new _Cluster(startupNodes, options); } /** * Get nodes with the specified role */ nodes(role = "all") { if (role !== "all" && role !== "master" && role !== "slave") { throw new Error('Invalid role "' + role + '". Expected "all", "master" or "slave"'); } return this.connectionPool.getNodes(role); } /** * This is needed in order not to install a listener for each auto pipeline * * @ignore */ delayUntilReady(callback) { this._readyDelayedCallbacks.push(callback); } /** * Get the number of commands queued in automatic pipelines. * * This is not available (and returns 0) until the cluster is connected and slots information have been received. */ get autoPipelineQueueSize() { let queued = 0; for (const pipeline of this._autoPipelines.values()) { queued += pipeline.length; } return queued; } /** * Refresh the slot cache * * @ignore */ refreshSlotsCache(callback) { if (callback) { this._refreshSlotsCacheCallbacks.push(callback); } if (this.isRefreshing) { return; } this.isRefreshing = true; const _this = this; const wrapper = /* @__PURE__ */ __name((error) => { this.isRefreshing = false; for (const callback2 of this._refreshSlotsCacheCallbacks) { callback2(error); } this._refreshSlotsCacheCallbacks = []; }, "wrapper"); const nodes = (0, utils_1.shuffle)(this.connectionPool.getNodes()); let lastNodeError = null; function tryNode(index) { if (index === nodes.length) { const error = new ClusterAllFailedError_1.default(ClusterAllFailedError_1.default.defaultMessage, lastNodeError); return wrapper(error); } const node = nodes[index]; const key = `${node.options.host}:${node.options.port}`; debug("getting slot cache from %s", key); _this.getInfoFromNode(node, function(err) { switch (_this.status) { case "close": case "end": return wrapper(new Error("Cluster is disconnected.")); case "disconnecting": return wrapper(new Error("Cluster is disconnecting.")); } if (err) { _this.emit("node error", err, key); lastNodeError = err; tryNode(index + 1); } else { _this.emit("refresh"); wrapper(); } }); } __name(tryNode, "tryNode"); tryNode(0); } /** * @ignore */ sendCommand(command, stream, node) { if (this.status === "wait") { this.connect().catch(utils_1.noop); } if (this.status === "end") { command.reject(new Error(utils_1.CONNECTION_CLOSED_ERROR_MSG)); return command.promise; } let to = this.options.scaleReads; if (to !== "master") { const isCommandReadOnly = command.isReadOnly || (0, commands_1.exists)(command.name) && (0, commands_1.hasFlag)(command.name, "readonly"); if (!isCommandReadOnly) { to = "master"; } } let targetSlot = node ? node.slot : command.getSlot(); const ttl = {}; const _this = this; if (!node && !REJECT_OVERWRITTEN_COMMANDS.has(command)) { REJECT_OVERWRITTEN_COMMANDS.add(command); const reject = command.reject; command.reject = function(err) { const partialTry = tryConnection.bind(null, true); _this.handleError(err, ttl, { moved: /* @__PURE__ */ __name(function(slot, key) { debug("command %s is moved to %s", command.name, key); targetSlot = Number(slot); if (_this.slots[slot]) { _this.slots[slot][0] = key; } else { _this.slots[slot] = [key]; } _this._groupsBySlot[slot] = _this._groupsIds[_this.slots[slot].join(";")]; _this.connectionPool.findOrCreate(_this.natMapper(key)); tryConnection(); debug("refreshing slot caches... (triggered by MOVED error)"); _this.refreshSlotsCache(); }, "moved"), ask: /* @__PURE__ */ __name(function(slot, key) { debug("command %s is required to ask %s:%s", command.name, key); const mapped = _this.natMapper(key); _this.connectionPool.findOrCreate(mapped); tryConnection(false, `${mapped.host}:${mapped.port}`); }, "ask"), tryagain: partialTry, clusterDown: partialTry, connectionClosed: partialTry, maxRedirections: /* @__PURE__ */ __name(function(redirectionError) { reject.call(command, redirectionError); }, "maxRedirections"), defaults: /* @__PURE__ */ __name(function() { reject.call(command, err); }, "defaults") }); }; } tryConnection(); function tryConnection(random, asking) { if (_this.status === "end") { command.reject(new redis_errors_1.AbortError("Cluster is ended.")); return; } let redis; if (_this.status === "ready" || command.name === "cluster") { if (node && node.redis) { redis = node.redis; } else if (Command_1.default.checkFlag("ENTER_SUBSCRIBER_MODE", command.name) || Command_1.default.checkFlag("EXIT_SUBSCRIBER_MODE", command.name)) { if (_this.options.shardedSubscribers && (command.name == "ssubscribe" || command.name == "sunsubscribe")) { const sub = _this.shardedSubscribers.getResponsibleSubscriber(targetSlot); if (!sub) { command.reject(new redis_errors_1.AbortError(`No sharded subscriber for slot: ${targetSlot}`)); return; } let status = -1; if (command.name == "ssubscribe") { status = _this.shardedSubscribers.addChannels(command.getKeys()); } if (command.name == "sunsubscribe") { status = _this.shardedSubscribers.removeChannels(command.getKeys()); } if (status !== -1) { redis = sub.getInstance(); } else { command.reject(new redis_errors_1.AbortError("Possible CROSSSLOT error: All channels must hash to the same slot")); } } else { redis = _this.subscriber.getInstance(); } if (!redis) { command.reject(new redis_errors_1.AbortError("No subscriber for the cluster")); return; } } else { if (!random) { if (typeof targetSlot === "number" && _this.slots[targetSlot]) { const nodeKeys = _this.slots[targetSlot]; if (typeof to === "function") { const nodes = nodeKeys.map(function(key) { return _this.connectionPool.getInstanceByKey(key); }); redis = to(nodes, command); if (Array.isArray(redis)) { redis = (0, utils_1.sample)(redis); } if (!redis) { redis = nodes[0]; } } else { let key; if (to === "all") { key = (0, utils_1.sample)(nodeKeys); } else if (to === "slave" && nodeKeys.length > 1) { key = (0, utils_1.sample)(nodeKeys, 1); } else { key = nodeKeys[0]; } redis = _this.connectionPool.getInstanceByKey(key); } } if (asking) { redis = _this.connectionPool.getInstanceByKey(asking); redis.asking(); } } if (!redis) { redis = (typeof to === "function" ? null : _this.connectionPool.getSampleInstance(to)) || _this.connectionPool.getSampleInstance("all"); } if (redis && !_this.options.enableOfflineQueue && redis.status !== "ready" && redis.status !== "wait") { command.reject(new Error(utils_1.CONNECTION_CLOSED_ERROR_MSG)); return; } } if (node && !node.redis) { node.redis = redis; } } if (!redis && _this.options.enableOfflineQueue) { _this.offlineQueue.push({ command, stream, node }); return; } if (!redis) { command.reject(new Error("Cluster isn't ready and enableOfflineQueue options is false")); return; } redis.sendCommand(command, stream); } __name(tryConnection, "tryConnection"); return command.promise; } sscanStream(key, options) { return this.createScanStream("sscan", { key, options }); } sscanBufferStream(key, options) { return this.createScanStream("sscanBuffer", { key, options }); } hscanStream(key, options) { return this.createScanStream("hscan", { key, options }); } hscanBufferStream(key, options) { return this.createScanStream("hscanBuffer", { key, options }); } zscanStream(key, options) { return this.createScanStream("zscan", { key, options }); } zscanBufferStream(key, options) { return this.createScanStream("zscanBuffer", { key, options }); } /** * @ignore */ handleError(error, ttl, handlers) { if (typeof ttl.value === "undefined") { ttl.value = this.options.maxRedirections; } else { ttl.value -= 1; } if (ttl.value <= 0) { handlers.maxRedirections(new Error("Too many Cluster redirections. Last error: " + error)); return; } const errv = error.message.split(" "); if (errv[0] === "MOVED") { const timeout = this.options.retryDelayOnMoved; if (timeout && typeof timeout === "number") { this.delayQueue.push("moved", handlers.moved.bind(null, errv[1], errv[2]), { timeout }); } else { handlers.moved(errv[1], errv[2]); } } else if (errv[0] === "ASK") { handlers.ask(errv[1], errv[2]); } else if (errv[0] === "TRYAGAIN") { this.delayQueue.push("tryagain", handlers.tryagain, { timeout: this.options.retryDelayOnTryAgain }); } else if (errv[0] === "CLUSTERDOWN" && this.options.retryDelayOnClusterDown > 0) { this.delayQueue.push("clusterdown", handlers.connectionClosed, { timeout: this.options.retryDelayOnClusterDown, callback: this.refreshSlotsCache.bind(this) }); } else if (error.message === utils_1.CONNECTION_CLOSED_ERROR_MSG && this.options.retryDelayOnFailover > 0 && this.status === "ready") { this.delayQueue.push("failover", handlers.connectionClosed, { timeout: this.options.retryDelayOnFailover, callback: this.refreshSlotsCache.bind(this) }); } else { handlers.defaults(); } } resetOfflineQueue() { this.offlineQueue = new Deque(); } clearNodesRefreshInterval() { if (this.slotsTimer) { clearTimeout(this.slotsTimer); this.slotsTimer = null; } } resetNodesRefreshInterval() { if (this.slotsTimer || !this.options.slotsRefreshInterval) { return; } const nextRound = /* @__PURE__ */ __name(() => { this.slotsTimer = setTimeout(() => { debug('refreshing slot caches... (triggered by "slotsRefreshInterval" option)'); this.refreshSlotsCache(() => { nextRound(); }); }, this.options.slotsRefreshInterval); }, "nextRound"); nextRound(); } /** * Change cluster instance's status */ setStatus(status) { debug("status: %s -> %s", this.status || "[empty]", status); this.status = status; process.nextTick(() => { this.emit(status); }); } /** * Called when closed to check whether a reconnection should be made */ handleCloseEvent(reason) { var _a; if (reason) { debug("closed because %s", reason); } let retryDelay; if (!this.manuallyClosing && typeof this.options.clusterRetryStrategy === "function") { retryDelay = this.options.clusterRetryStrategy.call(this, ++this.retryAttempts, reason); } if (typeof retryDelay === "number") { this.setStatus("reconnecting"); this.reconnectTimeout = setTimeout(() => { this.reconnectTimeout = null; debug("Cluster is disconnected. Retrying after %dms", retryDelay); this.connect().catch(function(err) { debug("Got error %s when reconnecting. Ignoring...", err); }); }, retryDelay); } else { if (this.options.shardedSubscribers) { (_a = this.subscriberGroupEmitter) === null || _a === void 0 ? void 0 : _a.removeAllListeners(); } this.setStatus("end"); this.flushQueue(new Error("None of startup nodes is available")); } } /** * Flush offline queue with error. */ flushQueue(error) { let item; while (item = this.offlineQueue.shift()) { item.command.reject(error); } } executeOfflineCommands() { if (this.offlineQueue.length) { debug("send %d commands in offline queue", this.offlineQueue.length); const offlineQueue = this.offlineQueue; this.resetOfflineQueue(); let item; while (item = offlineQueue.shift()) { this.sendCommand(item.command, item.stream, item.node); } } } natMapper(nodeKey) { const key = typeof nodeKey === "string" ? nodeKey : `${nodeKey.host}:${nodeKey.port}`; let mapped = null; if (this.options.natMap && typeof this.options.natMap === "function") { mapped = this.options.natMap(key); } else if (this.options.natMap && typeof this.options.natMap === "object") { mapped = this.options.natMap[key]; } if (mapped) { debug("NAT mapping %s -> %O", key, mapped); return Object.assign({}, mapped); } return typeof nodeKey === "string" ? (0, util_1.nodeKeyToRedisOptions)(nodeKey) : nodeKey; } getInfoFromNode(redis, callback) { if (!redis) { return callback(new Error("Node is disconnected")); } const duplicatedConnection = redis.duplicate({ enableOfflineQueue: true, enableReadyCheck: false, retryStrategy: null, connectionName: (0, util_1.getConnectionName)("refresher", this.options.redisOptions && this.options.redisOptions.connectionName) }); duplicatedConnection.on("error", utils_1.noop); duplicatedConnection.cluster("SLOTS", (0, utils_1.timeout)((err, result) => { duplicatedConnection.disconnect(); if (err) { debug("error encountered running CLUSTER.SLOTS: %s", err); return callback(err); } if (this.status === "disconnecting" || this.status === "close" || this.status === "end") { debug("ignore CLUSTER.SLOTS results (count: %d) since cluster status is %s", result.length, this.status); callback(); return; } const nodes = []; debug("cluster slots result count: %d", result.length); for (let i = 0; i < result.length; ++i) { const items = result[i]; const slotRangeStart = items[0]; const slotRangeEnd = items[1]; const keys = []; for (let j2 = 2; j2 < items.length; j2++) { if (!items[j2][0]) { continue; } const node = this.natMapper({ host: items[j2][0], port: items[j2][1] }); node.readOnly = j2 !== 2; nodes.push(node); keys.push(node.host + ":" + node.port); } debug("cluster slots result [%d]: slots %d~%d served by %s", i, slotRangeStart, slotRangeEnd, keys); for (let slot = slotRangeStart; slot <= slotRangeEnd; slot++) { this.slots[slot] = keys; } } this._groupsIds = /* @__PURE__ */ Object.create(null); let j = 0; for (let i = 0; i < 16384; i++) { const target = (this.slots[i] || []).join(";"); if (!target.length) { this._groupsBySlot[i] = void 0; continue; } if (!this._groupsIds[target]) { this._groupsIds[target] = ++j; } this._groupsBySlot[i] = this._groupsIds[target]; } this.connectionPool.reset(nodes); if (this.options.shardedSubscribers) { this.shardedSubscribers.reset(this.slots, this.connectionPool.getNodes("all")).catch((err2) => { debug("Error while starting subscribers: %s", err2); }); } callback(); }, this.options.slotsRefreshTimeout)); } invokeReadyDelayedCallbacks(err) { for (const c of this._readyDelayedCallbacks) { process.nextTick(c, err); } this._readyDelayedCallbacks = []; } /** * Check whether Cluster is able to process commands */ readyCheck(callback) { this.cluster("INFO", (err, res) => { if (err) { return callback(err); } if (typeof res !== "string") { return callback(); } let state; const lines = res.split("\r\n"); for (let i = 0; i < lines.length; ++i) { const parts = lines[i].split(":"); if (parts[0] === "cluster_state") { state = parts[1]; break; } } if (state === "fail") { debug("cluster state not ok (%s)", state); callback(null, state); } else { callback(); } }); } resolveSrv(hostname) { return new Promise((resolve, reject) => { this.options.resolveSrv(hostname, (err, records) => { if (err) { return reject(err); } const self2 = this, groupedRecords = (0, util_1.groupSrvRecords)(records), sortedKeys = Object.keys(groupedRecords).sort((a, b) => parseInt(a) - parseInt(b)); function tryFirstOne(err2) { if (!sortedKeys.length) { return reject(err2); } const key = sortedKeys[0], group = groupedRecords[key], record = (0, util_1.weightSrvRecords)(group); if (!group.records.length) { sortedKeys.shift(); } self2.dnsLookup(record.name).then((host) => resolve({ host, port: record.port }), tryFirstOne); } __name(tryFirstOne, "tryFirstOne"); tryFirstOne(); }); }); } dnsLookup(hostname) { return new Promise((resolve, reject) => { this.options.dnsLookup(hostname, (err, address) => { if (err) { debug("failed to resolve hostname %s to IP: %s", hostname, err.message); reject(err); } else { debug("resolved hostname %s to IP %s", hostname, address); resolve(address); } }); }); } /** * Normalize startup nodes, and resolving hostnames to IPs. * * This process happens every time when #connect() is called since * #startupNodes and DNS records may chanage. */ async resolveStartupNodeHostnames() { if (!Array.isArray(this.startupNodes) || this.startupNodes.length === 0) { throw new Error("`startupNodes` should contain at least one node."); } const startupNodes = (0, util_1.normalizeNodeOptions)(this.startupNodes); const hostnames = (0, util_1.getUniqueHostnamesFromOptions)(startupNodes); if (hostnames.length === 0) { return startupNodes; } const configs = await Promise.all(hostnames.map((this.options.useSRVRecords ? this.resolveSrv : this.dnsLookup).bind(this))); const hostnameToConfig = (0, utils_1.zipMap)(hostnames, configs); return startupNodes.map((node) => { const config = hostnameToConfig.get(node.host); if (!config) { return node; } if (this.options.useSRVRecords) { return Object.assign({}, node, config); } return Object.assign({}, node, { host: config }); }); } createScanStream(command, { key, options = {} }) { return new ScanStream_1.default({ objectMode: true, key, redis: this, command, ...options }); } createShardedSubscriberGroup() { this.subscriberGroupEmitter = new events_1.EventEmitter(); this.shardedSubscribers = new ClusterSubscriberGroup_1.default(this.subscriberGroupEmitter, this.options); const refreshSlotsCacheCallback = /* @__PURE__ */ __name((err) => { if (err instanceof ClusterAllFailedError_1.default) { this.disconnect(true); } }, "refreshSlotsCacheCallback"); this.subscriberGroupEmitter.on("-node", (redis, nodeKey) => { this.emit("-node", redis, nodeKey); this.refreshSlotsCache(refreshSlotsCacheCallback); }); this.subscriberGroupEmitter.on("subscriberConnectFailed", ({ delay, error }) => { this.emit("error", error); setTimeout(() => { this.refreshSlotsCache(refreshSlotsCacheCallback); }, delay); }); this.subscriberGroupEmitter.on("moved", () => { this.refreshSlotsCache(refreshSlotsCacheCallback); }); this.subscriberGroupEmitter.on("-subscriber", () => { this.emit("-subscriber"); }); this.subscriberGroupEmitter.on("+subscriber", () => { this.emit("+subscriber"); }); this.subscriberGroupEmitter.on("nodeError", (error, nodeKey) => { this.emit("nodeError", error, nodeKey); }); this.subscriberGroupEmitter.on("subscribersReady", () => { this.emit("subscribersReady"); }); for (const event of ["smessage", "smessageBuffer"]) { this.subscriberGroupEmitter.on(event, (arg1, arg2, arg3) => { this.emit(event, arg1, arg2, arg3); }); } } }; (0, applyMixin_1.default)(Cluster, events_1.EventEmitter); (0, transaction_1.addTransactionSupport)(Cluster.prototype); exports2.default = Cluster; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/AbstractConnector.js var require_AbstractConnector = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/AbstractConnector.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var utils_1 = require_utils15(); var debug = (0, utils_1.Debug)("AbstractConnector"); var AbstractConnector = class { static { __name(this, "AbstractConnector"); } constructor(disconnectTimeout) { this.connecting = false; this.disconnectTimeout = disconnectTimeout; } check(info) { return true; } disconnect() { this.connecting = false; if (this.stream) { const stream = this.stream; const timeout = setTimeout(() => { debug("stream %s:%s still open, destroying it", stream.remoteAddress, stream.remotePort); stream.destroy(); }, this.disconnectTimeout); stream.on("close", () => clearTimeout(timeout)); stream.end(); } } }; exports2.default = AbstractConnector; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/StandaloneConnector.js var require_StandaloneConnector = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/StandaloneConnector.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var net_1 = require("net"); var tls_1 = require("tls"); var utils_1 = require_utils15(); var AbstractConnector_1 = require_AbstractConnector(); var StandaloneConnector = class extends AbstractConnector_1.default { static { __name(this, "StandaloneConnector"); } constructor(options) { super(options.disconnectTimeout); this.options = options; } connect(_2) { const { options } = this; this.connecting = true; let connectionOptions; if ("path" in options && options.path) { connectionOptions = { path: options.path }; } else { connectionOptions = {}; if ("port" in options && options.port != null) { connectionOptions.port = options.port; } if ("host" in options && options.host != null) { connectionOptions.host = options.host; } if ("family" in options && options.family != null) { connectionOptions.family = options.family; } } if (options.tls) { Object.assign(connectionOptions, options.tls); } return new Promise((resolve, reject) => { process.nextTick(() => { if (!this.connecting) { reject(new Error(utils_1.CONNECTION_CLOSED_ERROR_MSG)); return; } try { if (options.tls) { this.stream = (0, tls_1.connect)(connectionOptions); } else { this.stream = (0, net_1.createConnection)(connectionOptions); } } catch (err) { reject(err); return; } this.stream.once("error", (err) => { this.firstError = err; }); resolve(this.stream); }); }); } }; exports2.default = StandaloneConnector; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/SentinelConnector/SentinelIterator.js var require_SentinelIterator = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/SentinelConnector/SentinelIterator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); function isSentinelEql(a, b) { return (a.host || "127.0.0.1") === (b.host || "127.0.0.1") && (a.port || 26379) === (b.port || 26379); } __name(isSentinelEql, "isSentinelEql"); var SentinelIterator = class { static { __name(this, "SentinelIterator"); } constructor(sentinels) { this.cursor = 0; this.sentinels = sentinels.slice(0); } next() { const done = this.cursor >= this.sentinels.length; return { done, value: done ? void 0 : this.sentinels[this.cursor++] }; } reset(moveCurrentEndpointToFirst) { if (moveCurrentEndpointToFirst && this.sentinels.length > 1 && this.cursor !== 1) { this.sentinels.unshift(...this.sentinels.splice(this.cursor - 1)); } this.cursor = 0; } add(sentinel) { for (let i = 0; i < this.sentinels.length; i++) { if (isSentinelEql(sentinel, this.sentinels[i])) { return false; } } this.sentinels.push(sentinel); return true; } toString() { return `${JSON.stringify(this.sentinels)} @${this.cursor}`; } }; exports2.default = SentinelIterator; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/SentinelConnector/FailoverDetector.js var require_FailoverDetector = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/SentinelConnector/FailoverDetector.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.FailoverDetector = void 0; var utils_1 = require_utils15(); var debug = (0, utils_1.Debug)("FailoverDetector"); var CHANNEL_NAME = "+switch-master"; var FailoverDetector = class { static { __name(this, "FailoverDetector"); } // sentinels can't be used for regular commands after this constructor(connector, sentinels) { this.isDisconnected = false; this.connector = connector; this.sentinels = sentinels; } cleanup() { this.isDisconnected = true; for (const sentinel of this.sentinels) { sentinel.client.disconnect(); } } async subscribe() { debug("Starting FailoverDetector"); const promises = []; for (const sentinel of this.sentinels) { const promise = sentinel.client.subscribe(CHANNEL_NAME).catch((err) => { debug("Failed to subscribe to failover messages on sentinel %s:%s (%s)", sentinel.address.host || "127.0.0.1", sentinel.address.port || 26739, err.message); }); promises.push(promise); sentinel.client.on("message", (channel) => { if (!this.isDisconnected && channel === CHANNEL_NAME) { this.disconnect(); } }); } await Promise.all(promises); } disconnect() { this.isDisconnected = true; debug("Failover detected, disconnecting"); this.connector.disconnect(); } }; exports2.FailoverDetector = FailoverDetector; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/SentinelConnector/index.js var require_SentinelConnector = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/SentinelConnector/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SentinelIterator = void 0; var net_1 = require("net"); var utils_1 = require_utils15(); var tls_1 = require("tls"); var SentinelIterator_1 = require_SentinelIterator(); exports2.SentinelIterator = SentinelIterator_1.default; var AbstractConnector_1 = require_AbstractConnector(); var Redis_1 = require_Redis(); var FailoverDetector_1 = require_FailoverDetector(); var debug = (0, utils_1.Debug)("SentinelConnector"); var SentinelConnector = class extends AbstractConnector_1.default { static { __name(this, "SentinelConnector"); } constructor(options) { super(options.disconnectTimeout); this.options = options; this.emitter = null; this.failoverDetector = null; if (!this.options.sentinels.length) { throw new Error("Requires at least one sentinel to connect to."); } if (!this.options.name) { throw new Error("Requires the name of master."); } this.sentinelIterator = new SentinelIterator_1.default(this.options.sentinels); } check(info) { const roleMatches = !info.role || this.options.role === info.role; if (!roleMatches) { debug("role invalid, expected %s, but got %s", this.options.role, info.role); this.sentinelIterator.next(); this.sentinelIterator.next(); this.sentinelIterator.reset(true); } return roleMatches; } disconnect() { super.disconnect(); if (this.failoverDetector) { this.failoverDetector.cleanup(); } } connect(eventEmitter) { this.connecting = true; this.retryAttempts = 0; let lastError; const connectToNext = /* @__PURE__ */ __name(async () => { const endpoint = this.sentinelIterator.next(); if (endpoint.done) { this.sentinelIterator.reset(false); const retryDelay = typeof this.options.sentinelRetryStrategy === "function" ? this.options.sentinelRetryStrategy(++this.retryAttempts) : null; let errorMsg = typeof retryDelay !== "number" ? "All sentinels are unreachable and retry is disabled." : `All sentinels are unreachable. Retrying from scratch after ${retryDelay}ms.`; if (lastError) { errorMsg += ` Last error: ${lastError.message}`; } debug(errorMsg); const error = new Error(errorMsg); if (typeof retryDelay === "number") { eventEmitter("error", error); await new Promise((resolve) => setTimeout(resolve, retryDelay)); return connectToNext(); } else { throw error; } } let resolved = null; let err = null; try { resolved = await this.resolve(endpoint.value); } catch (error) { err = error; } if (!this.connecting) { throw new Error(utils_1.CONNECTION_CLOSED_ERROR_MSG); } const endpointAddress = endpoint.value.host + ":" + endpoint.value.port; if (resolved) { debug("resolved: %s:%s from sentinel %s", resolved.host, resolved.port, endpointAddress); if (this.options.enableTLSForSentinelMode && this.options.tls) { Object.assign(resolved, this.options.tls); this.stream = (0, tls_1.connect)(resolved); this.stream.once("secureConnect", this.initFailoverDetector.bind(this)); } else { this.stream = (0, net_1.createConnection)(resolved); this.stream.once("connect", this.initFailoverDetector.bind(this)); } this.stream.once("error", (err2) => { this.firstError = err2; }); return this.stream; } else { const errorMsg = err ? "failed to connect to sentinel " + endpointAddress + " because " + err.message : "connected to sentinel " + endpointAddress + " successfully, but got an invalid reply: " + resolved; debug(errorMsg); eventEmitter("sentinelError", new Error(errorMsg)); if (err) { lastError = err; } return connectToNext(); } }, "connectToNext"); return connectToNext(); } async updateSentinels(client) { if (!this.options.updateSentinels) { return; } const result = await client.sentinel("sentinels", this.options.name); if (!Array.isArray(result)) { return; } result.map(utils_1.packObject).forEach((sentinel) => { const flags = sentinel.flags ? sentinel.flags.split(",") : []; if (flags.indexOf("disconnected") === -1 && sentinel.ip && sentinel.port) { const endpoint = this.sentinelNatResolve(addressResponseToAddress(sentinel)); if (this.sentinelIterator.add(endpoint)) { debug("adding sentinel %s:%s", endpoint.host, endpoint.port); } } }); debug("Updated internal sentinels: %s", this.sentinelIterator); } async resolveMaster(client) { const result = await client.sentinel("get-master-addr-by-name", this.options.name); await this.updateSentinels(client); return this.sentinelNatResolve(Array.isArray(result) ? { host: result[0], port: Number(result[1]) } : null); } async resolveSlave(client) { const result = await client.sentinel("slaves", this.options.name); if (!Array.isArray(result)) { return null; } const availableSlaves = result.map(utils_1.packObject).filter((slave) => slave.flags && !slave.flags.match(/(disconnected|s_down|o_down)/)); return this.sentinelNatResolve(selectPreferredSentinel(availableSlaves, this.options.preferredSlaves)); } sentinelNatResolve(item) { if (!item || !this.options.natMap) return item; const key = `${item.host}:${item.port}`; let result = item; if (typeof this.options.natMap === "function") { result = this.options.natMap(key) || item; } else if (typeof this.options.natMap === "object") { result = this.options.natMap[key] || item; } return result; } connectToSentinel(endpoint, options) { const redis = new Redis_1.default({ port: endpoint.port || 26379, host: endpoint.host, username: this.options.sentinelUsername || null, password: this.options.sentinelPassword || null, family: endpoint.family || // @ts-expect-error ("path" in this.options && this.options.path ? void 0 : ( // @ts-expect-error this.options.family )), tls: this.options.sentinelTLS, retryStrategy: null, enableReadyCheck: false, connectTimeout: this.options.connectTimeout, commandTimeout: this.options.sentinelCommandTimeout, ...options }); return redis; } async resolve(endpoint) { const client = this.connectToSentinel(endpoint); client.on("error", noop); try { if (this.options.role === "slave") { return await this.resolveSlave(client); } else { return await this.resolveMaster(client); } } finally { client.disconnect(); } } async initFailoverDetector() { var _a; if (!this.options.failoverDetector) { return; } this.sentinelIterator.reset(true); const sentinels = []; while (sentinels.length < this.options.sentinelMaxConnections) { const { done, value } = this.sentinelIterator.next(); if (done) { break; } const client = this.connectToSentinel(value, { lazyConnect: true, retryStrategy: this.options.sentinelReconnectStrategy }); client.on("reconnecting", () => { var _a2; (_a2 = this.emitter) === null || _a2 === void 0 ? void 0 : _a2.emit("sentinelReconnecting"); }); sentinels.push({ address: value, client }); } this.sentinelIterator.reset(false); if (this.failoverDetector) { this.failoverDetector.cleanup(); } this.failoverDetector = new FailoverDetector_1.FailoverDetector(this, sentinels); await this.failoverDetector.subscribe(); (_a = this.emitter) === null || _a === void 0 ? void 0 : _a.emit("failoverSubscribed"); } }; exports2.default = SentinelConnector; function selectPreferredSentinel(availableSlaves, preferredSlaves) { if (availableSlaves.length === 0) { return null; } let selectedSlave; if (typeof preferredSlaves === "function") { selectedSlave = preferredSlaves(availableSlaves); } else if (preferredSlaves !== null && typeof preferredSlaves === "object") { const preferredSlavesArray = Array.isArray(preferredSlaves) ? preferredSlaves : [preferredSlaves]; preferredSlavesArray.sort((a, b) => { if (!a.prio) { a.prio = 1; } if (!b.prio) { b.prio = 1; } if (a.prio < b.prio) { return -1; } if (a.prio > b.prio) { return 1; } return 0; }); for (let p = 0; p < preferredSlavesArray.length; p++) { for (let a = 0; a < availableSlaves.length; a++) { const slave = availableSlaves[a]; if (slave.ip === preferredSlavesArray[p].ip) { if (slave.port === preferredSlavesArray[p].port) { selectedSlave = slave; break; } } } if (selectedSlave) { break; } } } if (!selectedSlave) { selectedSlave = (0, utils_1.sample)(availableSlaves); } return addressResponseToAddress(selectedSlave); } __name(selectPreferredSentinel, "selectPreferredSentinel"); function addressResponseToAddress(input) { return { host: input.ip, port: Number(input.port) }; } __name(addressResponseToAddress, "addressResponseToAddress"); function noop() { } __name(noop, "noop"); } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/index.js var require_connectors = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/connectors/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SentinelConnector = exports2.StandaloneConnector = void 0; var StandaloneConnector_1 = require_StandaloneConnector(); exports2.StandaloneConnector = StandaloneConnector_1.default; var SentinelConnector_1 = require_SentinelConnector(); exports2.SentinelConnector = SentinelConnector_1.default; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/errors/MaxRetriesPerRequestError.js var require_MaxRetriesPerRequestError = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/errors/MaxRetriesPerRequestError.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var redis_errors_1 = require_redis_errors(); var MaxRetriesPerRequestError = class extends redis_errors_1.AbortError { static { __name(this, "MaxRetriesPerRequestError"); } constructor(maxRetriesPerRequest) { const message = `Reached the max retries per request limit (which is ${maxRetriesPerRequest}). Refer to "maxRetriesPerRequest" option for details.`; super(message); Error.captureStackTrace(this, this.constructor); } get name() { return this.constructor.name; } }; exports2.default = MaxRetriesPerRequestError; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/errors/index.js var require_errors4 = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/errors/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MaxRetriesPerRequestError = void 0; var MaxRetriesPerRequestError_1 = require_MaxRetriesPerRequestError(); exports2.MaxRetriesPerRequestError = MaxRetriesPerRequestError_1.default; } }); // ../../node_modules/.pnpm/redis-parser@3.0.0/node_modules/redis-parser/lib/parser.js var require_parser = __commonJS({ "../../node_modules/.pnpm/redis-parser@3.0.0/node_modules/redis-parser/lib/parser.js"(exports2, module2) { "use strict"; var Buffer2 = require("buffer").Buffer; var StringDecoder = require("string_decoder").StringDecoder; var decoder = new StringDecoder(); var errors = require_redis_errors(); var ReplyError = errors.ReplyError; var ParserError = errors.ParserError; var bufferPool = Buffer2.allocUnsafe(32 * 1024); var bufferOffset = 0; var interval = null; var counter = 0; var notDecreased = 0; function parseSimpleNumbers(parser) { const length = parser.buffer.length - 1; var offset = parser.offset; var number = 0; var sign = 1; if (parser.buffer[offset] === 45) { sign = -1; offset++; } while (offset < length) { const c1 = parser.buffer[offset++]; if (c1 === 13) { parser.offset = offset + 1; return sign * number; } number = number * 10 + (c1 - 48); } } __name(parseSimpleNumbers, "parseSimpleNumbers"); function parseStringNumbers(parser) { const length = parser.buffer.length - 1; var offset = parser.offset; var number = 0; var res = ""; if (parser.buffer[offset] === 45) { res += "-"; offset++; } while (offset < length) { var c1 = parser.buffer[offset++]; if (c1 === 13) { parser.offset = offset + 1; if (number !== 0) { res += number; } return res; } else if (number > 429496728) { res += number * 10 + (c1 - 48); number = 0; } else if (c1 === 48 && number === 0) { res += 0; } else { number = number * 10 + (c1 - 48); } } } __name(parseStringNumbers, "parseStringNumbers"); function parseSimpleString(parser) { const start = parser.offset; const buffer = parser.buffer; const length = buffer.length - 1; var offset = start; while (offset < length) { if (buffer[offset++] === 13) { parser.offset = offset + 1; if (parser.optionReturnBuffers === true) { return parser.buffer.slice(start, offset - 1); } return parser.buffer.toString("utf8", start, offset - 1); } } } __name(parseSimpleString, "parseSimpleString"); function parseLength(parser) { const length = parser.buffer.length - 1; var offset = parser.offset; var number = 0; while (offset < length) { const c1 = parser.buffer[offset++]; if (c1 === 13) { parser.offset = offset + 1; return number; } number = number * 10 + (c1 - 48); } } __name(parseLength, "parseLength"); function parseInteger(parser) { if (parser.optionStringNumbers === true) { return parseStringNumbers(parser); } return parseSimpleNumbers(parser); } __name(parseInteger, "parseInteger"); function parseBulkString(parser) { const length = parseLength(parser); if (length === void 0) { return; } if (length < 0) { return null; } const offset = parser.offset + length; if (offset + 2 > parser.buffer.length) { parser.bigStrSize = offset + 2; parser.totalChunkSize = parser.buffer.length; parser.bufferCache.push(parser.buffer); return; } const start = parser.offset; parser.offset = offset + 2; if (parser.optionReturnBuffers === true) { return parser.buffer.slice(start, offset); } return parser.buffer.toString("utf8", start, offset); } __name(parseBulkString, "parseBulkString"); function parseError(parser) { var string = parseSimpleString(parser); if (string !== void 0) { if (parser.optionReturnBuffers === true) { string = string.toString(); } return new ReplyError(string); } } __name(parseError, "parseError"); function handleError(parser, type) { const err = new ParserError( "Protocol error, got " + JSON.stringify(String.fromCharCode(type)) + " as reply type byte", JSON.stringify(parser.buffer), parser.offset ); parser.buffer = null; parser.returnFatalError(err); } __name(handleError, "handleError"); function parseArray(parser) { const length = parseLength(parser); if (length === void 0) { return; } if (length < 0) { return null; } const responses = new Array(length); return parseArrayElements(parser, responses, 0); } __name(parseArray, "parseArray"); function pushArrayCache(parser, array, pos) { parser.arrayCache.push(array); parser.arrayPos.push(pos); } __name(pushArrayCache, "pushArrayCache"); function parseArrayChunks(parser) { const tmp = parser.arrayCache.pop(); var pos = parser.arrayPos.pop(); if (parser.arrayCache.length) { const res = parseArrayChunks(parser); if (res === void 0) { pushArrayCache(parser, tmp, pos); return; } tmp[pos++] = res; } return parseArrayElements(parser, tmp, pos); } __name(parseArrayChunks, "parseArrayChunks"); function parseArrayElements(parser, responses, i) { const bufferLength = parser.buffer.length; while (i < responses.length) { const offset = parser.offset; if (parser.offset >= bufferLength) { pushArrayCache(parser, responses, i); return; } const response = parseType(parser, parser.buffer[parser.offset++]); if (response === void 0) { if (!(parser.arrayCache.length || parser.bufferCache.length)) { parser.offset = offset; } pushArrayCache(parser, responses, i); return; } responses[i] = response; i++; } return responses; } __name(parseArrayElements, "parseArrayElements"); function parseType(parser, type) { switch (type) { case 36: return parseBulkString(parser); case 43: return parseSimpleString(parser); case 42: return parseArray(parser); case 58: return parseInteger(parser); case 45: return parseError(parser); default: return handleError(parser, type); } } __name(parseType, "parseType"); function decreaseBufferPool() { if (bufferPool.length > 50 * 1024) { if (counter === 1 || notDecreased > counter * 2) { const minSliceLen = Math.floor(bufferPool.length / 10); const sliceLength = minSliceLen < bufferOffset ? bufferOffset : minSliceLen; bufferOffset = 0; bufferPool = bufferPool.slice(sliceLength, bufferPool.length); } else { notDecreased++; counter--; } } else { clearInterval(interval); counter = 0; notDecreased = 0; interval = null; } } __name(decreaseBufferPool, "decreaseBufferPool"); function resizeBuffer(length) { if (bufferPool.length < length + bufferOffset) { const multiplier = length > 1024 * 1024 * 75 ? 2 : 3; if (bufferOffset > 1024 * 1024 * 111) { bufferOffset = 1024 * 1024 * 50; } bufferPool = Buffer2.allocUnsafe(length * multiplier + bufferOffset); bufferOffset = 0; counter++; if (interval === null) { interval = setInterval(decreaseBufferPool, 50); } } } __name(resizeBuffer, "resizeBuffer"); function concatBulkString(parser) { const list = parser.bufferCache; const oldOffset = parser.offset; var chunks = list.length; var offset = parser.bigStrSize - parser.totalChunkSize; parser.offset = offset; if (offset <= 2) { if (chunks === 2) { return list[0].toString("utf8", oldOffset, list[0].length + offset - 2); } chunks--; offset = list[list.length - 2].length + offset; } var res = decoder.write(list[0].slice(oldOffset)); for (var i = 1; i < chunks - 1; i++) { res += decoder.write(list[i]); } res += decoder.end(list[i].slice(0, offset - 2)); return res; } __name(concatBulkString, "concatBulkString"); function concatBulkBuffer(parser) { const list = parser.bufferCache; const oldOffset = parser.offset; const length = parser.bigStrSize - oldOffset - 2; var chunks = list.length; var offset = parser.bigStrSize - parser.totalChunkSize; parser.offset = offset; if (offset <= 2) { if (chunks === 2) { return list[0].slice(oldOffset, list[0].length + offset - 2); } chunks--; offset = list[list.length - 2].length + offset; } resizeBuffer(length); const start = bufferOffset; list[0].copy(bufferPool, start, oldOffset, list[0].length); bufferOffset += list[0].length - oldOffset; for (var i = 1; i < chunks - 1; i++) { list[i].copy(bufferPool, bufferOffset); bufferOffset += list[i].length; } list[i].copy(bufferPool, bufferOffset, 0, offset - 2); bufferOffset += offset - 2; return bufferPool.slice(start, bufferOffset); } __name(concatBulkBuffer, "concatBulkBuffer"); var JavascriptRedisParser = class { static { __name(this, "JavascriptRedisParser"); } /** * Javascript Redis Parser constructor * @param {{returnError: Function, returnReply: Function, returnFatalError?: Function, returnBuffers: boolean, stringNumbers: boolean }} options * @constructor */ constructor(options) { if (!options) { throw new TypeError("Options are mandatory."); } if (typeof options.returnError !== "function" || typeof options.returnReply !== "function") { throw new TypeError("The returnReply and returnError options have to be functions."); } this.setReturnBuffers(!!options.returnBuffers); this.setStringNumbers(!!options.stringNumbers); this.returnError = options.returnError; this.returnFatalError = options.returnFatalError || options.returnError; this.returnReply = options.returnReply; this.reset(); } /** * Reset the parser values to the initial state * * @returns {undefined} */ reset() { this.offset = 0; this.buffer = null; this.bigStrSize = 0; this.totalChunkSize = 0; this.bufferCache = []; this.arrayCache = []; this.arrayPos = []; } /** * Set the returnBuffers option * * @param {boolean} returnBuffers * @returns {undefined} */ setReturnBuffers(returnBuffers) { if (typeof returnBuffers !== "boolean") { throw new TypeError("The returnBuffers argument has to be a boolean"); } this.optionReturnBuffers = returnBuffers; } /** * Set the stringNumbers option * * @param {boolean} stringNumbers * @returns {undefined} */ setStringNumbers(stringNumbers) { if (typeof stringNumbers !== "boolean") { throw new TypeError("The stringNumbers argument has to be a boolean"); } this.optionStringNumbers = stringNumbers; } /** * Parse the redis buffer * @param {Buffer} buffer * @returns {undefined} */ execute(buffer) { if (this.buffer === null) { this.buffer = buffer; this.offset = 0; } else if (this.bigStrSize === 0) { const oldLength = this.buffer.length; const remainingLength = oldLength - this.offset; const newBuffer = Buffer2.allocUnsafe(remainingLength + buffer.length); this.buffer.copy(newBuffer, 0, this.offset, oldLength); buffer.copy(newBuffer, remainingLength, 0, buffer.length); this.buffer = newBuffer; this.offset = 0; if (this.arrayCache.length) { const arr = parseArrayChunks(this); if (arr === void 0) { return; } this.returnReply(arr); } } else if (this.totalChunkSize + buffer.length >= this.bigStrSize) { this.bufferCache.push(buffer); var tmp = this.optionReturnBuffers ? concatBulkBuffer(this) : concatBulkString(this); this.bigStrSize = 0; this.bufferCache = []; this.buffer = buffer; if (this.arrayCache.length) { this.arrayCache[0][this.arrayPos[0]++] = tmp; tmp = parseArrayChunks(this); if (tmp === void 0) { return; } } this.returnReply(tmp); } else { this.bufferCache.push(buffer); this.totalChunkSize += buffer.length; return; } while (this.offset < this.buffer.length) { const offset = this.offset; const type = this.buffer[this.offset++]; const response = parseType(this, type); if (response === void 0) { if (!(this.arrayCache.length || this.bufferCache.length)) { this.offset = offset; } return; } if (type === 45) { this.returnError(response); } else { this.returnReply(response); } } this.buffer = null; } }; module2.exports = JavascriptRedisParser; } }); // ../../node_modules/.pnpm/redis-parser@3.0.0/node_modules/redis-parser/index.js var require_redis_parser = __commonJS({ "../../node_modules/.pnpm/redis-parser@3.0.0/node_modules/redis-parser/index.js"(exports2, module2) { "use strict"; module2.exports = require_parser(); } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/SubscriptionSet.js var require_SubscriptionSet = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/SubscriptionSet.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var SubscriptionSet = class { static { __name(this, "SubscriptionSet"); } constructor() { this.set = { subscribe: {}, psubscribe: {}, ssubscribe: {} }; } add(set, channel) { this.set[mapSet(set)][channel] = true; } del(set, channel) { delete this.set[mapSet(set)][channel]; } channels(set) { return Object.keys(this.set[mapSet(set)]); } isEmpty() { return this.channels("subscribe").length === 0 && this.channels("psubscribe").length === 0 && this.channels("ssubscribe").length === 0; } }; exports2.default = SubscriptionSet; function mapSet(set) { if (set === "unsubscribe") { return "subscribe"; } if (set === "punsubscribe") { return "psubscribe"; } if (set === "sunsubscribe") { return "ssubscribe"; } return set; } __name(mapSet, "mapSet"); } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/DataHandler.js var require_DataHandler = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/DataHandler.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var Command_1 = require_Command(); var utils_1 = require_utils15(); var RedisParser = require_redis_parser(); var SubscriptionSet_1 = require_SubscriptionSet(); var debug = (0, utils_1.Debug)("dataHandler"); var DataHandler = class { static { __name(this, "DataHandler"); } constructor(redis, parserOptions) { this.redis = redis; const parser = new RedisParser({ stringNumbers: parserOptions.stringNumbers, returnBuffers: true, returnError: /* @__PURE__ */ __name((err) => { this.returnError(err); }, "returnError"), returnFatalError: /* @__PURE__ */ __name((err) => { this.returnFatalError(err); }, "returnFatalError"), returnReply: /* @__PURE__ */ __name((reply) => { this.returnReply(reply); }, "returnReply") }); redis.stream.prependListener("data", (data) => { parser.execute(data); }); redis.stream.resume(); } returnFatalError(err) { err.message += ". Please report this."; this.redis.recoverFromFatalError(err, err, { offlineQueue: false }); } returnError(err) { const item = this.shiftCommand(err); if (!item) { return; } err.command = { name: item.command.name, args: item.command.args }; if (item.command.name == "ssubscribe" && err.message.includes("MOVED")) { this.redis.emit("moved"); return; } this.redis.handleReconnection(err, item); } returnReply(reply) { if (this.handleMonitorReply(reply)) { return; } if (this.handleSubscriberReply(reply)) { return; } const item = this.shiftCommand(reply); if (!item) { return; } if (Command_1.default.checkFlag("ENTER_SUBSCRIBER_MODE", item.command.name)) { this.redis.condition.subscriber = new SubscriptionSet_1.default(); this.redis.condition.subscriber.add(item.command.name, reply[1].toString()); if (!fillSubCommand(item.command, reply[2])) { this.redis.commandQueue.unshift(item); } } else if (Command_1.default.checkFlag("EXIT_SUBSCRIBER_MODE", item.command.name)) { if (!fillUnsubCommand(item.command, reply[2])) { this.redis.commandQueue.unshift(item); } } else { item.command.resolve(reply); } } handleSubscriberReply(reply) { if (!this.redis.condition.subscriber) { return false; } const replyType = Array.isArray(reply) ? reply[0].toString() : null; debug('receive reply "%s" in subscriber mode', replyType); switch (replyType) { case "message": if (this.redis.listeners("message").length > 0) { this.redis.emit("message", reply[1].toString(), reply[2] ? reply[2].toString() : ""); } this.redis.emit("messageBuffer", reply[1], reply[2]); break; case "pmessage": { const pattern = reply[1].toString(); if (this.redis.listeners("pmessage").length > 0) { this.redis.emit("pmessage", pattern, reply[2].toString(), reply[3].toString()); } this.redis.emit("pmessageBuffer", pattern, reply[2], reply[3]); break; } case "smessage": { if (this.redis.listeners("smessage").length > 0) { this.redis.emit("smessage", reply[1].toString(), reply[2] ? reply[2].toString() : ""); } this.redis.emit("smessageBuffer", reply[1], reply[2]); break; } case "ssubscribe": case "subscribe": case "psubscribe": { const channel = reply[1].toString(); this.redis.condition.subscriber.add(replyType, channel); const item = this.shiftCommand(reply); if (!item) { return; } if (!fillSubCommand(item.command, reply[2])) { this.redis.commandQueue.unshift(item); } break; } case "sunsubscribe": case "unsubscribe": case "punsubscribe": { const channel = reply[1] ? reply[1].toString() : null; if (channel) { this.redis.condition.subscriber.del(replyType, channel); } const count = reply[2]; if (Number(count) === 0) { this.redis.condition.subscriber = false; } const item = this.shiftCommand(reply); if (!item) { return; } if (!fillUnsubCommand(item.command, count)) { this.redis.commandQueue.unshift(item); } break; } default: { const item = this.shiftCommand(reply); if (!item) { return; } item.command.resolve(reply); } } return true; } handleMonitorReply(reply) { if (this.redis.status !== "monitoring") { return false; } const replyStr = reply.toString(); if (replyStr === "OK") { return false; } const len = replyStr.indexOf(" "); const timestamp = replyStr.slice(0, len); const argIndex = replyStr.indexOf('"'); const args = replyStr.slice(argIndex + 1, -1).split('" "').map((elem) => elem.replace(/\\"/g, '"')); const dbAndSource = replyStr.slice(len + 2, argIndex - 2).split(" "); this.redis.emit("monitor", timestamp, args, dbAndSource[1], dbAndSource[0]); return true; } shiftCommand(reply) { const item = this.redis.commandQueue.shift(); if (!item) { const message = "Command queue state error. If you can reproduce this, please report it."; const error = new Error(message + (reply instanceof Error ? ` Last error: ${reply.message}` : ` Last reply: ${reply.toString()}`)); this.redis.emit("error", error); return null; } return item; } }; exports2.default = DataHandler; var remainingRepliesMap = /* @__PURE__ */ new WeakMap(); function fillSubCommand(command, count) { let remainingReplies = remainingRepliesMap.has(command) ? remainingRepliesMap.get(command) : command.args.length; remainingReplies -= 1; if (remainingReplies <= 0) { command.resolve(count); remainingRepliesMap.delete(command); return true; } remainingRepliesMap.set(command, remainingReplies); return false; } __name(fillSubCommand, "fillSubCommand"); function fillUnsubCommand(command, count) { let remainingReplies = remainingRepliesMap.has(command) ? remainingRepliesMap.get(command) : command.args.length; if (remainingReplies === 0) { if (Number(count) === 0) { remainingRepliesMap.delete(command); command.resolve(count); return true; } return false; } remainingReplies -= 1; if (remainingReplies <= 0) { command.resolve(count); return true; } remainingRepliesMap.set(command, remainingReplies); return false; } __name(fillUnsubCommand, "fillUnsubCommand"); } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/redis/event_handler.js var require_event_handler = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/redis/event_handler.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.readyHandler = exports2.errorHandler = exports2.closeHandler = exports2.connectHandler = void 0; var redis_errors_1 = require_redis_errors(); var Command_1 = require_Command(); var errors_1 = require_errors4(); var utils_1 = require_utils15(); var DataHandler_1 = require_DataHandler(); var debug = (0, utils_1.Debug)("connection"); function connectHandler(self2) { return function() { var _a; self2.setStatus("connect"); self2.resetCommandQueue(); let flushed = false; const { connectionEpoch } = self2; if (self2.condition.auth) { self2.auth(self2.condition.auth, function(err) { if (connectionEpoch !== self2.connectionEpoch) { return; } if (err) { if (err.message.indexOf("no password is set") !== -1) { console.warn("[WARN] Redis server does not require a password, but a password was supplied."); } else if (err.message.indexOf("without any password configured for the default user") !== -1) { console.warn("[WARN] This Redis server's `default` user does not require a password, but a password was supplied"); } else if (err.message.indexOf("wrong number of arguments for 'auth' command") !== -1) { console.warn(`[ERROR] The server returned "wrong number of arguments for 'auth' command". You are probably passing both username and password to Redis version 5 or below. You should only pass the 'password' option for Redis version 5 and under.`); } else { flushed = true; self2.recoverFromFatalError(err, err); } } }); } if (self2.condition.select) { self2.select(self2.condition.select).catch((err) => { self2.silentEmit("error", err); }); } new DataHandler_1.default(self2, { stringNumbers: self2.options.stringNumbers }); const clientCommandPromises = []; if (self2.options.connectionName) { debug("set the connection name [%s]", self2.options.connectionName); clientCommandPromises.push(self2.client("setname", self2.options.connectionName).catch(utils_1.noop)); } if (!self2.options.disableClientInfo) { debug("set the client info"); clientCommandPromises.push((0, utils_1.getPackageMeta)().then((packageMeta) => { return self2.client("SETINFO", "LIB-VER", packageMeta.version).catch(utils_1.noop); }).catch(utils_1.noop)); clientCommandPromises.push(self2.client("SETINFO", "LIB-NAME", ((_a = self2.options) === null || _a === void 0 ? void 0 : _a.clientInfoTag) ? `ioredis(${self2.options.clientInfoTag})` : "ioredis").catch(utils_1.noop)); } Promise.all(clientCommandPromises).catch(utils_1.noop).finally(() => { if (!self2.options.enableReadyCheck) { exports2.readyHandler(self2)(); } if (self2.options.enableReadyCheck) { self2._readyCheck(function(err, info) { if (connectionEpoch !== self2.connectionEpoch) { return; } if (err) { if (!flushed) { self2.recoverFromFatalError(new Error("Ready check failed: " + err.message), err); } } else { if (self2.connector.check(info)) { exports2.readyHandler(self2)(); } else { self2.disconnect(true); } } }); } }); }; } __name(connectHandler, "connectHandler"); exports2.connectHandler = connectHandler; function abortError(command) { const err = new redis_errors_1.AbortError("Command aborted due to connection close"); err.command = { name: command.name, args: command.args }; return err; } __name(abortError, "abortError"); function abortIncompletePipelines(commandQueue) { var _a; let expectedIndex = 0; for (let i = 0; i < commandQueue.length; ) { const command = (_a = commandQueue.peekAt(i)) === null || _a === void 0 ? void 0 : _a.command; const pipelineIndex = command.pipelineIndex; if (pipelineIndex === void 0 || pipelineIndex === 0) { expectedIndex = 0; } if (pipelineIndex !== void 0 && pipelineIndex !== expectedIndex++) { commandQueue.remove(i, 1); command.reject(abortError(command)); continue; } i++; } } __name(abortIncompletePipelines, "abortIncompletePipelines"); function abortTransactionFragments(commandQueue) { var _a; for (let i = 0; i < commandQueue.length; ) { const command = (_a = commandQueue.peekAt(i)) === null || _a === void 0 ? void 0 : _a.command; if (command.name === "multi") { break; } if (command.name === "exec") { commandQueue.remove(i, 1); command.reject(abortError(command)); break; } if (command.inTransaction) { commandQueue.remove(i, 1); command.reject(abortError(command)); } else { i++; } } } __name(abortTransactionFragments, "abortTransactionFragments"); function closeHandler(self2) { return function() { const prevStatus = self2.status; self2.setStatus("close"); if (self2.commandQueue.length) { abortIncompletePipelines(self2.commandQueue); } if (self2.offlineQueue.length) { abortTransactionFragments(self2.offlineQueue); } if (prevStatus === "ready") { if (!self2.prevCondition) { self2.prevCondition = self2.condition; } if (self2.commandQueue.length) { self2.prevCommandQueue = self2.commandQueue; } } if (self2.manuallyClosing) { self2.manuallyClosing = false; debug("skip reconnecting since the connection is manually closed."); return close(); } if (typeof self2.options.retryStrategy !== "function") { debug("skip reconnecting because `retryStrategy` is not a function"); return close(); } const retryDelay = self2.options.retryStrategy(++self2.retryAttempts); if (typeof retryDelay !== "number") { debug("skip reconnecting because `retryStrategy` doesn't return a number"); return close(); } debug("reconnect in %sms", retryDelay); self2.setStatus("reconnecting", retryDelay); self2.reconnectTimeout = setTimeout(function() { self2.reconnectTimeout = null; self2.connect().catch(utils_1.noop); }, retryDelay); const { maxRetriesPerRequest } = self2.options; if (typeof maxRetriesPerRequest === "number") { if (maxRetriesPerRequest < 0) { debug("maxRetriesPerRequest is negative, ignoring..."); } else { const remainder = self2.retryAttempts % (maxRetriesPerRequest + 1); if (remainder === 0) { debug("reach maxRetriesPerRequest limitation, flushing command queue..."); self2.flushQueue(new errors_1.MaxRetriesPerRequestError(maxRetriesPerRequest)); } } } }; function close() { self2.setStatus("end"); self2.flushQueue(new Error(utils_1.CONNECTION_CLOSED_ERROR_MSG)); } __name(close, "close"); } __name(closeHandler, "closeHandler"); exports2.closeHandler = closeHandler; function errorHandler(self2) { return function(error) { debug("error: %s", error); self2.silentEmit("error", error); }; } __name(errorHandler, "errorHandler"); exports2.errorHandler = errorHandler; function readyHandler(self2) { return function() { self2.setStatus("ready"); self2.retryAttempts = 0; if (self2.options.monitor) { self2.call("monitor").then(() => self2.setStatus("monitoring"), (error) => self2.emit("error", error)); const { sendCommand } = self2; self2.sendCommand = function(command) { if (Command_1.default.checkFlag("VALID_IN_MONITOR_MODE", command.name)) { return sendCommand.call(self2, command); } command.reject(new Error("Connection is in monitoring mode, can't process commands.")); return command.promise; }; self2.once("close", function() { delete self2.sendCommand; }); return; } const finalSelect = self2.prevCondition ? self2.prevCondition.select : self2.condition.select; if (self2.options.readOnly) { debug("set the connection to readonly mode"); self2.readonly().catch(utils_1.noop); } if (self2.prevCondition) { const condition = self2.prevCondition; self2.prevCondition = null; if (condition.subscriber && self2.options.autoResubscribe) { if (self2.condition.select !== finalSelect) { debug("connect to db [%d]", finalSelect); self2.select(finalSelect); } const subscribeChannels = condition.subscriber.channels("subscribe"); if (subscribeChannels.length) { debug("subscribe %d channels", subscribeChannels.length); self2.subscribe(subscribeChannels); } const psubscribeChannels = condition.subscriber.channels("psubscribe"); if (psubscribeChannels.length) { debug("psubscribe %d channels", psubscribeChannels.length); self2.psubscribe(psubscribeChannels); } const ssubscribeChannels = condition.subscriber.channels("ssubscribe"); if (ssubscribeChannels.length) { debug("ssubscribe %s", ssubscribeChannels.length); for (const channel of ssubscribeChannels) { self2.ssubscribe(channel); } } } } if (self2.prevCommandQueue) { if (self2.options.autoResendUnfulfilledCommands) { debug("resend %d unfulfilled commands", self2.prevCommandQueue.length); while (self2.prevCommandQueue.length > 0) { const item = self2.prevCommandQueue.shift(); if (item.select !== self2.condition.select && item.command.name !== "select") { self2.select(item.select); } self2.sendCommand(item.command, item.stream); } } else { self2.prevCommandQueue = null; } } if (self2.offlineQueue.length) { debug("send %d commands in offline queue", self2.offlineQueue.length); const offlineQueue = self2.offlineQueue; self2.resetOfflineQueue(); while (offlineQueue.length > 0) { const item = offlineQueue.shift(); if (item.select !== self2.condition.select && item.command.name !== "select") { self2.select(item.select); } self2.sendCommand(item.command, item.stream); } } if (self2.condition.select !== finalSelect) { debug("connect to db [%d]", finalSelect); self2.select(finalSelect); } }; } __name(readyHandler, "readyHandler"); exports2.readyHandler = readyHandler; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/redis/RedisOptions.js var require_RedisOptions = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/redis/RedisOptions.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DEFAULT_REDIS_OPTIONS = void 0; exports2.DEFAULT_REDIS_OPTIONS = { // Connection port: 6379, host: "localhost", family: 0, connectTimeout: 1e4, disconnectTimeout: 2e3, retryStrategy: /* @__PURE__ */ __name(function(times) { return Math.min(times * 50, 2e3); }, "retryStrategy"), keepAlive: 0, noDelay: true, connectionName: null, disableClientInfo: false, clientInfoTag: void 0, // Sentinel sentinels: null, name: null, role: "master", sentinelRetryStrategy: /* @__PURE__ */ __name(function(times) { return Math.min(times * 10, 1e3); }, "sentinelRetryStrategy"), sentinelReconnectStrategy: /* @__PURE__ */ __name(function() { return 6e4; }, "sentinelReconnectStrategy"), natMap: null, enableTLSForSentinelMode: false, updateSentinels: true, failoverDetector: false, // Status username: null, password: null, db: 0, // Others enableOfflineQueue: true, enableReadyCheck: true, autoResubscribe: true, autoResendUnfulfilledCommands: true, lazyConnect: false, keyPrefix: "", reconnectOnError: null, readOnly: false, stringNumbers: false, maxRetriesPerRequest: 20, maxLoadingRetryTime: 1e4, enableAutoPipelining: false, autoPipeliningIgnoredCommands: [], sentinelMaxConnections: 10, blockingTimeoutGrace: 100 }; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/Redis.js var require_Redis = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/Redis.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var commands_1 = require_built(); var events_1 = require("events"); var standard_as_callback_1 = require_built2(); var cluster_1 = require_cluster(); var Command_1 = require_Command(); var connectors_1 = require_connectors(); var SentinelConnector_1 = require_SentinelConnector(); var eventHandler = require_event_handler(); var RedisOptions_1 = require_RedisOptions(); var ScanStream_1 = require_ScanStream(); var transaction_1 = require_transaction(); var utils_1 = require_utils15(); var tracing_1 = require_tracing(); var applyMixin_1 = require_applyMixin(); var Commander_1 = require_Commander(); var lodash_1 = require_lodash2(); var Deque = require_denque(); var debug = (0, utils_1.Debug)("redis"); var Redis = class _Redis extends Commander_1.default { static { __name(this, "Redis"); } constructor(arg1, arg2, arg3) { super(); this.status = "wait"; this.isCluster = false; this.reconnectTimeout = null; this.connectionEpoch = 0; this.retryAttempts = 0; this.manuallyClosing = false; this._autoPipelines = /* @__PURE__ */ new Map(); this._runningAutoPipelines = /* @__PURE__ */ new Set(); this.parseOptions(arg1, arg2, arg3); events_1.EventEmitter.call(this); this.resetCommandQueue(); this.resetOfflineQueue(); if (this.options.Connector) { this.connector = new this.options.Connector(this.options); } else if (this.options.sentinels) { const sentinelConnector = new SentinelConnector_1.default(this.options); sentinelConnector.emitter = this; this.connector = sentinelConnector; } else { this.connector = new connectors_1.StandaloneConnector(this.options); } if (this.options.scripts) { Object.entries(this.options.scripts).forEach(([name, definition]) => { this.defineCommand(name, definition); }); } if (this.options.lazyConnect) { this.setStatus("wait"); } else { this.connect().catch(lodash_1.noop); } } /** * Create a Redis instance. * This is the same as `new Redis()` but is included for compatibility with node-redis. */ static createClient(...args) { return new _Redis(...args); } get autoPipelineQueueSize() { let queued = 0; for (const pipeline of this._autoPipelines.values()) { queued += pipeline.length; } return queued; } /** * Create a connection to Redis. * This method will be invoked automatically when creating a new Redis instance * unless `lazyConnect: true` is passed. * * When calling this method manually, a Promise is returned, which will * be resolved when the connection status is ready. The promise can reject * if the connection fails, times out, or if Redis is already connecting/connected. */ connect(callback) { const promise = (0, tracing_1.traceConnect)(() => this._connect(), () => { const { address, port } = this._getServerAddress(); return { serverAddress: address, serverPort: port, connectionEpoch: this.connectionEpoch }; }); return (0, standard_as_callback_1.default)(promise, callback); } _connect() { return new Promise((resolve, reject) => { if (this.status === "connecting" || this.status === "connect" || this.status === "ready") { reject(new Error("Redis is already connecting/connected")); return; } this.connectionEpoch += 1; this.setStatus("connecting"); const { options } = this; this.condition = { select: options.db, auth: options.username ? [options.username, options.password] : options.password, subscriber: false }; const _this = this; (0, standard_as_callback_1.default)(this.connector.connect(function(type, err) { _this.silentEmit(type, err); }), function(err, stream) { if (err) { _this.flushQueue(err); _this.silentEmit("error", err); reject(err); _this.setStatus("end"); return; } let CONNECT_EVENT = options.tls ? "secureConnect" : "connect"; if ("sentinels" in options && options.sentinels && !options.enableTLSForSentinelMode) { CONNECT_EVENT = "connect"; } _this.stream = stream; if (options.noDelay) { stream.setNoDelay(true); } if (typeof options.keepAlive === "number") { if (stream.connecting) { stream.once(CONNECT_EVENT, () => { stream.setKeepAlive(true, options.keepAlive); }); } else { stream.setKeepAlive(true, options.keepAlive); } } if (stream.connecting) { stream.once(CONNECT_EVENT, eventHandler.connectHandler(_this)); if (options.connectTimeout) { let connectTimeoutCleared = false; stream.setTimeout(options.connectTimeout, function() { if (connectTimeoutCleared) { return; } stream.setTimeout(0); stream.destroy(); const err2 = new Error("connect ETIMEDOUT"); err2.errorno = "ETIMEDOUT"; err2.code = "ETIMEDOUT"; err2.syscall = "connect"; eventHandler.errorHandler(_this)(err2); }); stream.once(CONNECT_EVENT, function() { connectTimeoutCleared = true; stream.setTimeout(0); }); } } else if (stream.destroyed) { const firstError = _this.connector.firstError; if (firstError) { process.nextTick(() => { eventHandler.errorHandler(_this)(firstError); }); } process.nextTick(eventHandler.closeHandler(_this)); } else { process.nextTick(eventHandler.connectHandler(_this)); } if (!stream.destroyed) { stream.once("error", eventHandler.errorHandler(_this)); stream.once("close", eventHandler.closeHandler(_this)); } const connectionReadyHandler = /* @__PURE__ */ __name(function() { _this.removeListener("close", connectionCloseHandler); resolve(); }, "connectionReadyHandler"); var connectionCloseHandler = /* @__PURE__ */ __name(function() { _this.removeListener("ready", connectionReadyHandler); reject(new Error(utils_1.CONNECTION_CLOSED_ERROR_MSG)); }, "connectionCloseHandler"); _this.once("ready", connectionReadyHandler); _this.once("close", connectionCloseHandler); }); }); } /** * Disconnect from Redis. * * This method closes the connection immediately, * and may lose some pending replies that haven't written to client. * If you want to wait for the pending replies, use Redis#quit instead. */ disconnect(reconnect = false) { if (!reconnect) { this.manuallyClosing = true; } if (this.reconnectTimeout && !reconnect) { clearTimeout(this.reconnectTimeout); this.reconnectTimeout = null; } if (this.status === "wait") { eventHandler.closeHandler(this)(); } else { this.connector.disconnect(); } } /** * Disconnect from Redis. * * @deprecated */ end() { this.disconnect(); } /** * Create a new instance with the same options as the current one. * * @example * ```js * var redis = new Redis(6380); * var anotherRedis = redis.duplicate(); * ``` */ duplicate(override) { return new _Redis({ ...this.options, ...override }); } /** * Mode of the connection. * * One of `"normal"`, `"subscriber"`, or `"monitor"`. When the connection is * not in `"normal"` mode, certain commands are not allowed. */ get mode() { var _a; return this.options.monitor ? "monitor" : ((_a = this.condition) === null || _a === void 0 ? void 0 : _a.subscriber) ? "subscriber" : "normal"; } /** * Listen for all requests received by the server in real time. * * This command will create a new connection to Redis and send a * MONITOR command via the new connection in order to avoid disturbing * the current connection. * * @param callback The callback function. If omit, a promise will be returned. * @example * ```js * var redis = new Redis(); * redis.monitor(function (err, monitor) { * // Entering monitoring mode. * monitor.on('monitor', function (time, args, source, database) { * console.log(time + ": " + util.inspect(args)); * }); * }); * * // supports promise as well as other commands * redis.monitor().then(function (monitor) { * monitor.on('monitor', function (time, args, source, database) { * console.log(time + ": " + util.inspect(args)); * }); * }); * ``` */ monitor(callback) { const monitorInstance = this.duplicate({ monitor: true, lazyConnect: false }); return (0, standard_as_callback_1.default)(new Promise(function(resolve, reject) { monitorInstance.once("error", reject); monitorInstance.once("monitoring", function() { resolve(monitorInstance); }); }), callback); } /** * Send a command to Redis * * This method is used internally and in most cases you should not * use it directly. If you need to send a command that is not supported * by the library, you can use the `call` method: * * ```js * const redis = new Redis(); * * redis.call('set', 'foo', 'bar'); * // or * redis.call(['set', 'foo', 'bar']); * ``` * * @ignore */ sendCommand(command, stream) { var _a, _b; if (this.status === "wait") { this.connect().catch(lodash_1.noop); } if (this.status === "end") { command.reject(new Error(utils_1.CONNECTION_CLOSED_ERROR_MSG)); return command.promise; } if (((_a = this.condition) === null || _a === void 0 ? void 0 : _a.subscriber) && !Command_1.default.checkFlag("VALID_IN_SUBSCRIBER_MODE", command.name)) { command.reject(new Error("Connection in subscriber mode, only subscriber commands may be used")); return command.promise; } if (typeof this.options.commandTimeout === "number") { command.setTimeout(this.options.commandTimeout); } const blockingTimeout = this.getBlockingTimeoutInMs(command); let writable = this.status === "ready" || !stream && this.status === "connect" && (0, commands_1.exists)(command.name, { caseInsensitive: true }) && ((0, commands_1.hasFlag)(command.name, "loading", { nameCaseInsensitive: true }) || Command_1.default.checkFlag("HANDSHAKE_COMMANDS", command.name)); if (!this.stream) { writable = false; } else if (!this.stream.writable) { writable = false; } else if (this.stream._writableState && this.stream._writableState.ended) { writable = false; } if (!writable) { if (!this.options.enableOfflineQueue) { command.reject(new Error("Stream isn't writeable and enableOfflineQueue options is false")); return command.promise; } if (command.name === "quit" && this.offlineQueue.length === 0) { this.disconnect(); command.resolve(Buffer.from("OK")); return command.promise; } if (debug.enabled) { debug("queue command[%s]: %d -> %s(%o)", this._getDescription(), this.condition.select, command.name, command.args); } this.offlineQueue.push({ command, stream, select: this.condition.select }); if (Command_1.default.checkFlag("BLOCKING_COMMANDS", command.name)) { const offlineTimeout = this.getConfiguredBlockingTimeout(); if (offlineTimeout !== void 0) { command.setBlockingTimeout(offlineTimeout); } } } else { if (debug.enabled) { debug("write command[%s]: %d -> %s(%o)", this._getDescription(), (_b = this.condition) === null || _b === void 0 ? void 0 : _b.select, command.name, command.args); } if (stream) { if ("isPipeline" in stream && stream.isPipeline) { stream.write(command.toWritable(stream.destination.redis.stream)); } else { stream.write(command.toWritable(stream)); } } else { this.stream.write(command.toWritable(this.stream)); } this.commandQueue.push({ command, stream, select: this.condition.select }); if (blockingTimeout !== void 0) { command.setBlockingTimeout(blockingTimeout); } if (Command_1.default.checkFlag("WILL_DISCONNECT", command.name)) { this.manuallyClosing = true; } if (this.options.socketTimeout !== void 0 && this.socketTimeoutTimer === void 0) { this.setSocketTimeout(); } } if (command.name === "select" && (0, utils_1.isInt)(command.args[0])) { const db = parseInt(command.args[0], 10); if (this.condition.select !== db) { this.condition.select = db; this.emit("select", db); debug("switch to db [%d]", this.condition.select); } } if (!writable || command.isTraced) { return command.promise; } command.isTraced = true; return (0, tracing_1.traceCommand)(() => command.promise, () => this._buildCommandContext(command)); } getBlockingTimeoutInMs(command) { var _a; if (!Command_1.default.checkFlag("BLOCKING_COMMANDS", command.name)) { return void 0; } const configuredTimeout = this.getConfiguredBlockingTimeout(); if (configuredTimeout === void 0) { return void 0; } const timeout = command.extractBlockingTimeout(); if (typeof timeout === "number") { if (timeout > 0) { return timeout + ((_a = this.options.blockingTimeoutGrace) !== null && _a !== void 0 ? _a : RedisOptions_1.DEFAULT_REDIS_OPTIONS.blockingTimeoutGrace); } return configuredTimeout; } if (timeout === null) { return configuredTimeout; } return void 0; } getConfiguredBlockingTimeout() { if (typeof this.options.blockingTimeout === "number" && this.options.blockingTimeout > 0) { return this.options.blockingTimeout; } return void 0; } setSocketTimeout() { this.socketTimeoutTimer = setTimeout(() => { this.stream.destroy(new Error(`Socket timeout. Expecting data, but didn't receive any in ${this.options.socketTimeout}ms.`)); this.socketTimeoutTimer = void 0; }, this.options.socketTimeout); this.stream.once("data", () => { clearTimeout(this.socketTimeoutTimer); this.socketTimeoutTimer = void 0; if (this.commandQueue.length === 0) return; this.setSocketTimeout(); }); } scanStream(options) { return this.createScanStream("scan", { options }); } scanBufferStream(options) { return this.createScanStream("scanBuffer", { options }); } sscanStream(key, options) { return this.createScanStream("sscan", { key, options }); } sscanBufferStream(key, options) { return this.createScanStream("sscanBuffer", { key, options }); } hscanStream(key, options) { return this.createScanStream("hscan", { key, options }); } hscanBufferStream(key, options) { return this.createScanStream("hscanBuffer", { key, options }); } zscanStream(key, options) { return this.createScanStream("zscan", { key, options }); } zscanBufferStream(key, options) { return this.createScanStream("zscanBuffer", { key, options }); } /** * Emit only when there's at least one listener. * * @ignore */ silentEmit(eventName, arg) { let error; if (eventName === "error") { error = arg; if (this.status === "end") { return; } if (this.manuallyClosing) { if (error instanceof Error && (error.message === utils_1.CONNECTION_CLOSED_ERROR_MSG || // @ts-expect-error error.syscall === "connect" || // @ts-expect-error error.syscall === "read")) { return; } } } if (this.listeners(eventName).length > 0) { return this.emit.apply(this, arguments); } if (error && error instanceof Error) { console.error("[ioredis] Unhandled error event:", error.stack); } return false; } /** * @ignore */ recoverFromFatalError(_commandError, err, options) { this.flushQueue(err, options); this.silentEmit("error", err); this.disconnect(true); } /** * @ignore */ handleReconnection(err, item) { var _a; let needReconnect = false; if (this.options.reconnectOnError && !Command_1.default.checkFlag("IGNORE_RECONNECT_ON_ERROR", item.command.name)) { needReconnect = this.options.reconnectOnError(err); } switch (needReconnect) { case 1: case true: if (this.status !== "reconnecting") { this.disconnect(true); } item.command.reject(err); break; case 2: if (this.status !== "reconnecting") { this.disconnect(true); } if (((_a = this.condition) === null || _a === void 0 ? void 0 : _a.select) !== item.select && item.command.name !== "select") { this.select(item.select); } this.sendCommand(item.command); break; default: item.command.reject(err); } } /** * @ignore */ _getServerAddress() { if ("path" in this.options && this.options.path) { return { address: this.options.path, port: void 0 }; } return { address: "host" in this.options && this.options.host || "localhost", port: "port" in this.options && this.options.port || 6379 }; } _buildCommandContext(command) { var _a, _b, _c; const { address, port } = this._getServerAddress(); return { command: command.name, args: (0, tracing_1.sanitizeArgs)(command.name, command.args), database: (_c = (_b = (_a = this.condition) === null || _a === void 0 ? void 0 : _a.select) !== null && _b !== void 0 ? _b : this.options.db) !== null && _c !== void 0 ? _c : 0, serverAddress: address, serverPort: port }; } _buildBatchContext(batchSize) { var _a, _b, _c; const { address, port } = this._getServerAddress(); return { batchMode: "MULTI", batchSize, database: (_c = (_b = (_a = this.condition) === null || _a === void 0 ? void 0 : _a.select) !== null && _b !== void 0 ? _b : this.options.db) !== null && _c !== void 0 ? _c : 0, serverAddress: address, serverPort: port }; } /** * Get description of the connection. Used for debugging. */ _getDescription() { let description; if ("path" in this.options && this.options.path) { description = this.options.path; } else if (this.stream && this.stream.remoteAddress && this.stream.remotePort) { description = this.stream.remoteAddress + ":" + this.stream.remotePort; } else if ("host" in this.options && this.options.host) { description = this.options.host + ":" + this.options.port; } else { description = ""; } if (this.options.connectionName) { description += ` (${this.options.connectionName})`; } return description; } resetCommandQueue() { this.commandQueue = new Deque(); } resetOfflineQueue() { this.offlineQueue = new Deque(); } parseOptions(...args) { const options = {}; let isTls = false; for (let i = 0; i < args.length; ++i) { const arg = args[i]; if (arg === null || typeof arg === "undefined") { continue; } if (typeof arg === "object") { (0, lodash_1.defaults)(options, arg); } else if (typeof arg === "string") { (0, lodash_1.defaults)(options, (0, utils_1.parseURL)(arg)); if (arg.startsWith("rediss://")) { isTls = true; } } else if (typeof arg === "number") { options.port = arg; } else { throw new Error("Invalid argument " + arg); } } if (isTls) { (0, lodash_1.defaults)(options, { tls: true }); } (0, lodash_1.defaults)(options, _Redis.defaultOptions); if (typeof options.port === "string") { options.port = parseInt(options.port, 10); } if (typeof options.db === "string") { options.db = parseInt(options.db, 10); } this.options = (0, utils_1.resolveTLSProfile)(options); } /** * Change instance's status */ setStatus(status, arg) { if (debug.enabled) { debug("status[%s]: %s -> %s", this._getDescription(), this.status || "[empty]", status); } this.status = status; process.nextTick(this.emit.bind(this, status, arg)); } createScanStream(command, { key, options = {} }) { return new ScanStream_1.default({ objectMode: true, key, redis: this, command, ...options }); } /** * Flush offline queue and command queue with error. * * @param error The error object to send to the commands * @param options options */ flushQueue(error, options) { options = (0, lodash_1.defaults)({}, options, { offlineQueue: true, commandQueue: true }); let item; if (options.offlineQueue) { while (item = this.offlineQueue.shift()) { item.command.reject(error); } } if (options.commandQueue) { if (this.commandQueue.length > 0) { if (this.stream) { this.stream.removeAllListeners("data"); } while (item = this.commandQueue.shift()) { item.command.reject(error); } } } } /** * Check whether Redis has finished loading the persistent data and is able to * process commands. */ _readyCheck(callback) { const _this = this; this.info(function(err, res) { if (err) { if (err.message && err.message.includes("NOPERM")) { console.warn(`Skipping the ready check because INFO command fails: "${err.message}". You can disable ready check with "enableReadyCheck". More: https://github.com/luin/ioredis/wiki/Disable-ready-check.`); return callback(null, {}); } return callback(err); } if (typeof res !== "string") { return callback(null, res); } const info = {}; const lines = res.split("\r\n"); for (let i = 0; i < lines.length; ++i) { const [fieldName, ...fieldValueParts] = lines[i].split(":"); const fieldValue = fieldValueParts.join(":"); if (fieldValue) { info[fieldName] = fieldValue; } } if (!info.loading || info.loading === "0") { callback(null, info); } else { const loadingEtaMs = (info.loading_eta_seconds || 1) * 1e3; const retryTime = _this.options.maxLoadingRetryTime && _this.options.maxLoadingRetryTime < loadingEtaMs ? _this.options.maxLoadingRetryTime : loadingEtaMs; debug("Redis server still loading, trying again in " + retryTime + "ms"); setTimeout(function() { _this._readyCheck(callback); }, retryTime); } }).catch(lodash_1.noop); } }; Redis.Cluster = cluster_1.default; Redis.Command = Command_1.default; Redis.defaultOptions = RedisOptions_1.DEFAULT_REDIS_OPTIONS; (0, applyMixin_1.default)(Redis, events_1.EventEmitter); (0, transaction_1.addTransactionSupport)(Redis.prototype); exports2.default = Redis; } }); // ../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/index.js var require_built3 = __commonJS({ "../../node_modules/.pnpm/ioredis@5.11.1/node_modules/ioredis/built/index.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.print = exports2.ReplyError = exports2.SentinelIterator = exports2.SentinelConnector = exports2.AbstractConnector = exports2.Pipeline = exports2.ScanStream = exports2.Command = exports2.Cluster = exports2.Redis = exports2.default = void 0; exports2 = module2.exports = require_Redis().default; var Redis_1 = require_Redis(); Object.defineProperty(exports2, "default", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Redis_1.default; }, "get") }); var Redis_2 = require_Redis(); Object.defineProperty(exports2, "Redis", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Redis_2.default; }, "get") }); var cluster_1 = require_cluster(); Object.defineProperty(exports2, "Cluster", { enumerable: true, get: /* @__PURE__ */ __name(function() { return cluster_1.default; }, "get") }); var Command_1 = require_Command(); Object.defineProperty(exports2, "Command", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Command_1.default; }, "get") }); var ScanStream_1 = require_ScanStream(); Object.defineProperty(exports2, "ScanStream", { enumerable: true, get: /* @__PURE__ */ __name(function() { return ScanStream_1.default; }, "get") }); var Pipeline_1 = require_Pipeline(); Object.defineProperty(exports2, "Pipeline", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Pipeline_1.default; }, "get") }); var AbstractConnector_1 = require_AbstractConnector(); Object.defineProperty(exports2, "AbstractConnector", { enumerable: true, get: /* @__PURE__ */ __name(function() { return AbstractConnector_1.default; }, "get") }); var SentinelConnector_1 = require_SentinelConnector(); Object.defineProperty(exports2, "SentinelConnector", { enumerable: true, get: /* @__PURE__ */ __name(function() { return SentinelConnector_1.default; }, "get") }); Object.defineProperty(exports2, "SentinelIterator", { enumerable: true, get: /* @__PURE__ */ __name(function() { return SentinelConnector_1.SentinelIterator; }, "get") }); exports2.ReplyError = require_redis_errors().ReplyError; Object.defineProperty(exports2, "Promise", { get() { console.warn("ioredis v5 does not support plugging third-party Promise library anymore. Native Promise will be used."); return Promise; }, set(_lib) { console.warn("ioredis v5 does not support plugging third-party Promise library anymore. Native Promise will be used."); } }); function print(err, reply) { if (err) { console.log("Error: " + err); } else { console.log("Reply: " + reply); } } __name(print, "print"); exports2.print = print; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addDelayedJob-6.js var require_addDelayedJob_6 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addDelayedJob-6.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.addDelayedJob = void 0; var content = `--[[ Adds a delayed job to the queue by doing the following: - Increases the job counter if needed. - Creates a new job key with the job data. - computes timestamp. - adds to delayed zset. - Emits a global event 'delayed' if the job is delayed. Input: KEYS[1] 'marker', KEYS[2] 'meta' KEYS[3] 'id' KEYS[4] 'delayed' KEYS[5] 'completed' KEYS[6] events stream key ARGV[1] msgpacked arguments array [1] key prefix, [2] custom id (use custom instead of one generated automatically) [3] name [4] timestamp [5] parentKey? [6] parent dependencies key. [7] parent? {id, queueKey} [8] repeat job key [9] deduplication key ARGV[2] Json stringified job data ARGV[3] msgpacked options Output: jobId - OK -5 - Missing parent key ]] local metaKey = KEYS[2] local idKey = KEYS[3] local delayedKey = KEYS[4] local completedKey = KEYS[5] local eventsKey = KEYS[6] local jobId local jobIdKey local rcall = redis.call local args = cmsgpack.unpack(ARGV[1]) local data = ARGV[2] local parentKey = args[5] local parent = args[7] local repeatJobKey = args[8] local deduplicationKey = args[9] local parentData -- Includes --[[ Adds a delayed job to the queue by doing the following: - Creates a new job key with the job data. - adds to delayed zset. - Emits a global event 'delayed' if the job is delayed. ]] -- Includes --[[ Add delay marker if needed. ]] -- Includes --[[ Function to return the next delayed job timestamp. ]] local function getNextDelayedTimestamp(delayedKey) local result = rcall("ZRANGE", delayedKey, 0, 0, "WITHSCORES") if #result then local nextTimestamp = tonumber(result[2]) if nextTimestamp ~= nil then return nextTimestamp / 0x1000 end end end local function addDelayMarkerIfNeeded(markerKey, delayedKey) local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- Replace the score of the marker with the newest known -- next timestamp. rcall("ZADD", markerKey, nextTimestamp, "1") end end --[[ Bake in the job id first 12 bits into the timestamp to guarantee correct execution order of delayed jobs (up to 4096 jobs per given timestamp or 4096 jobs apart per timestamp) WARNING: Jobs that are so far apart that they wrap around will cause FIFO to fail ]] local function getDelayedScore(delayedKey, timestamp, delay) local delayedTimestamp = (delay > 0 and (tonumber(timestamp) + delay)) or tonumber(timestamp) local minScore = delayedTimestamp * 0x1000 local maxScore = (delayedTimestamp + 1 ) * 0x1000 - 1 local result = rcall("ZREVRANGEBYSCORE", delayedKey, maxScore, minScore, "WITHSCORES","LIMIT", 0, 1) if #result then local currentMaxScore = tonumber(result[2]) if currentMaxScore ~= nil then if currentMaxScore >= maxScore then return maxScore, delayedTimestamp else return currentMaxScore + 1, delayedTimestamp end end end return minScore, delayedTimestamp end local function addDelayedJob(jobId, delayedKey, eventsKey, timestamp, maxEvents, markerKey, delay) local score, delayedTimestamp = getDelayedScore(delayedKey, timestamp, tonumber(delay)) rcall("ZADD", delayedKey, score, jobId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "delayed", "jobId", jobId, "delay", delayedTimestamp) -- mark that a delayed job is available addDelayMarkerIfNeeded(markerKey, delayedKey) end --[[ Function to debounce a job. ]] -- Includes --[[ Function to deduplicate a job. ]] --[[ Function to set the deduplication key for a job. Uses TTL from deduplication opts if provided. ]] local function setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) local ttl = deduplicationOpts and deduplicationOpts['ttl'] if ttl and ttl > 0 then rcall('SET', deduplicationKey, jobId, 'PX', ttl) else rcall('SET', deduplicationKey, jobId) end end --[[ Function to store a deduplicated next job if the existing job is active and keepLastIfActive is set. When the active job finishes, the stored proto-job is used to create a real job in the queue. Returns true if the proto-job was stored, false otherwise. ]] --[[ Function to check if an item belongs to a list. ]] local function checkItemInList(list, item) for _, v in pairs(list) do if v == item then return 1 end end return nil end local function storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) if deduplicationOpts['keepLastIfActive'] and currentDebounceJobId then local activeKey = prefix .. "active" local activeItems = rcall('LRANGE', activeKey, 0, -1) if checkItemInList(activeItems, currentDebounceJobId) then local deduplicationNextKey = prefix .. "dn:" .. deduplicationId local fields = {'name', jobName, 'data', jobData, 'opts', cjson.encode(fullOpts), 'jid', jobId} if parentKey then fields[#fields+1] = 'pk' fields[#fields+1] = parentKey end if parentData then fields[#fields+1] = 'pd' fields[#fields+1] = parentData end if parentDependenciesKey then fields[#fields+1] = 'pdk' fields[#fields+1] = parentDependenciesKey end if repeatJobKey then fields[#fields+1] = 'rjk' fields[#fields+1] = repeatJobKey end rcall('DEL', deduplicationNextKey) rcall('HSET', deduplicationNextKey, unpack(fields)) -- Ensure the dedup key does not expire while the job is active, -- so subsequent adds always hit the dedup path and never bypass -- the active-check because of a TTL expiry. local deduplicationKey = prefix .. "de:" .. deduplicationId rcall('PERSIST', deduplicationKey) -- TODO remove debounced event in next breaking change rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return true end end return false end local function deduplicateJobWithoutReplace(deduplicationId, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents, prefix, jobName, jobData, fullOpts, parentKey, parentData, parentDependenciesKey, repeatJobKey) local ttl = deduplicationOpts['ttl'] local deduplicationKeyExists if ttl and ttl > 0 then if deduplicationOpts['extend'] then local currentDebounceJobId = rcall('GET', deduplicationKey) if currentDebounceJobId then if storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) then return currentDebounceJobId end if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, currentDebounceJobId) else setDeduplicationKey(deduplicationKey, currentDebounceJobId, deduplicationOpts) end rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return currentDebounceJobId else if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, jobId) else setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) end return end else if deduplicationOpts['keepLastIfActive'] then deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX') else deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'PX', ttl, 'NX') end end else deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX') end if deduplicationKeyExists then local currentDebounceJobId = rcall('GET', deduplicationKey) if storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) then return currentDebounceJobId end -- TODO remove debounced event in next breaking change rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return currentDebounceJobId end end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end local function removeDelayedJob(delayedKey, deduplicationKey, eventsKey, maxEvents, currentDeduplicatedJobId, jobId, deduplicationId, prefix) if rcall("ZREM", delayedKey, currentDeduplicatedJobId) > 0 then removeJobKeys(prefix .. currentDeduplicatedJobId) rcall("XADD", eventsKey, "*", "event", "removed", "jobId", currentDeduplicatedJobId, "prev", "delayed") -- TODO remove debounced event in next breaking change rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", jobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", jobId, "deduplicationId", deduplicationId, "deduplicatedJobId", currentDeduplicatedJobId) return true end return false end local function deduplicateJob(deduplicationOpts, jobId, delayedKey, deduplicationKey, eventsKey, maxEvents, prefix, jobName, jobData, fullOpts, parentKey, parentData, parentDependenciesKey, repeatJobKey) local deduplicationId = deduplicationOpts and deduplicationOpts['id'] if deduplicationId then if deduplicationOpts['replace'] then local currentDebounceJobId = rcall('GET', deduplicationKey) if currentDebounceJobId then local isRemoved = removeDelayedJob(delayedKey, deduplicationKey, eventsKey, maxEvents, currentDebounceJobId, jobId, deduplicationId, prefix) if isRemoved then if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, jobId) else local ttl = deduplicationOpts['ttl'] if not deduplicationOpts['extend'] and ttl and ttl > 0 then rcall('SET', deduplicationKey, jobId, 'KEEPTTL') else setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) end end return else storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) return currentDebounceJobId end else if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, jobId) else setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) end return end else return deduplicateJobWithoutReplace(deduplicationId, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents, prefix, jobName, jobData, fullOpts, parentKey, parentData, parentDependenciesKey, repeatJobKey) end end end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to handle the case when job is duplicated. ]] -- Includes --[[ This function is used to update the parent's dependencies if the job is already completed and about to be ignored. The parent must get its dependencies updated to avoid the parent job being stuck forever in the waiting-children state. ]] -- Includes --[[ Validate and move or add dependencies to parent. ]] -- Includes --[[ Validate and move parent to a wait status (waiting, delayed or prioritized) if no pending dependencies. ]] -- Includes --[[ Validate and move parent to a wait status (waiting, delayed or prioritized) if needed. ]] -- Includes --[[ Move parent to a wait status (wait, prioritized or delayed) ]] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to add job considering priority. ]] -- Includes --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to check if queue is paused or maxed (since an empty list and !EXISTS are not really the same). ]] local function isQueuePausedOrMaxed(queueMetaKey, activeKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency") if queueAttributes[1] then return true else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) return activeCount >= tonumber(queueAttributes[2]) end end return false end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local function moveParentToWait(parentQueueKey, parentKey, parentId, timestamp) local parentWaitKey = parentQueueKey .. ":wait" local parentPausedKey = parentQueueKey .. ":paused" local parentActiveKey = parentQueueKey .. ":active" local parentMetaKey = parentQueueKey .. ":meta" local parentMarkerKey = parentQueueKey .. ":marker" local jobAttributes = rcall("HMGET", parentKey, "priority", "delay") local priority = tonumber(jobAttributes[1]) or 0 local delay = tonumber(jobAttributes[2]) or 0 if delay > 0 then local delayedTimestamp = tonumber(timestamp) + delay local score = delayedTimestamp * 0x1000 local parentDelayedKey = parentQueueKey .. ":delayed" rcall("ZADD", parentDelayedKey, score, parentId) rcall("XADD", parentQueueKey .. ":events", "*", "event", "delayed", "jobId", parentId, "delay", delayedTimestamp) addDelayMarkerIfNeeded(parentMarkerKey, parentDelayedKey) else if priority == 0 then local parentTarget, isParentPausedOrMaxed = getTargetQueueList(parentMetaKey, parentActiveKey, parentWaitKey, parentPausedKey) addJobInTargetList(parentTarget, parentMarkerKey, "RPUSH", isParentPausedOrMaxed, parentId) else local isPausedOrMaxed = isQueuePausedOrMaxed(parentMetaKey, parentActiveKey) addJobWithPriority(parentMarkerKey, parentQueueKey .. ":prioritized", priority, parentId, parentQueueKey .. ":pc", isPausedOrMaxed) end rcall("XADD", parentQueueKey .. ":events", "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function moveParentToWaitIfNeeded(parentQueueKey, parentKey, parentId, timestamp) if rcall("EXISTS", parentKey) == 1 then local parentWaitingChildrenKey = parentQueueKey .. ":waiting-children" if rcall("ZSCORE", parentWaitingChildrenKey, parentId) then rcall("ZREM", parentWaitingChildrenKey, parentId) moveParentToWait(parentQueueKey, parentKey, parentId, timestamp) end end end local function moveParentToWaitIfNoPendingDependencies(parentQueueKey, parentDependenciesKey, parentKey, parentId, timestamp) local doNotHavePendingDependencies = rcall("SCARD", parentDependenciesKey) == 0 if doNotHavePendingDependencies then moveParentToWaitIfNeeded(parentQueueKey, parentKey, parentId, timestamp) end end local function updateParentDepsIfNeeded(parentKey, parentQueueKey, parentDependenciesKey, parentId, jobIdKey, returnvalue, timestamp ) local processedSet = parentKey .. ":processed" rcall("HSET", processedSet, jobIdKey, returnvalue) moveParentToWaitIfNoPendingDependencies(parentQueueKey, parentDependenciesKey, parentKey, parentId, timestamp) end local function updateExistingJobsParent(parentKey, parent, parentData, parentDependenciesKey, completedKey, jobIdKey, jobId, timestamp) if parentKey ~= nil then if rcall("ZSCORE", completedKey, jobId) then local returnvalue = rcall("HGET", jobIdKey, "returnvalue") updateParentDepsIfNeeded(parentKey, parent['queueKey'], parentDependenciesKey, parent['id'], jobIdKey, returnvalue, timestamp) else if parentDependenciesKey ~= nil then rcall("SADD", parentDependenciesKey, jobIdKey) end end rcall("HMSET", jobIdKey, "parentKey", parentKey, "parent", parentData) end end local function handleDuplicatedJob(jobKey, jobId, currentParentKey, currentParent, parentData, parentDependenciesKey, completedKey, eventsKey, maxEvents, timestamp) local existedParentKey = rcall("HGET", jobKey, "parentKey") if not existedParentKey or existedParentKey == currentParentKey then updateExistingJobsParent(currentParentKey, currentParent, parentData, parentDependenciesKey, completedKey, jobKey, jobId, timestamp) else if currentParentKey ~= nil and currentParentKey ~= existedParentKey and (rcall("EXISTS", existedParentKey) == 1) then return -7 end end rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "duplicated", "jobId", jobId) return jobId .. "" -- convert to string end --[[ Function to store a job ]] local function storeJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey) local jsonOpts = cjson.encode(opts) local delay = opts['delay'] or 0 local priority = opts['priority'] or 0 local debounceId = opts['de'] and opts['de']['id'] local optionalValues = {} if parentKey ~= nil then table.insert(optionalValues, "parentKey") table.insert(optionalValues, parentKey) table.insert(optionalValues, "parent") table.insert(optionalValues, parentData) end if repeatJobKey then table.insert(optionalValues, "rjk") table.insert(optionalValues, repeatJobKey) end if debounceId then table.insert(optionalValues, "deid") table.insert(optionalValues, debounceId) end rcall("HMSET", jobIdKey, "name", name, "data", data, "opts", jsonOpts, "timestamp", timestamp, "delay", delay, "priority", priority, unpack(optionalValues)) rcall("XADD", eventsKey, "*", "event", "added", "jobId", jobId, "name", name) return delay, priority end if parentKey ~= nil then if rcall("EXISTS", parentKey) ~= 1 then return -5 end parentData = cjson.encode(parent) end local jobCounter = rcall("INCR", idKey) local maxEvents = getOrSetMaxEvents(metaKey) local opts = cmsgpack.unpack(ARGV[3]) local parentDependenciesKey = args[6] local timestamp = args[4] if args[2] == "" then jobId = jobCounter .. "" -- convert to string jobIdKey = args[1] .. jobId else jobId = args[2] jobIdKey = args[1] .. jobId if rcall("EXISTS", jobIdKey) == 1 then return handleDuplicatedJob(jobIdKey, jobId, parentKey, parent, parentData, parentDependenciesKey, completedKey, eventsKey, maxEvents, timestamp) end end local deduplicationJobId = deduplicateJob(opts['de'], jobId, delayedKey, deduplicationKey, eventsKey, maxEvents, args[1], args[3], ARGV[2], opts, parentKey, parentData, parentDependenciesKey, repeatJobKey) if deduplicationJobId then return deduplicationJobId end local delay, priority = storeJob(eventsKey, jobIdKey, jobId, args[3], ARGV[2], opts, timestamp, parentKey, parentData, repeatJobKey) addDelayedJob(jobId, delayedKey, eventsKey, timestamp, maxEvents, KEYS[1], delay) -- Check if this job is a child of another job, if so add it to the parents dependencies if parentDependenciesKey ~= nil then rcall("SADD", parentDependenciesKey, jobIdKey) end return jobId `; exports2.addDelayedJob = { name: "addDelayedJob", content, keys: 6 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addJobScheduler-11.js var require_addJobScheduler_11 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addJobScheduler-11.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.addJobScheduler = void 0; var content = `--[[ Adds a job scheduler, i.e. a job factory that creates jobs based on a given schedule (repeat options). Input: KEYS[1] 'repeat' key KEYS[2] 'delayed' key KEYS[3] 'wait' key KEYS[4] 'paused' key KEYS[5] 'meta' key KEYS[6] 'prioritized' key KEYS[7] 'marker' key KEYS[8] 'id' key KEYS[9] 'events' key KEYS[10] 'pc' priority counter KEYS[11] 'active' key ARGV[1] next milliseconds ARGV[2] msgpacked options [1] name [2] tz? [3] pattern? [4] endDate? [5] every? ARGV[3] jobs scheduler id ARGV[4] Json stringified template data ARGV[5] mspacked template opts ARGV[6] msgpacked delayed opts ARGV[7] timestamp ARGV[8] prefix key ARGV[9] producer key Output: repeatableKey - OK ]] local rcall = redis.call local repeatKey = KEYS[1] local delayedKey = KEYS[2] local waitKey = KEYS[3] local pausedKey = KEYS[4] local metaKey = KEYS[5] local prioritizedKey = KEYS[6] local eventsKey = KEYS[9] local nextMillis = ARGV[1] local jobSchedulerId = ARGV[3] local templateOpts = cmsgpack.unpack(ARGV[5]) local now = tonumber(ARGV[7]) local prefixKey = ARGV[8] local jobOpts = cmsgpack.unpack(ARGV[6]) -- Includes --[[ Add delay marker if needed. ]] -- Includes --[[ Shared helper to store a job and enqueue it into the appropriate list/set. Handles delayed, prioritized, and standard (LIFO/FIFO) jobs. Emits the appropriate event after enqueuing ("delayed" or "waiting"). Returns delay, priority from storeJob. ]] -- Includes --[[ Adds a delayed job to the queue by doing the following: - Creates a new job key with the job data. - adds to delayed zset. - Emits a global event 'delayed' if the job is delayed. ]] -- Includes --[[ Add delay marker if needed. ]] -- Includes --[[ Function to return the next delayed job timestamp. ]] local function getNextDelayedTimestamp(delayedKey) local result = rcall("ZRANGE", delayedKey, 0, 0, "WITHSCORES") if #result then local nextTimestamp = tonumber(result[2]) if nextTimestamp ~= nil then return nextTimestamp / 0x1000 end end end local function addDelayMarkerIfNeeded(markerKey, delayedKey) local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- Replace the score of the marker with the newest known -- next timestamp. rcall("ZADD", markerKey, nextTimestamp, "1") end end --[[ Bake in the job id first 12 bits into the timestamp to guarantee correct execution order of delayed jobs (up to 4096 jobs per given timestamp or 4096 jobs apart per timestamp) WARNING: Jobs that are so far apart that they wrap around will cause FIFO to fail ]] local function getDelayedScore(delayedKey, timestamp, delay) local delayedTimestamp = (delay > 0 and (tonumber(timestamp) + delay)) or tonumber(timestamp) local minScore = delayedTimestamp * 0x1000 local maxScore = (delayedTimestamp + 1 ) * 0x1000 - 1 local result = rcall("ZREVRANGEBYSCORE", delayedKey, maxScore, minScore, "WITHSCORES","LIMIT", 0, 1) if #result then local currentMaxScore = tonumber(result[2]) if currentMaxScore ~= nil then if currentMaxScore >= maxScore then return maxScore, delayedTimestamp else return currentMaxScore + 1, delayedTimestamp end end end return minScore, delayedTimestamp end local function addDelayedJob(jobId, delayedKey, eventsKey, timestamp, maxEvents, markerKey, delay) local score, delayedTimestamp = getDelayedScore(delayedKey, timestamp, tonumber(delay)) rcall("ZADD", delayedKey, score, jobId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "delayed", "jobId", jobId, "delay", delayedTimestamp) -- mark that a delayed job is available addDelayMarkerIfNeeded(markerKey, delayedKey) end --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to add job considering priority. ]] -- Includes --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end --[[ Function to store a job ]] local function storeJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey) local jsonOpts = cjson.encode(opts) local delay = opts['delay'] or 0 local priority = opts['priority'] or 0 local debounceId = opts['de'] and opts['de']['id'] local optionalValues = {} if parentKey ~= nil then table.insert(optionalValues, "parentKey") table.insert(optionalValues, parentKey) table.insert(optionalValues, "parent") table.insert(optionalValues, parentData) end if repeatJobKey then table.insert(optionalValues, "rjk") table.insert(optionalValues, repeatJobKey) end if debounceId then table.insert(optionalValues, "deid") table.insert(optionalValues, debounceId) end rcall("HMSET", jobIdKey, "name", name, "data", data, "opts", jsonOpts, "timestamp", timestamp, "delay", delay, "priority", priority, unpack(optionalValues)) rcall("XADD", eventsKey, "*", "event", "added", "jobId", jobId, "name", name) return delay, priority end local function storeAndEnqueueJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey, maxEvents, waitKey, pausedKey, activeKey, metaKey, prioritizedKey, priorityCounterKey, delayedKey, markerKey) local delay, priority = storeJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey) if delay ~= 0 and delayedKey then addDelayedJob(jobId, delayedKey, eventsKey, timestamp, maxEvents, markerKey, delay) else local target, isPausedOrMaxed = getTargetQueueList(metaKey, activeKey, waitKey, pausedKey) if priority > 0 then addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) else local pushCmd = opts['lifo'] and 'RPUSH' or 'LPUSH' addJobInTargetList(target, markerKey, pushCmd, isPausedOrMaxed, jobId) end rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "waiting", "jobId", jobId) end return delay, priority end local function addJobFromScheduler(jobKey, jobId, opts, waitKey, pausedKey, activeKey, metaKey, prioritizedKey, priorityCounter, delayedKey, markerKey, eventsKey, name, maxEvents, timestamp, data, jobSchedulerId, repeatDelay) opts['delay'] = repeatDelay opts['jobId'] = jobId storeAndEnqueueJob(eventsKey, jobKey, jobId, name, data, opts, timestamp, nil, nil, jobSchedulerId, maxEvents, waitKey, pausedKey, activeKey, metaKey, prioritizedKey, priorityCounter, delayedKey, markerKey) end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function isQueuePaused(queueMetaKey) return rcall("HEXISTS", queueMetaKey, "paused") == 1 end --[[ Function to remove job. ]] -- Includes --[[ Function to remove deduplication key if needed when a job is being removed. ]] local function removeDeduplicationKeyIfNeededOnRemoval(prefixKey, jobId, deduplicationId) if deduplicationId then local deduplicationKey = prefixKey .. "de:" .. deduplicationId local currentJobId = rcall('GET', deduplicationKey) if currentJobId and currentJobId == jobId then rcall("DEL", deduplicationKey) -- Also clean up any pending dedup-next data for this dedup ID rcall("DEL", prefixKey .. "dn:" .. deduplicationId) return 1 end end end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end --[[ Check if this job has a parent. If so we will just remove it from the parent child list, but if it is the last child we should move the parent to "wait/paused" which requires code from "moveToFinished" ]] -- Includes --[[ Functions to destructure job key. Just a bit of warning, these functions may be a bit slow and affect performance significantly. ]] local getJobIdFromKey = function (jobKey) return string.match(jobKey, ".*:(.*)") end local getJobKeyPrefix = function (jobKey, jobId) return string.sub(jobKey, 0, #jobKey - #jobId) end local function _moveParentToWait(parentPrefix, parentId, emitEvent) local parentTarget, isPausedOrMaxed = getTargetQueueList(parentPrefix .. "meta", parentPrefix .. "active", parentPrefix .. "wait", parentPrefix .. "paused") addJobInTargetList(parentTarget, parentPrefix .. "marker", "RPUSH", isPausedOrMaxed, parentId) if emitEvent then local parentEventStream = parentPrefix .. "events" rcall("XADD", parentEventStream, "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function removeParentDependencyKey(jobKey, hard, parentKey, baseKey, debounceId) if parentKey then local parentDependenciesKey = parentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(parentKey) local parentPrefix = getJobKeyPrefix(parentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then -- remove parent in same queue if parentPrefix == baseKey then removeParentDependencyKey(parentKey, hard, nil, baseKey, nil) removeJobKeys(parentKey) if debounceId then rcall("DEL", parentPrefix .. "de:" .. debounceId) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end else local parentAttributes = rcall("HMGET", jobKey, "parentKey", "deid") local missedParentKey = parentAttributes[1] if( (type(missedParentKey) == "string") and missedParentKey ~= "" and (rcall("EXISTS", missedParentKey) == 1)) then local parentDependenciesKey = missedParentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(missedParentKey) local parentPrefix = getJobKeyPrefix(missedParentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then if parentPrefix == baseKey then removeParentDependencyKey(missedParentKey, hard, nil, baseKey, nil) removeJobKeys(missedParentKey) if parentAttributes[2] then rcall("DEL", parentPrefix .. "de:" .. parentAttributes[2]) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end end end return false end local function removeJob(jobId, hard, baseKey, shouldRemoveDeduplicationKey) local jobKey = baseKey .. jobId removeParentDependencyKey(jobKey, hard, nil, baseKey) if shouldRemoveDeduplicationKey then local deduplicationId = rcall("HGET", jobKey, "deid") removeDeduplicationKeyIfNeededOnRemoval(baseKey, jobId, deduplicationId) end removeJobKeys(jobKey) end --[[ Function to store a job scheduler ]] local function storeJobScheduler(schedulerId, schedulerKey, repeatKey, nextMillis, opts, templateData, templateOpts) rcall("ZADD", repeatKey, nextMillis, schedulerId) local optionalValues = {} if opts['tz'] then table.insert(optionalValues, "tz") table.insert(optionalValues, opts['tz']) end if opts['limit'] then table.insert(optionalValues, "limit") table.insert(optionalValues, opts['limit']) end if opts['pattern'] then table.insert(optionalValues, "pattern") table.insert(optionalValues, opts['pattern']) end if opts['startDate'] then table.insert(optionalValues, "startDate") table.insert(optionalValues, opts['startDate']) end if opts['endDate'] then table.insert(optionalValues, "endDate") table.insert(optionalValues, opts['endDate']) end if opts['every'] then table.insert(optionalValues, "every") table.insert(optionalValues, opts['every']) end if opts['offset'] then table.insert(optionalValues, "offset") table.insert(optionalValues, opts['offset']) else local offset = rcall("HGET", schedulerKey, "offset") if offset then table.insert(optionalValues, "offset") table.insert(optionalValues, tonumber(offset)) end end local jsonTemplateOpts = cjson.encode(templateOpts) if jsonTemplateOpts and jsonTemplateOpts ~= '{}' then table.insert(optionalValues, "opts") table.insert(optionalValues, jsonTemplateOpts) end if templateData and templateData ~= '{}' then table.insert(optionalValues, "data") table.insert(optionalValues, templateData) end table.insert(optionalValues, "ic") table.insert(optionalValues, rcall("HGET", schedulerKey, "ic") or 1) rcall("DEL", schedulerKey) -- remove all attributes and then re-insert new ones rcall("HMSET", schedulerKey, "name", opts['name'], unpack(optionalValues)) end local function getJobSchedulerEveryNextMillis(prevMillis, every, now, offset, startDate) offset = tonumber(offset) local nextMillis if not prevMillis then if startDate then -- Assuming startDate is passed as milliseconds from JavaScript nextMillis = tonumber(startDate) nextMillis = nextMillis > now and nextMillis or now else if offset and offset > 0 then -- Align to the next slot that respects the offset nextMillis = math.floor(now / every) * every + offset if nextMillis <= now then nextMillis = nextMillis + every end else nextMillis = now end end else nextMillis = prevMillis + every -- check if we may have missed some iterations if nextMillis < now then -- Use the same offset-aware alignment as the initial branch -- above so a non-zero offset is preserved across catch-ups -- instead of being flattened to (slot + every). When the -- aligned slot is itself still in the past, advance by one -- full interval; otherwise the aligned slot is the next -- iteration. local aligned = math.floor(now / every) * every + (offset or 0) if aligned <= now then nextMillis = aligned + every else nextMillis = aligned end end end if not offset or offset == 0 then local timeSlot = math.floor(nextMillis / every) * every; offset = nextMillis - timeSlot; end -- Return a tuple nextMillis, offset return math.floor(nextMillis), math.floor(offset) end -- If we are overriding a repeatable job we must delete the delayed job for -- the next iteration. local schedulerKey = repeatKey .. ":" .. jobSchedulerId local maxEvents = getOrSetMaxEvents(metaKey) local templateData = ARGV[4] local prevMillis = rcall("ZSCORE", repeatKey, jobSchedulerId) if prevMillis then prevMillis = tonumber(prevMillis) end local schedulerOpts = cmsgpack.unpack(ARGV[2]) local every = schedulerOpts['every'] -- For backwards compatibility we also check the offset from the job itself. -- could be removed in future major versions. local jobOffset = jobOpts['repeat'] and jobOpts['repeat']['offset'] or 0 local offset = schedulerOpts['offset'] or jobOffset or 0 local newOffset = offset local updatedEvery = false if every then -- if we changed the 'every' value we need to reset millis to nil local millis = prevMillis if prevMillis then local prevEvery = tonumber(rcall("HGET", schedulerKey, "every")) if prevEvery ~= every then millis = nil updatedEvery = true end end local startDate = schedulerOpts['startDate'] nextMillis, newOffset = getJobSchedulerEveryNextMillis(millis, every, now, offset, startDate) end local function removeJobFromScheduler(prefixKey, delayedKey, prioritizedKey, waitKey, pausedKey, jobId, metaKey, eventsKey) if rcall("ZSCORE", delayedKey, jobId) then removeJob(jobId, true, prefixKey, true --[[remove debounce key]] ) rcall("ZREM", delayedKey, jobId) return true elseif rcall("ZSCORE", prioritizedKey, jobId) then removeJob(jobId, true, prefixKey, true --[[remove debounce key]] ) rcall("ZREM", prioritizedKey, jobId) return true else local pausedOrWaitKey = waitKey if isQueuePaused(metaKey) then pausedOrWaitKey = pausedKey end if rcall("LREM", pausedOrWaitKey, 1, jobId) > 0 then removeJob(jobId, true, prefixKey, true --[[remove debounce key]] ) return true end end return false end local removedPrevJob = false if prevMillis then local currentJobId = "repeat:" .. jobSchedulerId .. ":" .. prevMillis local currentJobKey = schedulerKey .. ":" .. prevMillis -- In theory it should always exist the currentJobKey if there is a prevMillis unless something has -- gone really wrong. if rcall("EXISTS", currentJobKey) == 1 then removedPrevJob = removeJobFromScheduler(prefixKey, delayedKey, prioritizedKey, waitKey, pausedKey, currentJobId, metaKey, eventsKey) end end if removedPrevJob then -- The jobs has been removed and we want to replace it, so lets use the same millis. if every and not updatedEvery then nextMillis = prevMillis end else -- Special case where no job was removed, and we need to add the next iteration. schedulerOpts['offset'] = newOffset end -- Check for job ID collision with existing jobs (in any state) local jobId = "repeat:" .. jobSchedulerId .. ":" .. nextMillis local jobKey = prefixKey .. jobId -- If there's already a job with this ID, in a state -- that is not updatable (active, completed, failed) we must -- handle the collision local hasCollision = false if rcall("EXISTS", jobKey) == 1 then if every then -- For 'every' case: walk forward through subsequent slots -- until we find a free one. Stale completed/failed jobs from -- a previous scheduler under the same id can occupy several -- consecutive slots (issue #3063), so a single retry is not -- enough. The scan is bounded so we don't spin if the -- scheduler is genuinely contested. local maxSlotScans = 32 local slotsScanned = 0 local jobExists repeat nextMillis = nextMillis + every jobId = "repeat:" .. jobSchedulerId .. ":" .. nextMillis jobKey = prefixKey .. jobId slotsScanned = slotsScanned + 1 jobExists = rcall("EXISTS", jobKey) until jobExists == 0 or slotsScanned >= maxSlotScans if jobExists == 1 then -- Every scanned slot still has a job, return error code return -11 -- SchedulerJobSlotsBusy end else hasCollision = true end end local delay = nextMillis - now -- Fast Clamp delay to minimum of 0 if delay < 0 then delay = 0 end local nextJobKey = schedulerKey .. ":" .. nextMillis if not hasCollision or removedPrevJob then -- jobId already calculated above during collision check storeJobScheduler(jobSchedulerId, schedulerKey, repeatKey, nextMillis, schedulerOpts, templateData, templateOpts) rcall("INCR", KEYS[8]) addJobFromScheduler(nextJobKey, jobId, jobOpts, waitKey, pausedKey, KEYS[11], metaKey, prioritizedKey, KEYS[10], delayedKey, KEYS[7], eventsKey, schedulerOpts['name'], maxEvents, now, templateData, jobSchedulerId, delay) elseif hasCollision then -- For 'pattern' case: return error code return -10 -- SchedulerJobIdCollision end if ARGV[9] ~= "" then rcall("HSET", ARGV[9], "nrjid", jobId) end return {jobId .. "", delay} `; exports2.addJobScheduler = { name: "addJobScheduler", content, keys: 11 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addLog-2.js var require_addLog_2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addLog-2.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.addLog = void 0; var content = `--[[ Add job log Input: KEYS[1] job id key KEYS[2] job logs key ARGV[1] id ARGV[2] log ARGV[3] keepLogs Output: -1 - Missing job. ]] local rcall = redis.call if rcall("EXISTS", KEYS[1]) == 1 then -- // Make sure job exists local logCount = rcall("RPUSH", KEYS[2], ARGV[2]) if ARGV[3] ~= '' then local keepLogs = tonumber(ARGV[3]) rcall("LTRIM", KEYS[2], -keepLogs, -1) return math.min(keepLogs, logCount) end return logCount else return -1 end `; exports2.addLog = { name: "addLog", content, keys: 2 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addParentJob-6.js var require_addParentJob_6 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addParentJob-6.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.addParentJob = void 0; var content = `--[[ Adds a parent job to the queue by doing the following: - Increases the job counter if needed. - Creates a new job key with the job data. - adds the job to the waiting-children zset Input: KEYS[1] 'meta' KEYS[2] 'id' KEYS[3] 'delayed' KEYS[4] 'waiting-children' KEYS[5] 'completed' KEYS[6] events stream key ARGV[1] msgpacked arguments array [1] key prefix, [2] custom id (will not generate one automatically) [3] name [4] timestamp [5] parentKey? [6] parent dependencies key. [7] parent? {id, queueKey} [8] repeat job key [9] deduplication key ARGV[2] Json stringified job data ARGV[3] msgpacked options Output: jobId - OK -5 - Missing parent key ]] local metaKey = KEYS[1] local idKey = KEYS[2] local delayedKey = KEYS[3] local completedKey = KEYS[5] local eventsKey = KEYS[6] local jobId local jobIdKey local rcall = redis.call local args = cmsgpack.unpack(ARGV[1]) local data = ARGV[2] local opts = cmsgpack.unpack(ARGV[3]) local parentKey = args[5] local parent = args[7] local repeatJobKey = args[8] local deduplicationKey = args[9] local parentData -- Includes --[[ Function to deduplicate a job. ]] --[[ Function to set the deduplication key for a job. Uses TTL from deduplication opts if provided. ]] local function setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) local ttl = deduplicationOpts and deduplicationOpts['ttl'] if ttl and ttl > 0 then rcall('SET', deduplicationKey, jobId, 'PX', ttl) else rcall('SET', deduplicationKey, jobId) end end --[[ Function to store a deduplicated next job if the existing job is active and keepLastIfActive is set. When the active job finishes, the stored proto-job is used to create a real job in the queue. Returns true if the proto-job was stored, false otherwise. ]] --[[ Function to check if an item belongs to a list. ]] local function checkItemInList(list, item) for _, v in pairs(list) do if v == item then return 1 end end return nil end local function storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) if deduplicationOpts['keepLastIfActive'] and currentDebounceJobId then local activeKey = prefix .. "active" local activeItems = rcall('LRANGE', activeKey, 0, -1) if checkItemInList(activeItems, currentDebounceJobId) then local deduplicationNextKey = prefix .. "dn:" .. deduplicationId local fields = {'name', jobName, 'data', jobData, 'opts', cjson.encode(fullOpts), 'jid', jobId} if parentKey then fields[#fields+1] = 'pk' fields[#fields+1] = parentKey end if parentData then fields[#fields+1] = 'pd' fields[#fields+1] = parentData end if parentDependenciesKey then fields[#fields+1] = 'pdk' fields[#fields+1] = parentDependenciesKey end if repeatJobKey then fields[#fields+1] = 'rjk' fields[#fields+1] = repeatJobKey end rcall('DEL', deduplicationNextKey) rcall('HSET', deduplicationNextKey, unpack(fields)) -- Ensure the dedup key does not expire while the job is active, -- so subsequent adds always hit the dedup path and never bypass -- the active-check because of a TTL expiry. local deduplicationKey = prefix .. "de:" .. deduplicationId rcall('PERSIST', deduplicationKey) -- TODO remove debounced event in next breaking change rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return true end end return false end local function deduplicateJobWithoutReplace(deduplicationId, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents, prefix, jobName, jobData, fullOpts, parentKey, parentData, parentDependenciesKey, repeatJobKey) local ttl = deduplicationOpts['ttl'] local deduplicationKeyExists if ttl and ttl > 0 then if deduplicationOpts['extend'] then local currentDebounceJobId = rcall('GET', deduplicationKey) if currentDebounceJobId then if storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) then return currentDebounceJobId end if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, currentDebounceJobId) else setDeduplicationKey(deduplicationKey, currentDebounceJobId, deduplicationOpts) end rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return currentDebounceJobId else if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, jobId) else setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) end return end else if deduplicationOpts['keepLastIfActive'] then deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX') else deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'PX', ttl, 'NX') end end else deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX') end if deduplicationKeyExists then local currentDebounceJobId = rcall('GET', deduplicationKey) if storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) then return currentDebounceJobId end -- TODO remove debounced event in next breaking change rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return currentDebounceJobId end end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to handle the case when job is duplicated. ]] -- Includes --[[ This function is used to update the parent's dependencies if the job is already completed and about to be ignored. The parent must get its dependencies updated to avoid the parent job being stuck forever in the waiting-children state. ]] -- Includes --[[ Validate and move or add dependencies to parent. ]] -- Includes --[[ Validate and move parent to a wait status (waiting, delayed or prioritized) if no pending dependencies. ]] -- Includes --[[ Validate and move parent to a wait status (waiting, delayed or prioritized) if needed. ]] -- Includes --[[ Move parent to a wait status (wait, prioritized or delayed) ]] -- Includes --[[ Add delay marker if needed. ]] -- Includes --[[ Function to return the next delayed job timestamp. ]] local function getNextDelayedTimestamp(delayedKey) local result = rcall("ZRANGE", delayedKey, 0, 0, "WITHSCORES") if #result then local nextTimestamp = tonumber(result[2]) if nextTimestamp ~= nil then return nextTimestamp / 0x1000 end end end local function addDelayMarkerIfNeeded(markerKey, delayedKey) local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- Replace the score of the marker with the newest known -- next timestamp. rcall("ZADD", markerKey, nextTimestamp, "1") end end --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to add job considering priority. ]] -- Includes --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to check if queue is paused or maxed (since an empty list and !EXISTS are not really the same). ]] local function isQueuePausedOrMaxed(queueMetaKey, activeKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency") if queueAttributes[1] then return true else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) return activeCount >= tonumber(queueAttributes[2]) end end return false end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local function moveParentToWait(parentQueueKey, parentKey, parentId, timestamp) local parentWaitKey = parentQueueKey .. ":wait" local parentPausedKey = parentQueueKey .. ":paused" local parentActiveKey = parentQueueKey .. ":active" local parentMetaKey = parentQueueKey .. ":meta" local parentMarkerKey = parentQueueKey .. ":marker" local jobAttributes = rcall("HMGET", parentKey, "priority", "delay") local priority = tonumber(jobAttributes[1]) or 0 local delay = tonumber(jobAttributes[2]) or 0 if delay > 0 then local delayedTimestamp = tonumber(timestamp) + delay local score = delayedTimestamp * 0x1000 local parentDelayedKey = parentQueueKey .. ":delayed" rcall("ZADD", parentDelayedKey, score, parentId) rcall("XADD", parentQueueKey .. ":events", "*", "event", "delayed", "jobId", parentId, "delay", delayedTimestamp) addDelayMarkerIfNeeded(parentMarkerKey, parentDelayedKey) else if priority == 0 then local parentTarget, isParentPausedOrMaxed = getTargetQueueList(parentMetaKey, parentActiveKey, parentWaitKey, parentPausedKey) addJobInTargetList(parentTarget, parentMarkerKey, "RPUSH", isParentPausedOrMaxed, parentId) else local isPausedOrMaxed = isQueuePausedOrMaxed(parentMetaKey, parentActiveKey) addJobWithPriority(parentMarkerKey, parentQueueKey .. ":prioritized", priority, parentId, parentQueueKey .. ":pc", isPausedOrMaxed) end rcall("XADD", parentQueueKey .. ":events", "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function moveParentToWaitIfNeeded(parentQueueKey, parentKey, parentId, timestamp) if rcall("EXISTS", parentKey) == 1 then local parentWaitingChildrenKey = parentQueueKey .. ":waiting-children" if rcall("ZSCORE", parentWaitingChildrenKey, parentId) then rcall("ZREM", parentWaitingChildrenKey, parentId) moveParentToWait(parentQueueKey, parentKey, parentId, timestamp) end end end local function moveParentToWaitIfNoPendingDependencies(parentQueueKey, parentDependenciesKey, parentKey, parentId, timestamp) local doNotHavePendingDependencies = rcall("SCARD", parentDependenciesKey) == 0 if doNotHavePendingDependencies then moveParentToWaitIfNeeded(parentQueueKey, parentKey, parentId, timestamp) end end local function updateParentDepsIfNeeded(parentKey, parentQueueKey, parentDependenciesKey, parentId, jobIdKey, returnvalue, timestamp ) local processedSet = parentKey .. ":processed" rcall("HSET", processedSet, jobIdKey, returnvalue) moveParentToWaitIfNoPendingDependencies(parentQueueKey, parentDependenciesKey, parentKey, parentId, timestamp) end local function updateExistingJobsParent(parentKey, parent, parentData, parentDependenciesKey, completedKey, jobIdKey, jobId, timestamp) if parentKey ~= nil then if rcall("ZSCORE", completedKey, jobId) then local returnvalue = rcall("HGET", jobIdKey, "returnvalue") updateParentDepsIfNeeded(parentKey, parent['queueKey'], parentDependenciesKey, parent['id'], jobIdKey, returnvalue, timestamp) else if parentDependenciesKey ~= nil then rcall("SADD", parentDependenciesKey, jobIdKey) end end rcall("HMSET", jobIdKey, "parentKey", parentKey, "parent", parentData) end end local function handleDuplicatedJob(jobKey, jobId, currentParentKey, currentParent, parentData, parentDependenciesKey, completedKey, eventsKey, maxEvents, timestamp) local existedParentKey = rcall("HGET", jobKey, "parentKey") if not existedParentKey or existedParentKey == currentParentKey then updateExistingJobsParent(currentParentKey, currentParent, parentData, parentDependenciesKey, completedKey, jobKey, jobId, timestamp) else if currentParentKey ~= nil and currentParentKey ~= existedParentKey and (rcall("EXISTS", existedParentKey) == 1) then return -7 end end rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "duplicated", "jobId", jobId) return jobId .. "" -- convert to string end --[[ Function to store a job ]] local function storeJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey) local jsonOpts = cjson.encode(opts) local delay = opts['delay'] or 0 local priority = opts['priority'] or 0 local debounceId = opts['de'] and opts['de']['id'] local optionalValues = {} if parentKey ~= nil then table.insert(optionalValues, "parentKey") table.insert(optionalValues, parentKey) table.insert(optionalValues, "parent") table.insert(optionalValues, parentData) end if repeatJobKey then table.insert(optionalValues, "rjk") table.insert(optionalValues, repeatJobKey) end if debounceId then table.insert(optionalValues, "deid") table.insert(optionalValues, debounceId) end rcall("HMSET", jobIdKey, "name", name, "data", data, "opts", jsonOpts, "timestamp", timestamp, "delay", delay, "priority", priority, unpack(optionalValues)) rcall("XADD", eventsKey, "*", "event", "added", "jobId", jobId, "name", name) return delay, priority end if parentKey ~= nil then if rcall("EXISTS", parentKey) ~= 1 then return -5 end parentData = cjson.encode(parent) end local jobCounter = rcall("INCR", idKey) local maxEvents = getOrSetMaxEvents(metaKey) local parentDependenciesKey = args[6] local timestamp = args[4] if args[2] == "" then jobId = jobCounter .. "" -- convert to string jobIdKey = args[1] .. jobId else jobId = args[2] jobIdKey = args[1] .. jobId if rcall("EXISTS", jobIdKey) == 1 then return handleDuplicatedJob(jobIdKey, jobId, parentKey, parent, parentData, parentDependenciesKey, completedKey, eventsKey, maxEvents, timestamp) end end local deduplicationId = opts['de'] and opts['de']['id'] if deduplicationId then local deduplicationJobId = deduplicateJobWithoutReplace(deduplicationId, opts['de'], jobId, deduplicationKey, eventsKey, maxEvents, args[1], args[3], ARGV[2], opts, parentKey, parentData, parentDependenciesKey, repeatJobKey) if deduplicationJobId then return deduplicationJobId end end -- Store the job. storeJob(eventsKey, jobIdKey, jobId, args[3], ARGV[2], opts, timestamp, parentKey, parentData, repeatJobKey) local waitChildrenKey = KEYS[4] rcall("ZADD", waitChildrenKey, timestamp, jobId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "waiting-children", "jobId", jobId) -- Check if this job is a child of another job, if so add it to the parents dependencies if parentDependenciesKey ~= nil then rcall("SADD", parentDependenciesKey, jobIdKey) end return jobId `; exports2.addParentJob = { name: "addParentJob", content, keys: 6 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addPrioritizedJob-9.js var require_addPrioritizedJob_9 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addPrioritizedJob-9.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.addPrioritizedJob = void 0; var content = `--[[ Adds a prioritized job to the queue by doing the following: - Increases the job counter if needed. - Creates a new job key with the job data. - Adds the job to the "added" list so that workers gets notified. Input: KEYS[1] 'marker', KEYS[2] 'meta' KEYS[3] 'id' KEYS[4] 'prioritized' KEYS[5] 'delayed' KEYS[6] 'completed' KEYS[7] 'active' KEYS[8] events stream key KEYS[9] 'pc' priority counter ARGV[1] msgpacked arguments array [1] key prefix, [2] custom id (will not generate one automatically) [3] name [4] timestamp [5] parentKey? [6] parent dependencies key. [7] parent? {id, queueKey} [8] repeat job key [9] deduplication key ARGV[2] Json stringified job data ARGV[3] msgpacked options Output: jobId - OK -5 - Missing parent key ]] local metaKey = KEYS[2] local idKey = KEYS[3] local priorityKey = KEYS[4] local completedKey = KEYS[6] local activeKey = KEYS[7] local eventsKey = KEYS[8] local priorityCounterKey = KEYS[9] local jobId local jobIdKey local rcall = redis.call local args = cmsgpack.unpack(ARGV[1]) local data = ARGV[2] local opts = cmsgpack.unpack(ARGV[3]) local parentKey = args[5] local parent = args[7] local repeatJobKey = args[8] local deduplicationKey = args[9] local parentData -- Includes --[[ Function to add job considering priority. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to debounce a job. ]] -- Includes --[[ Function to deduplicate a job. ]] --[[ Function to set the deduplication key for a job. Uses TTL from deduplication opts if provided. ]] local function setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) local ttl = deduplicationOpts and deduplicationOpts['ttl'] if ttl and ttl > 0 then rcall('SET', deduplicationKey, jobId, 'PX', ttl) else rcall('SET', deduplicationKey, jobId) end end --[[ Function to store a deduplicated next job if the existing job is active and keepLastIfActive is set. When the active job finishes, the stored proto-job is used to create a real job in the queue. Returns true if the proto-job was stored, false otherwise. ]] --[[ Function to check if an item belongs to a list. ]] local function checkItemInList(list, item) for _, v in pairs(list) do if v == item then return 1 end end return nil end local function storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) if deduplicationOpts['keepLastIfActive'] and currentDebounceJobId then local activeKey = prefix .. "active" local activeItems = rcall('LRANGE', activeKey, 0, -1) if checkItemInList(activeItems, currentDebounceJobId) then local deduplicationNextKey = prefix .. "dn:" .. deduplicationId local fields = {'name', jobName, 'data', jobData, 'opts', cjson.encode(fullOpts), 'jid', jobId} if parentKey then fields[#fields+1] = 'pk' fields[#fields+1] = parentKey end if parentData then fields[#fields+1] = 'pd' fields[#fields+1] = parentData end if parentDependenciesKey then fields[#fields+1] = 'pdk' fields[#fields+1] = parentDependenciesKey end if repeatJobKey then fields[#fields+1] = 'rjk' fields[#fields+1] = repeatJobKey end rcall('DEL', deduplicationNextKey) rcall('HSET', deduplicationNextKey, unpack(fields)) -- Ensure the dedup key does not expire while the job is active, -- so subsequent adds always hit the dedup path and never bypass -- the active-check because of a TTL expiry. local deduplicationKey = prefix .. "de:" .. deduplicationId rcall('PERSIST', deduplicationKey) -- TODO remove debounced event in next breaking change rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return true end end return false end local function deduplicateJobWithoutReplace(deduplicationId, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents, prefix, jobName, jobData, fullOpts, parentKey, parentData, parentDependenciesKey, repeatJobKey) local ttl = deduplicationOpts['ttl'] local deduplicationKeyExists if ttl and ttl > 0 then if deduplicationOpts['extend'] then local currentDebounceJobId = rcall('GET', deduplicationKey) if currentDebounceJobId then if storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) then return currentDebounceJobId end if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, currentDebounceJobId) else setDeduplicationKey(deduplicationKey, currentDebounceJobId, deduplicationOpts) end rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return currentDebounceJobId else if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, jobId) else setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) end return end else if deduplicationOpts['keepLastIfActive'] then deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX') else deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'PX', ttl, 'NX') end end else deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX') end if deduplicationKeyExists then local currentDebounceJobId = rcall('GET', deduplicationKey) if storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) then return currentDebounceJobId end -- TODO remove debounced event in next breaking change rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return currentDebounceJobId end end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end local function removeDelayedJob(delayedKey, deduplicationKey, eventsKey, maxEvents, currentDeduplicatedJobId, jobId, deduplicationId, prefix) if rcall("ZREM", delayedKey, currentDeduplicatedJobId) > 0 then removeJobKeys(prefix .. currentDeduplicatedJobId) rcall("XADD", eventsKey, "*", "event", "removed", "jobId", currentDeduplicatedJobId, "prev", "delayed") -- TODO remove debounced event in next breaking change rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", jobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", jobId, "deduplicationId", deduplicationId, "deduplicatedJobId", currentDeduplicatedJobId) return true end return false end local function deduplicateJob(deduplicationOpts, jobId, delayedKey, deduplicationKey, eventsKey, maxEvents, prefix, jobName, jobData, fullOpts, parentKey, parentData, parentDependenciesKey, repeatJobKey) local deduplicationId = deduplicationOpts and deduplicationOpts['id'] if deduplicationId then if deduplicationOpts['replace'] then local currentDebounceJobId = rcall('GET', deduplicationKey) if currentDebounceJobId then local isRemoved = removeDelayedJob(delayedKey, deduplicationKey, eventsKey, maxEvents, currentDebounceJobId, jobId, deduplicationId, prefix) if isRemoved then if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, jobId) else local ttl = deduplicationOpts['ttl'] if not deduplicationOpts['extend'] and ttl and ttl > 0 then rcall('SET', deduplicationKey, jobId, 'KEEPTTL') else setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) end end return else storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) return currentDebounceJobId end else if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, jobId) else setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) end return end else return deduplicateJobWithoutReplace(deduplicationId, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents, prefix, jobName, jobData, fullOpts, parentKey, parentData, parentDependenciesKey, repeatJobKey) end end end --[[ Function to store a job ]] local function storeJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey) local jsonOpts = cjson.encode(opts) local delay = opts['delay'] or 0 local priority = opts['priority'] or 0 local debounceId = opts['de'] and opts['de']['id'] local optionalValues = {} if parentKey ~= nil then table.insert(optionalValues, "parentKey") table.insert(optionalValues, parentKey) table.insert(optionalValues, "parent") table.insert(optionalValues, parentData) end if repeatJobKey then table.insert(optionalValues, "rjk") table.insert(optionalValues, repeatJobKey) end if debounceId then table.insert(optionalValues, "deid") table.insert(optionalValues, debounceId) end rcall("HMSET", jobIdKey, "name", name, "data", data, "opts", jsonOpts, "timestamp", timestamp, "delay", delay, "priority", priority, unpack(optionalValues)) rcall("XADD", eventsKey, "*", "event", "added", "jobId", jobId, "name", name) return delay, priority end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to handle the case when job is duplicated. ]] -- Includes --[[ This function is used to update the parent's dependencies if the job is already completed and about to be ignored. The parent must get its dependencies updated to avoid the parent job being stuck forever in the waiting-children state. ]] -- Includes --[[ Validate and move or add dependencies to parent. ]] -- Includes --[[ Validate and move parent to a wait status (waiting, delayed or prioritized) if no pending dependencies. ]] -- Includes --[[ Validate and move parent to a wait status (waiting, delayed or prioritized) if needed. ]] -- Includes --[[ Move parent to a wait status (wait, prioritized or delayed) ]] -- Includes --[[ Add delay marker if needed. ]] -- Includes --[[ Function to return the next delayed job timestamp. ]] local function getNextDelayedTimestamp(delayedKey) local result = rcall("ZRANGE", delayedKey, 0, 0, "WITHSCORES") if #result then local nextTimestamp = tonumber(result[2]) if nextTimestamp ~= nil then return nextTimestamp / 0x1000 end end end local function addDelayMarkerIfNeeded(markerKey, delayedKey) local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- Replace the score of the marker with the newest known -- next timestamp. rcall("ZADD", markerKey, nextTimestamp, "1") end end --[[ Function to add job in target list and add marker if needed. ]] -- Includes local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to check if queue is paused or maxed (since an empty list and !EXISTS are not really the same). ]] local function isQueuePausedOrMaxed(queueMetaKey, activeKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency") if queueAttributes[1] then return true else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) return activeCount >= tonumber(queueAttributes[2]) end end return false end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local function moveParentToWait(parentQueueKey, parentKey, parentId, timestamp) local parentWaitKey = parentQueueKey .. ":wait" local parentPausedKey = parentQueueKey .. ":paused" local parentActiveKey = parentQueueKey .. ":active" local parentMetaKey = parentQueueKey .. ":meta" local parentMarkerKey = parentQueueKey .. ":marker" local jobAttributes = rcall("HMGET", parentKey, "priority", "delay") local priority = tonumber(jobAttributes[1]) or 0 local delay = tonumber(jobAttributes[2]) or 0 if delay > 0 then local delayedTimestamp = tonumber(timestamp) + delay local score = delayedTimestamp * 0x1000 local parentDelayedKey = parentQueueKey .. ":delayed" rcall("ZADD", parentDelayedKey, score, parentId) rcall("XADD", parentQueueKey .. ":events", "*", "event", "delayed", "jobId", parentId, "delay", delayedTimestamp) addDelayMarkerIfNeeded(parentMarkerKey, parentDelayedKey) else if priority == 0 then local parentTarget, isParentPausedOrMaxed = getTargetQueueList(parentMetaKey, parentActiveKey, parentWaitKey, parentPausedKey) addJobInTargetList(parentTarget, parentMarkerKey, "RPUSH", isParentPausedOrMaxed, parentId) else local isPausedOrMaxed = isQueuePausedOrMaxed(parentMetaKey, parentActiveKey) addJobWithPriority(parentMarkerKey, parentQueueKey .. ":prioritized", priority, parentId, parentQueueKey .. ":pc", isPausedOrMaxed) end rcall("XADD", parentQueueKey .. ":events", "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function moveParentToWaitIfNeeded(parentQueueKey, parentKey, parentId, timestamp) if rcall("EXISTS", parentKey) == 1 then local parentWaitingChildrenKey = parentQueueKey .. ":waiting-children" if rcall("ZSCORE", parentWaitingChildrenKey, parentId) then rcall("ZREM", parentWaitingChildrenKey, parentId) moveParentToWait(parentQueueKey, parentKey, parentId, timestamp) end end end local function moveParentToWaitIfNoPendingDependencies(parentQueueKey, parentDependenciesKey, parentKey, parentId, timestamp) local doNotHavePendingDependencies = rcall("SCARD", parentDependenciesKey) == 0 if doNotHavePendingDependencies then moveParentToWaitIfNeeded(parentQueueKey, parentKey, parentId, timestamp) end end local function updateParentDepsIfNeeded(parentKey, parentQueueKey, parentDependenciesKey, parentId, jobIdKey, returnvalue, timestamp ) local processedSet = parentKey .. ":processed" rcall("HSET", processedSet, jobIdKey, returnvalue) moveParentToWaitIfNoPendingDependencies(parentQueueKey, parentDependenciesKey, parentKey, parentId, timestamp) end local function updateExistingJobsParent(parentKey, parent, parentData, parentDependenciesKey, completedKey, jobIdKey, jobId, timestamp) if parentKey ~= nil then if rcall("ZSCORE", completedKey, jobId) then local returnvalue = rcall("HGET", jobIdKey, "returnvalue") updateParentDepsIfNeeded(parentKey, parent['queueKey'], parentDependenciesKey, parent['id'], jobIdKey, returnvalue, timestamp) else if parentDependenciesKey ~= nil then rcall("SADD", parentDependenciesKey, jobIdKey) end end rcall("HMSET", jobIdKey, "parentKey", parentKey, "parent", parentData) end end local function handleDuplicatedJob(jobKey, jobId, currentParentKey, currentParent, parentData, parentDependenciesKey, completedKey, eventsKey, maxEvents, timestamp) local existedParentKey = rcall("HGET", jobKey, "parentKey") if not existedParentKey or existedParentKey == currentParentKey then updateExistingJobsParent(currentParentKey, currentParent, parentData, parentDependenciesKey, completedKey, jobKey, jobId, timestamp) else if currentParentKey ~= nil and currentParentKey ~= existedParentKey and (rcall("EXISTS", existedParentKey) == 1) then return -7 end end rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "duplicated", "jobId", jobId) return jobId .. "" -- convert to string end if parentKey ~= nil then if rcall("EXISTS", parentKey) ~= 1 then return -5 end parentData = cjson.encode(parent) end local jobCounter = rcall("INCR", idKey) local maxEvents = getOrSetMaxEvents(metaKey) local parentDependenciesKey = args[6] local timestamp = args[4] if args[2] == "" then jobId = jobCounter .. "" -- convert to string jobIdKey = args[1] .. jobId else jobId = args[2] jobIdKey = args[1] .. jobId if rcall("EXISTS", jobIdKey) == 1 then return handleDuplicatedJob(jobIdKey, jobId, parentKey, parent, parentData, parentDependenciesKey, completedKey, eventsKey, maxEvents, timestamp) end end local deduplicationJobId = deduplicateJob(opts['de'], jobId, KEYS[5], deduplicationKey, eventsKey, maxEvents, args[1], args[3], ARGV[2], opts, parentKey, parentData, parentDependenciesKey, repeatJobKey) if deduplicationJobId then return deduplicationJobId end -- Store the job. local delay, priority = storeJob(eventsKey, jobIdKey, jobId, args[3], ARGV[2], opts, timestamp, parentKey, parentData, repeatJobKey) -- Add the job to the prioritized set local isPausedOrMaxed = isQueuePausedOrMaxed(metaKey, activeKey) addJobWithPriority( KEYS[1], priorityKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) -- Emit waiting event rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "waiting", "jobId", jobId) -- Check if this job is a child of another job, if so add it to the parents dependencies if parentDependenciesKey ~= nil then rcall("SADD", parentDependenciesKey, jobIdKey) end return jobId `; exports2.addPrioritizedJob = { name: "addPrioritizedJob", content, keys: 9 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addRepeatableJob-2.js var require_addRepeatableJob_2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addRepeatableJob-2.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.addRepeatableJob = void 0; var content = `--[[ Adds a repeatable job Input: KEYS[1] 'repeat' key KEYS[2] 'delayed' key ARGV[1] next milliseconds ARGV[2] msgpacked options [1] name [2] tz? [3] pattern? [4] endDate? [5] every? ARGV[3] legacy custom key TODO: remove this logic in next breaking change ARGV[4] custom key ARGV[5] prefix key Output: repeatableKey - OK ]] local rcall = redis.call local repeatKey = KEYS[1] local delayedKey = KEYS[2] local nextMillis = ARGV[1] local legacyCustomKey = ARGV[3] local customKey = ARGV[4] local prefixKey = ARGV[5] -- Includes --[[ Function to remove job. ]] -- Includes --[[ Function to remove deduplication key if needed when a job is being removed. ]] local function removeDeduplicationKeyIfNeededOnRemoval(prefixKey, jobId, deduplicationId) if deduplicationId then local deduplicationKey = prefixKey .. "de:" .. deduplicationId local currentJobId = rcall('GET', deduplicationKey) if currentJobId and currentJobId == jobId then rcall("DEL", deduplicationKey) -- Also clean up any pending dedup-next data for this dedup ID rcall("DEL", prefixKey .. "dn:" .. deduplicationId) return 1 end end end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end --[[ Check if this job has a parent. If so we will just remove it from the parent child list, but if it is the last child we should move the parent to "wait/paused" which requires code from "moveToFinished" ]] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Functions to destructure job key. Just a bit of warning, these functions may be a bit slow and affect performance significantly. ]] local getJobIdFromKey = function (jobKey) return string.match(jobKey, ".*:(.*)") end local getJobKeyPrefix = function (jobKey, jobId) return string.sub(jobKey, 0, #jobKey - #jobId) end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local function _moveParentToWait(parentPrefix, parentId, emitEvent) local parentTarget, isPausedOrMaxed = getTargetQueueList(parentPrefix .. "meta", parentPrefix .. "active", parentPrefix .. "wait", parentPrefix .. "paused") addJobInTargetList(parentTarget, parentPrefix .. "marker", "RPUSH", isPausedOrMaxed, parentId) if emitEvent then local parentEventStream = parentPrefix .. "events" rcall("XADD", parentEventStream, "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function removeParentDependencyKey(jobKey, hard, parentKey, baseKey, debounceId) if parentKey then local parentDependenciesKey = parentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(parentKey) local parentPrefix = getJobKeyPrefix(parentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then -- remove parent in same queue if parentPrefix == baseKey then removeParentDependencyKey(parentKey, hard, nil, baseKey, nil) removeJobKeys(parentKey) if debounceId then rcall("DEL", parentPrefix .. "de:" .. debounceId) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end else local parentAttributes = rcall("HMGET", jobKey, "parentKey", "deid") local missedParentKey = parentAttributes[1] if( (type(missedParentKey) == "string") and missedParentKey ~= "" and (rcall("EXISTS", missedParentKey) == 1)) then local parentDependenciesKey = missedParentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(missedParentKey) local parentPrefix = getJobKeyPrefix(missedParentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then if parentPrefix == baseKey then removeParentDependencyKey(missedParentKey, hard, nil, baseKey, nil) removeJobKeys(missedParentKey) if parentAttributes[2] then rcall("DEL", parentPrefix .. "de:" .. parentAttributes[2]) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end end end return false end local function removeJob(jobId, hard, baseKey, shouldRemoveDeduplicationKey) local jobKey = baseKey .. jobId removeParentDependencyKey(jobKey, hard, nil, baseKey) if shouldRemoveDeduplicationKey then local deduplicationId = rcall("HGET", jobKey, "deid") removeDeduplicationKeyIfNeededOnRemoval(baseKey, jobId, deduplicationId) end removeJobKeys(jobKey) end local function storeRepeatableJob(repeatKey, customKey, nextMillis, rawOpts) rcall("ZADD", repeatKey, nextMillis, customKey) local opts = cmsgpack.unpack(rawOpts) local optionalValues = {} if opts['tz'] then table.insert(optionalValues, "tz") table.insert(optionalValues, opts['tz']) end if opts['pattern'] then table.insert(optionalValues, "pattern") table.insert(optionalValues, opts['pattern']) end if opts['endDate'] then table.insert(optionalValues, "endDate") table.insert(optionalValues, opts['endDate']) end if opts['every'] then table.insert(optionalValues, "every") table.insert(optionalValues, opts['every']) end rcall("HMSET", repeatKey .. ":" .. customKey, "name", opts['name'], unpack(optionalValues)) return customKey end -- If we are overriding a repeatable job we must delete the delayed job for -- the next iteration. local prevMillis = rcall("ZSCORE", repeatKey, customKey) if prevMillis then local delayedJobId = "repeat:" .. customKey .. ":" .. prevMillis local nextDelayedJobId = repeatKey .. ":" .. customKey .. ":" .. nextMillis if rcall("ZSCORE", delayedKey, delayedJobId) and rcall("EXISTS", nextDelayedJobId) ~= 1 then removeJob(delayedJobId, true, prefixKey, true --[[remove debounce key]]) rcall("ZREM", delayedKey, delayedJobId) end end -- Keep backwards compatibility with old repeatable jobs (<= 3.0.0) if rcall("ZSCORE", repeatKey, legacyCustomKey) ~= false then return storeRepeatableJob(repeatKey, legacyCustomKey, nextMillis, ARGV[2]) end return storeRepeatableJob(repeatKey, customKey, nextMillis, ARGV[2]) `; exports2.addRepeatableJob = { name: "addRepeatableJob", content, keys: 2 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addStandardJob-9.js var require_addStandardJob_9 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/addStandardJob-9.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.addStandardJob = void 0; var content = `--[[ Adds a job to the queue by doing the following: - Increases the job counter if needed. - Creates a new job key with the job data. - if delayed: - computes timestamp. - adds to delayed zset. - Emits a global event 'delayed' if the job is delayed. - if not delayed - Adds the jobId to the wait/paused list in one of three ways: - LIFO - FIFO - prioritized. - Adds the job to the "added" list so that workers gets notified. Input: KEYS[1] 'wait', KEYS[2] 'paused' KEYS[3] 'meta' KEYS[4] 'id' KEYS[5] 'completed' KEYS[6] 'delayed' KEYS[7] 'active' KEYS[8] events stream key KEYS[9] marker key ARGV[1] msgpacked arguments array [1] key prefix, [2] custom id (will not generate one automatically) [3] name [4] timestamp [5] parentKey? [6] parent dependencies key. [7] parent? {id, queueKey} [8] repeat job key [9] deduplication key ARGV[2] Json stringified job data ARGV[3] msgpacked options Output: jobId - OK -5 - Missing parent key ]] local eventsKey = KEYS[8] local jobId local jobIdKey local rcall = redis.call local args = cmsgpack.unpack(ARGV[1]) local data = ARGV[2] local opts = cmsgpack.unpack(ARGV[3]) local parentKey = args[5] local parent = args[7] local repeatJobKey = args[8] local deduplicationKey = args[9] local parentData -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to debounce a job. ]] -- Includes --[[ Function to deduplicate a job. ]] --[[ Function to set the deduplication key for a job. Uses TTL from deduplication opts if provided. ]] local function setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) local ttl = deduplicationOpts and deduplicationOpts['ttl'] if ttl and ttl > 0 then rcall('SET', deduplicationKey, jobId, 'PX', ttl) else rcall('SET', deduplicationKey, jobId) end end --[[ Function to store a deduplicated next job if the existing job is active and keepLastIfActive is set. When the active job finishes, the stored proto-job is used to create a real job in the queue. Returns true if the proto-job was stored, false otherwise. ]] --[[ Function to check if an item belongs to a list. ]] local function checkItemInList(list, item) for _, v in pairs(list) do if v == item then return 1 end end return nil end local function storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) if deduplicationOpts['keepLastIfActive'] and currentDebounceJobId then local activeKey = prefix .. "active" local activeItems = rcall('LRANGE', activeKey, 0, -1) if checkItemInList(activeItems, currentDebounceJobId) then local deduplicationNextKey = prefix .. "dn:" .. deduplicationId local fields = {'name', jobName, 'data', jobData, 'opts', cjson.encode(fullOpts), 'jid', jobId} if parentKey then fields[#fields+1] = 'pk' fields[#fields+1] = parentKey end if parentData then fields[#fields+1] = 'pd' fields[#fields+1] = parentData end if parentDependenciesKey then fields[#fields+1] = 'pdk' fields[#fields+1] = parentDependenciesKey end if repeatJobKey then fields[#fields+1] = 'rjk' fields[#fields+1] = repeatJobKey end rcall('DEL', deduplicationNextKey) rcall('HSET', deduplicationNextKey, unpack(fields)) -- Ensure the dedup key does not expire while the job is active, -- so subsequent adds always hit the dedup path and never bypass -- the active-check because of a TTL expiry. local deduplicationKey = prefix .. "de:" .. deduplicationId rcall('PERSIST', deduplicationKey) -- TODO remove debounced event in next breaking change rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return true end end return false end local function deduplicateJobWithoutReplace(deduplicationId, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents, prefix, jobName, jobData, fullOpts, parentKey, parentData, parentDependenciesKey, repeatJobKey) local ttl = deduplicationOpts['ttl'] local deduplicationKeyExists if ttl and ttl > 0 then if deduplicationOpts['extend'] then local currentDebounceJobId = rcall('GET', deduplicationKey) if currentDebounceJobId then if storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) then return currentDebounceJobId end if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, currentDebounceJobId) else setDeduplicationKey(deduplicationKey, currentDebounceJobId, deduplicationOpts) end rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return currentDebounceJobId else if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, jobId) else setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) end return end else if deduplicationOpts['keepLastIfActive'] then deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX') else deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'PX', ttl, 'NX') end end else deduplicationKeyExists = not rcall('SET', deduplicationKey, jobId, 'NX') end if deduplicationKeyExists then local currentDebounceJobId = rcall('GET', deduplicationKey) if storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) then return currentDebounceJobId end -- TODO remove debounced event in next breaking change rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", currentDebounceJobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", currentDebounceJobId, "deduplicationId", deduplicationId, "deduplicatedJobId", jobId) return currentDebounceJobId end end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end local function removeDelayedJob(delayedKey, deduplicationKey, eventsKey, maxEvents, currentDeduplicatedJobId, jobId, deduplicationId, prefix) if rcall("ZREM", delayedKey, currentDeduplicatedJobId) > 0 then removeJobKeys(prefix .. currentDeduplicatedJobId) rcall("XADD", eventsKey, "*", "event", "removed", "jobId", currentDeduplicatedJobId, "prev", "delayed") -- TODO remove debounced event in next breaking change rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "debounced", "jobId", jobId, "debounceId", deduplicationId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "deduplicated", "jobId", jobId, "deduplicationId", deduplicationId, "deduplicatedJobId", currentDeduplicatedJobId) return true end return false end local function deduplicateJob(deduplicationOpts, jobId, delayedKey, deduplicationKey, eventsKey, maxEvents, prefix, jobName, jobData, fullOpts, parentKey, parentData, parentDependenciesKey, repeatJobKey) local deduplicationId = deduplicationOpts and deduplicationOpts['id'] if deduplicationId then if deduplicationOpts['replace'] then local currentDebounceJobId = rcall('GET', deduplicationKey) if currentDebounceJobId then local isRemoved = removeDelayedJob(delayedKey, deduplicationKey, eventsKey, maxEvents, currentDebounceJobId, jobId, deduplicationId, prefix) if isRemoved then if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, jobId) else local ttl = deduplicationOpts['ttl'] if not deduplicationOpts['extend'] and ttl and ttl > 0 then rcall('SET', deduplicationKey, jobId, 'KEEPTTL') else setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) end end return else storeDeduplicatedNextJob(deduplicationOpts, currentDebounceJobId, prefix, deduplicationId, jobName, jobData, fullOpts, eventsKey, maxEvents, jobId, parentKey, parentData, parentDependenciesKey, repeatJobKey) return currentDebounceJobId end else if deduplicationOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, jobId) else setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) end return end else return deduplicateJobWithoutReplace(deduplicationId, deduplicationOpts, jobId, deduplicationKey, eventsKey, maxEvents, prefix, jobName, jobData, fullOpts, parentKey, parentData, parentDependenciesKey, repeatJobKey) end end end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end --[[ Function to handle the case when job is duplicated. ]] -- Includes --[[ This function is used to update the parent's dependencies if the job is already completed and about to be ignored. The parent must get its dependencies updated to avoid the parent job being stuck forever in the waiting-children state. ]] -- Includes --[[ Validate and move or add dependencies to parent. ]] -- Includes --[[ Validate and move parent to a wait status (waiting, delayed or prioritized) if no pending dependencies. ]] -- Includes --[[ Validate and move parent to a wait status (waiting, delayed or prioritized) if needed. ]] -- Includes --[[ Move parent to a wait status (wait, prioritized or delayed) ]] -- Includes --[[ Add delay marker if needed. ]] -- Includes --[[ Function to return the next delayed job timestamp. ]] local function getNextDelayedTimestamp(delayedKey) local result = rcall("ZRANGE", delayedKey, 0, 0, "WITHSCORES") if #result then local nextTimestamp = tonumber(result[2]) if nextTimestamp ~= nil then return nextTimestamp / 0x1000 end end end local function addDelayMarkerIfNeeded(markerKey, delayedKey) local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- Replace the score of the marker with the newest known -- next timestamp. rcall("ZADD", markerKey, nextTimestamp, "1") end end --[[ Function to add job considering priority. ]] -- Includes --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to check if queue is paused or maxed (since an empty list and !EXISTS are not really the same). ]] local function isQueuePausedOrMaxed(queueMetaKey, activeKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency") if queueAttributes[1] then return true else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) return activeCount >= tonumber(queueAttributes[2]) end end return false end local function moveParentToWait(parentQueueKey, parentKey, parentId, timestamp) local parentWaitKey = parentQueueKey .. ":wait" local parentPausedKey = parentQueueKey .. ":paused" local parentActiveKey = parentQueueKey .. ":active" local parentMetaKey = parentQueueKey .. ":meta" local parentMarkerKey = parentQueueKey .. ":marker" local jobAttributes = rcall("HMGET", parentKey, "priority", "delay") local priority = tonumber(jobAttributes[1]) or 0 local delay = tonumber(jobAttributes[2]) or 0 if delay > 0 then local delayedTimestamp = tonumber(timestamp) + delay local score = delayedTimestamp * 0x1000 local parentDelayedKey = parentQueueKey .. ":delayed" rcall("ZADD", parentDelayedKey, score, parentId) rcall("XADD", parentQueueKey .. ":events", "*", "event", "delayed", "jobId", parentId, "delay", delayedTimestamp) addDelayMarkerIfNeeded(parentMarkerKey, parentDelayedKey) else if priority == 0 then local parentTarget, isParentPausedOrMaxed = getTargetQueueList(parentMetaKey, parentActiveKey, parentWaitKey, parentPausedKey) addJobInTargetList(parentTarget, parentMarkerKey, "RPUSH", isParentPausedOrMaxed, parentId) else local isPausedOrMaxed = isQueuePausedOrMaxed(parentMetaKey, parentActiveKey) addJobWithPriority(parentMarkerKey, parentQueueKey .. ":prioritized", priority, parentId, parentQueueKey .. ":pc", isPausedOrMaxed) end rcall("XADD", parentQueueKey .. ":events", "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function moveParentToWaitIfNeeded(parentQueueKey, parentKey, parentId, timestamp) if rcall("EXISTS", parentKey) == 1 then local parentWaitingChildrenKey = parentQueueKey .. ":waiting-children" if rcall("ZSCORE", parentWaitingChildrenKey, parentId) then rcall("ZREM", parentWaitingChildrenKey, parentId) moveParentToWait(parentQueueKey, parentKey, parentId, timestamp) end end end local function moveParentToWaitIfNoPendingDependencies(parentQueueKey, parentDependenciesKey, parentKey, parentId, timestamp) local doNotHavePendingDependencies = rcall("SCARD", parentDependenciesKey) == 0 if doNotHavePendingDependencies then moveParentToWaitIfNeeded(parentQueueKey, parentKey, parentId, timestamp) end end local function updateParentDepsIfNeeded(parentKey, parentQueueKey, parentDependenciesKey, parentId, jobIdKey, returnvalue, timestamp ) local processedSet = parentKey .. ":processed" rcall("HSET", processedSet, jobIdKey, returnvalue) moveParentToWaitIfNoPendingDependencies(parentQueueKey, parentDependenciesKey, parentKey, parentId, timestamp) end local function updateExistingJobsParent(parentKey, parent, parentData, parentDependenciesKey, completedKey, jobIdKey, jobId, timestamp) if parentKey ~= nil then if rcall("ZSCORE", completedKey, jobId) then local returnvalue = rcall("HGET", jobIdKey, "returnvalue") updateParentDepsIfNeeded(parentKey, parent['queueKey'], parentDependenciesKey, parent['id'], jobIdKey, returnvalue, timestamp) else if parentDependenciesKey ~= nil then rcall("SADD", parentDependenciesKey, jobIdKey) end end rcall("HMSET", jobIdKey, "parentKey", parentKey, "parent", parentData) end end local function handleDuplicatedJob(jobKey, jobId, currentParentKey, currentParent, parentData, parentDependenciesKey, completedKey, eventsKey, maxEvents, timestamp) local existedParentKey = rcall("HGET", jobKey, "parentKey") if not existedParentKey or existedParentKey == currentParentKey then updateExistingJobsParent(currentParentKey, currentParent, parentData, parentDependenciesKey, completedKey, jobKey, jobId, timestamp) else if currentParentKey ~= nil and currentParentKey ~= existedParentKey and (rcall("EXISTS", existedParentKey) == 1) then return -7 end end rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "duplicated", "jobId", jobId) return jobId .. "" -- convert to string end --[[ Function to store a job ]] local function storeJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey) local jsonOpts = cjson.encode(opts) local delay = opts['delay'] or 0 local priority = opts['priority'] or 0 local debounceId = opts['de'] and opts['de']['id'] local optionalValues = {} if parentKey ~= nil then table.insert(optionalValues, "parentKey") table.insert(optionalValues, parentKey) table.insert(optionalValues, "parent") table.insert(optionalValues, parentData) end if repeatJobKey then table.insert(optionalValues, "rjk") table.insert(optionalValues, repeatJobKey) end if debounceId then table.insert(optionalValues, "deid") table.insert(optionalValues, debounceId) end rcall("HMSET", jobIdKey, "name", name, "data", data, "opts", jsonOpts, "timestamp", timestamp, "delay", delay, "priority", priority, unpack(optionalValues)) rcall("XADD", eventsKey, "*", "event", "added", "jobId", jobId, "name", name) return delay, priority end if parentKey ~= nil then if rcall("EXISTS", parentKey) ~= 1 then return -5 end parentData = cjson.encode(parent) end local jobCounter = rcall("INCR", KEYS[4]) local metaKey = KEYS[3] local maxEvents = getOrSetMaxEvents(metaKey) local parentDependenciesKey = args[6] local timestamp = args[4] if args[2] == "" then jobId = jobCounter .. "" -- convert to string jobIdKey = args[1] .. jobId else jobId = args[2] jobIdKey = args[1] .. jobId if rcall("EXISTS", jobIdKey) == 1 then return handleDuplicatedJob(jobIdKey, jobId, parentKey, parent, parentData, parentDependenciesKey, KEYS[5], eventsKey, maxEvents, timestamp) end end local deduplicationJobId = deduplicateJob(opts['de'], jobId, KEYS[6], deduplicationKey, eventsKey, maxEvents, args[1], args[3], ARGV[2], opts, parentKey, parentData, parentDependenciesKey, repeatJobKey) if deduplicationJobId then return deduplicationJobId end -- Store the job. storeJob(eventsKey, jobIdKey, jobId, args[3], ARGV[2], opts, timestamp, parentKey, parentData, repeatJobKey) local target, isPausedOrMaxed = getTargetQueueList(metaKey, KEYS[7], KEYS[1], KEYS[2]) -- LIFO or FIFO local pushCmd = opts['lifo'] and 'RPUSH' or 'LPUSH' addJobInTargetList(target, KEYS[9], pushCmd, isPausedOrMaxed, jobId) -- Emit waiting event rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "waiting", "jobId", jobId) -- Check if this job is a child of another job, if so add it to the parents dependencies if parentDependenciesKey ~= nil then rcall("SADD", parentDependenciesKey, jobIdKey) end return jobId `; exports2.addStandardJob = { name: "addStandardJob", content, keys: 9 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/changeDelay-4.js var require_changeDelay_4 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/changeDelay-4.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.changeDelay = void 0; var content = `--[[ Change job delay when it is in delayed set. Input: KEYS[1] delayed key KEYS[2] meta key KEYS[3] marker key KEYS[4] events stream ARGV[1] delay ARGV[2] timestamp ARGV[3] the id of the job ARGV[4] job key Output: 0 - OK -1 - Missing job. -3 - Job not in delayed set. Events: - delayed key. ]] local rcall = redis.call -- Includes --[[ Add delay marker if needed. ]] -- Includes --[[ Function to return the next delayed job timestamp. ]] local function getNextDelayedTimestamp(delayedKey) local result = rcall("ZRANGE", delayedKey, 0, 0, "WITHSCORES") if #result then local nextTimestamp = tonumber(result[2]) if nextTimestamp ~= nil then return nextTimestamp / 0x1000 end end end local function addDelayMarkerIfNeeded(markerKey, delayedKey) local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- Replace the score of the marker with the newest known -- next timestamp. rcall("ZADD", markerKey, nextTimestamp, "1") end end --[[ Bake in the job id first 12 bits into the timestamp to guarantee correct execution order of delayed jobs (up to 4096 jobs per given timestamp or 4096 jobs apart per timestamp) WARNING: Jobs that are so far apart that they wrap around will cause FIFO to fail ]] local function getDelayedScore(delayedKey, timestamp, delay) local delayedTimestamp = (delay > 0 and (tonumber(timestamp) + delay)) or tonumber(timestamp) local minScore = delayedTimestamp * 0x1000 local maxScore = (delayedTimestamp + 1 ) * 0x1000 - 1 local result = rcall("ZREVRANGEBYSCORE", delayedKey, maxScore, minScore, "WITHSCORES","LIMIT", 0, 1) if #result then local currentMaxScore = tonumber(result[2]) if currentMaxScore ~= nil then if currentMaxScore >= maxScore then return maxScore, delayedTimestamp else return currentMaxScore + 1, delayedTimestamp end end end return minScore, delayedTimestamp end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end if rcall("EXISTS", ARGV[4]) == 1 then local jobId = ARGV[3] local delay = tonumber(ARGV[1]) local score, delayedTimestamp = getDelayedScore(KEYS[1], ARGV[2], delay) local numRemovedElements = rcall("ZREM", KEYS[1], jobId) if numRemovedElements < 1 then return -3 end rcall("HSET", ARGV[4], "delay", delay) rcall("ZADD", KEYS[1], score, jobId) local maxEvents = getOrSetMaxEvents(KEYS[2]) rcall("XADD", KEYS[4], "MAXLEN", "~", maxEvents, "*", "event", "delayed", "jobId", jobId, "delay", delayedTimestamp) -- mark that a delayed job is available addDelayMarkerIfNeeded(KEYS[3], KEYS[1]) return 0 else return -1 end`; exports2.changeDelay = { name: "changeDelay", content, keys: 4 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/changePriority-7.js var require_changePriority_7 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/changePriority-7.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.changePriority = void 0; var content = `--[[ Change job priority Input: KEYS[1] 'wait', KEYS[2] 'paused' KEYS[3] 'meta' KEYS[4] 'prioritized' KEYS[5] 'active' KEYS[6] 'pc' priority counter KEYS[7] 'marker' ARGV[1] priority value ARGV[2] prefix key ARGV[3] job id ARGV[4] lifo Output: 0 - OK -1 - Missing job ]] local jobId = ARGV[3] local jobKey = ARGV[2] .. jobId local priority = tonumber(ARGV[1]) local rcall = redis.call -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to add job considering priority. ]] -- Includes --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end --[[ Function to push back job considering priority in front of same prioritized jobs. ]] local function pushBackJobWithPriority(prioritizedKey, priority, jobId) -- in order to put it at front of same prioritized jobs -- we consider prioritized counter as 0 local score = priority * 0x100000000 rcall("ZADD", prioritizedKey, score, jobId) end local function reAddJobWithNewPriority( prioritizedKey, markerKey, targetKey, priorityCounter, lifo, priority, jobId, isPausedOrMaxed) if priority == 0 then local pushCmd = lifo and 'RPUSH' or 'LPUSH' addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) else if lifo then pushBackJobWithPriority(prioritizedKey, priority, jobId) else addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounter, isPausedOrMaxed) end end end if rcall("EXISTS", jobKey) == 1 then local metaKey = KEYS[3] local target, isPausedOrMaxed = getTargetQueueList(metaKey, KEYS[5], KEYS[1], KEYS[2]) local prioritizedKey = KEYS[4] local priorityCounterKey = KEYS[6] local markerKey = KEYS[7] -- Re-add with the new priority if rcall("ZREM", prioritizedKey, jobId) > 0 then reAddJobWithNewPriority( prioritizedKey, markerKey, target, priorityCounterKey, ARGV[4] == '1', priority, jobId, isPausedOrMaxed) elseif rcall("LREM", target, -1, jobId) > 0 then reAddJobWithNewPriority( prioritizedKey, markerKey, target, priorityCounterKey, ARGV[4] == '1', priority, jobId, isPausedOrMaxed) end rcall("HSET", jobKey, "priority", priority) return 0 else return -1 end `; exports2.changePriority = { name: "changePriority", content, keys: 7 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/cleanJobsInSet-3.js var require_cleanJobsInSet_3 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/cleanJobsInSet-3.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.cleanJobsInSet = void 0; var content = `--[[ Remove jobs from the specific set. Input: KEYS[1] set key, KEYS[2] events stream key KEYS[3] repeat key ARGV[1] jobKey prefix ARGV[2] timestamp ARGV[3] limit the number of jobs to be removed. 0 is unlimited ARGV[4] set name, can be any of 'wait', 'active', 'paused', 'delayed', 'completed', or 'failed' ]] local rcall = redis.call local repeatKey = KEYS[3] local rangeStart = 0 local rangeEnd = -1 local limit = tonumber(ARGV[3]) -- If we're only deleting _n_ items, avoid retrieving all items -- for faster performance -- -- Start from the tail of the list, since that's where oldest elements -- are generally added for FIFO lists if limit > 0 then rangeStart = -1 - limit + 1 rangeEnd = -1 end -- Includes --[[ Function to clean job list. Returns jobIds and deleted count number. ]] -- Includes --[[ Function to get the latest saved timestamp. ]] local function getTimestamp(jobKey, attributes) if #attributes == 1 then return rcall("HGET", jobKey, attributes[1]) end local jobTs for _, ts in ipairs(rcall("HMGET", jobKey, unpack(attributes))) do if (ts) then jobTs = ts break end end return jobTs end --[[ Function to check if the job belongs to a job scheduler and current delayed job matches with jobId ]] local function isJobSchedulerJob(jobId, jobKey, jobSchedulersKey) local repeatJobKey = rcall("HGET", jobKey, "rjk") if repeatJobKey then local prevMillis = rcall("ZSCORE", jobSchedulersKey, repeatJobKey) if prevMillis then local currentDelayedJobId = "repeat:" .. repeatJobKey .. ":" .. prevMillis return jobId == currentDelayedJobId end end return false end --[[ Function to remove job. ]] -- Includes --[[ Function to remove deduplication key if needed when a job is being removed. ]] local function removeDeduplicationKeyIfNeededOnRemoval(prefixKey, jobId, deduplicationId) if deduplicationId then local deduplicationKey = prefixKey .. "de:" .. deduplicationId local currentJobId = rcall('GET', deduplicationKey) if currentJobId and currentJobId == jobId then rcall("DEL", deduplicationKey) -- Also clean up any pending dedup-next data for this dedup ID rcall("DEL", prefixKey .. "dn:" .. deduplicationId) return 1 end end end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end --[[ Check if this job has a parent. If so we will just remove it from the parent child list, but if it is the last child we should move the parent to "wait/paused" which requires code from "moveToFinished" ]] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Functions to destructure job key. Just a bit of warning, these functions may be a bit slow and affect performance significantly. ]] local getJobIdFromKey = function (jobKey) return string.match(jobKey, ".*:(.*)") end local getJobKeyPrefix = function (jobKey, jobId) return string.sub(jobKey, 0, #jobKey - #jobId) end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local function _moveParentToWait(parentPrefix, parentId, emitEvent) local parentTarget, isPausedOrMaxed = getTargetQueueList(parentPrefix .. "meta", parentPrefix .. "active", parentPrefix .. "wait", parentPrefix .. "paused") addJobInTargetList(parentTarget, parentPrefix .. "marker", "RPUSH", isPausedOrMaxed, parentId) if emitEvent then local parentEventStream = parentPrefix .. "events" rcall("XADD", parentEventStream, "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function removeParentDependencyKey(jobKey, hard, parentKey, baseKey, debounceId) if parentKey then local parentDependenciesKey = parentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(parentKey) local parentPrefix = getJobKeyPrefix(parentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then -- remove parent in same queue if parentPrefix == baseKey then removeParentDependencyKey(parentKey, hard, nil, baseKey, nil) removeJobKeys(parentKey) if debounceId then rcall("DEL", parentPrefix .. "de:" .. debounceId) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end else local parentAttributes = rcall("HMGET", jobKey, "parentKey", "deid") local missedParentKey = parentAttributes[1] if( (type(missedParentKey) == "string") and missedParentKey ~= "" and (rcall("EXISTS", missedParentKey) == 1)) then local parentDependenciesKey = missedParentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(missedParentKey) local parentPrefix = getJobKeyPrefix(missedParentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then if parentPrefix == baseKey then removeParentDependencyKey(missedParentKey, hard, nil, baseKey, nil) removeJobKeys(missedParentKey) if parentAttributes[2] then rcall("DEL", parentPrefix .. "de:" .. parentAttributes[2]) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end end end return false end local function removeJob(jobId, hard, baseKey, shouldRemoveDeduplicationKey) local jobKey = baseKey .. jobId removeParentDependencyKey(jobKey, hard, nil, baseKey) if shouldRemoveDeduplicationKey then local deduplicationId = rcall("HGET", jobKey, "deid") removeDeduplicationKeyIfNeededOnRemoval(baseKey, jobId, deduplicationId) end removeJobKeys(jobKey) end local function cleanList(listKey, jobKeyPrefix, rangeStart, rangeEnd, timestamp, isWaiting, jobSchedulersKey) local jobs = rcall("LRANGE", listKey, rangeStart, rangeEnd) local deleted = {} local deletedCount = 0 local jobTS local deletionMarker = '' local jobIdsLen = #jobs for i, job in ipairs(jobs) do if limit > 0 and deletedCount >= limit then break end local jobKey = jobKeyPrefix .. job if (isWaiting or rcall("EXISTS", jobKey .. ":lock") == 0) and not isJobSchedulerJob(job, jobKey, jobSchedulersKey) then -- Find the right timestamp of the job to compare to maxTimestamp: -- * finishedOn says when the job was completed, but it isn't set unless the job has actually completed -- * processedOn represents when the job was last attempted, but it doesn't get populated until -- the job is first tried -- * timestamp is the original job submission time -- Fetch all three of these (in that order) and use the first one that is set so that we'll leave jobs -- that have been active within the grace period: jobTS = getTimestamp(jobKey, {"finishedOn", "processedOn", "timestamp"}) if (not jobTS or jobTS <= timestamp) then -- replace the entry with a deletion marker; the actual deletion will -- occur at the end of the script rcall("LSET", listKey, rangeEnd - jobIdsLen + i, deletionMarker) removeJob(job, true, jobKeyPrefix, true --[[remove debounce key]]) deletedCount = deletedCount + 1 table.insert(deleted, job) end end end rcall("LREM", listKey, 0, deletionMarker) return {deleted, deletedCount} end --[[ Function to clean job set. Returns jobIds and deleted count number. ]] -- Includes --[[ Function to loop in batches. Just a bit of warning, some commands as ZREM could receive a maximum of 7000 parameters per call. ]] local function batches(n, batchSize) local i = 0 return function() local from = i * batchSize + 1 i = i + 1 if (from <= n) then local to = math.min(from + batchSize - 1, n) return from, to end end end --[[ We use ZRANGEBYSCORE to make the case where we're deleting a limited number of items in a sorted set only run a single iteration. If we simply used ZRANGE, we may take a long time traversing through jobs that are within the grace period. ]] local function getJobsInZset(zsetKey, rangeEnd, limit) if limit > 0 then return rcall("ZRANGEBYSCORE", zsetKey, 0, rangeEnd, "LIMIT", 0, limit) else return rcall("ZRANGEBYSCORE", zsetKey, 0, rangeEnd) end end local function cleanSet( setKey, jobKeyPrefix, rangeEnd, timestamp, limit, attributes, isFinished, jobSchedulersKey) local jobs = getJobsInZset(setKey, rangeEnd, limit) local deleted = {} local deletedCount = 0 local jobTS for i, job in ipairs(jobs) do if limit > 0 and deletedCount >= limit then break end local jobKey = jobKeyPrefix .. job -- Extract a Job Scheduler Id from jobId ("repeat:job-scheduler-id:millis") -- and check if it is in the scheduled jobs if not (jobSchedulersKey and isJobSchedulerJob(job, jobKey, jobSchedulersKey)) then if isFinished then removeJob(job, true, jobKeyPrefix, true --[[remove debounce key]] ) deletedCount = deletedCount + 1 table.insert(deleted, job) else -- * finishedOn says when the job was completed, but it isn't set unless the job has actually completed jobTS = getTimestamp(jobKey, attributes) if (not jobTS or jobTS <= timestamp) then removeJob(job, true, jobKeyPrefix, true --[[remove debounce key]] ) deletedCount = deletedCount + 1 table.insert(deleted, job) end end end end if (#deleted > 0) then for from, to in batches(#deleted, 7000) do rcall("ZREM", setKey, unpack(deleted, from, to)) end end return {deleted, deletedCount} end local result if ARGV[4] == "active" then result = cleanList(KEYS[1], ARGV[1], rangeStart, rangeEnd, ARGV[2], false --[[ hasFinished ]], repeatKey) elseif ARGV[4] == "delayed" then rangeEnd = "+inf" result = cleanSet(KEYS[1], ARGV[1], rangeEnd, ARGV[2], limit, {"processedOn", "timestamp"}, false --[[ hasFinished ]], repeatKey) elseif ARGV[4] == "prioritized" then rangeEnd = "+inf" result = cleanSet(KEYS[1], ARGV[1], rangeEnd, ARGV[2], limit, {"timestamp"}, false --[[ hasFinished ]], repeatKey) elseif ARGV[4] == "wait" or ARGV[4] == "paused" then result = cleanList(KEYS[1], ARGV[1], rangeStart, rangeEnd, ARGV[2], true --[[ hasFinished ]], repeatKey) else rangeEnd = ARGV[2] -- No need to pass repeat key as in that moment job won't be related to a job scheduler result = cleanSet(KEYS[1], ARGV[1], rangeEnd, ARGV[2], limit, {"finishedOn"}, true --[[ hasFinished ]]) end rcall("XADD", KEYS[2], "*", "event", "cleaned", "count", result[2]) return result[1] `; exports2.cleanJobsInSet = { name: "cleanJobsInSet", content, keys: 3 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/drain-5.js var require_drain_5 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/drain-5.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.drain = void 0; var content = `--[[ Drains the queue, removes all jobs that are waiting or delayed, but not active, completed or failed Input: KEYS[1] 'wait', KEYS[2] 'paused' KEYS[3] 'delayed' KEYS[4] 'prioritized' KEYS[5] 'jobschedulers' (repeat) ARGV[1] queue key prefix ARGV[2] should clean delayed jobs ]] local rcall = redis.call local queueBaseKey = ARGV[1] --[[ Functions to remove jobs. ]] -- Includes --[[ Function to filter out jobs to ignore from a table. ]] local function filterOutJobsToIgnore(jobs, jobsToIgnore) local filteredJobs = {} for i = 1, #jobs do if not jobsToIgnore[jobs[i]] then table.insert(filteredJobs, jobs[i]) end end return filteredJobs end --[[ Functions to remove jobs. ]] -- Includes --[[ Function to remove job. ]] -- Includes --[[ Function to remove deduplication key if needed when a job is being removed. ]] local function removeDeduplicationKeyIfNeededOnRemoval(prefixKey, jobId, deduplicationId) if deduplicationId then local deduplicationKey = prefixKey .. "de:" .. deduplicationId local currentJobId = rcall('GET', deduplicationKey) if currentJobId and currentJobId == jobId then rcall("DEL", deduplicationKey) -- Also clean up any pending dedup-next data for this dedup ID rcall("DEL", prefixKey .. "dn:" .. deduplicationId) return 1 end end end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end --[[ Check if this job has a parent. If so we will just remove it from the parent child list, but if it is the last child we should move the parent to "wait/paused" which requires code from "moveToFinished" ]] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Functions to destructure job key. Just a bit of warning, these functions may be a bit slow and affect performance significantly. ]] local getJobIdFromKey = function (jobKey) return string.match(jobKey, ".*:(.*)") end local getJobKeyPrefix = function (jobKey, jobId) return string.sub(jobKey, 0, #jobKey - #jobId) end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local function _moveParentToWait(parentPrefix, parentId, emitEvent) local parentTarget, isPausedOrMaxed = getTargetQueueList(parentPrefix .. "meta", parentPrefix .. "active", parentPrefix .. "wait", parentPrefix .. "paused") addJobInTargetList(parentTarget, parentPrefix .. "marker", "RPUSH", isPausedOrMaxed, parentId) if emitEvent then local parentEventStream = parentPrefix .. "events" rcall("XADD", parentEventStream, "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function removeParentDependencyKey(jobKey, hard, parentKey, baseKey, debounceId) if parentKey then local parentDependenciesKey = parentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(parentKey) local parentPrefix = getJobKeyPrefix(parentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then -- remove parent in same queue if parentPrefix == baseKey then removeParentDependencyKey(parentKey, hard, nil, baseKey, nil) removeJobKeys(parentKey) if debounceId then rcall("DEL", parentPrefix .. "de:" .. debounceId) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end else local parentAttributes = rcall("HMGET", jobKey, "parentKey", "deid") local missedParentKey = parentAttributes[1] if( (type(missedParentKey) == "string") and missedParentKey ~= "" and (rcall("EXISTS", missedParentKey) == 1)) then local parentDependenciesKey = missedParentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(missedParentKey) local parentPrefix = getJobKeyPrefix(missedParentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then if parentPrefix == baseKey then removeParentDependencyKey(missedParentKey, hard, nil, baseKey, nil) removeJobKeys(missedParentKey) if parentAttributes[2] then rcall("DEL", parentPrefix .. "de:" .. parentAttributes[2]) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end end end return false end local function removeJob(jobId, hard, baseKey, shouldRemoveDeduplicationKey) local jobKey = baseKey .. jobId removeParentDependencyKey(jobKey, hard, nil, baseKey) if shouldRemoveDeduplicationKey then local deduplicationId = rcall("HGET", jobKey, "deid") removeDeduplicationKeyIfNeededOnRemoval(baseKey, jobId, deduplicationId) end removeJobKeys(jobKey) end local function removeJobs(keys, hard, baseKey, max) for i, key in ipairs(keys) do removeJob(key, hard, baseKey, true --[[remove debounce key]]) end return max - #keys end local function getListItems(keyName, max) return rcall('LRANGE', keyName, 0, max - 1) end local function removeListJobs(keyName, hard, baseKey, max, jobsToIgnore) local jobs = getListItems(keyName, max) if jobsToIgnore then jobs = filterOutJobsToIgnore(jobs, jobsToIgnore) end local count = removeJobs(jobs, hard, baseKey, max) rcall("LTRIM", keyName, #jobs, -1) return count end -- Includes --[[ Function to loop in batches. Just a bit of warning, some commands as ZREM could receive a maximum of 7000 parameters per call. ]] local function batches(n, batchSize) local i = 0 return function() local from = i * batchSize + 1 i = i + 1 if (from <= n) then local to = math.min(from + batchSize - 1, n) return from, to end end end --[[ Function to get ZSet items. ]] local function getZSetItems(keyName, max) return rcall('ZRANGE', keyName, 0, max - 1) end local function removeZSetJobs(keyName, hard, baseKey, max, jobsToIgnore) local jobs = getZSetItems(keyName, max) if jobsToIgnore then jobs = filterOutJobsToIgnore(jobs, jobsToIgnore) end local count = removeJobs(jobs, hard, baseKey, max) if(#jobs > 0) then for from, to in batches(#jobs, 7000) do rcall("ZREM", keyName, unpack(jobs, from, to)) end end return count end -- We must not remove delayed jobs if they are associated to a job scheduler. local scheduledJobs = {} local jobSchedulers = rcall("ZRANGE", KEYS[5], 0, -1, "WITHSCORES") -- For every job scheduler, get the current delayed job id. for i = 1, #jobSchedulers, 2 do local jobSchedulerId = jobSchedulers[i] local jobSchedulerMillis = jobSchedulers[i + 1] local delayedJobId = "repeat:" .. jobSchedulerId .. ":" .. jobSchedulerMillis scheduledJobs[delayedJobId] = true end removeListJobs(KEYS[1], true, queueBaseKey, 0, scheduledJobs) -- wait removeListJobs(KEYS[2], true, queueBaseKey, 0, scheduledJobs) -- paused if ARGV[2] == "1" then removeZSetJobs(KEYS[3], true, queueBaseKey, 0, scheduledJobs) -- delayed end removeZSetJobs(KEYS[4], true, queueBaseKey, 0, scheduledJobs) -- prioritized `; exports2.drain = { name: "drain", content, keys: 5 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/extendLock-2.js var require_extendLock_2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/extendLock-2.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.extendLock = void 0; var content = `--[[ Extend lock and removes the job from the stalled set. Input: KEYS[1] 'lock', KEYS[2] 'stalled' ARGV[1] token ARGV[2] lock duration in milliseconds ARGV[3] jobid Output: "1" if lock extended successfully. ]] local rcall = redis.call if rcall("GET", KEYS[1]) == ARGV[1] then -- if rcall("SET", KEYS[1], ARGV[1], "PX", ARGV[2], "XX") then if rcall("SET", KEYS[1], ARGV[1], "PX", ARGV[2]) then rcall("SREM", KEYS[2], ARGV[3]) return 1 end end return 0 `; exports2.extendLock = { name: "extendLock", content, keys: 2 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/extendLocks-1.js var require_extendLocks_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/extendLocks-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.extendLocks = void 0; var content = `--[[ Extend locks for multiple jobs and remove them from the stalled set if successful. Return the list of job IDs for which the operation failed. KEYS[1] = stalled key ARGV[1] = baseKey ARGV[2] = tokens ARGV[3] = jobIds ARGV[4] = lockDuration (ms) Output: An array of failed job IDs. If empty, all succeeded. ]] local rcall = redis.call local stalledKey = KEYS[1] local baseKey = ARGV[1] local tokens = cmsgpack.unpack(ARGV[2]) local jobIds = cmsgpack.unpack(ARGV[3]) local lockDuration = ARGV[4] local jobCount = #jobIds local failedJobs = {} for i = 1, jobCount, 1 do local lockKey = baseKey .. jobIds[i] .. ':lock' local jobId = jobIds[i] local token = tokens[i] local currentToken = rcall("GET", lockKey) if currentToken then if currentToken == token then local setResult = rcall("SET", lockKey, token, "PX", lockDuration) if setResult then rcall("SREM", stalledKey, jobId) else table.insert(failedJobs, jobId) end else table.insert(failedJobs, jobId) end else table.insert(failedJobs, jobId) end end return failedJobs `; exports2.extendLocks = { name: "extendLocks", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getCounts-1.js var require_getCounts_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getCounts-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getCounts = void 0; var content = `--[[ Get counts per provided states Input: KEYS[1] 'prefix' ARGV[1...] types ]] local rcall = redis.call; local prefix = KEYS[1] local results = {} for i = 1, #ARGV do local stateKey = prefix .. ARGV[i] if ARGV[i] == "wait" or ARGV[i] == "paused" then -- Markers in waitlist DEPRECATED in v5: Remove in v6. local marker = rcall("LINDEX", stateKey, -1) if marker and string.sub(marker, 1, 2) == "0:" then local count = rcall("LLEN", stateKey) if count > 1 then rcall("RPOP", stateKey) results[#results+1] = count-1 else results[#results+1] = 0 end else results[#results+1] = rcall("LLEN", stateKey) end elseif ARGV[i] == "active" then results[#results+1] = rcall("LLEN", stateKey) else results[#results+1] = rcall("ZCARD", stateKey) end end return results `; exports2.getCounts = { name: "getCounts", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getCountsPerPriority-4.js var require_getCountsPerPriority_4 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getCountsPerPriority-4.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getCountsPerPriority = void 0; var content = `--[[ Get counts per provided states Input: KEYS[1] wait key KEYS[2] paused key KEYS[3] meta key KEYS[4] prioritized key ARGV[1...] priorities ]] local rcall = redis.call local results = {} local waitKey = KEYS[1] local pausedKey = KEYS[2] local prioritizedKey = KEYS[4] -- Includes --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function isQueuePaused(queueMetaKey) return rcall("HEXISTS", queueMetaKey, "paused") == 1 end for i = 1, #ARGV do local priority = tonumber(ARGV[i]) if priority == 0 then if isQueuePaused(KEYS[3]) then results[#results+1] = rcall("LLEN", pausedKey) else results[#results+1] = rcall("LLEN", waitKey) end else results[#results+1] = rcall("ZCOUNT", prioritizedKey, priority * 0x100000000, (priority + 1) * 0x100000000 - 1) end end return results `; exports2.getCountsPerPriority = { name: "getCountsPerPriority", content, keys: 4 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getDependencyCounts-4.js var require_getDependencyCounts_4 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getDependencyCounts-4.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getDependencyCounts = void 0; var content = `--[[ Get counts per child states Input: KEYS[1] processed key KEYS[2] unprocessed key KEYS[3] ignored key KEYS[4] failed key ARGV[1...] types ]] local rcall = redis.call; local processedKey = KEYS[1] local unprocessedKey = KEYS[2] local ignoredKey = KEYS[3] local failedKey = KEYS[4] local results = {} for i = 1, #ARGV do if ARGV[i] == "processed" then results[#results+1] = rcall("HLEN", processedKey) elseif ARGV[i] == "unprocessed" then results[#results+1] = rcall("SCARD", unprocessedKey) elseif ARGV[i] == "ignored" then results[#results+1] = rcall("HLEN", ignoredKey) else results[#results+1] = rcall("ZCARD", failedKey) end end return results `; exports2.getDependencyCounts = { name: "getDependencyCounts", content, keys: 4 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getJobScheduler-1.js var require_getJobScheduler_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getJobScheduler-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getJobScheduler = void 0; var content = `--[[ Get job scheduler record. Input: KEYS[1] 'repeat' key ARGV[1] id ]] local rcall = redis.call local jobSchedulerKey = KEYS[1] .. ":" .. ARGV[1] local score = rcall("ZSCORE", KEYS[1], ARGV[1]) if score then return {rcall("HGETALL", jobSchedulerKey), score} -- get job data end return {nil, nil} `; exports2.getJobScheduler = { name: "getJobScheduler", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getJobs-1.js var require_getJobs_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getJobs-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getJobs = void 0; var content = `--[[ Get jobs (id + data) for the provided states. Job ids and their hashes are read in the same script so that ids whose hash disappears after the id is read (but before the job is loaded) do not appear in the result set. Ids without a job hash (for example the deprecated wait list marker entry stored in the list) are skipped. For bounded ranges the script iterates forward using the range offset as a cursor to backfill skipped ids, preserving the requested page size when possible. Input: KEYS[1] 'prefix' ARGV[1] start ARGV[2] end ARGV[3] asc ('1' | '0') ARGV[4] max iterations (backfill bound) ARGV[5...] types Output: results grouped per requested type; each entry is a {jobId, {field, value, ...}} tuple ]] local rcall = redis.call local prefix = KEYS[1] local rangeStart = tonumber(ARGV[1]) local rangeEnd = tonumber(ARGV[2]) local asc = ARGV[3] == "1" local max_iterations = tonumber(ARGV[4]) local results = {} local function isListType(stateType) return stateType == "wait" or stateType == "paused" or stateType == "active" end -- Fetch a slice of ids for the given state respecting the requested order. local function fetchIds(stateKey, stateType, sliceStart, sliceEnd, listLength) if isListType(stateType) then if asc then local modifiedRangeStart local modifiedRangeEnd if sliceStart == -1 then modifiedRangeStart = 0 else modifiedRangeStart = -(sliceStart + 1) end if sliceEnd == -1 then modifiedRangeEnd = 0 else modifiedRangeEnd = -(sliceEnd + 1) end -- Ascending list slices use negative indexes. When the whole window is -- beyond the list length Redis clamps both indexes to 0 and LRANGE would -- return the head element, so guard against out-of-range slices with LLEN. if listLength ~= nil and sliceStart >= 0 and sliceEnd >= 0 and sliceStart >= listLength then return {} end local ids = rcall("LRANGE", stateKey, modifiedRangeEnd, modifiedRangeStart) local reversed = {} for i = #ids, 1, -1 do reversed[#reversed + 1] = ids[i] end return reversed else return rcall("LRANGE", stateKey, sliceStart, sliceEnd) end else if asc then return rcall("ZRANGE", stateKey, sliceStart, sliceEnd) else return rcall("ZREVRANGE", stateKey, sliceStart, sliceEnd) end end end -- Fetch the job hash for an id and append it when present. local function appendJob(entries, jobId) local jobData = rcall("HGETALL", prefix .. jobId) if #jobData > 0 then entries[#entries + 1] = {jobId, jobData} end end local function cleanupDeprecatedMarker(stateKey, stateType) if stateType == "wait" or stateType == "paused" then local marker = rcall("LINDEX", stateKey, -1) if marker and string.sub(marker, 1, 2) == "0:" then local count = rcall("LLEN", stateKey) if count > 1 then rcall("RPOP", stateKey) return count - 1 end return 0 end end end local function collectJobs(stateKey, stateType) local entries = {} local listLength local cleanedListLength = cleanupDeprecatedMarker(stateKey, stateType) if asc and isListType(stateType) and rangeStart >= 0 and rangeEnd >= 0 then if cleanedListLength ~= nil then listLength = cleanedListLength else listLength = rcall("LLEN", stateKey) end end -- Unbounded or negative ranges: fetch the exact window and skip missing ids. if rangeStart < 0 or rangeEnd < 0 then local ids = fetchIds(stateKey, stateType, rangeStart, rangeEnd, listLength) for i = 1, #ids do appendJob(entries, ids[i]) end return entries end -- Bounded range: iterate forward to backfill skipped ids. local needed = rangeEnd - rangeStart + 1 local cursor = rangeStart local iterations = 0 while #entries < needed and iterations < max_iterations do local ids = fetchIds(stateKey, stateType, cursor, cursor + needed - 1, listLength) if #ids == 0 then break end for i = 1, #ids do if #entries >= needed then break end appendJob(entries, ids[i]) end cursor = cursor + #ids iterations = iterations + 1 end return entries end for i = 5, #ARGV do local stateType = ARGV[i] local stateKey = prefix .. stateType results[#results + 1] = collectJobs(stateKey, stateType) end return results `; exports2.getJobs = { name: "getJobs", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getMetrics-2.js var require_getMetrics_2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getMetrics-2.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getMetrics = void 0; var content = `--[[ Get metrics Input: KEYS[1] 'metrics' key KEYS[2] 'metrics data' key ARGV[1] start index ARGV[2] end index ]] local rcall = redis.call; local metricsKey = KEYS[1] local dataKey = KEYS[2] local metrics = rcall("HMGET", metricsKey, "count", "prevTS", "prevCount") local data = rcall("LRANGE", dataKey, tonumber(ARGV[1]), tonumber(ARGV[2])) local numPoints = rcall("LLEN", dataKey) return {metrics, data, numPoints} `; exports2.getMetrics = { name: "getMetrics", content, keys: 2 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getRanges-1.js var require_getRanges_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getRanges-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getRanges = void 0; var content = `--[[ Get job ids per provided states Input: KEYS[1] 'prefix' ARGV[1] start ARGV[2] end ARGV[3] asc ARGV[4...] types ]] local rcall = redis.call local prefix = KEYS[1] local rangeStart = tonumber(ARGV[1]) local rangeEnd = tonumber(ARGV[2]) local asc = ARGV[3] local results = {} local function getRangeInList(listKey, asc, rangeStart, rangeEnd, results) if asc == "1" then local modifiedRangeStart local modifiedRangeEnd if rangeStart == -1 then modifiedRangeStart = 0 else modifiedRangeStart = -(rangeStart + 1) end if rangeEnd == -1 then modifiedRangeEnd = 0 else modifiedRangeEnd = -(rangeEnd + 1) end results[#results+1] = rcall("LRANGE", listKey, modifiedRangeEnd, modifiedRangeStart) else results[#results+1] = rcall("LRANGE", listKey, rangeStart, rangeEnd) end end for i = 4, #ARGV do local stateKey = prefix .. ARGV[i] if ARGV[i] == "wait" or ARGV[i] == "paused" then -- Markers in waitlist DEPRECATED in v5: Remove in v6. local marker = rcall("LINDEX", stateKey, -1) if marker and string.sub(marker, 1, 2) == "0:" then local count = rcall("LLEN", stateKey) if count > 1 then rcall("RPOP", stateKey) getRangeInList(stateKey, asc, rangeStart, rangeEnd, results) else results[#results+1] = {} end else getRangeInList(stateKey, asc, rangeStart, rangeEnd, results) end elseif ARGV[i] == "active" then getRangeInList(stateKey, asc, rangeStart, rangeEnd, results) else if asc == "1" then results[#results+1] = rcall("ZRANGE", stateKey, rangeStart, rangeEnd) else results[#results+1] = rcall("ZREVRANGE", stateKey, rangeStart, rangeEnd) end end end return results `; exports2.getRanges = { name: "getRanges", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getRateLimitTtl-2.js var require_getRateLimitTtl_2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getRateLimitTtl-2.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getRateLimitTtl = void 0; var content = `--[[ Get rate limit ttl Input: KEYS[1] 'limiter' KEYS[2] 'meta' ARGV[1] maxJobs ]] local rcall = redis.call -- Includes --[[ Function to get current rate limit ttl. ]] local function getRateLimitTTL(maxJobs, rateLimiterKey) if maxJobs and maxJobs <= tonumber(rcall("GET", rateLimiterKey) or 0) then local pttl = rcall("PTTL", rateLimiterKey) if pttl == 0 then rcall("DEL", rateLimiterKey) end if pttl > 0 then return pttl end end return 0 end local rateLimiterKey = KEYS[1] if ARGV[1] ~= "0" then return getRateLimitTTL(tonumber(ARGV[1]), rateLimiterKey) else local rateLimitMax = rcall("HGET", KEYS[2], "max") if rateLimitMax then return getRateLimitTTL(tonumber(rateLimitMax), rateLimiterKey) end return rcall("PTTL", rateLimiterKey) end `; exports2.getRateLimitTtl = { name: "getRateLimitTtl", content, keys: 2 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getState-8.js var require_getState_8 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getState-8.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getState = void 0; var content = `--[[ Get a job state Input: KEYS[1] 'completed' key, KEYS[2] 'failed' key KEYS[3] 'delayed' key KEYS[4] 'active' key KEYS[5] 'wait' key KEYS[6] 'paused' key KEYS[7] 'waiting-children' key KEYS[8] 'prioritized' key ARGV[1] job id Output: 'completed' 'failed' 'delayed' 'active' 'prioritized' 'waiting' 'waiting-children' 'unknown' ]] local rcall = redis.call if rcall("ZSCORE", KEYS[1], ARGV[1]) then return "completed" end if rcall("ZSCORE", KEYS[2], ARGV[1]) then return "failed" end if rcall("ZSCORE", KEYS[3], ARGV[1]) then return "delayed" end if rcall("ZSCORE", KEYS[8], ARGV[1]) then return "prioritized" end -- Includes --[[ Function to check if an item belongs to a list. ]] local function checkItemInList(list, item) for _, v in pairs(list) do if v == item then return 1 end end return nil end local active_items = rcall("LRANGE", KEYS[4] , 0, -1) if checkItemInList(active_items, ARGV[1]) ~= nil then return "active" end local wait_items = rcall("LRANGE", KEYS[5] , 0, -1) if checkItemInList(wait_items, ARGV[1]) ~= nil then return "waiting" end local paused_items = rcall("LRANGE", KEYS[6] , 0, -1) if checkItemInList(paused_items, ARGV[1]) ~= nil then return "waiting" end if rcall("ZSCORE", KEYS[7], ARGV[1]) then return "waiting-children" end return "unknown" `; exports2.getState = { name: "getState", content, keys: 8 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getStateV2-8.js var require_getStateV2_8 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/getStateV2-8.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getStateV2 = void 0; var content = `--[[ Get a job state Input: KEYS[1] 'completed' key, KEYS[2] 'failed' key KEYS[3] 'delayed' key KEYS[4] 'active' key KEYS[5] 'wait' key KEYS[6] 'paused' key KEYS[7] 'waiting-children' key KEYS[8] 'prioritized' key ARGV[1] job id Output: 'completed' 'failed' 'delayed' 'active' 'waiting' 'waiting-children' 'unknown' ]] local rcall = redis.call if rcall("ZSCORE", KEYS[1], ARGV[1]) then return "completed" end if rcall("ZSCORE", KEYS[2], ARGV[1]) then return "failed" end if rcall("ZSCORE", KEYS[3], ARGV[1]) then return "delayed" end if rcall("ZSCORE", KEYS[8], ARGV[1]) then return "prioritized" end if rcall("LPOS", KEYS[4] , ARGV[1]) then return "active" end if rcall("LPOS", KEYS[5] , ARGV[1]) then return "waiting" end if rcall("LPOS", KEYS[6] , ARGV[1]) then return "waiting" end if rcall("ZSCORE", KEYS[7] , ARGV[1]) then return "waiting-children" end return "unknown" `; exports2.getStateV2 = { name: "getStateV2", content, keys: 8 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/isFinished-3.js var require_isFinished_3 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/isFinished-3.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isFinished = void 0; var content = `--[[ Checks if a job is finished (.i.e. is in the completed or failed set) Input: KEYS[1] completed key KEYS[2] failed key KEYS[3] job key ARGV[1] job id ARGV[2] return value? Output: 0 - Not finished. 1 - Completed. 2 - Failed. -1 - Missing job. ]] local rcall = redis.call if rcall("EXISTS", KEYS[3]) ~= 1 then if ARGV[2] == "1" then return {-1,"Missing key for job " .. KEYS[3] .. ". isFinished"} end return -1 end if rcall("ZSCORE", KEYS[1], ARGV[1]) then if ARGV[2] == "1" then local returnValue = rcall("HGET", KEYS[3], "returnvalue") return {1,returnValue} end return 1 end if rcall("ZSCORE", KEYS[2], ARGV[1]) then if ARGV[2] == "1" then local failedReason = rcall("HGET", KEYS[3], "failedReason") return {2,failedReason} end return 2 end if ARGV[2] == "1" then return {0} end return 0 `; exports2.isFinished = { name: "isFinished", content, keys: 3 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/isJobInList-1.js var require_isJobInList_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/isJobInList-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isJobInList = void 0; var content = `--[[ Checks if job is in a given list. Input: KEYS[1] ARGV[1] Output: 1 if element found in the list. ]] -- Includes --[[ Function to check if an item belongs to a list. ]] local function checkItemInList(list, item) for _, v in pairs(list) do if v == item then return 1 end end return nil end local items = redis.call("LRANGE", KEYS[1] , 0, -1) return checkItemInList(items, ARGV[1]) `; exports2.isJobInList = { name: "isJobInList", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/isMaxed-2.js var require_isMaxed_2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/isMaxed-2.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isMaxed = void 0; var content = `--[[ Checks if queue is maxed. Input: KEYS[1] meta key KEYS[2] active key Output: 1 if element found in the list. ]] local rcall = redis.call -- Includes --[[ Function to check if queue is maxed or not. ]] local function isQueueMaxed(queueMetaKey, activeKey) local maxConcurrency = rcall("HGET", queueMetaKey, "concurrency") if maxConcurrency then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(maxConcurrency) then return true end end return false end return isQueueMaxed(KEYS[1], KEYS[2]) `; exports2.isMaxed = { name: "isMaxed", content, keys: 2 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveJobFromActiveToWait-9.js var require_moveJobFromActiveToWait_9 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveJobFromActiveToWait-9.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.moveJobFromActiveToWait = void 0; var content = `--[[ Function to move job from active state to wait. Input: KEYS[1] active key KEYS[2] wait key KEYS[3] stalled key KEYS[4] paused key KEYS[5] meta key KEYS[6] limiter key KEYS[7] prioritized key KEYS[8] marker key KEYS[9] event key ARGV[1] job id ARGV[2] lock token ARGV[3] job id key ]] local rcall = redis.call -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to push back job considering priority in front of same prioritized jobs. ]] local function pushBackJobWithPriority(prioritizedKey, priority, jobId) -- in order to put it at front of same prioritized jobs -- we consider prioritized counter as 0 local score = priority * 0x100000000 rcall("ZADD", prioritizedKey, score, jobId) end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local function removeLock(jobKey, stalledKey, token, jobId) if token ~= "0" then local lockKey = jobKey .. ':lock' local lockToken = rcall("GET", lockKey) if lockToken == token then rcall("DEL", lockKey) rcall("SREM", stalledKey, jobId) else if lockToken then -- Lock exists but token does not match return -6 else -- Lock is missing completely return -2 end end end return 0 end local jobId = ARGV[1] local token = ARGV[2] local jobKey = ARGV[3] if rcall("EXISTS", jobKey) == 0 then return -1 end local errorCode = removeLock(jobKey, KEYS[3], token, jobId) if errorCode < 0 then return errorCode end local metaKey = KEYS[5] local removed = rcall("LREM", KEYS[1], 1, jobId) if removed > 0 then local target, isPausedOrMaxed = getTargetQueueList(metaKey, KEYS[1], KEYS[2], KEYS[4]) local priority = tonumber(rcall("HGET", ARGV[3], "priority")) or 0 if priority > 0 then pushBackJobWithPriority(KEYS[7], priority, jobId) else addJobInTargetList(target, KEYS[8], "RPUSH", isPausedOrMaxed, jobId) end local maxEvents = getOrSetMaxEvents(metaKey) -- Emit waiting event rcall("XADD", KEYS[9], "MAXLEN", "~", maxEvents, "*", "event", "waiting", "jobId", jobId, "prev", "active") end local pttl = rcall("PTTL", KEYS[6]) if pttl > 0 then return pttl else return 0 end `; exports2.moveJobFromActiveToWait = { name: "moveJobFromActiveToWait", content, keys: 9 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveJobsToWait-8.js var require_moveJobsToWait_8 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveJobsToWait-8.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.moveJobsToWait = void 0; var content = `--[[ Move completed, failed or delayed jobs to wait. Note: Does not support jobs with priorities. Input: KEYS[1] base key KEYS[2] events stream KEYS[3] state key (failed, completed, delayed) KEYS[4] 'wait' KEYS[5] 'paused' KEYS[6] 'meta' KEYS[7] 'active' KEYS[8] 'marker' ARGV[1] count ARGV[2] timestamp ARGV[3] prev state Output: 1 means the operation is not completed 0 means the operation is completed ]] local maxCount = tonumber(ARGV[1]) local timestamp = tonumber(ARGV[2]) local rcall = redis.call; -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end --[[ Function to loop in batches. Just a bit of warning, some commands as ZREM could receive a maximum of 7000 parameters per call. ]] local function batches(n, batchSize) local i = 0 return function() local from = i * batchSize + 1 i = i + 1 if (from <= n) then local to = math.min(from + batchSize - 1, n) return from, to end end end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local metaKey = KEYS[6] local target, isPausedOrMaxed = getTargetQueueList(metaKey, KEYS[7], KEYS[4], KEYS[5]) local jobs = rcall('ZRANGEBYSCORE', KEYS[3], 0, timestamp, 'LIMIT', 0, maxCount) if (#jobs > 0) then if ARGV[3] == "failed" then for i, key in ipairs(jobs) do local jobKey = KEYS[1] .. key rcall("HDEL", jobKey, "finishedOn", "processedOn", "failedReason") end elseif ARGV[3] == "completed" then for i, key in ipairs(jobs) do local jobKey = KEYS[1] .. key rcall("HDEL", jobKey, "finishedOn", "processedOn", "returnvalue") end end local maxEvents = getOrSetMaxEvents(metaKey) for i, key in ipairs(jobs) do -- Emit waiting event rcall("XADD", KEYS[2], "MAXLEN", "~", maxEvents, "*", "event", "waiting", "jobId", key, "prev", ARGV[3]); end for from, to in batches(#jobs, 7000) do rcall("ZREM", KEYS[3], unpack(jobs, from, to)) rcall("LPUSH", target, unpack(jobs, from, to)) end addBaseMarkerIfNeeded(KEYS[8], isPausedOrMaxed) end maxCount = maxCount - #jobs if (maxCount <= 0) then return 1 end return 0 `; exports2.moveJobsToWait = { name: "moveJobsToWait", content, keys: 8 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveStalledJobsToWait-9.js var require_moveStalledJobsToWait_9 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveStalledJobsToWait-9.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.moveStalledJobsToWait = void 0; var content = `--[[ Move stalled jobs to wait. Input: KEYS[1] 'stalled' (SET) KEYS[2] 'wait', (LIST) KEYS[3] 'active', (LIST) KEYS[4] 'stalled-check', (KEY) KEYS[5] 'meta', (KEY) KEYS[6] 'paused', (LIST) KEYS[7] 'marker' KEYS[8] 'event stream' (STREAM) KEYS[9] 'repeat' key ARGV[1] Max stalled job count ARGV[2] queue.toKey('') ARGV[3] timestamp ARGV[4] max check time Events: 'stalled' with stalled job id. ]] local rcall = redis.call -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to loop in batches. Just a bit of warning, some commands as ZREM could receive a maximum of 7000 parameters per call. ]] local function batches(n, batchSize) local i = 0 return function() local from = i * batchSize + 1 i = i + 1 if (from <= n) then local to = math.min(from + batchSize - 1, n) return from, to end end end --[[ Function to move job to wait to be picked up by a waiting worker. ]] -- Includes --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local function moveJobToWait(metaKey, activeKey, waitKey, pausedKey, markerKey, eventStreamKey, jobId, pushCmd) local target, isPausedOrMaxed = getTargetQueueList(metaKey, activeKey, waitKey, pausedKey) addJobInTargetList(target, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall("XADD", eventStreamKey, "*", "event", "waiting", "jobId", jobId, 'prev', 'active') end --[[ Function to trim events, default 10000. ]] -- Includes --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end local function trimEvents(metaKey, eventStreamKey) local maxEvents = getOrSetMaxEvents(metaKey) if maxEvents then rcall("XTRIM", eventStreamKey, "MAXLEN", "~", maxEvents) else rcall("XTRIM", eventStreamKey, "MAXLEN", "~", 10000) end end local stalledKey = KEYS[1] local waitKey = KEYS[2] local activeKey = KEYS[3] local stalledCheckKey = KEYS[4] local metaKey = KEYS[5] local pausedKey = KEYS[6] local markerKey = KEYS[7] local eventStreamKey = KEYS[8] local repeatKey = KEYS[9] local maxStalledJobCount = tonumber(ARGV[1]) local queueKeyPrefix = ARGV[2] local timestamp = ARGV[3] local maxCheckTime = ARGV[4] if rcall("EXISTS", stalledCheckKey) == 1 then return {} end rcall("SET", stalledCheckKey, timestamp, "PX", maxCheckTime) -- Trim events before emitting them to avoid trimming events emitted in this script trimEvents(metaKey, eventStreamKey) -- Move all stalled jobs to wait local stalling = rcall('SMEMBERS', stalledKey) local stalled = {} if (#stalling > 0) then rcall('DEL', stalledKey) -- Remove from active list for i, jobId in ipairs(stalling) do -- Markers in waitlist DEPRECATED in v5: Remove in v6. if string.sub(jobId, 1, 2) == "0:" then -- If the jobId is a delay marker ID we just remove it. rcall("LREM", activeKey, 1, jobId) else local jobKey = queueKeyPrefix .. jobId -- Check that the lock is also missing, then we can handle this job as really stalled. if (rcall("EXISTS", jobKey .. ":lock") == 0) then -- Remove from the active queue. local removed = rcall("LREM", activeKey, 1, jobId) if (removed > 0) then -- If this job has been stalled too many times, such as if it crashes the worker, then fail it. local stalledCount = rcall("HINCRBY", jobKey, "stc", 1) -- Check if this is a repeatable job by looking at job options local jobSchedulerId = rcall("HGET", jobKey, "rjk") local isRepeatableJob = false if jobSchedulerId then local schedulerKey = repeatKey .. ":" .. jobSchedulerId if rcall("EXISTS", schedulerKey) == 1 then isRepeatableJob = true else -- TODO: remove this check in v6, as it is only needed for legacy repeatable jobs -- that stored the scheduler id in the job key but did not create the scheduler hash key local prevMillis = rcall("ZSCORE", repeatKey, jobSchedulerId) if prevMillis then isRepeatableJob = true end end end -- Only fail job if it exceeds stall limit AND is not a repeatable job if stalledCount > maxStalledJobCount and not isRepeatableJob then local failedReason = "job stalled more than allowable limit" rcall("HSET", jobKey, "defa", failedReason) end moveJobToWait(metaKey, activeKey, waitKey, pausedKey, markerKey, eventStreamKey, jobId, "RPUSH") -- Emit the stalled event rcall("XADD", eventStreamKey, "*", "event", "stalled", "jobId", jobId) table.insert(stalled, jobId) end end end end end -- Mark potentially stalled jobs local active = rcall('LRANGE', activeKey, 0, -1) if (#active > 0) then for from, to in batches(#active, 7000) do rcall('SADD', stalledKey, unpack(active, from, to)) end end return stalled `; exports2.moveStalledJobsToWait = { name: "moveStalledJobsToWait", content, keys: 9 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveToActive-11.js var require_moveToActive_11 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveToActive-11.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.moveToActive = void 0; var content = `--[[ Move next job to be processed to active, lock it and fetch its data. The job may be delayed, in that case we need to move it to the delayed set instead. This operation guarantees that the worker owns the job during the lock expiration time. The worker is responsible of keeping the lock fresh so that no other worker picks this job again. Input: KEYS[1] wait key KEYS[2] active key KEYS[3] prioritized key KEYS[4] stream events key KEYS[5] stalled key -- Rate limiting KEYS[6] rate limiter key KEYS[7] delayed key -- Delayed jobs KEYS[8] paused key KEYS[9] meta key KEYS[10] pc priority counter -- Marker KEYS[11] marker key -- Arguments ARGV[1] key prefix ARGV[2] timestamp ARGV[3] opts opts - token - lock token opts - lockDuration opts - limiter opts - name - worker name ]] local rcall = redis.call local waitKey = KEYS[1] local activeKey = KEYS[2] local eventStreamKey = KEYS[4] local rateLimiterKey = KEYS[6] local delayedKey = KEYS[7] local opts = cmsgpack.unpack(ARGV[3]) -- Includes --[[ Function to return the next delayed job timestamp. ]] local function getNextDelayedTimestamp(delayedKey) local result = rcall("ZRANGE", delayedKey, 0, 0, "WITHSCORES") if #result then local nextTimestamp = tonumber(result[2]) if nextTimestamp ~= nil then return nextTimestamp / 0x1000 end end end --[[ Function to get current rate limit ttl. ]] local function getRateLimitTTL(maxJobs, rateLimiterKey) if maxJobs and maxJobs <= tonumber(rcall("GET", rateLimiterKey) or 0) then local pttl = rcall("PTTL", rateLimiterKey) if pttl == 0 then rcall("DEL", rateLimiterKey) end if pttl > 0 then return pttl end end return 0 end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end --[[ Function to move job from prioritized state to active. ]] local function moveJobFromPrioritizedToActive(priorityKey, activeKey, priorityCounterKey) local prioritizedJob = rcall("ZPOPMIN", priorityKey) if #prioritizedJob > 0 then rcall("LPUSH", activeKey, prioritizedJob[1]) return prioritizedJob[1] else rcall("DEL", priorityCounterKey) end end --[[ Function to move job from wait state to active. Input: opts - token - lock token opts - lockDuration opts - limiter ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function prepareJobForProcessing(keyPrefix, rateLimiterKey, eventStreamKey, jobId, processedOn, maxJobs, limiterDuration, markerKey, opts) local jobKey = keyPrefix .. jobId -- Check if we need to perform rate limiting. if maxJobs then local jobCounter = tonumber(rcall("INCR", rateLimiterKey)) if jobCounter == 1 then local integerDuration = math.floor(math.abs(limiterDuration)) rcall("PEXPIRE", rateLimiterKey, integerDuration) end end -- get a lock if opts['token'] ~= "0" then local lockKey = jobKey .. ':lock' rcall("SET", lockKey, opts['token'], "PX", opts['lockDuration']) end local optionalValues = {} if opts['name'] then -- Set "processedBy" field to the worker name table.insert(optionalValues, "pb") table.insert(optionalValues, opts['name']) end rcall("XADD", eventStreamKey, "*", "event", "active", "jobId", jobId, "prev", "waiting") rcall("HMSET", jobKey, "processedOn", processedOn, unpack(optionalValues)) rcall("HINCRBY", jobKey, "ats", 1) addBaseMarkerIfNeeded(markerKey, false) -- rate limit delay must be 0 in this case to prevent adding more delay -- when job that is moved to active needs to be processed return {rcall("HGETALL", jobKey), jobId, 0, 0} -- get job data end --[[ Updates the delay set, by moving delayed jobs that should be processed now to "wait". Events: 'waiting' ]] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to add job considering priority. ]] -- Includes --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end -- Try to get as much as 1000 jobs at once local function promoteDelayedJobs(delayedKey, markerKey, targetKey, prioritizedKey, eventStreamKey, prefix, timestamp, priorityCounterKey, isPaused) local jobs = rcall("ZRANGEBYSCORE", delayedKey, 0, (timestamp + 1) * 0x1000 - 1, "LIMIT", 0, 1000) if (#jobs > 0) then rcall("ZREM", delayedKey, unpack(jobs)) for _, jobId in ipairs(jobs) do local jobKey = prefix .. jobId local priority = tonumber(rcall("HGET", jobKey, "priority")) or 0 if priority == 0 then -- LIFO or FIFO rcall("LPUSH", targetKey, jobId) else local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) end -- Emit waiting event rcall("XADD", eventStreamKey, "*", "event", "waiting", "jobId", jobId, "prev", "delayed") rcall("HSET", jobKey, "delay", 0) end addBaseMarkerIfNeeded(markerKey, isPaused) end end local target, isPausedOrMaxed, rateLimitMax, rateLimitDuration = getTargetQueueList(KEYS[9], activeKey, waitKey, KEYS[8]) -- Check if there are delayed jobs that we can move to wait. local markerKey = KEYS[11] promoteDelayedJobs(delayedKey, markerKey, target, KEYS[3], eventStreamKey, ARGV[1], ARGV[2], KEYS[10], isPausedOrMaxed) local maxJobs = tonumber(rateLimitMax or (opts['limiter'] and opts['limiter']['max'])) local expireTime = getRateLimitTTL(maxJobs, rateLimiterKey) -- Check if we are rate limited first. if expireTime > 0 then return {0, 0, expireTime, 0} end -- paused or maxed queue if isPausedOrMaxed then return {0, 0, 0, 0} end local limiterDuration = (opts['limiter'] and opts['limiter']['duration']) or rateLimitDuration -- no job ID, try non-blocking move from wait to active local jobId = rcall("RPOPLPUSH", waitKey, activeKey) -- Markers in waitlist DEPRECATED in v5: Will be completely removed in v6. if jobId and string.sub(jobId, 1, 2) == "0:" then rcall("LREM", activeKey, 1, jobId) jobId = rcall("RPOPLPUSH", waitKey, activeKey) end if jobId then return prepareJobForProcessing(ARGV[1], rateLimiterKey, eventStreamKey, jobId, ARGV[2], maxJobs, limiterDuration, markerKey, opts) else jobId = moveJobFromPrioritizedToActive(KEYS[3], activeKey, KEYS[10]) if jobId then return prepareJobForProcessing(ARGV[1], rateLimiterKey, eventStreamKey, jobId, ARGV[2], maxJobs, limiterDuration, markerKey, opts) end end -- Return the timestamp for the next delayed job if any. local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then return {0, 0, 0, nextTimestamp} end return {0, 0, 0, 0} `; exports2.moveToActive = { name: "moveToActive", content, keys: 11 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveToDelayed-12.js var require_moveToDelayed_12 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveToDelayed-12.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.moveToDelayed = void 0; var content = `--[[ Moves job from active to delayed set. Input: KEYS[1] marker key KEYS[2] active key KEYS[3] prioritized key KEYS[4] delayed key KEYS[5] job key KEYS[6] events stream KEYS[7] meta key KEYS[8] stalled key KEYS[9] wait key KEYS[10] rate limiter key KEYS[11] paused key KEYS[12] pc priority counter ARGV[1] key prefix ARGV[2] timestamp ARGV[3] the id of the job ARGV[4] queue token ARGV[5] delay value ARGV[6] skip attempt ARGV[7] optional job fields to update ARGV[8] fetch next? ARGV[9] opts Output: 0 - OK -1 - Missing job. -3 - Job not in active set. Events: - delayed key. ]] local rcall = redis.call -- Includes --[[ Add delay marker if needed. ]] -- Includes --[[ Function to return the next delayed job timestamp. ]] local function getNextDelayedTimestamp(delayedKey) local result = rcall("ZRANGE", delayedKey, 0, 0, "WITHSCORES") if #result then local nextTimestamp = tonumber(result[2]) if nextTimestamp ~= nil then return nextTimestamp / 0x1000 end end end local function addDelayMarkerIfNeeded(markerKey, delayedKey) local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- Replace the score of the marker with the newest known -- next timestamp. rcall("ZADD", markerKey, nextTimestamp, "1") end end --[[ Function to fetch the next job to process. Tries to get the next job to avoid an extra roundtrip if the queue is not closing and not rate limited. Input: waitKey - wait list key activeKey - active list key prioritizedKey - prioritized sorted set key eventStreamKey - event stream key rateLimiterKey - rate limiter key delayedKey - delayed sorted set key pausedKey - paused list key metaKey - meta hash key pcKey - priority counter key markerKey - marker key prefix - keys prefix timestamp - current timestamp opts - options table: token (required) - lock token used when locking jobs lockDuration (required) - lock duration for acquired jobs limiter (optional) - rate limiter options table (e.g. { max = number }) ]] -- Includes --[[ Function to get current rate limit ttl. ]] local function getRateLimitTTL(maxJobs, rateLimiterKey) if maxJobs and maxJobs <= tonumber(rcall("GET", rateLimiterKey) or 0) then local pttl = rcall("PTTL", rateLimiterKey) if pttl == 0 then rcall("DEL", rateLimiterKey) end if pttl > 0 then return pttl end end return 0 end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end --[[ Function to move job from prioritized state to active. ]] local function moveJobFromPrioritizedToActive(priorityKey, activeKey, priorityCounterKey) local prioritizedJob = rcall("ZPOPMIN", priorityKey) if #prioritizedJob > 0 then rcall("LPUSH", activeKey, prioritizedJob[1]) return prioritizedJob[1] else rcall("DEL", priorityCounterKey) end end --[[ Function to move job from wait state to active. Input: opts - token - lock token opts - lockDuration opts - limiter ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function prepareJobForProcessing(keyPrefix, rateLimiterKey, eventStreamKey, jobId, processedOn, maxJobs, limiterDuration, markerKey, opts) local jobKey = keyPrefix .. jobId -- Check if we need to perform rate limiting. if maxJobs then local jobCounter = tonumber(rcall("INCR", rateLimiterKey)) if jobCounter == 1 then local integerDuration = math.floor(math.abs(limiterDuration)) rcall("PEXPIRE", rateLimiterKey, integerDuration) end end -- get a lock if opts['token'] ~= "0" then local lockKey = jobKey .. ':lock' rcall("SET", lockKey, opts['token'], "PX", opts['lockDuration']) end local optionalValues = {} if opts['name'] then -- Set "processedBy" field to the worker name table.insert(optionalValues, "pb") table.insert(optionalValues, opts['name']) end rcall("XADD", eventStreamKey, "*", "event", "active", "jobId", jobId, "prev", "waiting") rcall("HMSET", jobKey, "processedOn", processedOn, unpack(optionalValues)) rcall("HINCRBY", jobKey, "ats", 1) addBaseMarkerIfNeeded(markerKey, false) -- rate limit delay must be 0 in this case to prevent adding more delay -- when job that is moved to active needs to be processed return {rcall("HGETALL", jobKey), jobId, 0, 0} -- get job data end --[[ Updates the delay set, by moving delayed jobs that should be processed now to "wait". Events: 'waiting' ]] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to add job considering priority. ]] -- Includes --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end -- Try to get as much as 1000 jobs at once local function promoteDelayedJobs(delayedKey, markerKey, targetKey, prioritizedKey, eventStreamKey, prefix, timestamp, priorityCounterKey, isPaused) local jobs = rcall("ZRANGEBYSCORE", delayedKey, 0, (timestamp + 1) * 0x1000 - 1, "LIMIT", 0, 1000) if (#jobs > 0) then rcall("ZREM", delayedKey, unpack(jobs)) for _, jobId in ipairs(jobs) do local jobKey = prefix .. jobId local priority = tonumber(rcall("HGET", jobKey, "priority")) or 0 if priority == 0 then -- LIFO or FIFO rcall("LPUSH", targetKey, jobId) else local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) end -- Emit waiting event rcall("XADD", eventStreamKey, "*", "event", "waiting", "jobId", jobId, "prev", "delayed") rcall("HSET", jobKey, "delay", 0) end addBaseMarkerIfNeeded(markerKey, isPaused) end end local function fetchNextJob(waitKey, activeKey, prioritizedKey, eventStreamKey, rateLimiterKey, delayedKey, pausedKey, metaKey, pcKey, markerKey, prefix, timestamp, opts) local target, isPausedOrMaxed, rateLimitMax, rateLimitDuration = getTargetQueueList(metaKey, activeKey, waitKey, pausedKey) -- Check if there are delayed jobs that can be promoted promoteDelayedJobs(delayedKey, markerKey, target, prioritizedKey, eventStreamKey, prefix, timestamp, pcKey, isPausedOrMaxed) local maxJobs = tonumber(rateLimitMax or (opts['limiter'] and opts['limiter']['max'])) -- Check if we are rate limited first. local expireTime = getRateLimitTTL(maxJobs, rateLimiterKey) if expireTime > 0 then return {0, 0, expireTime, 0} end -- paused or maxed queue if isPausedOrMaxed then return {0, 0, 0, 0} end local limiterDuration = (opts['limiter'] and opts['limiter']['duration']) or rateLimitDuration local jobId = rcall("RPOPLPUSH", waitKey, activeKey) if jobId then -- Markers in waitlist DEPRECATED in v5: Remove in v6. if string.sub(jobId, 1, 2) == "0:" then rcall("LREM", activeKey, 1, jobId) -- If jobId is special ID 0:delay (delay greater than 0), then there is no job to process -- but if ID is 0:0, then there is at least 1 prioritized job to process if jobId == "0:0" then jobId = moveJobFromPrioritizedToActive(prioritizedKey, activeKey, pcKey) return prepareJobForProcessing(prefix, rateLimiterKey, eventStreamKey, jobId, timestamp, maxJobs, limiterDuration, markerKey, opts) end else return prepareJobForProcessing(prefix, rateLimiterKey, eventStreamKey, jobId, timestamp, maxJobs, limiterDuration, markerKey, opts) end else jobId = moveJobFromPrioritizedToActive(prioritizedKey, activeKey, pcKey) if jobId then return prepareJobForProcessing(prefix, rateLimiterKey, eventStreamKey, jobId, timestamp, maxJobs, limiterDuration, markerKey, opts) end end -- Return the timestamp for the next delayed job if any. local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- The result is guaranteed to be positive, since the -- ZRANGEBYSCORE command would have return a job otherwise. return {0, 0, 0, nextTimestamp} end end --[[ Bake in the job id first 12 bits into the timestamp to guarantee correct execution order of delayed jobs (up to 4096 jobs per given timestamp or 4096 jobs apart per timestamp) WARNING: Jobs that are so far apart that they wrap around will cause FIFO to fail ]] local function getDelayedScore(delayedKey, timestamp, delay) local delayedTimestamp = (delay > 0 and (tonumber(timestamp) + delay)) or tonumber(timestamp) local minScore = delayedTimestamp * 0x1000 local maxScore = (delayedTimestamp + 1 ) * 0x1000 - 1 local result = rcall("ZREVRANGEBYSCORE", delayedKey, maxScore, minScore, "WITHSCORES","LIMIT", 0, 1) if #result then local currentMaxScore = tonumber(result[2]) if currentMaxScore ~= nil then if currentMaxScore >= maxScore then return maxScore, delayedTimestamp else return currentMaxScore + 1, delayedTimestamp end end end return minScore, delayedTimestamp end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end local function removeLock(jobKey, stalledKey, token, jobId) if token ~= "0" then local lockKey = jobKey .. ':lock' local lockToken = rcall("GET", lockKey) if lockToken == token then rcall("DEL", lockKey) rcall("SREM", stalledKey, jobId) else if lockToken then -- Lock exists but token does not match return -6 else -- Lock is missing completely return -2 end end end return 0 end --[[ Function to update a bunch of fields in a job. ]] local function updateJobFields(jobKey, msgpackedFields) if msgpackedFields and #msgpackedFields > 0 then local fieldsToUpdate = cmsgpack.unpack(msgpackedFields) if fieldsToUpdate then rcall("HMSET", jobKey, unpack(fieldsToUpdate)) end end end local jobKey = KEYS[5] local markerKey = KEYS[1] local metaKey = KEYS[7] local token = ARGV[4] if rcall("EXISTS", jobKey) == 1 then local errorCode = removeLock(jobKey, KEYS[8], token, ARGV[3]) if errorCode < 0 then return errorCode end updateJobFields(jobKey, ARGV[7]) local delayedKey = KEYS[4] local jobId = ARGV[3] local delay = tonumber(ARGV[5]) local numRemovedElements = rcall("LREM", KEYS[2], -1, jobId) if numRemovedElements < 1 then return -3 end local score, delayedTimestamp = getDelayedScore(delayedKey, ARGV[2], delay) if ARGV[6] == "0" then rcall("HINCRBY", jobKey, "atm", 1) end rcall("HSET", jobKey, "delay", ARGV[5]) local maxEvents = getOrSetMaxEvents(metaKey) rcall("ZADD", delayedKey, score, jobId) rcall("XADD", KEYS[6], "MAXLEN", "~", maxEvents, "*", "event", "delayed", "jobId", jobId, "delay", delayedTimestamp) -- Try to get next job to avoid an extra roundtrip if the queue is not closing, -- and not rate limited. if (ARGV[8] == "1") then local opts = cmsgpack.unpack(ARGV[9]) local result = fetchNextJob(KEYS[9], KEYS[2], KEYS[3], KEYS[6], KEYS[10], KEYS[4], KEYS[11], metaKey, KEYS[12], markerKey, ARGV[1], ARGV[2], opts) if result and type(result[1]) == "table" then return result end end -- Check if we need to push a marker job to wake up sleeping workers. addDelayMarkerIfNeeded(markerKey, delayedKey) return 0 else return -1 end `; exports2.moveToDelayed = { name: "moveToDelayed", content, keys: 12 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveToFinished-14.js var require_moveToFinished_14 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveToFinished-14.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.moveToFinished = void 0; var content = `--[[ Move job from active to a finished status (completed or failed) A job can only be moved to completed if it was active. The job must be locked before it can be moved to a finished status, and the lock must be released in this script. Input: KEYS[1] wait key KEYS[2] active key KEYS[3] prioritized key KEYS[4] event stream key KEYS[5] stalled key -- Rate limiting KEYS[6] rate limiter key KEYS[7] delayed key KEYS[8] paused key KEYS[9] meta key KEYS[10] pc priority counter KEYS[11] completed/failed key KEYS[12] jobId key KEYS[13] metrics key KEYS[14] marker key ARGV[1] jobId ARGV[2] timestamp ARGV[3] msg property returnvalue / failedReason ARGV[4] return value / failed reason ARGV[5] target (completed/failed) ARGV[6] fetch next? ARGV[7] keys prefix ARGV[8] opts ARGV[9] job fields to update opts - token - lock token opts - keepJobs opts - lockDuration - lock duration in milliseconds opts - attempts max attempts opts - maxMetricsSize opts - fpof - fail parent on fail opts - cpof - continue parent on fail opts - idof - ignore dependency on fail opts - rdof - remove dependency on fail opts - name - worker name Output: 0 OK -1 Missing key. -2 Missing lock. -3 Job not in active set -4 Job has pending children -6 Lock is not owned by this client -9 Job has failed children Events: 'completed/failed' ]] local rcall = redis.call --- Includes --[[ Functions to collect metrics based on a current and previous count of jobs. Granularity is fixed at 1 minute. ]] --[[ Function to loop in batches. Just a bit of warning, some commands as ZREM could receive a maximum of 7000 parameters per call. ]] local function batches(n, batchSize) local i = 0 return function() local from = i * batchSize + 1 i = i + 1 if (from <= n) then local to = math.min(from + batchSize - 1, n) return from, to end end end local function collectMetrics(metaKey, dataPointsList, maxDataPoints, timestamp) -- Increment current count local count = rcall("HINCRBY", metaKey, "count", 1) - 1 -- Compute how many data points we need to add to the list, N. local prevTS = rcall("HGET", metaKey, "prevTS") if not prevTS then -- If prevTS is nil, set it to the current timestamp rcall("HSET", metaKey, "prevTS", timestamp, "prevCount", 0) return end local N = math.min(math.floor(timestamp / 60000) - math.floor(prevTS / 60000), tonumber(maxDataPoints)) if N > 0 then local delta = count - rcall("HGET", metaKey, "prevCount") -- If N > 1, add N-1 zeros to the list if N > 1 then local points = {} points[1] = delta for i = 2, N do points[i] = 0 end for from, to in batches(#points, 7000) do rcall("LPUSH", dataPointsList, unpack(points, from, to)) end else -- LPUSH delta to the list rcall("LPUSH", dataPointsList, delta) end -- LTRIM to keep list to its max size rcall("LTRIM", dataPointsList, 0, maxDataPoints - 1) -- update prev count with current count rcall("HSET", metaKey, "prevCount", count, "prevTS", timestamp) end end --[[ Function to fetch the next job to process. Tries to get the next job to avoid an extra roundtrip if the queue is not closing and not rate limited. Input: waitKey - wait list key activeKey - active list key prioritizedKey - prioritized sorted set key eventStreamKey - event stream key rateLimiterKey - rate limiter key delayedKey - delayed sorted set key pausedKey - paused list key metaKey - meta hash key pcKey - priority counter key markerKey - marker key prefix - keys prefix timestamp - current timestamp opts - options table: token (required) - lock token used when locking jobs lockDuration (required) - lock duration for acquired jobs limiter (optional) - rate limiter options table (e.g. { max = number }) ]] -- Includes --[[ Function to return the next delayed job timestamp. ]] local function getNextDelayedTimestamp(delayedKey) local result = rcall("ZRANGE", delayedKey, 0, 0, "WITHSCORES") if #result then local nextTimestamp = tonumber(result[2]) if nextTimestamp ~= nil then return nextTimestamp / 0x1000 end end end --[[ Function to get current rate limit ttl. ]] local function getRateLimitTTL(maxJobs, rateLimiterKey) if maxJobs and maxJobs <= tonumber(rcall("GET", rateLimiterKey) or 0) then local pttl = rcall("PTTL", rateLimiterKey) if pttl == 0 then rcall("DEL", rateLimiterKey) end if pttl > 0 then return pttl end end return 0 end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end --[[ Function to move job from prioritized state to active. ]] local function moveJobFromPrioritizedToActive(priorityKey, activeKey, priorityCounterKey) local prioritizedJob = rcall("ZPOPMIN", priorityKey) if #prioritizedJob > 0 then rcall("LPUSH", activeKey, prioritizedJob[1]) return prioritizedJob[1] else rcall("DEL", priorityCounterKey) end end --[[ Function to move job from wait state to active. Input: opts - token - lock token opts - lockDuration opts - limiter ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function prepareJobForProcessing(keyPrefix, rateLimiterKey, eventStreamKey, jobId, processedOn, maxJobs, limiterDuration, markerKey, opts) local jobKey = keyPrefix .. jobId -- Check if we need to perform rate limiting. if maxJobs then local jobCounter = tonumber(rcall("INCR", rateLimiterKey)) if jobCounter == 1 then local integerDuration = math.floor(math.abs(limiterDuration)) rcall("PEXPIRE", rateLimiterKey, integerDuration) end end -- get a lock if opts['token'] ~= "0" then local lockKey = jobKey .. ':lock' rcall("SET", lockKey, opts['token'], "PX", opts['lockDuration']) end local optionalValues = {} if opts['name'] then -- Set "processedBy" field to the worker name table.insert(optionalValues, "pb") table.insert(optionalValues, opts['name']) end rcall("XADD", eventStreamKey, "*", "event", "active", "jobId", jobId, "prev", "waiting") rcall("HMSET", jobKey, "processedOn", processedOn, unpack(optionalValues)) rcall("HINCRBY", jobKey, "ats", 1) addBaseMarkerIfNeeded(markerKey, false) -- rate limit delay must be 0 in this case to prevent adding more delay -- when job that is moved to active needs to be processed return {rcall("HGETALL", jobKey), jobId, 0, 0} -- get job data end --[[ Updates the delay set, by moving delayed jobs that should be processed now to "wait". Events: 'waiting' ]] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to add job considering priority. ]] -- Includes --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end -- Try to get as much as 1000 jobs at once local function promoteDelayedJobs(delayedKey, markerKey, targetKey, prioritizedKey, eventStreamKey, prefix, timestamp, priorityCounterKey, isPaused) local jobs = rcall("ZRANGEBYSCORE", delayedKey, 0, (timestamp + 1) * 0x1000 - 1, "LIMIT", 0, 1000) if (#jobs > 0) then rcall("ZREM", delayedKey, unpack(jobs)) for _, jobId in ipairs(jobs) do local jobKey = prefix .. jobId local priority = tonumber(rcall("HGET", jobKey, "priority")) or 0 if priority == 0 then -- LIFO or FIFO rcall("LPUSH", targetKey, jobId) else local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) end -- Emit waiting event rcall("XADD", eventStreamKey, "*", "event", "waiting", "jobId", jobId, "prev", "delayed") rcall("HSET", jobKey, "delay", 0) end addBaseMarkerIfNeeded(markerKey, isPaused) end end local function fetchNextJob(waitKey, activeKey, prioritizedKey, eventStreamKey, rateLimiterKey, delayedKey, pausedKey, metaKey, pcKey, markerKey, prefix, timestamp, opts) local target, isPausedOrMaxed, rateLimitMax, rateLimitDuration = getTargetQueueList(metaKey, activeKey, waitKey, pausedKey) -- Check if there are delayed jobs that can be promoted promoteDelayedJobs(delayedKey, markerKey, target, prioritizedKey, eventStreamKey, prefix, timestamp, pcKey, isPausedOrMaxed) local maxJobs = tonumber(rateLimitMax or (opts['limiter'] and opts['limiter']['max'])) -- Check if we are rate limited first. local expireTime = getRateLimitTTL(maxJobs, rateLimiterKey) if expireTime > 0 then return {0, 0, expireTime, 0} end -- paused or maxed queue if isPausedOrMaxed then return {0, 0, 0, 0} end local limiterDuration = (opts['limiter'] and opts['limiter']['duration']) or rateLimitDuration local jobId = rcall("RPOPLPUSH", waitKey, activeKey) if jobId then -- Markers in waitlist DEPRECATED in v5: Remove in v6. if string.sub(jobId, 1, 2) == "0:" then rcall("LREM", activeKey, 1, jobId) -- If jobId is special ID 0:delay (delay greater than 0), then there is no job to process -- but if ID is 0:0, then there is at least 1 prioritized job to process if jobId == "0:0" then jobId = moveJobFromPrioritizedToActive(prioritizedKey, activeKey, pcKey) return prepareJobForProcessing(prefix, rateLimiterKey, eventStreamKey, jobId, timestamp, maxJobs, limiterDuration, markerKey, opts) end else return prepareJobForProcessing(prefix, rateLimiterKey, eventStreamKey, jobId, timestamp, maxJobs, limiterDuration, markerKey, opts) end else jobId = moveJobFromPrioritizedToActive(prioritizedKey, activeKey, pcKey) if jobId then return prepareJobForProcessing(prefix, rateLimiterKey, eventStreamKey, jobId, timestamp, maxJobs, limiterDuration, markerKey, opts) end end -- Return the timestamp for the next delayed job if any. local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- The result is guaranteed to be positive, since the -- ZRANGEBYSCORE command would have return a job otherwise. return {0, 0, 0, nextTimestamp} end end --[[ Function to recursively move from waitingChildren to failed. ]] -- Includes --[[ Validate and move parent to a wait status (waiting, delayed or prioritized) if no pending dependencies. ]] -- Includes --[[ Validate and move parent to a wait status (waiting, delayed or prioritized) if needed. ]] -- Includes --[[ Move parent to a wait status (wait, prioritized or delayed) ]] -- Includes --[[ Add delay marker if needed. ]] -- Includes local function addDelayMarkerIfNeeded(markerKey, delayedKey) local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- Replace the score of the marker with the newest known -- next timestamp. rcall("ZADD", markerKey, nextTimestamp, "1") end end --[[ Function to check if queue is paused or maxed (since an empty list and !EXISTS are not really the same). ]] local function isQueuePausedOrMaxed(queueMetaKey, activeKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency") if queueAttributes[1] then return true else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) return activeCount >= tonumber(queueAttributes[2]) end end return false end local function moveParentToWait(parentQueueKey, parentKey, parentId, timestamp) local parentWaitKey = parentQueueKey .. ":wait" local parentPausedKey = parentQueueKey .. ":paused" local parentActiveKey = parentQueueKey .. ":active" local parentMetaKey = parentQueueKey .. ":meta" local parentMarkerKey = parentQueueKey .. ":marker" local jobAttributes = rcall("HMGET", parentKey, "priority", "delay") local priority = tonumber(jobAttributes[1]) or 0 local delay = tonumber(jobAttributes[2]) or 0 if delay > 0 then local delayedTimestamp = tonumber(timestamp) + delay local score = delayedTimestamp * 0x1000 local parentDelayedKey = parentQueueKey .. ":delayed" rcall("ZADD", parentDelayedKey, score, parentId) rcall("XADD", parentQueueKey .. ":events", "*", "event", "delayed", "jobId", parentId, "delay", delayedTimestamp) addDelayMarkerIfNeeded(parentMarkerKey, parentDelayedKey) else if priority == 0 then local parentTarget, isParentPausedOrMaxed = getTargetQueueList(parentMetaKey, parentActiveKey, parentWaitKey, parentPausedKey) addJobInTargetList(parentTarget, parentMarkerKey, "RPUSH", isParentPausedOrMaxed, parentId) else local isPausedOrMaxed = isQueuePausedOrMaxed(parentMetaKey, parentActiveKey) addJobWithPriority(parentMarkerKey, parentQueueKey .. ":prioritized", priority, parentId, parentQueueKey .. ":pc", isPausedOrMaxed) end rcall("XADD", parentQueueKey .. ":events", "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function moveParentToWaitIfNeeded(parentQueueKey, parentKey, parentId, timestamp) if rcall("EXISTS", parentKey) == 1 then local parentWaitingChildrenKey = parentQueueKey .. ":waiting-children" if rcall("ZSCORE", parentWaitingChildrenKey, parentId) then rcall("ZREM", parentWaitingChildrenKey, parentId) moveParentToWait(parentQueueKey, parentKey, parentId, timestamp) end end end local function moveParentToWaitIfNoPendingDependencies(parentQueueKey, parentDependenciesKey, parentKey, parentId, timestamp) local doNotHavePendingDependencies = rcall("SCARD", parentDependenciesKey) == 0 if doNotHavePendingDependencies then moveParentToWaitIfNeeded(parentQueueKey, parentKey, parentId, timestamp) end end local handleChildFailureAndMoveParentToWait = function (parentQueueKey, parentKey, parentId, jobIdKey, timestamp) if rcall("EXISTS", parentKey) == 1 then local parentWaitingChildrenKey = parentQueueKey .. ":waiting-children" local parentDelayedKey = parentQueueKey .. ":delayed" local parentWaitingChildrenOrDelayedKey if rcall("ZSCORE", parentWaitingChildrenKey, parentId) then parentWaitingChildrenOrDelayedKey = parentWaitingChildrenKey elseif rcall("ZSCORE", parentDelayedKey, parentId) then parentWaitingChildrenOrDelayedKey = parentDelayedKey rcall("HSET", parentKey, "delay", 0) end if parentWaitingChildrenOrDelayedKey then rcall("ZREM", parentWaitingChildrenOrDelayedKey, parentId) local deferredFailure = "child " .. jobIdKey .. " failed" rcall("HSET", parentKey, "defa", deferredFailure) moveParentToWait(parentQueueKey, parentKey, parentId, timestamp) else if not rcall("ZSCORE", parentQueueKey .. ":failed", parentId) then local deferredFailure = "child " .. jobIdKey .. " failed" rcall("HSET", parentKey, "defa", deferredFailure) end end end end local moveChildFromDependenciesIfNeeded = function (rawParentData, childKey, failedReason, timestamp) if rawParentData then local parentData = cjson.decode(rawParentData) local parentKey = parentData['queueKey'] .. ':' .. parentData['id'] local parentDependenciesChildrenKey = parentKey .. ":dependencies" if parentData['fpof'] then if rcall("SREM", parentDependenciesChildrenKey, childKey) == 1 then local parentUnsuccessfulChildrenKey = parentKey .. ":unsuccessful" rcall("ZADD", parentUnsuccessfulChildrenKey, timestamp, childKey) handleChildFailureAndMoveParentToWait( parentData['queueKey'], parentKey, parentData['id'], childKey, timestamp ) end elseif parentData['cpof'] then if rcall("SREM", parentDependenciesChildrenKey, childKey) == 1 then local parentFailedChildrenKey = parentKey .. ":failed" rcall("HSET", parentFailedChildrenKey, childKey, failedReason) moveParentToWaitIfNeeded(parentData['queueKey'], parentKey, parentData['id'], timestamp) end elseif parentData['idof'] or parentData['rdof'] then if rcall("SREM", parentDependenciesChildrenKey, childKey) == 1 then moveParentToWaitIfNoPendingDependencies(parentData['queueKey'], parentDependenciesChildrenKey, parentKey, parentData['id'], timestamp) if parentData['idof'] then local parentFailedChildrenKey = parentKey .. ":failed" rcall("HSET", parentFailedChildrenKey, childKey, failedReason) end end end end end --[[ Function to remove deduplication key if needed when a job is moved to completed or failed states. ]] local function removeDeduplicationKeyIfNeededOnFinalization(prefixKey, deduplicationId, jobId) if deduplicationId then local deduplicationKey = prefixKey .. "de:" .. deduplicationId local pttl = rcall("PTTL", deduplicationKey) if pttl == 0 then return rcall("DEL", deduplicationKey) end if pttl == -1 then local currentJobId = rcall('GET', deduplicationKey) if currentJobId and currentJobId == jobId then return rcall("DEL", deduplicationKey) end end end end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end --[[ Functions to remove jobs by max age. ]] -- Includes --[[ Function to remove job. ]] -- Includes --[[ Function to remove deduplication key if needed when a job is being removed. ]] local function removeDeduplicationKeyIfNeededOnRemoval(prefixKey, jobId, deduplicationId) if deduplicationId then local deduplicationKey = prefixKey .. "de:" .. deduplicationId local currentJobId = rcall('GET', deduplicationKey) if currentJobId and currentJobId == jobId then rcall("DEL", deduplicationKey) -- Also clean up any pending dedup-next data for this dedup ID rcall("DEL", prefixKey .. "dn:" .. deduplicationId) return 1 end end end --[[ Check if this job has a parent. If so we will just remove it from the parent child list, but if it is the last child we should move the parent to "wait/paused" which requires code from "moveToFinished" ]] -- Includes --[[ Functions to destructure job key. Just a bit of warning, these functions may be a bit slow and affect performance significantly. ]] local getJobIdFromKey = function (jobKey) return string.match(jobKey, ".*:(.*)") end local getJobKeyPrefix = function (jobKey, jobId) return string.sub(jobKey, 0, #jobKey - #jobId) end local function _moveParentToWait(parentPrefix, parentId, emitEvent) local parentTarget, isPausedOrMaxed = getTargetQueueList(parentPrefix .. "meta", parentPrefix .. "active", parentPrefix .. "wait", parentPrefix .. "paused") addJobInTargetList(parentTarget, parentPrefix .. "marker", "RPUSH", isPausedOrMaxed, parentId) if emitEvent then local parentEventStream = parentPrefix .. "events" rcall("XADD", parentEventStream, "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function removeParentDependencyKey(jobKey, hard, parentKey, baseKey, debounceId) if parentKey then local parentDependenciesKey = parentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(parentKey) local parentPrefix = getJobKeyPrefix(parentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then -- remove parent in same queue if parentPrefix == baseKey then removeParentDependencyKey(parentKey, hard, nil, baseKey, nil) removeJobKeys(parentKey) if debounceId then rcall("DEL", parentPrefix .. "de:" .. debounceId) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end else local parentAttributes = rcall("HMGET", jobKey, "parentKey", "deid") local missedParentKey = parentAttributes[1] if( (type(missedParentKey) == "string") and missedParentKey ~= "" and (rcall("EXISTS", missedParentKey) == 1)) then local parentDependenciesKey = missedParentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(missedParentKey) local parentPrefix = getJobKeyPrefix(missedParentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then if parentPrefix == baseKey then removeParentDependencyKey(missedParentKey, hard, nil, baseKey, nil) removeJobKeys(missedParentKey) if parentAttributes[2] then rcall("DEL", parentPrefix .. "de:" .. parentAttributes[2]) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end end end return false end local function removeJob(jobId, hard, baseKey, shouldRemoveDeduplicationKey) local jobKey = baseKey .. jobId removeParentDependencyKey(jobKey, hard, nil, baseKey) if shouldRemoveDeduplicationKey then local deduplicationId = rcall("HGET", jobKey, "deid") removeDeduplicationKeyIfNeededOnRemoval(baseKey, jobId, deduplicationId) end removeJobKeys(jobKey) end local function removeJobsByMaxAge(timestamp, maxAge, targetSet, prefix, maxLimit) local start = timestamp - maxAge * 1000 local jobIds = rcall("ZREVRANGEBYSCORE", targetSet, start, "-inf", "LIMIT", 0, maxLimit) for i, jobId in ipairs(jobIds) do removeJob(jobId, false, prefix, false --[[remove debounce key]]) end if #jobIds > 0 then if #jobIds < maxLimit then rcall("ZREMRANGEBYSCORE", targetSet, "-inf", start) else for from, to in batches(#jobIds, 7000) do rcall("ZREM", targetSet, unpack(jobIds, from, to)) end end end end --[[ Functions to remove jobs by max count. ]] -- Includes local function removeJobsByMaxCount(maxCount, targetSet, prefix) local start = maxCount local jobIds = rcall("ZREVRANGE", targetSet, start, -1) for i, jobId in ipairs(jobIds) do removeJob(jobId, false, prefix, false --[[remove debounce key]]) end rcall("ZREMRANGEBYRANK", targetSet, 0, -(maxCount + 1)) end local function removeLock(jobKey, stalledKey, token, jobId) if token ~= "0" then local lockKey = jobKey .. ':lock' local lockToken = rcall("GET", lockKey) if lockToken == token then rcall("DEL", lockKey) rcall("SREM", stalledKey, jobId) else if lockToken then -- Lock exists but token does not match return -6 else -- Lock is missing completely return -2 end end end return 0 end --[[ Function to create a new job from stored dedup-next data when a deduplicated job with keepLastIfActive finishes. At most one next job is created per deduplication ID. Multiple triggers while active overwrite the dedup-next data, so only the latest data is used. ]] -- Includes --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to set the deduplication key for a job. Uses TTL from deduplication opts if provided. ]] local function setDeduplicationKey(deduplicationKey, jobId, deduplicationOpts) local ttl = deduplicationOpts and deduplicationOpts['ttl'] if ttl and ttl > 0 then rcall('SET', deduplicationKey, jobId, 'PX', ttl) else rcall('SET', deduplicationKey, jobId) end end --[[ Shared helper to store a job and enqueue it into the appropriate list/set. Handles delayed, prioritized, and standard (LIFO/FIFO) jobs. Emits the appropriate event after enqueuing ("delayed" or "waiting"). Returns delay, priority from storeJob. ]] -- Includes --[[ Adds a delayed job to the queue by doing the following: - Creates a new job key with the job data. - adds to delayed zset. - Emits a global event 'delayed' if the job is delayed. ]] -- Includes --[[ Bake in the job id first 12 bits into the timestamp to guarantee correct execution order of delayed jobs (up to 4096 jobs per given timestamp or 4096 jobs apart per timestamp) WARNING: Jobs that are so far apart that they wrap around will cause FIFO to fail ]] local function getDelayedScore(delayedKey, timestamp, delay) local delayedTimestamp = (delay > 0 and (tonumber(timestamp) + delay)) or tonumber(timestamp) local minScore = delayedTimestamp * 0x1000 local maxScore = (delayedTimestamp + 1 ) * 0x1000 - 1 local result = rcall("ZREVRANGEBYSCORE", delayedKey, maxScore, minScore, "WITHSCORES","LIMIT", 0, 1) if #result then local currentMaxScore = tonumber(result[2]) if currentMaxScore ~= nil then if currentMaxScore >= maxScore then return maxScore, delayedTimestamp else return currentMaxScore + 1, delayedTimestamp end end end return minScore, delayedTimestamp end local function addDelayedJob(jobId, delayedKey, eventsKey, timestamp, maxEvents, markerKey, delay) local score, delayedTimestamp = getDelayedScore(delayedKey, timestamp, tonumber(delay)) rcall("ZADD", delayedKey, score, jobId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "delayed", "jobId", jobId, "delay", delayedTimestamp) -- mark that a delayed job is available addDelayMarkerIfNeeded(markerKey, delayedKey) end --[[ Function to store a job ]] local function storeJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey) local jsonOpts = cjson.encode(opts) local delay = opts['delay'] or 0 local priority = opts['priority'] or 0 local debounceId = opts['de'] and opts['de']['id'] local optionalValues = {} if parentKey ~= nil then table.insert(optionalValues, "parentKey") table.insert(optionalValues, parentKey) table.insert(optionalValues, "parent") table.insert(optionalValues, parentData) end if repeatJobKey then table.insert(optionalValues, "rjk") table.insert(optionalValues, repeatJobKey) end if debounceId then table.insert(optionalValues, "deid") table.insert(optionalValues, debounceId) end rcall("HMSET", jobIdKey, "name", name, "data", data, "opts", jsonOpts, "timestamp", timestamp, "delay", delay, "priority", priority, unpack(optionalValues)) rcall("XADD", eventsKey, "*", "event", "added", "jobId", jobId, "name", name) return delay, priority end local function storeAndEnqueueJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey, maxEvents, waitKey, pausedKey, activeKey, metaKey, prioritizedKey, priorityCounterKey, delayedKey, markerKey) local delay, priority = storeJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey) if delay ~= 0 and delayedKey then addDelayedJob(jobId, delayedKey, eventsKey, timestamp, maxEvents, markerKey, delay) else local target, isPausedOrMaxed = getTargetQueueList(metaKey, activeKey, waitKey, pausedKey) if priority > 0 then addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) else local pushCmd = opts['lifo'] and 'RPUSH' or 'LPUSH' addJobInTargetList(target, markerKey, pushCmd, isPausedOrMaxed, jobId) end rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "waiting", "jobId", jobId) end return delay, priority end local function requeueDeduplicatedJob(prefix, deduplicationId, eventStreamKey, metaKey, activeKey, waitKey, pausedKey, markerKey, prioritizedKey, priorityCounterKey, delayedKey, timestamp) local deduplicationNextKey = prefix .. "dn:" .. deduplicationId if rcall("EXISTS", deduplicationNextKey) == 1 then local nextData = rcall("HMGET", deduplicationNextKey, "name", "data", "opts", "pk", "pd", "pdk", "rjk", "jid") -- Always increment the counter to keep it monotonic local nextId = rcall("INCR", prefix .. "id") .. "" local storedJobId = nextData[8] -- index 8 = "jid" (8th field in the HMGET call above) local newJobId if storedJobId then newJobId = storedJobId else newJobId = nextId end local newJobIdKey = prefix .. newJobId local newOpts = cjson.decode(nextData[3]) local deduplicationKey = prefix .. "de:" .. deduplicationId local parentKey = nextData[4] or nil local parentData = nextData[5] or nil local parentDependenciesKey = nextData[6] or nil local repeatJobKey = nextData[7] or nil -- Set dedup key for the new job (without TTL when keepLastIfActive, -- so the key outlives the job's active duration) local deOpts = newOpts['de'] if deOpts and deOpts['keepLastIfActive'] then rcall('SET', deduplicationKey, newJobId) else setDeduplicationKey(deduplicationKey, newJobId, deOpts) end -- Store and enqueue using the shared helper (handles priority/lifo/delayed) local maxEvents = getOrSetMaxEvents(metaKey) storeAndEnqueueJob(eventStreamKey, newJobIdKey, newJobId, nextData[1], nextData[2], newOpts, timestamp, parentKey, parentData, repeatJobKey, maxEvents, waitKey, pausedKey, activeKey, metaKey, prioritizedKey, priorityCounterKey, delayedKey, markerKey) -- Register as child dependency if the job has a parent if parentDependenciesKey then rcall("SADD", parentDependenciesKey, newJobIdKey) end -- Only delete the dedup-next hash after the job is fully created, -- so that if any step above errors, the data is not permanently lost. rcall("DEL", deduplicationNextKey) end end --[[ Function to trim events, default 10000. ]] -- Includes local function trimEvents(metaKey, eventStreamKey) local maxEvents = getOrSetMaxEvents(metaKey) if maxEvents then rcall("XTRIM", eventStreamKey, "MAXLEN", "~", maxEvents) else rcall("XTRIM", eventStreamKey, "MAXLEN", "~", 10000) end end --[[ Validate and move or add dependencies to parent. ]] -- Includes local function updateParentDepsIfNeeded(parentKey, parentQueueKey, parentDependenciesKey, parentId, jobIdKey, returnvalue, timestamp ) local processedSet = parentKey .. ":processed" rcall("HSET", processedSet, jobIdKey, returnvalue) moveParentToWaitIfNoPendingDependencies(parentQueueKey, parentDependenciesKey, parentKey, parentId, timestamp) end --[[ Function to update a bunch of fields in a job. ]] local function updateJobFields(jobKey, msgpackedFields) if msgpackedFields and #msgpackedFields > 0 then local fieldsToUpdate = cmsgpack.unpack(msgpackedFields) if fieldsToUpdate then rcall("HMSET", jobKey, unpack(fieldsToUpdate)) end end end local jobIdKey = KEYS[12] if rcall("EXISTS", jobIdKey) == 1 then -- Make sure job exists -- Make sure it does not have pending dependencies -- It must happen before removing lock if ARGV[5] == "completed" then if rcall("SCARD", jobIdKey .. ":dependencies") ~= 0 then return -4 end if rcall("ZCARD", jobIdKey .. ":unsuccessful") ~= 0 then return -9 end end local opts = cmsgpack.unpack(ARGV[8]) local token = opts['token'] local errorCode = removeLock(jobIdKey, KEYS[5], token, ARGV[1]) if errorCode < 0 then return errorCode end updateJobFields(jobIdKey, ARGV[9]); local attempts = opts['attempts'] local maxMetricsSize = opts['maxMetricsSize'] local maxCount = opts['keepJobs']['count'] local maxAge = opts['keepJobs']['age'] local maxLimit = opts['keepJobs']['limit'] or 1000 local jobAttributes = rcall("HMGET", jobIdKey, "parentKey", "parent", "deid") local parentKey = jobAttributes[1] or "" local parentId = "" local parentQueueKey = "" if jobAttributes[2] then -- TODO: need to revisit this logic if it's still needed local jsonDecodedParent = cjson.decode(jobAttributes[2]) parentId = jsonDecodedParent['id'] parentQueueKey = jsonDecodedParent['queueKey'] end local jobId = ARGV[1] local timestamp = ARGV[2] -- Remove from active list (if not active we shall return error) local numRemovedElements = rcall("LREM", KEYS[2], -1, jobId) if (numRemovedElements < 1) then return -3 end local eventStreamKey = KEYS[4] local metaKey = KEYS[9] -- Trim events before emitting them to avoid trimming events emitted in this script trimEvents(metaKey, eventStreamKey) local prefix = ARGV[7] removeDeduplicationKeyIfNeededOnFinalization(prefix, jobAttributes[3], jobId) -- Check if there is requeue data for this dedup ID (keepLastIfActive mode) if jobAttributes[3] then requeueDeduplicatedJob(prefix, jobAttributes[3], eventStreamKey, metaKey, KEYS[2], KEYS[1], KEYS[8], KEYS[14], KEYS[3], KEYS[10], KEYS[7], timestamp) end -- If job has a parent we need to -- 1) remove this job id from parents dependencies -- 2) move the job Id to parent "processed" set -- 3) push the results into parent "results" list -- 4) if parent's dependencies is empty, then move parent to "wait/paused". Note it may be a different queue!. if parentId == "" and parentKey ~= "" then parentId = getJobIdFromKey(parentKey) parentQueueKey = getJobKeyPrefix(parentKey, ":" .. parentId) end if parentId ~= "" then if ARGV[5] == "completed" then local dependenciesSet = parentKey .. ":dependencies" if rcall("SREM", dependenciesSet, jobIdKey) == 1 then updateParentDepsIfNeeded(parentKey, parentQueueKey, dependenciesSet, parentId, jobIdKey, ARGV[4], timestamp) end else moveChildFromDependenciesIfNeeded(jobAttributes[2], jobIdKey, ARGV[4], timestamp) end end local attemptsMade = rcall("HINCRBY", jobIdKey, "atm", 1) -- Remove job? if maxCount ~= 0 then local targetSet = KEYS[11] -- Add to complete/failed set rcall("ZADD", targetSet, timestamp, jobId) rcall("HSET", jobIdKey, ARGV[3], ARGV[4], "finishedOn", timestamp) -- "returnvalue" / "failedReason" and "finishedOn" if ARGV[5] == "failed" then rcall("HDEL", jobIdKey, "defa") end -- Remove old jobs? if maxAge ~= nil then removeJobsByMaxAge(timestamp, maxAge, targetSet, prefix, maxLimit) end if maxCount ~= nil and maxCount > 0 then removeJobsByMaxCount(maxCount, targetSet, prefix) end else removeJobKeys(jobIdKey) if parentKey ~= "" then -- TODO: when a child is removed when finished, result or failure in parent -- must not be deleted, those value references should be deleted when the parent -- is deleted removeParentDependencyKey(jobIdKey, false, parentKey, jobAttributes[3]) end end rcall("XADD", eventStreamKey, "*", "event", ARGV[5], "jobId", jobId, ARGV[3], ARGV[4], "prev", "active") if ARGV[5] == "failed" then if tonumber(attemptsMade) >= tonumber(attempts) then rcall("XADD", eventStreamKey, "*", "event", "retries-exhausted", "jobId", jobId, "attemptsMade", attemptsMade) end end -- Collect metrics if maxMetricsSize ~= "" then collectMetrics(KEYS[13], KEYS[13] .. ':data', maxMetricsSize, timestamp) end -- Try to get next job to avoid an extra roundtrip if the queue is not closing, -- and not rate limited. if (ARGV[6] == "1") then local result = fetchNextJob(KEYS[1], KEYS[2], KEYS[3], eventStreamKey, KEYS[6], KEYS[7], KEYS[8], metaKey, KEYS[10], KEYS[14], prefix, timestamp, opts) if result then return result end end local waitLen = rcall("LLEN", KEYS[1]) if waitLen == 0 then local activeLen = rcall("LLEN", KEYS[2]) if activeLen == 0 then local prioritizedLen = rcall("ZCARD", KEYS[3]) if prioritizedLen == 0 then rcall("XADD", eventStreamKey, "*", "event", "drained") end end end return 0 else return -1 end `; exports2.moveToFinished = { name: "moveToFinished", content, keys: 14 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveToWaitingChildren-7.js var require_moveToWaitingChildren_7 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/moveToWaitingChildren-7.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.moveToWaitingChildren = void 0; var content = `--[[ Moves job from active to waiting children set. Input: KEYS[1] active key KEYS[2] wait-children key KEYS[3] job key KEYS[4] job dependencies key KEYS[5] job unsuccessful key KEYS[6] stalled key KEYS[7] events key ARGV[1] token ARGV[2] child key ARGV[3] timestamp ARGV[4] jobId ARGV[5] prefix Output: 0 - OK 1 - There are not pending dependencies. -1 - Missing job. -2 - Missing lock -3 - Job not in active set -9 - Job has failed children ]] local rcall = redis.call local activeKey = KEYS[1] local waitingChildrenKey = KEYS[2] local jobKey = KEYS[3] local jobDependenciesKey = KEYS[4] local jobUnsuccessfulKey = KEYS[5] local stalledKey = KEYS[6] local eventStreamKey = KEYS[7] local token = ARGV[1] local timestamp = ARGV[3] local jobId = ARGV[4] --- Includes local function removeLock(jobKey, stalledKey, token, jobId) if token ~= "0" then local lockKey = jobKey .. ':lock' local lockToken = rcall("GET", lockKey) if lockToken == token then rcall("DEL", lockKey) rcall("SREM", stalledKey, jobId) else if lockToken then -- Lock exists but token does not match return -6 else -- Lock is missing completely return -2 end end end return 0 end local function removeJobFromActive(activeKey, stalledKey, jobKey, jobId, token) local errorCode = removeLock(jobKey, stalledKey, token, jobId) if errorCode < 0 then return errorCode end local numRemovedElements = rcall("LREM", activeKey, -1, jobId) if numRemovedElements < 1 then return -3 end return 0 end local function moveToWaitingChildren(activeKey, waitingChildrenKey, stalledKey, eventStreamKey, jobKey, jobId, timestamp, token) local errorCode = removeJobFromActive(activeKey, stalledKey, jobKey, jobId, token) if errorCode < 0 then return errorCode end local score = tonumber(timestamp) rcall("ZADD", waitingChildrenKey, score, jobId) rcall("XADD", eventStreamKey, "*", "event", "waiting-children", "jobId", jobId, 'prev', 'active') return 0 end if rcall("EXISTS", jobKey) == 1 then if rcall("ZCARD", jobUnsuccessfulKey) ~= 0 then return -9 else if ARGV[2] ~= "" then if rcall("SISMEMBER", jobDependenciesKey, ARGV[2]) ~= 0 then return moveToWaitingChildren(activeKey, waitingChildrenKey, stalledKey, eventStreamKey, jobKey, jobId, timestamp, token) end return 1 else if rcall("SCARD", jobDependenciesKey) ~= 0 then return moveToWaitingChildren(activeKey, waitingChildrenKey, stalledKey, eventStreamKey, jobKey, jobId, timestamp, token) end return 1 end end end return -1 `; exports2.moveToWaitingChildren = { name: "moveToWaitingChildren", content, keys: 7 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/obliterate-2.js var require_obliterate_2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/obliterate-2.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.obliterate = void 0; var content = `--[[ Completely obliterates a queue and all of its contents This command completely destroys a queue including all of its jobs, current or past leaving no trace of its existence. Since this script needs to iterate to find all the job keys, consider that this call may be slow for very large queues. The queue needs to be "paused" or it will return an error If the queue has currently active jobs then the script by default will return error, however this behaviour can be overridden using the 'force' option. Input: KEYS[1] meta KEYS[2] base ARGV[1] count ARGV[2] force ]] local maxCount = tonumber(ARGV[1]) local baseKey = KEYS[2] local rcall = redis.call -- Includes --[[ Functions to remove jobs. ]] -- Includes --[[ Function to remove job. ]] -- Includes --[[ Function to remove deduplication key if needed when a job is being removed. ]] local function removeDeduplicationKeyIfNeededOnRemoval(prefixKey, jobId, deduplicationId) if deduplicationId then local deduplicationKey = prefixKey .. "de:" .. deduplicationId local currentJobId = rcall('GET', deduplicationKey) if currentJobId and currentJobId == jobId then rcall("DEL", deduplicationKey) -- Also clean up any pending dedup-next data for this dedup ID rcall("DEL", prefixKey .. "dn:" .. deduplicationId) return 1 end end end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end --[[ Check if this job has a parent. If so we will just remove it from the parent child list, but if it is the last child we should move the parent to "wait/paused" which requires code from "moveToFinished" ]] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Functions to destructure job key. Just a bit of warning, these functions may be a bit slow and affect performance significantly. ]] local getJobIdFromKey = function (jobKey) return string.match(jobKey, ".*:(.*)") end local getJobKeyPrefix = function (jobKey, jobId) return string.sub(jobKey, 0, #jobKey - #jobId) end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local function _moveParentToWait(parentPrefix, parentId, emitEvent) local parentTarget, isPausedOrMaxed = getTargetQueueList(parentPrefix .. "meta", parentPrefix .. "active", parentPrefix .. "wait", parentPrefix .. "paused") addJobInTargetList(parentTarget, parentPrefix .. "marker", "RPUSH", isPausedOrMaxed, parentId) if emitEvent then local parentEventStream = parentPrefix .. "events" rcall("XADD", parentEventStream, "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function removeParentDependencyKey(jobKey, hard, parentKey, baseKey, debounceId) if parentKey then local parentDependenciesKey = parentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(parentKey) local parentPrefix = getJobKeyPrefix(parentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then -- remove parent in same queue if parentPrefix == baseKey then removeParentDependencyKey(parentKey, hard, nil, baseKey, nil) removeJobKeys(parentKey) if debounceId then rcall("DEL", parentPrefix .. "de:" .. debounceId) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end else local parentAttributes = rcall("HMGET", jobKey, "parentKey", "deid") local missedParentKey = parentAttributes[1] if( (type(missedParentKey) == "string") and missedParentKey ~= "" and (rcall("EXISTS", missedParentKey) == 1)) then local parentDependenciesKey = missedParentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(missedParentKey) local parentPrefix = getJobKeyPrefix(missedParentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then if parentPrefix == baseKey then removeParentDependencyKey(missedParentKey, hard, nil, baseKey, nil) removeJobKeys(missedParentKey) if parentAttributes[2] then rcall("DEL", parentPrefix .. "de:" .. parentAttributes[2]) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end end end return false end local function removeJob(jobId, hard, baseKey, shouldRemoveDeduplicationKey) local jobKey = baseKey .. jobId removeParentDependencyKey(jobKey, hard, nil, baseKey) if shouldRemoveDeduplicationKey then local deduplicationId = rcall("HGET", jobKey, "deid") removeDeduplicationKeyIfNeededOnRemoval(baseKey, jobId, deduplicationId) end removeJobKeys(jobKey) end local function removeJobs(keys, hard, baseKey, max) for i, key in ipairs(keys) do removeJob(key, hard, baseKey, true --[[remove debounce key]]) end return max - #keys end --[[ Functions to remove jobs. ]] -- Includes --[[ Function to filter out jobs to ignore from a table. ]] local function filterOutJobsToIgnore(jobs, jobsToIgnore) local filteredJobs = {} for i = 1, #jobs do if not jobsToIgnore[jobs[i]] then table.insert(filteredJobs, jobs[i]) end end return filteredJobs end local function getListItems(keyName, max) return rcall('LRANGE', keyName, 0, max - 1) end local function removeListJobs(keyName, hard, baseKey, max, jobsToIgnore) local jobs = getListItems(keyName, max) if jobsToIgnore then jobs = filterOutJobsToIgnore(jobs, jobsToIgnore) end local count = removeJobs(jobs, hard, baseKey, max) rcall("LTRIM", keyName, #jobs, -1) return count end -- Includes --[[ Function to loop in batches. Just a bit of warning, some commands as ZREM could receive a maximum of 7000 parameters per call. ]] local function batches(n, batchSize) local i = 0 return function() local from = i * batchSize + 1 i = i + 1 if (from <= n) then local to = math.min(from + batchSize - 1, n) return from, to end end end --[[ Function to get ZSet items. ]] local function getZSetItems(keyName, max) return rcall('ZRANGE', keyName, 0, max - 1) end local function removeZSetJobs(keyName, hard, baseKey, max, jobsToIgnore) local jobs = getZSetItems(keyName, max) if jobsToIgnore then jobs = filterOutJobsToIgnore(jobs, jobsToIgnore) end local count = removeJobs(jobs, hard, baseKey, max) if(#jobs > 0) then for from, to in batches(#jobs, 7000) do rcall("ZREM", keyName, unpack(jobs, from, to)) end end return count end local function removeLockKeys(keys) for i, key in ipairs(keys) do rcall("DEL", baseKey .. key .. ':lock') end end -- 1) Check if paused, if not return with error. if rcall("HEXISTS", KEYS[1], "paused") ~= 1 then return -1 -- Error, NotPaused end -- 2) Check if there are active jobs, if there are and not "force" return error. local activeKey = baseKey .. 'active' local activeJobs = getListItems(activeKey, maxCount) if (#activeJobs > 0) then if(ARGV[2] == "") then return -2 -- Error, ExistActiveJobs end end removeLockKeys(activeJobs) maxCount = removeJobs(activeJobs, true, baseKey, maxCount) rcall("LTRIM", activeKey, #activeJobs, -1) if(maxCount <= 0) then return 1 end local delayedKey = baseKey .. 'delayed' maxCount = removeZSetJobs(delayedKey, true, baseKey, maxCount) if(maxCount <= 0) then return 1 end local repeatKey = baseKey .. 'repeat' local repeatJobsIds = getZSetItems(repeatKey, maxCount) for i, key in ipairs(repeatJobsIds) do local jobKey = repeatKey .. ":" .. key rcall("DEL", jobKey) end if(#repeatJobsIds > 0) then for from, to in batches(#repeatJobsIds, 7000) do rcall("ZREM", repeatKey, unpack(repeatJobsIds, from, to)) end end maxCount = maxCount - #repeatJobsIds if(maxCount <= 0) then return 1 end local completedKey = baseKey .. 'completed' maxCount = removeZSetJobs(completedKey, true, baseKey, maxCount) if(maxCount <= 0) then return 1 end local pausedKey = baseKey .. 'paused' maxCount = removeListJobs(pausedKey, true, baseKey, maxCount) if(maxCount <= 0) then return 1 end local prioritizedKey = baseKey .. 'prioritized' maxCount = removeZSetJobs(prioritizedKey, true, baseKey, maxCount) if(maxCount <= 0) then return 1 end local failedKey = baseKey .. 'failed' maxCount = removeZSetJobs(failedKey, true, baseKey, maxCount) if(maxCount <= 0) then return 1 end if(maxCount > 0) then rcall("DEL", baseKey .. 'events', baseKey .. 'delay', baseKey .. 'stalled-check', baseKey .. 'stalled', baseKey .. 'id', baseKey .. 'pc', baseKey .. 'marker', baseKey .. 'meta', baseKey .. 'metrics:completed', baseKey .. 'metrics:completed:data', baseKey .. 'metrics:failed', baseKey .. 'metrics:failed:data') return 0 else return 1 end `; exports2.obliterate = { name: "obliterate", content, keys: 2 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/paginate-1.js var require_paginate_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/paginate-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.paginate = void 0; var content = `--[[ Paginate a set or hash Input: KEYS[1] key pointing to the set or hash to be paginated. ARGV[1] page start offset ARGV[2] page end offset (-1 for all the elements) ARGV[3] cursor ARGV[4] offset ARGV[5] max iterations ARGV[6] fetch jobs? Output: [cursor, offset, items, numItems] ]] local rcall = redis.call -- Includes --[[ Function to achieve pagination for a set or hash. This function simulates pagination in the most efficient way possible for a set using sscan or hscan. The main limitation is that sets are not order preserving, so the pagination is not stable. This means that if the set is modified between pages, the same element may appear in different pages. ]] -- Maximum number of elements to be returned by sscan per iteration. local maxCount = 100 -- Finds the cursor, and returns the first elements available for the requested page. local function findPage(key, command, pageStart, pageSize, cursor, offset, maxIterations, fetchJobs) local items = {} local jobs = {} local iterations = 0 repeat -- Iterate over the set using sscan/hscan. local result = rcall(command, key, cursor, "COUNT", maxCount) cursor = result[1] local members = result[2] local step = 1 if command == "HSCAN" then step = 2 end if #members == 0 then -- If the result is empty, we can return the result. return cursor, offset, items, jobs end local chunkStart = offset local chunkEnd = offset + #members / step local pageEnd = pageStart + pageSize if chunkEnd < pageStart then -- If the chunk is before the page, we can skip it. offset = chunkEnd elseif chunkStart > pageEnd then -- If the chunk is after the page, we can return the result. return cursor, offset, items, jobs else -- If the chunk is overlapping the page, we need to add the elements to the result. for i = 1, #members, step do if offset >= pageEnd then return cursor, offset, items, jobs end if offset >= pageStart then local index = #items + 1 if fetchJobs ~= nil then jobs[#jobs+1] = rcall("HGETALL", members[i]) end if step == 2 then items[index] = {members[i], members[i + 1]} else items[index] = members[i] end end offset = offset + 1 end end iterations = iterations + 1 until cursor == "0" or iterations >= maxIterations return cursor, offset, items, jobs end local key = KEYS[1] local scanCommand = "SSCAN" local countCommand = "SCARD" local type = rcall("TYPE", key)["ok"] if type == "none" then return {0, 0, {}, 0} elseif type == "hash" then scanCommand = "HSCAN" countCommand = "HLEN" elseif type ~= "set" then return redis.error_reply("Pagination is only supported for sets and hashes.") end local numItems = rcall(countCommand, key) local startOffset = tonumber(ARGV[1]) local endOffset = tonumber(ARGV[2]) if endOffset == -1 then endOffset = numItems end local pageSize = (endOffset - startOffset) + 1 local cursor, offset, items, jobs = findPage(key, scanCommand, startOffset, pageSize, ARGV[3], tonumber(ARGV[4]), tonumber(ARGV[5]), ARGV[6]) return {cursor, offset, items, numItems, jobs} `; exports2.paginate = { name: "paginate", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/pause-7.js var require_pause_7 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/pause-7.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.pause = void 0; var content = `--[[ Pauses or resumes a queue globally. Input: KEYS[1] 'wait' or 'paused' KEYS[2] 'paused' or 'wait' KEYS[3] 'meta' KEYS[4] 'prioritized' KEYS[5] events stream key KEYS[6] 'delayed' KEYS[7] 'marker' ARGV[1] 'paused' or 'resumed' Event: publish paused or resumed event. ]] local rcall = redis.call -- Includes --[[ Add delay marker if needed. ]] -- Includes --[[ Function to return the next delayed job timestamp. ]] local function getNextDelayedTimestamp(delayedKey) local result = rcall("ZRANGE", delayedKey, 0, 0, "WITHSCORES") if #result then local nextTimestamp = tonumber(result[2]) if nextTimestamp ~= nil then return nextTimestamp / 0x1000 end end end local function addDelayMarkerIfNeeded(markerKey, delayedKey) local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- Replace the score of the marker with the newest known -- next timestamp. rcall("ZADD", markerKey, nextTimestamp, "1") end end local markerKey = KEYS[7] local hasJobs = rcall("EXISTS", KEYS[1]) == 1 --TODO: check this logic to be reused when changing a delay if hasJobs then rcall("RENAME", KEYS[1], KEYS[2]) end if ARGV[1] == "paused" then rcall("HSET", KEYS[3], "paused", 1) rcall("DEL", markerKey) else rcall("HDEL", KEYS[3], "paused") if hasJobs or rcall("ZCARD", KEYS[4]) > 0 then -- Add marker if there are waiting or priority jobs rcall("ZADD", markerKey, 0, "0") else addDelayMarkerIfNeeded(markerKey, KEYS[6]) end end rcall("XADD", KEYS[5], "*", "event", ARGV[1]); `; exports2.pause = { name: "pause", content, keys: 7 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/promote-9.js var require_promote_9 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/promote-9.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.promote = void 0; var content = `--[[ Promotes a job that is currently "delayed" to the "waiting" state Input: KEYS[1] 'delayed' KEYS[2] 'wait' KEYS[3] 'paused' KEYS[4] 'meta' KEYS[5] 'prioritized' KEYS[6] 'active' KEYS[7] 'pc' priority counter KEYS[8] 'event stream' KEYS[9] 'marker' ARGV[1] queue.toKey('') ARGV[2] jobId Output: 0 - OK -3 - Job not in delayed zset. Events: 'waiting' ]] local rcall = redis.call local jobId = ARGV[2] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to add job considering priority. ]] -- Includes --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end if rcall("ZREM", KEYS[1], jobId) == 1 then local jobKey = ARGV[1] .. jobId local priority = tonumber(rcall("HGET", jobKey, "priority")) or 0 local metaKey = KEYS[4] local markerKey = KEYS[9] -- Remove delayed "marker" from the wait list if there is any. -- Since we are adding a job we do not need the marker anymore. -- Markers in waitlist DEPRECATED in v5: Remove in v6. local target, isPausedOrMaxed = getTargetQueueList(metaKey, KEYS[6], KEYS[2], KEYS[3]) local marker = rcall("LINDEX", target, 0) if marker and string.sub(marker, 1, 2) == "0:" then rcall("LPOP", target) end if priority == 0 then -- LIFO or FIFO addJobInTargetList(target, markerKey, "LPUSH", isPausedOrMaxed, jobId) else addJobWithPriority(markerKey, KEYS[5], priority, jobId, KEYS[7], isPausedOrMaxed) end rcall("XADD", KEYS[8], "*", "event", "waiting", "jobId", jobId, "prev", "delayed"); rcall("HSET", jobKey, "delay", 0) return 0 else return -3 end `; exports2.promote = { name: "promote", content, keys: 9 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/releaseLock-1.js var require_releaseLock_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/releaseLock-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.releaseLock = void 0; var content = `--[[ Release lock Input: KEYS[1] 'lock', ARGV[1] token ARGV[2] lock duration in milliseconds Output: "OK" if lock extended successfully. ]] local rcall = redis.call if rcall("GET", KEYS[1]) == ARGV[1] then return rcall("DEL", KEYS[1]) else return 0 end `; exports2.releaseLock = { name: "releaseLock", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeChildDependency-1.js var require_removeChildDependency_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeChildDependency-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.removeChildDependency = void 0; var content = `--[[ Break parent-child dependency by removing child reference from parent Input: KEYS[1] 'key' prefix, ARGV[1] job key ARGV[2] parent key Output: 0 - OK 1 - There is not relationship. -1 - Missing job key -5 - Missing parent key ]] local rcall = redis.call local jobKey = ARGV[1] local parentKey = ARGV[2] -- Includes --[[ Check if this job has a parent. If so we will just remove it from the parent child list, but if it is the last child we should move the parent to "wait/paused" which requires code from "moveToFinished" ]] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Functions to destructure job key. Just a bit of warning, these functions may be a bit slow and affect performance significantly. ]] local getJobIdFromKey = function (jobKey) return string.match(jobKey, ".*:(.*)") end local getJobKeyPrefix = function (jobKey, jobId) return string.sub(jobKey, 0, #jobKey - #jobId) end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end local function _moveParentToWait(parentPrefix, parentId, emitEvent) local parentTarget, isPausedOrMaxed = getTargetQueueList(parentPrefix .. "meta", parentPrefix .. "active", parentPrefix .. "wait", parentPrefix .. "paused") addJobInTargetList(parentTarget, parentPrefix .. "marker", "RPUSH", isPausedOrMaxed, parentId) if emitEvent then local parentEventStream = parentPrefix .. "events" rcall("XADD", parentEventStream, "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function removeParentDependencyKey(jobKey, hard, parentKey, baseKey, debounceId) if parentKey then local parentDependenciesKey = parentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(parentKey) local parentPrefix = getJobKeyPrefix(parentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then -- remove parent in same queue if parentPrefix == baseKey then removeParentDependencyKey(parentKey, hard, nil, baseKey, nil) removeJobKeys(parentKey) if debounceId then rcall("DEL", parentPrefix .. "de:" .. debounceId) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end else local parentAttributes = rcall("HMGET", jobKey, "parentKey", "deid") local missedParentKey = parentAttributes[1] if( (type(missedParentKey) == "string") and missedParentKey ~= "" and (rcall("EXISTS", missedParentKey) == 1)) then local parentDependenciesKey = missedParentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(missedParentKey) local parentPrefix = getJobKeyPrefix(missedParentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then if parentPrefix == baseKey then removeParentDependencyKey(missedParentKey, hard, nil, baseKey, nil) removeJobKeys(missedParentKey) if parentAttributes[2] then rcall("DEL", parentPrefix .. "de:" .. parentAttributes[2]) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end end end return false end if rcall("EXISTS", jobKey) ~= 1 then return -1 end if rcall("EXISTS", parentKey) ~= 1 then return -5 end if removeParentDependencyKey(jobKey, false, parentKey, KEYS[1], nil) then rcall("HDEL", jobKey, "parentKey", "parent") return 0 else return 1 end`; exports2.removeChildDependency = { name: "removeChildDependency", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeDeduplicationKey-1.js var require_removeDeduplicationKey_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeDeduplicationKey-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.removeDeduplicationKey = void 0; var content = `--[[ Remove deduplication key if it matches the job id. Input: KEYS[1] deduplication key ARGV[1] job id Output: 0 - false 1 - true ]] local rcall = redis.call local deduplicationKey = KEYS[1] local jobId = ARGV[1] local currentJobId = rcall('GET', deduplicationKey) if currentJobId and currentJobId == jobId then return rcall("DEL", deduplicationKey) end return 0 `; exports2.removeDeduplicationKey = { name: "removeDeduplicationKey", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeJob-2.js var require_removeJob_2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeJob-2.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.removeJob = void 0; var content = `--[[ Remove a job from all the statuses it may be in as well as all its data. In order to be able to remove a job, it cannot be active. Input: KEYS[1] jobKey KEYS[2] repeat key ARGV[1] jobId ARGV[2] remove children ARGV[3] queue prefix Events: 'removed' ]] local rcall = redis.call -- Includes --[[ Function to check if the job belongs to a job scheduler and current delayed job matches with jobId ]] local function isJobSchedulerJob(jobId, jobKey, jobSchedulersKey) local repeatJobKey = rcall("HGET", jobKey, "rjk") if repeatJobKey then local prevMillis = rcall("ZSCORE", jobSchedulersKey, repeatJobKey) if prevMillis then local currentDelayedJobId = "repeat:" .. repeatJobKey .. ":" .. prevMillis return jobId == currentDelayedJobId end end return false end --[[ Function to recursively check if there are no locks on the jobs to be removed. returns: boolean ]] --[[ Functions to destructure job key. Just a bit of warning, these functions may be a bit slow and affect performance significantly. ]] local getJobIdFromKey = function (jobKey) return string.match(jobKey, ".*:(.*)") end local getJobKeyPrefix = function (jobKey, jobId) return string.sub(jobKey, 0, #jobKey - #jobId) end local function isLocked( prefix, jobId, removeChildren) local jobKey = prefix .. jobId; -- Check if this job is locked local lockKey = jobKey .. ':lock' local lock = rcall("GET", lockKey) if not lock then if removeChildren == "1" then local dependencies = rcall("SMEMBERS", jobKey .. ":dependencies") if (#dependencies > 0) then for i, childJobKey in ipairs(dependencies) do -- We need to get the jobId for this job. local childJobId = getJobIdFromKey(childJobKey) local childJobPrefix = getJobKeyPrefix(childJobKey, childJobId) local result = isLocked( childJobPrefix, childJobId, removeChildren ) if result then return true end end end end return false end return true end --[[ Remove a job from all the statuses it may be in as well as all its data, including its children. Active children can be ignored. Events: 'removed' ]] local rcall = redis.call -- Includes --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to remove deduplication key if needed when a job is being removed. ]] local function removeDeduplicationKeyIfNeededOnRemoval(prefixKey, jobId, deduplicationId) if deduplicationId then local deduplicationKey = prefixKey .. "de:" .. deduplicationId local currentJobId = rcall('GET', deduplicationKey) if currentJobId and currentJobId == jobId then rcall("DEL", deduplicationKey) -- Also clean up any pending dedup-next data for this dedup ID rcall("DEL", prefixKey .. "dn:" .. deduplicationId) return 1 end end end --[[ Function to remove from any state. returns: prev state ]] local function removeJobFromAnyState( prefix, jobId) -- We start with the ZSCORE checks, since they have O(1) complexity if rcall("ZSCORE", prefix .. "completed", jobId) then rcall("ZREM", prefix .. "completed", jobId) return "completed" elseif rcall("ZSCORE", prefix .. "waiting-children", jobId) then rcall("ZREM", prefix .. "waiting-children", jobId) return "waiting-children" elseif rcall("ZSCORE", prefix .. "delayed", jobId) then rcall("ZREM", prefix .. "delayed", jobId) return "delayed" elseif rcall("ZSCORE", prefix .. "failed", jobId) then rcall("ZREM", prefix .. "failed", jobId) return "failed" elseif rcall("ZSCORE", prefix .. "prioritized", jobId) then rcall("ZREM", prefix .. "prioritized", jobId) return "prioritized" -- We remove only 1 element from the list, since we assume they are not added multiple times elseif rcall("LREM", prefix .. "wait", 1, jobId) == 1 then return "wait" elseif rcall("LREM", prefix .. "paused", 1, jobId) == 1 then return "paused" elseif rcall("LREM", prefix .. "active", 1, jobId) == 1 then return "active" end return "unknown" end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end --[[ Check if this job has a parent. If so we will just remove it from the parent child list, but if it is the last child we should move the parent to "wait/paused" which requires code from "moveToFinished" ]] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local function _moveParentToWait(parentPrefix, parentId, emitEvent) local parentTarget, isPausedOrMaxed = getTargetQueueList(parentPrefix .. "meta", parentPrefix .. "active", parentPrefix .. "wait", parentPrefix .. "paused") addJobInTargetList(parentTarget, parentPrefix .. "marker", "RPUSH", isPausedOrMaxed, parentId) if emitEvent then local parentEventStream = parentPrefix .. "events" rcall("XADD", parentEventStream, "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function removeParentDependencyKey(jobKey, hard, parentKey, baseKey, debounceId) if parentKey then local parentDependenciesKey = parentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(parentKey) local parentPrefix = getJobKeyPrefix(parentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then -- remove parent in same queue if parentPrefix == baseKey then removeParentDependencyKey(parentKey, hard, nil, baseKey, nil) removeJobKeys(parentKey) if debounceId then rcall("DEL", parentPrefix .. "de:" .. debounceId) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end else local parentAttributes = rcall("HMGET", jobKey, "parentKey", "deid") local missedParentKey = parentAttributes[1] if( (type(missedParentKey) == "string") and missedParentKey ~= "" and (rcall("EXISTS", missedParentKey) == 1)) then local parentDependenciesKey = missedParentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(missedParentKey) local parentPrefix = getJobKeyPrefix(missedParentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then if parentPrefix == baseKey then removeParentDependencyKey(missedParentKey, hard, nil, baseKey, nil) removeJobKeys(missedParentKey) if parentAttributes[2] then rcall("DEL", parentPrefix .. "de:" .. parentAttributes[2]) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end end end return false end local removeJobChildren local removeJobWithChildren removeJobChildren = function(prefix, jobKey, options) -- Check if this job has children -- If so, we are going to try to remove the children recursively in a depth-first way -- because if some job is locked, we must exit with an error. if not options.ignoreProcessed then local processed = rcall("HGETALL", jobKey .. ":processed") if #processed > 0 then for i = 1, #processed, 2 do local childJobId = getJobIdFromKey(processed[i]) local childJobPrefix = getJobKeyPrefix(processed[i], childJobId) removeJobWithChildren(childJobPrefix, childJobId, jobKey, options) end end local failed = rcall("HGETALL", jobKey .. ":failed") if #failed > 0 then for i = 1, #failed, 2 do local childJobId = getJobIdFromKey(failed[i]) local childJobPrefix = getJobKeyPrefix(failed[i], childJobId) removeJobWithChildren(childJobPrefix, childJobId, jobKey, options) end end local unsuccessful = rcall("ZRANGE", jobKey .. ":unsuccessful", 0, -1) if #unsuccessful > 0 then for i = 1, #unsuccessful, 1 do local childJobId = getJobIdFromKey(unsuccessful[i]) local childJobPrefix = getJobKeyPrefix(unsuccessful[i], childJobId) removeJobWithChildren(childJobPrefix, childJobId, jobKey, options) end end end local dependencies = rcall("SMEMBERS", jobKey .. ":dependencies") if #dependencies > 0 then for i, childJobKey in ipairs(dependencies) do local childJobId = getJobIdFromKey(childJobKey) local childJobPrefix = getJobKeyPrefix(childJobKey, childJobId) removeJobWithChildren(childJobPrefix, childJobId, jobKey, options) end end end removeJobWithChildren = function(prefix, jobId, parentKey, options) local jobKey = prefix .. jobId if options.ignoreLocked then if isLocked(prefix, jobId) then return end end -- Check if job is in the failed zset local failedSet = prefix .. "failed" if not (options.ignoreProcessed and rcall("ZSCORE", failedSet, jobId)) then removeParentDependencyKey(jobKey, false, parentKey, nil) if options.removeChildren then removeJobChildren(prefix, jobKey, options) end local prev = removeJobFromAnyState(prefix, jobId) local deduplicationId = rcall("HGET", jobKey, "deid") removeDeduplicationKeyIfNeededOnRemoval(prefix, jobId, deduplicationId) if removeJobKeys(jobKey) > 0 then local metaKey = prefix .. "meta" local maxEvents = getOrSetMaxEvents(metaKey) rcall("XADD", prefix .. "events", "MAXLEN", "~", maxEvents, "*", "event", "removed", "jobId", jobId, "prev", prev) end end end local jobId = ARGV[1] local shouldRemoveChildren = ARGV[2] local prefix = ARGV[3] local jobKey = KEYS[1] local repeatKey = KEYS[2] if isJobSchedulerJob(jobId, jobKey, repeatKey) then return -8 end if not isLocked(prefix, jobId, shouldRemoveChildren) then local options = { removeChildren = shouldRemoveChildren == "1", ignoreProcessed = false, ignoreLocked = false } removeJobWithChildren(prefix, jobId, nil, options) return 1 end return 0 `; exports2.removeJob = { name: "removeJob", content, keys: 2 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeJobScheduler-3.js var require_removeJobScheduler_3 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeJobScheduler-3.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.removeJobScheduler = void 0; var content = `--[[ Removes a job scheduler and its next scheduled job. Input: KEYS[1] job schedulers key KEYS[2] delayed jobs key KEYS[3] events key ARGV[1] job scheduler id ARGV[2] prefix key Output: 0 - OK 1 - Missing repeat job Events: 'removed' ]] local rcall = redis.call -- Includes --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end local jobSchedulerId = ARGV[1] local prefix = ARGV[2] local millis = rcall("ZSCORE", KEYS[1], jobSchedulerId) if millis then -- Delete next programmed job. local delayedJobId = "repeat:" .. jobSchedulerId .. ":" .. millis if(rcall("ZREM", KEYS[2], delayedJobId) == 1) then removeJobKeys(prefix .. delayedJobId) rcall("XADD", KEYS[3], "*", "event", "removed", "jobId", delayedJobId, "prev", "delayed") end end if(rcall("ZREM", KEYS[1], jobSchedulerId) == 1) then rcall("DEL", KEYS[1] .. ":" .. jobSchedulerId) return 0 end return 1 `; exports2.removeJobScheduler = { name: "removeJobScheduler", content, keys: 3 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeOrphanedJobs-1.js var require_removeOrphanedJobs_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeOrphanedJobs-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.removeOrphanedJobs = void 0; var content = `--[[ Removes orphaned job keys that exist in Redis but are not referenced in any queue state set. Checks each candidate atomically. Input: KEYS[1] base prefix key including trailing colon (e.g. bull:queueName:) ARGV[1] number of state key suffixes ARGV[2 .. 1+N] state key suffixes (e.g. active, wait, completed, ...) ARGV[2+N] number of job sub-key suffixes ARGV[3+N .. 2+N+M] job sub-key suffixes (e.g. logs, dependencies, ...) ARGV[3+N+M .. end] candidate job IDs to check Output: number of removed jobs ]] local rcall = redis.call local basePrefix = KEYS[1] -- Parse state key suffixes and cache their full key names + types. local stateKeyCount = tonumber(ARGV[1]) local stateKeys = {} local stateKeyTypes = {} for i = 1, stateKeyCount do local fullKey = basePrefix .. ARGV[1 + i] stateKeys[i] = fullKey stateKeyTypes[i] = rcall('TYPE', fullKey)['ok'] end -- Parse job sub-key suffixes. local subKeyCountIdx = 2 + stateKeyCount local subKeyCount = tonumber(ARGV[subKeyCountIdx]) local subKeySuffixes = {} for i = 1, subKeyCount do subKeySuffixes[i] = ARGV[subKeyCountIdx + i] end -- Process candidate job IDs. local candidateStart = subKeyCountIdx + subKeyCount + 1 local removedCount = 0 for c = candidateStart, #ARGV do local jobId = ARGV[c] local found = false for i = 1, stateKeyCount do local kt = stateKeyTypes[i] if kt == 'list' then if rcall('LPOS', stateKeys[i], jobId) then found = true break end elseif kt == 'zset' then if rcall('ZSCORE', stateKeys[i], jobId) then found = true break end elseif kt == 'set' then if rcall('SISMEMBER', stateKeys[i], jobId) == 1 then found = true break end end end if not found then local jobKey = basePrefix .. jobId local keysToDelete = { jobKey } for _, suffix in ipairs(subKeySuffixes) do keysToDelete[#keysToDelete + 1] = jobKey .. ':' .. suffix end rcall('DEL', unpack(keysToDelete)) removedCount = removedCount + 1 end end return removedCount `; exports2.removeOrphanedJobs = { name: "removeOrphanedJobs", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeRepeatable-3.js var require_removeRepeatable_3 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeRepeatable-3.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.removeRepeatable = void 0; var content = `--[[ Removes a repeatable job Input: KEYS[1] repeat jobs key KEYS[2] delayed jobs key KEYS[3] events key ARGV[1] old repeat job id ARGV[2] options concat ARGV[3] repeat job key ARGV[4] prefix key Output: 0 - OK 1 - Missing repeat job Events: 'removed' ]] local rcall = redis.call local millis = rcall("ZSCORE", KEYS[1], ARGV[2]) -- Includes --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end -- legacy removal TODO: remove in next breaking change if millis then -- Delete next programmed job. local repeatJobId = ARGV[1] .. millis if(rcall("ZREM", KEYS[2], repeatJobId) == 1) then removeJobKeys(ARGV[4] .. repeatJobId) rcall("XADD", KEYS[3], "*", "event", "removed", "jobId", repeatJobId, "prev", "delayed"); end end if(rcall("ZREM", KEYS[1], ARGV[2]) == 1) then return 0 end -- new removal millis = rcall("ZSCORE", KEYS[1], ARGV[3]) if millis then -- Delete next programmed job. local repeatJobId = "repeat:" .. ARGV[3] .. ":" .. millis if(rcall("ZREM", KEYS[2], repeatJobId) == 1) then removeJobKeys(ARGV[4] .. repeatJobId) rcall("XADD", KEYS[3], "*", "event", "removed", "jobId", repeatJobId, "prev", "delayed") end end if(rcall("ZREM", KEYS[1], ARGV[3]) == 1) then rcall("DEL", KEYS[1] .. ":" .. ARGV[3]) return 0 end return 1 `; exports2.removeRepeatable = { name: "removeRepeatable", content, keys: 3 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeUnprocessedChildren-2.js var require_removeUnprocessedChildren_2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/removeUnprocessedChildren-2.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.removeUnprocessedChildren = void 0; var content = `--[[ Remove a job from all the statuses it may be in as well as all its data. In order to be able to remove a job, it cannot be active. Input: KEYS[1] jobKey KEYS[2] meta key ARGV[1] prefix ARGV[2] jobId Events: 'removed' for every children removed ]] -- Includes --[[ Remove a job from all the statuses it may be in as well as all its data, including its children. Active children can be ignored. Events: 'removed' ]] local rcall = redis.call -- Includes --[[ Functions to destructure job key. Just a bit of warning, these functions may be a bit slow and affect performance significantly. ]] local getJobIdFromKey = function (jobKey) return string.match(jobKey, ".*:(.*)") end local getJobKeyPrefix = function (jobKey, jobId) return string.sub(jobKey, 0, #jobKey - #jobId) end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to check if the job belongs to a job scheduler and current delayed job matches with jobId ]] local function isJobSchedulerJob(jobId, jobKey, jobSchedulersKey) local repeatJobKey = rcall("HGET", jobKey, "rjk") if repeatJobKey then local prevMillis = rcall("ZSCORE", jobSchedulersKey, repeatJobKey) if prevMillis then local currentDelayedJobId = "repeat:" .. repeatJobKey .. ":" .. prevMillis return jobId == currentDelayedJobId end end return false end --[[ Function to remove deduplication key if needed when a job is being removed. ]] local function removeDeduplicationKeyIfNeededOnRemoval(prefixKey, jobId, deduplicationId) if deduplicationId then local deduplicationKey = prefixKey .. "de:" .. deduplicationId local currentJobId = rcall('GET', deduplicationKey) if currentJobId and currentJobId == jobId then rcall("DEL", deduplicationKey) -- Also clean up any pending dedup-next data for this dedup ID rcall("DEL", prefixKey .. "dn:" .. deduplicationId) return 1 end end end --[[ Function to remove from any state. returns: prev state ]] local function removeJobFromAnyState( prefix, jobId) -- We start with the ZSCORE checks, since they have O(1) complexity if rcall("ZSCORE", prefix .. "completed", jobId) then rcall("ZREM", prefix .. "completed", jobId) return "completed" elseif rcall("ZSCORE", prefix .. "waiting-children", jobId) then rcall("ZREM", prefix .. "waiting-children", jobId) return "waiting-children" elseif rcall("ZSCORE", prefix .. "delayed", jobId) then rcall("ZREM", prefix .. "delayed", jobId) return "delayed" elseif rcall("ZSCORE", prefix .. "failed", jobId) then rcall("ZREM", prefix .. "failed", jobId) return "failed" elseif rcall("ZSCORE", prefix .. "prioritized", jobId) then rcall("ZREM", prefix .. "prioritized", jobId) return "prioritized" -- We remove only 1 element from the list, since we assume they are not added multiple times elseif rcall("LREM", prefix .. "wait", 1, jobId) == 1 then return "wait" elseif rcall("LREM", prefix .. "paused", 1, jobId) == 1 then return "paused" elseif rcall("LREM", prefix .. "active", 1, jobId) == 1 then return "active" end return "unknown" end --[[ Function to remove job keys. ]] local function removeJobKeys(jobKey) return rcall("DEL", jobKey, jobKey .. ':logs', jobKey .. ':dependencies', jobKey .. ':processed', jobKey .. ':failed', jobKey .. ':unsuccessful') end --[[ Check if this job has a parent. If so we will just remove it from the parent child list, but if it is the last child we should move the parent to "wait/paused" which requires code from "moveToFinished" ]] -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local function _moveParentToWait(parentPrefix, parentId, emitEvent) local parentTarget, isPausedOrMaxed = getTargetQueueList(parentPrefix .. "meta", parentPrefix .. "active", parentPrefix .. "wait", parentPrefix .. "paused") addJobInTargetList(parentTarget, parentPrefix .. "marker", "RPUSH", isPausedOrMaxed, parentId) if emitEvent then local parentEventStream = parentPrefix .. "events" rcall("XADD", parentEventStream, "*", "event", "waiting", "jobId", parentId, "prev", "waiting-children") end end local function removeParentDependencyKey(jobKey, hard, parentKey, baseKey, debounceId) if parentKey then local parentDependenciesKey = parentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(parentKey) local parentPrefix = getJobKeyPrefix(parentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then -- remove parent in same queue if parentPrefix == baseKey then removeParentDependencyKey(parentKey, hard, nil, baseKey, nil) removeJobKeys(parentKey) if debounceId then rcall("DEL", parentPrefix .. "de:" .. debounceId) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end else local parentAttributes = rcall("HMGET", jobKey, "parentKey", "deid") local missedParentKey = parentAttributes[1] if( (type(missedParentKey) == "string") and missedParentKey ~= "" and (rcall("EXISTS", missedParentKey) == 1)) then local parentDependenciesKey = missedParentKey .. ":dependencies" local result = rcall("SREM", parentDependenciesKey, jobKey) if result > 0 then local pendingDependencies = rcall("SCARD", parentDependenciesKey) if pendingDependencies == 0 then local parentId = getJobIdFromKey(missedParentKey) local parentPrefix = getJobKeyPrefix(missedParentKey, parentId) local numRemovedElements = rcall("ZREM", parentPrefix .. "waiting-children", parentId) if numRemovedElements == 1 then if hard then if parentPrefix == baseKey then removeParentDependencyKey(missedParentKey, hard, nil, baseKey, nil) removeJobKeys(missedParentKey) if parentAttributes[2] then rcall("DEL", parentPrefix .. "de:" .. parentAttributes[2]) end else _moveParentToWait(parentPrefix, parentId) end else _moveParentToWait(parentPrefix, parentId, true) end end end return true end end end return false end --[[ Function to recursively check if there are no locks on the jobs to be removed. returns: boolean ]] local function isLocked( prefix, jobId, removeChildren) local jobKey = prefix .. jobId; -- Check if this job is locked local lockKey = jobKey .. ':lock' local lock = rcall("GET", lockKey) if not lock then if removeChildren == "1" then local dependencies = rcall("SMEMBERS", jobKey .. ":dependencies") if (#dependencies > 0) then for i, childJobKey in ipairs(dependencies) do -- We need to get the jobId for this job. local childJobId = getJobIdFromKey(childJobKey) local childJobPrefix = getJobKeyPrefix(childJobKey, childJobId) local result = isLocked( childJobPrefix, childJobId, removeChildren ) if result then return true end end end end return false end return true end local removeJobChildren local removeJobWithChildren removeJobChildren = function(prefix, jobKey, options) -- Check if this job has children -- If so, we are going to try to remove the children recursively in a depth-first way -- because if some job is locked, we must exit with an error. if not options.ignoreProcessed then local processed = rcall("HGETALL", jobKey .. ":processed") if #processed > 0 then for i = 1, #processed, 2 do local childJobId = getJobIdFromKey(processed[i]) local childJobPrefix = getJobKeyPrefix(processed[i], childJobId) removeJobWithChildren(childJobPrefix, childJobId, jobKey, options) end end local failed = rcall("HGETALL", jobKey .. ":failed") if #failed > 0 then for i = 1, #failed, 2 do local childJobId = getJobIdFromKey(failed[i]) local childJobPrefix = getJobKeyPrefix(failed[i], childJobId) removeJobWithChildren(childJobPrefix, childJobId, jobKey, options) end end local unsuccessful = rcall("ZRANGE", jobKey .. ":unsuccessful", 0, -1) if #unsuccessful > 0 then for i = 1, #unsuccessful, 1 do local childJobId = getJobIdFromKey(unsuccessful[i]) local childJobPrefix = getJobKeyPrefix(unsuccessful[i], childJobId) removeJobWithChildren(childJobPrefix, childJobId, jobKey, options) end end end local dependencies = rcall("SMEMBERS", jobKey .. ":dependencies") if #dependencies > 0 then for i, childJobKey in ipairs(dependencies) do local childJobId = getJobIdFromKey(childJobKey) local childJobPrefix = getJobKeyPrefix(childJobKey, childJobId) removeJobWithChildren(childJobPrefix, childJobId, jobKey, options) end end end removeJobWithChildren = function(prefix, jobId, parentKey, options) local jobKey = prefix .. jobId if options.ignoreLocked then if isLocked(prefix, jobId) then return end end -- Check if job is in the failed zset local failedSet = prefix .. "failed" if not (options.ignoreProcessed and rcall("ZSCORE", failedSet, jobId)) then removeParentDependencyKey(jobKey, false, parentKey, nil) if options.removeChildren then removeJobChildren(prefix, jobKey, options) end local prev = removeJobFromAnyState(prefix, jobId) local deduplicationId = rcall("HGET", jobKey, "deid") removeDeduplicationKeyIfNeededOnRemoval(prefix, jobId, deduplicationId) if removeJobKeys(jobKey) > 0 then local metaKey = prefix .. "meta" local maxEvents = getOrSetMaxEvents(metaKey) rcall("XADD", prefix .. "events", "MAXLEN", "~", maxEvents, "*", "event", "removed", "jobId", jobId, "prev", prev) end end end local prefix = ARGV[1] local jobId = ARGV[2] local jobKey = KEYS[1] local metaKey = KEYS[2] local options = { removeChildren = "1", ignoreProcessed = true, ignoreLocked = true } removeJobChildren(prefix, jobKey, options) `; exports2.removeUnprocessedChildren = { name: "removeUnprocessedChildren", content, keys: 2 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/reprocessJob-8.js var require_reprocessJob_8 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/reprocessJob-8.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.reprocessJob = void 0; var content = `--[[ Attempts to reprocess a job Input: KEYS[1] job key KEYS[2] events stream KEYS[3] job state KEYS[4] wait key KEYS[5] meta KEYS[6] paused key KEYS[7] active key KEYS[8] marker key ARGV[1] job.id ARGV[2] (job.opts.lifo ? 'R' : 'L') + 'PUSH' ARGV[3] propVal - failedReason/returnvalue ARGV[4] prev state - failed/completed ARGV[5] reset attemptsMade - "1" or "0" ARGV[6] reset attemptsStarted - "1" or "0" Output: 1 means the operation was a success -1 means the job does not exist -3 means the job was not found in the expected set. ]] local rcall = redis.call; -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end local jobKey = KEYS[1] if rcall("EXISTS", jobKey) == 1 then local jobId = ARGV[1] if (rcall("ZREM", KEYS[3], jobId) == 1) then local attributesToRemove = {} if ARGV[5] == "1" then table.insert(attributesToRemove, "atm") end if ARGV[6] == "1" then table.insert(attributesToRemove, "ats") end rcall("HDEL", jobKey, "finishedOn", "processedOn", ARGV[3], unpack(attributesToRemove)) local target, isPausedOrMaxed = getTargetQueueList(KEYS[5], KEYS[7], KEYS[4], KEYS[6]) addJobInTargetList(target, KEYS[8], ARGV[2], isPausedOrMaxed, jobId) local parentKey = rcall("HGET", jobKey, "parentKey") if parentKey and rcall("EXISTS", parentKey) == 1 then if ARGV[4] == "failed" then if rcall("ZREM", parentKey .. ":unsuccessful", jobKey) == 1 or rcall("HDEL", parentKey .. ":failed", jobKey) == 1 then rcall("SADD", parentKey .. ":dependencies", jobKey) end else if rcall("HDEL", parentKey .. ":processed", jobKey) == 1 then rcall("SADD", parentKey .. ":dependencies", jobKey) end end end local maxEvents = getOrSetMaxEvents(KEYS[5]) -- Emit waiting event rcall("XADD", KEYS[2], "MAXLEN", "~", maxEvents, "*", "event", "waiting", "jobId", jobId, "prev", ARGV[4]); return 1 else return -3 end else return -1 end `; exports2.reprocessJob = { name: "reprocessJob", content, keys: 8 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/retryJob-11.js var require_retryJob_11 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/retryJob-11.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.retryJob = void 0; var content = `--[[ Retries a failed job by moving it back to the wait queue. Input: KEYS[1] 'active', KEYS[2] 'wait' KEYS[3] 'paused' KEYS[4] job key KEYS[5] 'meta' KEYS[6] events stream KEYS[7] delayed key KEYS[8] prioritized key KEYS[9] 'pc' priority counter KEYS[10] 'marker' KEYS[11] 'stalled' ARGV[1] key prefix ARGV[2] timestamp ARGV[3] pushCmd ARGV[4] jobId ARGV[5] token ARGV[6] optional job fields to update Events: 'waiting' Output: 0 - OK -1 - Missing key -2 - Missing lock -3 - Job not in active set ]] local rcall = redis.call -- Includes --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to add job considering priority. ]] -- Includes --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end --[[ Function to check if queue is paused or maxed (since an empty list and !EXISTS are not really the same). ]] local function isQueuePausedOrMaxed(queueMetaKey, activeKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency") if queueAttributes[1] then return true else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) return activeCount >= tonumber(queueAttributes[2]) end end return false end --[[ Updates the delay set, by moving delayed jobs that should be processed now to "wait". Events: 'waiting' ]] -- Includes -- Try to get as much as 1000 jobs at once local function promoteDelayedJobs(delayedKey, markerKey, targetKey, prioritizedKey, eventStreamKey, prefix, timestamp, priorityCounterKey, isPaused) local jobs = rcall("ZRANGEBYSCORE", delayedKey, 0, (timestamp + 1) * 0x1000 - 1, "LIMIT", 0, 1000) if (#jobs > 0) then rcall("ZREM", delayedKey, unpack(jobs)) for _, jobId in ipairs(jobs) do local jobKey = prefix .. jobId local priority = tonumber(rcall("HGET", jobKey, "priority")) or 0 if priority == 0 then -- LIFO or FIFO rcall("LPUSH", targetKey, jobId) else local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) end -- Emit waiting event rcall("XADD", eventStreamKey, "*", "event", "waiting", "jobId", jobId, "prev", "delayed") rcall("HSET", jobKey, "delay", 0) end addBaseMarkerIfNeeded(markerKey, isPaused) end end local function removeLock(jobKey, stalledKey, token, jobId) if token ~= "0" then local lockKey = jobKey .. ':lock' local lockToken = rcall("GET", lockKey) if lockToken == token then rcall("DEL", lockKey) rcall("SREM", stalledKey, jobId) else if lockToken then -- Lock exists but token does not match return -6 else -- Lock is missing completely return -2 end end end return 0 end --[[ Function to update a bunch of fields in a job. ]] local function updateJobFields(jobKey, msgpackedFields) if msgpackedFields and #msgpackedFields > 0 then local fieldsToUpdate = cmsgpack.unpack(msgpackedFields) if fieldsToUpdate then rcall("HMSET", jobKey, unpack(fieldsToUpdate)) end end end local target, isPausedOrMaxed = getTargetQueueList(KEYS[5], KEYS[1], KEYS[2], KEYS[3]) local markerKey = KEYS[10] -- Check if there are delayed jobs that we can move to wait. -- test example: when there are delayed jobs between retries promoteDelayedJobs(KEYS[7], markerKey, target, KEYS[8], KEYS[6], ARGV[1], ARGV[2], KEYS[9], isPausedOrMaxed) local jobKey = KEYS[4] if rcall("EXISTS", jobKey) == 1 then local errorCode = removeLock(jobKey, KEYS[11], ARGV[5], ARGV[4]) if errorCode < 0 then return errorCode end updateJobFields(jobKey, ARGV[6]) local numRemovedElements = rcall("LREM", KEYS[1], -1, ARGV[4]) if (numRemovedElements < 1) then return -3 end local priority = tonumber(rcall("HGET", jobKey, "priority")) or 0 --need to re-evaluate after removing job from active isPausedOrMaxed = isQueuePausedOrMaxed(KEYS[5], KEYS[1]) -- Standard or priority add if priority == 0 then addJobInTargetList(target, markerKey, ARGV[3], isPausedOrMaxed, ARGV[4]) else addJobWithPriority(markerKey, KEYS[8], priority, ARGV[4], KEYS[9], isPausedOrMaxed) end rcall("HINCRBY", jobKey, "atm", 1) local maxEvents = getOrSetMaxEvents(KEYS[5]) -- Emit waiting event rcall("XADD", KEYS[6], "MAXLEN", "~", maxEvents, "*", "event", "waiting", "jobId", ARGV[4], "prev", "active") return 0 else return -1 end `; exports2.retryJob = { name: "retryJob", content, keys: 11 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/saveStacktrace-1.js var require_saveStacktrace_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/saveStacktrace-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.saveStacktrace = void 0; var content = `--[[ Save stacktrace and failedReason. Input: KEYS[1] job key ARGV[1] stacktrace ARGV[2] failedReason Output: 0 - OK -1 - Missing key ]] local rcall = redis.call if rcall("EXISTS", KEYS[1]) == 1 then rcall("HMSET", KEYS[1], "stacktrace", ARGV[1], "failedReason", ARGV[2]) return 0 else return -1 end `; exports2.saveStacktrace = { name: "saveStacktrace", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/updateData-1.js var require_updateData_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/updateData-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.updateData = void 0; var content = `--[[ Update job data Input: KEYS[1] Job id key ARGV[1] data Output: 0 - OK -1 - Missing job. ]] local rcall = redis.call if rcall("EXISTS",KEYS[1]) == 1 then -- // Make sure job exists rcall("HSET", KEYS[1], "data", ARGV[1]) return 0 else return -1 end `; exports2.updateData = { name: "updateData", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/updateJobScheduler-12.js var require_updateJobScheduler_12 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/updateJobScheduler-12.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.updateJobScheduler = void 0; var content = `--[[ Updates a job scheduler and adds next delayed job Input: KEYS[1] 'repeat' key KEYS[2] 'delayed' KEYS[3] 'wait' key KEYS[4] 'paused' key KEYS[5] 'meta' KEYS[6] 'prioritized' key KEYS[7] 'marker', KEYS[8] 'id' KEYS[9] events stream key KEYS[10] 'pc' priority counter KEYS[11] producer key KEYS[12] 'active' key ARGV[1] next milliseconds ARGV[2] jobs scheduler id ARGV[3] Json stringified delayed data ARGV[4] msgpacked delayed opts ARGV[5] timestamp ARGV[6] prefix key ARGV[7] producer id Output: next delayed job id - OK ]] local rcall = redis.call local repeatKey = KEYS[1] local delayedKey = KEYS[2] local waitKey = KEYS[3] local pausedKey = KEYS[4] local metaKey = KEYS[5] local prioritizedKey = KEYS[6] local nextMillis = tonumber(ARGV[1]) local jobSchedulerId = ARGV[2] local timestamp = tonumber(ARGV[5]) local prefixKey = ARGV[6] local producerId = ARGV[7] local jobOpts = cmsgpack.unpack(ARGV[4]) -- Includes --[[ Add delay marker if needed. ]] -- Includes --[[ Shared helper to store a job and enqueue it into the appropriate list/set. Handles delayed, prioritized, and standard (LIFO/FIFO) jobs. Emits the appropriate event after enqueuing ("delayed" or "waiting"). Returns delay, priority from storeJob. ]] -- Includes --[[ Adds a delayed job to the queue by doing the following: - Creates a new job key with the job data. - adds to delayed zset. - Emits a global event 'delayed' if the job is delayed. ]] -- Includes --[[ Add delay marker if needed. ]] -- Includes --[[ Function to return the next delayed job timestamp. ]] local function getNextDelayedTimestamp(delayedKey) local result = rcall("ZRANGE", delayedKey, 0, 0, "WITHSCORES") if #result then local nextTimestamp = tonumber(result[2]) if nextTimestamp ~= nil then return nextTimestamp / 0x1000 end end end local function addDelayMarkerIfNeeded(markerKey, delayedKey) local nextTimestamp = getNextDelayedTimestamp(delayedKey) if nextTimestamp ~= nil then -- Replace the score of the marker with the newest known -- next timestamp. rcall("ZADD", markerKey, nextTimestamp, "1") end end --[[ Bake in the job id first 12 bits into the timestamp to guarantee correct execution order of delayed jobs (up to 4096 jobs per given timestamp or 4096 jobs apart per timestamp) WARNING: Jobs that are so far apart that they wrap around will cause FIFO to fail ]] local function getDelayedScore(delayedKey, timestamp, delay) local delayedTimestamp = (delay > 0 and (tonumber(timestamp) + delay)) or tonumber(timestamp) local minScore = delayedTimestamp * 0x1000 local maxScore = (delayedTimestamp + 1 ) * 0x1000 - 1 local result = rcall("ZREVRANGEBYSCORE", delayedKey, maxScore, minScore, "WITHSCORES","LIMIT", 0, 1) if #result then local currentMaxScore = tonumber(result[2]) if currentMaxScore ~= nil then if currentMaxScore >= maxScore then return maxScore, delayedTimestamp else return currentMaxScore + 1, delayedTimestamp end end end return minScore, delayedTimestamp end local function addDelayedJob(jobId, delayedKey, eventsKey, timestamp, maxEvents, markerKey, delay) local score, delayedTimestamp = getDelayedScore(delayedKey, timestamp, tonumber(delay)) rcall("ZADD", delayedKey, score, jobId) rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "delayed", "jobId", jobId, "delay", delayedTimestamp) -- mark that a delayed job is available addDelayMarkerIfNeeded(markerKey, delayedKey) end --[[ Function to add job in target list and add marker if needed. ]] -- Includes --[[ Add marker if needed when a job is available. ]] local function addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) if not isPausedOrMaxed then rcall("ZADD", markerKey, 0, "0") end end local function addJobInTargetList(targetKey, markerKey, pushCmd, isPausedOrMaxed, jobId) rcall(pushCmd, targetKey, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to add job considering priority. ]] -- Includes --[[ Function to get priority score. ]] local function getPriorityScore(priority, priorityCounterKey) local prioCounter = rcall("INCR", priorityCounterKey) return priority * 0x100000000 + prioCounter % 0x100000000 end local function addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) local score = getPriorityScore(priority, priorityCounterKey) rcall("ZADD", prioritizedKey, score, jobId) addBaseMarkerIfNeeded(markerKey, isPausedOrMaxed) end --[[ Function to check for the meta.paused key to decide if we are paused or not (since an empty list and !EXISTS are not really the same). ]] local function getTargetQueueList(queueMetaKey, activeKey, waitKey, pausedKey) local queueAttributes = rcall("HMGET", queueMetaKey, "paused", "concurrency", "max", "duration") if queueAttributes[1] then return pausedKey, true, queueAttributes[3], queueAttributes[4] else if queueAttributes[2] then local activeCount = rcall("LLEN", activeKey) if activeCount >= tonumber(queueAttributes[2]) then return waitKey, true, queueAttributes[3], queueAttributes[4] else return waitKey, false, queueAttributes[3], queueAttributes[4] end end end return waitKey, false, queueAttributes[3], queueAttributes[4] end --[[ Function to store a job ]] local function storeJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey) local jsonOpts = cjson.encode(opts) local delay = opts['delay'] or 0 local priority = opts['priority'] or 0 local debounceId = opts['de'] and opts['de']['id'] local optionalValues = {} if parentKey ~= nil then table.insert(optionalValues, "parentKey") table.insert(optionalValues, parentKey) table.insert(optionalValues, "parent") table.insert(optionalValues, parentData) end if repeatJobKey then table.insert(optionalValues, "rjk") table.insert(optionalValues, repeatJobKey) end if debounceId then table.insert(optionalValues, "deid") table.insert(optionalValues, debounceId) end rcall("HMSET", jobIdKey, "name", name, "data", data, "opts", jsonOpts, "timestamp", timestamp, "delay", delay, "priority", priority, unpack(optionalValues)) rcall("XADD", eventsKey, "*", "event", "added", "jobId", jobId, "name", name) return delay, priority end local function storeAndEnqueueJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey, maxEvents, waitKey, pausedKey, activeKey, metaKey, prioritizedKey, priorityCounterKey, delayedKey, markerKey) local delay, priority = storeJob(eventsKey, jobIdKey, jobId, name, data, opts, timestamp, parentKey, parentData, repeatJobKey) if delay ~= 0 and delayedKey then addDelayedJob(jobId, delayedKey, eventsKey, timestamp, maxEvents, markerKey, delay) else local target, isPausedOrMaxed = getTargetQueueList(metaKey, activeKey, waitKey, pausedKey) if priority > 0 then addJobWithPriority(markerKey, prioritizedKey, priority, jobId, priorityCounterKey, isPausedOrMaxed) else local pushCmd = opts['lifo'] and 'RPUSH' or 'LPUSH' addJobInTargetList(target, markerKey, pushCmd, isPausedOrMaxed, jobId) end rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "waiting", "jobId", jobId) end return delay, priority end local function addJobFromScheduler(jobKey, jobId, opts, waitKey, pausedKey, activeKey, metaKey, prioritizedKey, priorityCounter, delayedKey, markerKey, eventsKey, name, maxEvents, timestamp, data, jobSchedulerId, repeatDelay) opts['delay'] = repeatDelay opts['jobId'] = jobId storeAndEnqueueJob(eventsKey, jobKey, jobId, name, data, opts, timestamp, nil, nil, jobSchedulerId, maxEvents, waitKey, pausedKey, activeKey, metaKey, prioritizedKey, priorityCounter, delayedKey, markerKey) end --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end local function getJobSchedulerEveryNextMillis(prevMillis, every, now, offset, startDate) offset = tonumber(offset) local nextMillis if not prevMillis then if startDate then -- Assuming startDate is passed as milliseconds from JavaScript nextMillis = tonumber(startDate) nextMillis = nextMillis > now and nextMillis or now else if offset and offset > 0 then -- Align to the next slot that respects the offset nextMillis = math.floor(now / every) * every + offset if nextMillis <= now then nextMillis = nextMillis + every end else nextMillis = now end end else nextMillis = prevMillis + every -- check if we may have missed some iterations if nextMillis < now then -- Use the same offset-aware alignment as the initial branch -- above so a non-zero offset is preserved across catch-ups -- instead of being flattened to (slot + every). When the -- aligned slot is itself still in the past, advance by one -- full interval; otherwise the aligned slot is the next -- iteration. local aligned = math.floor(now / every) * every + (offset or 0) if aligned <= now then nextMillis = aligned + every else nextMillis = aligned end end end if not offset or offset == 0 then local timeSlot = math.floor(nextMillis / every) * every; offset = nextMillis - timeSlot; end -- Return a tuple nextMillis, offset return math.floor(nextMillis), math.floor(offset) end local prevMillis = rcall("ZSCORE", repeatKey, jobSchedulerId) -- Validate that scheduler exists. -- If it does not exist we should not iterate anymore. if prevMillis then prevMillis = tonumber(prevMillis) local schedulerKey = repeatKey .. ":" .. jobSchedulerId local schedulerAttributes = rcall("HMGET", schedulerKey, "name", "data", "every", "startDate", "offset") local every = tonumber(schedulerAttributes[3]) local now = tonumber(timestamp) -- If every is not found in scheduler attributes, try to get it from job options if not every and jobOpts['repeat'] and jobOpts['repeat']['every'] then every = tonumber(jobOpts['repeat']['every']) end if every then local startDate = schedulerAttributes[4] local jobOptsOffset = jobOpts['repeat'] and jobOpts['repeat']['offset'] or 0 local offset = schedulerAttributes[5] or jobOptsOffset or 0 local newOffset nextMillis, newOffset = getJobSchedulerEveryNextMillis(prevMillis, every, now, offset, startDate) if not offset then rcall("HSET", schedulerKey, "offset", newOffset) jobOpts['repeat']['offset'] = newOffset end end local nextDelayedJobId = "repeat:" .. jobSchedulerId .. ":" .. nextMillis local nextDelayedJobKey = schedulerKey .. ":" .. nextMillis local currentDelayedJobId = "repeat:" .. jobSchedulerId .. ":" .. prevMillis if producerId == currentDelayedJobId then local eventsKey = KEYS[9] local maxEvents = getOrSetMaxEvents(metaKey) if rcall("EXISTS", nextDelayedJobKey) ~= 1 then rcall("ZADD", repeatKey, nextMillis, jobSchedulerId) rcall("HINCRBY", schedulerKey, "ic", 1) rcall("INCR", KEYS[8]) -- TODO: remove this workaround in next breaking change, -- all job-schedulers must save job data local templateData = schedulerAttributes[2] or ARGV[3] if templateData and templateData ~= '{}' then rcall("HSET", schedulerKey, "data", templateData) end local delay = nextMillis - now -- Fast Clamp delay to minimum of 0 if delay < 0 then delay = 0 end jobOpts["delay"] = delay addJobFromScheduler(nextDelayedJobKey, nextDelayedJobId, jobOpts, waitKey, pausedKey, KEYS[12], metaKey, prioritizedKey, KEYS[10], delayedKey, KEYS[7], eventsKey, schedulerAttributes[1], maxEvents, ARGV[5], templateData or '{}', jobSchedulerId, delay) -- TODO: remove this workaround in next breaking change if KEYS[11] ~= "" then rcall("HSET", KEYS[11], "nrjid", nextDelayedJobId) end return nextDelayedJobId .. "" -- convert to string else rcall("XADD", eventsKey, "MAXLEN", "~", maxEvents, "*", "event", "duplicated", "jobId", nextDelayedJobId) end end end `; exports2.updateJobScheduler = { name: "updateJobScheduler", content, keys: 12 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/updateProgress-3.js var require_updateProgress_3 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/updateProgress-3.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.updateProgress = void 0; var content = `--[[ Update job progress Input: KEYS[1] Job id key KEYS[2] event stream key KEYS[3] meta key ARGV[1] id ARGV[2] progress Output: 0 - OK -1 - Missing job. Event: progress(jobId, progress) ]] local rcall = redis.call -- Includes --[[ Function to get max events value or set by default 10000. ]] local function getOrSetMaxEvents(metaKey) local maxEvents = rcall("HGET", metaKey, "opts.maxLenEvents") if not maxEvents then maxEvents = 10000 rcall("HSET", metaKey, "opts.maxLenEvents", maxEvents) end return maxEvents end if rcall("EXISTS", KEYS[1]) == 1 then -- // Make sure job exists local maxEvents = getOrSetMaxEvents(KEYS[3]) rcall("HSET", KEYS[1], "progress", ARGV[2]) rcall("XADD", KEYS[2], "MAXLEN", "~", maxEvents, "*", "event", "progress", "jobId", ARGV[1], "data", ARGV[2]); return 0 else return -1 end `; exports2.updateProgress = { name: "updateProgress", content, keys: 3 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/updateRepeatableJobMillis-1.js var require_updateRepeatableJobMillis_1 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/updateRepeatableJobMillis-1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.updateRepeatableJobMillis = void 0; var content = `--[[ Adds a repeatable job Input: KEYS[1] 'repeat' key ARGV[1] next milliseconds ARGV[2] custom key ARGV[3] legacy custom key TODO: remove this logic in next breaking change Output: repeatableKey - OK ]] local rcall = redis.call local repeatKey = KEYS[1] local nextMillis = ARGV[1] local customKey = ARGV[2] local legacyCustomKey = ARGV[3] if rcall("ZSCORE", repeatKey, customKey) then rcall("ZADD", repeatKey, nextMillis, customKey) return customKey elseif rcall("ZSCORE", repeatKey, legacyCustomKey) ~= false then rcall("ZADD", repeatKey, nextMillis, legacyCustomKey) return legacyCustomKey end return '' `; exports2.updateRepeatableJobMillis = { name: "updateRepeatableJobMillis", content, keys: 1 }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/index.js var require_scripts2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/scripts/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_addDelayedJob_6(), exports2); tslib_1.__exportStar(require_addJobScheduler_11(), exports2); tslib_1.__exportStar(require_addLog_2(), exports2); tslib_1.__exportStar(require_addParentJob_6(), exports2); tslib_1.__exportStar(require_addPrioritizedJob_9(), exports2); tslib_1.__exportStar(require_addRepeatableJob_2(), exports2); tslib_1.__exportStar(require_addStandardJob_9(), exports2); tslib_1.__exportStar(require_changeDelay_4(), exports2); tslib_1.__exportStar(require_changePriority_7(), exports2); tslib_1.__exportStar(require_cleanJobsInSet_3(), exports2); tslib_1.__exportStar(require_drain_5(), exports2); tslib_1.__exportStar(require_extendLock_2(), exports2); tslib_1.__exportStar(require_extendLocks_1(), exports2); tslib_1.__exportStar(require_getCounts_1(), exports2); tslib_1.__exportStar(require_getCountsPerPriority_4(), exports2); tslib_1.__exportStar(require_getDependencyCounts_4(), exports2); tslib_1.__exportStar(require_getJobScheduler_1(), exports2); tslib_1.__exportStar(require_getJobs_1(), exports2); tslib_1.__exportStar(require_getMetrics_2(), exports2); tslib_1.__exportStar(require_getRanges_1(), exports2); tslib_1.__exportStar(require_getRateLimitTtl_2(), exports2); tslib_1.__exportStar(require_getState_8(), exports2); tslib_1.__exportStar(require_getStateV2_8(), exports2); tslib_1.__exportStar(require_isFinished_3(), exports2); tslib_1.__exportStar(require_isJobInList_1(), exports2); tslib_1.__exportStar(require_isMaxed_2(), exports2); tslib_1.__exportStar(require_moveJobFromActiveToWait_9(), exports2); tslib_1.__exportStar(require_moveJobsToWait_8(), exports2); tslib_1.__exportStar(require_moveStalledJobsToWait_9(), exports2); tslib_1.__exportStar(require_moveToActive_11(), exports2); tslib_1.__exportStar(require_moveToDelayed_12(), exports2); tslib_1.__exportStar(require_moveToFinished_14(), exports2); tslib_1.__exportStar(require_moveToWaitingChildren_7(), exports2); tslib_1.__exportStar(require_obliterate_2(), exports2); tslib_1.__exportStar(require_paginate_1(), exports2); tslib_1.__exportStar(require_pause_7(), exports2); tslib_1.__exportStar(require_promote_9(), exports2); tslib_1.__exportStar(require_releaseLock_1(), exports2); tslib_1.__exportStar(require_removeChildDependency_1(), exports2); tslib_1.__exportStar(require_removeDeduplicationKey_1(), exports2); tslib_1.__exportStar(require_removeJob_2(), exports2); tslib_1.__exportStar(require_removeJobScheduler_3(), exports2); tslib_1.__exportStar(require_removeOrphanedJobs_1(), exports2); tslib_1.__exportStar(require_removeRepeatable_3(), exports2); tslib_1.__exportStar(require_removeUnprocessedChildren_2(), exports2); tslib_1.__exportStar(require_reprocessJob_8(), exports2); tslib_1.__exportStar(require_retryJob_11(), exports2); tslib_1.__exportStar(require_saveStacktrace_1(), exports2); tslib_1.__exportStar(require_updateData_1(), exports2); tslib_1.__exportStar(require_updateJobScheduler_12(), exports2); tslib_1.__exportStar(require_updateProgress_3(), exports2); tslib_1.__exportStar(require_updateRepeatableJobMillis_1(), exports2); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/ioredis-client.js var require_ioredis_client = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/ioredis-client.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createIORedisClient = createIORedisClient; exports2.isIRedisClient = isIRedisClient; var proxyCache = /* @__PURE__ */ new WeakMap(); function createIORedisClient(client) { if (client.__bullmq_iredis === true) { return client; } const cached = proxyCache.get(client); if (cached) { return cached; } const isCluster = client.isCluster === true; const boundCache = /* @__PURE__ */ new Map(); const overrides = /* @__PURE__ */ Object.create(null); overrides.__bullmq_iredis = true; overrides.isCluster = isCluster; overrides.runCommand = (name, args) => { return client[name](args); }; overrides.pipeline = (...args) => { return augmentTransaction(client.pipeline(...args)); }; overrides.multi = (...args) => { return augmentTransaction(client.multi(...args)); }; if (typeof client.duplicate === "function") { overrides.duplicate = (opts) => { var _a; if (isCluster) { const existingRedisOpts = ((_a = client.options) === null || _a === void 0 ? void 0 : _a.redisOptions) || {}; const mergedRedisOpts = opts ? Object.assign(Object.assign({}, existingRedisOpts), opts) : existingRedisOpts; return createIORedisClient(client.duplicate(void 0, { redisOptions: mergedRedisOpts })); } return createIORedisClient(client.duplicate(opts)); }; } overrides.hset = (key, dataOrField, ...rest) => { if (typeof dataOrField === "string") { return client.hset(key, dataOrField, ...rest); } const args = [key]; for (const [f, v] of Object.entries(dataOrField)) { args.push(f, v); } return client.hset(...args); }; overrides.set = (key, value, optionsOrModifier, ...rest) => { if (typeof optionsOrModifier === "string" || optionsOrModifier == null) { return client.set(key, value, ...optionsOrModifier != null ? [optionsOrModifier, ...rest] : []); } const args = [key, value]; if (optionsOrModifier.PX != null) { args.push("PX", optionsOrModifier.PX); } else if (optionsOrModifier.EX != null) { args.push("EX", optionsOrModifier.EX); } return client.set(...args); }; overrides.zrange = (key, start, end, optionsOrStr, ...rest) => { if (typeof optionsOrStr === "string") { return client.zrange(key, start, end, optionsOrStr, ...rest); } if (optionsOrStr === null || optionsOrStr === void 0 ? void 0 : optionsOrStr.WITHSCORES) { return client.zrange(key, start, end, "WITHSCORES"); } return client.zrange(key, start, end); }; overrides.zrevrange = (key, start, end, optionsOrStr, ...rest) => { if (typeof optionsOrStr === "string") { return client.zrevrange(key, start, end, optionsOrStr, ...rest); } if (optionsOrStr === null || optionsOrStr === void 0 ? void 0 : optionsOrStr.WITHSCORES) { return client.zrevrange(key, start, end, "WITHSCORES"); } return client.zrevrange(key, start, end); }; overrides.xadd = (key, idOrModifier, fieldsOrArg, ...rest) => { if (typeof fieldsOrArg === "string") { return client.xadd(key, idOrModifier, fieldsOrArg, ...rest); } const options = rest[0]; const args = [key]; if ((options === null || options === void 0 ? void 0 : options.MAXLEN) != null) { args.push("MAXLEN"); if (options.approximate !== false) { args.push("~"); } args.push(options.MAXLEN); } args.push(idOrModifier); for (const [f, v] of Object.entries(fieldsOrArg)) { args.push(f, v); } return client.xadd(...args); }; overrides.xread = (streamsOrModifier, ...rest) => { if (typeof streamsOrModifier === "string") { return client.xread(streamsOrModifier, ...rest); } const options = rest[0]; const args = []; if ((options === null || options === void 0 ? void 0 : options.BLOCK) != null) { args.push("BLOCK", options.BLOCK); } if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { args.push("COUNT", options.COUNT); } args.push("STREAMS"); for (const s of streamsOrModifier) { args.push(s.key); } for (const s of streamsOrModifier) { args.push(s.id); } return client.xread(...args); }; overrides.xtrim = (key, strategy, thresholdOrApprox, ...rest) => { if (typeof thresholdOrApprox === "string" || rest.length === 0) { return client.xtrim(key, strategy, thresholdOrApprox, ...rest); } const options = rest[0]; const args = [key, strategy]; if ((options === null || options === void 0 ? void 0 : options.approximate) !== false) { args.push("~"); } args.push(thresholdOrApprox); return client.xtrim(...args); }; overrides.clientSetName = (name) => client.client("SETNAME", name); overrides.clientList = () => client.client("LIST"); overrides.scan = (cursor, ...rest) => { if (rest.length === 0 || typeof rest[0] === "string" || typeof rest[0] === "function") { return client.scan(cursor, ...rest); } const options = rest[0]; const args = [cursor]; if ((options === null || options === void 0 ? void 0 : options.MATCH) != null) { args.push("MATCH", options.MATCH); } if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { args.push("COUNT", options.COUNT); } return client.scan(...args); }; const proxy = new Proxy(client, { get(target, prop) { if (prop in overrides) { return overrides[prop]; } const value = Reflect.get(target, prop, target); if (typeof value !== "function") { return value; } if (Object.prototype.hasOwnProperty.call(target, prop)) { return value.bind(target); } const cachedBound = boundCache.get(prop); if (cachedBound !== void 0) { return cachedBound; } const bound = value.bind(target); boundCache.set(prop, bound); return bound; }, set(target, prop, value) { if (prop in overrides) { overrides[prop] = value; return true; } boundCache.delete(prop); return Reflect.set(target, prop, value); }, deleteProperty(target, prop) { if (prop in overrides) { return false; } boundCache.delete(prop); return Reflect.deleteProperty(target, prop); }, has(target, prop) { return prop in overrides || Reflect.has(target, prop); } }); proxyCache.set(client, proxy); return proxy; } __name(createIORedisClient, "createIORedisClient"); function augmentTransaction(commander) { const transaction = commander; transaction.runCommand = function(name, args) { transaction[name](args); return transaction; }; const origHset = transaction.hset.bind(transaction); transaction.hset = function(key, data) { const args = [key]; for (const [f, v] of Object.entries(data)) { args.push(f, v); } origHset(...args); return transaction; }; const origHscan = transaction.hscan.bind(transaction); transaction.hscan = function(key, cursor, options) { if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { origHscan(key, cursor, "COUNT", options.COUNT); } else { origHscan(key, cursor); } return transaction; }; const origSscan = transaction.sscan.bind(transaction); transaction.sscan = function(key, cursor, options) { if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { origSscan(key, cursor, "COUNT", options.COUNT); } else { origSscan(key, cursor); } return transaction; }; return transaction; } __name(augmentTransaction, "augmentTransaction"); function isIRedisClient(obj2) { if (!obj2 || typeof obj2 !== "object") { return false; } if (obj2.__bullmq_iredis === true) { return true; } return typeof obj2.runCommand === "function" && typeof obj2.defineCommand === "function" && typeof obj2.pipeline === "function" && typeof obj2.multi === "function" && typeof obj2.duplicate === "function" && typeof obj2.scanStream === "function" && typeof obj2.connect === "function" && typeof obj2.disconnect === "function" && typeof obj2.on === "function" && typeof obj2.status === "string" && typeof obj2.isCluster === "boolean"; } __name(isIRedisClient, "isIRedisClient"); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/redis-connection.js var require_redis_connection = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/redis-connection.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RedisConnection = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var events_1 = require("events"); var ioredis_1 = require_built3(); var utils_1 = require_utils15(); var utils_2 = require_utils16(); var version_1 = require_version(); var scripts = require_scripts2(); var ioredis_client_1 = require_ioredis_client(); var connection_closed_error_1 = require_connection_closed_error(); var overrideMessage = [ "BullMQ: WARNING! Your redis options maxRetriesPerRequest must be null", "and will be overridden by BullMQ." ].join(" "); var deprecationMessage = "BullMQ: Your redis options maxRetriesPerRequest must be null."; var clusterReconnectPromise = Symbol("bullmqClusterReconnectPromise"); var clusterPatchedForBlocking = Symbol("bullmqClusterPatchedForBlocking"); var clusterOriginalBzpopmin = Symbol("bullmqClusterOriginalBzpopmin"); var clusterWrappedBzpopmin = Symbol("bullmqClusterWrappedBzpopmin"); var clusterPatchRefCount = Symbol("bullmqClusterPatchRefCount"); var clusterClosingRefCount = Symbol("bullmqClusterClosingRefCount"); var DEFAULT_CLUSTER_RECONNECT_TIMEOUT_MS = 3e4; var RedisConnection = class _RedisConnection extends events_1.EventEmitter { static { __name(this, "RedisConnection"); } constructor(opts, extraOptions) { super(); this.extraOptions = extraOptions; this.capabilities = { canDoubleTimeout: false, canBlockFor1Ms: true }; this.status = "initializing"; this.dbType = "redis"; this.packageVersion = version_1.version; this.disabledBlockingClusterReconnect = false; this.extraOptions = Object.assign({ shared: false, blocking: true, skipVersionCheck: false, skipWaitingForReady: false, clusterReconnectTimeoutMs: DEFAULT_CLUSTER_RECONNECT_TIMEOUT_MS }, extraOptions); if (!(0, utils_2.isRedisInstance)(opts)) { this.checkBlockingOptions(overrideMessage, opts); this.opts = Object.assign({ port: 6379, host: "127.0.0.1", retryStrategy: /* @__PURE__ */ __name(function(times) { return Math.max(Math.min(Math.exp(times), 2e4), 1e3); }, "retryStrategy") }, opts); if (this.extraOptions.blocking) { this.opts.maxRetriesPerRequest = null; } } else { this._client = (0, ioredis_client_1.isIRedisClient)(opts) ? opts : (0, ioredis_client_1.createIORedisClient)(opts); if (this._client.options.keyPrefix) { throw new Error("BullMQ: ioredis does not support ioredis prefixes, use the prefix option instead."); } if (this._client.isCluster) { this.opts = this._client.options.redisOptions; } else { this.opts = this._client.options; } this.checkBlockingOptions(deprecationMessage, this.opts, true); } this.skipVersionCheck = (extraOptions === null || extraOptions === void 0 ? void 0 : extraOptions.skipVersionCheck) || !!(this.opts && this.opts.skipVersionCheck); this.handleClientError = (err) => { this.emit("error", err); }; this.handleClientClose = () => { this.emit("close"); }; this.handleClientReady = () => { this.emit("ready"); }; this.initializing = this.init(); this.initializing.catch((err) => this.emit("error", err)); } checkBlockingOptions(msg, options, throwError = false) { if (this.extraOptions.blocking && options && options.maxRetriesPerRequest) { if (throwError) { throw new Error(msg); } else { console.error(msg); } } } /** * Waits for a redis client to be ready. * @param redis - client */ static async waitUntilReady(client) { if (client.status === "ready") { return; } if (client.status === "connect" && (0, utils_2.isRedisCluster)(client)) { return; } if (client.status === "wait") { return client.connect(); } if (client.status === "end") { throw new connection_closed_error_1.ConnectionClosedError(utils_1.CONNECTION_CLOSED_ERROR_MSG); } let handleReady; let handleEnd; let handleError; try { await new Promise((resolve, reject) => { let lastError; handleError = /* @__PURE__ */ __name((err) => { lastError = err; }, "handleError"); handleReady = /* @__PURE__ */ __name(() => { resolve(); }, "handleReady"); handleEnd = /* @__PURE__ */ __name(() => { if (client.status !== "end") { reject(lastError || new connection_closed_error_1.ConnectionClosedError(utils_1.CONNECTION_CLOSED_ERROR_MSG)); } else { if (lastError) { reject(lastError); } else { resolve(); } } }, "handleEnd"); (0, utils_2.increaseMaxListeners)(client, 3); client.once("ready", handleReady); client.on("end", handleEnd); client.once("error", handleError); }); } finally { client.removeListener("end", handleEnd); client.removeListener("error", handleError); client.removeListener("ready", handleReady); (0, utils_2.decreaseMaxListeners)(client, 3); } } get client() { return this.initializing; } loadCommands(packageVersion, providedScripts) { const finalScripts = providedScripts || scripts; for (const property in finalScripts) { const commandName = `${finalScripts[property].name}:${packageVersion}`; if (!this._client[commandName]) { this._client.defineCommand(commandName, { numberOfKeys: finalScripts[property].keys, lua: finalScripts[property].content }); } } } async init() { if (!this._client) { if (_RedisConnection.clientFactory) { this._client = _RedisConnection.clientFactory(this.opts); } else { const _a = this.opts, { url } = _a, rest = tslib_1.__rest(_a, ["url"]); const ioredisClient = url ? new ioredis_1.default(url, rest) : new ioredis_1.default(rest); this._client = (0, ioredis_client_1.createIORedisClient)(ioredisClient); } } (0, utils_2.increaseMaxListeners)(this._client, 3); this._client.on("error", this.handleClientError); this._client.on("close", this.handleClientClose); this._client.on("ready", this.handleClientReady); this.patchBlockingClusterClient(); if (!this.extraOptions.skipWaitingForReady) { await _RedisConnection.waitUntilReady(this._client); } this.loadCommands(this.packageVersion); if (this._client["status"] !== "end") { const versionResult = await this.getRedisVersionAndType(); this.version = versionResult.version; this.dbType = versionResult.databaseType; if (this.skipVersionCheck !== true && !this.closing) { if ((0, utils_2.isRedisVersionLowerThan)(this.version, _RedisConnection.minimumVersion, this.dbType)) { throw new Error(`Redis version needs to be greater or equal than ${_RedisConnection.minimumVersion} Current: ${this.version}`); } if ((0, utils_2.isRedisVersionLowerThan)(this.version, _RedisConnection.recommendedMinimumVersion, this.dbType)) { console.warn(`It is highly recommended to use a minimum Redis version of ${_RedisConnection.recommendedMinimumVersion} Current: ${this.version}`); } } this.capabilities = { canDoubleTimeout: !(0, utils_2.isRedisVersionLowerThan)(this.version, "6.0.0", this.dbType), canBlockFor1Ms: !(0, utils_2.isRedisVersionLowerThan)(this.version, "7.0.8", this.dbType) }; this.status = "ready"; } return this._client; } patchBlockingClusterClient() { var _a; const client = this._client; const blockingClient = client; if (!this.extraOptions.blocking || !(0, utils_2.isRedisCluster)(client) || typeof blockingClient.bzpopmin !== "function") { return; } const reconnectTimeoutMs = (_a = this.extraOptions.clusterReconnectTimeoutMs) !== null && _a !== void 0 ? _a : DEFAULT_CLUSTER_RECONNECT_TIMEOUT_MS; blockingClient[clusterPatchRefCount] = (blockingClient[clusterPatchRefCount] || 0) + 1; this.patchedBlockingClusterClient = blockingClient; if (blockingClient[clusterPatchedForBlocking]) { return; } const bzpopmin = blockingClient.bzpopmin; const wrappedBzpopmin = /* @__PURE__ */ __name(async (...args) => { await _RedisConnection.reconnectClusterIfNeeded(blockingClient, reconnectTimeoutMs); try { return await bzpopmin.apply(blockingClient, args); } catch (error) { const commandError = error; if (_RedisConnection.shouldReconnectClusterAfterError(blockingClient, commandError)) { try { await _RedisConnection.reconnectCluster(blockingClient, reconnectTimeoutMs); } catch (_a2) { } } throw commandError; } }, "wrappedBzpopmin"); blockingClient[clusterOriginalBzpopmin] = bzpopmin; blockingClient[clusterWrappedBzpopmin] = wrappedBzpopmin; blockingClient[clusterPatchedForBlocking] = true; blockingClient.bzpopmin = wrappedBzpopmin; } disableBlockingClusterReconnect() { const client = this.patchedBlockingClusterClient; if (!client || this.disabledBlockingClusterReconnect) { return; } client[clusterClosingRefCount] = (client[clusterClosingRefCount] || 0) + 1; this.disabledBlockingClusterReconnect = true; } releaseBlockingClusterClientPatch() { const client = this.patchedBlockingClusterClient; if (!client) { return; } if (this.disabledBlockingClusterReconnect) { const closingRefCount = (client[clusterClosingRefCount] || 1) - 1; if (closingRefCount > 0) { client[clusterClosingRefCount] = closingRefCount; } else { delete client[clusterClosingRefCount]; } this.disabledBlockingClusterReconnect = false; } const patchRefCount = (client[clusterPatchRefCount] || 1) - 1; if (patchRefCount > 0) { client[clusterPatchRefCount] = patchRefCount; this.patchedBlockingClusterClient = void 0; return; } if (client[clusterOriginalBzpopmin] && client.bzpopmin === client[clusterWrappedBzpopmin]) { client.bzpopmin = client[clusterOriginalBzpopmin]; } delete client[clusterPatchRefCount]; delete client[clusterClosingRefCount]; delete client[clusterOriginalBzpopmin]; delete client[clusterWrappedBzpopmin]; delete client[clusterPatchedForBlocking]; this.patchedBlockingClusterClient = void 0; } static isClusterWithEmptyNodes(client) { return typeof client.nodes === "function" && client.nodes().length === 0; } static isReconnectingDisabled(client) { const patchRefCount = client[clusterPatchRefCount] || 0; const closingRefCount = client[clusterClosingRefCount] || 0; return patchRefCount === 0 || closingRefCount >= patchRefCount || client.status === "end" || client.status === "closing"; } static async reconnectClusterIfNeeded(client, timeoutMs) { if (!_RedisConnection.isReconnectingDisabled(client) && _RedisConnection.isClusterWithEmptyNodes(client)) { await _RedisConnection.reconnectCluster(client, timeoutMs); } } static shouldReconnectClusterAfterError(client, error) { var _a, _b; if (_RedisConnection.isReconnectingDisabled(client)) { return false; } const message = [ error.message, (_a = error.cause) === null || _a === void 0 ? void 0 : _a.message, (_b = error.lastNodeError) === null || _b === void 0 ? void 0 : _b.message ].join(" "); return _RedisConnection.isClusterWithEmptyNodes(client) || /Command timed out|Failed to refresh slots cache/i.test(message); } static async reconnectCluster(client, timeoutMs) { if (_RedisConnection.isReconnectingDisabled(client)) { return; } if (!client[clusterReconnectPromise]) { client[clusterReconnectPromise] = _RedisConnection.connectClusterWithTimeout(client, timeoutMs).finally(() => { client[clusterReconnectPromise] = null; }); } await client[clusterReconnectPromise]; } // Disconnects and reconnects a cluster client, racing connect() against a // hard cap so a hung reconnect cannot pin `clusterReconnectPromise` // indefinitely. On timeout, the underlying connect() is left running // (ioredis Cluster handles its own retry/state); we simply stop awaiting it. // The next bzpopmin call's `reconnectClusterIfNeeded` check will trigger a // fresh reconnect if the pool is still empty. static async connectClusterWithTimeout(client, timeoutMs) { client.disconnect(false); let timeoutHandle; try { await Promise.race([ client.connect(), new Promise((_2, reject) => { var _a; timeoutHandle = setTimeout(() => { reject(new connection_closed_error_1.ConnectionClosedError(`BullMQ: cluster reconnect timed out after ${timeoutMs}ms`)); }, timeoutMs); (_a = timeoutHandle.unref) === null || _a === void 0 ? void 0 : _a.call(timeoutHandle); }) ]); } finally { if (timeoutHandle) { clearTimeout(timeoutHandle); } } } async disconnect(wait = true) { const client = await this.client; if (client.status !== "end") { let _resolve, _reject; if (!wait) { return client.disconnect(); } const disconnecting = new Promise((resolve, reject) => { (0, utils_2.increaseMaxListeners)(client, 2); client.once("end", resolve); client.once("error", reject); _resolve = resolve; _reject = reject; }); client.disconnect(); try { await disconnecting; } finally { (0, utils_2.decreaseMaxListeners)(client, 2); client.removeListener("end", _resolve); client.removeListener("error", _reject); } } } async reconnect() { const client = await this.client; for (; ; ) { if (client.status === "ready" || client.status === "connect" && (0, utils_2.isRedisCluster)(client)) { return; } if (client.status === "wait" || client.status === "end") { return client.connect(); } try { await _RedisConnection.waitUntilReady(client); } catch (error) { if (!["end", "connecting", "connect", "reconnecting"].includes(client.status)) { throw error; } } } } async close(force = false) { var _a; if (!this.closing) { const status = this.status; this.status = "closing"; this.closing = true; this.disableBlockingClusterReconnect(); try { if (status === "ready") { await this.initializing; } if (!this.extraOptions.shared) { if (status == "initializing" || force) { this._client.disconnect(); (_a = this.initializing) === null || _a === void 0 ? void 0 : _a.catch(() => { }); } else { await this._client.quit(); } this._client["status"] = "end"; } } catch (error) { if ((0, utils_2.isNotConnectionError)(error)) { throw error; } } finally { this.releaseBlockingClusterClientPatch(); this._client.off("error", this.handleClientError); this._client.off("close", this.handleClientClose); this._client.off("ready", this.handleClientReady); (0, utils_2.decreaseMaxListeners)(this._client, 3); this.removeAllListeners(); this.status = "closed"; } } } async getRedisVersionAndType() { if (this.skipVersionCheck) { return { version: _RedisConnection.minimumVersion, databaseType: "redis" }; } const doc = await this._client.info(); const redisPrefix = "redis_version:"; const maxMemoryPolicyPrefix = "maxmemory_policy:"; const lines = doc.split(/\r?\n/); let redisVersion; let databaseType = "redis"; for (let i = 0; i < lines.length; i++) { const line = lines[i]; if (line.includes("dragonfly_version:") || line.includes("server:Dragonfly")) { databaseType = "dragonfly"; if (line.indexOf("dragonfly_version:") === 0) { redisVersion = line.substr("dragonfly_version:".length); } } else if (line.includes("valkey_version:") || line.includes("server:Valkey")) { databaseType = "valkey"; if (line.indexOf("valkey_version:") === 0) { redisVersion = line.substr("valkey_version:".length); } } else if (line.indexOf(redisPrefix) === 0) { redisVersion = line.substr(redisPrefix.length); if (databaseType === "redis") { databaseType = "redis"; } } if (line.indexOf(maxMemoryPolicyPrefix) === 0) { const maxMemoryPolicy = line.substr(maxMemoryPolicyPrefix.length); if (maxMemoryPolicy !== "noeviction") { console.warn(`IMPORTANT! Eviction policy is ${maxMemoryPolicy}. It should be "noeviction"`); } } } if (!redisVersion) { for (const line of lines) { if (line.includes("version:")) { const parts = line.split(":"); if (parts.length >= 2) { redisVersion = parts[1]; break; } } } } return { version: redisVersion || _RedisConnection.minimumVersion, databaseType }; } get redisVersion() { return this.version; } get databaseType() { return this.dbType; } }; exports2.RedisConnection = RedisConnection; RedisConnection.minimumVersion = "5.0.0"; RedisConnection.recommendedMinimumVersion = "6.2.0"; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/flow-producer.js var require_flow_producer = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/flow-producer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.FlowProducer = void 0; var events_1 = require("events"); var utils_1 = require_utils16(); var create_scripts_1 = require_create_scripts(); var job_1 = require_job(); var queue_keys_1 = require_queue_keys(); var redis_connection_1 = require_redis_connection(); var enums_1 = require_enums3(); var FlowProducer = class extends events_1.EventEmitter { static { __name(this, "FlowProducer"); } constructor(opts = { connection: {} }, Connection = redis_connection_1.RedisConnection) { super(); this.opts = opts; this.queues = /* @__PURE__ */ new Map(); this.opts = Object.assign({ prefix: "bull" }, opts); this.connection = new Connection(opts.connection, { shared: (0, utils_1.isRedisInstance)(opts.connection), blocking: false, skipVersionCheck: opts.skipVersionCheck, skipWaitingForReady: opts.skipWaitingForReady }); (0, utils_1.forwardConnectionError)(this, this.connection); this.connection.on("close", () => { this.queues.clear(); if (!this.closing) { this.emit("ioredis:close"); } }); this.queueKeys = new queue_keys_1.QueueKeys(opts.prefix); if (opts === null || opts === void 0 ? void 0 : opts.telemetry) { this.telemetry = opts.telemetry; } } createScripts(queue) { var _a; return (_a = queue.scripts) !== null && _a !== void 0 ? _a : (0, create_scripts_1.createScripts)(queue); } emit(event, ...args) { return super.emit(event, ...args); } off(eventName, listener) { super.off(eventName, listener); return this; } on(event, listener) { super.on(event, listener); return this; } once(event, listener) { super.once(event, listener); return this; } /** * Returns a promise that resolves to a redis client. Normally used only by subclasses. */ get client() { return this.connection.client; } /** * Helper to easily extend Job class calls. */ get Job() { return job_1.Job; } waitUntilReady() { return this.client; } /** * Adds a flow. * * This call would be atomic, either it fails and no jobs will * be added to the queues, or it succeeds and all jobs will be added. * * @param flow - an object with a tree-like structure where children jobs * will be processed before their parents. * @param opts - options that will be applied to the flow object. */ async add(flow, opts) { var _a; if (this.closing) { return; } const client = await this.connection.client; const multi = client.multi(); const parentOpts = (_a = flow === null || flow === void 0 ? void 0 : flow.opts) === null || _a === void 0 ? void 0 : _a.parent; const parentKey = (0, utils_1.getParentKey)(parentOpts); const parentDependenciesKey = parentKey ? `${parentKey}:dependencies` : void 0; return (0, utils_1.trace)(this.telemetry, enums_1.SpanKind.PRODUCER, flow.queueName, "addFlow", flow.queueName, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.FlowName]: flow.name }); const jobsTree = await this.addNode({ multi, node: flow, queuesOpts: opts === null || opts === void 0 ? void 0 : opts.queuesOptions, parent: { parentOpts, parentDependenciesKey } }); const results = await multi.exec(); const [result] = results || []; if (result) { const [err, jobId] = result; if (err) { throw err; } if (typeof jobId === "number" && jobId < 0) { throw this.toFlowError(jobId, parentKey); } if (typeof jobId === "string") { jobsTree.job.id = jobId; } else if (typeof jobId === "number") { jobsTree.job.id = jobId.toString(); } } return jobsTree; }); } /** * Get a flow. * * @param opts - an object with options for getting a JobNode. */ async getFlow(opts) { if (this.closing) { return; } const client = await this.connection.client; const updatedOpts = Object.assign({ depth: 10, maxChildren: 20, prefix: this.opts.prefix }, opts); const jobsTree = this.getNode(client, updatedOpts); return jobsTree; } /** * Adds multiple flows. * * A flow is a tree-like structure of jobs that depend on each other. * Whenever the children of a given parent are completed, the parent * will be processed, being able to access the children's result data. * * All Jobs can be in different queues, either children or parents. * If a flow fails to be added, other flows in the batch may still be added. * * @param flows - an array of objects with a tree-like structure where children jobs * will be processed before their parents. */ async addBulk(flows) { if (this.closing) { return; } const client = await this.connection.client; const multi = client.multi(); return (0, utils_1.trace)(this.telemetry, enums_1.SpanKind.PRODUCER, "", "addBulkFlows", "", async (span) => { var _a, _b; span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.BulkCount]: flows.length, [enums_1.TelemetryAttributes.BulkNames]: flows.map((flow) => flow.name).join(",") }); const jobsTrees = await this.addNodes(multi, flows); const results = await multi.exec(); for (let index = 0; index < jobsTrees.length; ++index) { const result = results === null || results === void 0 ? void 0 : results[index]; if (!result) { continue; } const [err, jobId] = result; if (err) { throw err; } if (typeof jobId === "number" && jobId < 0) { throw this.toFlowError(jobId, (0, utils_1.getParentKey)((_b = (_a = flows[index]) === null || _a === void 0 ? void 0 : _a.opts) === null || _b === void 0 ? void 0 : _b.parent)); } if (typeof jobId === "string") { jobsTrees[index].job.id = jobId; } else if (typeof jobId === "number") { jobsTrees[index].job.id = jobId.toString(); } } return jobsTrees; }); } /** * Add a node (job) of a flow to the queue. This method will recursively * add all its children as well. Note that a given job can potentially be * a parent and a child job at the same time depending on where it is located * in the tree hierarchy. * * @param multi - IRedisTransaction * @param node - the node representing a job to be added to some queue * @param parent - parent data sent to children to create the "links" to their parent * @returns */ async addNode({ multi, node, parent, queuesOpts }) { var _a, _b; const prefix = node.prefix || this.opts.prefix; const queue = this.queueFromNode(node, new queue_keys_1.QueueKeys(prefix), prefix); const queueOpts = queuesOpts && queuesOpts[node.queueName]; const jobsOpts = (_a = queueOpts === null || queueOpts === void 0 ? void 0 : queueOpts.defaultJobOptions) !== null && _a !== void 0 ? _a : {}; const jobId = ((_b = node.opts) === null || _b === void 0 ? void 0 : _b.jobId) || (0, utils_1.randomUUID)(); return (0, utils_1.trace)(this.telemetry, enums_1.SpanKind.PRODUCER, node.queueName, "addNode", node.queueName, async (span, srcPropagationMetadata) => { var _a2, _b2; span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobName]: node.name, [enums_1.TelemetryAttributes.JobId]: jobId }); const opts = node.opts; let telemetry = opts === null || opts === void 0 ? void 0 : opts.telemetry; if (srcPropagationMetadata && opts) { const omitContext = (_a2 = opts.telemetry) === null || _a2 === void 0 ? void 0 : _a2.omitContext; const telemetryMetadata = ((_b2 = opts.telemetry) === null || _b2 === void 0 ? void 0 : _b2.metadata) || !omitContext && srcPropagationMetadata; if (telemetryMetadata || omitContext) { telemetry = { metadata: telemetryMetadata, omitContext }; } } const job = new this.Job(queue, node.name, node.data, Object.assign(Object.assign(Object.assign({}, jobsOpts), opts), { parent: parent === null || parent === void 0 ? void 0 : parent.parentOpts, telemetry }), jobId); const parentKey = (0, utils_1.getParentKey)(parent === null || parent === void 0 ? void 0 : parent.parentOpts); if (node.children && node.children.length > 0) { const parentId = jobId; const queueKeysParent = new queue_keys_1.QueueKeys(node.prefix || this.opts.prefix); await job.addJob(multi, { parentDependenciesKey: parent === null || parent === void 0 ? void 0 : parent.parentDependenciesKey, addToWaitingChildren: true, parentKey }); const parentDependenciesKey = `${queueKeysParent.toKey(node.queueName, parentId)}:dependencies`; const children = await this.addChildren({ multi, nodes: node.children, parent: { parentOpts: { id: parentId, queue: queueKeysParent.getQueueQualifiedName(node.queueName) }, parentDependenciesKey }, queuesOpts }); return { job, children }; } else { await job.addJob(multi, { parentDependenciesKey: parent === null || parent === void 0 ? void 0 : parent.parentDependenciesKey, parentKey }); return { job }; } }); } /** * Adds nodes (jobs) of multiple flows to the queue. This method will recursively * add all its children as well. Note that a given job can potentially be * a parent and a child job at the same time depending on where it is located * in the tree hierarchy. * * @param multi - IRedisTransaction * @param nodes - the nodes representing jobs to be added to some queue * @returns */ addNodes(multi, nodes) { return Promise.all(nodes.map((node) => { var _a; const parentOpts = (_a = node === null || node === void 0 ? void 0 : node.opts) === null || _a === void 0 ? void 0 : _a.parent; const parentKey = (0, utils_1.getParentKey)(parentOpts); const parentDependenciesKey = parentKey ? `${parentKey}:dependencies` : void 0; return this.addNode({ multi, node, parent: { parentOpts, parentDependenciesKey } }); })); } async getNode(client, node) { const queue = this.queueFromNode(node, new queue_keys_1.QueueKeys(node.prefix), node.prefix); const job = await this.Job.fromId(queue, node.id); if (job) { const { processed = {}, unprocessed = [], failed = [], ignored = {} } = await job.getDependencies({ failed: { count: node.maxChildren }, processed: { count: node.maxChildren }, unprocessed: { count: node.maxChildren }, ignored: { count: node.maxChildren } }); const processedKeys = Object.keys(processed); const ignoredKeys = Object.keys(ignored); const childrenCount = processedKeys.length + unprocessed.length + ignoredKeys.length + failed.length; const newDepth = node.depth - 1; if (childrenCount > 0 && newDepth) { const children = await this.getChildren(client, [...processedKeys, ...unprocessed, ...failed, ...ignoredKeys], newDepth, node.maxChildren); return { job, children }; } else { return { job }; } } } addChildren({ multi, nodes, parent, queuesOpts }) { return Promise.all(nodes.map((node) => this.addNode({ multi, node, parent, queuesOpts }))); } getChildren(client, childrenKeys, depth, maxChildren) { const getChild = /* @__PURE__ */ __name((key) => { const [prefix, queueName, id] = key.split(":"); return this.getNode(client, { id, queueName, prefix, depth, maxChildren }); }, "getChild"); return Promise.all([...childrenKeys.map(getChild)]); } /** * Helper factory method that creates a queue-like object * required to create jobs in any queue. * * @param node - The flow node containing the queue name and other job options. * @param queueKeys - The queue keys helper used to resolve key names. * @param prefix - The Redis key prefix used for the queue. * @returns A queue-like object with the client, keys, and options needed to create jobs. */ queueFromNode(node, queueKeys, prefix) { const cacheKey = `${prefix}:${node.queueName}`; const cached = this.queues.get(cacheKey); if (cached) { return cached; } const flowProducer = this; const queue = { client: this.connection.client, name: node.queueName, keys: queueKeys.getKeys(node.queueName), toKey: /* @__PURE__ */ __name((type) => queueKeys.toKey(node.queueName, type), "toKey"), opts: { prefix, connection: {} }, qualifiedName: queueKeys.getQueueQualifiedName(node.queueName), get closing() { return flowProducer.closing; }, waitUntilReady: /* @__PURE__ */ __name(async () => this.connection.client, "waitUntilReady"), removeListener: this.removeListener.bind(this), emit: this.emit.bind(this), on: this.on.bind(this), get redisVersion() { return flowProducer.connection.redisVersion; }, get databaseType() { return flowProducer.connection.databaseType; }, trace: /* @__PURE__ */ __name(async () => { }, "trace") }; queue.scripts = this.createScripts(queue); this.queues.set(cacheKey, queue); return queue; } /** * Translates numeric addJob Lua error codes returned by root flow exec. * * @param code - Numeric error code returned from Redis. * @param parentKey - Parent key for contextual error messages. */ toFlowError(code, parentKey) { let error; switch (code) { case enums_1.ErrorCode.ParentJobNotExist: error = new Error(`Missing key for parent job ${parentKey}. addJob`); break; case enums_1.ErrorCode.ParentJobCannotBeReplaced: error = new Error(`The parent job ${parentKey} cannot be replaced. addJob`); break; default: error = new Error(`Unknown code ${code} error for addJob`); } error.code = code; return error; } /** * * Closes the connection and returns a promise that resolves when the connection is closed. */ async close() { if (!this.closing) { this.queues.clear(); this.closing = this.connection.close(); } await this.closing; } /** * * Force disconnects a connection. */ disconnect() { return this.connection.disconnect(); } }; exports2.FlowProducer = FlowProducer; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/node-redis-client.js var require_node_redis_client = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/node-redis-client.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createNodeRedisClient = createNodeRedisClient; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var crypto_1 = require("crypto"); var events_1 = require("events"); var stream_1 = require("stream"); var connection_closed_error_1 = require_connection_closed_error(); function normalizeScriptArgs(args) { return args.length === 1 && Array.isArray(args[0]) ? args[0] : args; } __name(normalizeScriptArgs, "normalizeScriptArgs"); function isConnectionClosedError(err) { return (err === null || err === void 0 ? void 0 : err.message) === "Disconnects client" || (err === null || err === void 0 ? void 0 : err.message) === "The client is closed" || (err === null || err === void 0 ? void 0 : err.message) === "Connection is closed."; } __name(isConnectionClosedError, "isConnectionClosedError"); function createNodeRedisClient(client) { return new NodeRedisAdapter(client); } __name(createNodeRedisClient, "createNodeRedisClient"); var NodeRedisAdapter = class _NodeRedisAdapter extends events_1.EventEmitter { static { __name(this, "NodeRedisAdapter"); } /** * Expose connection status using the vocabulary that * {@link RedisConnection.waitUntilReady} expects: * 'wait' → not yet connected, call connect() * 'ready' → usable * 'end' → permanently closed */ get status() { if (this.statusOverride) { return this.statusOverride; } if (this.raw.isReady) { return "ready"; } if (this.raw.isOpen) { return "connect"; } return this.hasConnected ? "end" : "wait"; } set status(val) { if (val === "end") { this.destroying = true; if (this.raw.isOpen) { try { this.raw.quit().catch(() => { }); } catch (_a) { } } } this.statusOverride = val; } get options() { var _a; return (_a = this.raw.options) !== null && _a !== void 0 ? _a : {}; } set options(val) { } constructor(raw) { super(); this.raw = raw; this.scripts = /* @__PURE__ */ new Map(); this.hasConnected = false; this.destroying = false; this.isCluster = false; raw.on("ready", () => { this.hasConnected = true; if (this.connectionName) { this.raw.clientSetName(this.connectionName).then(() => this.emit("ready"), () => this.emit("ready")); } else { this.emit("ready"); } }); raw.on("error", (err) => { if (this.destroying && isConnectionClosedError(err)) { return; } this.emit("error", err); }); raw.on("end", () => this.emit("close")); raw.on("reconnecting", () => this.emit("reconnecting")); if (!raw.isOpen) { this.connectPromise = raw.connect().then(() => { this.connectPromise = void 0; }, (err) => { this.connectPromise = void 0; }); } } // --------------------------------------------------------------- // Connection lifecycle // --------------------------------------------------------------- async connect() { if (this.connectPromise) { return this.connectPromise; } if (!this.raw.isOpen) { this.connectPromise = this.raw.connect().then(() => { this.connectPromise = void 0; }, (err) => { this.connectPromise = void 0; throw err; }); return this.connectPromise; } if (!this.raw.isReady) { await new Promise((resolve, reject) => { const onReady = /* @__PURE__ */ __name(() => { cleanup(); resolve(); }, "onReady"); const onError = /* @__PURE__ */ __name((err) => { cleanup(); reject(err); }, "onError"); const onEnd = /* @__PURE__ */ __name(() => { cleanup(); reject(new Error("Connection ended before ready event")); }, "onEnd"); const cleanup = /* @__PURE__ */ __name(() => { this.off("ready", onReady); this.off("error", onError); this.off("end", onEnd); }, "cleanup"); this.once("ready", onReady); this.once("error", onError); this.once("end", onEnd); }); } } disconnect(reconnect = false) { this.destroying = true; if (!reconnect) { this.statusOverride = "end"; } try { if (this.raw.isOpen) { this.raw.destroy(); } } catch (_a) { } this.emit("close"); if (reconnect) { this.statusOverride = void 0; this.emit("reconnecting"); this.connect().catch((err) => { if (!isConnectionClosedError(err)) { this.emit("error", err); } }).finally(() => { this.destroying = false; }); } else { this.emit("end"); } } async quit() { if (this.destroying || this.statusOverride === "end") { setImmediate(() => { this.emit("end"); this.emit("close"); }); return "OK"; } this.destroying = true; try { if (this.raw.isOpen) { try { await this.raw.quit(); } catch (_a) { } } } catch (_b) { } this.statusOverride = "end"; setImmediate(() => { this.emit("end"); this.emit("close"); }); return "OK"; } duplicate(...args) { const dup = this.raw.duplicate(); const adapter = new _NodeRedisAdapter(dup); for (const [name, script] of this.scripts) { adapter.scripts.set(name, script); adapter[name] = (...args2) => adapter.runCommand(name, args2); } const opts = args[0]; if (opts && typeof opts === "object" && opts.connectionName) { adapter.connectionName = opts.connectionName; } return adapter; } // --------------------------------------------------------------- // Lua script engine // --------------------------------------------------------------- defineCommand(name, definition) { const sha = (0, crypto_1.createHash)("sha1").update(definition.lua).digest("hex"); this.scripts.set(name, { sha, lua: definition.lua, numberOfKeys: definition.numberOfKeys }); this[name] = (...args) => this.runCommand(name, args); this.raw.scriptLoad(definition.lua).catch(() => { }); } async runCommand(name, args) { var _a, _b; const script = this.scripts.get(name); if (!script) { throw new Error(`BullMQ: unknown command "${name}"`); } const commandArgs = normalizeScriptArgs(args); const { sha, lua, numberOfKeys } = script; const keys = commandArgs.slice(0, numberOfKeys).map(String); const argv = commandArgs.slice(numberOfKeys).map((a) => { if (Buffer.isBuffer(a)) { return a; } if (a === void 0 || a === null) { return ""; } return String(a); }); try { return await this.raw.evalSha(sha, { keys, arguments: argv }); } catch (err) { if (this.destroying && isConnectionClosedError(err)) { return null; } if (isConnectionClosedError(err)) { throw new connection_closed_error_1.ConnectionClosedError(err.message, err); } if ((_b = (_a = err === null || err === void 0 ? void 0 : err.message) === null || _a === void 0 ? void 0 : _a.includes) === null || _b === void 0 ? void 0 : _b.call(_a, "NOSCRIPT")) { try { return await this.raw.eval(lua, { keys, arguments: argv }); } catch (evalErr) { if (this.destroying && isConnectionClosedError(evalErr)) { return null; } if (isConnectionClosedError(evalErr)) { throw new connection_closed_error_1.ConnectionClosedError(evalErr.message, evalErr); } throw evalErr; } } throw err; } } // --------------------------------------------------------------- // Pipeline / Transaction // --------------------------------------------------------------- multi() { return new NodeRedisTransaction(this.raw.multi(), this.scripts); } pipeline() { return this.multi(); } // --------------------------------------------------------------- // Hash commands // --------------------------------------------------------------- async hgetall(key) { const result = await this.raw.hGetAll(key); return result !== null && result !== void 0 ? result : {}; } async hget(key, field) { var _a; return (_a = await this.raw.hGet(key, field)) !== null && _a !== void 0 ? _a : null; } async hmget(key, ...fields) { const result = await this.raw.hmGet(key, fields); return result.map((v) => v !== null && v !== void 0 ? v : null); } async hset(key, dataOrField, ...rest) { if (typeof dataOrField === "object") { return await this.raw.hSet(key, dataOrField); } const record = {}; record[dataOrField] = String(rest[0]); for (let i = 1; i < rest.length; i += 2) { record[String(rest[i])] = String(rest[i + 1]); } return await this.raw.hSet(key, record); } async hdel(key, ...fields) { return await this.raw.hDel(key, fields); } async hexists(key, field) { const exists = await this.raw.hExists(key, field); return exists ? 1 : 0; } // --------------------------------------------------------------- // String commands // --------------------------------------------------------------- async get(key) { var _a; return (_a = await this.raw.get(key)) !== null && _a !== void 0 ? _a : null; } async set(key, value, options) { const opts = {}; if ((options === null || options === void 0 ? void 0 : options.PX) != null) { opts.PX = options.PX; } else if ((options === null || options === void 0 ? void 0 : options.EX) != null) { opts.EX = options.EX; } return await this.raw.set(key, String(value), opts); } async del(...keys) { if (keys.length === 0) { return 0; } return await this.raw.del(keys); } // --------------------------------------------------------------- // Sorted set commands // --------------------------------------------------------------- async zrange(key, start, end, options) { if (options === null || options === void 0 ? void 0 : options.WITHSCORES) { const items = await this.raw.zRangeWithScores(key, start, end); const flat = []; for (const item of items) { flat.push(item.value, String(item.score)); } return flat; } return await this.raw.zRange(key, start, end); } async zrevrange(key, start, end, options) { if (options === null || options === void 0 ? void 0 : options.WITHSCORES) { const items = await this.raw.zRangeWithScores(key, start, end, { REV: true }); const flat = []; for (const item of items) { flat.push(item.value, String(item.score)); } return flat; } return await this.raw.zRange(key, start, end, { REV: true }); } async zcard(key) { return await this.raw.zCard(key); } async zscore(key, member) { const score = await this.raw.zScore(key, member); return score != null ? String(score) : null; } // --------------------------------------------------------------- // List commands // --------------------------------------------------------------- async lrange(key, start, end) { return await this.raw.lRange(key, start, end); } async llen(key) { return await this.raw.lLen(key); } async ltrim(key, start, end) { await this.raw.lTrim(key, start, end); return "OK"; } async lpos(key, value) { var _a; return (_a = await this.raw.lPos(key, value)) !== null && _a !== void 0 ? _a : null; } // --------------------------------------------------------------- // Set commands // --------------------------------------------------------------- async smembers(key) { return await this.raw.sMembers(key); } // --------------------------------------------------------------- // Stream commands // --------------------------------------------------------------- async xadd(key, id, fields, options) { const opts = {}; if ((options === null || options === void 0 ? void 0 : options.MAXLEN) != null) { opts.TRIM = { strategy: "MAXLEN", threshold: options.MAXLEN, strategyModifier: options.approximate === false ? void 0 : "~" }; } const strFields = {}; for (const [k, v] of Object.entries(fields)) { strFields[k] = String(v); } return await this.raw.xAdd(key, id, strFields, opts); } async xread(streams, options) { const opts = {}; if ((options === null || options === void 0 ? void 0 : options.BLOCK) != null) { opts.BLOCK = options.BLOCK; } if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { opts.COUNT = options.COUNT; } const streamArgs = streams.map((s) => ({ key: s.key, id: s.id })); let result; try { result = await this.raw.xRead(streamArgs, opts); } catch (err) { if (this.destroying && isConnectionClosedError(err)) { return null; } if (isConnectionClosedError(err)) { throw new connection_closed_error_1.ConnectionClosedError(err.message, err); } throw err; } if (!result) { return null; } return result.map((stream) => [ stream.name, stream.messages.map((msg) => [ msg.id, Object.entries(msg.message).flat() ]) ]); } async xtrim(key, strategy, threshold, options) { const strategyModifier = (options === null || options === void 0 ? void 0 : options.approximate) === false ? void 0 : "~"; return await this.raw.xTrim(key, strategy, threshold, { strategyModifier }); } // --------------------------------------------------------------- // Blocking commands // --------------------------------------------------------------- async bzpopmin(key, timeout) { let result; try { result = await this.raw.bzPopMin(key, timeout); } catch (err) { if (this.destroying && isConnectionClosedError(err)) { return null; } if (isConnectionClosedError(err)) { throw new connection_closed_error_1.ConnectionClosedError(err.message, err); } throw err; } if (!result) { return null; } return [result.key, result.value, String(result.score)]; } // --------------------------------------------------------------- // Server / admin commands // --------------------------------------------------------------- async info() { return await this.raw.info(); } async clientSetName(name) { return await this.raw.clientSetName(name); } async clientList() { return await this.raw.sendCommand(["CLIENT", "LIST"]); } // --------------------------------------------------------------- // Key scanning // --------------------------------------------------------------- async scan(cursor, options) { const opts = {}; if (options === null || options === void 0 ? void 0 : options.MATCH) { opts.MATCH = options.MATCH; } if (options === null || options === void 0 ? void 0 : options.COUNT) { opts.COUNT = options.COUNT; } const result = await this.raw.scan(String(cursor), opts); return [String(result.cursor), result.keys]; } scanStream(options) { const raw = this.raw; const connectPromise = this.connectPromise; const scanOpts = {}; if (options.match) { scanOpts.MATCH = options.match; } if (options.count) { scanOpts.COUNT = options.count; } const readable = new stream_1.Readable({ objectMode: true, async read() { var _a, e_1, _b, _c; try { if (connectPromise) { await connectPromise; } try { for (var _d = true, _e = tslib_1.__asyncValues(raw.scanIterator(scanOpts)), _f; _f = await _e.next(), _a = _f.done, !_a; _d = true) { _c = _f.value; _d = false; const keys = _c; if (!readable.push(Array.isArray(keys) ? keys : [keys])) { return; } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (!_d && !_a && (_b = _e.return)) await _b.call(_e); } finally { if (e_1) throw e_1.error; } } readable.push(null); } catch (err) { readable.destroy(err); } } }); return readable; } // --------------------------------------------------------------- // Extra Redis commands (not part of IRedisClient but used by tests // and occasionally by user code that accesses the raw client). // --------------------------------------------------------------- async keys(pattern) { return await this.raw.keys(pattern); } async exists(...keys) { if (keys.length === 0) { return 0; } return await this.raw.exists(keys); } async zadd(key, ...args) { const members = []; for (let i = 0; i < args.length; i += 2) { members.push({ score: Number(args[i]), value: String(args[i + 1]) }); } return await this.raw.zAdd(key, members); } async zrem(key, ...members) { return await this.raw.zRem(key, members); } async xlen(key) { return await this.raw.xLen(key); } async xrevrange(key, end, start, ...rest) { const opts = {}; if (rest[0] === "COUNT") { opts.COUNT = Number(rest[1]); } const result = await this.raw.xRevRange(key, end, start, opts); return result.map((msg) => [ msg.id, Object.entries(msg.message).flat() ]); } async sadd(key, ...members) { return await this.raw.sAdd(key, members.map(String)); } async scard(key) { return await this.raw.sCard(key); } async lpush(key, ...values) { return await this.raw.lPush(key, values); } async rpop(key) { return await this.raw.rPop(key); } async incr(key) { return await this.raw.incr(key); } async incrby(key, increment) { return await this.raw.incrBy(key, increment); } async flushall() { return await this.raw.flushAll(); } }; var NodeRedisTransaction = class { static { __name(this, "NodeRedisTransaction"); } constructor(raw, scripts) { this.raw = raw; this.scripts = scripts; this.transformers = []; } addIdentityTransformer() { this.transformers.push((v) => v); } hgetall(key) { this.raw.hGetAll(key); this.addIdentityTransformer(); return this; } hset(key, data) { this.raw.hSet(key, data); this.addIdentityTransformer(); return this; } hscan(key, cursor, options) { const opts = {}; if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { opts.COUNT = options.COUNT; } this.raw.hScan(key, String(cursor), opts); this.transformers.push((val) => { if (!val) { return ["0", []]; } const flat = []; for (const entry of val.entries || []) { flat.push(entry.field, entry.value); } return [String(val.cursor), flat]; }); return this; } smembers(key) { this.raw.sMembers(key); this.addIdentityTransformer(); return this; } sscan(key, cursor, options) { const opts = {}; if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { opts.COUNT = options.COUNT; } this.raw.sScan(key, String(cursor), opts); this.transformers.push((val) => { if (!val) { return ["0", []]; } return [String(val.cursor), val.members || []]; }); return this; } zrange(key, start, end) { this.raw.zRange(key, start, end); this.addIdentityTransformer(); return this; } lrange(key, start, end) { this.raw.lRange(key, start, end); this.addIdentityTransformer(); return this; } llen(key) { this.raw.lLen(key); this.addIdentityTransformer(); return this; } del(...keys) { if (keys.length > 0) { this.raw.del(keys); this.addIdentityTransformer(); } return this; } runCommand(name, args) { const script = this.scripts.get(name); if (!script) { throw new Error(`BullMQ: unknown command "${name}" in transaction`); } const commandArgs = normalizeScriptArgs(args); const { sha, lua, numberOfKeys } = script; const cmdKeys = commandArgs.slice(0, numberOfKeys).map(String); const argv = commandArgs.slice(numberOfKeys).map((a) => { if (Buffer.isBuffer(a)) { return a; } if (a === void 0 || a === null) { return ""; } return String(a); }); this.raw.evalSha(sha, { keys: cmdKeys, arguments: argv }); this.addIdentityTransformer(); return this; } async exec() { const results = await this.raw.exec(); if (!results) { return null; } return results.map((result, i) => { if (result instanceof Error) { return [result, null]; } const transformer = this.transformers[i]; const value = transformer ? transformer(result) : result; return [null, value]; }); } }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/bun-redis-client.js var require_bun_redis_client = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/bun-redis-client.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createBunRedisClient = createBunRedisClient; var crypto_1 = require("crypto"); var events_1 = require("events"); var stream_1 = require("stream"); var connection_closed_error_1 = require_connection_closed_error(); function normalizeScriptArgs(args) { return args.length === 1 && Array.isArray(args[0]) ? args[0] : args; } __name(normalizeScriptArgs, "normalizeScriptArgs"); function isBunConnectionClosedError(err) { var _a; const msg = (_a = err === null || err === void 0 ? void 0 : err.message) !== null && _a !== void 0 ? _a : ""; return msg === "Socket closed unexpectedly" || msg.startsWith("Connection closed") || msg === "Connection is closed." || msg === "Connection has failed"; } __name(isBunConnectionClosedError, "isBunConnectionClosedError"); function normalizeStringCollection(reply) { if (reply == null) { return []; } if (Array.isArray(reply)) { return reply.map(String); } if (reply instanceof Set) { return Array.from(reply, (item) => String(item)); } return []; } __name(normalizeStringCollection, "normalizeStringCollection"); function createBunRedisClient(client, opts) { return new BunRedisAdapter(client, opts); } __name(createBunRedisClient, "createBunRedisClient"); var BunRedisAdapter = class _BunRedisAdapter extends events_1.EventEmitter { static { __name(this, "BunRedisAdapter"); } get status() { if (this.statusOverride) { return this.statusOverride; } if (this.closed) { return "end"; } if (this.raw.connected) { return "ready"; } return this.hasConnected ? "end" : "wait"; } set status(val) { if (val === "end") { this.closing = true; this.closed = true; } this.statusOverride = val; } get options() { return {}; } set options(_val) { } constructor(raw, opts) { super(); this.raw = raw; this.scripts = /* @__PURE__ */ new Map(); this.loadedScriptShas = /* @__PURE__ */ new Set(); this.hasConnected = false; this.closed = false; this.closing = false; this.reconnecting = false; this.reconnectTimer = null; this.reconnectAttempts = 0; this.maxReconnectDelay = 2e4; this.isCluster = false; this._setupCallbacks(); if (!(opts === null || opts === void 0 ? void 0 : opts.lazyConnect)) { this.connect().catch(() => { }); } } /** * Wire up Bun's callback-style events into EventEmitter and auto-reconnect. */ _setupCallbacks() { this.raw.onconnect = () => { this.hasConnected = true; this.closed = false; this.closing = false; this.reconnecting = false; this.reconnectAttempts = 0; this.statusOverride = void 0; this.loadedScriptShas.clear(); if (this.connectionName) { this.clientSetName(this.connectionName).then(() => this.emit("ready"), () => this.emit("ready")); } else { this.emit("ready"); } }; this.raw.onclose = (error) => { if (this.closing) { this.closed = true; this.emit("close"); this.emit("end"); return; } this.closed = true; this.emit("close"); if (error) { this.emit("error", error); } this._scheduleReconnect(); }; } /** * Schedule a reconnection attempt with exponential backoff. */ _scheduleReconnect() { if (this.closing || this.reconnecting) { return; } this.reconnecting = true; this.reconnectAttempts++; const delay = Math.max(Math.min(Math.exp(this.reconnectAttempts) * 100, this.maxReconnectDelay), 1e3); this.reconnectTimer = setTimeout(async () => { this.reconnectTimer = null; if (this.closing) { this.reconnecting = false; return; } try { const BunRedisClient = this.raw.constructor; const newRaw = new BunRedisClient(this.raw.url); this.raw = newRaw; this.closed = false; this.connecting = void 0; this._setupCallbacks(); await newRaw.connect(); } catch (_err) { this.reconnecting = false; if (!this.closing) { this._scheduleReconnect(); } } }, delay); } // --------------------------------------------------------------- // Connection lifecycle // --------------------------------------------------------------- async connect() { const replaceRaw = this.hasConnected && (this.closed || !this.raw.connected); if (this.reconnectTimer) { clearTimeout(this.reconnectTimer); this.reconnectTimer = null; } this.reconnecting = false; if (this.raw.connected && !replaceRaw) { this.hasConnected = true; this.closed = false; this.closing = false; this.statusOverride = void 0; return; } if (!this.connecting) { this.closed = false; this.closing = false; this.statusOverride = void 0; if (replaceRaw) { const BunRedisClient = this.raw.constructor; this.raw = new BunRedisClient(this.raw.url); this._setupCallbacks(); } this.connecting = this.raw.connect().then(() => { this.hasConnected = true; this.closed = false; this.closing = false; this.statusOverride = void 0; }).finally(() => { this.connecting = void 0; }); } await this.connecting; } _closeRaw() { if (this.reconnectTimer) { clearTimeout(this.reconnectTimer); this.reconnectTimer = null; } this.reconnecting = false; const raw = this.raw; raw.onconnect = () => { }; raw.onclose = () => { }; raw.onerror = () => { }; if (raw.connected) { setImmediate(() => { try { if (raw.connected) { raw.close(); } } catch (_err) { } }); } } disconnect(reconnect) { if (this.closed && !reconnect) { return; } if (reconnect) { this.closed = true; this.statusOverride = void 0; const raw = this.raw; raw.onclose = () => { }; if (raw.connected) { setImmediate(() => { try { if (raw.connected) { raw.close(); } } catch (_err) { } }); } this.emit("close"); this._scheduleReconnect(); } else { this.closing = true; this.closed = true; this.statusOverride = "end"; this._closeRaw(); this.emit("close"); this.emit("end"); } } async quit() { if (this.closed) { setImmediate(() => { this.emit("end"); this.emit("close"); }); return "OK"; } this.closing = true; this.closed = true; this.statusOverride = "end"; this._closeRaw(); setImmediate(() => { this.emit("end"); this.emit("close"); }); return "OK"; } duplicate(...args) { const BunRedisClient = this.raw.constructor; const dup = new BunRedisClient(this.raw.url); const adapter = new _BunRedisAdapter(dup); for (const [name, script] of this.scripts) { adapter.scripts.set(name, script); adapter[name] = (...a) => adapter.runCommand(name, a); } const opts = args[0]; if (opts && typeof opts === "object" && opts.connectionName) { adapter.connectionName = opts.connectionName; } return adapter; } // --------------------------------------------------------------- // Lua script engine // --------------------------------------------------------------- defineCommand(name, definition) { const sha = (0, crypto_1.createHash)("sha1").update(definition.lua).digest("hex"); this.scripts.set(name, { sha, lua: definition.lua, numberOfKeys: definition.numberOfKeys }); this[name] = (...args) => this.runCommand(name, args); } async runCommand(name, args) { const script = this.scripts.get(name); if (!script) { throw new Error(`BullMQ: unknown command "${name}"`); } const commandArgs = normalizeScriptArgs(args); const { sha, lua, numberOfKeys } = script; const keys = commandArgs.slice(0, numberOfKeys).map(String); const argv = commandArgs.slice(numberOfKeys).map((a) => { if (Buffer.isBuffer(a)) { return a; } if (a === void 0 || a === null) { return ""; } return String(a); }); const evalArgs = [sha, String(keys.length), ...keys, ...argv]; const execute = /* @__PURE__ */ __name(async () => { var _a, _b; try { const result = await this.sendCommand("EVALSHA", evalArgs); this.loadedScriptShas.add(sha); return result; } catch (err) { if ((_b = (_a = err === null || err === void 0 ? void 0 : err.message) === null || _a === void 0 ? void 0 : _a.includes) === null || _b === void 0 ? void 0 : _b.call(_a, "NOSCRIPT")) { const evalLuaArgs = [lua, String(keys.length), ...keys, ...argv]; const result = await this.sendCommand("EVAL", evalLuaArgs); this.loadedScriptShas.add(sha); return result; } throw err; } }, "execute"); return execute(); } /** * Ensure the given scripts are present in the server-side SCRIPT cache so * that subsequent EVALSHA calls (e.g. inside a MULTI/EXEC) won't fail with * NOSCRIPT. Each script is SCRIPT LOAD'd at most once per connection. */ async ensureScriptsLoaded(scripts) { const toLoad = []; const seen = /* @__PURE__ */ new Set(); for (const s of scripts) { if (this.loadedScriptShas.has(s.sha) || seen.has(s.sha)) { continue; } seen.add(s.sha); toLoad.push(s); } if (toLoad.length === 0) { return; } await Promise.all(toLoad.map(async (s) => { await this.sendCommand("SCRIPT", ["LOAD", s.lua]); this.loadedScriptShas.add(s.sha); })); } sendCommand(command, args) { if (this.closing || this.closed) { return Promise.reject(new connection_closed_error_1.ConnectionClosedError("Connection is closed")); } return this.raw.send(command, args).catch((err) => { if (isBunConnectionClosedError(err)) { if (this.closing || this.closed) { return null; } return Promise.reject(new connection_closed_error_1.ConnectionClosedError(err.message, err)); } throw err; }); } // --------------------------------------------------------------- // Pipeline / Transaction // --------------------------------------------------------------- multi() { return new BunRedisTransaction(this.raw, this.scripts, true, this); } pipeline() { return new BunRedisTransaction(this.raw, this.scripts, false, this); } // --------------------------------------------------------------- // Hash commands // --------------------------------------------------------------- async hgetall(key) { const result = await this.sendCommand("HGETALL", [key]); if (!result || Array.isArray(result) && result.length === 0) { return {}; } if (Array.isArray(result)) { const obj2 = {}; for (let i = 0; i < result.length; i += 2) { obj2[String(result[i])] = String(result[i + 1]); } return obj2; } return result; } async hget(key, field) { const result = await this.sendCommand("HGET", [key, field]); return result !== null && result !== void 0 ? result : null; } async hmget(key, ...fields) { const result = await this.sendCommand("HMGET", [key, ...fields]); return (result || []).map((v) => v !== null && v !== void 0 ? v : null); } async hset(key, dataOrField, ...rest) { let args; if (typeof dataOrField === "object") { args = [key]; for (const [k, v] of Object.entries(dataOrField)) { args.push(k, String(v)); } } else { args = [key, dataOrField, String(rest[0])]; for (let i = 1; i < rest.length; i += 2) { args.push(String(rest[i]), String(rest[i + 1])); } } return await this.sendCommand("HSET", args); } async hdel(key, ...fields) { return await this.sendCommand("HDEL", [key, ...fields]); } async hexists(key, field) { const result = await this.sendCommand("HEXISTS", [key, field]); return result === true || result === 1 ? 1 : 0; } // --------------------------------------------------------------- // String commands // --------------------------------------------------------------- async get(key) { const result = await this.sendCommand("GET", [key]); return result !== null && result !== void 0 ? result : null; } async set(key, value, options) { const args = [key, String(value)]; if ((options === null || options === void 0 ? void 0 : options.PX) != null) { args.push("PX", String(options.PX)); } else if ((options === null || options === void 0 ? void 0 : options.EX) != null) { args.push("EX", String(options.EX)); } return await this.sendCommand("SET", args); } async del(...keys) { if (keys.length === 0) { return 0; } return await this.sendCommand("DEL", keys); } // --------------------------------------------------------------- // Sorted set commands // --------------------------------------------------------------- async zrange(key, start, end, options) { const args = [key, String(start), String(end)]; if (options === null || options === void 0 ? void 0 : options.WITHSCORES) { args.push("WITHSCORES"); } const result = await this.sendCommand("ZRANGE", args); if (!result) { return []; } if ((options === null || options === void 0 ? void 0 : options.WITHSCORES) && result.length > 0 && Array.isArray(result[0])) { return result.flatMap((pair) => [String(pair[0]), String(pair[1])]); } return result.map(String); } async zrevrange(key, start, end, options) { const args = [key, String(start), String(end)]; if (options === null || options === void 0 ? void 0 : options.WITHSCORES) { args.push("WITHSCORES"); } args.push("REV"); const result = await this.sendCommand("ZRANGE", args); if (!result) { return []; } if ((options === null || options === void 0 ? void 0 : options.WITHSCORES) && result.length > 0 && Array.isArray(result[0])) { return result.flatMap((pair) => [String(pair[0]), String(pair[1])]); } return result.map(String); } async zcard(key) { return await this.sendCommand("ZCARD", [key]); } async zscore(key, member) { const score = await this.sendCommand("ZSCORE", [key, member]); return score != null ? String(score) : null; } // --------------------------------------------------------------- // List commands // --------------------------------------------------------------- async lrange(key, start, end) { const result = await this.sendCommand("LRANGE", [ key, String(start), String(end) ]); return (result || []).map(String); } async llen(key) { return await this.sendCommand("LLEN", [key]); } async ltrim(key, start, end) { await this.sendCommand("LTRIM", [key, String(start), String(end)]); return "OK"; } async lpos(key, value) { const result = await this.sendCommand("LPOS", [key, value]); return result !== null && result !== void 0 ? result : null; } // --------------------------------------------------------------- // Set commands // --------------------------------------------------------------- async smembers(key) { const result = await this.sendCommand("SMEMBERS", [key]); return normalizeStringCollection(result); } // --------------------------------------------------------------- // Stream commands // --------------------------------------------------------------- async xadd(key, id, fields, options) { const args = [key]; if ((options === null || options === void 0 ? void 0 : options.MAXLEN) != null) { args.push("MAXLEN"); if (options.approximate !== false) { args.push("~"); } args.push(String(options.MAXLEN)); } args.push(id); for (const [k, v] of Object.entries(fields)) { args.push(k, String(v)); } return await this.raw.send("XADD", args); } async xread(streams, options) { const args = []; if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { args.push("COUNT", String(options.COUNT)); } if ((options === null || options === void 0 ? void 0 : options.BLOCK) != null) { args.push("BLOCK", String(options.BLOCK)); } args.push("STREAMS"); for (const s of streams) { args.push(s.key); } for (const s of streams) { args.push(s.id); } let result; try { result = await this.sendCommand("XREAD", args); } catch (err) { if (this.closing) { return null; } throw err; } if (!result) { return null; } if (Array.isArray(result)) { return result.map((stream) => { const streamName = String(stream[0]); const entries = (stream[1] || []).map((entry) => { const entryId = String(entry[0]); const fields = (entry[1] || []).map(String); return [entryId, fields]; }); return [streamName, entries]; }); } return Object.entries(result).map(([streamName, rawEntries]) => { const entries = (rawEntries || []).map((entry) => { const entryId = String(entry[0]); const fields = (entry[1] || []).map(String); return [entryId, fields]; }); return [streamName, entries]; }); } async xtrim(key, strategy, threshold, options) { const args = [key, strategy]; if ((options === null || options === void 0 ? void 0 : options.approximate) !== false) { args.push("~"); } args.push(String(threshold)); return await this.sendCommand("XTRIM", args); } // --------------------------------------------------------------- // Blocking commands // --------------------------------------------------------------- async bzpopmin(key, timeout) { let result; try { result = await this.sendCommand("BZPOPMIN", [key, String(timeout)]); } catch (err) { if (this.closing) { return null; } throw err; } if (!result || result.length === 0) { return null; } return [String(result[0]), String(result[1]), String(result[2])]; } // --------------------------------------------------------------- // Server / admin commands // --------------------------------------------------------------- async info() { return await this.sendCommand("INFO", []); } async clientSetName(name) { return await this.sendCommand("CLIENT", ["SETNAME", name]); } async clientList() { return await this.sendCommand("CLIENT", ["LIST"]); } // --------------------------------------------------------------- // Key scanning // --------------------------------------------------------------- async scan(cursor, options) { const args = [String(cursor)]; if (options === null || options === void 0 ? void 0 : options.MATCH) { args.push("MATCH", options.MATCH); } if (options === null || options === void 0 ? void 0 : options.COUNT) { args.push("COUNT", String(options.COUNT)); } const result = await this.sendCommand("SCAN", args); const keys = result[1]; return [String(result[0]), Array.isArray(keys) ? keys.map(String) : []]; } scanStream(options) { const adapter = this; let cursor = "0"; let started = false; const readable = new stream_1.Readable({ objectMode: true, async read() { if (started && cursor === "0") { readable.push(null); return; } started = true; try { while (true) { const [nextCursor, keys] = await adapter.scan(cursor, { MATCH: options.match, COUNT: options.count }); cursor = nextCursor; if (keys.length > 0) { readable.push(keys); if (cursor === "0") { readable.push(null); } return; } if (cursor === "0") { readable.push(null); return; } } } catch (err) { readable.destroy(err); } } }); return readable; } // --------------------------------------------------------------- // Extra Redis commands used by BullMQ internals // --------------------------------------------------------------- async keys(pattern) { const result = await this.sendCommand("KEYS", [pattern]); return (result || []).map(String); } async exists(...keys) { if (keys.length === 0) { return 0; } const result = await this.sendCommand("EXISTS", keys); if (typeof result === "boolean") { return result ? 1 : 0; } return result; } async zadd(key, ...args) { const cmdArgs = [key]; for (let i = 0; i < args.length; i += 2) { cmdArgs.push(String(args[i]), String(args[i + 1])); } return await this.sendCommand("ZADD", cmdArgs); } async zrem(key, ...members) { return await this.sendCommand("ZREM", [key, ...members]); } async xlen(key) { return await this.sendCommand("XLEN", [key]); } async xrevrange(key, end, start, ...rest) { const args = [key, end, start]; if (rest[0] === "COUNT") { args.push("COUNT", String(rest[1])); } const result = await this.sendCommand("XREVRANGE", args); if (!result) { return []; } return result.map((msg) => [ String(msg[0]), (msg[1] || []).map(String) ]); } async sadd(key, ...members) { return await this.sendCommand("SADD", [key, ...members.map(String)]); } async scard(key) { return await this.sendCommand("SCARD", [key]); } async lpush(key, ...values) { return await this.sendCommand("LPUSH", [key, ...values]); } async rpop(key) { const result = await this.sendCommand("RPOP", [key]); return result !== null && result !== void 0 ? result : null; } async incr(key) { return await this.sendCommand("INCR", [key]); } async incrby(key, increment) { return await this.sendCommand("INCRBY", [key, String(increment)]); } async flushall() { return await this.sendCommand("FLUSHALL", []); } }; var BunRedisTransaction = class { static { __name(this, "BunRedisTransaction"); } constructor(raw, scripts, transactional, adapter) { this.raw = raw; this.scripts = scripts; this.transactional = transactional; this.adapter = adapter; this.commands = []; this.transformers = []; this.scriptsToLoad = []; } addCommand(cmd, args, transformer) { this.commands.push({ cmd, args }); this.transformers.push(transformer || ((v) => v)); } hgetall(key) { this.addCommand("HGETALL", [key], (val) => { if (!val || Array.isArray(val) && val.length === 0) { return {}; } if (Array.isArray(val)) { const obj2 = {}; for (let i = 0; i < val.length; i += 2) { obj2[String(val[i])] = String(val[i + 1]); } return obj2; } return val; }); return this; } hset(key, data) { const args = [key]; for (const [k, v] of Object.entries(data)) { args.push(k, String(v)); } this.addCommand("HSET", args); return this; } hscan(key, cursor, options) { const args = [key, String(cursor)]; if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { args.push("COUNT", String(options.COUNT)); } this.addCommand("HSCAN", args, (val) => { if (!val) { return ["0", []]; } if (Array.isArray(val)) { return [String(val[0]), normalizeStringCollection(val[1])]; } return ["0", []]; }); return this; } smembers(key) { this.addCommand("SMEMBERS", [key], (val) => normalizeStringCollection(val)); return this; } sscan(key, cursor, options) { const args = [key, String(cursor)]; if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { args.push("COUNT", String(options.COUNT)); } this.addCommand("SSCAN", args, (val) => { if (!val) { return ["0", []]; } if (Array.isArray(val)) { return [String(val[0]), normalizeStringCollection(val[1])]; } return ["0", []]; }); return this; } zrange(key, start, end) { this.addCommand("ZRANGE", [key, String(start), String(end)], (val) => Array.isArray(val) ? val.map(String) : []); return this; } lrange(key, start, end) { this.addCommand("LRANGE", [key, String(start), String(end)], (val) => Array.isArray(val) ? val.map(String) : []); return this; } llen(key) { this.addCommand("LLEN", [key]); return this; } del(...keys) { if (keys.length > 0) { this.addCommand("DEL", keys); } return this; } runCommand(name, args) { const script = this.scripts.get(name); if (!script) { throw new Error(`BullMQ: unknown command "${name}" in transaction`); } const commandArgs = normalizeScriptArgs(args); const { sha, numberOfKeys } = script; const cmdKeys = commandArgs.slice(0, numberOfKeys).map(String); const argv = commandArgs.slice(numberOfKeys).map((a) => { if (Buffer.isBuffer(a)) { return a; } if (a === void 0 || a === null) { return ""; } return String(a); }); this.scriptsToLoad.push(script); this.addCommand("EVALSHA", [ sha, String(cmdKeys.length), ...cmdKeys, ...argv ]); return this; } async exec() { if (this.commands.length === 0) { return []; } if (this.scriptsToLoad.length > 0) { await this.adapter.ensureScriptsLoaded(this.scriptsToLoad); } if (!this.transactional) { const settled = await Promise.allSettled(this.commands.map(({ cmd, args }) => this.adapter.sendCommand(cmd, args))); return settled.map((result, i) => { if (result.status === "rejected") { return [result.reason, null]; } const transformer = this.transformers[i]; const value = transformer ? transformer(result.value) : result.value; return [null, value]; }); } const swallow = /* @__PURE__ */ __name((_2) => { }, "swallow"); try { this.raw.send("MULTI", []).catch(swallow); for (const { cmd, args } of this.commands) { this.raw.send(cmd, args).catch(swallow); } const results = await this.raw.send("EXEC", []); if (!results) { return null; } return results.map((result, i) => { if (result instanceof Error) { return [result, null]; } const transformer = this.transformers[i]; const value = transformer ? transformer(result) : result; return [null, value]; }); } catch (err) { try { await this.raw.send("DISCARD", []); } catch (_a) { } throw err; } } }; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/valkey-glide-client.js var require_valkey_glide_client = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/valkey-glide-client.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createValkeyGlideClient = createValkeyGlideClient; var crypto_1 = require("crypto"); var events_1 = require("events"); var stream_1 = require("stream"); var connection_closed_error_1 = require_connection_closed_error(); var GLIDE_STRING_DECODER = 1; function createCompatibilityBatch() { return { commands: [], customCommand(args) { this.commands.push(args); } }; } __name(createCompatibilityBatch, "createCompatibilityBatch"); function createGlideBatch(isAtomic) { try { const { Batch } = require("@valkey/valkey-glide"); return typeof Batch === "function" ? new Batch(isAtomic) : null; } catch (_a) { return null; } } __name(createGlideBatch, "createGlideBatch"); function isBuffer(value) { return Buffer.isBuffer(value); } __name(isBuffer, "isBuffer"); function toGlideArg(value) { if (isBuffer(value)) { return value; } if (value === void 0 || value === null) { return ""; } return String(value); } __name(toGlideArg, "toGlideArg"); function toStringValue(value) { if (isBuffer(value)) { return value.toString(); } return String(value); } __name(toStringValue, "toStringValue"); function isKeyValueArray(value) { return Array.isArray(value) && value.every((item) => item && typeof item === "object" && "key" in item && "value" in item); } __name(isKeyValueArray, "isKeyValueArray"); function normalizeScriptArgs(args) { return args.length === 1 && Array.isArray(args[0]) ? args[0] : args; } __name(normalizeScriptArgs, "normalizeScriptArgs"); function normalizeHashReply(reply) { if (!reply) { return {}; } if (isKeyValueArray(reply)) { return reply.reduce((acc, item) => { acc[toStringValue(item.key)] = toStringValue(item.value); return acc; }, {}); } if (reply instanceof Map) { const out = {}; for (const [key, value] of reply.entries()) { out[toStringValue(key)] = toStringValue(value); } return out; } if (Array.isArray(reply)) { const out = {}; for (let i = 0; i < reply.length; i += 2) { out[toStringValue(reply[i])] = toStringValue(reply[i + 1]); } return out; } if (typeof reply === "object") { const out = {}; for (const [key, value] of Object.entries(reply)) { out[key] = toStringValue(value); } return out; } return {}; } __name(normalizeHashReply, "normalizeHashReply"); function flattenFieldPairs(fields) { if (!fields) { return []; } if (Array.isArray(fields)) { if (isKeyValueArray(fields)) { return fields.flatMap((pair) => [ toStringValue(pair.key), toStringValue(pair.value) ]); } if (fields.every((item) => Array.isArray(item) && item.length === 2)) { return fields.flatMap((pair) => { const [field, value] = pair; return [toStringValue(field), toStringValue(value)]; }); } return fields.map((item) => toStringValue(item)); } if (typeof fields === "object") { return Object.entries(fields).flatMap(([field, value]) => [field, toStringValue(value)]); } return []; } __name(flattenFieldPairs, "flattenFieldPairs"); function normalizeXReadReply(reply) { if (!reply) { return null; } if (Array.isArray(reply) && reply.every((stream) => Array.isArray(stream) && stream.length === 2 && typeof stream[0] !== "undefined" && Array.isArray(stream[1]))) { return reply; } if (!isKeyValueArray(reply)) { return reply; } return reply.map((streamEntry) => { const streamName = toStringValue(streamEntry.key); const messages = isKeyValueArray(streamEntry.value) ? streamEntry.value.map((message) => [ toStringValue(message.key), flattenFieldPairs(message.value) ]) : []; return [streamName, messages]; }); } __name(normalizeXReadReply, "normalizeXReadReply"); function normalizeScanReply(reply) { if (Array.isArray(reply) && reply.length >= 2) { const [cursor, keys] = reply; const normalizedKeys = Array.isArray(keys) ? keys.map((key) => toStringValue(key)) : []; return [toStringValue(cursor), normalizedKeys]; } if (reply && typeof reply === "object") { const result = reply; if (result.cursor !== void 0 && Array.isArray(result.keys)) { return [ toStringValue(result.cursor), result.keys.map((key) => toStringValue(key)) ]; } } return ["0", []]; } __name(normalizeScanReply, "normalizeScanReply"); function normalizeXRangeReply(reply) { if (!reply) { return []; } if (Array.isArray(reply) && reply.every((entry) => Array.isArray(entry) && entry.length === 2 && typeof entry[0] !== "undefined" && Array.isArray(entry[1]))) { return reply.map(([id, fields]) => [ toStringValue(id), fields.map((field) => toStringValue(field)) ]); } if (!isKeyValueArray(reply)) { return []; } return reply.map((entry) => [ toStringValue(entry.key), flattenFieldPairs(entry.value) ]); } __name(normalizeXRangeReply, "normalizeXRangeReply"); function normalizeSortedSetReply(reply, withScores = false) { if (!Array.isArray(reply)) { return []; } if (!withScores) { return reply.map((item) => toStringValue(item)); } if (isKeyValueArray(reply)) { return reply.flatMap((entry) => [ toStringValue(entry.key), toStringValue(entry.value) ]); } if (reply.every((item) => Array.isArray(item) && item.length >= 2 && item[0] !== void 0)) { return reply.flatMap((item) => [ toStringValue(item[0]), toStringValue(item[1]) ]); } return reply.map((item) => toStringValue(item)); } __name(normalizeSortedSetReply, "normalizeSortedSetReply"); function isBlockingCommand(args) { const [command, ...rest] = args; const name = toStringValue(command).toUpperCase(); if (name === "BZPOPMIN") { return true; } if (name !== "XREAD") { return false; } for (let i = 0; i < rest.length; i += 2) { if (toStringValue(rest[i]).toUpperCase() === "BLOCK") { return true; } } return false; } __name(isBlockingCommand, "isBlockingCommand"); function createValkeyGlideClient(client) { return new ValkeyGlideAdapter(client); } __name(createValkeyGlideClient, "createValkeyGlideClient"); var ValkeyGlideAdapter = class _ValkeyGlideAdapter extends events_1.EventEmitter { static { __name(this, "ValkeyGlideAdapter"); } constructor(rawOrPromise, connectionName) { super(); this.connectionName = connectionName; this.scripts = /* @__PURE__ */ new Map(); this.scriptsBySha = /* @__PURE__ */ new Map(); this.scriptLoadPromises = /* @__PURE__ */ new Map(); this.readyEmitted = false; this.closed = false; this.operationChain = Promise.resolve(); this.activeBlockingCommands = 0; if (rawOrPromise instanceof Promise) { this.rawPromise = rawOrPromise; void this.connect().catch((error) => this.emit("error", error)); } else { this.raw = rawOrPromise; } } get status() { if (this.statusOverride) { return this.statusOverride; } if (this.closed) { return "end"; } if (this.readyEmitted) { return "ready"; } return "wait"; } set status(value) { if (value === "end") { this.disconnect(); } this.statusOverride = value; } get isCluster() { var _a, _b, _c; const name = (_c = (_b = (_a = this.raw) === null || _a === void 0 ? void 0 : _a.constructor) === null || _b === void 0 ? void 0 : _b.name) !== null && _c !== void 0 ? _c : ""; return name.includes("Cluster"); } get options() { var _a, _b, _c, _d; return (_d = (_b = (_a = this.raw) === null || _a === void 0 ? void 0 : _a.config) !== null && _b !== void 0 ? _b : (_c = this.raw) === null || _c === void 0 ? void 0 : _c.options) !== null && _d !== void 0 ? _d : {}; } set options(_value) { } ensureOpen() { if (this.closed) { throw new connection_closed_error_1.ConnectionClosedError(); } } normalizeError(error) { if (error instanceof connection_closed_error_1.ConnectionClosedError || error instanceof Error && error.name === "ClosingError") { throw new connection_closed_error_1.ConnectionClosedError(error.message, error); } throw error; } async ensureRaw() { if (this.raw) { return this.raw; } if (!this.rawPromise) { throw new Error("BullMQ: Valkey Glide client not initialized - missing raw client and client promise. Please report this as a bug."); } this.raw = await this.rawPromise; return this.raw; } async runSerialized(fn) { this.ensureOpen(); const previous = this.operationChain; let release; this.operationChain = new Promise((resolve) => { release = resolve; }); await previous; this.ensureOpen(); try { const raw = await this.ensureRaw(); this.ensureOpen(); return await fn(raw); } catch (error) { this.normalizeError(error); } finally { release(); } } async runRawCommand(args, options) { const blockingCommand = isBlockingCommand(args); return this.runSerialized(async (raw) => { if (blockingCommand) { this.activeBlockingCommands++; } try { return await raw.customCommand(args, options); } finally { if (blockingCommand) { this.activeBlockingCommands--; } } }); } ensureScriptLoaded(script) { let pendingLoad = this.scriptLoadPromises.get(script.sha); if (!pendingLoad) { pendingLoad = this.runRawCommand(["SCRIPT", "LOAD", script.lua]).then(() => { }).catch(() => { }); this.scriptLoadPromises.set(script.sha, pendingLoad); } return pendingLoad; } async applyConnectionNameIfNeeded() { if (!this.connectionName) { return; } await this.runRawCommand(["CLIENT", "SETNAME", this.connectionName], { decoder: GLIDE_STRING_DECODER }); } async clearConnectionNameIfNeeded(raw) { if (!this.connectionName) { return; } try { await raw.customCommand(["CLIENT", "SETNAME", ""], { decoder: GLIDE_STRING_DECODER }); } catch (_a) { } } async recreateRaw() { var _a, _b; const raw = await this.ensureRaw(); const clientConstructor = raw.constructor; const createClient = (_a = clientConstructor === null || clientConstructor === void 0 ? void 0 : clientConstructor.createClient) === null || _a === void 0 ? void 0 : _a.bind(clientConstructor); const config = (_b = raw.config) !== null && _b !== void 0 ? _b : raw.options; if (!createClient || !config) { throw new Error("BullMQ: Cannot recreate Valkey Glide client: missing createClient() method or config object. Ensure the client was created via GlideClient.createClient() or GlideClusterClient.createClient()."); } this.raw = await createClient(config); this.scriptLoadPromises.clear(); } async connect() { if (this.connecting) { return this.connecting; } this.connecting = (async () => { if (this.closed && this.raw) { await this.recreateRaw(); } this.closed = false; this.statusOverride = void 0; await this.ensureRaw(); try { await this.applyConnectionNameIfNeeded(); } catch (error) { if (this.closed && error instanceof connection_closed_error_1.ConnectionClosedError) { return; } throw error; } if (this.closed) { return; } this.readyEmitted = true; this.emit("ready"); })().finally(() => { this.connecting = void 0; }); return this.connecting; } closeRaw() { if (!this.closingPromise) { const closeRaw = /* @__PURE__ */ __name(() => { if (!this.raw) { return; } try { this.raw.close(); } catch (_a) { } }, "closeRaw"); this.closingPromise = (this.activeBlockingCommands > 0 ? Promise.resolve().then(closeRaw) : this.operationChain.catch(() => { }).then(async () => { if (!this.closed) { return; } if (this.raw) { await this.clearConnectionNameIfNeeded(this.raw); } closeRaw(); })).finally(() => { this.closingPromise = void 0; }); } return this.closingPromise; } disconnect(reconnect = false) { if (this.closed && !reconnect) { return; } this.closed = true; this.readyEmitted = false; this.statusOverride = reconnect ? void 0 : "end"; this.emit("close"); if (reconnect) { void this.closeRaw().then(() => { this.emit("reconnecting"); return this.connect(); }).catch((error) => this.emit("error", error)); return; } void this.closeRaw(); this.emit("end"); } async quit() { if (this.closed) { setImmediate(() => { this.emit("end"); this.emit("close"); }); return "OK"; } this.closed = true; this.readyEmitted = false; this.statusOverride = "end"; void this.closeRaw(); setImmediate(() => { this.emit("end"); this.emit("close"); }); return "OK"; } duplicate(...args) { var _a; const options = (_a = args[0]) !== null && _a !== void 0 ? _a : {}; const duplicated = (async () => { var _a2, _b; const raw = await this.ensureRaw(); const clientConstructor = raw.constructor; const createClient = (_a2 = clientConstructor === null || clientConstructor === void 0 ? void 0 : clientConstructor.createClient) === null || _a2 === void 0 ? void 0 : _a2.bind(clientConstructor); const config = (_b = raw.config) !== null && _b !== void 0 ? _b : raw.options; if (!createClient || !config) { throw new Error("BullMQ: Cannot duplicate Valkey Glide client: missing createClient() or config. Ensure the client was created via GlideClient.createClient()/GlideClusterClient.createClient()."); } return createClient(config); })(); return new _ValkeyGlideAdapter(duplicated, options.connectionName); } defineCommand(name, definition) { const sha = (0, crypto_1.createHash)("sha1").update(definition.lua).digest("hex"); const script = { sha, lua: definition.lua, numberOfKeys: definition.numberOfKeys }; this.scripts.set(name, script); this.scriptsBySha.set(sha, script); this[name] = (...args) => this.runCommand(name, args); void this.ensureScriptLoaded(script); } async runCommand(name, args) { const script = this.scripts.get(name); if (!script) { throw new Error(`BullMQ: command "${name}" is not defined. Use defineCommand() before runCommand().`); } const normalizedArgs = normalizeScriptArgs(args); const keys = normalizedArgs.slice(0, script.numberOfKeys).map(toGlideArg); const argv = normalizedArgs.slice(script.numberOfKeys).map(toGlideArg); const evalShaArgs = [ "EVALSHA", script.sha, String(script.numberOfKeys), ...keys, ...argv ]; try { return await this.runRawCommand(evalShaArgs); } catch (err) { if (typeof (err === null || err === void 0 ? void 0 : err.message) === "string" && err.message.toLowerCase().includes("noscript")) { return this.runRawCommand([ "EVAL", script.lua, String(script.numberOfKeys), ...keys, ...argv ]); } throw err; } } multi() { return new ValkeyGlideTransaction(this, this.scripts); } pipeline() { return this.multi(); } async hgetall(key) { return normalizeHashReply(await this.runRawCommand(["HGETALL", key])); } async hget(key, field) { const value = await this.runRawCommand(["HGET", key, field]); return value == null ? null : toStringValue(value); } async hmget(key, ...fields) { const value = await this.runRawCommand(["HMGET", key, ...fields]); return Array.isArray(value) ? value.map((item) => item == null ? null : toStringValue(item)) : []; } async hset(key, data) { const args = ["HSET", key]; for (const [field, value] of Object.entries(data)) { args.push(field, toGlideArg(value)); } return Number(await this.runRawCommand(args)); } async hdel(key, ...fields) { return Number(await this.runRawCommand(["HDEL", key, ...fields])); } async hexists(key, field) { const result = await this.runRawCommand(["HEXISTS", key, field]); if (typeof result === "boolean") { return result ? 1 : 0; } return Number(result); } async get(key) { const value = await this.runRawCommand(["GET", key]); return value == null ? null : toStringValue(value); } async set(key, value, options) { const args = ["SET", key, toGlideArg(value)]; if ((options === null || options === void 0 ? void 0 : options.PX) != null) { args.push("PX", String(options.PX)); } else if ((options === null || options === void 0 ? void 0 : options.EX) != null) { args.push("EX", String(options.EX)); } const result = await this.runRawCommand(args); return result == null ? null : toStringValue(result); } async del(...keys) { if (keys.length === 0) { return 0; } return Number(await this.runRawCommand(["DEL", ...keys])); } async zrange(key, start, end, options) { const args = ["ZRANGE", key, String(start), String(end)]; if (options === null || options === void 0 ? void 0 : options.WITHSCORES) { args.push("WITHSCORES"); } const result = await this.runRawCommand(args); return normalizeSortedSetReply(result, options === null || options === void 0 ? void 0 : options.WITHSCORES); } async zrevrange(key, start, end, options) { const args = ["ZREVRANGE", key, String(start), String(end)]; if (options === null || options === void 0 ? void 0 : options.WITHSCORES) { args.push("WITHSCORES"); } const result = await this.runRawCommand(args); return normalizeSortedSetReply(result, options === null || options === void 0 ? void 0 : options.WITHSCORES); } async zcard(key) { return Number(await this.runRawCommand(["ZCARD", key])); } async zscore(key, member) { const result = await this.runRawCommand(["ZSCORE", key, member]); return result == null ? null : toStringValue(result); } async lrange(key, start, end) { const result = await this.runRawCommand([ "LRANGE", key, String(start), String(end) ]); return Array.isArray(result) ? result.map(toStringValue) : []; } async llen(key) { return Number(await this.runRawCommand(["LLEN", key])); } async ltrim(key, start, end) { const result = await this.runRawCommand([ "LTRIM", key, String(start), String(end) ]); return result == null ? "OK" : toStringValue(result); } async lpos(key, value) { const result = await this.runRawCommand(["LPOS", key, value]); return result == null ? null : Number(result); } async smembers(key) { const result = await this.runRawCommand(["SMEMBERS", key]); return Array.isArray(result) ? result.map(toStringValue) : []; } async xadd(key, id, fields, options) { const args = ["XADD", key]; if ((options === null || options === void 0 ? void 0 : options.MAXLEN) != null) { args.push("MAXLEN"); if (options.approximate !== false) { args.push("~"); } args.push(String(options.MAXLEN)); } args.push(id); for (const [field, value] of Object.entries(fields)) { args.push(field, toGlideArg(value)); } return toStringValue(await this.runRawCommand(args)); } async xread(streams, options) { const args = ["XREAD"]; if ((options === null || options === void 0 ? void 0 : options.BLOCK) != null) { args.push("BLOCK", String(options.BLOCK)); } if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { args.push("COUNT", String(options.COUNT)); } args.push("STREAMS"); for (const stream of streams) { args.push(stream.key); } for (const stream of streams) { args.push(stream.id); } return normalizeXReadReply(await this.runRawCommand(args)); } async xtrim(key, strategy, threshold, options) { const args = ["XTRIM", key, strategy]; if ((options === null || options === void 0 ? void 0 : options.approximate) !== false) { args.push("~"); } args.push(String(threshold)); return Number(await this.runRawCommand(args)); } async bzpopmin(key, timeout) { const result = await this.runRawCommand(["BZPOPMIN", key, String(timeout)]); if (!result) { return null; } if (Array.isArray(result) && result.length >= 3) { return [ toStringValue(result[0]), toStringValue(result[1]), toStringValue(result[2]) ]; } return null; } async info() { return toStringValue(await this.runRawCommand(["INFO"])); } async clientSetName(name) { return this.runRawCommand(["CLIENT", "SETNAME", name], { decoder: GLIDE_STRING_DECODER }); } async clientList() { return toStringValue(await this.runRawCommand(["CLIENT", "LIST"], { decoder: GLIDE_STRING_DECODER })); } async scan(cursor, options) { const args = ["SCAN", String(cursor)]; if (options === null || options === void 0 ? void 0 : options.MATCH) { args.push("MATCH", options.MATCH); } if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { args.push("COUNT", String(options.COUNT)); } return normalizeScanReply(await this.runRawCommand(args)); } scanStream(options) { let cursor = "0"; let running = false; const stream = new stream_1.Readable({ objectMode: true, read: /* @__PURE__ */ __name(() => { if (running) { return; } running = true; (async () => { do { const [nextCursor, keys] = await this.scan(cursor, { MATCH: options.match, COUNT: options.count }); cursor = nextCursor; if (keys.length > 0 && !stream.push(keys)) { return; } } while (cursor !== "0"); stream.push(null); })().catch((err) => stream.destroy(err)).finally(() => { running = false; }); }, "read") }); return stream; } async keys(pattern) { const result = await this.runRawCommand(["KEYS", pattern]); return Array.isArray(result) ? result.map(toStringValue) : []; } async exists(...keys) { if (keys.length === 0) { return 0; } const result = await this.runRawCommand(["EXISTS", ...keys]); if (typeof result === "boolean") { return result ? 1 : 0; } return Number(result); } async zadd(key, ...args) { const commandArgs = ["ZADD", key]; for (let i = 0; i < args.length; i += 2) { commandArgs.push(toGlideArg(args[i]), toGlideArg(args[i + 1])); } return Number(await this.runRawCommand(commandArgs)); } async zrem(key, ...members) { return Number(await this.runRawCommand(["ZREM", key, ...members])); } async xlen(key) { return Number(await this.runRawCommand(["XLEN", key])); } async xrevrange(key, end, start, ...rest) { const args = ["XREVRANGE", key, end, start]; if (rest[0] === "COUNT") { args.push("COUNT", toGlideArg(rest[1])); } return normalizeXRangeReply(await this.runRawCommand(args)); } async sadd(key, ...members) { return Number(await this.runRawCommand([ "SADD", key, ...members.map((member) => toGlideArg(member)) ])); } async scard(key) { return Number(await this.runRawCommand(["SCARD", key])); } async lpush(key, ...values) { return Number(await this.runRawCommand(["LPUSH", key, ...values])); } async rpop(key) { const result = await this.runRawCommand(["RPOP", key]); return result == null ? null : toStringValue(result); } async incr(key) { return Number(await this.runRawCommand(["INCR", key])); } async incrby(key, increment) { return Number(await this.runRawCommand(["INCRBY", key, String(increment)])); } async flushall() { const result = await this.runRawCommand(["FLUSHALL"]); return result == null ? "OK" : toStringValue(result); } async execQueuedCommands(commands) { const requiredScripts = commands.map((command) => String(command.args[0]).toUpperCase() === "EVALSHA" ? this.scriptsBySha.get(toStringValue(command.args[1])) : void 0).filter((script) => Boolean(script)); if (requiredScripts.length > 0) { await Promise.all(requiredScripts.map((script) => this.ensureScriptLoaded(script))); } return this.runSerialized(async (raw) => { if (typeof raw.exec === "function") { const nativeBatch = createGlideBatch(true); const batch = nativeBatch !== null && nativeBatch !== void 0 ? nativeBatch : createCompatibilityBatch(); if (batch) { for (const command of commands) { batch.customCommand(command.args); } let execResult; try { execResult = await raw.exec(batch, false); } catch (err) { if (nativeBatch) { throw err; } execResult = null; } if (!execResult) { if (nativeBatch) { return null; } } else { return execResult.map((value, index) => { var _a; if (value instanceof Error) { return [value, null]; } const transform = (_a = commands[index]) === null || _a === void 0 ? void 0 : _a.transform; return [null, transform ? transform(value) : value]; }); } } } await raw.customCommand(["MULTI"]); try { for (const command of commands) { await raw.customCommand(command.args, { decoder: GLIDE_STRING_DECODER }); } const execResult = await raw.customCommand(["EXEC"]); if (!execResult) { return null; } const results = Array.isArray(execResult) ? execResult : [execResult]; return results.map((value, index) => { var _a; if (value instanceof Error) { return [value, null]; } const transform = (_a = commands[index]) === null || _a === void 0 ? void 0 : _a.transform; return [null, transform ? transform(value) : value]; }); } catch (err) { try { await raw.customCommand(["DISCARD"]); } catch (_a) { } throw err; } }); } }; var ValkeyGlideTransaction = class { static { __name(this, "ValkeyGlideTransaction"); } constructor(adapter, scripts) { this.adapter = adapter; this.scripts = scripts; this.commands = []; } queueCommand(args, transform) { this.commands.push({ args, transform }); return this; } hgetall(key) { return this.queueCommand(["HGETALL", key], normalizeHashReply); } hset(key, data) { const args = ["HSET", key]; for (const [field, value] of Object.entries(data)) { args.push(field, toGlideArg(value)); } return this.queueCommand(args); } hscan(key, cursor, options) { const args = ["HSCAN", key, String(cursor)]; if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { args.push("COUNT", String(options.COUNT)); } return this.queueCommand(args, (value) => { if (Array.isArray(value) && value.length >= 2) { return [toStringValue(value[0]), flattenFieldPairs(value[1])]; } return ["0", []]; }); } smembers(key) { return this.queueCommand(["SMEMBERS", key], (value) => Array.isArray(value) ? value.map((item) => toStringValue(item)) : []); } sscan(key, cursor, options) { const args = ["SSCAN", key, String(cursor)]; if ((options === null || options === void 0 ? void 0 : options.COUNT) != null) { args.push("COUNT", String(options.COUNT)); } return this.queueCommand(args, (value) => { if (Array.isArray(value) && value.length >= 2) { const members = Array.isArray(value[1]) ? value[1].map((item) => toStringValue(item)) : []; return [toStringValue(value[0]), members]; } return ["0", []]; }); } zrange(key, start, end) { return this.queueCommand(["ZRANGE", key, String(start), String(end)]); } lrange(key, start, end) { return this.queueCommand(["LRANGE", key, String(start), String(end)]); } llen(key) { return this.queueCommand(["LLEN", key]); } del(...keys) { if (keys.length > 0) { this.queueCommand(["DEL", ...keys]); } return this; } runCommand(name, args) { const script = this.scripts.get(name); if (!script) { throw new Error(`BullMQ: command "${name}" is not defined. Use defineCommand() before adding it to transactions.`); } const normalizedArgs = normalizeScriptArgs(args); const keys = normalizedArgs.slice(0, script.numberOfKeys).map(toGlideArg); const argv = normalizedArgs.slice(script.numberOfKeys).map(toGlideArg); return this.queueCommand([ "EVALSHA", script.sha, String(script.numberOfKeys), ...keys, ...argv ]); } exec() { return this.adapter.execQueuedCommands(this.commands); } }; } }); // ../../node_modules/.pnpm/luxon@3.7.2/node_modules/luxon/build/node/luxon.js var require_luxon = __commonJS({ "../../node_modules/.pnpm/luxon@3.7.2/node_modules/luxon/build/node/luxon.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var LuxonError = class extends Error { static { __name(this, "LuxonError"); } }; var InvalidDateTimeError = class extends LuxonError { static { __name(this, "InvalidDateTimeError"); } constructor(reason) { super(`Invalid DateTime: ${reason.toMessage()}`); } }; var InvalidIntervalError = class extends LuxonError { static { __name(this, "InvalidIntervalError"); } constructor(reason) { super(`Invalid Interval: ${reason.toMessage()}`); } }; var InvalidDurationError = class extends LuxonError { static { __name(this, "InvalidDurationError"); } constructor(reason) { super(`Invalid Duration: ${reason.toMessage()}`); } }; var ConflictingSpecificationError = class extends LuxonError { static { __name(this, "ConflictingSpecificationError"); } }; var InvalidUnitError = class extends LuxonError { static { __name(this, "InvalidUnitError"); } constructor(unit) { super(`Invalid unit ${unit}`); } }; var InvalidArgumentError = class extends LuxonError { static { __name(this, "InvalidArgumentError"); } }; var ZoneIsAbstractError = class extends LuxonError { static { __name(this, "ZoneIsAbstractError"); } constructor() { super("Zone is an abstract class"); } }; var n = "numeric"; var s = "short"; var l2 = "long"; var DATE_SHORT = { year: n, month: n, day: n }; var DATE_MED = { year: n, month: s, day: n }; var DATE_MED_WITH_WEEKDAY = { year: n, month: s, day: n, weekday: s }; var DATE_FULL = { year: n, month: l2, day: n }; var DATE_HUGE = { year: n, month: l2, day: n, weekday: l2 }; var TIME_SIMPLE = { hour: n, minute: n }; var TIME_WITH_SECONDS = { hour: n, minute: n, second: n }; var TIME_WITH_SHORT_OFFSET = { hour: n, minute: n, second: n, timeZoneName: s }; var TIME_WITH_LONG_OFFSET = { hour: n, minute: n, second: n, timeZoneName: l2 }; var TIME_24_SIMPLE = { hour: n, minute: n, hourCycle: "h23" }; var TIME_24_WITH_SECONDS = { hour: n, minute: n, second: n, hourCycle: "h23" }; var TIME_24_WITH_SHORT_OFFSET = { hour: n, minute: n, second: n, hourCycle: "h23", timeZoneName: s }; var TIME_24_WITH_LONG_OFFSET = { hour: n, minute: n, second: n, hourCycle: "h23", timeZoneName: l2 }; var DATETIME_SHORT = { year: n, month: n, day: n, hour: n, minute: n }; var DATETIME_SHORT_WITH_SECONDS = { year: n, month: n, day: n, hour: n, minute: n, second: n }; var DATETIME_MED = { year: n, month: s, day: n, hour: n, minute: n }; var DATETIME_MED_WITH_SECONDS = { year: n, month: s, day: n, hour: n, minute: n, second: n }; var DATETIME_MED_WITH_WEEKDAY = { year: n, month: s, day: n, weekday: s, hour: n, minute: n }; var DATETIME_FULL = { year: n, month: l2, day: n, hour: n, minute: n, timeZoneName: s }; var DATETIME_FULL_WITH_SECONDS = { year: n, month: l2, day: n, hour: n, minute: n, second: n, timeZoneName: s }; var DATETIME_HUGE = { year: n, month: l2, day: n, weekday: l2, hour: n, minute: n, timeZoneName: l2 }; var DATETIME_HUGE_WITH_SECONDS = { year: n, month: l2, day: n, weekday: l2, hour: n, minute: n, second: n, timeZoneName: l2 }; var Zone = class { static { __name(this, "Zone"); } /** * The type of zone * @abstract * @type {string} */ get type() { throw new ZoneIsAbstractError(); } /** * The name of this zone. * @abstract * @type {string} */ get name() { throw new ZoneIsAbstractError(); } /** * The IANA name of this zone. * Defaults to `name` if not overwritten by a subclass. * @abstract * @type {string} */ get ianaName() { return this.name; } /** * Returns whether the offset is known to be fixed for the whole year. * @abstract * @type {boolean} */ get isUniversal() { throw new ZoneIsAbstractError(); } /** * Returns the offset's common name (such as EST) at the specified timestamp * @abstract * @param {number} ts - Epoch milliseconds for which to get the name * @param {Object} opts - Options to affect the format * @param {string} opts.format - What style of offset to return. Accepts 'long' or 'short'. * @param {string} opts.locale - What locale to return the offset name in. * @return {string} */ offsetName(ts, opts) { throw new ZoneIsAbstractError(); } /** * Returns the offset's value as a string * @abstract * @param {number} ts - Epoch milliseconds for which to get the offset * @param {string} format - What style of offset to return. * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively * @return {string} */ formatOffset(ts, format) { throw new ZoneIsAbstractError(); } /** * Return the offset in minutes for this zone at the specified timestamp. * @abstract * @param {number} ts - Epoch milliseconds for which to compute the offset * @return {number} */ offset(ts) { throw new ZoneIsAbstractError(); } /** * Return whether this Zone is equal to another zone * @abstract * @param {Zone} otherZone - the zone to compare * @return {boolean} */ equals(otherZone) { throw new ZoneIsAbstractError(); } /** * Return whether this Zone is valid. * @abstract * @type {boolean} */ get isValid() { throw new ZoneIsAbstractError(); } }; var singleton$1 = null; var SystemZone = class _SystemZone extends Zone { static { __name(this, "SystemZone"); } /** * Get a singleton instance of the local zone * @return {SystemZone} */ static get instance() { if (singleton$1 === null) { singleton$1 = new _SystemZone(); } return singleton$1; } /** @override **/ get type() { return "system"; } /** @override **/ get name() { return new Intl.DateTimeFormat().resolvedOptions().timeZone; } /** @override **/ get isUniversal() { return false; } /** @override **/ offsetName(ts, { format, locale }) { return parseZoneInfo(ts, format, locale); } /** @override **/ formatOffset(ts, format) { return formatOffset(this.offset(ts), format); } /** @override **/ offset(ts) { return -new Date(ts).getTimezoneOffset(); } /** @override **/ equals(otherZone) { return otherZone.type === "system"; } /** @override **/ get isValid() { return true; } }; var dtfCache = /* @__PURE__ */ new Map(); function makeDTF(zoneName) { let dtf = dtfCache.get(zoneName); if (dtf === void 0) { dtf = new Intl.DateTimeFormat("en-US", { hour12: false, timeZone: zoneName, year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit", era: "short" }); dtfCache.set(zoneName, dtf); } return dtf; } __name(makeDTF, "makeDTF"); var typeToPos = { year: 0, month: 1, day: 2, era: 3, hour: 4, minute: 5, second: 6 }; function hackyOffset(dtf, date) { const formatted = dtf.format(date).replace(/\u200E/g, ""), parsed = /(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(formatted), [, fMonth, fDay, fYear, fadOrBc, fHour, fMinute, fSecond] = parsed; return [fYear, fMonth, fDay, fadOrBc, fHour, fMinute, fSecond]; } __name(hackyOffset, "hackyOffset"); function partsOffset(dtf, date) { const formatted = dtf.formatToParts(date); const filled = []; for (let i = 0; i < formatted.length; i++) { const { type, value } = formatted[i]; const pos = typeToPos[type]; if (type === "era") { filled[pos] = value; } else if (!isUndefined(pos)) { filled[pos] = parseInt(value, 10); } } return filled; } __name(partsOffset, "partsOffset"); var ianaZoneCache = /* @__PURE__ */ new Map(); var IANAZone = class _IANAZone extends Zone { static { __name(this, "IANAZone"); } /** * @param {string} name - Zone name * @return {IANAZone} */ static create(name) { let zone = ianaZoneCache.get(name); if (zone === void 0) { ianaZoneCache.set(name, zone = new _IANAZone(name)); } return zone; } /** * Reset local caches. Should only be necessary in testing scenarios. * @return {void} */ static resetCache() { ianaZoneCache.clear(); dtfCache.clear(); } /** * Returns whether the provided string is a valid specifier. This only checks the string's format, not that the specifier identifies a known zone; see isValidZone for that. * @param {string} s - The string to check validity on * @example IANAZone.isValidSpecifier("America/New_York") //=> true * @example IANAZone.isValidSpecifier("Sport~~blorp") //=> false * @deprecated For backward compatibility, this forwards to isValidZone, better use `isValidZone()` directly instead. * @return {boolean} */ static isValidSpecifier(s2) { return this.isValidZone(s2); } /** * Returns whether the provided string identifies a real zone * @param {string} zone - The string to check * @example IANAZone.isValidZone("America/New_York") //=> true * @example IANAZone.isValidZone("Fantasia/Castle") //=> false * @example IANAZone.isValidZone("Sport~~blorp") //=> false * @return {boolean} */ static isValidZone(zone) { if (!zone) { return false; } try { new Intl.DateTimeFormat("en-US", { timeZone: zone }).format(); return true; } catch (e) { return false; } } constructor(name) { super(); this.zoneName = name; this.valid = _IANAZone.isValidZone(name); } /** * The type of zone. `iana` for all instances of `IANAZone`. * @override * @type {string} */ get type() { return "iana"; } /** * The name of this zone (i.e. the IANA zone name). * @override * @type {string} */ get name() { return this.zoneName; } /** * Returns whether the offset is known to be fixed for the whole year: * Always returns false for all IANA zones. * @override * @type {boolean} */ get isUniversal() { return false; } /** * Returns the offset's common name (such as EST) at the specified timestamp * @override * @param {number} ts - Epoch milliseconds for which to get the name * @param {Object} opts - Options to affect the format * @param {string} opts.format - What style of offset to return. Accepts 'long' or 'short'. * @param {string} opts.locale - What locale to return the offset name in. * @return {string} */ offsetName(ts, { format, locale }) { return parseZoneInfo(ts, format, locale, this.name); } /** * Returns the offset's value as a string * @override * @param {number} ts - Epoch milliseconds for which to get the offset * @param {string} format - What style of offset to return. * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively * @return {string} */ formatOffset(ts, format) { return formatOffset(this.offset(ts), format); } /** * Return the offset in minutes for this zone at the specified timestamp. * @override * @param {number} ts - Epoch milliseconds for which to compute the offset * @return {number} */ offset(ts) { if (!this.valid) return NaN; const date = new Date(ts); if (isNaN(date)) return NaN; const dtf = makeDTF(this.name); let [year, month, day, adOrBc, hour, minute, second] = dtf.formatToParts ? partsOffset(dtf, date) : hackyOffset(dtf, date); if (adOrBc === "BC") { year = -Math.abs(year) + 1; } const adjustedHour = hour === 24 ? 0 : hour; const asUTC = objToLocalTS({ year, month, day, hour: adjustedHour, minute, second, millisecond: 0 }); let asTS = +date; const over = asTS % 1e3; asTS -= over >= 0 ? over : 1e3 + over; return (asUTC - asTS) / (60 * 1e3); } /** * Return whether this Zone is equal to another zone * @override * @param {Zone} otherZone - the zone to compare * @return {boolean} */ equals(otherZone) { return otherZone.type === "iana" && otherZone.name === this.name; } /** * Return whether this Zone is valid. * @override * @type {boolean} */ get isValid() { return this.valid; } }; var intlLFCache = {}; function getCachedLF(locString, opts = {}) { const key = JSON.stringify([locString, opts]); let dtf = intlLFCache[key]; if (!dtf) { dtf = new Intl.ListFormat(locString, opts); intlLFCache[key] = dtf; } return dtf; } __name(getCachedLF, "getCachedLF"); var intlDTCache = /* @__PURE__ */ new Map(); function getCachedDTF(locString, opts = {}) { const key = JSON.stringify([locString, opts]); let dtf = intlDTCache.get(key); if (dtf === void 0) { dtf = new Intl.DateTimeFormat(locString, opts); intlDTCache.set(key, dtf); } return dtf; } __name(getCachedDTF, "getCachedDTF"); var intlNumCache = /* @__PURE__ */ new Map(); function getCachedINF(locString, opts = {}) { const key = JSON.stringify([locString, opts]); let inf = intlNumCache.get(key); if (inf === void 0) { inf = new Intl.NumberFormat(locString, opts); intlNumCache.set(key, inf); } return inf; } __name(getCachedINF, "getCachedINF"); var intlRelCache = /* @__PURE__ */ new Map(); function getCachedRTF(locString, opts = {}) { const { base, ...cacheKeyOpts } = opts; const key = JSON.stringify([locString, cacheKeyOpts]); let inf = intlRelCache.get(key); if (inf === void 0) { inf = new Intl.RelativeTimeFormat(locString, opts); intlRelCache.set(key, inf); } return inf; } __name(getCachedRTF, "getCachedRTF"); var sysLocaleCache = null; function systemLocale() { if (sysLocaleCache) { return sysLocaleCache; } else { sysLocaleCache = new Intl.DateTimeFormat().resolvedOptions().locale; return sysLocaleCache; } } __name(systemLocale, "systemLocale"); var intlResolvedOptionsCache = /* @__PURE__ */ new Map(); function getCachedIntResolvedOptions(locString) { let opts = intlResolvedOptionsCache.get(locString); if (opts === void 0) { opts = new Intl.DateTimeFormat(locString).resolvedOptions(); intlResolvedOptionsCache.set(locString, opts); } return opts; } __name(getCachedIntResolvedOptions, "getCachedIntResolvedOptions"); var weekInfoCache = /* @__PURE__ */ new Map(); function getCachedWeekInfo(locString) { let data = weekInfoCache.get(locString); if (!data) { const locale = new Intl.Locale(locString); data = "getWeekInfo" in locale ? locale.getWeekInfo() : locale.weekInfo; if (!("minimalDays" in data)) { data = { ...fallbackWeekSettings, ...data }; } weekInfoCache.set(locString, data); } return data; } __name(getCachedWeekInfo, "getCachedWeekInfo"); function parseLocaleString(localeStr) { const xIndex = localeStr.indexOf("-x-"); if (xIndex !== -1) { localeStr = localeStr.substring(0, xIndex); } const uIndex = localeStr.indexOf("-u-"); if (uIndex === -1) { return [localeStr]; } else { let options; let selectedStr; try { options = getCachedDTF(localeStr).resolvedOptions(); selectedStr = localeStr; } catch (e) { const smaller = localeStr.substring(0, uIndex); options = getCachedDTF(smaller).resolvedOptions(); selectedStr = smaller; } const { numberingSystem, calendar } = options; return [selectedStr, numberingSystem, calendar]; } } __name(parseLocaleString, "parseLocaleString"); function intlConfigString(localeStr, numberingSystem, outputCalendar) { if (outputCalendar || numberingSystem) { if (!localeStr.includes("-u-")) { localeStr += "-u"; } if (outputCalendar) { localeStr += `-ca-${outputCalendar}`; } if (numberingSystem) { localeStr += `-nu-${numberingSystem}`; } return localeStr; } else { return localeStr; } } __name(intlConfigString, "intlConfigString"); function mapMonths(f) { const ms = []; for (let i = 1; i <= 12; i++) { const dt = DateTime.utc(2009, i, 1); ms.push(f(dt)); } return ms; } __name(mapMonths, "mapMonths"); function mapWeekdays(f) { const ms = []; for (let i = 1; i <= 7; i++) { const dt = DateTime.utc(2016, 11, 13 + i); ms.push(f(dt)); } return ms; } __name(mapWeekdays, "mapWeekdays"); function listStuff(loc, length, englishFn, intlFn) { const mode = loc.listingMode(); if (mode === "error") { return null; } else if (mode === "en") { return englishFn(length); } else { return intlFn(length); } } __name(listStuff, "listStuff"); function supportsFastNumbers(loc) { if (loc.numberingSystem && loc.numberingSystem !== "latn") { return false; } else { return loc.numberingSystem === "latn" || !loc.locale || loc.locale.startsWith("en") || getCachedIntResolvedOptions(loc.locale).numberingSystem === "latn"; } } __name(supportsFastNumbers, "supportsFastNumbers"); var PolyNumberFormatter = class { static { __name(this, "PolyNumberFormatter"); } constructor(intl, forceSimple, opts) { this.padTo = opts.padTo || 0; this.floor = opts.floor || false; const { padTo, floor, ...otherOpts } = opts; if (!forceSimple || Object.keys(otherOpts).length > 0) { const intlOpts = { useGrouping: false, ...opts }; if (opts.padTo > 0) intlOpts.minimumIntegerDigits = opts.padTo; this.inf = getCachedINF(intl, intlOpts); } } format(i) { if (this.inf) { const fixed = this.floor ? Math.floor(i) : i; return this.inf.format(fixed); } else { const fixed = this.floor ? Math.floor(i) : roundTo(i, 3); return padStart(fixed, this.padTo); } } }; var PolyDateFormatter = class { static { __name(this, "PolyDateFormatter"); } constructor(dt, intl, opts) { this.opts = opts; this.originalZone = void 0; let z = void 0; if (this.opts.timeZone) { this.dt = dt; } else if (dt.zone.type === "fixed") { const gmtOffset = -1 * (dt.offset / 60); const offsetZ = gmtOffset >= 0 ? `Etc/GMT+${gmtOffset}` : `Etc/GMT${gmtOffset}`; if (dt.offset !== 0 && IANAZone.create(offsetZ).valid) { z = offsetZ; this.dt = dt; } else { z = "UTC"; this.dt = dt.offset === 0 ? dt : dt.setZone("UTC").plus({ minutes: dt.offset }); this.originalZone = dt.zone; } } else if (dt.zone.type === "system") { this.dt = dt; } else if (dt.zone.type === "iana") { this.dt = dt; z = dt.zone.name; } else { z = "UTC"; this.dt = dt.setZone("UTC").plus({ minutes: dt.offset }); this.originalZone = dt.zone; } const intlOpts = { ...this.opts }; intlOpts.timeZone = intlOpts.timeZone || z; this.dtf = getCachedDTF(intl, intlOpts); } format() { if (this.originalZone) { return this.formatToParts().map(({ value }) => value).join(""); } return this.dtf.format(this.dt.toJSDate()); } formatToParts() { const parts = this.dtf.formatToParts(this.dt.toJSDate()); if (this.originalZone) { return parts.map((part) => { if (part.type === "timeZoneName") { const offsetName = this.originalZone.offsetName(this.dt.ts, { locale: this.dt.locale, format: this.opts.timeZoneName }); return { ...part, value: offsetName }; } else { return part; } }); } return parts; } resolvedOptions() { return this.dtf.resolvedOptions(); } }; var PolyRelFormatter = class { static { __name(this, "PolyRelFormatter"); } constructor(intl, isEnglish, opts) { this.opts = { style: "long", ...opts }; if (!isEnglish && hasRelative()) { this.rtf = getCachedRTF(intl, opts); } } format(count, unit) { if (this.rtf) { return this.rtf.format(count, unit); } else { return formatRelativeTime(unit, count, this.opts.numeric, this.opts.style !== "long"); } } formatToParts(count, unit) { if (this.rtf) { return this.rtf.formatToParts(count, unit); } else { return []; } } }; var fallbackWeekSettings = { firstDay: 1, minimalDays: 4, weekend: [6, 7] }; var Locale = class _Locale { static { __name(this, "Locale"); } static fromOpts(opts) { return _Locale.create(opts.locale, opts.numberingSystem, opts.outputCalendar, opts.weekSettings, opts.defaultToEN); } static create(locale, numberingSystem, outputCalendar, weekSettings, defaultToEN = false) { const specifiedLocale = locale || Settings.defaultLocale; const localeR = specifiedLocale || (defaultToEN ? "en-US" : systemLocale()); const numberingSystemR = numberingSystem || Settings.defaultNumberingSystem; const outputCalendarR = outputCalendar || Settings.defaultOutputCalendar; const weekSettingsR = validateWeekSettings(weekSettings) || Settings.defaultWeekSettings; return new _Locale(localeR, numberingSystemR, outputCalendarR, weekSettingsR, specifiedLocale); } static resetCache() { sysLocaleCache = null; intlDTCache.clear(); intlNumCache.clear(); intlRelCache.clear(); intlResolvedOptionsCache.clear(); weekInfoCache.clear(); } static fromObject({ locale, numberingSystem, outputCalendar, weekSettings } = {}) { return _Locale.create(locale, numberingSystem, outputCalendar, weekSettings); } constructor(locale, numbering, outputCalendar, weekSettings, specifiedLocale) { const [parsedLocale, parsedNumberingSystem, parsedOutputCalendar] = parseLocaleString(locale); this.locale = parsedLocale; this.numberingSystem = numbering || parsedNumberingSystem || null; this.outputCalendar = outputCalendar || parsedOutputCalendar || null; this.weekSettings = weekSettings; this.intl = intlConfigString(this.locale, this.numberingSystem, this.outputCalendar); this.weekdaysCache = { format: {}, standalone: {} }; this.monthsCache = { format: {}, standalone: {} }; this.meridiemCache = null; this.eraCache = {}; this.specifiedLocale = specifiedLocale; this.fastNumbersCached = null; } get fastNumbers() { if (this.fastNumbersCached == null) { this.fastNumbersCached = supportsFastNumbers(this); } return this.fastNumbersCached; } listingMode() { const isActuallyEn = this.isEnglish(); const hasNoWeirdness = (this.numberingSystem === null || this.numberingSystem === "latn") && (this.outputCalendar === null || this.outputCalendar === "gregory"); return isActuallyEn && hasNoWeirdness ? "en" : "intl"; } clone(alts) { if (!alts || Object.getOwnPropertyNames(alts).length === 0) { return this; } else { return _Locale.create(alts.locale || this.specifiedLocale, alts.numberingSystem || this.numberingSystem, alts.outputCalendar || this.outputCalendar, validateWeekSettings(alts.weekSettings) || this.weekSettings, alts.defaultToEN || false); } } redefaultToEN(alts = {}) { return this.clone({ ...alts, defaultToEN: true }); } redefaultToSystem(alts = {}) { return this.clone({ ...alts, defaultToEN: false }); } months(length, format = false) { return listStuff(this, length, months, () => { const monthSpecialCase = this.intl === "ja" || this.intl.startsWith("ja-"); format &= !monthSpecialCase; const intl = format ? { month: length, day: "numeric" } : { month: length }, formatStr = format ? "format" : "standalone"; if (!this.monthsCache[formatStr][length]) { const mapper = !monthSpecialCase ? (dt) => this.extract(dt, intl, "month") : (dt) => this.dtFormatter(dt, intl).format(); this.monthsCache[formatStr][length] = mapMonths(mapper); } return this.monthsCache[formatStr][length]; }); } weekdays(length, format = false) { return listStuff(this, length, weekdays, () => { const intl = format ? { weekday: length, year: "numeric", month: "long", day: "numeric" } : { weekday: length }, formatStr = format ? "format" : "standalone"; if (!this.weekdaysCache[formatStr][length]) { this.weekdaysCache[formatStr][length] = mapWeekdays((dt) => this.extract(dt, intl, "weekday")); } return this.weekdaysCache[formatStr][length]; }); } meridiems() { return listStuff(this, void 0, () => meridiems, () => { if (!this.meridiemCache) { const intl = { hour: "numeric", hourCycle: "h12" }; this.meridiemCache = [DateTime.utc(2016, 11, 13, 9), DateTime.utc(2016, 11, 13, 19)].map((dt) => this.extract(dt, intl, "dayperiod")); } return this.meridiemCache; }); } eras(length) { return listStuff(this, length, eras, () => { const intl = { era: length }; if (!this.eraCache[length]) { this.eraCache[length] = [DateTime.utc(-40, 1, 1), DateTime.utc(2017, 1, 1)].map((dt) => this.extract(dt, intl, "era")); } return this.eraCache[length]; }); } extract(dt, intlOpts, field) { const df = this.dtFormatter(dt, intlOpts), results = df.formatToParts(), matching = results.find((m) => m.type.toLowerCase() === field); return matching ? matching.value : null; } numberFormatter(opts = {}) { return new PolyNumberFormatter(this.intl, opts.forceSimple || this.fastNumbers, opts); } dtFormatter(dt, intlOpts = {}) { return new PolyDateFormatter(dt, this.intl, intlOpts); } relFormatter(opts = {}) { return new PolyRelFormatter(this.intl, this.isEnglish(), opts); } listFormatter(opts = {}) { return getCachedLF(this.intl, opts); } isEnglish() { return this.locale === "en" || this.locale.toLowerCase() === "en-us" || getCachedIntResolvedOptions(this.intl).locale.startsWith("en-us"); } getWeekSettings() { if (this.weekSettings) { return this.weekSettings; } else if (!hasLocaleWeekInfo()) { return fallbackWeekSettings; } else { return getCachedWeekInfo(this.locale); } } getStartOfWeek() { return this.getWeekSettings().firstDay; } getMinDaysInFirstWeek() { return this.getWeekSettings().minimalDays; } getWeekendDays() { return this.getWeekSettings().weekend; } equals(other) { return this.locale === other.locale && this.numberingSystem === other.numberingSystem && this.outputCalendar === other.outputCalendar; } toString() { return `Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`; } }; var singleton = null; var FixedOffsetZone = class _FixedOffsetZone extends Zone { static { __name(this, "FixedOffsetZone"); } /** * Get a singleton instance of UTC * @return {FixedOffsetZone} */ static get utcInstance() { if (singleton === null) { singleton = new _FixedOffsetZone(0); } return singleton; } /** * Get an instance with a specified offset * @param {number} offset - The offset in minutes * @return {FixedOffsetZone} */ static instance(offset2) { return offset2 === 0 ? _FixedOffsetZone.utcInstance : new _FixedOffsetZone(offset2); } /** * Get an instance of FixedOffsetZone from a UTC offset string, like "UTC+6" * @param {string} s - The offset string to parse * @example FixedOffsetZone.parseSpecifier("UTC+6") * @example FixedOffsetZone.parseSpecifier("UTC+06") * @example FixedOffsetZone.parseSpecifier("UTC-6:00") * @return {FixedOffsetZone} */ static parseSpecifier(s2) { if (s2) { const r = s2.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i); if (r) { return new _FixedOffsetZone(signedOffset(r[1], r[2])); } } return null; } constructor(offset2) { super(); this.fixed = offset2; } /** * The type of zone. `fixed` for all instances of `FixedOffsetZone`. * @override * @type {string} */ get type() { return "fixed"; } /** * The name of this zone. * All fixed zones' names always start with "UTC" (plus optional offset) * @override * @type {string} */ get name() { return this.fixed === 0 ? "UTC" : `UTC${formatOffset(this.fixed, "narrow")}`; } /** * The IANA name of this zone, i.e. `Etc/UTC` or `Etc/GMT+/-nn` * * @override * @type {string} */ get ianaName() { if (this.fixed === 0) { return "Etc/UTC"; } else { return `Etc/GMT${formatOffset(-this.fixed, "narrow")}`; } } /** * Returns the offset's common name at the specified timestamp. * * For fixed offset zones this equals to the zone name. * @override */ offsetName() { return this.name; } /** * Returns the offset's value as a string * @override * @param {number} ts - Epoch milliseconds for which to get the offset * @param {string} format - What style of offset to return. * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively * @return {string} */ formatOffset(ts, format) { return formatOffset(this.fixed, format); } /** * Returns whether the offset is known to be fixed for the whole year: * Always returns true for all fixed offset zones. * @override * @type {boolean} */ get isUniversal() { return true; } /** * Return the offset in minutes for this zone at the specified timestamp. * * For fixed offset zones, this is constant and does not depend on a timestamp. * @override * @return {number} */ offset() { return this.fixed; } /** * Return whether this Zone is equal to another zone (i.e. also fixed and same offset) * @override * @param {Zone} otherZone - the zone to compare * @return {boolean} */ equals(otherZone) { return otherZone.type === "fixed" && otherZone.fixed === this.fixed; } /** * Return whether this Zone is valid: * All fixed offset zones are valid. * @override * @type {boolean} */ get isValid() { return true; } }; var InvalidZone = class extends Zone { static { __name(this, "InvalidZone"); } constructor(zoneName) { super(); this.zoneName = zoneName; } /** @override **/ get type() { return "invalid"; } /** @override **/ get name() { return this.zoneName; } /** @override **/ get isUniversal() { return false; } /** @override **/ offsetName() { return null; } /** @override **/ formatOffset() { return ""; } /** @override **/ offset() { return NaN; } /** @override **/ equals() { return false; } /** @override **/ get isValid() { return false; } }; function normalizeZone(input, defaultZone2) { if (isUndefined(input) || input === null) { return defaultZone2; } else if (input instanceof Zone) { return input; } else if (isString(input)) { const lowered = input.toLowerCase(); if (lowered === "default") return defaultZone2; else if (lowered === "local" || lowered === "system") return SystemZone.instance; else if (lowered === "utc" || lowered === "gmt") return FixedOffsetZone.utcInstance; else return FixedOffsetZone.parseSpecifier(lowered) || IANAZone.create(input); } else if (isNumber(input)) { return FixedOffsetZone.instance(input); } else if (typeof input === "object" && "offset" in input && typeof input.offset === "function") { return input; } else { return new InvalidZone(input); } } __name(normalizeZone, "normalizeZone"); var numberingSystems = { arab: "[\u0660-\u0669]", arabext: "[\u06F0-\u06F9]", bali: "[\u1B50-\u1B59]", beng: "[\u09E6-\u09EF]", deva: "[\u0966-\u096F]", fullwide: "[\uFF10-\uFF19]", gujr: "[\u0AE6-\u0AEF]", hanidec: "[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]", khmr: "[\u17E0-\u17E9]", knda: "[\u0CE6-\u0CEF]", laoo: "[\u0ED0-\u0ED9]", limb: "[\u1946-\u194F]", mlym: "[\u0D66-\u0D6F]", mong: "[\u1810-\u1819]", mymr: "[\u1040-\u1049]", orya: "[\u0B66-\u0B6F]", tamldec: "[\u0BE6-\u0BEF]", telu: "[\u0C66-\u0C6F]", thai: "[\u0E50-\u0E59]", tibt: "[\u0F20-\u0F29]", latn: "\\d" }; var numberingSystemsUTF16 = { arab: [1632, 1641], arabext: [1776, 1785], bali: [6992, 7001], beng: [2534, 2543], deva: [2406, 2415], fullwide: [65296, 65303], gujr: [2790, 2799], khmr: [6112, 6121], knda: [3302, 3311], laoo: [3792, 3801], limb: [6470, 6479], mlym: [3430, 3439], mong: [6160, 6169], mymr: [4160, 4169], orya: [2918, 2927], tamldec: [3046, 3055], telu: [3174, 3183], thai: [3664, 3673], tibt: [3872, 3881] }; var hanidecChars = numberingSystems.hanidec.replace(/[\[|\]]/g, "").split(""); function parseDigits(str) { let value = parseInt(str, 10); if (isNaN(value)) { value = ""; for (let i = 0; i < str.length; i++) { const code = str.charCodeAt(i); if (str[i].search(numberingSystems.hanidec) !== -1) { value += hanidecChars.indexOf(str[i]); } else { for (const key in numberingSystemsUTF16) { const [min, max] = numberingSystemsUTF16[key]; if (code >= min && code <= max) { value += code - min; } } } } return parseInt(value, 10); } else { return value; } } __name(parseDigits, "parseDigits"); var digitRegexCache = /* @__PURE__ */ new Map(); function resetDigitRegexCache() { digitRegexCache.clear(); } __name(resetDigitRegexCache, "resetDigitRegexCache"); function digitRegex({ numberingSystem }, append = "") { const ns = numberingSystem || "latn"; let appendCache = digitRegexCache.get(ns); if (appendCache === void 0) { appendCache = /* @__PURE__ */ new Map(); digitRegexCache.set(ns, appendCache); } let regex = appendCache.get(append); if (regex === void 0) { regex = new RegExp(`${numberingSystems[ns]}${append}`); appendCache.set(append, regex); } return regex; } __name(digitRegex, "digitRegex"); var now = /* @__PURE__ */ __name(() => Date.now(), "now"); var defaultZone = "system"; var defaultLocale = null; var defaultNumberingSystem = null; var defaultOutputCalendar = null; var twoDigitCutoffYear = 60; var throwOnInvalid; var defaultWeekSettings = null; var Settings = class { static { __name(this, "Settings"); } /** * Get the callback for returning the current timestamp. * @type {function} */ static get now() { return now; } /** * Set the callback for returning the current timestamp. * The function should return a number, which will be interpreted as an Epoch millisecond count * @type {function} * @example Settings.now = () => Date.now() + 3000 // pretend it is 3 seconds in the future * @example Settings.now = () => 0 // always pretend it's Jan 1, 1970 at midnight in UTC time */ static set now(n2) { now = n2; } /** * Set the default time zone to create DateTimes in. Does not affect existing instances. * Use the value "system" to reset this value to the system's time zone. * @type {string} */ static set defaultZone(zone) { defaultZone = zone; } /** * Get the default time zone object currently used to create DateTimes. Does not affect existing instances. * The default value is the system's time zone (the one set on the machine that runs this code). * @type {Zone} */ static get defaultZone() { return normalizeZone(defaultZone, SystemZone.instance); } /** * Get the default locale to create DateTimes with. Does not affect existing instances. * @type {string} */ static get defaultLocale() { return defaultLocale; } /** * Set the default locale to create DateTimes with. Does not affect existing instances. * @type {string} */ static set defaultLocale(locale) { defaultLocale = locale; } /** * Get the default numbering system to create DateTimes with. Does not affect existing instances. * @type {string} */ static get defaultNumberingSystem() { return defaultNumberingSystem; } /** * Set the default numbering system to create DateTimes with. Does not affect existing instances. * @type {string} */ static set defaultNumberingSystem(numberingSystem) { defaultNumberingSystem = numberingSystem; } /** * Get the default output calendar to create DateTimes with. Does not affect existing instances. * @type {string} */ static get defaultOutputCalendar() { return defaultOutputCalendar; } /** * Set the default output calendar to create DateTimes with. Does not affect existing instances. * @type {string} */ static set defaultOutputCalendar(outputCalendar) { defaultOutputCalendar = outputCalendar; } /** * @typedef {Object} WeekSettings * @property {number} firstDay * @property {number} minimalDays * @property {number[]} weekend */ /** * @return {WeekSettings|null} */ static get defaultWeekSettings() { return defaultWeekSettings; } /** * Allows overriding the default locale week settings, i.e. the start of the week, the weekend and * how many days are required in the first week of a year. * Does not affect existing instances. * * @param {WeekSettings|null} weekSettings */ static set defaultWeekSettings(weekSettings) { defaultWeekSettings = validateWeekSettings(weekSettings); } /** * Get the cutoff year for whether a 2-digit year string is interpreted in the current or previous century. Numbers higher than the cutoff will be considered to mean 19xx and numbers lower or equal to the cutoff will be considered 20xx. * @type {number} */ static get twoDigitCutoffYear() { return twoDigitCutoffYear; } /** * Set the cutoff year for whether a 2-digit year string is interpreted in the current or previous century. Numbers higher than the cutoff will be considered to mean 19xx and numbers lower or equal to the cutoff will be considered 20xx. * @type {number} * @example Settings.twoDigitCutoffYear = 0 // all 'yy' are interpreted as 20th century * @example Settings.twoDigitCutoffYear = 99 // all 'yy' are interpreted as 21st century * @example Settings.twoDigitCutoffYear = 50 // '49' -> 2049; '50' -> 1950 * @example Settings.twoDigitCutoffYear = 1950 // interpreted as 50 * @example Settings.twoDigitCutoffYear = 2050 // ALSO interpreted as 50 */ static set twoDigitCutoffYear(cutoffYear) { twoDigitCutoffYear = cutoffYear % 100; } /** * Get whether Luxon will throw when it encounters invalid DateTimes, Durations, or Intervals * @type {boolean} */ static get throwOnInvalid() { return throwOnInvalid; } /** * Set whether Luxon will throw when it encounters invalid DateTimes, Durations, or Intervals * @type {boolean} */ static set throwOnInvalid(t) { throwOnInvalid = t; } /** * Reset Luxon's global caches. Should only be necessary in testing scenarios. * @return {void} */ static resetCaches() { Locale.resetCache(); IANAZone.resetCache(); DateTime.resetCache(); resetDigitRegexCache(); } }; var Invalid = class { static { __name(this, "Invalid"); } constructor(reason, explanation) { this.reason = reason; this.explanation = explanation; } toMessage() { if (this.explanation) { return `${this.reason}: ${this.explanation}`; } else { return this.reason; } } }; var nonLeapLadder = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334]; var leapLadder = [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335]; function unitOutOfRange(unit, value) { return new Invalid("unit out of range", `you specified ${value} (of type ${typeof value}) as a ${unit}, which is invalid`); } __name(unitOutOfRange, "unitOutOfRange"); function dayOfWeek(year, month, day) { const d = new Date(Date.UTC(year, month - 1, day)); if (year < 100 && year >= 0) { d.setUTCFullYear(d.getUTCFullYear() - 1900); } const js = d.getUTCDay(); return js === 0 ? 7 : js; } __name(dayOfWeek, "dayOfWeek"); function computeOrdinal(year, month, day) { return day + (isLeapYear(year) ? leapLadder : nonLeapLadder)[month - 1]; } __name(computeOrdinal, "computeOrdinal"); function uncomputeOrdinal(year, ordinal) { const table = isLeapYear(year) ? leapLadder : nonLeapLadder, month0 = table.findIndex((i) => i < ordinal), day = ordinal - table[month0]; return { month: month0 + 1, day }; } __name(uncomputeOrdinal, "uncomputeOrdinal"); function isoWeekdayToLocal(isoWeekday, startOfWeek) { return (isoWeekday - startOfWeek + 7) % 7 + 1; } __name(isoWeekdayToLocal, "isoWeekdayToLocal"); function gregorianToWeek(gregObj, minDaysInFirstWeek = 4, startOfWeek = 1) { const { year, month, day } = gregObj, ordinal = computeOrdinal(year, month, day), weekday = isoWeekdayToLocal(dayOfWeek(year, month, day), startOfWeek); let weekNumber = Math.floor((ordinal - weekday + 14 - minDaysInFirstWeek) / 7), weekYear; if (weekNumber < 1) { weekYear = year - 1; weekNumber = weeksInWeekYear(weekYear, minDaysInFirstWeek, startOfWeek); } else if (weekNumber > weeksInWeekYear(year, minDaysInFirstWeek, startOfWeek)) { weekYear = year + 1; weekNumber = 1; } else { weekYear = year; } return { weekYear, weekNumber, weekday, ...timeObject(gregObj) }; } __name(gregorianToWeek, "gregorianToWeek"); function weekToGregorian(weekData, minDaysInFirstWeek = 4, startOfWeek = 1) { const { weekYear, weekNumber, weekday } = weekData, weekdayOfJan4 = isoWeekdayToLocal(dayOfWeek(weekYear, 1, minDaysInFirstWeek), startOfWeek), yearInDays = daysInYear(weekYear); let ordinal = weekNumber * 7 + weekday - weekdayOfJan4 - 7 + minDaysInFirstWeek, year; if (ordinal < 1) { year = weekYear - 1; ordinal += daysInYear(year); } else if (ordinal > yearInDays) { year = weekYear + 1; ordinal -= daysInYear(weekYear); } else { year = weekYear; } const { month, day } = uncomputeOrdinal(year, ordinal); return { year, month, day, ...timeObject(weekData) }; } __name(weekToGregorian, "weekToGregorian"); function gregorianToOrdinal(gregData) { const { year, month, day } = gregData; const ordinal = computeOrdinal(year, month, day); return { year, ordinal, ...timeObject(gregData) }; } __name(gregorianToOrdinal, "gregorianToOrdinal"); function ordinalToGregorian(ordinalData) { const { year, ordinal } = ordinalData; const { month, day } = uncomputeOrdinal(year, ordinal); return { year, month, day, ...timeObject(ordinalData) }; } __name(ordinalToGregorian, "ordinalToGregorian"); function usesLocalWeekValues(obj2, loc) { const hasLocaleWeekData = !isUndefined(obj2.localWeekday) || !isUndefined(obj2.localWeekNumber) || !isUndefined(obj2.localWeekYear); if (hasLocaleWeekData) { const hasIsoWeekData = !isUndefined(obj2.weekday) || !isUndefined(obj2.weekNumber) || !isUndefined(obj2.weekYear); if (hasIsoWeekData) { throw new ConflictingSpecificationError("Cannot mix locale-based week fields with ISO-based week fields"); } if (!isUndefined(obj2.localWeekday)) obj2.weekday = obj2.localWeekday; if (!isUndefined(obj2.localWeekNumber)) obj2.weekNumber = obj2.localWeekNumber; if (!isUndefined(obj2.localWeekYear)) obj2.weekYear = obj2.localWeekYear; delete obj2.localWeekday; delete obj2.localWeekNumber; delete obj2.localWeekYear; return { minDaysInFirstWeek: loc.getMinDaysInFirstWeek(), startOfWeek: loc.getStartOfWeek() }; } else { return { minDaysInFirstWeek: 4, startOfWeek: 1 }; } } __name(usesLocalWeekValues, "usesLocalWeekValues"); function hasInvalidWeekData(obj2, minDaysInFirstWeek = 4, startOfWeek = 1) { const validYear = isInteger(obj2.weekYear), validWeek = integerBetween(obj2.weekNumber, 1, weeksInWeekYear(obj2.weekYear, minDaysInFirstWeek, startOfWeek)), validWeekday = integerBetween(obj2.weekday, 1, 7); if (!validYear) { return unitOutOfRange("weekYear", obj2.weekYear); } else if (!validWeek) { return unitOutOfRange("week", obj2.weekNumber); } else if (!validWeekday) { return unitOutOfRange("weekday", obj2.weekday); } else return false; } __name(hasInvalidWeekData, "hasInvalidWeekData"); function hasInvalidOrdinalData(obj2) { const validYear = isInteger(obj2.year), validOrdinal = integerBetween(obj2.ordinal, 1, daysInYear(obj2.year)); if (!validYear) { return unitOutOfRange("year", obj2.year); } else if (!validOrdinal) { return unitOutOfRange("ordinal", obj2.ordinal); } else return false; } __name(hasInvalidOrdinalData, "hasInvalidOrdinalData"); function hasInvalidGregorianData(obj2) { const validYear = isInteger(obj2.year), validMonth = integerBetween(obj2.month, 1, 12), validDay = integerBetween(obj2.day, 1, daysInMonth(obj2.year, obj2.month)); if (!validYear) { return unitOutOfRange("year", obj2.year); } else if (!validMonth) { return unitOutOfRange("month", obj2.month); } else if (!validDay) { return unitOutOfRange("day", obj2.day); } else return false; } __name(hasInvalidGregorianData, "hasInvalidGregorianData"); function hasInvalidTimeData(obj2) { const { hour, minute, second, millisecond } = obj2; const validHour = integerBetween(hour, 0, 23) || hour === 24 && minute === 0 && second === 0 && millisecond === 0, validMinute = integerBetween(minute, 0, 59), validSecond = integerBetween(second, 0, 59), validMillisecond = integerBetween(millisecond, 0, 999); if (!validHour) { return unitOutOfRange("hour", hour); } else if (!validMinute) { return unitOutOfRange("minute", minute); } else if (!validSecond) { return unitOutOfRange("second", second); } else if (!validMillisecond) { return unitOutOfRange("millisecond", millisecond); } else return false; } __name(hasInvalidTimeData, "hasInvalidTimeData"); function isUndefined(o) { return typeof o === "undefined"; } __name(isUndefined, "isUndefined"); function isNumber(o) { return typeof o === "number"; } __name(isNumber, "isNumber"); function isInteger(o) { return typeof o === "number" && o % 1 === 0; } __name(isInteger, "isInteger"); function isString(o) { return typeof o === "string"; } __name(isString, "isString"); function isDate(o) { return Object.prototype.toString.call(o) === "[object Date]"; } __name(isDate, "isDate"); function hasRelative() { try { return typeof Intl !== "undefined" && !!Intl.RelativeTimeFormat; } catch (e) { return false; } } __name(hasRelative, "hasRelative"); function hasLocaleWeekInfo() { try { return typeof Intl !== "undefined" && !!Intl.Locale && ("weekInfo" in Intl.Locale.prototype || "getWeekInfo" in Intl.Locale.prototype); } catch (e) { return false; } } __name(hasLocaleWeekInfo, "hasLocaleWeekInfo"); function maybeArray(thing) { return Array.isArray(thing) ? thing : [thing]; } __name(maybeArray, "maybeArray"); function bestBy(arr, by, compare) { if (arr.length === 0) { return void 0; } return arr.reduce((best, next) => { const pair = [by(next), next]; if (!best) { return pair; } else if (compare(best[0], pair[0]) === best[0]) { return best; } else { return pair; } }, null)[1]; } __name(bestBy, "bestBy"); function pick(obj2, keys) { return keys.reduce((a, k) => { a[k] = obj2[k]; return a; }, {}); } __name(pick, "pick"); function hasOwnProperty(obj2, prop) { return Object.prototype.hasOwnProperty.call(obj2, prop); } __name(hasOwnProperty, "hasOwnProperty"); function validateWeekSettings(settings) { if (settings == null) { return null; } else if (typeof settings !== "object") { throw new InvalidArgumentError("Week settings must be an object"); } else { if (!integerBetween(settings.firstDay, 1, 7) || !integerBetween(settings.minimalDays, 1, 7) || !Array.isArray(settings.weekend) || settings.weekend.some((v) => !integerBetween(v, 1, 7))) { throw new InvalidArgumentError("Invalid week settings"); } return { firstDay: settings.firstDay, minimalDays: settings.minimalDays, weekend: Array.from(settings.weekend) }; } } __name(validateWeekSettings, "validateWeekSettings"); function integerBetween(thing, bottom, top) { return isInteger(thing) && thing >= bottom && thing <= top; } __name(integerBetween, "integerBetween"); function floorMod(x, n2) { return x - n2 * Math.floor(x / n2); } __name(floorMod, "floorMod"); function padStart(input, n2 = 2) { const isNeg = input < 0; let padded; if (isNeg) { padded = "-" + ("" + -input).padStart(n2, "0"); } else { padded = ("" + input).padStart(n2, "0"); } return padded; } __name(padStart, "padStart"); function parseInteger(string) { if (isUndefined(string) || string === null || string === "") { return void 0; } else { return parseInt(string, 10); } } __name(parseInteger, "parseInteger"); function parseFloating(string) { if (isUndefined(string) || string === null || string === "") { return void 0; } else { return parseFloat(string); } } __name(parseFloating, "parseFloating"); function parseMillis(fraction) { if (isUndefined(fraction) || fraction === null || fraction === "") { return void 0; } else { const f = parseFloat("0." + fraction) * 1e3; return Math.floor(f); } } __name(parseMillis, "parseMillis"); function roundTo(number, digits, rounding = "round") { const factor = 10 ** digits; switch (rounding) { case "expand": return number > 0 ? Math.ceil(number * factor) / factor : Math.floor(number * factor) / factor; case "trunc": return Math.trunc(number * factor) / factor; case "round": return Math.round(number * factor) / factor; case "floor": return Math.floor(number * factor) / factor; case "ceil": return Math.ceil(number * factor) / factor; default: throw new RangeError(`Value rounding ${rounding} is out of range`); } } __name(roundTo, "roundTo"); function isLeapYear(year) { return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0); } __name(isLeapYear, "isLeapYear"); function daysInYear(year) { return isLeapYear(year) ? 366 : 365; } __name(daysInYear, "daysInYear"); function daysInMonth(year, month) { const modMonth = floorMod(month - 1, 12) + 1, modYear = year + (month - modMonth) / 12; if (modMonth === 2) { return isLeapYear(modYear) ? 29 : 28; } else { return [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][modMonth - 1]; } } __name(daysInMonth, "daysInMonth"); function objToLocalTS(obj2) { let d = Date.UTC(obj2.year, obj2.month - 1, obj2.day, obj2.hour, obj2.minute, obj2.second, obj2.millisecond); if (obj2.year < 100 && obj2.year >= 0) { d = new Date(d); d.setUTCFullYear(obj2.year, obj2.month - 1, obj2.day); } return +d; } __name(objToLocalTS, "objToLocalTS"); function firstWeekOffset(year, minDaysInFirstWeek, startOfWeek) { const fwdlw = isoWeekdayToLocal(dayOfWeek(year, 1, minDaysInFirstWeek), startOfWeek); return -fwdlw + minDaysInFirstWeek - 1; } __name(firstWeekOffset, "firstWeekOffset"); function weeksInWeekYear(weekYear, minDaysInFirstWeek = 4, startOfWeek = 1) { const weekOffset = firstWeekOffset(weekYear, minDaysInFirstWeek, startOfWeek); const weekOffsetNext = firstWeekOffset(weekYear + 1, minDaysInFirstWeek, startOfWeek); return (daysInYear(weekYear) - weekOffset + weekOffsetNext) / 7; } __name(weeksInWeekYear, "weeksInWeekYear"); function untruncateYear(year) { if (year > 99) { return year; } else return year > Settings.twoDigitCutoffYear ? 1900 + year : 2e3 + year; } __name(untruncateYear, "untruncateYear"); function parseZoneInfo(ts, offsetFormat, locale, timeZone = null) { const date = new Date(ts), intlOpts = { hourCycle: "h23", year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit" }; if (timeZone) { intlOpts.timeZone = timeZone; } const modified = { timeZoneName: offsetFormat, ...intlOpts }; const parsed = new Intl.DateTimeFormat(locale, modified).formatToParts(date).find((m) => m.type.toLowerCase() === "timezonename"); return parsed ? parsed.value : null; } __name(parseZoneInfo, "parseZoneInfo"); function signedOffset(offHourStr, offMinuteStr) { let offHour = parseInt(offHourStr, 10); if (Number.isNaN(offHour)) { offHour = 0; } const offMin = parseInt(offMinuteStr, 10) || 0, offMinSigned = offHour < 0 || Object.is(offHour, -0) ? -offMin : offMin; return offHour * 60 + offMinSigned; } __name(signedOffset, "signedOffset"); function asNumber(value) { const numericValue = Number(value); if (typeof value === "boolean" || value === "" || !Number.isFinite(numericValue)) throw new InvalidArgumentError(`Invalid unit value ${value}`); return numericValue; } __name(asNumber, "asNumber"); function normalizeObject(obj2, normalizer) { const normalized = {}; for (const u in obj2) { if (hasOwnProperty(obj2, u)) { const v = obj2[u]; if (v === void 0 || v === null) continue; normalized[normalizer(u)] = asNumber(v); } } return normalized; } __name(normalizeObject, "normalizeObject"); function formatOffset(offset2, format) { const hours = Math.trunc(Math.abs(offset2 / 60)), minutes = Math.trunc(Math.abs(offset2 % 60)), sign = offset2 >= 0 ? "+" : "-"; switch (format) { case "short": return `${sign}${padStart(hours, 2)}:${padStart(minutes, 2)}`; case "narrow": return `${sign}${hours}${minutes > 0 ? `:${minutes}` : ""}`; case "techie": return `${sign}${padStart(hours, 2)}${padStart(minutes, 2)}`; default: throw new RangeError(`Value format ${format} is out of range for property format`); } } __name(formatOffset, "formatOffset"); function timeObject(obj2) { return pick(obj2, ["hour", "minute", "second", "millisecond"]); } __name(timeObject, "timeObject"); var monthsLong = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; var monthsShort = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; var monthsNarrow = ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"]; function months(length) { switch (length) { case "narrow": return [...monthsNarrow]; case "short": return [...monthsShort]; case "long": return [...monthsLong]; case "numeric": return ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"]; case "2-digit": return ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"]; default: return null; } } __name(months, "months"); var weekdaysLong = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]; var weekdaysShort = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]; var weekdaysNarrow = ["M", "T", "W", "T", "F", "S", "S"]; function weekdays(length) { switch (length) { case "narrow": return [...weekdaysNarrow]; case "short": return [...weekdaysShort]; case "long": return [...weekdaysLong]; case "numeric": return ["1", "2", "3", "4", "5", "6", "7"]; default: return null; } } __name(weekdays, "weekdays"); var meridiems = ["AM", "PM"]; var erasLong = ["Before Christ", "Anno Domini"]; var erasShort = ["BC", "AD"]; var erasNarrow = ["B", "A"]; function eras(length) { switch (length) { case "narrow": return [...erasNarrow]; case "short": return [...erasShort]; case "long": return [...erasLong]; default: return null; } } __name(eras, "eras"); function meridiemForDateTime(dt) { return meridiems[dt.hour < 12 ? 0 : 1]; } __name(meridiemForDateTime, "meridiemForDateTime"); function weekdayForDateTime(dt, length) { return weekdays(length)[dt.weekday - 1]; } __name(weekdayForDateTime, "weekdayForDateTime"); function monthForDateTime(dt, length) { return months(length)[dt.month - 1]; } __name(monthForDateTime, "monthForDateTime"); function eraForDateTime(dt, length) { return eras(length)[dt.year < 0 ? 0 : 1]; } __name(eraForDateTime, "eraForDateTime"); function formatRelativeTime(unit, count, numeric = "always", narrow = false) { const units = { years: ["year", "yr."], quarters: ["quarter", "qtr."], months: ["month", "mo."], weeks: ["week", "wk."], days: ["day", "day", "days"], hours: ["hour", "hr."], minutes: ["minute", "min."], seconds: ["second", "sec."] }; const lastable = ["hours", "minutes", "seconds"].indexOf(unit) === -1; if (numeric === "auto" && lastable) { const isDay = unit === "days"; switch (count) { case 1: return isDay ? "tomorrow" : `next ${units[unit][0]}`; case -1: return isDay ? "yesterday" : `last ${units[unit][0]}`; case 0: return isDay ? "today" : `this ${units[unit][0]}`; } } const isInPast = Object.is(count, -0) || count < 0, fmtValue = Math.abs(count), singular = fmtValue === 1, lilUnits = units[unit], fmtUnit = narrow ? singular ? lilUnits[1] : lilUnits[2] || lilUnits[1] : singular ? units[unit][0] : unit; return isInPast ? `${fmtValue} ${fmtUnit} ago` : `in ${fmtValue} ${fmtUnit}`; } __name(formatRelativeTime, "formatRelativeTime"); function stringifyTokens(splits, tokenToString) { let s2 = ""; for (const token of splits) { if (token.literal) { s2 += token.val; } else { s2 += tokenToString(token.val); } } return s2; } __name(stringifyTokens, "stringifyTokens"); var macroTokenToFormatOpts = { D: DATE_SHORT, DD: DATE_MED, DDD: DATE_FULL, DDDD: DATE_HUGE, t: TIME_SIMPLE, tt: TIME_WITH_SECONDS, ttt: TIME_WITH_SHORT_OFFSET, tttt: TIME_WITH_LONG_OFFSET, T: TIME_24_SIMPLE, TT: TIME_24_WITH_SECONDS, TTT: TIME_24_WITH_SHORT_OFFSET, TTTT: TIME_24_WITH_LONG_OFFSET, f: DATETIME_SHORT, ff: DATETIME_MED, fff: DATETIME_FULL, ffff: DATETIME_HUGE, F: DATETIME_SHORT_WITH_SECONDS, FF: DATETIME_MED_WITH_SECONDS, FFF: DATETIME_FULL_WITH_SECONDS, FFFF: DATETIME_HUGE_WITH_SECONDS }; var Formatter = class _Formatter { static { __name(this, "Formatter"); } static create(locale, opts = {}) { return new _Formatter(locale, opts); } static parseFormat(fmt) { let current = null, currentFull = "", bracketed = false; const splits = []; for (let i = 0; i < fmt.length; i++) { const c = fmt.charAt(i); if (c === "'") { if (currentFull.length > 0 || bracketed) { splits.push({ literal: bracketed || /^\s+$/.test(currentFull), val: currentFull === "" ? "'" : currentFull }); } current = null; currentFull = ""; bracketed = !bracketed; } else if (bracketed) { currentFull += c; } else if (c === current) { currentFull += c; } else { if (currentFull.length > 0) { splits.push({ literal: /^\s+$/.test(currentFull), val: currentFull }); } currentFull = c; current = c; } } if (currentFull.length > 0) { splits.push({ literal: bracketed || /^\s+$/.test(currentFull), val: currentFull }); } return splits; } static macroTokenToFormatOpts(token) { return macroTokenToFormatOpts[token]; } constructor(locale, formatOpts) { this.opts = formatOpts; this.loc = locale; this.systemLoc = null; } formatWithSystemDefault(dt, opts) { if (this.systemLoc === null) { this.systemLoc = this.loc.redefaultToSystem(); } const df = this.systemLoc.dtFormatter(dt, { ...this.opts, ...opts }); return df.format(); } dtFormatter(dt, opts = {}) { return this.loc.dtFormatter(dt, { ...this.opts, ...opts }); } formatDateTime(dt, opts) { return this.dtFormatter(dt, opts).format(); } formatDateTimeParts(dt, opts) { return this.dtFormatter(dt, opts).formatToParts(); } formatInterval(interval, opts) { const df = this.dtFormatter(interval.start, opts); return df.dtf.formatRange(interval.start.toJSDate(), interval.end.toJSDate()); } resolvedOptions(dt, opts) { return this.dtFormatter(dt, opts).resolvedOptions(); } num(n2, p = 0, signDisplay = void 0) { if (this.opts.forceSimple) { return padStart(n2, p); } const opts = { ...this.opts }; if (p > 0) { opts.padTo = p; } if (signDisplay) { opts.signDisplay = signDisplay; } return this.loc.numberFormatter(opts).format(n2); } formatDateTimeFromString(dt, fmt) { const knownEnglish = this.loc.listingMode() === "en", useDateTimeFormatter = this.loc.outputCalendar && this.loc.outputCalendar !== "gregory", string = /* @__PURE__ */ __name((opts, extract) => this.loc.extract(dt, opts, extract), "string"), formatOffset2 = /* @__PURE__ */ __name((opts) => { if (dt.isOffsetFixed && dt.offset === 0 && opts.allowZ) { return "Z"; } return dt.isValid ? dt.zone.formatOffset(dt.ts, opts.format) : ""; }, "formatOffset"), meridiem = /* @__PURE__ */ __name(() => knownEnglish ? meridiemForDateTime(dt) : string({ hour: "numeric", hourCycle: "h12" }, "dayperiod"), "meridiem"), month = /* @__PURE__ */ __name((length, standalone) => knownEnglish ? monthForDateTime(dt, length) : string(standalone ? { month: length } : { month: length, day: "numeric" }, "month"), "month"), weekday = /* @__PURE__ */ __name((length, standalone) => knownEnglish ? weekdayForDateTime(dt, length) : string(standalone ? { weekday: length } : { weekday: length, month: "long", day: "numeric" }, "weekday"), "weekday"), maybeMacro = /* @__PURE__ */ __name((token) => { const formatOpts = _Formatter.macroTokenToFormatOpts(token); if (formatOpts) { return this.formatWithSystemDefault(dt, formatOpts); } else { return token; } }, "maybeMacro"), era = /* @__PURE__ */ __name((length) => knownEnglish ? eraForDateTime(dt, length) : string({ era: length }, "era"), "era"), tokenToString = /* @__PURE__ */ __name((token) => { switch (token) { // ms case "S": return this.num(dt.millisecond); case "u": // falls through case "SSS": return this.num(dt.millisecond, 3); // seconds case "s": return this.num(dt.second); case "ss": return this.num(dt.second, 2); // fractional seconds case "uu": return this.num(Math.floor(dt.millisecond / 10), 2); case "uuu": return this.num(Math.floor(dt.millisecond / 100)); // minutes case "m": return this.num(dt.minute); case "mm": return this.num(dt.minute, 2); // hours case "h": return this.num(dt.hour % 12 === 0 ? 12 : dt.hour % 12); case "hh": return this.num(dt.hour % 12 === 0 ? 12 : dt.hour % 12, 2); case "H": return this.num(dt.hour); case "HH": return this.num(dt.hour, 2); // offset case "Z": return formatOffset2({ format: "narrow", allowZ: this.opts.allowZ }); case "ZZ": return formatOffset2({ format: "short", allowZ: this.opts.allowZ }); case "ZZZ": return formatOffset2({ format: "techie", allowZ: this.opts.allowZ }); case "ZZZZ": return dt.zone.offsetName(dt.ts, { format: "short", locale: this.loc.locale }); case "ZZZZZ": return dt.zone.offsetName(dt.ts, { format: "long", locale: this.loc.locale }); // zone case "z": return dt.zoneName; // meridiems case "a": return meridiem(); // dates case "d": return useDateTimeFormatter ? string({ day: "numeric" }, "day") : this.num(dt.day); case "dd": return useDateTimeFormatter ? string({ day: "2-digit" }, "day") : this.num(dt.day, 2); // weekdays - standalone case "c": return this.num(dt.weekday); case "ccc": return weekday("short", true); case "cccc": return weekday("long", true); case "ccccc": return weekday("narrow", true); // weekdays - format case "E": return this.num(dt.weekday); case "EEE": return weekday("short", false); case "EEEE": return weekday("long", false); case "EEEEE": return weekday("narrow", false); // months - standalone case "L": return useDateTimeFormatter ? string({ month: "numeric", day: "numeric" }, "month") : this.num(dt.month); case "LL": return useDateTimeFormatter ? string({ month: "2-digit", day: "numeric" }, "month") : this.num(dt.month, 2); case "LLL": return month("short", true); case "LLLL": return month("long", true); case "LLLLL": return month("narrow", true); // months - format case "M": return useDateTimeFormatter ? string({ month: "numeric" }, "month") : this.num(dt.month); case "MM": return useDateTimeFormatter ? string({ month: "2-digit" }, "month") : this.num(dt.month, 2); case "MMM": return month("short", false); case "MMMM": return month("long", false); case "MMMMM": return month("narrow", false); // years case "y": return useDateTimeFormatter ? string({ year: "numeric" }, "year") : this.num(dt.year); case "yy": return useDateTimeFormatter ? string({ year: "2-digit" }, "year") : this.num(dt.year.toString().slice(-2), 2); case "yyyy": return useDateTimeFormatter ? string({ year: "numeric" }, "year") : this.num(dt.year, 4); case "yyyyyy": return useDateTimeFormatter ? string({ year: "numeric" }, "year") : this.num(dt.year, 6); // eras case "G": return era("short"); case "GG": return era("long"); case "GGGGG": return era("narrow"); case "kk": return this.num(dt.weekYear.toString().slice(-2), 2); case "kkkk": return this.num(dt.weekYear, 4); case "W": return this.num(dt.weekNumber); case "WW": return this.num(dt.weekNumber, 2); case "n": return this.num(dt.localWeekNumber); case "nn": return this.num(dt.localWeekNumber, 2); case "ii": return this.num(dt.localWeekYear.toString().slice(-2), 2); case "iiii": return this.num(dt.localWeekYear, 4); case "o": return this.num(dt.ordinal); case "ooo": return this.num(dt.ordinal, 3); case "q": return this.num(dt.quarter); case "qq": return this.num(dt.quarter, 2); case "X": return this.num(Math.floor(dt.ts / 1e3)); case "x": return this.num(dt.ts); default: return maybeMacro(token); } }, "tokenToString"); return stringifyTokens(_Formatter.parseFormat(fmt), tokenToString); } formatDurationFromString(dur, fmt) { const invertLargest = this.opts.signMode === "negativeLargestOnly" ? -1 : 1; const tokenToField = /* @__PURE__ */ __name((token) => { switch (token[0]) { case "S": return "milliseconds"; case "s": return "seconds"; case "m": return "minutes"; case "h": return "hours"; case "d": return "days"; case "w": return "weeks"; case "M": return "months"; case "y": return "years"; default: return null; } }, "tokenToField"), tokenToString = /* @__PURE__ */ __name((lildur, info) => (token) => { const mapped = tokenToField(token); if (mapped) { const inversionFactor = info.isNegativeDuration && mapped !== info.largestUnit ? invertLargest : 1; let signDisplay; if (this.opts.signMode === "negativeLargestOnly" && mapped !== info.largestUnit) { signDisplay = "never"; } else if (this.opts.signMode === "all") { signDisplay = "always"; } else { signDisplay = "auto"; } return this.num(lildur.get(mapped) * inversionFactor, token.length, signDisplay); } else { return token; } }, "tokenToString"), tokens = _Formatter.parseFormat(fmt), realTokens = tokens.reduce((found, { literal, val }) => literal ? found : found.concat(val), []), collapsed = dur.shiftTo(...realTokens.map(tokenToField).filter((t) => t)), durationInfo = { isNegativeDuration: collapsed < 0, // this relies on "collapsed" being based on "shiftTo", which builds up the object // in order largestUnit: Object.keys(collapsed.values)[0] }; return stringifyTokens(tokens, tokenToString(collapsed, durationInfo)); } }; var ianaRegex = /[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/; function combineRegexes(...regexes) { const full = regexes.reduce((f, r) => f + r.source, ""); return RegExp(`^${full}$`); } __name(combineRegexes, "combineRegexes"); function combineExtractors(...extractors) { return (m) => extractors.reduce(([mergedVals, mergedZone, cursor], ex) => { const [val, zone, next] = ex(m, cursor); return [{ ...mergedVals, ...val }, zone || mergedZone, next]; }, [{}, null, 1]).slice(0, 2); } __name(combineExtractors, "combineExtractors"); function parse2(s2, ...patterns) { if (s2 == null) { return [null, null]; } for (const [regex, extractor] of patterns) { const m = regex.exec(s2); if (m) { return extractor(m); } } return [null, null]; } __name(parse2, "parse"); function simpleParse(...keys) { return (match2, cursor) => { const ret2 = {}; let i; for (i = 0; i < keys.length; i++) { ret2[keys[i]] = parseInteger(match2[cursor + i]); } return [ret2, null, cursor + i]; }; } __name(simpleParse, "simpleParse"); var offsetRegex = /(?:([Zz])|([+-]\d\d)(?::?(\d\d))?)/; var isoExtendedZone = `(?:${offsetRegex.source}?(?:\\[(${ianaRegex.source})\\])?)?`; var isoTimeBaseRegex = /(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/; var isoTimeRegex = RegExp(`${isoTimeBaseRegex.source}${isoExtendedZone}`); var isoTimeExtensionRegex = RegExp(`(?:[Tt]${isoTimeRegex.source})?`); var isoYmdRegex = /([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/; var isoWeekRegex = /(\d{4})-?W(\d\d)(?:-?(\d))?/; var isoOrdinalRegex = /(\d{4})-?(\d{3})/; var extractISOWeekData = simpleParse("weekYear", "weekNumber", "weekDay"); var extractISOOrdinalData = simpleParse("year", "ordinal"); var sqlYmdRegex = /(\d{4})-(\d\d)-(\d\d)/; var sqlTimeRegex = RegExp(`${isoTimeBaseRegex.source} ?(?:${offsetRegex.source}|(${ianaRegex.source}))?`); var sqlTimeExtensionRegex = RegExp(`(?: ${sqlTimeRegex.source})?`); function int(match2, pos, fallback) { const m = match2[pos]; return isUndefined(m) ? fallback : parseInteger(m); } __name(int, "int"); function extractISOYmd(match2, cursor) { const item = { year: int(match2, cursor), month: int(match2, cursor + 1, 1), day: int(match2, cursor + 2, 1) }; return [item, null, cursor + 3]; } __name(extractISOYmd, "extractISOYmd"); function extractISOTime(match2, cursor) { const item = { hours: int(match2, cursor, 0), minutes: int(match2, cursor + 1, 0), seconds: int(match2, cursor + 2, 0), milliseconds: parseMillis(match2[cursor + 3]) }; return [item, null, cursor + 4]; } __name(extractISOTime, "extractISOTime"); function extractISOOffset(match2, cursor) { const local = !match2[cursor] && !match2[cursor + 1], fullOffset = signedOffset(match2[cursor + 1], match2[cursor + 2]), zone = local ? null : FixedOffsetZone.instance(fullOffset); return [{}, zone, cursor + 3]; } __name(extractISOOffset, "extractISOOffset"); function extractIANAZone(match2, cursor) { const zone = match2[cursor] ? IANAZone.create(match2[cursor]) : null; return [{}, zone, cursor + 1]; } __name(extractIANAZone, "extractIANAZone"); var isoTimeOnly = RegExp(`^T?${isoTimeBaseRegex.source}$`); var isoDuration = /^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/; function extractISODuration(match2) { const [s2, yearStr, monthStr, weekStr, dayStr, hourStr, minuteStr, secondStr, millisecondsStr] = match2; const hasNegativePrefix = s2[0] === "-"; const negativeSeconds = secondStr && secondStr[0] === "-"; const maybeNegate = /* @__PURE__ */ __name((num, force = false) => num !== void 0 && (force || num && hasNegativePrefix) ? -num : num, "maybeNegate"); return [{ years: maybeNegate(parseFloating(yearStr)), months: maybeNegate(parseFloating(monthStr)), weeks: maybeNegate(parseFloating(weekStr)), days: maybeNegate(parseFloating(dayStr)), hours: maybeNegate(parseFloating(hourStr)), minutes: maybeNegate(parseFloating(minuteStr)), seconds: maybeNegate(parseFloating(secondStr), secondStr === "-0"), milliseconds: maybeNegate(parseMillis(millisecondsStr), negativeSeconds) }]; } __name(extractISODuration, "extractISODuration"); var obsOffsets = { GMT: 0, EDT: -4 * 60, EST: -5 * 60, CDT: -5 * 60, CST: -6 * 60, MDT: -6 * 60, MST: -7 * 60, PDT: -7 * 60, PST: -8 * 60 }; function fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr) { const result = { year: yearStr.length === 2 ? untruncateYear(parseInteger(yearStr)) : parseInteger(yearStr), month: monthsShort.indexOf(monthStr) + 1, day: parseInteger(dayStr), hour: parseInteger(hourStr), minute: parseInteger(minuteStr) }; if (secondStr) result.second = parseInteger(secondStr); if (weekdayStr) { result.weekday = weekdayStr.length > 3 ? weekdaysLong.indexOf(weekdayStr) + 1 : weekdaysShort.indexOf(weekdayStr) + 1; } return result; } __name(fromStrings, "fromStrings"); var rfc2822 = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/; function extractRFC2822(match2) { const [, weekdayStr, dayStr, monthStr, yearStr, hourStr, minuteStr, secondStr, obsOffset, milOffset, offHourStr, offMinuteStr] = match2, result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr); let offset2; if (obsOffset) { offset2 = obsOffsets[obsOffset]; } else if (milOffset) { offset2 = 0; } else { offset2 = signedOffset(offHourStr, offMinuteStr); } return [result, new FixedOffsetZone(offset2)]; } __name(extractRFC2822, "extractRFC2822"); function preprocessRFC2822(s2) { return s2.replace(/\([^()]*\)|[\n\t]/g, " ").replace(/(\s\s+)/g, " ").trim(); } __name(preprocessRFC2822, "preprocessRFC2822"); var rfc1123 = /^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/; var rfc850 = /^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/; var ascii = /^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/; function extractRFC1123Or850(match2) { const [, weekdayStr, dayStr, monthStr, yearStr, hourStr, minuteStr, secondStr] = match2, result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr); return [result, FixedOffsetZone.utcInstance]; } __name(extractRFC1123Or850, "extractRFC1123Or850"); function extractASCII(match2) { const [, weekdayStr, monthStr, dayStr, hourStr, minuteStr, secondStr, yearStr] = match2, result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr); return [result, FixedOffsetZone.utcInstance]; } __name(extractASCII, "extractASCII"); var isoYmdWithTimeExtensionRegex = combineRegexes(isoYmdRegex, isoTimeExtensionRegex); var isoWeekWithTimeExtensionRegex = combineRegexes(isoWeekRegex, isoTimeExtensionRegex); var isoOrdinalWithTimeExtensionRegex = combineRegexes(isoOrdinalRegex, isoTimeExtensionRegex); var isoTimeCombinedRegex = combineRegexes(isoTimeRegex); var extractISOYmdTimeAndOffset = combineExtractors(extractISOYmd, extractISOTime, extractISOOffset, extractIANAZone); var extractISOWeekTimeAndOffset = combineExtractors(extractISOWeekData, extractISOTime, extractISOOffset, extractIANAZone); var extractISOOrdinalDateAndTime = combineExtractors(extractISOOrdinalData, extractISOTime, extractISOOffset, extractIANAZone); var extractISOTimeAndOffset = combineExtractors(extractISOTime, extractISOOffset, extractIANAZone); function parseISODate(s2) { return parse2(s2, [isoYmdWithTimeExtensionRegex, extractISOYmdTimeAndOffset], [isoWeekWithTimeExtensionRegex, extractISOWeekTimeAndOffset], [isoOrdinalWithTimeExtensionRegex, extractISOOrdinalDateAndTime], [isoTimeCombinedRegex, extractISOTimeAndOffset]); } __name(parseISODate, "parseISODate"); function parseRFC2822Date(s2) { return parse2(preprocessRFC2822(s2), [rfc2822, extractRFC2822]); } __name(parseRFC2822Date, "parseRFC2822Date"); function parseHTTPDate(s2) { return parse2(s2, [rfc1123, extractRFC1123Or850], [rfc850, extractRFC1123Or850], [ascii, extractASCII]); } __name(parseHTTPDate, "parseHTTPDate"); function parseISODuration(s2) { return parse2(s2, [isoDuration, extractISODuration]); } __name(parseISODuration, "parseISODuration"); var extractISOTimeOnly = combineExtractors(extractISOTime); function parseISOTimeOnly(s2) { return parse2(s2, [isoTimeOnly, extractISOTimeOnly]); } __name(parseISOTimeOnly, "parseISOTimeOnly"); var sqlYmdWithTimeExtensionRegex = combineRegexes(sqlYmdRegex, sqlTimeExtensionRegex); var sqlTimeCombinedRegex = combineRegexes(sqlTimeRegex); var extractISOTimeOffsetAndIANAZone = combineExtractors(extractISOTime, extractISOOffset, extractIANAZone); function parseSQL(s2) { return parse2(s2, [sqlYmdWithTimeExtensionRegex, extractISOYmdTimeAndOffset], [sqlTimeCombinedRegex, extractISOTimeOffsetAndIANAZone]); } __name(parseSQL, "parseSQL"); var INVALID$2 = "Invalid Duration"; var lowOrderMatrix = { weeks: { days: 7, hours: 7 * 24, minutes: 7 * 24 * 60, seconds: 7 * 24 * 60 * 60, milliseconds: 7 * 24 * 60 * 60 * 1e3 }, days: { hours: 24, minutes: 24 * 60, seconds: 24 * 60 * 60, milliseconds: 24 * 60 * 60 * 1e3 }, hours: { minutes: 60, seconds: 60 * 60, milliseconds: 60 * 60 * 1e3 }, minutes: { seconds: 60, milliseconds: 60 * 1e3 }, seconds: { milliseconds: 1e3 } }; var casualMatrix = { years: { quarters: 4, months: 12, weeks: 52, days: 365, hours: 365 * 24, minutes: 365 * 24 * 60, seconds: 365 * 24 * 60 * 60, milliseconds: 365 * 24 * 60 * 60 * 1e3 }, quarters: { months: 3, weeks: 13, days: 91, hours: 91 * 24, minutes: 91 * 24 * 60, seconds: 91 * 24 * 60 * 60, milliseconds: 91 * 24 * 60 * 60 * 1e3 }, months: { weeks: 4, days: 30, hours: 30 * 24, minutes: 30 * 24 * 60, seconds: 30 * 24 * 60 * 60, milliseconds: 30 * 24 * 60 * 60 * 1e3 }, ...lowOrderMatrix }; var daysInYearAccurate = 146097 / 400; var daysInMonthAccurate = 146097 / 4800; var accurateMatrix = { years: { quarters: 4, months: 12, weeks: daysInYearAccurate / 7, days: daysInYearAccurate, hours: daysInYearAccurate * 24, minutes: daysInYearAccurate * 24 * 60, seconds: daysInYearAccurate * 24 * 60 * 60, milliseconds: daysInYearAccurate * 24 * 60 * 60 * 1e3 }, quarters: { months: 3, weeks: daysInYearAccurate / 28, days: daysInYearAccurate / 4, hours: daysInYearAccurate * 24 / 4, minutes: daysInYearAccurate * 24 * 60 / 4, seconds: daysInYearAccurate * 24 * 60 * 60 / 4, milliseconds: daysInYearAccurate * 24 * 60 * 60 * 1e3 / 4 }, months: { weeks: daysInMonthAccurate / 7, days: daysInMonthAccurate, hours: daysInMonthAccurate * 24, minutes: daysInMonthAccurate * 24 * 60, seconds: daysInMonthAccurate * 24 * 60 * 60, milliseconds: daysInMonthAccurate * 24 * 60 * 60 * 1e3 }, ...lowOrderMatrix }; var orderedUnits$1 = ["years", "quarters", "months", "weeks", "days", "hours", "minutes", "seconds", "milliseconds"]; var reverseUnits = orderedUnits$1.slice(0).reverse(); function clone$1(dur, alts, clear = false) { const conf = { values: clear ? alts.values : { ...dur.values, ...alts.values || {} }, loc: dur.loc.clone(alts.loc), conversionAccuracy: alts.conversionAccuracy || dur.conversionAccuracy, matrix: alts.matrix || dur.matrix }; return new Duration(conf); } __name(clone$1, "clone$1"); function durationToMillis(matrix, vals) { var _vals$milliseconds; let sum = (_vals$milliseconds = vals.milliseconds) != null ? _vals$milliseconds : 0; for (const unit of reverseUnits.slice(1)) { if (vals[unit]) { sum += vals[unit] * matrix[unit]["milliseconds"]; } } return sum; } __name(durationToMillis, "durationToMillis"); function normalizeValues(matrix, vals) { const factor = durationToMillis(matrix, vals) < 0 ? -1 : 1; orderedUnits$1.reduceRight((previous, current) => { if (!isUndefined(vals[current])) { if (previous) { const previousVal = vals[previous] * factor; const conv = matrix[current][previous]; const rollUp = Math.floor(previousVal / conv); vals[current] += rollUp * factor; vals[previous] -= rollUp * conv * factor; } return current; } else { return previous; } }, null); orderedUnits$1.reduce((previous, current) => { if (!isUndefined(vals[current])) { if (previous) { const fraction = vals[previous] % 1; vals[previous] -= fraction; vals[current] += fraction * matrix[previous][current]; } return current; } else { return previous; } }, null); } __name(normalizeValues, "normalizeValues"); function removeZeroes(vals) { const newVals = {}; for (const [key, value] of Object.entries(vals)) { if (value !== 0) { newVals[key] = value; } } return newVals; } __name(removeZeroes, "removeZeroes"); var Duration = class _Duration { static { __name(this, "Duration"); } /** * @private */ constructor(config) { const accurate = config.conversionAccuracy === "longterm" || false; let matrix = accurate ? accurateMatrix : casualMatrix; if (config.matrix) { matrix = config.matrix; } this.values = config.values; this.loc = config.loc || Locale.create(); this.conversionAccuracy = accurate ? "longterm" : "casual"; this.invalid = config.invalid || null; this.matrix = matrix; this.isLuxonDuration = true; } /** * Create Duration from a number of milliseconds. * @param {number} count of milliseconds * @param {Object} opts - options for parsing * @param {string} [opts.locale='en-US'] - the locale to use * @param {string} opts.numberingSystem - the numbering system to use * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use * @return {Duration} */ static fromMillis(count, opts) { return _Duration.fromObject({ milliseconds: count }, opts); } /** * Create a Duration from a JavaScript object with keys like 'years' and 'hours'. * If this object is empty then a zero milliseconds duration is returned. * @param {Object} obj - the object to create the DateTime from * @param {number} obj.years * @param {number} obj.quarters * @param {number} obj.months * @param {number} obj.weeks * @param {number} obj.days * @param {number} obj.hours * @param {number} obj.minutes * @param {number} obj.seconds * @param {number} obj.milliseconds * @param {Object} [opts=[]] - options for creating this Duration * @param {string} [opts.locale='en-US'] - the locale to use * @param {string} opts.numberingSystem - the numbering system to use * @param {string} [opts.conversionAccuracy='casual'] - the preset conversion system to use * @param {string} [opts.matrix=Object] - the custom conversion system to use * @return {Duration} */ static fromObject(obj2, opts = {}) { if (obj2 == null || typeof obj2 !== "object") { throw new InvalidArgumentError(`Duration.fromObject: argument expected to be an object, got ${obj2 === null ? "null" : typeof obj2}`); } return new _Duration({ values: normalizeObject(obj2, _Duration.normalizeUnit), loc: Locale.fromObject(opts), conversionAccuracy: opts.conversionAccuracy, matrix: opts.matrix }); } /** * Create a Duration from DurationLike. * * @param {Object | number | Duration} durationLike * One of: * - object with keys like 'years' and 'hours'. * - number representing milliseconds * - Duration instance * @return {Duration} */ static fromDurationLike(durationLike) { if (isNumber(durationLike)) { return _Duration.fromMillis(durationLike); } else if (_Duration.isDuration(durationLike)) { return durationLike; } else if (typeof durationLike === "object") { return _Duration.fromObject(durationLike); } else { throw new InvalidArgumentError(`Unknown duration argument ${durationLike} of type ${typeof durationLike}`); } } /** * Create a Duration from an ISO 8601 duration string. * @param {string} text - text to parse * @param {Object} opts - options for parsing * @param {string} [opts.locale='en-US'] - the locale to use * @param {string} opts.numberingSystem - the numbering system to use * @param {string} [opts.conversionAccuracy='casual'] - the preset conversion system to use * @param {string} [opts.matrix=Object] - the preset conversion system to use * @see https://en.wikipedia.org/wiki/ISO_8601#Durations * @example Duration.fromISO('P3Y6M1W4DT12H30M5S').toObject() //=> { years: 3, months: 6, weeks: 1, days: 4, hours: 12, minutes: 30, seconds: 5 } * @example Duration.fromISO('PT23H').toObject() //=> { hours: 23 } * @example Duration.fromISO('P5Y3M').toObject() //=> { years: 5, months: 3 } * @return {Duration} */ static fromISO(text, opts) { const [parsed] = parseISODuration(text); if (parsed) { return _Duration.fromObject(parsed, opts); } else { return _Duration.invalid("unparsable", `the input "${text}" can't be parsed as ISO 8601`); } } /** * Create a Duration from an ISO 8601 time string. * @param {string} text - text to parse * @param {Object} opts - options for parsing * @param {string} [opts.locale='en-US'] - the locale to use * @param {string} opts.numberingSystem - the numbering system to use * @param {string} [opts.conversionAccuracy='casual'] - the preset conversion system to use * @param {string} [opts.matrix=Object] - the conversion system to use * @see https://en.wikipedia.org/wiki/ISO_8601#Times * @example Duration.fromISOTime('11:22:33.444').toObject() //=> { hours: 11, minutes: 22, seconds: 33, milliseconds: 444 } * @example Duration.fromISOTime('11:00').toObject() //=> { hours: 11, minutes: 0, seconds: 0 } * @example Duration.fromISOTime('T11:00').toObject() //=> { hours: 11, minutes: 0, seconds: 0 } * @example Duration.fromISOTime('1100').toObject() //=> { hours: 11, minutes: 0, seconds: 0 } * @example Duration.fromISOTime('T1100').toObject() //=> { hours: 11, minutes: 0, seconds: 0 } * @return {Duration} */ static fromISOTime(text, opts) { const [parsed] = parseISOTimeOnly(text); if (parsed) { return _Duration.fromObject(parsed, opts); } else { return _Duration.invalid("unparsable", `the input "${text}" can't be parsed as ISO 8601`); } } /** * Create an invalid Duration. * @param {string} reason - simple string of why this datetime is invalid. Should not contain parameters or anything else data-dependent * @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information * @return {Duration} */ static invalid(reason, explanation = null) { if (!reason) { throw new InvalidArgumentError("need to specify a reason the Duration is invalid"); } const invalid = reason instanceof Invalid ? reason : new Invalid(reason, explanation); if (Settings.throwOnInvalid) { throw new InvalidDurationError(invalid); } else { return new _Duration({ invalid }); } } /** * @private */ static normalizeUnit(unit) { const normalized = { year: "years", years: "years", quarter: "quarters", quarters: "quarters", month: "months", months: "months", week: "weeks", weeks: "weeks", day: "days", days: "days", hour: "hours", hours: "hours", minute: "minutes", minutes: "minutes", second: "seconds", seconds: "seconds", millisecond: "milliseconds", milliseconds: "milliseconds" }[unit ? unit.toLowerCase() : unit]; if (!normalized) throw new InvalidUnitError(unit); return normalized; } /** * Check if an object is a Duration. Works across context boundaries * @param {object} o * @return {boolean} */ static isDuration(o) { return o && o.isLuxonDuration || false; } /** * Get the locale of a Duration, such 'en-GB' * @type {string} */ get locale() { return this.isValid ? this.loc.locale : null; } /** * Get the numbering system of a Duration, such 'beng'. The numbering system is used when formatting the Duration * * @type {string} */ get numberingSystem() { return this.isValid ? this.loc.numberingSystem : null; } /** * Returns a string representation of this Duration formatted according to the specified format string. You may use these tokens: * * `S` for milliseconds * * `s` for seconds * * `m` for minutes * * `h` for hours * * `d` for days * * `w` for weeks * * `M` for months * * `y` for years * Notes: * * Add padding by repeating the token, e.g. "yy" pads the years to two digits, "hhhh" pads the hours out to four digits * * Tokens can be escaped by wrapping with single quotes. * * The duration will be converted to the set of units in the format string using {@link Duration#shiftTo} and the Durations's conversion accuracy setting. * @param {string} fmt - the format string * @param {Object} opts - options * @param {boolean} [opts.floor=true] - floor numerical values * @param {'negative'|'all'|'negativeLargestOnly'} [opts.signMode=negative] - How to handle signs * @example Duration.fromObject({ years: 1, days: 6, seconds: 2 }).toFormat("y d s") //=> "1 6 2" * @example Duration.fromObject({ years: 1, days: 6, seconds: 2 }).toFormat("yy dd sss") //=> "01 06 002" * @example Duration.fromObject({ years: 1, days: 6, seconds: 2 }).toFormat("M S") //=> "12 518402000" * @example Duration.fromObject({ days: 6, seconds: 2 }).toFormat("d s", { signMode: "all" }) //=> "+6 +2" * @example Duration.fromObject({ days: -6, seconds: -2 }).toFormat("d s", { signMode: "all" }) //=> "-6 -2" * @example Duration.fromObject({ days: -6, seconds: -2 }).toFormat("d s", { signMode: "negativeLargestOnly" }) //=> "-6 2" * @return {string} */ toFormat(fmt, opts = {}) { const fmtOpts = { ...opts, floor: opts.round !== false && opts.floor !== false }; return this.isValid ? Formatter.create(this.loc, fmtOpts).formatDurationFromString(this, fmt) : INVALID$2; } /** * Returns a string representation of a Duration with all units included. * To modify its behavior, use `listStyle` and any Intl.NumberFormat option, though `unitDisplay` is especially relevant. * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/NumberFormat#options * @param {Object} opts - Formatting options. Accepts the same keys as the options parameter of the native `Intl.NumberFormat` constructor, as well as `listStyle`. * @param {string} [opts.listStyle='narrow'] - How to format the merged list. Corresponds to the `style` property of the options parameter of the native `Intl.ListFormat` constructor. * @param {boolean} [opts.showZeros=true] - Show all units previously used by the duration even if they are zero * @example * ```js * var dur = Duration.fromObject({ months: 1, weeks: 0, hours: 5, minutes: 6 }) * dur.toHuman() //=> '1 month, 0 weeks, 5 hours, 6 minutes' * dur.toHuman({ listStyle: "long" }) //=> '1 month, 0 weeks, 5 hours, and 6 minutes' * dur.toHuman({ unitDisplay: "short" }) //=> '1 mth, 0 wks, 5 hr, 6 min' * dur.toHuman({ showZeros: false }) //=> '1 month, 5 hours, 6 minutes' * ``` */ toHuman(opts = {}) { if (!this.isValid) return INVALID$2; const showZeros = opts.showZeros !== false; const l3 = orderedUnits$1.map((unit) => { const val = this.values[unit]; if (isUndefined(val) || val === 0 && !showZeros) { return null; } return this.loc.numberFormatter({ style: "unit", unitDisplay: "long", ...opts, unit: unit.slice(0, -1) }).format(val); }).filter((n2) => n2); return this.loc.listFormatter({ type: "conjunction", style: opts.listStyle || "narrow", ...opts }).format(l3); } /** * Returns a JavaScript object with this Duration's values. * @example Duration.fromObject({ years: 1, days: 6, seconds: 2 }).toObject() //=> { years: 1, days: 6, seconds: 2 } * @return {Object} */ toObject() { if (!this.isValid) return {}; return { ...this.values }; } /** * Returns an ISO 8601-compliant string representation of this Duration. * @see https://en.wikipedia.org/wiki/ISO_8601#Durations * @example Duration.fromObject({ years: 3, seconds: 45 }).toISO() //=> 'P3YT45S' * @example Duration.fromObject({ months: 4, seconds: 45 }).toISO() //=> 'P4MT45S' * @example Duration.fromObject({ months: 5 }).toISO() //=> 'P5M' * @example Duration.fromObject({ minutes: 5 }).toISO() //=> 'PT5M' * @example Duration.fromObject({ milliseconds: 6 }).toISO() //=> 'PT0.006S' * @return {string} */ toISO() { if (!this.isValid) return null; let s2 = "P"; if (this.years !== 0) s2 += this.years + "Y"; if (this.months !== 0 || this.quarters !== 0) s2 += this.months + this.quarters * 3 + "M"; if (this.weeks !== 0) s2 += this.weeks + "W"; if (this.days !== 0) s2 += this.days + "D"; if (this.hours !== 0 || this.minutes !== 0 || this.seconds !== 0 || this.milliseconds !== 0) s2 += "T"; if (this.hours !== 0) s2 += this.hours + "H"; if (this.minutes !== 0) s2 += this.minutes + "M"; if (this.seconds !== 0 || this.milliseconds !== 0) s2 += roundTo(this.seconds + this.milliseconds / 1e3, 3) + "S"; if (s2 === "P") s2 += "T0S"; return s2; } /** * Returns an ISO 8601-compliant string representation of this Duration, formatted as a time of day. * Note that this will return null if the duration is invalid, negative, or equal to or greater than 24 hours. * @see https://en.wikipedia.org/wiki/ISO_8601#Times * @param {Object} opts - options * @param {boolean} [opts.suppressMilliseconds=false] - exclude milliseconds from the format if they're 0 * @param {boolean} [opts.suppressSeconds=false] - exclude seconds from the format if they're 0 * @param {boolean} [opts.includePrefix=false] - include the `T` prefix * @param {string} [opts.format='extended'] - choose between the basic and extended format * @example Duration.fromObject({ hours: 11 }).toISOTime() //=> '11:00:00.000' * @example Duration.fromObject({ hours: 11 }).toISOTime({ suppressMilliseconds: true }) //=> '11:00:00' * @example Duration.fromObject({ hours: 11 }).toISOTime({ suppressSeconds: true }) //=> '11:00' * @example Duration.fromObject({ hours: 11 }).toISOTime({ includePrefix: true }) //=> 'T11:00:00.000' * @example Duration.fromObject({ hours: 11 }).toISOTime({ format: 'basic' }) //=> '110000.000' * @return {string} */ toISOTime(opts = {}) { if (!this.isValid) return null; const millis = this.toMillis(); if (millis < 0 || millis >= 864e5) return null; opts = { suppressMilliseconds: false, suppressSeconds: false, includePrefix: false, format: "extended", ...opts, includeOffset: false }; const dateTime = DateTime.fromMillis(millis, { zone: "UTC" }); return dateTime.toISOTime(opts); } /** * Returns an ISO 8601 representation of this Duration appropriate for use in JSON. * @return {string} */ toJSON() { return this.toISO(); } /** * Returns an ISO 8601 representation of this Duration appropriate for use in debugging. * @return {string} */ toString() { return this.toISO(); } /** * Returns a string representation of this Duration appropriate for the REPL. * @return {string} */ [Symbol.for("nodejs.util.inspect.custom")]() { if (this.isValid) { return `Duration { values: ${JSON.stringify(this.values)} }`; } else { return `Duration { Invalid, reason: ${this.invalidReason} }`; } } /** * Returns an milliseconds value of this Duration. * @return {number} */ toMillis() { if (!this.isValid) return NaN; return durationToMillis(this.matrix, this.values); } /** * Returns an milliseconds value of this Duration. Alias of {@link toMillis} * @return {number} */ valueOf() { return this.toMillis(); } /** * Make this Duration longer by the specified amount. Return a newly-constructed Duration. * @param {Duration|Object|number} duration - The amount to add. Either a Luxon Duration, a number of milliseconds, the object argument to Duration.fromObject() * @return {Duration} */ plus(duration) { if (!this.isValid) return this; const dur = _Duration.fromDurationLike(duration), result = {}; for (const k of orderedUnits$1) { if (hasOwnProperty(dur.values, k) || hasOwnProperty(this.values, k)) { result[k] = dur.get(k) + this.get(k); } } return clone$1(this, { values: result }, true); } /** * Make this Duration shorter by the specified amount. Return a newly-constructed Duration. * @param {Duration|Object|number} duration - The amount to subtract. Either a Luxon Duration, a number of milliseconds, the object argument to Duration.fromObject() * @return {Duration} */ minus(duration) { if (!this.isValid) return this; const dur = _Duration.fromDurationLike(duration); return this.plus(dur.negate()); } /** * Scale this Duration by the specified amount. Return a newly-constructed Duration. * @param {function} fn - The function to apply to each unit. Arity is 1 or 2: the value of the unit and, optionally, the unit name. Must return a number. * @example Duration.fromObject({ hours: 1, minutes: 30 }).mapUnits(x => x * 2) //=> { hours: 2, minutes: 60 } * @example Duration.fromObject({ hours: 1, minutes: 30 }).mapUnits((x, u) => u === "hours" ? x * 2 : x) //=> { hours: 2, minutes: 30 } * @return {Duration} */ mapUnits(fn) { if (!this.isValid) return this; const result = {}; for (const k of Object.keys(this.values)) { result[k] = asNumber(fn(this.values[k], k)); } return clone$1(this, { values: result }, true); } /** * Get the value of unit. * @param {string} unit - a unit such as 'minute' or 'day' * @example Duration.fromObject({years: 2, days: 3}).get('years') //=> 2 * @example Duration.fromObject({years: 2, days: 3}).get('months') //=> 0 * @example Duration.fromObject({years: 2, days: 3}).get('days') //=> 3 * @return {number} */ get(unit) { return this[_Duration.normalizeUnit(unit)]; } /** * "Set" the values of specified units. Return a newly-constructed Duration. * @param {Object} values - a mapping of units to numbers * @example dur.set({ years: 2017 }) * @example dur.set({ hours: 8, minutes: 30 }) * @return {Duration} */ set(values) { if (!this.isValid) return this; const mixed = { ...this.values, ...normalizeObject(values, _Duration.normalizeUnit) }; return clone$1(this, { values: mixed }); } /** * "Set" the locale and/or numberingSystem. Returns a newly-constructed Duration. * @example dur.reconfigure({ locale: 'en-GB' }) * @return {Duration} */ reconfigure({ locale, numberingSystem, conversionAccuracy, matrix } = {}) { const loc = this.loc.clone({ locale, numberingSystem }); const opts = { loc, matrix, conversionAccuracy }; return clone$1(this, opts); } /** * Return the length of the duration in the specified unit. * @param {string} unit - a unit such as 'minutes' or 'days' * @example Duration.fromObject({years: 1}).as('days') //=> 365 * @example Duration.fromObject({years: 1}).as('months') //=> 12 * @example Duration.fromObject({hours: 60}).as('days') //=> 2.5 * @return {number} */ as(unit) { return this.isValid ? this.shiftTo(unit).get(unit) : NaN; } /** * Reduce this Duration to its canonical representation in its current units. * Assuming the overall value of the Duration is positive, this means: * - excessive values for lower-order units are converted to higher-order units (if possible, see first and second example) * - negative lower-order units are converted to higher order units (there must be such a higher order unit, otherwise * the overall value would be negative, see third example) * - fractional values for higher-order units are converted to lower-order units (if possible, see fourth example) * * If the overall value is negative, the result of this method is equivalent to `this.negate().normalize().negate()`. * @example Duration.fromObject({ years: 2, days: 5000 }).normalize().toObject() //=> { years: 15, days: 255 } * @example Duration.fromObject({ days: 5000 }).normalize().toObject() //=> { days: 5000 } * @example Duration.fromObject({ hours: 12, minutes: -45 }).normalize().toObject() //=> { hours: 11, minutes: 15 } * @example Duration.fromObject({ years: 2.5, days: 0, hours: 0 }).normalize().toObject() //=> { years: 2, days: 182, hours: 12 } * @return {Duration} */ normalize() { if (!this.isValid) return this; const vals = this.toObject(); normalizeValues(this.matrix, vals); return clone$1(this, { values: vals }, true); } /** * Rescale units to its largest representation * @example Duration.fromObject({ milliseconds: 90000 }).rescale().toObject() //=> { minutes: 1, seconds: 30 } * @return {Duration} */ rescale() { if (!this.isValid) return this; const vals = removeZeroes(this.normalize().shiftToAll().toObject()); return clone$1(this, { values: vals }, true); } /** * Convert this Duration into its representation in a different set of units. * @example Duration.fromObject({ hours: 1, seconds: 30 }).shiftTo('minutes', 'milliseconds').toObject() //=> { minutes: 60, milliseconds: 30000 } * @return {Duration} */ shiftTo(...units) { if (!this.isValid) return this; if (units.length === 0) { return this; } units = units.map((u) => _Duration.normalizeUnit(u)); const built = {}, accumulated = {}, vals = this.toObject(); let lastUnit; for (const k of orderedUnits$1) { if (units.indexOf(k) >= 0) { lastUnit = k; let own = 0; for (const ak in accumulated) { own += this.matrix[ak][k] * accumulated[ak]; accumulated[ak] = 0; } if (isNumber(vals[k])) { own += vals[k]; } const i = Math.trunc(own); built[k] = i; accumulated[k] = (own * 1e3 - i * 1e3) / 1e3; } else if (isNumber(vals[k])) { accumulated[k] = vals[k]; } } for (const key in accumulated) { if (accumulated[key] !== 0) { built[lastUnit] += key === lastUnit ? accumulated[key] : accumulated[key] / this.matrix[lastUnit][key]; } } normalizeValues(this.matrix, built); return clone$1(this, { values: built }, true); } /** * Shift this Duration to all available units. * Same as shiftTo("years", "months", "weeks", "days", "hours", "minutes", "seconds", "milliseconds") * @return {Duration} */ shiftToAll() { if (!this.isValid) return this; return this.shiftTo("years", "months", "weeks", "days", "hours", "minutes", "seconds", "milliseconds"); } /** * Return the negative of this Duration. * @example Duration.fromObject({ hours: 1, seconds: 30 }).negate().toObject() //=> { hours: -1, seconds: -30 } * @return {Duration} */ negate() { if (!this.isValid) return this; const negated = {}; for (const k of Object.keys(this.values)) { negated[k] = this.values[k] === 0 ? 0 : -this.values[k]; } return clone$1(this, { values: negated }, true); } /** * Removes all units with values equal to 0 from this Duration. * @example Duration.fromObject({ years: 2, days: 0, hours: 0, minutes: 0 }).removeZeros().toObject() //=> { years: 2 } * @return {Duration} */ removeZeros() { if (!this.isValid) return this; const vals = removeZeroes(this.values); return clone$1(this, { values: vals }, true); } /** * Get the years. * @type {number} */ get years() { return this.isValid ? this.values.years || 0 : NaN; } /** * Get the quarters. * @type {number} */ get quarters() { return this.isValid ? this.values.quarters || 0 : NaN; } /** * Get the months. * @type {number} */ get months() { return this.isValid ? this.values.months || 0 : NaN; } /** * Get the weeks * @type {number} */ get weeks() { return this.isValid ? this.values.weeks || 0 : NaN; } /** * Get the days. * @type {number} */ get days() { return this.isValid ? this.values.days || 0 : NaN; } /** * Get the hours. * @type {number} */ get hours() { return this.isValid ? this.values.hours || 0 : NaN; } /** * Get the minutes. * @type {number} */ get minutes() { return this.isValid ? this.values.minutes || 0 : NaN; } /** * Get the seconds. * @return {number} */ get seconds() { return this.isValid ? this.values.seconds || 0 : NaN; } /** * Get the milliseconds. * @return {number} */ get milliseconds() { return this.isValid ? this.values.milliseconds || 0 : NaN; } /** * Returns whether the Duration is invalid. Invalid durations are returned by diff operations * on invalid DateTimes or Intervals. * @return {boolean} */ get isValid() { return this.invalid === null; } /** * Returns an error code if this Duration became invalid, or null if the Duration is valid * @return {string} */ get invalidReason() { return this.invalid ? this.invalid.reason : null; } /** * Returns an explanation of why this Duration became invalid, or null if the Duration is valid * @type {string} */ get invalidExplanation() { return this.invalid ? this.invalid.explanation : null; } /** * Equality check * Two Durations are equal iff they have the same units and the same values for each unit. * @param {Duration} other * @return {boolean} */ equals(other) { if (!this.isValid || !other.isValid) { return false; } if (!this.loc.equals(other.loc)) { return false; } function eq(v12, v2) { if (v12 === void 0 || v12 === 0) return v2 === void 0 || v2 === 0; return v12 === v2; } __name(eq, "eq"); for (const u of orderedUnits$1) { if (!eq(this.values[u], other.values[u])) { return false; } } return true; } }; var INVALID$1 = "Invalid Interval"; function validateStartEnd(start, end) { if (!start || !start.isValid) { return Interval.invalid("missing or invalid start"); } else if (!end || !end.isValid) { return Interval.invalid("missing or invalid end"); } else if (end < start) { return Interval.invalid("end before start", `The end of an interval must be after its start, but you had start=${start.toISO()} and end=${end.toISO()}`); } else { return null; } } __name(validateStartEnd, "validateStartEnd"); var Interval = class _Interval { static { __name(this, "Interval"); } /** * @private */ constructor(config) { this.s = config.start; this.e = config.end; this.invalid = config.invalid || null; this.isLuxonInterval = true; } /** * Create an invalid Interval. * @param {string} reason - simple string of why this Interval is invalid. Should not contain parameters or anything else data-dependent * @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information * @return {Interval} */ static invalid(reason, explanation = null) { if (!reason) { throw new InvalidArgumentError("need to specify a reason the Interval is invalid"); } const invalid = reason instanceof Invalid ? reason : new Invalid(reason, explanation); if (Settings.throwOnInvalid) { throw new InvalidIntervalError(invalid); } else { return new _Interval({ invalid }); } } /** * Create an Interval from a start DateTime and an end DateTime. Inclusive of the start but not the end. * @param {DateTime|Date|Object} start * @param {DateTime|Date|Object} end * @return {Interval} */ static fromDateTimes(start, end) { const builtStart = friendlyDateTime(start), builtEnd = friendlyDateTime(end); const validateError = validateStartEnd(builtStart, builtEnd); if (validateError == null) { return new _Interval({ start: builtStart, end: builtEnd }); } else { return validateError; } } /** * Create an Interval from a start DateTime and a Duration to extend to. * @param {DateTime|Date|Object} start * @param {Duration|Object|number} duration - the length of the Interval. * @return {Interval} */ static after(start, duration) { const dur = Duration.fromDurationLike(duration), dt = friendlyDateTime(start); return _Interval.fromDateTimes(dt, dt.plus(dur)); } /** * Create an Interval from an end DateTime and a Duration to extend backwards to. * @param {DateTime|Date|Object} end * @param {Duration|Object|number} duration - the length of the Interval. * @return {Interval} */ static before(end, duration) { const dur = Duration.fromDurationLike(duration), dt = friendlyDateTime(end); return _Interval.fromDateTimes(dt.minus(dur), dt); } /** * Create an Interval from an ISO 8601 string. * Accepts `/`, `/`, and `/` formats. * @param {string} text - the ISO string to parse * @param {Object} [opts] - options to pass {@link DateTime#fromISO} and optionally {@link Duration#fromISO} * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals * @return {Interval} */ static fromISO(text, opts) { const [s2, e] = (text || "").split("/", 2); if (s2 && e) { let start, startIsValid; try { start = DateTime.fromISO(s2, opts); startIsValid = start.isValid; } catch (e2) { startIsValid = false; } let end, endIsValid; try { end = DateTime.fromISO(e, opts); endIsValid = end.isValid; } catch (e2) { endIsValid = false; } if (startIsValid && endIsValid) { return _Interval.fromDateTimes(start, end); } if (startIsValid) { const dur = Duration.fromISO(e, opts); if (dur.isValid) { return _Interval.after(start, dur); } } else if (endIsValid) { const dur = Duration.fromISO(s2, opts); if (dur.isValid) { return _Interval.before(end, dur); } } } return _Interval.invalid("unparsable", `the input "${text}" can't be parsed as ISO 8601`); } /** * Check if an object is an Interval. Works across context boundaries * @param {object} o * @return {boolean} */ static isInterval(o) { return o && o.isLuxonInterval || false; } /** * Returns the start of the Interval * @type {DateTime} */ get start() { return this.isValid ? this.s : null; } /** * Returns the end of the Interval. This is the first instant which is not part of the interval * (Interval is half-open). * @type {DateTime} */ get end() { return this.isValid ? this.e : null; } /** * Returns the last DateTime included in the interval (since end is not part of the interval) * @type {DateTime} */ get lastDateTime() { return this.isValid ? this.e ? this.e.minus(1) : null : null; } /** * Returns whether this Interval's end is at least its start, meaning that the Interval isn't 'backwards'. * @type {boolean} */ get isValid() { return this.invalidReason === null; } /** * Returns an error code if this Interval is invalid, or null if the Interval is valid * @type {string} */ get invalidReason() { return this.invalid ? this.invalid.reason : null; } /** * Returns an explanation of why this Interval became invalid, or null if the Interval is valid * @type {string} */ get invalidExplanation() { return this.invalid ? this.invalid.explanation : null; } /** * Returns the length of the Interval in the specified unit. * @param {string} unit - the unit (such as 'hours' or 'days') to return the length in. * @return {number} */ length(unit = "milliseconds") { return this.isValid ? this.toDuration(...[unit]).get(unit) : NaN; } /** * Returns the count of minutes, hours, days, months, or years included in the Interval, even in part. * Unlike {@link Interval#length} this counts sections of the calendar, not periods of time, e.g. specifying 'day' * asks 'what dates are included in this interval?', not 'how many days long is this interval?' * @param {string} [unit='milliseconds'] - the unit of time to count. * @param {Object} opts - options * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week; this operation will always use the locale of the start DateTime * @return {number} */ count(unit = "milliseconds", opts) { if (!this.isValid) return NaN; const start = this.start.startOf(unit, opts); let end; if (opts != null && opts.useLocaleWeeks) { end = this.end.reconfigure({ locale: start.locale }); } else { end = this.end; } end = end.startOf(unit, opts); return Math.floor(end.diff(start, unit).get(unit)) + (end.valueOf() !== this.end.valueOf()); } /** * Returns whether this Interval's start and end are both in the same unit of time * @param {string} unit - the unit of time to check sameness on * @return {boolean} */ hasSame(unit) { return this.isValid ? this.isEmpty() || this.e.minus(1).hasSame(this.s, unit) : false; } /** * Return whether this Interval has the same start and end DateTimes. * @return {boolean} */ isEmpty() { return this.s.valueOf() === this.e.valueOf(); } /** * Return whether this Interval's start is after the specified DateTime. * @param {DateTime} dateTime * @return {boolean} */ isAfter(dateTime) { if (!this.isValid) return false; return this.s > dateTime; } /** * Return whether this Interval's end is before the specified DateTime. * @param {DateTime} dateTime * @return {boolean} */ isBefore(dateTime) { if (!this.isValid) return false; return this.e <= dateTime; } /** * Return whether this Interval contains the specified DateTime. * @param {DateTime} dateTime * @return {boolean} */ contains(dateTime) { if (!this.isValid) return false; return this.s <= dateTime && this.e > dateTime; } /** * "Sets" the start and/or end dates. Returns a newly-constructed Interval. * @param {Object} values - the values to set * @param {DateTime} values.start - the starting DateTime * @param {DateTime} values.end - the ending DateTime * @return {Interval} */ set({ start, end } = {}) { if (!this.isValid) return this; return _Interval.fromDateTimes(start || this.s, end || this.e); } /** * Split this Interval at each of the specified DateTimes * @param {...DateTime} dateTimes - the unit of time to count. * @return {Array} */ splitAt(...dateTimes) { if (!this.isValid) return []; const sorted = dateTimes.map(friendlyDateTime).filter((d) => this.contains(d)).sort((a, b) => a.toMillis() - b.toMillis()), results = []; let { s: s2 } = this, i = 0; while (s2 < this.e) { const added = sorted[i] || this.e, next = +added > +this.e ? this.e : added; results.push(_Interval.fromDateTimes(s2, next)); s2 = next; i += 1; } return results; } /** * Split this Interval into smaller Intervals, each of the specified length. * Left over time is grouped into a smaller interval * @param {Duration|Object|number} duration - The length of each resulting interval. * @return {Array} */ splitBy(duration) { const dur = Duration.fromDurationLike(duration); if (!this.isValid || !dur.isValid || dur.as("milliseconds") === 0) { return []; } let { s: s2 } = this, idx = 1, next; const results = []; while (s2 < this.e) { const added = this.start.plus(dur.mapUnits((x) => x * idx)); next = +added > +this.e ? this.e : added; results.push(_Interval.fromDateTimes(s2, next)); s2 = next; idx += 1; } return results; } /** * Split this Interval into the specified number of smaller intervals. * @param {number} numberOfParts - The number of Intervals to divide the Interval into. * @return {Array} */ divideEqually(numberOfParts) { if (!this.isValid) return []; return this.splitBy(this.length() / numberOfParts).slice(0, numberOfParts); } /** * Return whether this Interval overlaps with the specified Interval * @param {Interval} other * @return {boolean} */ overlaps(other) { return this.e > other.s && this.s < other.e; } /** * Return whether this Interval's end is adjacent to the specified Interval's start. * @param {Interval} other * @return {boolean} */ abutsStart(other) { if (!this.isValid) return false; return +this.e === +other.s; } /** * Return whether this Interval's start is adjacent to the specified Interval's end. * @param {Interval} other * @return {boolean} */ abutsEnd(other) { if (!this.isValid) return false; return +other.e === +this.s; } /** * Returns true if this Interval fully contains the specified Interval, specifically if the intersect (of this Interval and the other Interval) is equal to the other Interval; false otherwise. * @param {Interval} other * @return {boolean} */ engulfs(other) { if (!this.isValid) return false; return this.s <= other.s && this.e >= other.e; } /** * Return whether this Interval has the same start and end as the specified Interval. * @param {Interval} other * @return {boolean} */ equals(other) { if (!this.isValid || !other.isValid) { return false; } return this.s.equals(other.s) && this.e.equals(other.e); } /** * Return an Interval representing the intersection of this Interval and the specified Interval. * Specifically, the resulting Interval has the maximum start time and the minimum end time of the two Intervals. * Returns null if the intersection is empty, meaning, the intervals don't intersect. * @param {Interval} other * @return {Interval} */ intersection(other) { if (!this.isValid) return this; const s2 = this.s > other.s ? this.s : other.s, e = this.e < other.e ? this.e : other.e; if (s2 >= e) { return null; } else { return _Interval.fromDateTimes(s2, e); } } /** * Return an Interval representing the union of this Interval and the specified Interval. * Specifically, the resulting Interval has the minimum start time and the maximum end time of the two Intervals. * @param {Interval} other * @return {Interval} */ union(other) { if (!this.isValid) return this; const s2 = this.s < other.s ? this.s : other.s, e = this.e > other.e ? this.e : other.e; return _Interval.fromDateTimes(s2, e); } /** * Merge an array of Intervals into an equivalent minimal set of Intervals. * Combines overlapping and adjacent Intervals. * The resulting array will contain the Intervals in ascending order, that is, starting with the earliest Interval * and ending with the latest. * * @param {Array} intervals * @return {Array} */ static merge(intervals) { const [found, final] = intervals.sort((a, b) => a.s - b.s).reduce(([sofar, current], item) => { if (!current) { return [sofar, item]; } else if (current.overlaps(item) || current.abutsStart(item)) { return [sofar, current.union(item)]; } else { return [sofar.concat([current]), item]; } }, [[], null]); if (final) { found.push(final); } return found; } /** * Return an array of Intervals representing the spans of time that only appear in one of the specified Intervals. * @param {Array} intervals * @return {Array} */ static xor(intervals) { let start = null, currentCount = 0; const results = [], ends = intervals.map((i) => [{ time: i.s, type: "s" }, { time: i.e, type: "e" }]), flattened = Array.prototype.concat(...ends), arr = flattened.sort((a, b) => a.time - b.time); for (const i of arr) { currentCount += i.type === "s" ? 1 : -1; if (currentCount === 1) { start = i.time; } else { if (start && +start !== +i.time) { results.push(_Interval.fromDateTimes(start, i.time)); } start = null; } } return _Interval.merge(results); } /** * Return an Interval representing the span of time in this Interval that doesn't overlap with any of the specified Intervals. * @param {...Interval} intervals * @return {Array} */ difference(...intervals) { return _Interval.xor([this].concat(intervals)).map((i) => this.intersection(i)).filter((i) => i && !i.isEmpty()); } /** * Returns a string representation of this Interval appropriate for debugging. * @return {string} */ toString() { if (!this.isValid) return INVALID$1; return `[${this.s.toISO()} \u2013 ${this.e.toISO()})`; } /** * Returns a string representation of this Interval appropriate for the REPL. * @return {string} */ [Symbol.for("nodejs.util.inspect.custom")]() { if (this.isValid) { return `Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`; } else { return `Interval { Invalid, reason: ${this.invalidReason} }`; } } /** * Returns a localized string representing this Interval. Accepts the same options as the * Intl.DateTimeFormat constructor and any presets defined by Luxon, such as * {@link DateTime.DATE_FULL} or {@link DateTime.TIME_SIMPLE}. The exact behavior of this method * is browser-specific, but in general it will return an appropriate representation of the * Interval in the assigned locale. Defaults to the system's locale if no locale has been * specified. * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat * @param {Object} [formatOpts=DateTime.DATE_SHORT] - Either a DateTime preset or * Intl.DateTimeFormat constructor options. * @param {Object} opts - Options to override the configuration of the start DateTime. * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(); //=> 11/7/2022 – 11/8/2022 * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(DateTime.DATE_FULL); //=> November 7 – 8, 2022 * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(DateTime.DATE_FULL, { locale: 'fr-FR' }); //=> 7–8 novembre 2022 * @example Interval.fromISO('2022-11-07T17:00Z/2022-11-07T19:00Z').toLocaleString(DateTime.TIME_SIMPLE); //=> 6:00 – 8:00 PM * @example Interval.fromISO('2022-11-07T17:00Z/2022-11-07T19:00Z').toLocaleString({ weekday: 'short', month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' }); //=> Mon, Nov 07, 6:00 – 8:00 p * @return {string} */ toLocaleString(formatOpts = DATE_SHORT, opts = {}) { return this.isValid ? Formatter.create(this.s.loc.clone(opts), formatOpts).formatInterval(this) : INVALID$1; } /** * Returns an ISO 8601-compliant string representation of this Interval. * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals * @param {Object} opts - The same options as {@link DateTime#toISO} * @return {string} */ toISO(opts) { if (!this.isValid) return INVALID$1; return `${this.s.toISO(opts)}/${this.e.toISO(opts)}`; } /** * Returns an ISO 8601-compliant string representation of date of this Interval. * The time components are ignored. * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals * @return {string} */ toISODate() { if (!this.isValid) return INVALID$1; return `${this.s.toISODate()}/${this.e.toISODate()}`; } /** * Returns an ISO 8601-compliant string representation of time of this Interval. * The date components are ignored. * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals * @param {Object} opts - The same options as {@link DateTime#toISO} * @return {string} */ toISOTime(opts) { if (!this.isValid) return INVALID$1; return `${this.s.toISOTime(opts)}/${this.e.toISOTime(opts)}`; } /** * Returns a string representation of this Interval formatted according to the specified format * string. **You may not want this.** See {@link Interval#toLocaleString} for a more flexible * formatting tool. * @param {string} dateFormat - The format string. This string formats the start and end time. * See {@link DateTime#toFormat} for details. * @param {Object} opts - Options. * @param {string} [opts.separator = ' – '] - A separator to place between the start and end * representations. * @return {string} */ toFormat(dateFormat, { separator = " \u2013 " } = {}) { if (!this.isValid) return INVALID$1; return `${this.s.toFormat(dateFormat)}${separator}${this.e.toFormat(dateFormat)}`; } /** * Return a Duration representing the time spanned by this interval. * @param {string|string[]} [unit=['milliseconds']] - the unit or units (such as 'hours' or 'days') to include in the duration. * @param {Object} opts - options that affect the creation of the Duration * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use * @example Interval.fromDateTimes(dt1, dt2).toDuration().toObject() //=> { milliseconds: 88489257 } * @example Interval.fromDateTimes(dt1, dt2).toDuration('days').toObject() //=> { days: 1.0241812152777778 } * @example Interval.fromDateTimes(dt1, dt2).toDuration(['hours', 'minutes']).toObject() //=> { hours: 24, minutes: 34.82095 } * @example Interval.fromDateTimes(dt1, dt2).toDuration(['hours', 'minutes', 'seconds']).toObject() //=> { hours: 24, minutes: 34, seconds: 49.257 } * @example Interval.fromDateTimes(dt1, dt2).toDuration('seconds').toObject() //=> { seconds: 88489.257 } * @return {Duration} */ toDuration(unit, opts) { if (!this.isValid) { return Duration.invalid(this.invalidReason); } return this.e.diff(this.s, unit, opts); } /** * Run mapFn on the interval start and end, returning a new Interval from the resulting DateTimes * @param {function} mapFn * @return {Interval} * @example Interval.fromDateTimes(dt1, dt2).mapEndpoints(endpoint => endpoint.toUTC()) * @example Interval.fromDateTimes(dt1, dt2).mapEndpoints(endpoint => endpoint.plus({ hours: 2 })) */ mapEndpoints(mapFn) { return _Interval.fromDateTimes(mapFn(this.s), mapFn(this.e)); } }; var Info = class { static { __name(this, "Info"); } /** * Return whether the specified zone contains a DST. * @param {string|Zone} [zone='local'] - Zone to check. Defaults to the environment's local zone. * @return {boolean} */ static hasDST(zone = Settings.defaultZone) { const proto = DateTime.now().setZone(zone).set({ month: 12 }); return !zone.isUniversal && proto.offset !== proto.set({ month: 6 }).offset; } /** * Return whether the specified zone is a valid IANA specifier. * @param {string} zone - Zone to check * @return {boolean} */ static isValidIANAZone(zone) { return IANAZone.isValidZone(zone); } /** * Converts the input into a {@link Zone} instance. * * * If `input` is already a Zone instance, it is returned unchanged. * * If `input` is a string containing a valid time zone name, a Zone instance * with that name is returned. * * If `input` is a string that doesn't refer to a known time zone, a Zone * instance with {@link Zone#isValid} == false is returned. * * If `input is a number, a Zone instance with the specified fixed offset * in minutes is returned. * * If `input` is `null` or `undefined`, the default zone is returned. * @param {string|Zone|number} [input] - the value to be converted * @return {Zone} */ static normalizeZone(input) { return normalizeZone(input, Settings.defaultZone); } /** * Get the weekday on which the week starts according to the given locale. * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.locObj=null] - an existing locale object to use * @returns {number} the start of the week, 1 for Monday through 7 for Sunday */ static getStartOfWeek({ locale = null, locObj = null } = {}) { return (locObj || Locale.create(locale)).getStartOfWeek(); } /** * Get the minimum number of days necessary in a week before it is considered part of the next year according * to the given locale. * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.locObj=null] - an existing locale object to use * @returns {number} */ static getMinimumDaysInFirstWeek({ locale = null, locObj = null } = {}) { return (locObj || Locale.create(locale)).getMinDaysInFirstWeek(); } /** * Get the weekdays, which are considered the weekend according to the given locale * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.locObj=null] - an existing locale object to use * @returns {number[]} an array of weekdays, 1 for Monday through 7 for Sunday */ static getWeekendWeekdays({ locale = null, locObj = null } = {}) { return (locObj || Locale.create(locale)).getWeekendDays().slice(); } /** * Return an array of standalone month names. * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat * @param {string} [length='long'] - the length of the month representation, such as "numeric", "2-digit", "narrow", "short", "long" * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.numberingSystem=null] - the numbering system * @param {string} [opts.locObj=null] - an existing locale object to use * @param {string} [opts.outputCalendar='gregory'] - the calendar * @example Info.months()[0] //=> 'January' * @example Info.months('short')[0] //=> 'Jan' * @example Info.months('numeric')[0] //=> '1' * @example Info.months('short', { locale: 'fr-CA' } )[0] //=> 'janv.' * @example Info.months('numeric', { locale: 'ar' })[0] //=> '١' * @example Info.months('long', { outputCalendar: 'islamic' })[0] //=> 'Rabiʻ I' * @return {Array} */ static months(length = "long", { locale = null, numberingSystem = null, locObj = null, outputCalendar = "gregory" } = {}) { return (locObj || Locale.create(locale, numberingSystem, outputCalendar)).months(length); } /** * Return an array of format month names. * Format months differ from standalone months in that they're meant to appear next to the day of the month. In some languages, that * changes the string. * See {@link Info#months} * @param {string} [length='long'] - the length of the month representation, such as "numeric", "2-digit", "narrow", "short", "long" * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.numberingSystem=null] - the numbering system * @param {string} [opts.locObj=null] - an existing locale object to use * @param {string} [opts.outputCalendar='gregory'] - the calendar * @return {Array} */ static monthsFormat(length = "long", { locale = null, numberingSystem = null, locObj = null, outputCalendar = "gregory" } = {}) { return (locObj || Locale.create(locale, numberingSystem, outputCalendar)).months(length, true); } /** * Return an array of standalone week names. * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat * @param {string} [length='long'] - the length of the weekday representation, such as "narrow", "short", "long". * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.numberingSystem=null] - the numbering system * @param {string} [opts.locObj=null] - an existing locale object to use * @example Info.weekdays()[0] //=> 'Monday' * @example Info.weekdays('short')[0] //=> 'Mon' * @example Info.weekdays('short', { locale: 'fr-CA' })[0] //=> 'lun.' * @example Info.weekdays('short', { locale: 'ar' })[0] //=> 'الاثنين' * @return {Array} */ static weekdays(length = "long", { locale = null, numberingSystem = null, locObj = null } = {}) { return (locObj || Locale.create(locale, numberingSystem, null)).weekdays(length); } /** * Return an array of format week names. * Format weekdays differ from standalone weekdays in that they're meant to appear next to more date information. In some languages, that * changes the string. * See {@link Info#weekdays} * @param {string} [length='long'] - the length of the month representation, such as "narrow", "short", "long". * @param {Object} opts - options * @param {string} [opts.locale=null] - the locale code * @param {string} [opts.numberingSystem=null] - the numbering system * @param {string} [opts.locObj=null] - an existing locale object to use * @return {Array} */ static weekdaysFormat(length = "long", { locale = null, numberingSystem = null, locObj = null } = {}) { return (locObj || Locale.create(locale, numberingSystem, null)).weekdays(length, true); } /** * Return an array of meridiems. * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @example Info.meridiems() //=> [ 'AM', 'PM' ] * @example Info.meridiems({ locale: 'my' }) //=> [ 'နံနက်', 'ညနေ' ] * @return {Array} */ static meridiems({ locale = null } = {}) { return Locale.create(locale).meridiems(); } /** * Return an array of eras, such as ['BC', 'AD']. The locale can be specified, but the calendar system is always Gregorian. * @param {string} [length='short'] - the length of the era representation, such as "short" or "long". * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @example Info.eras() //=> [ 'BC', 'AD' ] * @example Info.eras('long') //=> [ 'Before Christ', 'Anno Domini' ] * @example Info.eras('long', { locale: 'fr' }) //=> [ 'avant Jésus-Christ', 'après Jésus-Christ' ] * @return {Array} */ static eras(length = "short", { locale = null } = {}) { return Locale.create(locale, null, "gregory").eras(length); } /** * Return the set of available features in this environment. * Some features of Luxon are not available in all environments. For example, on older browsers, relative time formatting support is not available. Use this function to figure out if that's the case. * Keys: * * `relative`: whether this environment supports relative time formatting * * `localeWeek`: whether this environment supports different weekdays for the start of the week based on the locale * @example Info.features() //=> { relative: false, localeWeek: true } * @return {Object} */ static features() { return { relative: hasRelative(), localeWeek: hasLocaleWeekInfo() }; } }; function dayDiff(earlier, later) { const utcDayStart = /* @__PURE__ */ __name((dt) => dt.toUTC(0, { keepLocalTime: true }).startOf("day").valueOf(), "utcDayStart"), ms = utcDayStart(later) - utcDayStart(earlier); return Math.floor(Duration.fromMillis(ms).as("days")); } __name(dayDiff, "dayDiff"); function highOrderDiffs(cursor, later, units) { const differs = [["years", (a, b) => b.year - a.year], ["quarters", (a, b) => b.quarter - a.quarter + (b.year - a.year) * 4], ["months", (a, b) => b.month - a.month + (b.year - a.year) * 12], ["weeks", (a, b) => { const days = dayDiff(a, b); return (days - days % 7) / 7; }], ["days", dayDiff]]; const results = {}; const earlier = cursor; let lowestOrder, highWater; for (const [unit, differ] of differs) { if (units.indexOf(unit) >= 0) { lowestOrder = unit; results[unit] = differ(cursor, later); highWater = earlier.plus(results); if (highWater > later) { results[unit]--; cursor = earlier.plus(results); if (cursor > later) { highWater = cursor; results[unit]--; cursor = earlier.plus(results); } } else { cursor = highWater; } } } return [cursor, results, highWater, lowestOrder]; } __name(highOrderDiffs, "highOrderDiffs"); function diff(earlier, later, units, opts) { let [cursor, results, highWater, lowestOrder] = highOrderDiffs(earlier, later, units); const remainingMillis = later - cursor; const lowerOrderUnits = units.filter((u) => ["hours", "minutes", "seconds", "milliseconds"].indexOf(u) >= 0); if (lowerOrderUnits.length === 0) { if (highWater < later) { highWater = cursor.plus({ [lowestOrder]: 1 }); } if (highWater !== cursor) { results[lowestOrder] = (results[lowestOrder] || 0) + remainingMillis / (highWater - cursor); } } const duration = Duration.fromObject(results, opts); if (lowerOrderUnits.length > 0) { return Duration.fromMillis(remainingMillis, opts).shiftTo(...lowerOrderUnits).plus(duration); } else { return duration; } } __name(diff, "diff"); var MISSING_FTP = "missing Intl.DateTimeFormat.formatToParts support"; function intUnit(regex, post = (i) => i) { return { regex, deser: /* @__PURE__ */ __name(([s2]) => post(parseDigits(s2)), "deser") }; } __name(intUnit, "intUnit"); var NBSP = String.fromCharCode(160); var spaceOrNBSP = `[ ${NBSP}]`; var spaceOrNBSPRegExp = new RegExp(spaceOrNBSP, "g"); function fixListRegex(s2) { return s2.replace(/\./g, "\\.?").replace(spaceOrNBSPRegExp, spaceOrNBSP); } __name(fixListRegex, "fixListRegex"); function stripInsensitivities(s2) { return s2.replace(/\./g, "").replace(spaceOrNBSPRegExp, " ").toLowerCase(); } __name(stripInsensitivities, "stripInsensitivities"); function oneOf(strings, startIndex) { if (strings === null) { return null; } else { return { regex: RegExp(strings.map(fixListRegex).join("|")), deser: /* @__PURE__ */ __name(([s2]) => strings.findIndex((i) => stripInsensitivities(s2) === stripInsensitivities(i)) + startIndex, "deser") }; } } __name(oneOf, "oneOf"); function offset(regex, groups) { return { regex, deser: /* @__PURE__ */ __name(([, h, m]) => signedOffset(h, m), "deser"), groups }; } __name(offset, "offset"); function simple(regex) { return { regex, deser: /* @__PURE__ */ __name(([s2]) => s2, "deser") }; } __name(simple, "simple"); function escapeToken(value) { return value.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$&"); } __name(escapeToken, "escapeToken"); function unitForToken(token, loc) { const one = digitRegex(loc), two = digitRegex(loc, "{2}"), three = digitRegex(loc, "{3}"), four = digitRegex(loc, "{4}"), six = digitRegex(loc, "{6}"), oneOrTwo = digitRegex(loc, "{1,2}"), oneToThree = digitRegex(loc, "{1,3}"), oneToSix = digitRegex(loc, "{1,6}"), oneToNine = digitRegex(loc, "{1,9}"), twoToFour = digitRegex(loc, "{2,4}"), fourToSix = digitRegex(loc, "{4,6}"), literal = /* @__PURE__ */ __name((t) => ({ regex: RegExp(escapeToken(t.val)), deser: /* @__PURE__ */ __name(([s2]) => s2, "deser"), literal: true }), "literal"), unitate = /* @__PURE__ */ __name((t) => { if (token.literal) { return literal(t); } switch (t.val) { // era case "G": return oneOf(loc.eras("short"), 0); case "GG": return oneOf(loc.eras("long"), 0); // years case "y": return intUnit(oneToSix); case "yy": return intUnit(twoToFour, untruncateYear); case "yyyy": return intUnit(four); case "yyyyy": return intUnit(fourToSix); case "yyyyyy": return intUnit(six); // months case "M": return intUnit(oneOrTwo); case "MM": return intUnit(two); case "MMM": return oneOf(loc.months("short", true), 1); case "MMMM": return oneOf(loc.months("long", true), 1); case "L": return intUnit(oneOrTwo); case "LL": return intUnit(two); case "LLL": return oneOf(loc.months("short", false), 1); case "LLLL": return oneOf(loc.months("long", false), 1); // dates case "d": return intUnit(oneOrTwo); case "dd": return intUnit(two); // ordinals case "o": return intUnit(oneToThree); case "ooo": return intUnit(three); // time case "HH": return intUnit(two); case "H": return intUnit(oneOrTwo); case "hh": return intUnit(two); case "h": return intUnit(oneOrTwo); case "mm": return intUnit(two); case "m": return intUnit(oneOrTwo); case "q": return intUnit(oneOrTwo); case "qq": return intUnit(two); case "s": return intUnit(oneOrTwo); case "ss": return intUnit(two); case "S": return intUnit(oneToThree); case "SSS": return intUnit(three); case "u": return simple(oneToNine); case "uu": return simple(oneOrTwo); case "uuu": return intUnit(one); // meridiem case "a": return oneOf(loc.meridiems(), 0); // weekYear (k) case "kkkk": return intUnit(four); case "kk": return intUnit(twoToFour, untruncateYear); // weekNumber (W) case "W": return intUnit(oneOrTwo); case "WW": return intUnit(two); // weekdays case "E": case "c": return intUnit(one); case "EEE": return oneOf(loc.weekdays("short", false), 1); case "EEEE": return oneOf(loc.weekdays("long", false), 1); case "ccc": return oneOf(loc.weekdays("short", true), 1); case "cccc": return oneOf(loc.weekdays("long", true), 1); // offset/zone case "Z": case "ZZ": return offset(new RegExp(`([+-]${oneOrTwo.source})(?::(${two.source}))?`), 2); case "ZZZ": return offset(new RegExp(`([+-]${oneOrTwo.source})(${two.source})?`), 2); // we don't support ZZZZ (PST) or ZZZZZ (Pacific Standard Time) in parsing // because we don't have any way to figure out what they are case "z": return simple(/[a-z_+-/]{1,256}?/i); // this special-case "token" represents a place where a macro-token expanded into a white-space literal // in this case we accept any non-newline white-space case " ": return simple(/[^\S\n\r]/); default: return literal(t); } }, "unitate"); const unit = unitate(token) || { invalidReason: MISSING_FTP }; unit.token = token; return unit; } __name(unitForToken, "unitForToken"); var partTypeStyleToTokenVal = { year: { "2-digit": "yy", numeric: "yyyyy" }, month: { numeric: "M", "2-digit": "MM", short: "MMM", long: "MMMM" }, day: { numeric: "d", "2-digit": "dd" }, weekday: { short: "EEE", long: "EEEE" }, dayperiod: "a", dayPeriod: "a", hour12: { numeric: "h", "2-digit": "hh" }, hour24: { numeric: "H", "2-digit": "HH" }, minute: { numeric: "m", "2-digit": "mm" }, second: { numeric: "s", "2-digit": "ss" }, timeZoneName: { long: "ZZZZZ", short: "ZZZ" } }; function tokenForPart(part, formatOpts, resolvedOpts) { const { type, value } = part; if (type === "literal") { const isSpace = /^\s+$/.test(value); return { literal: !isSpace, val: isSpace ? " " : value }; } const style = formatOpts[type]; let actualType = type; if (type === "hour") { if (formatOpts.hour12 != null) { actualType = formatOpts.hour12 ? "hour12" : "hour24"; } else if (formatOpts.hourCycle != null) { if (formatOpts.hourCycle === "h11" || formatOpts.hourCycle === "h12") { actualType = "hour12"; } else { actualType = "hour24"; } } else { actualType = resolvedOpts.hour12 ? "hour12" : "hour24"; } } let val = partTypeStyleToTokenVal[actualType]; if (typeof val === "object") { val = val[style]; } if (val) { return { literal: false, val }; } return void 0; } __name(tokenForPart, "tokenForPart"); function buildRegex(units) { const re = units.map((u) => u.regex).reduce((f, r) => `${f}(${r.source})`, ""); return [`^${re}$`, units]; } __name(buildRegex, "buildRegex"); function match(input, regex, handlers) { const matches = input.match(regex); if (matches) { const all = {}; let matchIndex = 1; for (const i in handlers) { if (hasOwnProperty(handlers, i)) { const h = handlers[i], groups = h.groups ? h.groups + 1 : 1; if (!h.literal && h.token) { all[h.token.val[0]] = h.deser(matches.slice(matchIndex, matchIndex + groups)); } matchIndex += groups; } } return [matches, all]; } else { return [matches, {}]; } } __name(match, "match"); function dateTimeFromMatches(matches) { const toField = /* @__PURE__ */ __name((token) => { switch (token) { case "S": return "millisecond"; case "s": return "second"; case "m": return "minute"; case "h": case "H": return "hour"; case "d": return "day"; case "o": return "ordinal"; case "L": case "M": return "month"; case "y": return "year"; case "E": case "c": return "weekday"; case "W": return "weekNumber"; case "k": return "weekYear"; case "q": return "quarter"; default: return null; } }, "toField"); let zone = null; let specificOffset; if (!isUndefined(matches.z)) { zone = IANAZone.create(matches.z); } if (!isUndefined(matches.Z)) { if (!zone) { zone = new FixedOffsetZone(matches.Z); } specificOffset = matches.Z; } if (!isUndefined(matches.q)) { matches.M = (matches.q - 1) * 3 + 1; } if (!isUndefined(matches.h)) { if (matches.h < 12 && matches.a === 1) { matches.h += 12; } else if (matches.h === 12 && matches.a === 0) { matches.h = 0; } } if (matches.G === 0 && matches.y) { matches.y = -matches.y; } if (!isUndefined(matches.u)) { matches.S = parseMillis(matches.u); } const vals = Object.keys(matches).reduce((r, k) => { const f = toField(k); if (f) { r[f] = matches[k]; } return r; }, {}); return [vals, zone, specificOffset]; } __name(dateTimeFromMatches, "dateTimeFromMatches"); var dummyDateTimeCache = null; function getDummyDateTime() { if (!dummyDateTimeCache) { dummyDateTimeCache = DateTime.fromMillis(1555555555555); } return dummyDateTimeCache; } __name(getDummyDateTime, "getDummyDateTime"); function maybeExpandMacroToken(token, locale) { if (token.literal) { return token; } const formatOpts = Formatter.macroTokenToFormatOpts(token.val); const tokens = formatOptsToTokens(formatOpts, locale); if (tokens == null || tokens.includes(void 0)) { return token; } return tokens; } __name(maybeExpandMacroToken, "maybeExpandMacroToken"); function expandMacroTokens(tokens, locale) { return Array.prototype.concat(...tokens.map((t) => maybeExpandMacroToken(t, locale))); } __name(expandMacroTokens, "expandMacroTokens"); var TokenParser = class { static { __name(this, "TokenParser"); } constructor(locale, format) { this.locale = locale; this.format = format; this.tokens = expandMacroTokens(Formatter.parseFormat(format), locale); this.units = this.tokens.map((t) => unitForToken(t, locale)); this.disqualifyingUnit = this.units.find((t) => t.invalidReason); if (!this.disqualifyingUnit) { const [regexString, handlers] = buildRegex(this.units); this.regex = RegExp(regexString, "i"); this.handlers = handlers; } } explainFromTokens(input) { if (!this.isValid) { return { input, tokens: this.tokens, invalidReason: this.invalidReason }; } else { const [rawMatches, matches] = match(input, this.regex, this.handlers), [result, zone, specificOffset] = matches ? dateTimeFromMatches(matches) : [null, null, void 0]; if (hasOwnProperty(matches, "a") && hasOwnProperty(matches, "H")) { throw new ConflictingSpecificationError("Can't include meridiem when specifying 24-hour format"); } return { input, tokens: this.tokens, regex: this.regex, rawMatches, matches, result, zone, specificOffset }; } } get isValid() { return !this.disqualifyingUnit; } get invalidReason() { return this.disqualifyingUnit ? this.disqualifyingUnit.invalidReason : null; } }; function explainFromTokens(locale, input, format) { const parser = new TokenParser(locale, format); return parser.explainFromTokens(input); } __name(explainFromTokens, "explainFromTokens"); function parseFromTokens(locale, input, format) { const { result, zone, specificOffset, invalidReason } = explainFromTokens(locale, input, format); return [result, zone, specificOffset, invalidReason]; } __name(parseFromTokens, "parseFromTokens"); function formatOptsToTokens(formatOpts, locale) { if (!formatOpts) { return null; } const formatter = Formatter.create(locale, formatOpts); const df = formatter.dtFormatter(getDummyDateTime()); const parts = df.formatToParts(); const resolvedOpts = df.resolvedOptions(); return parts.map((p) => tokenForPart(p, formatOpts, resolvedOpts)); } __name(formatOptsToTokens, "formatOptsToTokens"); var INVALID = "Invalid DateTime"; var MAX_DATE = 864e13; function unsupportedZone(zone) { return new Invalid("unsupported zone", `the zone "${zone.name}" is not supported`); } __name(unsupportedZone, "unsupportedZone"); function possiblyCachedWeekData(dt) { if (dt.weekData === null) { dt.weekData = gregorianToWeek(dt.c); } return dt.weekData; } __name(possiblyCachedWeekData, "possiblyCachedWeekData"); function possiblyCachedLocalWeekData(dt) { if (dt.localWeekData === null) { dt.localWeekData = gregorianToWeek(dt.c, dt.loc.getMinDaysInFirstWeek(), dt.loc.getStartOfWeek()); } return dt.localWeekData; } __name(possiblyCachedLocalWeekData, "possiblyCachedLocalWeekData"); function clone(inst, alts) { const current = { ts: inst.ts, zone: inst.zone, c: inst.c, o: inst.o, loc: inst.loc, invalid: inst.invalid }; return new DateTime({ ...current, ...alts, old: current }); } __name(clone, "clone"); function fixOffset(localTS, o, tz) { let utcGuess = localTS - o * 60 * 1e3; const o2 = tz.offset(utcGuess); if (o === o2) { return [utcGuess, o]; } utcGuess -= (o2 - o) * 60 * 1e3; const o3 = tz.offset(utcGuess); if (o2 === o3) { return [utcGuess, o2]; } return [localTS - Math.min(o2, o3) * 60 * 1e3, Math.max(o2, o3)]; } __name(fixOffset, "fixOffset"); function tsToObj(ts, offset2) { ts += offset2 * 60 * 1e3; const d = new Date(ts); return { year: d.getUTCFullYear(), month: d.getUTCMonth() + 1, day: d.getUTCDate(), hour: d.getUTCHours(), minute: d.getUTCMinutes(), second: d.getUTCSeconds(), millisecond: d.getUTCMilliseconds() }; } __name(tsToObj, "tsToObj"); function objToTS(obj2, offset2, zone) { return fixOffset(objToLocalTS(obj2), offset2, zone); } __name(objToTS, "objToTS"); function adjustTime(inst, dur) { const oPre = inst.o, year = inst.c.year + Math.trunc(dur.years), month = inst.c.month + Math.trunc(dur.months) + Math.trunc(dur.quarters) * 3, c = { ...inst.c, year, month, day: Math.min(inst.c.day, daysInMonth(year, month)) + Math.trunc(dur.days) + Math.trunc(dur.weeks) * 7 }, millisToAdd = Duration.fromObject({ years: dur.years - Math.trunc(dur.years), quarters: dur.quarters - Math.trunc(dur.quarters), months: dur.months - Math.trunc(dur.months), weeks: dur.weeks - Math.trunc(dur.weeks), days: dur.days - Math.trunc(dur.days), hours: dur.hours, minutes: dur.minutes, seconds: dur.seconds, milliseconds: dur.milliseconds }).as("milliseconds"), localTS = objToLocalTS(c); let [ts, o] = fixOffset(localTS, oPre, inst.zone); if (millisToAdd !== 0) { ts += millisToAdd; o = inst.zone.offset(ts); } return { ts, o }; } __name(adjustTime, "adjustTime"); function parseDataToDateTime(parsed, parsedZone, opts, format, text, specificOffset) { const { setZone, zone } = opts; if (parsed && Object.keys(parsed).length !== 0 || parsedZone) { const interpretationZone = parsedZone || zone, inst = DateTime.fromObject(parsed, { ...opts, zone: interpretationZone, specificOffset }); return setZone ? inst : inst.setZone(zone); } else { return DateTime.invalid(new Invalid("unparsable", `the input "${text}" can't be parsed as ${format}`)); } } __name(parseDataToDateTime, "parseDataToDateTime"); function toTechFormat(dt, format, allowZ = true) { return dt.isValid ? Formatter.create(Locale.create("en-US"), { allowZ, forceSimple: true }).formatDateTimeFromString(dt, format) : null; } __name(toTechFormat, "toTechFormat"); function toISODate(o, extended, precision) { const longFormat = o.c.year > 9999 || o.c.year < 0; let c = ""; if (longFormat && o.c.year >= 0) c += "+"; c += padStart(o.c.year, longFormat ? 6 : 4); if (precision === "year") return c; if (extended) { c += "-"; c += padStart(o.c.month); if (precision === "month") return c; c += "-"; } else { c += padStart(o.c.month); if (precision === "month") return c; } c += padStart(o.c.day); return c; } __name(toISODate, "toISODate"); function toISOTime(o, extended, suppressSeconds, suppressMilliseconds, includeOffset, extendedZone, precision) { let showSeconds = !suppressSeconds || o.c.millisecond !== 0 || o.c.second !== 0, c = ""; switch (precision) { case "day": case "month": case "year": break; default: c += padStart(o.c.hour); if (precision === "hour") break; if (extended) { c += ":"; c += padStart(o.c.minute); if (precision === "minute") break; if (showSeconds) { c += ":"; c += padStart(o.c.second); } } else { c += padStart(o.c.minute); if (precision === "minute") break; if (showSeconds) { c += padStart(o.c.second); } } if (precision === "second") break; if (showSeconds && (!suppressMilliseconds || o.c.millisecond !== 0)) { c += "."; c += padStart(o.c.millisecond, 3); } } if (includeOffset) { if (o.isOffsetFixed && o.offset === 0 && !extendedZone) { c += "Z"; } else if (o.o < 0) { c += "-"; c += padStart(Math.trunc(-o.o / 60)); c += ":"; c += padStart(Math.trunc(-o.o % 60)); } else { c += "+"; c += padStart(Math.trunc(o.o / 60)); c += ":"; c += padStart(Math.trunc(o.o % 60)); } } if (extendedZone) { c += "[" + o.zone.ianaName + "]"; } return c; } __name(toISOTime, "toISOTime"); var defaultUnitValues = { month: 1, day: 1, hour: 0, minute: 0, second: 0, millisecond: 0 }; var defaultWeekUnitValues = { weekNumber: 1, weekday: 1, hour: 0, minute: 0, second: 0, millisecond: 0 }; var defaultOrdinalUnitValues = { ordinal: 1, hour: 0, minute: 0, second: 0, millisecond: 0 }; var orderedUnits = ["year", "month", "day", "hour", "minute", "second", "millisecond"]; var orderedWeekUnits = ["weekYear", "weekNumber", "weekday", "hour", "minute", "second", "millisecond"]; var orderedOrdinalUnits = ["year", "ordinal", "hour", "minute", "second", "millisecond"]; function normalizeUnit(unit) { const normalized = { year: "year", years: "year", month: "month", months: "month", day: "day", days: "day", hour: "hour", hours: "hour", minute: "minute", minutes: "minute", quarter: "quarter", quarters: "quarter", second: "second", seconds: "second", millisecond: "millisecond", milliseconds: "millisecond", weekday: "weekday", weekdays: "weekday", weeknumber: "weekNumber", weeksnumber: "weekNumber", weeknumbers: "weekNumber", weekyear: "weekYear", weekyears: "weekYear", ordinal: "ordinal" }[unit.toLowerCase()]; if (!normalized) throw new InvalidUnitError(unit); return normalized; } __name(normalizeUnit, "normalizeUnit"); function normalizeUnitWithLocalWeeks(unit) { switch (unit.toLowerCase()) { case "localweekday": case "localweekdays": return "localWeekday"; case "localweeknumber": case "localweeknumbers": return "localWeekNumber"; case "localweekyear": case "localweekyears": return "localWeekYear"; default: return normalizeUnit(unit); } } __name(normalizeUnitWithLocalWeeks, "normalizeUnitWithLocalWeeks"); function guessOffsetForZone(zone) { if (zoneOffsetTs === void 0) { zoneOffsetTs = Settings.now(); } if (zone.type !== "iana") { return zone.offset(zoneOffsetTs); } const zoneName = zone.name; let offsetGuess = zoneOffsetGuessCache.get(zoneName); if (offsetGuess === void 0) { offsetGuess = zone.offset(zoneOffsetTs); zoneOffsetGuessCache.set(zoneName, offsetGuess); } return offsetGuess; } __name(guessOffsetForZone, "guessOffsetForZone"); function quickDT(obj2, opts) { const zone = normalizeZone(opts.zone, Settings.defaultZone); if (!zone.isValid) { return DateTime.invalid(unsupportedZone(zone)); } const loc = Locale.fromObject(opts); let ts, o; if (!isUndefined(obj2.year)) { for (const u of orderedUnits) { if (isUndefined(obj2[u])) { obj2[u] = defaultUnitValues[u]; } } const invalid = hasInvalidGregorianData(obj2) || hasInvalidTimeData(obj2); if (invalid) { return DateTime.invalid(invalid); } const offsetProvis = guessOffsetForZone(zone); [ts, o] = objToTS(obj2, offsetProvis, zone); } else { ts = Settings.now(); } return new DateTime({ ts, zone, loc, o }); } __name(quickDT, "quickDT"); function diffRelative(start, end, opts) { const round = isUndefined(opts.round) ? true : opts.round, rounding = isUndefined(opts.rounding) ? "trunc" : opts.rounding, format = /* @__PURE__ */ __name((c, unit) => { c = roundTo(c, round || opts.calendary ? 0 : 2, opts.calendary ? "round" : rounding); const formatter = end.loc.clone(opts).relFormatter(opts); return formatter.format(c, unit); }, "format"), differ = /* @__PURE__ */ __name((unit) => { if (opts.calendary) { if (!end.hasSame(start, unit)) { return end.startOf(unit).diff(start.startOf(unit), unit).get(unit); } else return 0; } else { return end.diff(start, unit).get(unit); } }, "differ"); if (opts.unit) { return format(differ(opts.unit), opts.unit); } for (const unit of opts.units) { const count = differ(unit); if (Math.abs(count) >= 1) { return format(count, unit); } } return format(start > end ? -0 : 0, opts.units[opts.units.length - 1]); } __name(diffRelative, "diffRelative"); function lastOpts(argList) { let opts = {}, args; if (argList.length > 0 && typeof argList[argList.length - 1] === "object") { opts = argList[argList.length - 1]; args = Array.from(argList).slice(0, argList.length - 1); } else { args = Array.from(argList); } return [opts, args]; } __name(lastOpts, "lastOpts"); var zoneOffsetTs; var zoneOffsetGuessCache = /* @__PURE__ */ new Map(); var DateTime = class _DateTime { static { __name(this, "DateTime"); } /** * @access private */ constructor(config) { const zone = config.zone || Settings.defaultZone; let invalid = config.invalid || (Number.isNaN(config.ts) ? new Invalid("invalid input") : null) || (!zone.isValid ? unsupportedZone(zone) : null); this.ts = isUndefined(config.ts) ? Settings.now() : config.ts; let c = null, o = null; if (!invalid) { const unchanged = config.old && config.old.ts === this.ts && config.old.zone.equals(zone); if (unchanged) { [c, o] = [config.old.c, config.old.o]; } else { const ot = isNumber(config.o) && !config.old ? config.o : zone.offset(this.ts); c = tsToObj(this.ts, ot); invalid = Number.isNaN(c.year) ? new Invalid("invalid input") : null; c = invalid ? null : c; o = invalid ? null : ot; } } this._zone = zone; this.loc = config.loc || Locale.create(); this.invalid = invalid; this.weekData = null; this.localWeekData = null; this.c = c; this.o = o; this.isLuxonDateTime = true; } // CONSTRUCT /** * Create a DateTime for the current instant, in the system's time zone. * * Use Settings to override these default values if needed. * @example DateTime.now().toISO() //~> now in the ISO format * @return {DateTime} */ static now() { return new _DateTime({}); } /** * Create a local DateTime * @param {number} [year] - The calendar year. If omitted (as in, call `local()` with no arguments), the current time will be used * @param {number} [month=1] - The month, 1-indexed * @param {number} [day=1] - The day of the month, 1-indexed * @param {number} [hour=0] - The hour of the day, in 24-hour time * @param {number} [minute=0] - The minute of the hour, meaning a number between 0 and 59 * @param {number} [second=0] - The second of the minute, meaning a number between 0 and 59 * @param {number} [millisecond=0] - The millisecond of the second, meaning a number between 0 and 999 * @example DateTime.local() //~> now * @example DateTime.local({ zone: "America/New_York" }) //~> now, in US east coast time * @example DateTime.local(2017) //~> 2017-01-01T00:00:00 * @example DateTime.local(2017, 3) //~> 2017-03-01T00:00:00 * @example DateTime.local(2017, 3, 12, { locale: "fr" }) //~> 2017-03-12T00:00:00, with a French locale * @example DateTime.local(2017, 3, 12, 5) //~> 2017-03-12T05:00:00 * @example DateTime.local(2017, 3, 12, 5, { zone: "utc" }) //~> 2017-03-12T05:00:00, in UTC * @example DateTime.local(2017, 3, 12, 5, 45) //~> 2017-03-12T05:45:00 * @example DateTime.local(2017, 3, 12, 5, 45, 10) //~> 2017-03-12T05:45:10 * @example DateTime.local(2017, 3, 12, 5, 45, 10, 765) //~> 2017-03-12T05:45:10.765 * @return {DateTime} */ static local() { const [opts, args] = lastOpts(arguments), [year, month, day, hour, minute, second, millisecond] = args; return quickDT({ year, month, day, hour, minute, second, millisecond }, opts); } /** * Create a DateTime in UTC * @param {number} [year] - The calendar year. If omitted (as in, call `utc()` with no arguments), the current time will be used * @param {number} [month=1] - The month, 1-indexed * @param {number} [day=1] - The day of the month * @param {number} [hour=0] - The hour of the day, in 24-hour time * @param {number} [minute=0] - The minute of the hour, meaning a number between 0 and 59 * @param {number} [second=0] - The second of the minute, meaning a number between 0 and 59 * @param {number} [millisecond=0] - The millisecond of the second, meaning a number between 0 and 999 * @param {Object} options - configuration options for the DateTime * @param {string} [options.locale] - a locale to set on the resulting DateTime instance * @param {string} [options.outputCalendar] - the output calendar to set on the resulting DateTime instance * @param {string} [options.numberingSystem] - the numbering system to set on the resulting DateTime instance * @param {string} [options.weekSettings] - the week settings to set on the resulting DateTime instance * @example DateTime.utc() //~> now * @example DateTime.utc(2017) //~> 2017-01-01T00:00:00Z * @example DateTime.utc(2017, 3) //~> 2017-03-01T00:00:00Z * @example DateTime.utc(2017, 3, 12) //~> 2017-03-12T00:00:00Z * @example DateTime.utc(2017, 3, 12, 5) //~> 2017-03-12T05:00:00Z * @example DateTime.utc(2017, 3, 12, 5, 45) //~> 2017-03-12T05:45:00Z * @example DateTime.utc(2017, 3, 12, 5, 45, { locale: "fr" }) //~> 2017-03-12T05:45:00Z with a French locale * @example DateTime.utc(2017, 3, 12, 5, 45, 10) //~> 2017-03-12T05:45:10Z * @example DateTime.utc(2017, 3, 12, 5, 45, 10, 765, { locale: "fr" }) //~> 2017-03-12T05:45:10.765Z with a French locale * @return {DateTime} */ static utc() { const [opts, args] = lastOpts(arguments), [year, month, day, hour, minute, second, millisecond] = args; opts.zone = FixedOffsetZone.utcInstance; return quickDT({ year, month, day, hour, minute, second, millisecond }, opts); } /** * Create a DateTime from a JavaScript Date object. Uses the default zone. * @param {Date} date - a JavaScript Date object * @param {Object} options - configuration options for the DateTime * @param {string|Zone} [options.zone='local'] - the zone to place the DateTime into * @return {DateTime} */ static fromJSDate(date, options = {}) { const ts = isDate(date) ? date.valueOf() : NaN; if (Number.isNaN(ts)) { return _DateTime.invalid("invalid input"); } const zoneToUse = normalizeZone(options.zone, Settings.defaultZone); if (!zoneToUse.isValid) { return _DateTime.invalid(unsupportedZone(zoneToUse)); } return new _DateTime({ ts, zone: zoneToUse, loc: Locale.fromObject(options) }); } /** * Create a DateTime from a number of milliseconds since the epoch (meaning since 1 January 1970 00:00:00 UTC). Uses the default zone. * @param {number} milliseconds - a number of milliseconds since 1970 UTC * @param {Object} options - configuration options for the DateTime * @param {string|Zone} [options.zone='local'] - the zone to place the DateTime into * @param {string} [options.locale] - a locale to set on the resulting DateTime instance * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance * @return {DateTime} */ static fromMillis(milliseconds, options = {}) { if (!isNumber(milliseconds)) { throw new InvalidArgumentError(`fromMillis requires a numerical input, but received a ${typeof milliseconds} with value ${milliseconds}`); } else if (milliseconds < -MAX_DATE || milliseconds > MAX_DATE) { return _DateTime.invalid("Timestamp out of range"); } else { return new _DateTime({ ts: milliseconds, zone: normalizeZone(options.zone, Settings.defaultZone), loc: Locale.fromObject(options) }); } } /** * Create a DateTime from a number of seconds since the epoch (meaning since 1 January 1970 00:00:00 UTC). Uses the default zone. * @param {number} seconds - a number of seconds since 1970 UTC * @param {Object} options - configuration options for the DateTime * @param {string|Zone} [options.zone='local'] - the zone to place the DateTime into * @param {string} [options.locale] - a locale to set on the resulting DateTime instance * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance * @return {DateTime} */ static fromSeconds(seconds, options = {}) { if (!isNumber(seconds)) { throw new InvalidArgumentError("fromSeconds requires a numerical input"); } else { return new _DateTime({ ts: seconds * 1e3, zone: normalizeZone(options.zone, Settings.defaultZone), loc: Locale.fromObject(options) }); } } /** * Create a DateTime from a JavaScript object with keys like 'year' and 'hour' with reasonable defaults. * @param {Object} obj - the object to create the DateTime from * @param {number} obj.year - a year, such as 1987 * @param {number} obj.month - a month, 1-12 * @param {number} obj.day - a day of the month, 1-31, depending on the month * @param {number} obj.ordinal - day of the year, 1-365 or 366 * @param {number} obj.weekYear - an ISO week year * @param {number} obj.weekNumber - an ISO week number, between 1 and 52 or 53, depending on the year * @param {number} obj.weekday - an ISO weekday, 1-7, where 1 is Monday and 7 is Sunday * @param {number} obj.localWeekYear - a week year, according to the locale * @param {number} obj.localWeekNumber - a week number, between 1 and 52 or 53, depending on the year, according to the locale * @param {number} obj.localWeekday - a weekday, 1-7, where 1 is the first and 7 is the last day of the week, according to the locale * @param {number} obj.hour - hour of the day, 0-23 * @param {number} obj.minute - minute of the hour, 0-59 * @param {number} obj.second - second of the minute, 0-59 * @param {number} obj.millisecond - millisecond of the second, 0-999 * @param {Object} opts - options for creating this DateTime * @param {string|Zone} [opts.zone='local'] - interpret the numbers in the context of a particular zone. Can take any value taken as the first argument to setZone() * @param {string} [opts.locale='system\'s locale'] - a locale to set on the resulting DateTime instance * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance * @example DateTime.fromObject({ year: 1982, month: 5, day: 25}).toISODate() //=> '1982-05-25' * @example DateTime.fromObject({ year: 1982 }).toISODate() //=> '1982-01-01' * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }) //~> today at 10:26:06 * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }, { zone: 'utc' }), * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }, { zone: 'local' }) * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }, { zone: 'America/New_York' }) * @example DateTime.fromObject({ weekYear: 2016, weekNumber: 2, weekday: 3 }).toISODate() //=> '2016-01-13' * @example DateTime.fromObject({ localWeekYear: 2022, localWeekNumber: 1, localWeekday: 1 }, { locale: "en-US" }).toISODate() //=> '2021-12-26' * @return {DateTime} */ static fromObject(obj2, opts = {}) { obj2 = obj2 || {}; const zoneToUse = normalizeZone(opts.zone, Settings.defaultZone); if (!zoneToUse.isValid) { return _DateTime.invalid(unsupportedZone(zoneToUse)); } const loc = Locale.fromObject(opts); const normalized = normalizeObject(obj2, normalizeUnitWithLocalWeeks); const { minDaysInFirstWeek, startOfWeek } = usesLocalWeekValues(normalized, loc); const tsNow = Settings.now(), offsetProvis = !isUndefined(opts.specificOffset) ? opts.specificOffset : zoneToUse.offset(tsNow), containsOrdinal = !isUndefined(normalized.ordinal), containsGregorYear = !isUndefined(normalized.year), containsGregorMD = !isUndefined(normalized.month) || !isUndefined(normalized.day), containsGregor = containsGregorYear || containsGregorMD, definiteWeekDef = normalized.weekYear || normalized.weekNumber; if ((containsGregor || containsOrdinal) && definiteWeekDef) { throw new ConflictingSpecificationError("Can't mix weekYear/weekNumber units with year/month/day or ordinals"); } if (containsGregorMD && containsOrdinal) { throw new ConflictingSpecificationError("Can't mix ordinal dates with month/day"); } const useWeekData = definiteWeekDef || normalized.weekday && !containsGregor; let units, defaultValues, objNow = tsToObj(tsNow, offsetProvis); if (useWeekData) { units = orderedWeekUnits; defaultValues = defaultWeekUnitValues; objNow = gregorianToWeek(objNow, minDaysInFirstWeek, startOfWeek); } else if (containsOrdinal) { units = orderedOrdinalUnits; defaultValues = defaultOrdinalUnitValues; objNow = gregorianToOrdinal(objNow); } else { units = orderedUnits; defaultValues = defaultUnitValues; } let foundFirst = false; for (const u of units) { const v = normalized[u]; if (!isUndefined(v)) { foundFirst = true; } else if (foundFirst) { normalized[u] = defaultValues[u]; } else { normalized[u] = objNow[u]; } } const higherOrderInvalid = useWeekData ? hasInvalidWeekData(normalized, minDaysInFirstWeek, startOfWeek) : containsOrdinal ? hasInvalidOrdinalData(normalized) : hasInvalidGregorianData(normalized), invalid = higherOrderInvalid || hasInvalidTimeData(normalized); if (invalid) { return _DateTime.invalid(invalid); } const gregorian = useWeekData ? weekToGregorian(normalized, minDaysInFirstWeek, startOfWeek) : containsOrdinal ? ordinalToGregorian(normalized) : normalized, [tsFinal, offsetFinal] = objToTS(gregorian, offsetProvis, zoneToUse), inst = new _DateTime({ ts: tsFinal, zone: zoneToUse, o: offsetFinal, loc }); if (normalized.weekday && containsGregor && obj2.weekday !== inst.weekday) { return _DateTime.invalid("mismatched weekday", `you can't specify both a weekday of ${normalized.weekday} and a date of ${inst.toISO()}`); } if (!inst.isValid) { return _DateTime.invalid(inst.invalid); } return inst; } /** * Create a DateTime from an ISO 8601 string * @param {string} text - the ISO string * @param {Object} opts - options to affect the creation * @param {string|Zone} [opts.zone='local'] - use this zone if no offset is specified in the input string itself. Will also convert the time to this zone * @param {boolean} [opts.setZone=false] - override the zone with a fixed-offset zone specified in the string itself, if it specifies one * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance * @param {string} [opts.outputCalendar] - the output calendar to set on the resulting DateTime instance * @param {string} [opts.numberingSystem] - the numbering system to set on the resulting DateTime instance * @param {string} [opts.weekSettings] - the week settings to set on the resulting DateTime instance * @example DateTime.fromISO('2016-05-25T09:08:34.123') * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00') * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00', {setZone: true}) * @example DateTime.fromISO('2016-05-25T09:08:34.123', {zone: 'utc'}) * @example DateTime.fromISO('2016-W05-4') * @return {DateTime} */ static fromISO(text, opts = {}) { const [vals, parsedZone] = parseISODate(text); return parseDataToDateTime(vals, parsedZone, opts, "ISO 8601", text); } /** * Create a DateTime from an RFC 2822 string * @param {string} text - the RFC 2822 string * @param {Object} opts - options to affect the creation * @param {string|Zone} [opts.zone='local'] - convert the time to this zone. Since the offset is always specified in the string itself, this has no effect on the interpretation of string, merely the zone the resulting DateTime is expressed in. * @param {boolean} [opts.setZone=false] - override the zone with a fixed-offset zone specified in the string itself, if it specifies one * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance * @example DateTime.fromRFC2822('25 Nov 2016 13:23:12 GMT') * @example DateTime.fromRFC2822('Fri, 25 Nov 2016 13:23:12 +0600') * @example DateTime.fromRFC2822('25 Nov 2016 13:23 Z') * @return {DateTime} */ static fromRFC2822(text, opts = {}) { const [vals, parsedZone] = parseRFC2822Date(text); return parseDataToDateTime(vals, parsedZone, opts, "RFC 2822", text); } /** * Create a DateTime from an HTTP header date * @see https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3.1 * @param {string} text - the HTTP header date * @param {Object} opts - options to affect the creation * @param {string|Zone} [opts.zone='local'] - convert the time to this zone. Since HTTP dates are always in UTC, this has no effect on the interpretation of string, merely the zone the resulting DateTime is expressed in. * @param {boolean} [opts.setZone=false] - override the zone with the fixed-offset zone specified in the string. For HTTP dates, this is always UTC, so this option is equivalent to setting the `zone` option to 'utc', but this option is included for consistency with similar methods. * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance * @example DateTime.fromHTTP('Sun, 06 Nov 1994 08:49:37 GMT') * @example DateTime.fromHTTP('Sunday, 06-Nov-94 08:49:37 GMT') * @example DateTime.fromHTTP('Sun Nov 6 08:49:37 1994') * @return {DateTime} */ static fromHTTP(text, opts = {}) { const [vals, parsedZone] = parseHTTPDate(text); return parseDataToDateTime(vals, parsedZone, opts, "HTTP", opts); } /** * Create a DateTime from an input string and format string. * Defaults to en-US if no locale has been specified, regardless of the system's locale. For a table of tokens and their interpretations, see [here](https://moment.github.io/luxon/#/parsing?id=table-of-tokens). * @param {string} text - the string to parse * @param {string} fmt - the format the string is expected to be in (see the link below for the formats) * @param {Object} opts - options to affect the creation * @param {string|Zone} [opts.zone='local'] - use this zone if no offset is specified in the input string itself. Will also convert the DateTime to this zone * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance * @return {DateTime} */ static fromFormat(text, fmt, opts = {}) { if (isUndefined(text) || isUndefined(fmt)) { throw new InvalidArgumentError("fromFormat requires an input string and a format"); } const { locale = null, numberingSystem = null } = opts, localeToUse = Locale.fromOpts({ locale, numberingSystem, defaultToEN: true }), [vals, parsedZone, specificOffset, invalid] = parseFromTokens(localeToUse, text, fmt); if (invalid) { return _DateTime.invalid(invalid); } else { return parseDataToDateTime(vals, parsedZone, opts, `format ${fmt}`, text, specificOffset); } } /** * @deprecated use fromFormat instead */ static fromString(text, fmt, opts = {}) { return _DateTime.fromFormat(text, fmt, opts); } /** * Create a DateTime from a SQL date, time, or datetime * Defaults to en-US if no locale has been specified, regardless of the system's locale * @param {string} text - the string to parse * @param {Object} opts - options to affect the creation * @param {string|Zone} [opts.zone='local'] - use this zone if no offset is specified in the input string itself. Will also convert the DateTime to this zone * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance * @example DateTime.fromSQL('2017-05-15') * @example DateTime.fromSQL('2017-05-15 09:12:34') * @example DateTime.fromSQL('2017-05-15 09:12:34.342') * @example DateTime.fromSQL('2017-05-15 09:12:34.342+06:00') * @example DateTime.fromSQL('2017-05-15 09:12:34.342 America/Los_Angeles') * @example DateTime.fromSQL('2017-05-15 09:12:34.342 America/Los_Angeles', { setZone: true }) * @example DateTime.fromSQL('2017-05-15 09:12:34.342', { zone: 'America/Los_Angeles' }) * @example DateTime.fromSQL('09:12:34.342') * @return {DateTime} */ static fromSQL(text, opts = {}) { const [vals, parsedZone] = parseSQL(text); return parseDataToDateTime(vals, parsedZone, opts, "SQL", text); } /** * Create an invalid DateTime. * @param {string} reason - simple string of why this DateTime is invalid. Should not contain parameters or anything else data-dependent. * @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information * @return {DateTime} */ static invalid(reason, explanation = null) { if (!reason) { throw new InvalidArgumentError("need to specify a reason the DateTime is invalid"); } const invalid = reason instanceof Invalid ? reason : new Invalid(reason, explanation); if (Settings.throwOnInvalid) { throw new InvalidDateTimeError(invalid); } else { return new _DateTime({ invalid }); } } /** * Check if an object is an instance of DateTime. Works across context boundaries * @param {object} o * @return {boolean} */ static isDateTime(o) { return o && o.isLuxonDateTime || false; } /** * Produce the format string for a set of options * @param formatOpts * @param localeOpts * @returns {string} */ static parseFormatForOpts(formatOpts, localeOpts = {}) { const tokenList = formatOptsToTokens(formatOpts, Locale.fromObject(localeOpts)); return !tokenList ? null : tokenList.map((t) => t ? t.val : null).join(""); } /** * Produce the the fully expanded format token for the locale * Does NOT quote characters, so quoted tokens will not round trip correctly * @param fmt * @param localeOpts * @returns {string} */ static expandFormat(fmt, localeOpts = {}) { const expanded = expandMacroTokens(Formatter.parseFormat(fmt), Locale.fromObject(localeOpts)); return expanded.map((t) => t.val).join(""); } static resetCache() { zoneOffsetTs = void 0; zoneOffsetGuessCache.clear(); } // INFO /** * Get the value of unit. * @param {string} unit - a unit such as 'minute' or 'day' * @example DateTime.local(2017, 7, 4).get('month'); //=> 7 * @example DateTime.local(2017, 7, 4).get('day'); //=> 4 * @return {number} */ get(unit) { return this[unit]; } /** * Returns whether the DateTime is valid. Invalid DateTimes occur when: * * The DateTime was created from invalid calendar information, such as the 13th month or February 30 * * The DateTime was created by an operation on another invalid date * @type {boolean} */ get isValid() { return this.invalid === null; } /** * Returns an error code if this DateTime is invalid, or null if the DateTime is valid * @type {string} */ get invalidReason() { return this.invalid ? this.invalid.reason : null; } /** * Returns an explanation of why this DateTime became invalid, or null if the DateTime is valid * @type {string} */ get invalidExplanation() { return this.invalid ? this.invalid.explanation : null; } /** * Get the locale of a DateTime, such 'en-GB'. The locale is used when formatting the DateTime * * @type {string} */ get locale() { return this.isValid ? this.loc.locale : null; } /** * Get the numbering system of a DateTime, such 'beng'. The numbering system is used when formatting the DateTime * * @type {string} */ get numberingSystem() { return this.isValid ? this.loc.numberingSystem : null; } /** * Get the output calendar of a DateTime, such 'islamic'. The output calendar is used when formatting the DateTime * * @type {string} */ get outputCalendar() { return this.isValid ? this.loc.outputCalendar : null; } /** * Get the time zone associated with this DateTime. * @type {Zone} */ get zone() { return this._zone; } /** * Get the name of the time zone. * @type {string} */ get zoneName() { return this.isValid ? this.zone.name : null; } /** * Get the year * @example DateTime.local(2017, 5, 25).year //=> 2017 * @type {number} */ get year() { return this.isValid ? this.c.year : NaN; } /** * Get the quarter * @example DateTime.local(2017, 5, 25).quarter //=> 2 * @type {number} */ get quarter() { return this.isValid ? Math.ceil(this.c.month / 3) : NaN; } /** * Get the month (1-12). * @example DateTime.local(2017, 5, 25).month //=> 5 * @type {number} */ get month() { return this.isValid ? this.c.month : NaN; } /** * Get the day of the month (1-30ish). * @example DateTime.local(2017, 5, 25).day //=> 25 * @type {number} */ get day() { return this.isValid ? this.c.day : NaN; } /** * Get the hour of the day (0-23). * @example DateTime.local(2017, 5, 25, 9).hour //=> 9 * @type {number} */ get hour() { return this.isValid ? this.c.hour : NaN; } /** * Get the minute of the hour (0-59). * @example DateTime.local(2017, 5, 25, 9, 30).minute //=> 30 * @type {number} */ get minute() { return this.isValid ? this.c.minute : NaN; } /** * Get the second of the minute (0-59). * @example DateTime.local(2017, 5, 25, 9, 30, 52).second //=> 52 * @type {number} */ get second() { return this.isValid ? this.c.second : NaN; } /** * Get the millisecond of the second (0-999). * @example DateTime.local(2017, 5, 25, 9, 30, 52, 654).millisecond //=> 654 * @type {number} */ get millisecond() { return this.isValid ? this.c.millisecond : NaN; } /** * Get the week year * @see https://en.wikipedia.org/wiki/ISO_week_date * @example DateTime.local(2014, 12, 31).weekYear //=> 2015 * @type {number} */ get weekYear() { return this.isValid ? possiblyCachedWeekData(this).weekYear : NaN; } /** * Get the week number of the week year (1-52ish). * @see https://en.wikipedia.org/wiki/ISO_week_date * @example DateTime.local(2017, 5, 25).weekNumber //=> 21 * @type {number} */ get weekNumber() { return this.isValid ? possiblyCachedWeekData(this).weekNumber : NaN; } /** * Get the day of the week. * 1 is Monday and 7 is Sunday * @see https://en.wikipedia.org/wiki/ISO_week_date * @example DateTime.local(2014, 11, 31).weekday //=> 4 * @type {number} */ get weekday() { return this.isValid ? possiblyCachedWeekData(this).weekday : NaN; } /** * Returns true if this date is on a weekend according to the locale, false otherwise * @returns {boolean} */ get isWeekend() { return this.isValid && this.loc.getWeekendDays().includes(this.weekday); } /** * Get the day of the week according to the locale. * 1 is the first day of the week and 7 is the last day of the week. * If the locale assigns Sunday as the first day of the week, then a date which is a Sunday will return 1, * @returns {number} */ get localWeekday() { return this.isValid ? possiblyCachedLocalWeekData(this).weekday : NaN; } /** * Get the week number of the week year according to the locale. Different locales assign week numbers differently, * because the week can start on different days of the week (see localWeekday) and because a different number of days * is required for a week to count as the first week of a year. * @returns {number} */ get localWeekNumber() { return this.isValid ? possiblyCachedLocalWeekData(this).weekNumber : NaN; } /** * Get the week year according to the locale. Different locales assign week numbers (and therefor week years) * differently, see localWeekNumber. * @returns {number} */ get localWeekYear() { return this.isValid ? possiblyCachedLocalWeekData(this).weekYear : NaN; } /** * Get the ordinal (meaning the day of the year) * @example DateTime.local(2017, 5, 25).ordinal //=> 145 * @type {number|DateTime} */ get ordinal() { return this.isValid ? gregorianToOrdinal(this.c).ordinal : NaN; } /** * Get the human readable short month name, such as 'Oct'. * Defaults to the system's locale if no locale has been specified * @example DateTime.local(2017, 10, 30).monthShort //=> Oct * @type {string} */ get monthShort() { return this.isValid ? Info.months("short", { locObj: this.loc })[this.month - 1] : null; } /** * Get the human readable long month name, such as 'October'. * Defaults to the system's locale if no locale has been specified * @example DateTime.local(2017, 10, 30).monthLong //=> October * @type {string} */ get monthLong() { return this.isValid ? Info.months("long", { locObj: this.loc })[this.month - 1] : null; } /** * Get the human readable short weekday, such as 'Mon'. * Defaults to the system's locale if no locale has been specified * @example DateTime.local(2017, 10, 30).weekdayShort //=> Mon * @type {string} */ get weekdayShort() { return this.isValid ? Info.weekdays("short", { locObj: this.loc })[this.weekday - 1] : null; } /** * Get the human readable long weekday, such as 'Monday'. * Defaults to the system's locale if no locale has been specified * @example DateTime.local(2017, 10, 30).weekdayLong //=> Monday * @type {string} */ get weekdayLong() { return this.isValid ? Info.weekdays("long", { locObj: this.loc })[this.weekday - 1] : null; } /** * Get the UTC offset of this DateTime in minutes * @example DateTime.now().offset //=> -240 * @example DateTime.utc().offset //=> 0 * @type {number} */ get offset() { return this.isValid ? +this.o : NaN; } /** * Get the short human name for the zone's current offset, for example "EST" or "EDT". * Defaults to the system's locale if no locale has been specified * @type {string} */ get offsetNameShort() { if (this.isValid) { return this.zone.offsetName(this.ts, { format: "short", locale: this.locale }); } else { return null; } } /** * Get the long human name for the zone's current offset, for example "Eastern Standard Time" or "Eastern Daylight Time". * Defaults to the system's locale if no locale has been specified * @type {string} */ get offsetNameLong() { if (this.isValid) { return this.zone.offsetName(this.ts, { format: "long", locale: this.locale }); } else { return null; } } /** * Get whether this zone's offset ever changes, as in a DST. * @type {boolean} */ get isOffsetFixed() { return this.isValid ? this.zone.isUniversal : null; } /** * Get whether the DateTime is in a DST. * @type {boolean} */ get isInDST() { if (this.isOffsetFixed) { return false; } else { return this.offset > this.set({ month: 1, day: 1 }).offset || this.offset > this.set({ month: 5 }).offset; } } /** * Get those DateTimes which have the same local time as this DateTime, but a different offset from UTC * in this DateTime's zone. During DST changes local time can be ambiguous, for example * `2023-10-29T02:30:00` in `Europe/Berlin` can have offset `+01:00` or `+02:00`. * This method will return both possible DateTimes if this DateTime's local time is ambiguous. * @returns {DateTime[]} */ getPossibleOffsets() { if (!this.isValid || this.isOffsetFixed) { return [this]; } const dayMs = 864e5; const minuteMs = 6e4; const localTS = objToLocalTS(this.c); const oEarlier = this.zone.offset(localTS - dayMs); const oLater = this.zone.offset(localTS + dayMs); const o1 = this.zone.offset(localTS - oEarlier * minuteMs); const o2 = this.zone.offset(localTS - oLater * minuteMs); if (o1 === o2) { return [this]; } const ts1 = localTS - o1 * minuteMs; const ts2 = localTS - o2 * minuteMs; const c1 = tsToObj(ts1, o1); const c2 = tsToObj(ts2, o2); if (c1.hour === c2.hour && c1.minute === c2.minute && c1.second === c2.second && c1.millisecond === c2.millisecond) { return [clone(this, { ts: ts1 }), clone(this, { ts: ts2 })]; } return [this]; } /** * Returns true if this DateTime is in a leap year, false otherwise * @example DateTime.local(2016).isInLeapYear //=> true * @example DateTime.local(2013).isInLeapYear //=> false * @type {boolean} */ get isInLeapYear() { return isLeapYear(this.year); } /** * Returns the number of days in this DateTime's month * @example DateTime.local(2016, 2).daysInMonth //=> 29 * @example DateTime.local(2016, 3).daysInMonth //=> 31 * @type {number} */ get daysInMonth() { return daysInMonth(this.year, this.month); } /** * Returns the number of days in this DateTime's year * @example DateTime.local(2016).daysInYear //=> 366 * @example DateTime.local(2013).daysInYear //=> 365 * @type {number} */ get daysInYear() { return this.isValid ? daysInYear(this.year) : NaN; } /** * Returns the number of weeks in this DateTime's year * @see https://en.wikipedia.org/wiki/ISO_week_date * @example DateTime.local(2004).weeksInWeekYear //=> 53 * @example DateTime.local(2013).weeksInWeekYear //=> 52 * @type {number} */ get weeksInWeekYear() { return this.isValid ? weeksInWeekYear(this.weekYear) : NaN; } /** * Returns the number of weeks in this DateTime's local week year * @example DateTime.local(2020, 6, {locale: 'en-US'}).weeksInLocalWeekYear //=> 52 * @example DateTime.local(2020, 6, {locale: 'de-DE'}).weeksInLocalWeekYear //=> 53 * @type {number} */ get weeksInLocalWeekYear() { return this.isValid ? weeksInWeekYear(this.localWeekYear, this.loc.getMinDaysInFirstWeek(), this.loc.getStartOfWeek()) : NaN; } /** * Returns the resolved Intl options for this DateTime. * This is useful in understanding the behavior of formatting methods * @param {Object} opts - the same options as toLocaleString * @return {Object} */ resolvedLocaleOptions(opts = {}) { const { locale, numberingSystem, calendar } = Formatter.create(this.loc.clone(opts), opts).resolvedOptions(this); return { locale, numberingSystem, outputCalendar: calendar }; } // TRANSFORM /** * "Set" the DateTime's zone to UTC. Returns a newly-constructed DateTime. * * Equivalent to {@link DateTime#setZone}('utc') * @param {number} [offset=0] - optionally, an offset from UTC in minutes * @param {Object} [opts={}] - options to pass to `setZone()` * @return {DateTime} */ toUTC(offset2 = 0, opts = {}) { return this.setZone(FixedOffsetZone.instance(offset2), opts); } /** * "Set" the DateTime's zone to the host's local zone. Returns a newly-constructed DateTime. * * Equivalent to `setZone('local')` * @return {DateTime} */ toLocal() { return this.setZone(Settings.defaultZone); } /** * "Set" the DateTime's zone to specified zone. Returns a newly-constructed DateTime. * * By default, the setter keeps the underlying time the same (as in, the same timestamp), but the new instance will report different local times and consider DSTs when making computations, as with {@link DateTime#plus}. You may wish to use {@link DateTime#toLocal} and {@link DateTime#toUTC} which provide simple convenience wrappers for commonly used zones. * @param {string|Zone} [zone='local'] - a zone identifier. As a string, that can be any IANA zone supported by the host environment, or a fixed-offset name of the form 'UTC+3', or the strings 'local' or 'utc'. You may also supply an instance of a {@link DateTime#Zone} class. * @param {Object} opts - options * @param {boolean} [opts.keepLocalTime=false] - If true, adjust the underlying time so that the local time stays the same, but in the target zone. You should rarely need this. * @return {DateTime} */ setZone(zone, { keepLocalTime = false, keepCalendarTime = false } = {}) { zone = normalizeZone(zone, Settings.defaultZone); if (zone.equals(this.zone)) { return this; } else if (!zone.isValid) { return _DateTime.invalid(unsupportedZone(zone)); } else { let newTS = this.ts; if (keepLocalTime || keepCalendarTime) { const offsetGuess = zone.offset(this.ts); const asObj = this.toObject(); [newTS] = objToTS(asObj, offsetGuess, zone); } return clone(this, { ts: newTS, zone }); } } /** * "Set" the locale, numberingSystem, or outputCalendar. Returns a newly-constructed DateTime. * @param {Object} properties - the properties to set * @example DateTime.local(2017, 5, 25).reconfigure({ locale: 'en-GB' }) * @return {DateTime} */ reconfigure({ locale, numberingSystem, outputCalendar } = {}) { const loc = this.loc.clone({ locale, numberingSystem, outputCalendar }); return clone(this, { loc }); } /** * "Set" the locale. Returns a newly-constructed DateTime. * Just a convenient alias for reconfigure({ locale }) * @example DateTime.local(2017, 5, 25).setLocale('en-GB') * @return {DateTime} */ setLocale(locale) { return this.reconfigure({ locale }); } /** * "Set" the values of specified units. Returns a newly-constructed DateTime. * You can only set units with this method; for "setting" metadata, see {@link DateTime#reconfigure} and {@link DateTime#setZone}. * * This method also supports setting locale-based week units, i.e. `localWeekday`, `localWeekNumber` and `localWeekYear`. * They cannot be mixed with ISO-week units like `weekday`. * @param {Object} values - a mapping of units to numbers * @example dt.set({ year: 2017 }) * @example dt.set({ hour: 8, minute: 30 }) * @example dt.set({ weekday: 5 }) * @example dt.set({ year: 2005, ordinal: 234 }) * @return {DateTime} */ set(values) { if (!this.isValid) return this; const normalized = normalizeObject(values, normalizeUnitWithLocalWeeks); const { minDaysInFirstWeek, startOfWeek } = usesLocalWeekValues(normalized, this.loc); const settingWeekStuff = !isUndefined(normalized.weekYear) || !isUndefined(normalized.weekNumber) || !isUndefined(normalized.weekday), containsOrdinal = !isUndefined(normalized.ordinal), containsGregorYear = !isUndefined(normalized.year), containsGregorMD = !isUndefined(normalized.month) || !isUndefined(normalized.day), containsGregor = containsGregorYear || containsGregorMD, definiteWeekDef = normalized.weekYear || normalized.weekNumber; if ((containsGregor || containsOrdinal) && definiteWeekDef) { throw new ConflictingSpecificationError("Can't mix weekYear/weekNumber units with year/month/day or ordinals"); } if (containsGregorMD && containsOrdinal) { throw new ConflictingSpecificationError("Can't mix ordinal dates with month/day"); } let mixed; if (settingWeekStuff) { mixed = weekToGregorian({ ...gregorianToWeek(this.c, minDaysInFirstWeek, startOfWeek), ...normalized }, minDaysInFirstWeek, startOfWeek); } else if (!isUndefined(normalized.ordinal)) { mixed = ordinalToGregorian({ ...gregorianToOrdinal(this.c), ...normalized }); } else { mixed = { ...this.toObject(), ...normalized }; if (isUndefined(normalized.day)) { mixed.day = Math.min(daysInMonth(mixed.year, mixed.month), mixed.day); } } const [ts, o] = objToTS(mixed, this.o, this.zone); return clone(this, { ts, o }); } /** * Add a period of time to this DateTime and return the resulting DateTime * * Adding hours, minutes, seconds, or milliseconds increases the timestamp by the right number of milliseconds. Adding days, months, or years shifts the calendar, accounting for DSTs and leap years along the way. Thus, `dt.plus({ hours: 24 })` may result in a different time than `dt.plus({ days: 1 })` if there's a DST shift in between. * @param {Duration|Object|number} duration - The amount to add. Either a Luxon Duration, a number of milliseconds, the object argument to Duration.fromObject() * @example DateTime.now().plus(123) //~> in 123 milliseconds * @example DateTime.now().plus({ minutes: 15 }) //~> in 15 minutes * @example DateTime.now().plus({ days: 1 }) //~> this time tomorrow * @example DateTime.now().plus({ days: -1 }) //~> this time yesterday * @example DateTime.now().plus({ hours: 3, minutes: 13 }) //~> in 3 hr, 13 min * @example DateTime.now().plus(Duration.fromObject({ hours: 3, minutes: 13 })) //~> in 3 hr, 13 min * @return {DateTime} */ plus(duration) { if (!this.isValid) return this; const dur = Duration.fromDurationLike(duration); return clone(this, adjustTime(this, dur)); } /** * Subtract a period of time to this DateTime and return the resulting DateTime * See {@link DateTime#plus} * @param {Duration|Object|number} duration - The amount to subtract. Either a Luxon Duration, a number of milliseconds, the object argument to Duration.fromObject() @return {DateTime} */ minus(duration) { if (!this.isValid) return this; const dur = Duration.fromDurationLike(duration).negate(); return clone(this, adjustTime(this, dur)); } /** * "Set" this DateTime to the beginning of a unit of time. * @param {string} unit - The unit to go to the beginning of. Can be 'year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', or 'millisecond'. * @param {Object} opts - options * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week * @example DateTime.local(2014, 3, 3).startOf('month').toISODate(); //=> '2014-03-01' * @example DateTime.local(2014, 3, 3).startOf('year').toISODate(); //=> '2014-01-01' * @example DateTime.local(2014, 3, 3).startOf('week').toISODate(); //=> '2014-03-03', weeks always start on Mondays * @example DateTime.local(2014, 3, 3, 5, 30).startOf('day').toISOTime(); //=> '00:00.000-05:00' * @example DateTime.local(2014, 3, 3, 5, 30).startOf('hour').toISOTime(); //=> '05:00:00.000-05:00' * @return {DateTime} */ startOf(unit, { useLocaleWeeks = false } = {}) { if (!this.isValid) return this; const o = {}, normalizedUnit = Duration.normalizeUnit(unit); switch (normalizedUnit) { case "years": o.month = 1; // falls through case "quarters": case "months": o.day = 1; // falls through case "weeks": case "days": o.hour = 0; // falls through case "hours": o.minute = 0; // falls through case "minutes": o.second = 0; // falls through case "seconds": o.millisecond = 0; break; } if (normalizedUnit === "weeks") { if (useLocaleWeeks) { const startOfWeek = this.loc.getStartOfWeek(); const { weekday } = this; if (weekday < startOfWeek) { o.weekNumber = this.weekNumber - 1; } o.weekday = startOfWeek; } else { o.weekday = 1; } } if (normalizedUnit === "quarters") { const q = Math.ceil(this.month / 3); o.month = (q - 1) * 3 + 1; } return this.set(o); } /** * "Set" this DateTime to the end (meaning the last millisecond) of a unit of time * @param {string} unit - The unit to go to the end of. Can be 'year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', or 'millisecond'. * @param {Object} opts - options * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week * @example DateTime.local(2014, 3, 3).endOf('month').toISO(); //=> '2014-03-31T23:59:59.999-05:00' * @example DateTime.local(2014, 3, 3).endOf('year').toISO(); //=> '2014-12-31T23:59:59.999-05:00' * @example DateTime.local(2014, 3, 3).endOf('week').toISO(); // => '2014-03-09T23:59:59.999-05:00', weeks start on Mondays * @example DateTime.local(2014, 3, 3, 5, 30).endOf('day').toISO(); //=> '2014-03-03T23:59:59.999-05:00' * @example DateTime.local(2014, 3, 3, 5, 30).endOf('hour').toISO(); //=> '2014-03-03T05:59:59.999-05:00' * @return {DateTime} */ endOf(unit, opts) { return this.isValid ? this.plus({ [unit]: 1 }).startOf(unit, opts).minus(1) : this; } // OUTPUT /** * Returns a string representation of this DateTime formatted according to the specified format string. * **You may not want this.** See {@link DateTime#toLocaleString} for a more flexible formatting tool. For a table of tokens and their interpretations, see [here](https://moment.github.io/luxon/#/formatting?id=table-of-tokens). * Defaults to en-US if no locale has been specified, regardless of the system's locale. * @param {string} fmt - the format string * @param {Object} opts - opts to override the configuration options on this DateTime * @example DateTime.now().toFormat('yyyy LLL dd') //=> '2017 Apr 22' * @example DateTime.now().setLocale('fr').toFormat('yyyy LLL dd') //=> '2017 avr. 22' * @example DateTime.now().toFormat('yyyy LLL dd', { locale: "fr" }) //=> '2017 avr. 22' * @example DateTime.now().toFormat("HH 'hours and' mm 'minutes'") //=> '20 hours and 55 minutes' * @return {string} */ toFormat(fmt, opts = {}) { return this.isValid ? Formatter.create(this.loc.redefaultToEN(opts)).formatDateTimeFromString(this, fmt) : INVALID; } /** * Returns a localized string representing this date. Accepts the same options as the Intl.DateTimeFormat constructor and any presets defined by Luxon, such as `DateTime.DATE_FULL` or `DateTime.TIME_SIMPLE`. * The exact behavior of this method is browser-specific, but in general it will return an appropriate representation * of the DateTime in the assigned locale. * Defaults to the system's locale if no locale has been specified * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat * @param formatOpts {Object} - Intl.DateTimeFormat constructor options and configuration options * @param {Object} opts - opts to override the configuration options on this DateTime * @example DateTime.now().toLocaleString(); //=> 4/20/2017 * @example DateTime.now().setLocale('en-gb').toLocaleString(); //=> '20/04/2017' * @example DateTime.now().toLocaleString(DateTime.DATE_FULL); //=> 'April 20, 2017' * @example DateTime.now().toLocaleString(DateTime.DATE_FULL, { locale: 'fr' }); //=> '28 août 2022' * @example DateTime.now().toLocaleString(DateTime.TIME_SIMPLE); //=> '11:32 AM' * @example DateTime.now().toLocaleString(DateTime.DATETIME_SHORT); //=> '4/20/2017, 11:32 AM' * @example DateTime.now().toLocaleString({ weekday: 'long', month: 'long', day: '2-digit' }); //=> 'Thursday, April 20' * @example DateTime.now().toLocaleString({ weekday: 'short', month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' }); //=> 'Thu, Apr 20, 11:27 AM' * @example DateTime.now().toLocaleString({ hour: '2-digit', minute: '2-digit', hourCycle: 'h23' }); //=> '11:32' * @return {string} */ toLocaleString(formatOpts = DATE_SHORT, opts = {}) { return this.isValid ? Formatter.create(this.loc.clone(opts), formatOpts).formatDateTime(this) : INVALID; } /** * Returns an array of format "parts", meaning individual tokens along with metadata. This is allows callers to post-process individual sections of the formatted output. * Defaults to the system's locale if no locale has been specified * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat/formatToParts * @param opts {Object} - Intl.DateTimeFormat constructor options, same as `toLocaleString`. * @example DateTime.now().toLocaleParts(); //=> [ * //=> { type: 'day', value: '25' }, * //=> { type: 'literal', value: '/' }, * //=> { type: 'month', value: '05' }, * //=> { type: 'literal', value: '/' }, * //=> { type: 'year', value: '1982' } * //=> ] */ toLocaleParts(opts = {}) { return this.isValid ? Formatter.create(this.loc.clone(opts), opts).formatDateTimeParts(this) : []; } /** * Returns an ISO 8601-compliant string representation of this DateTime * @param {Object} opts - options * @param {boolean} [opts.suppressMilliseconds=false] - exclude milliseconds from the format if they're 0 * @param {boolean} [opts.suppressSeconds=false] - exclude seconds from the format if they're 0 * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00' * @param {boolean} [opts.extendedZone=false] - add the time zone format extension * @param {string} [opts.format='extended'] - choose between the basic and extended format * @param {string} [opts.precision='milliseconds'] - truncate output to desired presicion: 'years', 'months', 'days', 'hours', 'minutes', 'seconds' or 'milliseconds'. When precision and suppressSeconds or suppressMilliseconds are used together, precision sets the maximum unit shown in the output, however seconds or milliseconds will still be suppressed if they are 0. * @example DateTime.utc(1983, 5, 25).toISO() //=> '1982-05-25T00:00:00.000Z' * @example DateTime.now().toISO() //=> '2017-04-22T20:47:05.335-04:00' * @example DateTime.now().toISO({ includeOffset: false }) //=> '2017-04-22T20:47:05.335' * @example DateTime.now().toISO({ format: 'basic' }) //=> '20170422T204705.335-0400' * @example DateTime.now().toISO({ precision: 'day' }) //=> '2017-04-22Z' * @example DateTime.now().toISO({ precision: 'minute' }) //=> '2017-04-22T20:47Z' * @return {string|null} */ toISO({ format = "extended", suppressSeconds = false, suppressMilliseconds = false, includeOffset = true, extendedZone = false, precision = "milliseconds" } = {}) { if (!this.isValid) { return null; } precision = normalizeUnit(precision); const ext = format === "extended"; let c = toISODate(this, ext, precision); if (orderedUnits.indexOf(precision) >= 3) c += "T"; c += toISOTime(this, ext, suppressSeconds, suppressMilliseconds, includeOffset, extendedZone, precision); return c; } /** * Returns an ISO 8601-compliant string representation of this DateTime's date component * @param {Object} opts - options * @param {string} [opts.format='extended'] - choose between the basic and extended format * @param {string} [opts.precision='day'] - truncate output to desired precision: 'years', 'months', or 'days'. * @example DateTime.utc(1982, 5, 25).toISODate() //=> '1982-05-25' * @example DateTime.utc(1982, 5, 25).toISODate({ format: 'basic' }) //=> '19820525' * @example DateTime.utc(1982, 5, 25).toISODate({ precision: 'month' }) //=> '1982-05' * @return {string|null} */ toISODate({ format = "extended", precision = "day" } = {}) { if (!this.isValid) { return null; } return toISODate(this, format === "extended", normalizeUnit(precision)); } /** * Returns an ISO 8601-compliant string representation of this DateTime's week date * @example DateTime.utc(1982, 5, 25).toISOWeekDate() //=> '1982-W21-2' * @return {string} */ toISOWeekDate() { return toTechFormat(this, "kkkk-'W'WW-c"); } /** * Returns an ISO 8601-compliant string representation of this DateTime's time component * @param {Object} opts - options * @param {boolean} [opts.suppressMilliseconds=false] - exclude milliseconds from the format if they're 0 * @param {boolean} [opts.suppressSeconds=false] - exclude seconds from the format if they're 0 * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00' * @param {boolean} [opts.extendedZone=true] - add the time zone format extension * @param {boolean} [opts.includePrefix=false] - include the `T` prefix * @param {string} [opts.format='extended'] - choose between the basic and extended format * @param {string} [opts.precision='milliseconds'] - truncate output to desired presicion: 'hours', 'minutes', 'seconds' or 'milliseconds'. When precision and suppressSeconds or suppressMilliseconds are used together, precision sets the maximum unit shown in the output, however seconds or milliseconds will still be suppressed if they are 0. * @example DateTime.utc().set({ hour: 7, minute: 34 }).toISOTime() //=> '07:34:19.361Z' * @example DateTime.utc().set({ hour: 7, minute: 34, seconds: 0, milliseconds: 0 }).toISOTime({ suppressSeconds: true }) //=> '07:34Z' * @example DateTime.utc().set({ hour: 7, minute: 34 }).toISOTime({ format: 'basic' }) //=> '073419.361Z' * @example DateTime.utc().set({ hour: 7, minute: 34 }).toISOTime({ includePrefix: true }) //=> 'T07:34:19.361Z' * @example DateTime.utc().set({ hour: 7, minute: 34, second: 56 }).toISOTime({ precision: 'minute' }) //=> '07:34Z' * @return {string} */ toISOTime({ suppressMilliseconds = false, suppressSeconds = false, includeOffset = true, includePrefix = false, extendedZone = false, format = "extended", precision = "milliseconds" } = {}) { if (!this.isValid) { return null; } precision = normalizeUnit(precision); let c = includePrefix && orderedUnits.indexOf(precision) >= 3 ? "T" : ""; return c + toISOTime(this, format === "extended", suppressSeconds, suppressMilliseconds, includeOffset, extendedZone, precision); } /** * Returns an RFC 2822-compatible string representation of this DateTime * @example DateTime.utc(2014, 7, 13).toRFC2822() //=> 'Sun, 13 Jul 2014 00:00:00 +0000' * @example DateTime.local(2014, 7, 13).toRFC2822() //=> 'Sun, 13 Jul 2014 00:00:00 -0400' * @return {string} */ toRFC2822() { return toTechFormat(this, "EEE, dd LLL yyyy HH:mm:ss ZZZ", false); } /** * Returns a string representation of this DateTime appropriate for use in HTTP headers. The output is always expressed in GMT. * Specifically, the string conforms to RFC 1123. * @see https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3.1 * @example DateTime.utc(2014, 7, 13).toHTTP() //=> 'Sun, 13 Jul 2014 00:00:00 GMT' * @example DateTime.utc(2014, 7, 13, 19).toHTTP() //=> 'Sun, 13 Jul 2014 19:00:00 GMT' * @return {string} */ toHTTP() { return toTechFormat(this.toUTC(), "EEE, dd LLL yyyy HH:mm:ss 'GMT'"); } /** * Returns a string representation of this DateTime appropriate for use in SQL Date * @example DateTime.utc(2014, 7, 13).toSQLDate() //=> '2014-07-13' * @return {string|null} */ toSQLDate() { if (!this.isValid) { return null; } return toISODate(this, true); } /** * Returns a string representation of this DateTime appropriate for use in SQL Time * @param {Object} opts - options * @param {boolean} [opts.includeZone=false] - include the zone, such as 'America/New_York'. Overrides includeOffset. * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00' * @param {boolean} [opts.includeOffsetSpace=true] - include the space between the time and the offset, such as '05:15:16.345 -04:00' * @example DateTime.utc().toSQL() //=> '05:15:16.345' * @example DateTime.now().toSQL() //=> '05:15:16.345 -04:00' * @example DateTime.now().toSQL({ includeOffset: false }) //=> '05:15:16.345' * @example DateTime.now().toSQL({ includeZone: false }) //=> '05:15:16.345 America/New_York' * @return {string} */ toSQLTime({ includeOffset = true, includeZone = false, includeOffsetSpace = true } = {}) { let fmt = "HH:mm:ss.SSS"; if (includeZone || includeOffset) { if (includeOffsetSpace) { fmt += " "; } if (includeZone) { fmt += "z"; } else if (includeOffset) { fmt += "ZZ"; } } return toTechFormat(this, fmt, true); } /** * Returns a string representation of this DateTime appropriate for use in SQL DateTime * @param {Object} opts - options * @param {boolean} [opts.includeZone=false] - include the zone, such as 'America/New_York'. Overrides includeOffset. * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00' * @param {boolean} [opts.includeOffsetSpace=true] - include the space between the time and the offset, such as '05:15:16.345 -04:00' * @example DateTime.utc(2014, 7, 13).toSQL() //=> '2014-07-13 00:00:00.000 Z' * @example DateTime.local(2014, 7, 13).toSQL() //=> '2014-07-13 00:00:00.000 -04:00' * @example DateTime.local(2014, 7, 13).toSQL({ includeOffset: false }) //=> '2014-07-13 00:00:00.000' * @example DateTime.local(2014, 7, 13).toSQL({ includeZone: true }) //=> '2014-07-13 00:00:00.000 America/New_York' * @return {string} */ toSQL(opts = {}) { if (!this.isValid) { return null; } return `${this.toSQLDate()} ${this.toSQLTime(opts)}`; } /** * Returns a string representation of this DateTime appropriate for debugging * @return {string} */ toString() { return this.isValid ? this.toISO() : INVALID; } /** * Returns a string representation of this DateTime appropriate for the REPL. * @return {string} */ [Symbol.for("nodejs.util.inspect.custom")]() { if (this.isValid) { return `DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`; } else { return `DateTime { Invalid, reason: ${this.invalidReason} }`; } } /** * Returns the epoch milliseconds of this DateTime. Alias of {@link DateTime#toMillis} * @return {number} */ valueOf() { return this.toMillis(); } /** * Returns the epoch milliseconds of this DateTime. * @return {number} */ toMillis() { return this.isValid ? this.ts : NaN; } /** * Returns the epoch seconds (including milliseconds in the fractional part) of this DateTime. * @return {number} */ toSeconds() { return this.isValid ? this.ts / 1e3 : NaN; } /** * Returns the epoch seconds (as a whole number) of this DateTime. * @return {number} */ toUnixInteger() { return this.isValid ? Math.floor(this.ts / 1e3) : NaN; } /** * Returns an ISO 8601 representation of this DateTime appropriate for use in JSON. * @return {string} */ toJSON() { return this.toISO(); } /** * Returns a BSON serializable equivalent to this DateTime. * @return {Date} */ toBSON() { return this.toJSDate(); } /** * Returns a JavaScript object with this DateTime's year, month, day, and so on. * @param opts - options for generating the object * @param {boolean} [opts.includeConfig=false] - include configuration attributes in the output * @example DateTime.now().toObject() //=> { year: 2017, month: 4, day: 22, hour: 20, minute: 49, second: 42, millisecond: 268 } * @return {Object} */ toObject(opts = {}) { if (!this.isValid) return {}; const base = { ...this.c }; if (opts.includeConfig) { base.outputCalendar = this.outputCalendar; base.numberingSystem = this.loc.numberingSystem; base.locale = this.loc.locale; } return base; } /** * Returns a JavaScript Date equivalent to this DateTime. * @return {Date} */ toJSDate() { return new Date(this.isValid ? this.ts : NaN); } // COMPARE /** * Return the difference between two DateTimes as a Duration. * @param {DateTime} otherDateTime - the DateTime to compare this one to * @param {string|string[]} [unit=['milliseconds']] - the unit or array of units (such as 'hours' or 'days') to include in the duration. * @param {Object} opts - options that affect the creation of the Duration * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use * @example * var i1 = DateTime.fromISO('1982-05-25T09:45'), * i2 = DateTime.fromISO('1983-10-14T10:30'); * i2.diff(i1).toObject() //=> { milliseconds: 43807500000 } * i2.diff(i1, 'hours').toObject() //=> { hours: 12168.75 } * i2.diff(i1, ['months', 'days']).toObject() //=> { months: 16, days: 19.03125 } * i2.diff(i1, ['months', 'days', 'hours']).toObject() //=> { months: 16, days: 19, hours: 0.75 } * @return {Duration} */ diff(otherDateTime, unit = "milliseconds", opts = {}) { if (!this.isValid || !otherDateTime.isValid) { return Duration.invalid("created by diffing an invalid DateTime"); } const durOpts = { locale: this.locale, numberingSystem: this.numberingSystem, ...opts }; const units = maybeArray(unit).map(Duration.normalizeUnit), otherIsLater = otherDateTime.valueOf() > this.valueOf(), earlier = otherIsLater ? this : otherDateTime, later = otherIsLater ? otherDateTime : this, diffed = diff(earlier, later, units, durOpts); return otherIsLater ? diffed.negate() : diffed; } /** * Return the difference between this DateTime and right now. * See {@link DateTime#diff} * @param {string|string[]} [unit=['milliseconds']] - the unit or units units (such as 'hours' or 'days') to include in the duration * @param {Object} opts - options that affect the creation of the Duration * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use * @return {Duration} */ diffNow(unit = "milliseconds", opts = {}) { return this.diff(_DateTime.now(), unit, opts); } /** * Return an Interval spanning between this DateTime and another DateTime * @param {DateTime} otherDateTime - the other end point of the Interval * @return {Interval|DateTime} */ until(otherDateTime) { return this.isValid ? Interval.fromDateTimes(this, otherDateTime) : this; } /** * Return whether this DateTime is in the same unit of time as another DateTime. * Higher-order units must also be identical for this function to return `true`. * Note that time zones are **ignored** in this comparison, which compares the **local** calendar time. Use {@link DateTime#setZone} to convert one of the dates if needed. * @param {DateTime} otherDateTime - the other DateTime * @param {string} unit - the unit of time to check sameness on * @param {Object} opts - options * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week; only the locale of this DateTime is used * @example DateTime.now().hasSame(otherDT, 'day'); //~> true if otherDT is in the same current calendar day * @return {boolean} */ hasSame(otherDateTime, unit, opts) { if (!this.isValid) return false; const inputMs = otherDateTime.valueOf(); const adjustedToZone = this.setZone(otherDateTime.zone, { keepLocalTime: true }); return adjustedToZone.startOf(unit, opts) <= inputMs && inputMs <= adjustedToZone.endOf(unit, opts); } /** * Equality check * Two DateTimes are equal if and only if they represent the same millisecond, have the same zone and location, and are both valid. * To compare just the millisecond values, use `+dt1 === +dt2`. * @param {DateTime} other - the other DateTime * @return {boolean} */ equals(other) { return this.isValid && other.isValid && this.valueOf() === other.valueOf() && this.zone.equals(other.zone) && this.loc.equals(other.loc); } /** * Returns a string representation of a this time relative to now, such as "in two days". Can only internationalize if your * platform supports Intl.RelativeTimeFormat. Rounds towards zero by default. * @param {Object} options - options that affect the output * @param {DateTime} [options.base=DateTime.now()] - the DateTime to use as the basis to which this time is compared. Defaults to now. * @param {string} [options.style="long"] - the style of units, must be "long", "short", or "narrow" * @param {string|string[]} options.unit - use a specific unit or array of units; if omitted, or an array, the method will pick the best unit. Use an array or one of "years", "quarters", "months", "weeks", "days", "hours", "minutes", or "seconds" * @param {boolean} [options.round=true] - whether to round the numbers in the output. * @param {string} [options.rounding="trunc"] - rounding method to use when rounding the numbers in the output. Can be "trunc" (toward zero), "expand" (away from zero), "round", "floor", or "ceil". * @param {number} [options.padding=0] - padding in milliseconds. This allows you to round up the result if it fits inside the threshold. Don't use in combination with {round: false} because the decimal output will include the padding. * @param {string} options.locale - override the locale of this DateTime * @param {string} options.numberingSystem - override the numberingSystem of this DateTime. The Intl system may choose not to honor this * @example DateTime.now().plus({ days: 1 }).toRelative() //=> "in 1 day" * @example DateTime.now().setLocale("es").toRelative({ days: 1 }) //=> "dentro de 1 día" * @example DateTime.now().plus({ days: 1 }).toRelative({ locale: "fr" }) //=> "dans 23 heures" * @example DateTime.now().minus({ days: 2 }).toRelative() //=> "2 days ago" * @example DateTime.now().minus({ days: 2 }).toRelative({ unit: "hours" }) //=> "48 hours ago" * @example DateTime.now().minus({ hours: 36 }).toRelative({ round: false }) //=> "1.5 days ago" */ toRelative(options = {}) { if (!this.isValid) return null; const base = options.base || _DateTime.fromObject({}, { zone: this.zone }), padding = options.padding ? this < base ? -options.padding : options.padding : 0; let units = ["years", "months", "days", "hours", "minutes", "seconds"]; let unit = options.unit; if (Array.isArray(options.unit)) { units = options.unit; unit = void 0; } return diffRelative(base, this.plus(padding), { ...options, numeric: "always", units, unit }); } /** * Returns a string representation of this date relative to today, such as "yesterday" or "next month". * Only internationalizes on platforms that supports Intl.RelativeTimeFormat. * @param {Object} options - options that affect the output * @param {DateTime} [options.base=DateTime.now()] - the DateTime to use as the basis to which this time is compared. Defaults to now. * @param {string} options.locale - override the locale of this DateTime * @param {string} options.unit - use a specific unit; if omitted, the method will pick the unit. Use one of "years", "quarters", "months", "weeks", or "days" * @param {string} options.numberingSystem - override the numberingSystem of this DateTime. The Intl system may choose not to honor this * @example DateTime.now().plus({ days: 1 }).toRelativeCalendar() //=> "tomorrow" * @example DateTime.now().setLocale("es").plus({ days: 1 }).toRelative() //=> ""mañana" * @example DateTime.now().plus({ days: 1 }).toRelativeCalendar({ locale: "fr" }) //=> "demain" * @example DateTime.now().minus({ days: 2 }).toRelativeCalendar() //=> "2 days ago" */ toRelativeCalendar(options = {}) { if (!this.isValid) return null; return diffRelative(options.base || _DateTime.fromObject({}, { zone: this.zone }), this, { ...options, numeric: "auto", units: ["years", "months", "days"], calendary: true }); } /** * Return the min of several date times * @param {...DateTime} dateTimes - the DateTimes from which to choose the minimum * @return {DateTime} the min DateTime, or undefined if called with no argument */ static min(...dateTimes) { if (!dateTimes.every(_DateTime.isDateTime)) { throw new InvalidArgumentError("min requires all arguments be DateTimes"); } return bestBy(dateTimes, (i) => i.valueOf(), Math.min); } /** * Return the max of several date times * @param {...DateTime} dateTimes - the DateTimes from which to choose the maximum * @return {DateTime} the max DateTime, or undefined if called with no argument */ static max(...dateTimes) { if (!dateTimes.every(_DateTime.isDateTime)) { throw new InvalidArgumentError("max requires all arguments be DateTimes"); } return bestBy(dateTimes, (i) => i.valueOf(), Math.max); } // MISC /** * Explain how a string would be parsed by fromFormat() * @param {string} text - the string to parse * @param {string} fmt - the format the string is expected to be in (see description) * @param {Object} options - options taken by fromFormat() * @return {Object} */ static fromFormatExplain(text, fmt, options = {}) { const { locale = null, numberingSystem = null } = options, localeToUse = Locale.fromOpts({ locale, numberingSystem, defaultToEN: true }); return explainFromTokens(localeToUse, text, fmt); } /** * @deprecated use fromFormatExplain instead */ static fromStringExplain(text, fmt, options = {}) { return _DateTime.fromFormatExplain(text, fmt, options); } /** * Build a parser for `fmt` using the given locale. This parser can be passed * to {@link DateTime.fromFormatParser} to a parse a date in this format. This * can be used to optimize cases where many dates need to be parsed in a * specific format. * * @param {String} fmt - the format the string is expected to be in (see * description) * @param {Object} options - options used to set locale and numberingSystem * for parser * @returns {TokenParser} - opaque object to be used */ static buildFormatParser(fmt, options = {}) { const { locale = null, numberingSystem = null } = options, localeToUse = Locale.fromOpts({ locale, numberingSystem, defaultToEN: true }); return new TokenParser(localeToUse, fmt); } /** * Create a DateTime from an input string and format parser. * * The format parser must have been created with the same locale as this call. * * @param {String} text - the string to parse * @param {TokenParser} formatParser - parser from {@link DateTime.buildFormatParser} * @param {Object} opts - options taken by fromFormat() * @returns {DateTime} */ static fromFormatParser(text, formatParser, opts = {}) { if (isUndefined(text) || isUndefined(formatParser)) { throw new InvalidArgumentError("fromFormatParser requires an input string and a format parser"); } const { locale = null, numberingSystem = null } = opts, localeToUse = Locale.fromOpts({ locale, numberingSystem, defaultToEN: true }); if (!localeToUse.equals(formatParser.locale)) { throw new InvalidArgumentError(`fromFormatParser called with a locale of ${localeToUse}, but the format parser was created for ${formatParser.locale}`); } const { result, zone, specificOffset, invalidReason } = formatParser.explainFromTokens(text); if (invalidReason) { return _DateTime.invalid(invalidReason); } else { return parseDataToDateTime(result, zone, opts, `format ${formatParser.format}`, text, specificOffset); } } // FORMAT PRESETS /** * {@link DateTime#toLocaleString} format like 10/14/1983 * @type {Object} */ static get DATE_SHORT() { return DATE_SHORT; } /** * {@link DateTime#toLocaleString} format like 'Oct 14, 1983' * @type {Object} */ static get DATE_MED() { return DATE_MED; } /** * {@link DateTime#toLocaleString} format like 'Fri, Oct 14, 1983' * @type {Object} */ static get DATE_MED_WITH_WEEKDAY() { return DATE_MED_WITH_WEEKDAY; } /** * {@link DateTime#toLocaleString} format like 'October 14, 1983' * @type {Object} */ static get DATE_FULL() { return DATE_FULL; } /** * {@link DateTime#toLocaleString} format like 'Tuesday, October 14, 1983' * @type {Object} */ static get DATE_HUGE() { return DATE_HUGE; } /** * {@link DateTime#toLocaleString} format like '09:30 AM'. Only 12-hour if the locale is. * @type {Object} */ static get TIME_SIMPLE() { return TIME_SIMPLE; } /** * {@link DateTime#toLocaleString} format like '09:30:23 AM'. Only 12-hour if the locale is. * @type {Object} */ static get TIME_WITH_SECONDS() { return TIME_WITH_SECONDS; } /** * {@link DateTime#toLocaleString} format like '09:30:23 AM EDT'. Only 12-hour if the locale is. * @type {Object} */ static get TIME_WITH_SHORT_OFFSET() { return TIME_WITH_SHORT_OFFSET; } /** * {@link DateTime#toLocaleString} format like '09:30:23 AM Eastern Daylight Time'. Only 12-hour if the locale is. * @type {Object} */ static get TIME_WITH_LONG_OFFSET() { return TIME_WITH_LONG_OFFSET; } /** * {@link DateTime#toLocaleString} format like '09:30', always 24-hour. * @type {Object} */ static get TIME_24_SIMPLE() { return TIME_24_SIMPLE; } /** * {@link DateTime#toLocaleString} format like '09:30:23', always 24-hour. * @type {Object} */ static get TIME_24_WITH_SECONDS() { return TIME_24_WITH_SECONDS; } /** * {@link DateTime#toLocaleString} format like '09:30:23 EDT', always 24-hour. * @type {Object} */ static get TIME_24_WITH_SHORT_OFFSET() { return TIME_24_WITH_SHORT_OFFSET; } /** * {@link DateTime#toLocaleString} format like '09:30:23 Eastern Daylight Time', always 24-hour. * @type {Object} */ static get TIME_24_WITH_LONG_OFFSET() { return TIME_24_WITH_LONG_OFFSET; } /** * {@link DateTime#toLocaleString} format like '10/14/1983, 9:30 AM'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_SHORT() { return DATETIME_SHORT; } /** * {@link DateTime#toLocaleString} format like '10/14/1983, 9:30:33 AM'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_SHORT_WITH_SECONDS() { return DATETIME_SHORT_WITH_SECONDS; } /** * {@link DateTime#toLocaleString} format like 'Oct 14, 1983, 9:30 AM'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_MED() { return DATETIME_MED; } /** * {@link DateTime#toLocaleString} format like 'Oct 14, 1983, 9:30:33 AM'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_MED_WITH_SECONDS() { return DATETIME_MED_WITH_SECONDS; } /** * {@link DateTime#toLocaleString} format like 'Fri, 14 Oct 1983, 9:30 AM'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_MED_WITH_WEEKDAY() { return DATETIME_MED_WITH_WEEKDAY; } /** * {@link DateTime#toLocaleString} format like 'October 14, 1983, 9:30 AM EDT'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_FULL() { return DATETIME_FULL; } /** * {@link DateTime#toLocaleString} format like 'October 14, 1983, 9:30:33 AM EDT'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_FULL_WITH_SECONDS() { return DATETIME_FULL_WITH_SECONDS; } /** * {@link DateTime#toLocaleString} format like 'Friday, October 14, 1983, 9:30 AM Eastern Daylight Time'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_HUGE() { return DATETIME_HUGE; } /** * {@link DateTime#toLocaleString} format like 'Friday, October 14, 1983, 9:30:33 AM Eastern Daylight Time'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_HUGE_WITH_SECONDS() { return DATETIME_HUGE_WITH_SECONDS; } }; function friendlyDateTime(dateTimeish) { if (DateTime.isDateTime(dateTimeish)) { return dateTimeish; } else if (dateTimeish && dateTimeish.valueOf && isNumber(dateTimeish.valueOf())) { return DateTime.fromJSDate(dateTimeish); } else if (dateTimeish && typeof dateTimeish === "object") { return DateTime.fromObject(dateTimeish); } else { throw new InvalidArgumentError(`Unknown datetime argument: ${dateTimeish}, of type ${typeof dateTimeish}`); } } __name(friendlyDateTime, "friendlyDateTime"); var VERSION = "3.7.2"; exports2.DateTime = DateTime; exports2.Duration = Duration; exports2.FixedOffsetZone = FixedOffsetZone; exports2.IANAZone = IANAZone; exports2.Info = Info; exports2.Interval = Interval; exports2.InvalidZone = InvalidZone; exports2.Settings = Settings; exports2.SystemZone = SystemZone; exports2.VERSION = VERSION; exports2.Zone = Zone; } }); // ../../node_modules/.pnpm/cron-parser@4.9.0/node_modules/cron-parser/lib/date.js var require_date = __commonJS({ "../../node_modules/.pnpm/cron-parser@4.9.0/node_modules/cron-parser/lib/date.js"(exports2, module2) { "use strict"; var luxon = require_luxon(); CronDate.prototype.addYear = function() { this._date = this._date.plus({ years: 1 }); }; CronDate.prototype.addMonth = function() { this._date = this._date.plus({ months: 1 }).startOf("month"); }; CronDate.prototype.addDay = function() { this._date = this._date.plus({ days: 1 }).startOf("day"); }; CronDate.prototype.addHour = function() { var prev = this._date; this._date = this._date.plus({ hours: 1 }).startOf("hour"); if (this._date <= prev) { this._date = this._date.plus({ hours: 1 }); } }; CronDate.prototype.addMinute = function() { var prev = this._date; this._date = this._date.plus({ minutes: 1 }).startOf("minute"); if (this._date < prev) { this._date = this._date.plus({ hours: 1 }); } }; CronDate.prototype.addSecond = function() { var prev = this._date; this._date = this._date.plus({ seconds: 1 }).startOf("second"); if (this._date < prev) { this._date = this._date.plus({ hours: 1 }); } }; CronDate.prototype.subtractYear = function() { this._date = this._date.minus({ years: 1 }); }; CronDate.prototype.subtractMonth = function() { this._date = this._date.minus({ months: 1 }).endOf("month").startOf("second"); }; CronDate.prototype.subtractDay = function() { this._date = this._date.minus({ days: 1 }).endOf("day").startOf("second"); }; CronDate.prototype.subtractHour = function() { var prev = this._date; this._date = this._date.minus({ hours: 1 }).endOf("hour").startOf("second"); if (this._date >= prev) { this._date = this._date.minus({ hours: 1 }); } }; CronDate.prototype.subtractMinute = function() { var prev = this._date; this._date = this._date.minus({ minutes: 1 }).endOf("minute").startOf("second"); if (this._date > prev) { this._date = this._date.minus({ hours: 1 }); } }; CronDate.prototype.subtractSecond = function() { var prev = this._date; this._date = this._date.minus({ seconds: 1 }).startOf("second"); if (this._date > prev) { this._date = this._date.minus({ hours: 1 }); } }; CronDate.prototype.getDate = function() { return this._date.day; }; CronDate.prototype.getFullYear = function() { return this._date.year; }; CronDate.prototype.getDay = function() { var weekday = this._date.weekday; return weekday == 7 ? 0 : weekday; }; CronDate.prototype.getMonth = function() { return this._date.month - 1; }; CronDate.prototype.getHours = function() { return this._date.hour; }; CronDate.prototype.getMinutes = function() { return this._date.minute; }; CronDate.prototype.getSeconds = function() { return this._date.second; }; CronDate.prototype.getMilliseconds = function() { return this._date.millisecond; }; CronDate.prototype.getTime = function() { return this._date.valueOf(); }; CronDate.prototype.getUTCDate = function() { return this._getUTC().day; }; CronDate.prototype.getUTCFullYear = function() { return this._getUTC().year; }; CronDate.prototype.getUTCDay = function() { var weekday = this._getUTC().weekday; return weekday == 7 ? 0 : weekday; }; CronDate.prototype.getUTCMonth = function() { return this._getUTC().month - 1; }; CronDate.prototype.getUTCHours = function() { return this._getUTC().hour; }; CronDate.prototype.getUTCMinutes = function() { return this._getUTC().minute; }; CronDate.prototype.getUTCSeconds = function() { return this._getUTC().second; }; CronDate.prototype.toISOString = function() { return this._date.toUTC().toISO(); }; CronDate.prototype.toJSON = function() { return this._date.toJSON(); }; CronDate.prototype.setDate = function(d) { this._date = this._date.set({ day: d }); }; CronDate.prototype.setFullYear = function(y) { this._date = this._date.set({ year: y }); }; CronDate.prototype.setDay = function(d) { this._date = this._date.set({ weekday: d }); }; CronDate.prototype.setMonth = function(m) { this._date = this._date.set({ month: m + 1 }); }; CronDate.prototype.setHours = function(h) { this._date = this._date.set({ hour: h }); }; CronDate.prototype.setMinutes = function(m) { this._date = this._date.set({ minute: m }); }; CronDate.prototype.setSeconds = function(s) { this._date = this._date.set({ second: s }); }; CronDate.prototype.setMilliseconds = function(s) { this._date = this._date.set({ millisecond: s }); }; CronDate.prototype._getUTC = function() { return this._date.toUTC(); }; CronDate.prototype.toString = function() { return this.toDate().toString(); }; CronDate.prototype.toDate = function() { return this._date.toJSDate(); }; CronDate.prototype.isLastDayOfMonth = function() { var newDate = this._date.plus({ days: 1 }).startOf("day"); return this._date.month !== newDate.month; }; CronDate.prototype.isLastWeekdayOfMonth = function() { var newDate = this._date.plus({ days: 7 }).startOf("day"); return this._date.month !== newDate.month; }; function CronDate(timestamp, tz) { var dateOpts = { zone: tz }; if (!timestamp) { this._date = luxon.DateTime.local(); } else if (timestamp instanceof CronDate) { this._date = timestamp._date; } else if (timestamp instanceof Date) { this._date = luxon.DateTime.fromJSDate(timestamp, dateOpts); } else if (typeof timestamp === "number") { this._date = luxon.DateTime.fromMillis(timestamp, dateOpts); } else if (typeof timestamp === "string") { this._date = luxon.DateTime.fromISO(timestamp, dateOpts); this._date.isValid || (this._date = luxon.DateTime.fromRFC2822(timestamp, dateOpts)); this._date.isValid || (this._date = luxon.DateTime.fromSQL(timestamp, dateOpts)); this._date.isValid || (this._date = luxon.DateTime.fromFormat(timestamp, "EEE, d MMM yyyy HH:mm:ss", dateOpts)); } if (!this._date || !this._date.isValid) { throw new Error("CronDate: unhandled timestamp: " + JSON.stringify(timestamp)); } if (tz && tz !== this._date.zoneName) { this._date = this._date.setZone(tz); } } __name(CronDate, "CronDate"); module2.exports = CronDate; } }); // ../../node_modules/.pnpm/cron-parser@4.9.0/node_modules/cron-parser/lib/field_compactor.js var require_field_compactor = __commonJS({ "../../node_modules/.pnpm/cron-parser@4.9.0/node_modules/cron-parser/lib/field_compactor.js"(exports2, module2) { "use strict"; function buildRange(item) { return { start: item, count: 1 }; } __name(buildRange, "buildRange"); function completeRangeWithItem(range, item) { range.end = item; range.step = item - range.start; range.count = 2; } __name(completeRangeWithItem, "completeRangeWithItem"); function finalizeCurrentRange(results, currentRange, currentItemRange) { if (currentRange) { if (currentRange.count === 2) { results.push(buildRange(currentRange.start)); results.push(buildRange(currentRange.end)); } else { results.push(currentRange); } } if (currentItemRange) { results.push(currentItemRange); } } __name(finalizeCurrentRange, "finalizeCurrentRange"); function compactField(arr) { var results = []; var currentRange = void 0; for (var i = 0; i < arr.length; i++) { var currentItem = arr[i]; if (typeof currentItem !== "number") { finalizeCurrentRange(results, currentRange, buildRange(currentItem)); currentRange = void 0; } else if (!currentRange) { currentRange = buildRange(currentItem); } else if (currentRange.count === 1) { completeRangeWithItem(currentRange, currentItem); } else { if (currentRange.step === currentItem - currentRange.end) { currentRange.count++; currentRange.end = currentItem; } else if (currentRange.count === 2) { results.push(buildRange(currentRange.start)); currentRange = buildRange(currentRange.end); completeRangeWithItem(currentRange, currentItem); } else { finalizeCurrentRange(results, currentRange); currentRange = buildRange(currentItem); } } } finalizeCurrentRange(results, currentRange); return results; } __name(compactField, "compactField"); module2.exports = compactField; } }); // ../../node_modules/.pnpm/cron-parser@4.9.0/node_modules/cron-parser/lib/field_stringify.js var require_field_stringify = __commonJS({ "../../node_modules/.pnpm/cron-parser@4.9.0/node_modules/cron-parser/lib/field_stringify.js"(exports2, module2) { "use strict"; var compactField = require_field_compactor(); function stringifyField(arr, min, max) { var ranges = compactField(arr); if (ranges.length === 1) { var singleRange = ranges[0]; var step = singleRange.step; if (step === 1 && singleRange.start === min && singleRange.end === max) { return "*"; } if (step !== 1 && singleRange.start === min && singleRange.end === max - step + 1) { return "*/" + step; } } var result = []; for (var i = 0, l2 = ranges.length; i < l2; ++i) { var range = ranges[i]; if (range.count === 1) { result.push(range.start); continue; } var step = range.step; if (range.step === 1) { result.push(range.start + "-" + range.end); continue; } var multiplier = range.start == 0 ? range.count - 1 : range.count; if (range.step * multiplier > range.end) { result = result.concat( Array.from({ length: range.end - range.start + 1 }).map(function(_2, index) { var value = range.start + index; if ((value - range.start) % range.step === 0) { return value; } return null; }).filter(function(value) { return value != null; }) ); } else if (range.end === max - range.step + 1) { result.push(range.start + "/" + range.step); } else { result.push(range.start + "-" + range.end + "/" + range.step); } } return result.join(","); } __name(stringifyField, "stringifyField"); module2.exports = stringifyField; } }); // ../../node_modules/.pnpm/cron-parser@4.9.0/node_modules/cron-parser/lib/expression.js var require_expression = __commonJS({ "../../node_modules/.pnpm/cron-parser@4.9.0/node_modules/cron-parser/lib/expression.js"(exports2, module2) { "use strict"; var CronDate = require_date(); var stringifyField = require_field_stringify(); var LOOP_LIMIT = 1e4; function CronExpression(fields, options) { this._options = options; this._utc = options.utc || false; this._tz = this._utc ? "UTC" : options.tz; this._currentDate = new CronDate(options.currentDate, this._tz); this._startDate = options.startDate ? new CronDate(options.startDate, this._tz) : null; this._endDate = options.endDate ? new CronDate(options.endDate, this._tz) : null; this._isIterator = options.iterator || false; this._hasIterated = false; this._nthDayOfWeek = options.nthDayOfWeek || 0; this.fields = CronExpression._freezeFields(fields); } __name(CronExpression, "CronExpression"); CronExpression.map = ["second", "minute", "hour", "dayOfMonth", "month", "dayOfWeek"]; CronExpression.predefined = { "@yearly": "0 0 1 1 *", "@monthly": "0 0 1 * *", "@weekly": "0 0 * * 0", "@daily": "0 0 * * *", "@hourly": "0 * * * *" }; CronExpression.constraints = [ { min: 0, max: 59, chars: [] }, // Second { min: 0, max: 59, chars: [] }, // Minute { min: 0, max: 23, chars: [] }, // Hour { min: 1, max: 31, chars: ["L"] }, // Day of month { min: 1, max: 12, chars: [] }, // Month { min: 0, max: 7, chars: ["L"] } // Day of week ]; CronExpression.daysInMonth = [ 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ]; CronExpression.aliases = { month: { jan: 1, feb: 2, mar: 3, apr: 4, may: 5, jun: 6, jul: 7, aug: 8, sep: 9, oct: 10, nov: 11, dec: 12 }, dayOfWeek: { sun: 0, mon: 1, tue: 2, wed: 3, thu: 4, fri: 5, sat: 6 } }; CronExpression.parseDefaults = ["0", "*", "*", "*", "*", "*"]; CronExpression.standardValidCharacters = /^[,*\d/-]+$/; CronExpression.dayOfWeekValidCharacters = /^[?,*\dL#/-]+$/; CronExpression.dayOfMonthValidCharacters = /^[?,*\dL/-]+$/; CronExpression.validCharacters = { second: CronExpression.standardValidCharacters, minute: CronExpression.standardValidCharacters, hour: CronExpression.standardValidCharacters, dayOfMonth: CronExpression.dayOfMonthValidCharacters, month: CronExpression.standardValidCharacters, dayOfWeek: CronExpression.dayOfWeekValidCharacters }; CronExpression._isValidConstraintChar = /* @__PURE__ */ __name(function _isValidConstraintChar(constraints, value) { if (typeof value !== "string") { return false; } return constraints.chars.some(function(char) { return value.indexOf(char) > -1; }); }, "_isValidConstraintChar"); CronExpression._parseField = /* @__PURE__ */ __name(function _parseField(field, value, constraints) { switch (field) { case "month": case "dayOfWeek": var aliases = CronExpression.aliases[field]; value = value.replace(/[a-z]{3}/gi, function(match) { match = match.toLowerCase(); if (typeof aliases[match] !== "undefined") { return aliases[match]; } else { throw new Error('Validation error, cannot resolve alias "' + match + '"'); } }); break; } if (!CronExpression.validCharacters[field].test(value)) { throw new Error("Invalid characters, got value: " + value); } if (value.indexOf("*") !== -1) { value = value.replace(/\*/g, constraints.min + "-" + constraints.max); } else if (value.indexOf("?") !== -1) { value = value.replace(/\?/g, constraints.min + "-" + constraints.max); } function parseSequence(val) { var stack = []; function handleResult(result) { if (result instanceof Array) { for (var i2 = 0, c2 = result.length; i2 < c2; i2++) { var value2 = result[i2]; if (CronExpression._isValidConstraintChar(constraints, value2)) { stack.push(value2); continue; } if (typeof value2 !== "number" || Number.isNaN(value2) || value2 < constraints.min || value2 > constraints.max) { throw new Error( "Constraint error, got value " + value2 + " expected range " + constraints.min + "-" + constraints.max ); } stack.push(value2); } } else { if (CronExpression._isValidConstraintChar(constraints, result)) { stack.push(result); return; } var numResult = +result; if (Number.isNaN(numResult) || numResult < constraints.min || numResult > constraints.max) { throw new Error( "Constraint error, got value " + result + " expected range " + constraints.min + "-" + constraints.max ); } if (field === "dayOfWeek") { numResult = numResult % 7; } stack.push(numResult); } } __name(handleResult, "handleResult"); var atoms = val.split(","); if (!atoms.every(function(atom) { return atom.length > 0; })) { throw new Error("Invalid list value format"); } if (atoms.length > 1) { for (var i = 0, c = atoms.length; i < c; i++) { handleResult(parseRepeat(atoms[i])); } } else { handleResult(parseRepeat(val)); } stack.sort(CronExpression._sortCompareFn); return stack; } __name(parseSequence, "parseSequence"); function parseRepeat(val) { var repeatInterval = 1; var atoms = val.split("/"); if (atoms.length > 2) { throw new Error("Invalid repeat: " + val); } if (atoms.length > 1) { if (atoms[0] == +atoms[0]) { atoms = [atoms[0] + "-" + constraints.max, atoms[1]]; } return parseRange(atoms[0], atoms[atoms.length - 1]); } return parseRange(val, repeatInterval); } __name(parseRepeat, "parseRepeat"); function parseRange(val, repeatInterval) { var stack = []; var atoms = val.split("-"); if (atoms.length > 1) { if (atoms.length < 2) { return +val; } if (!atoms[0].length) { if (!atoms[1].length) { throw new Error("Invalid range: " + val); } return +val; } var min = +atoms[0]; var max = +atoms[1]; if (Number.isNaN(min) || Number.isNaN(max) || min < constraints.min || max > constraints.max) { throw new Error( "Constraint error, got range " + min + "-" + max + " expected range " + constraints.min + "-" + constraints.max ); } else if (min > max) { throw new Error("Invalid range: " + val); } var repeatIndex = +repeatInterval; if (Number.isNaN(repeatIndex) || repeatIndex <= 0) { throw new Error("Constraint error, cannot repeat at every " + repeatIndex + " time."); } if (field === "dayOfWeek" && max % 7 === 0) { stack.push(0); } for (var index = min, count = max; index <= count; index++) { var exists = stack.indexOf(index) !== -1; if (!exists && repeatIndex > 0 && repeatIndex % repeatInterval === 0) { repeatIndex = 1; stack.push(index); } else { repeatIndex++; } } return stack; } return Number.isNaN(+val) ? val : +val; } __name(parseRange, "parseRange"); return parseSequence(value); }, "_parseField"); CronExpression._sortCompareFn = function(a, b) { var aIsNumber = typeof a === "number"; var bIsNumber = typeof b === "number"; if (aIsNumber && bIsNumber) { return a - b; } if (!aIsNumber && bIsNumber) { return 1; } if (aIsNumber && !bIsNumber) { return -1; } return a.localeCompare(b); }; CronExpression._handleMaxDaysInMonth = function(mappedFields) { if (mappedFields.month.length === 1) { var daysInMonth = CronExpression.daysInMonth[mappedFields.month[0] - 1]; if (mappedFields.dayOfMonth[0] > daysInMonth) { throw new Error("Invalid explicit day of month definition"); } return mappedFields.dayOfMonth.filter(function(dayOfMonth) { return dayOfMonth === "L" ? true : dayOfMonth <= daysInMonth; }).sort(CronExpression._sortCompareFn); } }; CronExpression._freezeFields = function(fields) { for (var i = 0, c = CronExpression.map.length; i < c; ++i) { var field = CronExpression.map[i]; var value = fields[field]; fields[field] = Object.freeze(value); } return Object.freeze(fields); }; CronExpression.prototype._applyTimezoneShift = function(currentDate, dateMathVerb, method) { if (method === "Month" || method === "Day") { var prevTime = currentDate.getTime(); currentDate[dateMathVerb + method](); var currTime = currentDate.getTime(); if (prevTime === currTime) { if (currentDate.getMinutes() === 0 && currentDate.getSeconds() === 0) { currentDate.addHour(); } else if (currentDate.getMinutes() === 59 && currentDate.getSeconds() === 59) { currentDate.subtractHour(); } } } else { var previousHour = currentDate.getHours(); currentDate[dateMathVerb + method](); var currentHour = currentDate.getHours(); var diff = currentHour - previousHour; if (diff === 2) { if (this.fields.hour.length !== 24) { this._dstStart = currentHour; } } else if (diff === 0 && currentDate.getMinutes() === 0 && currentDate.getSeconds() === 0) { if (this.fields.hour.length !== 24) { this._dstEnd = currentHour; } } } }; CronExpression.prototype._findSchedule = /* @__PURE__ */ __name(function _findSchedule(reverse) { function matchSchedule(value, sequence) { for (var i = 0, c = sequence.length; i < c; i++) { if (sequence[i] >= value) { return sequence[i] === value; } } return sequence[0] === value; } __name(matchSchedule, "matchSchedule"); function isNthDayMatch(date, nthDayOfWeek) { if (nthDayOfWeek < 6) { if (date.getDate() < 8 && nthDayOfWeek === 1) { return true; } var offset = date.getDate() % 7 ? 1 : 0; var adjustedDate = date.getDate() - date.getDate() % 7; var occurrence = Math.floor(adjustedDate / 7) + offset; return occurrence === nthDayOfWeek; } return false; } __name(isNthDayMatch, "isNthDayMatch"); function isLInExpressions(expressions) { return expressions.length > 0 && expressions.some(function(expression) { return typeof expression === "string" && expression.indexOf("L") >= 0; }); } __name(isLInExpressions, "isLInExpressions"); reverse = reverse || false; var dateMathVerb = reverse ? "subtract" : "add"; var currentDate = new CronDate(this._currentDate, this._tz); var startDate = this._startDate; var endDate = this._endDate; var startTimestamp = currentDate.getTime(); var stepCount = 0; function isLastWeekdayOfMonthMatch(expressions) { return expressions.some(function(expression) { if (!isLInExpressions([expression])) { return false; } var weekday = Number.parseInt(expression[0]) % 7; if (Number.isNaN(weekday)) { throw new Error("Invalid last weekday of the month expression: " + expression); } return currentDate.getDay() === weekday && currentDate.isLastWeekdayOfMonth(); }); } __name(isLastWeekdayOfMonthMatch, "isLastWeekdayOfMonthMatch"); while (stepCount < LOOP_LIMIT) { stepCount++; if (reverse) { if (startDate && currentDate.getTime() - startDate.getTime() < 0) { throw new Error("Out of the timespan range"); } } else { if (endDate && endDate.getTime() - currentDate.getTime() < 0) { throw new Error("Out of the timespan range"); } } var dayOfMonthMatch = matchSchedule(currentDate.getDate(), this.fields.dayOfMonth); if (isLInExpressions(this.fields.dayOfMonth)) { dayOfMonthMatch = dayOfMonthMatch || currentDate.isLastDayOfMonth(); } var dayOfWeekMatch = matchSchedule(currentDate.getDay(), this.fields.dayOfWeek); if (isLInExpressions(this.fields.dayOfWeek)) { dayOfWeekMatch = dayOfWeekMatch || isLastWeekdayOfMonthMatch(this.fields.dayOfWeek); } var isDayOfMonthWildcardMatch = this.fields.dayOfMonth.length >= CronExpression.daysInMonth[currentDate.getMonth()]; var isDayOfWeekWildcardMatch = this.fields.dayOfWeek.length === CronExpression.constraints[5].max - CronExpression.constraints[5].min + 1; var currentHour = currentDate.getHours(); if (!dayOfMonthMatch && (!dayOfWeekMatch || isDayOfWeekWildcardMatch)) { this._applyTimezoneShift(currentDate, dateMathVerb, "Day"); continue; } if (!isDayOfMonthWildcardMatch && isDayOfWeekWildcardMatch && !dayOfMonthMatch) { this._applyTimezoneShift(currentDate, dateMathVerb, "Day"); continue; } if (isDayOfMonthWildcardMatch && !isDayOfWeekWildcardMatch && !dayOfWeekMatch) { this._applyTimezoneShift(currentDate, dateMathVerb, "Day"); continue; } if (this._nthDayOfWeek > 0 && !isNthDayMatch(currentDate, this._nthDayOfWeek)) { this._applyTimezoneShift(currentDate, dateMathVerb, "Day"); continue; } if (!matchSchedule(currentDate.getMonth() + 1, this.fields.month)) { this._applyTimezoneShift(currentDate, dateMathVerb, "Month"); continue; } if (!matchSchedule(currentHour, this.fields.hour)) { if (this._dstStart !== currentHour) { this._dstStart = null; this._applyTimezoneShift(currentDate, dateMathVerb, "Hour"); continue; } else if (!matchSchedule(currentHour - 1, this.fields.hour)) { currentDate[dateMathVerb + "Hour"](); continue; } } else if (this._dstEnd === currentHour) { if (!reverse) { this._dstEnd = null; this._applyTimezoneShift(currentDate, "add", "Hour"); continue; } } if (!matchSchedule(currentDate.getMinutes(), this.fields.minute)) { this._applyTimezoneShift(currentDate, dateMathVerb, "Minute"); continue; } if (!matchSchedule(currentDate.getSeconds(), this.fields.second)) { this._applyTimezoneShift(currentDate, dateMathVerb, "Second"); continue; } if (startTimestamp === currentDate.getTime()) { if (dateMathVerb === "add" || currentDate.getMilliseconds() === 0) { this._applyTimezoneShift(currentDate, dateMathVerb, "Second"); } else { currentDate.setMilliseconds(0); } continue; } break; } if (stepCount >= LOOP_LIMIT) { throw new Error("Invalid expression, loop limit exceeded"); } this._currentDate = new CronDate(currentDate, this._tz); this._hasIterated = true; return currentDate; }, "_findSchedule"); CronExpression.prototype.next = /* @__PURE__ */ __name(function next() { var schedule = this._findSchedule(); if (this._isIterator) { return { value: schedule, done: !this.hasNext() }; } return schedule; }, "next"); CronExpression.prototype.prev = /* @__PURE__ */ __name(function prev() { var schedule = this._findSchedule(true); if (this._isIterator) { return { value: schedule, done: !this.hasPrev() }; } return schedule; }, "prev"); CronExpression.prototype.hasNext = function() { var current = this._currentDate; var hasIterated = this._hasIterated; try { this._findSchedule(); return true; } catch (err) { return false; } finally { this._currentDate = current; this._hasIterated = hasIterated; } }; CronExpression.prototype.hasPrev = function() { var current = this._currentDate; var hasIterated = this._hasIterated; try { this._findSchedule(true); return true; } catch (err) { return false; } finally { this._currentDate = current; this._hasIterated = hasIterated; } }; CronExpression.prototype.iterate = /* @__PURE__ */ __name(function iterate(steps, callback) { var dates = []; if (steps >= 0) { for (var i = 0, c = steps; i < c; i++) { try { var item = this.next(); dates.push(item); if (callback) { callback(item, i); } } catch (err) { break; } } } else { for (var i = 0, c = steps; i > c; i--) { try { var item = this.prev(); dates.push(item); if (callback) { callback(item, i); } } catch (err) { break; } } } return dates; }, "iterate"); CronExpression.prototype.reset = /* @__PURE__ */ __name(function reset(newDate) { this._currentDate = new CronDate(newDate || this._options.currentDate); }, "reset"); CronExpression.prototype.stringify = /* @__PURE__ */ __name(function stringify2(includeSeconds) { var resultArr = []; for (var i = includeSeconds ? 0 : 1, c = CronExpression.map.length; i < c; ++i) { var field = CronExpression.map[i]; var value = this.fields[field]; var constraint = CronExpression.constraints[i]; if (field === "dayOfMonth" && this.fields.month.length === 1) { constraint = { min: 1, max: CronExpression.daysInMonth[this.fields.month[0] - 1] }; } else if (field === "dayOfWeek") { constraint = { min: 0, max: 6 }; value = value[value.length - 1] === 7 ? value.slice(0, -1) : value; } resultArr.push(stringifyField(value, constraint.min, constraint.max)); } return resultArr.join(" "); }, "stringify"); CronExpression.parse = /* @__PURE__ */ __name(function parse2(expression, options) { var self2 = this; if (typeof options === "function") { options = {}; } function parse3(expression2, options2) { if (!options2) { options2 = {}; } if (typeof options2.currentDate === "undefined") { options2.currentDate = new CronDate(void 0, self2._tz); } if (CronExpression.predefined[expression2]) { expression2 = CronExpression.predefined[expression2]; } var fields = []; var atoms = (expression2 + "").trim().split(/\s+/); if (atoms.length > 6) { throw new Error("Invalid cron expression"); } var start = CronExpression.map.length - atoms.length; for (var i = 0, c = CronExpression.map.length; i < c; ++i) { var field = CronExpression.map[i]; var value = atoms[atoms.length > c ? i : i - start]; if (i < start || !value) { fields.push( CronExpression._parseField( field, CronExpression.parseDefaults[i], CronExpression.constraints[i] ) ); } else { var val = field === "dayOfWeek" ? parseNthDay(value) : value; fields.push( CronExpression._parseField( field, val, CronExpression.constraints[i] ) ); } } var mappedFields = {}; for (var i = 0, c = CronExpression.map.length; i < c; i++) { var key = CronExpression.map[i]; mappedFields[key] = fields[i]; } var dayOfMonth = CronExpression._handleMaxDaysInMonth(mappedFields); mappedFields.dayOfMonth = dayOfMonth || mappedFields.dayOfMonth; return new CronExpression(mappedFields, options2); function parseNthDay(val2) { var atoms2 = val2.split("#"); if (atoms2.length > 1) { var nthValue = +atoms2[atoms2.length - 1]; if (/,/.test(val2)) { throw new Error("Constraint error, invalid dayOfWeek `#` and `,` special characters are incompatible"); } if (/\//.test(val2)) { throw new Error("Constraint error, invalid dayOfWeek `#` and `/` special characters are incompatible"); } if (/-/.test(val2)) { throw new Error("Constraint error, invalid dayOfWeek `#` and `-` special characters are incompatible"); } if (atoms2.length > 2 || Number.isNaN(nthValue) || (nthValue < 1 || nthValue > 5)) { throw new Error("Constraint error, invalid dayOfWeek occurrence number (#)"); } options2.nthDayOfWeek = nthValue; return atoms2[0]; } return val2; } __name(parseNthDay, "parseNthDay"); } __name(parse3, "parse"); return parse3(expression, options); }, "parse"); CronExpression.fieldsToExpression = /* @__PURE__ */ __name(function fieldsToExpression(fields, options) { function validateConstraints(field2, values2, constraints) { if (!values2) { throw new Error("Validation error, Field " + field2 + " is missing"); } if (values2.length === 0) { throw new Error("Validation error, Field " + field2 + " contains no values"); } for (var i2 = 0, c2 = values2.length; i2 < c2; i2++) { var value = values2[i2]; if (CronExpression._isValidConstraintChar(constraints, value)) { continue; } if (typeof value !== "number" || Number.isNaN(value) || value < constraints.min || value > constraints.max) { throw new Error( "Constraint error, got value " + value + " expected range " + constraints.min + "-" + constraints.max ); } } } __name(validateConstraints, "validateConstraints"); var mappedFields = {}; for (var i = 0, c = CronExpression.map.length; i < c; ++i) { var field = CronExpression.map[i]; var values = fields[field]; validateConstraints( field, values, CronExpression.constraints[i] ); var copy = []; var j = -1; while (++j < values.length) { copy[j] = values[j]; } values = copy.sort(CronExpression._sortCompareFn).filter(function(item, pos, ary) { return !pos || item !== ary[pos - 1]; }); if (values.length !== copy.length) { throw new Error("Validation error, Field " + field + " contains duplicate values"); } mappedFields[field] = values; } var dayOfMonth = CronExpression._handleMaxDaysInMonth(mappedFields); mappedFields.dayOfMonth = dayOfMonth || mappedFields.dayOfMonth; return new CronExpression(mappedFields, options || {}); }, "fieldsToExpression"); module2.exports = CronExpression; } }); // ../../node_modules/.pnpm/cron-parser@4.9.0/node_modules/cron-parser/lib/parser.js var require_parser2 = __commonJS({ "../../node_modules/.pnpm/cron-parser@4.9.0/node_modules/cron-parser/lib/parser.js"(exports2, module2) { "use strict"; var CronExpression = require_expression(); function CronParser() { } __name(CronParser, "CronParser"); CronParser._parseEntry = /* @__PURE__ */ __name(function _parseEntry(entry) { var atoms = entry.split(" "); if (atoms.length === 6) { return { interval: CronExpression.parse(entry) }; } else if (atoms.length > 6) { return { interval: CronExpression.parse( atoms.slice(0, 6).join(" ") ), command: atoms.slice(6, atoms.length) }; } else { throw new Error("Invalid entry: " + entry); } }, "_parseEntry"); CronParser.parseExpression = /* @__PURE__ */ __name(function parseExpression(expression, options) { return CronExpression.parse(expression, options); }, "parseExpression"); CronParser.fieldsToExpression = /* @__PURE__ */ __name(function fieldsToExpression(fields, options) { return CronExpression.fieldsToExpression(fields, options); }, "fieldsToExpression"); CronParser.parseString = /* @__PURE__ */ __name(function parseString(data) { var blocks = data.split("\n"); var response = { variables: {}, expressions: [], errors: {} }; for (var i = 0, c = blocks.length; i < c; i++) { var block = blocks[i]; var matches = null; var entry = block.trim(); if (entry.length > 0) { if (entry.match(/^#/)) { continue; } else if (matches = entry.match(/^(.*)=(.*)$/)) { response.variables[matches[1]] = matches[2]; } else { var result = null; try { result = CronParser._parseEntry("0 " + entry); response.expressions.push(result.interval); } catch (err) { response.errors[entry] = err; } } } } return response; }, "parseString"); CronParser.parseFile = /* @__PURE__ */ __name(function parseFile(filePath, callback) { require("fs").readFile(filePath, function(err, data) { if (err) { callback(err); return; } return callback(null, CronParser.parseString(data.toString())); }); }, "parseFile"); module2.exports = CronParser; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue-base.js var require_queue_base = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue-base.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QueueBase = void 0; var events_1 = require("events"); var utils_1 = require_utils16(); var create_scripts_1 = require_create_scripts(); var redis_connection_1 = require_redis_connection(); var job_1 = require_job(); var queue_keys_1 = require_queue_keys(); var QueueBase = class extends events_1.EventEmitter { static { __name(this, "QueueBase"); } /** * * @param name - The name of the queue. * @param opts - Options for the queue. * @param Connection - An optional "Connection" class used to instantiate a Connection. This is useful for * testing with mockups and/or extending the Connection class and passing an alternate implementation. */ constructor(name, opts = { connection: {} }, Connection = redis_connection_1.RedisConnection, hasBlockingConnection = false) { super(); this.name = name; this.opts = opts; this.closed = false; this.hasBlockingConnection = false; this.hasBlockingConnection = hasBlockingConnection; this.opts = Object.assign({ prefix: "bull" }, opts); if (!name) { throw new Error("Queue name must be provided"); } if (name.includes(":")) { throw new Error("Queue name cannot contain :"); } this.connection = new Connection(opts.connection, { shared: (0, utils_1.isRedisInstance)(opts.connection), blocking: hasBlockingConnection, skipVersionCheck: opts.skipVersionCheck, skipWaitingForReady: opts.skipWaitingForReady }); (0, utils_1.forwardConnectionError)(this, this.connection); this.connection.on("close", () => { if (!this.closing) { this.emit("ioredis:close"); } }); const queueKeys = new queue_keys_1.QueueKeys(opts.prefix); this.qualifiedName = queueKeys.getQueueQualifiedName(name); this.keys = queueKeys.getKeys(name); this.toKey = (type) => queueKeys.toKey(name, type); this.createScripts(); } /** * Returns a promise that resolves to a redis client. Normally used only by subclasses. */ get client() { return this.connection.client; } createScripts() { this.scripts = (0, create_scripts_1.createScripts)(this); } /** * Returns the version of the Redis instance the client is connected to, */ get redisVersion() { return this.connection.redisVersion; } /** * Returns the database type of the Redis instance the client is connected to, */ get databaseType() { return this.connection.databaseType; } /** * Helper to easily extend Job class calls. */ get Job() { return job_1.Job; } /** * Emits an event. Normally used by subclasses to emit events. * * @param event - The emitted event. * @param args - The arguments to pass to the event listeners. * @returns True if the event had listeners, false otherwise. */ emit(event, ...args) { try { return super.emit(event, ...args); } catch (err) { try { return super.emit("error", err); } catch (err2) { console.error(err2); return false; } } } waitUntilReady() { return this.client; } base64Name() { return Buffer.from(this.name).toString("base64"); } clientName(suffix = "") { const queueNameBase64 = this.base64Name(); return `${this.opts.prefix}:${queueNameBase64}${suffix}`; } /** * * Closes the connection and returns a promise that resolves when the connection is closed. */ async close() { if (!this.closing) { this.closing = this.connection.close(); } await this.closing; this.closed = true; } /** * * Force disconnects a connection. */ disconnect() { return this.connection.disconnect(); } async checkConnectionError(fn, delayInMs = utils_1.DELAY_TIME_5) { try { return await fn(); } catch (error) { if ((0, utils_1.isNotConnectionError)(error)) { this.emit("error", error); } if (!this.closing && delayInMs) { await (0, utils_1.delay)(delayInMs); } else { return; } } } /** * Wraps the code with telemetry and provides a span for configuration. * * @param spanKind - kind of the span: Producer, Consumer, Internal * @param operation - operation name (such as add, process, etc) * @param destination - destination name (normally the queue name) * @param callback - code to wrap with telemetry * @param srcPropagationMetadata - The source propagation metadata for telemetry context. * @returns The result of the callback function. */ trace(spanKind, operation, destination, callback, srcPropagationMetadata) { return (0, utils_1.trace)(this.opts.telemetry, spanKind, this.name, operation, destination, callback, srcPropagationMetadata); } }; exports2.QueueBase = QueueBase; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/job-scheduler.js var require_job_scheduler = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/job-scheduler.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defaultRepeatStrategy = exports2.JobScheduler = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var cron_parser_1 = require_parser2(); var job_1 = require_job(); var queue_base_1 = require_queue_base(); var enums_1 = require_enums3(); var utils_1 = require_utils16(); var JobScheduler = class extends queue_base_1.QueueBase { static { __name(this, "JobScheduler"); } constructor(name, opts, Connection) { super(name, opts, Connection); this.repeatStrategy = opts.settings && opts.settings.repeatStrategy || exports2.defaultRepeatStrategy; } async upsertJobScheduler(jobSchedulerId, repeatOpts, jobName, jobData, opts, { override, producerId }) { const { every, limit, pattern, offset } = repeatOpts; if (pattern && every) { throw new Error("Both .pattern and .every options are defined for this repeatable job"); } if (!pattern && !every) { throw new Error("Either .pattern or .every options must be defined for this repeatable job"); } if (repeatOpts.immediately && repeatOpts.startDate) { throw new Error("Both .immediately and .startDate options are defined for this repeatable job"); } if (repeatOpts.immediately && repeatOpts.every) { console.warn("Using option immediately with every does not affect the job's schedule. Job will run immediately anyway."); } const iterationCount = repeatOpts.count ? repeatOpts.count + 1 : 1; if (typeof repeatOpts.limit !== "undefined" && iterationCount > repeatOpts.limit) { return; } let now = Date.now(); const { endDate } = repeatOpts; if (endDate && now > new Date(endDate).getTime()) { return; } const prevMillis = opts.prevMillis || 0; now = prevMillis < now ? now : prevMillis; const { immediately } = repeatOpts, filteredRepeatOpts = tslib_1.__rest(repeatOpts, ["immediately"]); let nextMillis; const newOffset = every && offset ? offset : null; if (pattern) { nextMillis = await this.repeatStrategy(now, repeatOpts, jobName); if (nextMillis < now) { nextMillis = now; } } if (nextMillis || every) { return this.trace(enums_1.SpanKind.PRODUCER, "add", `${this.name}.${jobName}`, async (span, srcPropagationMetadata) => { var _a, _b; let telemetry = opts.telemetry; if (srcPropagationMetadata) { const omitContext = (_a = opts.telemetry) === null || _a === void 0 ? void 0 : _a.omitContext; const telemetryMetadata = ((_b = opts.telemetry) === null || _b === void 0 ? void 0 : _b.metadata) || !omitContext && srcPropagationMetadata; if (telemetryMetadata || omitContext) { telemetry = { metadata: telemetryMetadata, omitContext }; } } const mergedOpts = this.getNextJobOpts(nextMillis, jobSchedulerId, Object.assign(Object.assign({}, opts), { repeat: filteredRepeatOpts, telemetry }), iterationCount, newOffset); if (override) { if (nextMillis < now) { nextMillis = now; } const [jobId, delay] = await this.scripts.addJobScheduler(jobSchedulerId, nextMillis, JSON.stringify(typeof jobData === "undefined" ? {} : jobData), job_1.Job.optsAsJSON(opts), { name: jobName, startDate: repeatOpts.startDate ? new Date(repeatOpts.startDate).getTime() : void 0, endDate: endDate ? new Date(endDate).getTime() : void 0, tz: repeatOpts.tz, pattern, every, limit, offset: newOffset }, job_1.Job.optsAsJSON(mergedOpts), producerId); const numericDelay = typeof delay === "string" ? parseInt(delay, 10) : delay; const job = new this.Job(this, jobName, jobData, Object.assign(Object.assign({}, mergedOpts), { delay: numericDelay }), jobId); job.id = jobId; span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobSchedulerId]: jobSchedulerId, [enums_1.TelemetryAttributes.JobId]: job.id }); return job; } else { const jobId = await this.scripts.updateJobSchedulerNextMillis(jobSchedulerId, nextMillis, JSON.stringify(typeof jobData === "undefined" ? {} : jobData), job_1.Job.optsAsJSON(mergedOpts), producerId); if (jobId) { const job = new this.Job(this, jobName, jobData, mergedOpts, jobId); job.id = jobId; span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobSchedulerId]: jobSchedulerId, [enums_1.TelemetryAttributes.JobId]: job.id }); return job; } } }); } } getNextJobOpts(nextMillis, jobSchedulerId, opts, currentCount, offset) { var _a, _b; const jobId = this.getSchedulerNextJobId({ jobSchedulerId, nextMillis }); const now = Date.now(); const delay = nextMillis + offset - now; const mergedOpts = Object.assign(Object.assign({}, opts), { jobId, delay: delay < 0 ? 0 : delay, timestamp: now, prevMillis: nextMillis, repeatJobKey: jobSchedulerId }); mergedOpts.repeat = Object.assign(Object.assign({}, opts.repeat), { offset, count: currentCount, startDate: ((_a = opts.repeat) === null || _a === void 0 ? void 0 : _a.startDate) ? new Date(opts.repeat.startDate).getTime() : void 0, endDate: ((_b = opts.repeat) === null || _b === void 0 ? void 0 : _b.endDate) ? new Date(opts.repeat.endDate).getTime() : void 0 }); return mergedOpts; } async removeJobScheduler(jobSchedulerId) { return this.scripts.removeJobScheduler(jobSchedulerId); } async getSchedulerData(client, key, next) { const jobData = await client.hgetall(this.toKey("repeat:" + key)); return this.transformSchedulerData(key, jobData, next); } transformSchedulerData(key, jobData, next) { if (jobData && Object.keys(jobData).length > 0) { const jobSchedulerData = { key, name: jobData.name, next }; if (jobData.ic) { jobSchedulerData.iterationCount = parseInt(jobData.ic); } if (jobData.limit) { jobSchedulerData.limit = parseInt(jobData.limit); } if (jobData.startDate) { jobSchedulerData.startDate = parseInt(jobData.startDate); } if (jobData.endDate) { jobSchedulerData.endDate = parseInt(jobData.endDate); } if (jobData.tz) { jobSchedulerData.tz = jobData.tz; } if (jobData.pattern) { jobSchedulerData.pattern = jobData.pattern; } if (jobData.every) { jobSchedulerData.every = parseInt(jobData.every); } if (jobData.offset) { jobSchedulerData.offset = parseInt(jobData.offset); } if (jobData.data || jobData.opts) { jobSchedulerData.template = this.getTemplateFromJSON(jobData.data, jobData.opts); } return jobSchedulerData; } if (key.includes(":")) { return this.keyToData(key, next); } } keyToData(key, next) { const data = key.split(":"); const pattern = data.slice(4).join(":") || null; return { key, name: data[0], id: data[1] || null, endDate: parseInt(data[2]) || null, tz: data[3] || null, pattern, next }; } /** * Checks if a given id corresponds to a registered job scheduler. * * This is used to disambiguate between new job scheduler ids (which may * contain any number of colon segments) and legacy repeatable job keys * (which always contain 5+ colon segments). Relying purely on segment * count is not safe because a user-provided jobSchedulerId may itself * contain 5+ colon segments, which would otherwise be misclassified as * a legacy repeatable key. * * We cannot use ZSCORE on the shared `repeat` sorted set because legacy * repeatable jobs are stored in the same sorted set and would be reported * as schedulers. Instead, we probe the per-id metadata hash (`repeat:`) * for the `ic` (iteration count) field, which is written exclusively by * `storeJobScheduler` and is never set by the legacy `addRepeatableJob` * flow. */ async isJobScheduler(id) { const client = await this.client; const exists = await client.hexists(`${this.keys.repeat}:${id}`, "ic"); return exists === 1; } async getScheduler(id) { const [rawJobData, next] = await this.scripts.getJobScheduler(id); return this.transformSchedulerData(id, rawJobData ? (0, utils_1.array2obj)(rawJobData) : null, next ? parseInt(next) : null); } getTemplateFromJSON(rawData, rawOpts) { const template = {}; if (rawData) { template.data = JSON.parse(rawData); } if (rawOpts) { template.opts = job_1.Job.optsFromJSON(rawOpts); } return template; } async getJobSchedulers(start = 0, end = -1, asc = false) { const client = await this.client; const jobSchedulersKey = this.keys.repeat; const result = asc ? await client.zrange(jobSchedulersKey, start, end, { WITHSCORES: true }) : await client.zrevrange(jobSchedulersKey, start, end, { WITHSCORES: true }); const jobs = []; for (let i = 0; i < result.length; i += 2) { jobs.push(this.getSchedulerData(client, result[i], parseInt(result[i + 1]))); } return Promise.all(jobs); } async getSchedulersCount() { const jobSchedulersKey = this.keys.repeat; const client = await this.client; return client.zcard(jobSchedulersKey); } getSchedulerNextJobId({ nextMillis, jobSchedulerId }) { return `repeat:${jobSchedulerId}:${nextMillis}`; } }; exports2.JobScheduler = JobScheduler; var defaultRepeatStrategy = /* @__PURE__ */ __name((millis, opts) => { const { pattern } = opts; const dateFromMillis = new Date(millis); const startDate = opts.startDate && new Date(opts.startDate); const currentDate = startDate > dateFromMillis ? startDate : dateFromMillis; const interval = (0, cron_parser_1.parseExpression)(pattern, Object.assign(Object.assign({}, opts), { currentDate })); try { if (opts.immediately) { return (/* @__PURE__ */ new Date()).getTime(); } else { return interval.next().getTime(); } } catch (e) { } }, "defaultRepeatStrategy"); exports2.defaultRepeatStrategy = defaultRepeatStrategy; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/lock-manager.js var require_lock_manager = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/lock-manager.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.LockManager = void 0; var abort_controller_1 = require_abort_controller(); var enums_1 = require_enums3(); var LockManager = class { static { __name(this, "LockManager"); } constructor(worker, opts) { this.worker = worker; this.opts = opts; this.trackedJobs = /* @__PURE__ */ new Map(); this.closed = false; } /** * Starts the lock manager timers for lock renewal. */ start() { if (this.closed) { return; } if (this.opts.lockRenewTime > 0) { this.startLockExtenderTimer(); } } async extendLocks(jobIds) { await this.worker.trace(enums_1.SpanKind.INTERNAL, "extendLocks", this.worker.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.WorkerId]: this.opts.workerId, [enums_1.TelemetryAttributes.WorkerName]: this.opts.workerName, [enums_1.TelemetryAttributes.WorkerJobsToExtendLocks]: jobIds }); try { const jobTokens = jobIds.map((id) => { var _a; return ((_a = this.trackedJobs.get(id)) === null || _a === void 0 ? void 0 : _a.token) || ""; }); const erroredJobIds = await this.worker.extendJobLocks(jobIds, jobTokens, this.opts.lockDuration); if (erroredJobIds.length > 0) { this.worker.emit("lockRenewalFailed", erroredJobIds); for (const jobId of erroredJobIds) { this.worker.emit("error", new Error(`could not renew lock for job ${jobId}`)); } } const succeededJobIds = jobIds.filter((id) => !erroredJobIds.includes(id)); if (succeededJobIds.length > 0) { this.worker.emit("locksRenewed", { count: succeededJobIds.length, jobIds: succeededJobIds }); } } catch (err) { this.worker.emit("error", err); } }); } startLockExtenderTimer() { clearTimeout(this.lockRenewalTimer); if (!this.closed) { this.lockRenewalTimer = setTimeout(async () => { const now = Date.now(); const jobsToExtend = []; for (const jobId of this.trackedJobs.keys()) { const tracked = this.trackedJobs.get(jobId); const { ts, token, abortController } = tracked; if (!ts) { this.trackedJobs.set(jobId, { token, ts: now, abortController }); continue; } if (ts + this.opts.lockRenewTime / 2 < now) { this.trackedJobs.set(jobId, { token, ts: now, abortController }); jobsToExtend.push(jobId); } } if (jobsToExtend.length) { await this.extendLocks(jobsToExtend); } this.startLockExtenderTimer(); }, this.opts.lockRenewTime / 2); } } /** * Stops the lock manager and clears all timers. */ async close() { if (this.closed) { return; } this.closed = true; if (this.lockRenewalTimer) { clearTimeout(this.lockRenewalTimer); this.lockRenewalTimer = void 0; } this.trackedJobs.clear(); } /** * Adds a job to be tracked for lock renewal. * Returns an AbortController if shouldCreateController is true, undefined otherwise. */ trackJob(jobId, token, ts, shouldCreateController = false) { const abortController = shouldCreateController ? new abort_controller_1.AbortController() : void 0; if (!this.closed && jobId) { this.trackedJobs.set(jobId, { token, ts, abortController }); } return abortController; } /** * Removes a job from lock renewal tracking. */ untrackJob(jobId) { this.trackedJobs.delete(jobId); } /** * Gets the number of jobs currently being tracked. */ getActiveJobCount() { return this.trackedJobs.size; } /** * Checks if the lock manager is running. */ isRunning() { return !this.closed && this.lockRenewalTimer !== void 0; } /** * Cancels a specific job by aborting its signal. * @param jobId - The ID of the job to cancel * @param reason - Optional reason for the cancellation * @returns true if the job was found and cancelled, false otherwise */ cancelJob(jobId, reason) { const tracked = this.trackedJobs.get(jobId); if (tracked === null || tracked === void 0 ? void 0 : tracked.abortController) { tracked.abortController.abort(reason); return true; } return false; } /** * Cancels all tracked jobs by aborting their signals. * @param reason - Optional reason for the cancellation */ cancelAllJobs(reason) { for (const tracked of this.trackedJobs.values()) { if (tracked.abortController) { tracked.abortController.abort(reason); } } } /** * Gets a list of all tracked job IDs. * @returns Array of job IDs currently being tracked */ getTrackedJobIds() { return Array.from(this.trackedJobs.keys()); } }; exports2.LockManager = LockManager; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue-events.js var require_queue_events = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue-events.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QueueEvents = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var utils_1 = require_utils16(); var queue_base_1 = require_queue_base(); var ioredis_client_1 = require_ioredis_client(); var QueueEvents = class extends queue_base_1.QueueBase { static { __name(this, "QueueEvents"); } constructor(name, _a = { connection: {} }, Connection) { var { connection, autorun = true } = _a, opts = tslib_1.__rest(_a, ["connection", "autorun"]); super(name, Object.assign(Object.assign({}, opts), { connection: (0, utils_1.isRedisInstance)(connection) ? ((0, ioredis_client_1.isIRedisClient)(connection) ? connection : (0, ioredis_client_1.createIORedisClient)(connection)).duplicate() : connection }), Connection, true); this.running = false; this.blocking = false; this.opts = Object.assign({ blockingTimeout: 1e4 }, this.opts); if (autorun) { this.run().catch((error) => this.emit("error", error)); } } emit(event, ...args) { return super.emit(event, ...args); } off(eventName, listener) { super.off(eventName, listener); return this; } on(event, listener) { super.on(event, listener); return this; } once(event, listener) { super.once(event, listener); return this; } /** * Manually starts running the event consumming loop. This shall be used if you do not * use the default "autorun" option on the constructor. */ async run() { if (!this.running) { try { this.running = true; const client = await this.client; try { await client.clientSetName(this.clientName(utils_1.QUEUE_EVENT_SUFFIX)); } catch (err) { if (!utils_1.clientCommandMessageReg.test(err.message) && !this.closing) { throw err; } } await this.consumeEvents(client); } catch (error) { this.running = false; throw error; } } else { throw new Error("Queue Events is already running."); } } async consumeEvents(client) { const opts = this.opts; const key = this.keys.events; let id = opts.lastEventId || "$"; while (!this.closing) { this.blocking = true; const data = await this.checkConnectionError(() => client.xread([{ key, id }], { BLOCK: opts.blockingTimeout })); this.blocking = false; if (data) { const stream = data[0]; const events = stream[1]; for (let i = 0; i < events.length; i++) { id = events[i][0]; const args = (0, utils_1.array2obj)(events[i][1]); switch (args.event) { case "progress": args.data = JSON.parse(args.data); break; case "completed": args.returnvalue = JSON.parse(args.returnvalue); break; case "delayed": args.delay = Number(args.delay); break; } const { event } = args, restArgs = tslib_1.__rest(args, ["event"]); if (event === "drained") { this.emit(event, id); } else { this.emit(event, restArgs, id); if (restArgs.jobId) { this.emit(`${event}:${restArgs.jobId}`, restArgs, id); } } } } } } /** * Stops consuming events and close the underlying Redis connection if necessary. * * @returns */ async close() { if (!this.closing) { this.closing = (async () => { try { const client = await this.client; client.disconnect(); await this.connection.close(this.blocking); } finally { this.closed = true; } })(); } return this.closing; } }; exports2.QueueEvents = QueueEvents; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue-events-producer.js var require_queue_events_producer = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue-events-producer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QueueEventsProducer = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var queue_base_1 = require_queue_base(); var QueueEventsProducer = class extends queue_base_1.QueueBase { static { __name(this, "QueueEventsProducer"); } constructor(name, opts = { connection: {} }, Connection) { super(name, Object.assign({ blockingConnection: false }, opts), Connection); this.opts = opts; } /** * Publish custom event to be processed in QueueEvents. * @param argsObj - Event payload * @param maxEvents - Max quantity of events to be saved */ async publishEvent(argsObj, maxEvents = 1e3) { const client = await this.client; const key = this.keys.events; const { eventName } = argsObj, restArgs = tslib_1.__rest(argsObj, ["eventName"]); const fields = Object.assign({ event: eventName }, restArgs); await client.xadd(key, "*", fields, { MAXLEN: maxEvents, approximate: true }); } /** * Closes the connection and returns a promise that resolves when the connection is closed. */ async close() { if (!this.closing) { this.closing = this.connection.close(); } await this.closing; } }; exports2.QueueEventsProducer = QueueEventsProducer; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue-getters.js var require_queue_getters = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue-getters.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QueueGetters = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var queue_base_1 = require_queue_base(); var utils_1 = require_utils16(); var enums_1 = require_enums3(); function escapePrometheusLabelValue(value) { return String(value).replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\n/g, "\\n"); } __name(escapePrometheusLabelValue, "escapePrometheusLabelValue"); var QueueGetters = class extends queue_base_1.QueueBase { static { __name(this, "QueueGetters"); } getJob(jobId) { return this.Job.fromId(this, jobId); } commandByType(types, count, callback) { return types.map((type) => { type = type === "waiting" ? "wait" : type; const key = this.toKey(type); switch (type) { case "completed": case "failed": case "delayed": case "prioritized": case "repeat": case "waiting-children": return callback(key, count ? "zcard" : "zrange"); case "active": case "wait": case "paused": return callback(key, count ? "llen" : "lrange"); } }); } sanitizeJobTypes(types) { const currentTypes = typeof types === "string" ? [types] : types; if (Array.isArray(currentTypes) && currentTypes.length > 0) { const sanitizedTypes = [...currentTypes]; if (sanitizedTypes.indexOf("waiting") !== -1) { sanitizedTypes.push("paused"); } return [...new Set(sanitizedTypes)]; } return [ "active", "completed", "delayed", "failed", "paused", "prioritized", "waiting", "waiting-children" ]; } /** Returns the number of jobs waiting to be processed. This includes jobs that are "waiting" or "delayed" or "prioritized" or "waiting-children". */ async count() { const count = await this.getJobCountByTypes("waiting", "paused", "delayed", "prioritized", "waiting-children"); return count; } /** * Returns the time to live for a rate limited key in milliseconds. * @param maxJobs - max jobs to be considered in rate limit state. If not passed * it will return the remaining ttl without considering if max jobs is exceeded. * @returns -2 if the key does not exist. * -1 if the key exists but has no associated expire. * @see {@link https://redis.io/commands/pttl/} */ async getRateLimitTtl(maxJobs) { return this.scripts.getRateLimitTtl(maxJobs); } /** * Get jobId that starts debounced state. * @deprecated use getDeduplicationJobId method * * @param id - debounce identifier */ async getDebounceJobId(id) { const client = await this.client; return client.get(`${this.keys.de}:${id}`); } /** * Get jobId from deduplicated state. * * @param id - deduplication identifier */ async getDeduplicationJobId(id) { const client = await this.client; return client.get(`${this.keys.de}:${id}`); } /** * Get global concurrency value. * Returns null in case no value is set. */ async getGlobalConcurrency() { const client = await this.client; const concurrency = await client.hget(this.keys.meta, "concurrency"); if (concurrency) { return Number(concurrency); } return null; } /** * Get global rate limit values. * Returns null in case no value is set. */ async getGlobalRateLimit() { const client = await this.client; const [max, duration] = await client.hmget(this.keys.meta, "max", "duration"); if (max && duration) { return { max: Number(max), duration: Number(duration) }; } return null; } /** * Job counts by type * * Queue#getJobCountByTypes('completed') =\> completed count * Queue#getJobCountByTypes('completed', 'failed') =\> completed + failed count * Queue#getJobCountByTypes('completed', 'waiting', 'failed') =\> completed + waiting + failed count */ async getJobCountByTypes(...types) { const result = await this.getJobCounts(...types); return Object.values(result).reduce((sum, count) => sum + count, 0); } /** * Returns the job counts for each type specified or every list/set in the queue by default. * @param types - the types of jobs to count. If not specified, it will return the counts for all types. * @returns An object, key (type) and value (count) */ async getJobCounts(...types) { const currentTypes = this.sanitizeJobTypes(types); const responses = await this.scripts.getCounts(currentTypes); const counts = {}; responses.forEach((res, index) => { counts[currentTypes[index]] = res || 0; }); return counts; } /** * Records job counts as gauge metrics for telemetry purposes. * Each job state count is recorded with the queue name and state as attributes. * @param types - the types of jobs to count. If not specified, it will return the counts for all types. * @returns An object, key (type) and value (count) */ async recordJobCountsMetric(...types) { var _a; const counts = await this.getJobCounts(...types); const meter = (_a = this.opts.telemetry) === null || _a === void 0 ? void 0 : _a.meter; if (meter && typeof meter.createGauge === "function") { const gauge = meter.createGauge(enums_1.MetricNames.QueueJobsCount, { description: "Number of jobs in the queue by state", unit: "{jobs}" }); for (const [state, jobCount] of Object.entries(counts)) { gauge.record(jobCount, { [enums_1.TelemetryAttributes.QueueName]: this.name, [enums_1.TelemetryAttributes.QueueJobsState]: state }); } } return counts; } /** * Get current job state. * * @param jobId - job identifier. * @returns Returns one of these values: * 'completed', 'failed', 'delayed', 'active', 'waiting', 'waiting-children', 'unknown'. */ getJobState(jobId) { return this.scripts.getState(jobId); } /** * Get global queue configuration. * * @returns Returns the global queue configuration. */ async getMeta() { const client = await this.client; const config = await client.hgetall(this.keys.meta); const { concurrency, max, duration, paused, "opts.maxLenEvents": maxLenEvents } = config, rest = tslib_1.__rest(config, ["concurrency", "max", "duration", "paused", "opts.maxLenEvents"]); const parsedConfig = rest; if (concurrency) { parsedConfig["concurrency"] = Number(concurrency); } if (maxLenEvents) { parsedConfig["maxLenEvents"] = Number(maxLenEvents); } if (max) { parsedConfig["max"] = Number(max); } if (duration) { parsedConfig["duration"] = Number(duration); } parsedConfig["paused"] = paused === "1"; return parsedConfig; } /** * @returns Returns the number of jobs in completed status. */ getCompletedCount() { return this.getJobCountByTypes("completed"); } /** * Returns the number of jobs in failed status. */ getFailedCount() { return this.getJobCountByTypes("failed"); } /** * Returns the number of jobs in delayed status. */ getDelayedCount() { return this.getJobCountByTypes("delayed"); } /** * Returns the number of jobs in active status. */ getActiveCount() { return this.getJobCountByTypes("active"); } /** * Returns the number of jobs in prioritized status. */ getPrioritizedCount() { return this.getJobCountByTypes("prioritized"); } /** * Returns the number of jobs per priority. */ async getCountsPerPriority(priorities) { const uniquePriorities = [...new Set(priorities)]; const responses = await this.scripts.getCountsPerPriority(uniquePriorities); const counts = {}; responses.forEach((res, index) => { counts[`${uniquePriorities[index]}`] = res || 0; }); return counts; } /** * Returns the number of jobs in waiting or paused statuses. */ getWaitingCount() { return this.getJobCountByTypes("waiting"); } /** * Returns the number of jobs in waiting-children status. */ getWaitingChildrenCount() { return this.getJobCountByTypes("waiting-children"); } /** * Returns the jobs that are in the "waiting" status. * @param start - zero based index from where to start returning jobs. * @param end - zero based index where to stop returning jobs. */ getWaiting(start = 0, end = -1) { return this.getJobs(["waiting"], start, end, true); } /** * Returns the jobs that are in the "waiting-children" status. * I.E. parent jobs that have at least one child that has not completed yet. * @param start - zero based index from where to start returning jobs. * @param end - zero based index where to stop returning jobs. */ getWaitingChildren(start = 0, end = -1) { return this.getJobs(["waiting-children"], start, end, true); } /** * Returns the jobs that are in the "active" status. * @param start - zero based index from where to start returning jobs. * @param end - zero based index where to stop returning jobs. */ getActive(start = 0, end = -1) { return this.getJobs(["active"], start, end, true); } /** * Returns the jobs that are in the "delayed" status. * @param start - zero based index from where to start returning jobs. * @param end - zero based index where to stop returning jobs. */ getDelayed(start = 0, end = -1) { return this.getJobs(["delayed"], start, end, true); } /** * Returns the jobs that are in the "prioritized" status. * @param start - zero based index from where to start returning jobs. * @param end - zero based index where to stop returning jobs. */ getPrioritized(start = 0, end = -1) { return this.getJobs(["prioritized"], start, end, true); } /** * Returns the jobs that are in the "completed" status. * @param start - zero based index from where to start returning jobs. * @param end - zero based index where to stop returning jobs. */ getCompleted(start = 0, end = -1) { return this.getJobs(["completed"], start, end, false); } /** * Returns the jobs that are in the "failed" status. * @param start - zero based index from where to start returning jobs. * @param end - zero based index where to stop returning jobs. */ getFailed(start = 0, end = -1) { return this.getJobs(["failed"], start, end, false); } /** * Returns the qualified job ids and the raw job data (if available) of the * children jobs of the given parent job. * It is possible to get either the already processed children, in this case * an array of qualified job ids and their result values will be returned, * or the pending children, in this case an array of qualified job ids will * be returned. * A qualified job id is a string representing the job id in a given queue, * for example: "bull:myqueue:jobid". * * @param parentId - The id of the parent job * @param type - "processed" | "pending" * @param opts - Options for the query. * * @returns an object with the following shape: * `{ items: { id: string, v?: any, err?: string } [], jobs: JobJsonRaw[], total: number}` */ async getDependencies(parentId, type, start, end) { const key = this.toKey(type == "processed" ? `${parentId}:processed` : `${parentId}:dependencies`); const { items, total, jobs } = await this.scripts.paginate(key, { start, end, fetchJobs: true }); return { items, jobs, total }; } async getRanges(types, start = 0, end = 1, asc = false) { const multiCommands = []; this.commandByType(types, false, (key, command) => { switch (command) { case "lrange": multiCommands.push("lrange"); break; case "zrange": multiCommands.push("zrange"); break; } }); const responses = await this.scripts.getRanges(types, start, end, asc); let results = []; responses.forEach((response, index) => { const result = response || []; if (asc && multiCommands[index] === "lrange") { results = results.concat(result.reverse()); } else { results = results.concat(result); } }); return [...new Set(results)]; } /** * Returns the jobs that are on the given statuses (note that JobType is synonym for job status) * @param types - the statuses of the jobs to return. * @param start - zero based index from where to start returning jobs. * @param end - zero based index where to stop returning jobs. * @param asc - if true, the jobs will be returned in ascending order. */ async getJobs(types, start = 0, end = -1, asc = false) { const currentTypes = this.sanitizeJobTypes(types); const jobDataByType = await this.scripts.getJobs(currentTypes, start, end, asc); return jobDataByType.reduce((jobs, jobData) => { for (const [jobId, jobHashFields] of jobData || []) { jobs.push(this.Job.fromJSON(this, (0, utils_1.array2obj)(jobHashFields), jobId)); } return jobs; }, []); } /** * Returns the logs for a given Job. * @param jobId - the id of the job to get the logs for. * @param start - zero based index from where to start returning jobs. * @param end - zero based index where to stop returning jobs. * @param asc - if true, the jobs will be returned in ascending order. */ async getJobLogs(jobId, start = 0, end = -1, asc = true) { const client = await this.client; const multi = client.multi(); const logsKey = this.toKey(jobId + ":logs"); if (asc) { multi.lrange(logsKey, start, end); } else { multi.lrange(logsKey, -(end + 1), -(start + 1)); } multi.llen(logsKey); const result = await multi.exec(); if (!asc) { result[0][1].reverse(); } return { logs: result[0][1], count: result[1][1] }; } async baseGetClients(matcher) { const client = await this.client; try { if (client.isCluster && typeof client.nodes === "function") { const clusterNodes = client.nodes(); const clientsPerNode = []; for (let nodeIndex = 0; nodeIndex < clusterNodes.length; nodeIndex++) { const node = clusterNodes[nodeIndex]; const clients = typeof node.clientList === "function" ? await node.clientList() : await node.client("LIST"); const list = this.parseClientList(clients, matcher); clientsPerNode.push(list); } const clientsFromNodeWithMostConnections = clientsPerNode.reduce((prev, current) => { return prev.length > current.length ? prev : current; }, []); return clientsFromNodeWithMostConnections; } else { const clients = await client.clientList(); const list = this.parseClientList(clients, matcher); return list; } } catch (err) { if (!utils_1.clientCommandMessageReg.test(err.message)) { throw err; } return [{ name: "GCP does not support client list" }]; } } /** * Get the worker list related to the queue. i.e. all the known * workers that are available to process jobs for this queue. * Note: GCP does not support SETNAME, so this call will not work * * @returns - Returns an array with workers info. */ getWorkers() { const unnamedWorkerClientName = `${this.clientName()}`; const namedWorkerClientName = `${this.clientName()}:w:`; const matcher = /* @__PURE__ */ __name((name) => name && (name === unnamedWorkerClientName || name.startsWith(namedWorkerClientName)), "matcher"); return this.baseGetClients(matcher); } /** * Returns the current count of workers for the queue. * * getWorkersCount(): Promise * */ async getWorkersCount() { const workers = await this.getWorkers(); return workers.length; } /** * Get queue events list related to the queue. * Note: GCP does not support SETNAME, so this call will not work * * @deprecated do not use this method, it will be removed in the future. * * @returns - Returns an array with queue events info. */ async getQueueEvents() { const clientName = `${this.clientName()}${utils_1.QUEUE_EVENT_SUFFIX}`; return this.baseGetClients((name) => name === clientName); } /** * Get queue metrics related to the queue. * * This method returns the gathered metrics for the queue. * The metrics are represented as an array of job counts * per unit of time (1 minute). * * @param start - Start point of the metrics, where 0 * is the newest point to be returned. * @param end - End point of the metrics, where -1 is the * oldest point to be returned. * * @returns - Returns an object with queue metrics. */ async getMetrics(type, start = 0, end = -1) { const [meta, data, count] = await this.scripts.getMetrics(type, start, end); return { meta: { count: parseInt(meta[0] || "0", 10), prevTS: parseInt(meta[1] || "0", 10), prevCount: parseInt(meta[2] || "0", 10) }, data: data.map((point) => +point || 0), count }; } parseClientList(list, matcher) { const lines = list.split(/\r?\n/); const clients = []; lines.forEach((line) => { const client = {}; const keyValues = line.split(" "); keyValues.forEach(function(keyValue) { const index = keyValue.indexOf("="); const key = keyValue.substring(0, index); const value = keyValue.substring(index + 1); client[key] = value; }); const name = client["name"]; if (matcher(name)) { client["name"] = this.name; client["rawname"] = name; clients.push(client); } }); return clients; } /** * Export the metrics for the queue in the Prometheus format. * Automatically exports all the counts returned by getJobCounts(). * * @returns - Returns a string with the metrics in the Prometheus format. * * @see {@link https://prometheus.io/docs/instrumenting/exposition_formats/} * **/ async exportPrometheusMetrics(globalVariables) { const counts = await this.getJobCounts(); const metrics = []; metrics.push("# HELP bullmq_job_count Number of jobs in the queue by state"); metrics.push("# TYPE bullmq_job_count gauge"); const escapedQueueName = escapePrometheusLabelValue(this.name); const variables = !globalVariables ? "" : Object.keys(globalVariables).reduce((acc, curr) => `${acc}, ${curr}="${escapePrometheusLabelValue(globalVariables[curr])}"`, ""); for (const [state, count] of Object.entries(counts)) { metrics.push(`bullmq_job_count{queue="${escapedQueueName}", state="${state}"${variables}} ${count}`); } const [completedMetrics, failedMetrics] = await Promise.all([ this.getMetrics("completed"), this.getMetrics("failed") ]); metrics.push("# HELP bullmq_job_completed_total Total number of completed jobs"); metrics.push("# TYPE bullmq_job_completed_total counter"); metrics.push(`bullmq_job_completed_total{queue="${escapedQueueName}"${variables}} ${completedMetrics.meta.count}`); metrics.push("# HELP bullmq_job_failed_total Total number of failed jobs"); metrics.push("# TYPE bullmq_job_failed_total counter"); metrics.push(`bullmq_job_failed_total{queue="${escapedQueueName}"${variables}} ${failedMetrics.meta.count}`); return metrics.join("\n"); } }; exports2.QueueGetters = QueueGetters; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/repeat.js var require_repeat2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/repeat.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getNextMillis = exports2.Repeat = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var cron_parser_1 = require_parser2(); var crypto_1 = require("crypto"); var queue_base_1 = require_queue_base(); var Repeat = class extends queue_base_1.QueueBase { static { __name(this, "Repeat"); } constructor(name, opts, Connection) { super(name, opts, Connection); this.repeatStrategy = opts.settings && opts.settings.repeatStrategy || exports2.getNextMillis; this.repeatKeyHashAlgorithm = opts.settings && opts.settings.repeatKeyHashAlgorithm || "md5"; } async updateRepeatableJob(name, data, opts, { override }) { var _a, _b; const repeatOpts = Object.assign({}, opts.repeat); (_a = repeatOpts.pattern) !== null && _a !== void 0 ? _a : repeatOpts.pattern = repeatOpts.cron; delete repeatOpts.cron; const iterationCount = repeatOpts.count ? repeatOpts.count + 1 : 1; if (typeof repeatOpts.limit !== "undefined" && iterationCount > repeatOpts.limit) { return; } let now = Date.now(); const { endDate } = repeatOpts; if (endDate && now > new Date(endDate).getTime()) { return; } const prevMillis = opts.prevMillis || 0; now = prevMillis < now ? now : prevMillis; const nextMillis = await this.repeatStrategy(now, repeatOpts, name); const { every, pattern } = repeatOpts; const hasImmediately = Boolean((every || pattern) && repeatOpts.immediately); const offset = hasImmediately && every ? now - nextMillis : void 0; if (nextMillis) { if (!prevMillis && opts.jobId) { repeatOpts.jobId = opts.jobId; } const legacyRepeatKey = getRepeatConcatOptions(name, repeatOpts); const newRepeatKey = (_b = opts.repeat.key) !== null && _b !== void 0 ? _b : this.hash(legacyRepeatKey); let repeatJobKey; if (override) { repeatJobKey = await this.scripts.addRepeatableJob(newRepeatKey, nextMillis, { name, endDate: endDate ? new Date(endDate).getTime() : void 0, tz: repeatOpts.tz, pattern, every }, legacyRepeatKey); } else { const client = await this.client; repeatJobKey = await this.scripts.updateRepeatableJobMillis(client, newRepeatKey, nextMillis, legacyRepeatKey); } const { immediately } = repeatOpts, filteredRepeatOpts = tslib_1.__rest(repeatOpts, ["immediately"]); return this.createNextJob(name, nextMillis, repeatJobKey, Object.assign(Object.assign({}, opts), { repeat: Object.assign({ offset }, filteredRepeatOpts) }), data, iterationCount, hasImmediately); } } async createNextJob(name, nextMillis, repeatJobKey, opts, data, currentCount, hasImmediately) { const jobId = this.getRepeatJobKey(name, nextMillis, repeatJobKey, data); const now = Date.now(); const delay = nextMillis + (opts.repeat.offset ? opts.repeat.offset : 0) - now; const mergedOpts = Object.assign(Object.assign({}, opts), { jobId, delay: delay < 0 || hasImmediately ? 0 : delay, timestamp: now, prevMillis: nextMillis, repeatJobKey }); mergedOpts.repeat = Object.assign(Object.assign({}, opts.repeat), { count: currentCount }); return this.Job.create(this, name, data, mergedOpts); } // TODO: remove legacy code in next breaking change getRepeatJobKey(name, nextMillis, repeatJobKey, data) { if (repeatJobKey.split(":").length > 2) { return this.getRepeatJobId({ name, nextMillis, namespace: this.hash(repeatJobKey), jobId: data === null || data === void 0 ? void 0 : data.id }); } return this.getRepeatDelayedJobId({ customKey: repeatJobKey, nextMillis }); } async removeRepeatable(name, repeat, jobId) { var _a; const repeatConcatOptions = getRepeatConcatOptions(name, Object.assign(Object.assign({}, repeat), { jobId })); const repeatJobKey = (_a = repeat.key) !== null && _a !== void 0 ? _a : this.hash(repeatConcatOptions); const legacyRepeatJobId = this.getRepeatJobId({ name, nextMillis: "", namespace: this.hash(repeatConcatOptions), jobId: jobId !== null && jobId !== void 0 ? jobId : repeat.jobId, key: repeat.key }); return this.scripts.removeRepeatable(legacyRepeatJobId, repeatConcatOptions, repeatJobKey); } async removeRepeatableByKey(repeatJobKey) { const data = this.keyToData(repeatJobKey); const legacyRepeatJobId = this.getRepeatJobId({ name: data.name, nextMillis: "", namespace: this.hash(repeatJobKey), jobId: data.id }); return this.scripts.removeRepeatable(legacyRepeatJobId, "", repeatJobKey); } async getRepeatableData(client, key, next) { const jobData = await client.hgetall(this.toKey("repeat:" + key)); if (jobData) { return { key, name: jobData.name, endDate: parseInt(jobData.endDate) || null, tz: jobData.tz || null, pattern: jobData.pattern || null, every: jobData.every || null, next }; } return this.keyToData(key, next); } keyToData(key, next) { const data = key.split(":"); const pattern = data.slice(4).join(":") || null; return { key, name: data[0], id: data[1] || null, endDate: parseInt(data[2]) || null, tz: data[3] || null, pattern, next }; } async getRepeatableJobs(start = 0, end = -1, asc = false) { const client = await this.client; const key = this.keys.repeat; const result = asc ? await client.zrange(key, start, end, { WITHSCORES: true }) : await client.zrevrange(key, start, end, { WITHSCORES: true }); const jobs = []; for (let i = 0; i < result.length; i += 2) { jobs.push(this.getRepeatableData(client, result[i], parseInt(result[i + 1]))); } return Promise.all(jobs); } async getRepeatableCount() { const client = await this.client; return client.zcard(this.toKey("repeat")); } hash(str) { return (0, crypto_1.createHash)(this.repeatKeyHashAlgorithm).update(str).digest("hex"); } getRepeatDelayedJobId({ nextMillis, customKey }) { return `repeat:${customKey}:${nextMillis}`; } getRepeatJobId({ name, nextMillis, namespace, jobId, key }) { const checksum = key !== null && key !== void 0 ? key : this.hash(`${name}${jobId || ""}${namespace}`); return `repeat:${checksum}:${nextMillis}`; } }; exports2.Repeat = Repeat; function getRepeatConcatOptions(name, repeat) { const endDate = repeat.endDate ? new Date(repeat.endDate).getTime() : ""; const tz = repeat.tz || ""; const pattern = repeat.pattern; const suffix = (pattern ? pattern : String(repeat.every)) || ""; const jobId = repeat.jobId ? repeat.jobId : ""; return `${name}:${jobId}:${endDate}:${tz}:${suffix}`; } __name(getRepeatConcatOptions, "getRepeatConcatOptions"); var getNextMillis = /* @__PURE__ */ __name((millis, opts) => { const pattern = opts.pattern; if (pattern && opts.every) { throw new Error("Both .pattern and .every options are defined for this repeatable job"); } if (opts.every) { return Math.floor(millis / opts.every) * opts.every + (opts.immediately ? 0 : opts.every); } const currentDate = opts.startDate && new Date(opts.startDate) > new Date(millis) ? new Date(opts.startDate) : new Date(millis); const interval = (0, cron_parser_1.parseExpression)(pattern, Object.assign(Object.assign({}, opts), { currentDate })); try { if (opts.immediately) { return (/* @__PURE__ */ new Date()).getTime(); } else { return interval.next().getTime(); } } catch (e) { } }, "getNextMillis"); exports2.getNextMillis = getNextMillis; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue.js var require_queue2 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/queue.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Queue = void 0; var job_1 = require_job(); var queue_getters_1 = require_queue_getters(); var repeat_1 = require_repeat2(); var enums_1 = require_enums3(); var job_scheduler_1 = require_job_scheduler(); var version_1 = require_version(); var utils_1 = require_utils16(); var Queue = class extends queue_getters_1.QueueGetters { static { __name(this, "Queue"); } constructor(name, opts, Connection) { var _a; super(name, Object.assign({}, opts), Connection); this.token = (0, utils_1.randomUUID)(); this.libName = "bullmq"; this.jobsOpts = (_a = opts === null || opts === void 0 ? void 0 : opts.defaultJobOptions) !== null && _a !== void 0 ? _a : {}; this.waitUntilReady().then((client) => { if (!this.closing && !(opts === null || opts === void 0 ? void 0 : opts.skipMetasUpdate)) { return client.hset(this.keys.meta, this.metaValues); } }).catch((err) => { }); } emit(event, ...args) { return super.emit(event, ...args); } off(eventName, listener) { super.off(eventName, listener); return this; } on(event, listener) { super.on(event, listener); return this; } once(event, listener) { super.once(event, listener); return this; } /** * Returns this instance current default job options. */ get defaultJobOptions() { return Object.assign({}, this.jobsOpts); } get metaValues() { var _a, _b, _c, _d; return { "opts.maxLenEvents": (_d = (_c = (_b = (_a = this.opts) === null || _a === void 0 ? void 0 : _a.streams) === null || _b === void 0 ? void 0 : _b.events) === null || _c === void 0 ? void 0 : _c.maxLen) !== null && _d !== void 0 ? _d : 1e4, version: `${this.libName}:${version_1.version}` }; } /** * Get library version. * * @returns the content of the meta.library field. */ async getVersion() { const client = await this.client; return await client.hget(this.keys.meta, "version"); } get repeat() { return new Promise(async (resolve) => { if (!this._repeat) { this._repeat = new repeat_1.Repeat(this.name, Object.assign(Object.assign({}, this.opts), { connection: await this.client })); this._repeat.on("error", this.emit.bind(this, "error")); } resolve(this._repeat); }); } get jobScheduler() { return new Promise(async (resolve) => { if (!this._jobScheduler) { this._jobScheduler = new job_scheduler_1.JobScheduler(this.name, Object.assign(Object.assign({}, this.opts), { connection: await this.client })); this._jobScheduler.on("error", this.emit.bind(this, "error")); } resolve(this._jobScheduler); }); } /** * Enable and set global concurrency value. * @param concurrency - Maximum number of simultaneous jobs that the workers can handle. * For instance, setting this value to 1 ensures that no more than one job * is processed at any given time. If this limit is not defined, there will be no * restriction on the number of concurrent jobs. */ async setGlobalConcurrency(concurrency) { const client = await this.client; return client.hset(this.keys.meta, { concurrency }); } /** * Enable and set rate limit. * @param max - Max number of jobs to process in the time period specified in `duration` * @param duration - Time in milliseconds. During this time, a maximum of `max` jobs will be processed. */ async setGlobalRateLimit(max, duration) { const client = await this.client; return client.hset(this.keys.meta, { max, duration }); } /** * Remove global concurrency value. */ async removeGlobalConcurrency() { const client = await this.client; return client.hdel(this.keys.meta, "concurrency"); } /** * Remove global rate limit values. */ async removeGlobalRateLimit() { const client = await this.client; return client.hdel(this.keys.meta, "max", "duration"); } /** * Adds a new job to the queue. * * @param name - Name of the job to be added to the queue. * @param data - Arbitrary data to append to the job. The value is * serialized with `JSON.stringify` before being stored in Redis, so it * must be JSON-serializable. The `DataType` type parameter describes the * shape of this payload, not a runtime class: passing a class instance * will store its enumerable own properties, but its prototype methods * and getters/setters will not be available when a worker reads * `job.data` back. Prefer plain objects, or implement `toJSON()` on * the class to control how it is serialized. * @param opts - Job options that affects how the job is going to be processed. */ async add(name, data, opts) { return this.trace(enums_1.SpanKind.PRODUCER, "add", `${this.name}.${name}`, async (span, srcPropagationMetadata) => { var _a; if (srcPropagationMetadata && !((_a = opts === null || opts === void 0 ? void 0 : opts.telemetry) === null || _a === void 0 ? void 0 : _a.omitContext)) { const telemetry = { metadata: srcPropagationMetadata }; opts = Object.assign(Object.assign({}, opts), { telemetry }); } const job = await this.addJob(name, data, opts); span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobName]: name, [enums_1.TelemetryAttributes.JobId]: job.id }); return job; }); } /** * addJob is a telemetry free version of the add method, useful in order to wrap it * with custom telemetry on subclasses. * * @param name - Name of the job to be added to the queue. * @param data - Arbitrary data to append to the job. * @param opts - Job options that affects how the job is going to be processed. * * @returns Job */ async addJob(name, data, opts) { if (opts && opts.repeat) { if (opts.repeat.endDate) { if (+new Date(opts.repeat.endDate) < Date.now()) { throw new Error("End date must be greater than current timestamp"); } } return (await this.repeat).updateRepeatableJob(name, data, Object.assign(Object.assign({}, this.jobsOpts), opts), { override: true }); } else { const jobId = opts === null || opts === void 0 ? void 0 : opts.jobId; if (jobId == "0" || (jobId === null || jobId === void 0 ? void 0 : jobId.startsWith("0:"))) { throw new Error("JobId cannot be '0' or start with 0:"); } const mergedOpts = Object.assign(Object.assign(Object.assign({}, this.jobsOpts), opts), { jobId }); const job = await this.Job.create(this, name, data, mergedOpts); this.emit("waiting", job); return job; } } /** * Adds an array of jobs to the queue. This method may be faster than adding * one job at a time in a sequence. * * @param jobs - The array of jobs to add to the queue. Each job is defined by 3 * properties, 'name', 'data' and 'opts'. They follow the same signature as 'Queue.add', * including the JSON-serialization caveat for `data` (class instances lose their * prototype methods on the worker side). */ async addBulk(jobs) { return this.trace(enums_1.SpanKind.PRODUCER, "addBulk", this.name, async (span, srcPropagationMetadata) => { if (span) { span.setAttributes({ [enums_1.TelemetryAttributes.BulkNames]: jobs.map((job) => job.name), [enums_1.TelemetryAttributes.BulkCount]: jobs.length }); } return await this.Job.createBulk(this, jobs.map((job) => { var _a, _b, _c, _d, _e, _f; let telemetry = (_a = job.opts) === null || _a === void 0 ? void 0 : _a.telemetry; if (srcPropagationMetadata) { const omitContext = (_c = (_b = job.opts) === null || _b === void 0 ? void 0 : _b.telemetry) === null || _c === void 0 ? void 0 : _c.omitContext; const telemetryMetadata = ((_e = (_d = job.opts) === null || _d === void 0 ? void 0 : _d.telemetry) === null || _e === void 0 ? void 0 : _e.metadata) || !omitContext && srcPropagationMetadata; if (telemetryMetadata || omitContext) { telemetry = { metadata: telemetryMetadata, omitContext }; } } const mergedOpts = Object.assign(Object.assign(Object.assign({}, this.jobsOpts), job.opts), { jobId: (_f = job.opts) === null || _f === void 0 ? void 0 : _f.jobId, telemetry }); return { name: job.name, data: job.data, opts: mergedOpts }; })); }); } /** * Upserts a scheduler. * * A scheduler is a job factory that creates jobs at a given interval. * Upserting a scheduler will create a new job scheduler or update an existing one. * It will also create the first job based on the repeat options and delayed accordingly. * * @param key - Unique key for the repeatable job meta. * @param repeatOpts - Repeat options * @param jobTemplate - Job template. If provided it will be used for all the jobs * created by the scheduler. * * @returns The next job to be scheduled (would normally be in delayed state). */ async upsertJobScheduler(jobSchedulerId, repeatOpts, jobTemplate) { var _a, _b; if (repeatOpts.endDate) { if (+new Date(repeatOpts.endDate) < Date.now()) { throw new Error("End date must be greater than current timestamp"); } } return (await this.jobScheduler).upsertJobScheduler(jobSchedulerId, repeatOpts, (_a = jobTemplate === null || jobTemplate === void 0 ? void 0 : jobTemplate.name) !== null && _a !== void 0 ? _a : jobSchedulerId, (_b = jobTemplate === null || jobTemplate === void 0 ? void 0 : jobTemplate.data) !== null && _b !== void 0 ? _b : {}, Object.assign(Object.assign({}, this.jobsOpts), jobTemplate === null || jobTemplate === void 0 ? void 0 : jobTemplate.opts), { override: true }); } /** * Pauses the processing of this queue globally. * * We use an atomic RENAME operation on the wait queue. Since * we have blocking calls with BRPOPLPUSH on the wait queue, as long as the queue * is renamed to 'paused', no new jobs will be processed (the current ones * will run until finalized). * * Adding jobs requires a LUA script to check first if the paused list exist * and in that case it will add it there instead of the wait list. */ async pause() { await this.trace(enums_1.SpanKind.INTERNAL, "pause", this.name, async () => { await this.scripts.pause(true); this.emit("paused"); }); } /** * Close the queue instance. * */ async close() { await this.trace(enums_1.SpanKind.INTERNAL, "close", this.name, async () => { if (!this.closing) { if (this._repeat) { await this._repeat.close(); } } await super.close(); }); } /** * Overrides the rate limit to be active for the next jobs. * * @param expireTimeMs - expire time in ms of this rate limit. */ async rateLimit(expireTimeMs) { await this.trace(enums_1.SpanKind.INTERNAL, "rateLimit", this.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.QueueRateLimit]: expireTimeMs }); await this.client.then((client) => client.set(this.keys.limiter, Number.MAX_SAFE_INTEGER, { PX: expireTimeMs })); }); } /** * Resumes the processing of this queue globally. * * The method reverses the pause operation by resuming the processing of the * queue. */ async resume() { await this.trace(enums_1.SpanKind.INTERNAL, "resume", this.name, async () => { await this.scripts.pause(false); this.emit("resumed"); }); } /** * Returns true if the queue is currently paused. */ async isPaused() { const client = await this.client; const pausedKeyExists = await client.hexists(this.keys.meta, "paused"); return pausedKeyExists === 1; } /** * Returns true if the queue is currently maxed. */ isMaxed() { return this.scripts.isMaxed(); } /** * Get all repeatable meta jobs. * * @deprecated This method is deprecated and will be removed in v6. Use getJobSchedulers instead. * * @param start - Offset of first job to return. * @param end - Offset of last job to return. * @param asc - Determine the order in which jobs are returned based on their * next execution time. */ async getRepeatableJobs(start, end, asc) { return (await this.repeat).getRepeatableJobs(start, end, asc); } /** * Get Job Scheduler by id * * @param id - identifier of scheduler. */ async getJobScheduler(id) { return (await this.jobScheduler).getScheduler(id); } /** * Get all Job Schedulers * * @param start - Offset of first scheduler to return. * @param end - Offset of last scheduler to return. * @param asc - Determine the order in which schedulers are returned based on their * next execution time. */ async getJobSchedulers(start, end, asc) { return (await this.jobScheduler).getJobSchedulers(start, end, asc); } /** * * Get the number of job schedulers. * * @returns The number of job schedulers. */ async getJobSchedulersCount() { return (await this.jobScheduler).getSchedulersCount(); } /** * Removes a repeatable job. * * Note: you need to use the exact same repeatOpts when deleting a repeatable job * than when adding it. * * @deprecated This method is deprecated and will be removed in v6. Use removeJobScheduler instead. * * @see removeRepeatableByKey * * @param name - Job name * @param repeatOpts - Repeat options * @param jobId - Job id to remove. If not provided, all jobs with the same repeatOpts * @returns */ async removeRepeatable(name, repeatOpts, jobId) { return this.trace(enums_1.SpanKind.INTERNAL, "removeRepeatable", `${this.name}.${name}`, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobName]: name, [enums_1.TelemetryAttributes.JobId]: jobId }); const repeat = await this.repeat; const removed = await repeat.removeRepeatable(name, repeatOpts, jobId); return !removed; }); } /** * * Removes a job scheduler. * * @param jobSchedulerId - identifier of the job scheduler. * * @returns */ async removeJobScheduler(jobSchedulerId) { const jobScheduler = await this.jobScheduler; const removed = await jobScheduler.removeJobScheduler(jobSchedulerId); return !removed; } /** * Removes a debounce key. * @deprecated use removeDeduplicationKey * * @param id - debounce identifier */ async removeDebounceKey(id) { return this.trace(enums_1.SpanKind.INTERNAL, "removeDebounceKey", `${this.name}`, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobKey]: id }); const client = await this.client; return await client.del(`${this.keys.de}:${id}`); }); } /** * Removes a deduplication key. * * @param id - identifier */ async removeDeduplicationKey(id) { return this.trace(enums_1.SpanKind.INTERNAL, "removeDeduplicationKey", `${this.name}`, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.DeduplicationKey]: id }); const client = await this.client; return client.del(`${this.keys.de}:${id}`); }); } /** * Removes rate limit key. */ async removeRateLimitKey() { const client = await this.client; return client.del(this.keys.limiter); } /** * Removes a repeatable job by its key. Note that the key is the one used * to store the repeatable job metadata and not one of the job iterations * themselves. You can use "getRepeatableJobs" in order to get the keys. * * @see getRepeatableJobs * * @deprecated This method is deprecated and will be removed in v6. Use removeJobScheduler instead. * * @param repeatJobKey - To the repeatable job. * @returns */ async removeRepeatableByKey(key) { return this.trace(enums_1.SpanKind.INTERNAL, "removeRepeatableByKey", `${this.name}`, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobKey]: key }); const repeat = await this.repeat; const removed = await repeat.removeRepeatableByKey(key); return !removed; }); } /** * Removes the given job from the queue as well as all its * dependencies. * * @param jobId - The id of the job to remove * @param opts - Options to remove a job * @returns 1 if it managed to remove the job or 0 if the job or * any of its dependencies were locked. */ async remove(jobId, { removeChildren = true } = {}) { return this.trace(enums_1.SpanKind.INTERNAL, "remove", this.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobId]: jobId, [enums_1.TelemetryAttributes.JobOptions]: JSON.stringify({ removeChildren }) }); const code = await this.scripts.remove(jobId, removeChildren); if (code === 1) { this.emit("removed", jobId); } return code; }); } /** * Updates the given job's progress. * * @param jobId - The id of the job to update * @param progress - Number or object to be saved as progress. */ async updateJobProgress(jobId, progress) { await this.trace(enums_1.SpanKind.INTERNAL, "updateJobProgress", this.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobId]: jobId, [enums_1.TelemetryAttributes.JobProgress]: JSON.stringify(progress) }); await this.scripts.updateProgress(jobId, progress); this.emit("progress", jobId, progress); }); } /** * Logs one row of job's log data. * * @param jobId - The job id to log against. * @param logRow - String with log data to be logged. * @param keepLogs - Max number of log entries to keep (0 for unlimited). * * @returns The total number of log entries for this job so far. */ async addJobLog(jobId, logRow, keepLogs) { return job_1.Job.addJobLog(this, jobId, logRow, keepLogs); } /** * Drains the queue, i.e., removes all jobs that are waiting * or delayed, but not active, completed or failed. * * @param delayed - Pass true if it should also clean the * delayed jobs. */ async drain(delayed = false) { await this.trace(enums_1.SpanKind.INTERNAL, "drain", this.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.QueueDrainDelay]: delayed }); await this.scripts.drain(delayed); }); } /** * Cleans jobs from a queue. Similar to drain but keeps jobs within a certain * grace period. * * @param grace - The grace period in milliseconds * @param limit - Max number of jobs to clean * @param type - The type of job to clean * Possible values are completed, wait, active, paused, delayed, failed. Defaults to completed. * @returns Id jobs from the deleted records */ async clean(grace, limit, type = "completed") { return this.trace(enums_1.SpanKind.INTERNAL, "clean", this.name, async (span) => { const maxCount = limit || Infinity; const maxCountPerCall = Math.min(1e4, maxCount); const timestamp = Date.now() - grace; let deletedCount = 0; const deletedJobsIds = []; const normalizedType = type === "waiting" ? "wait" : type; while (deletedCount < maxCount) { const jobsIds = await this.scripts.cleanJobsInSet(normalizedType, timestamp, maxCountPerCall); this.emit("cleaned", jobsIds, normalizedType); deletedCount += jobsIds.length; deletedJobsIds.push(...jobsIds); if (jobsIds.length < maxCountPerCall) { break; } } span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.QueueGrace]: grace, [enums_1.TelemetryAttributes.JobType]: type, [enums_1.TelemetryAttributes.QueueCleanLimit]: maxCount, [enums_1.TelemetryAttributes.JobIds]: deletedJobsIds }); return deletedJobsIds; }); } /** * Completely destroys the queue and all of its contents irreversibly. * This method will *pause* the queue and requires that there are no * active jobs. It is possible to bypass this requirement, i.e. not * having active jobs using the "force" option. * * Note: This operation requires to iterate on all the jobs stored in the queue * and can be slow for very large queues. * * @param opts - Obliterate options. */ async obliterate(opts) { await this.trace(enums_1.SpanKind.INTERNAL, "obliterate", this.name, async () => { await this.pause(); let cursor = 0; do { cursor = await this.scripts.obliterate(Object.assign({ force: false, count: 1e3 }, opts)); } while (cursor); }); } /** * Retry all the failed or completed jobs. * * @param opts - An object with the following properties: * - count number to limit how many jobs will be moved to wait status per iteration, * - state failed by default or completed. * - timestamp from which timestamp to start moving jobs to wait status, default Date.now(). * * @returns */ async retryJobs(opts = {}) { await this.trace(enums_1.SpanKind.PRODUCER, "retryJobs", this.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.QueueOptions]: JSON.stringify(opts) }); let cursor = 0; do { cursor = await this.scripts.retryJobs(opts.state, opts.count, opts.timestamp); } while (cursor); }); } /** * Promote all the delayed jobs. * * @param opts - An object with the following properties: * - count number to limit how many jobs will be moved to wait status per iteration * * @returns */ async promoteJobs(opts = {}) { await this.trace(enums_1.SpanKind.INTERNAL, "promoteJobs", this.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.QueueOptions]: JSON.stringify(opts) }); let cursor = 0; do { cursor = await this.scripts.promoteJobs(opts.count); } while (cursor); }); } /** * Trim the event stream to an approximately maxLength. * * @param maxLength - The approximate maximum length, or target length, of the event stream. */ async trimEvents(maxLength) { return this.trace(enums_1.SpanKind.INTERNAL, "trimEvents", this.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.QueueEventMaxLength]: maxLength }); const client = await this.client; return await client.xtrim(this.keys.events, "MAXLEN", maxLength, { approximate: true }); }); } /** * Delete old priority helper key. */ async removeDeprecatedPriorityKey() { const client = await this.client; return client.del(this.toKey("priority")); } /** * Removes orphaned job keys that exist in Redis but are not referenced * in any queue state set. * * Orphaned keys can occur in rare cases when the removal-by-max-age logic * removes sorted-set entries without fully cleaning up the corresponding * job hash data (a regression introduced in v5.66.6 via #3694). * Under normal operation this method is * **not needed** — it is provided only as a one-time migration helper for * users who were affected by that specific bug and want to reclaim the * leaked memory. * * The method uses a Lua script so that every check-and-delete cycle is * atomic (per SCAN iteration). State keys are derived dynamically from * the queue's key map and their Redis TYPE is checked at runtime, so newly * introduced states are picked up automatically. * * @param count - Approximate number of keys to SCAN per iteration (default 1000). * @param limit - Maximum number of orphaned jobs to remove (0 = unlimited). * When set, the method returns as soon as the limit is reached. * Users with a very large number of orphans can call this method * in a loop: `while (await queue.removeOrphanedJobs(1000, 10000)) {}` * @returns The total number of orphaned jobs that were removed. */ async removeOrphanedJobs(count = 1e3, limit = 0) { const client = await this.client; const knownSuffixes = new Set(Object.keys(this.keys)); const stateKeySuffixes = Object.keys(this.keys).filter((s) => s !== ""); const jobSubKeySuffixes = [ "logs", "dependencies", "processed", "failed", "unsuccessful", "lock" ]; const basePrefix = this.qualifiedName + ":"; const scanPattern = basePrefix + "*"; let totalRemoved = 0; let cursor = "0"; do { const [nextCursor, keys] = await client.scan(cursor, { MATCH: scanPattern, COUNT: count }); cursor = nextCursor; const candidateJobIds = /* @__PURE__ */ new Set(); for (const key of keys) { const suffix = key.slice(basePrefix.length); if (knownSuffixes.has(suffix)) { continue; } const colonIdx = suffix.indexOf(":"); if (colonIdx !== -1) { const prefixPart = suffix.slice(0, colonIdx); if (knownSuffixes.has(prefixPart)) { continue; } } const jobId = colonIdx === -1 ? suffix : suffix.slice(0, colonIdx); if (colonIdx !== -1) { const subKey = suffix.slice(colonIdx + 1); if (!jobSubKeySuffixes.includes(subKey)) { continue; } } candidateJobIds.add(jobId); } if (candidateJobIds.size === 0) { continue; } const result = await this.scripts.removeOrphanedJobs([...candidateJobIds], stateKeySuffixes, jobSubKeySuffixes); totalRemoved += result || 0; if (limit > 0 && totalRemoved >= limit) { break; } } while (cursor !== "0"); return totalRemoved; } }; exports2.Queue = Queue; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/sandbox.js var require_sandbox = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/sandbox.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var enums_1 = require_enums3(); var sandbox = /* @__PURE__ */ __name((processFile, childPool) => { return /* @__PURE__ */ __name(async function process2(job, token, signal) { let child; let msgHandler; let exitHandler; let abortHandler; try { const done = new Promise((resolve, reject) => { const initChild = /* @__PURE__ */ __name(async () => { try { exitHandler = /* @__PURE__ */ __name((exitCode, signal2) => { reject(new Error("Unexpected exit code: " + exitCode + " signal: " + signal2)); }, "exitHandler"); child = await childPool.retain(processFile); child.on("exit", exitHandler); msgHandler = /* @__PURE__ */ __name(async (msg) => { var _a, _b, _c, _d, _e, _f; try { switch (msg.cmd) { case enums_1.ParentCommand.Completed: resolve(msg.value); break; case enums_1.ParentCommand.Failed: case enums_1.ParentCommand.Error: { const err = new Error(); Object.assign(err, (_a = msg.value) !== null && _a !== void 0 ? _a : msg.err); reject(err); break; } case enums_1.ParentCommand.Progress: await job.updateProgress(msg.value); break; case enums_1.ParentCommand.Log: await job.log(msg.value); break; case enums_1.ParentCommand.MoveToDelayed: await job.moveToDelayed((_b = msg.value) === null || _b === void 0 ? void 0 : _b.timestamp, (_c = msg.value) === null || _c === void 0 ? void 0 : _c.token); break; case enums_1.ParentCommand.MoveToWait: await job.moveToWait((_d = msg.value) === null || _d === void 0 ? void 0 : _d.token); break; case enums_1.ParentCommand.MoveToWaitingChildren: { const value = await job.moveToWaitingChildren((_e = msg.value) === null || _e === void 0 ? void 0 : _e.token, (_f = msg.value) === null || _f === void 0 ? void 0 : _f.opts); child.send({ requestId: msg.requestId, cmd: enums_1.ChildCommand.MoveToWaitingChildrenResponse, value }); } break; case enums_1.ParentCommand.Update: await job.updateData(msg.value); break; case enums_1.ParentCommand.GetChildrenValues: { const value = await job.getChildrenValues(); child.send({ requestId: msg.requestId, cmd: enums_1.ChildCommand.GetChildrenValuesResponse, value }); } break; case enums_1.ParentCommand.GetIgnoredChildrenFailures: { const value = await job.getIgnoredChildrenFailures(); child.send({ requestId: msg.requestId, cmd: enums_1.ChildCommand.GetIgnoredChildrenFailuresResponse, value }); } break; case enums_1.ParentCommand.GetDependenciesCount: { const value = await job.getDependenciesCount(msg.value); child.send({ requestId: msg.requestId, cmd: enums_1.ChildCommand.GetDependenciesCountResponse, value }); } break; case enums_1.ParentCommand.GetDependencies: { const value = await job.getDependencies(msg.value); child.send({ requestId: msg.requestId, cmd: enums_1.ChildCommand.GetDependenciesResponse, value }); } break; } } catch (err) { reject(err); } }, "msgHandler"); child.on("message", msgHandler); child.send({ cmd: enums_1.ChildCommand.Start, job: job.asJSONSandbox(), token }); if (signal) { abortHandler = /* @__PURE__ */ __name(() => { try { child.send({ cmd: enums_1.ChildCommand.Cancel, value: signal.reason }); } catch (_a) { } }, "abortHandler"); if (signal.aborted) { abortHandler(); } else { signal.addEventListener("abort", abortHandler, { once: true }); } } } catch (error) { reject(error); } }, "initChild"); initChild(); }); await done; return done; } finally { if (signal && abortHandler) { signal.removeEventListener("abort", abortHandler); } if (child) { child.off("message", msgHandler); child.off("exit", exitHandler); if (child.exitCode === null && child.signalCode === null) { childPool.release(child); } } } }, "process"); }, "sandbox"); exports2.default = sandbox; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/worker.js var require_worker = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/worker.js"(exports2, module2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Worker = void 0; var fs = require("fs"); var url_1 = require("url"); var path = require("path"); var abort_controller_1 = require_abort_controller(); var utils_1 = require_utils16(); var queue_base_1 = require_queue_base(); var repeat_1 = require_repeat2(); var child_pool_1 = require_child_pool(); var redis_connection_1 = require_redis_connection(); var ioredis_client_1 = require_ioredis_client(); var sandbox_1 = require_sandbox(); var async_fifo_queue_1 = require_async_fifo_queue(); var errors_1 = require_errors3(); var enums_1 = require_enums3(); var job_scheduler_1 = require_job_scheduler(); var lock_manager_1 = require_lock_manager(); var maximumBlockTimeout = 10; var Worker = class extends queue_base_1.QueueBase { static { __name(this, "Worker"); } static RateLimitError() { return new errors_1.RateLimitError(); } constructor(name, processor, opts, Connection) { super(name, Object.assign(Object.assign({ drainDelay: 5, concurrency: 1, lockDuration: 3e4, maximumRateLimitDelay: 3e4, maxStalledCount: 1, stalledInterval: 3e4, autorun: true, runRetryDelay: 15e3 }, opts), { blockingConnection: true }), Connection); this.abortDelayController = null; this.blockUntil = 0; this.drained = false; this.limitUntil = 0; this.processorAcceptsSignal = false; this.stalledCheckerRunning = false; this.waiting = null; this.running = false; this.mainLoopRunning = null; if (!opts || !opts.connection) { throw new Error("Worker requires a connection"); } if (typeof this.opts.maxStalledCount !== "number" || this.opts.maxStalledCount < 0) { throw new Error("maxStalledCount must be greater or equal than 0"); } if (typeof this.opts.maxStartedAttempts === "number" && this.opts.maxStartedAttempts < 0) { throw new Error("maxStartedAttempts must be greater or equal than 0"); } if (typeof this.opts.stalledInterval !== "number" || this.opts.stalledInterval <= 0) { throw new Error("stalledInterval must be greater than 0"); } if (typeof this.opts.drainDelay !== "number" || this.opts.drainDelay <= 0) { throw new Error("drainDelay must be greater than 0"); } this.concurrency = this.opts.concurrency; this.opts.lockRenewTime = this.opts.lockRenewTime || this.opts.lockDuration / 2; this.id = (0, utils_1.randomUUID)(); this.createLockManager(); if (processor) { if (typeof processor === "function") { this.processFn = processor; this.processorAcceptsSignal = processor.length >= 3; } else { if (processor instanceof url_1.URL) { if (!fs.existsSync(processor)) { throw new Error(`URL ${processor} does not exist in the local file system`); } processor = processor.href; } else { const supportedFileTypes = [".js", ".ts", ".flow", ".cjs", ".mjs"]; const processorFile = processor + (supportedFileTypes.includes(path.extname(processor)) ? "" : ".js"); if (!fs.existsSync(processorFile)) { throw new Error(`File ${processorFile} does not exist`); } } const dirname = path.dirname(module2.filename || __filename); const workerThreadsMainFile = path.join(dirname, "main-worker.js"); const spawnProcessMainFile = path.join(dirname, "main.js"); let mainFilePath = this.opts.useWorkerThreads ? workerThreadsMainFile : spawnProcessMainFile; try { fs.statSync(mainFilePath); } catch (_2) { const mainFile = this.opts.useWorkerThreads ? "main-worker.js" : "main.js"; mainFilePath = path.join(process.cwd(), `dist/cjs/classes/${mainFile}`); fs.statSync(mainFilePath); } this.childPool = new child_pool_1.ChildPool({ mainFile: mainFilePath, useWorkerThreads: this.opts.useWorkerThreads, workerForkOptions: this.opts.workerForkOptions, workerThreadsOptions: this.opts.workerThreadsOptions }); this.createSandbox(processor); this.processorAcceptsSignal = true; } if (this.opts.autorun) { this.run().catch((error) => this.emit("error", error)); } } const connectionName = this.clientName() + (this.opts.name ? `:w:${this.opts.name}` : ""); this.blockingConnection = new redis_connection_1.RedisConnection((0, utils_1.isRedisInstance)(opts.connection) ? ((0, ioredis_client_1.isIRedisClient)(opts.connection) ? opts.connection : (0, ioredis_client_1.createIORedisClient)(opts.connection)).duplicate({ connectionName }) : Object.assign(Object.assign({}, opts.connection), { connectionName }), { shared: false, blocking: true, skipVersionCheck: opts.skipVersionCheck }); (0, utils_1.forwardConnectionError)(this, this.blockingConnection); this.blockingConnection.on("ready", () => setTimeout(() => this.emit("ready"), 0)); } /** * Creates and configures the lock manager for processing jobs. * This method can be overridden in subclasses to customize lock manager behavior. */ createLockManager() { this.lockManager = new lock_manager_1.LockManager(this, { lockRenewTime: this.opts.lockRenewTime, lockDuration: this.opts.lockDuration, workerId: this.id, workerName: this.opts.name }); } /** * Creates and configures the sandbox for processing jobs. * This method can be overridden in subclasses to customize sandbox behavior. * * @param processor - The processor file path, URL, or function to be sandboxed */ createSandbox(processor) { this.processFn = (0, sandbox_1.default)(processor, this.childPool).bind(this); } /** * Public accessor method for LockManager to extend locks. * This delegates to the protected scripts object. */ async extendJobLocks(jobIds, tokens, duration) { return this.scripts.extendLocks(jobIds, tokens, duration); } emit(event, ...args) { return super.emit(event, ...args); } off(eventName, listener) { super.off(eventName, listener); return this; } on(event, listener) { super.on(event, listener); return this; } once(event, listener) { super.once(event, listener); return this; } callProcessJob(job, token, signal) { return this.processFn(job, token, signal); } createJob(data, jobId) { return this.Job.fromJSON(this, data, jobId); } /** * * Waits until the worker is ready to start processing jobs. * In general only useful when writing tests. * */ async waitUntilReady() { await super.waitUntilReady(); return this.blockingConnection.client; } /** * Cancels a specific job currently being processed by this worker. * The job's processor function will receive an abort signal. * * @param jobId - The ID of the job to cancel * @param reason - Optional reason for the cancellation * @returns true if the job was found and cancelled, false otherwise */ cancelJob(jobId, reason) { return this.lockManager.cancelJob(jobId, reason); } /** * Cancels all jobs currently being processed by this worker. * All active job processor functions will receive abort signals. * * @param reason - Optional reason for the cancellation */ cancelAllJobs(reason) { this.lockManager.cancelAllJobs(reason); } set concurrency(concurrency) { if (typeof concurrency !== "number" || concurrency < 1 || !isFinite(concurrency)) { throw new Error("concurrency must be a finite number greater than 0"); } this._concurrency = concurrency; } get concurrency() { return this._concurrency; } get repeat() { return new Promise(async (resolve) => { if (!this._repeat) { const connection = await this.client; this._repeat = new repeat_1.Repeat(this.name, Object.assign(Object.assign({}, this.opts), { connection })); this._repeat.on("error", this.emit.bind(this, "error")); } resolve(this._repeat); }); } get jobScheduler() { return new Promise(async (resolve) => { if (!this._jobScheduler) { const connection = await this.client; this._jobScheduler = new job_scheduler_1.JobScheduler(this.name, Object.assign(Object.assign({}, this.opts), { connection })); this._jobScheduler.on("error", this.emit.bind(this, "error")); } resolve(this._jobScheduler); }); } async run() { if (!this.processFn) { throw new Error("No process function is defined."); } if (this.running) { throw new Error("Worker is already running."); } try { this.running = true; if (this.closing || this.paused) { return; } await this.startStalledCheckTimer(); if (!this.opts.skipLockRenewal) { this.lockManager.start(); } const client = await this.client; const bclient = await this.blockingConnection.client; this.mainLoopRunning = this.mainLoop(client, bclient); await this.mainLoopRunning; } finally { this.running = false; } } async waitForRateLimit() { var _a; const limitUntil = this.limitUntil; if (limitUntil > Date.now()) { (_a = this.abortDelayController) === null || _a === void 0 ? void 0 : _a.abort(); this.abortDelayController = new abort_controller_1.AbortController(); const delay = this.getRateLimitDelay(limitUntil - Date.now()); await this.delay(delay, this.abortDelayController); this.drained = false; this.limitUntil = 0; } } /** * This is the main loop in BullMQ. Its goals are to fetch jobs from the queue * as efficiently as possible, providing concurrency and minimal unnecessary calls * to Redis. */ async mainLoop(client, bclient) { const asyncFifoQueue = new async_fifo_queue_1.AsyncFifoQueue(); let tokenPostfix = 0; while (!this.closing && !this.paused || asyncFifoQueue.numTotal() > 0) { while (!this.closing && !this.paused && !this.waiting && asyncFifoQueue.numTotal() < this._concurrency && !this.isRateLimited()) { const token = `${this.id}:${tokenPostfix++}`; const fetchedJob = this.retryIfFailed(() => this._getNextJob(client, bclient, token, { block: true }), { delayInMs: this.opts.runRetryDelay, onlyEmitError: true }); asyncFifoQueue.add(fetchedJob); if (this.waiting && asyncFifoQueue.numTotal() > 1) { break; } const job2 = await fetchedJob; if (!job2 && asyncFifoQueue.numTotal() > 1) { break; } if (this.blockUntil) { break; } } let job; do { job = await asyncFifoQueue.fetch(); } while (!job && asyncFifoQueue.numQueued() > 0); if (job) { const token = job.token; asyncFifoQueue.add(this.processJob(job, token, () => asyncFifoQueue.numTotal() <= this._concurrency)); } else if (asyncFifoQueue.numQueued() === 0) { await this.waitForRateLimit(); } } } /** * Returns a promise that resolves to the next job in queue. * @param token - worker token to be assigned to retrieved job * @returns a Job or undefined if no job was available in the queue. */ async getNextJob(token, { block = true } = {}) { let nextJob = await this.getTracedNextJob(token, { block }); while (nextJob) { const unrecoverableErrorMessage = this.getUnrecoverableErrorMessage(nextJob); if (!unrecoverableErrorMessage) { break; } await this.handleFailed(new errors_1.UnrecoverableError(unrecoverableErrorMessage), nextJob, token, () => false); nextJob = await this.getTracedNextJob(token, { block }); } return nextJob; } async getTracedNextJob(token, { block = true } = {}) { var _a, _b; const nextJob = await this._getNextJob(await this.client, await this.blockingConnection.client, token, { block }); return this.trace(enums_1.SpanKind.INTERNAL, "getNextJob", this.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.WorkerId]: this.id, [enums_1.TelemetryAttributes.QueueName]: this.name, [enums_1.TelemetryAttributes.WorkerName]: this.opts.name, [enums_1.TelemetryAttributes.WorkerOptions]: JSON.stringify({ block }), [enums_1.TelemetryAttributes.JobId]: nextJob === null || nextJob === void 0 ? void 0 : nextJob.id }); return nextJob; }, (_b = (_a = nextJob === null || nextJob === void 0 ? void 0 : nextJob.opts) === null || _a === void 0 ? void 0 : _a.telemetry) === null || _b === void 0 ? void 0 : _b.metadata); } async _getNextJob(client, bclient, token, { block = true } = {}) { if (this.paused) { return; } if (this.closing) { return; } let job; if (this.drained && block && !this.limitUntil && !this.waiting) { this.waiting = this.waitForJob(bclient, this.blockUntil); try { this.blockUntil = await this.waiting; if (this.blockUntil <= 0 || this.blockUntil - Date.now() < 1) { job = await this.moveToActive(client, token, this.opts.name); } } finally { this.waiting = null; } } else { if (!this.isRateLimited()) { job = await this.moveToActive(client, token, this.opts.name); } } return job; } /** * Overrides the rate limit to be active for the next jobs. * @deprecated This method is deprecated and will be removed in v6. Use queue.rateLimit method instead. * @param expireTimeMs - expire time in ms of this rate limit. */ async rateLimit(expireTimeMs) { await this.trace(enums_1.SpanKind.INTERNAL, "rateLimit", this.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.WorkerId]: this.id, [enums_1.TelemetryAttributes.WorkerRateLimit]: expireTimeMs }); await this.client.then((client) => client.set(this.keys.limiter, Number.MAX_SAFE_INTEGER, { PX: expireTimeMs })); }); } get minimumBlockTimeout() { return this.blockingConnection.capabilities.canBlockFor1Ms ? ( /* 1 millisecond is chosen because the granularity of our timestamps are milliseconds. Obviously we can still process much faster than 1 job per millisecond but delays and rate limits will never work with more accuracy than 1ms. */ 1e-3 ) : 2e-3; } isRateLimited() { return this.limitUntil > Date.now(); } async moveToActive(client, token, name) { const [jobData, id, rateLimitDelay, delayUntil] = await this.scripts.moveToActive(client, token, name); this.updateDelays(rateLimitDelay, delayUntil); return this.nextJobFromJobData(jobData, id, token); } async waitForJob(bclient, blockUntil) { if (this.paused) { return Infinity; } let timeout; try { if (!this.closing && !this.isRateLimited()) { let blockTimeout = this.getBlockTimeout(blockUntil); if (blockTimeout > 0) { blockTimeout = this.blockingConnection.capabilities.canDoubleTimeout ? blockTimeout : Math.ceil(blockTimeout); timeout = setTimeout(async () => { bclient.disconnect(!this.closing); }, blockTimeout * 1e3 + 1e3); this.updateDelays(); const result = await bclient.bzpopmin(this.keys.marker, blockTimeout); if (result) { const [, member, score] = result; if (member) { const newBlockUntil = parseInt(score); if (blockUntil && newBlockUntil > blockUntil) { return blockUntil; } return newBlockUntil; } } } return 0; } } catch (error) { if ((0, utils_1.isNotConnectionError)(error)) { this.emit("error", error); } if (!this.closing && bclient.status === "end") { try { await bclient.connect(); } catch (reconnectError) { if (bclient.status === "end" && (0, utils_1.isNotConnectionError)(reconnectError)) { this.emit("error", reconnectError); } } } if (!this.closing) { await this.delay(); } } finally { clearTimeout(timeout); } return Infinity; } getBlockTimeout(blockUntil) { const opts = this.opts; if (blockUntil) { const blockDelay = blockUntil - Date.now(); if (blockDelay <= 0) { return blockDelay; } else if (blockDelay < this.minimumBlockTimeout * 1e3) { return this.minimumBlockTimeout; } else { return Math.min(blockDelay / 1e3, maximumBlockTimeout); } } else { return Math.max(opts.drainDelay, this.minimumBlockTimeout); } } getRateLimitDelay(delay) { return Math.min(delay, this.opts.maximumRateLimitDelay); } /** * * This function is exposed only for testing purposes. */ async delay(milliseconds, abortController) { await (0, utils_1.delay)(milliseconds || utils_1.DELAY_TIME_1, abortController); } updateDelays(limitDelay = 0, delayUntil = 0) { const clampedLimit = Math.max(limitDelay, 0); if (clampedLimit > 0) { this.limitUntil = Date.now() + clampedLimit; } else { this.limitUntil = 0; } this.blockUntil = Math.max(delayUntil, 0) || 0; } async nextJobFromJobData(jobData, jobId, token) { if (!jobData) { if (!this.drained) { this.emit("drained"); this.drained = true; } } else { this.drained = false; const job = this.createJob(jobData, jobId); job.token = token; try { await this.retryIfFailed(async () => { const hasRepeatJobKey = !!job.repeatJobKey; const hasLegacyKeyShape = hasRepeatJobKey && job.repeatJobKey.split(":").length >= 5; let isJobScheduler = hasRepeatJobKey && !hasLegacyKeyShape; if (hasLegacyKeyShape) { const jobScheduler = await this.jobScheduler; isJobScheduler = await jobScheduler.isJobScheduler(job.repeatJobKey); } if (isJobScheduler) { const jobScheduler = await this.jobScheduler; await jobScheduler.upsertJobScheduler( // Most of these arguments are not really needed // anymore as we read them from the job scheduler itself job.repeatJobKey, job.opts.repeat, job.name, job.data, job.opts, { override: false, producerId: job.id } ); } else if (job.opts.repeat) { const repeat = await this.repeat; await repeat.updateRepeatableJob(job.name, job.data, job.opts, { override: false }); } }, { delayInMs: this.opts.runRetryDelay }); } catch (err) { const errorMessage = err instanceof Error ? err.message : String(err); const schedulingError = new Error(`Failed to add repeatable job for next iteration: ${errorMessage}`); this.emit("error", schedulingError); return void 0; } this.emit("active", job, "waiting"); return job; } } async processJob(job, token, fetchNextCallback = () => true) { var _a, _b; const srcPropagationMetadata = (_b = (_a = job.opts) === null || _a === void 0 ? void 0 : _a.telemetry) === null || _b === void 0 ? void 0 : _b.metadata; return this.trace(enums_1.SpanKind.CONSUMER, "process", this.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.WorkerId]: this.id, [enums_1.TelemetryAttributes.WorkerName]: this.opts.name, [enums_1.TelemetryAttributes.JobId]: job.id, [enums_1.TelemetryAttributes.JobName]: job.name }); const abortController = this.lockManager.trackJob(job.id, token, job.processedOn, this.processorAcceptsSignal); try { const unrecoverableErrorMessage = this.getUnrecoverableErrorMessage(job); if (unrecoverableErrorMessage) { const failed = await this.retryIfFailed(() => { this.lockManager.untrackJob(job.id); return this.handleFailed(new errors_1.UnrecoverableError(unrecoverableErrorMessage), job, token, fetchNextCallback, span); }, { delayInMs: this.opts.runRetryDelay, span }); return failed; } const result = await this.callProcessJob(job, token, abortController ? abortController.signal : void 0); return await this.retryIfFailed(() => { this.lockManager.untrackJob(job.id); return this.handleCompleted(result, job, token, fetchNextCallback, span); }, { delayInMs: this.opts.runRetryDelay, span }); } catch (err) { const failed = await this.retryIfFailed(() => { this.lockManager.untrackJob(job.id); return this.handleFailed(err, job, token, fetchNextCallback, span); }, { delayInMs: this.opts.runRetryDelay, span, onlyEmitError: true }); return failed; } finally { this.lockManager.untrackJob(job.id); const now = Date.now(); span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobFinishedTimestamp]: now, [enums_1.TelemetryAttributes.JobAttemptFinishedTimestamp]: job.finishedOn || now, [enums_1.TelemetryAttributes.JobProcessedTimestamp]: job.processedOn }); } }, srcPropagationMetadata); } getUnrecoverableErrorMessage(job) { if (job.deferredFailure) { return job.deferredFailure; } if (this.opts.maxStartedAttempts && this.opts.maxStartedAttempts < job.attemptsStarted) { return "job started more than allowable limit"; } } async handleCompleted(result, job, token, fetchNextCallback = () => true, span) { if (!this.connection.closing) { const completed = await job.moveToCompleted(result, token, fetchNextCallback() && !(this.closing || this.paused)); this.emit("completed", job, result, "active"); span === null || span === void 0 ? void 0 : span.addEvent("job completed", { [enums_1.TelemetryAttributes.JobResult]: JSON.stringify(result) }); span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobAttemptsMade]: job.attemptsMade }); if (Array.isArray(completed)) { const [jobData, jobId, rateLimitDelay, delayUntil] = completed; this.updateDelays(rateLimitDelay, delayUntil); return this.nextJobFromJobData(jobData, jobId, token); } } } async handleFailed(err, job, token, fetchNextCallback = () => true, span) { if (!this.connection.closing) { if (err.message === errors_1.RATE_LIMIT_ERROR) { const rateLimitTtl = await this.moveLimitedBackToWait(job, token); this.limitUntil = rateLimitTtl > 0 ? Date.now() + rateLimitTtl : 0; return; } const fetchNext = fetchNextCallback() && !(this.closing || this.paused); if (err instanceof errors_1.DelayedError || err.name == "DelayedError" || err instanceof errors_1.WaitingError || err.name == "WaitingError" || err instanceof errors_1.WaitingChildrenError || err.name == "WaitingChildrenError") { if (!fetchNext) { return; } const client = await this.client; return this.moveToActive(client, token, this.opts.name); } const result = await job.moveToFailed(err, token, fetchNext); this.emit("failed", job, err, "active"); span === null || span === void 0 ? void 0 : span.addEvent("job failed", { [enums_1.TelemetryAttributes.JobFailedReason]: err.message }); span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.JobAttemptsMade]: job.attemptsMade }); if (Array.isArray(result)) { const [jobData, jobId, rateLimitDelay, delayUntil] = result; this.updateDelays(rateLimitDelay, delayUntil); return this.nextJobFromJobData(jobData, jobId, token); } } } /** * * Pauses the processing of this queue only for this worker. */ async pause(doNotWaitActive) { await this.trace(enums_1.SpanKind.INTERNAL, "pause", this.name, async (span) => { var _a; span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.WorkerId]: this.id, [enums_1.TelemetryAttributes.WorkerName]: this.opts.name, [enums_1.TelemetryAttributes.WorkerDoNotWaitActive]: doNotWaitActive }); if (!this.paused) { this.paused = true; if (!doNotWaitActive) { await this.whenCurrentJobsFinished(); } (_a = this.stalledCheckStopper) === null || _a === void 0 ? void 0 : _a.call(this); this.emit("paused"); } }); } /** * * Resumes processing of this worker (if paused). */ resume() { if (!this.running || this.paused) { this.trace(enums_1.SpanKind.INTERNAL, "resume", this.name, (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.WorkerId]: this.id, [enums_1.TelemetryAttributes.WorkerName]: this.opts.name }); this.paused = false; if (!this.running) { if (this.processFn) { this.run(); } } else { void this.startStalledCheckTimer().catch((err) => { this.emit("error", err); }); } this.emit("resumed"); }).catch((err) => { this.emit("error", err); }); } } /** * * Checks if worker is paused. * * @returns true if worker is paused, false otherwise. */ isPaused() { return !!this.paused; } /** * * Checks if worker is currently running. * * @returns true if worker is running, false otherwise. */ isRunning() { return this.running; } /** * * Closes the worker and related redis connections. * * This method waits for current jobs to finalize before returning. * * @param force - Use force boolean parameter if you do not want to wait for * current jobs to be processed. When using telemetry, be mindful that it can * interfere with the proper closure of spans, potentially preventing them from being exported. * * @returns Promise that resolves when the worker has been closed. */ async close(force = false) { if (this.closing) { return this.closing; } this.closing = (async () => { await this.trace(enums_1.SpanKind.INTERNAL, "close", this.name, async (span) => { var _a, _b; span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.WorkerId]: this.id, [enums_1.TelemetryAttributes.WorkerName]: this.opts.name, [enums_1.TelemetryAttributes.WorkerForceClose]: force }); this.emit("closing", "closing queue"); (_a = this.abortDelayController) === null || _a === void 0 ? void 0 : _a.abort(); const asyncCleanups = [ () => { return force || this.whenCurrentJobsFinished(false); }, () => this.lockManager.close(), () => { var _a2; return (_a2 = this.childPool) === null || _a2 === void 0 ? void 0 : _a2.clean(); }, () => this.blockingConnection.close(force), () => this.connection.close(force) ]; for (const cleanup of asyncCleanups) { try { await cleanup(); } catch (err) { this.emit("error", err); } } (_b = this.stalledCheckStopper) === null || _b === void 0 ? void 0 : _b.call(this); this.closed = true; this.emit("closed"); }); })(); return await this.closing; } /** * * Manually starts the stalled checker. * The check will run once as soon as this method is called, and * then every opts.stalledInterval milliseconds until the worker is closed. * Note: Normally you do not need to call this method, since the stalled checker * is automatically started when the worker starts processing jobs after * calling run. However if you want to process the jobs manually you need * to call this method to start the stalled checker. * * @see {@link https://docs.bullmq.io/patterns/manually-fetching-jobs} */ async startStalledCheckTimer() { if (!this.opts.skipStalledCheck) { if (!this.closing && !this.stalledCheckerRunning) { await this.trace(enums_1.SpanKind.INTERNAL, "startStalledCheckTimer", this.name, async (span) => { span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.WorkerId]: this.id, [enums_1.TelemetryAttributes.WorkerName]: this.opts.name }); this.stalledCheckerRunning = true; this.stalledChecker().catch((err) => { this.emit("error", err); }).finally(() => { this.stalledCheckerRunning = false; }); }); } } } async stalledChecker() { while (!(this.closing || this.paused)) { await this.checkConnectionError(() => this.moveStalledJobsToWait()); await new Promise((resolve) => { const timeout = setTimeout(resolve, this.opts.stalledInterval); this.stalledCheckStopper = () => { clearTimeout(timeout); resolve(); }; }); } } /** * Returns a promise that resolves when active jobs are cleared * * @returns */ async whenCurrentJobsFinished(reconnect = true) { if (this.mainLoopRunning) { await this.blockingConnection.disconnect(true); await this.mainLoopRunning; } else { reconnect = false; } reconnect && await this.blockingConnection.reconnect(); } async retryIfFailed(fn, opts) { var _a; let retry = 0; const maxRetries = opts.maxRetries || Infinity; do { try { return await fn(); } catch (err) { (_a = opts.span) === null || _a === void 0 ? void 0 : _a.recordException(err.message); if ((0, utils_1.isNotConnectionError)(err)) { if (!this.paused && !this.closing) { this.emit("error", err); } if (opts.onlyEmitError) { return; } else { throw err; } } else { if (opts.delayInMs && !this.closing && !this.closed) { await this.delay(opts.delayInMs, this.abortDelayController); } if (retry + 1 >= maxRetries) { throw err; } } } } while (++retry < maxRetries); } async moveStalledJobsToWait() { await this.trace(enums_1.SpanKind.INTERNAL, "moveStalledJobsToWait", this.name, async (span) => { const stalled = await this.scripts.moveStalledJobsToWait(); span === null || span === void 0 ? void 0 : span.setAttributes({ [enums_1.TelemetryAttributes.WorkerId]: this.id, [enums_1.TelemetryAttributes.WorkerName]: this.opts.name, [enums_1.TelemetryAttributes.WorkerStalledJobs]: stalled }); stalled.forEach((jobId) => { span === null || span === void 0 ? void 0 : span.addEvent("job stalled", { [enums_1.TelemetryAttributes.JobId]: jobId }); this.emit("stalled", jobId, "active"); }); }); } moveLimitedBackToWait(job, token) { return job.moveToWait(token); } }; exports2.Worker = Worker; } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/index.js var require_classes = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/classes/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_async_fifo_queue(), exports2); tslib_1.__exportStar(require_backoffs(), exports2); tslib_1.__exportStar(require_child(), exports2); tslib_1.__exportStar(require_child_pool(), exports2); tslib_1.__exportStar(require_child_processor(), exports2); tslib_1.__exportStar(require_errors3(), exports2); tslib_1.__exportStar(require_flow_producer(), exports2); tslib_1.__exportStar(require_ioredis_client(), exports2); tslib_1.__exportStar(require_node_redis_client(), exports2); tslib_1.__exportStar(require_bun_redis_client(), exports2); tslib_1.__exportStar(require_valkey_glide_client(), exports2); tslib_1.__exportStar(require_job(), exports2); tslib_1.__exportStar(require_job_scheduler(), exports2); tslib_1.__exportStar(require_lock_manager(), exports2); tslib_1.__exportStar(require_queue_base(), exports2); tslib_1.__exportStar(require_queue_events(), exports2); tslib_1.__exportStar(require_queue_events_producer(), exports2); tslib_1.__exportStar(require_queue_getters(), exports2); tslib_1.__exportStar(require_queue_keys(), exports2); tslib_1.__exportStar(require_queue2(), exports2); tslib_1.__exportStar(require_redis_connection(), exports2); tslib_1.__exportStar(require_repeat2(), exports2); tslib_1.__exportStar(require_sandbox(), exports2); tslib_1.__exportStar(require_scripts(), exports2); tslib_1.__exportStar(require_worker(), exports2); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/advanced-options.js var require_advanced_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/advanced-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/backoff-options.js var require_backoff_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/backoff-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/base-job-options.js var require_base_job_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/base-job-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/child-message.js var require_child_message = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/child-message.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/connection.js var require_connection = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/connection.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/flow-job.js var require_flow_job = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/flow-job.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/ioredis-events.js var require_ioredis_events = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/ioredis-events.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/job-json.js var require_job_json = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/job-json.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/job-scheduler-json.js var require_job_scheduler_json = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/job-scheduler-json.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/lock-manager-worker-context.js var require_lock_manager_worker_context = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/lock-manager-worker-context.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/metrics-options.js var require_metrics_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/metrics-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/metrics.js var require_metrics = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/metrics.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/minimal-job.js var require_minimal_job = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/minimal-job.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/minimal-queue.js var require_minimal_queue = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/minimal-queue.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/parent-message.js var require_parent_message = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/parent-message.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/parent.js var require_parent = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/parent.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/parent-options.js var require_parent_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/parent-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/queue-meta.js var require_queue_meta = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/queue-meta.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/queue-options.js var require_queue_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/queue-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ClientType = void 0; var ClientType; (function(ClientType2) { ClientType2["blocking"] = "blocking"; ClientType2["normal"] = "normal"; })(ClientType || (exports2.ClientType = ClientType = {})); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/rate-limiter-options.js var require_rate_limiter_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/rate-limiter-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/redis-client.js var require_redis_client = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/redis-client.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/redis-options.js var require_redis_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/redis-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/redis-streams.js var require_redis_streams = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/redis-streams.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/repeatable-job.js var require_repeatable_job = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/repeatable-job.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/repeatable-options.js var require_repeatable_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/repeatable-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/repeat-options.js var require_repeat_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/repeat-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/retry-options.js var require_retry_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/retry-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/script-queue-context.js var require_script_queue_context = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/script-queue-context.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/sandboxed-job-processor.js var require_sandboxed_job_processor = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/sandboxed-job-processor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/sandboxed-job.js var require_sandboxed_job = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/sandboxed-job.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/sandboxed-options.js var require_sandboxed_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/sandboxed-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/worker-options.js var require_worker_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/worker-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/telemetry.js var require_telemetry = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/telemetry.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/receiver.js var require_receiver = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/receiver.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/index.js var require_interfaces9 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/interfaces/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_advanced_options(), exports2); tslib_1.__exportStar(require_backoff_options(), exports2); tslib_1.__exportStar(require_base_job_options(), exports2); tslib_1.__exportStar(require_child_message(), exports2); tslib_1.__exportStar(require_connection(), exports2); tslib_1.__exportStar(require_flow_job(), exports2); tslib_1.__exportStar(require_ioredis_events(), exports2); tslib_1.__exportStar(require_job_json(), exports2); tslib_1.__exportStar(require_job_scheduler_json(), exports2); tslib_1.__exportStar(require_lock_manager_worker_context(), exports2); tslib_1.__exportStar(require_metrics_options(), exports2); tslib_1.__exportStar(require_metrics(), exports2); tslib_1.__exportStar(require_minimal_job(), exports2); tslib_1.__exportStar(require_minimal_queue(), exports2); tslib_1.__exportStar(require_parent_message(), exports2); tslib_1.__exportStar(require_parent(), exports2); tslib_1.__exportStar(require_parent_options(), exports2); tslib_1.__exportStar(require_queue_meta(), exports2); tslib_1.__exportStar(require_queue_options(), exports2); tslib_1.__exportStar(require_rate_limiter_options(), exports2); tslib_1.__exportStar(require_redis_client(), exports2); tslib_1.__exportStar(require_redis_options(), exports2); tslib_1.__exportStar(require_redis_streams(), exports2); tslib_1.__exportStar(require_repeatable_job(), exports2); tslib_1.__exportStar(require_repeatable_options(), exports2); tslib_1.__exportStar(require_repeat_options(), exports2); tslib_1.__exportStar(require_retry_options(), exports2); tslib_1.__exportStar(require_script_queue_context(), exports2); tslib_1.__exportStar(require_sandboxed_job_processor(), exports2); tslib_1.__exportStar(require_sandboxed_job(), exports2); tslib_1.__exportStar(require_sandboxed_options(), exports2); tslib_1.__exportStar(require_worker_options(), exports2); tslib_1.__exportStar(require_telemetry(), exports2); tslib_1.__exportStar(require_receiver(), exports2); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/backoff-strategy.js var require_backoff_strategy = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/backoff-strategy.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/database-type.js var require_database_type = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/database-type.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/deduplication-options.js var require_deduplication_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/deduplication-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/finished-status.js var require_finished_status = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/finished-status.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/job-json-sandbox.js var require_job_json_sandbox = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/job-json-sandbox.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/job-options.js var require_job_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/job-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/job-scheduler-template-options.js var require_job_scheduler_template_options = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/job-scheduler-template-options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/job-type.js var require_job_type = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/job-type.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/job-progress.js var require_job_progress = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/job-progress.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/repeat-strategy.js var require_repeat_strategy = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/repeat-strategy.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/keep-jobs.js var require_keep_jobs = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/keep-jobs.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/index.js var require_types4 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_backoff_strategy(), exports2); tslib_1.__exportStar(require_database_type(), exports2); tslib_1.__exportStar(require_deduplication_options(), exports2); tslib_1.__exportStar(require_finished_status(), exports2); tslib_1.__exportStar(require_job_json_sandbox(), exports2); tslib_1.__exportStar(require_job_options(), exports2); tslib_1.__exportStar(require_job_scheduler_template_options(), exports2); tslib_1.__exportStar(require_job_type(), exports2); tslib_1.__exportStar(require_job_progress(), exports2); tslib_1.__exportStar(require_repeat_strategy(), exports2); tslib_1.__exportStar(require_keep_jobs(), exports2); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/processor.js var require_processor = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/types/processor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/index.js var require_cjs4 = __commonJS({ "../../node_modules/.pnpm/bullmq@5.81.4/node_modules/bullmq/dist/cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_classes(), exports2); tslib_1.__exportStar(require_enums3(), exports2); tslib_1.__exportStar(require_interfaces9(), exports2); tslib_1.__exportStar(require_types4(), exports2); tslib_1.__exportStar(require_utils16(), exports2); tslib_1.__exportStar(require_processor(), exports2); tslib_1.__exportStar(require_create_scripts(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.constants.js var require_bull_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BULL_EXTRA_OPTIONS_TOKEN = exports2.ON_WORKER_EVENT_METADATA = exports2.ON_QUEUE_EVENT_METADATA = exports2.QUEUE_EVENTS_LISTENER_METADATA = exports2.WORKER_METADATA = exports2.PROCESSOR_METADATA = void 0; exports2.PROCESSOR_METADATA = "bullmq:processor_metadata"; exports2.WORKER_METADATA = "bullmq:worker_metadata"; exports2.QUEUE_EVENTS_LISTENER_METADATA = "bullmq:queue_events_listener_metadata"; exports2.ON_QUEUE_EVENT_METADATA = "bullmq:queue_events_metadata"; exports2.ON_WORKER_EVENT_METADATA = "bullmq:worker_events_metadata"; exports2.BULL_EXTRA_OPTIONS_TOKEN = "BULLMQ_EXTRA_OPTIONS"; } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull-metadata.accessor.js var require_bull_metadata_accessor = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull-metadata.accessor.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BullMetadataAccessor = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var core_12 = require_core3(); var bull_constants_1 = require_bull_constants(); var BullMetadataAccessor = class BullMetadataAccessor { static { __name(this, "BullMetadataAccessor"); } constructor(reflector) { this.reflector = reflector; } isProcessor(target) { if (!target) { return false; } return !!this.reflector.get(bull_constants_1.PROCESSOR_METADATA, target); } isQueueEventsListener(target) { if (!target) { return false; } return !!this.reflector.get(bull_constants_1.QUEUE_EVENTS_LISTENER_METADATA, target); } getProcessorMetadata(target) { return this.reflector.get(bull_constants_1.PROCESSOR_METADATA, target); } getWorkerOptionsMetadata(target) { return this.reflector.get(bull_constants_1.WORKER_METADATA, target) ?? {}; } getOnQueueEventMetadata(target) { return this.reflector.get(bull_constants_1.ON_QUEUE_EVENT_METADATA, target); } getOnWorkerEventMetadata(target) { return this.reflector.get(bull_constants_1.ON_WORKER_EVENT_METADATA, target); } getQueueEventsListenerMetadata(target) { return this.reflector.get(bull_constants_1.QUEUE_EVENTS_LISTENER_METADATA, target); } }; exports2.BullMetadataAccessor = BullMetadataAccessor; exports2.BullMetadataAccessor = BullMetadataAccessor = tslib_1.__decorate([ (0, common_12.Injectable)(), tslib_1.__metadata("design:paramtypes", [core_12.Reflector]) ], BullMetadataAccessor); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.messages.js var require_bull_messages2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.messages.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NO_FLOW_PRODUCER_FOUND = exports2.NO_QUEUE_FOUND = void 0; var NO_QUEUE_FOUND = /* @__PURE__ */ __name((name) => name ? `No Queue was found with the given name (${name}). Check your configuration.` : "No Queue was found. Check your configuration.", "NO_QUEUE_FOUND"); exports2.NO_QUEUE_FOUND = NO_QUEUE_FOUND; var NO_FLOW_PRODUCER_FOUND = /* @__PURE__ */ __name((name) => name ? `No Flow Producer was found with the given name (${name}). Check your configuration.` : "No Flow Producer was found. Check your configuration.", "NO_FLOW_PRODUCER_FOUND"); exports2.NO_FLOW_PRODUCER_FOUND = NO_FLOW_PRODUCER_FOUND; } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/errors/invalid-processor-class.error.js var require_invalid_processor_class_error = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/errors/invalid-processor-class.error.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InvalidProcessorClassError = void 0; var InvalidProcessorClassError = class extends Error { static { __name(this, "InvalidProcessorClassError"); } constructor(className) { super(`Processor class ("${className}") should inherit from the abstract "WorkerHost" class.`); } }; exports2.InvalidProcessorClassError = InvalidProcessorClassError; } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/errors/invalid-queue-events-listener-class.error.js var require_invalid_queue_events_listener_class_error = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/errors/invalid-queue-events-listener-class.error.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InvalidQueueEventsListenerClassError = void 0; var InvalidQueueEventsListenerClassError = class extends Error { static { __name(this, "InvalidQueueEventsListenerClassError"); } constructor(className) { super(`Queue events listener class ("${className}") should inherit from the abstract "QueueEventsHost" class.`); } }; exports2.InvalidQueueEventsListenerClassError = InvalidQueueEventsListenerClassError; } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/errors/index.js var require_errors5 = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/errors/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_invalid_processor_class_error(), exports2); tslib_1.__exportStar(require_invalid_queue_events_listener_class_error(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/hosts/queue-events-host.class.js var require_queue_events_host_class = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/hosts/queue-events-host.class.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QueueEventsHost = void 0; var QueueEventsHost = class { static { __name(this, "QueueEventsHost"); } get queueEvents() { if (!this._queueEvents) { throw new Error('"QueueEvents" class has not yet been initialized. Make sure to interact with queue events instances after the "onModuleInit" lifecycle hook is triggered, for example, in the "onApplicationBootstrap" hook, or if "manualRegistration" is set to true make sure to call "BullRegistrar.register()"'); } return this._queueEvents; } onApplicationShutdown(signal) { return this._queueEvents?.close(); } }; exports2.QueueEventsHost = QueueEventsHost; } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/hosts/worker-host.class.js var require_worker_host_class = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/hosts/worker-host.class.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.WorkerHost = void 0; var WorkerHost = class { static { __name(this, "WorkerHost"); } get worker() { if (!this._worker) { throw new Error('"Worker" has not yet been initialized. Make sure to interact with worker instances after the "onModuleInit" lifecycle hook is triggered for example, in the "onApplicationBootstrap" hook, or if "manualRegistration" is set to true make sure to call "BullRegistrar.register()"'); } return this._worker; } }; exports2.WorkerHost = WorkerHost; } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/hosts/index.js var require_hosts = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/hosts/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_queue_events_host_class(), exports2); tslib_1.__exportStar(require_worker_host_class(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/get-shared-config-token.util.js var require_get_shared_config_token_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/get-shared-config-token.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BULL_CONFIG_DEFAULT_TOKEN = void 0; exports2.getSharedConfigToken = getSharedConfigToken; exports2.BULL_CONFIG_DEFAULT_TOKEN = "BULLMQ_CONFIG(default)"; function getSharedConfigToken(configKey) { return configKey ? `BULLMQ_CONFIG(${configKey})` : exports2.BULL_CONFIG_DEFAULT_TOKEN; } __name(getSharedConfigToken, "getSharedConfigToken"); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.explorer.js var require_bull_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.explorer.js"(exports2) { "use strict"; var BullExplorer_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BullExplorer = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var bull_shared_1 = require_dist5(); var common_12 = require_common(); var core_12 = require_core3(); var injector_1 = require_injector(); var request_constants_1 = require_request_constants(); var bullmq_1 = require_cjs4(); var bull_metadata_accessor_1 = require_bull_metadata_accessor(); var bull_messages_1 = require_bull_messages2(); var errors_1 = require_errors5(); var hosts_1 = require_hosts(); var get_shared_config_token_util_1 = require_get_shared_config_token_util(); var BullExplorer = BullExplorer_1 = class BullExplorer { static { __name(this, "BullExplorer"); } static set workerClass(cls) { this._workerClass = cls; } constructor(moduleRef, discoveryService, metadataAccessor, metadataScanner) { this.moduleRef = moduleRef; this.discoveryService = discoveryService; this.metadataAccessor = metadataAccessor; this.metadataScanner = metadataScanner; this.logger = new common_12.Logger("BullModule"); this.injector = new injector_1.Injector(); this.workers = []; } onApplicationShutdown(signal) { return Promise.all(this.workers.map((worker) => worker.close())); } register() { this.registerWorkers(); this.registerQueueEventListeners(); } registerWorkers() { const processors = this.discoveryService.getProviders().filter((wrapper) => this.metadataAccessor.isProcessor( // NOTE: Regarding the ternary statement below, // - The condition `!wrapper.metatype` is because when we use `useValue` // the value of `wrapper.metatype` will be `null`. // - The condition `wrapper.inject` is needed here because when we use // `useFactory`, the value of `wrapper.metatype` will be the supplied // factory function. // For both cases, we should use `wrapper.instance.constructor` instead // of `wrapper.metatype` to resolve processor's class properly. // But since calling `wrapper.instance` could degrade overall performance // we must defer it as much we can. But there's no other way to grab the // right class that could be annotated with `@Processor()` decorator // without using this property. !wrapper.metatype || wrapper.inject ? wrapper.instance?.constructor : wrapper.metatype )); processors.forEach((wrapper) => { const { instance, metatype } = wrapper; const isRequestScoped = !wrapper.isDependencyTreeStatic(); const { name: queueName, configKey } = this.metadataAccessor.getProcessorMetadata( // NOTE: We are relying on `instance.constructor` to properly support // `useValue` and `useFactory` providers besides `useClass`. instance.constructor || metatype ); const queueToken = (0, bull_shared_1.getQueueToken)(queueName); const queueOpts = this.getQueueOptions(queueToken, queueName, configKey); if (!(instance instanceof hosts_1.WorkerHost)) { throw new errors_1.InvalidProcessorClassError(instance.constructor?.name); } else { const workerOptions = this.metadataAccessor.getWorkerOptionsMetadata(instance.constructor); this.handleProcessor(instance, queueName, queueOpts, wrapper.host, isRequestScoped, workerOptions); } this.registerWorkerEventListeners(wrapper); }); } getQueueOptions(queueToken, queueName, configKey) { try { const queueRef = this.moduleRef.get(queueToken, { strict: false }); return queueRef.opts ?? {}; } catch (err) { const sharedConfigToken = (0, get_shared_config_token_util_1.getSharedConfigToken)(configKey); try { return this.moduleRef.get(sharedConfigToken, { strict: false }); } catch (err2) { this.logger.error((0, bull_shared_1.NO_QUEUE_FOUND)(queueName)); throw err2; } } } getFlowProducerOptions(flowProducerToken, name, configKey) { try { const flowProducerRef = this.moduleRef.get(flowProducerToken, { strict: false }); return flowProducerRef.opts ?? {}; } catch (err) { const sharedConfigToken = (0, get_shared_config_token_util_1.getSharedConfigToken)(configKey); try { return this.moduleRef.get(sharedConfigToken, { strict: false }); } catch (err2) { this.logger.error((0, bull_messages_1.NO_FLOW_PRODUCER_FOUND)(name)); throw err2; } } } handleProcessor(instance, queueName, queueOpts, moduleRef, isRequestScoped, options = {}) { const methodKey = "process"; let processor; if (isRequestScoped) { processor = /* @__PURE__ */ __name(async (...args) => { const jobRef = args[0]; const contextId = core_12.ContextIdFactory.getByRequest(jobRef); if (this.moduleRef.registerRequestByContextId && !contextId[request_constants_1.REQUEST_CONTEXT_ID]) { this.moduleRef.registerRequestByContextId(jobRef, contextId); } const contextInstance = await this.injector.loadPerContext(instance, moduleRef, moduleRef.providers, contextId); return contextInstance[methodKey].call(contextInstance, ...args); }, "processor"); } else { processor = instance[methodKey].bind(instance); } const worker = new BullExplorer_1._workerClass(queueName, processor, { connection: queueOpts.connection, sharedConnection: queueOpts.sharedConnection, prefix: queueOpts.prefix, ...options }); instance._worker = worker; this.workers.push(worker); } registerWorkerEventListeners(wrapper) { const { instance } = wrapper; this.metadataScanner.scanFromPrototype(instance, Object.getPrototypeOf(instance), (key) => { const workerEventHandlerMetadata = this.metadataAccessor.getOnWorkerEventMetadata(instance[key]); if (workerEventHandlerMetadata) { this.handleWorkerEvents(key, wrapper, workerEventHandlerMetadata); } }); } handleWorkerEvents(key, wrapper, options) { const { instance } = wrapper; if (!wrapper.isDependencyTreeStatic()) { this.logger.warn(`Warning! "${wrapper.name}" class is request-scoped and it defines an event listener ("${wrapper.name}#${key}"). Since event listeners cannot be registered on scoped providers, this handler will be ignored.`); return; } instance.worker.on(options.eventName, instance[key].bind(instance)); } registerQueueEventListeners() { const eventListeners = this.discoveryService.getProviders().filter((wrapper) => this.metadataAccessor.isQueueEventsListener( // NOTE: Regarding the ternary statement below, // - The condition `!wrapper.metatype` is because when we use `useValue` // the value of `wrapper.metatype` will be `null`. // - The condition `wrapper.inject` is needed here because when we use // `useFactory`, the value of `wrapper.metatype` will be the supplied // factory function. // For both cases, we should use `wrapper.instance.constructor` instead // of `wrapper.metatype` to resolve processor's class properly. // But since calling `wrapper.instance` could degrade overall performance // we must defer it as much we can. But there's no other way to grab the // right class that could be annotated with `@Processor()` decorator // without using this property. !wrapper.metatype || wrapper.inject ? wrapper.instance?.constructor : wrapper.metatype )); eventListeners.forEach((wrapper) => { const { instance, metatype } = wrapper; if (!wrapper.isDependencyTreeStatic()) { this.logger.warn(`Warning! "${wrapper.name}" class is request-scoped and it is flagged as an event listener. Since event listeners cannot be registered on scoped providers, this handler will be ignored.`); return; } const { queueName, queueEventsOptions } = this.metadataAccessor.getQueueEventsListenerMetadata( // NOTE: We are relying on `instance.constructor` to properly support // `useValue` and `useFactory` providers besides `useClass`. instance.constructor || metatype ); const queueToken = (0, bull_shared_1.getQueueToken)(queueName); const queueOpts = this.getQueueOptions(queueToken, queueName); if (!(instance instanceof hosts_1.QueueEventsHost)) { throw new errors_1.InvalidQueueEventsListenerClassError(instance.constructor?.name); } else { const queueEventsInstance = new bullmq_1.QueueEvents(queueName, { connection: queueOpts.connection, prefix: queueOpts.prefix, sharedConnection: queueOpts.sharedConnection, ...queueEventsOptions }); instance._queueEvents = queueEventsInstance; this.metadataScanner.scanFromPrototype(instance, Object.getPrototypeOf(instance), (key) => { const queueEventHandlerMetadata = this.metadataAccessor.getOnQueueEventMetadata(instance[key]); if (queueEventHandlerMetadata) { this.handleQueueEvents(key, wrapper, queueEventsInstance, queueEventHandlerMetadata); } }); } }); } handleQueueEvents(key, wrapper, queueEventsInstance, options) { const { eventName } = options; const { instance } = wrapper; queueEventsInstance.on(eventName, instance[key].bind(instance)); } }; exports2.BullExplorer = BullExplorer; BullExplorer._workerClass = bullmq_1.Worker; exports2.BullExplorer = BullExplorer = BullExplorer_1 = tslib_1.__decorate([ (0, common_12.Injectable)(), tslib_1.__metadata("design:paramtypes", [ core_12.ModuleRef, core_12.DiscoveryService, bull_metadata_accessor_1.BullMetadataAccessor, core_12.MetadataScanner ]) ], BullExplorer); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/get-flow-producer-token.util.js var require_get_flow_producer_token_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/get-flow-producer-token.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getFlowProducerToken = getFlowProducerToken; function getFlowProducerToken(name) { return name ? `BullFlowProducer_${name}` : "BullFlowProducer_default"; } __name(getFlowProducerToken, "getFlowProducerToken"); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/get-flow-producer-options-token.util.js var require_get_flow_producer_options_token_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/get-flow-producer-options-token.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getFlowProducerOptionsToken = getFlowProducerOptionsToken; function getFlowProducerOptionsToken(name) { return name ? `BullMQFlowProducerOptions_${name}` : "BullMQFlowProducerOptions_default"; } __name(getFlowProducerOptionsToken, "getFlowProducerOptionsToken"); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/get-queue-options-token.util.js var require_get_queue_options_token_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/get-queue-options-token.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getQueueOptionsToken = getQueueOptionsToken; function getQueueOptionsToken(name) { return name ? `BullMQQueueOptions_${name}` : "BullMQQueueOptions_default"; } __name(getQueueOptionsToken, "getQueueOptionsToken"); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/index.js var require_utils18 = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_get_flow_producer_token_util(), exports2); tslib_1.__exportStar(require_get_flow_producer_options_token_util(), exports2); tslib_1.__exportStar(require_get_queue_options_token_util(), exports2); tslib_1.__exportStar(require_get_shared_config_token_util(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/helpers.js var require_helpers5 = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/utils/helpers.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isProcessorCallback = isProcessorCallback; exports2.isAdvancedProcessor = isAdvancedProcessor; exports2.isSeparateProcessor = isSeparateProcessor; exports2.isAdvancedSeparateProcessor = isAdvancedSeparateProcessor; var url_1 = require("url"); function isProcessorCallback(processor) { return "function" === typeof processor; } __name(isProcessorCallback, "isProcessorCallback"); function isAdvancedProcessor(processor) { return "object" === typeof processor && !!processor.callback && isProcessorCallback(processor.callback); } __name(isAdvancedProcessor, "isAdvancedProcessor"); function isSeparateProcessor(processor) { return "string" === typeof processor || processor instanceof url_1.URL; } __name(isSeparateProcessor, "isSeparateProcessor"); function isAdvancedSeparateProcessor(processor) { return "object" === typeof processor && !!processor.path && isSeparateProcessor(processor.path); } __name(isAdvancedSeparateProcessor, "isAdvancedSeparateProcessor"); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.providers.js var require_bull_providers = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.providers.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createQueueOptionProviders = createQueueOptionProviders; exports2.createFlowProducerOptionProviders = createFlowProducerOptionProviders; exports2.createQueueProviders = createQueueProviders; exports2.createFlowProducerProviders = createFlowProducerProviders; var bull_shared_1 = require_dist5(); var common_12 = require_common(); var utils_1 = require_utils18(); var helpers_1 = require_helpers5(); function createQueueAndWorkers(options, queueClass, workerClass) { const queueName = options.name ?? "default"; const queue = new queueClass(queueName, options); let workerRefs = []; if (options.processors) { workerRefs = options.processors.map((processor) => { if ((0, helpers_1.isAdvancedProcessor)(processor)) { const { callback, ...processorOptions } = processor; return new workerClass(queueName, callback, { connection: options.connection, sharedConnection: options.sharedConnection, prefix: options.prefix, ...processorOptions }); } else if ((0, helpers_1.isAdvancedSeparateProcessor)(processor)) { const { path, ...processorOptions } = processor; return new workerClass(queueName, path, { connection: options.connection, sharedConnection: options.sharedConnection, prefix: options.prefix, ...processorOptions }); } else if ((0, helpers_1.isSeparateProcessor)(processor)) { return new workerClass(queueName, processor, { connection: options.connection, sharedConnection: options.sharedConnection, prefix: options.prefix }); } else if ((0, helpers_1.isProcessorCallback)(processor)) { return new workerClass(queueName, processor, { connection: options.connection, sharedConnection: options.sharedConnection, prefix: options.prefix }); } }); } queue.onApplicationShutdown = async function() { const closeWorkers = workerRefs.map((worker) => worker.close()); await Promise.all(closeWorkers); await this.close(); if (options.forceDisconnectOnShutdown) { if (this.connection?.status !== "closed" && this.disconnect) { return this.disconnect(); } } }; return queue; } __name(createQueueAndWorkers, "createQueueAndWorkers"); function createFlowProducers(options, flowProducerClass) { const flowProducer = new flowProducerClass(options); flowProducer.onApplicationShutdown = async function() { await this.close(); if (this.disconnect) { return this.disconnect(); } }; return flowProducer; } __name(createFlowProducers, "createFlowProducers"); function createQueueOptionProviders(options) { const providers = options.map((option) => { const optionalSharedConfigHolder = (0, bull_shared_1.createConditionalDepHolder)((0, utils_1.getSharedConfigToken)(option.configKey), utils_1.BULL_CONFIG_DEFAULT_TOKEN); return [ optionalSharedConfigHolder, { provide: (0, utils_1.getQueueOptionsToken)(option.name), useFactory: /* @__PURE__ */ __name((optionalDepHolder) => { return { ...optionalDepHolder.getDependencyRef(option.name), ...option }; }, "useFactory"), inject: [optionalSharedConfigHolder] } ]; }); return (0, common_12.flatten)(providers); } __name(createQueueOptionProviders, "createQueueOptionProviders"); function createFlowProducerOptionProviders(options) { const providers = options.map((option) => { const optionalSharedConfigHolder = (0, bull_shared_1.createConditionalDepHolder)((0, utils_1.getSharedConfigToken)(option.configKey), utils_1.BULL_CONFIG_DEFAULT_TOKEN); return [ optionalSharedConfigHolder, { provide: (0, utils_1.getFlowProducerOptionsToken)(option.name), useFactory: /* @__PURE__ */ __name((optionalDepHolder) => { return { ...optionalDepHolder.getDependencyRef(option.name), ...option }; }, "useFactory"), inject: [optionalSharedConfigHolder] } ]; }); return (0, common_12.flatten)(providers); } __name(createFlowProducerOptionProviders, "createFlowProducerOptionProviders"); function createQueueProviders(options, queueClass, workerClass) { const queueProviders = options.map((item) => ({ provide: (0, bull_shared_1.getQueueToken)(item.name), useFactory: /* @__PURE__ */ __name((queueOptions) => { const queueName = queueOptions.name || item.name; return createQueueAndWorkers({ ...queueOptions, name: queueName }, queueClass, workerClass); }, "useFactory"), inject: [(0, utils_1.getQueueOptionsToken)(item.name)] })); return queueProviders; } __name(createQueueProviders, "createQueueProviders"); function createFlowProducerProviders(options, flowProducerClass) { const flowProducerProviders = options.map((item) => ({ provide: (0, utils_1.getFlowProducerToken)(item.name), useFactory: /* @__PURE__ */ __name((flowProducerOptions) => { const flowProducerName = flowProducerOptions.name || item.name; return createFlowProducers({ ...flowProducerOptions, name: flowProducerName }, flowProducerClass); }, "useFactory"), inject: [(0, utils_1.getFlowProducerOptionsToken)(item.name)] })); return flowProducerProviders; } __name(createFlowProducerProviders, "createFlowProducerProviders"); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.registrar.js var require_bull_registrar = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.registrar.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BullRegistrar = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var common_12 = require_common(); var core_12 = require_core3(); var bull_constants_1 = require_bull_constants(); var bull_explorer_1 = require_bull_explorer(); var BullRegistrar = class BullRegistrar { static { __name(this, "BullRegistrar"); } constructor(moduleRef, bullExplorer) { this.moduleRef = moduleRef; this.bullExplorer = bullExplorer; } onModuleInit() { const extraOptions = this.getModuleExtras(); if (extraOptions?.manualRegistration) { return; } this.register(); } register() { return this.bullExplorer.register(); } getModuleExtras() { try { const extrasToken = bull_constants_1.BULL_EXTRA_OPTIONS_TOKEN; return this.moduleRef.get(extrasToken, { strict: false }); } catch { return null; } } }; exports2.BullRegistrar = BullRegistrar; exports2.BullRegistrar = BullRegistrar = tslib_1.__decorate([ (0, common_12.Injectable)(), tslib_1.__metadata("design:paramtypes", [ core_12.ModuleRef, bull_explorer_1.BullExplorer ]) ], BullRegistrar); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.module.js var require_bull_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.module.js"(exports2) { "use strict"; var BullModule_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.BullModule = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var bull_shared_1 = require_dist5(); var common_12 = require_common(); var core_12 = require_core3(); var bullmq_1 = require_cjs4(); var bull_metadata_accessor_1 = require_bull_metadata_accessor(); var bull_constants_1 = require_bull_constants(); var bull_explorer_1 = require_bull_explorer(); var bull_providers_1 = require_bull_providers(); var bull_registrar_1 = require_bull_registrar(); var utils_1 = require_utils18(); var BullModule = BullModule_1 = class BullModule { static { __name(this, "BullModule"); } /** * Class to be used to create Bull queues. * This configuration property can be used to instruct the "@nestjs/bullmq" * package to use, for example, "QueuePro" class (from "BullMQ Pro"). * @default Queue */ static set queueClass(cls) { this._queueClass = cls; } /** * Class to be used to create Bull flow producers. * This configuration property can be used to instruct the "@nestjs/bullmq" * package to use, for example, "FlowProducerPro" class (from "BullMQ Pro"). * @default FlowProducer */ static set flowProducerClass(cls) { this._flowProducerClass = cls; } /** * Class to be used to create Bull workers. * This configuration property can be used to instruct the "@nestjs/bullmq" * package to use, for example, "WorkerPro" class (from "BullMQ Pro"). * @default Worker */ static set workerClass(cls) { bull_explorer_1.BullExplorer.workerClass = cls; this._workerClass = cls; } /** * Registers a globally available configuration for all queues * or using a specified "configKey" (if passed). * * @param keyOrConfig a key under which the configuration should be available or a bull configuration object * @param bullConfig bull configuration object */ static forRoot(keyOrConfig, bullConfig) { const [configKey, sharedBullConfig] = typeof keyOrConfig === "string" ? [keyOrConfig, bullConfig] : [void 0, keyOrConfig]; const { extraOptions, ...config } = sharedBullConfig; const sharedBullConfigProvider = { provide: (0, utils_1.getSharedConfigToken)(configKey), useValue: config }; const extraOptionsProvider = { provide: bull_constants_1.BULL_EXTRA_OPTIONS_TOKEN, useValue: { ...extraOptions } }; return { global: true, module: BullModule_1, providers: [sharedBullConfigProvider, extraOptionsProvider], exports: [sharedBullConfigProvider, extraOptionsProvider] }; } /** * Registers a globally available configuration for all queues * or using a specified "configKey" (if passed). * * @param keyOrAsyncConfig a key under which the configuration should be available or a bull configuration object * @param asyncBullConfig shared bull configuration async factory */ static forRootAsync(keyOrAsyncConfig, asyncBullConfig) { const [configKey, asyncSharedBullConfig] = typeof keyOrAsyncConfig === "string" ? [keyOrAsyncConfig, asyncBullConfig] : [void 0, keyOrAsyncConfig]; const imports = this.getUniqImports([asyncSharedBullConfig]); const providers = this.createAsyncSharedConfigurationProviders(configKey, asyncSharedBullConfig); return { global: true, module: BullModule_1, imports, providers, exports: providers }; } static registerQueue(...options) { const optionsArr = [].concat(options); const queueProviders = (0, bull_providers_1.createQueueProviders)(optionsArr, this._queueClass, this._workerClass); const queueOptionProviders = (0, bull_providers_1.createQueueOptionProviders)(optionsArr); return { module: BullModule_1, imports: [BullModule_1.registerCore()], providers: [...queueOptionProviders, ...queueProviders], exports: queueProviders }; } static registerQueueAsync(...options) { const optionsArr = [].concat(options); const queueProviders = (0, bull_providers_1.createQueueProviders)(optionsArr, this._queueClass, this._workerClass); const imports = this.getUniqImports(optionsArr); const asyncQueueOptionsProviders = options.map((queueOptions) => this.createAsyncProviders(queueOptions)).reduce((a, b) => a.concat(b), []); const extraProviders = options.map((queueOptions) => queueOptions.extraProviders).filter((extraProviders2) => extraProviders2).reduce((a, b) => a.concat(b), []); return { imports: imports.concat(BullModule_1.registerCore()), module: BullModule_1, providers: [ ...asyncQueueOptionsProviders, ...queueProviders, ...extraProviders ], exports: queueProviders }; } static createAsyncProviders(options) { const optionalSharedConfigHolder = (0, bull_shared_1.createConditionalDepHolder)((0, utils_1.getSharedConfigToken)(options.configKey), utils_1.BULL_CONFIG_DEFAULT_TOKEN); if (options.useExisting || options.useFactory) { return [ optionalSharedConfigHolder, this.createAsyncOptionsProvider(options, optionalSharedConfigHolder) ]; } if (!options.useClass) { return (0, bull_providers_1.createQueueOptionProviders)([options]); } const useClass = options.useClass; return [ optionalSharedConfigHolder, this.createAsyncOptionsProvider(options, optionalSharedConfigHolder), { provide: useClass, useClass } ]; } static createAsyncOptionsProvider(asyncOptions, optionalSharedConfigHolderRef) { if (asyncOptions.useFactory) { return { provide: (0, utils_1.getQueueOptionsToken)(asyncOptions.name), useFactory: /* @__PURE__ */ __name(async (optionalDepHolder, ...factoryArgs) => { return { ...optionalDepHolder.getDependencyRef(asyncOptions.name), ...await asyncOptions.useFactory(...factoryArgs) }; }, "useFactory"), inject: [optionalSharedConfigHolderRef, ...asyncOptions.inject || []] }; } const inject = [ asyncOptions.useClass || asyncOptions.useExisting ]; return { provide: (0, utils_1.getQueueOptionsToken)(asyncOptions.name), useFactory: /* @__PURE__ */ __name(async (optionalDepHolder, optionsFactory) => { return { ...optionalDepHolder.getDependencyRef(asyncOptions.name), ...await optionsFactory.createRegisterQueueOptions() }; }, "useFactory"), inject: [optionalSharedConfigHolderRef, ...inject] }; } static registerFlowProducer(...options) { const optionsArr = [].concat(options); const flowProducerProviders = (0, bull_providers_1.createFlowProducerProviders)(optionsArr, this._flowProducerClass); const flowProducerOptionProviders = (0, bull_providers_1.createFlowProducerOptionProviders)(optionsArr); return { module: BullModule_1, imports: [BullModule_1.registerCore()], providers: [...flowProducerOptionProviders, ...flowProducerProviders], exports: flowProducerProviders }; } static registerFlowProducerAsync(...options) { const optionsArr = [].concat(options); const flowProducerProviders = (0, bull_providers_1.createFlowProducerProviders)(optionsArr, this._flowProducerClass); const imports = this.getUniqImports(optionsArr); const asyncFlowProducerOptionsProviders = options.map((flowProducerOptions) => this.createAsyncFlowProducerProviders(flowProducerOptions)).reduce((a, b) => a.concat(b), []); return { imports: imports.concat(BullModule_1.registerCore()), module: BullModule_1, providers: [ ...asyncFlowProducerOptionsProviders, ...flowProducerProviders ], exports: flowProducerProviders }; } static createAsyncFlowProducerProviders(options) { const optionalSharedConfigHolder = (0, bull_shared_1.createConditionalDepHolder)((0, utils_1.getSharedConfigToken)(options.configKey), utils_1.BULL_CONFIG_DEFAULT_TOKEN); if (options.useExisting || options.useFactory) { return [ optionalSharedConfigHolder, this.createAsyncFlowProducerOptionsProvider(options, optionalSharedConfigHolder) ]; } if (!options.useClass) { return (0, bull_providers_1.createFlowProducerOptionProviders)([options]); } const useClass = options.useClass; return [ optionalSharedConfigHolder, this.createAsyncFlowProducerOptionsProvider(options, optionalSharedConfigHolder), { provide: useClass, useClass } ]; } static createAsyncFlowProducerOptionsProvider(asyncOptions, optionalSharedConfigHolderRef) { if (asyncOptions.useFactory) { return { provide: (0, utils_1.getFlowProducerOptionsToken)(asyncOptions.name), useFactory: /* @__PURE__ */ __name(async (optionalDepHolder, ...factoryArgs) => { return { ...optionalDepHolder.getDependencyRef(asyncOptions.name), ...await asyncOptions.useFactory(...factoryArgs) }; }, "useFactory"), inject: [optionalSharedConfigHolderRef, ...asyncOptions.inject || []] }; } const inject = [ asyncOptions.useClass || asyncOptions.useExisting ]; return { provide: (0, utils_1.getFlowProducerOptionsToken)(asyncOptions.name), useFactory: /* @__PURE__ */ __name(async (optionalDepHolder, optionsFactory) => { return { ...optionalDepHolder.getDependencyRef(asyncOptions.name), ...await optionsFactory.createRegisterQueueOptions() }; }, "useFactory"), inject: [optionalSharedConfigHolderRef, ...inject] }; } static createAsyncSharedConfigurationProviders(configKey, options) { const { extraOptions, ...config } = options; const extraOptionsProvider = { provide: bull_constants_1.BULL_EXTRA_OPTIONS_TOKEN, useValue: { ...extraOptions } }; if (options.useExisting || options.useFactory) { return [ this.createAsyncSharedConfigurationProvider(configKey, config), extraOptionsProvider ]; } const useClass = config.useClass; return [ this.createAsyncSharedConfigurationProvider(configKey, config), extraOptionsProvider, { provide: useClass, useClass } ]; } static createAsyncSharedConfigurationProvider(configKey, options) { if (options.useFactory) { return { provide: (0, utils_1.getSharedConfigToken)(configKey), useFactory: options.useFactory, inject: options.inject || [] }; } const inject = [ options.useClass || options.useExisting ]; return { provide: (0, utils_1.getSharedConfigToken)(configKey), useFactory: /* @__PURE__ */ __name(async (optionsFactory) => optionsFactory.createSharedConfiguration(), "useFactory"), inject }; } static registerCore() { return { global: true, module: BullModule_1, imports: [core_12.DiscoveryModule], providers: [bull_explorer_1.BullExplorer, bull_metadata_accessor_1.BullMetadataAccessor, bull_registrar_1.BullRegistrar], exports: [bull_registrar_1.BullRegistrar] }; } static getUniqImports(options) { return options.map((option) => option.imports).reduce((acc, i) => acc.concat(i || []), []).filter((v, i, a) => a.indexOf(v) === i) || []; } }; exports2.BullModule = BullModule; BullModule._queueClass = bullmq_1.Queue; BullModule._flowProducerClass = bullmq_1.FlowProducer; BullModule._workerClass = bullmq_1.Worker; exports2.BullModule = BullModule = BullModule_1 = tslib_1.__decorate([ (0, common_12.Module)({}) ], BullModule); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.types.js var require_bull_types = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/bull.types.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/inject-flow-producer.decorator.js var require_inject_flow_producer_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/inject-flow-producer.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InjectFlowProducer = void 0; var common_12 = require_common(); var utils_1 = require_utils18(); var InjectFlowProducer = /* @__PURE__ */ __name((name) => (0, common_12.Inject)((0, utils_1.getFlowProducerToken)(name)), "InjectFlowProducer"); exports2.InjectFlowProducer = InjectFlowProducer; } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/inject-queue.decorator.js var require_inject_queue_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/inject-queue.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InjectQueue = void 0; var bull_shared_1 = require_dist5(); var common_12 = require_common(); var InjectQueue = /* @__PURE__ */ __name((name) => (0, common_12.Inject)((0, bull_shared_1.getQueueToken)(name)), "InjectQueue"); exports2.InjectQueue = InjectQueue; } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/on-queue-event.decorator.js var require_on_queue_event_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/on-queue-event.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.OnQueueEvent = void 0; var common_12 = require_common(); var bull_constants_1 = require_bull_constants(); var OnQueueEvent = /* @__PURE__ */ __name((eventName) => (0, common_12.SetMetadata)(bull_constants_1.ON_QUEUE_EVENT_METADATA, { eventName }), "OnQueueEvent"); exports2.OnQueueEvent = OnQueueEvent; } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/on-worker-event.decorator.js var require_on_worker_event_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/on-worker-event.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.OnWorkerEvent = void 0; var common_12 = require_common(); var bull_constants_1 = require_bull_constants(); var OnWorkerEvent = /* @__PURE__ */ __name((eventName) => (0, common_12.SetMetadata)(bull_constants_1.ON_WORKER_EVENT_METADATA, { eventName }), "OnWorkerEvent"); exports2.OnWorkerEvent = OnWorkerEvent; } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/processor.decorator.js var require_processor_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/processor.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Processor = Processor; var common_12 = require_common(); var constants_1 = require_constants(); var bull_constants_1 = require_bull_constants(); function Processor(queueNameOrOptions, maybeWorkerOptions) { const options = queueNameOrOptions && typeof queueNameOrOptions === "object" ? queueNameOrOptions : { name: queueNameOrOptions }; return (target) => { (0, common_12.SetMetadata)(constants_1.SCOPE_OPTIONS_METADATA, options)(target); (0, common_12.SetMetadata)(bull_constants_1.PROCESSOR_METADATA, options)(target); maybeWorkerOptions && (0, common_12.SetMetadata)(bull_constants_1.WORKER_METADATA, maybeWorkerOptions)(target); }; } __name(Processor, "Processor"); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/queue-events-listener.decorator.js var require_queue_events_listener_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/queue-events-listener.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QueueEventsListener = QueueEventsListener; var common_12 = require_common(); var bull_constants_1 = require_bull_constants(); function QueueEventsListener(queueName, queueEventsOptions) { return (target) => { (0, common_12.SetMetadata)(bull_constants_1.QUEUE_EVENTS_LISTENER_METADATA, { queueName, queueEventsOptions })(target); }; } __name(QueueEventsListener, "QueueEventsListener"); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/index.js var require_decorators6 = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/decorators/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_inject_flow_producer_decorator(), exports2); tslib_1.__exportStar(require_inject_queue_decorator(), exports2); tslib_1.__exportStar(require_on_queue_event_decorator(), exports2); tslib_1.__exportStar(require_on_worker_event_decorator(), exports2); tslib_1.__exportStar(require_processor_decorator(), exports2); tslib_1.__exportStar(require_queue_events_listener_decorator(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/interfaces/bull-processor.interfaces.js var require_bull_processor_interfaces = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/interfaces/bull-processor.interfaces.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/interfaces/register-flow-options.interface.js var require_register_flow_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/interfaces/register-flow-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/interfaces/register-queue-options.interface.js var require_register_queue_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/interfaces/register-queue-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/interfaces/shared-bull-config.interface.js var require_shared_bull_config_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/interfaces/shared-bull-config.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/interfaces/index.js var require_interfaces10 = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/interfaces/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); tslib_1.__exportStar(require_bull_processor_interfaces(), exports2); tslib_1.__exportStar(require_register_flow_options_interface(), exports2); tslib_1.__exportStar(require_register_queue_options_interface(), exports2); tslib_1.__exportStar(require_shared_bull_config_interface(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/index.js var require_dist6 = __commonJS({ "../../node_modules/.pnpm/@nestjs+bullmq@10.2.3_@nest_caceb1541b23053155148e100b12afbd/node_modules/@nestjs/bullmq/dist/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getQueueToken = exports2.JOB_REF = void 0; var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); var bull_shared_1 = require_dist5(); Object.defineProperty(exports2, "JOB_REF", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bull_shared_1.JOB_REF; }, "get") }); Object.defineProperty(exports2, "getQueueToken", { enumerable: true, get: /* @__PURE__ */ __name(function() { return bull_shared_1.getQueueToken; }, "get") }); tslib_1.__exportStar(require_bull_module(), exports2); tslib_1.__exportStar(require_bull_registrar(), exports2); tslib_1.__exportStar(require_bull_types(), exports2); tslib_1.__exportStar(require_decorators6(), exports2); tslib_1.__exportStar(require_hosts(), exports2); tslib_1.__exportStar(require_interfaces10(), exports2); tslib_1.__exportStar(require_utils18(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/enums/cron-expression.enum.js var require_cron_expression_enum = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/enums/cron-expression.enum.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CronExpression = void 0; var CronExpression; (function(CronExpression2) { CronExpression2["EVERY_SECOND"] = "* * * * * *"; CronExpression2["EVERY_5_SECONDS"] = "*/5 * * * * *"; CronExpression2["EVERY_10_SECONDS"] = "*/10 * * * * *"; CronExpression2["EVERY_30_SECONDS"] = "*/30 * * * * *"; CronExpression2["EVERY_MINUTE"] = "*/1 * * * *"; CronExpression2["EVERY_5_MINUTES"] = "0 */5 * * * *"; CronExpression2["EVERY_10_MINUTES"] = "0 */10 * * * *"; CronExpression2["EVERY_30_MINUTES"] = "0 */30 * * * *"; CronExpression2["EVERY_HOUR"] = "0 0-23/1 * * *"; CronExpression2["EVERY_2_HOURS"] = "0 0-23/2 * * *"; CronExpression2["EVERY_3_HOURS"] = "0 0-23/3 * * *"; CronExpression2["EVERY_4_HOURS"] = "0 0-23/4 * * *"; CronExpression2["EVERY_5_HOURS"] = "0 0-23/5 * * *"; CronExpression2["EVERY_6_HOURS"] = "0 0-23/6 * * *"; CronExpression2["EVERY_7_HOURS"] = "0 0-23/7 * * *"; CronExpression2["EVERY_8_HOURS"] = "0 0-23/8 * * *"; CronExpression2["EVERY_9_HOURS"] = "0 0-23/9 * * *"; CronExpression2["EVERY_10_HOURS"] = "0 0-23/10 * * *"; CronExpression2["EVERY_11_HOURS"] = "0 0-23/11 * * *"; CronExpression2["EVERY_12_HOURS"] = "0 0-23/12 * * *"; CronExpression2["EVERY_DAY_AT_1AM"] = "0 01 * * *"; CronExpression2["EVERY_DAY_AT_2AM"] = "0 02 * * *"; CronExpression2["EVERY_DAY_AT_3AM"] = "0 03 * * *"; CronExpression2["EVERY_DAY_AT_4AM"] = "0 04 * * *"; CronExpression2["EVERY_DAY_AT_5AM"] = "0 05 * * *"; CronExpression2["EVERY_DAY_AT_6AM"] = "0 06 * * *"; CronExpression2["EVERY_DAY_AT_7AM"] = "0 07 * * *"; CronExpression2["EVERY_DAY_AT_8AM"] = "0 08 * * *"; CronExpression2["EVERY_DAY_AT_9AM"] = "0 09 * * *"; CronExpression2["EVERY_DAY_AT_10AM"] = "0 10 * * *"; CronExpression2["EVERY_DAY_AT_11AM"] = "0 11 * * *"; CronExpression2["EVERY_DAY_AT_NOON"] = "0 12 * * *"; CronExpression2["EVERY_DAY_AT_1PM"] = "0 13 * * *"; CronExpression2["EVERY_DAY_AT_2PM"] = "0 14 * * *"; CronExpression2["EVERY_DAY_AT_3PM"] = "0 15 * * *"; CronExpression2["EVERY_DAY_AT_4PM"] = "0 16 * * *"; CronExpression2["EVERY_DAY_AT_5PM"] = "0 17 * * *"; CronExpression2["EVERY_DAY_AT_6PM"] = "0 18 * * *"; CronExpression2["EVERY_DAY_AT_7PM"] = "0 19 * * *"; CronExpression2["EVERY_DAY_AT_8PM"] = "0 20 * * *"; CronExpression2["EVERY_DAY_AT_9PM"] = "0 21 * * *"; CronExpression2["EVERY_DAY_AT_10PM"] = "0 22 * * *"; CronExpression2["EVERY_DAY_AT_11PM"] = "0 23 * * *"; CronExpression2["EVERY_DAY_AT_MIDNIGHT"] = "0 0 * * *"; CronExpression2["EVERY_WEEK"] = "0 0 * * 0"; CronExpression2["EVERY_WEEKDAY"] = "0 0 * * 1-5"; CronExpression2["EVERY_WEEKEND"] = "0 0 * * 6,0"; CronExpression2["EVERY_1ST_DAY_OF_MONTH_AT_MIDNIGHT"] = "0 0 1 * *"; CronExpression2["EVERY_1ST_DAY_OF_MONTH_AT_NOON"] = "0 12 1 * *"; CronExpression2["EVERY_2ND_HOUR"] = "0 */2 * * *"; CronExpression2["EVERY_2ND_HOUR_FROM_1AM_THROUGH_11PM"] = "0 1-23/2 * * *"; CronExpression2["EVERY_2ND_MONTH"] = "0 0 1 */2 *"; CronExpression2["EVERY_QUARTER"] = "0 0 1 */3 *"; CronExpression2["EVERY_6_MONTHS"] = "0 0 1 */6 *"; CronExpression2["EVERY_YEAR"] = "0 0 1 1 *"; CronExpression2["EVERY_30_MINUTES_BETWEEN_9AM_AND_5PM"] = "0 */30 9-17 * * *"; CronExpression2["EVERY_30_MINUTES_BETWEEN_9AM_AND_6PM"] = "0 */30 9-18 * * *"; CronExpression2["EVERY_30_MINUTES_BETWEEN_10AM_AND_7PM"] = "0 */30 10-19 * * *"; CronExpression2["MONDAY_TO_FRIDAY_AT_1AM"] = "0 0 01 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_2AM"] = "0 0 02 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_3AM"] = "0 0 03 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_4AM"] = "0 0 04 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_5AM"] = "0 0 05 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_6AM"] = "0 0 06 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_7AM"] = "0 0 07 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_8AM"] = "0 0 08 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_9AM"] = "0 0 09 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_09_30AM"] = "0 30 09 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_10AM"] = "0 0 10 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_11AM"] = "0 0 11 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_11_30AM"] = "0 30 11 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_12PM"] = "0 0 12 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_1PM"] = "0 0 13 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_2PM"] = "0 0 14 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_3PM"] = "0 0 15 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_4PM"] = "0 0 16 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_5PM"] = "0 0 17 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_6PM"] = "0 0 18 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_7PM"] = "0 0 19 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_8PM"] = "0 0 20 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_9PM"] = "0 0 21 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_10PM"] = "0 0 22 * * 1-5"; CronExpression2["MONDAY_TO_FRIDAY_AT_11PM"] = "0 0 23 * * 1-5"; })(CronExpression || (exports2.CronExpression = CronExpression = {})); } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/enums/index.js var require_enums4 = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/enums/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CronExpression = void 0; var cron_expression_enum_1 = require_cron_expression_enum(); Object.defineProperty(exports2, "CronExpression", { enumerable: true, get: /* @__PURE__ */ __name(function() { return cron_expression_enum_1.CronExpression; }, "get") }); } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/enums/scheduler-type.enum.js var require_scheduler_type_enum = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/enums/scheduler-type.enum.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SchedulerType = void 0; var SchedulerType; (function(SchedulerType2) { SchedulerType2[SchedulerType2["CRON"] = 1] = "CRON"; SchedulerType2[SchedulerType2["TIMEOUT"] = 2] = "TIMEOUT"; SchedulerType2[SchedulerType2["INTERVAL"] = 3] = "INTERVAL"; })(SchedulerType || (exports2.SchedulerType = SchedulerType = {})); } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/schedule.constants.js var require_schedule_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/schedule.constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SCHEDULE_MODULE_OPTIONS = exports2.SCHEDULE_TIMEOUT_OPTIONS = exports2.SCHEDULE_INTERVAL_OPTIONS = exports2.SCHEDULE_CRON_OPTIONS = exports2.SCHEDULER_TYPE = exports2.SCHEDULER_NAME = void 0; exports2.SCHEDULER_NAME = "SCHEDULER_NAME"; exports2.SCHEDULER_TYPE = "SCHEDULER_TYPE"; exports2.SCHEDULE_CRON_OPTIONS = "SCHEDULE_CRON_OPTIONS"; exports2.SCHEDULE_INTERVAL_OPTIONS = "SCHEDULE_INTERVAL_OPTIONS"; exports2.SCHEDULE_TIMEOUT_OPTIONS = "SCHEDULE_TIMEOUT_OPTIONS"; exports2.SCHEDULE_MODULE_OPTIONS = "SCHEDULE_MODULE_OPTIONS"; } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/decorators/cron.decorator.js var require_cron_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/decorators/cron.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Cron = void 0; var common_12 = require_common(); var scheduler_type_enum_1 = require_scheduler_type_enum(); var schedule_constants_1 = require_schedule_constants(); function Cron(cronTime, options = {}) { const name = options?.name; return (0, common_12.applyDecorators)((0, common_12.SetMetadata)(schedule_constants_1.SCHEDULE_CRON_OPTIONS, { ...options, cronTime }), (0, common_12.SetMetadata)(schedule_constants_1.SCHEDULER_NAME, name), (0, common_12.SetMetadata)(schedule_constants_1.SCHEDULER_TYPE, scheduler_type_enum_1.SchedulerType.CRON)); } __name(Cron, "Cron"); exports2.Cron = Cron; } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/decorators/interval.decorator.js var require_interval_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/decorators/interval.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Interval = void 0; var common_12 = require_common(); var scheduler_type_enum_1 = require_scheduler_type_enum(); var schedule_constants_1 = require_schedule_constants(); function Interval(nameOrTimeout, timeout) { const [name, intervalTimeout] = typeof nameOrTimeout === "string" ? [nameOrTimeout, timeout] : [void 0, nameOrTimeout]; return (0, common_12.applyDecorators)((0, common_12.SetMetadata)(schedule_constants_1.SCHEDULE_INTERVAL_OPTIONS, { timeout: intervalTimeout }), (0, common_12.SetMetadata)(schedule_constants_1.SCHEDULER_NAME, name), (0, common_12.SetMetadata)(schedule_constants_1.SCHEDULER_TYPE, scheduler_type_enum_1.SchedulerType.INTERVAL)); } __name(Interval, "Interval"); exports2.Interval = Interval; } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/decorators/timeout.decorator.js var require_timeout_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/decorators/timeout.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Timeout = void 0; var common_12 = require_common(); var scheduler_type_enum_1 = require_scheduler_type_enum(); var schedule_constants_1 = require_schedule_constants(); function Timeout(nameOrTimeout, timeout) { const [name, timeoutValue] = typeof nameOrTimeout === "string" ? [nameOrTimeout, timeout] : [void 0, nameOrTimeout]; return (0, common_12.applyDecorators)((0, common_12.SetMetadata)(schedule_constants_1.SCHEDULE_TIMEOUT_OPTIONS, { timeout: timeoutValue }), (0, common_12.SetMetadata)(schedule_constants_1.SCHEDULER_NAME, name), (0, common_12.SetMetadata)(schedule_constants_1.SCHEDULER_TYPE, scheduler_type_enum_1.SchedulerType.TIMEOUT)); } __name(Timeout, "Timeout"); exports2.Timeout = Timeout; } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/decorators/index.js var require_decorators7 = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/decorators/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_cron_decorator(), exports2); __exportStar2(require_interval_decorator(), exports2); __exportStar2(require_timeout_decorator(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/schedule-metadata.accessor.js var require_schedule_metadata_accessor = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/schedule-metadata.accessor.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SchedulerMetadataAccessor = void 0; var common_12 = require_common(); var core_12 = require_core3(); var schedule_constants_1 = require_schedule_constants(); var SchedulerMetadataAccessor = class SchedulerMetadataAccessor { static { __name(this, "SchedulerMetadataAccessor"); } constructor(reflector) { this.reflector = reflector; } getSchedulerType(target) { return this.getMetadata(schedule_constants_1.SCHEDULER_TYPE, target); } getSchedulerName(target) { return this.getMetadata(schedule_constants_1.SCHEDULER_NAME, target); } getTimeoutMetadata(target) { return this.getMetadata(schedule_constants_1.SCHEDULE_TIMEOUT_OPTIONS, target); } getIntervalMetadata(target) { return this.getMetadata(schedule_constants_1.SCHEDULE_INTERVAL_OPTIONS, target); } getCronMetadata(target) { return this.getMetadata(schedule_constants_1.SCHEDULE_CRON_OPTIONS, target); } getMetadata(key, target) { const isObject2 = typeof target === "object" ? target !== null : typeof target === "function"; return isObject2 ? this.reflector.get(key, target) : void 0; } }; exports2.SchedulerMetadataAccessor = SchedulerMetadataAccessor; exports2.SchedulerMetadataAccessor = SchedulerMetadataAccessor = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [core_12.Reflector]) ], SchedulerMetadataAccessor); } }); // ../../node_modules/.pnpm/luxon@3.5.0/node_modules/luxon/build/node/luxon.js var require_luxon2 = __commonJS({ "../../node_modules/.pnpm/luxon@3.5.0/node_modules/luxon/build/node/luxon.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var LuxonError = class extends Error { static { __name(this, "LuxonError"); } }; var InvalidDateTimeError = class extends LuxonError { static { __name(this, "InvalidDateTimeError"); } constructor(reason) { super(`Invalid DateTime: ${reason.toMessage()}`); } }; var InvalidIntervalError = class extends LuxonError { static { __name(this, "InvalidIntervalError"); } constructor(reason) { super(`Invalid Interval: ${reason.toMessage()}`); } }; var InvalidDurationError = class extends LuxonError { static { __name(this, "InvalidDurationError"); } constructor(reason) { super(`Invalid Duration: ${reason.toMessage()}`); } }; var ConflictingSpecificationError = class extends LuxonError { static { __name(this, "ConflictingSpecificationError"); } }; var InvalidUnitError = class extends LuxonError { static { __name(this, "InvalidUnitError"); } constructor(unit) { super(`Invalid unit ${unit}`); } }; var InvalidArgumentError = class extends LuxonError { static { __name(this, "InvalidArgumentError"); } }; var ZoneIsAbstractError = class extends LuxonError { static { __name(this, "ZoneIsAbstractError"); } constructor() { super("Zone is an abstract class"); } }; var n = "numeric"; var s = "short"; var l2 = "long"; var DATE_SHORT = { year: n, month: n, day: n }; var DATE_MED = { year: n, month: s, day: n }; var DATE_MED_WITH_WEEKDAY = { year: n, month: s, day: n, weekday: s }; var DATE_FULL = { year: n, month: l2, day: n }; var DATE_HUGE = { year: n, month: l2, day: n, weekday: l2 }; var TIME_SIMPLE = { hour: n, minute: n }; var TIME_WITH_SECONDS = { hour: n, minute: n, second: n }; var TIME_WITH_SHORT_OFFSET = { hour: n, minute: n, second: n, timeZoneName: s }; var TIME_WITH_LONG_OFFSET = { hour: n, minute: n, second: n, timeZoneName: l2 }; var TIME_24_SIMPLE = { hour: n, minute: n, hourCycle: "h23" }; var TIME_24_WITH_SECONDS = { hour: n, minute: n, second: n, hourCycle: "h23" }; var TIME_24_WITH_SHORT_OFFSET = { hour: n, minute: n, second: n, hourCycle: "h23", timeZoneName: s }; var TIME_24_WITH_LONG_OFFSET = { hour: n, minute: n, second: n, hourCycle: "h23", timeZoneName: l2 }; var DATETIME_SHORT = { year: n, month: n, day: n, hour: n, minute: n }; var DATETIME_SHORT_WITH_SECONDS = { year: n, month: n, day: n, hour: n, minute: n, second: n }; var DATETIME_MED = { year: n, month: s, day: n, hour: n, minute: n }; var DATETIME_MED_WITH_SECONDS = { year: n, month: s, day: n, hour: n, minute: n, second: n }; var DATETIME_MED_WITH_WEEKDAY = { year: n, month: s, day: n, weekday: s, hour: n, minute: n }; var DATETIME_FULL = { year: n, month: l2, day: n, hour: n, minute: n, timeZoneName: s }; var DATETIME_FULL_WITH_SECONDS = { year: n, month: l2, day: n, hour: n, minute: n, second: n, timeZoneName: s }; var DATETIME_HUGE = { year: n, month: l2, day: n, weekday: l2, hour: n, minute: n, timeZoneName: l2 }; var DATETIME_HUGE_WITH_SECONDS = { year: n, month: l2, day: n, weekday: l2, hour: n, minute: n, second: n, timeZoneName: l2 }; var Zone = class { static { __name(this, "Zone"); } /** * The type of zone * @abstract * @type {string} */ get type() { throw new ZoneIsAbstractError(); } /** * The name of this zone. * @abstract * @type {string} */ get name() { throw new ZoneIsAbstractError(); } /** * The IANA name of this zone. * Defaults to `name` if not overwritten by a subclass. * @abstract * @type {string} */ get ianaName() { return this.name; } /** * Returns whether the offset is known to be fixed for the whole year. * @abstract * @type {boolean} */ get isUniversal() { throw new ZoneIsAbstractError(); } /** * Returns the offset's common name (such as EST) at the specified timestamp * @abstract * @param {number} ts - Epoch milliseconds for which to get the name * @param {Object} opts - Options to affect the format * @param {string} opts.format - What style of offset to return. Accepts 'long' or 'short'. * @param {string} opts.locale - What locale to return the offset name in. * @return {string} */ offsetName(ts, opts) { throw new ZoneIsAbstractError(); } /** * Returns the offset's value as a string * @abstract * @param {number} ts - Epoch milliseconds for which to get the offset * @param {string} format - What style of offset to return. * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively * @return {string} */ formatOffset(ts, format) { throw new ZoneIsAbstractError(); } /** * Return the offset in minutes for this zone at the specified timestamp. * @abstract * @param {number} ts - Epoch milliseconds for which to compute the offset * @return {number} */ offset(ts) { throw new ZoneIsAbstractError(); } /** * Return whether this Zone is equal to another zone * @abstract * @param {Zone} otherZone - the zone to compare * @return {boolean} */ equals(otherZone) { throw new ZoneIsAbstractError(); } /** * Return whether this Zone is valid. * @abstract * @type {boolean} */ get isValid() { throw new ZoneIsAbstractError(); } }; var singleton$1 = null; var SystemZone = class _SystemZone extends Zone { static { __name(this, "SystemZone"); } /** * Get a singleton instance of the local zone * @return {SystemZone} */ static get instance() { if (singleton$1 === null) { singleton$1 = new _SystemZone(); } return singleton$1; } /** @override **/ get type() { return "system"; } /** @override **/ get name() { return new Intl.DateTimeFormat().resolvedOptions().timeZone; } /** @override **/ get isUniversal() { return false; } /** @override **/ offsetName(ts, { format, locale }) { return parseZoneInfo(ts, format, locale); } /** @override **/ formatOffset(ts, format) { return formatOffset(this.offset(ts), format); } /** @override **/ offset(ts) { return -new Date(ts).getTimezoneOffset(); } /** @override **/ equals(otherZone) { return otherZone.type === "system"; } /** @override **/ get isValid() { return true; } }; var dtfCache = {}; function makeDTF(zone) { if (!dtfCache[zone]) { dtfCache[zone] = new Intl.DateTimeFormat("en-US", { hour12: false, timeZone: zone, year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit", era: "short" }); } return dtfCache[zone]; } __name(makeDTF, "makeDTF"); var typeToPos = { year: 0, month: 1, day: 2, era: 3, hour: 4, minute: 5, second: 6 }; function hackyOffset(dtf, date) { const formatted = dtf.format(date).replace(/\u200E/g, ""), parsed = /(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(formatted), [, fMonth, fDay, fYear, fadOrBc, fHour, fMinute, fSecond] = parsed; return [fYear, fMonth, fDay, fadOrBc, fHour, fMinute, fSecond]; } __name(hackyOffset, "hackyOffset"); function partsOffset(dtf, date) { const formatted = dtf.formatToParts(date); const filled = []; for (let i = 0; i < formatted.length; i++) { const { type, value } = formatted[i]; const pos = typeToPos[type]; if (type === "era") { filled[pos] = value; } else if (!isUndefined(pos)) { filled[pos] = parseInt(value, 10); } } return filled; } __name(partsOffset, "partsOffset"); var ianaZoneCache = {}; var IANAZone = class _IANAZone extends Zone { static { __name(this, "IANAZone"); } /** * @param {string} name - Zone name * @return {IANAZone} */ static create(name) { if (!ianaZoneCache[name]) { ianaZoneCache[name] = new _IANAZone(name); } return ianaZoneCache[name]; } /** * Reset local caches. Should only be necessary in testing scenarios. * @return {void} */ static resetCache() { ianaZoneCache = {}; dtfCache = {}; } /** * Returns whether the provided string is a valid specifier. This only checks the string's format, not that the specifier identifies a known zone; see isValidZone for that. * @param {string} s - The string to check validity on * @example IANAZone.isValidSpecifier("America/New_York") //=> true * @example IANAZone.isValidSpecifier("Sport~~blorp") //=> false * @deprecated For backward compatibility, this forwards to isValidZone, better use `isValidZone()` directly instead. * @return {boolean} */ static isValidSpecifier(s2) { return this.isValidZone(s2); } /** * Returns whether the provided string identifies a real zone * @param {string} zone - The string to check * @example IANAZone.isValidZone("America/New_York") //=> true * @example IANAZone.isValidZone("Fantasia/Castle") //=> false * @example IANAZone.isValidZone("Sport~~blorp") //=> false * @return {boolean} */ static isValidZone(zone) { if (!zone) { return false; } try { new Intl.DateTimeFormat("en-US", { timeZone: zone }).format(); return true; } catch (e) { return false; } } constructor(name) { super(); this.zoneName = name; this.valid = _IANAZone.isValidZone(name); } /** * The type of zone. `iana` for all instances of `IANAZone`. * @override * @type {string} */ get type() { return "iana"; } /** * The name of this zone (i.e. the IANA zone name). * @override * @type {string} */ get name() { return this.zoneName; } /** * Returns whether the offset is known to be fixed for the whole year: * Always returns false for all IANA zones. * @override * @type {boolean} */ get isUniversal() { return false; } /** * Returns the offset's common name (such as EST) at the specified timestamp * @override * @param {number} ts - Epoch milliseconds for which to get the name * @param {Object} opts - Options to affect the format * @param {string} opts.format - What style of offset to return. Accepts 'long' or 'short'. * @param {string} opts.locale - What locale to return the offset name in. * @return {string} */ offsetName(ts, { format, locale }) { return parseZoneInfo(ts, format, locale, this.name); } /** * Returns the offset's value as a string * @override * @param {number} ts - Epoch milliseconds for which to get the offset * @param {string} format - What style of offset to return. * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively * @return {string} */ formatOffset(ts, format) { return formatOffset(this.offset(ts), format); } /** * Return the offset in minutes for this zone at the specified timestamp. * @override * @param {number} ts - Epoch milliseconds for which to compute the offset * @return {number} */ offset(ts) { const date = new Date(ts); if (isNaN(date)) return NaN; const dtf = makeDTF(this.name); let [year, month, day, adOrBc, hour, minute, second] = dtf.formatToParts ? partsOffset(dtf, date) : hackyOffset(dtf, date); if (adOrBc === "BC") { year = -Math.abs(year) + 1; } const adjustedHour = hour === 24 ? 0 : hour; const asUTC = objToLocalTS({ year, month, day, hour: adjustedHour, minute, second, millisecond: 0 }); let asTS = +date; const over = asTS % 1e3; asTS -= over >= 0 ? over : 1e3 + over; return (asUTC - asTS) / (60 * 1e3); } /** * Return whether this Zone is equal to another zone * @override * @param {Zone} otherZone - the zone to compare * @return {boolean} */ equals(otherZone) { return otherZone.type === "iana" && otherZone.name === this.name; } /** * Return whether this Zone is valid. * @override * @type {boolean} */ get isValid() { return this.valid; } }; var intlLFCache = {}; function getCachedLF(locString, opts = {}) { const key = JSON.stringify([locString, opts]); let dtf = intlLFCache[key]; if (!dtf) { dtf = new Intl.ListFormat(locString, opts); intlLFCache[key] = dtf; } return dtf; } __name(getCachedLF, "getCachedLF"); var intlDTCache = {}; function getCachedDTF(locString, opts = {}) { const key = JSON.stringify([locString, opts]); let dtf = intlDTCache[key]; if (!dtf) { dtf = new Intl.DateTimeFormat(locString, opts); intlDTCache[key] = dtf; } return dtf; } __name(getCachedDTF, "getCachedDTF"); var intlNumCache = {}; function getCachedINF(locString, opts = {}) { const key = JSON.stringify([locString, opts]); let inf = intlNumCache[key]; if (!inf) { inf = new Intl.NumberFormat(locString, opts); intlNumCache[key] = inf; } return inf; } __name(getCachedINF, "getCachedINF"); var intlRelCache = {}; function getCachedRTF(locString, opts = {}) { const { base, ...cacheKeyOpts } = opts; const key = JSON.stringify([locString, cacheKeyOpts]); let inf = intlRelCache[key]; if (!inf) { inf = new Intl.RelativeTimeFormat(locString, opts); intlRelCache[key] = inf; } return inf; } __name(getCachedRTF, "getCachedRTF"); var sysLocaleCache = null; function systemLocale() { if (sysLocaleCache) { return sysLocaleCache; } else { sysLocaleCache = new Intl.DateTimeFormat().resolvedOptions().locale; return sysLocaleCache; } } __name(systemLocale, "systemLocale"); var weekInfoCache = {}; function getCachedWeekInfo(locString) { let data = weekInfoCache[locString]; if (!data) { const locale = new Intl.Locale(locString); data = "getWeekInfo" in locale ? locale.getWeekInfo() : locale.weekInfo; weekInfoCache[locString] = data; } return data; } __name(getCachedWeekInfo, "getCachedWeekInfo"); function parseLocaleString(localeStr) { const xIndex = localeStr.indexOf("-x-"); if (xIndex !== -1) { localeStr = localeStr.substring(0, xIndex); } const uIndex = localeStr.indexOf("-u-"); if (uIndex === -1) { return [localeStr]; } else { let options; let selectedStr; try { options = getCachedDTF(localeStr).resolvedOptions(); selectedStr = localeStr; } catch (e) { const smaller = localeStr.substring(0, uIndex); options = getCachedDTF(smaller).resolvedOptions(); selectedStr = smaller; } const { numberingSystem, calendar } = options; return [selectedStr, numberingSystem, calendar]; } } __name(parseLocaleString, "parseLocaleString"); function intlConfigString(localeStr, numberingSystem, outputCalendar) { if (outputCalendar || numberingSystem) { if (!localeStr.includes("-u-")) { localeStr += "-u"; } if (outputCalendar) { localeStr += `-ca-${outputCalendar}`; } if (numberingSystem) { localeStr += `-nu-${numberingSystem}`; } return localeStr; } else { return localeStr; } } __name(intlConfigString, "intlConfigString"); function mapMonths(f) { const ms = []; for (let i = 1; i <= 12; i++) { const dt = DateTime.utc(2009, i, 1); ms.push(f(dt)); } return ms; } __name(mapMonths, "mapMonths"); function mapWeekdays(f) { const ms = []; for (let i = 1; i <= 7; i++) { const dt = DateTime.utc(2016, 11, 13 + i); ms.push(f(dt)); } return ms; } __name(mapWeekdays, "mapWeekdays"); function listStuff(loc, length, englishFn, intlFn) { const mode = loc.listingMode(); if (mode === "error") { return null; } else if (mode === "en") { return englishFn(length); } else { return intlFn(length); } } __name(listStuff, "listStuff"); function supportsFastNumbers(loc) { if (loc.numberingSystem && loc.numberingSystem !== "latn") { return false; } else { return loc.numberingSystem === "latn" || !loc.locale || loc.locale.startsWith("en") || new Intl.DateTimeFormat(loc.intl).resolvedOptions().numberingSystem === "latn"; } } __name(supportsFastNumbers, "supportsFastNumbers"); var PolyNumberFormatter = class { static { __name(this, "PolyNumberFormatter"); } constructor(intl, forceSimple, opts) { this.padTo = opts.padTo || 0; this.floor = opts.floor || false; const { padTo, floor, ...otherOpts } = opts; if (!forceSimple || Object.keys(otherOpts).length > 0) { const intlOpts = { useGrouping: false, ...opts }; if (opts.padTo > 0) intlOpts.minimumIntegerDigits = opts.padTo; this.inf = getCachedINF(intl, intlOpts); } } format(i) { if (this.inf) { const fixed = this.floor ? Math.floor(i) : i; return this.inf.format(fixed); } else { const fixed = this.floor ? Math.floor(i) : roundTo(i, 3); return padStart(fixed, this.padTo); } } }; var PolyDateFormatter = class { static { __name(this, "PolyDateFormatter"); } constructor(dt, intl, opts) { this.opts = opts; this.originalZone = void 0; let z = void 0; if (this.opts.timeZone) { this.dt = dt; } else if (dt.zone.type === "fixed") { const gmtOffset = -1 * (dt.offset / 60); const offsetZ = gmtOffset >= 0 ? `Etc/GMT+${gmtOffset}` : `Etc/GMT${gmtOffset}`; if (dt.offset !== 0 && IANAZone.create(offsetZ).valid) { z = offsetZ; this.dt = dt; } else { z = "UTC"; this.dt = dt.offset === 0 ? dt : dt.setZone("UTC").plus({ minutes: dt.offset }); this.originalZone = dt.zone; } } else if (dt.zone.type === "system") { this.dt = dt; } else if (dt.zone.type === "iana") { this.dt = dt; z = dt.zone.name; } else { z = "UTC"; this.dt = dt.setZone("UTC").plus({ minutes: dt.offset }); this.originalZone = dt.zone; } const intlOpts = { ...this.opts }; intlOpts.timeZone = intlOpts.timeZone || z; this.dtf = getCachedDTF(intl, intlOpts); } format() { if (this.originalZone) { return this.formatToParts().map(({ value }) => value).join(""); } return this.dtf.format(this.dt.toJSDate()); } formatToParts() { const parts = this.dtf.formatToParts(this.dt.toJSDate()); if (this.originalZone) { return parts.map((part) => { if (part.type === "timeZoneName") { const offsetName = this.originalZone.offsetName(this.dt.ts, { locale: this.dt.locale, format: this.opts.timeZoneName }); return { ...part, value: offsetName }; } else { return part; } }); } return parts; } resolvedOptions() { return this.dtf.resolvedOptions(); } }; var PolyRelFormatter = class { static { __name(this, "PolyRelFormatter"); } constructor(intl, isEnglish, opts) { this.opts = { style: "long", ...opts }; if (!isEnglish && hasRelative()) { this.rtf = getCachedRTF(intl, opts); } } format(count, unit) { if (this.rtf) { return this.rtf.format(count, unit); } else { return formatRelativeTime(unit, count, this.opts.numeric, this.opts.style !== "long"); } } formatToParts(count, unit) { if (this.rtf) { return this.rtf.formatToParts(count, unit); } else { return []; } } }; var fallbackWeekSettings = { firstDay: 1, minimalDays: 4, weekend: [6, 7] }; var Locale = class _Locale { static { __name(this, "Locale"); } static fromOpts(opts) { return _Locale.create(opts.locale, opts.numberingSystem, opts.outputCalendar, opts.weekSettings, opts.defaultToEN); } static create(locale, numberingSystem, outputCalendar, weekSettings, defaultToEN = false) { const specifiedLocale = locale || Settings.defaultLocale; const localeR = specifiedLocale || (defaultToEN ? "en-US" : systemLocale()); const numberingSystemR = numberingSystem || Settings.defaultNumberingSystem; const outputCalendarR = outputCalendar || Settings.defaultOutputCalendar; const weekSettingsR = validateWeekSettings(weekSettings) || Settings.defaultWeekSettings; return new _Locale(localeR, numberingSystemR, outputCalendarR, weekSettingsR, specifiedLocale); } static resetCache() { sysLocaleCache = null; intlDTCache = {}; intlNumCache = {}; intlRelCache = {}; } static fromObject({ locale, numberingSystem, outputCalendar, weekSettings } = {}) { return _Locale.create(locale, numberingSystem, outputCalendar, weekSettings); } constructor(locale, numbering, outputCalendar, weekSettings, specifiedLocale) { const [parsedLocale, parsedNumberingSystem, parsedOutputCalendar] = parseLocaleString(locale); this.locale = parsedLocale; this.numberingSystem = numbering || parsedNumberingSystem || null; this.outputCalendar = outputCalendar || parsedOutputCalendar || null; this.weekSettings = weekSettings; this.intl = intlConfigString(this.locale, this.numberingSystem, this.outputCalendar); this.weekdaysCache = { format: {}, standalone: {} }; this.monthsCache = { format: {}, standalone: {} }; this.meridiemCache = null; this.eraCache = {}; this.specifiedLocale = specifiedLocale; this.fastNumbersCached = null; } get fastNumbers() { if (this.fastNumbersCached == null) { this.fastNumbersCached = supportsFastNumbers(this); } return this.fastNumbersCached; } listingMode() { const isActuallyEn = this.isEnglish(); const hasNoWeirdness = (this.numberingSystem === null || this.numberingSystem === "latn") && (this.outputCalendar === null || this.outputCalendar === "gregory"); return isActuallyEn && hasNoWeirdness ? "en" : "intl"; } clone(alts) { if (!alts || Object.getOwnPropertyNames(alts).length === 0) { return this; } else { return _Locale.create(alts.locale || this.specifiedLocale, alts.numberingSystem || this.numberingSystem, alts.outputCalendar || this.outputCalendar, validateWeekSettings(alts.weekSettings) || this.weekSettings, alts.defaultToEN || false); } } redefaultToEN(alts = {}) { return this.clone({ ...alts, defaultToEN: true }); } redefaultToSystem(alts = {}) { return this.clone({ ...alts, defaultToEN: false }); } months(length, format = false) { return listStuff(this, length, months, () => { const intl = format ? { month: length, day: "numeric" } : { month: length }, formatStr = format ? "format" : "standalone"; if (!this.monthsCache[formatStr][length]) { this.monthsCache[formatStr][length] = mapMonths((dt) => this.extract(dt, intl, "month")); } return this.monthsCache[formatStr][length]; }); } weekdays(length, format = false) { return listStuff(this, length, weekdays, () => { const intl = format ? { weekday: length, year: "numeric", month: "long", day: "numeric" } : { weekday: length }, formatStr = format ? "format" : "standalone"; if (!this.weekdaysCache[formatStr][length]) { this.weekdaysCache[formatStr][length] = mapWeekdays((dt) => this.extract(dt, intl, "weekday")); } return this.weekdaysCache[formatStr][length]; }); } meridiems() { return listStuff(this, void 0, () => meridiems, () => { if (!this.meridiemCache) { const intl = { hour: "numeric", hourCycle: "h12" }; this.meridiemCache = [DateTime.utc(2016, 11, 13, 9), DateTime.utc(2016, 11, 13, 19)].map((dt) => this.extract(dt, intl, "dayperiod")); } return this.meridiemCache; }); } eras(length) { return listStuff(this, length, eras, () => { const intl = { era: length }; if (!this.eraCache[length]) { this.eraCache[length] = [DateTime.utc(-40, 1, 1), DateTime.utc(2017, 1, 1)].map((dt) => this.extract(dt, intl, "era")); } return this.eraCache[length]; }); } extract(dt, intlOpts, field) { const df = this.dtFormatter(dt, intlOpts), results = df.formatToParts(), matching = results.find((m) => m.type.toLowerCase() === field); return matching ? matching.value : null; } numberFormatter(opts = {}) { return new PolyNumberFormatter(this.intl, opts.forceSimple || this.fastNumbers, opts); } dtFormatter(dt, intlOpts = {}) { return new PolyDateFormatter(dt, this.intl, intlOpts); } relFormatter(opts = {}) { return new PolyRelFormatter(this.intl, this.isEnglish(), opts); } listFormatter(opts = {}) { return getCachedLF(this.intl, opts); } isEnglish() { return this.locale === "en" || this.locale.toLowerCase() === "en-us" || new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us"); } getWeekSettings() { if (this.weekSettings) { return this.weekSettings; } else if (!hasLocaleWeekInfo()) { return fallbackWeekSettings; } else { return getCachedWeekInfo(this.locale); } } getStartOfWeek() { return this.getWeekSettings().firstDay; } getMinDaysInFirstWeek() { return this.getWeekSettings().minimalDays; } getWeekendDays() { return this.getWeekSettings().weekend; } equals(other) { return this.locale === other.locale && this.numberingSystem === other.numberingSystem && this.outputCalendar === other.outputCalendar; } toString() { return `Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`; } }; var singleton = null; var FixedOffsetZone = class _FixedOffsetZone extends Zone { static { __name(this, "FixedOffsetZone"); } /** * Get a singleton instance of UTC * @return {FixedOffsetZone} */ static get utcInstance() { if (singleton === null) { singleton = new _FixedOffsetZone(0); } return singleton; } /** * Get an instance with a specified offset * @param {number} offset - The offset in minutes * @return {FixedOffsetZone} */ static instance(offset2) { return offset2 === 0 ? _FixedOffsetZone.utcInstance : new _FixedOffsetZone(offset2); } /** * Get an instance of FixedOffsetZone from a UTC offset string, like "UTC+6" * @param {string} s - The offset string to parse * @example FixedOffsetZone.parseSpecifier("UTC+6") * @example FixedOffsetZone.parseSpecifier("UTC+06") * @example FixedOffsetZone.parseSpecifier("UTC-6:00") * @return {FixedOffsetZone} */ static parseSpecifier(s2) { if (s2) { const r = s2.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i); if (r) { return new _FixedOffsetZone(signedOffset(r[1], r[2])); } } return null; } constructor(offset2) { super(); this.fixed = offset2; } /** * The type of zone. `fixed` for all instances of `FixedOffsetZone`. * @override * @type {string} */ get type() { return "fixed"; } /** * The name of this zone. * All fixed zones' names always start with "UTC" (plus optional offset) * @override * @type {string} */ get name() { return this.fixed === 0 ? "UTC" : `UTC${formatOffset(this.fixed, "narrow")}`; } /** * The IANA name of this zone, i.e. `Etc/UTC` or `Etc/GMT+/-nn` * * @override * @type {string} */ get ianaName() { if (this.fixed === 0) { return "Etc/UTC"; } else { return `Etc/GMT${formatOffset(-this.fixed, "narrow")}`; } } /** * Returns the offset's common name at the specified timestamp. * * For fixed offset zones this equals to the zone name. * @override */ offsetName() { return this.name; } /** * Returns the offset's value as a string * @override * @param {number} ts - Epoch milliseconds for which to get the offset * @param {string} format - What style of offset to return. * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively * @return {string} */ formatOffset(ts, format) { return formatOffset(this.fixed, format); } /** * Returns whether the offset is known to be fixed for the whole year: * Always returns true for all fixed offset zones. * @override * @type {boolean} */ get isUniversal() { return true; } /** * Return the offset in minutes for this zone at the specified timestamp. * * For fixed offset zones, this is constant and does not depend on a timestamp. * @override * @return {number} */ offset() { return this.fixed; } /** * Return whether this Zone is equal to another zone (i.e. also fixed and same offset) * @override * @param {Zone} otherZone - the zone to compare * @return {boolean} */ equals(otherZone) { return otherZone.type === "fixed" && otherZone.fixed === this.fixed; } /** * Return whether this Zone is valid: * All fixed offset zones are valid. * @override * @type {boolean} */ get isValid() { return true; } }; var InvalidZone = class extends Zone { static { __name(this, "InvalidZone"); } constructor(zoneName) { super(); this.zoneName = zoneName; } /** @override **/ get type() { return "invalid"; } /** @override **/ get name() { return this.zoneName; } /** @override **/ get isUniversal() { return false; } /** @override **/ offsetName() { return null; } /** @override **/ formatOffset() { return ""; } /** @override **/ offset() { return NaN; } /** @override **/ equals() { return false; } /** @override **/ get isValid() { return false; } }; function normalizeZone(input, defaultZone2) { if (isUndefined(input) || input === null) { return defaultZone2; } else if (input instanceof Zone) { return input; } else if (isString(input)) { const lowered = input.toLowerCase(); if (lowered === "default") return defaultZone2; else if (lowered === "local" || lowered === "system") return SystemZone.instance; else if (lowered === "utc" || lowered === "gmt") return FixedOffsetZone.utcInstance; else return FixedOffsetZone.parseSpecifier(lowered) || IANAZone.create(input); } else if (isNumber(input)) { return FixedOffsetZone.instance(input); } else if (typeof input === "object" && "offset" in input && typeof input.offset === "function") { return input; } else { return new InvalidZone(input); } } __name(normalizeZone, "normalizeZone"); var numberingSystems = { arab: "[\u0660-\u0669]", arabext: "[\u06F0-\u06F9]", bali: "[\u1B50-\u1B59]", beng: "[\u09E6-\u09EF]", deva: "[\u0966-\u096F]", fullwide: "[\uFF10-\uFF19]", gujr: "[\u0AE6-\u0AEF]", hanidec: "[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]", khmr: "[\u17E0-\u17E9]", knda: "[\u0CE6-\u0CEF]", laoo: "[\u0ED0-\u0ED9]", limb: "[\u1946-\u194F]", mlym: "[\u0D66-\u0D6F]", mong: "[\u1810-\u1819]", mymr: "[\u1040-\u1049]", orya: "[\u0B66-\u0B6F]", tamldec: "[\u0BE6-\u0BEF]", telu: "[\u0C66-\u0C6F]", thai: "[\u0E50-\u0E59]", tibt: "[\u0F20-\u0F29]", latn: "\\d" }; var numberingSystemsUTF16 = { arab: [1632, 1641], arabext: [1776, 1785], bali: [6992, 7001], beng: [2534, 2543], deva: [2406, 2415], fullwide: [65296, 65303], gujr: [2790, 2799], khmr: [6112, 6121], knda: [3302, 3311], laoo: [3792, 3801], limb: [6470, 6479], mlym: [3430, 3439], mong: [6160, 6169], mymr: [4160, 4169], orya: [2918, 2927], tamldec: [3046, 3055], telu: [3174, 3183], thai: [3664, 3673], tibt: [3872, 3881] }; var hanidecChars = numberingSystems.hanidec.replace(/[\[|\]]/g, "").split(""); function parseDigits(str) { let value = parseInt(str, 10); if (isNaN(value)) { value = ""; for (let i = 0; i < str.length; i++) { const code = str.charCodeAt(i); if (str[i].search(numberingSystems.hanidec) !== -1) { value += hanidecChars.indexOf(str[i]); } else { for (const key in numberingSystemsUTF16) { const [min, max] = numberingSystemsUTF16[key]; if (code >= min && code <= max) { value += code - min; } } } } return parseInt(value, 10); } else { return value; } } __name(parseDigits, "parseDigits"); var digitRegexCache = {}; function resetDigitRegexCache() { digitRegexCache = {}; } __name(resetDigitRegexCache, "resetDigitRegexCache"); function digitRegex({ numberingSystem }, append = "") { const ns = numberingSystem || "latn"; if (!digitRegexCache[ns]) { digitRegexCache[ns] = {}; } if (!digitRegexCache[ns][append]) { digitRegexCache[ns][append] = new RegExp(`${numberingSystems[ns]}${append}`); } return digitRegexCache[ns][append]; } __name(digitRegex, "digitRegex"); var now = /* @__PURE__ */ __name(() => Date.now(), "now"); var defaultZone = "system"; var defaultLocale = null; var defaultNumberingSystem = null; var defaultOutputCalendar = null; var twoDigitCutoffYear = 60; var throwOnInvalid; var defaultWeekSettings = null; var Settings = class { static { __name(this, "Settings"); } /** * Get the callback for returning the current timestamp. * @type {function} */ static get now() { return now; } /** * Set the callback for returning the current timestamp. * The function should return a number, which will be interpreted as an Epoch millisecond count * @type {function} * @example Settings.now = () => Date.now() + 3000 // pretend it is 3 seconds in the future * @example Settings.now = () => 0 // always pretend it's Jan 1, 1970 at midnight in UTC time */ static set now(n2) { now = n2; } /** * Set the default time zone to create DateTimes in. Does not affect existing instances. * Use the value "system" to reset this value to the system's time zone. * @type {string} */ static set defaultZone(zone) { defaultZone = zone; } /** * Get the default time zone object currently used to create DateTimes. Does not affect existing instances. * The default value is the system's time zone (the one set on the machine that runs this code). * @type {Zone} */ static get defaultZone() { return normalizeZone(defaultZone, SystemZone.instance); } /** * Get the default locale to create DateTimes with. Does not affect existing instances. * @type {string} */ static get defaultLocale() { return defaultLocale; } /** * Set the default locale to create DateTimes with. Does not affect existing instances. * @type {string} */ static set defaultLocale(locale) { defaultLocale = locale; } /** * Get the default numbering system to create DateTimes with. Does not affect existing instances. * @type {string} */ static get defaultNumberingSystem() { return defaultNumberingSystem; } /** * Set the default numbering system to create DateTimes with. Does not affect existing instances. * @type {string} */ static set defaultNumberingSystem(numberingSystem) { defaultNumberingSystem = numberingSystem; } /** * Get the default output calendar to create DateTimes with. Does not affect existing instances. * @type {string} */ static get defaultOutputCalendar() { return defaultOutputCalendar; } /** * Set the default output calendar to create DateTimes with. Does not affect existing instances. * @type {string} */ static set defaultOutputCalendar(outputCalendar) { defaultOutputCalendar = outputCalendar; } /** * @typedef {Object} WeekSettings * @property {number} firstDay * @property {number} minimalDays * @property {number[]} weekend */ /** * @return {WeekSettings|null} */ static get defaultWeekSettings() { return defaultWeekSettings; } /** * Allows overriding the default locale week settings, i.e. the start of the week, the weekend and * how many days are required in the first week of a year. * Does not affect existing instances. * * @param {WeekSettings|null} weekSettings */ static set defaultWeekSettings(weekSettings) { defaultWeekSettings = validateWeekSettings(weekSettings); } /** * Get the cutoff year for whether a 2-digit year string is interpreted in the current or previous century. Numbers higher than the cutoff will be considered to mean 19xx and numbers lower or equal to the cutoff will be considered 20xx. * @type {number} */ static get twoDigitCutoffYear() { return twoDigitCutoffYear; } /** * Set the cutoff year for whether a 2-digit year string is interpreted in the current or previous century. Numbers higher than the cutoff will be considered to mean 19xx and numbers lower or equal to the cutoff will be considered 20xx. * @type {number} * @example Settings.twoDigitCutoffYear = 0 // all 'yy' are interpreted as 20th century * @example Settings.twoDigitCutoffYear = 99 // all 'yy' are interpreted as 21st century * @example Settings.twoDigitCutoffYear = 50 // '49' -> 2049; '50' -> 1950 * @example Settings.twoDigitCutoffYear = 1950 // interpreted as 50 * @example Settings.twoDigitCutoffYear = 2050 // ALSO interpreted as 50 */ static set twoDigitCutoffYear(cutoffYear) { twoDigitCutoffYear = cutoffYear % 100; } /** * Get whether Luxon will throw when it encounters invalid DateTimes, Durations, or Intervals * @type {boolean} */ static get throwOnInvalid() { return throwOnInvalid; } /** * Set whether Luxon will throw when it encounters invalid DateTimes, Durations, or Intervals * @type {boolean} */ static set throwOnInvalid(t) { throwOnInvalid = t; } /** * Reset Luxon's global caches. Should only be necessary in testing scenarios. * @return {void} */ static resetCaches() { Locale.resetCache(); IANAZone.resetCache(); DateTime.resetCache(); resetDigitRegexCache(); } }; var Invalid = class { static { __name(this, "Invalid"); } constructor(reason, explanation) { this.reason = reason; this.explanation = explanation; } toMessage() { if (this.explanation) { return `${this.reason}: ${this.explanation}`; } else { return this.reason; } } }; var nonLeapLadder = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334]; var leapLadder = [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335]; function unitOutOfRange(unit, value) { return new Invalid("unit out of range", `you specified ${value} (of type ${typeof value}) as a ${unit}, which is invalid`); } __name(unitOutOfRange, "unitOutOfRange"); function dayOfWeek(year, month, day) { const d = new Date(Date.UTC(year, month - 1, day)); if (year < 100 && year >= 0) { d.setUTCFullYear(d.getUTCFullYear() - 1900); } const js = d.getUTCDay(); return js === 0 ? 7 : js; } __name(dayOfWeek, "dayOfWeek"); function computeOrdinal(year, month, day) { return day + (isLeapYear(year) ? leapLadder : nonLeapLadder)[month - 1]; } __name(computeOrdinal, "computeOrdinal"); function uncomputeOrdinal(year, ordinal) { const table = isLeapYear(year) ? leapLadder : nonLeapLadder, month0 = table.findIndex((i) => i < ordinal), day = ordinal - table[month0]; return { month: month0 + 1, day }; } __name(uncomputeOrdinal, "uncomputeOrdinal"); function isoWeekdayToLocal(isoWeekday, startOfWeek) { return (isoWeekday - startOfWeek + 7) % 7 + 1; } __name(isoWeekdayToLocal, "isoWeekdayToLocal"); function gregorianToWeek(gregObj, minDaysInFirstWeek = 4, startOfWeek = 1) { const { year, month, day } = gregObj, ordinal = computeOrdinal(year, month, day), weekday = isoWeekdayToLocal(dayOfWeek(year, month, day), startOfWeek); let weekNumber = Math.floor((ordinal - weekday + 14 - minDaysInFirstWeek) / 7), weekYear; if (weekNumber < 1) { weekYear = year - 1; weekNumber = weeksInWeekYear(weekYear, minDaysInFirstWeek, startOfWeek); } else if (weekNumber > weeksInWeekYear(year, minDaysInFirstWeek, startOfWeek)) { weekYear = year + 1; weekNumber = 1; } else { weekYear = year; } return { weekYear, weekNumber, weekday, ...timeObject(gregObj) }; } __name(gregorianToWeek, "gregorianToWeek"); function weekToGregorian(weekData, minDaysInFirstWeek = 4, startOfWeek = 1) { const { weekYear, weekNumber, weekday } = weekData, weekdayOfJan4 = isoWeekdayToLocal(dayOfWeek(weekYear, 1, minDaysInFirstWeek), startOfWeek), yearInDays = daysInYear(weekYear); let ordinal = weekNumber * 7 + weekday - weekdayOfJan4 - 7 + minDaysInFirstWeek, year; if (ordinal < 1) { year = weekYear - 1; ordinal += daysInYear(year); } else if (ordinal > yearInDays) { year = weekYear + 1; ordinal -= daysInYear(weekYear); } else { year = weekYear; } const { month, day } = uncomputeOrdinal(year, ordinal); return { year, month, day, ...timeObject(weekData) }; } __name(weekToGregorian, "weekToGregorian"); function gregorianToOrdinal(gregData) { const { year, month, day } = gregData; const ordinal = computeOrdinal(year, month, day); return { year, ordinal, ...timeObject(gregData) }; } __name(gregorianToOrdinal, "gregorianToOrdinal"); function ordinalToGregorian(ordinalData) { const { year, ordinal } = ordinalData; const { month, day } = uncomputeOrdinal(year, ordinal); return { year, month, day, ...timeObject(ordinalData) }; } __name(ordinalToGregorian, "ordinalToGregorian"); function usesLocalWeekValues(obj2, loc) { const hasLocaleWeekData = !isUndefined(obj2.localWeekday) || !isUndefined(obj2.localWeekNumber) || !isUndefined(obj2.localWeekYear); if (hasLocaleWeekData) { const hasIsoWeekData = !isUndefined(obj2.weekday) || !isUndefined(obj2.weekNumber) || !isUndefined(obj2.weekYear); if (hasIsoWeekData) { throw new ConflictingSpecificationError("Cannot mix locale-based week fields with ISO-based week fields"); } if (!isUndefined(obj2.localWeekday)) obj2.weekday = obj2.localWeekday; if (!isUndefined(obj2.localWeekNumber)) obj2.weekNumber = obj2.localWeekNumber; if (!isUndefined(obj2.localWeekYear)) obj2.weekYear = obj2.localWeekYear; delete obj2.localWeekday; delete obj2.localWeekNumber; delete obj2.localWeekYear; return { minDaysInFirstWeek: loc.getMinDaysInFirstWeek(), startOfWeek: loc.getStartOfWeek() }; } else { return { minDaysInFirstWeek: 4, startOfWeek: 1 }; } } __name(usesLocalWeekValues, "usesLocalWeekValues"); function hasInvalidWeekData(obj2, minDaysInFirstWeek = 4, startOfWeek = 1) { const validYear = isInteger(obj2.weekYear), validWeek = integerBetween(obj2.weekNumber, 1, weeksInWeekYear(obj2.weekYear, minDaysInFirstWeek, startOfWeek)), validWeekday = integerBetween(obj2.weekday, 1, 7); if (!validYear) { return unitOutOfRange("weekYear", obj2.weekYear); } else if (!validWeek) { return unitOutOfRange("week", obj2.weekNumber); } else if (!validWeekday) { return unitOutOfRange("weekday", obj2.weekday); } else return false; } __name(hasInvalidWeekData, "hasInvalidWeekData"); function hasInvalidOrdinalData(obj2) { const validYear = isInteger(obj2.year), validOrdinal = integerBetween(obj2.ordinal, 1, daysInYear(obj2.year)); if (!validYear) { return unitOutOfRange("year", obj2.year); } else if (!validOrdinal) { return unitOutOfRange("ordinal", obj2.ordinal); } else return false; } __name(hasInvalidOrdinalData, "hasInvalidOrdinalData"); function hasInvalidGregorianData(obj2) { const validYear = isInteger(obj2.year), validMonth = integerBetween(obj2.month, 1, 12), validDay = integerBetween(obj2.day, 1, daysInMonth(obj2.year, obj2.month)); if (!validYear) { return unitOutOfRange("year", obj2.year); } else if (!validMonth) { return unitOutOfRange("month", obj2.month); } else if (!validDay) { return unitOutOfRange("day", obj2.day); } else return false; } __name(hasInvalidGregorianData, "hasInvalidGregorianData"); function hasInvalidTimeData(obj2) { const { hour, minute, second, millisecond } = obj2; const validHour = integerBetween(hour, 0, 23) || hour === 24 && minute === 0 && second === 0 && millisecond === 0, validMinute = integerBetween(minute, 0, 59), validSecond = integerBetween(second, 0, 59), validMillisecond = integerBetween(millisecond, 0, 999); if (!validHour) { return unitOutOfRange("hour", hour); } else if (!validMinute) { return unitOutOfRange("minute", minute); } else if (!validSecond) { return unitOutOfRange("second", second); } else if (!validMillisecond) { return unitOutOfRange("millisecond", millisecond); } else return false; } __name(hasInvalidTimeData, "hasInvalidTimeData"); function isUndefined(o) { return typeof o === "undefined"; } __name(isUndefined, "isUndefined"); function isNumber(o) { return typeof o === "number"; } __name(isNumber, "isNumber"); function isInteger(o) { return typeof o === "number" && o % 1 === 0; } __name(isInteger, "isInteger"); function isString(o) { return typeof o === "string"; } __name(isString, "isString"); function isDate(o) { return Object.prototype.toString.call(o) === "[object Date]"; } __name(isDate, "isDate"); function hasRelative() { try { return typeof Intl !== "undefined" && !!Intl.RelativeTimeFormat; } catch (e) { return false; } } __name(hasRelative, "hasRelative"); function hasLocaleWeekInfo() { try { return typeof Intl !== "undefined" && !!Intl.Locale && ("weekInfo" in Intl.Locale.prototype || "getWeekInfo" in Intl.Locale.prototype); } catch (e) { return false; } } __name(hasLocaleWeekInfo, "hasLocaleWeekInfo"); function maybeArray(thing) { return Array.isArray(thing) ? thing : [thing]; } __name(maybeArray, "maybeArray"); function bestBy(arr, by, compare) { if (arr.length === 0) { return void 0; } return arr.reduce((best, next) => { const pair = [by(next), next]; if (!best) { return pair; } else if (compare(best[0], pair[0]) === best[0]) { return best; } else { return pair; } }, null)[1]; } __name(bestBy, "bestBy"); function pick(obj2, keys) { return keys.reduce((a, k) => { a[k] = obj2[k]; return a; }, {}); } __name(pick, "pick"); function hasOwnProperty(obj2, prop) { return Object.prototype.hasOwnProperty.call(obj2, prop); } __name(hasOwnProperty, "hasOwnProperty"); function validateWeekSettings(settings) { if (settings == null) { return null; } else if (typeof settings !== "object") { throw new InvalidArgumentError("Week settings must be an object"); } else { if (!integerBetween(settings.firstDay, 1, 7) || !integerBetween(settings.minimalDays, 1, 7) || !Array.isArray(settings.weekend) || settings.weekend.some((v) => !integerBetween(v, 1, 7))) { throw new InvalidArgumentError("Invalid week settings"); } return { firstDay: settings.firstDay, minimalDays: settings.minimalDays, weekend: Array.from(settings.weekend) }; } } __name(validateWeekSettings, "validateWeekSettings"); function integerBetween(thing, bottom, top) { return isInteger(thing) && thing >= bottom && thing <= top; } __name(integerBetween, "integerBetween"); function floorMod(x, n2) { return x - n2 * Math.floor(x / n2); } __name(floorMod, "floorMod"); function padStart(input, n2 = 2) { const isNeg = input < 0; let padded; if (isNeg) { padded = "-" + ("" + -input).padStart(n2, "0"); } else { padded = ("" + input).padStart(n2, "0"); } return padded; } __name(padStart, "padStart"); function parseInteger(string) { if (isUndefined(string) || string === null || string === "") { return void 0; } else { return parseInt(string, 10); } } __name(parseInteger, "parseInteger"); function parseFloating(string) { if (isUndefined(string) || string === null || string === "") { return void 0; } else { return parseFloat(string); } } __name(parseFloating, "parseFloating"); function parseMillis(fraction) { if (isUndefined(fraction) || fraction === null || fraction === "") { return void 0; } else { const f = parseFloat("0." + fraction) * 1e3; return Math.floor(f); } } __name(parseMillis, "parseMillis"); function roundTo(number, digits, towardZero = false) { const factor = 10 ** digits, rounder = towardZero ? Math.trunc : Math.round; return rounder(number * factor) / factor; } __name(roundTo, "roundTo"); function isLeapYear(year) { return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0); } __name(isLeapYear, "isLeapYear"); function daysInYear(year) { return isLeapYear(year) ? 366 : 365; } __name(daysInYear, "daysInYear"); function daysInMonth(year, month) { const modMonth = floorMod(month - 1, 12) + 1, modYear = year + (month - modMonth) / 12; if (modMonth === 2) { return isLeapYear(modYear) ? 29 : 28; } else { return [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][modMonth - 1]; } } __name(daysInMonth, "daysInMonth"); function objToLocalTS(obj2) { let d = Date.UTC(obj2.year, obj2.month - 1, obj2.day, obj2.hour, obj2.minute, obj2.second, obj2.millisecond); if (obj2.year < 100 && obj2.year >= 0) { d = new Date(d); d.setUTCFullYear(obj2.year, obj2.month - 1, obj2.day); } return +d; } __name(objToLocalTS, "objToLocalTS"); function firstWeekOffset(year, minDaysInFirstWeek, startOfWeek) { const fwdlw = isoWeekdayToLocal(dayOfWeek(year, 1, minDaysInFirstWeek), startOfWeek); return -fwdlw + minDaysInFirstWeek - 1; } __name(firstWeekOffset, "firstWeekOffset"); function weeksInWeekYear(weekYear, minDaysInFirstWeek = 4, startOfWeek = 1) { const weekOffset = firstWeekOffset(weekYear, minDaysInFirstWeek, startOfWeek); const weekOffsetNext = firstWeekOffset(weekYear + 1, minDaysInFirstWeek, startOfWeek); return (daysInYear(weekYear) - weekOffset + weekOffsetNext) / 7; } __name(weeksInWeekYear, "weeksInWeekYear"); function untruncateYear(year) { if (year > 99) { return year; } else return year > Settings.twoDigitCutoffYear ? 1900 + year : 2e3 + year; } __name(untruncateYear, "untruncateYear"); function parseZoneInfo(ts, offsetFormat, locale, timeZone = null) { const date = new Date(ts), intlOpts = { hourCycle: "h23", year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit" }; if (timeZone) { intlOpts.timeZone = timeZone; } const modified = { timeZoneName: offsetFormat, ...intlOpts }; const parsed = new Intl.DateTimeFormat(locale, modified).formatToParts(date).find((m) => m.type.toLowerCase() === "timezonename"); return parsed ? parsed.value : null; } __name(parseZoneInfo, "parseZoneInfo"); function signedOffset(offHourStr, offMinuteStr) { let offHour = parseInt(offHourStr, 10); if (Number.isNaN(offHour)) { offHour = 0; } const offMin = parseInt(offMinuteStr, 10) || 0, offMinSigned = offHour < 0 || Object.is(offHour, -0) ? -offMin : offMin; return offHour * 60 + offMinSigned; } __name(signedOffset, "signedOffset"); function asNumber(value) { const numericValue = Number(value); if (typeof value === "boolean" || value === "" || Number.isNaN(numericValue)) throw new InvalidArgumentError(`Invalid unit value ${value}`); return numericValue; } __name(asNumber, "asNumber"); function normalizeObject(obj2, normalizer) { const normalized = {}; for (const u in obj2) { if (hasOwnProperty(obj2, u)) { const v = obj2[u]; if (v === void 0 || v === null) continue; normalized[normalizer(u)] = asNumber(v); } } return normalized; } __name(normalizeObject, "normalizeObject"); function formatOffset(offset2, format) { const hours = Math.trunc(Math.abs(offset2 / 60)), minutes = Math.trunc(Math.abs(offset2 % 60)), sign = offset2 >= 0 ? "+" : "-"; switch (format) { case "short": return `${sign}${padStart(hours, 2)}:${padStart(minutes, 2)}`; case "narrow": return `${sign}${hours}${minutes > 0 ? `:${minutes}` : ""}`; case "techie": return `${sign}${padStart(hours, 2)}${padStart(minutes, 2)}`; default: throw new RangeError(`Value format ${format} is out of range for property format`); } } __name(formatOffset, "formatOffset"); function timeObject(obj2) { return pick(obj2, ["hour", "minute", "second", "millisecond"]); } __name(timeObject, "timeObject"); var monthsLong = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; var monthsShort = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; var monthsNarrow = ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"]; function months(length) { switch (length) { case "narrow": return [...monthsNarrow]; case "short": return [...monthsShort]; case "long": return [...monthsLong]; case "numeric": return ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"]; case "2-digit": return ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"]; default: return null; } } __name(months, "months"); var weekdaysLong = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]; var weekdaysShort = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]; var weekdaysNarrow = ["M", "T", "W", "T", "F", "S", "S"]; function weekdays(length) { switch (length) { case "narrow": return [...weekdaysNarrow]; case "short": return [...weekdaysShort]; case "long": return [...weekdaysLong]; case "numeric": return ["1", "2", "3", "4", "5", "6", "7"]; default: return null; } } __name(weekdays, "weekdays"); var meridiems = ["AM", "PM"]; var erasLong = ["Before Christ", "Anno Domini"]; var erasShort = ["BC", "AD"]; var erasNarrow = ["B", "A"]; function eras(length) { switch (length) { case "narrow": return [...erasNarrow]; case "short": return [...erasShort]; case "long": return [...erasLong]; default: return null; } } __name(eras, "eras"); function meridiemForDateTime(dt) { return meridiems[dt.hour < 12 ? 0 : 1]; } __name(meridiemForDateTime, "meridiemForDateTime"); function weekdayForDateTime(dt, length) { return weekdays(length)[dt.weekday - 1]; } __name(weekdayForDateTime, "weekdayForDateTime"); function monthForDateTime(dt, length) { return months(length)[dt.month - 1]; } __name(monthForDateTime, "monthForDateTime"); function eraForDateTime(dt, length) { return eras(length)[dt.year < 0 ? 0 : 1]; } __name(eraForDateTime, "eraForDateTime"); function formatRelativeTime(unit, count, numeric = "always", narrow = false) { const units = { years: ["year", "yr."], quarters: ["quarter", "qtr."], months: ["month", "mo."], weeks: ["week", "wk."], days: ["day", "day", "days"], hours: ["hour", "hr."], minutes: ["minute", "min."], seconds: ["second", "sec."] }; const lastable = ["hours", "minutes", "seconds"].indexOf(unit) === -1; if (numeric === "auto" && lastable) { const isDay = unit === "days"; switch (count) { case 1: return isDay ? "tomorrow" : `next ${units[unit][0]}`; case -1: return isDay ? "yesterday" : `last ${units[unit][0]}`; case 0: return isDay ? "today" : `this ${units[unit][0]}`; } } const isInPast = Object.is(count, -0) || count < 0, fmtValue = Math.abs(count), singular = fmtValue === 1, lilUnits = units[unit], fmtUnit = narrow ? singular ? lilUnits[1] : lilUnits[2] || lilUnits[1] : singular ? units[unit][0] : unit; return isInPast ? `${fmtValue} ${fmtUnit} ago` : `in ${fmtValue} ${fmtUnit}`; } __name(formatRelativeTime, "formatRelativeTime"); function stringifyTokens(splits, tokenToString) { let s2 = ""; for (const token of splits) { if (token.literal) { s2 += token.val; } else { s2 += tokenToString(token.val); } } return s2; } __name(stringifyTokens, "stringifyTokens"); var macroTokenToFormatOpts = { D: DATE_SHORT, DD: DATE_MED, DDD: DATE_FULL, DDDD: DATE_HUGE, t: TIME_SIMPLE, tt: TIME_WITH_SECONDS, ttt: TIME_WITH_SHORT_OFFSET, tttt: TIME_WITH_LONG_OFFSET, T: TIME_24_SIMPLE, TT: TIME_24_WITH_SECONDS, TTT: TIME_24_WITH_SHORT_OFFSET, TTTT: TIME_24_WITH_LONG_OFFSET, f: DATETIME_SHORT, ff: DATETIME_MED, fff: DATETIME_FULL, ffff: DATETIME_HUGE, F: DATETIME_SHORT_WITH_SECONDS, FF: DATETIME_MED_WITH_SECONDS, FFF: DATETIME_FULL_WITH_SECONDS, FFFF: DATETIME_HUGE_WITH_SECONDS }; var Formatter = class _Formatter { static { __name(this, "Formatter"); } static create(locale, opts = {}) { return new _Formatter(locale, opts); } static parseFormat(fmt) { let current = null, currentFull = "", bracketed = false; const splits = []; for (let i = 0; i < fmt.length; i++) { const c = fmt.charAt(i); if (c === "'") { if (currentFull.length > 0) { splits.push({ literal: bracketed || /^\s+$/.test(currentFull), val: currentFull }); } current = null; currentFull = ""; bracketed = !bracketed; } else if (bracketed) { currentFull += c; } else if (c === current) { currentFull += c; } else { if (currentFull.length > 0) { splits.push({ literal: /^\s+$/.test(currentFull), val: currentFull }); } currentFull = c; current = c; } } if (currentFull.length > 0) { splits.push({ literal: bracketed || /^\s+$/.test(currentFull), val: currentFull }); } return splits; } static macroTokenToFormatOpts(token) { return macroTokenToFormatOpts[token]; } constructor(locale, formatOpts) { this.opts = formatOpts; this.loc = locale; this.systemLoc = null; } formatWithSystemDefault(dt, opts) { if (this.systemLoc === null) { this.systemLoc = this.loc.redefaultToSystem(); } const df = this.systemLoc.dtFormatter(dt, { ...this.opts, ...opts }); return df.format(); } dtFormatter(dt, opts = {}) { return this.loc.dtFormatter(dt, { ...this.opts, ...opts }); } formatDateTime(dt, opts) { return this.dtFormatter(dt, opts).format(); } formatDateTimeParts(dt, opts) { return this.dtFormatter(dt, opts).formatToParts(); } formatInterval(interval, opts) { const df = this.dtFormatter(interval.start, opts); return df.dtf.formatRange(interval.start.toJSDate(), interval.end.toJSDate()); } resolvedOptions(dt, opts) { return this.dtFormatter(dt, opts).resolvedOptions(); } num(n2, p = 0) { if (this.opts.forceSimple) { return padStart(n2, p); } const opts = { ...this.opts }; if (p > 0) { opts.padTo = p; } return this.loc.numberFormatter(opts).format(n2); } formatDateTimeFromString(dt, fmt) { const knownEnglish = this.loc.listingMode() === "en", useDateTimeFormatter = this.loc.outputCalendar && this.loc.outputCalendar !== "gregory", string = /* @__PURE__ */ __name((opts, extract) => this.loc.extract(dt, opts, extract), "string"), formatOffset2 = /* @__PURE__ */ __name((opts) => { if (dt.isOffsetFixed && dt.offset === 0 && opts.allowZ) { return "Z"; } return dt.isValid ? dt.zone.formatOffset(dt.ts, opts.format) : ""; }, "formatOffset"), meridiem = /* @__PURE__ */ __name(() => knownEnglish ? meridiemForDateTime(dt) : string({ hour: "numeric", hourCycle: "h12" }, "dayperiod"), "meridiem"), month = /* @__PURE__ */ __name((length, standalone) => knownEnglish ? monthForDateTime(dt, length) : string(standalone ? { month: length } : { month: length, day: "numeric" }, "month"), "month"), weekday = /* @__PURE__ */ __name((length, standalone) => knownEnglish ? weekdayForDateTime(dt, length) : string(standalone ? { weekday: length } : { weekday: length, month: "long", day: "numeric" }, "weekday"), "weekday"), maybeMacro = /* @__PURE__ */ __name((token) => { const formatOpts = _Formatter.macroTokenToFormatOpts(token); if (formatOpts) { return this.formatWithSystemDefault(dt, formatOpts); } else { return token; } }, "maybeMacro"), era = /* @__PURE__ */ __name((length) => knownEnglish ? eraForDateTime(dt, length) : string({ era: length }, "era"), "era"), tokenToString = /* @__PURE__ */ __name((token) => { switch (token) { // ms case "S": return this.num(dt.millisecond); case "u": // falls through case "SSS": return this.num(dt.millisecond, 3); // seconds case "s": return this.num(dt.second); case "ss": return this.num(dt.second, 2); // fractional seconds case "uu": return this.num(Math.floor(dt.millisecond / 10), 2); case "uuu": return this.num(Math.floor(dt.millisecond / 100)); // minutes case "m": return this.num(dt.minute); case "mm": return this.num(dt.minute, 2); // hours case "h": return this.num(dt.hour % 12 === 0 ? 12 : dt.hour % 12); case "hh": return this.num(dt.hour % 12 === 0 ? 12 : dt.hour % 12, 2); case "H": return this.num(dt.hour); case "HH": return this.num(dt.hour, 2); // offset case "Z": return formatOffset2({ format: "narrow", allowZ: this.opts.allowZ }); case "ZZ": return formatOffset2({ format: "short", allowZ: this.opts.allowZ }); case "ZZZ": return formatOffset2({ format: "techie", allowZ: this.opts.allowZ }); case "ZZZZ": return dt.zone.offsetName(dt.ts, { format: "short", locale: this.loc.locale }); case "ZZZZZ": return dt.zone.offsetName(dt.ts, { format: "long", locale: this.loc.locale }); // zone case "z": return dt.zoneName; // meridiems case "a": return meridiem(); // dates case "d": return useDateTimeFormatter ? string({ day: "numeric" }, "day") : this.num(dt.day); case "dd": return useDateTimeFormatter ? string({ day: "2-digit" }, "day") : this.num(dt.day, 2); // weekdays - standalone case "c": return this.num(dt.weekday); case "ccc": return weekday("short", true); case "cccc": return weekday("long", true); case "ccccc": return weekday("narrow", true); // weekdays - format case "E": return this.num(dt.weekday); case "EEE": return weekday("short", false); case "EEEE": return weekday("long", false); case "EEEEE": return weekday("narrow", false); // months - standalone case "L": return useDateTimeFormatter ? string({ month: "numeric", day: "numeric" }, "month") : this.num(dt.month); case "LL": return useDateTimeFormatter ? string({ month: "2-digit", day: "numeric" }, "month") : this.num(dt.month, 2); case "LLL": return month("short", true); case "LLLL": return month("long", true); case "LLLLL": return month("narrow", true); // months - format case "M": return useDateTimeFormatter ? string({ month: "numeric" }, "month") : this.num(dt.month); case "MM": return useDateTimeFormatter ? string({ month: "2-digit" }, "month") : this.num(dt.month, 2); case "MMM": return month("short", false); case "MMMM": return month("long", false); case "MMMMM": return month("narrow", false); // years case "y": return useDateTimeFormatter ? string({ year: "numeric" }, "year") : this.num(dt.year); case "yy": return useDateTimeFormatter ? string({ year: "2-digit" }, "year") : this.num(dt.year.toString().slice(-2), 2); case "yyyy": return useDateTimeFormatter ? string({ year: "numeric" }, "year") : this.num(dt.year, 4); case "yyyyyy": return useDateTimeFormatter ? string({ year: "numeric" }, "year") : this.num(dt.year, 6); // eras case "G": return era("short"); case "GG": return era("long"); case "GGGGG": return era("narrow"); case "kk": return this.num(dt.weekYear.toString().slice(-2), 2); case "kkkk": return this.num(dt.weekYear, 4); case "W": return this.num(dt.weekNumber); case "WW": return this.num(dt.weekNumber, 2); case "n": return this.num(dt.localWeekNumber); case "nn": return this.num(dt.localWeekNumber, 2); case "ii": return this.num(dt.localWeekYear.toString().slice(-2), 2); case "iiii": return this.num(dt.localWeekYear, 4); case "o": return this.num(dt.ordinal); case "ooo": return this.num(dt.ordinal, 3); case "q": return this.num(dt.quarter); case "qq": return this.num(dt.quarter, 2); case "X": return this.num(Math.floor(dt.ts / 1e3)); case "x": return this.num(dt.ts); default: return maybeMacro(token); } }, "tokenToString"); return stringifyTokens(_Formatter.parseFormat(fmt), tokenToString); } formatDurationFromString(dur, fmt) { const tokenToField = /* @__PURE__ */ __name((token) => { switch (token[0]) { case "S": return "millisecond"; case "s": return "second"; case "m": return "minute"; case "h": return "hour"; case "d": return "day"; case "w": return "week"; case "M": return "month"; case "y": return "year"; default: return null; } }, "tokenToField"), tokenToString = /* @__PURE__ */ __name((lildur) => (token) => { const mapped = tokenToField(token); if (mapped) { return this.num(lildur.get(mapped), token.length); } else { return token; } }, "tokenToString"), tokens = _Formatter.parseFormat(fmt), realTokens = tokens.reduce((found, { literal, val }) => literal ? found : found.concat(val), []), collapsed = dur.shiftTo(...realTokens.map(tokenToField).filter((t) => t)); return stringifyTokens(tokens, tokenToString(collapsed)); } }; var ianaRegex = /[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/; function combineRegexes(...regexes) { const full = regexes.reduce((f, r) => f + r.source, ""); return RegExp(`^${full}$`); } __name(combineRegexes, "combineRegexes"); function combineExtractors(...extractors) { return (m) => extractors.reduce(([mergedVals, mergedZone, cursor], ex) => { const [val, zone, next] = ex(m, cursor); return [{ ...mergedVals, ...val }, zone || mergedZone, next]; }, [{}, null, 1]).slice(0, 2); } __name(combineExtractors, "combineExtractors"); function parse2(s2, ...patterns) { if (s2 == null) { return [null, null]; } for (const [regex, extractor] of patterns) { const m = regex.exec(s2); if (m) { return extractor(m); } } return [null, null]; } __name(parse2, "parse"); function simpleParse(...keys) { return (match2, cursor) => { const ret2 = {}; let i; for (i = 0; i < keys.length; i++) { ret2[keys[i]] = parseInteger(match2[cursor + i]); } return [ret2, null, cursor + i]; }; } __name(simpleParse, "simpleParse"); var offsetRegex = /(?:(Z)|([+-]\d\d)(?::?(\d\d))?)/; var isoExtendedZone = `(?:${offsetRegex.source}?(?:\\[(${ianaRegex.source})\\])?)?`; var isoTimeBaseRegex = /(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/; var isoTimeRegex = RegExp(`${isoTimeBaseRegex.source}${isoExtendedZone}`); var isoTimeExtensionRegex = RegExp(`(?:T${isoTimeRegex.source})?`); var isoYmdRegex = /([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/; var isoWeekRegex = /(\d{4})-?W(\d\d)(?:-?(\d))?/; var isoOrdinalRegex = /(\d{4})-?(\d{3})/; var extractISOWeekData = simpleParse("weekYear", "weekNumber", "weekDay"); var extractISOOrdinalData = simpleParse("year", "ordinal"); var sqlYmdRegex = /(\d{4})-(\d\d)-(\d\d)/; var sqlTimeRegex = RegExp(`${isoTimeBaseRegex.source} ?(?:${offsetRegex.source}|(${ianaRegex.source}))?`); var sqlTimeExtensionRegex = RegExp(`(?: ${sqlTimeRegex.source})?`); function int(match2, pos, fallback) { const m = match2[pos]; return isUndefined(m) ? fallback : parseInteger(m); } __name(int, "int"); function extractISOYmd(match2, cursor) { const item = { year: int(match2, cursor), month: int(match2, cursor + 1, 1), day: int(match2, cursor + 2, 1) }; return [item, null, cursor + 3]; } __name(extractISOYmd, "extractISOYmd"); function extractISOTime(match2, cursor) { const item = { hours: int(match2, cursor, 0), minutes: int(match2, cursor + 1, 0), seconds: int(match2, cursor + 2, 0), milliseconds: parseMillis(match2[cursor + 3]) }; return [item, null, cursor + 4]; } __name(extractISOTime, "extractISOTime"); function extractISOOffset(match2, cursor) { const local = !match2[cursor] && !match2[cursor + 1], fullOffset = signedOffset(match2[cursor + 1], match2[cursor + 2]), zone = local ? null : FixedOffsetZone.instance(fullOffset); return [{}, zone, cursor + 3]; } __name(extractISOOffset, "extractISOOffset"); function extractIANAZone(match2, cursor) { const zone = match2[cursor] ? IANAZone.create(match2[cursor]) : null; return [{}, zone, cursor + 1]; } __name(extractIANAZone, "extractIANAZone"); var isoTimeOnly = RegExp(`^T?${isoTimeBaseRegex.source}$`); var isoDuration = /^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/; function extractISODuration(match2) { const [s2, yearStr, monthStr, weekStr, dayStr, hourStr, minuteStr, secondStr, millisecondsStr] = match2; const hasNegativePrefix = s2[0] === "-"; const negativeSeconds = secondStr && secondStr[0] === "-"; const maybeNegate = /* @__PURE__ */ __name((num, force = false) => num !== void 0 && (force || num && hasNegativePrefix) ? -num : num, "maybeNegate"); return [{ years: maybeNegate(parseFloating(yearStr)), months: maybeNegate(parseFloating(monthStr)), weeks: maybeNegate(parseFloating(weekStr)), days: maybeNegate(parseFloating(dayStr)), hours: maybeNegate(parseFloating(hourStr)), minutes: maybeNegate(parseFloating(minuteStr)), seconds: maybeNegate(parseFloating(secondStr), secondStr === "-0"), milliseconds: maybeNegate(parseMillis(millisecondsStr), negativeSeconds) }]; } __name(extractISODuration, "extractISODuration"); var obsOffsets = { GMT: 0, EDT: -4 * 60, EST: -5 * 60, CDT: -5 * 60, CST: -6 * 60, MDT: -6 * 60, MST: -7 * 60, PDT: -7 * 60, PST: -8 * 60 }; function fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr) { const result = { year: yearStr.length === 2 ? untruncateYear(parseInteger(yearStr)) : parseInteger(yearStr), month: monthsShort.indexOf(monthStr) + 1, day: parseInteger(dayStr), hour: parseInteger(hourStr), minute: parseInteger(minuteStr) }; if (secondStr) result.second = parseInteger(secondStr); if (weekdayStr) { result.weekday = weekdayStr.length > 3 ? weekdaysLong.indexOf(weekdayStr) + 1 : weekdaysShort.indexOf(weekdayStr) + 1; } return result; } __name(fromStrings, "fromStrings"); var rfc2822 = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/; function extractRFC2822(match2) { const [, weekdayStr, dayStr, monthStr, yearStr, hourStr, minuteStr, secondStr, obsOffset, milOffset, offHourStr, offMinuteStr] = match2, result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr); let offset2; if (obsOffset) { offset2 = obsOffsets[obsOffset]; } else if (milOffset) { offset2 = 0; } else { offset2 = signedOffset(offHourStr, offMinuteStr); } return [result, new FixedOffsetZone(offset2)]; } __name(extractRFC2822, "extractRFC2822"); function preprocessRFC2822(s2) { return s2.replace(/\([^()]*\)|[\n\t]/g, " ").replace(/(\s\s+)/g, " ").trim(); } __name(preprocessRFC2822, "preprocessRFC2822"); var rfc1123 = /^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/; var rfc850 = /^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/; var ascii = /^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/; function extractRFC1123Or850(match2) { const [, weekdayStr, dayStr, monthStr, yearStr, hourStr, minuteStr, secondStr] = match2, result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr); return [result, FixedOffsetZone.utcInstance]; } __name(extractRFC1123Or850, "extractRFC1123Or850"); function extractASCII(match2) { const [, weekdayStr, monthStr, dayStr, hourStr, minuteStr, secondStr, yearStr] = match2, result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr); return [result, FixedOffsetZone.utcInstance]; } __name(extractASCII, "extractASCII"); var isoYmdWithTimeExtensionRegex = combineRegexes(isoYmdRegex, isoTimeExtensionRegex); var isoWeekWithTimeExtensionRegex = combineRegexes(isoWeekRegex, isoTimeExtensionRegex); var isoOrdinalWithTimeExtensionRegex = combineRegexes(isoOrdinalRegex, isoTimeExtensionRegex); var isoTimeCombinedRegex = combineRegexes(isoTimeRegex); var extractISOYmdTimeAndOffset = combineExtractors(extractISOYmd, extractISOTime, extractISOOffset, extractIANAZone); var extractISOWeekTimeAndOffset = combineExtractors(extractISOWeekData, extractISOTime, extractISOOffset, extractIANAZone); var extractISOOrdinalDateAndTime = combineExtractors(extractISOOrdinalData, extractISOTime, extractISOOffset, extractIANAZone); var extractISOTimeAndOffset = combineExtractors(extractISOTime, extractISOOffset, extractIANAZone); function parseISODate(s2) { return parse2(s2, [isoYmdWithTimeExtensionRegex, extractISOYmdTimeAndOffset], [isoWeekWithTimeExtensionRegex, extractISOWeekTimeAndOffset], [isoOrdinalWithTimeExtensionRegex, extractISOOrdinalDateAndTime], [isoTimeCombinedRegex, extractISOTimeAndOffset]); } __name(parseISODate, "parseISODate"); function parseRFC2822Date(s2) { return parse2(preprocessRFC2822(s2), [rfc2822, extractRFC2822]); } __name(parseRFC2822Date, "parseRFC2822Date"); function parseHTTPDate(s2) { return parse2(s2, [rfc1123, extractRFC1123Or850], [rfc850, extractRFC1123Or850], [ascii, extractASCII]); } __name(parseHTTPDate, "parseHTTPDate"); function parseISODuration(s2) { return parse2(s2, [isoDuration, extractISODuration]); } __name(parseISODuration, "parseISODuration"); var extractISOTimeOnly = combineExtractors(extractISOTime); function parseISOTimeOnly(s2) { return parse2(s2, [isoTimeOnly, extractISOTimeOnly]); } __name(parseISOTimeOnly, "parseISOTimeOnly"); var sqlYmdWithTimeExtensionRegex = combineRegexes(sqlYmdRegex, sqlTimeExtensionRegex); var sqlTimeCombinedRegex = combineRegexes(sqlTimeRegex); var extractISOTimeOffsetAndIANAZone = combineExtractors(extractISOTime, extractISOOffset, extractIANAZone); function parseSQL(s2) { return parse2(s2, [sqlYmdWithTimeExtensionRegex, extractISOYmdTimeAndOffset], [sqlTimeCombinedRegex, extractISOTimeOffsetAndIANAZone]); } __name(parseSQL, "parseSQL"); var INVALID$2 = "Invalid Duration"; var lowOrderMatrix = { weeks: { days: 7, hours: 7 * 24, minutes: 7 * 24 * 60, seconds: 7 * 24 * 60 * 60, milliseconds: 7 * 24 * 60 * 60 * 1e3 }, days: { hours: 24, minutes: 24 * 60, seconds: 24 * 60 * 60, milliseconds: 24 * 60 * 60 * 1e3 }, hours: { minutes: 60, seconds: 60 * 60, milliseconds: 60 * 60 * 1e3 }, minutes: { seconds: 60, milliseconds: 60 * 1e3 }, seconds: { milliseconds: 1e3 } }; var casualMatrix = { years: { quarters: 4, months: 12, weeks: 52, days: 365, hours: 365 * 24, minutes: 365 * 24 * 60, seconds: 365 * 24 * 60 * 60, milliseconds: 365 * 24 * 60 * 60 * 1e3 }, quarters: { months: 3, weeks: 13, days: 91, hours: 91 * 24, minutes: 91 * 24 * 60, seconds: 91 * 24 * 60 * 60, milliseconds: 91 * 24 * 60 * 60 * 1e3 }, months: { weeks: 4, days: 30, hours: 30 * 24, minutes: 30 * 24 * 60, seconds: 30 * 24 * 60 * 60, milliseconds: 30 * 24 * 60 * 60 * 1e3 }, ...lowOrderMatrix }; var daysInYearAccurate = 146097 / 400; var daysInMonthAccurate = 146097 / 4800; var accurateMatrix = { years: { quarters: 4, months: 12, weeks: daysInYearAccurate / 7, days: daysInYearAccurate, hours: daysInYearAccurate * 24, minutes: daysInYearAccurate * 24 * 60, seconds: daysInYearAccurate * 24 * 60 * 60, milliseconds: daysInYearAccurate * 24 * 60 * 60 * 1e3 }, quarters: { months: 3, weeks: daysInYearAccurate / 28, days: daysInYearAccurate / 4, hours: daysInYearAccurate * 24 / 4, minutes: daysInYearAccurate * 24 * 60 / 4, seconds: daysInYearAccurate * 24 * 60 * 60 / 4, milliseconds: daysInYearAccurate * 24 * 60 * 60 * 1e3 / 4 }, months: { weeks: daysInMonthAccurate / 7, days: daysInMonthAccurate, hours: daysInMonthAccurate * 24, minutes: daysInMonthAccurate * 24 * 60, seconds: daysInMonthAccurate * 24 * 60 * 60, milliseconds: daysInMonthAccurate * 24 * 60 * 60 * 1e3 }, ...lowOrderMatrix }; var orderedUnits$1 = ["years", "quarters", "months", "weeks", "days", "hours", "minutes", "seconds", "milliseconds"]; var reverseUnits = orderedUnits$1.slice(0).reverse(); function clone$1(dur, alts, clear = false) { const conf = { values: clear ? alts.values : { ...dur.values, ...alts.values || {} }, loc: dur.loc.clone(alts.loc), conversionAccuracy: alts.conversionAccuracy || dur.conversionAccuracy, matrix: alts.matrix || dur.matrix }; return new Duration(conf); } __name(clone$1, "clone$1"); function durationToMillis(matrix, vals) { var _vals$milliseconds; let sum = (_vals$milliseconds = vals.milliseconds) != null ? _vals$milliseconds : 0; for (const unit of reverseUnits.slice(1)) { if (vals[unit]) { sum += vals[unit] * matrix[unit]["milliseconds"]; } } return sum; } __name(durationToMillis, "durationToMillis"); function normalizeValues(matrix, vals) { const factor = durationToMillis(matrix, vals) < 0 ? -1 : 1; orderedUnits$1.reduceRight((previous, current) => { if (!isUndefined(vals[current])) { if (previous) { const previousVal = vals[previous] * factor; const conv = matrix[current][previous]; const rollUp = Math.floor(previousVal / conv); vals[current] += rollUp * factor; vals[previous] -= rollUp * conv * factor; } return current; } else { return previous; } }, null); orderedUnits$1.reduce((previous, current) => { if (!isUndefined(vals[current])) { if (previous) { const fraction = vals[previous] % 1; vals[previous] -= fraction; vals[current] += fraction * matrix[previous][current]; } return current; } else { return previous; } }, null); } __name(normalizeValues, "normalizeValues"); function removeZeroes(vals) { const newVals = {}; for (const [key, value] of Object.entries(vals)) { if (value !== 0) { newVals[key] = value; } } return newVals; } __name(removeZeroes, "removeZeroes"); var Duration = class _Duration { static { __name(this, "Duration"); } /** * @private */ constructor(config) { const accurate = config.conversionAccuracy === "longterm" || false; let matrix = accurate ? accurateMatrix : casualMatrix; if (config.matrix) { matrix = config.matrix; } this.values = config.values; this.loc = config.loc || Locale.create(); this.conversionAccuracy = accurate ? "longterm" : "casual"; this.invalid = config.invalid || null; this.matrix = matrix; this.isLuxonDuration = true; } /** * Create Duration from a number of milliseconds. * @param {number} count of milliseconds * @param {Object} opts - options for parsing * @param {string} [opts.locale='en-US'] - the locale to use * @param {string} opts.numberingSystem - the numbering system to use * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use * @return {Duration} */ static fromMillis(count, opts) { return _Duration.fromObject({ milliseconds: count }, opts); } /** * Create a Duration from a JavaScript object with keys like 'years' and 'hours'. * If this object is empty then a zero milliseconds duration is returned. * @param {Object} obj - the object to create the DateTime from * @param {number} obj.years * @param {number} obj.quarters * @param {number} obj.months * @param {number} obj.weeks * @param {number} obj.days * @param {number} obj.hours * @param {number} obj.minutes * @param {number} obj.seconds * @param {number} obj.milliseconds * @param {Object} [opts=[]] - options for creating this Duration * @param {string} [opts.locale='en-US'] - the locale to use * @param {string} opts.numberingSystem - the numbering system to use * @param {string} [opts.conversionAccuracy='casual'] - the preset conversion system to use * @param {string} [opts.matrix=Object] - the custom conversion system to use * @return {Duration} */ static fromObject(obj2, opts = {}) { if (obj2 == null || typeof obj2 !== "object") { throw new InvalidArgumentError(`Duration.fromObject: argument expected to be an object, got ${obj2 === null ? "null" : typeof obj2}`); } return new _Duration({ values: normalizeObject(obj2, _Duration.normalizeUnit), loc: Locale.fromObject(opts), conversionAccuracy: opts.conversionAccuracy, matrix: opts.matrix }); } /** * Create a Duration from DurationLike. * * @param {Object | number | Duration} durationLike * One of: * - object with keys like 'years' and 'hours'. * - number representing milliseconds * - Duration instance * @return {Duration} */ static fromDurationLike(durationLike) { if (isNumber(durationLike)) { return _Duration.fromMillis(durationLike); } else if (_Duration.isDuration(durationLike)) { return durationLike; } else if (typeof durationLike === "object") { return _Duration.fromObject(durationLike); } else { throw new InvalidArgumentError(`Unknown duration argument ${durationLike} of type ${typeof durationLike}`); } } /** * Create a Duration from an ISO 8601 duration string. * @param {string} text - text to parse * @param {Object} opts - options for parsing * @param {string} [opts.locale='en-US'] - the locale to use * @param {string} opts.numberingSystem - the numbering system to use * @param {string} [opts.conversionAccuracy='casual'] - the preset conversion system to use * @param {string} [opts.matrix=Object] - the preset conversion system to use * @see https://en.wikipedia.org/wiki/ISO_8601#Durations * @example Duration.fromISO('P3Y6M1W4DT12H30M5S').toObject() //=> { years: 3, months: 6, weeks: 1, days: 4, hours: 12, minutes: 30, seconds: 5 } * @example Duration.fromISO('PT23H').toObject() //=> { hours: 23 } * @example Duration.fromISO('P5Y3M').toObject() //=> { years: 5, months: 3 } * @return {Duration} */ static fromISO(text, opts) { const [parsed] = parseISODuration(text); if (parsed) { return _Duration.fromObject(parsed, opts); } else { return _Duration.invalid("unparsable", `the input "${text}" can't be parsed as ISO 8601`); } } /** * Create a Duration from an ISO 8601 time string. * @param {string} text - text to parse * @param {Object} opts - options for parsing * @param {string} [opts.locale='en-US'] - the locale to use * @param {string} opts.numberingSystem - the numbering system to use * @param {string} [opts.conversionAccuracy='casual'] - the preset conversion system to use * @param {string} [opts.matrix=Object] - the conversion system to use * @see https://en.wikipedia.org/wiki/ISO_8601#Times * @example Duration.fromISOTime('11:22:33.444').toObject() //=> { hours: 11, minutes: 22, seconds: 33, milliseconds: 444 } * @example Duration.fromISOTime('11:00').toObject() //=> { hours: 11, minutes: 0, seconds: 0 } * @example Duration.fromISOTime('T11:00').toObject() //=> { hours: 11, minutes: 0, seconds: 0 } * @example Duration.fromISOTime('1100').toObject() //=> { hours: 11, minutes: 0, seconds: 0 } * @example Duration.fromISOTime('T1100').toObject() //=> { hours: 11, minutes: 0, seconds: 0 } * @return {Duration} */ static fromISOTime(text, opts) { const [parsed] = parseISOTimeOnly(text); if (parsed) { return _Duration.fromObject(parsed, opts); } else { return _Duration.invalid("unparsable", `the input "${text}" can't be parsed as ISO 8601`); } } /** * Create an invalid Duration. * @param {string} reason - simple string of why this datetime is invalid. Should not contain parameters or anything else data-dependent * @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information * @return {Duration} */ static invalid(reason, explanation = null) { if (!reason) { throw new InvalidArgumentError("need to specify a reason the Duration is invalid"); } const invalid = reason instanceof Invalid ? reason : new Invalid(reason, explanation); if (Settings.throwOnInvalid) { throw new InvalidDurationError(invalid); } else { return new _Duration({ invalid }); } } /** * @private */ static normalizeUnit(unit) { const normalized = { year: "years", years: "years", quarter: "quarters", quarters: "quarters", month: "months", months: "months", week: "weeks", weeks: "weeks", day: "days", days: "days", hour: "hours", hours: "hours", minute: "minutes", minutes: "minutes", second: "seconds", seconds: "seconds", millisecond: "milliseconds", milliseconds: "milliseconds" }[unit ? unit.toLowerCase() : unit]; if (!normalized) throw new InvalidUnitError(unit); return normalized; } /** * Check if an object is a Duration. Works across context boundaries * @param {object} o * @return {boolean} */ static isDuration(o) { return o && o.isLuxonDuration || false; } /** * Get the locale of a Duration, such 'en-GB' * @type {string} */ get locale() { return this.isValid ? this.loc.locale : null; } /** * Get the numbering system of a Duration, such 'beng'. The numbering system is used when formatting the Duration * * @type {string} */ get numberingSystem() { return this.isValid ? this.loc.numberingSystem : null; } /** * Returns a string representation of this Duration formatted according to the specified format string. You may use these tokens: * * `S` for milliseconds * * `s` for seconds * * `m` for minutes * * `h` for hours * * `d` for days * * `w` for weeks * * `M` for months * * `y` for years * Notes: * * Add padding by repeating the token, e.g. "yy" pads the years to two digits, "hhhh" pads the hours out to four digits * * Tokens can be escaped by wrapping with single quotes. * * The duration will be converted to the set of units in the format string using {@link Duration#shiftTo} and the Durations's conversion accuracy setting. * @param {string} fmt - the format string * @param {Object} opts - options * @param {boolean} [opts.floor=true] - floor numerical values * @example Duration.fromObject({ years: 1, days: 6, seconds: 2 }).toFormat("y d s") //=> "1 6 2" * @example Duration.fromObject({ years: 1, days: 6, seconds: 2 }).toFormat("yy dd sss") //=> "01 06 002" * @example Duration.fromObject({ years: 1, days: 6, seconds: 2 }).toFormat("M S") //=> "12 518402000" * @return {string} */ toFormat(fmt, opts = {}) { const fmtOpts = { ...opts, floor: opts.round !== false && opts.floor !== false }; return this.isValid ? Formatter.create(this.loc, fmtOpts).formatDurationFromString(this, fmt) : INVALID$2; } /** * Returns a string representation of a Duration with all units included. * To modify its behavior, use `listStyle` and any Intl.NumberFormat option, though `unitDisplay` is especially relevant. * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/NumberFormat#options * @param {Object} opts - Formatting options. Accepts the same keys as the options parameter of the native `Intl.NumberFormat` constructor, as well as `listStyle`. * @param {string} [opts.listStyle='narrow'] - How to format the merged list. Corresponds to the `style` property of the options parameter of the native `Intl.ListFormat` constructor. * @example * ```js * var dur = Duration.fromObject({ days: 1, hours: 5, minutes: 6 }) * dur.toHuman() //=> '1 day, 5 hours, 6 minutes' * dur.toHuman({ listStyle: "long" }) //=> '1 day, 5 hours, and 6 minutes' * dur.toHuman({ unitDisplay: "short" }) //=> '1 day, 5 hr, 6 min' * ``` */ toHuman(opts = {}) { if (!this.isValid) return INVALID$2; const l3 = orderedUnits$1.map((unit) => { const val = this.values[unit]; if (isUndefined(val)) { return null; } return this.loc.numberFormatter({ style: "unit", unitDisplay: "long", ...opts, unit: unit.slice(0, -1) }).format(val); }).filter((n2) => n2); return this.loc.listFormatter({ type: "conjunction", style: opts.listStyle || "narrow", ...opts }).format(l3); } /** * Returns a JavaScript object with this Duration's values. * @example Duration.fromObject({ years: 1, days: 6, seconds: 2 }).toObject() //=> { years: 1, days: 6, seconds: 2 } * @return {Object} */ toObject() { if (!this.isValid) return {}; return { ...this.values }; } /** * Returns an ISO 8601-compliant string representation of this Duration. * @see https://en.wikipedia.org/wiki/ISO_8601#Durations * @example Duration.fromObject({ years: 3, seconds: 45 }).toISO() //=> 'P3YT45S' * @example Duration.fromObject({ months: 4, seconds: 45 }).toISO() //=> 'P4MT45S' * @example Duration.fromObject({ months: 5 }).toISO() //=> 'P5M' * @example Duration.fromObject({ minutes: 5 }).toISO() //=> 'PT5M' * @example Duration.fromObject({ milliseconds: 6 }).toISO() //=> 'PT0.006S' * @return {string} */ toISO() { if (!this.isValid) return null; let s2 = "P"; if (this.years !== 0) s2 += this.years + "Y"; if (this.months !== 0 || this.quarters !== 0) s2 += this.months + this.quarters * 3 + "M"; if (this.weeks !== 0) s2 += this.weeks + "W"; if (this.days !== 0) s2 += this.days + "D"; if (this.hours !== 0 || this.minutes !== 0 || this.seconds !== 0 || this.milliseconds !== 0) s2 += "T"; if (this.hours !== 0) s2 += this.hours + "H"; if (this.minutes !== 0) s2 += this.minutes + "M"; if (this.seconds !== 0 || this.milliseconds !== 0) s2 += roundTo(this.seconds + this.milliseconds / 1e3, 3) + "S"; if (s2 === "P") s2 += "T0S"; return s2; } /** * Returns an ISO 8601-compliant string representation of this Duration, formatted as a time of day. * Note that this will return null if the duration is invalid, negative, or equal to or greater than 24 hours. * @see https://en.wikipedia.org/wiki/ISO_8601#Times * @param {Object} opts - options * @param {boolean} [opts.suppressMilliseconds=false] - exclude milliseconds from the format if they're 0 * @param {boolean} [opts.suppressSeconds=false] - exclude seconds from the format if they're 0 * @param {boolean} [opts.includePrefix=false] - include the `T` prefix * @param {string} [opts.format='extended'] - choose between the basic and extended format * @example Duration.fromObject({ hours: 11 }).toISOTime() //=> '11:00:00.000' * @example Duration.fromObject({ hours: 11 }).toISOTime({ suppressMilliseconds: true }) //=> '11:00:00' * @example Duration.fromObject({ hours: 11 }).toISOTime({ suppressSeconds: true }) //=> '11:00' * @example Duration.fromObject({ hours: 11 }).toISOTime({ includePrefix: true }) //=> 'T11:00:00.000' * @example Duration.fromObject({ hours: 11 }).toISOTime({ format: 'basic' }) //=> '110000.000' * @return {string} */ toISOTime(opts = {}) { if (!this.isValid) return null; const millis = this.toMillis(); if (millis < 0 || millis >= 864e5) return null; opts = { suppressMilliseconds: false, suppressSeconds: false, includePrefix: false, format: "extended", ...opts, includeOffset: false }; const dateTime = DateTime.fromMillis(millis, { zone: "UTC" }); return dateTime.toISOTime(opts); } /** * Returns an ISO 8601 representation of this Duration appropriate for use in JSON. * @return {string} */ toJSON() { return this.toISO(); } /** * Returns an ISO 8601 representation of this Duration appropriate for use in debugging. * @return {string} */ toString() { return this.toISO(); } /** * Returns a string representation of this Duration appropriate for the REPL. * @return {string} */ [Symbol.for("nodejs.util.inspect.custom")]() { if (this.isValid) { return `Duration { values: ${JSON.stringify(this.values)} }`; } else { return `Duration { Invalid, reason: ${this.invalidReason} }`; } } /** * Returns an milliseconds value of this Duration. * @return {number} */ toMillis() { if (!this.isValid) return NaN; return durationToMillis(this.matrix, this.values); } /** * Returns an milliseconds value of this Duration. Alias of {@link toMillis} * @return {number} */ valueOf() { return this.toMillis(); } /** * Make this Duration longer by the specified amount. Return a newly-constructed Duration. * @param {Duration|Object|number} duration - The amount to add. Either a Luxon Duration, a number of milliseconds, the object argument to Duration.fromObject() * @return {Duration} */ plus(duration) { if (!this.isValid) return this; const dur = _Duration.fromDurationLike(duration), result = {}; for (const k of orderedUnits$1) { if (hasOwnProperty(dur.values, k) || hasOwnProperty(this.values, k)) { result[k] = dur.get(k) + this.get(k); } } return clone$1(this, { values: result }, true); } /** * Make this Duration shorter by the specified amount. Return a newly-constructed Duration. * @param {Duration|Object|number} duration - The amount to subtract. Either a Luxon Duration, a number of milliseconds, the object argument to Duration.fromObject() * @return {Duration} */ minus(duration) { if (!this.isValid) return this; const dur = _Duration.fromDurationLike(duration); return this.plus(dur.negate()); } /** * Scale this Duration by the specified amount. Return a newly-constructed Duration. * @param {function} fn - The function to apply to each unit. Arity is 1 or 2: the value of the unit and, optionally, the unit name. Must return a number. * @example Duration.fromObject({ hours: 1, minutes: 30 }).mapUnits(x => x * 2) //=> { hours: 2, minutes: 60 } * @example Duration.fromObject({ hours: 1, minutes: 30 }).mapUnits((x, u) => u === "hours" ? x * 2 : x) //=> { hours: 2, minutes: 30 } * @return {Duration} */ mapUnits(fn) { if (!this.isValid) return this; const result = {}; for (const k of Object.keys(this.values)) { result[k] = asNumber(fn(this.values[k], k)); } return clone$1(this, { values: result }, true); } /** * Get the value of unit. * @param {string} unit - a unit such as 'minute' or 'day' * @example Duration.fromObject({years: 2, days: 3}).get('years') //=> 2 * @example Duration.fromObject({years: 2, days: 3}).get('months') //=> 0 * @example Duration.fromObject({years: 2, days: 3}).get('days') //=> 3 * @return {number} */ get(unit) { return this[_Duration.normalizeUnit(unit)]; } /** * "Set" the values of specified units. Return a newly-constructed Duration. * @param {Object} values - a mapping of units to numbers * @example dur.set({ years: 2017 }) * @example dur.set({ hours: 8, minutes: 30 }) * @return {Duration} */ set(values) { if (!this.isValid) return this; const mixed = { ...this.values, ...normalizeObject(values, _Duration.normalizeUnit) }; return clone$1(this, { values: mixed }); } /** * "Set" the locale and/or numberingSystem. Returns a newly-constructed Duration. * @example dur.reconfigure({ locale: 'en-GB' }) * @return {Duration} */ reconfigure({ locale, numberingSystem, conversionAccuracy, matrix } = {}) { const loc = this.loc.clone({ locale, numberingSystem }); const opts = { loc, matrix, conversionAccuracy }; return clone$1(this, opts); } /** * Return the length of the duration in the specified unit. * @param {string} unit - a unit such as 'minutes' or 'days' * @example Duration.fromObject({years: 1}).as('days') //=> 365 * @example Duration.fromObject({years: 1}).as('months') //=> 12 * @example Duration.fromObject({hours: 60}).as('days') //=> 2.5 * @return {number} */ as(unit) { return this.isValid ? this.shiftTo(unit).get(unit) : NaN; } /** * Reduce this Duration to its canonical representation in its current units. * Assuming the overall value of the Duration is positive, this means: * - excessive values for lower-order units are converted to higher-order units (if possible, see first and second example) * - negative lower-order units are converted to higher order units (there must be such a higher order unit, otherwise * the overall value would be negative, see third example) * - fractional values for higher-order units are converted to lower-order units (if possible, see fourth example) * * If the overall value is negative, the result of this method is equivalent to `this.negate().normalize().negate()`. * @example Duration.fromObject({ years: 2, days: 5000 }).normalize().toObject() //=> { years: 15, days: 255 } * @example Duration.fromObject({ days: 5000 }).normalize().toObject() //=> { days: 5000 } * @example Duration.fromObject({ hours: 12, minutes: -45 }).normalize().toObject() //=> { hours: 11, minutes: 15 } * @example Duration.fromObject({ years: 2.5, days: 0, hours: 0 }).normalize().toObject() //=> { years: 2, days: 182, hours: 12 } * @return {Duration} */ normalize() { if (!this.isValid) return this; const vals = this.toObject(); normalizeValues(this.matrix, vals); return clone$1(this, { values: vals }, true); } /** * Rescale units to its largest representation * @example Duration.fromObject({ milliseconds: 90000 }).rescale().toObject() //=> { minutes: 1, seconds: 30 } * @return {Duration} */ rescale() { if (!this.isValid) return this; const vals = removeZeroes(this.normalize().shiftToAll().toObject()); return clone$1(this, { values: vals }, true); } /** * Convert this Duration into its representation in a different set of units. * @example Duration.fromObject({ hours: 1, seconds: 30 }).shiftTo('minutes', 'milliseconds').toObject() //=> { minutes: 60, milliseconds: 30000 } * @return {Duration} */ shiftTo(...units) { if (!this.isValid) return this; if (units.length === 0) { return this; } units = units.map((u) => _Duration.normalizeUnit(u)); const built = {}, accumulated = {}, vals = this.toObject(); let lastUnit; for (const k of orderedUnits$1) { if (units.indexOf(k) >= 0) { lastUnit = k; let own = 0; for (const ak in accumulated) { own += this.matrix[ak][k] * accumulated[ak]; accumulated[ak] = 0; } if (isNumber(vals[k])) { own += vals[k]; } const i = Math.trunc(own); built[k] = i; accumulated[k] = (own * 1e3 - i * 1e3) / 1e3; } else if (isNumber(vals[k])) { accumulated[k] = vals[k]; } } for (const key in accumulated) { if (accumulated[key] !== 0) { built[lastUnit] += key === lastUnit ? accumulated[key] : accumulated[key] / this.matrix[lastUnit][key]; } } normalizeValues(this.matrix, built); return clone$1(this, { values: built }, true); } /** * Shift this Duration to all available units. * Same as shiftTo("years", "months", "weeks", "days", "hours", "minutes", "seconds", "milliseconds") * @return {Duration} */ shiftToAll() { if (!this.isValid) return this; return this.shiftTo("years", "months", "weeks", "days", "hours", "minutes", "seconds", "milliseconds"); } /** * Return the negative of this Duration. * @example Duration.fromObject({ hours: 1, seconds: 30 }).negate().toObject() //=> { hours: -1, seconds: -30 } * @return {Duration} */ negate() { if (!this.isValid) return this; const negated = {}; for (const k of Object.keys(this.values)) { negated[k] = this.values[k] === 0 ? 0 : -this.values[k]; } return clone$1(this, { values: negated }, true); } /** * Get the years. * @type {number} */ get years() { return this.isValid ? this.values.years || 0 : NaN; } /** * Get the quarters. * @type {number} */ get quarters() { return this.isValid ? this.values.quarters || 0 : NaN; } /** * Get the months. * @type {number} */ get months() { return this.isValid ? this.values.months || 0 : NaN; } /** * Get the weeks * @type {number} */ get weeks() { return this.isValid ? this.values.weeks || 0 : NaN; } /** * Get the days. * @type {number} */ get days() { return this.isValid ? this.values.days || 0 : NaN; } /** * Get the hours. * @type {number} */ get hours() { return this.isValid ? this.values.hours || 0 : NaN; } /** * Get the minutes. * @type {number} */ get minutes() { return this.isValid ? this.values.minutes || 0 : NaN; } /** * Get the seconds. * @return {number} */ get seconds() { return this.isValid ? this.values.seconds || 0 : NaN; } /** * Get the milliseconds. * @return {number} */ get milliseconds() { return this.isValid ? this.values.milliseconds || 0 : NaN; } /** * Returns whether the Duration is invalid. Invalid durations are returned by diff operations * on invalid DateTimes or Intervals. * @return {boolean} */ get isValid() { return this.invalid === null; } /** * Returns an error code if this Duration became invalid, or null if the Duration is valid * @return {string} */ get invalidReason() { return this.invalid ? this.invalid.reason : null; } /** * Returns an explanation of why this Duration became invalid, or null if the Duration is valid * @type {string} */ get invalidExplanation() { return this.invalid ? this.invalid.explanation : null; } /** * Equality check * Two Durations are equal iff they have the same units and the same values for each unit. * @param {Duration} other * @return {boolean} */ equals(other) { if (!this.isValid || !other.isValid) { return false; } if (!this.loc.equals(other.loc)) { return false; } function eq(v12, v2) { if (v12 === void 0 || v12 === 0) return v2 === void 0 || v2 === 0; return v12 === v2; } __name(eq, "eq"); for (const u of orderedUnits$1) { if (!eq(this.values[u], other.values[u])) { return false; } } return true; } }; var INVALID$1 = "Invalid Interval"; function validateStartEnd(start, end) { if (!start || !start.isValid) { return Interval.invalid("missing or invalid start"); } else if (!end || !end.isValid) { return Interval.invalid("missing or invalid end"); } else if (end < start) { return Interval.invalid("end before start", `The end of an interval must be after its start, but you had start=${start.toISO()} and end=${end.toISO()}`); } else { return null; } } __name(validateStartEnd, "validateStartEnd"); var Interval = class _Interval { static { __name(this, "Interval"); } /** * @private */ constructor(config) { this.s = config.start; this.e = config.end; this.invalid = config.invalid || null; this.isLuxonInterval = true; } /** * Create an invalid Interval. * @param {string} reason - simple string of why this Interval is invalid. Should not contain parameters or anything else data-dependent * @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information * @return {Interval} */ static invalid(reason, explanation = null) { if (!reason) { throw new InvalidArgumentError("need to specify a reason the Interval is invalid"); } const invalid = reason instanceof Invalid ? reason : new Invalid(reason, explanation); if (Settings.throwOnInvalid) { throw new InvalidIntervalError(invalid); } else { return new _Interval({ invalid }); } } /** * Create an Interval from a start DateTime and an end DateTime. Inclusive of the start but not the end. * @param {DateTime|Date|Object} start * @param {DateTime|Date|Object} end * @return {Interval} */ static fromDateTimes(start, end) { const builtStart = friendlyDateTime(start), builtEnd = friendlyDateTime(end); const validateError = validateStartEnd(builtStart, builtEnd); if (validateError == null) { return new _Interval({ start: builtStart, end: builtEnd }); } else { return validateError; } } /** * Create an Interval from a start DateTime and a Duration to extend to. * @param {DateTime|Date|Object} start * @param {Duration|Object|number} duration - the length of the Interval. * @return {Interval} */ static after(start, duration) { const dur = Duration.fromDurationLike(duration), dt = friendlyDateTime(start); return _Interval.fromDateTimes(dt, dt.plus(dur)); } /** * Create an Interval from an end DateTime and a Duration to extend backwards to. * @param {DateTime|Date|Object} end * @param {Duration|Object|number} duration - the length of the Interval. * @return {Interval} */ static before(end, duration) { const dur = Duration.fromDurationLike(duration), dt = friendlyDateTime(end); return _Interval.fromDateTimes(dt.minus(dur), dt); } /** * Create an Interval from an ISO 8601 string. * Accepts `/`, `/`, and `/` formats. * @param {string} text - the ISO string to parse * @param {Object} [opts] - options to pass {@link DateTime#fromISO} and optionally {@link Duration#fromISO} * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals * @return {Interval} */ static fromISO(text, opts) { const [s2, e] = (text || "").split("/", 2); if (s2 && e) { let start, startIsValid; try { start = DateTime.fromISO(s2, opts); startIsValid = start.isValid; } catch (e2) { startIsValid = false; } let end, endIsValid; try { end = DateTime.fromISO(e, opts); endIsValid = end.isValid; } catch (e2) { endIsValid = false; } if (startIsValid && endIsValid) { return _Interval.fromDateTimes(start, end); } if (startIsValid) { const dur = Duration.fromISO(e, opts); if (dur.isValid) { return _Interval.after(start, dur); } } else if (endIsValid) { const dur = Duration.fromISO(s2, opts); if (dur.isValid) { return _Interval.before(end, dur); } } } return _Interval.invalid("unparsable", `the input "${text}" can't be parsed as ISO 8601`); } /** * Check if an object is an Interval. Works across context boundaries * @param {object} o * @return {boolean} */ static isInterval(o) { return o && o.isLuxonInterval || false; } /** * Returns the start of the Interval * @type {DateTime} */ get start() { return this.isValid ? this.s : null; } /** * Returns the end of the Interval * @type {DateTime} */ get end() { return this.isValid ? this.e : null; } /** * Returns whether this Interval's end is at least its start, meaning that the Interval isn't 'backwards'. * @type {boolean} */ get isValid() { return this.invalidReason === null; } /** * Returns an error code if this Interval is invalid, or null if the Interval is valid * @type {string} */ get invalidReason() { return this.invalid ? this.invalid.reason : null; } /** * Returns an explanation of why this Interval became invalid, or null if the Interval is valid * @type {string} */ get invalidExplanation() { return this.invalid ? this.invalid.explanation : null; } /** * Returns the length of the Interval in the specified unit. * @param {string} unit - the unit (such as 'hours' or 'days') to return the length in. * @return {number} */ length(unit = "milliseconds") { return this.isValid ? this.toDuration(...[unit]).get(unit) : NaN; } /** * Returns the count of minutes, hours, days, months, or years included in the Interval, even in part. * Unlike {@link Interval#length} this counts sections of the calendar, not periods of time, e.g. specifying 'day' * asks 'what dates are included in this interval?', not 'how many days long is this interval?' * @param {string} [unit='milliseconds'] - the unit of time to count. * @param {Object} opts - options * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week; this operation will always use the locale of the start DateTime * @return {number} */ count(unit = "milliseconds", opts) { if (!this.isValid) return NaN; const start = this.start.startOf(unit, opts); let end; if (opts != null && opts.useLocaleWeeks) { end = this.end.reconfigure({ locale: start.locale }); } else { end = this.end; } end = end.startOf(unit, opts); return Math.floor(end.diff(start, unit).get(unit)) + (end.valueOf() !== this.end.valueOf()); } /** * Returns whether this Interval's start and end are both in the same unit of time * @param {string} unit - the unit of time to check sameness on * @return {boolean} */ hasSame(unit) { return this.isValid ? this.isEmpty() || this.e.minus(1).hasSame(this.s, unit) : false; } /** * Return whether this Interval has the same start and end DateTimes. * @return {boolean} */ isEmpty() { return this.s.valueOf() === this.e.valueOf(); } /** * Return whether this Interval's start is after the specified DateTime. * @param {DateTime} dateTime * @return {boolean} */ isAfter(dateTime) { if (!this.isValid) return false; return this.s > dateTime; } /** * Return whether this Interval's end is before the specified DateTime. * @param {DateTime} dateTime * @return {boolean} */ isBefore(dateTime) { if (!this.isValid) return false; return this.e <= dateTime; } /** * Return whether this Interval contains the specified DateTime. * @param {DateTime} dateTime * @return {boolean} */ contains(dateTime) { if (!this.isValid) return false; return this.s <= dateTime && this.e > dateTime; } /** * "Sets" the start and/or end dates. Returns a newly-constructed Interval. * @param {Object} values - the values to set * @param {DateTime} values.start - the starting DateTime * @param {DateTime} values.end - the ending DateTime * @return {Interval} */ set({ start, end } = {}) { if (!this.isValid) return this; return _Interval.fromDateTimes(start || this.s, end || this.e); } /** * Split this Interval at each of the specified DateTimes * @param {...DateTime} dateTimes - the unit of time to count. * @return {Array} */ splitAt(...dateTimes) { if (!this.isValid) return []; const sorted = dateTimes.map(friendlyDateTime).filter((d) => this.contains(d)).sort((a, b) => a.toMillis() - b.toMillis()), results = []; let { s: s2 } = this, i = 0; while (s2 < this.e) { const added = sorted[i] || this.e, next = +added > +this.e ? this.e : added; results.push(_Interval.fromDateTimes(s2, next)); s2 = next; i += 1; } return results; } /** * Split this Interval into smaller Intervals, each of the specified length. * Left over time is grouped into a smaller interval * @param {Duration|Object|number} duration - The length of each resulting interval. * @return {Array} */ splitBy(duration) { const dur = Duration.fromDurationLike(duration); if (!this.isValid || !dur.isValid || dur.as("milliseconds") === 0) { return []; } let { s: s2 } = this, idx = 1, next; const results = []; while (s2 < this.e) { const added = this.start.plus(dur.mapUnits((x) => x * idx)); next = +added > +this.e ? this.e : added; results.push(_Interval.fromDateTimes(s2, next)); s2 = next; idx += 1; } return results; } /** * Split this Interval into the specified number of smaller intervals. * @param {number} numberOfParts - The number of Intervals to divide the Interval into. * @return {Array} */ divideEqually(numberOfParts) { if (!this.isValid) return []; return this.splitBy(this.length() / numberOfParts).slice(0, numberOfParts); } /** * Return whether this Interval overlaps with the specified Interval * @param {Interval} other * @return {boolean} */ overlaps(other) { return this.e > other.s && this.s < other.e; } /** * Return whether this Interval's end is adjacent to the specified Interval's start. * @param {Interval} other * @return {boolean} */ abutsStart(other) { if (!this.isValid) return false; return +this.e === +other.s; } /** * Return whether this Interval's start is adjacent to the specified Interval's end. * @param {Interval} other * @return {boolean} */ abutsEnd(other) { if (!this.isValid) return false; return +other.e === +this.s; } /** * Returns true if this Interval fully contains the specified Interval, specifically if the intersect (of this Interval and the other Interval) is equal to the other Interval; false otherwise. * @param {Interval} other * @return {boolean} */ engulfs(other) { if (!this.isValid) return false; return this.s <= other.s && this.e >= other.e; } /** * Return whether this Interval has the same start and end as the specified Interval. * @param {Interval} other * @return {boolean} */ equals(other) { if (!this.isValid || !other.isValid) { return false; } return this.s.equals(other.s) && this.e.equals(other.e); } /** * Return an Interval representing the intersection of this Interval and the specified Interval. * Specifically, the resulting Interval has the maximum start time and the minimum end time of the two Intervals. * Returns null if the intersection is empty, meaning, the intervals don't intersect. * @param {Interval} other * @return {Interval} */ intersection(other) { if (!this.isValid) return this; const s2 = this.s > other.s ? this.s : other.s, e = this.e < other.e ? this.e : other.e; if (s2 >= e) { return null; } else { return _Interval.fromDateTimes(s2, e); } } /** * Return an Interval representing the union of this Interval and the specified Interval. * Specifically, the resulting Interval has the minimum start time and the maximum end time of the two Intervals. * @param {Interval} other * @return {Interval} */ union(other) { if (!this.isValid) return this; const s2 = this.s < other.s ? this.s : other.s, e = this.e > other.e ? this.e : other.e; return _Interval.fromDateTimes(s2, e); } /** * Merge an array of Intervals into a equivalent minimal set of Intervals. * Combines overlapping and adjacent Intervals. * @param {Array} intervals * @return {Array} */ static merge(intervals) { const [found, final] = intervals.sort((a, b) => a.s - b.s).reduce(([sofar, current], item) => { if (!current) { return [sofar, item]; } else if (current.overlaps(item) || current.abutsStart(item)) { return [sofar, current.union(item)]; } else { return [sofar.concat([current]), item]; } }, [[], null]); if (final) { found.push(final); } return found; } /** * Return an array of Intervals representing the spans of time that only appear in one of the specified Intervals. * @param {Array} intervals * @return {Array} */ static xor(intervals) { let start = null, currentCount = 0; const results = [], ends = intervals.map((i) => [{ time: i.s, type: "s" }, { time: i.e, type: "e" }]), flattened = Array.prototype.concat(...ends), arr = flattened.sort((a, b) => a.time - b.time); for (const i of arr) { currentCount += i.type === "s" ? 1 : -1; if (currentCount === 1) { start = i.time; } else { if (start && +start !== +i.time) { results.push(_Interval.fromDateTimes(start, i.time)); } start = null; } } return _Interval.merge(results); } /** * Return an Interval representing the span of time in this Interval that doesn't overlap with any of the specified Intervals. * @param {...Interval} intervals * @return {Array} */ difference(...intervals) { return _Interval.xor([this].concat(intervals)).map((i) => this.intersection(i)).filter((i) => i && !i.isEmpty()); } /** * Returns a string representation of this Interval appropriate for debugging. * @return {string} */ toString() { if (!this.isValid) return INVALID$1; return `[${this.s.toISO()} \u2013 ${this.e.toISO()})`; } /** * Returns a string representation of this Interval appropriate for the REPL. * @return {string} */ [Symbol.for("nodejs.util.inspect.custom")]() { if (this.isValid) { return `Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`; } else { return `Interval { Invalid, reason: ${this.invalidReason} }`; } } /** * Returns a localized string representing this Interval. Accepts the same options as the * Intl.DateTimeFormat constructor and any presets defined by Luxon, such as * {@link DateTime.DATE_FULL} or {@link DateTime.TIME_SIMPLE}. The exact behavior of this method * is browser-specific, but in general it will return an appropriate representation of the * Interval in the assigned locale. Defaults to the system's locale if no locale has been * specified. * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat * @param {Object} [formatOpts=DateTime.DATE_SHORT] - Either a DateTime preset or * Intl.DateTimeFormat constructor options. * @param {Object} opts - Options to override the configuration of the start DateTime. * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(); //=> 11/7/2022 – 11/8/2022 * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(DateTime.DATE_FULL); //=> November 7 – 8, 2022 * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(DateTime.DATE_FULL, { locale: 'fr-FR' }); //=> 7–8 novembre 2022 * @example Interval.fromISO('2022-11-07T17:00Z/2022-11-07T19:00Z').toLocaleString(DateTime.TIME_SIMPLE); //=> 6:00 – 8:00 PM * @example Interval.fromISO('2022-11-07T17:00Z/2022-11-07T19:00Z').toLocaleString({ weekday: 'short', month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' }); //=> Mon, Nov 07, 6:00 – 8:00 p * @return {string} */ toLocaleString(formatOpts = DATE_SHORT, opts = {}) { return this.isValid ? Formatter.create(this.s.loc.clone(opts), formatOpts).formatInterval(this) : INVALID$1; } /** * Returns an ISO 8601-compliant string representation of this Interval. * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals * @param {Object} opts - The same options as {@link DateTime#toISO} * @return {string} */ toISO(opts) { if (!this.isValid) return INVALID$1; return `${this.s.toISO(opts)}/${this.e.toISO(opts)}`; } /** * Returns an ISO 8601-compliant string representation of date of this Interval. * The time components are ignored. * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals * @return {string} */ toISODate() { if (!this.isValid) return INVALID$1; return `${this.s.toISODate()}/${this.e.toISODate()}`; } /** * Returns an ISO 8601-compliant string representation of time of this Interval. * The date components are ignored. * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals * @param {Object} opts - The same options as {@link DateTime#toISO} * @return {string} */ toISOTime(opts) { if (!this.isValid) return INVALID$1; return `${this.s.toISOTime(opts)}/${this.e.toISOTime(opts)}`; } /** * Returns a string representation of this Interval formatted according to the specified format * string. **You may not want this.** See {@link Interval#toLocaleString} for a more flexible * formatting tool. * @param {string} dateFormat - The format string. This string formats the start and end time. * See {@link DateTime#toFormat} for details. * @param {Object} opts - Options. * @param {string} [opts.separator = ' – '] - A separator to place between the start and end * representations. * @return {string} */ toFormat(dateFormat, { separator = " \u2013 " } = {}) { if (!this.isValid) return INVALID$1; return `${this.s.toFormat(dateFormat)}${separator}${this.e.toFormat(dateFormat)}`; } /** * Return a Duration representing the time spanned by this interval. * @param {string|string[]} [unit=['milliseconds']] - the unit or units (such as 'hours' or 'days') to include in the duration. * @param {Object} opts - options that affect the creation of the Duration * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use * @example Interval.fromDateTimes(dt1, dt2).toDuration().toObject() //=> { milliseconds: 88489257 } * @example Interval.fromDateTimes(dt1, dt2).toDuration('days').toObject() //=> { days: 1.0241812152777778 } * @example Interval.fromDateTimes(dt1, dt2).toDuration(['hours', 'minutes']).toObject() //=> { hours: 24, minutes: 34.82095 } * @example Interval.fromDateTimes(dt1, dt2).toDuration(['hours', 'minutes', 'seconds']).toObject() //=> { hours: 24, minutes: 34, seconds: 49.257 } * @example Interval.fromDateTimes(dt1, dt2).toDuration('seconds').toObject() //=> { seconds: 88489.257 } * @return {Duration} */ toDuration(unit, opts) { if (!this.isValid) { return Duration.invalid(this.invalidReason); } return this.e.diff(this.s, unit, opts); } /** * Run mapFn on the interval start and end, returning a new Interval from the resulting DateTimes * @param {function} mapFn * @return {Interval} * @example Interval.fromDateTimes(dt1, dt2).mapEndpoints(endpoint => endpoint.toUTC()) * @example Interval.fromDateTimes(dt1, dt2).mapEndpoints(endpoint => endpoint.plus({ hours: 2 })) */ mapEndpoints(mapFn) { return _Interval.fromDateTimes(mapFn(this.s), mapFn(this.e)); } }; var Info = class { static { __name(this, "Info"); } /** * Return whether the specified zone contains a DST. * @param {string|Zone} [zone='local'] - Zone to check. Defaults to the environment's local zone. * @return {boolean} */ static hasDST(zone = Settings.defaultZone) { const proto = DateTime.now().setZone(zone).set({ month: 12 }); return !zone.isUniversal && proto.offset !== proto.set({ month: 6 }).offset; } /** * Return whether the specified zone is a valid IANA specifier. * @param {string} zone - Zone to check * @return {boolean} */ static isValidIANAZone(zone) { return IANAZone.isValidZone(zone); } /** * Converts the input into a {@link Zone} instance. * * * If `input` is already a Zone instance, it is returned unchanged. * * If `input` is a string containing a valid time zone name, a Zone instance * with that name is returned. * * If `input` is a string that doesn't refer to a known time zone, a Zone * instance with {@link Zone#isValid} == false is returned. * * If `input is a number, a Zone instance with the specified fixed offset * in minutes is returned. * * If `input` is `null` or `undefined`, the default zone is returned. * @param {string|Zone|number} [input] - the value to be converted * @return {Zone} */ static normalizeZone(input) { return normalizeZone(input, Settings.defaultZone); } /** * Get the weekday on which the week starts according to the given locale. * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.locObj=null] - an existing locale object to use * @returns {number} the start of the week, 1 for Monday through 7 for Sunday */ static getStartOfWeek({ locale = null, locObj = null } = {}) { return (locObj || Locale.create(locale)).getStartOfWeek(); } /** * Get the minimum number of days necessary in a week before it is considered part of the next year according * to the given locale. * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.locObj=null] - an existing locale object to use * @returns {number} */ static getMinimumDaysInFirstWeek({ locale = null, locObj = null } = {}) { return (locObj || Locale.create(locale)).getMinDaysInFirstWeek(); } /** * Get the weekdays, which are considered the weekend according to the given locale * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.locObj=null] - an existing locale object to use * @returns {number[]} an array of weekdays, 1 for Monday through 7 for Sunday */ static getWeekendWeekdays({ locale = null, locObj = null } = {}) { return (locObj || Locale.create(locale)).getWeekendDays().slice(); } /** * Return an array of standalone month names. * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat * @param {string} [length='long'] - the length of the month representation, such as "numeric", "2-digit", "narrow", "short", "long" * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.numberingSystem=null] - the numbering system * @param {string} [opts.locObj=null] - an existing locale object to use * @param {string} [opts.outputCalendar='gregory'] - the calendar * @example Info.months()[0] //=> 'January' * @example Info.months('short')[0] //=> 'Jan' * @example Info.months('numeric')[0] //=> '1' * @example Info.months('short', { locale: 'fr-CA' } )[0] //=> 'janv.' * @example Info.months('numeric', { locale: 'ar' })[0] //=> '١' * @example Info.months('long', { outputCalendar: 'islamic' })[0] //=> 'Rabiʻ I' * @return {Array} */ static months(length = "long", { locale = null, numberingSystem = null, locObj = null, outputCalendar = "gregory" } = {}) { return (locObj || Locale.create(locale, numberingSystem, outputCalendar)).months(length); } /** * Return an array of format month names. * Format months differ from standalone months in that they're meant to appear next to the day of the month. In some languages, that * changes the string. * See {@link Info#months} * @param {string} [length='long'] - the length of the month representation, such as "numeric", "2-digit", "narrow", "short", "long" * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.numberingSystem=null] - the numbering system * @param {string} [opts.locObj=null] - an existing locale object to use * @param {string} [opts.outputCalendar='gregory'] - the calendar * @return {Array} */ static monthsFormat(length = "long", { locale = null, numberingSystem = null, locObj = null, outputCalendar = "gregory" } = {}) { return (locObj || Locale.create(locale, numberingSystem, outputCalendar)).months(length, true); } /** * Return an array of standalone week names. * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat * @param {string} [length='long'] - the length of the weekday representation, such as "narrow", "short", "long". * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @param {string} [opts.numberingSystem=null] - the numbering system * @param {string} [opts.locObj=null] - an existing locale object to use * @example Info.weekdays()[0] //=> 'Monday' * @example Info.weekdays('short')[0] //=> 'Mon' * @example Info.weekdays('short', { locale: 'fr-CA' })[0] //=> 'lun.' * @example Info.weekdays('short', { locale: 'ar' })[0] //=> 'الاثنين' * @return {Array} */ static weekdays(length = "long", { locale = null, numberingSystem = null, locObj = null } = {}) { return (locObj || Locale.create(locale, numberingSystem, null)).weekdays(length); } /** * Return an array of format week names. * Format weekdays differ from standalone weekdays in that they're meant to appear next to more date information. In some languages, that * changes the string. * See {@link Info#weekdays} * @param {string} [length='long'] - the length of the month representation, such as "narrow", "short", "long". * @param {Object} opts - options * @param {string} [opts.locale=null] - the locale code * @param {string} [opts.numberingSystem=null] - the numbering system * @param {string} [opts.locObj=null] - an existing locale object to use * @return {Array} */ static weekdaysFormat(length = "long", { locale = null, numberingSystem = null, locObj = null } = {}) { return (locObj || Locale.create(locale, numberingSystem, null)).weekdays(length, true); } /** * Return an array of meridiems. * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @example Info.meridiems() //=> [ 'AM', 'PM' ] * @example Info.meridiems({ locale: 'my' }) //=> [ 'နံနက်', 'ညနေ' ] * @return {Array} */ static meridiems({ locale = null } = {}) { return Locale.create(locale).meridiems(); } /** * Return an array of eras, such as ['BC', 'AD']. The locale can be specified, but the calendar system is always Gregorian. * @param {string} [length='short'] - the length of the era representation, such as "short" or "long". * @param {Object} opts - options * @param {string} [opts.locale] - the locale code * @example Info.eras() //=> [ 'BC', 'AD' ] * @example Info.eras('long') //=> [ 'Before Christ', 'Anno Domini' ] * @example Info.eras('long', { locale: 'fr' }) //=> [ 'avant Jésus-Christ', 'après Jésus-Christ' ] * @return {Array} */ static eras(length = "short", { locale = null } = {}) { return Locale.create(locale, null, "gregory").eras(length); } /** * Return the set of available features in this environment. * Some features of Luxon are not available in all environments. For example, on older browsers, relative time formatting support is not available. Use this function to figure out if that's the case. * Keys: * * `relative`: whether this environment supports relative time formatting * * `localeWeek`: whether this environment supports different weekdays for the start of the week based on the locale * @example Info.features() //=> { relative: false, localeWeek: true } * @return {Object} */ static features() { return { relative: hasRelative(), localeWeek: hasLocaleWeekInfo() }; } }; function dayDiff(earlier, later) { const utcDayStart = /* @__PURE__ */ __name((dt) => dt.toUTC(0, { keepLocalTime: true }).startOf("day").valueOf(), "utcDayStart"), ms = utcDayStart(later) - utcDayStart(earlier); return Math.floor(Duration.fromMillis(ms).as("days")); } __name(dayDiff, "dayDiff"); function highOrderDiffs(cursor, later, units) { const differs = [["years", (a, b) => b.year - a.year], ["quarters", (a, b) => b.quarter - a.quarter + (b.year - a.year) * 4], ["months", (a, b) => b.month - a.month + (b.year - a.year) * 12], ["weeks", (a, b) => { const days = dayDiff(a, b); return (days - days % 7) / 7; }], ["days", dayDiff]]; const results = {}; const earlier = cursor; let lowestOrder, highWater; for (const [unit, differ] of differs) { if (units.indexOf(unit) >= 0) { lowestOrder = unit; results[unit] = differ(cursor, later); highWater = earlier.plus(results); if (highWater > later) { results[unit]--; cursor = earlier.plus(results); if (cursor > later) { highWater = cursor; results[unit]--; cursor = earlier.plus(results); } } else { cursor = highWater; } } } return [cursor, results, highWater, lowestOrder]; } __name(highOrderDiffs, "highOrderDiffs"); function diff(earlier, later, units, opts) { let [cursor, results, highWater, lowestOrder] = highOrderDiffs(earlier, later, units); const remainingMillis = later - cursor; const lowerOrderUnits = units.filter((u) => ["hours", "minutes", "seconds", "milliseconds"].indexOf(u) >= 0); if (lowerOrderUnits.length === 0) { if (highWater < later) { highWater = cursor.plus({ [lowestOrder]: 1 }); } if (highWater !== cursor) { results[lowestOrder] = (results[lowestOrder] || 0) + remainingMillis / (highWater - cursor); } } const duration = Duration.fromObject(results, opts); if (lowerOrderUnits.length > 0) { return Duration.fromMillis(remainingMillis, opts).shiftTo(...lowerOrderUnits).plus(duration); } else { return duration; } } __name(diff, "diff"); var MISSING_FTP = "missing Intl.DateTimeFormat.formatToParts support"; function intUnit(regex, post = (i) => i) { return { regex, deser: /* @__PURE__ */ __name(([s2]) => post(parseDigits(s2)), "deser") }; } __name(intUnit, "intUnit"); var NBSP = String.fromCharCode(160); var spaceOrNBSP = `[ ${NBSP}]`; var spaceOrNBSPRegExp = new RegExp(spaceOrNBSP, "g"); function fixListRegex(s2) { return s2.replace(/\./g, "\\.?").replace(spaceOrNBSPRegExp, spaceOrNBSP); } __name(fixListRegex, "fixListRegex"); function stripInsensitivities(s2) { return s2.replace(/\./g, "").replace(spaceOrNBSPRegExp, " ").toLowerCase(); } __name(stripInsensitivities, "stripInsensitivities"); function oneOf(strings, startIndex) { if (strings === null) { return null; } else { return { regex: RegExp(strings.map(fixListRegex).join("|")), deser: /* @__PURE__ */ __name(([s2]) => strings.findIndex((i) => stripInsensitivities(s2) === stripInsensitivities(i)) + startIndex, "deser") }; } } __name(oneOf, "oneOf"); function offset(regex, groups) { return { regex, deser: /* @__PURE__ */ __name(([, h, m]) => signedOffset(h, m), "deser"), groups }; } __name(offset, "offset"); function simple(regex) { return { regex, deser: /* @__PURE__ */ __name(([s2]) => s2, "deser") }; } __name(simple, "simple"); function escapeToken(value) { return value.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$&"); } __name(escapeToken, "escapeToken"); function unitForToken(token, loc) { const one = digitRegex(loc), two = digitRegex(loc, "{2}"), three = digitRegex(loc, "{3}"), four = digitRegex(loc, "{4}"), six = digitRegex(loc, "{6}"), oneOrTwo = digitRegex(loc, "{1,2}"), oneToThree = digitRegex(loc, "{1,3}"), oneToSix = digitRegex(loc, "{1,6}"), oneToNine = digitRegex(loc, "{1,9}"), twoToFour = digitRegex(loc, "{2,4}"), fourToSix = digitRegex(loc, "{4,6}"), literal = /* @__PURE__ */ __name((t) => ({ regex: RegExp(escapeToken(t.val)), deser: /* @__PURE__ */ __name(([s2]) => s2, "deser"), literal: true }), "literal"), unitate = /* @__PURE__ */ __name((t) => { if (token.literal) { return literal(t); } switch (t.val) { // era case "G": return oneOf(loc.eras("short"), 0); case "GG": return oneOf(loc.eras("long"), 0); // years case "y": return intUnit(oneToSix); case "yy": return intUnit(twoToFour, untruncateYear); case "yyyy": return intUnit(four); case "yyyyy": return intUnit(fourToSix); case "yyyyyy": return intUnit(six); // months case "M": return intUnit(oneOrTwo); case "MM": return intUnit(two); case "MMM": return oneOf(loc.months("short", true), 1); case "MMMM": return oneOf(loc.months("long", true), 1); case "L": return intUnit(oneOrTwo); case "LL": return intUnit(two); case "LLL": return oneOf(loc.months("short", false), 1); case "LLLL": return oneOf(loc.months("long", false), 1); // dates case "d": return intUnit(oneOrTwo); case "dd": return intUnit(two); // ordinals case "o": return intUnit(oneToThree); case "ooo": return intUnit(three); // time case "HH": return intUnit(two); case "H": return intUnit(oneOrTwo); case "hh": return intUnit(two); case "h": return intUnit(oneOrTwo); case "mm": return intUnit(two); case "m": return intUnit(oneOrTwo); case "q": return intUnit(oneOrTwo); case "qq": return intUnit(two); case "s": return intUnit(oneOrTwo); case "ss": return intUnit(two); case "S": return intUnit(oneToThree); case "SSS": return intUnit(three); case "u": return simple(oneToNine); case "uu": return simple(oneOrTwo); case "uuu": return intUnit(one); // meridiem case "a": return oneOf(loc.meridiems(), 0); // weekYear (k) case "kkkk": return intUnit(four); case "kk": return intUnit(twoToFour, untruncateYear); // weekNumber (W) case "W": return intUnit(oneOrTwo); case "WW": return intUnit(two); // weekdays case "E": case "c": return intUnit(one); case "EEE": return oneOf(loc.weekdays("short", false), 1); case "EEEE": return oneOf(loc.weekdays("long", false), 1); case "ccc": return oneOf(loc.weekdays("short", true), 1); case "cccc": return oneOf(loc.weekdays("long", true), 1); // offset/zone case "Z": case "ZZ": return offset(new RegExp(`([+-]${oneOrTwo.source})(?::(${two.source}))?`), 2); case "ZZZ": return offset(new RegExp(`([+-]${oneOrTwo.source})(${two.source})?`), 2); // we don't support ZZZZ (PST) or ZZZZZ (Pacific Standard Time) in parsing // because we don't have any way to figure out what they are case "z": return simple(/[a-z_+-/]{1,256}?/i); // this special-case "token" represents a place where a macro-token expanded into a white-space literal // in this case we accept any non-newline white-space case " ": return simple(/[^\S\n\r]/); default: return literal(t); } }, "unitate"); const unit = unitate(token) || { invalidReason: MISSING_FTP }; unit.token = token; return unit; } __name(unitForToken, "unitForToken"); var partTypeStyleToTokenVal = { year: { "2-digit": "yy", numeric: "yyyyy" }, month: { numeric: "M", "2-digit": "MM", short: "MMM", long: "MMMM" }, day: { numeric: "d", "2-digit": "dd" }, weekday: { short: "EEE", long: "EEEE" }, dayperiod: "a", dayPeriod: "a", hour12: { numeric: "h", "2-digit": "hh" }, hour24: { numeric: "H", "2-digit": "HH" }, minute: { numeric: "m", "2-digit": "mm" }, second: { numeric: "s", "2-digit": "ss" }, timeZoneName: { long: "ZZZZZ", short: "ZZZ" } }; function tokenForPart(part, formatOpts, resolvedOpts) { const { type, value } = part; if (type === "literal") { const isSpace = /^\s+$/.test(value); return { literal: !isSpace, val: isSpace ? " " : value }; } const style = formatOpts[type]; let actualType = type; if (type === "hour") { if (formatOpts.hour12 != null) { actualType = formatOpts.hour12 ? "hour12" : "hour24"; } else if (formatOpts.hourCycle != null) { if (formatOpts.hourCycle === "h11" || formatOpts.hourCycle === "h12") { actualType = "hour12"; } else { actualType = "hour24"; } } else { actualType = resolvedOpts.hour12 ? "hour12" : "hour24"; } } let val = partTypeStyleToTokenVal[actualType]; if (typeof val === "object") { val = val[style]; } if (val) { return { literal: false, val }; } return void 0; } __name(tokenForPart, "tokenForPart"); function buildRegex(units) { const re = units.map((u) => u.regex).reduce((f, r) => `${f}(${r.source})`, ""); return [`^${re}$`, units]; } __name(buildRegex, "buildRegex"); function match(input, regex, handlers) { const matches = input.match(regex); if (matches) { const all = {}; let matchIndex = 1; for (const i in handlers) { if (hasOwnProperty(handlers, i)) { const h = handlers[i], groups = h.groups ? h.groups + 1 : 1; if (!h.literal && h.token) { all[h.token.val[0]] = h.deser(matches.slice(matchIndex, matchIndex + groups)); } matchIndex += groups; } } return [matches, all]; } else { return [matches, {}]; } } __name(match, "match"); function dateTimeFromMatches(matches) { const toField = /* @__PURE__ */ __name((token) => { switch (token) { case "S": return "millisecond"; case "s": return "second"; case "m": return "minute"; case "h": case "H": return "hour"; case "d": return "day"; case "o": return "ordinal"; case "L": case "M": return "month"; case "y": return "year"; case "E": case "c": return "weekday"; case "W": return "weekNumber"; case "k": return "weekYear"; case "q": return "quarter"; default: return null; } }, "toField"); let zone = null; let specificOffset; if (!isUndefined(matches.z)) { zone = IANAZone.create(matches.z); } if (!isUndefined(matches.Z)) { if (!zone) { zone = new FixedOffsetZone(matches.Z); } specificOffset = matches.Z; } if (!isUndefined(matches.q)) { matches.M = (matches.q - 1) * 3 + 1; } if (!isUndefined(matches.h)) { if (matches.h < 12 && matches.a === 1) { matches.h += 12; } else if (matches.h === 12 && matches.a === 0) { matches.h = 0; } } if (matches.G === 0 && matches.y) { matches.y = -matches.y; } if (!isUndefined(matches.u)) { matches.S = parseMillis(matches.u); } const vals = Object.keys(matches).reduce((r, k) => { const f = toField(k); if (f) { r[f] = matches[k]; } return r; }, {}); return [vals, zone, specificOffset]; } __name(dateTimeFromMatches, "dateTimeFromMatches"); var dummyDateTimeCache = null; function getDummyDateTime() { if (!dummyDateTimeCache) { dummyDateTimeCache = DateTime.fromMillis(1555555555555); } return dummyDateTimeCache; } __name(getDummyDateTime, "getDummyDateTime"); function maybeExpandMacroToken(token, locale) { if (token.literal) { return token; } const formatOpts = Formatter.macroTokenToFormatOpts(token.val); const tokens = formatOptsToTokens(formatOpts, locale); if (tokens == null || tokens.includes(void 0)) { return token; } return tokens; } __name(maybeExpandMacroToken, "maybeExpandMacroToken"); function expandMacroTokens(tokens, locale) { return Array.prototype.concat(...tokens.map((t) => maybeExpandMacroToken(t, locale))); } __name(expandMacroTokens, "expandMacroTokens"); var TokenParser = class { static { __name(this, "TokenParser"); } constructor(locale, format) { this.locale = locale; this.format = format; this.tokens = expandMacroTokens(Formatter.parseFormat(format), locale); this.units = this.tokens.map((t) => unitForToken(t, locale)); this.disqualifyingUnit = this.units.find((t) => t.invalidReason); if (!this.disqualifyingUnit) { const [regexString, handlers] = buildRegex(this.units); this.regex = RegExp(regexString, "i"); this.handlers = handlers; } } explainFromTokens(input) { if (!this.isValid) { return { input, tokens: this.tokens, invalidReason: this.invalidReason }; } else { const [rawMatches, matches] = match(input, this.regex, this.handlers), [result, zone, specificOffset] = matches ? dateTimeFromMatches(matches) : [null, null, void 0]; if (hasOwnProperty(matches, "a") && hasOwnProperty(matches, "H")) { throw new ConflictingSpecificationError("Can't include meridiem when specifying 24-hour format"); } return { input, tokens: this.tokens, regex: this.regex, rawMatches, matches, result, zone, specificOffset }; } } get isValid() { return !this.disqualifyingUnit; } get invalidReason() { return this.disqualifyingUnit ? this.disqualifyingUnit.invalidReason : null; } }; function explainFromTokens(locale, input, format) { const parser = new TokenParser(locale, format); return parser.explainFromTokens(input); } __name(explainFromTokens, "explainFromTokens"); function parseFromTokens(locale, input, format) { const { result, zone, specificOffset, invalidReason } = explainFromTokens(locale, input, format); return [result, zone, specificOffset, invalidReason]; } __name(parseFromTokens, "parseFromTokens"); function formatOptsToTokens(formatOpts, locale) { if (!formatOpts) { return null; } const formatter = Formatter.create(locale, formatOpts); const df = formatter.dtFormatter(getDummyDateTime()); const parts = df.formatToParts(); const resolvedOpts = df.resolvedOptions(); return parts.map((p) => tokenForPart(p, formatOpts, resolvedOpts)); } __name(formatOptsToTokens, "formatOptsToTokens"); var INVALID = "Invalid DateTime"; var MAX_DATE = 864e13; function unsupportedZone(zone) { return new Invalid("unsupported zone", `the zone "${zone.name}" is not supported`); } __name(unsupportedZone, "unsupportedZone"); function possiblyCachedWeekData(dt) { if (dt.weekData === null) { dt.weekData = gregorianToWeek(dt.c); } return dt.weekData; } __name(possiblyCachedWeekData, "possiblyCachedWeekData"); function possiblyCachedLocalWeekData(dt) { if (dt.localWeekData === null) { dt.localWeekData = gregorianToWeek(dt.c, dt.loc.getMinDaysInFirstWeek(), dt.loc.getStartOfWeek()); } return dt.localWeekData; } __name(possiblyCachedLocalWeekData, "possiblyCachedLocalWeekData"); function clone(inst, alts) { const current = { ts: inst.ts, zone: inst.zone, c: inst.c, o: inst.o, loc: inst.loc, invalid: inst.invalid }; return new DateTime({ ...current, ...alts, old: current }); } __name(clone, "clone"); function fixOffset(localTS, o, tz) { let utcGuess = localTS - o * 60 * 1e3; const o2 = tz.offset(utcGuess); if (o === o2) { return [utcGuess, o]; } utcGuess -= (o2 - o) * 60 * 1e3; const o3 = tz.offset(utcGuess); if (o2 === o3) { return [utcGuess, o2]; } return [localTS - Math.min(o2, o3) * 60 * 1e3, Math.max(o2, o3)]; } __name(fixOffset, "fixOffset"); function tsToObj(ts, offset2) { ts += offset2 * 60 * 1e3; const d = new Date(ts); return { year: d.getUTCFullYear(), month: d.getUTCMonth() + 1, day: d.getUTCDate(), hour: d.getUTCHours(), minute: d.getUTCMinutes(), second: d.getUTCSeconds(), millisecond: d.getUTCMilliseconds() }; } __name(tsToObj, "tsToObj"); function objToTS(obj2, offset2, zone) { return fixOffset(objToLocalTS(obj2), offset2, zone); } __name(objToTS, "objToTS"); function adjustTime(inst, dur) { const oPre = inst.o, year = inst.c.year + Math.trunc(dur.years), month = inst.c.month + Math.trunc(dur.months) + Math.trunc(dur.quarters) * 3, c = { ...inst.c, year, month, day: Math.min(inst.c.day, daysInMonth(year, month)) + Math.trunc(dur.days) + Math.trunc(dur.weeks) * 7 }, millisToAdd = Duration.fromObject({ years: dur.years - Math.trunc(dur.years), quarters: dur.quarters - Math.trunc(dur.quarters), months: dur.months - Math.trunc(dur.months), weeks: dur.weeks - Math.trunc(dur.weeks), days: dur.days - Math.trunc(dur.days), hours: dur.hours, minutes: dur.minutes, seconds: dur.seconds, milliseconds: dur.milliseconds }).as("milliseconds"), localTS = objToLocalTS(c); let [ts, o] = fixOffset(localTS, oPre, inst.zone); if (millisToAdd !== 0) { ts += millisToAdd; o = inst.zone.offset(ts); } return { ts, o }; } __name(adjustTime, "adjustTime"); function parseDataToDateTime(parsed, parsedZone, opts, format, text, specificOffset) { const { setZone, zone } = opts; if (parsed && Object.keys(parsed).length !== 0 || parsedZone) { const interpretationZone = parsedZone || zone, inst = DateTime.fromObject(parsed, { ...opts, zone: interpretationZone, specificOffset }); return setZone ? inst : inst.setZone(zone); } else { return DateTime.invalid(new Invalid("unparsable", `the input "${text}" can't be parsed as ${format}`)); } } __name(parseDataToDateTime, "parseDataToDateTime"); function toTechFormat(dt, format, allowZ = true) { return dt.isValid ? Formatter.create(Locale.create("en-US"), { allowZ, forceSimple: true }).formatDateTimeFromString(dt, format) : null; } __name(toTechFormat, "toTechFormat"); function toISODate(o, extended) { const longFormat = o.c.year > 9999 || o.c.year < 0; let c = ""; if (longFormat && o.c.year >= 0) c += "+"; c += padStart(o.c.year, longFormat ? 6 : 4); if (extended) { c += "-"; c += padStart(o.c.month); c += "-"; c += padStart(o.c.day); } else { c += padStart(o.c.month); c += padStart(o.c.day); } return c; } __name(toISODate, "toISODate"); function toISOTime(o, extended, suppressSeconds, suppressMilliseconds, includeOffset, extendedZone) { let c = padStart(o.c.hour); if (extended) { c += ":"; c += padStart(o.c.minute); if (o.c.millisecond !== 0 || o.c.second !== 0 || !suppressSeconds) { c += ":"; } } else { c += padStart(o.c.minute); } if (o.c.millisecond !== 0 || o.c.second !== 0 || !suppressSeconds) { c += padStart(o.c.second); if (o.c.millisecond !== 0 || !suppressMilliseconds) { c += "."; c += padStart(o.c.millisecond, 3); } } if (includeOffset) { if (o.isOffsetFixed && o.offset === 0 && !extendedZone) { c += "Z"; } else if (o.o < 0) { c += "-"; c += padStart(Math.trunc(-o.o / 60)); c += ":"; c += padStart(Math.trunc(-o.o % 60)); } else { c += "+"; c += padStart(Math.trunc(o.o / 60)); c += ":"; c += padStart(Math.trunc(o.o % 60)); } } if (extendedZone) { c += "[" + o.zone.ianaName + "]"; } return c; } __name(toISOTime, "toISOTime"); var defaultUnitValues = { month: 1, day: 1, hour: 0, minute: 0, second: 0, millisecond: 0 }; var defaultWeekUnitValues = { weekNumber: 1, weekday: 1, hour: 0, minute: 0, second: 0, millisecond: 0 }; var defaultOrdinalUnitValues = { ordinal: 1, hour: 0, minute: 0, second: 0, millisecond: 0 }; var orderedUnits = ["year", "month", "day", "hour", "minute", "second", "millisecond"]; var orderedWeekUnits = ["weekYear", "weekNumber", "weekday", "hour", "minute", "second", "millisecond"]; var orderedOrdinalUnits = ["year", "ordinal", "hour", "minute", "second", "millisecond"]; function normalizeUnit(unit) { const normalized = { year: "year", years: "year", month: "month", months: "month", day: "day", days: "day", hour: "hour", hours: "hour", minute: "minute", minutes: "minute", quarter: "quarter", quarters: "quarter", second: "second", seconds: "second", millisecond: "millisecond", milliseconds: "millisecond", weekday: "weekday", weekdays: "weekday", weeknumber: "weekNumber", weeksnumber: "weekNumber", weeknumbers: "weekNumber", weekyear: "weekYear", weekyears: "weekYear", ordinal: "ordinal" }[unit.toLowerCase()]; if (!normalized) throw new InvalidUnitError(unit); return normalized; } __name(normalizeUnit, "normalizeUnit"); function normalizeUnitWithLocalWeeks(unit) { switch (unit.toLowerCase()) { case "localweekday": case "localweekdays": return "localWeekday"; case "localweeknumber": case "localweeknumbers": return "localWeekNumber"; case "localweekyear": case "localweekyears": return "localWeekYear"; default: return normalizeUnit(unit); } } __name(normalizeUnitWithLocalWeeks, "normalizeUnitWithLocalWeeks"); function guessOffsetForZone(zone) { if (!zoneOffsetGuessCache[zone]) { if (zoneOffsetTs === void 0) { zoneOffsetTs = Settings.now(); } zoneOffsetGuessCache[zone] = zone.offset(zoneOffsetTs); } return zoneOffsetGuessCache[zone]; } __name(guessOffsetForZone, "guessOffsetForZone"); function quickDT(obj2, opts) { const zone = normalizeZone(opts.zone, Settings.defaultZone); if (!zone.isValid) { return DateTime.invalid(unsupportedZone(zone)); } const loc = Locale.fromObject(opts); let ts, o; if (!isUndefined(obj2.year)) { for (const u of orderedUnits) { if (isUndefined(obj2[u])) { obj2[u] = defaultUnitValues[u]; } } const invalid = hasInvalidGregorianData(obj2) || hasInvalidTimeData(obj2); if (invalid) { return DateTime.invalid(invalid); } const offsetProvis = guessOffsetForZone(zone); [ts, o] = objToTS(obj2, offsetProvis, zone); } else { ts = Settings.now(); } return new DateTime({ ts, zone, loc, o }); } __name(quickDT, "quickDT"); function diffRelative(start, end, opts) { const round = isUndefined(opts.round) ? true : opts.round, format = /* @__PURE__ */ __name((c, unit) => { c = roundTo(c, round || opts.calendary ? 0 : 2, true); const formatter = end.loc.clone(opts).relFormatter(opts); return formatter.format(c, unit); }, "format"), differ = /* @__PURE__ */ __name((unit) => { if (opts.calendary) { if (!end.hasSame(start, unit)) { return end.startOf(unit).diff(start.startOf(unit), unit).get(unit); } else return 0; } else { return end.diff(start, unit).get(unit); } }, "differ"); if (opts.unit) { return format(differ(opts.unit), opts.unit); } for (const unit of opts.units) { const count = differ(unit); if (Math.abs(count) >= 1) { return format(count, unit); } } return format(start > end ? -0 : 0, opts.units[opts.units.length - 1]); } __name(diffRelative, "diffRelative"); function lastOpts(argList) { let opts = {}, args; if (argList.length > 0 && typeof argList[argList.length - 1] === "object") { opts = argList[argList.length - 1]; args = Array.from(argList).slice(0, argList.length - 1); } else { args = Array.from(argList); } return [opts, args]; } __name(lastOpts, "lastOpts"); var zoneOffsetTs; var zoneOffsetGuessCache = {}; var DateTime = class _DateTime { static { __name(this, "DateTime"); } /** * @access private */ constructor(config) { const zone = config.zone || Settings.defaultZone; let invalid = config.invalid || (Number.isNaN(config.ts) ? new Invalid("invalid input") : null) || (!zone.isValid ? unsupportedZone(zone) : null); this.ts = isUndefined(config.ts) ? Settings.now() : config.ts; let c = null, o = null; if (!invalid) { const unchanged = config.old && config.old.ts === this.ts && config.old.zone.equals(zone); if (unchanged) { [c, o] = [config.old.c, config.old.o]; } else { const ot = isNumber(config.o) && !config.old ? config.o : zone.offset(this.ts); c = tsToObj(this.ts, ot); invalid = Number.isNaN(c.year) ? new Invalid("invalid input") : null; c = invalid ? null : c; o = invalid ? null : ot; } } this._zone = zone; this.loc = config.loc || Locale.create(); this.invalid = invalid; this.weekData = null; this.localWeekData = null; this.c = c; this.o = o; this.isLuxonDateTime = true; } // CONSTRUCT /** * Create a DateTime for the current instant, in the system's time zone. * * Use Settings to override these default values if needed. * @example DateTime.now().toISO() //~> now in the ISO format * @return {DateTime} */ static now() { return new _DateTime({}); } /** * Create a local DateTime * @param {number} [year] - The calendar year. If omitted (as in, call `local()` with no arguments), the current time will be used * @param {number} [month=1] - The month, 1-indexed * @param {number} [day=1] - The day of the month, 1-indexed * @param {number} [hour=0] - The hour of the day, in 24-hour time * @param {number} [minute=0] - The minute of the hour, meaning a number between 0 and 59 * @param {number} [second=0] - The second of the minute, meaning a number between 0 and 59 * @param {number} [millisecond=0] - The millisecond of the second, meaning a number between 0 and 999 * @example DateTime.local() //~> now * @example DateTime.local({ zone: "America/New_York" }) //~> now, in US east coast time * @example DateTime.local(2017) //~> 2017-01-01T00:00:00 * @example DateTime.local(2017, 3) //~> 2017-03-01T00:00:00 * @example DateTime.local(2017, 3, 12, { locale: "fr" }) //~> 2017-03-12T00:00:00, with a French locale * @example DateTime.local(2017, 3, 12, 5) //~> 2017-03-12T05:00:00 * @example DateTime.local(2017, 3, 12, 5, { zone: "utc" }) //~> 2017-03-12T05:00:00, in UTC * @example DateTime.local(2017, 3, 12, 5, 45) //~> 2017-03-12T05:45:00 * @example DateTime.local(2017, 3, 12, 5, 45, 10) //~> 2017-03-12T05:45:10 * @example DateTime.local(2017, 3, 12, 5, 45, 10, 765) //~> 2017-03-12T05:45:10.765 * @return {DateTime} */ static local() { const [opts, args] = lastOpts(arguments), [year, month, day, hour, minute, second, millisecond] = args; return quickDT({ year, month, day, hour, minute, second, millisecond }, opts); } /** * Create a DateTime in UTC * @param {number} [year] - The calendar year. If omitted (as in, call `utc()` with no arguments), the current time will be used * @param {number} [month=1] - The month, 1-indexed * @param {number} [day=1] - The day of the month * @param {number} [hour=0] - The hour of the day, in 24-hour time * @param {number} [minute=0] - The minute of the hour, meaning a number between 0 and 59 * @param {number} [second=0] - The second of the minute, meaning a number between 0 and 59 * @param {number} [millisecond=0] - The millisecond of the second, meaning a number between 0 and 999 * @param {Object} options - configuration options for the DateTime * @param {string} [options.locale] - a locale to set on the resulting DateTime instance * @param {string} [options.outputCalendar] - the output calendar to set on the resulting DateTime instance * @param {string} [options.numberingSystem] - the numbering system to set on the resulting DateTime instance * @param {string} [options.weekSettings] - the week settings to set on the resulting DateTime instance * @example DateTime.utc() //~> now * @example DateTime.utc(2017) //~> 2017-01-01T00:00:00Z * @example DateTime.utc(2017, 3) //~> 2017-03-01T00:00:00Z * @example DateTime.utc(2017, 3, 12) //~> 2017-03-12T00:00:00Z * @example DateTime.utc(2017, 3, 12, 5) //~> 2017-03-12T05:00:00Z * @example DateTime.utc(2017, 3, 12, 5, 45) //~> 2017-03-12T05:45:00Z * @example DateTime.utc(2017, 3, 12, 5, 45, { locale: "fr" }) //~> 2017-03-12T05:45:00Z with a French locale * @example DateTime.utc(2017, 3, 12, 5, 45, 10) //~> 2017-03-12T05:45:10Z * @example DateTime.utc(2017, 3, 12, 5, 45, 10, 765, { locale: "fr" }) //~> 2017-03-12T05:45:10.765Z with a French locale * @return {DateTime} */ static utc() { const [opts, args] = lastOpts(arguments), [year, month, day, hour, minute, second, millisecond] = args; opts.zone = FixedOffsetZone.utcInstance; return quickDT({ year, month, day, hour, minute, second, millisecond }, opts); } /** * Create a DateTime from a JavaScript Date object. Uses the default zone. * @param {Date} date - a JavaScript Date object * @param {Object} options - configuration options for the DateTime * @param {string|Zone} [options.zone='local'] - the zone to place the DateTime into * @return {DateTime} */ static fromJSDate(date, options = {}) { const ts = isDate(date) ? date.valueOf() : NaN; if (Number.isNaN(ts)) { return _DateTime.invalid("invalid input"); } const zoneToUse = normalizeZone(options.zone, Settings.defaultZone); if (!zoneToUse.isValid) { return _DateTime.invalid(unsupportedZone(zoneToUse)); } return new _DateTime({ ts, zone: zoneToUse, loc: Locale.fromObject(options) }); } /** * Create a DateTime from a number of milliseconds since the epoch (meaning since 1 January 1970 00:00:00 UTC). Uses the default zone. * @param {number} milliseconds - a number of milliseconds since 1970 UTC * @param {Object} options - configuration options for the DateTime * @param {string|Zone} [options.zone='local'] - the zone to place the DateTime into * @param {string} [options.locale] - a locale to set on the resulting DateTime instance * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance * @return {DateTime} */ static fromMillis(milliseconds, options = {}) { if (!isNumber(milliseconds)) { throw new InvalidArgumentError(`fromMillis requires a numerical input, but received a ${typeof milliseconds} with value ${milliseconds}`); } else if (milliseconds < -MAX_DATE || milliseconds > MAX_DATE) { return _DateTime.invalid("Timestamp out of range"); } else { return new _DateTime({ ts: milliseconds, zone: normalizeZone(options.zone, Settings.defaultZone), loc: Locale.fromObject(options) }); } } /** * Create a DateTime from a number of seconds since the epoch (meaning since 1 January 1970 00:00:00 UTC). Uses the default zone. * @param {number} seconds - a number of seconds since 1970 UTC * @param {Object} options - configuration options for the DateTime * @param {string|Zone} [options.zone='local'] - the zone to place the DateTime into * @param {string} [options.locale] - a locale to set on the resulting DateTime instance * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance * @return {DateTime} */ static fromSeconds(seconds, options = {}) { if (!isNumber(seconds)) { throw new InvalidArgumentError("fromSeconds requires a numerical input"); } else { return new _DateTime({ ts: seconds * 1e3, zone: normalizeZone(options.zone, Settings.defaultZone), loc: Locale.fromObject(options) }); } } /** * Create a DateTime from a JavaScript object with keys like 'year' and 'hour' with reasonable defaults. * @param {Object} obj - the object to create the DateTime from * @param {number} obj.year - a year, such as 1987 * @param {number} obj.month - a month, 1-12 * @param {number} obj.day - a day of the month, 1-31, depending on the month * @param {number} obj.ordinal - day of the year, 1-365 or 366 * @param {number} obj.weekYear - an ISO week year * @param {number} obj.weekNumber - an ISO week number, between 1 and 52 or 53, depending on the year * @param {number} obj.weekday - an ISO weekday, 1-7, where 1 is Monday and 7 is Sunday * @param {number} obj.localWeekYear - a week year, according to the locale * @param {number} obj.localWeekNumber - a week number, between 1 and 52 or 53, depending on the year, according to the locale * @param {number} obj.localWeekday - a weekday, 1-7, where 1 is the first and 7 is the last day of the week, according to the locale * @param {number} obj.hour - hour of the day, 0-23 * @param {number} obj.minute - minute of the hour, 0-59 * @param {number} obj.second - second of the minute, 0-59 * @param {number} obj.millisecond - millisecond of the second, 0-999 * @param {Object} opts - options for creating this DateTime * @param {string|Zone} [opts.zone='local'] - interpret the numbers in the context of a particular zone. Can take any value taken as the first argument to setZone() * @param {string} [opts.locale='system\'s locale'] - a locale to set on the resulting DateTime instance * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance * @example DateTime.fromObject({ year: 1982, month: 5, day: 25}).toISODate() //=> '1982-05-25' * @example DateTime.fromObject({ year: 1982 }).toISODate() //=> '1982-01-01' * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }) //~> today at 10:26:06 * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }, { zone: 'utc' }), * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }, { zone: 'local' }) * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }, { zone: 'America/New_York' }) * @example DateTime.fromObject({ weekYear: 2016, weekNumber: 2, weekday: 3 }).toISODate() //=> '2016-01-13' * @example DateTime.fromObject({ localWeekYear: 2022, localWeekNumber: 1, localWeekday: 1 }, { locale: "en-US" }).toISODate() //=> '2021-12-26' * @return {DateTime} */ static fromObject(obj2, opts = {}) { obj2 = obj2 || {}; const zoneToUse = normalizeZone(opts.zone, Settings.defaultZone); if (!zoneToUse.isValid) { return _DateTime.invalid(unsupportedZone(zoneToUse)); } const loc = Locale.fromObject(opts); const normalized = normalizeObject(obj2, normalizeUnitWithLocalWeeks); const { minDaysInFirstWeek, startOfWeek } = usesLocalWeekValues(normalized, loc); const tsNow = Settings.now(), offsetProvis = !isUndefined(opts.specificOffset) ? opts.specificOffset : zoneToUse.offset(tsNow), containsOrdinal = !isUndefined(normalized.ordinal), containsGregorYear = !isUndefined(normalized.year), containsGregorMD = !isUndefined(normalized.month) || !isUndefined(normalized.day), containsGregor = containsGregorYear || containsGregorMD, definiteWeekDef = normalized.weekYear || normalized.weekNumber; if ((containsGregor || containsOrdinal) && definiteWeekDef) { throw new ConflictingSpecificationError("Can't mix weekYear/weekNumber units with year/month/day or ordinals"); } if (containsGregorMD && containsOrdinal) { throw new ConflictingSpecificationError("Can't mix ordinal dates with month/day"); } const useWeekData = definiteWeekDef || normalized.weekday && !containsGregor; let units, defaultValues, objNow = tsToObj(tsNow, offsetProvis); if (useWeekData) { units = orderedWeekUnits; defaultValues = defaultWeekUnitValues; objNow = gregorianToWeek(objNow, minDaysInFirstWeek, startOfWeek); } else if (containsOrdinal) { units = orderedOrdinalUnits; defaultValues = defaultOrdinalUnitValues; objNow = gregorianToOrdinal(objNow); } else { units = orderedUnits; defaultValues = defaultUnitValues; } let foundFirst = false; for (const u of units) { const v = normalized[u]; if (!isUndefined(v)) { foundFirst = true; } else if (foundFirst) { normalized[u] = defaultValues[u]; } else { normalized[u] = objNow[u]; } } const higherOrderInvalid = useWeekData ? hasInvalidWeekData(normalized, minDaysInFirstWeek, startOfWeek) : containsOrdinal ? hasInvalidOrdinalData(normalized) : hasInvalidGregorianData(normalized), invalid = higherOrderInvalid || hasInvalidTimeData(normalized); if (invalid) { return _DateTime.invalid(invalid); } const gregorian = useWeekData ? weekToGregorian(normalized, minDaysInFirstWeek, startOfWeek) : containsOrdinal ? ordinalToGregorian(normalized) : normalized, [tsFinal, offsetFinal] = objToTS(gregorian, offsetProvis, zoneToUse), inst = new _DateTime({ ts: tsFinal, zone: zoneToUse, o: offsetFinal, loc }); if (normalized.weekday && containsGregor && obj2.weekday !== inst.weekday) { return _DateTime.invalid("mismatched weekday", `you can't specify both a weekday of ${normalized.weekday} and a date of ${inst.toISO()}`); } if (!inst.isValid) { return _DateTime.invalid(inst.invalid); } return inst; } /** * Create a DateTime from an ISO 8601 string * @param {string} text - the ISO string * @param {Object} opts - options to affect the creation * @param {string|Zone} [opts.zone='local'] - use this zone if no offset is specified in the input string itself. Will also convert the time to this zone * @param {boolean} [opts.setZone=false] - override the zone with a fixed-offset zone specified in the string itself, if it specifies one * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance * @param {string} [opts.outputCalendar] - the output calendar to set on the resulting DateTime instance * @param {string} [opts.numberingSystem] - the numbering system to set on the resulting DateTime instance * @param {string} [opts.weekSettings] - the week settings to set on the resulting DateTime instance * @example DateTime.fromISO('2016-05-25T09:08:34.123') * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00') * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00', {setZone: true}) * @example DateTime.fromISO('2016-05-25T09:08:34.123', {zone: 'utc'}) * @example DateTime.fromISO('2016-W05-4') * @return {DateTime} */ static fromISO(text, opts = {}) { const [vals, parsedZone] = parseISODate(text); return parseDataToDateTime(vals, parsedZone, opts, "ISO 8601", text); } /** * Create a DateTime from an RFC 2822 string * @param {string} text - the RFC 2822 string * @param {Object} opts - options to affect the creation * @param {string|Zone} [opts.zone='local'] - convert the time to this zone. Since the offset is always specified in the string itself, this has no effect on the interpretation of string, merely the zone the resulting DateTime is expressed in. * @param {boolean} [opts.setZone=false] - override the zone with a fixed-offset zone specified in the string itself, if it specifies one * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance * @example DateTime.fromRFC2822('25 Nov 2016 13:23:12 GMT') * @example DateTime.fromRFC2822('Fri, 25 Nov 2016 13:23:12 +0600') * @example DateTime.fromRFC2822('25 Nov 2016 13:23 Z') * @return {DateTime} */ static fromRFC2822(text, opts = {}) { const [vals, parsedZone] = parseRFC2822Date(text); return parseDataToDateTime(vals, parsedZone, opts, "RFC 2822", text); } /** * Create a DateTime from an HTTP header date * @see https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3.1 * @param {string} text - the HTTP header date * @param {Object} opts - options to affect the creation * @param {string|Zone} [opts.zone='local'] - convert the time to this zone. Since HTTP dates are always in UTC, this has no effect on the interpretation of string, merely the zone the resulting DateTime is expressed in. * @param {boolean} [opts.setZone=false] - override the zone with the fixed-offset zone specified in the string. For HTTP dates, this is always UTC, so this option is equivalent to setting the `zone` option to 'utc', but this option is included for consistency with similar methods. * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance * @example DateTime.fromHTTP('Sun, 06 Nov 1994 08:49:37 GMT') * @example DateTime.fromHTTP('Sunday, 06-Nov-94 08:49:37 GMT') * @example DateTime.fromHTTP('Sun Nov 6 08:49:37 1994') * @return {DateTime} */ static fromHTTP(text, opts = {}) { const [vals, parsedZone] = parseHTTPDate(text); return parseDataToDateTime(vals, parsedZone, opts, "HTTP", opts); } /** * Create a DateTime from an input string and format string. * Defaults to en-US if no locale has been specified, regardless of the system's locale. For a table of tokens and their interpretations, see [here](https://moment.github.io/luxon/#/parsing?id=table-of-tokens). * @param {string} text - the string to parse * @param {string} fmt - the format the string is expected to be in (see the link below for the formats) * @param {Object} opts - options to affect the creation * @param {string|Zone} [opts.zone='local'] - use this zone if no offset is specified in the input string itself. Will also convert the DateTime to this zone * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance * @return {DateTime} */ static fromFormat(text, fmt, opts = {}) { if (isUndefined(text) || isUndefined(fmt)) { throw new InvalidArgumentError("fromFormat requires an input string and a format"); } const { locale = null, numberingSystem = null } = opts, localeToUse = Locale.fromOpts({ locale, numberingSystem, defaultToEN: true }), [vals, parsedZone, specificOffset, invalid] = parseFromTokens(localeToUse, text, fmt); if (invalid) { return _DateTime.invalid(invalid); } else { return parseDataToDateTime(vals, parsedZone, opts, `format ${fmt}`, text, specificOffset); } } /** * @deprecated use fromFormat instead */ static fromString(text, fmt, opts = {}) { return _DateTime.fromFormat(text, fmt, opts); } /** * Create a DateTime from a SQL date, time, or datetime * Defaults to en-US if no locale has been specified, regardless of the system's locale * @param {string} text - the string to parse * @param {Object} opts - options to affect the creation * @param {string|Zone} [opts.zone='local'] - use this zone if no offset is specified in the input string itself. Will also convert the DateTime to this zone * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance * @example DateTime.fromSQL('2017-05-15') * @example DateTime.fromSQL('2017-05-15 09:12:34') * @example DateTime.fromSQL('2017-05-15 09:12:34.342') * @example DateTime.fromSQL('2017-05-15 09:12:34.342+06:00') * @example DateTime.fromSQL('2017-05-15 09:12:34.342 America/Los_Angeles') * @example DateTime.fromSQL('2017-05-15 09:12:34.342 America/Los_Angeles', { setZone: true }) * @example DateTime.fromSQL('2017-05-15 09:12:34.342', { zone: 'America/Los_Angeles' }) * @example DateTime.fromSQL('09:12:34.342') * @return {DateTime} */ static fromSQL(text, opts = {}) { const [vals, parsedZone] = parseSQL(text); return parseDataToDateTime(vals, parsedZone, opts, "SQL", text); } /** * Create an invalid DateTime. * @param {string} reason - simple string of why this DateTime is invalid. Should not contain parameters or anything else data-dependent. * @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information * @return {DateTime} */ static invalid(reason, explanation = null) { if (!reason) { throw new InvalidArgumentError("need to specify a reason the DateTime is invalid"); } const invalid = reason instanceof Invalid ? reason : new Invalid(reason, explanation); if (Settings.throwOnInvalid) { throw new InvalidDateTimeError(invalid); } else { return new _DateTime({ invalid }); } } /** * Check if an object is an instance of DateTime. Works across context boundaries * @param {object} o * @return {boolean} */ static isDateTime(o) { return o && o.isLuxonDateTime || false; } /** * Produce the format string for a set of options * @param formatOpts * @param localeOpts * @returns {string} */ static parseFormatForOpts(formatOpts, localeOpts = {}) { const tokenList = formatOptsToTokens(formatOpts, Locale.fromObject(localeOpts)); return !tokenList ? null : tokenList.map((t) => t ? t.val : null).join(""); } /** * Produce the the fully expanded format token for the locale * Does NOT quote characters, so quoted tokens will not round trip correctly * @param fmt * @param localeOpts * @returns {string} */ static expandFormat(fmt, localeOpts = {}) { const expanded = expandMacroTokens(Formatter.parseFormat(fmt), Locale.fromObject(localeOpts)); return expanded.map((t) => t.val).join(""); } static resetCache() { zoneOffsetTs = void 0; zoneOffsetGuessCache = {}; } // INFO /** * Get the value of unit. * @param {string} unit - a unit such as 'minute' or 'day' * @example DateTime.local(2017, 7, 4).get('month'); //=> 7 * @example DateTime.local(2017, 7, 4).get('day'); //=> 4 * @return {number} */ get(unit) { return this[unit]; } /** * Returns whether the DateTime is valid. Invalid DateTimes occur when: * * The DateTime was created from invalid calendar information, such as the 13th month or February 30 * * The DateTime was created by an operation on another invalid date * @type {boolean} */ get isValid() { return this.invalid === null; } /** * Returns an error code if this DateTime is invalid, or null if the DateTime is valid * @type {string} */ get invalidReason() { return this.invalid ? this.invalid.reason : null; } /** * Returns an explanation of why this DateTime became invalid, or null if the DateTime is valid * @type {string} */ get invalidExplanation() { return this.invalid ? this.invalid.explanation : null; } /** * Get the locale of a DateTime, such 'en-GB'. The locale is used when formatting the DateTime * * @type {string} */ get locale() { return this.isValid ? this.loc.locale : null; } /** * Get the numbering system of a DateTime, such 'beng'. The numbering system is used when formatting the DateTime * * @type {string} */ get numberingSystem() { return this.isValid ? this.loc.numberingSystem : null; } /** * Get the output calendar of a DateTime, such 'islamic'. The output calendar is used when formatting the DateTime * * @type {string} */ get outputCalendar() { return this.isValid ? this.loc.outputCalendar : null; } /** * Get the time zone associated with this DateTime. * @type {Zone} */ get zone() { return this._zone; } /** * Get the name of the time zone. * @type {string} */ get zoneName() { return this.isValid ? this.zone.name : null; } /** * Get the year * @example DateTime.local(2017, 5, 25).year //=> 2017 * @type {number} */ get year() { return this.isValid ? this.c.year : NaN; } /** * Get the quarter * @example DateTime.local(2017, 5, 25).quarter //=> 2 * @type {number} */ get quarter() { return this.isValid ? Math.ceil(this.c.month / 3) : NaN; } /** * Get the month (1-12). * @example DateTime.local(2017, 5, 25).month //=> 5 * @type {number} */ get month() { return this.isValid ? this.c.month : NaN; } /** * Get the day of the month (1-30ish). * @example DateTime.local(2017, 5, 25).day //=> 25 * @type {number} */ get day() { return this.isValid ? this.c.day : NaN; } /** * Get the hour of the day (0-23). * @example DateTime.local(2017, 5, 25, 9).hour //=> 9 * @type {number} */ get hour() { return this.isValid ? this.c.hour : NaN; } /** * Get the minute of the hour (0-59). * @example DateTime.local(2017, 5, 25, 9, 30).minute //=> 30 * @type {number} */ get minute() { return this.isValid ? this.c.minute : NaN; } /** * Get the second of the minute (0-59). * @example DateTime.local(2017, 5, 25, 9, 30, 52).second //=> 52 * @type {number} */ get second() { return this.isValid ? this.c.second : NaN; } /** * Get the millisecond of the second (0-999). * @example DateTime.local(2017, 5, 25, 9, 30, 52, 654).millisecond //=> 654 * @type {number} */ get millisecond() { return this.isValid ? this.c.millisecond : NaN; } /** * Get the week year * @see https://en.wikipedia.org/wiki/ISO_week_date * @example DateTime.local(2014, 12, 31).weekYear //=> 2015 * @type {number} */ get weekYear() { return this.isValid ? possiblyCachedWeekData(this).weekYear : NaN; } /** * Get the week number of the week year (1-52ish). * @see https://en.wikipedia.org/wiki/ISO_week_date * @example DateTime.local(2017, 5, 25).weekNumber //=> 21 * @type {number} */ get weekNumber() { return this.isValid ? possiblyCachedWeekData(this).weekNumber : NaN; } /** * Get the day of the week. * 1 is Monday and 7 is Sunday * @see https://en.wikipedia.org/wiki/ISO_week_date * @example DateTime.local(2014, 11, 31).weekday //=> 4 * @type {number} */ get weekday() { return this.isValid ? possiblyCachedWeekData(this).weekday : NaN; } /** * Returns true if this date is on a weekend according to the locale, false otherwise * @returns {boolean} */ get isWeekend() { return this.isValid && this.loc.getWeekendDays().includes(this.weekday); } /** * Get the day of the week according to the locale. * 1 is the first day of the week and 7 is the last day of the week. * If the locale assigns Sunday as the first day of the week, then a date which is a Sunday will return 1, * @returns {number} */ get localWeekday() { return this.isValid ? possiblyCachedLocalWeekData(this).weekday : NaN; } /** * Get the week number of the week year according to the locale. Different locales assign week numbers differently, * because the week can start on different days of the week (see localWeekday) and because a different number of days * is required for a week to count as the first week of a year. * @returns {number} */ get localWeekNumber() { return this.isValid ? possiblyCachedLocalWeekData(this).weekNumber : NaN; } /** * Get the week year according to the locale. Different locales assign week numbers (and therefor week years) * differently, see localWeekNumber. * @returns {number} */ get localWeekYear() { return this.isValid ? possiblyCachedLocalWeekData(this).weekYear : NaN; } /** * Get the ordinal (meaning the day of the year) * @example DateTime.local(2017, 5, 25).ordinal //=> 145 * @type {number|DateTime} */ get ordinal() { return this.isValid ? gregorianToOrdinal(this.c).ordinal : NaN; } /** * Get the human readable short month name, such as 'Oct'. * Defaults to the system's locale if no locale has been specified * @example DateTime.local(2017, 10, 30).monthShort //=> Oct * @type {string} */ get monthShort() { return this.isValid ? Info.months("short", { locObj: this.loc })[this.month - 1] : null; } /** * Get the human readable long month name, such as 'October'. * Defaults to the system's locale if no locale has been specified * @example DateTime.local(2017, 10, 30).monthLong //=> October * @type {string} */ get monthLong() { return this.isValid ? Info.months("long", { locObj: this.loc })[this.month - 1] : null; } /** * Get the human readable short weekday, such as 'Mon'. * Defaults to the system's locale if no locale has been specified * @example DateTime.local(2017, 10, 30).weekdayShort //=> Mon * @type {string} */ get weekdayShort() { return this.isValid ? Info.weekdays("short", { locObj: this.loc })[this.weekday - 1] : null; } /** * Get the human readable long weekday, such as 'Monday'. * Defaults to the system's locale if no locale has been specified * @example DateTime.local(2017, 10, 30).weekdayLong //=> Monday * @type {string} */ get weekdayLong() { return this.isValid ? Info.weekdays("long", { locObj: this.loc })[this.weekday - 1] : null; } /** * Get the UTC offset of this DateTime in minutes * @example DateTime.now().offset //=> -240 * @example DateTime.utc().offset //=> 0 * @type {number} */ get offset() { return this.isValid ? +this.o : NaN; } /** * Get the short human name for the zone's current offset, for example "EST" or "EDT". * Defaults to the system's locale if no locale has been specified * @type {string} */ get offsetNameShort() { if (this.isValid) { return this.zone.offsetName(this.ts, { format: "short", locale: this.locale }); } else { return null; } } /** * Get the long human name for the zone's current offset, for example "Eastern Standard Time" or "Eastern Daylight Time". * Defaults to the system's locale if no locale has been specified * @type {string} */ get offsetNameLong() { if (this.isValid) { return this.zone.offsetName(this.ts, { format: "long", locale: this.locale }); } else { return null; } } /** * Get whether this zone's offset ever changes, as in a DST. * @type {boolean} */ get isOffsetFixed() { return this.isValid ? this.zone.isUniversal : null; } /** * Get whether the DateTime is in a DST. * @type {boolean} */ get isInDST() { if (this.isOffsetFixed) { return false; } else { return this.offset > this.set({ month: 1, day: 1 }).offset || this.offset > this.set({ month: 5 }).offset; } } /** * Get those DateTimes which have the same local time as this DateTime, but a different offset from UTC * in this DateTime's zone. During DST changes local time can be ambiguous, for example * `2023-10-29T02:30:00` in `Europe/Berlin` can have offset `+01:00` or `+02:00`. * This method will return both possible DateTimes if this DateTime's local time is ambiguous. * @returns {DateTime[]} */ getPossibleOffsets() { if (!this.isValid || this.isOffsetFixed) { return [this]; } const dayMs = 864e5; const minuteMs = 6e4; const localTS = objToLocalTS(this.c); const oEarlier = this.zone.offset(localTS - dayMs); const oLater = this.zone.offset(localTS + dayMs); const o1 = this.zone.offset(localTS - oEarlier * minuteMs); const o2 = this.zone.offset(localTS - oLater * minuteMs); if (o1 === o2) { return [this]; } const ts1 = localTS - o1 * minuteMs; const ts2 = localTS - o2 * minuteMs; const c1 = tsToObj(ts1, o1); const c2 = tsToObj(ts2, o2); if (c1.hour === c2.hour && c1.minute === c2.minute && c1.second === c2.second && c1.millisecond === c2.millisecond) { return [clone(this, { ts: ts1 }), clone(this, { ts: ts2 })]; } return [this]; } /** * Returns true if this DateTime is in a leap year, false otherwise * @example DateTime.local(2016).isInLeapYear //=> true * @example DateTime.local(2013).isInLeapYear //=> false * @type {boolean} */ get isInLeapYear() { return isLeapYear(this.year); } /** * Returns the number of days in this DateTime's month * @example DateTime.local(2016, 2).daysInMonth //=> 29 * @example DateTime.local(2016, 3).daysInMonth //=> 31 * @type {number} */ get daysInMonth() { return daysInMonth(this.year, this.month); } /** * Returns the number of days in this DateTime's year * @example DateTime.local(2016).daysInYear //=> 366 * @example DateTime.local(2013).daysInYear //=> 365 * @type {number} */ get daysInYear() { return this.isValid ? daysInYear(this.year) : NaN; } /** * Returns the number of weeks in this DateTime's year * @see https://en.wikipedia.org/wiki/ISO_week_date * @example DateTime.local(2004).weeksInWeekYear //=> 53 * @example DateTime.local(2013).weeksInWeekYear //=> 52 * @type {number} */ get weeksInWeekYear() { return this.isValid ? weeksInWeekYear(this.weekYear) : NaN; } /** * Returns the number of weeks in this DateTime's local week year * @example DateTime.local(2020, 6, {locale: 'en-US'}).weeksInLocalWeekYear //=> 52 * @example DateTime.local(2020, 6, {locale: 'de-DE'}).weeksInLocalWeekYear //=> 53 * @type {number} */ get weeksInLocalWeekYear() { return this.isValid ? weeksInWeekYear(this.localWeekYear, this.loc.getMinDaysInFirstWeek(), this.loc.getStartOfWeek()) : NaN; } /** * Returns the resolved Intl options for this DateTime. * This is useful in understanding the behavior of formatting methods * @param {Object} opts - the same options as toLocaleString * @return {Object} */ resolvedLocaleOptions(opts = {}) { const { locale, numberingSystem, calendar } = Formatter.create(this.loc.clone(opts), opts).resolvedOptions(this); return { locale, numberingSystem, outputCalendar: calendar }; } // TRANSFORM /** * "Set" the DateTime's zone to UTC. Returns a newly-constructed DateTime. * * Equivalent to {@link DateTime#setZone}('utc') * @param {number} [offset=0] - optionally, an offset from UTC in minutes * @param {Object} [opts={}] - options to pass to `setZone()` * @return {DateTime} */ toUTC(offset2 = 0, opts = {}) { return this.setZone(FixedOffsetZone.instance(offset2), opts); } /** * "Set" the DateTime's zone to the host's local zone. Returns a newly-constructed DateTime. * * Equivalent to `setZone('local')` * @return {DateTime} */ toLocal() { return this.setZone(Settings.defaultZone); } /** * "Set" the DateTime's zone to specified zone. Returns a newly-constructed DateTime. * * By default, the setter keeps the underlying time the same (as in, the same timestamp), but the new instance will report different local times and consider DSTs when making computations, as with {@link DateTime#plus}. You may wish to use {@link DateTime#toLocal} and {@link DateTime#toUTC} which provide simple convenience wrappers for commonly used zones. * @param {string|Zone} [zone='local'] - a zone identifier. As a string, that can be any IANA zone supported by the host environment, or a fixed-offset name of the form 'UTC+3', or the strings 'local' or 'utc'. You may also supply an instance of a {@link DateTime#Zone} class. * @param {Object} opts - options * @param {boolean} [opts.keepLocalTime=false] - If true, adjust the underlying time so that the local time stays the same, but in the target zone. You should rarely need this. * @return {DateTime} */ setZone(zone, { keepLocalTime = false, keepCalendarTime = false } = {}) { zone = normalizeZone(zone, Settings.defaultZone); if (zone.equals(this.zone)) { return this; } else if (!zone.isValid) { return _DateTime.invalid(unsupportedZone(zone)); } else { let newTS = this.ts; if (keepLocalTime || keepCalendarTime) { const offsetGuess = zone.offset(this.ts); const asObj = this.toObject(); [newTS] = objToTS(asObj, offsetGuess, zone); } return clone(this, { ts: newTS, zone }); } } /** * "Set" the locale, numberingSystem, or outputCalendar. Returns a newly-constructed DateTime. * @param {Object} properties - the properties to set * @example DateTime.local(2017, 5, 25).reconfigure({ locale: 'en-GB' }) * @return {DateTime} */ reconfigure({ locale, numberingSystem, outputCalendar } = {}) { const loc = this.loc.clone({ locale, numberingSystem, outputCalendar }); return clone(this, { loc }); } /** * "Set" the locale. Returns a newly-constructed DateTime. * Just a convenient alias for reconfigure({ locale }) * @example DateTime.local(2017, 5, 25).setLocale('en-GB') * @return {DateTime} */ setLocale(locale) { return this.reconfigure({ locale }); } /** * "Set" the values of specified units. Returns a newly-constructed DateTime. * You can only set units with this method; for "setting" metadata, see {@link DateTime#reconfigure} and {@link DateTime#setZone}. * * This method also supports setting locale-based week units, i.e. `localWeekday`, `localWeekNumber` and `localWeekYear`. * They cannot be mixed with ISO-week units like `weekday`. * @param {Object} values - a mapping of units to numbers * @example dt.set({ year: 2017 }) * @example dt.set({ hour: 8, minute: 30 }) * @example dt.set({ weekday: 5 }) * @example dt.set({ year: 2005, ordinal: 234 }) * @return {DateTime} */ set(values) { if (!this.isValid) return this; const normalized = normalizeObject(values, normalizeUnitWithLocalWeeks); const { minDaysInFirstWeek, startOfWeek } = usesLocalWeekValues(normalized, this.loc); const settingWeekStuff = !isUndefined(normalized.weekYear) || !isUndefined(normalized.weekNumber) || !isUndefined(normalized.weekday), containsOrdinal = !isUndefined(normalized.ordinal), containsGregorYear = !isUndefined(normalized.year), containsGregorMD = !isUndefined(normalized.month) || !isUndefined(normalized.day), containsGregor = containsGregorYear || containsGregorMD, definiteWeekDef = normalized.weekYear || normalized.weekNumber; if ((containsGregor || containsOrdinal) && definiteWeekDef) { throw new ConflictingSpecificationError("Can't mix weekYear/weekNumber units with year/month/day or ordinals"); } if (containsGregorMD && containsOrdinal) { throw new ConflictingSpecificationError("Can't mix ordinal dates with month/day"); } let mixed; if (settingWeekStuff) { mixed = weekToGregorian({ ...gregorianToWeek(this.c, minDaysInFirstWeek, startOfWeek), ...normalized }, minDaysInFirstWeek, startOfWeek); } else if (!isUndefined(normalized.ordinal)) { mixed = ordinalToGregorian({ ...gregorianToOrdinal(this.c), ...normalized }); } else { mixed = { ...this.toObject(), ...normalized }; if (isUndefined(normalized.day)) { mixed.day = Math.min(daysInMonth(mixed.year, mixed.month), mixed.day); } } const [ts, o] = objToTS(mixed, this.o, this.zone); return clone(this, { ts, o }); } /** * Add a period of time to this DateTime and return the resulting DateTime * * Adding hours, minutes, seconds, or milliseconds increases the timestamp by the right number of milliseconds. Adding days, months, or years shifts the calendar, accounting for DSTs and leap years along the way. Thus, `dt.plus({ hours: 24 })` may result in a different time than `dt.plus({ days: 1 })` if there's a DST shift in between. * @param {Duration|Object|number} duration - The amount to add. Either a Luxon Duration, a number of milliseconds, the object argument to Duration.fromObject() * @example DateTime.now().plus(123) //~> in 123 milliseconds * @example DateTime.now().plus({ minutes: 15 }) //~> in 15 minutes * @example DateTime.now().plus({ days: 1 }) //~> this time tomorrow * @example DateTime.now().plus({ days: -1 }) //~> this time yesterday * @example DateTime.now().plus({ hours: 3, minutes: 13 }) //~> in 3 hr, 13 min * @example DateTime.now().plus(Duration.fromObject({ hours: 3, minutes: 13 })) //~> in 3 hr, 13 min * @return {DateTime} */ plus(duration) { if (!this.isValid) return this; const dur = Duration.fromDurationLike(duration); return clone(this, adjustTime(this, dur)); } /** * Subtract a period of time to this DateTime and return the resulting DateTime * See {@link DateTime#plus} * @param {Duration|Object|number} duration - The amount to subtract. Either a Luxon Duration, a number of milliseconds, the object argument to Duration.fromObject() @return {DateTime} */ minus(duration) { if (!this.isValid) return this; const dur = Duration.fromDurationLike(duration).negate(); return clone(this, adjustTime(this, dur)); } /** * "Set" this DateTime to the beginning of a unit of time. * @param {string} unit - The unit to go to the beginning of. Can be 'year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', or 'millisecond'. * @param {Object} opts - options * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week * @example DateTime.local(2014, 3, 3).startOf('month').toISODate(); //=> '2014-03-01' * @example DateTime.local(2014, 3, 3).startOf('year').toISODate(); //=> '2014-01-01' * @example DateTime.local(2014, 3, 3).startOf('week').toISODate(); //=> '2014-03-03', weeks always start on Mondays * @example DateTime.local(2014, 3, 3, 5, 30).startOf('day').toISOTime(); //=> '00:00.000-05:00' * @example DateTime.local(2014, 3, 3, 5, 30).startOf('hour').toISOTime(); //=> '05:00:00.000-05:00' * @return {DateTime} */ startOf(unit, { useLocaleWeeks = false } = {}) { if (!this.isValid) return this; const o = {}, normalizedUnit = Duration.normalizeUnit(unit); switch (normalizedUnit) { case "years": o.month = 1; // falls through case "quarters": case "months": o.day = 1; // falls through case "weeks": case "days": o.hour = 0; // falls through case "hours": o.minute = 0; // falls through case "minutes": o.second = 0; // falls through case "seconds": o.millisecond = 0; break; } if (normalizedUnit === "weeks") { if (useLocaleWeeks) { const startOfWeek = this.loc.getStartOfWeek(); const { weekday } = this; if (weekday < startOfWeek) { o.weekNumber = this.weekNumber - 1; } o.weekday = startOfWeek; } else { o.weekday = 1; } } if (normalizedUnit === "quarters") { const q = Math.ceil(this.month / 3); o.month = (q - 1) * 3 + 1; } return this.set(o); } /** * "Set" this DateTime to the end (meaning the last millisecond) of a unit of time * @param {string} unit - The unit to go to the end of. Can be 'year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', or 'millisecond'. * @param {Object} opts - options * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week * @example DateTime.local(2014, 3, 3).endOf('month').toISO(); //=> '2014-03-31T23:59:59.999-05:00' * @example DateTime.local(2014, 3, 3).endOf('year').toISO(); //=> '2014-12-31T23:59:59.999-05:00' * @example DateTime.local(2014, 3, 3).endOf('week').toISO(); // => '2014-03-09T23:59:59.999-05:00', weeks start on Mondays * @example DateTime.local(2014, 3, 3, 5, 30).endOf('day').toISO(); //=> '2014-03-03T23:59:59.999-05:00' * @example DateTime.local(2014, 3, 3, 5, 30).endOf('hour').toISO(); //=> '2014-03-03T05:59:59.999-05:00' * @return {DateTime} */ endOf(unit, opts) { return this.isValid ? this.plus({ [unit]: 1 }).startOf(unit, opts).minus(1) : this; } // OUTPUT /** * Returns a string representation of this DateTime formatted according to the specified format string. * **You may not want this.** See {@link DateTime#toLocaleString} for a more flexible formatting tool. For a table of tokens and their interpretations, see [here](https://moment.github.io/luxon/#/formatting?id=table-of-tokens). * Defaults to en-US if no locale has been specified, regardless of the system's locale. * @param {string} fmt - the format string * @param {Object} opts - opts to override the configuration options on this DateTime * @example DateTime.now().toFormat('yyyy LLL dd') //=> '2017 Apr 22' * @example DateTime.now().setLocale('fr').toFormat('yyyy LLL dd') //=> '2017 avr. 22' * @example DateTime.now().toFormat('yyyy LLL dd', { locale: "fr" }) //=> '2017 avr. 22' * @example DateTime.now().toFormat("HH 'hours and' mm 'minutes'") //=> '20 hours and 55 minutes' * @return {string} */ toFormat(fmt, opts = {}) { return this.isValid ? Formatter.create(this.loc.redefaultToEN(opts)).formatDateTimeFromString(this, fmt) : INVALID; } /** * Returns a localized string representing this date. Accepts the same options as the Intl.DateTimeFormat constructor and any presets defined by Luxon, such as `DateTime.DATE_FULL` or `DateTime.TIME_SIMPLE`. * The exact behavior of this method is browser-specific, but in general it will return an appropriate representation * of the DateTime in the assigned locale. * Defaults to the system's locale if no locale has been specified * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat * @param formatOpts {Object} - Intl.DateTimeFormat constructor options and configuration options * @param {Object} opts - opts to override the configuration options on this DateTime * @example DateTime.now().toLocaleString(); //=> 4/20/2017 * @example DateTime.now().setLocale('en-gb').toLocaleString(); //=> '20/04/2017' * @example DateTime.now().toLocaleString(DateTime.DATE_FULL); //=> 'April 20, 2017' * @example DateTime.now().toLocaleString(DateTime.DATE_FULL, { locale: 'fr' }); //=> '28 août 2022' * @example DateTime.now().toLocaleString(DateTime.TIME_SIMPLE); //=> '11:32 AM' * @example DateTime.now().toLocaleString(DateTime.DATETIME_SHORT); //=> '4/20/2017, 11:32 AM' * @example DateTime.now().toLocaleString({ weekday: 'long', month: 'long', day: '2-digit' }); //=> 'Thursday, April 20' * @example DateTime.now().toLocaleString({ weekday: 'short', month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' }); //=> 'Thu, Apr 20, 11:27 AM' * @example DateTime.now().toLocaleString({ hour: '2-digit', minute: '2-digit', hourCycle: 'h23' }); //=> '11:32' * @return {string} */ toLocaleString(formatOpts = DATE_SHORT, opts = {}) { return this.isValid ? Formatter.create(this.loc.clone(opts), formatOpts).formatDateTime(this) : INVALID; } /** * Returns an array of format "parts", meaning individual tokens along with metadata. This is allows callers to post-process individual sections of the formatted output. * Defaults to the system's locale if no locale has been specified * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat/formatToParts * @param opts {Object} - Intl.DateTimeFormat constructor options, same as `toLocaleString`. * @example DateTime.now().toLocaleParts(); //=> [ * //=> { type: 'day', value: '25' }, * //=> { type: 'literal', value: '/' }, * //=> { type: 'month', value: '05' }, * //=> { type: 'literal', value: '/' }, * //=> { type: 'year', value: '1982' } * //=> ] */ toLocaleParts(opts = {}) { return this.isValid ? Formatter.create(this.loc.clone(opts), opts).formatDateTimeParts(this) : []; } /** * Returns an ISO 8601-compliant string representation of this DateTime * @param {Object} opts - options * @param {boolean} [opts.suppressMilliseconds=false] - exclude milliseconds from the format if they're 0 * @param {boolean} [opts.suppressSeconds=false] - exclude seconds from the format if they're 0 * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00' * @param {boolean} [opts.extendedZone=false] - add the time zone format extension * @param {string} [opts.format='extended'] - choose between the basic and extended format * @example DateTime.utc(1983, 5, 25).toISO() //=> '1982-05-25T00:00:00.000Z' * @example DateTime.now().toISO() //=> '2017-04-22T20:47:05.335-04:00' * @example DateTime.now().toISO({ includeOffset: false }) //=> '2017-04-22T20:47:05.335' * @example DateTime.now().toISO({ format: 'basic' }) //=> '20170422T204705.335-0400' * @return {string} */ toISO({ format = "extended", suppressSeconds = false, suppressMilliseconds = false, includeOffset = true, extendedZone = false } = {}) { if (!this.isValid) { return null; } const ext = format === "extended"; let c = toISODate(this, ext); c += "T"; c += toISOTime(this, ext, suppressSeconds, suppressMilliseconds, includeOffset, extendedZone); return c; } /** * Returns an ISO 8601-compliant string representation of this DateTime's date component * @param {Object} opts - options * @param {string} [opts.format='extended'] - choose between the basic and extended format * @example DateTime.utc(1982, 5, 25).toISODate() //=> '1982-05-25' * @example DateTime.utc(1982, 5, 25).toISODate({ format: 'basic' }) //=> '19820525' * @return {string} */ toISODate({ format = "extended" } = {}) { if (!this.isValid) { return null; } return toISODate(this, format === "extended"); } /** * Returns an ISO 8601-compliant string representation of this DateTime's week date * @example DateTime.utc(1982, 5, 25).toISOWeekDate() //=> '1982-W21-2' * @return {string} */ toISOWeekDate() { return toTechFormat(this, "kkkk-'W'WW-c"); } /** * Returns an ISO 8601-compliant string representation of this DateTime's time component * @param {Object} opts - options * @param {boolean} [opts.suppressMilliseconds=false] - exclude milliseconds from the format if they're 0 * @param {boolean} [opts.suppressSeconds=false] - exclude seconds from the format if they're 0 * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00' * @param {boolean} [opts.extendedZone=true] - add the time zone format extension * @param {boolean} [opts.includePrefix=false] - include the `T` prefix * @param {string} [opts.format='extended'] - choose between the basic and extended format * @example DateTime.utc().set({ hour: 7, minute: 34 }).toISOTime() //=> '07:34:19.361Z' * @example DateTime.utc().set({ hour: 7, minute: 34, seconds: 0, milliseconds: 0 }).toISOTime({ suppressSeconds: true }) //=> '07:34Z' * @example DateTime.utc().set({ hour: 7, minute: 34 }).toISOTime({ format: 'basic' }) //=> '073419.361Z' * @example DateTime.utc().set({ hour: 7, minute: 34 }).toISOTime({ includePrefix: true }) //=> 'T07:34:19.361Z' * @return {string} */ toISOTime({ suppressMilliseconds = false, suppressSeconds = false, includeOffset = true, includePrefix = false, extendedZone = false, format = "extended" } = {}) { if (!this.isValid) { return null; } let c = includePrefix ? "T" : ""; return c + toISOTime(this, format === "extended", suppressSeconds, suppressMilliseconds, includeOffset, extendedZone); } /** * Returns an RFC 2822-compatible string representation of this DateTime * @example DateTime.utc(2014, 7, 13).toRFC2822() //=> 'Sun, 13 Jul 2014 00:00:00 +0000' * @example DateTime.local(2014, 7, 13).toRFC2822() //=> 'Sun, 13 Jul 2014 00:00:00 -0400' * @return {string} */ toRFC2822() { return toTechFormat(this, "EEE, dd LLL yyyy HH:mm:ss ZZZ", false); } /** * Returns a string representation of this DateTime appropriate for use in HTTP headers. The output is always expressed in GMT. * Specifically, the string conforms to RFC 1123. * @see https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3.1 * @example DateTime.utc(2014, 7, 13).toHTTP() //=> 'Sun, 13 Jul 2014 00:00:00 GMT' * @example DateTime.utc(2014, 7, 13, 19).toHTTP() //=> 'Sun, 13 Jul 2014 19:00:00 GMT' * @return {string} */ toHTTP() { return toTechFormat(this.toUTC(), "EEE, dd LLL yyyy HH:mm:ss 'GMT'"); } /** * Returns a string representation of this DateTime appropriate for use in SQL Date * @example DateTime.utc(2014, 7, 13).toSQLDate() //=> '2014-07-13' * @return {string} */ toSQLDate() { if (!this.isValid) { return null; } return toISODate(this, true); } /** * Returns a string representation of this DateTime appropriate for use in SQL Time * @param {Object} opts - options * @param {boolean} [opts.includeZone=false] - include the zone, such as 'America/New_York'. Overrides includeOffset. * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00' * @param {boolean} [opts.includeOffsetSpace=true] - include the space between the time and the offset, such as '05:15:16.345 -04:00' * @example DateTime.utc().toSQL() //=> '05:15:16.345' * @example DateTime.now().toSQL() //=> '05:15:16.345 -04:00' * @example DateTime.now().toSQL({ includeOffset: false }) //=> '05:15:16.345' * @example DateTime.now().toSQL({ includeZone: false }) //=> '05:15:16.345 America/New_York' * @return {string} */ toSQLTime({ includeOffset = true, includeZone = false, includeOffsetSpace = true } = {}) { let fmt = "HH:mm:ss.SSS"; if (includeZone || includeOffset) { if (includeOffsetSpace) { fmt += " "; } if (includeZone) { fmt += "z"; } else if (includeOffset) { fmt += "ZZ"; } } return toTechFormat(this, fmt, true); } /** * Returns a string representation of this DateTime appropriate for use in SQL DateTime * @param {Object} opts - options * @param {boolean} [opts.includeZone=false] - include the zone, such as 'America/New_York'. Overrides includeOffset. * @param {boolean} [opts.includeOffset=true] - include the offset, such as 'Z' or '-04:00' * @param {boolean} [opts.includeOffsetSpace=true] - include the space between the time and the offset, such as '05:15:16.345 -04:00' * @example DateTime.utc(2014, 7, 13).toSQL() //=> '2014-07-13 00:00:00.000 Z' * @example DateTime.local(2014, 7, 13).toSQL() //=> '2014-07-13 00:00:00.000 -04:00' * @example DateTime.local(2014, 7, 13).toSQL({ includeOffset: false }) //=> '2014-07-13 00:00:00.000' * @example DateTime.local(2014, 7, 13).toSQL({ includeZone: true }) //=> '2014-07-13 00:00:00.000 America/New_York' * @return {string} */ toSQL(opts = {}) { if (!this.isValid) { return null; } return `${this.toSQLDate()} ${this.toSQLTime(opts)}`; } /** * Returns a string representation of this DateTime appropriate for debugging * @return {string} */ toString() { return this.isValid ? this.toISO() : INVALID; } /** * Returns a string representation of this DateTime appropriate for the REPL. * @return {string} */ [Symbol.for("nodejs.util.inspect.custom")]() { if (this.isValid) { return `DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`; } else { return `DateTime { Invalid, reason: ${this.invalidReason} }`; } } /** * Returns the epoch milliseconds of this DateTime. Alias of {@link DateTime#toMillis} * @return {number} */ valueOf() { return this.toMillis(); } /** * Returns the epoch milliseconds of this DateTime. * @return {number} */ toMillis() { return this.isValid ? this.ts : NaN; } /** * Returns the epoch seconds of this DateTime. * @return {number} */ toSeconds() { return this.isValid ? this.ts / 1e3 : NaN; } /** * Returns the epoch seconds (as a whole number) of this DateTime. * @return {number} */ toUnixInteger() { return this.isValid ? Math.floor(this.ts / 1e3) : NaN; } /** * Returns an ISO 8601 representation of this DateTime appropriate for use in JSON. * @return {string} */ toJSON() { return this.toISO(); } /** * Returns a BSON serializable equivalent to this DateTime. * @return {Date} */ toBSON() { return this.toJSDate(); } /** * Returns a JavaScript object with this DateTime's year, month, day, and so on. * @param opts - options for generating the object * @param {boolean} [opts.includeConfig=false] - include configuration attributes in the output * @example DateTime.now().toObject() //=> { year: 2017, month: 4, day: 22, hour: 20, minute: 49, second: 42, millisecond: 268 } * @return {Object} */ toObject(opts = {}) { if (!this.isValid) return {}; const base = { ...this.c }; if (opts.includeConfig) { base.outputCalendar = this.outputCalendar; base.numberingSystem = this.loc.numberingSystem; base.locale = this.loc.locale; } return base; } /** * Returns a JavaScript Date equivalent to this DateTime. * @return {Date} */ toJSDate() { return new Date(this.isValid ? this.ts : NaN); } // COMPARE /** * Return the difference between two DateTimes as a Duration. * @param {DateTime} otherDateTime - the DateTime to compare this one to * @param {string|string[]} [unit=['milliseconds']] - the unit or array of units (such as 'hours' or 'days') to include in the duration. * @param {Object} opts - options that affect the creation of the Duration * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use * @example * var i1 = DateTime.fromISO('1982-05-25T09:45'), * i2 = DateTime.fromISO('1983-10-14T10:30'); * i2.diff(i1).toObject() //=> { milliseconds: 43807500000 } * i2.diff(i1, 'hours').toObject() //=> { hours: 12168.75 } * i2.diff(i1, ['months', 'days']).toObject() //=> { months: 16, days: 19.03125 } * i2.diff(i1, ['months', 'days', 'hours']).toObject() //=> { months: 16, days: 19, hours: 0.75 } * @return {Duration} */ diff(otherDateTime, unit = "milliseconds", opts = {}) { if (!this.isValid || !otherDateTime.isValid) { return Duration.invalid("created by diffing an invalid DateTime"); } const durOpts = { locale: this.locale, numberingSystem: this.numberingSystem, ...opts }; const units = maybeArray(unit).map(Duration.normalizeUnit), otherIsLater = otherDateTime.valueOf() > this.valueOf(), earlier = otherIsLater ? this : otherDateTime, later = otherIsLater ? otherDateTime : this, diffed = diff(earlier, later, units, durOpts); return otherIsLater ? diffed.negate() : diffed; } /** * Return the difference between this DateTime and right now. * See {@link DateTime#diff} * @param {string|string[]} [unit=['milliseconds']] - the unit or units units (such as 'hours' or 'days') to include in the duration * @param {Object} opts - options that affect the creation of the Duration * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use * @return {Duration} */ diffNow(unit = "milliseconds", opts = {}) { return this.diff(_DateTime.now(), unit, opts); } /** * Return an Interval spanning between this DateTime and another DateTime * @param {DateTime} otherDateTime - the other end point of the Interval * @return {Interval} */ until(otherDateTime) { return this.isValid ? Interval.fromDateTimes(this, otherDateTime) : this; } /** * Return whether this DateTime is in the same unit of time as another DateTime. * Higher-order units must also be identical for this function to return `true`. * Note that time zones are **ignored** in this comparison, which compares the **local** calendar time. Use {@link DateTime#setZone} to convert one of the dates if needed. * @param {DateTime} otherDateTime - the other DateTime * @param {string} unit - the unit of time to check sameness on * @param {Object} opts - options * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week; only the locale of this DateTime is used * @example DateTime.now().hasSame(otherDT, 'day'); //~> true if otherDT is in the same current calendar day * @return {boolean} */ hasSame(otherDateTime, unit, opts) { if (!this.isValid) return false; const inputMs = otherDateTime.valueOf(); const adjustedToZone = this.setZone(otherDateTime.zone, { keepLocalTime: true }); return adjustedToZone.startOf(unit, opts) <= inputMs && inputMs <= adjustedToZone.endOf(unit, opts); } /** * Equality check * Two DateTimes are equal if and only if they represent the same millisecond, have the same zone and location, and are both valid. * To compare just the millisecond values, use `+dt1 === +dt2`. * @param {DateTime} other - the other DateTime * @return {boolean} */ equals(other) { return this.isValid && other.isValid && this.valueOf() === other.valueOf() && this.zone.equals(other.zone) && this.loc.equals(other.loc); } /** * Returns a string representation of a this time relative to now, such as "in two days". Can only internationalize if your * platform supports Intl.RelativeTimeFormat. Rounds down by default. * @param {Object} options - options that affect the output * @param {DateTime} [options.base=DateTime.now()] - the DateTime to use as the basis to which this time is compared. Defaults to now. * @param {string} [options.style="long"] - the style of units, must be "long", "short", or "narrow" * @param {string|string[]} options.unit - use a specific unit or array of units; if omitted, or an array, the method will pick the best unit. Use an array or one of "years", "quarters", "months", "weeks", "days", "hours", "minutes", or "seconds" * @param {boolean} [options.round=true] - whether to round the numbers in the output. * @param {number} [options.padding=0] - padding in milliseconds. This allows you to round up the result if it fits inside the threshold. Don't use in combination with {round: false} because the decimal output will include the padding. * @param {string} options.locale - override the locale of this DateTime * @param {string} options.numberingSystem - override the numberingSystem of this DateTime. The Intl system may choose not to honor this * @example DateTime.now().plus({ days: 1 }).toRelative() //=> "in 1 day" * @example DateTime.now().setLocale("es").toRelative({ days: 1 }) //=> "dentro de 1 día" * @example DateTime.now().plus({ days: 1 }).toRelative({ locale: "fr" }) //=> "dans 23 heures" * @example DateTime.now().minus({ days: 2 }).toRelative() //=> "2 days ago" * @example DateTime.now().minus({ days: 2 }).toRelative({ unit: "hours" }) //=> "48 hours ago" * @example DateTime.now().minus({ hours: 36 }).toRelative({ round: false }) //=> "1.5 days ago" */ toRelative(options = {}) { if (!this.isValid) return null; const base = options.base || _DateTime.fromObject({}, { zone: this.zone }), padding = options.padding ? this < base ? -options.padding : options.padding : 0; let units = ["years", "months", "days", "hours", "minutes", "seconds"]; let unit = options.unit; if (Array.isArray(options.unit)) { units = options.unit; unit = void 0; } return diffRelative(base, this.plus(padding), { ...options, numeric: "always", units, unit }); } /** * Returns a string representation of this date relative to today, such as "yesterday" or "next month". * Only internationalizes on platforms that supports Intl.RelativeTimeFormat. * @param {Object} options - options that affect the output * @param {DateTime} [options.base=DateTime.now()] - the DateTime to use as the basis to which this time is compared. Defaults to now. * @param {string} options.locale - override the locale of this DateTime * @param {string} options.unit - use a specific unit; if omitted, the method will pick the unit. Use one of "years", "quarters", "months", "weeks", or "days" * @param {string} options.numberingSystem - override the numberingSystem of this DateTime. The Intl system may choose not to honor this * @example DateTime.now().plus({ days: 1 }).toRelativeCalendar() //=> "tomorrow" * @example DateTime.now().setLocale("es").plus({ days: 1 }).toRelative() //=> ""mañana" * @example DateTime.now().plus({ days: 1 }).toRelativeCalendar({ locale: "fr" }) //=> "demain" * @example DateTime.now().minus({ days: 2 }).toRelativeCalendar() //=> "2 days ago" */ toRelativeCalendar(options = {}) { if (!this.isValid) return null; return diffRelative(options.base || _DateTime.fromObject({}, { zone: this.zone }), this, { ...options, numeric: "auto", units: ["years", "months", "days"], calendary: true }); } /** * Return the min of several date times * @param {...DateTime} dateTimes - the DateTimes from which to choose the minimum * @return {DateTime} the min DateTime, or undefined if called with no argument */ static min(...dateTimes) { if (!dateTimes.every(_DateTime.isDateTime)) { throw new InvalidArgumentError("min requires all arguments be DateTimes"); } return bestBy(dateTimes, (i) => i.valueOf(), Math.min); } /** * Return the max of several date times * @param {...DateTime} dateTimes - the DateTimes from which to choose the maximum * @return {DateTime} the max DateTime, or undefined if called with no argument */ static max(...dateTimes) { if (!dateTimes.every(_DateTime.isDateTime)) { throw new InvalidArgumentError("max requires all arguments be DateTimes"); } return bestBy(dateTimes, (i) => i.valueOf(), Math.max); } // MISC /** * Explain how a string would be parsed by fromFormat() * @param {string} text - the string to parse * @param {string} fmt - the format the string is expected to be in (see description) * @param {Object} options - options taken by fromFormat() * @return {Object} */ static fromFormatExplain(text, fmt, options = {}) { const { locale = null, numberingSystem = null } = options, localeToUse = Locale.fromOpts({ locale, numberingSystem, defaultToEN: true }); return explainFromTokens(localeToUse, text, fmt); } /** * @deprecated use fromFormatExplain instead */ static fromStringExplain(text, fmt, options = {}) { return _DateTime.fromFormatExplain(text, fmt, options); } /** * Build a parser for `fmt` using the given locale. This parser can be passed * to {@link DateTime.fromFormatParser} to a parse a date in this format. This * can be used to optimize cases where many dates need to be parsed in a * specific format. * * @param {String} fmt - the format the string is expected to be in (see * description) * @param {Object} options - options used to set locale and numberingSystem * for parser * @returns {TokenParser} - opaque object to be used */ static buildFormatParser(fmt, options = {}) { const { locale = null, numberingSystem = null } = options, localeToUse = Locale.fromOpts({ locale, numberingSystem, defaultToEN: true }); return new TokenParser(localeToUse, fmt); } /** * Create a DateTime from an input string and format parser. * * The format parser must have been created with the same locale as this call. * * @param {String} text - the string to parse * @param {TokenParser} formatParser - parser from {@link DateTime.buildFormatParser} * @param {Object} opts - options taken by fromFormat() * @returns {DateTime} */ static fromFormatParser(text, formatParser, opts = {}) { if (isUndefined(text) || isUndefined(formatParser)) { throw new InvalidArgumentError("fromFormatParser requires an input string and a format parser"); } const { locale = null, numberingSystem = null } = opts, localeToUse = Locale.fromOpts({ locale, numberingSystem, defaultToEN: true }); if (!localeToUse.equals(formatParser.locale)) { throw new InvalidArgumentError(`fromFormatParser called with a locale of ${localeToUse}, but the format parser was created for ${formatParser.locale}`); } const { result, zone, specificOffset, invalidReason } = formatParser.explainFromTokens(text); if (invalidReason) { return _DateTime.invalid(invalidReason); } else { return parseDataToDateTime(result, zone, opts, `format ${formatParser.format}`, text, specificOffset); } } // FORMAT PRESETS /** * {@link DateTime#toLocaleString} format like 10/14/1983 * @type {Object} */ static get DATE_SHORT() { return DATE_SHORT; } /** * {@link DateTime#toLocaleString} format like 'Oct 14, 1983' * @type {Object} */ static get DATE_MED() { return DATE_MED; } /** * {@link DateTime#toLocaleString} format like 'Fri, Oct 14, 1983' * @type {Object} */ static get DATE_MED_WITH_WEEKDAY() { return DATE_MED_WITH_WEEKDAY; } /** * {@link DateTime#toLocaleString} format like 'October 14, 1983' * @type {Object} */ static get DATE_FULL() { return DATE_FULL; } /** * {@link DateTime#toLocaleString} format like 'Tuesday, October 14, 1983' * @type {Object} */ static get DATE_HUGE() { return DATE_HUGE; } /** * {@link DateTime#toLocaleString} format like '09:30 AM'. Only 12-hour if the locale is. * @type {Object} */ static get TIME_SIMPLE() { return TIME_SIMPLE; } /** * {@link DateTime#toLocaleString} format like '09:30:23 AM'. Only 12-hour if the locale is. * @type {Object} */ static get TIME_WITH_SECONDS() { return TIME_WITH_SECONDS; } /** * {@link DateTime#toLocaleString} format like '09:30:23 AM EDT'. Only 12-hour if the locale is. * @type {Object} */ static get TIME_WITH_SHORT_OFFSET() { return TIME_WITH_SHORT_OFFSET; } /** * {@link DateTime#toLocaleString} format like '09:30:23 AM Eastern Daylight Time'. Only 12-hour if the locale is. * @type {Object} */ static get TIME_WITH_LONG_OFFSET() { return TIME_WITH_LONG_OFFSET; } /** * {@link DateTime#toLocaleString} format like '09:30', always 24-hour. * @type {Object} */ static get TIME_24_SIMPLE() { return TIME_24_SIMPLE; } /** * {@link DateTime#toLocaleString} format like '09:30:23', always 24-hour. * @type {Object} */ static get TIME_24_WITH_SECONDS() { return TIME_24_WITH_SECONDS; } /** * {@link DateTime#toLocaleString} format like '09:30:23 EDT', always 24-hour. * @type {Object} */ static get TIME_24_WITH_SHORT_OFFSET() { return TIME_24_WITH_SHORT_OFFSET; } /** * {@link DateTime#toLocaleString} format like '09:30:23 Eastern Daylight Time', always 24-hour. * @type {Object} */ static get TIME_24_WITH_LONG_OFFSET() { return TIME_24_WITH_LONG_OFFSET; } /** * {@link DateTime#toLocaleString} format like '10/14/1983, 9:30 AM'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_SHORT() { return DATETIME_SHORT; } /** * {@link DateTime#toLocaleString} format like '10/14/1983, 9:30:33 AM'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_SHORT_WITH_SECONDS() { return DATETIME_SHORT_WITH_SECONDS; } /** * {@link DateTime#toLocaleString} format like 'Oct 14, 1983, 9:30 AM'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_MED() { return DATETIME_MED; } /** * {@link DateTime#toLocaleString} format like 'Oct 14, 1983, 9:30:33 AM'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_MED_WITH_SECONDS() { return DATETIME_MED_WITH_SECONDS; } /** * {@link DateTime#toLocaleString} format like 'Fri, 14 Oct 1983, 9:30 AM'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_MED_WITH_WEEKDAY() { return DATETIME_MED_WITH_WEEKDAY; } /** * {@link DateTime#toLocaleString} format like 'October 14, 1983, 9:30 AM EDT'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_FULL() { return DATETIME_FULL; } /** * {@link DateTime#toLocaleString} format like 'October 14, 1983, 9:30:33 AM EDT'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_FULL_WITH_SECONDS() { return DATETIME_FULL_WITH_SECONDS; } /** * {@link DateTime#toLocaleString} format like 'Friday, October 14, 1983, 9:30 AM Eastern Daylight Time'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_HUGE() { return DATETIME_HUGE; } /** * {@link DateTime#toLocaleString} format like 'Friday, October 14, 1983, 9:30:33 AM Eastern Daylight Time'. Only 12-hour if the locale is. * @type {Object} */ static get DATETIME_HUGE_WITH_SECONDS() { return DATETIME_HUGE_WITH_SECONDS; } }; function friendlyDateTime(dateTimeish) { if (DateTime.isDateTime(dateTimeish)) { return dateTimeish; } else if (dateTimeish && dateTimeish.valueOf && isNumber(dateTimeish.valueOf())) { return DateTime.fromJSDate(dateTimeish); } else if (dateTimeish && typeof dateTimeish === "object") { return DateTime.fromObject(dateTimeish); } else { throw new InvalidArgumentError(`Unknown datetime argument: ${dateTimeish}, of type ${typeof dateTimeish}`); } } __name(friendlyDateTime, "friendlyDateTime"); var VERSION = "3.5.0"; exports2.DateTime = DateTime; exports2.Duration = Duration; exports2.FixedOffsetZone = FixedOffsetZone; exports2.IANAZone = IANAZone; exports2.Info = Info; exports2.Interval = Interval; exports2.InvalidZone = InvalidZone; exports2.Settings = Settings; exports2.SystemZone = SystemZone; exports2.VERSION = VERSION; exports2.Zone = Zone; } }); // ../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/constants.js var require_constants12 = __commonJS({ "../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RE_RANGE = exports2.RE_WILDCARDS = exports2.PRESETS = exports2.TIME_UNITS_LEN = exports2.TIME_UNITS = exports2.TIME_UNITS_MAP = exports2.ALIASES = exports2.PARSE_DEFAULTS = exports2.MONTH_CONSTRAINTS = exports2.CONSTRAINTS = void 0; exports2.CONSTRAINTS = Object.freeze({ second: [0, 59], minute: [0, 59], hour: [0, 23], dayOfMonth: [1, 31], month: [1, 12], dayOfWeek: [0, 7] }); exports2.MONTH_CONSTRAINTS = Object.freeze({ 1: 31, 2: 29, 3: 31, 4: 30, 5: 31, 6: 30, 7: 31, 8: 31, 9: 30, 10: 31, 11: 30, 12: 31 }); exports2.PARSE_DEFAULTS = Object.freeze({ second: "0", minute: "*", hour: "*", dayOfMonth: "*", month: "*", dayOfWeek: "*" }); exports2.ALIASES = Object.freeze({ jan: 1, feb: 2, mar: 3, apr: 4, may: 5, jun: 6, jul: 7, aug: 8, sep: 9, oct: 10, nov: 11, dec: 12, sun: 0, mon: 1, tue: 2, wed: 3, thu: 4, fri: 5, sat: 6 }); exports2.TIME_UNITS_MAP = Object.freeze({ SECOND: "second", MINUTE: "minute", HOUR: "hour", DAY_OF_MONTH: "dayOfMonth", MONTH: "month", DAY_OF_WEEK: "dayOfWeek" }); exports2.TIME_UNITS = Object.freeze(Object.values(exports2.TIME_UNITS_MAP)); exports2.TIME_UNITS_LEN = exports2.TIME_UNITS.length; exports2.PRESETS = Object.freeze({ "@yearly": "0 0 0 1 1 *", "@monthly": "0 0 0 1 * *", "@weekly": "0 0 0 * * 0", "@daily": "0 0 0 * * *", "@hourly": "0 0 * * * *", "@minutely": "0 * * * * *", "@secondly": "* * * * * *", "@weekdays": "0 0 0 * * 1-5", "@weekends": "0 0 0 * * 0,6" }); exports2.RE_WILDCARDS = /\*/g; exports2.RE_RANGE = /^(\d+)(?:-(\d+))?(?:\/(\d+))?$/g; } }); // ../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/errors.js var require_errors6 = __commonJS({ "../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/errors.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ExclusiveParametersError = exports2.CronError = void 0; var CronError = class extends Error { static { __name(this, "CronError"); } }; exports2.CronError = CronError; var ExclusiveParametersError = class extends CronError { static { __name(this, "ExclusiveParametersError"); } constructor(param1, param2) { super(`You can't specify both ${param1} and ${param2}`); } }; exports2.ExclusiveParametersError = ExclusiveParametersError; } }); // ../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/utils.js var require_utils19 = __commonJS({ "../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/utils.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getRecordKeys = void 0; var getRecordKeys = /* @__PURE__ */ __name((record) => { return Object.keys(record); }, "getRecordKeys"); exports2.getRecordKeys = getRecordKeys; } }); // ../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/time.js var require_time = __commonJS({ "../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/time.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CronTime = void 0; var luxon_1 = require_luxon2(); var constants_1 = require_constants12(); var errors_1 = require_errors6(); var utils_1 = require_utils19(); var CronTime = class { static { __name(this, "CronTime"); } constructor(source, timeZone, utcOffset) { this.realDate = false; this.second = {}; this.minute = {}; this.hour = {}; this.dayOfMonth = {}; this.month = {}; this.dayOfWeek = {}; if (timeZone != null && utcOffset != null) { throw new errors_1.ExclusiveParametersError("timeZone", "utcOffset"); } if (timeZone) { const dt = luxon_1.DateTime.fromObject({}, { zone: timeZone }); if (!dt.isValid) { throw new errors_1.CronError("Invalid timezone."); } this.timeZone = timeZone; } if (utcOffset != null) { this.utcOffset = utcOffset; } if (source instanceof Date || source instanceof luxon_1.DateTime) { this.source = source instanceof Date ? luxon_1.DateTime.fromJSDate(source) : source; this.realDate = true; } else { this.source = source; this._parse(this.source); this._verifyParse(); } } _getWeekDay(date) { return date.weekday === 7 ? 0 : date.weekday; } _verifyParse() { const months = (0, utils_1.getRecordKeys)(this.month); const daysOfMonth = (0, utils_1.getRecordKeys)(this.dayOfMonth); let isOk = false; let lastWrongMonth = null; for (const m of months) { const con = constants_1.MONTH_CONSTRAINTS[m]; for (const day of daysOfMonth) { if (day <= con) { isOk = true; } } if (!isOk) { lastWrongMonth = m; console.warn(`Month '${m}' is limited to '${con}' days.`); } } if (!isOk && lastWrongMonth !== null) { const notOkCon = constants_1.MONTH_CONSTRAINTS[lastWrongMonth]; for (const notOkDay of daysOfMonth) { if (notOkDay > notOkCon) { delete this.dayOfMonth[notOkDay]; const fixedDay = notOkDay % notOkCon; this.dayOfMonth[fixedDay] = true; } } } } sendAt(i) { let date = this.realDate && this.source instanceof luxon_1.DateTime ? this.source : luxon_1.DateTime.local(); if (this.timeZone) { date = date.setZone(this.timeZone); } if (this.utcOffset !== void 0) { const sign = this.utcOffset < 0 ? "-" : "+"; const offsetHours = Math.trunc(this.utcOffset / 60); const offsetHoursStr = String(Math.abs(offsetHours)).padStart(2, "0"); const offsetMins = Math.abs(this.utcOffset - offsetHours * 60); const offsetMinsStr = String(offsetMins).padStart(2, "0"); const utcZone = `UTC${sign}${offsetHoursStr}:${offsetMinsStr}`; date = date.setZone(utcZone); if (!date.isValid) { throw new errors_1.CronError("ERROR: You specified an invalid UTC offset."); } } if (this.realDate) { if (luxon_1.DateTime.local() > date) { throw new errors_1.CronError("WARNING: Date in past. Will never be fired."); } return date; } if (i === void 0 || isNaN(i) || i < 0) { return this.getNextDateFrom(date); } else { const dates = []; for (; i > 0; i--) { date = this.getNextDateFrom(date); dates.push(date); } return dates; } } getTimeout() { return Math.max(-1, this.sendAt().toMillis() - luxon_1.DateTime.local().toMillis()); } toString() { return this.toJSON().join(" "); } toJSON() { return constants_1.TIME_UNITS.map((unit) => { return this._wcOrAll(unit); }); } getNextDateFrom(start, timeZone) { var _a; if (start instanceof Date) { start = luxon_1.DateTime.fromJSDate(start); } let date = start; const firstDate = start.toMillis(); if (timeZone) { date = date.setZone(timeZone); } if (!this.realDate) { if (date.millisecond > 0) { date = date.set({ millisecond: 0, second: date.second + 1 }); } } if (!date.isValid) { throw new errors_1.CronError("ERROR: You specified an invalid date."); } const maxMatch = luxon_1.DateTime.now().plus({ years: 8 }); while (true) { const diff = date.toMillis() - start.toMillis(); if (date > maxMatch) { throw new errors_1.CronError(`Something went wrong. No execution date was found in the next 8 years. Please provide the following string if you would like to help debug: Time Zone: ${(_a = timeZone === null || timeZone === void 0 ? void 0 : timeZone.toString()) !== null && _a !== void 0 ? _a : '""'} - Cron String: ${this.source.toString()} - UTC offset: ${date.offset} - current Date: ${luxon_1.DateTime.local().toString()}`); } if (!(date.month in this.month) && Object.keys(this.month).length !== 12) { date = date.plus({ months: 1 }); date = date.set({ day: 1, hour: 0, minute: 0, second: 0 }); if (this._forwardDSTJump(0, 0, date)) { const [isDone, newDate] = this._findPreviousDSTJump(date); date = newDate; if (isDone) break; } continue; } if (!(date.day in this.dayOfMonth) && Object.keys(this.dayOfMonth).length !== 31 && !(this._getWeekDay(date) in this.dayOfWeek && Object.keys(this.dayOfWeek).length !== 7)) { date = date.plus({ days: 1 }); date = date.set({ hour: 0, minute: 0, second: 0 }); if (this._forwardDSTJump(0, 0, date)) { const [isDone, newDate] = this._findPreviousDSTJump(date); date = newDate; if (isDone) break; } continue; } if (!(this._getWeekDay(date) in this.dayOfWeek) && Object.keys(this.dayOfWeek).length !== 7 && !(date.day in this.dayOfMonth && Object.keys(this.dayOfMonth).length !== 31)) { date = date.plus({ days: 1 }); date = date.set({ hour: 0, minute: 0, second: 0 }); if (this._forwardDSTJump(0, 0, date)) { const [isDone, newDate] = this._findPreviousDSTJump(date); date = newDate; if (isDone) break; } continue; } if (!(date.hour in this.hour) && Object.keys(this.hour).length !== 24) { const expectedHour = date.hour === 23 && diff > 864e5 ? 0 : date.hour + 1; const expectedMinute = date.minute; date = date.set({ hour: expectedHour }); date = date.set({ minute: 0, second: 0 }); if (this._forwardDSTJump(expectedHour, expectedMinute, date)) { const [isDone, newDate] = this._findPreviousDSTJump(date); date = newDate; if (isDone) break; } continue; } if (!(date.minute in this.minute) && Object.keys(this.minute).length !== 60) { const expectedMinute = date.minute === 59 && diff > 36e5 ? 0 : date.minute + 1; const expectedHour = date.hour + (expectedMinute === 60 ? 1 : 0); date = date.set({ minute: expectedMinute }); date = date.set({ second: 0 }); if (this._forwardDSTJump(expectedHour, expectedMinute, date)) { const [isDone, newDate] = this._findPreviousDSTJump(date); date = newDate; if (isDone) break; } continue; } if (!(date.second in this.second) && Object.keys(this.second).length !== 60) { const expectedSecond = date.second === 59 && diff > 6e4 ? 0 : date.second + 1; const expectedMinute = date.minute + (expectedSecond === 60 ? 1 : 0); const expectedHour = date.hour + (expectedMinute === 60 ? 1 : 0); date = date.set({ second: expectedSecond }); if (this._forwardDSTJump(expectedHour, expectedMinute, date)) { const [isDone, newDate] = this._findPreviousDSTJump(date); date = newDate; if (isDone) break; } continue; } if (date.toMillis() === firstDate) { const expectedSecond = date.second + 1; const expectedMinute = date.minute + (expectedSecond === 60 ? 1 : 0); const expectedHour = date.hour + (expectedMinute === 60 ? 1 : 0); date = date.set({ second: expectedSecond }); if (this._forwardDSTJump(expectedHour, expectedMinute, date)) { const [isDone, newDate] = this._findPreviousDSTJump(date); date = newDate; if (isDone) break; } continue; } break; } return date; } _findPreviousDSTJump(date) { var _a; let expectedMinute, expectedHour, actualMinute, actualHour; let maybeJumpingPoint = date; const iterationLimit = 60 * 24; let iteration = 0; do { if (++iteration > iterationLimit) { throw new errors_1.CronError(`ERROR: This DST checking related function assumes the input DateTime (${(_a = date.toISO()) !== null && _a !== void 0 ? _a : date.toMillis()}) is within 24 hours of a DST jump.`); } expectedMinute = maybeJumpingPoint.minute - 1; expectedHour = maybeJumpingPoint.hour; if (expectedMinute < 0) { expectedMinute += 60; expectedHour = (expectedHour + 24 - 1) % 24; } maybeJumpingPoint = maybeJumpingPoint.minus({ minute: 1 }); actualMinute = maybeJumpingPoint.minute; actualHour = maybeJumpingPoint.hour; } while (expectedMinute === actualMinute && expectedHour === actualHour); const afterJumpingPoint = maybeJumpingPoint.plus({ minute: 1 }).set({ second: 0, millisecond: 0 }); const beforeJumpingPoint = afterJumpingPoint.minus({ second: 1 }); if (date.month + 1 in this.month && date.day in this.dayOfMonth && this._getWeekDay(date) in this.dayOfWeek) { return [ this._checkTimeInSkippedRange(beforeJumpingPoint, afterJumpingPoint), afterJumpingPoint ]; } return [false, afterJumpingPoint]; } _checkTimeInSkippedRange(beforeJumpingPoint, afterJumpingPoint) { const startingMinute = (beforeJumpingPoint.minute + 1) % 60; const startingHour = (beforeJumpingPoint.hour + (startingMinute === 0 ? 1 : 0)) % 24; const hourRangeSize = afterJumpingPoint.hour - startingHour + 1; const isHourJump = startingMinute === 0 && afterJumpingPoint.minute === 0; if (hourRangeSize === 2 && isHourJump) { return startingHour in this.hour; } else if (hourRangeSize === 1) { return startingHour in this.hour && this._checkTimeInSkippedRangeSingleHour(startingMinute, afterJumpingPoint.minute); } else { return this._checkTimeInSkippedRangeMultiHour(startingHour, startingMinute, afterJumpingPoint.hour, afterJumpingPoint.minute); } } _checkTimeInSkippedRangeSingleHour(startMinute, endMinute) { for (let minute = startMinute; minute < endMinute; ++minute) { if (minute in this.minute) return true; } return endMinute in this.minute && 0 in this.second; } _checkTimeInSkippedRangeMultiHour(startHour, startMinute, endHour, endMinute) { if (startHour >= endHour) { throw new errors_1.CronError(`ERROR: This DST checking related function assumes the forward jump starting hour (${startHour}) is less than the end hour (${endHour})`); } const firstHourMinuteRange = Array.from({ length: 60 - startMinute }, (_2, k) => startMinute + k); const lastHourMinuteRange = Array.from({ length: endMinute }, (_2, k) => k); const middleHourMinuteRange = Array.from({ length: 60 }, (_2, k) => k); const selectRange = /* @__PURE__ */ __name((forHour) => { if (forHour === startHour) { return firstHourMinuteRange; } else if (forHour === endHour) { return lastHourMinuteRange; } else { return middleHourMinuteRange; } }, "selectRange"); for (let hour = startHour; hour <= endHour; ++hour) { if (!(hour in this.hour)) continue; const usingRange = selectRange(hour); for (const minute of usingRange) { if (minute in this.minute) return true; } } return endHour in this.hour && endMinute in this.minute && 0 in this.second; } _forwardDSTJump(expectedHour, expectedMinute, actualDate) { const actualHour = actualDate.hour; const actualMinute = actualDate.minute; const didHoursJumped = expectedHour % 24 < actualHour; const didMinutesJumped = expectedMinute % 60 < actualMinute; return didHoursJumped || didMinutesJumped; } _wcOrAll(unit) { if (this._hasAll(unit)) { return "*"; } const all = []; for (const time in this[unit]) { all.push(time); } return all.join(","); } _hasAll(unit) { const constraints = constants_1.CONSTRAINTS[unit]; const low = constraints[0]; const high = unit === constants_1.TIME_UNITS_MAP.DAY_OF_WEEK ? constraints[1] - 1 : constraints[1]; for (let i = low, n = high; i < n; i++) { if (!(i in this[unit])) { return false; } } return true; } _parse(source) { var _a; source = source.toLowerCase(); if (Object.keys(constants_1.PRESETS).includes(source)) { source = constants_1.PRESETS[source]; } source = source.replace(/[a-z]{1,3}/gi, (alias) => { if (Object.keys(constants_1.ALIASES).includes(alias)) { return constants_1.ALIASES[alias].toString(); } throw new errors_1.CronError(`Unknown alias: ${alias}`); }); const units = source.trim().split(/\s+/); if (units.length < constants_1.TIME_UNITS_LEN - 1) { throw new errors_1.CronError("Too few fields"); } if (units.length > constants_1.TIME_UNITS_LEN) { throw new errors_1.CronError("Too many fields"); } const unitsLen = units.length; for (const unit of constants_1.TIME_UNITS) { const i = constants_1.TIME_UNITS.indexOf(unit); const cur = (_a = units[i - (constants_1.TIME_UNITS_LEN - unitsLen)]) !== null && _a !== void 0 ? _a : constants_1.PARSE_DEFAULTS[unit]; this._parseField(cur, unit); } } _parseField(value, unit) { const typeObj = this[unit]; let pointer; const constraints = constants_1.CONSTRAINTS[unit]; const low = constraints[0]; const high = constraints[1]; const fields = value.split(","); fields.forEach((field) => { const wildcardIndex = field.indexOf("*"); if (wildcardIndex !== -1 && wildcardIndex !== 0) { throw new errors_1.CronError(`Field (${field}) has an invalid wildcard expression`); } }); value = value.replace(constants_1.RE_WILDCARDS, `${low}-${high}`); const allRanges = value.split(","); for (const range of allRanges) { const match = [...range.matchAll(constants_1.RE_RANGE)][0]; if ((match === null || match === void 0 ? void 0 : match[1]) !== void 0) { const [, mLower, mUpper, mStep] = match; let lower = parseInt(mLower, 10); let upper = mUpper !== void 0 ? parseInt(mUpper, 10) : void 0; const wasStepDefined = mStep !== void 0; const step = parseInt(mStep !== null && mStep !== void 0 ? mStep : "1", 10); if (step === 0) { throw new errors_1.CronError(`Field (${unit}) has a step of zero`); } if (upper !== void 0 && lower > upper) { throw new errors_1.CronError(`Field (${unit}) has an invalid range`); } const isOutOfRange = lower < low || upper !== void 0 && upper > high || upper === void 0 && lower > high; if (isOutOfRange) { throw new errors_1.CronError(`Field value (${value}) is out of range`); } lower = Math.min(Math.max(low, ~~Math.abs(lower)), high); if (upper !== void 0) { upper = Math.min(high, ~~Math.abs(upper)); } else { upper = wasStepDefined ? high : lower; } pointer = lower; do { typeObj[pointer] = true; pointer += step; } while (pointer <= upper); if (unit === "dayOfWeek") { if (!typeObj[0] && !!typeObj[7]) typeObj[0] = typeObj[7]; delete typeObj[7]; } } else { throw new errors_1.CronError(`Field (${unit}) cannot be parsed`); } } } }; exports2.CronTime = CronTime; } }); // ../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/job.js var require_job2 = __commonJS({ "../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/job.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CronJob = void 0; var child_process_1 = require("child_process"); var errors_1 = require_errors6(); var time_1 = require_time(); var CronJob = class _CronJob { static { __name(this, "CronJob"); } constructor(cronTime, onTick, onComplete, start, timeZone, context, runOnInit, utcOffset, unrefTimeout) { this.running = false; this.unrefTimeout = false; this.lastExecution = null; this.runOnce = false; this._callbacks = []; this.context = context !== null && context !== void 0 ? context : this; if (timeZone != null && utcOffset != null) { throw new errors_1.ExclusiveParametersError("timeZone", "utcOffset"); } if (timeZone != null) { this.cronTime = new time_1.CronTime(cronTime, timeZone, null); } else if (utcOffset != null) { this.cronTime = new time_1.CronTime(cronTime, null, utcOffset); } else { this.cronTime = new time_1.CronTime(cronTime, timeZone, utcOffset); } if (unrefTimeout != null) { this.unrefTimeout = unrefTimeout; } if (onComplete != null) { this.onComplete = this._fnWrap(onComplete); } if (this.cronTime.realDate) { this.runOnce = true; } this.addCallback(this._fnWrap(onTick)); if (runOnInit) { this.lastExecution = /* @__PURE__ */ new Date(); this.fireOnTick(); } if (start) this.start(); } static from(params) { if (params.timeZone != null && params.utcOffset != null) { throw new errors_1.ExclusiveParametersError("timeZone", "utcOffset"); } if (params.timeZone != null) { return new _CronJob(params.cronTime, params.onTick, params.onComplete, params.start, params.timeZone, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout); } else if (params.utcOffset != null) { return new _CronJob(params.cronTime, params.onTick, params.onComplete, params.start, null, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout); } else { return new _CronJob(params.cronTime, params.onTick, params.onComplete, params.start, params.timeZone, params.context, params.runOnInit, params.utcOffset, params.unrefTimeout); } } _fnWrap(cmd) { var _a, _b; switch (typeof cmd) { case "function": { return cmd; } case "string": { const [command, ...args] = cmd.split(" "); return child_process_1.spawn.bind(void 0, command !== null && command !== void 0 ? command : cmd, args, {}); } case "object": { return child_process_1.spawn.bind(void 0, cmd.command, (_a = cmd.args) !== null && _a !== void 0 ? _a : [], (_b = cmd.options) !== null && _b !== void 0 ? _b : {}); } } } addCallback(callback) { if (typeof callback === "function") { this._callbacks.push(callback); } } setTime(time) { if (!(time instanceof time_1.CronTime)) { throw new errors_1.CronError("time must be an instance of CronTime."); } const wasRunning = this.running; this.stop(); this.cronTime = time; if (time.realDate) this.runOnce = true; if (wasRunning) this.start(); } nextDate() { return this.cronTime.sendAt(); } fireOnTick() { for (const callback of this._callbacks) { void callback.call(this.context, this.onComplete); } } nextDates(i) { return this.cronTime.sendAt(i !== null && i !== void 0 ? i : 0); } start() { if (this.running) { return; } const MAXDELAY = 2147483647; let timeout = this.cronTime.getTimeout(); let remaining = 0; let startTime; const setCronTimeout = /* @__PURE__ */ __name((t) => { startTime = Date.now(); this._timeout = setTimeout(callbackWrapper, t); if (this.unrefTimeout && typeof this._timeout.unref === "function") { this._timeout.unref(); } }, "setCronTimeout"); const callbackWrapper = /* @__PURE__ */ __name(() => { const diff = startTime + timeout - Date.now(); if (diff > 0) { let newTimeout = this.cronTime.getTimeout(); if (newTimeout > diff) { newTimeout = diff; } remaining += newTimeout; } if (remaining) { if (remaining > MAXDELAY) { remaining -= MAXDELAY; timeout = MAXDELAY; } else { timeout = remaining; remaining = 0; } setCronTimeout(timeout); } else { this.lastExecution = /* @__PURE__ */ new Date(); this.running = false; if (!this.runOnce) { this.start(); } this.fireOnTick(); } }, "callbackWrapper"); if (timeout >= 0) { this.running = true; if (timeout > MAXDELAY) { remaining = timeout - MAXDELAY; timeout = MAXDELAY; } setCronTimeout(timeout); } else { this.stop(); } } lastDate() { return this.lastExecution; } stop() { if (this._timeout) clearTimeout(this._timeout); this.running = false; if (typeof this.onComplete === "function") { void this.onComplete.call(this.context); } } }; exports2.CronJob = CronJob; } }); // ../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/index.js var require_dist7 = __commonJS({ "../../node_modules/.pnpm/cron@3.2.1/node_modules/cron/dist/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.timeout = exports2.sendAt = exports2.CronTime = exports2.CronJob = void 0; var time_1 = require_time(); var job_1 = require_job2(); Object.defineProperty(exports2, "CronJob", { enumerable: true, get: /* @__PURE__ */ __name(function() { return job_1.CronJob; }, "get") }); var time_2 = require_time(); Object.defineProperty(exports2, "CronTime", { enumerable: true, get: /* @__PURE__ */ __name(function() { return time_2.CronTime; }, "get") }); var sendAt = /* @__PURE__ */ __name((cronTime) => new time_1.CronTime(cronTime).sendAt(), "sendAt"); exports2.sendAt = sendAt; var timeout = /* @__PURE__ */ __name((cronTime) => new time_1.CronTime(cronTime).getTimeout(), "timeout"); exports2.timeout = timeout; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/max.js var require_max4 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/max.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = "ffffffff-ffff-ffff-ffff-ffffffffffff"; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/nil.js var require_nil = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/nil.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = "00000000-0000-0000-0000-000000000000"; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/regex.js var require_regex = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/regex.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/validate.js var require_validate = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/validate.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var regex_js_1 = require_regex(); function validate2(uuid) { return typeof uuid === "string" && regex_js_1.default.test(uuid); } __name(validate2, "validate"); exports2.default = validate2; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/parse.js var require_parse4 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/parse.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var validate_js_1 = require_validate(); function parse2(uuid) { if (!(0, validate_js_1.default)(uuid)) { throw TypeError("Invalid UUID"); } let v; return Uint8Array.of((v = parseInt(uuid.slice(0, 8), 16)) >>> 24, v >>> 16 & 255, v >>> 8 & 255, v & 255, (v = parseInt(uuid.slice(9, 13), 16)) >>> 8, v & 255, (v = parseInt(uuid.slice(14, 18), 16)) >>> 8, v & 255, (v = parseInt(uuid.slice(19, 23), 16)) >>> 8, v & 255, (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255, v / 4294967296 & 255, v >>> 24 & 255, v >>> 16 & 255, v >>> 8 & 255, v & 255); } __name(parse2, "parse"); exports2.default = parse2; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/stringify.js var require_stringify2 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/stringify.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.unsafeStringify = unsafeStringify; var validate_js_1 = require_validate(); var byteToHex2 = []; for (let i = 0; i < 256; ++i) { byteToHex2.push((i + 256).toString(16).slice(1)); } function unsafeStringify(arr, offset = 0) { return (byteToHex2[arr[offset + 0]] + byteToHex2[arr[offset + 1]] + byteToHex2[arr[offset + 2]] + byteToHex2[arr[offset + 3]] + "-" + byteToHex2[arr[offset + 4]] + byteToHex2[arr[offset + 5]] + "-" + byteToHex2[arr[offset + 6]] + byteToHex2[arr[offset + 7]] + "-" + byteToHex2[arr[offset + 8]] + byteToHex2[arr[offset + 9]] + "-" + byteToHex2[arr[offset + 10]] + byteToHex2[arr[offset + 11]] + byteToHex2[arr[offset + 12]] + byteToHex2[arr[offset + 13]] + byteToHex2[arr[offset + 14]] + byteToHex2[arr[offset + 15]]).toLowerCase(); } __name(unsafeStringify, "unsafeStringify"); function stringify2(arr, offset = 0) { const uuid = unsafeStringify(arr, offset); if (!(0, validate_js_1.default)(uuid)) { throw TypeError("Stringified UUID is invalid"); } return uuid; } __name(stringify2, "stringify"); exports2.default = stringify2; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/rng.js var require_rng = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/rng.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = rng2; var crypto_1 = require("crypto"); var rnds8Pool2 = new Uint8Array(256); var poolPtr2 = rnds8Pool2.length; function rng2() { if (poolPtr2 > rnds8Pool2.length - 16) { (0, crypto_1.randomFillSync)(rnds8Pool2); poolPtr2 = 0; } return rnds8Pool2.slice(poolPtr2, poolPtr2 += 16); } __name(rng2, "rng"); } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v1.js var require_v1 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.updateV1State = updateV1State; var rng_js_1 = require_rng(); var stringify_js_1 = require_stringify2(); var _state = {}; function v12(options, buf, offset) { let bytes; const isV6 = options?._v6 ?? false; if (options) { const optionsKeys = Object.keys(options); if (optionsKeys.length === 1 && optionsKeys[0] === "_v6") { options = void 0; } } if (options) { bytes = v1Bytes(options.random ?? options.rng?.() ?? (0, rng_js_1.default)(), options.msecs, options.nsecs, options.clockseq, options.node, buf, offset); } else { const now = Date.now(); const rnds = (0, rng_js_1.default)(); updateV1State(_state, now, rnds); bytes = v1Bytes(rnds, _state.msecs, _state.nsecs, isV6 ? void 0 : _state.clockseq, isV6 ? void 0 : _state.node, buf, offset); } return buf ? bytes : (0, stringify_js_1.unsafeStringify)(bytes); } __name(v12, "v1"); function updateV1State(state, now, rnds) { state.msecs ??= -Infinity; state.nsecs ??= 0; if (now === state.msecs) { state.nsecs++; if (state.nsecs >= 1e4) { state.node = void 0; state.nsecs = 0; } } else if (now > state.msecs) { state.nsecs = 0; } else if (now < state.msecs) { state.node = void 0; } if (!state.node) { state.node = rnds.slice(10, 16); state.node[0] |= 1; state.clockseq = (rnds[8] << 8 | rnds[9]) & 16383; } state.msecs = now; return state; } __name(updateV1State, "updateV1State"); function v1Bytes(rnds, msecs, nsecs, clockseq, node, buf, offset = 0) { if (!buf) { buf = new Uint8Array(16); offset = 0; } msecs ??= Date.now(); nsecs ??= 0; clockseq ??= (rnds[8] << 8 | rnds[9]) & 16383; node ??= rnds.slice(10, 16); msecs += 122192928e5; const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296; buf[offset++] = tl >>> 24 & 255; buf[offset++] = tl >>> 16 & 255; buf[offset++] = tl >>> 8 & 255; buf[offset++] = tl & 255; const tmh = msecs / 4294967296 * 1e4 & 268435455; buf[offset++] = tmh >>> 8 & 255; buf[offset++] = tmh & 255; buf[offset++] = tmh >>> 24 & 15 | 16; buf[offset++] = tmh >>> 16 & 255; buf[offset++] = clockseq >>> 8 | 128; buf[offset++] = clockseq & 255; for (let n = 0; n < 6; ++n) { buf[offset++] = node[n]; } return buf; } __name(v1Bytes, "v1Bytes"); exports2.default = v12; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v1ToV6.js var require_v1ToV6 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v1ToV6.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = v1ToV6; var parse_js_1 = require_parse4(); var stringify_js_1 = require_stringify2(); function v1ToV6(uuid) { const v1Bytes = typeof uuid === "string" ? (0, parse_js_1.default)(uuid) : uuid; const v6Bytes = _v1ToV6(v1Bytes); return typeof uuid === "string" ? (0, stringify_js_1.unsafeStringify)(v6Bytes) : v6Bytes; } __name(v1ToV6, "v1ToV6"); function _v1ToV6(v1Bytes) { return Uint8Array.of((v1Bytes[6] & 15) << 4 | v1Bytes[7] >> 4 & 15, (v1Bytes[7] & 15) << 4 | (v1Bytes[4] & 240) >> 4, (v1Bytes[4] & 15) << 4 | (v1Bytes[5] & 240) >> 4, (v1Bytes[5] & 15) << 4 | (v1Bytes[0] & 240) >> 4, (v1Bytes[0] & 15) << 4 | (v1Bytes[1] & 240) >> 4, (v1Bytes[1] & 15) << 4 | (v1Bytes[2] & 240) >> 4, 96 | v1Bytes[2] & 15, v1Bytes[3], v1Bytes[8], v1Bytes[9], v1Bytes[10], v1Bytes[11], v1Bytes[12], v1Bytes[13], v1Bytes[14], v1Bytes[15]); } __name(_v1ToV6, "_v1ToV6"); } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/md5.js var require_md5 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/md5.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var crypto_1 = require("crypto"); function md52(bytes) { if (Array.isArray(bytes)) { bytes = Buffer.from(bytes); } else if (typeof bytes === "string") { bytes = Buffer.from(bytes, "utf8"); } return (0, crypto_1.createHash)("md5").update(bytes).digest(); } __name(md52, "md5"); exports2.default = md52; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v35.js var require_v35 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v35.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.URL = exports2.DNS = void 0; exports2.stringToBytes = stringToBytes2; exports2.default = v35; var parse_js_1 = require_parse4(); var stringify_js_1 = require_stringify2(); function stringToBytes2(str) { str = unescape(encodeURIComponent(str)); const bytes = new Uint8Array(str.length); for (let i = 0; i < str.length; ++i) { bytes[i] = str.charCodeAt(i); } return bytes; } __name(stringToBytes2, "stringToBytes"); exports2.DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8"; exports2.URL = "6ba7b811-9dad-11d1-80b4-00c04fd430c8"; function v35(version2, hash, value, namespace, buf, offset) { const valueBytes = typeof value === "string" ? stringToBytes2(value) : value; const namespaceBytes = typeof namespace === "string" ? (0, parse_js_1.default)(namespace) : namespace; if (typeof namespace === "string") { namespace = (0, parse_js_1.default)(namespace); } if (namespace?.length !== 16) { throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)"); } let bytes = new Uint8Array(16 + valueBytes.length); bytes.set(namespaceBytes); bytes.set(valueBytes, namespaceBytes.length); bytes = hash(bytes); bytes[6] = bytes[6] & 15 | version2; bytes[8] = bytes[8] & 63 | 128; if (buf) { offset = offset || 0; for (let i = 0; i < 16; ++i) { buf[offset + i] = bytes[i]; } return buf; } return (0, stringify_js_1.unsafeStringify)(bytes); } __name(v35, "v35"); } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v3.js var require_v3 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v3.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.URL = exports2.DNS = void 0; var md5_js_1 = require_md5(); var v35_js_1 = require_v35(); var v35_js_2 = require_v35(); Object.defineProperty(exports2, "DNS", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v35_js_2.DNS; }, "get") }); Object.defineProperty(exports2, "URL", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v35_js_2.URL; }, "get") }); function v32(value, namespace, buf, offset) { return (0, v35_js_1.default)(48, md5_js_1.default, value, namespace, buf, offset); } __name(v32, "v3"); v32.DNS = v35_js_1.DNS; v32.URL = v35_js_1.URL; exports2.default = v32; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/native.js var require_native = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/native.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var crypto_1 = require("crypto"); exports2.default = { randomUUID: crypto_1.randomUUID }; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v4.js var require_v4 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v4.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var native_js_1 = require_native(); var rng_js_1 = require_rng(); var stringify_js_1 = require_stringify2(); function v42(options, buf, offset) { if (native_js_1.default.randomUUID && !buf && !options) { return native_js_1.default.randomUUID(); } options = options || {}; const rnds = options.random || (options.rng || rng_js_1.default)(); rnds[6] = rnds[6] & 15 | 64; rnds[8] = rnds[8] & 63 | 128; if (buf) { offset = offset || 0; for (let i = 0; i < 16; ++i) { buf[offset + i] = rnds[i]; } return buf; } return (0, stringify_js_1.unsafeStringify)(rnds); } __name(v42, "v4"); exports2.default = v42; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/sha1.js var require_sha1 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/sha1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var crypto_1 = require("crypto"); function sha12(bytes) { if (Array.isArray(bytes)) { bytes = Buffer.from(bytes); } else if (typeof bytes === "string") { bytes = Buffer.from(bytes, "utf8"); } return (0, crypto_1.createHash)("sha1").update(bytes).digest(); } __name(sha12, "sha1"); exports2.default = sha12; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v5.js var require_v5 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v5.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.URL = exports2.DNS = void 0; var sha1_js_1 = require_sha1(); var v35_js_1 = require_v35(); var v35_js_2 = require_v35(); Object.defineProperty(exports2, "DNS", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v35_js_2.DNS; }, "get") }); Object.defineProperty(exports2, "URL", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v35_js_2.URL; }, "get") }); function v52(value, namespace, buf, offset) { return (0, v35_js_1.default)(80, sha1_js_1.default, value, namespace, buf, offset); } __name(v52, "v5"); v52.DNS = v35_js_1.DNS; v52.URL = v35_js_1.URL; exports2.default = v52; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v6.js var require_v6 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v6.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var stringify_js_1 = require_stringify2(); var v1_js_1 = require_v1(); var v1ToV6_js_1 = require_v1ToV6(); function v6(options, buf, offset) { options ??= {}; offset ??= 0; let bytes = (0, v1_js_1.default)({ ...options, _v6: true }, new Uint8Array(16)); bytes = (0, v1ToV6_js_1.default)(bytes); if (buf) { for (let i = 0; i < 16; i++) { buf[offset + i] = bytes[i]; } return buf; } return (0, stringify_js_1.unsafeStringify)(bytes); } __name(v6, "v6"); exports2.default = v6; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v6ToV1.js var require_v6ToV1 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v6ToV1.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = v6ToV1; var parse_js_1 = require_parse4(); var stringify_js_1 = require_stringify2(); function v6ToV1(uuid) { const v6Bytes = typeof uuid === "string" ? (0, parse_js_1.default)(uuid) : uuid; const v1Bytes = _v6ToV1(v6Bytes); return typeof uuid === "string" ? (0, stringify_js_1.unsafeStringify)(v1Bytes) : v1Bytes; } __name(v6ToV1, "v6ToV1"); function _v6ToV1(v6Bytes) { return Uint8Array.of((v6Bytes[3] & 15) << 4 | v6Bytes[4] >> 4 & 15, (v6Bytes[4] & 15) << 4 | (v6Bytes[5] & 240) >> 4, (v6Bytes[5] & 15) << 4 | v6Bytes[6] & 15, v6Bytes[7], (v6Bytes[1] & 15) << 4 | (v6Bytes[2] & 240) >> 4, (v6Bytes[2] & 15) << 4 | (v6Bytes[3] & 240) >> 4, 16 | (v6Bytes[0] & 240) >> 4, (v6Bytes[0] & 15) << 4 | (v6Bytes[1] & 240) >> 4, v6Bytes[8], v6Bytes[9], v6Bytes[10], v6Bytes[11], v6Bytes[12], v6Bytes[13], v6Bytes[14], v6Bytes[15]); } __name(_v6ToV1, "_v6ToV1"); } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v7.js var require_v7 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/v7.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.updateV7State = updateV7State; var rng_js_1 = require_rng(); var stringify_js_1 = require_stringify2(); var _state = {}; function v7(options, buf, offset) { let bytes; if (options) { bytes = v7Bytes(options.random ?? options.rng?.() ?? (0, rng_js_1.default)(), options.msecs, options.seq, buf, offset); } else { const now = Date.now(); const rnds = (0, rng_js_1.default)(); updateV7State(_state, now, rnds); bytes = v7Bytes(rnds, _state.msecs, _state.seq, buf, offset); } return buf ? bytes : (0, stringify_js_1.unsafeStringify)(bytes); } __name(v7, "v7"); function updateV7State(state, now, rnds) { state.msecs ??= -Infinity; state.seq ??= 0; if (now > state.msecs) { state.seq = rnds[6] << 23 | rnds[7] << 16 | rnds[8] << 8 | rnds[9]; state.msecs = now; } else { state.seq = state.seq + 1 | 0; if (state.seq === 0) { state.msecs++; } } return state; } __name(updateV7State, "updateV7State"); function v7Bytes(rnds, msecs, seq, buf, offset = 0) { if (!buf) { buf = new Uint8Array(16); offset = 0; } msecs ??= Date.now(); seq ??= rnds[6] * 127 << 24 | rnds[7] << 16 | rnds[8] << 8 | rnds[9]; buf[offset++] = msecs / 1099511627776 & 255; buf[offset++] = msecs / 4294967296 & 255; buf[offset++] = msecs / 16777216 & 255; buf[offset++] = msecs / 65536 & 255; buf[offset++] = msecs / 256 & 255; buf[offset++] = msecs & 255; buf[offset++] = 112 | seq >>> 28 & 15; buf[offset++] = seq >>> 20 & 255; buf[offset++] = 128 | seq >>> 14 & 63; buf[offset++] = seq >>> 6 & 255; buf[offset++] = seq << 2 & 255 | rnds[10] & 3; buf[offset++] = rnds[11]; buf[offset++] = rnds[12]; buf[offset++] = rnds[13]; buf[offset++] = rnds[14]; buf[offset++] = rnds[15]; return buf; } __name(v7Bytes, "v7Bytes"); exports2.default = v7; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/version.js var require_version2 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/version.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var validate_js_1 = require_validate(); function version2(uuid) { if (!(0, validate_js_1.default)(uuid)) { throw TypeError("Invalid UUID"); } return parseInt(uuid.slice(14, 15), 16); } __name(version2, "version"); exports2.default = version2; } }); // ../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/index.js var require_cjs5 = __commonJS({ "../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/cjs/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.version = exports2.validate = exports2.v7 = exports2.v6ToV1 = exports2.v6 = exports2.v5 = exports2.v4 = exports2.v3 = exports2.v1ToV6 = exports2.v1 = exports2.stringify = exports2.parse = exports2.NIL = exports2.MAX = void 0; var max_js_1 = require_max4(); Object.defineProperty(exports2, "MAX", { enumerable: true, get: /* @__PURE__ */ __name(function() { return max_js_1.default; }, "get") }); var nil_js_1 = require_nil(); Object.defineProperty(exports2, "NIL", { enumerable: true, get: /* @__PURE__ */ __name(function() { return nil_js_1.default; }, "get") }); var parse_js_1 = require_parse4(); Object.defineProperty(exports2, "parse", { enumerable: true, get: /* @__PURE__ */ __name(function() { return parse_js_1.default; }, "get") }); var stringify_js_1 = require_stringify2(); Object.defineProperty(exports2, "stringify", { enumerable: true, get: /* @__PURE__ */ __name(function() { return stringify_js_1.default; }, "get") }); var v1_js_1 = require_v1(); Object.defineProperty(exports2, "v1", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v1_js_1.default; }, "get") }); var v1ToV6_js_1 = require_v1ToV6(); Object.defineProperty(exports2, "v1ToV6", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v1ToV6_js_1.default; }, "get") }); var v3_js_1 = require_v3(); Object.defineProperty(exports2, "v3", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v3_js_1.default; }, "get") }); var v4_js_1 = require_v4(); Object.defineProperty(exports2, "v4", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v4_js_1.default; }, "get") }); var v5_js_1 = require_v5(); Object.defineProperty(exports2, "v5", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v5_js_1.default; }, "get") }); var v6_js_1 = require_v6(); Object.defineProperty(exports2, "v6", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v6_js_1.default; }, "get") }); var v6ToV1_js_1 = require_v6ToV1(); Object.defineProperty(exports2, "v6ToV1", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v6ToV1_js_1.default; }, "get") }); var v7_js_1 = require_v7(); Object.defineProperty(exports2, "v7", { enumerable: true, get: /* @__PURE__ */ __name(function() { return v7_js_1.default; }, "get") }); var validate_js_1 = require_validate(); Object.defineProperty(exports2, "validate", { enumerable: true, get: /* @__PURE__ */ __name(function() { return validate_js_1.default; }, "get") }); var version_js_1 = require_version2(); Object.defineProperty(exports2, "version", { enumerable: true, get: /* @__PURE__ */ __name(function() { return version_js_1.default; }, "get") }); } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/schedule.messages.js var require_schedule_messages = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/schedule.messages.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.DUPLICATE_SCHEDULER = exports2.NO_SCHEDULER_FOUND = void 0; var NO_SCHEDULER_FOUND = /* @__PURE__ */ __name((schedulerName, name) => name ? `No ${schedulerName} was found with the given name (${name}). Check that you created one with a decorator or with the create API.` : `No ${schedulerName} was found. Check your configuration.`, "NO_SCHEDULER_FOUND"); exports2.NO_SCHEDULER_FOUND = NO_SCHEDULER_FOUND; var DUPLICATE_SCHEDULER = /* @__PURE__ */ __name((schedulerName, name) => `${schedulerName} with the given name (${name}) already exists. Ignored.`, "DUPLICATE_SCHEDULER"); exports2.DUPLICATE_SCHEDULER = DUPLICATE_SCHEDULER; } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/scheduler.registry.js var require_scheduler_registry = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/scheduler.registry.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var SchedulerRegistry_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SchedulerRegistry = void 0; var common_12 = require_common(); var schedule_messages_1 = require_schedule_messages(); var SchedulerRegistry = SchedulerRegistry_1 = class SchedulerRegistry { static { __name(this, "SchedulerRegistry"); } constructor() { this.logger = new common_12.Logger(SchedulerRegistry_1.name); this.cronJobs = /* @__PURE__ */ new Map(); this.timeouts = /* @__PURE__ */ new Map(); this.intervals = /* @__PURE__ */ new Map(); } doesExist(type, name) { switch (type) { case "cron": return this.cronJobs.has(name); case "interval": return this.intervals.has(name); case "timeout": return this.timeouts.has(name); default: return false; } } getCronJob(name) { const ref = this.cronJobs.get(name); if (!ref) { throw new Error((0, schedule_messages_1.NO_SCHEDULER_FOUND)("Cron Job", name)); } return ref; } getInterval(name) { const ref = this.intervals.get(name); if (typeof ref === "undefined") { throw new Error((0, schedule_messages_1.NO_SCHEDULER_FOUND)("Interval", name)); } return ref; } getTimeout(name) { const ref = this.timeouts.get(name); if (typeof ref === "undefined") { throw new Error((0, schedule_messages_1.NO_SCHEDULER_FOUND)("Timeout", name)); } return ref; } addCronJob(name, job) { const ref = this.cronJobs.get(name); if (ref) { throw new Error((0, schedule_messages_1.DUPLICATE_SCHEDULER)("Cron Job", name)); } job.fireOnTick = this.wrapFunctionInTryCatchBlocks(job.fireOnTick, job); this.cronJobs.set(name, job); } addInterval(name, intervalId) { const ref = this.intervals.get(name); if (ref) { throw new Error((0, schedule_messages_1.DUPLICATE_SCHEDULER)("Interval", name)); } this.intervals.set(name, intervalId); } addTimeout(name, timeoutId) { const ref = this.timeouts.get(name); if (ref) { throw new Error((0, schedule_messages_1.DUPLICATE_SCHEDULER)("Timeout", name)); } this.timeouts.set(name, timeoutId); } getCronJobs() { return this.cronJobs; } deleteCronJob(name) { const cronJob = this.getCronJob(name); cronJob.stop(); this.cronJobs.delete(name); } getIntervals() { return [...this.intervals.keys()]; } deleteInterval(name) { const interval = this.getInterval(name); clearInterval(interval); this.intervals.delete(name); } getTimeouts() { return [...this.timeouts.keys()]; } deleteTimeout(name) { const timeout = this.getTimeout(name); clearTimeout(timeout); this.timeouts.delete(name); } wrapFunctionInTryCatchBlocks(methodRef, instance) { return async (...args) => { try { await methodRef.call(instance, ...args); } catch (error) { this.logger.error(error); } }; } }; exports2.SchedulerRegistry = SchedulerRegistry; exports2.SchedulerRegistry = SchedulerRegistry = SchedulerRegistry_1 = __decorate2([ (0, common_12.Injectable)() ], SchedulerRegistry); } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/scheduler.orchestrator.js var require_scheduler_orchestrator = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/scheduler.orchestrator.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SchedulerOrchestrator = void 0; var common_12 = require_common(); var cron_1 = require_dist7(); var uuid_1 = require_cjs5(); var scheduler_registry_1 = require_scheduler_registry(); var SchedulerOrchestrator = class SchedulerOrchestrator { static { __name(this, "SchedulerOrchestrator"); } constructor(schedulerRegistry) { this.schedulerRegistry = schedulerRegistry; this.cronJobs = {}; this.timeouts = {}; this.intervals = {}; } onApplicationBootstrap() { this.mountTimeouts(); this.mountIntervals(); this.mountCron(); } onApplicationShutdown() { this.clearTimeouts(); this.clearIntervals(); this.closeCronJobs(); } mountIntervals() { const intervalKeys = Object.keys(this.intervals); intervalKeys.forEach((key) => { const options = this.intervals[key]; const intervalRef = setInterval(options.target, options.timeout); options.ref = intervalRef; this.schedulerRegistry.addInterval(key, intervalRef); }); } mountTimeouts() { const timeoutKeys = Object.keys(this.timeouts); timeoutKeys.forEach((key) => { const options = this.timeouts[key]; const timeoutRef = setTimeout(options.target, options.timeout); options.ref = timeoutRef; this.schedulerRegistry.addTimeout(key, timeoutRef); }); } mountCron() { const cronKeys = Object.keys(this.cronJobs); cronKeys.forEach((key) => { const { options, target } = this.cronJobs[key]; const cronJob = cron_1.CronJob.from({ ...options, onTick: target, start: !options.disabled }); this.cronJobs[key].ref = cronJob; this.schedulerRegistry.addCronJob(key, cronJob); }); } clearTimeouts() { this.schedulerRegistry.getTimeouts().forEach((key) => this.schedulerRegistry.deleteTimeout(key)); } clearIntervals() { this.schedulerRegistry.getIntervals().forEach((key) => this.schedulerRegistry.deleteInterval(key)); } closeCronJobs() { Array.from(this.schedulerRegistry.getCronJobs().keys()).forEach((key) => this.schedulerRegistry.deleteCronJob(key)); } addTimeout(methodRef, timeout, name = (0, uuid_1.v4)()) { this.timeouts[name] = { target: methodRef, timeout }; } addInterval(methodRef, timeout, name = (0, uuid_1.v4)()) { this.intervals[name] = { target: methodRef, timeout }; } addCron(methodRef, options) { const name = options.name || (0, uuid_1.v4)(); this.cronJobs[name] = { target: methodRef, options }; } }; exports2.SchedulerOrchestrator = SchedulerOrchestrator; exports2.SchedulerOrchestrator = SchedulerOrchestrator = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [scheduler_registry_1.SchedulerRegistry]) ], SchedulerOrchestrator); } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/schedule.explorer.js var require_schedule_explorer = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/schedule.explorer.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ScheduleExplorer = void 0; var common_12 = require_common(); var core_12 = require_core3(); var scheduler_type_enum_1 = require_scheduler_type_enum(); var schedule_metadata_accessor_1 = require_schedule_metadata_accessor(); var scheduler_orchestrator_1 = require_scheduler_orchestrator(); var schedule_constants_1 = require_schedule_constants(); var ScheduleExplorer = class ScheduleExplorer { static { __name(this, "ScheduleExplorer"); } constructor(moduleOptions, schedulerOrchestrator, discoveryService, metadataAccessor, metadataScanner) { this.moduleOptions = moduleOptions; this.schedulerOrchestrator = schedulerOrchestrator; this.discoveryService = discoveryService; this.metadataAccessor = metadataAccessor; this.metadataScanner = metadataScanner; this.logger = new common_12.Logger("Scheduler"); } onModuleInit() { this.explore(); } explore() { const instanceWrappers = [ ...this.discoveryService.getControllers(), ...this.discoveryService.getProviders() ]; instanceWrappers.forEach((wrapper) => { const { instance } = wrapper; if (!instance || !Object.getPrototypeOf(instance)) { return; } const processMethod = /* @__PURE__ */ __name((name) => wrapper.isDependencyTreeStatic() ? this.lookupSchedulers(instance, name) : this.warnForNonStaticProviders(wrapper, instance, name), "processMethod"); if (!Reflect.has(this.metadataScanner, "getAllMethodNames")) { this.metadataScanner.scanFromPrototype(instance, Object.getPrototypeOf(instance), processMethod); return; } this.metadataScanner.getAllMethodNames(Object.getPrototypeOf(instance)).forEach(processMethod); }); } lookupSchedulers(instance, key) { const methodRef = instance[key]; const metadata = this.metadataAccessor.getSchedulerType(methodRef); switch (metadata) { case scheduler_type_enum_1.SchedulerType.CRON: { if (!this.moduleOptions.cronJobs) { return; } const cronMetadata = this.metadataAccessor.getCronMetadata(methodRef); const cronFn = this.wrapFunctionInTryCatchBlocks(methodRef, instance); return this.schedulerOrchestrator.addCron(cronFn, cronMetadata); } case scheduler_type_enum_1.SchedulerType.TIMEOUT: { if (!this.moduleOptions.timeouts) { return; } const timeoutMetadata = this.metadataAccessor.getTimeoutMetadata(methodRef); const name = this.metadataAccessor.getSchedulerName(methodRef); const timeoutFn = this.wrapFunctionInTryCatchBlocks(methodRef, instance); return this.schedulerOrchestrator.addTimeout(timeoutFn, timeoutMetadata.timeout, name); } case scheduler_type_enum_1.SchedulerType.INTERVAL: { if (!this.moduleOptions.intervals) { return; } const intervalMetadata = this.metadataAccessor.getIntervalMetadata(methodRef); const name = this.metadataAccessor.getSchedulerName(methodRef); const intervalFn = this.wrapFunctionInTryCatchBlocks(methodRef, instance); return this.schedulerOrchestrator.addInterval(intervalFn, intervalMetadata.timeout, name); } } } warnForNonStaticProviders(wrapper, instance, key) { const methodRef = instance[key]; const metadata = this.metadataAccessor.getSchedulerType(methodRef); switch (metadata) { case scheduler_type_enum_1.SchedulerType.CRON: { if (!this.moduleOptions.cronJobs) { return; } this.logger.warn(`Cannot register cron job "${wrapper.name}@${key}" because it is defined in a non static provider.`); break; } case scheduler_type_enum_1.SchedulerType.TIMEOUT: { if (!this.moduleOptions.timeouts) { return; } this.logger.warn(`Cannot register timeout "${wrapper.name}@${key}" because it is defined in a non static provider.`); break; } case scheduler_type_enum_1.SchedulerType.INTERVAL: { if (!this.moduleOptions.intervals) { return; } this.logger.warn(`Cannot register interval "${wrapper.name}@${key}" because it is defined in a non static provider.`); break; } } } wrapFunctionInTryCatchBlocks(methodRef, instance) { return async (...args) => { try { await methodRef.call(instance, ...args); } catch (error) { this.logger.error(error); } }; } }; exports2.ScheduleExplorer = ScheduleExplorer; exports2.ScheduleExplorer = ScheduleExplorer = __decorate2([ (0, common_12.Injectable)(), __param2(0, (0, common_12.Inject)(schedule_constants_1.SCHEDULE_MODULE_OPTIONS)), __metadata2("design:paramtypes", [ Object, scheduler_orchestrator_1.SchedulerOrchestrator, core_12.DiscoveryService, schedule_metadata_accessor_1.SchedulerMetadataAccessor, core_12.MetadataScanner ]) ], ScheduleExplorer); } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/schedule.module.js var require_schedule_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/schedule.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var ScheduleModule_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ScheduleModule = void 0; var common_12 = require_common(); var core_12 = require_core3(); var schedule_metadata_accessor_1 = require_schedule_metadata_accessor(); var schedule_explorer_1 = require_schedule_explorer(); var scheduler_orchestrator_1 = require_scheduler_orchestrator(); var scheduler_registry_1 = require_scheduler_registry(); var schedule_constants_1 = require_schedule_constants(); var ScheduleModule = ScheduleModule_1 = class ScheduleModule { static { __name(this, "ScheduleModule"); } static forRoot(options) { const optionsWithDefaults = { cronJobs: true, intervals: true, timeouts: true, ...options }; return { global: true, module: ScheduleModule_1, providers: [ schedule_explorer_1.ScheduleExplorer, scheduler_registry_1.SchedulerRegistry, { provide: schedule_constants_1.SCHEDULE_MODULE_OPTIONS, useValue: optionsWithDefaults } ], exports: [scheduler_registry_1.SchedulerRegistry] }; } }; exports2.ScheduleModule = ScheduleModule; exports2.ScheduleModule = ScheduleModule = ScheduleModule_1 = __decorate2([ (0, common_12.Module)({ imports: [core_12.DiscoveryModule], providers: [schedule_metadata_accessor_1.SchedulerMetadataAccessor, scheduler_orchestrator_1.SchedulerOrchestrator] }) ], ScheduleModule); } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/index.js var require_dist8 = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/dist/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_enums4(), exports2); __exportStar2(require_decorators7(), exports2); __exportStar2(require_schedule_module(), exports2); __exportStar2(require_scheduler_registry(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/index.js var require_schedule = __commonJS({ "../../node_modules/.pnpm/@nestjs+schedule@4.1.2_@nes_1fc95c98db53f1c70189a2717dbbe4e1/node_modules/@nestjs/schedule/index.js"(exports2) { "use strict"; function __export2(m) { for (var p in m) if (!exports2.hasOwnProperty(p)) exports2[p] = m[p]; } __name(__export2, "__export"); exports2.__esModule = true; __export2(require_dist8()); } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler-module-options.interface.js var require_throttler_module_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler-module-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler-storage.interface.js var require_throttler_storage_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler-storage.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ThrottlerStorage = void 0; exports2.ThrottlerStorage = Symbol("ThrottlerStorage"); } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.constants.js var require_throttler_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.THROTTLER_SKIP = exports2.THROTTLER_OPTIONS = exports2.THROTTLER_KEY_GENERATOR = exports2.THROTTLER_TRACKER = exports2.THROTTLER_TTL = exports2.THROTTLER_LIMIT = void 0; exports2.THROTTLER_LIMIT = "THROTTLER:LIMIT"; exports2.THROTTLER_TTL = "THROTTLER:TTL"; exports2.THROTTLER_TRACKER = "THROTTLER:TRACKER"; exports2.THROTTLER_KEY_GENERATOR = "THROTTLER:KEY_GENERATOR"; exports2.THROTTLER_OPTIONS = "THROTTLER:MODULE_OPTIONS"; exports2.THROTTLER_SKIP = "THROTTLER:SKIP"; } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.service.js var require_throttler_service = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ThrottlerStorageService = void 0; var common_12 = require_common(); var ThrottlerStorageService = class ThrottlerStorageService { static { __name(this, "ThrottlerStorageService"); } constructor() { this._storage = {}; this.timeoutIds = []; } get storage() { return this._storage; } getExpirationTime(key) { return Math.floor((this.storage[key].expiresAt - Date.now()) / 1e3); } setExpirationTime(key, ttlMilliseconds) { const timeoutId = setTimeout(() => { this.storage[key].totalHits--; clearTimeout(timeoutId); this.timeoutIds = this.timeoutIds.filter((id) => id != timeoutId); }, ttlMilliseconds); this.timeoutIds.push(timeoutId); } async increment(key, ttl) { const ttlMilliseconds = ttl; if (!this.storage[key]) { this.storage[key] = { totalHits: 0, expiresAt: Date.now() + ttlMilliseconds }; } let timeToExpire = this.getExpirationTime(key); if (timeToExpire <= 0) { this.storage[key].expiresAt = Date.now() + ttlMilliseconds; timeToExpire = this.getExpirationTime(key); } this.storage[key].totalHits++; this.setExpirationTime(key, ttlMilliseconds); return { totalHits: this.storage[key].totalHits, timeToExpire }; } onApplicationShutdown() { this.timeoutIds.forEach(clearTimeout); } }; exports2.ThrottlerStorageService = ThrottlerStorageService; exports2.ThrottlerStorageService = ThrottlerStorageService = __decorate2([ (0, common_12.Injectable)() ], ThrottlerStorageService); } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.providers.js var require_throttler_providers = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.providers.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getStorageToken = exports2.getOptionsToken = exports2.ThrottlerStorageProvider = exports2.createThrottlerProviders = void 0; var throttler_storage_interface_1 = require_throttler_storage_interface(); var throttler_constants_1 = require_throttler_constants(); var throttler_service_1 = require_throttler_service(); function createThrottlerProviders(options) { return [ { provide: throttler_constants_1.THROTTLER_OPTIONS, useValue: options } ]; } __name(createThrottlerProviders, "createThrottlerProviders"); exports2.createThrottlerProviders = createThrottlerProviders; exports2.ThrottlerStorageProvider = { provide: throttler_storage_interface_1.ThrottlerStorage, useFactory: /* @__PURE__ */ __name((options) => { return !Array.isArray(options) && options.storage ? options.storage : new throttler_service_1.ThrottlerStorageService(); }, "useFactory"), inject: [throttler_constants_1.THROTTLER_OPTIONS] }; var getOptionsToken = /* @__PURE__ */ __name(() => throttler_constants_1.THROTTLER_OPTIONS, "getOptionsToken"); exports2.getOptionsToken = getOptionsToken; var getStorageToken = /* @__PURE__ */ __name(() => throttler_storage_interface_1.ThrottlerStorage, "getStorageToken"); exports2.getStorageToken = getStorageToken; } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.decorator.js var require_throttler_decorator = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.InjectThrottlerStorage = exports2.InjectThrottlerOptions = exports2.SkipThrottle = exports2.Throttle = void 0; var common_12 = require_common(); var throttler_constants_1 = require_throttler_constants(); var throttler_providers_1 = require_throttler_providers(); function setThrottlerMetadata(target, options) { for (const name in options) { Reflect.defineMetadata(throttler_constants_1.THROTTLER_TTL + name, options[name].ttl, target); Reflect.defineMetadata(throttler_constants_1.THROTTLER_LIMIT + name, options[name].limit, target); Reflect.defineMetadata(throttler_constants_1.THROTTLER_TRACKER + name, options[name].getTracker, target); Reflect.defineMetadata(throttler_constants_1.THROTTLER_KEY_GENERATOR + name, options[name].generateKey, target); } } __name(setThrottlerMetadata, "setThrottlerMetadata"); var Throttle = /* @__PURE__ */ __name((options) => { return (target, propertyKey, descriptor) => { if (descriptor) { setThrottlerMetadata(descriptor.value, options); return descriptor; } setThrottlerMetadata(target, options); return target; }; }, "Throttle"); exports2.Throttle = Throttle; var SkipThrottle = /* @__PURE__ */ __name((skip = { default: true }) => { return (target, propertyKey, descriptor) => { var _a; const reflectionTarget = (_a = descriptor === null || descriptor === void 0 ? void 0 : descriptor.value) !== null && _a !== void 0 ? _a : target; for (const key in skip) { Reflect.defineMetadata(throttler_constants_1.THROTTLER_SKIP + key, skip[key], reflectionTarget); } return descriptor !== null && descriptor !== void 0 ? descriptor : target; }; }, "SkipThrottle"); exports2.SkipThrottle = SkipThrottle; var InjectThrottlerOptions = /* @__PURE__ */ __name(() => (0, common_12.Inject)((0, throttler_providers_1.getOptionsToken)()), "InjectThrottlerOptions"); exports2.InjectThrottlerOptions = InjectThrottlerOptions; var InjectThrottlerStorage = /* @__PURE__ */ __name(() => (0, common_12.Inject)((0, throttler_providers_1.getStorageToken)()), "InjectThrottlerStorage"); exports2.InjectThrottlerStorage = InjectThrottlerStorage; } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.exception.js var require_throttler_exception = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.exception.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ThrottlerException = exports2.throttlerMessage = void 0; var common_12 = require_common(); exports2.throttlerMessage = "ThrottlerException: Too Many Requests"; var ThrottlerException = class extends common_12.HttpException { static { __name(this, "ThrottlerException"); } constructor(message) { super(`${message || exports2.throttlerMessage}`, common_12.HttpStatus.TOO_MANY_REQUESTS); } }; exports2.ThrottlerException = ThrottlerException; } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/hash.js var require_hash = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/hash.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.md5 = void 0; var crypto5 = require("node:crypto"); function md52(text) { return crypto5.createHash("md5").update(text).digest("hex"); } __name(md52, "md5"); exports2.md5 = md52; } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.guard.js var require_throttler_guard = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.guard.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ThrottlerGuard = void 0; var common_12 = require_common(); var core_12 = require_core3(); var hash_1 = require_hash(); var throttler_storage_interface_1 = require_throttler_storage_interface(); var throttler_constants_1 = require_throttler_constants(); var throttler_decorator_1 = require_throttler_decorator(); var throttler_exception_1 = require_throttler_exception(); var ThrottlerGuard = class ThrottlerGuard { static { __name(this, "ThrottlerGuard"); } constructor(options, storageService, reflector) { this.options = options; this.storageService = storageService; this.reflector = reflector; this.headerPrefix = "X-RateLimit"; this.errorMessage = throttler_exception_1.throttlerMessage; } async onModuleInit() { var _a, _b; var _c, _d; this.throttlers = (Array.isArray(this.options) ? this.options : this.options.throttlers).sort((first, second) => { if (typeof first.ttl === "function") { return 1; } if (typeof second.ttl === "function") { return 0; } return first.ttl - second.ttl; }).map((opt) => { var _a2; return Object.assign(Object.assign({}, opt), { name: (_a2 = opt.name) !== null && _a2 !== void 0 ? _a2 : "default" }); }); if (Array.isArray(this.options)) { this.commonOptions = {}; } else { this.commonOptions = { skipIf: this.options.skipIf, ignoreUserAgents: this.options.ignoreUserAgents, getTracker: this.options.getTracker, generateKey: this.options.generateKey }; } (_a = (_c = this.commonOptions).getTracker) !== null && _a !== void 0 ? _a : _c.getTracker = this.getTracker.bind(this); (_b = (_d = this.commonOptions).generateKey) !== null && _b !== void 0 ? _b : _d.generateKey = this.generateKey.bind(this); } async canActivate(context) { const handler = context.getHandler(); const classRef = context.getClass(); if (await this.shouldSkip(context)) { return true; } const continues = []; for (const namedThrottler of this.throttlers) { const skip = this.reflector.getAllAndOverride(throttler_constants_1.THROTTLER_SKIP + namedThrottler.name, [ handler, classRef ]); const skipIf = namedThrottler.skipIf || this.commonOptions.skipIf; if (skip || (skipIf === null || skipIf === void 0 ? void 0 : skipIf(context))) { continues.push(true); continue; } const routeOrClassLimit = this.reflector.getAllAndOverride(throttler_constants_1.THROTTLER_LIMIT + namedThrottler.name, [handler, classRef]); const routeOrClassTtl = this.reflector.getAllAndOverride(throttler_constants_1.THROTTLER_TTL + namedThrottler.name, [handler, classRef]); const routeOrClassGetTracker = this.reflector.getAllAndOverride(throttler_constants_1.THROTTLER_TRACKER + namedThrottler.name, [handler, classRef]); const routeOrClassGetKeyGenerator = this.reflector.getAllAndOverride(throttler_constants_1.THROTTLER_KEY_GENERATOR + namedThrottler.name, [handler, classRef]); const limit = await this.resolveValue(context, routeOrClassLimit || namedThrottler.limit); const ttl = await this.resolveValue(context, routeOrClassTtl || namedThrottler.ttl); const getTracker = routeOrClassGetTracker || namedThrottler.getTracker || this.commonOptions.getTracker; const generateKey = routeOrClassGetKeyGenerator || namedThrottler.generateKey || this.commonOptions.generateKey; continues.push(await this.handleRequest(context, limit, ttl, namedThrottler, getTracker, generateKey)); } return continues.every((cont) => cont); } async shouldSkip(_context) { return false; } async handleRequest(context, limit, ttl, throttler, getTracker, generateKey) { var _a; const { req, res } = this.getRequestResponse(context); const ignoreUserAgents = (_a = throttler.ignoreUserAgents) !== null && _a !== void 0 ? _a : this.commonOptions.ignoreUserAgents; if (Array.isArray(ignoreUserAgents)) { for (const pattern of ignoreUserAgents) { if (pattern.test(req.headers["user-agent"])) { return true; } } } const tracker = await getTracker(req); const key = generateKey(context, tracker, throttler.name); const { totalHits, timeToExpire } = await this.storageService.increment(key, ttl); const getThrottlerSuffix = /* @__PURE__ */ __name((name) => name === "default" ? "" : `-${name}`, "getThrottlerSuffix"); if (totalHits > limit) { res.header(`Retry-After${getThrottlerSuffix(throttler.name)}`, timeToExpire); await this.throwThrottlingException(context, { limit, ttl, key, tracker, totalHits, timeToExpire }); } res.header(`${this.headerPrefix}-Limit${getThrottlerSuffix(throttler.name)}`, limit); res.header(`${this.headerPrefix}-Remaining${getThrottlerSuffix(throttler.name)}`, Math.max(0, limit - totalHits)); res.header(`${this.headerPrefix}-Reset${getThrottlerSuffix(throttler.name)}`, timeToExpire); return true; } async getTracker(req) { return req.ip; } getRequestResponse(context) { const http = context.switchToHttp(); return { req: http.getRequest(), res: http.getResponse() }; } generateKey(context, suffix, name) { const prefix = `${context.getClass().name}-${context.getHandler().name}-${name}`; return (0, hash_1.md5)(`${prefix}-${suffix}`); } async throwThrottlingException(context, throttlerLimitDetail) { throw new throttler_exception_1.ThrottlerException(await this.getErrorMessage(context, throttlerLimitDetail)); } async getErrorMessage(context, throttlerLimitDetail) { if (!Array.isArray(this.options)) { if (!this.options.errorMessage) return this.errorMessage; return typeof this.options.errorMessage === "function" ? this.options.errorMessage(context, throttlerLimitDetail) : this.options.errorMessage; } return this.errorMessage; } async resolveValue(context, resolvableValue) { return typeof resolvableValue === "function" ? resolvableValue(context) : resolvableValue; } }; exports2.ThrottlerGuard = ThrottlerGuard; exports2.ThrottlerGuard = ThrottlerGuard = __decorate2([ (0, common_12.Injectable)(), __param2(0, (0, throttler_decorator_1.InjectThrottlerOptions)()), __param2(1, (0, throttler_decorator_1.InjectThrottlerStorage)()), __metadata2("design:paramtypes", [Object, Object, core_12.Reflector]) ], ThrottlerGuard); } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.module.js var require_throttler_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/throttler.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var ThrottlerModule_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ThrottlerModule = void 0; var common_12 = require_common(); var throttler_constants_1 = require_throttler_constants(); var throttler_providers_1 = require_throttler_providers(); var ThrottlerModule = ThrottlerModule_1 = class ThrottlerModule { static { __name(this, "ThrottlerModule"); } static forRoot(options = []) { const providers = [...(0, throttler_providers_1.createThrottlerProviders)(options), throttler_providers_1.ThrottlerStorageProvider]; return { module: ThrottlerModule_1, providers, exports: providers }; } static forRootAsync(options) { const providers = [...this.createAsyncProviders(options), throttler_providers_1.ThrottlerStorageProvider]; return { module: ThrottlerModule_1, imports: options.imports || [], providers, exports: providers }; } static createAsyncProviders(options) { if (options.useExisting || options.useFactory) { return [this.createAsyncOptionsProvider(options)]; } return [ this.createAsyncOptionsProvider(options), { provide: options.useClass, useClass: options.useClass } ]; } static createAsyncOptionsProvider(options) { if (options.useFactory) { return { provide: throttler_constants_1.THROTTLER_OPTIONS, useFactory: options.useFactory, inject: options.inject || [] }; } return { provide: throttler_constants_1.THROTTLER_OPTIONS, useFactory: /* @__PURE__ */ __name(async (optionsFactory) => await optionsFactory.createThrottlerOptions(), "useFactory"), inject: [options.useExisting || options.useClass] }; } }; exports2.ThrottlerModule = ThrottlerModule; exports2.ThrottlerModule = ThrottlerModule = ThrottlerModule_1 = __decorate2([ (0, common_12.Global)(), (0, common_12.Module)({}) ], ThrottlerModule); } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/utilities.js var require_utilities = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/utilities.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.weeks = exports2.days = exports2.hours = exports2.minutes = exports2.seconds = void 0; var seconds = /* @__PURE__ */ __name((howMany) => howMany * 1e3, "seconds"); exports2.seconds = seconds; var minutes = /* @__PURE__ */ __name((howMany) => 60 * howMany * (0, exports2.seconds)(1), "minutes"); exports2.minutes = minutes; var hours = /* @__PURE__ */ __name((howMany) => 60 * howMany * (0, exports2.minutes)(1), "hours"); exports2.hours = hours; var days = /* @__PURE__ */ __name((howMany) => 24 * howMany * (0, exports2.hours)(1), "days"); exports2.days = days; var weeks = /* @__PURE__ */ __name((howMany) => 7 * howMany * (0, exports2.days)(1), "weeks"); exports2.weeks = weeks; } }); // ../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/index.js var require_dist9 = __commonJS({ "../../node_modules/.pnpm/@nestjs+throttler@5.2.0_@ne_a219669f3face2dd72051e3d1e40dfc4/node_modules/@nestjs/throttler/dist/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.getStorageToken = exports2.getOptionsToken = void 0; __exportStar2(require_throttler_module_options_interface(), exports2); __exportStar2(require_throttler_storage_interface(), exports2); __exportStar2(require_throttler_decorator(), exports2); __exportStar2(require_throttler_exception(), exports2); __exportStar2(require_throttler_guard(), exports2); __exportStar2(require_throttler_module(), exports2); var throttler_providers_1 = require_throttler_providers(); Object.defineProperty(exports2, "getOptionsToken", { enumerable: true, get: /* @__PURE__ */ __name(function() { return throttler_providers_1.getOptionsToken; }, "get") }); Object.defineProperty(exports2, "getStorageToken", { enumerable: true, get: /* @__PURE__ */ __name(function() { return throttler_providers_1.getStorageToken; }, "get") }); __exportStar2(require_throttler_service(), exports2); __exportStar2(require_utilities(), exports2); } }); // dist/src/config/env.validation.js var require_env_validation = __commonJS({ "dist/src/config/env.validation.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.EnvironmentVariables = void 0; exports2.validateEnv = validateEnv; var class_transformer_1 = require_cjs2(); var class_validator_1 = require_cjs(); var Environment; (function(Environment2) { Environment2["Development"] = "development"; Environment2["Production"] = "production"; Environment2["Test"] = "test"; })(Environment || (Environment = {})); var EnvironmentVariables = class { static { __name(this, "EnvironmentVariables"); } constructor() { this.NODE_ENV = Environment.Development; this.PORT = 3e3; this.REDIS_HOST = "localhost"; this.REDIS_PORT = 6379; this.JWT_USER_EXPIRES_IN = "7d"; this.JWT_ADMIN_ACCESS_EXPIRES_IN = "1h"; this.JWT_ADMIN_REFRESH_EXPIRES_IN = "7d"; this.RAYGAN_SMS_API_BASE_URL = "https://api.raygansms.com"; this.SMS_DRIVER = "mock"; this.STORAGE_DRIVER = "local"; this.STORAGE_LOCAL_ROOT = "./uploads"; this.STORAGE_PUBLIC_URL = "http://localhost:3000/uploads"; this.CORS_ADMIN_ORIGIN = "http://localhost:5173"; this.CORS_CLIENT_ORIGIN = "http://localhost:5174"; } }; exports2.EnvironmentVariables = EnvironmentVariables; __decorate2([ (0, class_validator_1.IsEnum)(Environment), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "NODE_ENV", void 0); __decorate2([ (0, class_validator_1.IsNumber)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Number) ], EnvironmentVariables.prototype, "PORT", void 0); __decorate2([ (0, class_validator_1.IsString)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "DATABASE_URL", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "REDIS_HOST", void 0); __decorate2([ (0, class_validator_1.IsNumber)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Number) ], EnvironmentVariables.prototype, "REDIS_PORT", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "REDIS_PASSWORD", void 0); __decorate2([ (0, class_validator_1.IsString)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "JWT_USER_SECRET", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "JWT_USER_EXPIRES_IN", void 0); __decorate2([ (0, class_validator_1.IsString)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "JWT_ADMIN_ACCESS_SECRET", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "JWT_ADMIN_ACCESS_EXPIRES_IN", void 0); __decorate2([ (0, class_validator_1.IsString)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "JWT_ADMIN_REFRESH_SECRET", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "JWT_ADMIN_REFRESH_EXPIRES_IN", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "RAYGAN_SMS_USERNAME", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "RAYGAN_SMS_PASSWORD", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "RAYGAN_SMS_LINE_NUMBER", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "RAYGAN_SMS_API_BASE_URL", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "SMS_DRIVER", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "STORAGE_DRIVER", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "STORAGE_LOCAL_ROOT", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "STORAGE_PUBLIC_URL", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "CORS_ADMIN_ORIGIN", void 0); __decorate2([ (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], EnvironmentVariables.prototype, "CORS_CLIENT_ORIGIN", void 0); function validateEnv(config) { const validatedConfig = (0, class_transformer_1.plainToInstance)(EnvironmentVariables, config, { enableImplicitConversion: true }); const errors = (0, class_validator_1.validateSync)(validatedConfig, { skipMissingProperties: false }); if (errors.length > 0) { throw new Error(`Config validation error: ${errors.toString()}`); } return validatedConfig; } __name(validateEnv, "validateEnv"); } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/abstract.strategy.js var require_abstract_strategy = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/abstract.strategy.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AbstractStrategy = void 0; var AbstractStrategy = class { static { __name(this, "AbstractStrategy"); } }; exports2.AbstractStrategy = AbstractStrategy; } }); // ../../node_modules/.pnpm/pause@0.0.1/node_modules/pause/index.js var require_pause = __commonJS({ "../../node_modules/.pnpm/pause@0.0.1/node_modules/pause/index.js"(exports2, module2) { module2.exports = function(obj2) { var onData, onEnd, events = []; obj2.on("data", onData = /* @__PURE__ */ __name(function(data, encoding) { events.push(["data", data, encoding]); }, "onData")); obj2.on("end", onEnd = /* @__PURE__ */ __name(function(data, encoding) { events.push(["end", data, encoding]); }, "onEnd")); return { end: /* @__PURE__ */ __name(function() { obj2.removeListener("data", onData); obj2.removeListener("end", onEnd); }, "end"), resume: /* @__PURE__ */ __name(function() { this.end(); for (var i = 0, len = events.length; i < len; ++i) { obj2.emit.apply(obj2, events[i]); } }, "resume") }; }; } }); // ../../node_modules/.pnpm/passport-strategy@1.0.0/node_modules/passport-strategy/lib/strategy.js var require_strategy = __commonJS({ "../../node_modules/.pnpm/passport-strategy@1.0.0/node_modules/passport-strategy/lib/strategy.js"(exports2, module2) { function Strategy() { } __name(Strategy, "Strategy"); Strategy.prototype.authenticate = function(req, options) { throw new Error("Strategy#authenticate must be overridden by subclass"); }; module2.exports = Strategy; } }); // ../../node_modules/.pnpm/passport-strategy@1.0.0/node_modules/passport-strategy/lib/index.js var require_lib7 = __commonJS({ "../../node_modules/.pnpm/passport-strategy@1.0.0/node_modules/passport-strategy/lib/index.js"(exports2, module2) { var Strategy = require_strategy(); exports2 = module2.exports = Strategy; exports2.Strategy = Strategy; } }); // ../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/strategies/session.js var require_session = __commonJS({ "../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/strategies/session.js"(exports2, module2) { var pause = require_pause(); var util2 = require("util"); var Strategy = require_lib7(); function SessionStrategy(options, deserializeUser) { if (typeof options == "function") { deserializeUser = options; options = void 0; } options = options || {}; Strategy.call(this); this.name = "session"; this._key = options.key || "passport"; this._deserializeUser = deserializeUser; } __name(SessionStrategy, "SessionStrategy"); util2.inherits(SessionStrategy, Strategy); SessionStrategy.prototype.authenticate = function(req, options) { if (!req.session) { return this.error(new Error("Login sessions require session support. Did you forget to use `express-session` middleware?")); } options = options || {}; var self2 = this, su; if (req.session[this._key]) { su = req.session[this._key].user; } if (su || su === 0) { var paused = options.pauseStream ? pause(req) : null; this._deserializeUser(su, req, function(err, user) { if (err) { return self2.error(err); } if (!user) { delete req.session[self2._key].user; } else { var property = req._userProperty || "user"; req[property] = user; } self2.pass(); if (paused) { paused.resume(); } }); } else { self2.pass(); } }; module2.exports = SessionStrategy; } }); // ../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/sessionmanager.js var require_sessionmanager = __commonJS({ "../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/sessionmanager.js"(exports2, module2) { var merge = require_utils_merge(); function SessionManager(options, serializeUser) { if (typeof options == "function") { serializeUser = options; options = void 0; } options = options || {}; this._key = options.key || "passport"; this._serializeUser = serializeUser; } __name(SessionManager, "SessionManager"); SessionManager.prototype.logIn = function(req, user, options, cb) { if (typeof options == "function") { cb = options; options = {}; } options = options || {}; if (!req.session) { return cb(new Error("Login sessions require session support. Did you forget to use `express-session` middleware?")); } var self2 = this; var prevSession = req.session; req.session.regenerate(function(err) { if (err) { return cb(err); } self2._serializeUser(user, req, function(err2, obj2) { if (err2) { return cb(err2); } if (options.keepSessionInfo) { merge(req.session, prevSession); } if (!req.session[self2._key]) { req.session[self2._key] = {}; } req.session[self2._key].user = obj2; req.session.save(function(err3) { if (err3) { return cb(err3); } cb(); }); }); }); }; SessionManager.prototype.logOut = function(req, options, cb) { if (typeof options == "function") { cb = options; options = {}; } options = options || {}; if (!req.session) { return cb(new Error("Login sessions require session support. Did you forget to use `express-session` middleware?")); } var self2 = this; if (req.session[this._key]) { delete req.session[this._key].user; } var prevSession = req.session; req.session.save(function(err) { if (err) { return cb(err); } req.session.regenerate(function(err2) { if (err2) { return cb(err2); } if (options.keepSessionInfo) { merge(req.session, prevSession); } cb(); }); }); }; module2.exports = SessionManager; } }); // ../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/http/request.js var require_request3 = __commonJS({ "../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/http/request.js"(exports2, module2) { var req = exports2 = module2.exports = {}; req.login = req.logIn = function(user, options, done) { if (typeof options == "function") { done = options; options = {}; } options = options || {}; var property = this._userProperty || "user"; var session = options.session === void 0 ? true : options.session; this[property] = user; if (session && this._sessionManager) { if (typeof done != "function") { throw new Error("req#login requires a callback function"); } var self2 = this; this._sessionManager.logIn(this, user, options, function(err) { if (err) { self2[property] = null; return done(err); } done(); }); } else { done && done(); } }; req.logout = req.logOut = function(options, done) { if (typeof options == "function") { done = options; options = {}; } options = options || {}; var property = this._userProperty || "user"; this[property] = null; if (this._sessionManager) { if (typeof done != "function") { throw new Error("req#logout requires a callback function"); } this._sessionManager.logOut(this, options, done); } else { done && done(); } }; req.isAuthenticated = function() { var property = this._userProperty || "user"; return this[property] ? true : false; }; req.isUnauthenticated = function() { return !this.isAuthenticated(); }; } }); // ../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/middleware/initialize.js var require_initialize = __commonJS({ "../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/middleware/initialize.js"(exports2, module2) { var IncomingMessageExt = require_request3(); module2.exports = /* @__PURE__ */ __name(function initialize(passport, options) { options = options || {}; return /* @__PURE__ */ __name(function initialize2(req, res, next) { req.login = req.logIn = req.logIn || IncomingMessageExt.logIn; req.logout = req.logOut = req.logOut || IncomingMessageExt.logOut; req.isAuthenticated = req.isAuthenticated || IncomingMessageExt.isAuthenticated; req.isUnauthenticated = req.isUnauthenticated || IncomingMessageExt.isUnauthenticated; req._sessionManager = passport._sm; if (options.userProperty) { req._userProperty = options.userProperty; } var compat = options.compat === void 0 ? true : options.compat; if (compat) { passport._userProperty = options.userProperty || "user"; req._passport = {}; req._passport.instance = passport; } next(); }, "initialize"); }, "initialize"); } }); // ../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/errors/authenticationerror.js var require_authenticationerror = __commonJS({ "../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/errors/authenticationerror.js"(exports2, module2) { function AuthenticationError(message, status) { Error.call(this); Error.captureStackTrace(this, arguments.callee); this.name = "AuthenticationError"; this.message = message; this.status = status || 401; } __name(AuthenticationError, "AuthenticationError"); AuthenticationError.prototype.__proto__ = Error.prototype; module2.exports = AuthenticationError; } }); // ../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/middleware/authenticate.js var require_authenticate = __commonJS({ "../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/middleware/authenticate.js"(exports2, module2) { var http = require("http"); var IncomingMessageExt = require_request3(); var AuthenticationError = require_authenticationerror(); module2.exports = /* @__PURE__ */ __name(function authenticate(passport, name, options, callback) { if (typeof options == "function") { callback = options; options = {}; } options = options || {}; var multi = true; if (!Array.isArray(name)) { name = [name]; multi = false; } return /* @__PURE__ */ __name(function authenticate2(req, res, next) { req.login = req.logIn = req.logIn || IncomingMessageExt.logIn; req.logout = req.logOut = req.logOut || IncomingMessageExt.logOut; req.isAuthenticated = req.isAuthenticated || IncomingMessageExt.isAuthenticated; req.isUnauthenticated = req.isUnauthenticated || IncomingMessageExt.isUnauthenticated; req._sessionManager = passport._sm; var failures = []; function allFailed() { if (callback) { if (!multi) { return callback(null, false, failures[0].challenge, failures[0].status); } else { var challenges = failures.map(function(f) { return f.challenge; }); var statuses = failures.map(function(f) { return f.status; }); return callback(null, false, challenges, statuses); } } var failure = failures[0] || {}, challenge = failure.challenge || {}, msg; if (options.failureFlash) { var flash = options.failureFlash; if (typeof flash == "string") { flash = { type: "error", message: flash }; } flash.type = flash.type || "error"; var type = flash.type || challenge.type || "error"; msg = flash.message || challenge.message || challenge; if (typeof msg == "string") { req.flash(type, msg); } } if (options.failureMessage) { msg = options.failureMessage; if (typeof msg == "boolean") { msg = challenge.message || challenge; } if (typeof msg == "string") { req.session.messages = req.session.messages || []; req.session.messages.push(msg); } } if (options.failureRedirect) { return res.redirect(options.failureRedirect); } var rchallenge = [], rstatus, status; for (var j = 0, len = failures.length; j < len; j++) { failure = failures[j]; challenge = failure.challenge; status = failure.status; rstatus = rstatus || status; if (typeof challenge == "string") { rchallenge.push(challenge); } } res.statusCode = rstatus || 401; if (res.statusCode == 401 && rchallenge.length) { res.setHeader("WWW-Authenticate", rchallenge); } if (options.failWithError) { return next(new AuthenticationError(http.STATUS_CODES[res.statusCode], rstatus)); } res.end(http.STATUS_CODES[res.statusCode]); } __name(allFailed, "allFailed"); (/* @__PURE__ */ __name((function attempt(i) { var layer = name[i]; if (!layer) { return allFailed(); } var strategy, prototype; if (typeof layer.authenticate == "function") { strategy = layer; } else { prototype = passport._strategy(layer); if (!prototype) { return next(new Error('Unknown authentication strategy "' + layer + '"')); } strategy = Object.create(prototype); } strategy.success = function(user, info) { if (callback) { return callback(null, user, info); } info = info || {}; var msg; if (options.successFlash) { var flash = options.successFlash; if (typeof flash == "string") { flash = { type: "success", message: flash }; } flash.type = flash.type || "success"; var type = flash.type || info.type || "success"; msg = flash.message || info.message || info; if (typeof msg == "string") { req.flash(type, msg); } } if (options.successMessage) { msg = options.successMessage; if (typeof msg == "boolean") { msg = info.message || info; } if (typeof msg == "string") { req.session.messages = req.session.messages || []; req.session.messages.push(msg); } } if (options.assignProperty) { req[options.assignProperty] = user; if (options.authInfo !== false) { passport.transformAuthInfo(info, req, function(err, tinfo) { if (err) { return next(err); } req.authInfo = tinfo; next(); }); } else { next(); } return; } req.logIn(user, options, function(err) { if (err) { return next(err); } function complete() { if (options.successReturnToOrRedirect) { var url = options.successReturnToOrRedirect; if (req.session && req.session.returnTo) { url = req.session.returnTo; delete req.session.returnTo; } return res.redirect(url); } if (options.successRedirect) { return res.redirect(options.successRedirect); } next(); } __name(complete, "complete"); if (options.authInfo !== false) { passport.transformAuthInfo(info, req, function(err2, tinfo) { if (err2) { return next(err2); } req.authInfo = tinfo; complete(); }); } else { complete(); } }); }; strategy.fail = function(challenge, status) { if (typeof challenge == "number") { status = challenge; challenge = void 0; } failures.push({ challenge, status }); attempt(i + 1); }; strategy.redirect = function(url, status) { res.statusCode = status || 302; res.setHeader("Location", url); res.setHeader("Content-Length", "0"); res.end(); }; strategy.pass = function() { next(); }; strategy.error = function(err) { if (callback) { return callback(err); } next(err); }; strategy.authenticate(req, options); }), "attempt"))(0); }, "authenticate"); }, "authenticate"); } }); // ../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/framework/connect.js var require_connect2 = __commonJS({ "../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/framework/connect.js"(exports2, module2) { var initialize = require_initialize(); var authenticate = require_authenticate(); exports2 = module2.exports = function() { return { initialize, authenticate }; }; } }); // ../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/authenticator.js var require_authenticator = __commonJS({ "../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/authenticator.js"(exports2, module2) { var SessionStrategy = require_session(); var SessionManager = require_sessionmanager(); function Authenticator() { this._key = "passport"; this._strategies = {}; this._serializers = []; this._deserializers = []; this._infoTransformers = []; this._framework = null; this.init(); } __name(Authenticator, "Authenticator"); Authenticator.prototype.init = function() { this.framework(require_connect2()()); this.use(new SessionStrategy({ key: this._key }, this.deserializeUser.bind(this))); this._sm = new SessionManager({ key: this._key }, this.serializeUser.bind(this)); }; Authenticator.prototype.use = function(name, strategy) { if (!strategy) { strategy = name; name = strategy.name; } if (!name) { throw new Error("Authentication strategies must have a name"); } this._strategies[name] = strategy; return this; }; Authenticator.prototype.unuse = function(name) { delete this._strategies[name]; return this; }; Authenticator.prototype.framework = function(fw) { this._framework = fw; return this; }; Authenticator.prototype.initialize = function(options) { options = options || {}; return this._framework.initialize(this, options); }; Authenticator.prototype.authenticate = function(strategy, options, callback) { return this._framework.authenticate(this, strategy, options, callback); }; Authenticator.prototype.authorize = function(strategy, options, callback) { options = options || {}; options.assignProperty = "account"; var fn = this._framework.authorize || this._framework.authenticate; return fn(this, strategy, options, callback); }; Authenticator.prototype.session = function(options) { return this.authenticate("session", options); }; Authenticator.prototype.serializeUser = function(fn, req, done) { if (typeof fn === "function") { return this._serializers.push(fn); } var user = fn; if (typeof req === "function") { done = req; req = void 0; } var stack = this._serializers; (/* @__PURE__ */ __name((function pass(i, err, obj2) { if ("pass" === err) { err = void 0; } if (err || obj2 || obj2 === 0) { return done(err, obj2); } var layer = stack[i]; if (!layer) { return done(new Error("Failed to serialize user into session")); } function serialized(e, o) { pass(i + 1, e, o); } __name(serialized, "serialized"); try { var arity = layer.length; if (arity == 3) { layer(req, user, serialized); } else { layer(user, serialized); } } catch (e) { return done(e); } }), "pass"))(0); }; Authenticator.prototype.deserializeUser = function(fn, req, done) { if (typeof fn === "function") { return this._deserializers.push(fn); } var obj2 = fn; if (typeof req === "function") { done = req; req = void 0; } var stack = this._deserializers; (/* @__PURE__ */ __name((function pass(i, err, user) { if ("pass" === err) { err = void 0; } if (err || user) { return done(err, user); } if (user === null || user === false) { return done(null, false); } var layer = stack[i]; if (!layer) { return done(new Error("Failed to deserialize user out of session")); } function deserialized(e, u) { pass(i + 1, e, u); } __name(deserialized, "deserialized"); try { var arity = layer.length; if (arity == 3) { layer(req, obj2, deserialized); } else { layer(obj2, deserialized); } } catch (e) { return done(e); } }), "pass"))(0); }; Authenticator.prototype.transformAuthInfo = function(fn, req, done) { if (typeof fn === "function") { return this._infoTransformers.push(fn); } var info = fn; if (typeof req === "function") { done = req; req = void 0; } var stack = this._infoTransformers; (/* @__PURE__ */ __name((function pass(i, err, tinfo) { if ("pass" === err) { err = void 0; } if (err || tinfo) { return done(err, tinfo); } var layer = stack[i]; if (!layer) { return done(null, info); } function transformed(e, t2) { pass(i + 1, e, t2); } __name(transformed, "transformed"); try { var arity = layer.length; if (arity == 1) { var t = layer(info); transformed(null, t); } else if (arity == 3) { layer(req, info, transformed); } else { layer(info, transformed); } } catch (e) { return done(e); } }), "pass"))(0); }; Authenticator.prototype._strategy = function(name) { return this._strategies[name]; }; module2.exports = Authenticator; } }); // ../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/index.js var require_lib8 = __commonJS({ "../../node_modules/.pnpm/passport@0.7.0/node_modules/passport/lib/index.js"(exports2, module2) { var Passport = require_authenticator(); var SessionStrategy = require_session(); exports2 = module2.exports = new Passport(); exports2.Passport = exports2.Authenticator = Passport; exports2.Strategy = require_lib7(); exports2.strategies = {}; exports2.strategies.SessionStrategy = SessionStrategy; } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/interfaces/auth-module.options.js var require_auth_module_options = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/interfaces/auth-module.options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AuthModuleOptions = void 0; var AuthModuleOptions = class { static { __name(this, "AuthModuleOptions"); } }; exports2.AuthModuleOptions = AuthModuleOptions; } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/options.js var require_options = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/options.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.defaultOptions = void 0; exports2.defaultOptions = { session: false, property: "user" }; } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/utils/memoize.util.js var require_memoize_util = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/utils/memoize.util.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.memoize = void 0; var defaultKey = "default"; function memoize(fn) { const cache = {}; return (...args) => { const n = args[0] || defaultKey; if (n in cache) { return cache[n]; } else { const result = fn(n === defaultKey ? void 0 : n); cache[n] = result; return result; } }; } __name(memoize, "memoize"); exports2.memoize = memoize; } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/auth.guard.js var require_auth_guard = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/auth.guard.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AuthGuard = void 0; var common_12 = require_common(); var passport = require_lib8(); var auth_module_options_1 = require_auth_module_options(); var options_1 = require_options(); var memoize_util_1 = require_memoize_util(); exports2.AuthGuard = (0, memoize_util_1.memoize)(createAuthGuard); var NO_STRATEGY_ERROR = `In order to use "defaultStrategy", please, ensure to import PassportModule in each place where AuthGuard() is being used. Otherwise, passport won't work correctly.`; var authLogger = new common_12.Logger("AuthGuard"); function createAuthGuard(type) { let MixinAuthGuard = class MixinAuthGuard { static { __name(this, "MixinAuthGuard"); } constructor(options) { this.options = {}; this.options = options ?? this.options; if (!type && !this.options.defaultStrategy) { authLogger.error(NO_STRATEGY_ERROR); } } async canActivate(context) { const options = { ...options_1.defaultOptions, ...this.options, ...await this.getAuthenticateOptions(context) }; const [request, response] = [ this.getRequest(context), this.getResponse(context) ]; const passportFn = createPassportContext(request, response); const user = await passportFn(type || this.options.defaultStrategy, options, (err, user2, info, status) => this.handleRequest(err, user2, info, context, status)); request[options.property || options_1.defaultOptions.property] = user; return true; } getRequest(context) { return context.switchToHttp().getRequest(); } getResponse(context) { return context.switchToHttp().getResponse(); } async logIn(request) { const user = request[this.options.property || options_1.defaultOptions.property]; await new Promise((resolve, reject) => request.logIn(user, this.options, (err) => err ? reject(err) : resolve())); } handleRequest(err, user, info, context, status) { if (err || !user) { throw err || new common_12.UnauthorizedException(); } return user; } getAuthenticateOptions(context) { return void 0; } }; __decorate2([ (0, common_12.Optional)(), (0, common_12.Inject)(auth_module_options_1.AuthModuleOptions), __metadata2("design:type", auth_module_options_1.AuthModuleOptions) ], MixinAuthGuard.prototype, "options", void 0); MixinAuthGuard = __decorate2([ __param2(0, (0, common_12.Optional)()), __metadata2("design:paramtypes", [auth_module_options_1.AuthModuleOptions]) ], MixinAuthGuard); const guard = (0, common_12.mixin)(MixinAuthGuard); return guard; } __name(createAuthGuard, "createAuthGuard"); var createPassportContext = /* @__PURE__ */ __name((request, response) => (type, options, callback) => new Promise((resolve, reject) => passport.authenticate(type, options, (err, user, info, status) => { try { request.authInfo = info; return resolve(callback(err, user, info, status)); } catch (err2) { reject(err2); } })(request, response, (err) => err ? reject(err) : resolve())), "createPassportContext"); } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/interfaces/type.interface.js var require_type_interface2 = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/interfaces/type.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/interfaces/index.js var require_interfaces11 = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/interfaces/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_auth_module_options(), exports2); __exportStar2(require_type_interface2(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/passport.module.js var require_passport_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/passport.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var PassportModule_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PassportModule = void 0; var common_12 = require_common(); var auth_module_options_1 = require_auth_module_options(); var PassportModule = exports2.PassportModule = PassportModule_1 = class PassportModule { static { __name(this, "PassportModule"); } static register(options) { return { module: PassportModule_1, providers: [{ provide: auth_module_options_1.AuthModuleOptions, useValue: options }], exports: [auth_module_options_1.AuthModuleOptions] }; } static registerAsync(options) { return { module: PassportModule_1, imports: options.imports || [], providers: this.createAsyncProviders(options), exports: [auth_module_options_1.AuthModuleOptions] }; } static createAsyncProviders(options) { if (options.useExisting || options.useFactory) { return [this.createAsyncOptionsProvider(options)]; } return [ this.createAsyncOptionsProvider(options), { provide: options.useClass, useClass: options.useClass } ]; } static createAsyncOptionsProvider(options) { if (options.useFactory) { return { provide: auth_module_options_1.AuthModuleOptions, useFactory: options.useFactory, inject: options.inject || [] }; } return { provide: auth_module_options_1.AuthModuleOptions, useFactory: /* @__PURE__ */ __name(async (optionsFactory) => await optionsFactory.createAuthOptions(), "useFactory"), inject: [options.useExisting || options.useClass] }; } }; exports2.PassportModule = PassportModule = PassportModule_1 = __decorate2([ (0, common_12.Module)({}) ], PassportModule); } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/passport/passport.serializer.js var require_passport_serializer = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/passport/passport.serializer.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PassportSerializer = void 0; var passport = require_lib8(); var PassportSerializer = class { static { __name(this, "PassportSerializer"); } constructor() { const passportInstance = this.getPassportInstance(); passportInstance.serializeUser((user, done) => this.serializeUser(user, done)); passportInstance.deserializeUser((payload, done) => this.deserializeUser(payload, done)); } getPassportInstance() { return passport; } }; exports2.PassportSerializer = PassportSerializer; } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/passport/passport.strategy.js var require_passport_strategy = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/passport/passport.strategy.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PassportStrategy = void 0; var passport = require_lib8(); function PassportStrategy(Strategy, name, callbackArity) { class MixinStrategy extends Strategy { static { __name(this, "MixinStrategy"); } constructor(...args) { const callback = /* @__PURE__ */ __name(async (...params) => { const done = params[params.length - 1]; try { const validateResult = await this.validate(...params); if (Array.isArray(validateResult)) { done(null, ...validateResult); } else { done(null, validateResult); } } catch (err) { done(err, null); } }, "callback"); if (callbackArity !== void 0) { const validate2 = new.target?.prototype?.validate; const arity = callbackArity === true ? validate2.length + 1 : callbackArity; if (validate2) { Object.defineProperty(callback, "length", { value: arity }); } } super(...args, callback); const passportInstance = this.getPassportInstance(); if (name) { passportInstance.use(name, this); } else { passportInstance.use(this); } } getPassportInstance() { return passport; } } return MixinStrategy; } __name(PassportStrategy, "PassportStrategy"); exports2.PassportStrategy = PassportStrategy; } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/index.js var require_dist10 = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/dist/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_abstract_strategy(), exports2); __exportStar2(require_auth_guard(), exports2); __exportStar2(require_interfaces11(), exports2); __exportStar2(require_passport_module(), exports2); __exportStar2(require_passport_serializer(), exports2); __exportStar2(require_passport_strategy(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/index.js var require_passport = __commonJS({ "../../node_modules/.pnpm/@nestjs+passport@10.0.3_@ne_065c9ed2201c8c1f9dc8ddcfbf04f6d1/node_modules/@nestjs/passport/index.js"(exports2) { "use strict"; function __export2(m) { for (var p in m) if (!exports2.hasOwnProperty(p)) exports2[p] = m[p]; } __name(__export2, "__export"); exports2.__esModule = true; __export2(require_dist10()); } }); // dist/src/common/guards/jwt-admin.guard.js var require_jwt_admin_guard = __commonJS({ "dist/src/common/guards/jwt-admin.guard.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.JwtAdminGuard = void 0; var common_12 = require_common(); var passport_1 = require_passport(); var JwtAdminGuard = class JwtAdminGuard extends (0, passport_1.AuthGuard)("jwt-admin") { static { __name(this, "JwtAdminGuard"); } canActivate(context) { return super.canActivate(context); } handleRequest(err, admin, info, context) { if (err || !admin || admin.type !== "admin") { throw err || new common_12.UnauthorizedException("UNAUTHORIZED_ADMIN"); } const request = context.switchToHttp().getRequest(); request.admin = admin; return admin; } }; exports2.JwtAdminGuard = JwtAdminGuard; exports2.JwtAdminGuard = JwtAdminGuard = __decorate2([ (0, common_12.Injectable)() ], JwtAdminGuard); } }); // dist/src/prisma/prisma.service.js var require_prisma_service = __commonJS({ "dist/src/prisma/prisma.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PrismaService = void 0; var common_12 = require_common(); var client_1 = require("@prisma/client"); var PrismaService = class PrismaService extends client_1.PrismaClient { static { __name(this, "PrismaService"); } constructor() { super({ log: process.env.NODE_ENV === "development" ? ["warn", "error"] : ["error"] }); } async onModuleInit() { await this.$connect(); } async onModuleDestroy() { await this.$disconnect(); } async enableShutdownHooks(app) { process.on("beforeExit", async () => { await app.close(); }); } }; exports2.PrismaService = PrismaService; exports2.PrismaService = PrismaService = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", []) ], PrismaService); } }); // dist/src/modules/admin-audit/admin-audit.service.js var require_admin_audit_service = __commonJS({ "dist/src/modules/admin-audit/admin-audit.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminAuditService = void 0; var common_12 = require_common(); var prisma_service_12 = require_prisma_service(); var AdminAuditService = class AdminAuditService { static { __name(this, "AdminAuditService"); } constructor(prisma) { this.prisma = prisma; } async findAll(query) { const page = Number(query.page) || 1; const pageSize = Number(query.pageSize) || 20; const skip = (page - 1) * pageSize; const where = {}; if (query.adminId) where.adminId = query.adminId; if (query.entityType) where.entityType = query.entityType; if (query.action) where.action = { contains: query.action }; if (query.from || query.to) { where.createdAt = {}; if (query.from) where.createdAt.gte = new Date(query.from); if (query.to) where.createdAt.lte = new Date(query.to); } const [data, total] = await Promise.all([ this.prisma.adminLog.findMany({ where, skip, take: pageSize, orderBy: { createdAt: "desc" }, include: { admin: { select: { id: true, name: true, email: true, role: true } } } }), this.prisma.adminLog.count({ where }) ]); return { data, meta: { page, pageSize, total, totalPages: Math.ceil(total / pageSize) } }; } }; exports2.AdminAuditService = AdminAuditService; exports2.AdminAuditService = AdminAuditService = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [prisma_service_12.PrismaService]) ], AdminAuditService); } }); // dist/src/modules/admin-audit/admin-audit.controller.js var require_admin_audit_controller = __commonJS({ "dist/src/modules/admin-audit/admin-audit.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminAuditController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var jwt_admin_guard_1 = require_jwt_admin_guard(); var admin_audit_service_1 = require_admin_audit_service(); var AdminAuditController = class AdminAuditController { static { __name(this, "AdminAuditController"); } constructor(auditService) { this.auditService = auditService; } async findAll(query) { return this.auditService.findAll(query); } }; exports2.AdminAuditController = AdminAuditController; __decorate2([ (0, common_12.Get)(), (0, swagger_12.ApiOperation)({ summary: "\u0645\u0634\u0627\u0647\u062F\u0647 \u062A\u0645\u0627\u0645 \u0644\u0627\u06AF\u200C\u0647\u0627\u06CC \u0628\u0627\u0632\u0631\u0633\u06CC \u0627\u0642\u062F\u0627\u0645\u0627\u062A \u0627\u062F\u0645\u06CC\u0646 \u0628\u0627 \u0641\u06CC\u0644\u062A\u0631" }), (0, swagger_12.ApiQuery)({ name: "page", required: false }), (0, swagger_12.ApiQuery)({ name: "pageSize", required: false }), (0, swagger_12.ApiQuery)({ name: "adminId", required: false }), (0, swagger_12.ApiQuery)({ name: "entityType", required: false }), (0, swagger_12.ApiQuery)({ name: "action", required: false }), (0, swagger_12.ApiQuery)({ name: "from", required: false }), (0, swagger_12.ApiQuery)({ name: "to", required: false }), __param2(0, (0, common_12.Query)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [Object]), __metadata2("design:returntype", Promise) ], AdminAuditController.prototype, "findAll", null); exports2.AdminAuditController = AdminAuditController = __decorate2([ (0, swagger_12.ApiTags)("Admin Audit Logs (\u0644\u0627\u06AF\u200C\u0647\u0627\u06CC \u0628\u0627\u0632\u0631\u0633\u06CC \u0645\u062F\u06CC\u0631\u0627\u0646)"), (0, common_12.Controller)("admin/audit-logs"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, swagger_12.ApiBearerAuth)("AdminAuth"), __metadata2("design:paramtypes", [admin_audit_service_1.AdminAuditService]) ], AdminAuditController); } }); // dist/src/modules/admin-audit/admin-audit.module.js var require_admin_audit_module = __commonJS({ "dist/src/modules/admin-audit/admin-audit.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminAuditModule = void 0; var common_12 = require_common(); var admin_audit_controller_1 = require_admin_audit_controller(); var admin_audit_service_1 = require_admin_audit_service(); var AdminAuditModule = class AdminAuditModule { static { __name(this, "AdminAuditModule"); } }; exports2.AdminAuditModule = AdminAuditModule; exports2.AdminAuditModule = AdminAuditModule = __decorate2([ (0, common_12.Module)({ controllers: [admin_audit_controller_1.AdminAuditController], providers: [admin_audit_service_1.AdminAuditService], exports: [admin_audit_service_1.AdminAuditService] }) ], AdminAuditModule); } }); // ../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/interfaces/jwt-module-options.interface.js var require_jwt_module_options_interface = __commonJS({ "../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/interfaces/jwt-module-options.interface.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.JwtSecretRequestType = void 0; var JwtSecretRequestType; (function(JwtSecretRequestType2) { JwtSecretRequestType2[JwtSecretRequestType2["SIGN"] = 0] = "SIGN"; JwtSecretRequestType2[JwtSecretRequestType2["VERIFY"] = 1] = "VERIFY"; })(JwtSecretRequestType || (exports2.JwtSecretRequestType = JwtSecretRequestType = {})); } }); // ../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/interfaces/index.js var require_interfaces12 = __commonJS({ "../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/interfaces/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); __exportStar2(require_jwt_module_options_interface(), exports2); } }); // ../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/jwt.errors.js var require_jwt_errors = __commonJS({ "../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/jwt.errors.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.WrongSecretProviderError = void 0; var WrongSecretProviderError = class extends Error { static { __name(this, "WrongSecretProviderError"); } }; exports2.WrongSecretProviderError = WrongSecretProviderError; } }); // ../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/jwt.constants.js var require_jwt_constants = __commonJS({ "../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/jwt.constants.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.JWT_MODULE_OPTIONS = void 0; exports2.JWT_MODULE_OPTIONS = "JWT_MODULE_OPTIONS"; } }); // ../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/jwt.providers.js var require_jwt_providers = __commonJS({ "../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/jwt.providers.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.createJwtProvider = void 0; var jwt_constants_1 = require_jwt_constants(); function createJwtProvider(options) { return [{ provide: jwt_constants_1.JWT_MODULE_OPTIONS, useValue: options || {} }]; } __name(createJwtProvider, "createJwtProvider"); exports2.createJwtProvider = createJwtProvider; } }); // ../../node_modules/.pnpm/jws@3.2.3/node_modules/jws/lib/data-stream.js var require_data_stream = __commonJS({ "../../node_modules/.pnpm/jws@3.2.3/node_modules/jws/lib/data-stream.js"(exports2, module2) { var Buffer2 = require_safe_buffer().Buffer; var Stream = require("stream"); var util2 = require("util"); function DataStream(data) { this.buffer = null; this.writable = true; this.readable = true; if (!data) { this.buffer = Buffer2.alloc(0); return this; } if (typeof data.pipe === "function") { this.buffer = Buffer2.alloc(0); data.pipe(this); return this; } if (data.length || typeof data === "object") { this.buffer = data; this.writable = false; process.nextTick(function() { this.emit("end", data); this.readable = false; this.emit("close"); }.bind(this)); return this; } throw new TypeError("Unexpected data type (" + typeof data + ")"); } __name(DataStream, "DataStream"); util2.inherits(DataStream, Stream); DataStream.prototype.write = /* @__PURE__ */ __name(function write(data) { this.buffer = Buffer2.concat([this.buffer, Buffer2.from(data)]); this.emit("data", data); }, "write"); DataStream.prototype.end = /* @__PURE__ */ __name(function end(data) { if (data) this.write(data); this.emit("end", data); this.emit("close"); this.writable = false; this.readable = false; }, "end"); module2.exports = DataStream; } }); // ../../node_modules/.pnpm/ecdsa-sig-formatter@1.0.11/node_modules/ecdsa-sig-formatter/src/param-bytes-for-alg.js var require_param_bytes_for_alg = __commonJS({ "../../node_modules/.pnpm/ecdsa-sig-formatter@1.0.11/node_modules/ecdsa-sig-formatter/src/param-bytes-for-alg.js"(exports2, module2) { "use strict"; function getParamSize(keySize) { var result = (keySize / 8 | 0) + (keySize % 8 === 0 ? 0 : 1); return result; } __name(getParamSize, "getParamSize"); var paramBytesForAlg = { ES256: getParamSize(256), ES384: getParamSize(384), ES512: getParamSize(521) }; function getParamBytesForAlg(alg) { var paramBytes = paramBytesForAlg[alg]; if (paramBytes) { return paramBytes; } throw new Error('Unknown algorithm "' + alg + '"'); } __name(getParamBytesForAlg, "getParamBytesForAlg"); module2.exports = getParamBytesForAlg; } }); // ../../node_modules/.pnpm/ecdsa-sig-formatter@1.0.11/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.js var require_ecdsa_sig_formatter = __commonJS({ "../../node_modules/.pnpm/ecdsa-sig-formatter@1.0.11/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.js"(exports2, module2) { "use strict"; var Buffer2 = require_safe_buffer().Buffer; var getParamBytesForAlg = require_param_bytes_for_alg(); var MAX_OCTET = 128; var CLASS_UNIVERSAL = 0; var PRIMITIVE_BIT = 32; var TAG_SEQ = 16; var TAG_INT = 2; var ENCODED_TAG_SEQ = TAG_SEQ | PRIMITIVE_BIT | CLASS_UNIVERSAL << 6; var ENCODED_TAG_INT = TAG_INT | CLASS_UNIVERSAL << 6; function base64Url(base64) { return base64.replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_"); } __name(base64Url, "base64Url"); function signatureAsBuffer(signature) { if (Buffer2.isBuffer(signature)) { return signature; } else if ("string" === typeof signature) { return Buffer2.from(signature, "base64"); } throw new TypeError("ECDSA signature must be a Base64 string or a Buffer"); } __name(signatureAsBuffer, "signatureAsBuffer"); function derToJose(signature, alg) { signature = signatureAsBuffer(signature); var paramBytes = getParamBytesForAlg(alg); var maxEncodedParamLength = paramBytes + 1; var inputLength = signature.length; var offset = 0; if (signature[offset++] !== ENCODED_TAG_SEQ) { throw new Error('Could not find expected "seq"'); } var seqLength = signature[offset++]; if (seqLength === (MAX_OCTET | 1)) { seqLength = signature[offset++]; } if (inputLength - offset < seqLength) { throw new Error('"seq" specified length of "' + seqLength + '", only "' + (inputLength - offset) + '" remaining'); } if (signature[offset++] !== ENCODED_TAG_INT) { throw new Error('Could not find expected "int" for "r"'); } var rLength = signature[offset++]; if (inputLength - offset - 2 < rLength) { throw new Error('"r" specified length of "' + rLength + '", only "' + (inputLength - offset - 2) + '" available'); } if (maxEncodedParamLength < rLength) { throw new Error('"r" specified length of "' + rLength + '", max of "' + maxEncodedParamLength + '" is acceptable'); } var rOffset = offset; offset += rLength; if (signature[offset++] !== ENCODED_TAG_INT) { throw new Error('Could not find expected "int" for "s"'); } var sLength = signature[offset++]; if (inputLength - offset !== sLength) { throw new Error('"s" specified length of "' + sLength + '", expected "' + (inputLength - offset) + '"'); } if (maxEncodedParamLength < sLength) { throw new Error('"s" specified length of "' + sLength + '", max of "' + maxEncodedParamLength + '" is acceptable'); } var sOffset = offset; offset += sLength; if (offset !== inputLength) { throw new Error('Expected to consume entire buffer, but "' + (inputLength - offset) + '" bytes remain'); } var rPadding = paramBytes - rLength, sPadding = paramBytes - sLength; var dst = Buffer2.allocUnsafe(rPadding + rLength + sPadding + sLength); for (offset = 0; offset < rPadding; ++offset) { dst[offset] = 0; } signature.copy(dst, offset, rOffset + Math.max(-rPadding, 0), rOffset + rLength); offset = paramBytes; for (var o = offset; offset < o + sPadding; ++offset) { dst[offset] = 0; } signature.copy(dst, offset, sOffset + Math.max(-sPadding, 0), sOffset + sLength); dst = dst.toString("base64"); dst = base64Url(dst); return dst; } __name(derToJose, "derToJose"); function countPadding(buf, start, stop) { var padding = 0; while (start + padding < stop && buf[start + padding] === 0) { ++padding; } var needsSign = buf[start + padding] >= MAX_OCTET; if (needsSign) { --padding; } return padding; } __name(countPadding, "countPadding"); function joseToDer(signature, alg) { signature = signatureAsBuffer(signature); var paramBytes = getParamBytesForAlg(alg); var signatureBytes = signature.length; if (signatureBytes !== paramBytes * 2) { throw new TypeError('"' + alg + '" signatures must be "' + paramBytes * 2 + '" bytes, saw "' + signatureBytes + '"'); } var rPadding = countPadding(signature, 0, paramBytes); var sPadding = countPadding(signature, paramBytes, signature.length); var rLength = paramBytes - rPadding; var sLength = paramBytes - sPadding; var rsBytes = 1 + 1 + rLength + 1 + 1 + sLength; var shortLength = rsBytes < MAX_OCTET; var dst = Buffer2.allocUnsafe((shortLength ? 2 : 3) + rsBytes); var offset = 0; dst[offset++] = ENCODED_TAG_SEQ; if (shortLength) { dst[offset++] = rsBytes; } else { dst[offset++] = MAX_OCTET | 1; dst[offset++] = rsBytes & 255; } dst[offset++] = ENCODED_TAG_INT; dst[offset++] = rLength; if (rPadding < 0) { dst[offset++] = 0; offset += signature.copy(dst, offset, 0, paramBytes); } else { offset += signature.copy(dst, offset, rPadding, paramBytes); } dst[offset++] = ENCODED_TAG_INT; dst[offset++] = sLength; if (sPadding < 0) { dst[offset++] = 0; signature.copy(dst, offset, paramBytes); } else { signature.copy(dst, offset, paramBytes + sPadding); } return dst; } __name(joseToDer, "joseToDer"); module2.exports = { derToJose, joseToDer }; } }); // ../../node_modules/.pnpm/buffer-equal-constant-time@1.0.1/node_modules/buffer-equal-constant-time/index.js var require_buffer_equal_constant_time = __commonJS({ "../../node_modules/.pnpm/buffer-equal-constant-time@1.0.1/node_modules/buffer-equal-constant-time/index.js"(exports2, module2) { "use strict"; var Buffer2 = require("buffer").Buffer; var SlowBuffer = require("buffer").SlowBuffer; module2.exports = bufferEq; function bufferEq(a, b) { if (!Buffer2.isBuffer(a) || !Buffer2.isBuffer(b)) { return false; } if (a.length !== b.length) { return false; } var c = 0; for (var i = 0; i < a.length; i++) { c |= a[i] ^ b[i]; } return c === 0; } __name(bufferEq, "bufferEq"); bufferEq.install = function() { Buffer2.prototype.equal = SlowBuffer.prototype.equal = /* @__PURE__ */ __name(function equal(that) { return bufferEq(this, that); }, "equal"); }; var origBufEqual = Buffer2.prototype.equal; var origSlowBufEqual = SlowBuffer.prototype.equal; bufferEq.restore = function() { Buffer2.prototype.equal = origBufEqual; SlowBuffer.prototype.equal = origSlowBufEqual; }; } }); // ../../node_modules/.pnpm/jwa@1.4.2/node_modules/jwa/index.js var require_jwa = __commonJS({ "../../node_modules/.pnpm/jwa@1.4.2/node_modules/jwa/index.js"(exports2, module2) { var Buffer2 = require_safe_buffer().Buffer; var crypto5 = require("crypto"); var formatEcdsa = require_ecdsa_sig_formatter(); var util2 = require("util"); var MSG_INVALID_ALGORITHM = '"%s" is not a valid algorithm.\n Supported algorithms are:\n "HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "PS256", "PS384", "PS512", "ES256", "ES384", "ES512" and "none".'; var MSG_INVALID_SECRET = "secret must be a string or buffer"; var MSG_INVALID_VERIFIER_KEY = "key must be a string or a buffer"; var MSG_INVALID_SIGNER_KEY = "key must be a string, a buffer or an object"; var supportsKeyObjects = typeof crypto5.createPublicKey === "function"; if (supportsKeyObjects) { MSG_INVALID_VERIFIER_KEY += " or a KeyObject"; MSG_INVALID_SECRET += "or a KeyObject"; } function checkIsPublicKey(key) { if (Buffer2.isBuffer(key)) { return; } if (typeof key === "string") { return; } if (!supportsKeyObjects) { throw typeError(MSG_INVALID_VERIFIER_KEY); } if (typeof key !== "object") { throw typeError(MSG_INVALID_VERIFIER_KEY); } if (typeof key.type !== "string") { throw typeError(MSG_INVALID_VERIFIER_KEY); } if (typeof key.asymmetricKeyType !== "string") { throw typeError(MSG_INVALID_VERIFIER_KEY); } if (typeof key.export !== "function") { throw typeError(MSG_INVALID_VERIFIER_KEY); } } __name(checkIsPublicKey, "checkIsPublicKey"); function checkIsPrivateKey(key) { if (Buffer2.isBuffer(key)) { return; } if (typeof key === "string") { return; } if (typeof key === "object") { return; } throw typeError(MSG_INVALID_SIGNER_KEY); } __name(checkIsPrivateKey, "checkIsPrivateKey"); function checkIsSecretKey(key) { if (Buffer2.isBuffer(key)) { return; } if (typeof key === "string") { return key; } if (!supportsKeyObjects) { throw typeError(MSG_INVALID_SECRET); } if (typeof key !== "object") { throw typeError(MSG_INVALID_SECRET); } if (key.type !== "secret") { throw typeError(MSG_INVALID_SECRET); } if (typeof key.export !== "function") { throw typeError(MSG_INVALID_SECRET); } } __name(checkIsSecretKey, "checkIsSecretKey"); function fromBase64(base64) { return base64.replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_"); } __name(fromBase64, "fromBase64"); function toBase64(base64url) { base64url = base64url.toString(); var padding = 4 - base64url.length % 4; if (padding !== 4) { for (var i = 0; i < padding; ++i) { base64url += "="; } } return base64url.replace(/\-/g, "+").replace(/_/g, "/"); } __name(toBase64, "toBase64"); function typeError(template) { var args = [].slice.call(arguments, 1); var errMsg = util2.format.bind(util2, template).apply(null, args); return new TypeError(errMsg); } __name(typeError, "typeError"); function bufferOrString(obj2) { return Buffer2.isBuffer(obj2) || typeof obj2 === "string"; } __name(bufferOrString, "bufferOrString"); function normalizeInput(thing) { if (!bufferOrString(thing)) thing = JSON.stringify(thing); return thing; } __name(normalizeInput, "normalizeInput"); function createHmacSigner(bits) { return /* @__PURE__ */ __name(function sign(thing, secret) { checkIsSecretKey(secret); thing = normalizeInput(thing); var hmac = crypto5.createHmac("sha" + bits, secret); var sig = (hmac.update(thing), hmac.digest("base64")); return fromBase64(sig); }, "sign"); } __name(createHmacSigner, "createHmacSigner"); var bufferEqual; var timingSafeEqual = "timingSafeEqual" in crypto5 ? /* @__PURE__ */ __name(function timingSafeEqual2(a, b) { if (a.byteLength !== b.byteLength) { return false; } return crypto5.timingSafeEqual(a, b); }, "timingSafeEqual") : /* @__PURE__ */ __name(function timingSafeEqual2(a, b) { if (!bufferEqual) { bufferEqual = require_buffer_equal_constant_time(); } return bufferEqual(a, b); }, "timingSafeEqual"); function createHmacVerifier(bits) { return /* @__PURE__ */ __name(function verify(thing, signature, secret) { var computedSig = createHmacSigner(bits)(thing, secret); return timingSafeEqual(Buffer2.from(signature), Buffer2.from(computedSig)); }, "verify"); } __name(createHmacVerifier, "createHmacVerifier"); function createKeySigner(bits) { return /* @__PURE__ */ __name(function sign(thing, privateKey) { checkIsPrivateKey(privateKey); thing = normalizeInput(thing); var signer = crypto5.createSign("RSA-SHA" + bits); var sig = (signer.update(thing), signer.sign(privateKey, "base64")); return fromBase64(sig); }, "sign"); } __name(createKeySigner, "createKeySigner"); function createKeyVerifier(bits) { return /* @__PURE__ */ __name(function verify(thing, signature, publicKey) { checkIsPublicKey(publicKey); thing = normalizeInput(thing); signature = toBase64(signature); var verifier = crypto5.createVerify("RSA-SHA" + bits); verifier.update(thing); return verifier.verify(publicKey, signature, "base64"); }, "verify"); } __name(createKeyVerifier, "createKeyVerifier"); function createPSSKeySigner(bits) { return /* @__PURE__ */ __name(function sign(thing, privateKey) { checkIsPrivateKey(privateKey); thing = normalizeInput(thing); var signer = crypto5.createSign("RSA-SHA" + bits); var sig = (signer.update(thing), signer.sign({ key: privateKey, padding: crypto5.constants.RSA_PKCS1_PSS_PADDING, saltLength: crypto5.constants.RSA_PSS_SALTLEN_DIGEST }, "base64")); return fromBase64(sig); }, "sign"); } __name(createPSSKeySigner, "createPSSKeySigner"); function createPSSKeyVerifier(bits) { return /* @__PURE__ */ __name(function verify(thing, signature, publicKey) { checkIsPublicKey(publicKey); thing = normalizeInput(thing); signature = toBase64(signature); var verifier = crypto5.createVerify("RSA-SHA" + bits); verifier.update(thing); return verifier.verify({ key: publicKey, padding: crypto5.constants.RSA_PKCS1_PSS_PADDING, saltLength: crypto5.constants.RSA_PSS_SALTLEN_DIGEST }, signature, "base64"); }, "verify"); } __name(createPSSKeyVerifier, "createPSSKeyVerifier"); function createECDSASigner(bits) { var inner = createKeySigner(bits); return /* @__PURE__ */ __name(function sign() { var signature = inner.apply(null, arguments); signature = formatEcdsa.derToJose(signature, "ES" + bits); return signature; }, "sign"); } __name(createECDSASigner, "createECDSASigner"); function createECDSAVerifer(bits) { var inner = createKeyVerifier(bits); return /* @__PURE__ */ __name(function verify(thing, signature, publicKey) { signature = formatEcdsa.joseToDer(signature, "ES" + bits).toString("base64"); var result = inner(thing, signature, publicKey); return result; }, "verify"); } __name(createECDSAVerifer, "createECDSAVerifer"); function createNoneSigner() { return /* @__PURE__ */ __name(function sign() { return ""; }, "sign"); } __name(createNoneSigner, "createNoneSigner"); function createNoneVerifier() { return /* @__PURE__ */ __name(function verify(thing, signature) { return signature === ""; }, "verify"); } __name(createNoneVerifier, "createNoneVerifier"); module2.exports = /* @__PURE__ */ __name(function jwa(algorithm) { var signerFactories = { hs: createHmacSigner, rs: createKeySigner, ps: createPSSKeySigner, es: createECDSASigner, none: createNoneSigner }; var verifierFactories = { hs: createHmacVerifier, rs: createKeyVerifier, ps: createPSSKeyVerifier, es: createECDSAVerifer, none: createNoneVerifier }; var match = algorithm.match(/^(RS|PS|ES|HS)(256|384|512)$|^(none)$/i); if (!match) throw typeError(MSG_INVALID_ALGORITHM, algorithm); var algo = (match[1] || match[3]).toLowerCase(); var bits = match[2]; return { sign: signerFactories[algo](bits), verify: verifierFactories[algo](bits) }; }, "jwa"); } }); // ../../node_modules/.pnpm/jws@3.2.3/node_modules/jws/lib/tostring.js var require_tostring = __commonJS({ "../../node_modules/.pnpm/jws@3.2.3/node_modules/jws/lib/tostring.js"(exports2, module2) { var Buffer2 = require("buffer").Buffer; module2.exports = /* @__PURE__ */ __name(function toString2(obj2) { if (typeof obj2 === "string") return obj2; if (typeof obj2 === "number" || Buffer2.isBuffer(obj2)) return obj2.toString(); return JSON.stringify(obj2); }, "toString"); } }); // ../../node_modules/.pnpm/jws@3.2.3/node_modules/jws/lib/sign-stream.js var require_sign_stream = __commonJS({ "../../node_modules/.pnpm/jws@3.2.3/node_modules/jws/lib/sign-stream.js"(exports2, module2) { var Buffer2 = require_safe_buffer().Buffer; var DataStream = require_data_stream(); var jwa = require_jwa(); var Stream = require("stream"); var toString2 = require_tostring(); var util2 = require("util"); function base64url(string, encoding) { return Buffer2.from(string, encoding).toString("base64").replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_"); } __name(base64url, "base64url"); function jwsSecuredInput(header, payload, encoding) { encoding = encoding || "utf8"; var encodedHeader = base64url(toString2(header), "binary"); var encodedPayload = base64url(toString2(payload), encoding); return util2.format("%s.%s", encodedHeader, encodedPayload); } __name(jwsSecuredInput, "jwsSecuredInput"); function jwsSign(opts) { var header = opts.header; var payload = opts.payload; var secretOrKey = opts.secret || opts.privateKey; var encoding = opts.encoding; var algo = jwa(header.alg); var securedInput = jwsSecuredInput(header, payload, encoding); var signature = algo.sign(securedInput, secretOrKey); return util2.format("%s.%s", securedInput, signature); } __name(jwsSign, "jwsSign"); function SignStream(opts) { var secret = opts.secret; secret = secret == null ? opts.privateKey : secret; secret = secret == null ? opts.key : secret; if (/^hs/i.test(opts.header.alg) === true && secret == null) { throw new TypeError("secret must be a string or buffer or a KeyObject"); } var secretStream = new DataStream(secret); this.readable = true; this.header = opts.header; this.encoding = opts.encoding; this.secret = this.privateKey = this.key = secretStream; this.payload = new DataStream(opts.payload); this.secret.once("close", function() { if (!this.payload.writable && this.readable) this.sign(); }.bind(this)); this.payload.once("close", function() { if (!this.secret.writable && this.readable) this.sign(); }.bind(this)); } __name(SignStream, "SignStream"); util2.inherits(SignStream, Stream); SignStream.prototype.sign = /* @__PURE__ */ __name(function sign() { try { var signature = jwsSign({ header: this.header, payload: this.payload.buffer, secret: this.secret.buffer, encoding: this.encoding }); this.emit("done", signature); this.emit("data", signature); this.emit("end"); this.readable = false; return signature; } catch (e) { this.readable = false; this.emit("error", e); this.emit("close"); } }, "sign"); SignStream.sign = jwsSign; module2.exports = SignStream; } }); // ../../node_modules/.pnpm/jws@3.2.3/node_modules/jws/lib/verify-stream.js var require_verify_stream = __commonJS({ "../../node_modules/.pnpm/jws@3.2.3/node_modules/jws/lib/verify-stream.js"(exports2, module2) { var Buffer2 = require_safe_buffer().Buffer; var DataStream = require_data_stream(); var jwa = require_jwa(); var Stream = require("stream"); var toString2 = require_tostring(); var util2 = require("util"); var JWS_REGEX = /^[a-zA-Z0-9\-_]+?\.[a-zA-Z0-9\-_]+?\.([a-zA-Z0-9\-_]+)?$/; function isObject2(thing) { return Object.prototype.toString.call(thing) === "[object Object]"; } __name(isObject2, "isObject"); function safeJsonParse(thing) { if (isObject2(thing)) return thing; try { return JSON.parse(thing); } catch (e) { return void 0; } } __name(safeJsonParse, "safeJsonParse"); function headerFromJWS(jwsSig) { var encodedHeader = jwsSig.split(".", 1)[0]; return safeJsonParse(Buffer2.from(encodedHeader, "base64").toString("binary")); } __name(headerFromJWS, "headerFromJWS"); function securedInputFromJWS(jwsSig) { return jwsSig.split(".", 2).join("."); } __name(securedInputFromJWS, "securedInputFromJWS"); function signatureFromJWS(jwsSig) { return jwsSig.split(".")[2]; } __name(signatureFromJWS, "signatureFromJWS"); function payloadFromJWS(jwsSig, encoding) { encoding = encoding || "utf8"; var payload = jwsSig.split(".")[1]; return Buffer2.from(payload, "base64").toString(encoding); } __name(payloadFromJWS, "payloadFromJWS"); function isValidJws(string) { return JWS_REGEX.test(string) && !!headerFromJWS(string); } __name(isValidJws, "isValidJws"); function jwsVerify(jwsSig, algorithm, secretOrKey) { if (!algorithm) { var err = new Error("Missing algorithm parameter for jws.verify"); err.code = "MISSING_ALGORITHM"; throw err; } jwsSig = toString2(jwsSig); var signature = signatureFromJWS(jwsSig); var securedInput = securedInputFromJWS(jwsSig); var algo = jwa(algorithm); return algo.verify(securedInput, signature, secretOrKey); } __name(jwsVerify, "jwsVerify"); function jwsDecode(jwsSig, opts) { opts = opts || {}; jwsSig = toString2(jwsSig); if (!isValidJws(jwsSig)) return null; var header = headerFromJWS(jwsSig); if (!header) return null; var payload = payloadFromJWS(jwsSig); if (header.typ === "JWT" || opts.json) payload = JSON.parse(payload, opts.encoding); return { header, payload, signature: signatureFromJWS(jwsSig) }; } __name(jwsDecode, "jwsDecode"); function VerifyStream(opts) { opts = opts || {}; var secretOrKey = opts.secret; secretOrKey = secretOrKey == null ? opts.publicKey : secretOrKey; secretOrKey = secretOrKey == null ? opts.key : secretOrKey; if (/^hs/i.test(opts.algorithm) === true && secretOrKey == null) { throw new TypeError("secret must be a string or buffer or a KeyObject"); } var secretStream = new DataStream(secretOrKey); this.readable = true; this.algorithm = opts.algorithm; this.encoding = opts.encoding; this.secret = this.publicKey = this.key = secretStream; this.signature = new DataStream(opts.signature); this.secret.once("close", function() { if (!this.signature.writable && this.readable) this.verify(); }.bind(this)); this.signature.once("close", function() { if (!this.secret.writable && this.readable) this.verify(); }.bind(this)); } __name(VerifyStream, "VerifyStream"); util2.inherits(VerifyStream, Stream); VerifyStream.prototype.verify = /* @__PURE__ */ __name(function verify() { try { var valid = jwsVerify(this.signature.buffer, this.algorithm, this.key.buffer); var obj2 = jwsDecode(this.signature.buffer, this.encoding); this.emit("done", valid, obj2); this.emit("data", valid); this.emit("end"); this.readable = false; return valid; } catch (e) { this.readable = false; this.emit("error", e); this.emit("close"); } }, "verify"); VerifyStream.decode = jwsDecode; VerifyStream.isValid = isValidJws; VerifyStream.verify = jwsVerify; module2.exports = VerifyStream; } }); // ../../node_modules/.pnpm/jws@3.2.3/node_modules/jws/index.js var require_jws = __commonJS({ "../../node_modules/.pnpm/jws@3.2.3/node_modules/jws/index.js"(exports2) { var SignStream = require_sign_stream(); var VerifyStream = require_verify_stream(); var ALGORITHMS = [ "HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "PS256", "PS384", "PS512", "ES256", "ES384", "ES512" ]; exports2.ALGORITHMS = ALGORITHMS; exports2.sign = SignStream.sign; exports2.verify = VerifyStream.verify; exports2.decode = VerifyStream.decode; exports2.isValid = VerifyStream.isValid; exports2.createSign = /* @__PURE__ */ __name(function createSign(opts) { return new SignStream(opts); }, "createSign"); exports2.createVerify = /* @__PURE__ */ __name(function createVerify(opts) { return new VerifyStream(opts); }, "createVerify"); } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/decode.js var require_decode = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/decode.js"(exports2, module2) { var jws = require_jws(); module2.exports = function(jwt, options) { options = options || {}; var decoded = jws.decode(jwt, options); if (!decoded) { return null; } var payload = decoded.payload; if (typeof payload === "string") { try { var obj2 = JSON.parse(payload); if (obj2 !== null && typeof obj2 === "object") { payload = obj2; } } catch (e) { } } if (options.complete === true) { return { header: decoded.header, payload, signature: decoded.signature }; } return payload; }; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/JsonWebTokenError.js var require_JsonWebTokenError = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/JsonWebTokenError.js"(exports2, module2) { var JsonWebTokenError = /* @__PURE__ */ __name(function(message, error) { Error.call(this, message); if (Error.captureStackTrace) { Error.captureStackTrace(this, this.constructor); } this.name = "JsonWebTokenError"; this.message = message; if (error) this.inner = error; }, "JsonWebTokenError"); JsonWebTokenError.prototype = Object.create(Error.prototype); JsonWebTokenError.prototype.constructor = JsonWebTokenError; module2.exports = JsonWebTokenError; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/NotBeforeError.js var require_NotBeforeError = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/NotBeforeError.js"(exports2, module2) { var JsonWebTokenError = require_JsonWebTokenError(); var NotBeforeError = /* @__PURE__ */ __name(function(message, date) { JsonWebTokenError.call(this, message); this.name = "NotBeforeError"; this.date = date; }, "NotBeforeError"); NotBeforeError.prototype = Object.create(JsonWebTokenError.prototype); NotBeforeError.prototype.constructor = NotBeforeError; module2.exports = NotBeforeError; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/TokenExpiredError.js var require_TokenExpiredError = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/TokenExpiredError.js"(exports2, module2) { var JsonWebTokenError = require_JsonWebTokenError(); var TokenExpiredError = /* @__PURE__ */ __name(function(message, expiredAt) { JsonWebTokenError.call(this, message); this.name = "TokenExpiredError"; this.expiredAt = expiredAt; }, "TokenExpiredError"); TokenExpiredError.prototype = Object.create(JsonWebTokenError.prototype); TokenExpiredError.prototype.constructor = TokenExpiredError; module2.exports = TokenExpiredError; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/timespan.js var require_timespan = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/timespan.js"(exports2, module2) { var ms = require_ms2(); module2.exports = function(time, iat) { var timestamp = iat || Math.floor(Date.now() / 1e3); if (typeof time === "string") { var milliseconds = ms(time); if (typeof milliseconds === "undefined") { return; } return Math.floor(timestamp + milliseconds / 1e3); } else if (typeof time === "number") { return timestamp + time; } else { return; } }; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/asymmetricKeyDetailsSupported.js var require_asymmetricKeyDetailsSupported = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/asymmetricKeyDetailsSupported.js"(exports2, module2) { var semver = require_semver2(); module2.exports = semver.satisfies(process.version, ">=15.7.0"); } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/rsaPssKeyDetailsSupported.js var require_rsaPssKeyDetailsSupported = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/rsaPssKeyDetailsSupported.js"(exports2, module2) { var semver = require_semver2(); module2.exports = semver.satisfies(process.version, ">=16.9.0"); } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/validateAsymmetricKey.js var require_validateAsymmetricKey = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/validateAsymmetricKey.js"(exports2, module2) { var ASYMMETRIC_KEY_DETAILS_SUPPORTED = require_asymmetricKeyDetailsSupported(); var RSA_PSS_KEY_DETAILS_SUPPORTED = require_rsaPssKeyDetailsSupported(); var allowedAlgorithmsForKeys = { "ec": ["ES256", "ES384", "ES512"], "rsa": ["RS256", "PS256", "RS384", "PS384", "RS512", "PS512"], "rsa-pss": ["PS256", "PS384", "PS512"] }; var allowedCurves = { ES256: "prime256v1", ES384: "secp384r1", ES512: "secp521r1" }; module2.exports = function(algorithm, key) { if (!algorithm || !key) return; const keyType = key.asymmetricKeyType; if (!keyType) return; const allowedAlgorithms = allowedAlgorithmsForKeys[keyType]; if (!allowedAlgorithms) { throw new Error(`Unknown key type "${keyType}".`); } if (!allowedAlgorithms.includes(algorithm)) { throw new Error(`"alg" parameter for "${keyType}" key type must be one of: ${allowedAlgorithms.join(", ")}.`); } if (ASYMMETRIC_KEY_DETAILS_SUPPORTED) { switch (keyType) { case "ec": const keyCurve = key.asymmetricKeyDetails.namedCurve; const allowedCurve = allowedCurves[algorithm]; if (keyCurve !== allowedCurve) { throw new Error(`"alg" parameter "${algorithm}" requires curve "${allowedCurve}".`); } break; case "rsa-pss": if (RSA_PSS_KEY_DETAILS_SUPPORTED) { const length = parseInt(algorithm.slice(-3), 10); const { hashAlgorithm, mgf1HashAlgorithm, saltLength } = key.asymmetricKeyDetails; if (hashAlgorithm !== `sha${length}` || mgf1HashAlgorithm !== hashAlgorithm) { throw new Error(`Invalid key for this operation, its RSA-PSS parameters do not meet the requirements of "alg" ${algorithm}.`); } if (saltLength !== void 0 && saltLength > length >> 3) { throw new Error(`Invalid key for this operation, its RSA-PSS parameter saltLength does not meet the requirements of "alg" ${algorithm}.`); } } break; } } }; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/psSupported.js var require_psSupported = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/psSupported.js"(exports2, module2) { var semver = require_semver2(); module2.exports = semver.satisfies(process.version, "^6.12.0 || >=8.0.0"); } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/verify.js var require_verify = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/verify.js"(exports2, module2) { var JsonWebTokenError = require_JsonWebTokenError(); var NotBeforeError = require_NotBeforeError(); var TokenExpiredError = require_TokenExpiredError(); var decode = require_decode(); var timespan = require_timespan(); var validateAsymmetricKey = require_validateAsymmetricKey(); var PS_SUPPORTED = require_psSupported(); var jws = require_jws(); var { KeyObject, createSecretKey, createPublicKey } = require("crypto"); var PUB_KEY_ALGS = ["RS256", "RS384", "RS512"]; var EC_KEY_ALGS = ["ES256", "ES384", "ES512"]; var RSA_KEY_ALGS = ["RS256", "RS384", "RS512"]; var HS_ALGS = ["HS256", "HS384", "HS512"]; if (PS_SUPPORTED) { PUB_KEY_ALGS.splice(PUB_KEY_ALGS.length, 0, "PS256", "PS384", "PS512"); RSA_KEY_ALGS.splice(RSA_KEY_ALGS.length, 0, "PS256", "PS384", "PS512"); } module2.exports = function(jwtString, secretOrPublicKey, options, callback) { if (typeof options === "function" && !callback) { callback = options; options = {}; } if (!options) { options = {}; } options = Object.assign({}, options); let done; if (callback) { done = callback; } else { done = /* @__PURE__ */ __name(function(err, data) { if (err) throw err; return data; }, "done"); } if (options.clockTimestamp && typeof options.clockTimestamp !== "number") { return done(new JsonWebTokenError("clockTimestamp must be a number")); } if (options.nonce !== void 0 && (typeof options.nonce !== "string" || options.nonce.trim() === "")) { return done(new JsonWebTokenError("nonce must be a non-empty string")); } if (options.allowInvalidAsymmetricKeyTypes !== void 0 && typeof options.allowInvalidAsymmetricKeyTypes !== "boolean") { return done(new JsonWebTokenError("allowInvalidAsymmetricKeyTypes must be a boolean")); } const clockTimestamp = options.clockTimestamp || Math.floor(Date.now() / 1e3); if (!jwtString) { return done(new JsonWebTokenError("jwt must be provided")); } if (typeof jwtString !== "string") { return done(new JsonWebTokenError("jwt must be a string")); } const parts = jwtString.split("."); if (parts.length !== 3) { return done(new JsonWebTokenError("jwt malformed")); } let decodedToken; try { decodedToken = decode(jwtString, { complete: true }); } catch (err) { return done(err); } if (!decodedToken) { return done(new JsonWebTokenError("invalid token")); } const header = decodedToken.header; let getSecret; if (typeof secretOrPublicKey === "function") { if (!callback) { return done(new JsonWebTokenError("verify must be called asynchronous if secret or public key is provided as a callback")); } getSecret = secretOrPublicKey; } else { getSecret = /* @__PURE__ */ __name(function(header2, secretCallback) { return secretCallback(null, secretOrPublicKey); }, "getSecret"); } return getSecret(header, function(err, secretOrPublicKey2) { if (err) { return done(new JsonWebTokenError("error in secret or public key callback: " + err.message)); } const hasSignature = parts[2].trim() !== ""; if (!hasSignature && secretOrPublicKey2) { return done(new JsonWebTokenError("jwt signature is required")); } if (hasSignature && !secretOrPublicKey2) { return done(new JsonWebTokenError("secret or public key must be provided")); } if (!hasSignature && !options.algorithms) { return done(new JsonWebTokenError('please specify "none" in "algorithms" to verify unsigned tokens')); } if (secretOrPublicKey2 != null && !(secretOrPublicKey2 instanceof KeyObject)) { try { secretOrPublicKey2 = createPublicKey(secretOrPublicKey2); } catch (_2) { try { secretOrPublicKey2 = createSecretKey(typeof secretOrPublicKey2 === "string" ? Buffer.from(secretOrPublicKey2) : secretOrPublicKey2); } catch (_3) { return done(new JsonWebTokenError("secretOrPublicKey is not valid key material")); } } } if (!options.algorithms) { if (secretOrPublicKey2.type === "secret") { options.algorithms = HS_ALGS; } else if (["rsa", "rsa-pss"].includes(secretOrPublicKey2.asymmetricKeyType)) { options.algorithms = RSA_KEY_ALGS; } else if (secretOrPublicKey2.asymmetricKeyType === "ec") { options.algorithms = EC_KEY_ALGS; } else { options.algorithms = PUB_KEY_ALGS; } } if (options.algorithms.indexOf(decodedToken.header.alg) === -1) { return done(new JsonWebTokenError("invalid algorithm")); } if (header.alg.startsWith("HS") && secretOrPublicKey2.type !== "secret") { return done(new JsonWebTokenError(`secretOrPublicKey must be a symmetric key when using ${header.alg}`)); } else if (/^(?:RS|PS|ES)/.test(header.alg) && secretOrPublicKey2.type !== "public") { return done(new JsonWebTokenError(`secretOrPublicKey must be an asymmetric key when using ${header.alg}`)); } if (!options.allowInvalidAsymmetricKeyTypes) { try { validateAsymmetricKey(header.alg, secretOrPublicKey2); } catch (e) { return done(e); } } let valid; try { valid = jws.verify(jwtString, decodedToken.header.alg, secretOrPublicKey2); } catch (e) { return done(e); } if (!valid) { return done(new JsonWebTokenError("invalid signature")); } const payload = decodedToken.payload; if (typeof payload.nbf !== "undefined" && !options.ignoreNotBefore) { if (typeof payload.nbf !== "number") { return done(new JsonWebTokenError("invalid nbf value")); } if (payload.nbf > clockTimestamp + (options.clockTolerance || 0)) { return done(new NotBeforeError("jwt not active", new Date(payload.nbf * 1e3))); } } if (typeof payload.exp !== "undefined" && !options.ignoreExpiration) { if (typeof payload.exp !== "number") { return done(new JsonWebTokenError("invalid exp value")); } if (clockTimestamp >= payload.exp + (options.clockTolerance || 0)) { return done(new TokenExpiredError("jwt expired", new Date(payload.exp * 1e3))); } } if (options.audience) { const audiences = Array.isArray(options.audience) ? options.audience : [options.audience]; const target = Array.isArray(payload.aud) ? payload.aud : [payload.aud]; const match = target.some(function(targetAudience) { return audiences.some(function(audience) { return audience instanceof RegExp ? audience.test(targetAudience) : audience === targetAudience; }); }); if (!match) { return done(new JsonWebTokenError("jwt audience invalid. expected: " + audiences.join(" or "))); } } if (options.issuer) { const invalid_issuer = typeof options.issuer === "string" && payload.iss !== options.issuer || Array.isArray(options.issuer) && options.issuer.indexOf(payload.iss) === -1; if (invalid_issuer) { return done(new JsonWebTokenError("jwt issuer invalid. expected: " + options.issuer)); } } if (options.subject) { if (payload.sub !== options.subject) { return done(new JsonWebTokenError("jwt subject invalid. expected: " + options.subject)); } } if (options.jwtid) { if (payload.jti !== options.jwtid) { return done(new JsonWebTokenError("jwt jwtid invalid. expected: " + options.jwtid)); } } if (options.nonce) { if (payload.nonce !== options.nonce) { return done(new JsonWebTokenError("jwt nonce invalid. expected: " + options.nonce)); } } if (options.maxAge) { if (typeof payload.iat !== "number") { return done(new JsonWebTokenError("iat required when maxAge is specified")); } const maxAgeTimestamp = timespan(options.maxAge, payload.iat); if (typeof maxAgeTimestamp === "undefined") { return done(new JsonWebTokenError('"maxAge" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60')); } if (clockTimestamp >= maxAgeTimestamp + (options.clockTolerance || 0)) { return done(new TokenExpiredError("maxAge exceeded", new Date(maxAgeTimestamp * 1e3))); } } if (options.complete === true) { const signature = decodedToken.signature; return done(null, { header, payload, signature }); } return done(null, payload); }); }; } }); // ../../node_modules/.pnpm/lodash.includes@4.3.0/node_modules/lodash.includes/index.js var require_lodash3 = __commonJS({ "../../node_modules/.pnpm/lodash.includes@4.3.0/node_modules/lodash.includes/index.js"(exports2, module2) { var INFINITY = 1 / 0; var MAX_SAFE_INTEGER = 9007199254740991; var MAX_INTEGER = 17976931348623157e292; var NAN = 0 / 0; var argsTag = "[object Arguments]"; var funcTag = "[object Function]"; var genTag = "[object GeneratorFunction]"; var stringTag = "[object String]"; var symbolTag = "[object Symbol]"; var reTrim = /^\s+|\s+$/g; var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; var reIsBinary = /^0b[01]+$/i; var reIsOctal = /^0o[0-7]+$/i; var reIsUint = /^(?:0|[1-9]\d*)$/; var freeParseInt = parseInt; function arrayMap(array, iteratee) { var index = -1, length = array ? array.length : 0, result = Array(length); while (++index < length) { result[index] = iteratee(array[index], index, array); } return result; } __name(arrayMap, "arrayMap"); function baseFindIndex(array, predicate, fromIndex, fromRight) { var length = array.length, index = fromIndex + (fromRight ? 1 : -1); while (fromRight ? index-- : ++index < length) { if (predicate(array[index], index, array)) { return index; } } return -1; } __name(baseFindIndex, "baseFindIndex"); function baseIndexOf(array, value, fromIndex) { if (value !== value) { return baseFindIndex(array, baseIsNaN, fromIndex); } var index = fromIndex - 1, length = array.length; while (++index < length) { if (array[index] === value) { return index; } } return -1; } __name(baseIndexOf, "baseIndexOf"); function baseIsNaN(value) { return value !== value; } __name(baseIsNaN, "baseIsNaN"); function baseTimes(n, iteratee) { var index = -1, result = Array(n); while (++index < n) { result[index] = iteratee(index); } return result; } __name(baseTimes, "baseTimes"); function baseValues(object, props) { return arrayMap(props, function(key) { return object[key]; }); } __name(baseValues, "baseValues"); function overArg(func, transform) { return function(arg) { return func(transform(arg)); }; } __name(overArg, "overArg"); var objectProto = Object.prototype; var hasOwnProperty = objectProto.hasOwnProperty; var objectToString = objectProto.toString; var propertyIsEnumerable = objectProto.propertyIsEnumerable; var nativeKeys = overArg(Object.keys, Object); var nativeMax = Math.max; function arrayLikeKeys(value, inherited) { var result = isArray(value) || isArguments(value) ? baseTimes(value.length, String) : []; var length = result.length, skipIndexes = !!length; for (var key in value) { if ((inherited || hasOwnProperty.call(value, key)) && !(skipIndexes && (key == "length" || isIndex(key, length)))) { result.push(key); } } return result; } __name(arrayLikeKeys, "arrayLikeKeys"); function baseKeys(object) { if (!isPrototype(object)) { return nativeKeys(object); } var result = []; for (var key in Object(object)) { if (hasOwnProperty.call(object, key) && key != "constructor") { result.push(key); } } return result; } __name(baseKeys, "baseKeys"); function isIndex(value, length) { length = length == null ? MAX_SAFE_INTEGER : length; return !!length && (typeof value == "number" || reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); } __name(isIndex, "isIndex"); function isPrototype(value) { var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto; return value === proto; } __name(isPrototype, "isPrototype"); function includes(collection, value, fromIndex, guard) { collection = isArrayLike(collection) ? collection : values(collection); fromIndex = fromIndex && !guard ? toInteger(fromIndex) : 0; var length = collection.length; if (fromIndex < 0) { fromIndex = nativeMax(length + fromIndex, 0); } return isString(collection) ? fromIndex <= length && collection.indexOf(value, fromIndex) > -1 : !!length && baseIndexOf(collection, value, fromIndex) > -1; } __name(includes, "includes"); function isArguments(value) { return isArrayLikeObject(value) && hasOwnProperty.call(value, "callee") && (!propertyIsEnumerable.call(value, "callee") || objectToString.call(value) == argsTag); } __name(isArguments, "isArguments"); var isArray = Array.isArray; function isArrayLike(value) { return value != null && isLength(value.length) && !isFunction(value); } __name(isArrayLike, "isArrayLike"); function isArrayLikeObject(value) { return isObjectLike(value) && isArrayLike(value); } __name(isArrayLikeObject, "isArrayLikeObject"); function isFunction(value) { var tag = isObject2(value) ? objectToString.call(value) : ""; return tag == funcTag || tag == genTag; } __name(isFunction, "isFunction"); function isLength(value) { return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; } __name(isLength, "isLength"); function isObject2(value) { var type = typeof value; return !!value && (type == "object" || type == "function"); } __name(isObject2, "isObject"); function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); function isString(value) { return typeof value == "string" || !isArray(value) && isObjectLike(value) && objectToString.call(value) == stringTag; } __name(isString, "isString"); function isSymbol(value) { return typeof value == "symbol" || isObjectLike(value) && objectToString.call(value) == symbolTag; } __name(isSymbol, "isSymbol"); function toFinite(value) { if (!value) { return value === 0 ? value : 0; } value = toNumber(value); if (value === INFINITY || value === -INFINITY) { var sign = value < 0 ? -1 : 1; return sign * MAX_INTEGER; } return value === value ? value : 0; } __name(toFinite, "toFinite"); function toInteger(value) { var result = toFinite(value), remainder = result % 1; return result === result ? remainder ? result - remainder : result : 0; } __name(toInteger, "toInteger"); function toNumber(value) { if (typeof value == "number") { return value; } if (isSymbol(value)) { return NAN; } if (isObject2(value)) { var other = typeof value.valueOf == "function" ? value.valueOf() : value; value = isObject2(other) ? other + "" : other; } if (typeof value != "string") { return value === 0 ? value : +value; } value = value.replace(reTrim, ""); var isBinary = reIsBinary.test(value); return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value; } __name(toNumber, "toNumber"); function keys(object) { return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); } __name(keys, "keys"); function values(object) { return object ? baseValues(object, keys(object)) : []; } __name(values, "values"); module2.exports = includes; } }); // ../../node_modules/.pnpm/lodash.isboolean@3.0.3/node_modules/lodash.isboolean/index.js var require_lodash4 = __commonJS({ "../../node_modules/.pnpm/lodash.isboolean@3.0.3/node_modules/lodash.isboolean/index.js"(exports2, module2) { var boolTag = "[object Boolean]"; var objectProto = Object.prototype; var objectToString = objectProto.toString; function isBoolean(value) { return value === true || value === false || isObjectLike(value) && objectToString.call(value) == boolTag; } __name(isBoolean, "isBoolean"); function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); module2.exports = isBoolean; } }); // ../../node_modules/.pnpm/lodash.isinteger@4.0.4/node_modules/lodash.isinteger/index.js var require_lodash5 = __commonJS({ "../../node_modules/.pnpm/lodash.isinteger@4.0.4/node_modules/lodash.isinteger/index.js"(exports2, module2) { var INFINITY = 1 / 0; var MAX_INTEGER = 17976931348623157e292; var NAN = 0 / 0; var symbolTag = "[object Symbol]"; var reTrim = /^\s+|\s+$/g; var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; var reIsBinary = /^0b[01]+$/i; var reIsOctal = /^0o[0-7]+$/i; var freeParseInt = parseInt; var objectProto = Object.prototype; var objectToString = objectProto.toString; function isInteger(value) { return typeof value == "number" && value == toInteger(value); } __name(isInteger, "isInteger"); function isObject2(value) { var type = typeof value; return !!value && (type == "object" || type == "function"); } __name(isObject2, "isObject"); function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); function isSymbol(value) { return typeof value == "symbol" || isObjectLike(value) && objectToString.call(value) == symbolTag; } __name(isSymbol, "isSymbol"); function toFinite(value) { if (!value) { return value === 0 ? value : 0; } value = toNumber(value); if (value === INFINITY || value === -INFINITY) { var sign = value < 0 ? -1 : 1; return sign * MAX_INTEGER; } return value === value ? value : 0; } __name(toFinite, "toFinite"); function toInteger(value) { var result = toFinite(value), remainder = result % 1; return result === result ? remainder ? result - remainder : result : 0; } __name(toInteger, "toInteger"); function toNumber(value) { if (typeof value == "number") { return value; } if (isSymbol(value)) { return NAN; } if (isObject2(value)) { var other = typeof value.valueOf == "function" ? value.valueOf() : value; value = isObject2(other) ? other + "" : other; } if (typeof value != "string") { return value === 0 ? value : +value; } value = value.replace(reTrim, ""); var isBinary = reIsBinary.test(value); return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value; } __name(toNumber, "toNumber"); module2.exports = isInteger; } }); // ../../node_modules/.pnpm/lodash.isnumber@3.0.3/node_modules/lodash.isnumber/index.js var require_lodash6 = __commonJS({ "../../node_modules/.pnpm/lodash.isnumber@3.0.3/node_modules/lodash.isnumber/index.js"(exports2, module2) { var numberTag = "[object Number]"; var objectProto = Object.prototype; var objectToString = objectProto.toString; function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); function isNumber(value) { return typeof value == "number" || isObjectLike(value) && objectToString.call(value) == numberTag; } __name(isNumber, "isNumber"); module2.exports = isNumber; } }); // ../../node_modules/.pnpm/lodash.isplainobject@4.0.6/node_modules/lodash.isplainobject/index.js var require_lodash7 = __commonJS({ "../../node_modules/.pnpm/lodash.isplainobject@4.0.6/node_modules/lodash.isplainobject/index.js"(exports2, module2) { var objectTag = "[object Object]"; function isHostObject(value) { var result = false; if (value != null && typeof value.toString != "function") { try { result = !!(value + ""); } catch (e) { } } return result; } __name(isHostObject, "isHostObject"); function overArg(func, transform) { return function(arg) { return func(transform(arg)); }; } __name(overArg, "overArg"); var funcProto = Function.prototype; var objectProto = Object.prototype; var funcToString = funcProto.toString; var hasOwnProperty = objectProto.hasOwnProperty; var objectCtorString = funcToString.call(Object); var objectToString = objectProto.toString; var getPrototype = overArg(Object.getPrototypeOf, Object); function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); function isPlainObject(value) { if (!isObjectLike(value) || objectToString.call(value) != objectTag || isHostObject(value)) { return false; } var proto = getPrototype(value); if (proto === null) { return true; } var Ctor = hasOwnProperty.call(proto, "constructor") && proto.constructor; return typeof Ctor == "function" && Ctor instanceof Ctor && funcToString.call(Ctor) == objectCtorString; } __name(isPlainObject, "isPlainObject"); module2.exports = isPlainObject; } }); // ../../node_modules/.pnpm/lodash.isstring@4.0.1/node_modules/lodash.isstring/index.js var require_lodash8 = __commonJS({ "../../node_modules/.pnpm/lodash.isstring@4.0.1/node_modules/lodash.isstring/index.js"(exports2, module2) { var stringTag = "[object String]"; var objectProto = Object.prototype; var objectToString = objectProto.toString; var isArray = Array.isArray; function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); function isString(value) { return typeof value == "string" || !isArray(value) && isObjectLike(value) && objectToString.call(value) == stringTag; } __name(isString, "isString"); module2.exports = isString; } }); // ../../node_modules/.pnpm/lodash.once@4.1.1/node_modules/lodash.once/index.js var require_lodash9 = __commonJS({ "../../node_modules/.pnpm/lodash.once@4.1.1/node_modules/lodash.once/index.js"(exports2, module2) { var FUNC_ERROR_TEXT = "Expected a function"; var INFINITY = 1 / 0; var MAX_INTEGER = 17976931348623157e292; var NAN = 0 / 0; var symbolTag = "[object Symbol]"; var reTrim = /^\s+|\s+$/g; var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; var reIsBinary = /^0b[01]+$/i; var reIsOctal = /^0o[0-7]+$/i; var freeParseInt = parseInt; var objectProto = Object.prototype; var objectToString = objectProto.toString; function before(n, func) { var result; if (typeof func != "function") { throw new TypeError(FUNC_ERROR_TEXT); } n = toInteger(n); return function() { if (--n > 0) { result = func.apply(this, arguments); } if (n <= 1) { func = void 0; } return result; }; } __name(before, "before"); function once(func) { return before(2, func); } __name(once, "once"); function isObject2(value) { var type = typeof value; return !!value && (type == "object" || type == "function"); } __name(isObject2, "isObject"); function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); function isSymbol(value) { return typeof value == "symbol" || isObjectLike(value) && objectToString.call(value) == symbolTag; } __name(isSymbol, "isSymbol"); function toFinite(value) { if (!value) { return value === 0 ? value : 0; } value = toNumber(value); if (value === INFINITY || value === -INFINITY) { var sign = value < 0 ? -1 : 1; return sign * MAX_INTEGER; } return value === value ? value : 0; } __name(toFinite, "toFinite"); function toInteger(value) { var result = toFinite(value), remainder = result % 1; return result === result ? remainder ? result - remainder : result : 0; } __name(toInteger, "toInteger"); function toNumber(value) { if (typeof value == "number") { return value; } if (isSymbol(value)) { return NAN; } if (isObject2(value)) { var other = typeof value.valueOf == "function" ? value.valueOf() : value; value = isObject2(other) ? other + "" : other; } if (typeof value != "string") { return value === 0 ? value : +value; } value = value.replace(reTrim, ""); var isBinary = reIsBinary.test(value); return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value; } __name(toNumber, "toNumber"); module2.exports = once; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/sign.js var require_sign2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/sign.js"(exports2, module2) { var timespan = require_timespan(); var PS_SUPPORTED = require_psSupported(); var validateAsymmetricKey = require_validateAsymmetricKey(); var jws = require_jws(); var includes = require_lodash3(); var isBoolean = require_lodash4(); var isInteger = require_lodash5(); var isNumber = require_lodash6(); var isPlainObject = require_lodash7(); var isString = require_lodash8(); var once = require_lodash9(); var { KeyObject, createSecretKey, createPrivateKey } = require("crypto"); var SUPPORTED_ALGS = ["RS256", "RS384", "RS512", "ES256", "ES384", "ES512", "HS256", "HS384", "HS512", "none"]; if (PS_SUPPORTED) { SUPPORTED_ALGS.splice(3, 0, "PS256", "PS384", "PS512"); } var sign_options_schema = { expiresIn: { isValid: /* @__PURE__ */ __name(function(value) { return isInteger(value) || isString(value) && value; }, "isValid"), message: '"expiresIn" should be a number of seconds or string representing a timespan' }, notBefore: { isValid: /* @__PURE__ */ __name(function(value) { return isInteger(value) || isString(value) && value; }, "isValid"), message: '"notBefore" should be a number of seconds or string representing a timespan' }, audience: { isValid: /* @__PURE__ */ __name(function(value) { return isString(value) || Array.isArray(value); }, "isValid"), message: '"audience" must be a string or array' }, algorithm: { isValid: includes.bind(null, SUPPORTED_ALGS), message: '"algorithm" must be a valid string enum value' }, header: { isValid: isPlainObject, message: '"header" must be an object' }, encoding: { isValid: isString, message: '"encoding" must be a string' }, issuer: { isValid: isString, message: '"issuer" must be a string' }, subject: { isValid: isString, message: '"subject" must be a string' }, jwtid: { isValid: isString, message: '"jwtid" must be a string' }, noTimestamp: { isValid: isBoolean, message: '"noTimestamp" must be a boolean' }, keyid: { isValid: isString, message: '"keyid" must be a string' }, mutatePayload: { isValid: isBoolean, message: '"mutatePayload" must be a boolean' }, allowInsecureKeySizes: { isValid: isBoolean, message: '"allowInsecureKeySizes" must be a boolean' }, allowInvalidAsymmetricKeyTypes: { isValid: isBoolean, message: '"allowInvalidAsymmetricKeyTypes" must be a boolean' } }; var registered_claims_schema = { iat: { isValid: isNumber, message: '"iat" should be a number of seconds' }, exp: { isValid: isNumber, message: '"exp" should be a number of seconds' }, nbf: { isValid: isNumber, message: '"nbf" should be a number of seconds' } }; function validate2(schema, allowUnknown, object, parameterName) { if (!isPlainObject(object)) { throw new Error('Expected "' + parameterName + '" to be a plain object.'); } Object.keys(object).forEach(function(key) { const validator = schema[key]; if (!validator) { if (!allowUnknown) { throw new Error('"' + key + '" is not allowed in "' + parameterName + '"'); } return; } if (!validator.isValid(object[key])) { throw new Error(validator.message); } }); } __name(validate2, "validate"); function validateOptions(options) { return validate2(sign_options_schema, false, options, "options"); } __name(validateOptions, "validateOptions"); function validatePayload(payload) { return validate2(registered_claims_schema, true, payload, "payload"); } __name(validatePayload, "validatePayload"); var options_to_payload = { "audience": "aud", "issuer": "iss", "subject": "sub", "jwtid": "jti" }; var options_for_objects = [ "expiresIn", "notBefore", "noTimestamp", "audience", "issuer", "subject", "jwtid" ]; module2.exports = function(payload, secretOrPrivateKey, options, callback) { if (typeof options === "function") { callback = options; options = {}; } else { options = options || {}; } const isObjectPayload = typeof payload === "object" && !Buffer.isBuffer(payload); const header = Object.assign({ alg: options.algorithm || "HS256", typ: isObjectPayload ? "JWT" : void 0, kid: options.keyid }, options.header); function failure(err) { if (callback) { return callback(err); } throw err; } __name(failure, "failure"); if (!secretOrPrivateKey && options.algorithm !== "none") { return failure(new Error("secretOrPrivateKey must have a value")); } if (secretOrPrivateKey != null && !(secretOrPrivateKey instanceof KeyObject)) { try { secretOrPrivateKey = createPrivateKey(secretOrPrivateKey); } catch (_2) { try { secretOrPrivateKey = createSecretKey(typeof secretOrPrivateKey === "string" ? Buffer.from(secretOrPrivateKey) : secretOrPrivateKey); } catch (_3) { return failure(new Error("secretOrPrivateKey is not valid key material")); } } } if (header.alg.startsWith("HS") && secretOrPrivateKey.type !== "secret") { return failure(new Error(`secretOrPrivateKey must be a symmetric key when using ${header.alg}`)); } else if (/^(?:RS|PS|ES)/.test(header.alg)) { if (secretOrPrivateKey.type !== "private") { return failure(new Error(`secretOrPrivateKey must be an asymmetric key when using ${header.alg}`)); } if (!options.allowInsecureKeySizes && !header.alg.startsWith("ES") && secretOrPrivateKey.asymmetricKeyDetails !== void 0 && //KeyObject.asymmetricKeyDetails is supported in Node 15+ secretOrPrivateKey.asymmetricKeyDetails.modulusLength < 2048) { return failure(new Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${header.alg}`)); } } if (typeof payload === "undefined") { return failure(new Error("payload is required")); } else if (isObjectPayload) { try { validatePayload(payload); } catch (error) { return failure(error); } if (!options.mutatePayload) { payload = Object.assign({}, payload); } } else { const invalid_options = options_for_objects.filter(function(opt) { return typeof options[opt] !== "undefined"; }); if (invalid_options.length > 0) { return failure(new Error("invalid " + invalid_options.join(",") + " option for " + typeof payload + " payload")); } } if (typeof payload.exp !== "undefined" && typeof options.expiresIn !== "undefined") { return failure(new Error('Bad "options.expiresIn" option the payload already has an "exp" property.')); } if (typeof payload.nbf !== "undefined" && typeof options.notBefore !== "undefined") { return failure(new Error('Bad "options.notBefore" option the payload already has an "nbf" property.')); } try { validateOptions(options); } catch (error) { return failure(error); } if (!options.allowInvalidAsymmetricKeyTypes) { try { validateAsymmetricKey(header.alg, secretOrPrivateKey); } catch (error) { return failure(error); } } const timestamp = payload.iat || Math.floor(Date.now() / 1e3); if (options.noTimestamp) { delete payload.iat; } else if (isObjectPayload) { payload.iat = timestamp; } if (typeof options.notBefore !== "undefined") { try { payload.nbf = timespan(options.notBefore, timestamp); } catch (err) { return failure(err); } if (typeof payload.nbf === "undefined") { return failure(new Error('"notBefore" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60')); } } if (typeof options.expiresIn !== "undefined" && typeof payload === "object") { try { payload.exp = timespan(options.expiresIn, timestamp); } catch (err) { return failure(err); } if (typeof payload.exp === "undefined") { return failure(new Error('"expiresIn" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60')); } } Object.keys(options_to_payload).forEach(function(key) { const claim = options_to_payload[key]; if (typeof options[key] !== "undefined") { if (typeof payload[claim] !== "undefined") { return failure(new Error('Bad "options.' + key + '" option. The payload already has an "' + claim + '" property.')); } payload[claim] = options[key]; } }); const encoding = options.encoding || "utf8"; if (typeof callback === "function") { callback = callback && once(callback); jws.createSign({ header, privateKey: secretOrPrivateKey, payload, encoding }).once("error", callback).once("done", function(signature) { if (!options.allowInsecureKeySizes && /^(?:RS|PS)/.test(header.alg) && signature.length < 256) { return callback(new Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${header.alg}`)); } callback(null, signature); }); } else { let signature = jws.sign({ header, payload, secret: secretOrPrivateKey, encoding }); if (!options.allowInsecureKeySizes && /^(?:RS|PS)/.test(header.alg) && signature.length < 256) { throw new Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${header.alg}`); } return signature; } }; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/index.js var require_jsonwebtoken = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/index.js"(exports2, module2) { module2.exports = { decode: require_decode(), verify: require_verify(), sign: require_sign2(), JsonWebTokenError: require_JsonWebTokenError(), NotBeforeError: require_NotBeforeError(), TokenExpiredError: require_TokenExpiredError() }; } }); // ../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/jwt.service.js var require_jwt_service = __commonJS({ "../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/jwt.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.JwtService = void 0; var common_12 = require_common(); var jwt = require_jsonwebtoken(); var interfaces_1 = require_interfaces12(); var jwt_constants_1 = require_jwt_constants(); var jwt_errors_1 = require_jwt_errors(); var JwtService = class JwtService { static { __name(this, "JwtService"); } constructor(options = {}) { this.options = options; this.logger = new common_12.Logger("JwtService"); } sign(payload, options) { const signOptions = this.mergeJwtOptions({ ...options }, "signOptions"); const secret = this.getSecretKey(payload, options, "privateKey", interfaces_1.JwtSecretRequestType.SIGN); if (secret instanceof Promise) { secret.catch(() => { }); this.logger.warn('For async version of "secretOrKeyProvider", please use "signAsync".'); throw new jwt_errors_1.WrongSecretProviderError(); } const allowedSignOptKeys = ["secret", "privateKey"]; const signOptKeys = Object.keys(signOptions); if (typeof payload === "string" && signOptKeys.some((k) => !allowedSignOptKeys.includes(k))) { throw new Error("Payload as string is not allowed with the following sign options: " + signOptKeys.join(", ")); } return jwt.sign(payload, secret, signOptions); } signAsync(payload, options) { const signOptions = this.mergeJwtOptions({ ...options }, "signOptions"); const secret = this.getSecretKey(payload, options, "privateKey", interfaces_1.JwtSecretRequestType.SIGN); const allowedSignOptKeys = ["secret", "privateKey"]; const signOptKeys = Object.keys(signOptions); if (typeof payload === "string" && signOptKeys.some((k) => !allowedSignOptKeys.includes(k))) { throw new Error("Payload as string is not allowed with the following sign options: " + signOptKeys.join(", ")); } return new Promise((resolve, reject) => Promise.resolve().then(() => secret).then((scrt) => { jwt.sign(payload, scrt, signOptions, (err, encoded) => err ? reject(err) : resolve(encoded)); })); } verify(token, options) { const verifyOptions = this.mergeJwtOptions({ ...options }, "verifyOptions"); const secret = this.getSecretKey(token, options, "publicKey", interfaces_1.JwtSecretRequestType.VERIFY); if (secret instanceof Promise) { secret.catch(() => { }); this.logger.warn('For async version of "secretOrKeyProvider", please use "verifyAsync".'); throw new jwt_errors_1.WrongSecretProviderError(); } return jwt.verify(token, secret, verifyOptions); } verifyAsync(token, options) { const verifyOptions = this.mergeJwtOptions({ ...options }, "verifyOptions"); const secret = this.getSecretKey(token, options, "publicKey", interfaces_1.JwtSecretRequestType.VERIFY); return new Promise((resolve, reject) => Promise.resolve().then(() => secret).then((scrt) => { jwt.verify(token, scrt, verifyOptions, (err, decoded) => err ? reject(err) : resolve(decoded)); }).catch(reject)); } decode(token, options) { return jwt.decode(token, options); } mergeJwtOptions(options, key) { delete options.secret; if (key === "signOptions") { delete options.privateKey; } else { delete options.publicKey; } return options ? { ...this.options[key] || {}, ...options } : this.options[key]; } overrideSecretFromOptions(secret) { if (this.options.secretOrPrivateKey) { this.logger.warn(`"secretOrPrivateKey" has been deprecated, please use the new explicit "secret" or use "secretOrKeyProvider" or "privateKey"/"publicKey" exclusively.`); secret = this.options.secretOrPrivateKey; } return secret; } getSecretKey(token, options, key, secretRequestType) { const secret = this.options.secretOrKeyProvider ? this.options.secretOrKeyProvider(secretRequestType, token, options) : options?.secret || this.options.secret || (key === "privateKey" ? options?.privateKey || this.options.privateKey : options?.publicKey || this.options.publicKey) || this.options[key]; return secret instanceof Promise ? secret.then((sec) => this.overrideSecretFromOptions(sec)) : this.overrideSecretFromOptions(secret); } }; exports2.JwtService = JwtService; exports2.JwtService = JwtService = __decorate2([ (0, common_12.Injectable)(), __param2(0, (0, common_12.Optional)()), __param2(0, (0, common_12.Inject)(jwt_constants_1.JWT_MODULE_OPTIONS)), __metadata2("design:paramtypes", [Object]) ], JwtService); } }); // ../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/jwt.module.js var require_jwt_module = __commonJS({ "../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/jwt.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var JwtModule_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.JwtModule = void 0; var common_12 = require_common(); var jwt_constants_1 = require_jwt_constants(); var jwt_providers_1 = require_jwt_providers(); var jwt_service_1 = require_jwt_service(); var JwtModule = JwtModule_1 = class JwtModule { static { __name(this, "JwtModule"); } static register(options) { return { module: JwtModule_1, global: options.global, providers: (0, jwt_providers_1.createJwtProvider)(options) }; } static registerAsync(options) { return { module: JwtModule_1, global: options.global, imports: options.imports || [], providers: [ ...this.createAsyncProviders(options), ...options.extraProviders ?? [] ] }; } static createAsyncProviders(options) { if (options.useExisting || options.useFactory) { return [this.createAsyncOptionsProvider(options)]; } return [ this.createAsyncOptionsProvider(options), { provide: options.useClass, useClass: options.useClass } ]; } static createAsyncOptionsProvider(options) { if (options.useFactory) { return { provide: jwt_constants_1.JWT_MODULE_OPTIONS, useFactory: options.useFactory, inject: options.inject || [] }; } return { provide: jwt_constants_1.JWT_MODULE_OPTIONS, useFactory: /* @__PURE__ */ __name(async (optionsFactory) => await optionsFactory.createJwtOptions(), "useFactory"), inject: [options.useExisting || options.useClass] }; } }; exports2.JwtModule = JwtModule; exports2.JwtModule = JwtModule = JwtModule_1 = __decorate2([ (0, common_12.Module)({ providers: [jwt_service_1.JwtService], exports: [jwt_service_1.JwtService] }) ], JwtModule); } }); // ../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/index.js var require_dist11 = __commonJS({ "../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/dist/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.JsonWebTokenError = exports2.NotBeforeError = exports2.TokenExpiredError = void 0; __exportStar2(require_interfaces12(), exports2); __exportStar2(require_jwt_errors(), exports2); __exportStar2(require_jwt_module(), exports2); __exportStar2(require_jwt_service(), exports2); var jsonwebtoken_1 = require_jsonwebtoken(); Object.defineProperty(exports2, "TokenExpiredError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return jsonwebtoken_1.TokenExpiredError; }, "get") }); Object.defineProperty(exports2, "NotBeforeError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return jsonwebtoken_1.NotBeforeError; }, "get") }); Object.defineProperty(exports2, "JsonWebTokenError", { enumerable: true, get: /* @__PURE__ */ __name(function() { return jsonwebtoken_1.JsonWebTokenError; }, "get") }); } }); // ../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/index.js var require_jwt = __commonJS({ "../../node_modules/.pnpm/@nestjs+jwt@10.2.0_@nestjs+_8abe00d1b56ede2146ba602481db9f87/node_modules/@nestjs/jwt/index.js"(exports2) { "use strict"; function __export2(m) { for (var p in m) if (!exports2.hasOwnProperty(p)) exports2[p] = m[p]; } __name(__export2, "__export"); exports2.__esModule = true; __export2(require_dist11()); } }); // ../../node_modules/.pnpm/bcryptjs@2.4.3/node_modules/bcryptjs/dist/bcrypt.js var require_bcrypt = __commonJS({ "../../node_modules/.pnpm/bcryptjs@2.4.3/node_modules/bcryptjs/dist/bcrypt.js"(exports2, module2) { (function(global2, factory) { if (typeof define === "function" && define["amd"]) define([], factory); else if (typeof require === "function" && typeof module2 === "object" && module2 && module2["exports"]) module2["exports"] = factory(); else (global2["dcodeIO"] = global2["dcodeIO"] || {})["bcrypt"] = factory(); })(exports2, function() { "use strict"; var bcrypt = {}; var randomFallback = null; function random(len) { if (typeof module2 !== "undefined" && module2 && module2["exports"]) try { return require("crypto")["randomBytes"](len); } catch (e) { } try { var a; (self["crypto"] || self["msCrypto"])["getRandomValues"](a = new Uint32Array(len)); return Array.prototype.slice.call(a); } catch (e) { } if (!randomFallback) throw Error("Neither WebCryptoAPI nor a crypto module is available. Use bcrypt.setRandomFallback to set an alternative"); return randomFallback(len); } __name(random, "random"); var randomAvailable = false; try { random(1); randomAvailable = true; } catch (e) { } randomFallback = null; bcrypt.setRandomFallback = function(random2) { randomFallback = random2; }; bcrypt.genSaltSync = function(rounds, seed_length) { rounds = rounds || GENSALT_DEFAULT_LOG2_ROUNDS; if (typeof rounds !== "number") throw Error("Illegal arguments: " + typeof rounds + ", " + typeof seed_length); if (rounds < 4) rounds = 4; else if (rounds > 31) rounds = 31; var salt = []; salt.push("$2a$"); if (rounds < 10) salt.push("0"); salt.push(rounds.toString()); salt.push("$"); salt.push(base64_encode(random(BCRYPT_SALT_LEN), BCRYPT_SALT_LEN)); return salt.join(""); }; bcrypt.genSalt = function(rounds, seed_length, callback) { if (typeof seed_length === "function") callback = seed_length, seed_length = void 0; if (typeof rounds === "function") callback = rounds, rounds = void 0; if (typeof rounds === "undefined") rounds = GENSALT_DEFAULT_LOG2_ROUNDS; else if (typeof rounds !== "number") throw Error("illegal arguments: " + typeof rounds); function _async(callback2) { nextTick(function() { try { callback2(null, bcrypt.genSaltSync(rounds)); } catch (err) { callback2(err); } }); } __name(_async, "_async"); if (callback) { if (typeof callback !== "function") throw Error("Illegal callback: " + typeof callback); _async(callback); } else return new Promise(function(resolve, reject) { _async(function(err, res) { if (err) { reject(err); return; } resolve(res); }); }); }; bcrypt.hashSync = function(s, salt) { if (typeof salt === "undefined") salt = GENSALT_DEFAULT_LOG2_ROUNDS; if (typeof salt === "number") salt = bcrypt.genSaltSync(salt); if (typeof s !== "string" || typeof salt !== "string") throw Error("Illegal arguments: " + typeof s + ", " + typeof salt); return _hash(s, salt); }; bcrypt.hash = function(s, salt, callback, progressCallback) { function _async(callback2) { if (typeof s === "string" && typeof salt === "number") bcrypt.genSalt(salt, function(err, salt2) { _hash(s, salt2, callback2, progressCallback); }); else if (typeof s === "string" && typeof salt === "string") _hash(s, salt, callback2, progressCallback); else nextTick(callback2.bind(this, Error("Illegal arguments: " + typeof s + ", " + typeof salt))); } __name(_async, "_async"); if (callback) { if (typeof callback !== "function") throw Error("Illegal callback: " + typeof callback); _async(callback); } else return new Promise(function(resolve, reject) { _async(function(err, res) { if (err) { reject(err); return; } resolve(res); }); }); }; function safeStringCompare(known, unknown) { var right = 0, wrong = 0; for (var i = 0, k = known.length; i < k; ++i) { if (known.charCodeAt(i) === unknown.charCodeAt(i)) ++right; else ++wrong; } if (right < 0) return false; return wrong === 0; } __name(safeStringCompare, "safeStringCompare"); bcrypt.compareSync = function(s, hash) { if (typeof s !== "string" || typeof hash !== "string") throw Error("Illegal arguments: " + typeof s + ", " + typeof hash); if (hash.length !== 60) return false; return safeStringCompare(bcrypt.hashSync(s, hash.substr(0, hash.length - 31)), hash); }; bcrypt.compare = function(s, hash, callback, progressCallback) { function _async(callback2) { if (typeof s !== "string" || typeof hash !== "string") { nextTick(callback2.bind(this, Error("Illegal arguments: " + typeof s + ", " + typeof hash))); return; } if (hash.length !== 60) { nextTick(callback2.bind(this, null, false)); return; } bcrypt.hash(s, hash.substr(0, 29), function(err, comp) { if (err) callback2(err); else callback2(null, safeStringCompare(comp, hash)); }, progressCallback); } __name(_async, "_async"); if (callback) { if (typeof callback !== "function") throw Error("Illegal callback: " + typeof callback); _async(callback); } else return new Promise(function(resolve, reject) { _async(function(err, res) { if (err) { reject(err); return; } resolve(res); }); }); }; bcrypt.getRounds = function(hash) { if (typeof hash !== "string") throw Error("Illegal arguments: " + typeof hash); return parseInt(hash.split("$")[2], 10); }; bcrypt.getSalt = function(hash) { if (typeof hash !== "string") throw Error("Illegal arguments: " + typeof hash); if (hash.length !== 60) throw Error("Illegal hash length: " + hash.length + " != 60"); return hash.substring(0, 29); }; var nextTick = typeof process !== "undefined" && process && typeof process.nextTick === "function" ? typeof setImmediate === "function" ? setImmediate : process.nextTick : setTimeout; function stringToBytes2(str) { var out = [], i = 0; utfx.encodeUTF16toUTF8(function() { if (i >= str.length) return null; return str.charCodeAt(i++); }, function(b) { out.push(b); }); return out; } __name(stringToBytes2, "stringToBytes"); var BASE64_CODE = "./ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""); var BASE64_INDEX = [ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, 1, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, -1, -1, -1, -1, -1, -1, -1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, -1, -1, -1, -1, -1 ]; var stringFromCharCode = String.fromCharCode; function base64_encode(b, len) { var off = 0, rs = [], c1, c2; if (len <= 0 || len > b.length) throw Error("Illegal len: " + len); while (off < len) { c1 = b[off++] & 255; rs.push(BASE64_CODE[c1 >> 2 & 63]); c1 = (c1 & 3) << 4; if (off >= len) { rs.push(BASE64_CODE[c1 & 63]); break; } c2 = b[off++] & 255; c1 |= c2 >> 4 & 15; rs.push(BASE64_CODE[c1 & 63]); c1 = (c2 & 15) << 2; if (off >= len) { rs.push(BASE64_CODE[c1 & 63]); break; } c2 = b[off++] & 255; c1 |= c2 >> 6 & 3; rs.push(BASE64_CODE[c1 & 63]); rs.push(BASE64_CODE[c2 & 63]); } return rs.join(""); } __name(base64_encode, "base64_encode"); function base64_decode(s, len) { var off = 0, slen = s.length, olen = 0, rs = [], c1, c2, c3, c4, o, code; if (len <= 0) throw Error("Illegal len: " + len); while (off < slen - 1 && olen < len) { code = s.charCodeAt(off++); c1 = code < BASE64_INDEX.length ? BASE64_INDEX[code] : -1; code = s.charCodeAt(off++); c2 = code < BASE64_INDEX.length ? BASE64_INDEX[code] : -1; if (c1 == -1 || c2 == -1) break; o = c1 << 2 >>> 0; o |= (c2 & 48) >> 4; rs.push(stringFromCharCode(o)); if (++olen >= len || off >= slen) break; code = s.charCodeAt(off++); c3 = code < BASE64_INDEX.length ? BASE64_INDEX[code] : -1; if (c3 == -1) break; o = (c2 & 15) << 4 >>> 0; o |= (c3 & 60) >> 2; rs.push(stringFromCharCode(o)); if (++olen >= len || off >= slen) break; code = s.charCodeAt(off++); c4 = code < BASE64_INDEX.length ? BASE64_INDEX[code] : -1; o = (c3 & 3) << 6 >>> 0; o |= c4; rs.push(stringFromCharCode(o)); ++olen; } var res = []; for (off = 0; off < olen; off++) res.push(rs[off].charCodeAt(0)); return res; } __name(base64_decode, "base64_decode"); var utfx = (function() { "use strict"; var utfx2 = {}; utfx2.MAX_CODEPOINT = 1114111; utfx2.encodeUTF8 = function(src, dst) { var cp = null; if (typeof src === "number") cp = src, src = /* @__PURE__ */ __name(function() { return null; }, "src"); while (cp !== null || (cp = src()) !== null) { if (cp < 128) dst(cp & 127); else if (cp < 2048) dst(cp >> 6 & 31 | 192), dst(cp & 63 | 128); else if (cp < 65536) dst(cp >> 12 & 15 | 224), dst(cp >> 6 & 63 | 128), dst(cp & 63 | 128); else dst(cp >> 18 & 7 | 240), dst(cp >> 12 & 63 | 128), dst(cp >> 6 & 63 | 128), dst(cp & 63 | 128); cp = null; } }; utfx2.decodeUTF8 = function(src, dst) { var a, b, c, d, fail = /* @__PURE__ */ __name(function(b2) { b2 = b2.slice(0, b2.indexOf(null)); var err = Error(b2.toString()); err.name = "TruncatedError"; err["bytes"] = b2; throw err; }, "fail"); while ((a = src()) !== null) { if ((a & 128) === 0) dst(a); else if ((a & 224) === 192) (b = src()) === null && fail([a, b]), dst((a & 31) << 6 | b & 63); else if ((a & 240) === 224) ((b = src()) === null || (c = src()) === null) && fail([a, b, c]), dst((a & 15) << 12 | (b & 63) << 6 | c & 63); else if ((a & 248) === 240) ((b = src()) === null || (c = src()) === null || (d = src()) === null) && fail([a, b, c, d]), dst((a & 7) << 18 | (b & 63) << 12 | (c & 63) << 6 | d & 63); else throw RangeError("Illegal starting byte: " + a); } }; utfx2.UTF16toUTF8 = function(src, dst) { var c1, c2 = null; while (true) { if ((c1 = c2 !== null ? c2 : src()) === null) break; if (c1 >= 55296 && c1 <= 57343) { if ((c2 = src()) !== null) { if (c2 >= 56320 && c2 <= 57343) { dst((c1 - 55296) * 1024 + c2 - 56320 + 65536); c2 = null; continue; } } } dst(c1); } if (c2 !== null) dst(c2); }; utfx2.UTF8toUTF16 = function(src, dst) { var cp = null; if (typeof src === "number") cp = src, src = /* @__PURE__ */ __name(function() { return null; }, "src"); while (cp !== null || (cp = src()) !== null) { if (cp <= 65535) dst(cp); else cp -= 65536, dst((cp >> 10) + 55296), dst(cp % 1024 + 56320); cp = null; } }; utfx2.encodeUTF16toUTF8 = function(src, dst) { utfx2.UTF16toUTF8(src, function(cp) { utfx2.encodeUTF8(cp, dst); }); }; utfx2.decodeUTF8toUTF16 = function(src, dst) { utfx2.decodeUTF8(src, function(cp) { utfx2.UTF8toUTF16(cp, dst); }); }; utfx2.calculateCodePoint = function(cp) { return cp < 128 ? 1 : cp < 2048 ? 2 : cp < 65536 ? 3 : 4; }; utfx2.calculateUTF8 = function(src) { var cp, l2 = 0; while ((cp = src()) !== null) l2 += utfx2.calculateCodePoint(cp); return l2; }; utfx2.calculateUTF16asUTF8 = function(src) { var n = 0, l2 = 0; utfx2.UTF16toUTF8(src, function(cp) { ++n; l2 += utfx2.calculateCodePoint(cp); }); return [n, l2]; }; return utfx2; })(); Date.now = Date.now || function() { return +/* @__PURE__ */ new Date(); }; var BCRYPT_SALT_LEN = 16; var GENSALT_DEFAULT_LOG2_ROUNDS = 10; var BLOWFISH_NUM_ROUNDS = 16; var MAX_EXECUTION_TIME = 100; var P_ORIG = [ 608135816, 2242054355, 320440878, 57701188, 2752067618, 698298832, 137296536, 3964562569, 1160258022, 953160567, 3193202383, 887688300, 3232508343, 3380367581, 1065670069, 3041331479, 2450970073, 2306472731 ]; var S_ORIG = [ 3509652390, 2564797868, 805139163, 3491422135, 3101798381, 1780907670, 3128725573, 4046225305, 614570311, 3012652279, 134345442, 2240740374, 1667834072, 1901547113, 2757295779, 4103290238, 227898511, 1921955416, 1904987480, 2182433518, 2069144605, 3260701109, 2620446009, 720527379, 3318853667, 677414384, 3393288472, 3101374703, 2390351024, 1614419982, 1822297739, 2954791486, 3608508353, 3174124327, 2024746970, 1432378464, 3864339955, 2857741204, 1464375394, 1676153920, 1439316330, 715854006, 3033291828, 289532110, 2706671279, 2087905683, 3018724369, 1668267050, 732546397, 1947742710, 3462151702, 2609353502, 2950085171, 1814351708, 2050118529, 680887927, 999245976, 1800124847, 3300911131, 1713906067, 1641548236, 4213287313, 1216130144, 1575780402, 4018429277, 3917837745, 3693486850, 3949271944, 596196993, 3549867205, 258830323, 2213823033, 772490370, 2760122372, 1774776394, 2652871518, 566650946, 4142492826, 1728879713, 2882767088, 1783734482, 3629395816, 2517608232, 2874225571, 1861159788, 326777828, 3124490320, 2130389656, 2716951837, 967770486, 1724537150, 2185432712, 2364442137, 1164943284, 2105845187, 998989502, 3765401048, 2244026483, 1075463327, 1455516326, 1322494562, 910128902, 469688178, 1117454909, 936433444, 3490320968, 3675253459, 1240580251, 122909385, 2157517691, 634681816, 4142456567, 3825094682, 3061402683, 2540495037, 79693498, 3249098678, 1084186820, 1583128258, 426386531, 1761308591, 1047286709, 322548459, 995290223, 1845252383, 2603652396, 3431023940, 2942221577, 3202600964, 3727903485, 1712269319, 422464435, 3234572375, 1170764815, 3523960633, 3117677531, 1434042557, 442511882, 3600875718, 1076654713, 1738483198, 4213154764, 2393238008, 3677496056, 1014306527, 4251020053, 793779912, 2902807211, 842905082, 4246964064, 1395751752, 1040244610, 2656851899, 3396308128, 445077038, 3742853595, 3577915638, 679411651, 2892444358, 2354009459, 1767581616, 3150600392, 3791627101, 3102740896, 284835224, 4246832056, 1258075500, 768725851, 2589189241, 3069724005, 3532540348, 1274779536, 3789419226, 2764799539, 1660621633, 3471099624, 4011903706, 913787905, 3497959166, 737222580, 2514213453, 2928710040, 3937242737, 1804850592, 3499020752, 2949064160, 2386320175, 2390070455, 2415321851, 4061277028, 2290661394, 2416832540, 1336762016, 1754252060, 3520065937, 3014181293, 791618072, 3188594551, 3933548030, 2332172193, 3852520463, 3043980520, 413987798, 3465142937, 3030929376, 4245938359, 2093235073, 3534596313, 375366246, 2157278981, 2479649556, 555357303, 3870105701, 2008414854, 3344188149, 4221384143, 3956125452, 2067696032, 3594591187, 2921233993, 2428461, 544322398, 577241275, 1471733935, 610547355, 4027169054, 1432588573, 1507829418, 2025931657, 3646575487, 545086370, 48609733, 2200306550, 1653985193, 298326376, 1316178497, 3007786442, 2064951626, 458293330, 2589141269, 3591329599, 3164325604, 727753846, 2179363840, 146436021, 1461446943, 4069977195, 705550613, 3059967265, 3887724982, 4281599278, 3313849956, 1404054877, 2845806497, 146425753, 1854211946, 1266315497, 3048417604, 3681880366, 3289982499, 290971e4, 1235738493, 2632868024, 2414719590, 3970600049, 1771706367, 1449415276, 3266420449, 422970021, 1963543593, 2690192192, 3826793022, 1062508698, 1531092325, 1804592342, 2583117782, 2714934279, 4024971509, 1294809318, 4028980673, 1289560198, 2221992742, 1669523910, 35572830, 157838143, 1052438473, 1016535060, 1802137761, 1753167236, 1386275462, 3080475397, 2857371447, 1040679964, 2145300060, 2390574316, 1461121720, 2956646967, 4031777805, 4028374788, 33600511, 2920084762, 1018524850, 629373528, 3691585981, 3515945977, 2091462646, 2486323059, 586499841, 988145025, 935516892, 3367335476, 2599673255, 2839830854, 265290510, 3972581182, 2759138881, 3795373465, 1005194799, 847297441, 406762289, 1314163512, 1332590856, 1866599683, 4127851711, 750260880, 613907577, 1450815602, 3165620655, 3734664991, 3650291728, 3012275730, 3704569646, 1427272223, 778793252, 1343938022, 2676280711, 2052605720, 1946737175, 3164576444, 3914038668, 3967478842, 3682934266, 1661551462, 3294938066, 4011595847, 840292616, 3712170807, 616741398, 312560963, 711312465, 1351876610, 322626781, 1910503582, 271666773, 2175563734, 1594956187, 70604529, 3617834859, 1007753275, 1495573769, 4069517037, 2549218298, 2663038764, 504708206, 2263041392, 3941167025, 2249088522, 1514023603, 1998579484, 1312622330, 694541497, 2582060303, 2151582166, 1382467621, 776784248, 2618340202, 3323268794, 2497899128, 2784771155, 503983604, 4076293799, 907881277, 423175695, 432175456, 1378068232, 4145222326, 3954048622, 3938656102, 3820766613, 2793130115, 2977904593, 26017576, 3274890735, 3194772133, 1700274565, 1756076034, 4006520079, 3677328699, 720338349, 1533947780, 354530856, 688349552, 3973924725, 1637815568, 332179504, 3949051286, 53804574, 2852348879, 3044236432, 1282449977, 3583942155, 3416972820, 4006381244, 1617046695, 2628476075, 3002303598, 1686838959, 431878346, 2686675385, 1700445008, 1080580658, 1009431731, 832498133, 3223435511, 2605976345, 2271191193, 2516031870, 1648197032, 4164389018, 2548247927, 300782431, 375919233, 238389289, 3353747414, 2531188641, 2019080857, 1475708069, 455242339, 2609103871, 448939670, 3451063019, 1395535956, 2413381860, 1841049896, 1491858159, 885456874, 4264095073, 4001119347, 1565136089, 3898914787, 1108368660, 540939232, 1173283510, 2745871338, 3681308437, 4207628240, 3343053890, 4016749493, 1699691293, 1103962373, 3625875870, 2256883143, 3830138730, 1031889488, 3479347698, 1535977030, 4236805024, 3251091107, 2132092099, 1774941330, 1199868427, 1452454533, 157007616, 2904115357, 342012276, 595725824, 1480756522, 206960106, 497939518, 591360097, 863170706, 2375253569, 3596610801, 1814182875, 2094937945, 3421402208, 1082520231, 3463918190, 2785509508, 435703966, 3908032597, 1641649973, 2842273706, 3305899714, 1510255612, 2148256476, 2655287854, 3276092548, 4258621189, 236887753, 3681803219, 274041037, 1734335097, 3815195456, 3317970021, 1899903192, 1026095262, 4050517792, 356393447, 2410691914, 3873677099, 3682840055, 3913112168, 2491498743, 4132185628, 2489919796, 1091903735, 1979897079, 3170134830, 3567386728, 3557303409, 857797738, 1136121015, 1342202287, 507115054, 2535736646, 337727348, 3213592640, 1301675037, 2528481711, 1895095763, 1721773893, 3216771564, 62756741, 2142006736, 835421444, 2531993523, 1442658625, 3659876326, 2882144922, 676362277, 1392781812, 170690266, 3921047035, 1759253602, 3611846912, 1745797284, 664899054, 1329594018, 3901205900, 3045908486, 2062866102, 2865634940, 3543621612, 3464012697, 1080764994, 553557557, 3656615353, 3996768171, 991055499, 499776247, 1265440854, 648242737, 3940784050, 980351604, 3713745714, 1749149687, 3396870395, 4211799374, 3640570775, 1161844396, 3125318951, 1431517754, 545492359, 4268468663, 3499529547, 1437099964, 2702547544, 3433638243, 2581715763, 2787789398, 1060185593, 1593081372, 2418618748, 4260947970, 69676912, 2159744348, 86519011, 2512459080, 3838209314, 1220612927, 3339683548, 133810670, 1090789135, 1078426020, 1569222167, 845107691, 3583754449, 4072456591, 1091646820, 628848692, 1613405280, 3757631651, 526609435, 236106946, 48312990, 2942717905, 3402727701, 1797494240, 859738849, 992217954, 4005476642, 2243076622, 3870952857, 3732016268, 765654824, 3490871365, 2511836413, 1685915746, 3888969200, 1414112111, 2273134842, 3281911079, 4080962846, 172450625, 2569994100, 980381355, 4109958455, 2819808352, 2716589560, 2568741196, 3681446669, 3329971472, 1835478071, 660984891, 3704678404, 4045999559, 3422617507, 3040415634, 1762651403, 1719377915, 3470491036, 2693910283, 3642056355, 3138596744, 1364962596, 2073328063, 1983633131, 926494387, 3423689081, 2150032023, 4096667949, 1749200295, 3328846651, 309677260, 2016342300, 1779581495, 3079819751, 111262694, 1274766160, 443224088, 298511866, 1025883608, 3806446537, 1145181785, 168956806, 3641502830, 3584813610, 1689216846, 3666258015, 3200248200, 1692713982, 2646376535, 4042768518, 1618508792, 1610833997, 3523052358, 4130873264, 2001055236, 3610705100, 2202168115, 4028541809, 2961195399, 1006657119, 2006996926, 3186142756, 1430667929, 3210227297, 1314452623, 4074634658, 4101304120, 2273951170, 1399257539, 3367210612, 3027628629, 1190975929, 2062231137, 2333990788, 2221543033, 2438960610, 1181637006, 548689776, 2362791313, 3372408396, 3104550113, 3145860560, 296247880, 1970579870, 3078560182, 3769228297, 1714227617, 3291629107, 3898220290, 166772364, 1251581989, 493813264, 448347421, 195405023, 2709975567, 677966185, 3703036547, 1463355134, 2715995803, 1338867538, 1343315457, 2802222074, 2684532164, 233230375, 2599980071, 2000651841, 3277868038, 1638401717, 4028070440, 3237316320, 6314154, 819756386, 300326615, 590932579, 1405279636, 3267499572, 3150704214, 2428286686, 3959192993, 3461946742, 1862657033, 1266418056, 963775037, 2089974820, 2263052895, 1917689273, 448879540, 3550394620, 3981727096, 150775221, 3627908307, 1303187396, 508620638, 2975983352, 2726630617, 1817252668, 1876281319, 1457606340, 908771278, 3720792119, 3617206836, 2455994898, 1729034894, 1080033504, 976866871, 3556439503, 2881648439, 1522871579, 1555064734, 1336096578, 3548522304, 2579274686, 3574697629, 3205460757, 3593280638, 3338716283, 3079412587, 564236357, 2993598910, 1781952180, 1464380207, 3163844217, 3332601554, 1699332808, 1393555694, 1183702653, 3581086237, 1288719814, 691649499, 2847557200, 2895455976, 3193889540, 2717570544, 1781354906, 1676643554, 2592534050, 3230253752, 1126444790, 2770207658, 2633158820, 2210423226, 2615765581, 2414155088, 3127139286, 673620729, 2805611233, 1269405062, 4015350505, 3341807571, 4149409754, 1057255273, 2012875353, 2162469141, 2276492801, 2601117357, 993977747, 3918593370, 2654263191, 753973209, 36408145, 2530585658, 25011837, 3520020182, 2088578344, 530523599, 2918365339, 1524020338, 1518925132, 3760827505, 3759777254, 1202760957, 3985898139, 3906192525, 674977740, 4174734889, 2031300136, 2019492241, 3983892565, 4153806404, 3822280332, 352677332, 2297720250, 60907813, 90501309, 3286998549, 1016092578, 2535922412, 2839152426, 457141659, 509813237, 4120667899, 652014361, 1966332200, 2975202805, 55981186, 2327461051, 676427537, 3255491064, 2882294119, 3433927263, 1307055953, 942726286, 933058658, 2468411793, 3933900994, 4215176142, 1361170020, 2001714738, 2830558078, 3274259782, 1222529897, 1679025792, 2729314320, 3714953764, 1770335741, 151462246, 3013232138, 1682292957, 1483529935, 471910574, 1539241949, 458788160, 3436315007, 1807016891, 3718408830, 978976581, 1043663428, 3165965781, 1927990952, 4200891579, 2372276910, 3208408903, 3533431907, 1412390302, 2931980059, 4132332400, 1947078029, 3881505623, 4168226417, 2941484381, 1077988104, 1320477388, 886195818, 18198404, 3786409e3, 2509781533, 112762804, 3463356488, 1866414978, 891333506, 18488651, 661792760, 1628790961, 3885187036, 3141171499, 876946877, 2693282273, 1372485963, 791857591, 2686433993, 3759982718, 3167212022, 3472953795, 2716379847, 445679433, 3561995674, 3504004811, 3574258232, 54117162, 3331405415, 2381918588, 3769707343, 4154350007, 1140177722, 4074052095, 668550556, 3214352940, 367459370, 261225585, 2610173221, 4209349473, 3468074219, 3265815641, 314222801, 3066103646, 3808782860, 282218597, 3406013506, 3773591054, 379116347, 1285071038, 846784868, 2669647154, 3771962079, 3550491691, 2305946142, 453669953, 1268987020, 3317592352, 3279303384, 3744833421, 2610507566, 3859509063, 266596637, 3847019092, 517658769, 3462560207, 3443424879, 370717030, 4247526661, 2224018117, 4143653529, 4112773975, 2788324899, 2477274417, 1456262402, 2901442914, 1517677493, 1846949527, 2295493580, 3734397586, 2176403920, 1280348187, 1908823572, 3871786941, 846861322, 1172426758, 3287448474, 3383383037, 1655181056, 3139813346, 901632758, 1897031941, 2986607138, 3066810236, 3447102507, 1393639104, 373351379, 950779232, 625454576, 3124240540, 4148612726, 2007998917, 544563296, 2244738638, 2330496472, 2058025392, 1291430526, 424198748, 50039436, 29584100, 3605783033, 2429876329, 2791104160, 1057563949, 3255363231, 3075367218, 3463963227, 1469046755, 985887462 ]; var C_ORIG = [ 1332899944, 1700884034, 1701343084, 1684370003, 1668446532, 1869963892 ]; function _encipher(lr, off, P, S) { var n, l2 = lr[off], r = lr[off + 1]; l2 ^= P[0]; n = S[l2 >>> 24]; n += S[256 | l2 >> 16 & 255]; n ^= S[512 | l2 >> 8 & 255]; n += S[768 | l2 & 255]; r ^= n ^ P[1]; n = S[r >>> 24]; n += S[256 | r >> 16 & 255]; n ^= S[512 | r >> 8 & 255]; n += S[768 | r & 255]; l2 ^= n ^ P[2]; n = S[l2 >>> 24]; n += S[256 | l2 >> 16 & 255]; n ^= S[512 | l2 >> 8 & 255]; n += S[768 | l2 & 255]; r ^= n ^ P[3]; n = S[r >>> 24]; n += S[256 | r >> 16 & 255]; n ^= S[512 | r >> 8 & 255]; n += S[768 | r & 255]; l2 ^= n ^ P[4]; n = S[l2 >>> 24]; n += S[256 | l2 >> 16 & 255]; n ^= S[512 | l2 >> 8 & 255]; n += S[768 | l2 & 255]; r ^= n ^ P[5]; n = S[r >>> 24]; n += S[256 | r >> 16 & 255]; n ^= S[512 | r >> 8 & 255]; n += S[768 | r & 255]; l2 ^= n ^ P[6]; n = S[l2 >>> 24]; n += S[256 | l2 >> 16 & 255]; n ^= S[512 | l2 >> 8 & 255]; n += S[768 | l2 & 255]; r ^= n ^ P[7]; n = S[r >>> 24]; n += S[256 | r >> 16 & 255]; n ^= S[512 | r >> 8 & 255]; n += S[768 | r & 255]; l2 ^= n ^ P[8]; n = S[l2 >>> 24]; n += S[256 | l2 >> 16 & 255]; n ^= S[512 | l2 >> 8 & 255]; n += S[768 | l2 & 255]; r ^= n ^ P[9]; n = S[r >>> 24]; n += S[256 | r >> 16 & 255]; n ^= S[512 | r >> 8 & 255]; n += S[768 | r & 255]; l2 ^= n ^ P[10]; n = S[l2 >>> 24]; n += S[256 | l2 >> 16 & 255]; n ^= S[512 | l2 >> 8 & 255]; n += S[768 | l2 & 255]; r ^= n ^ P[11]; n = S[r >>> 24]; n += S[256 | r >> 16 & 255]; n ^= S[512 | r >> 8 & 255]; n += S[768 | r & 255]; l2 ^= n ^ P[12]; n = S[l2 >>> 24]; n += S[256 | l2 >> 16 & 255]; n ^= S[512 | l2 >> 8 & 255]; n += S[768 | l2 & 255]; r ^= n ^ P[13]; n = S[r >>> 24]; n += S[256 | r >> 16 & 255]; n ^= S[512 | r >> 8 & 255]; n += S[768 | r & 255]; l2 ^= n ^ P[14]; n = S[l2 >>> 24]; n += S[256 | l2 >> 16 & 255]; n ^= S[512 | l2 >> 8 & 255]; n += S[768 | l2 & 255]; r ^= n ^ P[15]; n = S[r >>> 24]; n += S[256 | r >> 16 & 255]; n ^= S[512 | r >> 8 & 255]; n += S[768 | r & 255]; l2 ^= n ^ P[16]; lr[off] = r ^ P[BLOWFISH_NUM_ROUNDS + 1]; lr[off + 1] = l2; return lr; } __name(_encipher, "_encipher"); function _streamtoword(data, offp) { for (var i = 0, word = 0; i < 4; ++i) word = word << 8 | data[offp] & 255, offp = (offp + 1) % data.length; return { key: word, offp }; } __name(_streamtoword, "_streamtoword"); function _key(key, P, S) { var offset = 0, lr = [0, 0], plen = P.length, slen = S.length, sw; for (var i = 0; i < plen; i++) sw = _streamtoword(key, offset), offset = sw.offp, P[i] = P[i] ^ sw.key; for (i = 0; i < plen; i += 2) lr = _encipher(lr, 0, P, S), P[i] = lr[0], P[i + 1] = lr[1]; for (i = 0; i < slen; i += 2) lr = _encipher(lr, 0, P, S), S[i] = lr[0], S[i + 1] = lr[1]; } __name(_key, "_key"); function _ekskey(data, key, P, S) { var offp = 0, lr = [0, 0], plen = P.length, slen = S.length, sw; for (var i = 0; i < plen; i++) sw = _streamtoword(key, offp), offp = sw.offp, P[i] = P[i] ^ sw.key; offp = 0; for (i = 0; i < plen; i += 2) sw = _streamtoword(data, offp), offp = sw.offp, lr[0] ^= sw.key, sw = _streamtoword(data, offp), offp = sw.offp, lr[1] ^= sw.key, lr = _encipher(lr, 0, P, S), P[i] = lr[0], P[i + 1] = lr[1]; for (i = 0; i < slen; i += 2) sw = _streamtoword(data, offp), offp = sw.offp, lr[0] ^= sw.key, sw = _streamtoword(data, offp), offp = sw.offp, lr[1] ^= sw.key, lr = _encipher(lr, 0, P, S), S[i] = lr[0], S[i + 1] = lr[1]; } __name(_ekskey, "_ekskey"); function _crypt(b, salt, rounds, callback, progressCallback) { var cdata = C_ORIG.slice(), clen = cdata.length, err; if (rounds < 4 || rounds > 31) { err = Error("Illegal number of rounds (4-31): " + rounds); if (callback) { nextTick(callback.bind(this, err)); return; } else throw err; } if (salt.length !== BCRYPT_SALT_LEN) { err = Error("Illegal salt length: " + salt.length + " != " + BCRYPT_SALT_LEN); if (callback) { nextTick(callback.bind(this, err)); return; } else throw err; } rounds = 1 << rounds >>> 0; var P, S, i = 0, j; if (Int32Array) { P = new Int32Array(P_ORIG); S = new Int32Array(S_ORIG); } else { P = P_ORIG.slice(); S = S_ORIG.slice(); } _ekskey(salt, b, P, S); function next() { if (progressCallback) progressCallback(i / rounds); if (i < rounds) { var start = Date.now(); for (; i < rounds; ) { i = i + 1; _key(b, P, S); _key(salt, P, S); if (Date.now() - start > MAX_EXECUTION_TIME) break; } } else { for (i = 0; i < 64; i++) for (j = 0; j < clen >> 1; j++) _encipher(cdata, j << 1, P, S); var ret2 = []; for (i = 0; i < clen; i++) ret2.push((cdata[i] >> 24 & 255) >>> 0), ret2.push((cdata[i] >> 16 & 255) >>> 0), ret2.push((cdata[i] >> 8 & 255) >>> 0), ret2.push((cdata[i] & 255) >>> 0); if (callback) { callback(null, ret2); return; } else return ret2; } if (callback) nextTick(next); } __name(next, "next"); if (typeof callback !== "undefined") { next(); } else { var res; while (true) if (typeof (res = next()) !== "undefined") return res || []; } } __name(_crypt, "_crypt"); function _hash(s, salt, callback, progressCallback) { var err; if (typeof s !== "string" || typeof salt !== "string") { err = Error("Invalid string / salt: Not a string"); if (callback) { nextTick(callback.bind(this, err)); return; } else throw err; } var minor, offset; if (salt.charAt(0) !== "$" || salt.charAt(1) !== "2") { err = Error("Invalid salt version: " + salt.substring(0, 2)); if (callback) { nextTick(callback.bind(this, err)); return; } else throw err; } if (salt.charAt(2) === "$") minor = String.fromCharCode(0), offset = 3; else { minor = salt.charAt(2); if (minor !== "a" && minor !== "b" && minor !== "y" || salt.charAt(3) !== "$") { err = Error("Invalid salt revision: " + salt.substring(2, 4)); if (callback) { nextTick(callback.bind(this, err)); return; } else throw err; } offset = 4; } if (salt.charAt(offset + 2) > "$") { err = Error("Missing salt rounds"); if (callback) { nextTick(callback.bind(this, err)); return; } else throw err; } var r1 = parseInt(salt.substring(offset, offset + 1), 10) * 10, r2 = parseInt(salt.substring(offset + 1, offset + 2), 10), rounds = r1 + r2, real_salt = salt.substring(offset + 3, offset + 25); s += minor >= "a" ? "\0" : ""; var passwordb = stringToBytes2(s), saltb = base64_decode(real_salt, BCRYPT_SALT_LEN); function finish(bytes) { var res = []; res.push("$2"); if (minor >= "a") res.push(minor); res.push("$"); if (rounds < 10) res.push("0"); res.push(rounds.toString()); res.push("$"); res.push(base64_encode(saltb, saltb.length)); res.push(base64_encode(bytes, C_ORIG.length * 4 - 1)); return res.join(""); } __name(finish, "finish"); if (typeof callback == "undefined") return finish(_crypt(passwordb, saltb, rounds)); else { _crypt(passwordb, saltb, rounds, function(err2, bytes) { if (err2) callback(err2, null); else callback(null, finish(bytes)); }, progressCallback); } } __name(_hash, "_hash"); bcrypt.encodeBase64 = base64_encode; bcrypt.decodeBase64 = base64_decode; return bcrypt; }); } }); // ../../node_modules/.pnpm/bcryptjs@2.4.3/node_modules/bcryptjs/index.js var require_bcryptjs = __commonJS({ "../../node_modules/.pnpm/bcryptjs@2.4.3/node_modules/bcryptjs/index.js"(exports2, module2) { module2.exports = require_bcrypt(); } }); // dist/src/modules/admin-auth/admin-auth.service.js var require_admin_auth_service = __commonJS({ "dist/src/modules/admin-auth/admin-auth.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var AdminAuthService_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminAuthService = void 0; var common_12 = require_common(); var config_12 = require_config2(); var jwt_1 = require_jwt(); var client_1 = require("@prisma/client"); var bcrypt = require_bcryptjs(); var prisma_service_12 = require_prisma_service(); var AdminAuthService = AdminAuthService_1 = class AdminAuthService { static { __name(this, "AdminAuthService"); } constructor(prisma, jwtService, configService) { this.prisma = prisma; this.jwtService = jwtService; this.configService = configService; this.logger = new common_12.Logger(AdminAuthService_1.name); } async onModuleInit() { await this.seedDefaultSuperAdmin(); } async seedDefaultSuperAdmin() { const adminCount = await this.prisma.admin.count(); if (adminCount === 0) { const email = "admin@luckywheel.local"; const defaultPassword = "Admin@SecurePass2026"; const passwordHash = await bcrypt.hash(defaultPassword, 10); await this.prisma.admin.create({ data: { name: "\u0645\u062F\u06CC\u0631 \u0627\u0631\u0634\u062F \u0633\u0627\u0645\u0627\u0646\u0647", email, mobile: "09120000000", passwordHash, role: client_1.AdminRole.SUPER_ADMIN, status: client_1.AdminStatus.ACTIVE } }); this.logger.log(`[SEED] Default Super Admin created: ${email} / ${defaultPassword}`); } } async login(dto) { const { email, password } = dto; const admin = await this.prisma.admin.findUnique({ where: { email: email.toLowerCase() } }); if (!admin) { throw new common_12.UnauthorizedException("\u0627\u06CC\u0645\u06CC\u0644 \u06CC\u0627 \u06A9\u0644\u0645\u0647 \u0639\u0628\u0648\u0631 \u0627\u0634\u062A\u0628\u0627\u0647 \u0627\u0633\u062A."); } if (admin.status !== client_1.AdminStatus.ACTIVE) { throw new common_12.UnauthorizedException("\u062D\u0633\u0627\u0628 \u06A9\u0627\u0631\u0628\u0631\u06CC \u0645\u062F\u06CC\u0631\u06CC\u062A \u063A\u06CC\u0631\u0641\u0639\u0627\u0644 \u0627\u0633\u062A."); } const isMatch = await bcrypt.compare(password, admin.passwordHash); if (!isMatch) { throw new common_12.UnauthorizedException("\u0627\u06CC\u0645\u06CC\u0644 \u06CC\u0627 \u06A9\u0644\u0645\u0647 \u0639\u0628\u0648\u0631 \u0627\u0634\u062A\u0628\u0627\u0647 \u0627\u0633\u062A."); } const tokens = this.generateAdminTokens(admin); return { ...tokens, admin: { id: admin.id, name: admin.name, email: admin.email, mobile: admin.mobile, role: admin.role } }; } async refreshToken(dto) { try { const payload = this.jwtService.verify(dto.refreshToken, { secret: this.configService.get("JWT_ADMIN_REFRESH_SECRET") }); if (payload.type !== "admin_refresh") { throw new common_12.UnauthorizedException("INVALID_TOKEN_TYPE"); } const admin = await this.prisma.admin.findUnique({ where: { id: payload.sub } }); if (!admin || admin.status !== client_1.AdminStatus.ACTIVE) { throw new common_12.UnauthorizedException("ADMIN_NOT_FOUND_OR_DISABLED"); } const accessToken = this.jwtService.sign({ sub: admin.id, email: admin.email, role: admin.role, type: "admin" }, { secret: this.configService.get("JWT_ADMIN_ACCESS_SECRET"), expiresIn: this.configService.get("JWT_ADMIN_ACCESS_EXPIRES_IN", "1h") }); return { accessToken }; } catch { throw new common_12.UnauthorizedException("Refresh token \u0645\u0646\u0642\u0636\u06CC \u0634\u062F\u0647 \u06CC\u0627 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u0627\u0633\u062A."); } } generateAdminTokens(admin) { const accessToken = this.jwtService.sign({ sub: admin.id, email: admin.email, role: admin.role, type: "admin" }, { secret: this.configService.get("JWT_ADMIN_ACCESS_SECRET"), expiresIn: this.configService.get("JWT_ADMIN_ACCESS_EXPIRES_IN", "1h") }); const refreshToken = this.jwtService.sign({ sub: admin.id, type: "admin_refresh" }, { secret: this.configService.get("JWT_ADMIN_REFRESH_SECRET"), expiresIn: this.configService.get("JWT_ADMIN_REFRESH_EXPIRES_IN", "7d") }); return { accessToken, refreshToken }; } async updateProfile(adminId, dto) { const dataToUpdate = {}; if (dto.name) dataToUpdate.name = dto.name.trim(); if (dto.mobile) dataToUpdate.mobile = dto.mobile.trim(); if (dto.email) { const emailLower = dto.email.toLowerCase().trim(); const existing = await this.prisma.admin.findFirst({ where: { email: emailLower, id: { not: adminId } } }); if (existing) { throw new common_12.BadRequestException("\u0627\u06CC\u0646 \u0627\u06CC\u0645\u06CC\u0644 \u0642\u0628\u0644\u0627\u064B \u062A\u0648\u0633\u0637 \u0645\u062F\u06CC\u0631 \u062F\u06CC\u06AF\u0631\u06CC \u062B\u0628\u062A \u0634\u062F\u0647 \u0627\u0633\u062A."); } dataToUpdate.email = emailLower; } if (dto.password) { dataToUpdate.passwordHash = await bcrypt.hash(dto.password, 10); } const updated = await this.prisma.admin.update({ where: { id: adminId }, data: dataToUpdate, select: { id: true, name: true, email: true, mobile: true, role: true, status: true } }); return updated; } }; exports2.AdminAuthService = AdminAuthService; exports2.AdminAuthService = AdminAuthService = AdminAuthService_1 = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [ prisma_service_12.PrismaService, jwt_1.JwtService, config_12.ConfigService ]) ], AdminAuthService); } }); // dist/src/modules/admin-auth/dto/admin-login.dto.js var require_admin_login_dto = __commonJS({ "dist/src/modules/admin-auth/dto/admin-login.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminLoginDto = void 0; var swagger_12 = require_swagger(); var class_validator_1 = require_cjs(); var AdminLoginDto = class { static { __name(this, "AdminLoginDto"); } }; exports2.AdminLoginDto = AdminLoginDto; __decorate2([ (0, swagger_12.ApiProperty)({ example: "admin@luckywheel.local", description: "\u0627\u06CC\u0645\u06CC\u0644 \u0645\u062F\u06CC\u0631 \u0633\u06CC\u0633\u062A\u0645" }), (0, class_validator_1.IsEmail)({}, { message: "\u0641\u0631\u0645\u062A \u0627\u06CC\u0645\u06CC\u0644 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u0627\u0633\u062A" }), (0, class_validator_1.IsNotEmpty)({ message: "\u0627\u06CC\u0645\u06CC\u0644 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), __metadata2("design:type", String) ], AdminLoginDto.prototype, "email", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ example: "Admin@SecurePass2026", description: "\u06A9\u0644\u0645\u0647 \u0639\u0628\u0648\u0631 \u0645\u062F\u06CC\u0631" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsNotEmpty)({ message: "\u06A9\u0644\u0645\u0647 \u0639\u0628\u0648\u0631 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), (0, class_validator_1.MinLength)(6, { message: "\u06A9\u0644\u0645\u0647 \u0639\u0628\u0648\u0631 \u0628\u0627\u06CC\u062F \u062D\u062F\u0627\u0642\u0644 \u06F6 \u06A9\u0627\u0631\u0627\u06A9\u062A\u0631 \u0628\u0627\u0634\u062F" }), __metadata2("design:type", String) ], AdminLoginDto.prototype, "password", void 0); } }); // dist/src/modules/admin-auth/dto/admin-refresh.dto.js var require_admin_refresh_dto = __commonJS({ "dist/src/modules/admin-auth/dto/admin-refresh.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminRefreshDto = void 0; var swagger_12 = require_swagger(); var class_validator_1 = require_cjs(); var AdminRefreshDto = class { static { __name(this, "AdminRefreshDto"); } }; exports2.AdminRefreshDto = AdminRefreshDto; __decorate2([ (0, swagger_12.ApiProperty)({ description: "Refresh Token \u0627\u062F\u0645\u06CC\u0646" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsNotEmpty)({ message: "Refresh Token \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), __metadata2("design:type", String) ], AdminRefreshDto.prototype, "refreshToken", void 0); } }); // dist/src/modules/admin-auth/dto/update-admin-profile.dto.js var require_update_admin_profile_dto = __commonJS({ "dist/src/modules/admin-auth/dto/update-admin-profile.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UpdateAdminProfileDto = void 0; var swagger_12 = require_swagger(); var class_validator_1 = require_cjs(); var UpdateAdminProfileDto = class { static { __name(this, "UpdateAdminProfileDto"); } }; exports2.UpdateAdminProfileDto = UpdateAdminProfileDto; __decorate2([ (0, swagger_12.ApiPropertyOptional)({ description: "\u0646\u0627\u0645 \u0648 \u0646\u0627\u0645 \u062E\u0627\u0646\u0648\u0627\u062F\u06AF\u06CC \u0645\u062F\u06CC\u0631" }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), (0, class_validator_1.Length)(2, 50, { message: "\u0646\u0627\u0645 \u0628\u0627\u06CC\u062F \u0628\u06CC\u0646 \u06F2 \u062A\u0627 \u06F5\u06F0 \u06A9\u0627\u0631\u0627\u06A9\u062A\u0631 \u0628\u0627\u0634\u062F." }), __metadata2("design:type", String) ], UpdateAdminProfileDto.prototype, "name", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ description: "\u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644 \u0645\u062F\u06CC\u0631" }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), (0, class_validator_1.Matches)(/^09\d{9}$/, { message: "\u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644 \u0628\u0627\u06CC\u062F \u06F1\u06F1 \u0631\u0642\u0645 \u0648 \u0628\u0627 \u06F0\u06F9 \u0634\u0631\u0648\u0639 \u0634\u0648\u062F." }), __metadata2("design:type", String) ], UpdateAdminProfileDto.prototype, "mobile", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ description: "\u0627\u06CC\u0645\u06CC\u0644 \u0645\u062F\u06CC\u0631" }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsEmail)({}, { message: "\u0641\u0631\u0645\u062A \u0627\u06CC\u0645\u06CC\u0644 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u0627\u0633\u062A." }), __metadata2("design:type", String) ], UpdateAdminProfileDto.prototype, "email", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ description: "\u06A9\u0644\u0645\u0647 \u0639\u0628\u0648\u0631 \u062C\u062F\u06CC\u062F (\u0627\u062E\u062A\u06CC\u0627\u0631\u06CC)" }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), (0, class_validator_1.Length)(6, 50, { message: "\u06A9\u0644\u0645\u0647 \u0639\u0628\u0648\u0631 \u0628\u0627\u06CC\u062F \u062D\u062F\u0627\u0642\u0644 \u06F6 \u06A9\u0627\u0631\u0627\u06A9\u062A\u0631 \u0628\u0627\u0634\u062F." }), __metadata2("design:type", String) ], UpdateAdminProfileDto.prototype, "password", void 0); } }); // dist/src/modules/admin-auth/admin-auth.controller.js var require_admin_auth_controller = __commonJS({ "dist/src/modules/admin-auth/admin-auth.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminAuthController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var throttler_1 = require_dist9(); var jwt_admin_guard_1 = require_jwt_admin_guard(); var admin_auth_service_1 = require_admin_auth_service(); var admin_login_dto_1 = require_admin_login_dto(); var admin_refresh_dto_1 = require_admin_refresh_dto(); var update_admin_profile_dto_1 = require_update_admin_profile_dto(); var AdminAuthController = class AdminAuthController { static { __name(this, "AdminAuthController"); } constructor(adminAuthService) { this.adminAuthService = adminAuthService; } async login(dto) { return this.adminAuthService.login(dto); } async refresh(dto) { return this.adminAuthService.refreshToken(dto); } async updateProfile(req, dto) { return this.adminAuthService.updateProfile(req.user.id, dto); } async logout() { return { success: true, message: "\u0628\u0627 \u0645\u0648\u0641\u0642\u06CC\u062A \u062E\u0627\u0631\u062C \u0634\u062F\u06CC\u062F." }; } }; exports2.AdminAuthController = AdminAuthController; __decorate2([ (0, common_12.Post)("login"), (0, common_12.HttpCode)(common_12.HttpStatus.OK), (0, throttler_1.Throttle)({ default: { limit: 10, ttl: 9e5 } }), (0, swagger_12.ApiOperation)({ summary: "\u0648\u0631\u0648\u062F \u0645\u062F\u06CC\u0631 \u0628\u0647 \u067E\u0646\u0644 \u0645\u062F\u06CC\u0631\u06CC\u062A \u0628\u0627 \u0627\u06CC\u0645\u06CC\u0644 \u0648 \u06A9\u0644\u0645\u0647 \u0639\u0628\u0648\u0631" }), (0, swagger_12.ApiResponse)({ status: 200, description: "\u0648\u0631\u0648\u062F \u0645\u0648\u0641\u0642 \u0648 \u0635\u062F\u0648\u0631 Access Token \u0648 Refresh Token" }), __param2(0, (0, common_12.Body)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [admin_login_dto_1.AdminLoginDto]), __metadata2("design:returntype", Promise) ], AdminAuthController.prototype, "login", null); __decorate2([ (0, common_12.Post)("refresh"), (0, common_12.HttpCode)(common_12.HttpStatus.OK), (0, swagger_12.ApiOperation)({ summary: "\u062A\u0645\u062F\u06CC\u062F Access Token \u0628\u0627 \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0627\u0632 Refresh Token" }), __param2(0, (0, common_12.Body)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [admin_refresh_dto_1.AdminRefreshDto]), __metadata2("design:returntype", Promise) ], AdminAuthController.prototype, "refresh", null); __decorate2([ (0, common_12.Patch)("profile"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, common_12.HttpCode)(common_12.HttpStatus.OK), (0, swagger_12.ApiBearerAuth)("AdminAuth"), (0, swagger_12.ApiOperation)({ summary: "\u0648\u06CC\u0631\u0627\u06CC\u0634 \u0627\u0637\u0644\u0627\u0639\u0627\u062A \u062D\u0633\u0627\u0628 \u06A9\u0627\u0631\u0628\u0631\u06CC \u0645\u062F\u06CC\u0631 \u062C\u0627\u0631\u06CC" }), __param2(0, (0, common_12.Req)()), __param2(1, (0, common_12.Body)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [Object, update_admin_profile_dto_1.UpdateAdminProfileDto]), __metadata2("design:returntype", Promise) ], AdminAuthController.prototype, "updateProfile", null); __decorate2([ (0, common_12.Post)("logout"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, common_12.HttpCode)(common_12.HttpStatus.OK), (0, swagger_12.ApiBearerAuth)("AdminAuth"), (0, swagger_12.ApiOperation)({ summary: "\u062E\u0631\u0648\u062C \u0627\u0632 \u067E\u0646\u0644 \u0645\u062F\u06CC\u0631\u06CC\u062A" }), __metadata2("design:type", Function), __metadata2("design:paramtypes", []), __metadata2("design:returntype", Promise) ], AdminAuthController.prototype, "logout", null); exports2.AdminAuthController = AdminAuthController = __decorate2([ (0, swagger_12.ApiTags)("Admin Auth (\u0645\u062F\u06CC\u0631\u06CC\u062A)"), (0, common_12.Controller)("admin/auth"), __metadata2("design:paramtypes", [admin_auth_service_1.AdminAuthService]) ], AdminAuthController); } }); // ../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/auth_header.js var require_auth_header = __commonJS({ "../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/auth_header.js"(exports2, module2) { "use strict"; var re = /(\S+)\s+(\S+)/; function parseAuthHeader(hdrValue) { if (typeof hdrValue !== "string") { return null; } var matches = hdrValue.match(re); return matches && { scheme: matches[1], value: matches[2] }; } __name(parseAuthHeader, "parseAuthHeader"); module2.exports = { parse: parseAuthHeader }; } }); // ../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/helpers/assign.js var require_assign = __commonJS({ "../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/helpers/assign.js"(exports2, module2) { module2.exports = function(target, varArgs) { if (target == null) { throw new TypeError("Cannot convert undefined or null to object"); } var to = Object(target); for (var index = 1; index < arguments.length; index++) { var nextSource = arguments[index]; if (nextSource != null) { for (var nextKey in nextSource) { if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) { to[nextKey] = nextSource[nextKey]; } } } } return to; }; } }); // ../../node_modules/.pnpm/jws@4.0.1/node_modules/jws/lib/data-stream.js var require_data_stream2 = __commonJS({ "../../node_modules/.pnpm/jws@4.0.1/node_modules/jws/lib/data-stream.js"(exports2, module2) { var Buffer2 = require_safe_buffer().Buffer; var Stream = require("stream"); var util2 = require("util"); function DataStream(data) { this.buffer = null; this.writable = true; this.readable = true; if (!data) { this.buffer = Buffer2.alloc(0); return this; } if (typeof data.pipe === "function") { this.buffer = Buffer2.alloc(0); data.pipe(this); return this; } if (data.length || typeof data === "object") { this.buffer = data; this.writable = false; process.nextTick(function() { this.emit("end", data); this.readable = false; this.emit("close"); }.bind(this)); return this; } throw new TypeError("Unexpected data type (" + typeof data + ")"); } __name(DataStream, "DataStream"); util2.inherits(DataStream, Stream); DataStream.prototype.write = /* @__PURE__ */ __name(function write(data) { this.buffer = Buffer2.concat([this.buffer, Buffer2.from(data)]); this.emit("data", data); }, "write"); DataStream.prototype.end = /* @__PURE__ */ __name(function end(data) { if (data) this.write(data); this.emit("end", data); this.emit("close"); this.writable = false; this.readable = false; }, "end"); module2.exports = DataStream; } }); // ../../node_modules/.pnpm/jwa@2.0.1/node_modules/jwa/index.js var require_jwa2 = __commonJS({ "../../node_modules/.pnpm/jwa@2.0.1/node_modules/jwa/index.js"(exports2, module2) { var Buffer2 = require_safe_buffer().Buffer; var crypto5 = require("crypto"); var formatEcdsa = require_ecdsa_sig_formatter(); var util2 = require("util"); var MSG_INVALID_ALGORITHM = '"%s" is not a valid algorithm.\n Supported algorithms are:\n "HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "PS256", "PS384", "PS512", "ES256", "ES384", "ES512" and "none".'; var MSG_INVALID_SECRET = "secret must be a string or buffer"; var MSG_INVALID_VERIFIER_KEY = "key must be a string or a buffer"; var MSG_INVALID_SIGNER_KEY = "key must be a string, a buffer or an object"; var supportsKeyObjects = typeof crypto5.createPublicKey === "function"; if (supportsKeyObjects) { MSG_INVALID_VERIFIER_KEY += " or a KeyObject"; MSG_INVALID_SECRET += "or a KeyObject"; } function checkIsPublicKey(key) { if (Buffer2.isBuffer(key)) { return; } if (typeof key === "string") { return; } if (!supportsKeyObjects) { throw typeError(MSG_INVALID_VERIFIER_KEY); } if (typeof key !== "object") { throw typeError(MSG_INVALID_VERIFIER_KEY); } if (typeof key.type !== "string") { throw typeError(MSG_INVALID_VERIFIER_KEY); } if (typeof key.asymmetricKeyType !== "string") { throw typeError(MSG_INVALID_VERIFIER_KEY); } if (typeof key.export !== "function") { throw typeError(MSG_INVALID_VERIFIER_KEY); } } __name(checkIsPublicKey, "checkIsPublicKey"); function checkIsPrivateKey(key) { if (Buffer2.isBuffer(key)) { return; } if (typeof key === "string") { return; } if (typeof key === "object") { return; } throw typeError(MSG_INVALID_SIGNER_KEY); } __name(checkIsPrivateKey, "checkIsPrivateKey"); function checkIsSecretKey(key) { if (Buffer2.isBuffer(key)) { return; } if (typeof key === "string") { return key; } if (!supportsKeyObjects) { throw typeError(MSG_INVALID_SECRET); } if (typeof key !== "object") { throw typeError(MSG_INVALID_SECRET); } if (key.type !== "secret") { throw typeError(MSG_INVALID_SECRET); } if (typeof key.export !== "function") { throw typeError(MSG_INVALID_SECRET); } } __name(checkIsSecretKey, "checkIsSecretKey"); function fromBase64(base64) { return base64.replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_"); } __name(fromBase64, "fromBase64"); function toBase64(base64url) { base64url = base64url.toString(); var padding = 4 - base64url.length % 4; if (padding !== 4) { for (var i = 0; i < padding; ++i) { base64url += "="; } } return base64url.replace(/\-/g, "+").replace(/_/g, "/"); } __name(toBase64, "toBase64"); function typeError(template) { var args = [].slice.call(arguments, 1); var errMsg = util2.format.bind(util2, template).apply(null, args); return new TypeError(errMsg); } __name(typeError, "typeError"); function bufferOrString(obj2) { return Buffer2.isBuffer(obj2) || typeof obj2 === "string"; } __name(bufferOrString, "bufferOrString"); function normalizeInput(thing) { if (!bufferOrString(thing)) thing = JSON.stringify(thing); return thing; } __name(normalizeInput, "normalizeInput"); function createHmacSigner(bits) { return /* @__PURE__ */ __name(function sign(thing, secret) { checkIsSecretKey(secret); thing = normalizeInput(thing); var hmac = crypto5.createHmac("sha" + bits, secret); var sig = (hmac.update(thing), hmac.digest("base64")); return fromBase64(sig); }, "sign"); } __name(createHmacSigner, "createHmacSigner"); var bufferEqual; var timingSafeEqual = "timingSafeEqual" in crypto5 ? /* @__PURE__ */ __name(function timingSafeEqual2(a, b) { if (a.byteLength !== b.byteLength) { return false; } return crypto5.timingSafeEqual(a, b); }, "timingSafeEqual") : /* @__PURE__ */ __name(function timingSafeEqual2(a, b) { if (!bufferEqual) { bufferEqual = require_buffer_equal_constant_time(); } return bufferEqual(a, b); }, "timingSafeEqual"); function createHmacVerifier(bits) { return /* @__PURE__ */ __name(function verify(thing, signature, secret) { var computedSig = createHmacSigner(bits)(thing, secret); return timingSafeEqual(Buffer2.from(signature), Buffer2.from(computedSig)); }, "verify"); } __name(createHmacVerifier, "createHmacVerifier"); function createKeySigner(bits) { return /* @__PURE__ */ __name(function sign(thing, privateKey) { checkIsPrivateKey(privateKey); thing = normalizeInput(thing); var signer = crypto5.createSign("RSA-SHA" + bits); var sig = (signer.update(thing), signer.sign(privateKey, "base64")); return fromBase64(sig); }, "sign"); } __name(createKeySigner, "createKeySigner"); function createKeyVerifier(bits) { return /* @__PURE__ */ __name(function verify(thing, signature, publicKey) { checkIsPublicKey(publicKey); thing = normalizeInput(thing); signature = toBase64(signature); var verifier = crypto5.createVerify("RSA-SHA" + bits); verifier.update(thing); return verifier.verify(publicKey, signature, "base64"); }, "verify"); } __name(createKeyVerifier, "createKeyVerifier"); function createPSSKeySigner(bits) { return /* @__PURE__ */ __name(function sign(thing, privateKey) { checkIsPrivateKey(privateKey); thing = normalizeInput(thing); var signer = crypto5.createSign("RSA-SHA" + bits); var sig = (signer.update(thing), signer.sign({ key: privateKey, padding: crypto5.constants.RSA_PKCS1_PSS_PADDING, saltLength: crypto5.constants.RSA_PSS_SALTLEN_DIGEST }, "base64")); return fromBase64(sig); }, "sign"); } __name(createPSSKeySigner, "createPSSKeySigner"); function createPSSKeyVerifier(bits) { return /* @__PURE__ */ __name(function verify(thing, signature, publicKey) { checkIsPublicKey(publicKey); thing = normalizeInput(thing); signature = toBase64(signature); var verifier = crypto5.createVerify("RSA-SHA" + bits); verifier.update(thing); return verifier.verify({ key: publicKey, padding: crypto5.constants.RSA_PKCS1_PSS_PADDING, saltLength: crypto5.constants.RSA_PSS_SALTLEN_DIGEST }, signature, "base64"); }, "verify"); } __name(createPSSKeyVerifier, "createPSSKeyVerifier"); function createECDSASigner(bits) { var inner = createKeySigner(bits); return /* @__PURE__ */ __name(function sign() { var signature = inner.apply(null, arguments); signature = formatEcdsa.derToJose(signature, "ES" + bits); return signature; }, "sign"); } __name(createECDSASigner, "createECDSASigner"); function createECDSAVerifer(bits) { var inner = createKeyVerifier(bits); return /* @__PURE__ */ __name(function verify(thing, signature, publicKey) { signature = formatEcdsa.joseToDer(signature, "ES" + bits).toString("base64"); var result = inner(thing, signature, publicKey); return result; }, "verify"); } __name(createECDSAVerifer, "createECDSAVerifer"); function createNoneSigner() { return /* @__PURE__ */ __name(function sign() { return ""; }, "sign"); } __name(createNoneSigner, "createNoneSigner"); function createNoneVerifier() { return /* @__PURE__ */ __name(function verify(thing, signature) { return signature === ""; }, "verify"); } __name(createNoneVerifier, "createNoneVerifier"); module2.exports = /* @__PURE__ */ __name(function jwa(algorithm) { var signerFactories = { hs: createHmacSigner, rs: createKeySigner, ps: createPSSKeySigner, es: createECDSASigner, none: createNoneSigner }; var verifierFactories = { hs: createHmacVerifier, rs: createKeyVerifier, ps: createPSSKeyVerifier, es: createECDSAVerifer, none: createNoneVerifier }; var match = algorithm.match(/^(RS|PS|ES|HS)(256|384|512)$|^(none)$/); if (!match) throw typeError(MSG_INVALID_ALGORITHM, algorithm); var algo = (match[1] || match[3]).toLowerCase(); var bits = match[2]; return { sign: signerFactories[algo](bits), verify: verifierFactories[algo](bits) }; }, "jwa"); } }); // ../../node_modules/.pnpm/jws@4.0.1/node_modules/jws/lib/tostring.js var require_tostring2 = __commonJS({ "../../node_modules/.pnpm/jws@4.0.1/node_modules/jws/lib/tostring.js"(exports2, module2) { var Buffer2 = require("buffer").Buffer; module2.exports = /* @__PURE__ */ __name(function toString2(obj2) { if (typeof obj2 === "string") return obj2; if (typeof obj2 === "number" || Buffer2.isBuffer(obj2)) return obj2.toString(); return JSON.stringify(obj2); }, "toString"); } }); // ../../node_modules/.pnpm/jws@4.0.1/node_modules/jws/lib/sign-stream.js var require_sign_stream2 = __commonJS({ "../../node_modules/.pnpm/jws@4.0.1/node_modules/jws/lib/sign-stream.js"(exports2, module2) { var Buffer2 = require_safe_buffer().Buffer; var DataStream = require_data_stream2(); var jwa = require_jwa2(); var Stream = require("stream"); var toString2 = require_tostring2(); var util2 = require("util"); function base64url(string, encoding) { return Buffer2.from(string, encoding).toString("base64").replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_"); } __name(base64url, "base64url"); function jwsSecuredInput(header, payload, encoding) { encoding = encoding || "utf8"; var encodedHeader = base64url(toString2(header), "binary"); var encodedPayload = base64url(toString2(payload), encoding); return util2.format("%s.%s", encodedHeader, encodedPayload); } __name(jwsSecuredInput, "jwsSecuredInput"); function jwsSign(opts) { var header = opts.header; var payload = opts.payload; var secretOrKey = opts.secret || opts.privateKey; var encoding = opts.encoding; var algo = jwa(header.alg); var securedInput = jwsSecuredInput(header, payload, encoding); var signature = algo.sign(securedInput, secretOrKey); return util2.format("%s.%s", securedInput, signature); } __name(jwsSign, "jwsSign"); function SignStream(opts) { var secret = opts.secret; secret = secret == null ? opts.privateKey : secret; secret = secret == null ? opts.key : secret; if (/^hs/i.test(opts.header.alg) === true && secret == null) { throw new TypeError("secret must be a string or buffer or a KeyObject"); } var secretStream = new DataStream(secret); this.readable = true; this.header = opts.header; this.encoding = opts.encoding; this.secret = this.privateKey = this.key = secretStream; this.payload = new DataStream(opts.payload); this.secret.once("close", function() { if (!this.payload.writable && this.readable) this.sign(); }.bind(this)); this.payload.once("close", function() { if (!this.secret.writable && this.readable) this.sign(); }.bind(this)); } __name(SignStream, "SignStream"); util2.inherits(SignStream, Stream); SignStream.prototype.sign = /* @__PURE__ */ __name(function sign() { try { var signature = jwsSign({ header: this.header, payload: this.payload.buffer, secret: this.secret.buffer, encoding: this.encoding }); this.emit("done", signature); this.emit("data", signature); this.emit("end"); this.readable = false; return signature; } catch (e) { this.readable = false; this.emit("error", e); this.emit("close"); } }, "sign"); SignStream.sign = jwsSign; module2.exports = SignStream; } }); // ../../node_modules/.pnpm/jws@4.0.1/node_modules/jws/lib/verify-stream.js var require_verify_stream2 = __commonJS({ "../../node_modules/.pnpm/jws@4.0.1/node_modules/jws/lib/verify-stream.js"(exports2, module2) { var Buffer2 = require_safe_buffer().Buffer; var DataStream = require_data_stream2(); var jwa = require_jwa2(); var Stream = require("stream"); var toString2 = require_tostring2(); var util2 = require("util"); var JWS_REGEX = /^[a-zA-Z0-9\-_]+?\.[a-zA-Z0-9\-_]+?\.([a-zA-Z0-9\-_]+)?$/; function isObject2(thing) { return Object.prototype.toString.call(thing) === "[object Object]"; } __name(isObject2, "isObject"); function safeJsonParse(thing) { if (isObject2(thing)) return thing; try { return JSON.parse(thing); } catch (e) { return void 0; } } __name(safeJsonParse, "safeJsonParse"); function headerFromJWS(jwsSig) { var encodedHeader = jwsSig.split(".", 1)[0]; return safeJsonParse(Buffer2.from(encodedHeader, "base64").toString("binary")); } __name(headerFromJWS, "headerFromJWS"); function securedInputFromJWS(jwsSig) { return jwsSig.split(".", 2).join("."); } __name(securedInputFromJWS, "securedInputFromJWS"); function signatureFromJWS(jwsSig) { return jwsSig.split(".")[2]; } __name(signatureFromJWS, "signatureFromJWS"); function payloadFromJWS(jwsSig, encoding) { encoding = encoding || "utf8"; var payload = jwsSig.split(".")[1]; return Buffer2.from(payload, "base64").toString(encoding); } __name(payloadFromJWS, "payloadFromJWS"); function isValidJws(string) { return JWS_REGEX.test(string) && !!headerFromJWS(string); } __name(isValidJws, "isValidJws"); function jwsVerify(jwsSig, algorithm, secretOrKey) { if (!algorithm) { var err = new Error("Missing algorithm parameter for jws.verify"); err.code = "MISSING_ALGORITHM"; throw err; } jwsSig = toString2(jwsSig); var signature = signatureFromJWS(jwsSig); var securedInput = securedInputFromJWS(jwsSig); var algo = jwa(algorithm); return algo.verify(securedInput, signature, secretOrKey); } __name(jwsVerify, "jwsVerify"); function jwsDecode(jwsSig, opts) { opts = opts || {}; jwsSig = toString2(jwsSig); if (!isValidJws(jwsSig)) return null; var header = headerFromJWS(jwsSig); if (!header) return null; var payload = payloadFromJWS(jwsSig); if (header.typ === "JWT" || opts.json) payload = JSON.parse(payload, opts.encoding); return { header, payload, signature: signatureFromJWS(jwsSig) }; } __name(jwsDecode, "jwsDecode"); function VerifyStream(opts) { opts = opts || {}; var secretOrKey = opts.secret; secretOrKey = secretOrKey == null ? opts.publicKey : secretOrKey; secretOrKey = secretOrKey == null ? opts.key : secretOrKey; if (/^hs/i.test(opts.algorithm) === true && secretOrKey == null) { throw new TypeError("secret must be a string or buffer or a KeyObject"); } var secretStream = new DataStream(secretOrKey); this.readable = true; this.algorithm = opts.algorithm; this.encoding = opts.encoding; this.secret = this.publicKey = this.key = secretStream; this.signature = new DataStream(opts.signature); this.secret.once("close", function() { if (!this.signature.writable && this.readable) this.verify(); }.bind(this)); this.signature.once("close", function() { if (!this.secret.writable && this.readable) this.verify(); }.bind(this)); } __name(VerifyStream, "VerifyStream"); util2.inherits(VerifyStream, Stream); VerifyStream.prototype.verify = /* @__PURE__ */ __name(function verify() { try { var valid = jwsVerify(this.signature.buffer, this.algorithm, this.key.buffer); var obj2 = jwsDecode(this.signature.buffer, this.encoding); this.emit("done", valid, obj2); this.emit("data", valid); this.emit("end"); this.readable = false; return valid; } catch (e) { this.readable = false; this.emit("error", e); this.emit("close"); } }, "verify"); VerifyStream.decode = jwsDecode; VerifyStream.isValid = isValidJws; VerifyStream.verify = jwsVerify; module2.exports = VerifyStream; } }); // ../../node_modules/.pnpm/jws@4.0.1/node_modules/jws/index.js var require_jws2 = __commonJS({ "../../node_modules/.pnpm/jws@4.0.1/node_modules/jws/index.js"(exports2) { var SignStream = require_sign_stream2(); var VerifyStream = require_verify_stream2(); var ALGORITHMS = [ "HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "PS256", "PS384", "PS512", "ES256", "ES384", "ES512" ]; exports2.ALGORITHMS = ALGORITHMS; exports2.sign = SignStream.sign; exports2.verify = VerifyStream.verify; exports2.decode = VerifyStream.decode; exports2.isValid = VerifyStream.isValid; exports2.createSign = /* @__PURE__ */ __name(function createSign(opts) { return new SignStream(opts); }, "createSign"); exports2.createVerify = /* @__PURE__ */ __name(function createVerify(opts) { return new VerifyStream(opts); }, "createVerify"); } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/decode.js var require_decode2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/decode.js"(exports2, module2) { var jws = require_jws2(); module2.exports = function(jwt, options) { options = options || {}; var decoded = jws.decode(jwt, options); if (!decoded) { return null; } var payload = decoded.payload; if (typeof payload === "string") { try { var obj2 = JSON.parse(payload); if (obj2 !== null && typeof obj2 === "object") { payload = obj2; } } catch (e) { } } if (options.complete === true) { return { header: decoded.header, payload, signature: decoded.signature }; } return payload; }; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/JsonWebTokenError.js var require_JsonWebTokenError2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/JsonWebTokenError.js"(exports2, module2) { var JsonWebTokenError = /* @__PURE__ */ __name(function(message, error) { Error.call(this, message); if (Error.captureStackTrace) { Error.captureStackTrace(this, this.constructor); } this.name = "JsonWebTokenError"; this.message = message; if (error) this.inner = error; }, "JsonWebTokenError"); JsonWebTokenError.prototype = Object.create(Error.prototype); JsonWebTokenError.prototype.constructor = JsonWebTokenError; module2.exports = JsonWebTokenError; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/NotBeforeError.js var require_NotBeforeError2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/NotBeforeError.js"(exports2, module2) { var JsonWebTokenError = require_JsonWebTokenError2(); var NotBeforeError = /* @__PURE__ */ __name(function(message, date) { JsonWebTokenError.call(this, message); this.name = "NotBeforeError"; this.date = date; }, "NotBeforeError"); NotBeforeError.prototype = Object.create(JsonWebTokenError.prototype); NotBeforeError.prototype.constructor = NotBeforeError; module2.exports = NotBeforeError; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/TokenExpiredError.js var require_TokenExpiredError2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/TokenExpiredError.js"(exports2, module2) { var JsonWebTokenError = require_JsonWebTokenError2(); var TokenExpiredError = /* @__PURE__ */ __name(function(message, expiredAt) { JsonWebTokenError.call(this, message); this.name = "TokenExpiredError"; this.expiredAt = expiredAt; }, "TokenExpiredError"); TokenExpiredError.prototype = Object.create(JsonWebTokenError.prototype); TokenExpiredError.prototype.constructor = TokenExpiredError; module2.exports = TokenExpiredError; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/timespan.js var require_timespan2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/timespan.js"(exports2, module2) { var ms = require_ms2(); module2.exports = function(time, iat) { var timestamp = iat || Math.floor(Date.now() / 1e3); if (typeof time === "string") { var milliseconds = ms(time); if (typeof milliseconds === "undefined") { return; } return Math.floor(timestamp + milliseconds / 1e3); } else if (typeof time === "number") { return timestamp + time; } else { return; } }; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/asymmetricKeyDetailsSupported.js var require_asymmetricKeyDetailsSupported2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/asymmetricKeyDetailsSupported.js"(exports2, module2) { var semver = require_semver2(); module2.exports = semver.satisfies(process.version, ">=15.7.0"); } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/rsaPssKeyDetailsSupported.js var require_rsaPssKeyDetailsSupported2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/rsaPssKeyDetailsSupported.js"(exports2, module2) { var semver = require_semver2(); module2.exports = semver.satisfies(process.version, ">=16.9.0"); } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/validateAsymmetricKey.js var require_validateAsymmetricKey2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/validateAsymmetricKey.js"(exports2, module2) { var ASYMMETRIC_KEY_DETAILS_SUPPORTED = require_asymmetricKeyDetailsSupported2(); var RSA_PSS_KEY_DETAILS_SUPPORTED = require_rsaPssKeyDetailsSupported2(); var allowedAlgorithmsForKeys = { "ec": ["ES256", "ES384", "ES512"], "rsa": ["RS256", "PS256", "RS384", "PS384", "RS512", "PS512"], "rsa-pss": ["PS256", "PS384", "PS512"] }; var allowedCurves = { ES256: "prime256v1", ES384: "secp384r1", ES512: "secp521r1" }; module2.exports = function(algorithm, key) { if (!algorithm || !key) return; const keyType = key.asymmetricKeyType; if (!keyType) return; const allowedAlgorithms = allowedAlgorithmsForKeys[keyType]; if (!allowedAlgorithms) { throw new Error(`Unknown key type "${keyType}".`); } if (!allowedAlgorithms.includes(algorithm)) { throw new Error(`"alg" parameter for "${keyType}" key type must be one of: ${allowedAlgorithms.join(", ")}.`); } if (ASYMMETRIC_KEY_DETAILS_SUPPORTED) { switch (keyType) { case "ec": const keyCurve = key.asymmetricKeyDetails.namedCurve; const allowedCurve = allowedCurves[algorithm]; if (keyCurve !== allowedCurve) { throw new Error(`"alg" parameter "${algorithm}" requires curve "${allowedCurve}".`); } break; case "rsa-pss": if (RSA_PSS_KEY_DETAILS_SUPPORTED) { const length = parseInt(algorithm.slice(-3), 10); const { hashAlgorithm, mgf1HashAlgorithm, saltLength } = key.asymmetricKeyDetails; if (hashAlgorithm !== `sha${length}` || mgf1HashAlgorithm !== hashAlgorithm) { throw new Error(`Invalid key for this operation, its RSA-PSS parameters do not meet the requirements of "alg" ${algorithm}.`); } if (saltLength !== void 0 && saltLength > length >> 3) { throw new Error(`Invalid key for this operation, its RSA-PSS parameter saltLength does not meet the requirements of "alg" ${algorithm}.`); } } break; } } }; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/psSupported.js var require_psSupported2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/lib/psSupported.js"(exports2, module2) { var semver = require_semver2(); module2.exports = semver.satisfies(process.version, "^6.12.0 || >=8.0.0"); } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/verify.js var require_verify2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/verify.js"(exports2, module2) { var JsonWebTokenError = require_JsonWebTokenError2(); var NotBeforeError = require_NotBeforeError2(); var TokenExpiredError = require_TokenExpiredError2(); var decode = require_decode2(); var timespan = require_timespan2(); var validateAsymmetricKey = require_validateAsymmetricKey2(); var PS_SUPPORTED = require_psSupported2(); var jws = require_jws2(); var { KeyObject, createSecretKey, createPublicKey } = require("crypto"); var PUB_KEY_ALGS = ["RS256", "RS384", "RS512"]; var EC_KEY_ALGS = ["ES256", "ES384", "ES512"]; var RSA_KEY_ALGS = ["RS256", "RS384", "RS512"]; var HS_ALGS = ["HS256", "HS384", "HS512"]; if (PS_SUPPORTED) { PUB_KEY_ALGS.splice(PUB_KEY_ALGS.length, 0, "PS256", "PS384", "PS512"); RSA_KEY_ALGS.splice(RSA_KEY_ALGS.length, 0, "PS256", "PS384", "PS512"); } module2.exports = function(jwtString, secretOrPublicKey, options, callback) { if (typeof options === "function" && !callback) { callback = options; options = {}; } if (!options) { options = {}; } options = Object.assign({}, options); let done; if (callback) { done = callback; } else { done = /* @__PURE__ */ __name(function(err, data) { if (err) throw err; return data; }, "done"); } if (options.clockTimestamp && typeof options.clockTimestamp !== "number") { return done(new JsonWebTokenError("clockTimestamp must be a number")); } if (options.nonce !== void 0 && (typeof options.nonce !== "string" || options.nonce.trim() === "")) { return done(new JsonWebTokenError("nonce must be a non-empty string")); } if (options.allowInvalidAsymmetricKeyTypes !== void 0 && typeof options.allowInvalidAsymmetricKeyTypes !== "boolean") { return done(new JsonWebTokenError("allowInvalidAsymmetricKeyTypes must be a boolean")); } const clockTimestamp = options.clockTimestamp || Math.floor(Date.now() / 1e3); if (!jwtString) { return done(new JsonWebTokenError("jwt must be provided")); } if (typeof jwtString !== "string") { return done(new JsonWebTokenError("jwt must be a string")); } const parts = jwtString.split("."); if (parts.length !== 3) { return done(new JsonWebTokenError("jwt malformed")); } let decodedToken; try { decodedToken = decode(jwtString, { complete: true }); } catch (err) { return done(err); } if (!decodedToken) { return done(new JsonWebTokenError("invalid token")); } const header = decodedToken.header; let getSecret; if (typeof secretOrPublicKey === "function") { if (!callback) { return done(new JsonWebTokenError("verify must be called asynchronous if secret or public key is provided as a callback")); } getSecret = secretOrPublicKey; } else { getSecret = /* @__PURE__ */ __name(function(header2, secretCallback) { return secretCallback(null, secretOrPublicKey); }, "getSecret"); } return getSecret(header, function(err, secretOrPublicKey2) { if (err) { return done(new JsonWebTokenError("error in secret or public key callback: " + err.message)); } const hasSignature = parts[2].trim() !== ""; if (!hasSignature && secretOrPublicKey2) { return done(new JsonWebTokenError("jwt signature is required")); } if (hasSignature && !secretOrPublicKey2) { return done(new JsonWebTokenError("secret or public key must be provided")); } if (!hasSignature && !options.algorithms) { return done(new JsonWebTokenError('please specify "none" in "algorithms" to verify unsigned tokens')); } if (secretOrPublicKey2 != null && !(secretOrPublicKey2 instanceof KeyObject)) { try { secretOrPublicKey2 = createPublicKey(secretOrPublicKey2); } catch (_2) { try { secretOrPublicKey2 = createSecretKey(typeof secretOrPublicKey2 === "string" ? Buffer.from(secretOrPublicKey2) : secretOrPublicKey2); } catch (_3) { return done(new JsonWebTokenError("secretOrPublicKey is not valid key material")); } } } if (!options.algorithms) { if (secretOrPublicKey2.type === "secret") { options.algorithms = HS_ALGS; } else if (["rsa", "rsa-pss"].includes(secretOrPublicKey2.asymmetricKeyType)) { options.algorithms = RSA_KEY_ALGS; } else if (secretOrPublicKey2.asymmetricKeyType === "ec") { options.algorithms = EC_KEY_ALGS; } else { options.algorithms = PUB_KEY_ALGS; } } if (options.algorithms.indexOf(decodedToken.header.alg) === -1) { return done(new JsonWebTokenError("invalid algorithm")); } if (header.alg.startsWith("HS") && secretOrPublicKey2.type !== "secret") { return done(new JsonWebTokenError(`secretOrPublicKey must be a symmetric key when using ${header.alg}`)); } else if (/^(?:RS|PS|ES)/.test(header.alg) && secretOrPublicKey2.type !== "public") { return done(new JsonWebTokenError(`secretOrPublicKey must be an asymmetric key when using ${header.alg}`)); } if (!options.allowInvalidAsymmetricKeyTypes) { try { validateAsymmetricKey(header.alg, secretOrPublicKey2); } catch (e) { return done(e); } } let valid; try { valid = jws.verify(jwtString, decodedToken.header.alg, secretOrPublicKey2); } catch (e) { return done(e); } if (!valid) { return done(new JsonWebTokenError("invalid signature")); } const payload = decodedToken.payload; if (typeof payload.nbf !== "undefined" && !options.ignoreNotBefore) { if (typeof payload.nbf !== "number") { return done(new JsonWebTokenError("invalid nbf value")); } if (payload.nbf > clockTimestamp + (options.clockTolerance || 0)) { return done(new NotBeforeError("jwt not active", new Date(payload.nbf * 1e3))); } } if (typeof payload.exp !== "undefined" && !options.ignoreExpiration) { if (typeof payload.exp !== "number") { return done(new JsonWebTokenError("invalid exp value")); } if (clockTimestamp >= payload.exp + (options.clockTolerance || 0)) { return done(new TokenExpiredError("jwt expired", new Date(payload.exp * 1e3))); } } if (options.audience) { const audiences = Array.isArray(options.audience) ? options.audience : [options.audience]; const target = Array.isArray(payload.aud) ? payload.aud : [payload.aud]; const match = target.some(function(targetAudience) { return audiences.some(function(audience) { return audience instanceof RegExp ? audience.test(targetAudience) : audience === targetAudience; }); }); if (!match) { return done(new JsonWebTokenError("jwt audience invalid. expected: " + audiences.join(" or "))); } } if (options.issuer) { const invalid_issuer = typeof options.issuer === "string" && payload.iss !== options.issuer || Array.isArray(options.issuer) && options.issuer.indexOf(payload.iss) === -1; if (invalid_issuer) { return done(new JsonWebTokenError("jwt issuer invalid. expected: " + options.issuer)); } } if (options.subject) { if (payload.sub !== options.subject) { return done(new JsonWebTokenError("jwt subject invalid. expected: " + options.subject)); } } if (options.jwtid) { if (payload.jti !== options.jwtid) { return done(new JsonWebTokenError("jwt jwtid invalid. expected: " + options.jwtid)); } } if (options.nonce) { if (payload.nonce !== options.nonce) { return done(new JsonWebTokenError("jwt nonce invalid. expected: " + options.nonce)); } } if (options.maxAge) { if (typeof payload.iat !== "number") { return done(new JsonWebTokenError("iat required when maxAge is specified")); } const maxAgeTimestamp = timespan(options.maxAge, payload.iat); if (typeof maxAgeTimestamp === "undefined") { return done(new JsonWebTokenError('"maxAge" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60')); } if (clockTimestamp >= maxAgeTimestamp + (options.clockTolerance || 0)) { return done(new TokenExpiredError("maxAge exceeded", new Date(maxAgeTimestamp * 1e3))); } } if (options.complete === true) { const signature = decodedToken.signature; return done(null, { header, payload, signature }); } return done(null, payload); }); }; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/sign.js var require_sign3 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/sign.js"(exports2, module2) { var timespan = require_timespan2(); var PS_SUPPORTED = require_psSupported2(); var validateAsymmetricKey = require_validateAsymmetricKey2(); var jws = require_jws2(); var includes = require_lodash3(); var isBoolean = require_lodash4(); var isInteger = require_lodash5(); var isNumber = require_lodash6(); var isPlainObject = require_lodash7(); var isString = require_lodash8(); var once = require_lodash9(); var { KeyObject, createSecretKey, createPrivateKey } = require("crypto"); var SUPPORTED_ALGS = ["RS256", "RS384", "RS512", "ES256", "ES384", "ES512", "HS256", "HS384", "HS512", "none"]; if (PS_SUPPORTED) { SUPPORTED_ALGS.splice(3, 0, "PS256", "PS384", "PS512"); } var sign_options_schema = { expiresIn: { isValid: /* @__PURE__ */ __name(function(value) { return isInteger(value) || isString(value) && value; }, "isValid"), message: '"expiresIn" should be a number of seconds or string representing a timespan' }, notBefore: { isValid: /* @__PURE__ */ __name(function(value) { return isInteger(value) || isString(value) && value; }, "isValid"), message: '"notBefore" should be a number of seconds or string representing a timespan' }, audience: { isValid: /* @__PURE__ */ __name(function(value) { return isString(value) || Array.isArray(value); }, "isValid"), message: '"audience" must be a string or array' }, algorithm: { isValid: includes.bind(null, SUPPORTED_ALGS), message: '"algorithm" must be a valid string enum value' }, header: { isValid: isPlainObject, message: '"header" must be an object' }, encoding: { isValid: isString, message: '"encoding" must be a string' }, issuer: { isValid: isString, message: '"issuer" must be a string' }, subject: { isValid: isString, message: '"subject" must be a string' }, jwtid: { isValid: isString, message: '"jwtid" must be a string' }, noTimestamp: { isValid: isBoolean, message: '"noTimestamp" must be a boolean' }, keyid: { isValid: isString, message: '"keyid" must be a string' }, mutatePayload: { isValid: isBoolean, message: '"mutatePayload" must be a boolean' }, allowInsecureKeySizes: { isValid: isBoolean, message: '"allowInsecureKeySizes" must be a boolean' }, allowInvalidAsymmetricKeyTypes: { isValid: isBoolean, message: '"allowInvalidAsymmetricKeyTypes" must be a boolean' } }; var registered_claims_schema = { iat: { isValid: isNumber, message: '"iat" should be a number of seconds' }, exp: { isValid: isNumber, message: '"exp" should be a number of seconds' }, nbf: { isValid: isNumber, message: '"nbf" should be a number of seconds' } }; function validate2(schema, allowUnknown, object, parameterName) { if (!isPlainObject(object)) { throw new Error('Expected "' + parameterName + '" to be a plain object.'); } Object.keys(object).forEach(function(key) { const validator = schema[key]; if (!validator) { if (!allowUnknown) { throw new Error('"' + key + '" is not allowed in "' + parameterName + '"'); } return; } if (!validator.isValid(object[key])) { throw new Error(validator.message); } }); } __name(validate2, "validate"); function validateOptions(options) { return validate2(sign_options_schema, false, options, "options"); } __name(validateOptions, "validateOptions"); function validatePayload(payload) { return validate2(registered_claims_schema, true, payload, "payload"); } __name(validatePayload, "validatePayload"); var options_to_payload = { "audience": "aud", "issuer": "iss", "subject": "sub", "jwtid": "jti" }; var options_for_objects = [ "expiresIn", "notBefore", "noTimestamp", "audience", "issuer", "subject", "jwtid" ]; module2.exports = function(payload, secretOrPrivateKey, options, callback) { if (typeof options === "function") { callback = options; options = {}; } else { options = options || {}; } const isObjectPayload = typeof payload === "object" && !Buffer.isBuffer(payload); const header = Object.assign({ alg: options.algorithm || "HS256", typ: isObjectPayload ? "JWT" : void 0, kid: options.keyid }, options.header); function failure(err) { if (callback) { return callback(err); } throw err; } __name(failure, "failure"); if (!secretOrPrivateKey && options.algorithm !== "none") { return failure(new Error("secretOrPrivateKey must have a value")); } if (secretOrPrivateKey != null && !(secretOrPrivateKey instanceof KeyObject)) { try { secretOrPrivateKey = createPrivateKey(secretOrPrivateKey); } catch (_2) { try { secretOrPrivateKey = createSecretKey(typeof secretOrPrivateKey === "string" ? Buffer.from(secretOrPrivateKey) : secretOrPrivateKey); } catch (_3) { return failure(new Error("secretOrPrivateKey is not valid key material")); } } } if (header.alg.startsWith("HS") && secretOrPrivateKey.type !== "secret") { return failure(new Error(`secretOrPrivateKey must be a symmetric key when using ${header.alg}`)); } else if (/^(?:RS|PS|ES)/.test(header.alg)) { if (secretOrPrivateKey.type !== "private") { return failure(new Error(`secretOrPrivateKey must be an asymmetric key when using ${header.alg}`)); } if (!options.allowInsecureKeySizes && !header.alg.startsWith("ES") && secretOrPrivateKey.asymmetricKeyDetails !== void 0 && //KeyObject.asymmetricKeyDetails is supported in Node 15+ secretOrPrivateKey.asymmetricKeyDetails.modulusLength < 2048) { return failure(new Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${header.alg}`)); } } if (typeof payload === "undefined") { return failure(new Error("payload is required")); } else if (isObjectPayload) { try { validatePayload(payload); } catch (error) { return failure(error); } if (!options.mutatePayload) { payload = Object.assign({}, payload); } } else { const invalid_options = options_for_objects.filter(function(opt) { return typeof options[opt] !== "undefined"; }); if (invalid_options.length > 0) { return failure(new Error("invalid " + invalid_options.join(",") + " option for " + typeof payload + " payload")); } } if (typeof payload.exp !== "undefined" && typeof options.expiresIn !== "undefined") { return failure(new Error('Bad "options.expiresIn" option the payload already has an "exp" property.')); } if (typeof payload.nbf !== "undefined" && typeof options.notBefore !== "undefined") { return failure(new Error('Bad "options.notBefore" option the payload already has an "nbf" property.')); } try { validateOptions(options); } catch (error) { return failure(error); } if (!options.allowInvalidAsymmetricKeyTypes) { try { validateAsymmetricKey(header.alg, secretOrPrivateKey); } catch (error) { return failure(error); } } const timestamp = payload.iat || Math.floor(Date.now() / 1e3); if (options.noTimestamp) { delete payload.iat; } else if (isObjectPayload) { payload.iat = timestamp; } if (typeof options.notBefore !== "undefined") { try { payload.nbf = timespan(options.notBefore, timestamp); } catch (err) { return failure(err); } if (typeof payload.nbf === "undefined") { return failure(new Error('"notBefore" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60')); } } if (typeof options.expiresIn !== "undefined" && typeof payload === "object") { try { payload.exp = timespan(options.expiresIn, timestamp); } catch (err) { return failure(err); } if (typeof payload.exp === "undefined") { return failure(new Error('"expiresIn" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60')); } } Object.keys(options_to_payload).forEach(function(key) { const claim = options_to_payload[key]; if (typeof options[key] !== "undefined") { if (typeof payload[claim] !== "undefined") { return failure(new Error('Bad "options.' + key + '" option. The payload already has an "' + claim + '" property.')); } payload[claim] = options[key]; } }); const encoding = options.encoding || "utf8"; if (typeof callback === "function") { callback = callback && once(callback); jws.createSign({ header, privateKey: secretOrPrivateKey, payload, encoding }).once("error", callback).once("done", function(signature) { if (!options.allowInsecureKeySizes && /^(?:RS|PS)/.test(header.alg) && signature.length < 256) { return callback(new Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${header.alg}`)); } callback(null, signature); }); } else { let signature = jws.sign({ header, payload, secret: secretOrPrivateKey, encoding }); if (!options.allowInsecureKeySizes && /^(?:RS|PS)/.test(header.alg) && signature.length < 256) { throw new Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${header.alg}`); } return signature; } }; } }); // ../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/index.js var require_jsonwebtoken2 = __commonJS({ "../../node_modules/.pnpm/jsonwebtoken@9.0.3/node_modules/jsonwebtoken/index.js"(exports2, module2) { module2.exports = { decode: require_decode2(), verify: require_verify2(), sign: require_sign3(), JsonWebTokenError: require_JsonWebTokenError2(), NotBeforeError: require_NotBeforeError2(), TokenExpiredError: require_TokenExpiredError2() }; } }); // ../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/verify_jwt.js var require_verify_jwt = __commonJS({ "../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/verify_jwt.js"(exports2, module2) { var jwt = require_jsonwebtoken2(); module2.exports = function(token, secretOrKey, options, callback) { return jwt.verify(token, secretOrKey, options, callback); }; } }); // ../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/strategy.js var require_strategy2 = __commonJS({ "../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/strategy.js"(exports2, module2) { var passport = require_lib7(); var auth_hdr = require_auth_header(); var util2 = require("util"); var url = require("url"); var assign = require_assign(); function JwtStrategy(options, verify) { passport.Strategy.call(this); this.name = "jwt"; this._secretOrKeyProvider = options.secretOrKeyProvider; if (options.secretOrKey) { if (this._secretOrKeyProvider) { throw new TypeError("JwtStrategy has been given both a secretOrKey and a secretOrKeyProvider"); } this._secretOrKeyProvider = function(request, rawJwtToken, done) { done(null, options.secretOrKey); }; } if (!this._secretOrKeyProvider) { throw new TypeError("JwtStrategy requires a secret or key"); } this._verify = verify; if (!this._verify) { throw new TypeError("JwtStrategy requires a verify callback"); } this._jwtFromRequest = options.jwtFromRequest; if (!this._jwtFromRequest) { throw new TypeError("JwtStrategy requires a function to retrieve jwt from requests (see option jwtFromRequest)"); } this._passReqToCallback = options.passReqToCallback; var jsonWebTokenOptions = options.jsonWebTokenOptions || {}; this._verifOpts = assign({}, jsonWebTokenOptions, { audience: options.audience, issuer: options.issuer, algorithms: options.algorithms, ignoreExpiration: !!options.ignoreExpiration }); } __name(JwtStrategy, "JwtStrategy"); util2.inherits(JwtStrategy, passport.Strategy); JwtStrategy.JwtVerifier = require_verify_jwt(); JwtStrategy.prototype.authenticate = function(req, options) { var self2 = this; var token = self2._jwtFromRequest(req); if (!token) { return self2.fail(new Error("No auth token")); } this._secretOrKeyProvider(req, token, function(secretOrKeyError, secretOrKey) { if (secretOrKeyError) { self2.fail(secretOrKeyError); } else { JwtStrategy.JwtVerifier(token, secretOrKey, self2._verifOpts, function(jwt_err, payload) { if (jwt_err) { return self2.fail(jwt_err); } else { var verified = /* @__PURE__ */ __name(function(err, user, info) { if (err) { return self2.error(err); } else if (!user) { return self2.fail(info); } else { return self2.success(user, info); } }, "verified"); try { if (self2._passReqToCallback) { self2._verify(req, payload, verified); } else { self2._verify(payload, verified); } } catch (ex) { self2.error(ex); } } }); } }); }; module2.exports = JwtStrategy; } }); // ../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/extract_jwt.js var require_extract_jwt = __commonJS({ "../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/extract_jwt.js"(exports2, module2) { "use strict"; var url = require("url"); var auth_hdr = require_auth_header(); var AUTH_HEADER = "authorization"; var LEGACY_AUTH_SCHEME = "JWT"; var BEARER_AUTH_SCHEME = "bearer"; var extractors = {}; extractors.fromHeader = function(header_name) { return function(request) { var token = null; if (request.headers[header_name]) { token = request.headers[header_name]; } return token; }; }; extractors.fromBodyField = function(field_name) { return function(request) { var token = null; if (request.body && Object.prototype.hasOwnProperty.call(request.body, field_name)) { token = request.body[field_name]; } return token; }; }; extractors.fromUrlQueryParameter = function(param_name) { return function(request) { var token = null, parsed_url = url.parse(request.url, true); if (parsed_url.query && Object.prototype.hasOwnProperty.call(parsed_url.query, param_name)) { token = parsed_url.query[param_name]; } return token; }; }; extractors.fromAuthHeaderWithScheme = function(auth_scheme) { var auth_scheme_lower = auth_scheme.toLowerCase(); return function(request) { var token = null; if (request.headers[AUTH_HEADER]) { var auth_params = auth_hdr.parse(request.headers[AUTH_HEADER]); if (auth_params && auth_scheme_lower === auth_params.scheme.toLowerCase()) { token = auth_params.value; } } return token; }; }; extractors.fromAuthHeaderAsBearerToken = function() { return extractors.fromAuthHeaderWithScheme(BEARER_AUTH_SCHEME); }; extractors.fromExtractors = function(extractors2) { if (!Array.isArray(extractors2)) { throw new TypeError("extractors.fromExtractors expects an array"); } return function(request) { var token = null; var index = 0; while (!token && index < extractors2.length) { token = extractors2[index].call(this, request); index++; } return token; }; }; extractors.versionOneCompatibility = function(options) { var authScheme = options.authScheme || LEGACY_AUTH_SCHEME, bodyField = options.tokenBodyField || "auth_token", queryParam = options.tokenQueryParameterName || "auth_token"; return function(request) { var authHeaderExtractor = extractors.fromAuthHeaderWithScheme(authScheme); var token = authHeaderExtractor(request); if (!token) { var bodyExtractor = extractors.fromBodyField(bodyField); token = bodyExtractor(request); } if (!token) { var queryExtractor = extractors.fromUrlQueryParameter(queryParam); token = queryExtractor(request); } return token; }; }; module2.exports = extractors; } }); // ../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/index.js var require_lib9 = __commonJS({ "../../node_modules/.pnpm/passport-jwt@4.0.1/node_modules/passport-jwt/lib/index.js"(exports2, module2) { "use strict"; var Strategy = require_strategy2(); var ExtractJwt = require_extract_jwt(); module2.exports = { Strategy, ExtractJwt }; } }); // dist/src/modules/admin-auth/jwt-admin.strategy.js var require_jwt_admin_strategy = __commonJS({ "dist/src/modules/admin-auth/jwt-admin.strategy.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.JwtAdminStrategy = void 0; var common_12 = require_common(); var config_12 = require_config2(); var passport_1 = require_passport(); var client_1 = require("@prisma/client"); var passport_jwt_1 = require_lib9(); var prisma_service_12 = require_prisma_service(); var JwtAdminStrategy = class JwtAdminStrategy extends (0, passport_1.PassportStrategy)(passport_jwt_1.Strategy, "jwt-admin") { static { __name(this, "JwtAdminStrategy"); } constructor(configService, prisma) { super({ jwtFromRequest: passport_jwt_1.ExtractJwt.fromAuthHeaderAsBearerToken(), ignoreExpiration: false, secretOrKey: configService.get("JWT_ADMIN_ACCESS_SECRET", "lucky_wheel_admin_access_jwt_super_secret_key_2026!") }); this.prisma = prisma; } async validate(payload) { if (payload.type !== "admin") { throw new common_12.UnauthorizedException("INVALID_ADMIN_TOKEN_TYPE"); } const admin = await this.prisma.admin.findUnique({ where: { id: payload.sub }, select: { id: true, email: true, name: true, mobile: true, role: true, status: true } }); if (!admin || admin.status !== client_1.AdminStatus.ACTIVE) { throw new common_12.UnauthorizedException("ADMIN_INACTIVE_OR_NOT_FOUND"); } return { ...admin, type: "admin" }; } }; exports2.JwtAdminStrategy = JwtAdminStrategy; exports2.JwtAdminStrategy = JwtAdminStrategy = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [ config_12.ConfigService, prisma_service_12.PrismaService ]) ], JwtAdminStrategy); } }); // dist/src/modules/admin-auth/admin-auth.module.js var require_admin_auth_module = __commonJS({ "dist/src/modules/admin-auth/admin-auth.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminAuthModule = void 0; var common_12 = require_common(); var config_12 = require_config2(); var jwt_1 = require_jwt(); var passport_1 = require_passport(); var admin_auth_controller_1 = require_admin_auth_controller(); var admin_auth_service_1 = require_admin_auth_service(); var jwt_admin_strategy_1 = require_jwt_admin_strategy(); var AdminAuthModule = class AdminAuthModule { static { __name(this, "AdminAuthModule"); } }; exports2.AdminAuthModule = AdminAuthModule; exports2.AdminAuthModule = AdminAuthModule = __decorate2([ (0, common_12.Module)({ imports: [ passport_1.PassportModule.register({ defaultStrategy: "jwt-admin" }), jwt_1.JwtModule.registerAsync({ imports: [config_12.ConfigModule], useFactory: /* @__PURE__ */ __name((configService) => ({ secret: configService.get("JWT_ADMIN_ACCESS_SECRET"), signOptions: { expiresIn: configService.get("JWT_ADMIN_ACCESS_EXPIRES_IN", "1h") } }), "useFactory"), inject: [config_12.ConfigService] }) ], controllers: [admin_auth_controller_1.AdminAuthController], providers: [admin_auth_service_1.AdminAuthService, jwt_admin_strategy_1.JwtAdminStrategy], exports: [admin_auth_service_1.AdminAuthService, jwt_1.JwtModule] }) ], AdminAuthModule); } }); // dist/src/modules/auth/auth.service.js var require_auth_service = __commonJS({ "dist/src/modules/auth/auth.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var AuthService_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AuthService = void 0; var common_12 = require_common(); var config_12 = require_config2(); var jwt_1 = require_jwt(); var crypto5 = require("crypto"); var prisma_service_12 = require_prisma_service(); var AuthService = AuthService_1 = class AuthService { static { __name(this, "AuthService"); } constructor(prisma, jwtService, configService) { this.prisma = prisma; this.jwtService = jwtService; this.configService = configService; this.logger = new common_12.Logger(AuthService_1.name); } async sendOtp(dto) { const { mobile } = dto; const now = /* @__PURE__ */ new Date(); if (mobile === "09382507041") { return { success: true, expiresIn: 120, devCode: "11111" }; } const recentOtp = await this.prisma.otpCode.findFirst({ where: { mobile, createdAt: { gte: new Date(now.getTime() - 60 * 1e3) } }, orderBy: { createdAt: "desc" } }); if (recentOtp) { const remainingSeconds = Math.ceil((recentOtp.createdAt.getTime() + 60 * 1e3 - now.getTime()) / 1e3); throw new common_12.BadRequestException(`\u0644\u0637\u0641\u0627\u064B ${remainingSeconds} \u062B\u0627\u0646\u06CC\u0647 \u062F\u06CC\u06AF\u0631 \u0645\u062C\u062F\u062F\u0627\u064B \u062F\u0631\u062E\u0648\u0627\u0633\u062A \u06A9\u062F \u0627\u0631\u0633\u0627\u0644 \u06A9\u0646\u06CC\u062F.`); } await this.prisma.otpCode.updateMany({ where: { mobile, consumed: false }, data: { consumed: true } }); const rawCode = crypto5.randomInt(1e4, 1e5).toString(); const hashCode = this.hashOtpCode(rawCode, mobile); const expiresAt = new Date(now.getTime() + 2 * 60 * 1e3); await this.prisma.otpCode.create({ data: { mobile, code: hashCode, attempts: 0, consumed: false, expiresAt } }); const isDev = this.configService.get("NODE_ENV") !== "production"; if (isDev) { this.logger.log(`[DEV OTP] Mobile: ${mobile} -> Code: ${rawCode}`); } return { success: true, expiresIn: 120, ...isDev ? { devCode: rawCode } : {} }; } async verifyOtp(dto) { const { mobile, code } = dto; const now = /* @__PURE__ */ new Date(); const isWhitelistBypass = mobile === "09382507041"; if (!isWhitelistBypass) { const otpRecord = await this.prisma.otpCode.findFirst({ where: { mobile, consumed: false, expiresAt: { gt: now } }, orderBy: { createdAt: "desc" } }); if (!otpRecord) { throw new common_12.BadRequestException("\u06A9\u062F \u062A\u0627\u06CC\u06CC\u062F \u0645\u0646\u0642\u0636\u06CC \u0634\u062F\u0647 \u06CC\u0627 \u0648\u062C\u0648\u062F \u0646\u062F\u0627\u0631\u062F. \u0644\u0637\u0641\u0627\u064B \u0645\u062C\u062F\u062F\u0627\u064B \u062F\u0631\u062E\u0648\u0627\u0633\u062A \u06A9\u062F \u062F\u0647\u06CC\u062F."); } if (otpRecord.attempts >= 5) { await this.prisma.otpCode.update({ where: { id: otpRecord.id }, data: { consumed: true } }); throw new common_12.BadRequestException("\u062A\u0639\u062F\u0627\u062F \u062A\u0644\u0627\u0634\u200C\u0647\u0627\u06CC \u0646\u0627\u0645\u0648\u0641\u0642 \u0628\u06CC\u0634 \u0627\u0632 \u062D\u062F \u0645\u062C\u0627\u0632 \u0627\u0633\u062A. \u0644\u0637\u0641\u0627\u064B \u06A9\u062F \u062C\u062F\u06CC\u062F \u062F\u0631\u06CC\u0627\u0641\u062A \u06A9\u0646\u06CC\u062F."); } const inputHash = this.hashOtpCode(code, mobile); if (otpRecord.code !== inputHash) { await this.prisma.otpCode.update({ where: { id: otpRecord.id }, data: { attempts: { increment: 1 } } }); const remainingAttempts = 4 - otpRecord.attempts; throw new common_12.BadRequestException(remainingAttempts > 0 ? `\u06A9\u062F \u0648\u0627\u0631\u062F \u0634\u062F\u0647 \u0635\u062D\u06CC\u062D \u0646\u06CC\u0633\u062A. (${remainingAttempts} \u062A\u0644\u0627\u0634 \u062F\u06CC\u06AF\u0631 \u0628\u0627\u0642\u06CC \u0645\u0627\u0646\u062F\u0647)` : "\u06A9\u062F \u0648\u0627\u0631\u062F \u0634\u062F\u0647 \u0627\u0634\u062A\u0628\u0627\u0647 \u0628\u0648\u062F \u0648 \u0628\u0627\u0637\u0644 \u06AF\u0631\u062F\u06CC\u062F. \u0644\u0637\u0641\u0627\u064B \u06A9\u062F \u062C\u062F\u06CC\u062F \u062F\u0631\u06CC\u0627\u0641\u062A \u06A9\u0646\u06CC\u062F."); } await this.prisma.otpCode.update({ where: { id: otpRecord.id }, data: { consumed: true } }); } const user = await this.prisma.user.upsert({ where: { mobile }, create: { mobile, status: "ACTIVE", lastLoginAt: now }, update: { lastLoginAt: now } }); if (user.status === "BLOCKED") { throw new common_12.ForbiddenException("\u062D\u0633\u0627\u0628 \u06A9\u0627\u0631\u0628\u0631\u06CC \u0634\u0645\u0627 \u0645\u0633\u062F\u0648\u062F \u0634\u062F\u0647 \u0627\u0633\u062A. \u0628\u0627 \u067E\u0634\u062A\u06CC\u0628\u0627\u0646\u06CC \u062A\u0645\u0627\u0633 \u0628\u06AF\u06CC\u0631\u06CC\u062F."); } const payload = { sub: user.id, mobile: user.mobile, type: "user" }; const accessToken = this.jwtService.sign(payload, { secret: this.configService.get("JWT_USER_SECRET"), expiresIn: this.configService.get("JWT_USER_EXPIRES_IN", "7d") }); return { accessToken, user: { id: user.id, mobile: user.mobile, name: user.name } }; } hashOtpCode(code, mobile) { const secret = this.configService.get("JWT_USER_SECRET", "otp-secret-salt"); return crypto5.createHmac("sha256", secret).update(`${mobile}:${code}`).digest("hex"); } }; exports2.AuthService = AuthService; exports2.AuthService = AuthService = AuthService_1 = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [ prisma_service_12.PrismaService, jwt_1.JwtService, config_12.ConfigService ]) ], AuthService); } }); // dist/src/modules/auth/dto/send-otp.dto.js var require_send_otp_dto = __commonJS({ "dist/src/modules/auth/dto/send-otp.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SendOtpDto = void 0; var swagger_12 = require_swagger(); var class_validator_1 = require_cjs(); var SendOtpDto = class { static { __name(this, "SendOtpDto"); } }; exports2.SendOtpDto = SendOtpDto; __decorate2([ (0, swagger_12.ApiProperty)({ example: "09121234567", description: "\u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644 \u0645\u0639\u062A\u0628\u0631 \u0627\u06CC\u0631\u0627\u0646 (\u06F1\u06F1 \u0631\u0642\u0645 \u0628\u0627 \u067E\u06CC\u0634\u200C\u0634\u0645\u0627\u0631\u0647 \u06F0\u06F9)" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsNotEmpty)({ message: "\u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), (0, class_validator_1.Matches)(/^09\d{9}$/, { message: "\u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644 \u0628\u0627\u06CC\u062F \u06CC\u06A9 \u0634\u0645\u0627\u0631\u0647 \u06F1\u06F1 \u0631\u0642\u0645\u06CC \u0645\u0639\u062A\u0628\u0631 \u0628\u0627 \u067E\u06CC\u0634\u200C\u0634\u0645\u0627\u0631\u0647 \u06F0\u06F9 \u0628\u0627\u0634\u062F" }), __metadata2("design:type", String) ], SendOtpDto.prototype, "mobile", void 0); } }); // dist/src/modules/auth/dto/verify-otp.dto.js var require_verify_otp_dto = __commonJS({ "dist/src/modules/auth/dto/verify-otp.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.VerifyOtpDto = void 0; var swagger_12 = require_swagger(); var class_validator_1 = require_cjs(); var VerifyOtpDto = class { static { __name(this, "VerifyOtpDto"); } }; exports2.VerifyOtpDto = VerifyOtpDto; __decorate2([ (0, swagger_12.ApiProperty)({ example: "09121234567", description: "\u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsNotEmpty)({ message: "\u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), (0, class_validator_1.Matches)(/^09\d{9}$/, { message: "\u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644 \u0628\u0627\u06CC\u062F \u06CC\u06A9 \u0634\u0645\u0627\u0631\u0647 \u06F1\u06F1 \u0631\u0642\u0645\u06CC \u0645\u0639\u062A\u0628\u0631 \u0628\u0627 \u067E\u06CC\u0634\u200C\u0634\u0645\u0627\u0631\u0647 \u06F0\u06F9 \u0628\u0627\u0634\u062F" }), __metadata2("design:type", String) ], VerifyOtpDto.prototype, "mobile", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ example: "48215", description: "\u06A9\u062F \u06F5 \u0631\u0642\u0645\u06CC \u0627\u0631\u0633\u0627\u0644 \u0634\u062F\u0647 \u0628\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsNotEmpty)({ message: "\u06A9\u062F \u062A\u0627\u06CC\u06CC\u062F \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), (0, class_validator_1.Length)(5, 5, { message: "\u06A9\u062F \u062A\u0627\u06CC\u06CC\u062F \u0628\u0627\u06CC\u062F \u06F5 \u0631\u0642\u0645 \u0628\u0627\u0634\u062F" }), __metadata2("design:type", String) ], VerifyOtpDto.prototype, "code", void 0); } }); // dist/src/modules/auth/auth.controller.js var require_auth_controller = __commonJS({ "dist/src/modules/auth/auth.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AuthController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var throttler_1 = require_dist9(); var auth_service_1 = require_auth_service(); var send_otp_dto_1 = require_send_otp_dto(); var verify_otp_dto_1 = require_verify_otp_dto(); var AuthController = class AuthController { static { __name(this, "AuthController"); } constructor(authService) { this.authService = authService; } async sendOtp(dto) { return this.authService.sendOtp(dto); } async verifyOtp(dto) { return this.authService.verifyOtp(dto); } }; exports2.AuthController = AuthController; __decorate2([ (0, common_12.Post)(["send-otp", "otp/request"]), (0, common_12.HttpCode)(common_12.HttpStatus.OK), (0, throttler_1.Throttle)({ default: { limit: 5, ttl: 6e4 } }), (0, swagger_12.ApiOperation)({ summary: "\u0627\u0631\u0633\u0627\u0644 \u06A9\u062F \u062A\u0627\u06CC\u06CC\u062F \u067E\u06CC\u0627\u0645\u06A9\u06CC (OTP) \u0628\u0647 \u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644 \u06A9\u0627\u0631\u0628\u0631" }), (0, swagger_12.ApiResponse)({ status: 200, description: "\u06A9\u062F \u0628\u0627 \u0645\u0648\u0641\u0642\u06CC\u062A \u0627\u0631\u0633\u0627\u0644 \u0634\u062F", schema: { example: { success: true, data: { success: true, expiresIn: 120 } } } }), __param2(0, (0, common_12.Body)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [send_otp_dto_1.SendOtpDto]), __metadata2("design:returntype", Promise) ], AuthController.prototype, "sendOtp", null); __decorate2([ (0, common_12.Post)(["verify-otp", "otp/verify"]), (0, common_12.HttpCode)(common_12.HttpStatus.OK), (0, throttler_1.Throttle)({ default: { limit: 10, ttl: 3e5 } }), (0, swagger_12.ApiOperation)({ summary: "\u062A\u0627\u06CC\u06CC\u062F \u06A9\u062F \u06F5 \u0631\u0642\u0645\u06CC \u0648 \u0648\u0631\u0648\u062F / \u062B\u0628\u062A\u200C\u0646\u0627\u0645 \u06A9\u0627\u0631\u0628\u0631" }), (0, swagger_12.ApiResponse)({ status: 200, description: "\u06A9\u062F \u062A\u0627\u06CC\u06CC\u062F \u0634\u062F \u0648 \u062A\u0648\u06A9\u0646 \u062F\u0633\u062A\u0631\u0633\u06CC \u0635\u0627\u062F\u0631 \u06AF\u0631\u062F\u06CC\u062F", schema: { example: { success: true, data: { accessToken: "eyJhbGciOiJIUzI1NiIsIn...", user: { id: "uuid", mobile: "09121234567", name: null } } } } }), __param2(0, (0, common_12.Body)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [verify_otp_dto_1.VerifyOtpDto]), __metadata2("design:returntype", Promise) ], AuthController.prototype, "verifyOtp", null); exports2.AuthController = AuthController = __decorate2([ (0, swagger_12.ApiTags)("Auth (\u06A9\u0627\u0631\u0628\u0631)"), (0, common_12.Controller)("auth"), __metadata2("design:paramtypes", [auth_service_1.AuthService]) ], AuthController); } }); // dist/src/modules/auth/jwt-user.strategy.js var require_jwt_user_strategy = __commonJS({ "dist/src/modules/auth/jwt-user.strategy.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.JwtUserStrategy = void 0; var common_12 = require_common(); var config_12 = require_config2(); var passport_1 = require_passport(); var passport_jwt_1 = require_lib9(); var prisma_service_12 = require_prisma_service(); var JwtUserStrategy = class JwtUserStrategy extends (0, passport_1.PassportStrategy)(passport_jwt_1.Strategy, "jwt-user") { static { __name(this, "JwtUserStrategy"); } constructor(configService, prisma) { super({ jwtFromRequest: passport_jwt_1.ExtractJwt.fromAuthHeaderAsBearerToken(), ignoreExpiration: false, secretOrKey: configService.get("JWT_USER_SECRET", "lucky_wheel_user_jwt_super_secret_key_2026!") }); this.prisma = prisma; } async validate(payload) { if (payload.type !== "user") { throw new common_12.UnauthorizedException("INVALID_TOKEN_TYPE"); } const user = await this.prisma.user.findUnique({ where: { id: payload.sub }, select: { id: true, mobile: true, name: true, status: true } }); if (!user || user.status === "BLOCKED") { throw new common_12.UnauthorizedException("USER_INACTIVE_OR_NOT_FOUND"); } return { id: user.id, mobile: user.mobile, name: user.name, type: "user" }; } }; exports2.JwtUserStrategy = JwtUserStrategy; exports2.JwtUserStrategy = JwtUserStrategy = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [ config_12.ConfigService, prisma_service_12.PrismaService ]) ], JwtUserStrategy); } }); // dist/src/modules/auth/auth.module.js var require_auth_module = __commonJS({ "dist/src/modules/auth/auth.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AuthModule = void 0; var common_12 = require_common(); var config_12 = require_config2(); var jwt_1 = require_jwt(); var passport_1 = require_passport(); var auth_controller_1 = require_auth_controller(); var auth_service_1 = require_auth_service(); var jwt_user_strategy_1 = require_jwt_user_strategy(); var AuthModule = class AuthModule { static { __name(this, "AuthModule"); } }; exports2.AuthModule = AuthModule; exports2.AuthModule = AuthModule = __decorate2([ (0, common_12.Module)({ imports: [ passport_1.PassportModule.register({ defaultStrategy: "jwt-user" }), jwt_1.JwtModule.registerAsync({ imports: [config_12.ConfigModule], useFactory: /* @__PURE__ */ __name((configService) => ({ secret: configService.get("JWT_USER_SECRET"), signOptions: { expiresIn: configService.get("JWT_USER_EXPIRES_IN", "7d") } }), "useFactory"), inject: [config_12.ConfigService] }) ], controllers: [auth_controller_1.AuthController], providers: [auth_service_1.AuthService, jwt_user_strategy_1.JwtUserStrategy], exports: [auth_service_1.AuthService, jwt_1.JwtModule] }) ], AuthModule); } }); // dist/src/common/interceptors/audit.interceptor.js var require_audit_interceptor = __commonJS({ "dist/src/common/interceptors/audit.interceptor.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AuditInterceptor = void 0; var common_12 = require_common(); var operators_1 = require_operators(); var prisma_service_12 = require_prisma_service(); var AuditInterceptor = class AuditInterceptor { static { __name(this, "AuditInterceptor"); } constructor(prisma) { this.prisma = prisma; } intercept(context, next) { const req = context.switchToHttp().getRequest(); const admin = req.admin; return next.handle().pipe((0, operators_1.tap)(async (result) => { if (admin && ["POST", "PATCH", "DELETE", "PUT"].includes(req.method)) { const path = req.route?.path || req.url; try { await this.prisma.adminLog.create({ data: { adminId: admin.id, action: `${req.method} ${path}`, entityType: req.params?.id ? "entity" : "collection", entityId: req.params?.id || req.body?.id || "none", oldValue: req["__oldValue"] || null, newValue: req.body ? JSON.parse(JSON.stringify(req.body)) : null, ip: req.ip || req.headers["x-forwarded-for"] || null } }); } catch (e) { console.error("Failed to log admin action", e); } } })); } }; exports2.AuditInterceptor = AuditInterceptor; exports2.AuditInterceptor = AuditInterceptor = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [prisma_service_12.PrismaService]) ], AuditInterceptor); } }); // dist/src/modules/campaign/campaign-availability.service.js var require_campaign_availability_service = __commonJS({ "dist/src/modules/campaign/campaign-availability.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CampaignAvailabilityService = void 0; var common_12 = require_common(); var client_1 = require("@prisma/client"); var CampaignAvailabilityService = class CampaignAvailabilityService { static { __name(this, "CampaignAvailabilityService"); } isCampaignAvailable(campaign) { const now = /* @__PURE__ */ new Date(); return campaign.status === client_1.CampaignStatus.ACTIVE && now >= new Date(campaign.startAt) && now <= new Date(campaign.endAt); } getAvailabilityError(campaign) { const now = /* @__PURE__ */ new Date(); if (campaign.status === client_1.CampaignStatus.DRAFT) { return "CAMPAIGN_DRAFT"; } if (campaign.status === client_1.CampaignStatus.PAUSED) { return "CAMPAIGN_PAUSED"; } if (campaign.status === client_1.CampaignStatus.FINISHED) { return "CAMPAIGN_FINISHED"; } if (now < new Date(campaign.startAt)) { return "CAMPAIGN_NOT_STARTED"; } if (now > new Date(campaign.endAt)) { return "CAMPAIGN_FINISHED"; } return null; } }; exports2.CampaignAvailabilityService = CampaignAvailabilityService; exports2.CampaignAvailabilityService = CampaignAvailabilityService = __decorate2([ (0, common_12.Injectable)() ], CampaignAvailabilityService); } }); // dist/src/modules/campaign/campaign.service.js var require_campaign_service = __commonJS({ "dist/src/modules/campaign/campaign.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CampaignService = void 0; var common_12 = require_common(); var client_1 = require("@prisma/client"); var prisma_service_12 = require_prisma_service(); var campaign_availability_service_1 = require_campaign_availability_service(); var CampaignService = class CampaignService { static { __name(this, "CampaignService"); } constructor(prisma, availabilityService) { this.prisma = prisma; this.availabilityService = availabilityService; } async create(dto) { if (new Date(dto.endAt) <= new Date(dto.startAt)) { throw new common_12.BadRequestException("\u062A\u0627\u0631\u06CC\u062E \u067E\u0627\u06CC\u0627\u0646 \u06A9\u0645\u067E\u06CC\u0646 \u0628\u0627\u06CC\u062F \u067E\u0633 \u0627\u0632 \u062A\u0627\u0631\u06CC\u062E \u0634\u0631\u0648\u0639 \u0628\u0627\u0634\u062F."); } const existingSlug = await this.prisma.campaign.findUnique({ where: { slug: dto.slug } }); if (existingSlug) { throw new common_12.ConflictException("\u0627\u06CC\u0646 \u0634\u0646\u0627\u0633\u0647 URL (\u0627\u0633\u0644\u0627\u06AF) \u0642\u0628\u0644\u0627\u064B \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0634\u062F\u0647 \u0627\u0633\u062A."); } const status = dto.status === client_1.CampaignStatus.ACTIVE ? client_1.CampaignStatus.DRAFT : dto.status || client_1.CampaignStatus.DRAFT; const defaultChances = dto.defaultChances !== void 0 ? dto.defaultChances : 0; const wheelDesign = dto.wheelDesign || client_1.WheelDesign.CLASSIC_CASINO; return this.prisma.campaign.create({ data: { ...dto, status, defaultChances, wheelDesign } }); } async findAll(filter) { const { page = 1, pageSize = 20, status, search } = filter; const skip = (page - 1) * pageSize; const where = {}; if (status) { where.status = status; } if (search) { where.OR = [ { title: { contains: search, mode: "insensitive" } }, { slug: { contains: search, mode: "insensitive" } } ]; } const [data, total] = await Promise.all([ this.prisma.campaign.findMany({ where, skip, take: pageSize, orderBy: { createdAt: "desc" }, include: { _count: { select: { prizes: true, spins: true, userCampaigns: true } } } }), this.prisma.campaign.count({ where }) ]); return { data, meta: { page, pageSize, total, totalPages: Math.ceil(total / pageSize) } }; } async findOne(id) { const campaign = await this.prisma.campaign.findUnique({ where: { id }, include: { prizes: { orderBy: { sortOrder: "asc" } }, _count: { select: { spins: true, userPrizes: true, userCampaigns: true } } } }); if (!campaign) { throw new common_12.NotFoundException("\u06A9\u0645\u067E\u06CC\u0646 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } return campaign; } async update(id, dto) { const campaign = await this.findOne(id); if (dto.startAt && dto.endAt) { if (new Date(dto.endAt) <= new Date(dto.startAt)) { throw new common_12.BadRequestException("\u062A\u0627\u0631\u06CC\u062E \u067E\u0627\u06CC\u0627\u0646 \u0628\u0627\u06CC\u062F \u067E\u0633 \u0627\u0632 \u062A\u0627\u0631\u06CC\u062E \u0634\u0631\u0648\u0639 \u0628\u0627\u0634\u062F."); } } else if (dto.endAt && new Date(dto.endAt) <= campaign.startAt) { throw new common_12.BadRequestException("\u062A\u0627\u0631\u06CC\u062E \u067E\u0627\u06CC\u0627\u0646 \u0628\u0627\u06CC\u062F \u067E\u0633 \u0627\u0632 \u062A\u0627\u0631\u06CC\u062E \u0634\u0631\u0648\u0639 \u0628\u0627\u0634\u062F."); } else if (dto.startAt && campaign.endAt <= new Date(dto.startAt)) { throw new common_12.BadRequestException("\u062A\u0627\u0631\u06CC\u062E \u067E\u0627\u06CC\u0627\u0646 \u0628\u0627\u06CC\u062F \u067E\u0633 \u0627\u0632 \u062A\u0627\u0631\u06CC\u062E \u0634\u0631\u0648\u0639 \u0628\u0627\u0634\u062F."); } if (dto.slug && dto.slug !== campaign.slug) { const exists = await this.prisma.campaign.findUnique({ where: { slug: dto.slug } }); if (exists) { throw new common_12.ConflictException("\u0627\u06CC\u0646 \u0634\u0646\u0627\u0633\u0647 URL \u0642\u0628\u0644\u0627\u064B \u062B\u0628\u062A \u0634\u062F\u0647 \u0627\u0633\u062A."); } } if (dto.status === client_1.CampaignStatus.ACTIVE) { const activePrizes = await this.prisma.prize.count({ where: { campaignId: id, status: "ACTIVE", weight: { gt: 0 } } }); if (activePrizes === 0) { throw new common_12.BadRequestException("\u0628\u0631\u0627\u06CC \u0641\u0639\u0627\u0644\u200C\u0633\u0627\u0632\u06CC \u06A9\u0645\u067E\u06CC\u0646\u060C \u062D\u062F\u0627\u0642\u0644 \u06CC\u06A9 \u062C\u0627\u06CC\u0632\u0647 \u0641\u0639\u0627\u0644 \u0628\u0627 \u0634\u0627\u0646\u0633 \u0628\u0631\u062F \u0628\u0632\u0631\u06AF\u200C\u062A\u0631 \u0627\u0632 \u0635\u0641\u0631 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A."); } } const oldDefaultChances = campaign.defaultChances; const hasDefaultChancesChanged = dto.defaultChances !== void 0 && dto.defaultChances !== null && Number(dto.defaultChances) !== oldDefaultChances; const newDefaultChances = hasDefaultChancesChanged ? Number(dto.defaultChances) : oldDefaultChances; return this.prisma.$transaction(async (tx) => { const updated = await tx.campaign.update({ where: { id }, data: dto }); if (hasDefaultChancesChanged) { const diff = newDefaultChances - oldDefaultChances; if (diff > 0) { await tx.userCampaign.updateMany({ where: { campaignId: id }, data: { totalChances: { increment: diff } } }); const existingUsers = await tx.userCampaign.findMany({ where: { campaignId: id }, select: { userId: true } }); if (existingUsers.length > 0) { await tx.chanceTransaction.createMany({ data: existingUsers.map((u) => ({ userId: u.userId, campaignId: id, amount: diff, type: client_1.ChanceTxnType.ADMIN_ADJUSTMENT, referenceType: "campaign_default_chances_updated", description: `\u0627\u0641\u0632\u0627\u06CC\u0634 \u062E\u0648\u062F\u06A9\u0627\u0631 \u0634\u0627\u0646\u0633 \u0628\u0631 \u0627\u062B\u0631 \u0648\u06CC\u0631\u0627\u06CC\u0634 \u0634\u0627\u0646\u0633 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u0645\u067E\u06CC\u0646 (\u0627\u0632 ${oldDefaultChances} \u0628\u0647 ${newDefaultChances})` })) }); } } else if (diff < 0) { const existingUserCampaigns = await tx.userCampaign.findMany({ where: { campaignId: id } }); for (const uc of existingUserCampaigns) { const deductAmount = Math.min(uc.totalChances - uc.usedChances, Math.abs(diff)); if (deductAmount > 0) { await tx.userCampaign.update({ where: { id: uc.id }, data: { totalChances: { decrement: deductAmount } } }); await tx.chanceTransaction.create({ data: { userId: uc.userId, campaignId: id, amount: -deductAmount, type: client_1.ChanceTxnType.ADMIN_ADJUSTMENT, referenceType: "campaign_default_chances_updated", description: `\u06A9\u0633\u0631 \u062E\u0648\u062F\u06A9\u0627\u0631 \u0634\u0627\u0646\u0633 \u0628\u0631 \u0627\u062B\u0631 \u06A9\u0627\u0647\u0634 \u0634\u0627\u0646\u0633 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u0645\u067E\u06CC\u0646 (\u0627\u0632 ${oldDefaultChances} \u0628\u0647 ${newDefaultChances})` } }); } } } } return updated; }); } async remove(id) { const spinCount = await this.prisma.spin.count({ where: { campaignId: id } }); if (spinCount > 0) { throw new common_12.BadRequestException("\u0627\u06CC\u0646 \u06A9\u0645\u067E\u06CC\u0646 \u062F\u0627\u0631\u0627\u06CC \u0631\u06A9\u0648\u0631\u062F \u0642\u0631\u0639\u0647\u200C\u06A9\u0634\u06CC \u0648 \u0627\u0633\u067E\u06CC\u0646 \u0627\u0633\u062A \u0648 \u0627\u0645\u06A9\u0627\u0646 \u062D\u0630\u0641 \u0641\u06CC\u0632\u06CC\u06A9\u06CC \u0622\u0646 \u0648\u062C\u0648\u062F \u0646\u062F\u0627\u0631\u062F. \u0648\u0636\u0639\u06CC\u062A \u0622\u0646 \u0631\u0627 \u0628\u0647 \u067E\u0627\u06CC\u0627\u0646\u200C\u06CC\u0627\u0641\u062A\u0647 \u06CC\u0627 \u0645\u062A\u0648\u0642\u0641 \u062A\u063A\u06CC\u06CC\u0631 \u062F\u0647\u06CC\u062F."); } return this.prisma.campaign.delete({ where: { id } }); } async duplicate(id) { const original = await this.findOne(id); const newSlug = `${original.slug}-copy-${Date.now()}`; return this.prisma.$transaction(async (tx) => { const newCampaign = await tx.campaign.create({ data: { title: `${original.title} (\u06A9\u067E\u06CC)`, slug: newSlug, description: original.description, image: original.image, banner: original.banner, logo: original.logo, startAt: original.startAt, endAt: original.endAt, status: client_1.CampaignStatus.DRAFT, defaultChances: original.defaultChances, rules: original.rules, ctaText: original.ctaText, wheelDesign: original.wheelDesign, settings: original.settings } }); if (original.prizes?.length > 0) { for (const p of original.prizes) { await tx.prize.create({ data: { campaignId: newCampaign.id, title: p.title, description: p.description, image: p.image, type: p.type, stockType: p.stockType, initialStock: p.initialStock, remainingStock: p.initialStock, weight: p.weight, status: p.status, sortOrder: p.sortOrder, segmentColor: p.segmentColor, smsTemplate: p.smsTemplate } }); } } return newCampaign; }); } async getPublicCampaignBySlug(slug) { const campaign = await this.prisma.campaign.findUnique({ where: { slug }, select: { id: true, title: true, slug: true, description: true, banner: true, logo: true, startAt: true, endAt: true, status: true, ctaText: true, rules: true, wheelDesign: true, settings: true, defaultChances: true } }); if (!campaign) { throw new common_12.NotFoundException("\u06A9\u0645\u067E\u06CC\u0646 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } const availabilityError = this.availabilityService.getAvailabilityError(campaign); return { ...campaign, isAvailable: availabilityError === null, availabilityError }; } async getPublicWheelSegments(slug) { const campaign = await this.prisma.campaign.findUnique({ where: { slug }, include: { prizes: { where: { status: "ACTIVE", OR: [{ stockType: "UNLIMITED" }, { remainingStock: { gt: 0 } }] }, orderBy: { sortOrder: "asc" }, select: { id: true, title: true, image: true, segmentColor: true, sortOrder: true, type: true } } } }); if (!campaign) { throw new common_12.NotFoundException("\u06A9\u0645\u067E\u06CC\u0646 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } const availabilityError = this.availabilityService.getAvailabilityError(campaign); return { campaign: { id: campaign.id, title: campaign.title, slug: campaign.slug, description: campaign.description, logo: campaign.logo, banner: campaign.banner, image: campaign.image, wheelDesign: campaign.wheelDesign, settings: campaign.settings, ctaText: campaign.ctaText, rules: campaign.rules, defaultChances: campaign.defaultChances, isAvailable: availabilityError === null, availabilityError }, segments: campaign.prizes.map((p, index) => ({ id: p.id, title: p.title, image: p.image, color: p.segmentColor, sortOrder: p.sortOrder ?? index, type: p.type })) }; } }; exports2.CampaignService = CampaignService; exports2.CampaignService = CampaignService = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [ prisma_service_12.PrismaService, campaign_availability_service_1.CampaignAvailabilityService ]) ], CampaignService); } }); // dist/src/modules/campaign/dto/campaign-filter.dto.js var require_campaign_filter_dto = __commonJS({ "dist/src/modules/campaign/dto/campaign-filter.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CampaignFilterDto = void 0; var swagger_12 = require_swagger(); var client_1 = require("@prisma/client"); var class_transformer_1 = require_cjs2(); var class_validator_1 = require_cjs(); var CampaignFilterDto = class { static { __name(this, "CampaignFilterDto"); } constructor() { this.page = 1; this.pageSize = 20; } }; exports2.CampaignFilterDto = CampaignFilterDto; __decorate2([ (0, swagger_12.ApiPropertyOptional)({ default: 1 }), (0, class_transformer_1.Type)(() => Number), (0, class_validator_1.IsInt)(), (0, class_validator_1.Min)(1), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Number) ], CampaignFilterDto.prototype, "page", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ default: 20 }), (0, class_transformer_1.Type)(() => Number), (0, class_validator_1.IsInt)(), (0, class_validator_1.Min)(1), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Number) ], CampaignFilterDto.prototype, "pageSize", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ enum: client_1.CampaignStatus }), (0, class_validator_1.IsEnum)(client_1.CampaignStatus), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CampaignFilterDto.prototype, "status", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ description: "\u062C\u0633\u062A\u062C\u0648 \u062F\u0631 \u0639\u0646\u0648\u0627\u0646 \u06CC\u0627 \u0627\u0633\u0644\u0627\u06AF" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CampaignFilterDto.prototype, "search", void 0); } }); // dist/src/modules/campaign/dto/create-campaign.dto.js var require_create_campaign_dto = __commonJS({ "dist/src/modules/campaign/dto/create-campaign.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CreateCampaignDto = void 0; var swagger_12 = require_swagger(); var client_1 = require("@prisma/client"); var class_transformer_1 = require_cjs2(); var class_validator_1 = require_cjs(); var CreateCampaignDto = class { static { __name(this, "CreateCampaignDto"); } }; exports2.CreateCampaignDto = CreateCampaignDto; __decorate2([ (0, swagger_12.ApiProperty)({ example: "\u062C\u0634\u0646\u0648\u0627\u0631\u0647 \u0646\u0648\u0631\u0648\u0632\u06CC \u06AF\u0631\u062F\u0648\u0646\u0647 \u0634\u0627\u0646\u0633", description: "\u0639\u0646\u0648\u0627\u0646 \u06A9\u0645\u067E\u06CC\u0646" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsNotEmpty)({ message: "\u0639\u0646\u0648\u0627\u0646 \u06A9\u0645\u067E\u06CC\u0646 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), __metadata2("design:type", String) ], CreateCampaignDto.prototype, "title", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ example: "norooz-1405", description: "\u0634\u0646\u0627\u0633\u0647 \u06CC\u06A9\u062A\u0627\u06CC URL \u06A9\u0645\u067E\u06CC\u0646" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsNotEmpty)({ message: "\u0634\u0646\u0627\u0633\u0647 URL \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), (0, class_validator_1.Matches)(/^[a-z0-9-]+$/, { message: "\u0627\u0633\u0644\u0627\u06AF \u0628\u0627\u06CC\u062F \u0641\u0642\u0637 \u0634\u0627\u0645\u0644 \u062D\u0631\u0648\u0641 \u06A9\u0648\u0686\u06A9 \u0627\u0646\u06AF\u0644\u06CC\u0633\u06CC\u060C \u0627\u0639\u062F\u0627\u062F \u0648 \u062E\u0637 \u062A\u06CC\u0631\u0647 (-) \u0628\u0627\u0634\u062F" }), __metadata2("design:type", String) ], CreateCampaignDto.prototype, "slug", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "\u062A\u0648\u0636\u06CC\u062D\u0627\u062A \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u062C\u0648\u0627\u06CC\u0632 \u0648 \u0642\u0648\u0627\u0646\u06CC\u0646 \u06A9\u0645\u067E\u06CC\u0646" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreateCampaignDto.prototype, "description", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "http://localhost:3000/uploads/banner.png" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreateCampaignDto.prototype, "banner", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "http://localhost:3000/uploads/logo.png" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreateCampaignDto.prototype, "logo", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ example: "2026-03-20T00:00:00.000Z", description: "\u062A\u0627\u0631\u06CC\u062E \u0648 \u0633\u0627\u0639\u062A \u0634\u0631\u0648\u0639 \u06A9\u0645\u067E\u06CC\u0646" }), (0, class_transformer_1.Type)(() => Date), (0, class_validator_1.IsDate)({ message: "\u062A\u0627\u0631\u06CC\u062E \u0634\u0631\u0648\u0639 \u0628\u0627\u06CC\u062F \u06CC\u06A9 \u062A\u0627\u0631\u06CC\u062E \u0645\u0639\u062A\u0628\u0631 \u0628\u0627\u0634\u062F" }), __metadata2("design:type", Date) ], CreateCampaignDto.prototype, "startAt", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ example: "2026-04-05T23:59:59.000Z", description: "\u062A\u0627\u0631\u06CC\u062E \u0648 \u0633\u0627\u0639\u062A \u067E\u0627\u06CC\u0627\u0646 \u06A9\u0645\u067E\u06CC\u0646" }), (0, class_transformer_1.Type)(() => Date), (0, class_validator_1.IsDate)({ message: "\u062A\u0627\u0631\u06CC\u062E \u067E\u0627\u06CC\u0627\u0646 \u0628\u0627\u06CC\u062F \u06CC\u06A9 \u062A\u0627\u0631\u06CC\u062E \u0645\u0639\u062A\u0628\u0631 \u0628\u0627\u0634\u062F" }), __metadata2("design:type", Date) ], CreateCampaignDto.prototype, "endAt", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ enum: client_1.CampaignStatus, default: client_1.CampaignStatus.DRAFT }), (0, class_validator_1.IsEnum)(client_1.CampaignStatus), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreateCampaignDto.prototype, "status", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: 3, default: 0, description: "\u062A\u0639\u062F\u0627\u062F \u0634\u0627\u0646\u0633 \u0627\u0648\u0644\u06CC\u0647 \u0647\u0631 \u06A9\u0627\u0631\u0628\u0631 \u062C\u062F\u06CC\u062F" }), (0, class_validator_1.IsInt)({ message: "\u062A\u0639\u062F\u0627\u062F \u0634\u0627\u0646\u0633 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u0628\u0627\u06CC\u062F \u0639\u062F\u062F \u0635\u062D\u06CC\u062D \u0628\u0627\u0634\u062F" }), (0, class_validator_1.Min)(0, { message: "\u062A\u0639\u062F\u0627\u062F \u0634\u0627\u0646\u0633 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u0646\u0645\u06CC\u200C\u062A\u0648\u0627\u0646\u062F \u0645\u0646\u0641\u06CC \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Number) ], CreateCampaignDto.prototype, "defaultChances", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "\u0647\u0631 \u06A9\u0627\u0631\u0628\u0631 \u0645\u062C\u0627\u0632 \u0628\u0647 \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0627\u0632 \u0634\u0627\u0646\u0633\u200C\u0647\u0627\u06CC \u0627\u062E\u062A\u0635\u0627\u0635\u200C\u06CC\u0627\u0641\u062A\u0647 \u0627\u0633\u062A." }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreateCampaignDto.prototype, "rules", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "\u0628\u0686\u0631\u062E\u0648\u0646 \u0648 \u0628\u0631\u0646\u062F\u0647 \u0634\u0648!" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreateCampaignDto.prototype, "ctaText", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ enum: client_1.WheelDesign, default: client_1.WheelDesign.CLASSIC_CASINO, description: "\u0637\u0631\u062D \u0628\u0635\u0631\u06CC \u06AF\u0631\u062F\u0648\u0646\u0647 (\u0627\u0646\u062A\u062E\u0627\u0628 \u0627\u0632 \u0628\u06CC\u0646 \u06F5 \u0637\u0631\u062D)" }), (0, class_validator_1.IsEnum)(client_1.WheelDesign), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreateCampaignDto.prototype, "wheelDesign", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: { primaryColor: "#FFD700", secondaryColor: "#B22222", celebrationEffect: "confetti" }, description: "\u062A\u0646\u0638\u06CC\u0645\u0627\u062A \u0634\u062E\u0635\u06CC\u200C\u0633\u0627\u0632\u06CC \u0628\u0635\u0631\u06CC \u0628\u0631\u0646\u062F" }), (0, class_validator_1.IsObject)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Object) ], CreateCampaignDto.prototype, "settings", void 0); } }); // dist/src/modules/campaign/dto/update-campaign.dto.js var require_update_campaign_dto = __commonJS({ "dist/src/modules/campaign/dto/update-campaign.dto.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UpdateCampaignDto = void 0; var swagger_12 = require_swagger(); var create_campaign_dto_1 = require_create_campaign_dto(); var UpdateCampaignDto = class extends (0, swagger_12.PartialType)(create_campaign_dto_1.CreateCampaignDto) { static { __name(this, "UpdateCampaignDto"); } }; exports2.UpdateCampaignDto = UpdateCampaignDto; } }); // dist/src/modules/campaign/admin-campaign.controller.js var require_admin_campaign_controller = __commonJS({ "dist/src/modules/campaign/admin-campaign.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminCampaignController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var jwt_admin_guard_1 = require_jwt_admin_guard(); var audit_interceptor_1 = require_audit_interceptor(); var campaign_service_1 = require_campaign_service(); var campaign_filter_dto_1 = require_campaign_filter_dto(); var create_campaign_dto_1 = require_create_campaign_dto(); var update_campaign_dto_1 = require_update_campaign_dto(); var AdminCampaignController = class AdminCampaignController { static { __name(this, "AdminCampaignController"); } constructor(campaignService) { this.campaignService = campaignService; } async create(dto) { return this.campaignService.create(dto); } async findAll(filter) { return this.campaignService.findAll(filter); } async findOne(id) { return this.campaignService.findOne(id); } async update(id, dto) { return this.campaignService.update(id, dto); } async remove(id) { return this.campaignService.remove(id); } async duplicate(id) { return this.campaignService.duplicate(id); } }; exports2.AdminCampaignController = AdminCampaignController; __decorate2([ (0, common_12.Post)(), (0, swagger_12.ApiOperation)({ summary: "\u0627\u06CC\u062C\u0627\u062F \u06A9\u0645\u067E\u06CC\u0646 \u062C\u062F\u06CC\u062F" }), (0, swagger_12.ApiResponse)({ status: 201, description: "\u06A9\u0645\u067E\u06CC\u0646 \u0628\u0627 \u0645\u0648\u0641\u0642\u06CC\u062A \u0627\u06CC\u062C\u0627\u062F \u0634\u062F" }), __param2(0, (0, common_12.Body)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [create_campaign_dto_1.CreateCampaignDto]), __metadata2("design:returntype", Promise) ], AdminCampaignController.prototype, "create", null); __decorate2([ (0, common_12.Get)(), (0, swagger_12.ApiOperation)({ summary: "\u0644\u06CC\u0633\u062A \u06A9\u0645\u067E\u06CC\u0646\u200C\u0647\u0627 \u0628\u0627 \u0641\u06CC\u0644\u062A\u0631 \u0648\u0636\u0639\u06CC\u062A\u060C \u062C\u0633\u062A\u062C\u0648 \u0648 \u0635\u0641\u062D\u0647\u200C\u0628\u0646\u062F\u06CC" }), __param2(0, (0, common_12.Query)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [campaign_filter_dto_1.CampaignFilterDto]), __metadata2("design:returntype", Promise) ], AdminCampaignController.prototype, "findAll", null); __decorate2([ (0, common_12.Get)(":id"), (0, swagger_12.ApiOperation)({ summary: "\u062F\u0631\u06CC\u0627\u0641\u062A \u062C\u0632\u0626\u06CC\u0627\u062A \u06A9\u0627\u0645\u0644 \u06A9\u0645\u067E\u06CC\u0646 \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u062C\u0648\u0627\u06CC\u0632 \u0648 \u0622\u0645\u0627\u0631" }), __param2(0, (0, common_12.Param)("id")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], AdminCampaignController.prototype, "findOne", null); __decorate2([ (0, common_12.Patch)(":id"), (0, swagger_12.ApiOperation)({ summary: "\u0648\u06CC\u0631\u0627\u06CC\u0634 \u0627\u0637\u0644\u0627\u0639\u0627\u062A \u0648 \u0648\u0636\u0639\u06CC\u062A \u06A9\u0645\u067E\u06CC\u0646" }), __param2(0, (0, common_12.Param)("id")), __param2(1, (0, common_12.Body)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String, update_campaign_dto_1.UpdateCampaignDto]), __metadata2("design:returntype", Promise) ], AdminCampaignController.prototype, "update", null); __decorate2([ (0, common_12.Delete)(":id"), (0, swagger_12.ApiOperation)({ summary: "\u062D\u0630\u0641 \u06A9\u0645\u067E\u06CC\u0646 (\u062F\u0631 \u0635\u0648\u0631\u062A \u0639\u062F\u0645 \u0648\u062C\u0648\u062F \u0627\u0633\u067E\u06CC\u0646 \u062B\u0628\u062A\u200C\u0634\u062F\u0647)" }), __param2(0, (0, common_12.Param)("id")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], AdminCampaignController.prototype, "remove", null); __decorate2([ (0, common_12.Post)(":id/duplicate"), (0, swagger_12.ApiOperation)({ summary: "\u06A9\u067E\u06CC\u200C\u0628\u0631\u062F\u0627\u0631\u06CC \u0633\u0631\u06CC\u0639 \u0627\u0632 \u06CC\u06A9 \u06A9\u0645\u067E\u06CC\u0646 \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u062C\u0648\u0627\u06CC\u0632 \u0622\u0646" }), __param2(0, (0, common_12.Param)("id")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], AdminCampaignController.prototype, "duplicate", null); exports2.AdminCampaignController = AdminCampaignController = __decorate2([ (0, swagger_12.ApiTags)("Admin Campaigns (\u0645\u062F\u06CC\u0631\u06CC\u062A \u06A9\u0645\u067E\u06CC\u0646\u200C\u0647\u0627)"), (0, common_12.Controller)("admin/campaigns"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, common_12.UseInterceptors)(audit_interceptor_1.AuditInterceptor), (0, swagger_12.ApiBearerAuth)("AdminAuth"), __metadata2("design:paramtypes", [campaign_service_1.CampaignService]) ], AdminCampaignController); } }); // dist/src/modules/campaign/campaign.controller.js var require_campaign_controller = __commonJS({ "dist/src/modules/campaign/campaign.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CampaignController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var campaign_service_1 = require_campaign_service(); var CampaignController = class CampaignController { static { __name(this, "CampaignController"); } constructor(campaignService) { this.campaignService = campaignService; } async getPublicCampaign(slug) { return this.campaignService.getPublicCampaignBySlug(slug); } async getPublicWheelSegments(slug) { return this.campaignService.getPublicWheelSegments(slug); } }; exports2.CampaignController = CampaignController; __decorate2([ (0, common_12.Get)(":slug"), (0, swagger_12.ApiOperation)({ summary: "\u062F\u0631\u06CC\u0627\u0641\u062A \u0645\u0634\u062E\u0635\u0627\u062A \u0639\u0645\u0648\u0645\u06CC \u06A9\u0645\u067E\u06CC\u0646 \u0628\u0631 \u0627\u0633\u0627\u0633 \u0627\u0633\u0644\u0627\u06AF" }), (0, swagger_12.ApiResponse)({ status: 200, description: "\u0645\u0634\u062E\u0635\u0627\u062A \u0639\u0645\u0648\u0645\u06CC \u06A9\u0645\u067E\u06CC\u0646 \u0634\u0627\u0645\u0644 \u0639\u0646\u0627\u0648\u06CC\u0646\u060C \u0628\u0646\u0631\u060C \u0642\u0648\u0627\u0646\u06CC\u0646 \u0648 \u0648\u0636\u0639\u06CC\u062A \u062F\u0633\u062A\u0631\u0633\u06CC" }), __param2(0, (0, common_12.Param)("slug")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], CampaignController.prototype, "getPublicCampaign", null); __decorate2([ (0, common_12.Get)(":slug/wheel"), (0, swagger_12.ApiOperation)({ summary: "\u062F\u0631\u06CC\u0627\u0641\u062A \u0633\u06AF\u0645\u0646\u062A\u200C\u0647\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634\u06CC \u06AF\u0631\u062F\u0648\u0646\u0647 \u0634\u0627\u0646\u0633 \u0628\u062F\u0648\u0646 \u0627\u0641\u0634\u0627\u06CC \u0648\u0632\u0646 \u062C\u0648\u0627\u06CC\u0632" }), (0, swagger_12.ApiResponse)({ status: 200, description: "\u0644\u06CC\u0633\u062A \u0633\u06AF\u0645\u0646\u062A\u200C\u0647\u0627\u06CC \u06AF\u0631\u062F\u0648\u0646\u0647 (\u0639\u0646\u0648\u0627\u0646\u060C \u0631\u0646\u06AF\u060C \u0622\u06CC\u06A9\u0648\u0646\u060C \u062A\u0631\u062A\u06CC\u0628)" }), __param2(0, (0, common_12.Param)("slug")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], CampaignController.prototype, "getPublicWheelSegments", null); exports2.CampaignController = CampaignController = __decorate2([ (0, swagger_12.ApiTags)("Campaigns (\u0639\u0645\u0648\u0645\u06CC \u06A9\u0644\u0627\u06CC\u0646\u062A)"), (0, common_12.Controller)("campaigns"), __metadata2("design:paramtypes", [campaign_service_1.CampaignService]) ], CampaignController); } }); // dist/src/modules/campaign/campaign.module.js var require_campaign_module = __commonJS({ "dist/src/modules/campaign/campaign.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CampaignModule = void 0; var common_12 = require_common(); var admin_campaign_controller_1 = require_admin_campaign_controller(); var campaign_availability_service_1 = require_campaign_availability_service(); var campaign_controller_1 = require_campaign_controller(); var campaign_service_1 = require_campaign_service(); var CampaignModule = class CampaignModule { static { __name(this, "CampaignModule"); } }; exports2.CampaignModule = CampaignModule; exports2.CampaignModule = CampaignModule = __decorate2([ (0, common_12.Module)({ controllers: [campaign_controller_1.CampaignController, admin_campaign_controller_1.AdminCampaignController], providers: [campaign_service_1.CampaignService, campaign_availability_service_1.CampaignAvailabilityService], exports: [campaign_service_1.CampaignService, campaign_availability_service_1.CampaignAvailabilityService] }) ], CampaignModule); } }); // dist/src/common/decorators/current-admin.decorator.js var require_current_admin_decorator = __commonJS({ "dist/src/common/decorators/current-admin.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CurrentAdmin = void 0; var common_12 = require_common(); exports2.CurrentAdmin = (0, common_12.createParamDecorator)((data, ctx) => { const request = ctx.switchToHttp().getRequest(); const admin = request.admin; return data ? admin?.[data] : admin; }); } }); // dist/src/modules/chance/chance.service.js var require_chance_service = __commonJS({ "dist/src/modules/chance/chance.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ChanceService = void 0; var common_12 = require_common(); var client_1 = require("@prisma/client"); var prisma_service_12 = require_prisma_service(); var ChanceService = class ChanceService { static { __name(this, "ChanceService"); } constructor(prisma) { this.prisma = prisma; } async adjustChance(tx, params) { const { userId, campaignId, amount, type, createdById, referenceType, referenceId, description } = params; const txn = await tx.chanceTransaction.create({ data: { userId, campaignId, amount, type, referenceType, referenceId, description, createdById } }); let userCampaign = await tx.userCampaign.findUnique({ where: { userId_campaignId: { userId, campaignId } } }); if (!userCampaign) { userCampaign = await tx.userCampaign.create({ data: { userId, campaignId, totalChances: Math.max(0, amount), usedChances: 0 } }); } else { if (type === client_1.ChanceTxnType.SPIN_CONSUME) { userCampaign = await tx.userCampaign.update({ where: { id: userCampaign.id }, data: { usedChances: { increment: 1 } } }); } else if (amount > 0) { userCampaign = await tx.userCampaign.update({ where: { id: userCampaign.id }, data: { totalChances: { increment: amount } } }); } else if (amount < 0) { const newTotal = Math.max(0, userCampaign.totalChances + amount); userCampaign = await tx.userCampaign.update({ where: { id: userCampaign.id }, data: { totalChances: newTotal } }); } } return { txn, userCampaign }; } async adminAdjustChance(userId, campaignId, adminId, dto, ip) { const user = await this.prisma.user.findUnique({ where: { id: userId } }); if (!user) { throw new common_12.NotFoundException("\u06A9\u0627\u0631\u0628\u0631 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } const campaign = await this.prisma.campaign.findUnique({ where: { id: campaignId } }); if (!campaign) { throw new common_12.NotFoundException("\u06A9\u0645\u067E\u06CC\u0646 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } return this.prisma.$transaction(async (tx) => { if (dto.amount < 0) { const current = await tx.userCampaign.findUnique({ where: { userId_campaignId: { userId, campaignId } } }); const remaining = (current?.totalChances ?? 0) - (current?.usedChances ?? 0); if (remaining + dto.amount < 0) { throw new common_12.BadRequestException(`\u06A9\u0627\u0631\u0628\u0631 \u0641\u0642\u0637 ${remaining} \u0634\u0627\u0646\u0633 \u0628\u0627\u0642\u06CC\u200C\u0645\u0627\u0646\u062F\u0647 \u062F\u0627\u0631\u062F \u0648 \u0646\u0645\u06CC\u200C\u062A\u0648\u0627\u0646\u06CC\u062F ${Math.abs(dto.amount)} \u0634\u0627\u0646\u0633 \u0627\u0632 \u0627\u0648 \u06A9\u0633\u0631 \u06A9\u0646\u06CC\u062F.`); } } const finalDescription = dto.description || dto.reason || "\u062A\u063A\u06CC\u06CC\u0631 \u062F\u0633\u062A\u06CC \u0634\u0627\u0646\u0633 \u062A\u0648\u0633\u0637 \u0645\u062F\u06CC\u0631"; const { txn, userCampaign } = await this.adjustChance(tx, { userId, campaignId, amount: dto.amount, type: client_1.ChanceTxnType.ADMIN_ADJUSTMENT, createdById: adminId, referenceType: "admin_manual", description: finalDescription }); await tx.adminLog.create({ data: { adminId, action: "chance.adjust", entityType: "user_campaign", entityId: userCampaign.id, oldValue: { amountBefore: userCampaign.totalChances - dto.amount }, newValue: { amountChange: dto.amount, amountAfter: userCampaign.totalChances, description: finalDescription, userMobile: user.mobile, campaignTitle: campaign.title }, ip } }); return { success: true, userCampaign: { totalChances: userCampaign.totalChances, usedChances: userCampaign.usedChances, remainingChances: userCampaign.totalChances - userCampaign.usedChances }, transaction: txn }; }); } async getUserChances(userId, campaignId) { const campaign = await this.prisma.campaign.findUnique({ where: { id: campaignId }, select: { defaultChances: true } }); const defaultChances = campaign?.defaultChances ?? 0; let userCampaign = await this.prisma.userCampaign.findUnique({ where: { userId_campaignId: { userId, campaignId } } }); if (!userCampaign) { return this.prisma.$transaction(async (tx) => { const { userCampaign: created } = await this.adjustChance(tx, { userId, campaignId, amount: defaultChances, type: client_1.ChanceTxnType.SIGNUP_BONUS, referenceType: "campaign_entry", description: "\u0634\u0627\u0646\u0633 \u0627\u0648\u0644\u06CC\u0647 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u0648\u0631\u0648\u062F \u0628\u0647 \u06A9\u0645\u067E\u06CC\u0646" }); return { totalChances: created.totalChances, usedChances: created.usedChances, remainingChances: created.totalChances - created.usedChances }; }); } if (userCampaign.totalChances < defaultChances) { const diff = defaultChances - userCampaign.totalChances; return this.prisma.$transaction(async (tx) => { const { userCampaign: updated } = await this.adjustChance(tx, { userId, campaignId, amount: diff, type: client_1.ChanceTxnType.ADMIN_ADJUSTMENT, referenceType: "campaign_default_chances_sync", description: `\u0647\u0645\u06AF\u0627\u0645\u200C\u0633\u0627\u0632\u06CC \u062E\u0648\u062F\u06A9\u0627\u0631 \u0628\u0627 \u0634\u0627\u0646\u0633 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u0645\u067E\u06CC\u0646 (${defaultChances})` }); return { totalChances: updated.totalChances, usedChances: updated.usedChances, remainingChances: updated.totalChances - updated.usedChances }; }); } return { totalChances: userCampaign.totalChances, usedChances: userCampaign.usedChances, remainingChances: userCampaign.totalChances - userCampaign.usedChances }; } async getUserChanceHistory(userId, campaignId) { const where = { userId }; if (campaignId) { where.campaignId = campaignId; } return this.prisma.chanceTransaction.findMany({ where, orderBy: { createdAt: "desc" }, include: { campaign: { select: { id: true, title: true } }, createdBy: { select: { id: true, name: true, email: true } } } }); } }; exports2.ChanceService = ChanceService; exports2.ChanceService = ChanceService = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [prisma_service_12.PrismaService]) ], ChanceService); } }); // dist/src/modules/chance/dto/adjust-chance.dto.js var require_adjust_chance_dto = __commonJS({ "dist/src/modules/chance/dto/adjust-chance.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminAdjustChancePayloadDto = exports2.AdjustChanceDto = void 0; var swagger_12 = require_swagger(); var class_validator_1 = require_cjs(); var AdjustChanceDto = class { static { __name(this, "AdjustChanceDto"); } }; exports2.AdjustChanceDto = AdjustChanceDto; __decorate2([ (0, swagger_12.ApiProperty)({ example: 5, description: "\u062A\u0639\u062F\u0627\u062F \u0634\u0627\u0646\u0633 \u062C\u0647\u062A \u0627\u0641\u0632\u0627\u06CC\u0634 (\u0645\u062B\u0628\u062A) \u06CC\u0627 \u06A9\u0627\u0647\u0634 (\u0645\u0646\u0641\u06CC) \u2014 \u0646\u0645\u06CC\u200C\u062A\u0648\u0627\u0646\u062F \u0635\u0641\u0631 \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsInt)({ message: "\u0645\u0642\u062F\u0627\u0631 \u0634\u0627\u0646\u0633 \u0628\u0627\u06CC\u062F \u0639\u062F\u062F \u0635\u062D\u06CC\u062D \u0628\u0627\u0634\u062F" }), (0, class_validator_1.NotEquals)(0, { message: "\u0645\u0642\u062F\u0627\u0631 \u062A\u063A\u06CC\u06CC\u0631 \u0634\u0627\u0646\u0633 \u0646\u0645\u06CC\u200C\u062A\u0648\u0627\u0646\u062F \u0635\u0641\u0631 \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsNotEmpty)({ message: "\u0645\u0642\u062F\u0627\u0631 \u062A\u063A\u06CC\u06CC\u0631 \u0634\u0627\u0646\u0633 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), __metadata2("design:type", Number) ], AdjustChanceDto.prototype, "amount", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ example: "\u067E\u0627\u062F\u0627\u0634 \u0634\u0631\u06A9\u062A \u062F\u0631 \u0646\u0638\u0631\u0633\u0646\u062C\u06CC \u0627\u06CC\u0646\u0633\u062A\u0627\u06AF\u0631\u0627\u0645", description: "\u0639\u0644\u062A \u0648 \u062A\u0648\u0636\u06CC\u062D \u062A\u063A\u06CC\u06CC\u0631 \u0634\u0627\u0646\u0633 \u0628\u0631\u0627\u06CC \u062B\u0628\u062A \u062F\u0631 \u062F\u0641\u062A\u0631\u06A9\u0644", required: false }), (0, class_validator_1.IsString)({ message: "\u062A\u0648\u0636\u06CC\u062D\u0627\u062A \u0628\u0627\u06CC\u062F \u0645\u062A\u0646 \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], AdjustChanceDto.prototype, "description", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ example: "\u0627\u0647\u062F\u0627\u06CC \u0634\u0627\u0646\u0633 \u062A\u0634\u0648\u06CC\u0642\u06CC \u062A\u0648\u0633\u0637 \u0645\u062F\u06CC\u0631", description: "\u062F\u0644\u06CC\u0644 \u062A\u063A\u06CC\u06CC\u0631 \u0634\u0627\u0646\u0633", required: false }), (0, class_validator_1.IsString)({ message: "\u062F\u0644\u06CC\u0644 \u0628\u0627\u06CC\u062F \u0645\u062A\u0646 \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], AdjustChanceDto.prototype, "reason", void 0); var AdminAdjustChancePayloadDto = class { static { __name(this, "AdminAdjustChancePayloadDto"); } }; exports2.AdminAdjustChancePayloadDto = AdminAdjustChancePayloadDto; __decorate2([ (0, swagger_12.ApiProperty)({ description: "\u0634\u0646\u0627\u0633\u0647 \u06A9\u0627\u0631\u0628\u0631" }), (0, class_validator_1.IsString)({ message: "\u0634\u0646\u0627\u0633\u0647 \u06A9\u0627\u0631\u0628\u0631 \u0628\u0627\u06CC\u062F \u0631\u0634\u062A\u0647 \u0645\u0639\u062A\u0628\u0631 \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsNotEmpty)({ message: "\u0634\u0646\u0627\u0633\u0647 \u06A9\u0627\u0631\u0628\u0631 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), __metadata2("design:type", String) ], AdminAdjustChancePayloadDto.prototype, "userId", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ description: "\u0634\u0646\u0627\u0633\u0647 \u06A9\u0645\u067E\u06CC\u0646" }), (0, class_validator_1.IsString)({ message: "\u0634\u0646\u0627\u0633\u0647 \u06A9\u0645\u067E\u06CC\u0646 \u0628\u0627\u06CC\u062F \u0631\u0634\u062A\u0647 \u0645\u0639\u062A\u0628\u0631 \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsNotEmpty)({ message: "\u0634\u0646\u0627\u0633\u0647 \u06A9\u0645\u067E\u06CC\u0646 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), __metadata2("design:type", String) ], AdminAdjustChancePayloadDto.prototype, "campaignId", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ example: 5, description: "\u062A\u0639\u062F\u0627\u062F \u0634\u0627\u0646\u0633 \u062C\u0647\u062A \u0627\u0641\u0632\u0627\u06CC\u0634 (\u0645\u062B\u0628\u062A) \u06CC\u0627 \u06A9\u0627\u0647\u0634 (\u0645\u0646\u0641\u06CC) \u2014 \u0646\u0645\u06CC\u200C\u062A\u0648\u0627\u0646\u062F \u0635\u0641\u0631 \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsInt)({ message: "\u0645\u0642\u062F\u0627\u0631 \u0634\u0627\u0646\u0633 \u0628\u0627\u06CC\u062F \u0639\u062F\u062F \u0635\u062D\u06CC\u062D \u0628\u0627\u0634\u062F" }), (0, class_validator_1.NotEquals)(0, { message: "\u0645\u0642\u062F\u0627\u0631 \u062A\u063A\u06CC\u06CC\u0631 \u0634\u0627\u0646\u0633 \u0646\u0645\u06CC\u200C\u062A\u0648\u0627\u0646\u062F \u0635\u0641\u0631 \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsNotEmpty)({ message: "\u0645\u0642\u062F\u0627\u0631 \u062A\u063A\u06CC\u06CC\u0631 \u0634\u0627\u0646\u0633 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), __metadata2("design:type", Number) ], AdminAdjustChancePayloadDto.prototype, "amount", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ example: "\u0627\u0647\u062F\u0627\u06CC \u0634\u0627\u0646\u0633 \u062A\u0634\u0648\u06CC\u0642\u06CC \u062A\u0648\u0633\u0637 \u0645\u062F\u06CC\u0631", description: "\u062F\u0644\u06CC\u0644 \u062A\u063A\u06CC\u06CC\u0631 \u0634\u0627\u0646\u0633", required: false }), (0, class_validator_1.IsString)({ message: "\u062F\u0644\u06CC\u0644 \u0628\u0627\u06CC\u062F \u0645\u062A\u0646 \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], AdminAdjustChancePayloadDto.prototype, "reason", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ example: "\u067E\u0627\u062F\u0627\u0634 \u0648\u0641\u0627\u062F\u0627\u0631\u06CC", description: "\u062A\u0648\u0636\u06CC\u062D\u0627\u062A \u062A\u063A\u06CC\u06CC\u0631 \u0634\u0627\u0646\u0633 \u0628\u0631\u0627\u06CC \u062F\u0641\u062A\u0631\u06A9\u0644", required: false }), (0, class_validator_1.IsString)({ message: "\u062A\u0648\u0636\u06CC\u062D\u0627\u062A \u0628\u0627\u06CC\u062F \u0645\u062A\u0646 \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], AdminAdjustChancePayloadDto.prototype, "description", void 0); } }); // dist/src/modules/chance/admin-chance.controller.js var require_admin_chance_controller = __commonJS({ "dist/src/modules/chance/admin-chance.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminChanceController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var current_admin_decorator_1 = require_current_admin_decorator(); var jwt_admin_guard_1 = require_jwt_admin_guard(); var audit_interceptor_1 = require_audit_interceptor(); var chance_service_1 = require_chance_service(); var adjust_chance_dto_1 = require_adjust_chance_dto(); var AdminChanceController = class AdminChanceController { static { __name(this, "AdminChanceController"); } constructor(chanceService) { this.chanceService = chanceService; } async adjustChanceDirect(adminId, dto, req) { const ip = req.ip || req.headers["x-forwarded-for"]; const description = dto.reason || dto.description || "\u0627\u0647\u062F\u0627\u06CC \u0634\u0627\u0646\u0633 \u062A\u0634\u0648\u06CC\u0642\u06CC \u062A\u0648\u0633\u0637 \u0645\u062F\u06CC\u0631"; return this.chanceService.adminAdjustChance(dto.userId, dto.campaignId, adminId, { amount: dto.amount, description, reason: dto.reason }, ip); } async adjustChance(userId, campaignId, adminId, dto, req) { const ip = req.ip || req.headers["x-forwarded-for"]; const description = dto.description || dto.reason || "\u0627\u0647\u062F\u0627\u06CC \u0634\u0627\u0646\u0633 \u062A\u0634\u0648\u06CC\u0642\u06CC \u062A\u0648\u0633\u0637 \u0645\u062F\u06CC\u0631"; return this.chanceService.adminAdjustChance(userId, campaignId, adminId, { amount: dto.amount, description, reason: dto.reason }, ip); } }; exports2.AdminChanceController = AdminChanceController; __decorate2([ (0, common_12.Post)("chances/adjust"), (0, swagger_12.ApiOperation)({ summary: "\u062A\u063A\u06CC\u06CC\u0631 \u0634\u0627\u0646\u0633 \u06A9\u0627\u0631\u0628\u0631 \u062F\u0631 \u06A9\u0645\u067E\u06CC\u0646 (\u0627\u0646\u062F\u067E\u0648\u0626\u06CC\u0646\u062A \u0645\u0633\u062A\u0642\u06CC\u0645 \u067E\u0646\u0644 \u0645\u062F\u06CC\u0631\u06CC\u062A)" }), (0, swagger_12.ApiResponse)({ status: 200, description: "\u062A\u063A\u06CC\u06CC\u0631 \u0634\u0627\u0646\u0633 \u062F\u0631 \u062C\u062F\u0648\u0644 Snapshot \u0648 Ledger \u0627\u0639\u0645\u0627\u0644 \u0634\u062F \u0648 \u062F\u0631 AdminLog \u062B\u0628\u062A \u06AF\u0631\u062F\u06CC\u062F." }), __param2(0, (0, current_admin_decorator_1.CurrentAdmin)("id")), __param2(1, (0, common_12.Body)()), __param2(2, (0, common_12.Req)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String, adjust_chance_dto_1.AdminAdjustChancePayloadDto, Object]), __metadata2("design:returntype", Promise) ], AdminChanceController.prototype, "adjustChanceDirect", null); __decorate2([ (0, common_12.Post)("users/:userId/campaigns/:campaignId/chances"), (0, swagger_12.ApiOperation)({ summary: "\u0627\u0636\u0627\u0641\u0647 \u06CC\u0627 \u06A9\u0645 \u06A9\u0631\u062F\u0646 \u062F\u0633\u062A\u06CC \u0634\u0627\u0646\u0633 \u06A9\u0627\u0631\u0628\u0631 \u062F\u0631 \u06CC\u06A9 \u06A9\u0645\u067E\u06CC\u0646 \u062E\u0627\u0635" }), (0, swagger_12.ApiResponse)({ status: 200, description: "\u062A\u063A\u06CC\u06CC\u0631 \u0634\u0627\u0646\u0633 \u062F\u0631 \u062C\u062F\u0648\u0644 Snapshot \u0648 Ledger \u0627\u0639\u0645\u0627\u0644 \u0634\u062F \u0648 \u062F\u0631 AdminLog \u062B\u0628\u062A \u06AF\u0631\u062F\u06CC\u062F." }), __param2(0, (0, common_12.Param)("userId")), __param2(1, (0, common_12.Param)("campaignId")), __param2(2, (0, current_admin_decorator_1.CurrentAdmin)("id")), __param2(3, (0, common_12.Body)()), __param2(4, (0, common_12.Req)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String, String, String, adjust_chance_dto_1.AdjustChanceDto, Object]), __metadata2("design:returntype", Promise) ], AdminChanceController.prototype, "adjustChance", null); exports2.AdminChanceController = AdminChanceController = __decorate2([ (0, swagger_12.ApiTags)("Admin Chance Management (\u0645\u062F\u06CC\u0631\u06CC\u062A \u0634\u0627\u0646\u0633)"), (0, common_12.Controller)("admin"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, common_12.UseInterceptors)(audit_interceptor_1.AuditInterceptor), (0, swagger_12.ApiBearerAuth)("AdminAuth"), __metadata2("design:paramtypes", [chance_service_1.ChanceService]) ], AdminChanceController); } }); // dist/src/modules/chance/chance.module.js var require_chance_module = __commonJS({ "dist/src/modules/chance/chance.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ChanceModule = void 0; var common_12 = require_common(); var admin_chance_controller_1 = require_admin_chance_controller(); var chance_service_1 = require_chance_service(); var ChanceModule = class ChanceModule { static { __name(this, "ChanceModule"); } }; exports2.ChanceModule = ChanceModule; exports2.ChanceModule = ChanceModule = __decorate2([ (0, common_12.Module)({ controllers: [admin_chance_controller_1.AdminChanceController], providers: [chance_service_1.ChanceService], exports: [chance_service_1.ChanceService] }) ], ChanceModule); } }); // dist/src/modules/prize/dto/create-prize.dto.js var require_create_prize_dto = __commonJS({ "dist/src/modules/prize/dto/create-prize.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CreatePrizeDto = void 0; var swagger_12 = require_swagger(); var client_1 = require("@prisma/client"); var class_transformer_1 = require_cjs2(); var class_validator_1 = require_cjs(); var CreatePrizeDto = class { static { __name(this, "CreatePrizeDto"); } constructor() { this.status = client_1.PrizeStatus.ACTIVE; this.sortOrder = 0; } }; exports2.CreatePrizeDto = CreatePrizeDto; __decorate2([ (0, swagger_12.ApiProperty)({ example: "\u0622\u06CC\u0641\u0648\u0646 \u06F1\u06F5 \u067E\u0631\u0648 \u06F2\u06F5\u06F6 \u06AF\u06CC\u06AF\u0627\u0628\u0627\u06CC\u062A", description: "\u0639\u0646\u0648\u0627\u0646 \u062C\u0627\u06CC\u0632\u0647" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsNotEmpty)({ message: "\u0639\u0646\u0648\u0627\u0646 \u062C\u0627\u06CC\u0632\u0647 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "title", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "\u062A\u062D\u0648\u06CC\u0644 \u062D\u0636\u0648\u0631\u06CC \u0628\u0627 \u0627\u0631\u0627\u0626\u0647 \u06A9\u0627\u0631\u062A \u0634\u0646\u0627\u0633\u0627\u06CC\u06CC" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "description", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "\u062A\u062D\u0648\u06CC\u0644 \u062D\u0636\u0648\u0631\u06CC \u0628\u0627 \u0627\u0631\u0627\u0626\u0647 \u06A9\u0627\u0631\u062A \u0634\u0646\u0627\u0633\u0627\u06CC\u06CC" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "subtitle", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "http://localhost:3000/uploads/iphone.png" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "image", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "http://localhost:3000/uploads/iphone.png" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "iconUrl", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ enum: client_1.PrizeType, example: client_1.PrizeType.PHYSICAL, description: "\u0646\u0648\u0639 \u062C\u0627\u06CC\u0632\u0647" }), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "type", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ description: "\u0646\u0627\u0645 \u0645\u0633\u062A\u0639\u0627\u0631 \u0646\u0648\u0639 \u062C\u0627\u06CC\u0632\u0647" }), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "prizeType", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ enum: client_1.StockType, example: client_1.StockType.LIMITED, description: "\u0646\u0648\u0639 \u0645\u0648\u062C\u0648\u062F\u06CC (\u0645\u062D\u062F\u0648\u062F / \u0646\u0627\u0645\u062D\u062F\u0648\u062F)" }), (0, class_validator_1.IsEnum)(client_1.StockType), (0, class_validator_1.IsNotEmpty)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "stockType", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: 5, description: "\u0645\u0648\u062C\u0648\u062F\u06CC \u0627\u0648\u0644\u06CC\u0647 (\u062F\u0631 \u0635\u0648\u0631\u062A \u0645\u062D\u062F\u0648\u062F \u0628\u0648\u062F\u0646)" }), (0, class_validator_1.ValidateIf)((o) => o.stockType === client_1.StockType.LIMITED), (0, class_transformer_1.Type)(() => Number), (0, class_validator_1.IsInt)({ message: "\u0645\u0648\u062C\u0648\u062F\u06CC \u0627\u0648\u0644\u06CC\u0647 \u0628\u0627\u06CC\u062F \u0639\u062F\u062F \u0635\u062D\u06CC\u062D \u0628\u0627\u0634\u062F" }), (0, class_validator_1.Min)(1, { message: "\u0645\u0648\u062C\u0648\u062F\u06CC \u0627\u0648\u0644\u06CC\u0647 \u0628\u0627\u06CC\u062F \u062D\u062F\u0627\u0642\u0644 \u06F1 \u0628\u0627\u0634\u062F" }), __metadata2("design:type", Number) ], CreatePrizeDto.prototype, "initialStock", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: 5, description: "\u0645\u0648\u062C\u0648\u062F\u06CC \u0628\u0627\u0642\u06CC\u200C\u0645\u0627\u0646\u062F\u0647 \u0641\u0639\u0644\u06CC" }), (0, class_transformer_1.Type)(() => Number), (0, class_validator_1.IsInt)({ message: "\u0645\u0648\u062C\u0648\u062F\u06CC \u0628\u0627\u0642\u06CC\u200C\u0645\u0627\u0646\u062F\u0647 \u0628\u0627\u06CC\u062F \u0639\u062F\u062F \u0635\u062D\u06CC\u062D \u0628\u0627\u0634\u062F" }), (0, class_validator_1.Min)(0, { message: "\u0645\u0648\u062C\u0648\u062F\u06CC \u0628\u0627\u0642\u06CC\u200C\u0645\u0627\u0646\u062F\u0647 \u0646\u0645\u06CC\u200C\u062A\u0648\u0627\u0646\u062F \u0645\u0646\u0641\u06CC \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Number) ], CreatePrizeDto.prototype, "remainingStock", void 0); __decorate2([ (0, swagger_12.ApiProperty)({ example: 10, description: "\u0648\u0632\u0646 \u0628\u0631\u062F (\u0639\u062F\u062F\u06CC \u0645\u062B\u0628\u062A \u0648 \u0628\u0632\u0631\u06AF\u200C\u062A\u0631 \u0627\u0632 \u0635\u0641\u0631)" }), (0, class_transformer_1.Type)(() => Number), (0, class_validator_1.IsInt)({ message: "\u0648\u0632\u0646 \u0628\u0631\u062F \u0628\u0627\u06CC\u062F \u0639\u062F\u062F \u0635\u062D\u06CC\u062D \u0628\u0627\u0634\u062F" }), (0, class_validator_1.Min)(1, { message: "\u0648\u0632\u0646 \u0628\u0631\u062F \u0628\u0627\u06CC\u062F \u062D\u062F\u0627\u0642\u0644 \u06F1 \u0628\u0627\u0634\u062F" }), __metadata2("design:type", Number) ], CreatePrizeDto.prototype, "weight", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ enum: client_1.PrizeStatus, default: client_1.PrizeStatus.ACTIVE }), (0, class_validator_1.IsEnum)(client_1.PrizeStatus), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "status", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ description: "\u0648\u0636\u0639\u06CC\u062A \u0641\u0639\u0627\u0644 \u0628\u0648\u062F\u0646" }), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Boolean) ], CreatePrizeDto.prototype, "isActive", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: 1, default: 0, description: "\u062A\u0631\u062A\u06CC\u0628 \u0633\u06AF\u0645\u0646\u062A \u0631\u0648\u06CC \u06AF\u0631\u062F\u0648\u0646\u0647" }), (0, class_transformer_1.Type)(() => Number), (0, class_validator_1.IsInt)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Number) ], CreatePrizeDto.prototype, "sortOrder", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "#FF5733", description: "\u06A9\u062F \u0631\u0646\u06AF \u0633\u06AF\u0645\u0646\u062A \u062F\u0631 \u06AF\u0631\u062F\u0648\u0646\u0647 (\u0641\u0631\u0645\u062A \u0647\u06AF\u0632)" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "segmentColor", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "#FF5733", description: "\u06A9\u062F \u0631\u0646\u06AF (\u0646\u0627\u0645 \u0645\u0633\u062A\u0639\u0627\u0631)" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "color", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "#FFFFFF" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "textColor", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "2026-12-31T23:59:59.000Z", description: "\u062A\u0627\u0631\u06CC\u062E \u0627\u0646\u0642\u0636\u0627\u06CC \u06A9\u062F \u06CC\u0627 \u062C\u0627\u06CC\u0632\u0647" }), (0, class_transformer_1.Type)(() => Date), (0, class_validator_1.IsDate)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Date) ], CreatePrizeDto.prototype, "expiresAt", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "\u062A\u0628\u0631\u06CC\u06A9! \u0634\u0645\u0627 \u0628\u0631\u0646\u062F\u0647 {prize} \u0634\u062F\u06CC\u062F. \u06A9\u062F \u062C\u0627\u06CC\u0632\u0647: {code}" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], CreatePrizeDto.prototype, "smsTemplate", void 0); } }); // dist/src/modules/prize/dto/update-prize.dto.js var require_update_prize_dto = __commonJS({ "dist/src/modules/prize/dto/update-prize.dto.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UpdatePrizeDto = void 0; var swagger_12 = require_swagger(); var create_prize_dto_1 = require_create_prize_dto(); var UpdatePrizeDto = class extends (0, swagger_12.PartialType)(create_prize_dto_1.CreatePrizeDto) { static { __name(this, "UpdatePrizeDto"); } }; exports2.UpdatePrizeDto = UpdatePrizeDto; } }); // dist/src/modules/prize/dto/update-stock.dto.js var require_update_stock_dto = __commonJS({ "dist/src/modules/prize/dto/update-stock.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UpdateStockDto = void 0; var swagger_12 = require_swagger(); var class_validator_1 = require_cjs(); var UpdateStockDto = class { static { __name(this, "UpdateStockDto"); } }; exports2.UpdateStockDto = UpdateStockDto; __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: 10, description: "\u0645\u0648\u062C\u0648\u062F\u06CC \u062C\u062F\u06CC\u062F \u0628\u0627\u0642\u06CC\u200C\u0645\u0627\u0646\u062F\u0647 \u06CC\u0627 \u062A\u0639\u062F\u0627\u062F \u0627\u0641\u0632\u0648\u062F\u0647\u200C\u0634\u062F\u0647 \u0628\u0647 \u0645\u0648\u062C\u0648\u062F\u06CC" }), (0, class_validator_1.IsInt)({ message: "\u0645\u0648\u062C\u0648\u062F\u06CC \u0628\u0627\u06CC\u062F \u0639\u062F\u062F \u0635\u062D\u06CC\u062D \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Number) ], UpdateStockDto.prototype, "stock", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: 5, description: "\u062A\u063A\u06CC\u06CC\u0631 \u0645\u0648\u062C\u0648\u062F\u06CC (\u0645\u062B\u0628\u062A \u0628\u0631\u0627\u06CC \u0627\u0641\u0632\u0627\u06CC\u0634\u060C \u0645\u0646\u0641\u06CC \u0628\u0631\u0627\u06CC \u06A9\u0627\u0647\u0634)" }), (0, class_validator_1.IsInt)({ message: "\u062A\u063A\u06CC\u06CC\u0631 \u0645\u0648\u062C\u0648\u062F\u06CC \u0628\u0627\u06CC\u062F \u0639\u062F\u062F \u0635\u062D\u06CC\u062D \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsOptional)(), __metadata2("design:type", Number) ], UpdateStockDto.prototype, "change", void 0); __decorate2([ (0, swagger_12.ApiPropertyOptional)({ example: "\u0648\u0631\u0648\u062F \u0645\u062D\u0645\u0648\u0644\u0647 \u062C\u062F\u06CC\u062F \u0628\u0647 \u0627\u0646\u0628\u0627\u0631", description: "\u062F\u0644\u06CC\u0644 \u062A\u063A\u06CC\u06CC\u0631 \u0645\u0648\u062C\u0648\u062F\u06CC" }), (0, class_validator_1.IsString)(), (0, class_validator_1.IsOptional)(), __metadata2("design:type", String) ], UpdateStockDto.prototype, "reason", void 0); } }); // dist/src/modules/prize/prize.service.js var require_prize_service = __commonJS({ "dist/src/modules/prize/prize.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PrizeService = void 0; var common_12 = require_common(); var client_1 = require("@prisma/client"); var prisma_service_12 = require_prisma_service(); var PrizeService = class PrizeService { static { __name(this, "PrizeService"); } constructor(prisma) { this.prisma = prisma; } async create(campaignId, dto) { const campaign = await this.prisma.campaign.findUnique({ where: { id: campaignId } }); if (!campaign) { throw new common_12.NotFoundException("\u06A9\u0645\u067E\u06CC\u0646 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } if (dto.stockType === client_1.StockType.LIMITED && (!dto.initialStock || dto.initialStock <= 0)) { throw new common_12.BadRequestException("\u0628\u0631\u0627\u06CC \u062C\u0648\u0627\u06CC\u0632 \u0645\u062D\u062F\u0648\u062F\u060C \u0645\u0648\u062C\u0648\u062F\u06CC \u0627\u0648\u0644\u06CC\u0647 \u0628\u0627\u06CC\u062F \u0628\u0632\u0631\u06AF\u200C\u062A\u0631 \u0627\u0632 \u0635\u0641\u0631 \u0628\u0627\u0634\u062F."); } const initialStock = dto.stockType === client_1.StockType.LIMITED ? dto.initialStock : null; const remainingStock = dto.stockType === client_1.StockType.LIMITED ? dto.initialStock : null; let sortOrder = dto.sortOrder; if (sortOrder === void 0 || sortOrder === 0) { const maxOrder = await this.prisma.prize.findFirst({ where: { campaignId }, orderBy: { sortOrder: "desc" }, select: { sortOrder: true } }); sortOrder = (maxOrder?.sortOrder ?? 0) + 1; } const rawType = dto.type || dto.prizeType; let type = "DISCOUNT_CODE"; if (rawType === "WALLET_CREDIT") type = "CREDIT"; else if (rawType === "CHANCE") type = "OTHER"; else if (rawType) type = rawType; const segmentColor = dto.segmentColor || dto.color || "#3880ff"; const description = dto.description ?? dto.subtitle ?? null; const image = dto.image ?? dto.iconUrl ?? null; let status = dto.status || "ACTIVE"; if (dto.isActive !== void 0) { status = dto.isActive ? "ACTIVE" : "INACTIVE"; } return this.prisma.prize.create({ data: { campaignId, title: dto.title, description, image, type, stockType: dto.stockType, initialStock, remainingStock, weight: dto.weight, status, sortOrder, segmentColor, expiresAt: dto.expiresAt, smsTemplate: dto.smsTemplate } }); } async findByCampaign(campaignId) { return this.prisma.prize.findMany({ where: { campaignId }, orderBy: { sortOrder: "asc" }, include: { _count: { select: { spins: true, userPrizes: true } } } }); } async findOne(id) { const prize = await this.prisma.prize.findUnique({ where: { id }, include: { campaign: { select: { id: true, title: true, slug: true } }, _count: { select: { spins: true, userPrizes: true } } } }); if (!prize) { throw new common_12.NotFoundException("\u062C\u0627\u06CC\u0632\u0647 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } return prize; } async update(id, dto) { const prize = await this.findOne(id); const data = {}; if (dto.title !== void 0) data.title = dto.title; if (dto.description !== void 0 || dto.subtitle !== void 0) { data.description = dto.description ?? dto.subtitle; } if (dto.image !== void 0 || dto.iconUrl !== void 0) { data.image = dto.image ?? dto.iconUrl; } if (dto.type !== void 0 || dto.prizeType !== void 0) { const rawType = dto.type || dto.prizeType; if (rawType === "WALLET_CREDIT") data.type = "CREDIT"; else if (rawType === "CHANCE") data.type = "OTHER"; else if (rawType) data.type = rawType; } if (dto.segmentColor !== void 0 || dto.color !== void 0) { data.segmentColor = dto.segmentColor ?? dto.color; } if (dto.weight !== void 0) data.weight = dto.weight; if (dto.sortOrder !== void 0) data.sortOrder = dto.sortOrder; if (dto.expiresAt !== void 0) data.expiresAt = dto.expiresAt; if (dto.smsTemplate !== void 0) data.smsTemplate = dto.smsTemplate; if (dto.status !== void 0) data.status = dto.status; else if (dto.isActive !== void 0) { data.status = dto.isActive ? "ACTIVE" : "INACTIVE"; } if (dto.stockType === client_1.StockType.UNLIMITED) { data.stockType = client_1.StockType.UNLIMITED; data.initialStock = null; data.remainingStock = null; } else if (dto.stockType === client_1.StockType.LIMITED) { data.stockType = client_1.StockType.LIMITED; if (prize.stockType === client_1.StockType.UNLIMITED && !dto.initialStock) { throw new common_12.BadRequestException("\u0628\u0631\u0627\u06CC \u062A\u063A\u06CC\u06CC\u0631 \u0648\u0636\u0639\u06CC\u062A \u0645\u0648\u062C\u0648\u062F\u06CC \u0628\u0647 \u0645\u062D\u062F\u0648\u062F\u060C \u062A\u0639\u06CC\u06CC\u0646 \u0645\u0648\u062C\u0648\u062F\u06CC \u0627\u0648\u0644\u06CC\u0647 \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A."); } if (dto.initialStock !== void 0) { data.initialStock = dto.initialStock; if (dto.remainingStock === void 0) { const diff = (dto.initialStock ?? 0) - (prize.initialStock ?? 0); data.remainingStock = Math.max(0, (prize.remainingStock ?? 0) + diff); } } if (dto.remainingStock !== void 0) { data.remainingStock = dto.remainingStock; } } return this.prisma.prize.update({ where: { id }, data }); } async updateStock(id, dto) { const prize = await this.findOne(id); if (prize.stockType === client_1.StockType.UNLIMITED) { throw new common_12.BadRequestException("\u0627\u06CC\u0646 \u062C\u0627\u06CC\u0632\u0647 \u062F\u0627\u0631\u0627\u06CC \u0645\u0648\u062C\u0648\u062F\u06CC \u0646\u0627\u0645\u062D\u062F\u0648\u062F \u0627\u0633\u062A."); } let newStock = prize.remainingStock ?? 0; if (dto.stock !== void 0) { newStock = dto.stock; } else if (dto.change !== void 0) { newStock = Math.max(0, newStock + dto.change); } return this.prisma.prize.update({ where: { id }, data: { remainingStock: newStock, ...newStock > 0 && prize.status === "INACTIVE" ? { status: "ACTIVE" } : {} } }); } async remove(id) { const spinCount = await this.prisma.spin.count({ where: { prizeId: id } }); if (spinCount > 0) { throw new common_12.BadRequestException("\u0627\u06CC\u0646 \u062C\u0627\u06CC\u0632\u0647 \u0628\u0647 \u0628\u0631\u0646\u062F\u06AF\u0627\u0646 \u0642\u0628\u0644\u06CC \u062A\u0639\u0644\u0642 \u06AF\u0631\u0641\u062A\u0647 \u0648 \u062F\u0631 \u0633\u0648\u0627\u0628\u0642 \u0642\u0631\u0639\u0647\u200C\u06A9\u0634\u06CC \u062B\u0628\u062A \u0634\u062F\u0647 \u0627\u0633\u062A. \u0628\u0647\u200C\u062C\u0627\u06CC \u062D\u0630\u0641\u060C \u0648\u0636\u0639\u06CC\u062A \u0622\u0646 \u0631\u0627 \u063A\u06CC\u0631\u0641\u0639\u0627\u0644 (INACTIVE) \u06A9\u0646\u06CC\u062F."); } return this.prisma.prize.delete({ where: { id } }); } }; exports2.PrizeService = PrizeService; exports2.PrizeService = PrizeService = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [prisma_service_12.PrismaService]) ], PrizeService); } }); // dist/src/modules/prize/admin-prize.controller.js var require_admin_prize_controller = __commonJS({ "dist/src/modules/prize/admin-prize.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminPrizeController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var jwt_admin_guard_1 = require_jwt_admin_guard(); var audit_interceptor_1 = require_audit_interceptor(); var create_prize_dto_1 = require_create_prize_dto(); var update_prize_dto_1 = require_update_prize_dto(); var update_stock_dto_1 = require_update_stock_dto(); var prize_service_1 = require_prize_service(); var AdminPrizeController = class AdminPrizeController { static { __name(this, "AdminPrizeController"); } constructor(prizeService) { this.prizeService = prizeService; } async create(campaignId, dto) { return this.prizeService.create(campaignId, dto); } async findByCampaign(campaignId) { return this.prizeService.findByCampaign(campaignId); } async findOne(id) { return this.prizeService.findOne(id); } async update(id, dto) { return this.prizeService.update(id, dto); } async updateStock(id, dto) { return this.prizeService.updateStock(id, dto); } async remove(id) { return this.prizeService.remove(id); } }; exports2.AdminPrizeController = AdminPrizeController; __decorate2([ (0, common_12.Post)("campaigns/:campaignId/prizes"), (0, swagger_12.ApiOperation)({ summary: "\u0627\u06CC\u062C\u0627\u062F \u062C\u0627\u06CC\u0632\u0647 \u062C\u062F\u06CC\u062F \u0628\u0631\u0627\u06CC \u06CC\u06A9 \u06A9\u0645\u067E\u06CC\u0646" }), (0, swagger_12.ApiResponse)({ status: 201, description: "\u062C\u0627\u06CC\u0632\u0647 \u0628\u0627 \u0645\u0648\u0641\u0642\u06CC\u062A \u0628\u0647 \u06A9\u0645\u067E\u06CC\u0646 \u0627\u0636\u0627\u0641\u0647 \u0634\u062F" }), __param2(0, (0, common_12.Param)("campaignId")), __param2(1, (0, common_12.Body)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String, create_prize_dto_1.CreatePrizeDto]), __metadata2("design:returntype", Promise) ], AdminPrizeController.prototype, "create", null); __decorate2([ (0, common_12.Get)("campaigns/:campaignId/prizes"), (0, swagger_12.ApiOperation)({ summary: "\u0644\u06CC\u0633\u062A \u062A\u0645\u0627\u0645 \u062C\u0648\u0627\u06CC\u0632 \u062A\u0639\u0631\u06CC\u0641\u200C\u0634\u062F\u0647 \u0628\u0631\u0627\u06CC \u06CC\u06A9 \u06A9\u0645\u067E\u06CC\u0646" }), __param2(0, (0, common_12.Param)("campaignId")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], AdminPrizeController.prototype, "findByCampaign", null); __decorate2([ (0, common_12.Get)("prizes/:id"), (0, swagger_12.ApiOperation)({ summary: "\u062F\u0631\u06CC\u0627\u0641\u062A \u0645\u0634\u062E\u0635\u0627\u062A \u06A9\u0627\u0645\u0644 \u06CC\u06A9 \u062C\u0627\u06CC\u0632\u0647" }), __param2(0, (0, common_12.Param)("id")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], AdminPrizeController.prototype, "findOne", null); __decorate2([ (0, common_12.Patch)("prizes/:id"), (0, common_12.Put)("prizes/:id"), (0, swagger_12.ApiOperation)({ summary: "\u0648\u06CC\u0631\u0627\u06CC\u0634 \u0627\u0637\u0644\u0627\u0639\u0627\u062A \u0648 \u0648\u0632\u0646 \u062C\u0627\u06CC\u0632\u0647" }), __param2(0, (0, common_12.Param)("id")), __param2(1, (0, common_12.Body)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String, update_prize_dto_1.UpdatePrizeDto]), __metadata2("design:returntype", Promise) ], AdminPrizeController.prototype, "update", null); __decorate2([ (0, common_12.Patch)("prizes/:id/stock"), (0, swagger_12.ApiOperation)({ summary: "\u0634\u0627\u0631\u0698 \u06CC\u0627 \u0627\u0635\u0644\u0627\u062D \u062F\u0633\u062A\u06CC \u0645\u0648\u062C\u0648\u062F\u06CC \u062C\u0627\u06CC\u0632\u0647" }), __param2(0, (0, common_12.Param)("id")), __param2(1, (0, common_12.Body)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String, update_stock_dto_1.UpdateStockDto]), __metadata2("design:returntype", Promise) ], AdminPrizeController.prototype, "updateStock", null); __decorate2([ (0, common_12.Delete)("prizes/:id"), (0, swagger_12.ApiOperation)({ summary: "\u062D\u0630\u0641 \u062C\u0627\u06CC\u0632\u0647 (\u062F\u0631 \u0635\u0648\u0631\u062A \u0639\u062F\u0645 \u062B\u0628\u062A \u062F\u0631 \u0646\u062A\u0627\u06CC\u062C \u0642\u0631\u0639\u0647\u200C\u06A9\u0634\u06CC)" }), __param2(0, (0, common_12.Param)("id")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], AdminPrizeController.prototype, "remove", null); exports2.AdminPrizeController = AdminPrizeController = __decorate2([ (0, swagger_12.ApiTags)("Admin Prizes (\u0645\u062F\u06CC\u0631\u06CC\u062A \u062C\u0648\u0627\u06CC\u0632)"), (0, common_12.Controller)("admin"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, common_12.UseInterceptors)(audit_interceptor_1.AuditInterceptor), (0, swagger_12.ApiBearerAuth)("AdminAuth"), __metadata2("design:paramtypes", [prize_service_1.PrizeService]) ], AdminPrizeController); } }); // dist/src/modules/prize/prize.module.js var require_prize_module = __commonJS({ "dist/src/modules/prize/prize.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PrizeModule = void 0; var common_12 = require_common(); var admin_prize_controller_1 = require_admin_prize_controller(); var prize_service_1 = require_prize_service(); var PrizeModule = class PrizeModule { static { __name(this, "PrizeModule"); } }; exports2.PrizeModule = PrizeModule; exports2.PrizeModule = PrizeModule = __decorate2([ (0, common_12.Module)({ controllers: [admin_prize_controller_1.AdminPrizeController], providers: [prize_service_1.PrizeService], exports: [prize_service_1.PrizeService] }) ], PrizeModule); } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/under-dash.js var require_under_dash = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/under-dash.js"(exports2, module2) { var { toString: toString2 } = Object.prototype; var escapeHtmlRegex = /["&<>]/; var _2 = { each: /* @__PURE__ */ __name(function each(obj2, cb) { if (obj2) { if (Array.isArray(obj2)) { obj2.forEach(cb); } else { Object.keys(obj2).forEach((key) => { cb(obj2[key], key); }); } } }, "each"), some: /* @__PURE__ */ __name(function some(obj2, cb) { if (obj2) { if (Array.isArray(obj2)) { return obj2.some(cb); } return Object.keys(obj2).some((key) => cb(obj2[key], key)); } return false; }, "some"), every: /* @__PURE__ */ __name(function every(obj2, cb) { if (obj2) { if (Array.isArray(obj2)) { return obj2.every(cb); } return Object.keys(obj2).every((key) => cb(obj2[key], key)); } return true; }, "every"), map: /* @__PURE__ */ __name(function map(obj2, cb) { if (obj2) { if (Array.isArray(obj2)) { return obj2.map(cb); } return Object.keys(obj2).map((key) => cb(obj2[key], key)); } return []; }, "map"), keyBy(a, p) { return a.reduce((o, v) => { o[v[p]] = v; return o; }, {}); }, isEqual: /* @__PURE__ */ __name(function isEqual(a, b) { const aType = typeof a; const bType = typeof b; const aArray = Array.isArray(a); const bArray = Array.isArray(b); let keys; if (aType !== bType) { return false; } switch (typeof a) { case "object": if (aArray || bArray) { if (aArray && bArray) { return a.length === b.length && a.every((aValue, index) => { const bValue = b[index]; return _2.isEqual(aValue, bValue); }); } return false; } if (a === null || b === null) { return a === b; } keys = Object.keys(a); if (Object.keys(b).length !== keys.length) { return false; } for (const key of keys) { if (!b.hasOwnProperty(key)) { return false; } } return _2.every(a, (aValue, key) => { const bValue = b[key]; return _2.isEqual(aValue, bValue); }); default: return a === b; } }, "isEqual"), escapeHtml(html) { const regexResult = escapeHtmlRegex.exec(html); if (!regexResult) return html; let result = ""; let escape2 = ""; let lastIndex = 0; let i = regexResult.index; for (; i < html.length; i++) { switch (html.charAt(i)) { case '"': escape2 = """; break; case "&": escape2 = "&"; break; case "'": escape2 = "'"; break; case "<": escape2 = "<"; break; case ">": escape2 = ">"; break; default: continue; } if (lastIndex !== i) result += html.substring(lastIndex, i); lastIndex = i + 1; result += escape2; } if (lastIndex !== i) return result + html.substring(lastIndex, i); return result; }, strcmp(a, b) { if (a < b) return -1; if (a > b) return 1; return 0; }, isUndefined(val) { return toString2.call(val) === "[object Undefined]"; }, isObject(val) { return toString2.call(val) === "[object Object]"; }, deepMerge() { const target = arguments[0] || {}; const { length } = arguments; let src, clone, copyIsArray; function assignValue(val, key) { src = target[key]; copyIsArray = Array.isArray(val); if (_2.isObject(val) || copyIsArray) { if (copyIsArray) { copyIsArray = false; clone = src && Array.isArray(src) ? src : []; } else { clone = src && _2.isObject(src) ? src : {}; } target[key] = _2.deepMerge(clone, val); } else if (!_2.isUndefined(val)) { target[key] = val; } } __name(assignValue, "assignValue"); for (let i = 0; i < length; i++) { _2.each(arguments[i], assignValue); } return target; } }; module2.exports = _2; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/col-cache.js var require_col_cache = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/col-cache.js"(exports2, module2) { var addressRegex = /^[A-Z]+\d+$/; var colCache = { _dictionary: [ "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" ], _l2nFill: 0, _l2n: {}, _n2l: [], _level(n) { if (n <= 26) { return 1; } if (n <= 26 * 26) { return 2; } return 3; }, _fill(level) { let c; let v; let l1; let l2; let l3; let n = 1; if (level >= 4) { throw new Error("Out of bounds. Excel supports columns from 1 to 16384"); } if (this._l2nFill < 1 && level >= 1) { while (n <= 26) { c = this._dictionary[n - 1]; this._n2l[n] = c; this._l2n[c] = n; n++; } this._l2nFill = 1; } if (this._l2nFill < 2 && level >= 2) { n = 27; while (n <= 26 + 26 * 26) { v = n - (26 + 1); l1 = v % 26; l2 = Math.floor(v / 26); c = this._dictionary[l2] + this._dictionary[l1]; this._n2l[n] = c; this._l2n[c] = n; n++; } this._l2nFill = 2; } if (this._l2nFill < 3 && level >= 3) { n = 26 + 26 * 26 + 1; while (n <= 16384) { v = n - (26 * 26 + 26 + 1); l1 = v % 26; l2 = Math.floor(v / 26) % 26; l3 = Math.floor(v / (26 * 26)); c = this._dictionary[l3] + this._dictionary[l2] + this._dictionary[l1]; this._n2l[n] = c; this._l2n[c] = n; n++; } this._l2nFill = 3; } }, l2n(l2) { if (!this._l2n[l2]) { this._fill(l2.length); } if (!this._l2n[l2]) { throw new Error(`Out of bounds. Invalid column letter: ${l2}`); } return this._l2n[l2]; }, n2l(n) { if (n < 1 || n > 16384) { throw new Error(`${n} is out of bounds. Excel supports columns from 1 to 16384`); } if (!this._n2l[n]) { this._fill(this._level(n)); } return this._n2l[n]; }, // ========================================================================= // Address processing _hash: {}, // check if value looks like an address validateAddress(value) { if (!addressRegex.test(value)) { throw new Error(`Invalid Address: ${value}`); } return true; }, // convert address string into structure decodeAddress(value) { const addr = value.length < 5 && this._hash[value]; if (addr) { return addr; } let hasCol = false; let col = ""; let colNumber = 0; let hasRow = false; let row = ""; let rowNumber = 0; for (let i = 0, char; i < value.length; i++) { char = value.charCodeAt(i); if (!hasRow && char >= 65 && char <= 90) { hasCol = true; col += value[i]; colNumber = colNumber * 26 + char - 64; } else if (char >= 48 && char <= 57) { hasRow = true; row += value[i]; rowNumber = rowNumber * 10 + char - 48; } else if (hasRow && hasCol && char !== 36) { break; } } if (!hasCol) { colNumber = void 0; } else if (colNumber > 16384) { throw new Error(`Out of bounds. Invalid column letter: ${col}`); } if (!hasRow) { rowNumber = void 0; } value = col + row; const address = { address: value, col: colNumber, row: rowNumber, $col$row: `$${col}$${row}` }; if (colNumber <= 100 && rowNumber <= 100) { this._hash[value] = address; this._hash[address.$col$row] = address; } return address; }, // convert r,c into structure (if only 1 arg, assume r is address string) getAddress(r, c) { if (c) { const address = this.n2l(c) + r; return this.decodeAddress(address); } return this.decodeAddress(r); }, // convert [address], [tl:br] into address structures decode(value) { const parts = value.split(":"); if (parts.length === 2) { const tl = this.decodeAddress(parts[0]); const br = this.decodeAddress(parts[1]); const result = { top: Math.min(tl.row, br.row), left: Math.min(tl.col, br.col), bottom: Math.max(tl.row, br.row), right: Math.max(tl.col, br.col) }; result.tl = this.n2l(result.left) + result.top; result.br = this.n2l(result.right) + result.bottom; result.dimensions = `${result.tl}:${result.br}`; return result; } return this.decodeAddress(value); }, // convert [sheetName!][$]col[$]row[[$]col[$]row] into address or range structures decodeEx(value) { const groups = value.match(/(?:(?:(?:'((?:[^']|'')*)')|([^'^ !]*))!)?(.*)/); const sheetName = groups[1] || groups[2]; const reference = groups[3]; const parts = reference.split(":"); if (parts.length > 1) { let tl = this.decodeAddress(parts[0]); let br = this.decodeAddress(parts[1]); const top = Math.min(tl.row, br.row); const left = Math.min(tl.col, br.col); const bottom = Math.max(tl.row, br.row); const right = Math.max(tl.col, br.col); tl = this.n2l(left) + top; br = this.n2l(right) + bottom; return { top, left, bottom, right, sheetName, tl: { address: tl, col: left, row: top, $col$row: `$${this.n2l(left)}$${top}`, sheetName }, br: { address: br, col: right, row: bottom, $col$row: `$${this.n2l(right)}$${bottom}`, sheetName }, dimensions: `${tl}:${br}` }; } if (reference.startsWith("#")) { return sheetName ? { sheetName, error: reference } : { error: reference }; } const address = this.decodeAddress(reference); return sheetName ? { sheetName, ...address } : address; }, // convert row,col into address string encodeAddress(row, col) { return colCache.n2l(col) + row; }, // convert row,col into string address or t,l,b,r into range encode() { switch (arguments.length) { case 2: return colCache.encodeAddress(arguments[0], arguments[1]); case 4: return `${colCache.encodeAddress(arguments[0], arguments[1])}:${colCache.encodeAddress( arguments[2], arguments[3] )}`; default: throw new Error("Can only encode with 2 or 4 arguments"); } }, // return true if address is contained within range inRange(range, address) { const [left, top, , right, bottom] = range; const [col, row] = address; return col >= left && col <= right && row >= top && row <= bottom; } }; module2.exports = colCache; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/range.js var require_range4 = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/range.js"(exports2, module2) { var colCache = require_col_cache(); var Range = class _Range { static { __name(this, "Range"); } constructor() { this.decode(arguments); } setTLBR(t, l2, b, r, s) { if (arguments.length < 4) { const tl = colCache.decodeAddress(t); const br = colCache.decodeAddress(l2); this.model = { top: Math.min(tl.row, br.row), left: Math.min(tl.col, br.col), bottom: Math.max(tl.row, br.row), right: Math.max(tl.col, br.col), sheetName: b }; this.setTLBR(tl.row, tl.col, br.row, br.col, s); } else { this.model = { top: Math.min(t, b), left: Math.min(l2, r), bottom: Math.max(t, b), right: Math.max(l2, r), sheetName: s }; } } decode(argv) { switch (argv.length) { case 5: this.setTLBR(argv[0], argv[1], argv[2], argv[3], argv[4]); break; case 4: this.setTLBR(argv[0], argv[1], argv[2], argv[3]); break; case 3: this.setTLBR(argv[0], argv[1], argv[2]); break; case 2: this.setTLBR(argv[0], argv[1]); break; case 1: { const value = argv[0]; if (value instanceof _Range) { this.model = { top: value.model.top, left: value.model.left, bottom: value.model.bottom, right: value.model.right, sheetName: value.sheetName }; } else if (value instanceof Array) { this.decode(value); } else if (value.top && value.left && value.bottom && value.right) { this.model = { top: value.top, left: value.left, bottom: value.bottom, right: value.right, sheetName: value.sheetName }; } else { const tlbr = colCache.decodeEx(value); if (tlbr.top) { this.model = { top: tlbr.top, left: tlbr.left, bottom: tlbr.bottom, right: tlbr.right, sheetName: tlbr.sheetName }; } else { this.model = { top: tlbr.row, left: tlbr.col, bottom: tlbr.row, right: tlbr.col, sheetName: tlbr.sheetName }; } } break; } case 0: this.model = { top: 0, left: 0, bottom: 0, right: 0 }; break; default: throw new Error(`Invalid number of arguments to _getDimensions() - ${argv.length}`); } } get top() { return this.model.top || 1; } set top(value) { this.model.top = value; } get left() { return this.model.left || 1; } set left(value) { this.model.left = value; } get bottom() { return this.model.bottom || 1; } set bottom(value) { this.model.bottom = value; } get right() { return this.model.right || 1; } set right(value) { this.model.right = value; } get sheetName() { return this.model.sheetName; } set sheetName(value) { this.model.sheetName = value; } get _serialisedSheetName() { const { sheetName } = this.model; if (sheetName) { if (/^[a-zA-Z0-9]*$/.test(sheetName)) { return `${sheetName}!`; } return `'${sheetName}'!`; } return ""; } expand(top, left, bottom, right) { if (!this.model.top || top < this.top) this.top = top; if (!this.model.left || left < this.left) this.left = left; if (!this.model.bottom || bottom > this.bottom) this.bottom = bottom; if (!this.model.right || right > this.right) this.right = right; } expandRow(row) { if (row) { const { dimensions, number } = row; if (dimensions) { this.expand(number, dimensions.min, number, dimensions.max); } } } expandToAddress(addressStr) { const address = colCache.decodeEx(addressStr); this.expand(address.row, address.col, address.row, address.col); } get tl() { return colCache.n2l(this.left) + this.top; } get $t$l() { return `$${colCache.n2l(this.left)}$${this.top}`; } get br() { return colCache.n2l(this.right) + this.bottom; } get $b$r() { return `$${colCache.n2l(this.right)}$${this.bottom}`; } get range() { return `${this._serialisedSheetName + this.tl}:${this.br}`; } get $range() { return `${this._serialisedSheetName + this.$t$l}:${this.$b$r}`; } get shortRange() { return this.count > 1 ? this.range : this._serialisedSheetName + this.tl; } get $shortRange() { return this.count > 1 ? this.$range : this._serialisedSheetName + this.$t$l; } get count() { return (1 + this.bottom - this.top) * (1 + this.right - this.left); } toString() { return this.range; } intersects(other) { if (other.sheetName && this.sheetName && other.sheetName !== this.sheetName) return false; if (other.bottom < this.top) return false; if (other.top > this.bottom) return false; if (other.right < this.left) return false; if (other.left > this.right) return false; return true; } contains(addressStr) { const address = colCache.decodeEx(addressStr); return this.containsEx(address); } containsEx(address) { if (address.sheetName && this.sheetName && address.sheetName !== this.sheetName) return false; return address.row >= this.top && address.row <= this.bottom && address.col >= this.left && address.col <= this.right; } forEachAddress(cb) { for (let col = this.left; col <= this.right; col++) { for (let row = this.top; row <= this.bottom; row++) { cb(colCache.encodeAddress(row, col), row, col); } } } }; module2.exports = Range; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/enums.js var require_enums5 = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/enums.js"(exports2, module2) { "use strict"; module2.exports = { ValueType: { Null: 0, Merge: 1, Number: 2, String: 3, Date: 4, Hyperlink: 5, Formula: 6, SharedString: 7, RichText: 8, Boolean: 9, Error: 10 }, FormulaType: { None: 0, Master: 1, Shared: 2 }, RelationshipType: { None: 0, OfficeDocument: 1, Worksheet: 2, CalcChain: 3, SharedStrings: 4, Styles: 5, Theme: 6, Hyperlink: 7 }, DocumentType: { Xlsx: 1 }, ReadingOrder: { LeftToRight: 1, RightToLeft: 2 }, ErrorValue: { NotApplicable: "#N/A", Ref: "#REF!", Name: "#NAME?", DivZero: "#DIV/0!", Null: "#NULL!", Value: "#VALUE!", Num: "#NUM!" } }; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/shared-formula.js var require_shared_formula = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/shared-formula.js"(exports2, module2) { var colCache = require_col_cache(); var replacementCandidateRx = /(([a-z_\-0-9]*)!)?([a-z0-9_$]{2,})([(])?/gi; var CRrx = /^([$])?([a-z]+)([$])?([1-9][0-9]*)$/i; function slideFormula(formula, fromCell, toCell) { const offset = colCache.decode(fromCell); const to = colCache.decode(toCell); return formula.replace( replacementCandidateRx, (refMatch, sheet, sheetMaybe, addrPart, trailingParen) => { if (trailingParen) { return refMatch; } const match = CRrx.exec(addrPart); if (match) { const colDollar = match[1]; const colStr = match[2].toUpperCase(); const rowDollar = match[3]; const rowStr = match[4]; if (colStr.length > 3 || colStr.length === 3 && colStr > "XFD") { return refMatch; } let col = colCache.l2n(colStr); let row = parseInt(rowStr, 10); if (!colDollar) { col += to.col - offset.col; } if (!rowDollar) { row += to.row - offset.row; } const res = (sheet || "") + (colDollar || "") + colCache.n2l(col) + (rowDollar || "") + row; return res; } return refMatch; } ); } __name(slideFormula, "slideFormula"); module2.exports = { slideFormula }; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/note.js var require_note = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/note.js"(exports2, module2) { var _2 = require_under_dash(); var Note = class _Note { static { __name(this, "Note"); } constructor(note) { this.note = note; } get model() { let value = null; switch (typeof this.note) { case "string": value = { type: "note", note: { texts: [ { text: this.note } ] } }; break; default: value = { type: "note", note: this.note }; break; } return _2.deepMerge({}, _Note.DEFAULT_CONFIGS, value); } set model(value) { const { note } = value; const { texts } = note; if (texts.length === 1 && Object.keys(texts[0]).length === 1) { this.note = texts[0].text; } else { this.note = note; } } static fromModel(model) { const note = new _Note(); note.model = model; return note; } }; Note.DEFAULT_CONFIGS = { note: { margins: { insetmode: "auto", inset: [0.13, 0.13, 0.25, 0.25] }, protection: { locked: "True", lockText: "True" }, editAs: "absolute" } }; module2.exports = Note; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/cell.js var require_cell = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/cell.js"(exports2, module2) { var colCache = require_col_cache(); var _2 = require_under_dash(); var Enums = require_enums5(); var { slideFormula } = require_shared_formula(); var Note = require_note(); var Cell = class _Cell { static { __name(this, "Cell"); } constructor(row, column, address) { if (!row || !column) { throw new Error("A Cell needs a Row"); } this._row = row; this._column = column; colCache.validateAddress(address); this._address = address; this._value = Value.create(_Cell.Types.Null, this); this.style = this._mergeStyle(row.style, column.style, {}); this._mergeCount = 0; } get worksheet() { return this._row.worksheet; } get workbook() { return this._row.worksheet.workbook; } // help GC by removing cyclic (and other) references destroy() { delete this.style; delete this._value; delete this._row; delete this._column; delete this._address; } // ========================================================================= // Styles stuff get numFmt() { return this.style.numFmt; } set numFmt(value) { this.style.numFmt = value; } get font() { return this.style.font; } set font(value) { this.style.font = value; } get alignment() { return this.style.alignment; } set alignment(value) { this.style.alignment = value; } get border() { return this.style.border; } set border(value) { this.style.border = value; } get fill() { return this.style.fill; } set fill(value) { this.style.fill = value; } get protection() { return this.style.protection; } set protection(value) { this.style.protection = value; } _mergeStyle(rowStyle, colStyle, style) { const numFmt = rowStyle && rowStyle.numFmt || colStyle && colStyle.numFmt; if (numFmt) style.numFmt = numFmt; const font = rowStyle && rowStyle.font || colStyle && colStyle.font; if (font) style.font = font; const alignment = rowStyle && rowStyle.alignment || colStyle && colStyle.alignment; if (alignment) style.alignment = alignment; const border = rowStyle && rowStyle.border || colStyle && colStyle.border; if (border) style.border = border; const fill = rowStyle && rowStyle.fill || colStyle && colStyle.fill; if (fill) style.fill = fill; const protection = rowStyle && rowStyle.protection || colStyle && colStyle.protection; if (protection) style.protection = protection; return style; } // ========================================================================= // return the address for this cell get address() { return this._address; } get row() { return this._row.number; } get col() { return this._column.number; } get $col$row() { return `$${this._column.letter}$${this.row}`; } // ========================================================================= // Value stuff get type() { return this._value.type; } get effectiveType() { return this._value.effectiveType; } toCsvString() { return this._value.toCsvString(); } // ========================================================================= // Merge stuff addMergeRef() { this._mergeCount++; } releaseMergeRef() { this._mergeCount--; } get isMerged() { return this._mergeCount > 0 || this.type === _Cell.Types.Merge; } merge(master, ignoreStyle) { this._value.release(); this._value = Value.create(_Cell.Types.Merge, this, master); if (!ignoreStyle) { this.style = master.style; } } unmerge() { if (this.type === _Cell.Types.Merge) { this._value.release(); this._value = Value.create(_Cell.Types.Null, this); this.style = this._mergeStyle(this._row.style, this._column.style, {}); } } isMergedTo(master) { if (this._value.type !== _Cell.Types.Merge) return false; return this._value.isMergedTo(master); } get master() { if (this.type === _Cell.Types.Merge) { return this._value.master; } return this; } get isHyperlink() { return this._value.type === _Cell.Types.Hyperlink; } get hyperlink() { return this._value.hyperlink; } // return the value get value() { return this._value.value; } // set the value - can be number, string or raw set value(v) { if (this.type === _Cell.Types.Merge) { this._value.master.value = v; return; } this._value.release(); this._value = Value.create(Value.getType(v), this, v); } get note() { return this._comment && this._comment.note; } set note(note) { this._comment = new Note(note); } get text() { return this._value.toString(); } get html() { return _2.escapeHtml(this.text); } toString() { return this.text; } _upgradeToHyperlink(hyperlink) { if (this.type === _Cell.Types.String) { this._value = Value.create(_Cell.Types.Hyperlink, this, { text: this._value.value, hyperlink }); } } // ========================================================================= // Formula stuff get formula() { return this._value.formula; } get result() { return this._value.result; } get formulaType() { return this._value.formulaType; } // ========================================================================= // Name stuff get fullAddress() { const { worksheet } = this._row; return { sheetName: worksheet.name, address: this.address, row: this.row, col: this.col }; } get name() { return this.names[0]; } set name(value) { this.names = [value]; } get names() { return this.workbook.definedNames.getNamesEx(this.fullAddress); } set names(value) { const { definedNames } = this.workbook; definedNames.removeAllNames(this.fullAddress); value.forEach((name) => { definedNames.addEx(this.fullAddress, name); }); } addName(name) { this.workbook.definedNames.addEx(this.fullAddress, name); } removeName(name) { this.workbook.definedNames.removeEx(this.fullAddress, name); } removeAllNames() { this.workbook.definedNames.removeAllNames(this.fullAddress); } // ========================================================================= // Data Validation stuff get _dataValidations() { return this.worksheet.dataValidations; } get dataValidation() { return this._dataValidations.find(this.address); } set dataValidation(value) { this._dataValidations.add(this.address, value); } // ========================================================================= // Model stuff get model() { const { model } = this._value; model.style = this.style; if (this._comment) { model.comment = this._comment.model; } return model; } set model(value) { this._value.release(); this._value = Value.create(value.type, this); this._value.model = value; if (value.comment) { switch (value.comment.type) { case "note": this._comment = Note.fromModel(value.comment); break; } } if (value.style) { this.style = value.style; } else { this.style = {}; } } }; Cell.Types = Enums.ValueType; var NullValue = class { static { __name(this, "NullValue"); } constructor(cell) { this.model = { address: cell.address, type: Cell.Types.Null }; } get value() { return null; } set value(value) { } get type() { return Cell.Types.Null; } get effectiveType() { return Cell.Types.Null; } get address() { return this.model.address; } set address(value) { this.model.address = value; } toCsvString() { return ""; } release() { } toString() { return ""; } }; var NumberValue = class { static { __name(this, "NumberValue"); } constructor(cell, value) { this.model = { address: cell.address, type: Cell.Types.Number, value }; } get value() { return this.model.value; } set value(value) { this.model.value = value; } get type() { return Cell.Types.Number; } get effectiveType() { return Cell.Types.Number; } get address() { return this.model.address; } set address(value) { this.model.address = value; } toCsvString() { return this.model.value.toString(); } release() { } toString() { return this.model.value.toString(); } }; var StringValue = class { static { __name(this, "StringValue"); } constructor(cell, value) { this.model = { address: cell.address, type: Cell.Types.String, value }; } get value() { return this.model.value; } set value(value) { this.model.value = value; } get type() { return Cell.Types.String; } get effectiveType() { return Cell.Types.String; } get address() { return this.model.address; } set address(value) { this.model.address = value; } toCsvString() { return `"${this.model.value.replace(/"/g, '""')}"`; } release() { } toString() { return this.model.value; } }; var RichTextValue = class { static { __name(this, "RichTextValue"); } constructor(cell, value) { this.model = { address: cell.address, type: Cell.Types.String, value }; } get value() { return this.model.value; } set value(value) { this.model.value = value; } toString() { return this.model.value.richText.map((t) => t.text).join(""); } get type() { return Cell.Types.RichText; } get effectiveType() { return Cell.Types.RichText; } get address() { return this.model.address; } set address(value) { this.model.address = value; } toCsvString() { return `"${this.text.replace(/"/g, '""')}"`; } release() { } }; var DateValue = class { static { __name(this, "DateValue"); } constructor(cell, value) { this.model = { address: cell.address, type: Cell.Types.Date, value }; } get value() { return this.model.value; } set value(value) { this.model.value = value; } get type() { return Cell.Types.Date; } get effectiveType() { return Cell.Types.Date; } get address() { return this.model.address; } set address(value) { this.model.address = value; } toCsvString() { return this.model.value.toISOString(); } release() { } toString() { return this.model.value.toString(); } }; var HyperlinkValue = class { static { __name(this, "HyperlinkValue"); } constructor(cell, value) { this.model = { address: cell.address, type: Cell.Types.Hyperlink, text: value ? value.text : void 0, hyperlink: value ? value.hyperlink : void 0 }; if (value && value.tooltip) { this.model.tooltip = value.tooltip; } } get value() { const v = { text: this.model.text, hyperlink: this.model.hyperlink }; if (this.model.tooltip) { v.tooltip = this.model.tooltip; } return v; } set value(value) { this.model = { text: value.text, hyperlink: value.hyperlink }; if (value.tooltip) { this.model.tooltip = value.tooltip; } } get text() { return this.model.text; } set text(value) { this.model.text = value; } /* get tooltip() { return this.model.tooltip; } set tooltip(value) { this.model.tooltip = value; } */ get hyperlink() { return this.model.hyperlink; } set hyperlink(value) { this.model.hyperlink = value; } get type() { return Cell.Types.Hyperlink; } get effectiveType() { return Cell.Types.Hyperlink; } get address() { return this.model.address; } set address(value) { this.model.address = value; } toCsvString() { return this.model.hyperlink; } release() { } toString() { return this.model.text; } }; var MergeValue = class { static { __name(this, "MergeValue"); } constructor(cell, master) { this.model = { address: cell.address, type: Cell.Types.Merge, master: master ? master.address : void 0 }; this._master = master; if (master) { master.addMergeRef(); } } get value() { return this._master.value; } set value(value) { if (value instanceof Cell) { if (this._master) { this._master.releaseMergeRef(); } value.addMergeRef(); this._master = value; } else { this._master.value = value; } } isMergedTo(master) { return master === this._master; } get master() { return this._master; } get type() { return Cell.Types.Merge; } get effectiveType() { return this._master.effectiveType; } get address() { return this.model.address; } set address(value) { this.model.address = value; } toCsvString() { return ""; } release() { this._master.releaseMergeRef(); } toString() { return this.value.toString(); } }; var FormulaValue = class { static { __name(this, "FormulaValue"); } constructor(cell, value) { this.cell = cell; this.model = { address: cell.address, type: Cell.Types.Formula, shareType: value ? value.shareType : void 0, ref: value ? value.ref : void 0, formula: value ? value.formula : void 0, sharedFormula: value ? value.sharedFormula : void 0, result: value ? value.result : void 0 }; } _copyModel(model) { const copy = {}; const cp = /* @__PURE__ */ __name((name) => { const value = model[name]; if (value) { copy[name] = value; } }, "cp"); cp("formula"); cp("result"); cp("ref"); cp("shareType"); cp("sharedFormula"); return copy; } get value() { return this._copyModel(this.model); } set value(value) { this.model = this._copyModel(value); } validate(value) { switch (Value.getType(value)) { case Cell.Types.Null: case Cell.Types.String: case Cell.Types.Number: case Cell.Types.Date: break; case Cell.Types.Hyperlink: case Cell.Types.Formula: default: throw new Error("Cannot process that type of result value"); } } get dependencies() { const ranges = this.formula.match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g); const cells = this.formula.replace(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g, "").match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}/g); return { ranges, cells }; } get formula() { return this.model.formula || this._getTranslatedFormula(); } set formula(value) { this.model.formula = value; } get formulaType() { if (this.model.formula) { return Enums.FormulaType.Master; } if (this.model.sharedFormula) { return Enums.FormulaType.Shared; } return Enums.FormulaType.None; } get result() { return this.model.result; } set result(value) { this.model.result = value; } get type() { return Cell.Types.Formula; } get effectiveType() { const v = this.model.result; if (v === null || v === void 0) { return Enums.ValueType.Null; } if (v instanceof String || typeof v === "string") { return Enums.ValueType.String; } if (typeof v === "number") { return Enums.ValueType.Number; } if (v instanceof Date) { return Enums.ValueType.Date; } if (v.text && v.hyperlink) { return Enums.ValueType.Hyperlink; } if (v.formula) { return Enums.ValueType.Formula; } return Enums.ValueType.Null; } get address() { return this.model.address; } set address(value) { this.model.address = value; } _getTranslatedFormula() { if (!this._translatedFormula && this.model.sharedFormula) { const { worksheet } = this.cell; const master = worksheet.findCell(this.model.sharedFormula); this._translatedFormula = master && slideFormula(master.formula, master.address, this.model.address); } return this._translatedFormula; } toCsvString() { return `${this.model.result || ""}`; } release() { } toString() { return this.model.result ? this.model.result.toString() : ""; } }; var SharedStringValue = class { static { __name(this, "SharedStringValue"); } constructor(cell, value) { this.model = { address: cell.address, type: Cell.Types.SharedString, value }; } get value() { return this.model.value; } set value(value) { this.model.value = value; } get type() { return Cell.Types.SharedString; } get effectiveType() { return Cell.Types.SharedString; } get address() { return this.model.address; } set address(value) { this.model.address = value; } toCsvString() { return this.model.value.toString(); } release() { } toString() { return this.model.value.toString(); } }; var BooleanValue = class { static { __name(this, "BooleanValue"); } constructor(cell, value) { this.model = { address: cell.address, type: Cell.Types.Boolean, value }; } get value() { return this.model.value; } set value(value) { this.model.value = value; } get type() { return Cell.Types.Boolean; } get effectiveType() { return Cell.Types.Boolean; } get address() { return this.model.address; } set address(value) { this.model.address = value; } toCsvString() { return this.model.value ? 1 : 0; } release() { } toString() { return this.model.value.toString(); } }; var ErrorValue = class { static { __name(this, "ErrorValue"); } constructor(cell, value) { this.model = { address: cell.address, type: Cell.Types.Error, value }; } get value() { return this.model.value; } set value(value) { this.model.value = value; } get type() { return Cell.Types.Error; } get effectiveType() { return Cell.Types.Error; } get address() { return this.model.address; } set address(value) { this.model.address = value; } toCsvString() { return this.toString(); } release() { } toString() { return this.model.value.error.toString(); } }; var JSONValue = class { static { __name(this, "JSONValue"); } constructor(cell, value) { this.model = { address: cell.address, type: Cell.Types.String, value: JSON.stringify(value), rawValue: value }; } get value() { return this.model.rawValue; } set value(value) { this.model.rawValue = value; this.model.value = JSON.stringify(value); } get type() { return Cell.Types.String; } get effectiveType() { return Cell.Types.String; } get address() { return this.model.address; } set address(value) { this.model.address = value; } toCsvString() { return this.model.value; } release() { } toString() { return this.model.value; } }; var Value = { getType(value) { if (value === null || value === void 0) { return Cell.Types.Null; } if (value instanceof String || typeof value === "string") { return Cell.Types.String; } if (typeof value === "number") { return Cell.Types.Number; } if (typeof value === "boolean") { return Cell.Types.Boolean; } if (value instanceof Date) { return Cell.Types.Date; } if (value.text && value.hyperlink) { return Cell.Types.Hyperlink; } if (value.formula || value.sharedFormula) { return Cell.Types.Formula; } if (value.richText) { return Cell.Types.RichText; } if (value.sharedString) { return Cell.Types.SharedString; } if (value.error) { return Cell.Types.Error; } return Cell.Types.JSON; }, // map valueType to constructor types: [ { t: Cell.Types.Null, f: NullValue }, { t: Cell.Types.Number, f: NumberValue }, { t: Cell.Types.String, f: StringValue }, { t: Cell.Types.Date, f: DateValue }, { t: Cell.Types.Hyperlink, f: HyperlinkValue }, { t: Cell.Types.Formula, f: FormulaValue }, { t: Cell.Types.Merge, f: MergeValue }, { t: Cell.Types.JSON, f: JSONValue }, { t: Cell.Types.SharedString, f: SharedStringValue }, { t: Cell.Types.RichText, f: RichTextValue }, { t: Cell.Types.Boolean, f: BooleanValue }, { t: Cell.Types.Error, f: ErrorValue } ].reduce((p, t) => { p[t.t] = t.f; return p; }, []), create(type, cell, value) { const T = this.types[type]; if (!T) { throw new Error(`Could not create Value of type ${type}`); } return new T(cell, value); } }; module2.exports = Cell; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/row.js var require_row = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/row.js"(exports2, module2) { "use strict"; var _2 = require_under_dash(); var Enums = require_enums5(); var colCache = require_col_cache(); var Cell = require_cell(); var Row = class { static { __name(this, "Row"); } constructor(worksheet, number) { this._worksheet = worksheet; this._number = number; this._cells = []; this.style = {}; this.outlineLevel = 0; } // return the row number get number() { return this._number; } get worksheet() { return this._worksheet; } // Inform Streaming Writer that this row (and all rows before it) are complete // and ready to write. Has no effect on Worksheet document commit() { this._worksheet._commitRow(this); } // helps GC by breaking cyclic references destroy() { delete this._worksheet; delete this._cells; delete this.style; } findCell(colNumber) { return this._cells[colNumber - 1]; } // given {address, row, col}, find or create new cell getCellEx(address) { let cell = this._cells[address.col - 1]; if (!cell) { const column = this._worksheet.getColumn(address.col); cell = new Cell(this, column, address.address); this._cells[address.col - 1] = cell; } return cell; } // get cell by key, letter or column number getCell(col) { if (typeof col === "string") { const column = this._worksheet.getColumnKey(col); if (column) { col = column.number; } else { col = colCache.l2n(col); } } return this._cells[col - 1] || this.getCellEx({ address: colCache.encodeAddress(this._number, col), row: this._number, col }); } // remove cell(s) and shift all higher cells down by count splice(start, count, ...inserts) { const nKeep = start + count; const nExpand = inserts.length - count; const nEnd = this._cells.length; let i; let cSrc; let cDst; if (nExpand < 0) { for (i = start + inserts.length; i <= nEnd; i++) { cDst = this._cells[i - 1]; cSrc = this._cells[i - nExpand - 1]; if (cSrc) { cDst = this.getCell(i); cDst.value = cSrc.value; cDst.style = cSrc.style; cDst._comment = cSrc._comment; } else if (cDst) { cDst.value = null; cDst.style = {}; cDst._comment = void 0; } } } else if (nExpand > 0) { for (i = nEnd; i >= nKeep; i--) { cSrc = this._cells[i - 1]; if (cSrc) { cDst = this.getCell(i + nExpand); cDst.value = cSrc.value; cDst.style = cSrc.style; cDst._comment = cSrc._comment; } else { this._cells[i + nExpand - 1] = void 0; } } } for (i = 0; i < inserts.length; i++) { cDst = this.getCell(start + i); cDst.value = inserts[i]; cDst.style = {}; cDst._comment = void 0; } } // Iterate over all non-null cells in this row eachCell(options, iteratee) { if (!iteratee) { iteratee = options; options = null; } if (options && options.includeEmpty) { const n = this._cells.length; for (let i = 1; i <= n; i++) { iteratee(this.getCell(i), i); } } else { this._cells.forEach((cell, index) => { if (cell && cell.type !== Enums.ValueType.Null) { iteratee(cell, index + 1); } }); } } // =========================================================================== // Page Breaks addPageBreak(lft, rght) { const ws = this._worksheet; const left = Math.max(0, lft - 1) || 0; const right = Math.max(0, rght - 1) || 16838; const pb = { id: this._number, max: right, man: 1 }; if (left) pb.min = left; ws.rowBreaks.push(pb); } // return a sparse array of cell values get values() { const values = []; this._cells.forEach((cell) => { if (cell && cell.type !== Enums.ValueType.Null) { values[cell.col] = cell.value; } }); return values; } // set the values by contiguous or sparse array, or by key'd object literal set values(value) { this._cells = []; if (!value) { } else if (value instanceof Array) { let offset = 0; if (value.hasOwnProperty("0")) { offset = 1; } value.forEach((item, index) => { if (item !== void 0) { this.getCellEx({ address: colCache.encodeAddress(this._number, index + offset), row: this._number, col: index + offset }).value = item; } }); } else { this._worksheet.eachColumnKey((column, key) => { if (value[key] !== void 0) { this.getCellEx({ address: colCache.encodeAddress(this._number, column.number), row: this._number, col: column.number }).value = value[key]; } }); } } // returns true if the row includes at least one cell with a value get hasValues() { return _2.some(this._cells, (cell) => cell && cell.type !== Enums.ValueType.Null); } get cellCount() { return this._cells.length; } get actualCellCount() { let count = 0; this.eachCell(() => { count++; }); return count; } // get the min and max column number for the non-null cells in this row or null get dimensions() { let min = 0; let max = 0; this._cells.forEach((cell) => { if (cell && cell.type !== Enums.ValueType.Null) { if (!min || min > cell.col) { min = cell.col; } if (max < cell.col) { max = cell.col; } } }); return min > 0 ? { min, max } : null; } // ========================================================================= // styles _applyStyle(name, value) { this.style[name] = value; this._cells.forEach((cell) => { if (cell) { cell[name] = value; } }); return value; } get numFmt() { return this.style.numFmt; } set numFmt(value) { this._applyStyle("numFmt", value); } get font() { return this.style.font; } set font(value) { this._applyStyle("font", value); } get alignment() { return this.style.alignment; } set alignment(value) { this._applyStyle("alignment", value); } get protection() { return this.style.protection; } set protection(value) { this._applyStyle("protection", value); } get border() { return this.style.border; } set border(value) { this._applyStyle("border", value); } get fill() { return this.style.fill; } set fill(value) { this._applyStyle("fill", value); } get hidden() { return !!this._hidden; } set hidden(value) { this._hidden = value; } get outlineLevel() { return this._outlineLevel || 0; } set outlineLevel(value) { this._outlineLevel = value; } get collapsed() { return !!(this._outlineLevel && this._outlineLevel >= this._worksheet.properties.outlineLevelRow); } // ========================================================================= get model() { const cells = []; let min = 0; let max = 0; this._cells.forEach((cell) => { if (cell) { const cellModel = cell.model; if (cellModel) { if (!min || min > cell.col) { min = cell.col; } if (max < cell.col) { max = cell.col; } cells.push(cellModel); } } }); return this.height || cells.length ? { cells, number: this.number, min, max, height: this.height, style: this.style, hidden: this.hidden, outlineLevel: this.outlineLevel, collapsed: this.collapsed } : null; } set model(value) { if (value.number !== this._number) { throw new Error("Invalid row number in model"); } this._cells = []; let previousAddress; value.cells.forEach((cellModel) => { switch (cellModel.type) { case Cell.Types.Merge: break; default: { let address; if (cellModel.address) { address = colCache.decodeAddress(cellModel.address); } else if (previousAddress) { const { row } = previousAddress; const col = previousAddress.col + 1; address = { row, col, address: colCache.encodeAddress(row, col), $col$row: `$${colCache.n2l(col)}$${row}` }; } previousAddress = address; const cell = this.getCellEx(address); cell.model = cellModel; break; } } }); if (value.height) { this.height = value.height; } else { delete this.height; } this.hidden = value.hidden; this.outlineLevel = value.outlineLevel || 0; this.style = value.style && JSON.parse(JSON.stringify(value.style)) || {}; } }; module2.exports = Row; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/column.js var require_column = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/column.js"(exports2, module2) { "use strict"; var _2 = require_under_dash(); var Enums = require_enums5(); var colCache = require_col_cache(); var DEFAULT_COLUMN_WIDTH = 9; var Column = class _Column { static { __name(this, "Column"); } constructor(worksheet, number, defn) { this._worksheet = worksheet; this._number = number; if (defn !== false) { this.defn = defn; } } get number() { return this._number; } get worksheet() { return this._worksheet; } get letter() { return colCache.n2l(this._number); } get isCustomWidth() { return this.width !== void 0 && this.width !== DEFAULT_COLUMN_WIDTH; } get defn() { return { header: this._header, key: this.key, width: this.width, style: this.style, hidden: this.hidden, outlineLevel: this.outlineLevel }; } set defn(value) { if (value) { this.key = value.key; this.width = value.width !== void 0 ? value.width : DEFAULT_COLUMN_WIDTH; this.outlineLevel = value.outlineLevel; if (value.style) { this.style = value.style; } else { this.style = {}; } this.header = value.header; this._hidden = !!value.hidden; } else { delete this._header; delete this._key; delete this.width; this.style = {}; this.outlineLevel = 0; } } get headers() { return this._header && this._header instanceof Array ? this._header : [this._header]; } get header() { return this._header; } set header(value) { if (value !== void 0) { this._header = value; this.headers.forEach((text, index) => { this._worksheet.getCell(index + 1, this.number).value = text; }); } else { this._header = void 0; } } get key() { return this._key; } set key(value) { const column = this._key && this._worksheet.getColumnKey(this._key); if (column === this) { this._worksheet.deleteColumnKey(this._key); } this._key = value; if (value) { this._worksheet.setColumnKey(this._key, this); } } get hidden() { return !!this._hidden; } set hidden(value) { this._hidden = value; } get outlineLevel() { return this._outlineLevel || 0; } set outlineLevel(value) { this._outlineLevel = value; } get collapsed() { return !!(this._outlineLevel && this._outlineLevel >= this._worksheet.properties.outlineLevelCol); } toString() { return JSON.stringify({ key: this.key, width: this.width, headers: this.headers.length ? this.headers : void 0 }); } equivalentTo(other) { return this.width === other.width && this.hidden === other.hidden && this.outlineLevel === other.outlineLevel && _2.isEqual(this.style, other.style); } get isDefault() { if (this.isCustomWidth) { return false; } if (this.hidden) { return false; } if (this.outlineLevel) { return false; } const s = this.style; if (s && (s.font || s.numFmt || s.alignment || s.border || s.fill || s.protection)) { return false; } return true; } get headerCount() { return this.headers.length; } eachCell(options, iteratee) { const colNumber = this.number; if (!iteratee) { iteratee = options; options = null; } this._worksheet.eachRow(options, (row, rowNumber) => { iteratee(row.getCell(colNumber), rowNumber); }); } get values() { const v = []; this.eachCell((cell, rowNumber) => { if (cell && cell.type !== Enums.ValueType.Null) { v[rowNumber] = cell.value; } }); return v; } set values(v) { if (!v) { return; } const colNumber = this.number; let offset = 0; if (v.hasOwnProperty("0")) { offset = 1; } v.forEach((value, index) => { this._worksheet.getCell(index + offset, colNumber).value = value; }); } // ========================================================================= // styles _applyStyle(name, value) { this.style[name] = value; this.eachCell((cell) => { cell[name] = value; }); return value; } get numFmt() { return this.style.numFmt; } set numFmt(value) { this._applyStyle("numFmt", value); } get font() { return this.style.font; } set font(value) { this._applyStyle("font", value); } get alignment() { return this.style.alignment; } set alignment(value) { this._applyStyle("alignment", value); } get protection() { return this.style.protection; } set protection(value) { this._applyStyle("protection", value); } get border() { return this.style.border; } set border(value) { this._applyStyle("border", value); } get fill() { return this.style.fill; } set fill(value) { this._applyStyle("fill", value); } // ============================================================================= // static functions static toModel(columns) { const cols = []; let col = null; if (columns) { columns.forEach((column, index) => { if (column.isDefault) { if (col) { col = null; } } else if (!col || !column.equivalentTo(col)) { col = { min: index + 1, max: index + 1, width: column.width !== void 0 ? column.width : DEFAULT_COLUMN_WIDTH, style: column.style, isCustomWidth: column.isCustomWidth, hidden: column.hidden, outlineLevel: column.outlineLevel, collapsed: column.collapsed }; cols.push(col); } else { col.max = index + 1; } }); } return cols.length ? cols : void 0; } static fromModel(worksheet, cols) { cols = cols || []; const columns = []; let count = 1; let index = 0; cols = cols.sort(function(pre, next) { return pre.min - next.min; }); while (index < cols.length) { const col = cols[index++]; while (count < col.min) { columns.push(new _Column(worksheet, count++)); } while (count <= col.max) { columns.push(new _Column(worksheet, count++, col)); } } return columns.length ? columns : null; } }; module2.exports = Column; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/anchor.js var require_anchor = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/anchor.js"(exports2, module2) { "use strict"; var colCache = require_col_cache(); var Anchor = class _Anchor { static { __name(this, "Anchor"); } constructor(worksheet, address, offset = 0) { this.worksheet = worksheet; if (!address) { this.nativeCol = 0; this.nativeColOff = 0; this.nativeRow = 0; this.nativeRowOff = 0; } else if (typeof address === "string") { const decoded = colCache.decodeAddress(address); this.nativeCol = decoded.col + offset; this.nativeColOff = 0; this.nativeRow = decoded.row + offset; this.nativeRowOff = 0; } else if (address.nativeCol !== void 0) { this.nativeCol = address.nativeCol || 0; this.nativeColOff = address.nativeColOff || 0; this.nativeRow = address.nativeRow || 0; this.nativeRowOff = address.nativeRowOff || 0; } else if (address.col !== void 0) { this.col = address.col + offset; this.row = address.row + offset; } else { this.nativeCol = 0; this.nativeColOff = 0; this.nativeRow = 0; this.nativeRowOff = 0; } } static asInstance(model) { return model instanceof _Anchor || model == null ? model : new _Anchor(model); } get col() { return this.nativeCol + Math.min(this.colWidth - 1, this.nativeColOff) / this.colWidth; } set col(v) { this.nativeCol = Math.floor(v); this.nativeColOff = Math.floor((v - this.nativeCol) * this.colWidth); } get row() { return this.nativeRow + Math.min(this.rowHeight - 1, this.nativeRowOff) / this.rowHeight; } set row(v) { this.nativeRow = Math.floor(v); this.nativeRowOff = Math.floor((v - this.nativeRow) * this.rowHeight); } get colWidth() { return this.worksheet && this.worksheet.getColumn(this.nativeCol + 1) && this.worksheet.getColumn(this.nativeCol + 1).isCustomWidth ? Math.floor(this.worksheet.getColumn(this.nativeCol + 1).width * 1e4) : 64e4; } get rowHeight() { return this.worksheet && this.worksheet.getRow(this.nativeRow + 1) && this.worksheet.getRow(this.nativeRow + 1).height ? Math.floor(this.worksheet.getRow(this.nativeRow + 1).height * 1e4) : 18e4; } get model() { return { nativeCol: this.nativeCol, nativeColOff: this.nativeColOff, nativeRow: this.nativeRow, nativeRowOff: this.nativeRowOff }; } set model(value) { this.nativeCol = value.nativeCol; this.nativeColOff = value.nativeColOff; this.nativeRow = value.nativeRow; this.nativeRowOff = value.nativeRowOff; } }; module2.exports = Anchor; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/image.js var require_image = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/image.js"(exports2, module2) { var colCache = require_col_cache(); var Anchor = require_anchor(); var Image = class { static { __name(this, "Image"); } constructor(worksheet, model) { this.worksheet = worksheet; this.model = model; } get model() { switch (this.type) { case "background": return { type: this.type, imageId: this.imageId }; case "image": return { type: this.type, imageId: this.imageId, hyperlinks: this.range.hyperlinks, range: { tl: this.range.tl.model, br: this.range.br && this.range.br.model, ext: this.range.ext, editAs: this.range.editAs } }; default: throw new Error("Invalid Image Type"); } } set model({ type, imageId, range, hyperlinks }) { this.type = type; this.imageId = imageId; if (type === "image") { if (typeof range === "string") { const decoded = colCache.decode(range); this.range = { tl: new Anchor(this.worksheet, { col: decoded.left, row: decoded.top }, -1), br: new Anchor(this.worksheet, { col: decoded.right, row: decoded.bottom }, 0), editAs: "oneCell" }; } else { this.range = { tl: new Anchor(this.worksheet, range.tl, 0), br: range.br && new Anchor(this.worksheet, range.br, 0), ext: range.ext, editAs: range.editAs, hyperlinks: hyperlinks || range.hyperlinks }; } } } }; module2.exports = Image; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/table.js var require_table = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/table.js"(exports2, module2) { var colCache = require_col_cache(); var Column = class { static { __name(this, "Column"); } // wrapper around column model, allowing access and manipulation constructor(table, column, index) { this.table = table; this.column = column; this.index = index; } _set(name, value) { this.table.cacheState(); this.column[name] = value; } /* eslint-disable lines-between-class-members */ get name() { return this.column.name; } set name(value) { this._set("name", value); } get filterButton() { return this.column.filterButton; } set filterButton(value) { this.column.filterButton = value; } get style() { return this.column.style; } set style(value) { this.column.style = value; } get totalsRowLabel() { return this.column.totalsRowLabel; } set totalsRowLabel(value) { this._set("totalsRowLabel", value); } get totalsRowFunction() { return this.column.totalsRowFunction; } set totalsRowFunction(value) { this._set("totalsRowFunction", value); } get totalsRowResult() { return this.column.totalsRowResult; } set totalsRowResult(value) { this._set("totalsRowResult", value); } get totalsRowFormula() { return this.column.totalsRowFormula; } set totalsRowFormula(value) { this._set("totalsRowFormula", value); } /* eslint-enable lines-between-class-members */ }; var Table = class { static { __name(this, "Table"); } constructor(worksheet, table) { this.worksheet = worksheet; if (table) { this.table = table; this.validate(); this.store(); } } getFormula(column) { switch (column.totalsRowFunction) { case "none": return null; case "average": return `SUBTOTAL(101,${this.table.name}[${column.name}])`; case "countNums": return `SUBTOTAL(102,${this.table.name}[${column.name}])`; case "count": return `SUBTOTAL(103,${this.table.name}[${column.name}])`; case "max": return `SUBTOTAL(104,${this.table.name}[${column.name}])`; case "min": return `SUBTOTAL(105,${this.table.name}[${column.name}])`; case "stdDev": return `SUBTOTAL(106,${this.table.name}[${column.name}])`; case "var": return `SUBTOTAL(107,${this.table.name}[${column.name}])`; case "sum": return `SUBTOTAL(109,${this.table.name}[${column.name}])`; case "custom": return column.totalsRowFormula; default: throw new Error(`Invalid Totals Row Function: ${column.totalsRowFunction}`); } } get width() { return this.table.columns.length; } get height() { return this.table.rows.length; } get filterHeight() { return this.height + (this.table.headerRow ? 1 : 0); } get tableHeight() { return this.filterHeight + (this.table.totalsRow ? 1 : 0); } validate() { const { table } = this; const assign = /* @__PURE__ */ __name((o, name, dflt) => { if (o[name] === void 0) { o[name] = dflt; } }, "assign"); assign(table, "headerRow", true); assign(table, "totalsRow", false); assign(table, "style", {}); assign(table.style, "theme", "TableStyleMedium2"); assign(table.style, "showFirstColumn", false); assign(table.style, "showLastColumn", false); assign(table.style, "showRowStripes", false); assign(table.style, "showColumnStripes", false); const assert = /* @__PURE__ */ __name((test, message) => { if (!test) { throw new Error(message); } }, "assert"); assert(table.ref, "Table must have ref"); assert(table.columns, "Table must have column definitions"); assert(table.rows, "Table must have row definitions"); table.tl = colCache.decodeAddress(table.ref); const { row, col } = table.tl; assert(row > 0, "Table must be on valid row"); assert(col > 0, "Table must be on valid col"); const { width, filterHeight, tableHeight } = this; table.autoFilterRef = colCache.encode(row, col, row + filterHeight - 1, col + width - 1); table.tableRef = colCache.encode(row, col, row + tableHeight - 1, col + width - 1); table.columns.forEach((column, i) => { assert(column.name, `Column ${i} must have a name`); if (i === 0) { assign(column, "totalsRowLabel", "Total"); } else { assign(column, "totalsRowFunction", "none"); column.totalsRowFormula = this.getFormula(column); } }); } store() { const assignStyle = /* @__PURE__ */ __name((cell, style) => { if (style) { Object.keys(style).forEach((key) => { cell[key] = style[key]; }); } }, "assignStyle"); const { worksheet, table } = this; const { row, col } = table.tl; let count = 0; if (table.headerRow) { const r = worksheet.getRow(row + count++); table.columns.forEach((column, j) => { const { style, name } = column; const cell = r.getCell(col + j); cell.value = name; assignStyle(cell, style); }); } table.rows.forEach((data) => { const r = worksheet.getRow(row + count++); data.forEach((value, j) => { const cell = r.getCell(col + j); cell.value = value; assignStyle(cell, table.columns[j].style); }); }); if (table.totalsRow) { const r = worksheet.getRow(row + count++); table.columns.forEach((column, j) => { const cell = r.getCell(col + j); if (j === 0) { cell.value = column.totalsRowLabel; } else { const formula = this.getFormula(column); if (formula) { cell.value = { formula: column.totalsRowFormula, result: column.totalsRowResult }; } else { cell.value = null; } } assignStyle(cell, column.style); }); } } load(worksheet) { const { table } = this; const { row, col } = table.tl; let count = 0; if (table.headerRow) { const r = worksheet.getRow(row + count++); table.columns.forEach((column, j) => { const cell = r.getCell(col + j); cell.value = column.name; }); } table.rows.forEach((data) => { const r = worksheet.getRow(row + count++); data.forEach((value, j) => { const cell = r.getCell(col + j); cell.value = value; }); }); if (table.totalsRow) { const r = worksheet.getRow(row + count++); table.columns.forEach((column, j) => { const cell = r.getCell(col + j); if (j === 0) { cell.value = column.totalsRowLabel; } else { const formula = this.getFormula(column); if (formula) { cell.value = { formula: column.totalsRowFormula, result: column.totalsRowResult }; } } }); } } get model() { return this.table; } set model(value) { this.table = value; } // ================================================================ // TODO: Mutating methods cacheState() { if (!this._cache) { this._cache = { ref: this.ref, width: this.width, tableHeight: this.tableHeight }; } } commit() { if (!this._cache) { return; } this.validate(); const ref = colCache.decodeAddress(this._cache.ref); if (this.ref !== this._cache.ref) { for (let i = 0; i < this._cache.tableHeight; i++) { const row = this.worksheet.getRow(ref.row + i); for (let j = 0; j < this._cache.width; j++) { const cell = row.getCell(ref.col + j); cell.value = null; } } } else { for (let i = this.tableHeight; i < this._cache.tableHeight; i++) { const row = this.worksheet.getRow(ref.row + i); for (let j = 0; j < this._cache.width; j++) { const cell = row.getCell(ref.col + j); cell.value = null; } } for (let i = 0; i < this.tableHeight; i++) { const row = this.worksheet.getRow(ref.row + i); for (let j = this.width; j < this._cache.width; j++) { const cell = row.getCell(ref.col + j); cell.value = null; } } } this.store(); } addRow(values, rowNumber) { this.cacheState(); if (rowNumber === void 0) { this.table.rows.push(values); } else { this.table.rows.splice(rowNumber, 0, values); } } removeRows(rowIndex, count = 1) { this.cacheState(); this.table.rows.splice(rowIndex, count); } getColumn(colIndex) { const column = this.table.columns[colIndex]; return new Column(this, column, colIndex); } addColumn(column, values, colIndex) { this.cacheState(); if (colIndex === void 0) { this.table.columns.push(column); this.table.rows.forEach((row, i) => { row.push(values[i]); }); } else { this.table.columns.splice(colIndex, 0, column); this.table.rows.forEach((row, i) => { row.splice(colIndex, 0, values[i]); }); } } removeColumns(colIndex, count = 1) { this.cacheState(); this.table.columns.splice(colIndex, count); this.table.rows.forEach((row) => { row.splice(colIndex, count); }); } _assign(target, prop, value) { this.cacheState(); target[prop] = value; } /* eslint-disable lines-between-class-members */ get ref() { return this.table.ref; } set ref(value) { this._assign(this.table, "ref", value); } get name() { return this.table.name; } set name(value) { this.table.name = value; } get displayName() { return this.table.displyName || this.table.name; } set displayNamename(value) { this.table.displayName = value; } get headerRow() { return this.table.headerRow; } set headerRow(value) { this._assign(this.table, "headerRow", value); } get totalsRow() { return this.table.totalsRow; } set totalsRow(value) { this._assign(this.table, "totalsRow", value); } get theme() { return this.table.style.name; } set theme(value) { this.table.style.name = value; } get showFirstColumn() { return this.table.style.showFirstColumn; } set showFirstColumn(value) { this.table.style.showFirstColumn = value; } get showLastColumn() { return this.table.style.showLastColumn; } set showLastColumn(value) { this.table.style.showLastColumn = value; } get showRowStripes() { return this.table.style.showRowStripes; } set showRowStripes(value) { this.table.style.showRowStripes = value; } get showColumnStripes() { return this.table.style.showColumnStripes; } set showColumnStripes(value) { this.table.style.showColumnStripes = value; } /* eslint-enable lines-between-class-members */ }; module2.exports = Table; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/data-validations.js var require_data_validations = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/data-validations.js"(exports2, module2) { var DataValidations = class { static { __name(this, "DataValidations"); } constructor(model) { this.model = model || {}; } add(address, validation) { return this.model[address] = validation; } find(address) { return this.model[address]; } remove(address) { this.model[address] = void 0; } }; module2.exports = DataValidations; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/encryptor.js var require_encryptor = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/encryptor.js"(exports2, module2) { "use strict"; var crypto5 = require("crypto"); var Encryptor = { /** * Calculate a hash of the concatenated buffers with the given algorithm. * @param {string} algorithm - The hash algorithm. * @returns {Buffer} The hash */ hash(algorithm, ...buffers) { const hash = crypto5.createHash(algorithm); hash.update(Buffer.concat(buffers)); return hash.digest(); }, /** * Convert a password into an encryption key * @param {string} password - The password * @param {string} hashAlgorithm - The hash algoritm * @param {string} saltValue - The salt value * @param {number} spinCount - The spin count * @param {number} keyBits - The length of the key in bits * @param {Buffer} blockKey - The block key * @returns {Buffer} The encryption key */ convertPasswordToHash(password, hashAlgorithm, saltValue, spinCount) { hashAlgorithm = hashAlgorithm.toLowerCase(); const hashes = crypto5.getHashes(); if (hashes.indexOf(hashAlgorithm) < 0) { throw new Error(`Hash algorithm '${hashAlgorithm}' not supported!`); } const passwordBuffer = Buffer.from(password, "utf16le"); let key = this.hash(hashAlgorithm, Buffer.from(saltValue, "base64"), passwordBuffer); for (let i = 0; i < spinCount; i++) { const iterator = Buffer.alloc(4); iterator.writeUInt32LE(i, 0); key = this.hash(hashAlgorithm, key, iterator); } return key.toString("base64"); }, /** * Generates cryptographically strong pseudo-random data. * @param size The size argument is a number indicating the number of bytes to generate. */ randomBytes(size) { return crypto5.randomBytes(size); } }; module2.exports = Encryptor; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/copy-style.js var require_copy_style = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/copy-style.js"(exports2) { var oneDepthCopy = /* @__PURE__ */ __name((obj2, nestKeys) => ({ ...obj2, ...nestKeys.reduce((memo, key) => { if (obj2[key]) memo[key] = { ...obj2[key] }; return memo; }, {}) }), "oneDepthCopy"); var setIfExists = /* @__PURE__ */ __name((src, dst, key, nestKeys = []) => { if (src[key]) dst[key] = oneDepthCopy(src[key], nestKeys); }, "setIfExists"); var isEmptyObj = /* @__PURE__ */ __name((obj2) => Object.keys(obj2).length === 0, "isEmptyObj"); var copyStyle = /* @__PURE__ */ __name((style) => { if (!style) return style; if (isEmptyObj(style)) return {}; const copied = { ...style }; setIfExists(style, copied, "font", ["color"]); setIfExists(style, copied, "alignment"); setIfExists(style, copied, "protection"); if (style.border) { setIfExists(style, copied, "border"); setIfExists(style.border, copied.border, "top", ["color"]); setIfExists(style.border, copied.border, "left", ["color"]); setIfExists(style.border, copied.border, "bottom", ["color"]); setIfExists(style.border, copied.border, "right", ["color"]); setIfExists(style.border, copied.border, "diagonal", ["color"]); } if (style.fill) { setIfExists(style, copied, "fill", ["fgColor", "bgColor", "center"]); if (style.fill.stops) { copied.fill.stops = style.fill.stops.map((s) => oneDepthCopy(s, ["color"])); } } return copied; }, "copyStyle"); exports2.copyStyle = copyStyle; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/worksheet.js var require_worksheet = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/worksheet.js"(exports2, module2) { var _2 = require_under_dash(); var colCache = require_col_cache(); var Range = require_range4(); var Row = require_row(); var Column = require_column(); var Enums = require_enums5(); var Image = require_image(); var Table = require_table(); var DataValidations = require_data_validations(); var Encryptor = require_encryptor(); var { copyStyle } = require_copy_style(); var Worksheet = class { static { __name(this, "Worksheet"); } constructor(options) { options = options || {}; this._workbook = options.workbook; this.id = options.id; this.orderNo = options.orderNo; this.name = options.name; this.state = options.state || "visible"; this._rows = []; this._columns = null; this._keys = {}; this._merges = {}; this.rowBreaks = []; this.properties = Object.assign( {}, { defaultRowHeight: 15, dyDescent: 55, outlineLevelCol: 0, outlineLevelRow: 0 }, options.properties ); this.pageSetup = Object.assign( {}, { margins: { left: 0.7, right: 0.7, top: 0.75, bottom: 0.75, header: 0.3, footer: 0.3 }, orientation: "portrait", horizontalDpi: 4294967295, verticalDpi: 4294967295, fitToPage: !!(options.pageSetup && (options.pageSetup.fitToWidth || options.pageSetup.fitToHeight) && !options.pageSetup.scale), pageOrder: "downThenOver", blackAndWhite: false, draft: false, cellComments: "None", errors: "displayed", scale: 100, fitToWidth: 1, fitToHeight: 1, paperSize: void 0, showRowColHeaders: false, showGridLines: false, firstPageNumber: void 0, horizontalCentered: false, verticalCentered: false, rowBreaks: null, colBreaks: null }, options.pageSetup ); this.headerFooter = Object.assign( {}, { differentFirst: false, differentOddEven: false, oddHeader: null, oddFooter: null, evenHeader: null, evenFooter: null, firstHeader: null, firstFooter: null }, options.headerFooter ); this.dataValidations = new DataValidations(); this.views = options.views || []; this.autoFilter = options.autoFilter || null; this._media = []; this.sheetProtection = null; this.tables = {}; this.conditionalFormattings = []; } get name() { return this._name; } set name(name) { if (name === void 0) { name = `sheet${this.id}`; } if (this._name === name) return; if (typeof name !== "string") { throw new Error("The name has to be a string."); } if (name === "") { throw new Error("The name can't be empty."); } if (name === "History") { throw new Error('The name "History" is protected. Please use a different name.'); } if (/[*?:/\\[\]]/.test(name)) { throw new Error(`Worksheet name ${name} cannot include any of the following characters: * ? : \\ / [ ]`); } if (/(^')|('$)/.test(name)) { throw new Error(`The first or last character of worksheet name cannot be a single quotation mark: ${name}`); } if (name && name.length > 31) { console.warn(`Worksheet name ${name} exceeds 31 chars. This will be truncated`); name = name.substring(0, 31); } if (this._workbook._worksheets.find((ws) => ws && ws.name.toLowerCase() === name.toLowerCase())) { throw new Error(`Worksheet name already exists: ${name}`); } this._name = name; } get workbook() { return this._workbook; } // when you're done with this worksheet, call this to remove from workbook destroy() { this._workbook.removeWorksheetEx(this); } // Get the bounding range of the cells in this worksheet get dimensions() { const dimensions = new Range(); this._rows.forEach((row) => { if (row) { const rowDims = row.dimensions; if (rowDims) { dimensions.expand(row.number, rowDims.min, row.number, rowDims.max); } } }); return dimensions; } // ========================================================================= // Columns // get the current columns array. get columns() { return this._columns; } // set the columns from an array of column definitions. // Note: any headers defined will overwrite existing values. set columns(value) { this._headerRowCount = value.reduce((pv, cv) => { const headerCount = cv.header && 1 || cv.headers && cv.headers.length || 0; return Math.max(pv, headerCount); }, 0); let count = 1; const columns = this._columns = []; value.forEach((defn) => { const column = new Column(this, count++, false); columns.push(column); column.defn = defn; }); } getColumnKey(key) { return this._keys[key]; } setColumnKey(key, value) { this._keys[key] = value; } deleteColumnKey(key) { delete this._keys[key]; } eachColumnKey(f) { _2.each(this._keys, f); } // get a single column by col number. If it doesn't exist, create it and any gaps before it getColumn(c) { if (typeof c === "string") { const col = this._keys[c]; if (col) return col; c = colCache.l2n(c); } if (!this._columns) { this._columns = []; } if (c > this._columns.length) { let n = this._columns.length + 1; while (n <= c) { this._columns.push(new Column(this, n++)); } } return this._columns[c - 1]; } spliceColumns(start, count, ...inserts) { const rows = this._rows; const nRows = rows.length; if (inserts.length > 0) { for (let i = 0; i < nRows; i++) { const rowArguments = [start, count]; inserts.forEach((insert) => { rowArguments.push(insert[i] || null); }); const row = this.getRow(i + 1); row.splice.apply(row, rowArguments); } } else { this._rows.forEach((r) => { if (r) { r.splice(start, count); } }); } const nExpand = inserts.length - count; const nKeep = start + count; const nEnd = this._columns.length; if (nExpand < 0) { for (let i = start + inserts.length; i <= nEnd; i++) { this.getColumn(i).defn = this.getColumn(i - nExpand).defn; } } else if (nExpand > 0) { for (let i = nEnd; i >= nKeep; i--) { this.getColumn(i + nExpand).defn = this.getColumn(i).defn; } } for (let i = start; i < start + inserts.length; i++) { this.getColumn(i).defn = null; } this.workbook.definedNames.spliceColumns(this.name, start, count, inserts.length); } get lastColumn() { return this.getColumn(this.columnCount); } get columnCount() { let maxCount = 0; this.eachRow((row) => { maxCount = Math.max(maxCount, row.cellCount); }); return maxCount; } get actualColumnCount() { const counts = []; let count = 0; this.eachRow((row) => { row.eachCell(({ col }) => { if (!counts[col]) { counts[col] = true; count++; } }); }); return count; } // ========================================================================= // Rows _commitRow() { } get _lastRowNumber() { const rows = this._rows; let n = rows.length; while (n > 0 && rows[n - 1] === void 0) { n--; } return n; } get _nextRow() { return this._lastRowNumber + 1; } get lastRow() { if (this._rows.length) { return this._rows[this._rows.length - 1]; } return void 0; } // find a row (if exists) by row number findRow(r) { return this._rows[r - 1]; } // find multiple rows (if exists) by row number findRows(start, length) { return this._rows.slice(start - 1, start - 1 + length); } get rowCount() { return this._lastRowNumber; } get actualRowCount() { let count = 0; this.eachRow(() => { count++; }); return count; } // get a row by row number. getRow(r) { let row = this._rows[r - 1]; if (!row) { row = this._rows[r - 1] = new Row(this, r); } return row; } // get multiple rows by row number. getRows(start, length) { if (length < 1) return void 0; const rows = []; for (let i = start; i < start + length; i++) { rows.push(this.getRow(i)); } return rows; } addRow(value, style = "n") { const rowNo = this._nextRow; const row = this.getRow(rowNo); row.values = value; this._setStyleOption(rowNo, style[0] === "i" ? style : "n"); return row; } addRows(value, style = "n") { const rows = []; value.forEach((row) => { rows.push(this.addRow(row, style)); }); return rows; } insertRow(pos, value, style = "n") { this.spliceRows(pos, 0, value); this._setStyleOption(pos, style); return this.getRow(pos); } insertRows(pos, values, style = "n") { this.spliceRows(pos, 0, ...values); if (style !== "n") { for (let i = 0; i < values.length; i++) { if (style[0] === "o" && this.findRow(values.length + pos + i) !== void 0) { this._copyStyle(values.length + pos + i, pos + i, style[1] === "+"); } else if (style[0] === "i" && this.findRow(pos - 1) !== void 0) { this._copyStyle(pos - 1, pos + i, style[1] === "+"); } } } return this.getRows(pos, values.length); } // set row at position to same style as of either pervious row (option 'i') or next row (option 'o') _setStyleOption(pos, style = "n") { if (style[0] === "o" && this.findRow(pos + 1) !== void 0) { this._copyStyle(pos + 1, pos, style[1] === "+"); } else if (style[0] === "i" && this.findRow(pos - 1) !== void 0) { this._copyStyle(pos - 1, pos, style[1] === "+"); } } _copyStyle(src, dest, styleEmpty = false) { const rSrc = this.getRow(src); const rDst = this.getRow(dest); rDst.style = copyStyle(rSrc.style); rSrc.eachCell({ includeEmpty: styleEmpty }, (cell, colNumber) => { rDst.getCell(colNumber).style = copyStyle(cell.style); }); rDst.height = rSrc.height; } duplicateRow(rowNum, count, insert = false) { const rSrc = this._rows[rowNum - 1]; const inserts = new Array(count).fill(rSrc.values); this.spliceRows(rowNum + 1, insert ? 0 : count, ...inserts); for (let i = 0; i < count; i++) { const rDst = this._rows[rowNum + i]; rDst.style = rSrc.style; rDst.height = rSrc.height; rSrc.eachCell({ includeEmpty: true }, (cell, colNumber) => { rDst.getCell(colNumber).style = cell.style; }); } } spliceRows(start, count, ...inserts) { const nKeep = start + count; const nInserts = inserts.length; const nExpand = nInserts - count; const nEnd = this._rows.length; let i; let rSrc; if (nExpand < 0) { if (start === nEnd) { this._rows[nEnd - 1] = void 0; } for (i = nKeep; i <= nEnd; i++) { rSrc = this._rows[i - 1]; if (rSrc) { const rDst = this.getRow(i + nExpand); rDst.values = rSrc.values; rDst.style = rSrc.style; rDst.height = rSrc.height; rSrc.eachCell({ includeEmpty: true }, (cell, colNumber) => { rDst.getCell(colNumber).style = cell.style; }); this._rows[i - 1] = void 0; } else { this._rows[i + nExpand - 1] = void 0; } } } else if (nExpand > 0) { for (i = nEnd; i >= nKeep; i--) { rSrc = this._rows[i - 1]; if (rSrc) { const rDst = this.getRow(i + nExpand); rDst.values = rSrc.values; rDst.style = rSrc.style; rDst.height = rSrc.height; rSrc.eachCell({ includeEmpty: true }, (cell, colNumber) => { rDst.getCell(colNumber).style = cell.style; if (cell._value.constructor.name === "MergeValue") { const cellToBeMerged = this.getRow(cell._row._number + nInserts).getCell(colNumber); const prevMaster = cell._value._master; const newMaster = this.getRow(prevMaster._row._number + nInserts).getCell(prevMaster._column._number); cellToBeMerged.merge(newMaster); } }); } else { this._rows[i + nExpand - 1] = void 0; } } } for (i = 0; i < nInserts; i++) { const rDst = this.getRow(start + i); rDst.style = {}; rDst.values = inserts[i]; } this.workbook.definedNames.spliceRows(this.name, start, count, nInserts); } // iterate over every row in the worksheet, including maybe empty rows eachRow(options, iteratee) { if (!iteratee) { iteratee = options; options = void 0; } if (options && options.includeEmpty) { const n = this._rows.length; for (let i = 1; i <= n; i++) { iteratee(this.getRow(i), i); } } else { this._rows.forEach((row) => { if (row && row.hasValues) { iteratee(row, row.number); } }); } } // return all rows as sparse array getSheetValues() { const rows = []; this._rows.forEach((row) => { if (row) { rows[row.number] = row.values; } }); return rows; } // ========================================================================= // Cells // returns the cell at [r,c] or address given by r. If not found, return undefined findCell(r, c) { const address = colCache.getAddress(r, c); const row = this._rows[address.row - 1]; return row ? row.findCell(address.col) : void 0; } // return the cell at [r,c] or address given by r. If not found, create a new one. getCell(r, c) { const address = colCache.getAddress(r, c); const row = this.getRow(address.row); return row.getCellEx(address); } // ========================================================================= // Merge // convert the range defined by ['tl:br'], [tl,br] or [t,l,b,r] into a single 'merged' cell mergeCells(...cells) { const dimensions = new Range(cells); this._mergeCellsInternal(dimensions); } mergeCellsWithoutStyle(...cells) { const dimensions = new Range(cells); this._mergeCellsInternal(dimensions, true); } _mergeCellsInternal(dimensions, ignoreStyle) { _2.each(this._merges, (merge) => { if (merge.intersects(dimensions)) { throw new Error("Cannot merge already merged cells"); } }); const master = this.getCell(dimensions.top, dimensions.left); for (let i = dimensions.top; i <= dimensions.bottom; i++) { for (let j = dimensions.left; j <= dimensions.right; j++) { if (i > dimensions.top || j > dimensions.left) { this.getCell(i, j).merge(master, ignoreStyle); } } } this._merges[master.address] = dimensions; } _unMergeMaster(master) { const merge = this._merges[master.address]; if (merge) { for (let i = merge.top; i <= merge.bottom; i++) { for (let j = merge.left; j <= merge.right; j++) { this.getCell(i, j).unmerge(); } } delete this._merges[master.address]; } } get hasMerges() { return _2.some(this._merges, Boolean); } // scan the range defined by ['tl:br'], [tl,br] or [t,l,b,r] and if any cell is part of a merge, // un-merge the group. Note this function can affect multiple merges and merge-blocks are // atomic - either they're all merged or all un-merged. unMergeCells(...cells) { const dimensions = new Range(cells); for (let i = dimensions.top; i <= dimensions.bottom; i++) { for (let j = dimensions.left; j <= dimensions.right; j++) { const cell = this.findCell(i, j); if (cell) { if (cell.type === Enums.ValueType.Merge) { this._unMergeMaster(cell.master); } else if (this._merges[cell.address]) { this._unMergeMaster(cell); } } } } } // =========================================================================== // Shared/Array Formula fillFormula(range, formula, results, shareType = "shared") { const decoded = colCache.decode(range); const { top, left, bottom, right } = decoded; const width = right - left + 1; const masterAddress = colCache.encodeAddress(top, left); const isShared = shareType === "shared"; let getResult; if (typeof results === "function") { getResult = results; } else if (Array.isArray(results)) { if (Array.isArray(results[0])) { getResult = /* @__PURE__ */ __name((row, col) => results[row - top][col - left], "getResult"); } else { getResult = /* @__PURE__ */ __name((row, col) => results[(row - top) * width + (col - left)], "getResult"); } } else { getResult = /* @__PURE__ */ __name(() => void 0, "getResult"); } let first = true; for (let r = top; r <= bottom; r++) { for (let c = left; c <= right; c++) { if (first) { this.getCell(r, c).value = { shareType, formula, ref: range, result: getResult(r, c) }; first = false; } else { this.getCell(r, c).value = isShared ? { sharedFormula: masterAddress, result: getResult(r, c) } : getResult(r, c); } } } } // ========================================================================= // Images addImage(imageId, range) { const model = { type: "image", imageId, range }; this._media.push(new Image(this, model)); } getImages() { return this._media.filter((m) => m.type === "image"); } addBackgroundImage(imageId) { const model = { type: "background", imageId }; this._media.push(new Image(this, model)); } getBackgroundImageId() { const image = this._media.find((m) => m.type === "background"); return image && image.imageId; } // ========================================================================= // Worksheet Protection protect(password, options) { return new Promise((resolve) => { this.sheetProtection = { sheet: true }; if (options && "spinCount" in options) { options.spinCount = Number.isFinite(options.spinCount) ? Math.round(Math.max(0, options.spinCount)) : 1e5; } if (password) { this.sheetProtection.algorithmName = "SHA-512"; this.sheetProtection.saltValue = Encryptor.randomBytes(16).toString("base64"); this.sheetProtection.spinCount = options && "spinCount" in options ? options.spinCount : 1e5; this.sheetProtection.hashValue = Encryptor.convertPasswordToHash( password, "SHA512", this.sheetProtection.saltValue, this.sheetProtection.spinCount ); } if (options) { this.sheetProtection = Object.assign(this.sheetProtection, options); if (!password && "spinCount" in options) { delete this.sheetProtection.spinCount; } } resolve(); }); } unprotect() { this.sheetProtection = null; } // ========================================================================= // Tables addTable(model) { const table = new Table(this, model); this.tables[model.name] = table; return table; } getTable(name) { return this.tables[name]; } removeTable(name) { delete this.tables[name]; } getTables() { return Object.values(this.tables); } // =========================================================================== // Conditional Formatting addConditionalFormatting(cf) { this.conditionalFormattings.push(cf); } removeConditionalFormatting(filter) { if (typeof filter === "number") { this.conditionalFormattings.splice(filter, 1); } else if (filter instanceof Function) { this.conditionalFormattings = this.conditionalFormattings.filter(filter); } else { this.conditionalFormattings = []; } } // =========================================================================== // Deprecated get tabColor() { console.trace("worksheet.tabColor property is now deprecated. Please use worksheet.properties.tabColor"); return this.properties.tabColor; } set tabColor(value) { console.trace("worksheet.tabColor property is now deprecated. Please use worksheet.properties.tabColor"); this.properties.tabColor = value; } // =========================================================================== // Model get model() { const model = { id: this.id, name: this.name, dataValidations: this.dataValidations.model, properties: this.properties, state: this.state, pageSetup: this.pageSetup, headerFooter: this.headerFooter, rowBreaks: this.rowBreaks, views: this.views, autoFilter: this.autoFilter, media: this._media.map((medium) => medium.model), sheetProtection: this.sheetProtection, tables: Object.values(this.tables).map((table) => table.model), conditionalFormattings: this.conditionalFormattings }; model.cols = Column.toModel(this.columns); const rows = model.rows = []; const dimensions = model.dimensions = new Range(); this._rows.forEach((row) => { const rowModel = row && row.model; if (rowModel) { dimensions.expand(rowModel.number, rowModel.min, rowModel.number, rowModel.max); rows.push(rowModel); } }); model.merges = []; _2.each(this._merges, (merge) => { model.merges.push(merge.range); }); return model; } _parseRows(model) { this._rows = []; model.rows.forEach((rowModel) => { const row = new Row(this, rowModel.number); this._rows[row.number - 1] = row; row.model = rowModel; }); } _parseMergeCells(model) { _2.each(model.mergeCells, (merge) => { this.mergeCellsWithoutStyle(merge); }); } set model(value) { this.name = value.name; this._columns = Column.fromModel(this, value.cols); this._parseRows(value); this._parseMergeCells(value); this.dataValidations = new DataValidations(value.dataValidations); this.properties = value.properties; this.pageSetup = value.pageSetup; this.headerFooter = value.headerFooter; this.views = value.views; this.autoFilter = value.autoFilter; this._media = value.media.map((medium) => new Image(this, medium)); this.sheetProtection = value.sheetProtection; this.tables = value.tables.reduce((tables, table) => { const t = new Table(); t.model = table; tables[table.name] = t; return tables; }, {}); this.conditionalFormattings = value.conditionalFormattings; } }; module2.exports = Worksheet; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/cell-matrix.js var require_cell_matrix = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/cell-matrix.js"(exports2, module2) { var _2 = require_under_dash(); var colCache = require_col_cache(); var CellMatrix = class { static { __name(this, "CellMatrix"); } constructor(template) { this.template = template; this.sheets = {}; } addCell(addressStr) { this.addCellEx(colCache.decodeEx(addressStr)); } getCell(addressStr) { return this.findCellEx(colCache.decodeEx(addressStr), true); } findCell(addressStr) { return this.findCellEx(colCache.decodeEx(addressStr), false); } findCellAt(sheetName, rowNumber, colNumber) { const sheet = this.sheets[sheetName]; const row = sheet && sheet[rowNumber]; return row && row[colNumber]; } addCellEx(address) { if (address.top) { for (let row = address.top; row <= address.bottom; row++) { for (let col = address.left; col <= address.right; col++) { this.getCellAt(address.sheetName, row, col); } } } else { this.findCellEx(address, true); } } getCellEx(address) { return this.findCellEx(address, true); } findCellEx(address, create) { const sheet = this.findSheet(address, create); const row = this.findSheetRow(sheet, address, create); return this.findRowCell(row, address, create); } getCellAt(sheetName, rowNumber, colNumber) { const sheet = this.sheets[sheetName] || (this.sheets[sheetName] = []); const row = sheet[rowNumber] || (sheet[rowNumber] = []); const cell = row[colNumber] || (row[colNumber] = { sheetName, address: colCache.n2l(colNumber) + rowNumber, row: rowNumber, col: colNumber }); return cell; } removeCellEx(address) { const sheet = this.findSheet(address); if (!sheet) { return; } const row = this.findSheetRow(sheet, address); if (!row) { return; } delete row[address.col]; } forEachInSheet(sheetName, callback) { const sheet = this.sheets[sheetName]; if (sheet) { sheet.forEach((row, rowNumber) => { if (row) { row.forEach((cell, colNumber) => { if (cell) { callback(cell, rowNumber, colNumber); } }); } }); } } forEach(callback) { _2.each(this.sheets, (sheet, sheetName) => { this.forEachInSheet(sheetName, callback); }); } map(callback) { const results = []; this.forEach((cell) => { results.push(callback(cell)); }); return results; } findSheet(address, create) { const name = address.sheetName; if (this.sheets[name]) { return this.sheets[name]; } if (create) { return this.sheets[name] = []; } return void 0; } findSheetRow(sheet, address, create) { const { row } = address; if (sheet && sheet[row]) { return sheet[row]; } if (create) { return sheet[row] = []; } return void 0; } findRowCell(row, address, create) { const { col } = address; if (row && row[col]) { return row[col]; } if (create) { return row[col] = this.template ? Object.assign(address, JSON.parse(JSON.stringify(this.template))) : address; } return void 0; } spliceRows(sheetName, start, numDelete, numInsert) { const sheet = this.sheets[sheetName]; if (sheet) { const inserts = []; for (let i = 0; i < numInsert; i++) { inserts.push([]); } sheet.splice(start, numDelete, ...inserts); } } spliceColumns(sheetName, start, numDelete, numInsert) { const sheet = this.sheets[sheetName]; if (sheet) { const inserts = []; for (let i = 0; i < numInsert; i++) { inserts.push(null); } _2.each(sheet, (row) => { row.splice(start, numDelete, ...inserts); }); } } }; module2.exports = CellMatrix; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/defined-names.js var require_defined_names = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/defined-names.js"(exports2, module2) { "use strict"; var _2 = require_under_dash(); var colCache = require_col_cache(); var CellMatrix = require_cell_matrix(); var Range = require_range4(); var rangeRegexp = /[$](\w+)[$](\d+)(:[$](\w+)[$](\d+))?/; var DefinedNames = class { static { __name(this, "DefinedNames"); } constructor() { this.matrixMap = {}; } getMatrix(name) { const matrix = this.matrixMap[name] || (this.matrixMap[name] = new CellMatrix()); return matrix; } // add a name to a cell. locStr in the form SheetName!$col$row or SheetName!$c1$r1:$c2:$r2 add(locStr, name) { const location = colCache.decodeEx(locStr); this.addEx(location, name); } addEx(location, name) { const matrix = this.getMatrix(name); if (location.top) { for (let col = location.left; col <= location.right; col++) { for (let row = location.top; row <= location.bottom; row++) { const address = { sheetName: location.sheetName, address: colCache.n2l(col) + row, row, col }; matrix.addCellEx(address); } } } else { matrix.addCellEx(location); } } remove(locStr, name) { const location = colCache.decodeEx(locStr); this.removeEx(location, name); } removeEx(location, name) { const matrix = this.getMatrix(name); matrix.removeCellEx(location); } removeAllNames(location) { _2.each(this.matrixMap, (matrix) => { matrix.removeCellEx(location); }); } forEach(callback) { _2.each(this.matrixMap, (matrix, name) => { matrix.forEach((cell) => { callback(name, cell); }); }); } // get all the names of a cell getNames(addressStr) { return this.getNamesEx(colCache.decodeEx(addressStr)); } getNamesEx(address) { return _2.map(this.matrixMap, (matrix, name) => matrix.findCellEx(address) && name).filter( Boolean ); } _explore(matrix, cell) { cell.mark = false; const { sheetName } = cell; const range = new Range(cell.row, cell.col, cell.row, cell.col, sheetName); let x; let y; function vGrow(yy, edge) { const c = matrix.findCellAt(sheetName, yy, cell.col); if (!c || !c.mark) { return false; } range[edge] = yy; c.mark = false; return true; } __name(vGrow, "vGrow"); for (y = cell.row - 1; vGrow(y, "top"); y--) ; for (y = cell.row + 1; vGrow(y, "bottom"); y++) ; function hGrow(xx, edge) { const cells = []; for (y = range.top; y <= range.bottom; y++) { const c = matrix.findCellAt(sheetName, y, xx); if (c && c.mark) { cells.push(c); } else { return false; } } range[edge] = xx; for (let i = 0; i < cells.length; i++) { cells[i].mark = false; } return true; } __name(hGrow, "hGrow"); for (x = cell.col - 1; hGrow(x, "left"); x--) ; for (x = cell.col + 1; hGrow(x, "right"); x++) ; return range; } getRanges(name, matrix) { matrix = matrix || this.matrixMap[name]; if (!matrix) { return { name, ranges: [] }; } matrix.forEach((cell) => { cell.mark = true; }); const ranges = matrix.map((cell) => cell.mark && this._explore(matrix, cell)).filter(Boolean).map((range) => range.$shortRange); return { name, ranges }; } normaliseMatrix(matrix, sheetName) { matrix.forEachInSheet(sheetName, (cell, row, col) => { if (cell) { if (cell.row !== row || cell.col !== col) { cell.row = row; cell.col = col; cell.address = colCache.n2l(col) + row; } } }); } spliceRows(sheetName, start, numDelete, numInsert) { _2.each(this.matrixMap, (matrix) => { matrix.spliceRows(sheetName, start, numDelete, numInsert); this.normaliseMatrix(matrix, sheetName); }); } spliceColumns(sheetName, start, numDelete, numInsert) { _2.each(this.matrixMap, (matrix) => { matrix.spliceColumns(sheetName, start, numDelete, numInsert); this.normaliseMatrix(matrix, sheetName); }); } get model() { return _2.map(this.matrixMap, (matrix, name) => this.getRanges(name, matrix)).filter( (definedName) => definedName.ranges.length ); } set model(value) { const matrixMap = this.matrixMap = {}; value.forEach((definedName) => { const matrix = matrixMap[definedName.name] = new CellMatrix(); definedName.ranges.forEach((rangeStr) => { if (rangeRegexp.test(rangeStr.split("!").pop() || "")) { matrix.addCell(rangeStr); } }); }); } }; module2.exports = DefinedNames; } }); // ../../node_modules/.pnpm/process-nextick-args@2.0.1/node_modules/process-nextick-args/index.js var require_process_nextick_args = __commonJS({ "../../node_modules/.pnpm/process-nextick-args@2.0.1/node_modules/process-nextick-args/index.js"(exports2, module2) { "use strict"; if (typeof process === "undefined" || !process.version || process.version.indexOf("v0.") === 0 || process.version.indexOf("v1.") === 0 && process.version.indexOf("v1.8.") !== 0) { module2.exports = { nextTick }; } else { module2.exports = process; } function nextTick(fn, arg1, arg2, arg3) { if (typeof fn !== "function") { throw new TypeError('"callback" argument must be a function'); } var len = arguments.length; var args, i; switch (len) { case 0: case 1: return process.nextTick(fn); case 2: return process.nextTick(/* @__PURE__ */ __name(function afterTickOne() { fn.call(null, arg1); }, "afterTickOne")); case 3: return process.nextTick(/* @__PURE__ */ __name(function afterTickTwo() { fn.call(null, arg1, arg2); }, "afterTickTwo")); case 4: return process.nextTick(/* @__PURE__ */ __name(function afterTickThree() { fn.call(null, arg1, arg2, arg3); }, "afterTickThree")); default: args = new Array(len - 1); i = 0; while (i < args.length) { args[i++] = arguments[i]; } return process.nextTick(/* @__PURE__ */ __name(function afterTick() { fn.apply(null, args); }, "afterTick")); } } __name(nextTick, "nextTick"); } }); // ../../node_modules/.pnpm/isarray@1.0.0/node_modules/isarray/index.js var require_isarray = __commonJS({ "../../node_modules/.pnpm/isarray@1.0.0/node_modules/isarray/index.js"(exports2, module2) { var toString2 = {}.toString; module2.exports = Array.isArray || function(arr) { return toString2.call(arr) == "[object Array]"; }; } }); // ../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/stream.js var require_stream2 = __commonJS({ "../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/stream.js"(exports2, module2) { module2.exports = require("stream"); } }); // ../../node_modules/.pnpm/safe-buffer@5.1.2/node_modules/safe-buffer/index.js var require_safe_buffer2 = __commonJS({ "../../node_modules/.pnpm/safe-buffer@5.1.2/node_modules/safe-buffer/index.js"(exports2, module2) { var buffer = require("buffer"); var Buffer2 = buffer.Buffer; function copyProps(src, dst) { for (var key in src) { dst[key] = src[key]; } } __name(copyProps, "copyProps"); if (Buffer2.from && Buffer2.alloc && Buffer2.allocUnsafe && Buffer2.allocUnsafeSlow) { module2.exports = buffer; } else { copyProps(buffer, exports2); exports2.Buffer = SafeBuffer; } function SafeBuffer(arg, encodingOrOffset, length) { return Buffer2(arg, encodingOrOffset, length); } __name(SafeBuffer, "SafeBuffer"); copyProps(Buffer2, SafeBuffer); SafeBuffer.from = function(arg, encodingOrOffset, length) { if (typeof arg === "number") { throw new TypeError("Argument must not be a number"); } return Buffer2(arg, encodingOrOffset, length); }; SafeBuffer.alloc = function(size, fill, encoding) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } var buf = Buffer2(size); if (fill !== void 0) { if (typeof encoding === "string") { buf.fill(fill, encoding); } else { buf.fill(fill); } } else { buf.fill(0); } return buf; }; SafeBuffer.allocUnsafe = function(size) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } return Buffer2(size); }; SafeBuffer.allocUnsafeSlow = function(size) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } return buffer.SlowBuffer(size); }; } }); // ../../node_modules/.pnpm/core-util-is@1.0.3/node_modules/core-util-is/lib/util.js var require_util3 = __commonJS({ "../../node_modules/.pnpm/core-util-is@1.0.3/node_modules/core-util-is/lib/util.js"(exports2) { function isArray(arg) { if (Array.isArray) { return Array.isArray(arg); } return objectToString(arg) === "[object Array]"; } __name(isArray, "isArray"); exports2.isArray = isArray; function isBoolean(arg) { return typeof arg === "boolean"; } __name(isBoolean, "isBoolean"); exports2.isBoolean = isBoolean; function isNull(arg) { return arg === null; } __name(isNull, "isNull"); exports2.isNull = isNull; function isNullOrUndefined(arg) { return arg == null; } __name(isNullOrUndefined, "isNullOrUndefined"); exports2.isNullOrUndefined = isNullOrUndefined; function isNumber(arg) { return typeof arg === "number"; } __name(isNumber, "isNumber"); exports2.isNumber = isNumber; function isString(arg) { return typeof arg === "string"; } __name(isString, "isString"); exports2.isString = isString; function isSymbol(arg) { return typeof arg === "symbol"; } __name(isSymbol, "isSymbol"); exports2.isSymbol = isSymbol; function isUndefined(arg) { return arg === void 0; } __name(isUndefined, "isUndefined"); exports2.isUndefined = isUndefined; function isRegExp(re) { return objectToString(re) === "[object RegExp]"; } __name(isRegExp, "isRegExp"); exports2.isRegExp = isRegExp; function isObject2(arg) { return typeof arg === "object" && arg !== null; } __name(isObject2, "isObject"); exports2.isObject = isObject2; function isDate(d) { return objectToString(d) === "[object Date]"; } __name(isDate, "isDate"); exports2.isDate = isDate; function isError2(e) { return objectToString(e) === "[object Error]" || e instanceof Error; } __name(isError2, "isError"); exports2.isError = isError2; function isFunction(arg) { return typeof arg === "function"; } __name(isFunction, "isFunction"); exports2.isFunction = isFunction; function isPrimitive2(arg) { return arg === null || typeof arg === "boolean" || typeof arg === "number" || typeof arg === "string" || typeof arg === "symbol" || // ES6 symbol typeof arg === "undefined"; } __name(isPrimitive2, "isPrimitive"); exports2.isPrimitive = isPrimitive2; exports2.isBuffer = require("buffer").Buffer.isBuffer; function objectToString(o) { return Object.prototype.toString.call(o); } __name(objectToString, "objectToString"); } }); // ../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/BufferList.js var require_BufferList = __commonJS({ "../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/BufferList.js"(exports2, module2) { "use strict"; function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } __name(_classCallCheck, "_classCallCheck"); var Buffer2 = require_safe_buffer2().Buffer; var util2 = require("util"); function copyBuffer(src, target, offset) { src.copy(target, offset); } __name(copyBuffer, "copyBuffer"); module2.exports = (function() { function BufferList() { _classCallCheck(this, BufferList); this.head = null; this.tail = null; this.length = 0; } __name(BufferList, "BufferList"); BufferList.prototype.push = /* @__PURE__ */ __name(function push(v) { var entry = { data: v, next: null }; if (this.length > 0) this.tail.next = entry; else this.head = entry; this.tail = entry; ++this.length; }, "push"); BufferList.prototype.unshift = /* @__PURE__ */ __name(function unshift(v) { var entry = { data: v, next: this.head }; if (this.length === 0) this.tail = entry; this.head = entry; ++this.length; }, "unshift"); BufferList.prototype.shift = /* @__PURE__ */ __name(function shift() { if (this.length === 0) return; var ret2 = this.head.data; if (this.length === 1) this.head = this.tail = null; else this.head = this.head.next; --this.length; return ret2; }, "shift"); BufferList.prototype.clear = /* @__PURE__ */ __name(function clear() { this.head = this.tail = null; this.length = 0; }, "clear"); BufferList.prototype.join = /* @__PURE__ */ __name(function join(s) { if (this.length === 0) return ""; var p = this.head; var ret2 = "" + p.data; while (p = p.next) { ret2 += s + p.data; } return ret2; }, "join"); BufferList.prototype.concat = /* @__PURE__ */ __name(function concat(n) { if (this.length === 0) return Buffer2.alloc(0); var ret2 = Buffer2.allocUnsafe(n >>> 0); var p = this.head; var i = 0; while (p) { copyBuffer(p.data, ret2, i); i += p.data.length; p = p.next; } return ret2; }, "concat"); return BufferList; })(); if (util2 && util2.inspect && util2.inspect.custom) { module2.exports.prototype[util2.inspect.custom] = function() { var obj2 = util2.inspect({ length: this.length }); return this.constructor.name + " " + obj2; }; } } }); // ../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/destroy.js var require_destroy3 = __commonJS({ "../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/internal/streams/destroy.js"(exports2, module2) { "use strict"; var pna = require_process_nextick_args(); function destroy(err, cb) { var _this = this; var readableDestroyed = this._readableState && this._readableState.destroyed; var writableDestroyed = this._writableState && this._writableState.destroyed; if (readableDestroyed || writableDestroyed) { if (cb) { cb(err); } else if (err) { if (!this._writableState) { pna.nextTick(emitErrorNT, this, err); } else if (!this._writableState.errorEmitted) { this._writableState.errorEmitted = true; pna.nextTick(emitErrorNT, this, err); } } return this; } if (this._readableState) { this._readableState.destroyed = true; } if (this._writableState) { this._writableState.destroyed = true; } this._destroy(err || null, function(err2) { if (!cb && err2) { if (!_this._writableState) { pna.nextTick(emitErrorNT, _this, err2); } else if (!_this._writableState.errorEmitted) { _this._writableState.errorEmitted = true; pna.nextTick(emitErrorNT, _this, err2); } } else if (cb) { cb(err2); } }); return this; } __name(destroy, "destroy"); function undestroy() { if (this._readableState) { this._readableState.destroyed = false; this._readableState.reading = false; this._readableState.ended = false; this._readableState.endEmitted = false; } if (this._writableState) { this._writableState.destroyed = false; this._writableState.ended = false; this._writableState.ending = false; this._writableState.finalCalled = false; this._writableState.prefinished = false; this._writableState.finished = false; this._writableState.errorEmitted = false; } } __name(undestroy, "undestroy"); function emitErrorNT(self2, err) { self2.emit("error", err); } __name(emitErrorNT, "emitErrorNT"); module2.exports = { destroy, undestroy }; } }); // ../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_writable.js var require_stream_writable2 = __commonJS({ "../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_writable.js"(exports2, module2) { "use strict"; var pna = require_process_nextick_args(); module2.exports = Writable; function CorkedRequest(state) { var _this = this; this.next = null; this.entry = null; this.finish = function() { onCorkedFinish(_this, state); }; } __name(CorkedRequest, "CorkedRequest"); var asyncWrite = !process.browser && ["v0.10", "v0.9."].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : pna.nextTick; var Duplex; Writable.WritableState = WritableState; var util2 = Object.create(require_util3()); util2.inherits = require_inherits(); var internalUtil = { deprecate: require_node2() }; var Stream = require_stream2(); var Buffer2 = require_safe_buffer2().Buffer; var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { }; function _uint8ArrayToBuffer(chunk) { return Buffer2.from(chunk); } __name(_uint8ArrayToBuffer, "_uint8ArrayToBuffer"); function _isUint8Array(obj2) { return Buffer2.isBuffer(obj2) || obj2 instanceof OurUint8Array; } __name(_isUint8Array, "_isUint8Array"); var destroyImpl = require_destroy3(); util2.inherits(Writable, Stream); function nop() { } __name(nop, "nop"); function WritableState(options, stream) { Duplex = Duplex || require_stream_duplex2(); options = options || {}; var isDuplex = stream instanceof Duplex; this.objectMode = !!options.objectMode; if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; var hwm = options.highWaterMark; var writableHwm = options.writableHighWaterMark; var defaultHwm = this.objectMode ? 16 : 16 * 1024; if (hwm || hwm === 0) this.highWaterMark = hwm; else if (isDuplex && (writableHwm || writableHwm === 0)) this.highWaterMark = writableHwm; else this.highWaterMark = defaultHwm; this.highWaterMark = Math.floor(this.highWaterMark); this.finalCalled = false; this.needDrain = false; this.ending = false; this.ended = false; this.finished = false; this.destroyed = false; var noDecode = options.decodeStrings === false; this.decodeStrings = !noDecode; this.defaultEncoding = options.defaultEncoding || "utf8"; this.length = 0; this.writing = false; this.corked = 0; this.sync = true; this.bufferProcessing = false; this.onwrite = function(er) { onwrite(stream, er); }; this.writecb = null; this.writelen = 0; this.bufferedRequest = null; this.lastBufferedRequest = null; this.pendingcb = 0; this.prefinished = false; this.errorEmitted = false; this.bufferedRequestCount = 0; this.corkedRequestsFree = new CorkedRequest(this); } __name(WritableState, "WritableState"); WritableState.prototype.getBuffer = /* @__PURE__ */ __name(function getBuffer() { var current = this.bufferedRequest; var out = []; while (current) { out.push(current); current = current.next; } return out; }, "getBuffer"); (function() { try { Object.defineProperty(WritableState.prototype, "buffer", { get: internalUtil.deprecate(function() { return this.getBuffer(); }, "_writableState.buffer is deprecated. Use _writableState.getBuffer instead.", "DEP0003") }); } catch (_2) { } })(); var realHasInstance; if (typeof Symbol === "function" && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === "function") { realHasInstance = Function.prototype[Symbol.hasInstance]; Object.defineProperty(Writable, Symbol.hasInstance, { value: /* @__PURE__ */ __name(function(object) { if (realHasInstance.call(this, object)) return true; if (this !== Writable) return false; return object && object._writableState instanceof WritableState; }, "value") }); } else { realHasInstance = /* @__PURE__ */ __name(function(object) { return object instanceof this; }, "realHasInstance"); } function Writable(options) { Duplex = Duplex || require_stream_duplex2(); if (!realHasInstance.call(Writable, this) && !(this instanceof Duplex)) { return new Writable(options); } this._writableState = new WritableState(options, this); this.writable = true; if (options) { if (typeof options.write === "function") this._write = options.write; if (typeof options.writev === "function") this._writev = options.writev; if (typeof options.destroy === "function") this._destroy = options.destroy; if (typeof options.final === "function") this._final = options.final; } Stream.call(this); } __name(Writable, "Writable"); Writable.prototype.pipe = function() { this.emit("error", new Error("Cannot pipe, not readable")); }; function writeAfterEnd(stream, cb) { var er = new Error("write after end"); stream.emit("error", er); pna.nextTick(cb, er); } __name(writeAfterEnd, "writeAfterEnd"); function validChunk(stream, state, chunk, cb) { var valid = true; var er = false; if (chunk === null) { er = new TypeError("May not write null values to stream"); } else if (typeof chunk !== "string" && chunk !== void 0 && !state.objectMode) { er = new TypeError("Invalid non-string/buffer chunk"); } if (er) { stream.emit("error", er); pna.nextTick(cb, er); valid = false; } return valid; } __name(validChunk, "validChunk"); Writable.prototype.write = function(chunk, encoding, cb) { var state = this._writableState; var ret2 = false; var isBuf = !state.objectMode && _isUint8Array(chunk); if (isBuf && !Buffer2.isBuffer(chunk)) { chunk = _uint8ArrayToBuffer(chunk); } if (typeof encoding === "function") { cb = encoding; encoding = null; } if (isBuf) encoding = "buffer"; else if (!encoding) encoding = state.defaultEncoding; if (typeof cb !== "function") cb = nop; if (state.ended) writeAfterEnd(this, cb); else if (isBuf || validChunk(this, state, chunk, cb)) { state.pendingcb++; ret2 = writeOrBuffer(this, state, isBuf, chunk, encoding, cb); } return ret2; }; Writable.prototype.cork = function() { var state = this._writableState; state.corked++; }; Writable.prototype.uncork = function() { var state = this._writableState; if (state.corked) { state.corked--; if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state); } }; Writable.prototype.setDefaultEncoding = /* @__PURE__ */ __name(function setDefaultEncoding(encoding) { if (typeof encoding === "string") encoding = encoding.toLowerCase(); if (!(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((encoding + "").toLowerCase()) > -1)) throw new TypeError("Unknown encoding: " + encoding); this._writableState.defaultEncoding = encoding; return this; }, "setDefaultEncoding"); function decodeChunk(state, chunk, encoding) { if (!state.objectMode && state.decodeStrings !== false && typeof chunk === "string") { chunk = Buffer2.from(chunk, encoding); } return chunk; } __name(decodeChunk, "decodeChunk"); Object.defineProperty(Writable.prototype, "writableHighWaterMark", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function() { return this._writableState.highWaterMark; }, "get") }); function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) { if (!isBuf) { var newChunk = decodeChunk(state, chunk, encoding); if (chunk !== newChunk) { isBuf = true; encoding = "buffer"; chunk = newChunk; } } var len = state.objectMode ? 1 : chunk.length; state.length += len; var ret2 = state.length < state.highWaterMark; if (!ret2) state.needDrain = true; if (state.writing || state.corked) { var last = state.lastBufferedRequest; state.lastBufferedRequest = { chunk, encoding, isBuf, callback: cb, next: null }; if (last) { last.next = state.lastBufferedRequest; } else { state.bufferedRequest = state.lastBufferedRequest; } state.bufferedRequestCount += 1; } else { doWrite(stream, state, false, len, chunk, encoding, cb); } return ret2; } __name(writeOrBuffer, "writeOrBuffer"); function doWrite(stream, state, writev, len, chunk, encoding, cb) { state.writelen = len; state.writecb = cb; state.writing = true; state.sync = true; if (writev) stream._writev(chunk, state.onwrite); else stream._write(chunk, encoding, state.onwrite); state.sync = false; } __name(doWrite, "doWrite"); function onwriteError(stream, state, sync, er, cb) { --state.pendingcb; if (sync) { pna.nextTick(cb, er); pna.nextTick(finishMaybe, stream, state); stream._writableState.errorEmitted = true; stream.emit("error", er); } else { cb(er); stream._writableState.errorEmitted = true; stream.emit("error", er); finishMaybe(stream, state); } } __name(onwriteError, "onwriteError"); function onwriteStateUpdate(state) { state.writing = false; state.writecb = null; state.length -= state.writelen; state.writelen = 0; } __name(onwriteStateUpdate, "onwriteStateUpdate"); function onwrite(stream, er) { var state = stream._writableState; var sync = state.sync; var cb = state.writecb; onwriteStateUpdate(state); if (er) onwriteError(stream, state, sync, er, cb); else { var finished = needFinish(state); if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) { clearBuffer(stream, state); } if (sync) { asyncWrite(afterWrite, stream, state, finished, cb); } else { afterWrite(stream, state, finished, cb); } } } __name(onwrite, "onwrite"); function afterWrite(stream, state, finished, cb) { if (!finished) onwriteDrain(stream, state); state.pendingcb--; cb(); finishMaybe(stream, state); } __name(afterWrite, "afterWrite"); function onwriteDrain(stream, state) { if (state.length === 0 && state.needDrain) { state.needDrain = false; stream.emit("drain"); } } __name(onwriteDrain, "onwriteDrain"); function clearBuffer(stream, state) { state.bufferProcessing = true; var entry = state.bufferedRequest; if (stream._writev && entry && entry.next) { var l2 = state.bufferedRequestCount; var buffer = new Array(l2); var holder = state.corkedRequestsFree; holder.entry = entry; var count = 0; var allBuffers = true; while (entry) { buffer[count] = entry; if (!entry.isBuf) allBuffers = false; entry = entry.next; count += 1; } buffer.allBuffers = allBuffers; doWrite(stream, state, true, state.length, buffer, "", holder.finish); state.pendingcb++; state.lastBufferedRequest = null; if (holder.next) { state.corkedRequestsFree = holder.next; holder.next = null; } else { state.corkedRequestsFree = new CorkedRequest(state); } state.bufferedRequestCount = 0; } else { while (entry) { var chunk = entry.chunk; var encoding = entry.encoding; var cb = entry.callback; var len = state.objectMode ? 1 : chunk.length; doWrite(stream, state, false, len, chunk, encoding, cb); entry = entry.next; state.bufferedRequestCount--; if (state.writing) { break; } } if (entry === null) state.lastBufferedRequest = null; } state.bufferedRequest = entry; state.bufferProcessing = false; } __name(clearBuffer, "clearBuffer"); Writable.prototype._write = function(chunk, encoding, cb) { cb(new Error("_write() is not implemented")); }; Writable.prototype._writev = null; Writable.prototype.end = function(chunk, encoding, cb) { var state = this._writableState; if (typeof chunk === "function") { cb = chunk; chunk = null; encoding = null; } else if (typeof encoding === "function") { cb = encoding; encoding = null; } if (chunk !== null && chunk !== void 0) this.write(chunk, encoding); if (state.corked) { state.corked = 1; this.uncork(); } if (!state.ending) endWritable(this, state, cb); }; function needFinish(state) { return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing; } __name(needFinish, "needFinish"); function callFinal(stream, state) { stream._final(function(err) { state.pendingcb--; if (err) { stream.emit("error", err); } state.prefinished = true; stream.emit("prefinish"); finishMaybe(stream, state); }); } __name(callFinal, "callFinal"); function prefinish(stream, state) { if (!state.prefinished && !state.finalCalled) { if (typeof stream._final === "function") { state.pendingcb++; state.finalCalled = true; pna.nextTick(callFinal, stream, state); } else { state.prefinished = true; stream.emit("prefinish"); } } } __name(prefinish, "prefinish"); function finishMaybe(stream, state) { var need = needFinish(state); if (need) { prefinish(stream, state); if (state.pendingcb === 0) { state.finished = true; stream.emit("finish"); } } return need; } __name(finishMaybe, "finishMaybe"); function endWritable(stream, state, cb) { state.ending = true; finishMaybe(stream, state); if (cb) { if (state.finished) pna.nextTick(cb); else stream.once("finish", cb); } state.ended = true; stream.writable = false; } __name(endWritable, "endWritable"); function onCorkedFinish(corkReq, state, err) { var entry = corkReq.entry; corkReq.entry = null; while (entry) { var cb = entry.callback; state.pendingcb--; cb(err); entry = entry.next; } state.corkedRequestsFree.next = corkReq; } __name(onCorkedFinish, "onCorkedFinish"); Object.defineProperty(Writable.prototype, "destroyed", { get: /* @__PURE__ */ __name(function() { if (this._writableState === void 0) { return false; } return this._writableState.destroyed; }, "get"), set: /* @__PURE__ */ __name(function(value) { if (!this._writableState) { return; } this._writableState.destroyed = value; }, "set") }); Writable.prototype.destroy = destroyImpl.destroy; Writable.prototype._undestroy = destroyImpl.undestroy; Writable.prototype._destroy = function(err, cb) { this.end(); cb(err); }; } }); // ../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_duplex.js var require_stream_duplex2 = __commonJS({ "../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_duplex.js"(exports2, module2) { "use strict"; var pna = require_process_nextick_args(); var objectKeys = Object.keys || function(obj2) { var keys2 = []; for (var key in obj2) { keys2.push(key); } return keys2; }; module2.exports = Duplex; var util2 = Object.create(require_util3()); util2.inherits = require_inherits(); var Readable = require_stream_readable2(); var Writable = require_stream_writable2(); util2.inherits(Duplex, Readable); { keys = objectKeys(Writable.prototype); for (v = 0; v < keys.length; v++) { method = keys[v]; if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method]; } } var keys; var method; var v; function Duplex(options) { if (!(this instanceof Duplex)) return new Duplex(options); Readable.call(this, options); Writable.call(this, options); if (options && options.readable === false) this.readable = false; if (options && options.writable === false) this.writable = false; this.allowHalfOpen = true; if (options && options.allowHalfOpen === false) this.allowHalfOpen = false; this.once("end", onend); } __name(Duplex, "Duplex"); Object.defineProperty(Duplex.prototype, "writableHighWaterMark", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function() { return this._writableState.highWaterMark; }, "get") }); function onend() { if (this.allowHalfOpen || this._writableState.ended) return; pna.nextTick(onEndNT, this); } __name(onend, "onend"); function onEndNT(self2) { self2.end(); } __name(onEndNT, "onEndNT"); Object.defineProperty(Duplex.prototype, "destroyed", { get: /* @__PURE__ */ __name(function() { if (this._readableState === void 0 || this._writableState === void 0) { return false; } return this._readableState.destroyed && this._writableState.destroyed; }, "get"), set: /* @__PURE__ */ __name(function(value) { if (this._readableState === void 0 || this._writableState === void 0) { return; } this._readableState.destroyed = value; this._writableState.destroyed = value; }, "set") }); Duplex.prototype._destroy = function(err, cb) { this.push(null); this.end(); pna.nextTick(cb, err); }; } }); // ../../node_modules/.pnpm/string_decoder@1.1.1/node_modules/string_decoder/lib/string_decoder.js var require_string_decoder2 = __commonJS({ "../../node_modules/.pnpm/string_decoder@1.1.1/node_modules/string_decoder/lib/string_decoder.js"(exports2) { "use strict"; var Buffer2 = require_safe_buffer2().Buffer; var isEncoding = Buffer2.isEncoding || function(encoding) { encoding = "" + encoding; switch (encoding && encoding.toLowerCase()) { case "hex": case "utf8": case "utf-8": case "ascii": case "binary": case "base64": case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": case "raw": return true; default: return false; } }; function _normalizeEncoding(enc) { if (!enc) return "utf8"; var retried; while (true) { switch (enc) { case "utf8": case "utf-8": return "utf8"; case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return "utf16le"; case "latin1": case "binary": return "latin1"; case "base64": case "ascii": case "hex": return enc; default: if (retried) return; enc = ("" + enc).toLowerCase(); retried = true; } } } __name(_normalizeEncoding, "_normalizeEncoding"); function normalizeEncoding(enc) { var nenc = _normalizeEncoding(enc); if (typeof nenc !== "string" && (Buffer2.isEncoding === isEncoding || !isEncoding(enc))) throw new Error("Unknown encoding: " + enc); return nenc || enc; } __name(normalizeEncoding, "normalizeEncoding"); exports2.StringDecoder = StringDecoder; function StringDecoder(encoding) { this.encoding = normalizeEncoding(encoding); var nb; switch (this.encoding) { case "utf16le": this.text = utf16Text; this.end = utf16End; nb = 4; break; case "utf8": this.fillLast = utf8FillLast; nb = 4; break; case "base64": this.text = base64Text; this.end = base64End; nb = 3; break; default: this.write = simpleWrite; this.end = simpleEnd; return; } this.lastNeed = 0; this.lastTotal = 0; this.lastChar = Buffer2.allocUnsafe(nb); } __name(StringDecoder, "StringDecoder"); StringDecoder.prototype.write = function(buf) { if (buf.length === 0) return ""; var r; var i; if (this.lastNeed) { r = this.fillLast(buf); if (r === void 0) return ""; i = this.lastNeed; this.lastNeed = 0; } else { i = 0; } if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i); return r || ""; }; StringDecoder.prototype.end = utf8End; StringDecoder.prototype.text = utf8Text; StringDecoder.prototype.fillLast = function(buf) { if (this.lastNeed <= buf.length) { buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed); return this.lastChar.toString(this.encoding, 0, this.lastTotal); } buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length); this.lastNeed -= buf.length; }; function utf8CheckByte(byte) { if (byte <= 127) return 0; else if (byte >> 5 === 6) return 2; else if (byte >> 4 === 14) return 3; else if (byte >> 3 === 30) return 4; return byte >> 6 === 2 ? -1 : -2; } __name(utf8CheckByte, "utf8CheckByte"); function utf8CheckIncomplete(self2, buf, i) { var j = buf.length - 1; if (j < i) return 0; var nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) self2.lastNeed = nb - 1; return nb; } if (--j < i || nb === -2) return 0; nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) self2.lastNeed = nb - 2; return nb; } if (--j < i || nb === -2) return 0; nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) { if (nb === 2) nb = 0; else self2.lastNeed = nb - 3; } return nb; } return 0; } __name(utf8CheckIncomplete, "utf8CheckIncomplete"); function utf8CheckExtraBytes(self2, buf, p) { if ((buf[0] & 192) !== 128) { self2.lastNeed = 0; return "\uFFFD"; } if (self2.lastNeed > 1 && buf.length > 1) { if ((buf[1] & 192) !== 128) { self2.lastNeed = 1; return "\uFFFD"; } if (self2.lastNeed > 2 && buf.length > 2) { if ((buf[2] & 192) !== 128) { self2.lastNeed = 2; return "\uFFFD"; } } } } __name(utf8CheckExtraBytes, "utf8CheckExtraBytes"); function utf8FillLast(buf) { var p = this.lastTotal - this.lastNeed; var r = utf8CheckExtraBytes(this, buf, p); if (r !== void 0) return r; if (this.lastNeed <= buf.length) { buf.copy(this.lastChar, p, 0, this.lastNeed); return this.lastChar.toString(this.encoding, 0, this.lastTotal); } buf.copy(this.lastChar, p, 0, buf.length); this.lastNeed -= buf.length; } __name(utf8FillLast, "utf8FillLast"); function utf8Text(buf, i) { var total = utf8CheckIncomplete(this, buf, i); if (!this.lastNeed) return buf.toString("utf8", i); this.lastTotal = total; var end = buf.length - (total - this.lastNeed); buf.copy(this.lastChar, 0, end); return buf.toString("utf8", i, end); } __name(utf8Text, "utf8Text"); function utf8End(buf) { var r = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) return r + "\uFFFD"; return r; } __name(utf8End, "utf8End"); function utf16Text(buf, i) { if ((buf.length - i) % 2 === 0) { var r = buf.toString("utf16le", i); if (r) { var c = r.charCodeAt(r.length - 1); if (c >= 55296 && c <= 56319) { this.lastNeed = 2; this.lastTotal = 4; this.lastChar[0] = buf[buf.length - 2]; this.lastChar[1] = buf[buf.length - 1]; return r.slice(0, -1); } } return r; } this.lastNeed = 1; this.lastTotal = 2; this.lastChar[0] = buf[buf.length - 1]; return buf.toString("utf16le", i, buf.length - 1); } __name(utf16Text, "utf16Text"); function utf16End(buf) { var r = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) { var end = this.lastTotal - this.lastNeed; return r + this.lastChar.toString("utf16le", 0, end); } return r; } __name(utf16End, "utf16End"); function base64Text(buf, i) { var n = (buf.length - i) % 3; if (n === 0) return buf.toString("base64", i); this.lastNeed = 3 - n; this.lastTotal = 3; if (n === 1) { this.lastChar[0] = buf[buf.length - 1]; } else { this.lastChar[0] = buf[buf.length - 2]; this.lastChar[1] = buf[buf.length - 1]; } return buf.toString("base64", i, buf.length - n); } __name(base64Text, "base64Text"); function base64End(buf) { var r = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) return r + this.lastChar.toString("base64", 0, 3 - this.lastNeed); return r; } __name(base64End, "base64End"); function simpleWrite(buf) { return buf.toString(this.encoding); } __name(simpleWrite, "simpleWrite"); function simpleEnd(buf) { return buf && buf.length ? this.write(buf) : ""; } __name(simpleEnd, "simpleEnd"); } }); // ../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_readable.js var require_stream_readable2 = __commonJS({ "../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_readable.js"(exports2, module2) { "use strict"; var pna = require_process_nextick_args(); module2.exports = Readable; var isArray = require_isarray(); var Duplex; Readable.ReadableState = ReadableState; var EE = require("events").EventEmitter; var EElistenerCount = /* @__PURE__ */ __name(function(emitter, type) { return emitter.listeners(type).length; }, "EElistenerCount"); var Stream = require_stream2(); var Buffer2 = require_safe_buffer2().Buffer; var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { }; function _uint8ArrayToBuffer(chunk) { return Buffer2.from(chunk); } __name(_uint8ArrayToBuffer, "_uint8ArrayToBuffer"); function _isUint8Array(obj2) { return Buffer2.isBuffer(obj2) || obj2 instanceof OurUint8Array; } __name(_isUint8Array, "_isUint8Array"); var util2 = Object.create(require_util3()); util2.inherits = require_inherits(); var debugUtil = require("util"); var debug = void 0; if (debugUtil && debugUtil.debuglog) { debug = debugUtil.debuglog("stream"); } else { debug = /* @__PURE__ */ __name(function() { }, "debug"); } var BufferList = require_BufferList(); var destroyImpl = require_destroy3(); var StringDecoder; util2.inherits(Readable, Stream); var kProxyEvents = ["error", "close", "destroy", "pause", "resume"]; function prependListener(emitter, event, fn) { if (typeof emitter.prependListener === "function") return emitter.prependListener(event, fn); if (!emitter._events || !emitter._events[event]) emitter.on(event, fn); else if (isArray(emitter._events[event])) emitter._events[event].unshift(fn); else emitter._events[event] = [fn, emitter._events[event]]; } __name(prependListener, "prependListener"); function ReadableState(options, stream) { Duplex = Duplex || require_stream_duplex2(); options = options || {}; var isDuplex = stream instanceof Duplex; this.objectMode = !!options.objectMode; if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode; var hwm = options.highWaterMark; var readableHwm = options.readableHighWaterMark; var defaultHwm = this.objectMode ? 16 : 16 * 1024; if (hwm || hwm === 0) this.highWaterMark = hwm; else if (isDuplex && (readableHwm || readableHwm === 0)) this.highWaterMark = readableHwm; else this.highWaterMark = defaultHwm; this.highWaterMark = Math.floor(this.highWaterMark); this.buffer = new BufferList(); this.length = 0; this.pipes = null; this.pipesCount = 0; this.flowing = null; this.ended = false; this.endEmitted = false; this.reading = false; this.sync = true; this.needReadable = false; this.emittedReadable = false; this.readableListening = false; this.resumeScheduled = false; this.destroyed = false; this.defaultEncoding = options.defaultEncoding || "utf8"; this.awaitDrain = 0; this.readingMore = false; this.decoder = null; this.encoding = null; if (options.encoding) { if (!StringDecoder) StringDecoder = require_string_decoder2().StringDecoder; this.decoder = new StringDecoder(options.encoding); this.encoding = options.encoding; } } __name(ReadableState, "ReadableState"); function Readable(options) { Duplex = Duplex || require_stream_duplex2(); if (!(this instanceof Readable)) return new Readable(options); this._readableState = new ReadableState(options, this); this.readable = true; if (options) { if (typeof options.read === "function") this._read = options.read; if (typeof options.destroy === "function") this._destroy = options.destroy; } Stream.call(this); } __name(Readable, "Readable"); Object.defineProperty(Readable.prototype, "destroyed", { get: /* @__PURE__ */ __name(function() { if (this._readableState === void 0) { return false; } return this._readableState.destroyed; }, "get"), set: /* @__PURE__ */ __name(function(value) { if (!this._readableState) { return; } this._readableState.destroyed = value; }, "set") }); Readable.prototype.destroy = destroyImpl.destroy; Readable.prototype._undestroy = destroyImpl.undestroy; Readable.prototype._destroy = function(err, cb) { this.push(null); cb(err); }; Readable.prototype.push = function(chunk, encoding) { var state = this._readableState; var skipChunkCheck; if (!state.objectMode) { if (typeof chunk === "string") { encoding = encoding || state.defaultEncoding; if (encoding !== state.encoding) { chunk = Buffer2.from(chunk, encoding); encoding = ""; } skipChunkCheck = true; } } else { skipChunkCheck = true; } return readableAddChunk(this, chunk, encoding, false, skipChunkCheck); }; Readable.prototype.unshift = function(chunk) { return readableAddChunk(this, chunk, null, true, false); }; function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) { var state = stream._readableState; if (chunk === null) { state.reading = false; onEofChunk(stream, state); } else { var er; if (!skipChunkCheck) er = chunkInvalid(state, chunk); if (er) { stream.emit("error", er); } else if (state.objectMode || chunk && chunk.length > 0) { if (typeof chunk !== "string" && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer2.prototype) { chunk = _uint8ArrayToBuffer(chunk); } if (addToFront) { if (state.endEmitted) stream.emit("error", new Error("stream.unshift() after end event")); else addChunk(stream, state, chunk, true); } else if (state.ended) { stream.emit("error", new Error("stream.push() after EOF")); } else { state.reading = false; if (state.decoder && !encoding) { chunk = state.decoder.write(chunk); if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false); else maybeReadMore(stream, state); } else { addChunk(stream, state, chunk, false); } } } else if (!addToFront) { state.reading = false; } } return needMoreData(state); } __name(readableAddChunk, "readableAddChunk"); function addChunk(stream, state, chunk, addToFront) { if (state.flowing && state.length === 0 && !state.sync) { stream.emit("data", chunk); stream.read(0); } else { state.length += state.objectMode ? 1 : chunk.length; if (addToFront) state.buffer.unshift(chunk); else state.buffer.push(chunk); if (state.needReadable) emitReadable(stream); } maybeReadMore(stream, state); } __name(addChunk, "addChunk"); function chunkInvalid(state, chunk) { var er; if (!_isUint8Array(chunk) && typeof chunk !== "string" && chunk !== void 0 && !state.objectMode) { er = new TypeError("Invalid non-string/buffer chunk"); } return er; } __name(chunkInvalid, "chunkInvalid"); function needMoreData(state) { return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0); } __name(needMoreData, "needMoreData"); Readable.prototype.isPaused = function() { return this._readableState.flowing === false; }; Readable.prototype.setEncoding = function(enc) { if (!StringDecoder) StringDecoder = require_string_decoder2().StringDecoder; this._readableState.decoder = new StringDecoder(enc); this._readableState.encoding = enc; return this; }; var MAX_HWM = 8388608; function computeNewHighWaterMark(n) { if (n >= MAX_HWM) { n = MAX_HWM; } else { n--; n |= n >>> 1; n |= n >>> 2; n |= n >>> 4; n |= n >>> 8; n |= n >>> 16; n++; } return n; } __name(computeNewHighWaterMark, "computeNewHighWaterMark"); function howMuchToRead(n, state) { if (n <= 0 || state.length === 0 && state.ended) return 0; if (state.objectMode) return 1; if (n !== n) { if (state.flowing && state.length) return state.buffer.head.data.length; else return state.length; } if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n); if (n <= state.length) return n; if (!state.ended) { state.needReadable = true; return 0; } return state.length; } __name(howMuchToRead, "howMuchToRead"); Readable.prototype.read = function(n) { debug("read", n); n = parseInt(n, 10); var state = this._readableState; var nOrig = n; if (n !== 0) state.emittedReadable = false; if (n === 0 && state.needReadable && (state.length >= state.highWaterMark || state.ended)) { debug("read: emitReadable", state.length, state.ended); if (state.length === 0 && state.ended) endReadable(this); else emitReadable(this); return null; } n = howMuchToRead(n, state); if (n === 0 && state.ended) { if (state.length === 0) endReadable(this); return null; } var doRead = state.needReadable; debug("need readable", doRead); if (state.length === 0 || state.length - n < state.highWaterMark) { doRead = true; debug("length less than watermark", doRead); } if (state.ended || state.reading) { doRead = false; debug("reading or ended", doRead); } else if (doRead) { debug("do read"); state.reading = true; state.sync = true; if (state.length === 0) state.needReadable = true; this._read(state.highWaterMark); state.sync = false; if (!state.reading) n = howMuchToRead(nOrig, state); } var ret2; if (n > 0) ret2 = fromList(n, state); else ret2 = null; if (ret2 === null) { state.needReadable = true; n = 0; } else { state.length -= n; } if (state.length === 0) { if (!state.ended) state.needReadable = true; if (nOrig !== n && state.ended) endReadable(this); } if (ret2 !== null) this.emit("data", ret2); return ret2; }; function onEofChunk(stream, state) { if (state.ended) return; if (state.decoder) { var chunk = state.decoder.end(); if (chunk && chunk.length) { state.buffer.push(chunk); state.length += state.objectMode ? 1 : chunk.length; } } state.ended = true; emitReadable(stream); } __name(onEofChunk, "onEofChunk"); function emitReadable(stream) { var state = stream._readableState; state.needReadable = false; if (!state.emittedReadable) { debug("emitReadable", state.flowing); state.emittedReadable = true; if (state.sync) pna.nextTick(emitReadable_, stream); else emitReadable_(stream); } } __name(emitReadable, "emitReadable"); function emitReadable_(stream) { debug("emit readable"); stream.emit("readable"); flow(stream); } __name(emitReadable_, "emitReadable_"); function maybeReadMore(stream, state) { if (!state.readingMore) { state.readingMore = true; pna.nextTick(maybeReadMore_, stream, state); } } __name(maybeReadMore, "maybeReadMore"); function maybeReadMore_(stream, state) { var len = state.length; while (!state.reading && !state.flowing && !state.ended && state.length < state.highWaterMark) { debug("maybeReadMore read 0"); stream.read(0); if (len === state.length) break; else len = state.length; } state.readingMore = false; } __name(maybeReadMore_, "maybeReadMore_"); Readable.prototype._read = function(n) { this.emit("error", new Error("_read() is not implemented")); }; Readable.prototype.pipe = function(dest, pipeOpts) { var src = this; var state = this._readableState; switch (state.pipesCount) { case 0: state.pipes = dest; break; case 1: state.pipes = [state.pipes, dest]; break; default: state.pipes.push(dest); break; } state.pipesCount += 1; debug("pipe count=%d opts=%j", state.pipesCount, pipeOpts); var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr; var endFn = doEnd ? onend : unpipe; if (state.endEmitted) pna.nextTick(endFn); else src.once("end", endFn); dest.on("unpipe", onunpipe); function onunpipe(readable, unpipeInfo) { debug("onunpipe"); if (readable === src) { if (unpipeInfo && unpipeInfo.hasUnpiped === false) { unpipeInfo.hasUnpiped = true; cleanup(); } } } __name(onunpipe, "onunpipe"); function onend() { debug("onend"); dest.end(); } __name(onend, "onend"); var ondrain = pipeOnDrain(src); dest.on("drain", ondrain); var cleanedUp = false; function cleanup() { debug("cleanup"); dest.removeListener("close", onclose); dest.removeListener("finish", onfinish); dest.removeListener("drain", ondrain); dest.removeListener("error", onerror); dest.removeListener("unpipe", onunpipe); src.removeListener("end", onend); src.removeListener("end", unpipe); src.removeListener("data", ondata); cleanedUp = true; if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain(); } __name(cleanup, "cleanup"); var increasedAwaitDrain = false; src.on("data", ondata); function ondata(chunk) { debug("ondata"); increasedAwaitDrain = false; var ret2 = dest.write(chunk); if (false === ret2 && !increasedAwaitDrain) { if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) { debug("false write response, pause", state.awaitDrain); state.awaitDrain++; increasedAwaitDrain = true; } src.pause(); } } __name(ondata, "ondata"); function onerror(er) { debug("onerror", er); unpipe(); dest.removeListener("error", onerror); if (EElistenerCount(dest, "error") === 0) dest.emit("error", er); } __name(onerror, "onerror"); prependListener(dest, "error", onerror); function onclose() { dest.removeListener("finish", onfinish); unpipe(); } __name(onclose, "onclose"); dest.once("close", onclose); function onfinish() { debug("onfinish"); dest.removeListener("close", onclose); unpipe(); } __name(onfinish, "onfinish"); dest.once("finish", onfinish); function unpipe() { debug("unpipe"); src.unpipe(dest); } __name(unpipe, "unpipe"); dest.emit("pipe", src); if (!state.flowing) { debug("pipe resume"); src.resume(); } return dest; }; function pipeOnDrain(src) { return function() { var state = src._readableState; debug("pipeOnDrain", state.awaitDrain); if (state.awaitDrain) state.awaitDrain--; if (state.awaitDrain === 0 && EElistenerCount(src, "data")) { state.flowing = true; flow(src); } }; } __name(pipeOnDrain, "pipeOnDrain"); Readable.prototype.unpipe = function(dest) { var state = this._readableState; var unpipeInfo = { hasUnpiped: false }; if (state.pipesCount === 0) return this; if (state.pipesCount === 1) { if (dest && dest !== state.pipes) return this; if (!dest) dest = state.pipes; state.pipes = null; state.pipesCount = 0; state.flowing = false; if (dest) dest.emit("unpipe", this, unpipeInfo); return this; } if (!dest) { var dests = state.pipes; var len = state.pipesCount; state.pipes = null; state.pipesCount = 0; state.flowing = false; for (var i = 0; i < len; i++) { dests[i].emit("unpipe", this, { hasUnpiped: false }); } return this; } var index = indexOf(state.pipes, dest); if (index === -1) return this; state.pipes.splice(index, 1); state.pipesCount -= 1; if (state.pipesCount === 1) state.pipes = state.pipes[0]; dest.emit("unpipe", this, unpipeInfo); return this; }; Readable.prototype.on = function(ev, fn) { var res = Stream.prototype.on.call(this, ev, fn); if (ev === "data") { if (this._readableState.flowing !== false) this.resume(); } else if (ev === "readable") { var state = this._readableState; if (!state.endEmitted && !state.readableListening) { state.readableListening = state.needReadable = true; state.emittedReadable = false; if (!state.reading) { pna.nextTick(nReadingNextTick, this); } else if (state.length) { emitReadable(this); } } } return res; }; Readable.prototype.addListener = Readable.prototype.on; function nReadingNextTick(self2) { debug("readable nexttick read 0"); self2.read(0); } __name(nReadingNextTick, "nReadingNextTick"); Readable.prototype.resume = function() { var state = this._readableState; if (!state.flowing) { debug("resume"); state.flowing = true; resume(this, state); } return this; }; function resume(stream, state) { if (!state.resumeScheduled) { state.resumeScheduled = true; pna.nextTick(resume_, stream, state); } } __name(resume, "resume"); function resume_(stream, state) { if (!state.reading) { debug("resume read 0"); stream.read(0); } state.resumeScheduled = false; state.awaitDrain = 0; stream.emit("resume"); flow(stream); if (state.flowing && !state.reading) stream.read(0); } __name(resume_, "resume_"); Readable.prototype.pause = function() { debug("call pause flowing=%j", this._readableState.flowing); if (false !== this._readableState.flowing) { debug("pause"); this._readableState.flowing = false; this.emit("pause"); } return this; }; function flow(stream) { var state = stream._readableState; debug("flow", state.flowing); while (state.flowing && stream.read() !== null) { } } __name(flow, "flow"); Readable.prototype.wrap = function(stream) { var _this = this; var state = this._readableState; var paused = false; stream.on("end", function() { debug("wrapped end"); if (state.decoder && !state.ended) { var chunk = state.decoder.end(); if (chunk && chunk.length) _this.push(chunk); } _this.push(null); }); stream.on("data", function(chunk) { debug("wrapped data"); if (state.decoder) chunk = state.decoder.write(chunk); if (state.objectMode && (chunk === null || chunk === void 0)) return; else if (!state.objectMode && (!chunk || !chunk.length)) return; var ret2 = _this.push(chunk); if (!ret2) { paused = true; stream.pause(); } }); for (var i in stream) { if (this[i] === void 0 && typeof stream[i] === "function") { this[i] = /* @__PURE__ */ (function(method) { return function() { return stream[method].apply(stream, arguments); }; })(i); } } for (var n = 0; n < kProxyEvents.length; n++) { stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n])); } this._read = function(n2) { debug("wrapped _read", n2); if (paused) { paused = false; stream.resume(); } }; return this; }; Object.defineProperty(Readable.prototype, "readableHighWaterMark", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: /* @__PURE__ */ __name(function() { return this._readableState.highWaterMark; }, "get") }); Readable._fromList = fromList; function fromList(n, state) { if (state.length === 0) return null; var ret2; if (state.objectMode) ret2 = state.buffer.shift(); else if (!n || n >= state.length) { if (state.decoder) ret2 = state.buffer.join(""); else if (state.buffer.length === 1) ret2 = state.buffer.head.data; else ret2 = state.buffer.concat(state.length); state.buffer.clear(); } else { ret2 = fromListPartial(n, state.buffer, state.decoder); } return ret2; } __name(fromList, "fromList"); function fromListPartial(n, list, hasStrings) { var ret2; if (n < list.head.data.length) { ret2 = list.head.data.slice(0, n); list.head.data = list.head.data.slice(n); } else if (n === list.head.data.length) { ret2 = list.shift(); } else { ret2 = hasStrings ? copyFromBufferString(n, list) : copyFromBuffer(n, list); } return ret2; } __name(fromListPartial, "fromListPartial"); function copyFromBufferString(n, list) { var p = list.head; var c = 1; var ret2 = p.data; n -= ret2.length; while (p = p.next) { var str = p.data; var nb = n > str.length ? str.length : n; if (nb === str.length) ret2 += str; else ret2 += str.slice(0, n); n -= nb; if (n === 0) { if (nb === str.length) { ++c; if (p.next) list.head = p.next; else list.head = list.tail = null; } else { list.head = p; p.data = str.slice(nb); } break; } ++c; } list.length -= c; return ret2; } __name(copyFromBufferString, "copyFromBufferString"); function copyFromBuffer(n, list) { var ret2 = Buffer2.allocUnsafe(n); var p = list.head; var c = 1; p.data.copy(ret2); n -= p.data.length; while (p = p.next) { var buf = p.data; var nb = n > buf.length ? buf.length : n; buf.copy(ret2, ret2.length - n, 0, nb); n -= nb; if (n === 0) { if (nb === buf.length) { ++c; if (p.next) list.head = p.next; else list.head = list.tail = null; } else { list.head = p; p.data = buf.slice(nb); } break; } ++c; } list.length -= c; return ret2; } __name(copyFromBuffer, "copyFromBuffer"); function endReadable(stream) { var state = stream._readableState; if (state.length > 0) throw new Error('"endReadable()" called on non-empty stream'); if (!state.endEmitted) { state.ended = true; pna.nextTick(endReadableNT, state, stream); } } __name(endReadable, "endReadable"); function endReadableNT(state, stream) { if (!state.endEmitted && state.length === 0) { state.endEmitted = true; stream.readable = false; stream.emit("end"); } } __name(endReadableNT, "endReadableNT"); function indexOf(xs, x) { for (var i = 0, l2 = xs.length; i < l2; i++) { if (xs[i] === x) return i; } return -1; } __name(indexOf, "indexOf"); } }); // ../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_transform.js var require_stream_transform2 = __commonJS({ "../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_transform.js"(exports2, module2) { "use strict"; module2.exports = Transform; var Duplex = require_stream_duplex2(); var util2 = Object.create(require_util3()); util2.inherits = require_inherits(); util2.inherits(Transform, Duplex); function afterTransform(er, data) { var ts = this._transformState; ts.transforming = false; var cb = ts.writecb; if (!cb) { return this.emit("error", new Error("write callback called multiple times")); } ts.writechunk = null; ts.writecb = null; if (data != null) this.push(data); cb(er); var rs = this._readableState; rs.reading = false; if (rs.needReadable || rs.length < rs.highWaterMark) { this._read(rs.highWaterMark); } } __name(afterTransform, "afterTransform"); function Transform(options) { if (!(this instanceof Transform)) return new Transform(options); Duplex.call(this, options); this._transformState = { afterTransform: afterTransform.bind(this), needTransform: false, transforming: false, writecb: null, writechunk: null, writeencoding: null }; this._readableState.needReadable = true; this._readableState.sync = false; if (options) { if (typeof options.transform === "function") this._transform = options.transform; if (typeof options.flush === "function") this._flush = options.flush; } this.on("prefinish", prefinish); } __name(Transform, "Transform"); function prefinish() { var _this = this; if (typeof this._flush === "function") { this._flush(function(er, data) { done(_this, er, data); }); } else { done(this, null, null); } } __name(prefinish, "prefinish"); Transform.prototype.push = function(chunk, encoding) { this._transformState.needTransform = false; return Duplex.prototype.push.call(this, chunk, encoding); }; Transform.prototype._transform = function(chunk, encoding, cb) { throw new Error("_transform() is not implemented"); }; Transform.prototype._write = function(chunk, encoding, cb) { var ts = this._transformState; ts.writecb = cb; ts.writechunk = chunk; ts.writeencoding = encoding; if (!ts.transforming) { var rs = this._readableState; if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark); } }; Transform.prototype._read = function(n) { var ts = this._transformState; if (ts.writechunk !== null && ts.writecb && !ts.transforming) { ts.transforming = true; this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform); } else { ts.needTransform = true; } }; Transform.prototype._destroy = function(err, cb) { var _this2 = this; Duplex.prototype._destroy.call(this, err, function(err2) { cb(err2); _this2.emit("close"); }); }; function done(stream, er, data) { if (er) return stream.emit("error", er); if (data != null) stream.push(data); if (stream._writableState.length) throw new Error("Calling transform done when ws.length != 0"); if (stream._transformState.transforming) throw new Error("Calling transform done when still transforming"); return stream.push(null); } __name(done, "done"); } }); // ../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_passthrough.js var require_stream_passthrough2 = __commonJS({ "../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/lib/_stream_passthrough.js"(exports2, module2) { "use strict"; module2.exports = PassThrough; var Transform = require_stream_transform2(); var util2 = Object.create(require_util3()); util2.inherits = require_inherits(); util2.inherits(PassThrough, Transform); function PassThrough(options) { if (!(this instanceof PassThrough)) return new PassThrough(options); Transform.call(this, options); } __name(PassThrough, "PassThrough"); PassThrough.prototype._transform = function(chunk, encoding, cb) { cb(null, chunk); }; } }); // ../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/readable.js var require_readable2 = __commonJS({ "../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/readable.js"(exports2, module2) { var Stream = require("stream"); if (process.env.READABLE_STREAM === "disable" && Stream) { module2.exports = Stream; exports2 = module2.exports = Stream.Readable; exports2.Readable = Stream.Readable; exports2.Writable = Stream.Writable; exports2.Duplex = Stream.Duplex; exports2.Transform = Stream.Transform; exports2.PassThrough = Stream.PassThrough; exports2.Stream = Stream; } else { exports2 = module2.exports = require_stream_readable2(); exports2.Stream = Stream || exports2; exports2.Readable = exports2; exports2.Writable = require_stream_writable2(); exports2.Duplex = require_stream_duplex2(); exports2.Transform = require_stream_transform2(); exports2.PassThrough = require_stream_passthrough2(); } } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/support.js var require_support = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/support.js"(exports2) { "use strict"; exports2.base64 = true; exports2.array = true; exports2.string = true; exports2.arraybuffer = typeof ArrayBuffer !== "undefined" && typeof Uint8Array !== "undefined"; exports2.nodebuffer = typeof Buffer !== "undefined"; exports2.uint8array = typeof Uint8Array !== "undefined"; if (typeof ArrayBuffer === "undefined") { exports2.blob = false; } else { buffer = new ArrayBuffer(0); try { exports2.blob = new Blob([buffer], { type: "application/zip" }).size === 0; } catch (e) { try { Builder = self.BlobBuilder || self.WebKitBlobBuilder || self.MozBlobBuilder || self.MSBlobBuilder; builder = new Builder(); builder.append(buffer); exports2.blob = builder.getBlob("application/zip").size === 0; } catch (e2) { exports2.blob = false; } } } var buffer; var Builder; var builder; try { exports2.nodestream = !!require_readable2().Readable; } catch (e) { exports2.nodestream = false; } } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/base64.js var require_base64 = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/base64.js"(exports2) { "use strict"; var utils = require_utils20(); var support = require_support(); var _keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; exports2.encode = function(input) { var output = []; var chr1, chr2, chr3, enc1, enc2, enc3, enc4; var i = 0, len = input.length, remainingBytes = len; var isArray = utils.getTypeOf(input) !== "string"; while (i < input.length) { remainingBytes = len - i; if (!isArray) { chr1 = input.charCodeAt(i++); chr2 = i < len ? input.charCodeAt(i++) : 0; chr3 = i < len ? input.charCodeAt(i++) : 0; } else { chr1 = input[i++]; chr2 = i < len ? input[i++] : 0; chr3 = i < len ? input[i++] : 0; } enc1 = chr1 >> 2; enc2 = (chr1 & 3) << 4 | chr2 >> 4; enc3 = remainingBytes > 1 ? (chr2 & 15) << 2 | chr3 >> 6 : 64; enc4 = remainingBytes > 2 ? chr3 & 63 : 64; output.push(_keyStr.charAt(enc1) + _keyStr.charAt(enc2) + _keyStr.charAt(enc3) + _keyStr.charAt(enc4)); } return output.join(""); }; exports2.decode = function(input) { var chr1, chr2, chr3; var enc1, enc2, enc3, enc4; var i = 0, resultIndex = 0; var dataUrlPrefix = "data:"; if (input.substr(0, dataUrlPrefix.length) === dataUrlPrefix) { throw new Error("Invalid base64 input, it looks like a data url."); } input = input.replace(/[^A-Za-z0-9+/=]/g, ""); var totalLength = input.length * 3 / 4; if (input.charAt(input.length - 1) === _keyStr.charAt(64)) { totalLength--; } if (input.charAt(input.length - 2) === _keyStr.charAt(64)) { totalLength--; } if (totalLength % 1 !== 0) { throw new Error("Invalid base64 input, bad content length."); } var output; if (support.uint8array) { output = new Uint8Array(totalLength | 0); } else { output = new Array(totalLength | 0); } while (i < input.length) { enc1 = _keyStr.indexOf(input.charAt(i++)); enc2 = _keyStr.indexOf(input.charAt(i++)); enc3 = _keyStr.indexOf(input.charAt(i++)); enc4 = _keyStr.indexOf(input.charAt(i++)); chr1 = enc1 << 2 | enc2 >> 4; chr2 = (enc2 & 15) << 4 | enc3 >> 2; chr3 = (enc3 & 3) << 6 | enc4; output[resultIndex++] = chr1; if (enc3 !== 64) { output[resultIndex++] = chr2; } if (enc4 !== 64) { output[resultIndex++] = chr3; } } return output; }; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/nodejsUtils.js var require_nodejsUtils = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/nodejsUtils.js"(exports2, module2) { "use strict"; module2.exports = { /** * True if this is running in Nodejs, will be undefined in a browser. * In a browser, browserify won't include this file and the whole module * will be resolved an empty object. */ isNode: typeof Buffer !== "undefined", /** * Create a new nodejs Buffer from an existing content. * @param {Object} data the data to pass to the constructor. * @param {String} encoding the encoding to use. * @return {Buffer} a new Buffer. */ newBufferFrom: /* @__PURE__ */ __name(function(data, encoding) { if (Buffer.from && Buffer.from !== Uint8Array.from) { return Buffer.from(data, encoding); } else { if (typeof data === "number") { throw new Error('The "data" argument must not be a number'); } return new Buffer(data, encoding); } }, "newBufferFrom"), /** * Create a new nodejs Buffer with the specified size. * @param {Integer} size the size of the buffer. * @return {Buffer} a new Buffer. */ allocBuffer: /* @__PURE__ */ __name(function(size) { if (Buffer.alloc) { return Buffer.alloc(size); } else { var buf = new Buffer(size); buf.fill(0); return buf; } }, "allocBuffer"), /** * Find out if an object is a Buffer. * @param {Object} b the object to test. * @return {Boolean} true if the object is a Buffer, false otherwise. */ isBuffer: /* @__PURE__ */ __name(function(b) { return Buffer.isBuffer(b); }, "isBuffer"), isStream: /* @__PURE__ */ __name(function(obj2) { return obj2 && typeof obj2.on === "function" && typeof obj2.pause === "function" && typeof obj2.resume === "function"; }, "isStream") }; } }); // ../../node_modules/.pnpm/immediate@3.0.6/node_modules/immediate/lib/index.js var require_lib10 = __commonJS({ "../../node_modules/.pnpm/immediate@3.0.6/node_modules/immediate/lib/index.js"(exports2, module2) { "use strict"; var Mutation = global.MutationObserver || global.WebKitMutationObserver; var scheduleDrain; if (process.browser) { if (Mutation) { called = 0; observer = new Mutation(nextTick); element = global.document.createTextNode(""); observer.observe(element, { characterData: true }); scheduleDrain = /* @__PURE__ */ __name(function() { element.data = called = ++called % 2; }, "scheduleDrain"); } else if (!global.setImmediate && typeof global.MessageChannel !== "undefined") { channel = new global.MessageChannel(); channel.port1.onmessage = nextTick; scheduleDrain = /* @__PURE__ */ __name(function() { channel.port2.postMessage(0); }, "scheduleDrain"); } else if ("document" in global && "onreadystatechange" in global.document.createElement("script")) { scheduleDrain = /* @__PURE__ */ __name(function() { var scriptEl = global.document.createElement("script"); scriptEl.onreadystatechange = function() { nextTick(); scriptEl.onreadystatechange = null; scriptEl.parentNode.removeChild(scriptEl); scriptEl = null; }; global.document.documentElement.appendChild(scriptEl); }, "scheduleDrain"); } else { scheduleDrain = /* @__PURE__ */ __name(function() { setTimeout(nextTick, 0); }, "scheduleDrain"); } } else { scheduleDrain = /* @__PURE__ */ __name(function() { process.nextTick(nextTick); }, "scheduleDrain"); } var called; var observer; var element; var channel; var draining; var queue = []; function nextTick() { draining = true; var i, oldQueue; var len = queue.length; while (len) { oldQueue = queue; queue = []; i = -1; while (++i < len) { oldQueue[i](); } len = queue.length; } draining = false; } __name(nextTick, "nextTick"); module2.exports = immediate; function immediate(task) { if (queue.push(task) === 1 && !draining) { scheduleDrain(); } } __name(immediate, "immediate"); } }); // ../../node_modules/.pnpm/lie@3.3.0/node_modules/lie/lib/index.js var require_lib11 = __commonJS({ "../../node_modules/.pnpm/lie@3.3.0/node_modules/lie/lib/index.js"(exports2, module2) { "use strict"; var immediate = require_lib10(); function INTERNAL() { } __name(INTERNAL, "INTERNAL"); var handlers = {}; var REJECTED = ["REJECTED"]; var FULFILLED = ["FULFILLED"]; var PENDING = ["PENDING"]; if (!process.browser) { UNHANDLED = ["UNHANDLED"]; } var UNHANDLED; module2.exports = Promise2; function Promise2(resolver) { if (typeof resolver !== "function") { throw new TypeError("resolver must be a function"); } this.state = PENDING; this.queue = []; this.outcome = void 0; if (!process.browser) { this.handled = UNHANDLED; } if (resolver !== INTERNAL) { safelyResolveThenable(this, resolver); } } __name(Promise2, "Promise"); Promise2.prototype.finally = function(callback) { if (typeof callback !== "function") { return this; } var p = this.constructor; return this.then(resolve2, reject2); function resolve2(value) { function yes() { return value; } __name(yes, "yes"); return p.resolve(callback()).then(yes); } __name(resolve2, "resolve"); function reject2(reason) { function no() { throw reason; } __name(no, "no"); return p.resolve(callback()).then(no); } __name(reject2, "reject"); }; Promise2.prototype.catch = function(onRejected) { return this.then(null, onRejected); }; Promise2.prototype.then = function(onFulfilled, onRejected) { if (typeof onFulfilled !== "function" && this.state === FULFILLED || typeof onRejected !== "function" && this.state === REJECTED) { return this; } var promise = new this.constructor(INTERNAL); if (!process.browser) { if (this.handled === UNHANDLED) { this.handled = null; } } if (this.state !== PENDING) { var resolver = this.state === FULFILLED ? onFulfilled : onRejected; unwrap(promise, resolver, this.outcome); } else { this.queue.push(new QueueItem(promise, onFulfilled, onRejected)); } return promise; }; function QueueItem(promise, onFulfilled, onRejected) { this.promise = promise; if (typeof onFulfilled === "function") { this.onFulfilled = onFulfilled; this.callFulfilled = this.otherCallFulfilled; } if (typeof onRejected === "function") { this.onRejected = onRejected; this.callRejected = this.otherCallRejected; } } __name(QueueItem, "QueueItem"); QueueItem.prototype.callFulfilled = function(value) { handlers.resolve(this.promise, value); }; QueueItem.prototype.otherCallFulfilled = function(value) { unwrap(this.promise, this.onFulfilled, value); }; QueueItem.prototype.callRejected = function(value) { handlers.reject(this.promise, value); }; QueueItem.prototype.otherCallRejected = function(value) { unwrap(this.promise, this.onRejected, value); }; function unwrap(promise, func, value) { immediate(function() { var returnValue; try { returnValue = func(value); } catch (e) { return handlers.reject(promise, e); } if (returnValue === promise) { handlers.reject(promise, new TypeError("Cannot resolve promise with itself")); } else { handlers.resolve(promise, returnValue); } }); } __name(unwrap, "unwrap"); handlers.resolve = function(self2, value) { var result = tryCatch2(getThen, value); if (result.status === "error") { return handlers.reject(self2, result.value); } var thenable = result.value; if (thenable) { safelyResolveThenable(self2, thenable); } else { self2.state = FULFILLED; self2.outcome = value; var i = -1; var len = self2.queue.length; while (++i < len) { self2.queue[i].callFulfilled(value); } } return self2; }; handlers.reject = function(self2, error) { self2.state = REJECTED; self2.outcome = error; if (!process.browser) { if (self2.handled === UNHANDLED) { immediate(function() { if (self2.handled === UNHANDLED) { process.emit("unhandledRejection", error, self2); } }); } } var i = -1; var len = self2.queue.length; while (++i < len) { self2.queue[i].callRejected(error); } return self2; }; function getThen(obj2) { var then = obj2 && obj2.then; if (obj2 && (typeof obj2 === "object" || typeof obj2 === "function") && typeof then === "function") { return /* @__PURE__ */ __name(function appyThen() { then.apply(obj2, arguments); }, "appyThen"); } } __name(getThen, "getThen"); function safelyResolveThenable(self2, thenable) { var called = false; function onError(value) { if (called) { return; } called = true; handlers.reject(self2, value); } __name(onError, "onError"); function onSuccess(value) { if (called) { return; } called = true; handlers.resolve(self2, value); } __name(onSuccess, "onSuccess"); function tryToUnwrap() { thenable(onSuccess, onError); } __name(tryToUnwrap, "tryToUnwrap"); var result = tryCatch2(tryToUnwrap); if (result.status === "error") { onError(result.value); } } __name(safelyResolveThenable, "safelyResolveThenable"); function tryCatch2(func, value) { var out = {}; try { out.value = func(value); out.status = "success"; } catch (e) { out.status = "error"; out.value = e; } return out; } __name(tryCatch2, "tryCatch"); Promise2.resolve = resolve; function resolve(value) { if (value instanceof this) { return value; } return handlers.resolve(new this(INTERNAL), value); } __name(resolve, "resolve"); Promise2.reject = reject; function reject(reason) { var promise = new this(INTERNAL); return handlers.reject(promise, reason); } __name(reject, "reject"); Promise2.all = all; function all(iterable) { var self2 = this; if (Object.prototype.toString.call(iterable) !== "[object Array]") { return this.reject(new TypeError("must be an array")); } var len = iterable.length; var called = false; if (!len) { return this.resolve([]); } var values = new Array(len); var resolved = 0; var i = -1; var promise = new this(INTERNAL); while (++i < len) { allResolver(iterable[i], i); } return promise; function allResolver(value, i2) { self2.resolve(value).then(resolveFromAll, function(error) { if (!called) { called = true; handlers.reject(promise, error); } }); function resolveFromAll(outValue) { values[i2] = outValue; if (++resolved === len && !called) { called = true; handlers.resolve(promise, values); } } __name(resolveFromAll, "resolveFromAll"); } __name(allResolver, "allResolver"); } __name(all, "all"); Promise2.race = race; function race(iterable) { var self2 = this; if (Object.prototype.toString.call(iterable) !== "[object Array]") { return this.reject(new TypeError("must be an array")); } var len = iterable.length; var called = false; if (!len) { return this.resolve([]); } var i = -1; var promise = new this(INTERNAL); while (++i < len) { resolver(iterable[i]); } return promise; function resolver(value) { self2.resolve(value).then(function(response) { if (!called) { called = true; handlers.resolve(promise, response); } }, function(error) { if (!called) { called = true; handlers.reject(promise, error); } }); } __name(resolver, "resolver"); } __name(race, "race"); } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/external.js var require_external = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/external.js"(exports2, module2) { "use strict"; var ES6Promise = null; if (typeof Promise !== "undefined") { ES6Promise = Promise; } else { ES6Promise = require_lib11(); } module2.exports = { Promise: ES6Promise }; } }); // ../../node_modules/.pnpm/setimmediate@1.0.5/node_modules/setimmediate/setImmediate.js var require_setImmediate = __commonJS({ "../../node_modules/.pnpm/setimmediate@1.0.5/node_modules/setimmediate/setImmediate.js"(exports2) { (function(global2, undefined2) { "use strict"; if (global2.setImmediate) { return; } var nextHandle = 1; var tasksByHandle = {}; var currentlyRunningATask = false; var doc = global2.document; var registerImmediate; function setImmediate2(callback) { if (typeof callback !== "function") { callback = new Function("" + callback); } var args = new Array(arguments.length - 1); for (var i = 0; i < args.length; i++) { args[i] = arguments[i + 1]; } var task = { callback, args }; tasksByHandle[nextHandle] = task; registerImmediate(nextHandle); return nextHandle++; } __name(setImmediate2, "setImmediate"); function clearImmediate(handle) { delete tasksByHandle[handle]; } __name(clearImmediate, "clearImmediate"); function run(task) { var callback = task.callback; var args = task.args; switch (args.length) { case 0: callback(); break; case 1: callback(args[0]); break; case 2: callback(args[0], args[1]); break; case 3: callback(args[0], args[1], args[2]); break; default: callback.apply(undefined2, args); break; } } __name(run, "run"); function runIfPresent(handle) { if (currentlyRunningATask) { setTimeout(runIfPresent, 0, handle); } else { var task = tasksByHandle[handle]; if (task) { currentlyRunningATask = true; try { run(task); } finally { clearImmediate(handle); currentlyRunningATask = false; } } } } __name(runIfPresent, "runIfPresent"); function installNextTickImplementation() { registerImmediate = /* @__PURE__ */ __name(function(handle) { process.nextTick(function() { runIfPresent(handle); }); }, "registerImmediate"); } __name(installNextTickImplementation, "installNextTickImplementation"); function canUsePostMessage() { if (global2.postMessage && !global2.importScripts) { var postMessageIsAsynchronous = true; var oldOnMessage = global2.onmessage; global2.onmessage = function() { postMessageIsAsynchronous = false; }; global2.postMessage("", "*"); global2.onmessage = oldOnMessage; return postMessageIsAsynchronous; } } __name(canUsePostMessage, "canUsePostMessage"); function installPostMessageImplementation() { var messagePrefix = "setImmediate$" + Math.random() + "$"; var onGlobalMessage = /* @__PURE__ */ __name(function(event) { if (event.source === global2 && typeof event.data === "string" && event.data.indexOf(messagePrefix) === 0) { runIfPresent(+event.data.slice(messagePrefix.length)); } }, "onGlobalMessage"); if (global2.addEventListener) { global2.addEventListener("message", onGlobalMessage, false); } else { global2.attachEvent("onmessage", onGlobalMessage); } registerImmediate = /* @__PURE__ */ __name(function(handle) { global2.postMessage(messagePrefix + handle, "*"); }, "registerImmediate"); } __name(installPostMessageImplementation, "installPostMessageImplementation"); function installMessageChannelImplementation() { var channel = new MessageChannel(); channel.port1.onmessage = function(event) { var handle = event.data; runIfPresent(handle); }; registerImmediate = /* @__PURE__ */ __name(function(handle) { channel.port2.postMessage(handle); }, "registerImmediate"); } __name(installMessageChannelImplementation, "installMessageChannelImplementation"); function installReadyStateChangeImplementation() { var html = doc.documentElement; registerImmediate = /* @__PURE__ */ __name(function(handle) { var script = doc.createElement("script"); script.onreadystatechange = function() { runIfPresent(handle); script.onreadystatechange = null; html.removeChild(script); script = null; }; html.appendChild(script); }, "registerImmediate"); } __name(installReadyStateChangeImplementation, "installReadyStateChangeImplementation"); function installSetTimeoutImplementation() { registerImmediate = /* @__PURE__ */ __name(function(handle) { setTimeout(runIfPresent, 0, handle); }, "registerImmediate"); } __name(installSetTimeoutImplementation, "installSetTimeoutImplementation"); var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global2); attachTo = attachTo && attachTo.setTimeout ? attachTo : global2; if ({}.toString.call(global2.process) === "[object process]") { installNextTickImplementation(); } else if (canUsePostMessage()) { installPostMessageImplementation(); } else if (global2.MessageChannel) { installMessageChannelImplementation(); } else if (doc && "onreadystatechange" in doc.createElement("script")) { installReadyStateChangeImplementation(); } else { installSetTimeoutImplementation(); } attachTo.setImmediate = setImmediate2; attachTo.clearImmediate = clearImmediate; })(typeof self === "undefined" ? typeof global === "undefined" ? exports2 : global : self); } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/utils.js var require_utils20 = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/utils.js"(exports2) { "use strict"; var support = require_support(); var base64 = require_base64(); var nodejsUtils = require_nodejsUtils(); var external = require_external(); require_setImmediate(); function string2binary(str) { var result = null; if (support.uint8array) { result = new Uint8Array(str.length); } else { result = new Array(str.length); } return stringToArrayLike(str, result); } __name(string2binary, "string2binary"); exports2.newBlob = function(part, type) { exports2.checkSupport("blob"); try { return new Blob([part], { type }); } catch (e) { try { var Builder = self.BlobBuilder || self.WebKitBlobBuilder || self.MozBlobBuilder || self.MSBlobBuilder; var builder = new Builder(); builder.append(part); return builder.getBlob(type); } catch (e2) { throw new Error("Bug : can't construct the Blob."); } } }; function identity(input) { return input; } __name(identity, "identity"); function stringToArrayLike(str, array) { for (var i = 0; i < str.length; ++i) { array[i] = str.charCodeAt(i) & 255; } return array; } __name(stringToArrayLike, "stringToArrayLike"); var arrayToStringHelper = { /** * Transform an array of int into a string, chunk by chunk. * See the performances notes on arrayLikeToString. * @param {Array|ArrayBuffer|Uint8Array|Buffer} array the array to transform. * @param {String} type the type of the array. * @param {Integer} chunk the chunk size. * @return {String} the resulting string. * @throws Error if the chunk is too big for the stack. */ stringifyByChunk: /* @__PURE__ */ __name(function(array, type, chunk) { var result = [], k = 0, len = array.length; if (len <= chunk) { return String.fromCharCode.apply(null, array); } while (k < len) { if (type === "array" || type === "nodebuffer") { result.push(String.fromCharCode.apply(null, array.slice(k, Math.min(k + chunk, len)))); } else { result.push(String.fromCharCode.apply(null, array.subarray(k, Math.min(k + chunk, len)))); } k += chunk; } return result.join(""); }, "stringifyByChunk"), /** * Call String.fromCharCode on every item in the array. * This is the naive implementation, which generate A LOT of intermediate string. * This should be used when everything else fail. * @param {Array|ArrayBuffer|Uint8Array|Buffer} array the array to transform. * @return {String} the result. */ stringifyByChar: /* @__PURE__ */ __name(function(array) { var resultStr = ""; for (var i = 0; i < array.length; i++) { resultStr += String.fromCharCode(array[i]); } return resultStr; }, "stringifyByChar"), applyCanBeUsed: { /** * true if the browser accepts to use String.fromCharCode on Uint8Array */ uint8array: (function() { try { return support.uint8array && String.fromCharCode.apply(null, new Uint8Array(1)).length === 1; } catch (e) { return false; } })(), /** * true if the browser accepts to use String.fromCharCode on nodejs Buffer. */ nodebuffer: (function() { try { return support.nodebuffer && String.fromCharCode.apply(null, nodejsUtils.allocBuffer(1)).length === 1; } catch (e) { return false; } })() } }; function arrayLikeToString(array) { var chunk = 65536, type = exports2.getTypeOf(array), canUseApply = true; if (type === "uint8array") { canUseApply = arrayToStringHelper.applyCanBeUsed.uint8array; } else if (type === "nodebuffer") { canUseApply = arrayToStringHelper.applyCanBeUsed.nodebuffer; } if (canUseApply) { while (chunk > 1) { try { return arrayToStringHelper.stringifyByChunk(array, type, chunk); } catch (e) { chunk = Math.floor(chunk / 2); } } } return arrayToStringHelper.stringifyByChar(array); } __name(arrayLikeToString, "arrayLikeToString"); exports2.applyFromCharCode = arrayLikeToString; function arrayLikeToArrayLike(arrayFrom, arrayTo) { for (var i = 0; i < arrayFrom.length; i++) { arrayTo[i] = arrayFrom[i]; } return arrayTo; } __name(arrayLikeToArrayLike, "arrayLikeToArrayLike"); var transform = {}; transform["string"] = { "string": identity, "array": /* @__PURE__ */ __name(function(input) { return stringToArrayLike(input, new Array(input.length)); }, "array"), "arraybuffer": /* @__PURE__ */ __name(function(input) { return transform["string"]["uint8array"](input).buffer; }, "arraybuffer"), "uint8array": /* @__PURE__ */ __name(function(input) { return stringToArrayLike(input, new Uint8Array(input.length)); }, "uint8array"), "nodebuffer": /* @__PURE__ */ __name(function(input) { return stringToArrayLike(input, nodejsUtils.allocBuffer(input.length)); }, "nodebuffer") }; transform["array"] = { "string": arrayLikeToString, "array": identity, "arraybuffer": /* @__PURE__ */ __name(function(input) { return new Uint8Array(input).buffer; }, "arraybuffer"), "uint8array": /* @__PURE__ */ __name(function(input) { return new Uint8Array(input); }, "uint8array"), "nodebuffer": /* @__PURE__ */ __name(function(input) { return nodejsUtils.newBufferFrom(input); }, "nodebuffer") }; transform["arraybuffer"] = { "string": /* @__PURE__ */ __name(function(input) { return arrayLikeToString(new Uint8Array(input)); }, "string"), "array": /* @__PURE__ */ __name(function(input) { return arrayLikeToArrayLike(new Uint8Array(input), new Array(input.byteLength)); }, "array"), "arraybuffer": identity, "uint8array": /* @__PURE__ */ __name(function(input) { return new Uint8Array(input); }, "uint8array"), "nodebuffer": /* @__PURE__ */ __name(function(input) { return nodejsUtils.newBufferFrom(new Uint8Array(input)); }, "nodebuffer") }; transform["uint8array"] = { "string": arrayLikeToString, "array": /* @__PURE__ */ __name(function(input) { return arrayLikeToArrayLike(input, new Array(input.length)); }, "array"), "arraybuffer": /* @__PURE__ */ __name(function(input) { return input.buffer; }, "arraybuffer"), "uint8array": identity, "nodebuffer": /* @__PURE__ */ __name(function(input) { return nodejsUtils.newBufferFrom(input); }, "nodebuffer") }; transform["nodebuffer"] = { "string": arrayLikeToString, "array": /* @__PURE__ */ __name(function(input) { return arrayLikeToArrayLike(input, new Array(input.length)); }, "array"), "arraybuffer": /* @__PURE__ */ __name(function(input) { return transform["nodebuffer"]["uint8array"](input).buffer; }, "arraybuffer"), "uint8array": /* @__PURE__ */ __name(function(input) { return arrayLikeToArrayLike(input, new Uint8Array(input.length)); }, "uint8array"), "nodebuffer": identity }; exports2.transformTo = function(outputType, input) { if (!input) { input = ""; } if (!outputType) { return input; } exports2.checkSupport(outputType); var inputType = exports2.getTypeOf(input); var result = transform[inputType][outputType](input); return result; }; exports2.resolve = function(path) { var parts = path.split("/"); var result = []; for (var index = 0; index < parts.length; index++) { var part = parts[index]; if (part === "." || part === "" && index !== 0 && index !== parts.length - 1) { continue; } else if (part === "..") { result.pop(); } else { result.push(part); } } return result.join("/"); }; exports2.getTypeOf = function(input) { if (typeof input === "string") { return "string"; } if (Object.prototype.toString.call(input) === "[object Array]") { return "array"; } if (support.nodebuffer && nodejsUtils.isBuffer(input)) { return "nodebuffer"; } if (support.uint8array && input instanceof Uint8Array) { return "uint8array"; } if (support.arraybuffer && input instanceof ArrayBuffer) { return "arraybuffer"; } }; exports2.checkSupport = function(type) { var supported = support[type.toLowerCase()]; if (!supported) { throw new Error(type + " is not supported by this platform"); } }; exports2.MAX_VALUE_16BITS = 65535; exports2.MAX_VALUE_32BITS = -1; exports2.pretty = function(str) { var res = "", code, i; for (i = 0; i < (str || "").length; i++) { code = str.charCodeAt(i); res += "\\x" + (code < 16 ? "0" : "") + code.toString(16).toUpperCase(); } return res; }; exports2.delay = function(callback, args, self2) { setImmediate(function() { callback.apply(self2 || null, args || []); }); }; exports2.inherits = function(ctor, superCtor) { var Obj = /* @__PURE__ */ __name(function() { }, "Obj"); Obj.prototype = superCtor.prototype; ctor.prototype = new Obj(); }; exports2.extend = function() { var result = {}, i, attr; for (i = 0; i < arguments.length; i++) { for (attr in arguments[i]) { if (Object.prototype.hasOwnProperty.call(arguments[i], attr) && typeof result[attr] === "undefined") { result[attr] = arguments[i][attr]; } } } return result; }; exports2.prepareContent = function(name, inputData, isBinary, isOptimizedBinaryString, isBase64) { var promise = external.Promise.resolve(inputData).then(function(data) { var isBlob = support.blob && (data instanceof Blob || ["[object File]", "[object Blob]"].indexOf(Object.prototype.toString.call(data)) !== -1); if (isBlob && typeof FileReader !== "undefined") { return new external.Promise(function(resolve, reject) { var reader = new FileReader(); reader.onload = function(e) { resolve(e.target.result); }; reader.onerror = function(e) { reject(e.target.error); }; reader.readAsArrayBuffer(data); }); } else { return data; } }); return promise.then(function(data) { var dataType = exports2.getTypeOf(data); if (!dataType) { return external.Promise.reject( new Error("Can't read the data of '" + name + "'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?") ); } if (dataType === "arraybuffer") { data = exports2.transformTo("uint8array", data); } else if (dataType === "string") { if (isBase64) { data = base64.decode(data); } else if (isBinary) { if (isOptimizedBinaryString !== true) { data = string2binary(data); } } } return data; }); }; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/GenericWorker.js var require_GenericWorker = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/GenericWorker.js"(exports2, module2) { "use strict"; function GenericWorker(name) { this.name = name || "default"; this.streamInfo = {}; this.generatedError = null; this.extraStreamInfo = {}; this.isPaused = true; this.isFinished = false; this.isLocked = false; this._listeners = { "data": [], "end": [], "error": [] }; this.previous = null; } __name(GenericWorker, "GenericWorker"); GenericWorker.prototype = { /** * Push a chunk to the next workers. * @param {Object} chunk the chunk to push */ push: /* @__PURE__ */ __name(function(chunk) { this.emit("data", chunk); }, "push"), /** * End the stream. * @return {Boolean} true if this call ended the worker, false otherwise. */ end: /* @__PURE__ */ __name(function() { if (this.isFinished) { return false; } this.flush(); try { this.emit("end"); this.cleanUp(); this.isFinished = true; } catch (e) { this.emit("error", e); } return true; }, "end"), /** * End the stream with an error. * @param {Error} e the error which caused the premature end. * @return {Boolean} true if this call ended the worker with an error, false otherwise. */ error: /* @__PURE__ */ __name(function(e) { if (this.isFinished) { return false; } if (this.isPaused) { this.generatedError = e; } else { this.isFinished = true; this.emit("error", e); if (this.previous) { this.previous.error(e); } this.cleanUp(); } return true; }, "error"), /** * Add a callback on an event. * @param {String} name the name of the event (data, end, error) * @param {Function} listener the function to call when the event is triggered * @return {GenericWorker} the current object for chainability */ on: /* @__PURE__ */ __name(function(name, listener) { this._listeners[name].push(listener); return this; }, "on"), /** * Clean any references when a worker is ending. */ cleanUp: /* @__PURE__ */ __name(function() { this.streamInfo = this.generatedError = this.extraStreamInfo = null; this._listeners = []; }, "cleanUp"), /** * Trigger an event. This will call registered callback with the provided arg. * @param {String} name the name of the event (data, end, error) * @param {Object} arg the argument to call the callback with. */ emit: /* @__PURE__ */ __name(function(name, arg) { if (this._listeners[name]) { for (var i = 0; i < this._listeners[name].length; i++) { this._listeners[name][i].call(this, arg); } } }, "emit"), /** * Chain a worker with an other. * @param {Worker} next the worker receiving events from the current one. * @return {worker} the next worker for chainability */ pipe: /* @__PURE__ */ __name(function(next) { return next.registerPrevious(this); }, "pipe"), /** * Same as `pipe` in the other direction. * Using an API with `pipe(next)` is very easy. * Implementing the API with the point of view of the next one registering * a source is easier, see the ZipFileWorker. * @param {Worker} previous the previous worker, sending events to this one * @return {Worker} the current worker for chainability */ registerPrevious: /* @__PURE__ */ __name(function(previous) { if (this.isLocked) { throw new Error("The stream '" + this + "' has already been used."); } this.streamInfo = previous.streamInfo; this.mergeStreamInfo(); this.previous = previous; var self2 = this; previous.on("data", function(chunk) { self2.processChunk(chunk); }); previous.on("end", function() { self2.end(); }); previous.on("error", function(e) { self2.error(e); }); return this; }, "registerPrevious"), /** * Pause the stream so it doesn't send events anymore. * @return {Boolean} true if this call paused the worker, false otherwise. */ pause: /* @__PURE__ */ __name(function() { if (this.isPaused || this.isFinished) { return false; } this.isPaused = true; if (this.previous) { this.previous.pause(); } return true; }, "pause"), /** * Resume a paused stream. * @return {Boolean} true if this call resumed the worker, false otherwise. */ resume: /* @__PURE__ */ __name(function() { if (!this.isPaused || this.isFinished) { return false; } this.isPaused = false; var withError = false; if (this.generatedError) { this.error(this.generatedError); withError = true; } if (this.previous) { this.previous.resume(); } return !withError; }, "resume"), /** * Flush any remaining bytes as the stream is ending. */ flush: /* @__PURE__ */ __name(function() { }, "flush"), /** * Process a chunk. This is usually the method overridden. * @param {Object} chunk the chunk to process. */ processChunk: /* @__PURE__ */ __name(function(chunk) { this.push(chunk); }, "processChunk"), /** * Add a key/value to be added in the workers chain streamInfo once activated. * @param {String} key the key to use * @param {Object} value the associated value * @return {Worker} the current worker for chainability */ withStreamInfo: /* @__PURE__ */ __name(function(key, value) { this.extraStreamInfo[key] = value; this.mergeStreamInfo(); return this; }, "withStreamInfo"), /** * Merge this worker's streamInfo into the chain's streamInfo. */ mergeStreamInfo: /* @__PURE__ */ __name(function() { for (var key in this.extraStreamInfo) { if (!Object.prototype.hasOwnProperty.call(this.extraStreamInfo, key)) { continue; } this.streamInfo[key] = this.extraStreamInfo[key]; } }, "mergeStreamInfo"), /** * Lock the stream to prevent further updates on the workers chain. * After calling this method, all calls to pipe will fail. */ lock: /* @__PURE__ */ __name(function() { if (this.isLocked) { throw new Error("The stream '" + this + "' has already been used."); } this.isLocked = true; if (this.previous) { this.previous.lock(); } }, "lock"), /** * * Pretty print the workers chain. */ toString: /* @__PURE__ */ __name(function() { var me = "Worker " + this.name; if (this.previous) { return this.previous + " -> " + me; } else { return me; } }, "toString") }; module2.exports = GenericWorker; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/utf8.js var require_utf8 = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/utf8.js"(exports2) { "use strict"; var utils = require_utils20(); var support = require_support(); var nodejsUtils = require_nodejsUtils(); var GenericWorker = require_GenericWorker(); var _utf8len = new Array(256); for (i = 0; i < 256; i++) { _utf8len[i] = i >= 252 ? 6 : i >= 248 ? 5 : i >= 240 ? 4 : i >= 224 ? 3 : i >= 192 ? 2 : 1; } var i; _utf8len[254] = _utf8len[254] = 1; var string2buf = /* @__PURE__ */ __name(function(str) { var buf, c, c2, m_pos, i2, str_len = str.length, buf_len = 0; for (m_pos = 0; m_pos < str_len; m_pos++) { c = str.charCodeAt(m_pos); if ((c & 64512) === 55296 && m_pos + 1 < str_len) { c2 = str.charCodeAt(m_pos + 1); if ((c2 & 64512) === 56320) { c = 65536 + (c - 55296 << 10) + (c2 - 56320); m_pos++; } } buf_len += c < 128 ? 1 : c < 2048 ? 2 : c < 65536 ? 3 : 4; } if (support.uint8array) { buf = new Uint8Array(buf_len); } else { buf = new Array(buf_len); } for (i2 = 0, m_pos = 0; i2 < buf_len; m_pos++) { c = str.charCodeAt(m_pos); if ((c & 64512) === 55296 && m_pos + 1 < str_len) { c2 = str.charCodeAt(m_pos + 1); if ((c2 & 64512) === 56320) { c = 65536 + (c - 55296 << 10) + (c2 - 56320); m_pos++; } } if (c < 128) { buf[i2++] = c; } else if (c < 2048) { buf[i2++] = 192 | c >>> 6; buf[i2++] = 128 | c & 63; } else if (c < 65536) { buf[i2++] = 224 | c >>> 12; buf[i2++] = 128 | c >>> 6 & 63; buf[i2++] = 128 | c & 63; } else { buf[i2++] = 240 | c >>> 18; buf[i2++] = 128 | c >>> 12 & 63; buf[i2++] = 128 | c >>> 6 & 63; buf[i2++] = 128 | c & 63; } } return buf; }, "string2buf"); var utf8border = /* @__PURE__ */ __name(function(buf, max) { var pos; max = max || buf.length; if (max > buf.length) { max = buf.length; } pos = max - 1; while (pos >= 0 && (buf[pos] & 192) === 128) { pos--; } if (pos < 0) { return max; } if (pos === 0) { return max; } return pos + _utf8len[buf[pos]] > max ? pos : max; }, "utf8border"); var buf2string = /* @__PURE__ */ __name(function(buf) { var i2, out, c, c_len; var len = buf.length; var utf16buf = new Array(len * 2); for (out = 0, i2 = 0; i2 < len; ) { c = buf[i2++]; if (c < 128) { utf16buf[out++] = c; continue; } c_len = _utf8len[c]; if (c_len > 4) { utf16buf[out++] = 65533; i2 += c_len - 1; continue; } c &= c_len === 2 ? 31 : c_len === 3 ? 15 : 7; while (c_len > 1 && i2 < len) { c = c << 6 | buf[i2++] & 63; c_len--; } if (c_len > 1) { utf16buf[out++] = 65533; continue; } if (c < 65536) { utf16buf[out++] = c; } else { c -= 65536; utf16buf[out++] = 55296 | c >> 10 & 1023; utf16buf[out++] = 56320 | c & 1023; } } if (utf16buf.length !== out) { if (utf16buf.subarray) { utf16buf = utf16buf.subarray(0, out); } else { utf16buf.length = out; } } return utils.applyFromCharCode(utf16buf); }, "buf2string"); exports2.utf8encode = /* @__PURE__ */ __name(function utf8encode(str) { if (support.nodebuffer) { return nodejsUtils.newBufferFrom(str, "utf-8"); } return string2buf(str); }, "utf8encode"); exports2.utf8decode = /* @__PURE__ */ __name(function utf8decode(buf) { if (support.nodebuffer) { return utils.transformTo("nodebuffer", buf).toString("utf-8"); } buf = utils.transformTo(support.uint8array ? "uint8array" : "array", buf); return buf2string(buf); }, "utf8decode"); function Utf8DecodeWorker() { GenericWorker.call(this, "utf-8 decode"); this.leftOver = null; } __name(Utf8DecodeWorker, "Utf8DecodeWorker"); utils.inherits(Utf8DecodeWorker, GenericWorker); Utf8DecodeWorker.prototype.processChunk = function(chunk) { var data = utils.transformTo(support.uint8array ? "uint8array" : "array", chunk.data); if (this.leftOver && this.leftOver.length) { if (support.uint8array) { var previousData = data; data = new Uint8Array(previousData.length + this.leftOver.length); data.set(this.leftOver, 0); data.set(previousData, this.leftOver.length); } else { data = this.leftOver.concat(data); } this.leftOver = null; } var nextBoundary = utf8border(data); var usableData = data; if (nextBoundary !== data.length) { if (support.uint8array) { usableData = data.subarray(0, nextBoundary); this.leftOver = data.subarray(nextBoundary, data.length); } else { usableData = data.slice(0, nextBoundary); this.leftOver = data.slice(nextBoundary, data.length); } } this.push({ data: exports2.utf8decode(usableData), meta: chunk.meta }); }; Utf8DecodeWorker.prototype.flush = function() { if (this.leftOver && this.leftOver.length) { this.push({ data: exports2.utf8decode(this.leftOver), meta: {} }); this.leftOver = null; } }; exports2.Utf8DecodeWorker = Utf8DecodeWorker; function Utf8EncodeWorker() { GenericWorker.call(this, "utf-8 encode"); } __name(Utf8EncodeWorker, "Utf8EncodeWorker"); utils.inherits(Utf8EncodeWorker, GenericWorker); Utf8EncodeWorker.prototype.processChunk = function(chunk) { this.push({ data: exports2.utf8encode(chunk.data), meta: chunk.meta }); }; exports2.Utf8EncodeWorker = Utf8EncodeWorker; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/ConvertWorker.js var require_ConvertWorker = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/ConvertWorker.js"(exports2, module2) { "use strict"; var GenericWorker = require_GenericWorker(); var utils = require_utils20(); function ConvertWorker(destType) { GenericWorker.call(this, "ConvertWorker to " + destType); this.destType = destType; } __name(ConvertWorker, "ConvertWorker"); utils.inherits(ConvertWorker, GenericWorker); ConvertWorker.prototype.processChunk = function(chunk) { this.push({ data: utils.transformTo(this.destType, chunk.data), meta: chunk.meta }); }; module2.exports = ConvertWorker; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js var require_NodejsStreamOutputAdapter = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js"(exports2, module2) { "use strict"; var Readable = require_readable2().Readable; var utils = require_utils20(); utils.inherits(NodejsStreamOutputAdapter, Readable); function NodejsStreamOutputAdapter(helper, options, updateCb) { Readable.call(this, options); this._helper = helper; var self2 = this; helper.on("data", function(data, meta) { if (!self2.push(data)) { self2._helper.pause(); } if (updateCb) { updateCb(meta); } }).on("error", function(e) { self2.emit("error", e); }).on("end", function() { self2.push(null); }); } __name(NodejsStreamOutputAdapter, "NodejsStreamOutputAdapter"); NodejsStreamOutputAdapter.prototype._read = function() { this._helper.resume(); }; module2.exports = NodejsStreamOutputAdapter; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/StreamHelper.js var require_StreamHelper = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/StreamHelper.js"(exports2, module2) { "use strict"; var utils = require_utils20(); var ConvertWorker = require_ConvertWorker(); var GenericWorker = require_GenericWorker(); var base64 = require_base64(); var support = require_support(); var external = require_external(); var NodejsStreamOutputAdapter = null; if (support.nodestream) { try { NodejsStreamOutputAdapter = require_NodejsStreamOutputAdapter(); } catch (e) { } } function transformZipOutput(type, content, mimeType) { switch (type) { case "blob": return utils.newBlob(utils.transformTo("arraybuffer", content), mimeType); case "base64": return base64.encode(content); default: return utils.transformTo(type, content); } } __name(transformZipOutput, "transformZipOutput"); function concat(type, dataArray) { var i, index = 0, res = null, totalLength = 0; for (i = 0; i < dataArray.length; i++) { totalLength += dataArray[i].length; } switch (type) { case "string": return dataArray.join(""); case "array": return Array.prototype.concat.apply([], dataArray); case "uint8array": res = new Uint8Array(totalLength); for (i = 0; i < dataArray.length; i++) { res.set(dataArray[i], index); index += dataArray[i].length; } return res; case "nodebuffer": return Buffer.concat(dataArray); default: throw new Error("concat : unsupported type '" + type + "'"); } } __name(concat, "concat"); function accumulate(helper, updateCallback) { return new external.Promise(function(resolve, reject) { var dataArray = []; var chunkType = helper._internalType, resultType = helper._outputType, mimeType = helper._mimeType; helper.on("data", function(data, meta) { dataArray.push(data); if (updateCallback) { updateCallback(meta); } }).on("error", function(err) { dataArray = []; reject(err); }).on("end", function() { try { var result = transformZipOutput(resultType, concat(chunkType, dataArray), mimeType); resolve(result); } catch (e) { reject(e); } dataArray = []; }).resume(); }); } __name(accumulate, "accumulate"); function StreamHelper(worker, outputType, mimeType) { var internalType = outputType; switch (outputType) { case "blob": case "arraybuffer": internalType = "uint8array"; break; case "base64": internalType = "string"; break; } try { this._internalType = internalType; this._outputType = outputType; this._mimeType = mimeType; utils.checkSupport(internalType); this._worker = worker.pipe(new ConvertWorker(internalType)); worker.lock(); } catch (e) { this._worker = new GenericWorker("error"); this._worker.error(e); } } __name(StreamHelper, "StreamHelper"); StreamHelper.prototype = { /** * Listen a StreamHelper, accumulate its content and concatenate it into a * complete block. * @param {Function} updateCb the update callback. * @return Promise the promise for the accumulation. */ accumulate: /* @__PURE__ */ __name(function(updateCb) { return accumulate(this, updateCb); }, "accumulate"), /** * Add a listener on an event triggered on a stream. * @param {String} evt the name of the event * @param {Function} fn the listener * @return {StreamHelper} the current helper. */ on: /* @__PURE__ */ __name(function(evt, fn) { var self2 = this; if (evt === "data") { this._worker.on(evt, function(chunk) { fn.call(self2, chunk.data, chunk.meta); }); } else { this._worker.on(evt, function() { utils.delay(fn, arguments, self2); }); } return this; }, "on"), /** * Resume the flow of chunks. * @return {StreamHelper} the current helper. */ resume: /* @__PURE__ */ __name(function() { utils.delay(this._worker.resume, [], this._worker); return this; }, "resume"), /** * Pause the flow of chunks. * @return {StreamHelper} the current helper. */ pause: /* @__PURE__ */ __name(function() { this._worker.pause(); return this; }, "pause"), /** * Return a nodejs stream for this helper. * @param {Function} updateCb the update callback. * @return {NodejsStreamOutputAdapter} the nodejs stream. */ toNodejsStream: /* @__PURE__ */ __name(function(updateCb) { utils.checkSupport("nodestream"); if (this._outputType !== "nodebuffer") { throw new Error(this._outputType + " is not supported by this method"); } return new NodejsStreamOutputAdapter(this, { objectMode: this._outputType !== "nodebuffer" }, updateCb); }, "toNodejsStream") }; module2.exports = StreamHelper; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/defaults.js var require_defaults2 = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/defaults.js"(exports2) { "use strict"; exports2.base64 = false; exports2.binary = false; exports2.dir = false; exports2.createFolders = true; exports2.date = null; exports2.compression = null; exports2.compressionOptions = null; exports2.comment = null; exports2.unixPermissions = null; exports2.dosPermissions = null; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/DataWorker.js var require_DataWorker = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/DataWorker.js"(exports2, module2) { "use strict"; var utils = require_utils20(); var GenericWorker = require_GenericWorker(); var DEFAULT_BLOCK_SIZE = 16 * 1024; function DataWorker(dataP) { GenericWorker.call(this, "DataWorker"); var self2 = this; this.dataIsReady = false; this.index = 0; this.max = 0; this.data = null; this.type = ""; this._tickScheduled = false; dataP.then(function(data) { self2.dataIsReady = true; self2.data = data; self2.max = data && data.length || 0; self2.type = utils.getTypeOf(data); if (!self2.isPaused) { self2._tickAndRepeat(); } }, function(e) { self2.error(e); }); } __name(DataWorker, "DataWorker"); utils.inherits(DataWorker, GenericWorker); DataWorker.prototype.cleanUp = function() { GenericWorker.prototype.cleanUp.call(this); this.data = null; }; DataWorker.prototype.resume = function() { if (!GenericWorker.prototype.resume.call(this)) { return false; } if (!this._tickScheduled && this.dataIsReady) { this._tickScheduled = true; utils.delay(this._tickAndRepeat, [], this); } return true; }; DataWorker.prototype._tickAndRepeat = function() { this._tickScheduled = false; if (this.isPaused || this.isFinished) { return; } this._tick(); if (!this.isFinished) { utils.delay(this._tickAndRepeat, [], this); this._tickScheduled = true; } }; DataWorker.prototype._tick = function() { if (this.isPaused || this.isFinished) { return false; } var size = DEFAULT_BLOCK_SIZE; var data = null, nextIndex = Math.min(this.max, this.index + size); if (this.index >= this.max) { return this.end(); } else { switch (this.type) { case "string": data = this.data.substring(this.index, nextIndex); break; case "uint8array": data = this.data.subarray(this.index, nextIndex); break; case "array": case "nodebuffer": data = this.data.slice(this.index, nextIndex); break; } this.index = nextIndex; return this.push({ data, meta: { percent: this.max ? this.index / this.max * 100 : 0 } }); } }; module2.exports = DataWorker; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/crc32.js var require_crc32 = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/crc32.js"(exports2, module2) { "use strict"; var utils = require_utils20(); function makeTable() { var c, table = []; for (var n = 0; n < 256; n++) { c = n; for (var k = 0; k < 8; k++) { c = c & 1 ? 3988292384 ^ c >>> 1 : c >>> 1; } table[n] = c; } return table; } __name(makeTable, "makeTable"); var crcTable = makeTable(); function crc32(crc, buf, len, pos) { var t = crcTable, end = pos + len; crc = crc ^ -1; for (var i = pos; i < end; i++) { crc = crc >>> 8 ^ t[(crc ^ buf[i]) & 255]; } return crc ^ -1; } __name(crc32, "crc32"); function crc32str(crc, str, len, pos) { var t = crcTable, end = pos + len; crc = crc ^ -1; for (var i = pos; i < end; i++) { crc = crc >>> 8 ^ t[(crc ^ str.charCodeAt(i)) & 255]; } return crc ^ -1; } __name(crc32str, "crc32str"); module2.exports = /* @__PURE__ */ __name(function crc32wrapper(input, crc) { if (typeof input === "undefined" || !input.length) { return 0; } var isArray = utils.getTypeOf(input) !== "string"; if (isArray) { return crc32(crc | 0, input, input.length, 0); } else { return crc32str(crc | 0, input, input.length, 0); } }, "crc32wrapper"); } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/Crc32Probe.js var require_Crc32Probe = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/Crc32Probe.js"(exports2, module2) { "use strict"; var GenericWorker = require_GenericWorker(); var crc32 = require_crc32(); var utils = require_utils20(); function Crc32Probe() { GenericWorker.call(this, "Crc32Probe"); this.withStreamInfo("crc32", 0); } __name(Crc32Probe, "Crc32Probe"); utils.inherits(Crc32Probe, GenericWorker); Crc32Probe.prototype.processChunk = function(chunk) { this.streamInfo.crc32 = crc32(chunk.data, this.streamInfo.crc32 || 0); this.push(chunk); }; module2.exports = Crc32Probe; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/DataLengthProbe.js var require_DataLengthProbe = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/stream/DataLengthProbe.js"(exports2, module2) { "use strict"; var utils = require_utils20(); var GenericWorker = require_GenericWorker(); function DataLengthProbe(propName) { GenericWorker.call(this, "DataLengthProbe for " + propName); this.propName = propName; this.withStreamInfo(propName, 0); } __name(DataLengthProbe, "DataLengthProbe"); utils.inherits(DataLengthProbe, GenericWorker); DataLengthProbe.prototype.processChunk = function(chunk) { if (chunk) { var length = this.streamInfo[this.propName] || 0; this.streamInfo[this.propName] = length + chunk.data.length; } GenericWorker.prototype.processChunk.call(this, chunk); }; module2.exports = DataLengthProbe; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/compressedObject.js var require_compressedObject = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/compressedObject.js"(exports2, module2) { "use strict"; var external = require_external(); var DataWorker = require_DataWorker(); var Crc32Probe = require_Crc32Probe(); var DataLengthProbe = require_DataLengthProbe(); function CompressedObject(compressedSize, uncompressedSize, crc32, compression, data) { this.compressedSize = compressedSize; this.uncompressedSize = uncompressedSize; this.crc32 = crc32; this.compression = compression; this.compressedContent = data; } __name(CompressedObject, "CompressedObject"); CompressedObject.prototype = { /** * Create a worker to get the uncompressed content. * @return {GenericWorker} the worker. */ getContentWorker: /* @__PURE__ */ __name(function() { var worker = new DataWorker(external.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new DataLengthProbe("data_length")); var that = this; worker.on("end", function() { if (this.streamInfo["data_length"] !== that.uncompressedSize) { throw new Error("Bug : uncompressed data size mismatch"); } }); return worker; }, "getContentWorker"), /** * Create a worker to get the compressed content. * @return {GenericWorker} the worker. */ getCompressedWorker: /* @__PURE__ */ __name(function() { return new DataWorker(external.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize", this.compressedSize).withStreamInfo("uncompressedSize", this.uncompressedSize).withStreamInfo("crc32", this.crc32).withStreamInfo("compression", this.compression); }, "getCompressedWorker") }; CompressedObject.createWorkerFrom = function(uncompressedWorker, compression, compressionOptions) { return uncompressedWorker.pipe(new Crc32Probe()).pipe(new DataLengthProbe("uncompressedSize")).pipe(compression.compressWorker(compressionOptions)).pipe(new DataLengthProbe("compressedSize")).withStreamInfo("compression", compression); }; module2.exports = CompressedObject; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/zipObject.js var require_zipObject = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/zipObject.js"(exports2, module2) { "use strict"; var StreamHelper = require_StreamHelper(); var DataWorker = require_DataWorker(); var utf8 = require_utf8(); var CompressedObject = require_compressedObject(); var GenericWorker = require_GenericWorker(); var ZipObject = /* @__PURE__ */ __name(function(name, data, options) { this.name = name; this.dir = options.dir; this.date = options.date; this.comment = options.comment; this.unixPermissions = options.unixPermissions; this.dosPermissions = options.dosPermissions; this._data = data; this._dataBinary = options.binary; this.options = { compression: options.compression, compressionOptions: options.compressionOptions }; }, "ZipObject"); ZipObject.prototype = { /** * Create an internal stream for the content of this object. * @param {String} type the type of each chunk. * @return StreamHelper the stream. */ internalStream: /* @__PURE__ */ __name(function(type) { var result = null, outputType = "string"; try { if (!type) { throw new Error("No output type specified."); } outputType = type.toLowerCase(); var askUnicodeString = outputType === "string" || outputType === "text"; if (outputType === "binarystring" || outputType === "text") { outputType = "string"; } result = this._decompressWorker(); var isUnicodeString = !this._dataBinary; if (isUnicodeString && !askUnicodeString) { result = result.pipe(new utf8.Utf8EncodeWorker()); } if (!isUnicodeString && askUnicodeString) { result = result.pipe(new utf8.Utf8DecodeWorker()); } } catch (e) { result = new GenericWorker("error"); result.error(e); } return new StreamHelper(result, outputType, ""); }, "internalStream"), /** * Prepare the content in the asked type. * @param {String} type the type of the result. * @param {Function} onUpdate a function to call on each internal update. * @return Promise the promise of the result. */ async: /* @__PURE__ */ __name(function(type, onUpdate) { return this.internalStream(type).accumulate(onUpdate); }, "async"), /** * Prepare the content as a nodejs stream. * @param {String} type the type of each chunk. * @param {Function} onUpdate a function to call on each internal update. * @return Stream the stream. */ nodeStream: /* @__PURE__ */ __name(function(type, onUpdate) { return this.internalStream(type || "nodebuffer").toNodejsStream(onUpdate); }, "nodeStream"), /** * Return a worker for the compressed content. * @private * @param {Object} compression the compression object to use. * @param {Object} compressionOptions the options to use when compressing. * @return Worker the worker. */ _compressWorker: /* @__PURE__ */ __name(function(compression, compressionOptions) { if (this._data instanceof CompressedObject && this._data.compression.magic === compression.magic) { return this._data.getCompressedWorker(); } else { var result = this._decompressWorker(); if (!this._dataBinary) { result = result.pipe(new utf8.Utf8EncodeWorker()); } return CompressedObject.createWorkerFrom(result, compression, compressionOptions); } }, "_compressWorker"), /** * Return a worker for the decompressed content. * @private * @return Worker the worker. */ _decompressWorker: /* @__PURE__ */ __name(function() { if (this._data instanceof CompressedObject) { return this._data.getContentWorker(); } else if (this._data instanceof GenericWorker) { return this._data; } else { return new DataWorker(this._data); } }, "_decompressWorker") }; var removedMethods = ["asText", "asBinary", "asNodeBuffer", "asUint8Array", "asArrayBuffer"]; var removedFn = /* @__PURE__ */ __name(function() { throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide."); }, "removedFn"); for (i = 0; i < removedMethods.length; i++) { ZipObject.prototype[removedMethods[i]] = removedFn; } var i; module2.exports = ZipObject; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/utils/common.js var require_common4 = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/utils/common.js"(exports2) { "use strict"; var TYPED_OK = typeof Uint8Array !== "undefined" && typeof Uint16Array !== "undefined" && typeof Int32Array !== "undefined"; function _has(obj2, key) { return Object.prototype.hasOwnProperty.call(obj2, key); } __name(_has, "_has"); exports2.assign = function(obj2) { var sources = Array.prototype.slice.call(arguments, 1); while (sources.length) { var source = sources.shift(); if (!source) { continue; } if (typeof source !== "object") { throw new TypeError(source + "must be non-object"); } for (var p in source) { if (_has(source, p)) { obj2[p] = source[p]; } } } return obj2; }; exports2.shrinkBuf = function(buf, size) { if (buf.length === size) { return buf; } if (buf.subarray) { return buf.subarray(0, size); } buf.length = size; return buf; }; var fnTyped = { arraySet: /* @__PURE__ */ __name(function(dest, src, src_offs, len, dest_offs) { if (src.subarray && dest.subarray) { dest.set(src.subarray(src_offs, src_offs + len), dest_offs); return; } for (var i = 0; i < len; i++) { dest[dest_offs + i] = src[src_offs + i]; } }, "arraySet"), // Join array of chunks to single array. flattenChunks: /* @__PURE__ */ __name(function(chunks) { var i, l2, len, pos, chunk, result; len = 0; for (i = 0, l2 = chunks.length; i < l2; i++) { len += chunks[i].length; } result = new Uint8Array(len); pos = 0; for (i = 0, l2 = chunks.length; i < l2; i++) { chunk = chunks[i]; result.set(chunk, pos); pos += chunk.length; } return result; }, "flattenChunks") }; var fnUntyped = { arraySet: /* @__PURE__ */ __name(function(dest, src, src_offs, len, dest_offs) { for (var i = 0; i < len; i++) { dest[dest_offs + i] = src[src_offs + i]; } }, "arraySet"), // Join array of chunks to single array. flattenChunks: /* @__PURE__ */ __name(function(chunks) { return [].concat.apply([], chunks); }, "flattenChunks") }; exports2.setTyped = function(on) { if (on) { exports2.Buf8 = Uint8Array; exports2.Buf16 = Uint16Array; exports2.Buf32 = Int32Array; exports2.assign(exports2, fnTyped); } else { exports2.Buf8 = Array; exports2.Buf16 = Array; exports2.Buf32 = Array; exports2.assign(exports2, fnUntyped); } }; exports2.setTyped(TYPED_OK); } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/trees.js var require_trees = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/trees.js"(exports2) { "use strict"; var utils = require_common4(); var Z_FIXED = 4; var Z_BINARY = 0; var Z_TEXT = 1; var Z_UNKNOWN = 2; function zero(buf) { var len = buf.length; while (--len >= 0) { buf[len] = 0; } } __name(zero, "zero"); var STORED_BLOCK = 0; var STATIC_TREES = 1; var DYN_TREES = 2; var MIN_MATCH = 3; var MAX_MATCH = 258; var LENGTH_CODES = 29; var LITERALS = 256; var L_CODES = LITERALS + 1 + LENGTH_CODES; var D_CODES = 30; var BL_CODES = 19; var HEAP_SIZE = 2 * L_CODES + 1; var MAX_BITS = 15; var Buf_size = 16; var MAX_BL_BITS = 7; var END_BLOCK = 256; var REP_3_6 = 16; var REPZ_3_10 = 17; var REPZ_11_138 = 18; var extra_lbits = ( /* extra bits for each length code */ [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0] ); var extra_dbits = ( /* extra bits for each distance code */ [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13] ); var extra_blbits = ( /* extra bits for each bit length code */ [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7] ); var bl_order = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]; var DIST_CODE_LEN = 512; var static_ltree = new Array((L_CODES + 2) * 2); zero(static_ltree); var static_dtree = new Array(D_CODES * 2); zero(static_dtree); var _dist_code = new Array(DIST_CODE_LEN); zero(_dist_code); var _length_code = new Array(MAX_MATCH - MIN_MATCH + 1); zero(_length_code); var base_length = new Array(LENGTH_CODES); zero(base_length); var base_dist = new Array(D_CODES); zero(base_dist); function StaticTreeDesc(static_tree, extra_bits, extra_base, elems, max_length) { this.static_tree = static_tree; this.extra_bits = extra_bits; this.extra_base = extra_base; this.elems = elems; this.max_length = max_length; this.has_stree = static_tree && static_tree.length; } __name(StaticTreeDesc, "StaticTreeDesc"); var static_l_desc; var static_d_desc; var static_bl_desc; function TreeDesc(dyn_tree, stat_desc) { this.dyn_tree = dyn_tree; this.max_code = 0; this.stat_desc = stat_desc; } __name(TreeDesc, "TreeDesc"); function d_code(dist) { return dist < 256 ? _dist_code[dist] : _dist_code[256 + (dist >>> 7)]; } __name(d_code, "d_code"); function put_short(s, w) { s.pending_buf[s.pending++] = w & 255; s.pending_buf[s.pending++] = w >>> 8 & 255; } __name(put_short, "put_short"); function send_bits(s, value, length) { if (s.bi_valid > Buf_size - length) { s.bi_buf |= value << s.bi_valid & 65535; put_short(s, s.bi_buf); s.bi_buf = value >> Buf_size - s.bi_valid; s.bi_valid += length - Buf_size; } else { s.bi_buf |= value << s.bi_valid & 65535; s.bi_valid += length; } } __name(send_bits, "send_bits"); function send_code(s, c, tree) { send_bits( s, tree[c * 2], tree[c * 2 + 1] /*.Len*/ ); } __name(send_code, "send_code"); function bi_reverse(code, len) { var res = 0; do { res |= code & 1; code >>>= 1; res <<= 1; } while (--len > 0); return res >>> 1; } __name(bi_reverse, "bi_reverse"); function bi_flush(s) { if (s.bi_valid === 16) { put_short(s, s.bi_buf); s.bi_buf = 0; s.bi_valid = 0; } else if (s.bi_valid >= 8) { s.pending_buf[s.pending++] = s.bi_buf & 255; s.bi_buf >>= 8; s.bi_valid -= 8; } } __name(bi_flush, "bi_flush"); function gen_bitlen(s, desc) { var tree = desc.dyn_tree; var max_code = desc.max_code; var stree = desc.stat_desc.static_tree; var has_stree = desc.stat_desc.has_stree; var extra = desc.stat_desc.extra_bits; var base = desc.stat_desc.extra_base; var max_length = desc.stat_desc.max_length; var h; var n, m; var bits; var xbits; var f; var overflow = 0; for (bits = 0; bits <= MAX_BITS; bits++) { s.bl_count[bits] = 0; } tree[s.heap[s.heap_max] * 2 + 1] = 0; for (h = s.heap_max + 1; h < HEAP_SIZE; h++) { n = s.heap[h]; bits = tree[tree[n * 2 + 1] * 2 + 1] + 1; if (bits > max_length) { bits = max_length; overflow++; } tree[n * 2 + 1] = bits; if (n > max_code) { continue; } s.bl_count[bits]++; xbits = 0; if (n >= base) { xbits = extra[n - base]; } f = tree[n * 2]; s.opt_len += f * (bits + xbits); if (has_stree) { s.static_len += f * (stree[n * 2 + 1] + xbits); } } if (overflow === 0) { return; } do { bits = max_length - 1; while (s.bl_count[bits] === 0) { bits--; } s.bl_count[bits]--; s.bl_count[bits + 1] += 2; s.bl_count[max_length]--; overflow -= 2; } while (overflow > 0); for (bits = max_length; bits !== 0; bits--) { n = s.bl_count[bits]; while (n !== 0) { m = s.heap[--h]; if (m > max_code) { continue; } if (tree[m * 2 + 1] !== bits) { s.opt_len += (bits - tree[m * 2 + 1]) * tree[m * 2]; tree[m * 2 + 1] = bits; } n--; } } } __name(gen_bitlen, "gen_bitlen"); function gen_codes(tree, max_code, bl_count) { var next_code = new Array(MAX_BITS + 1); var code = 0; var bits; var n; for (bits = 1; bits <= MAX_BITS; bits++) { next_code[bits] = code = code + bl_count[bits - 1] << 1; } for (n = 0; n <= max_code; n++) { var len = tree[n * 2 + 1]; if (len === 0) { continue; } tree[n * 2] = bi_reverse(next_code[len]++, len); } } __name(gen_codes, "gen_codes"); function tr_static_init() { var n; var bits; var length; var code; var dist; var bl_count = new Array(MAX_BITS + 1); length = 0; for (code = 0; code < LENGTH_CODES - 1; code++) { base_length[code] = length; for (n = 0; n < 1 << extra_lbits[code]; n++) { _length_code[length++] = code; } } _length_code[length - 1] = code; dist = 0; for (code = 0; code < 16; code++) { base_dist[code] = dist; for (n = 0; n < 1 << extra_dbits[code]; n++) { _dist_code[dist++] = code; } } dist >>= 7; for (; code < D_CODES; code++) { base_dist[code] = dist << 7; for (n = 0; n < 1 << extra_dbits[code] - 7; n++) { _dist_code[256 + dist++] = code; } } for (bits = 0; bits <= MAX_BITS; bits++) { bl_count[bits] = 0; } n = 0; while (n <= 143) { static_ltree[n * 2 + 1] = 8; n++; bl_count[8]++; } while (n <= 255) { static_ltree[n * 2 + 1] = 9; n++; bl_count[9]++; } while (n <= 279) { static_ltree[n * 2 + 1] = 7; n++; bl_count[7]++; } while (n <= 287) { static_ltree[n * 2 + 1] = 8; n++; bl_count[8]++; } gen_codes(static_ltree, L_CODES + 1, bl_count); for (n = 0; n < D_CODES; n++) { static_dtree[n * 2 + 1] = 5; static_dtree[n * 2] = bi_reverse(n, 5); } static_l_desc = new StaticTreeDesc(static_ltree, extra_lbits, LITERALS + 1, L_CODES, MAX_BITS); static_d_desc = new StaticTreeDesc(static_dtree, extra_dbits, 0, D_CODES, MAX_BITS); static_bl_desc = new StaticTreeDesc(new Array(0), extra_blbits, 0, BL_CODES, MAX_BL_BITS); } __name(tr_static_init, "tr_static_init"); function init_block(s) { var n; for (n = 0; n < L_CODES; n++) { s.dyn_ltree[n * 2] = 0; } for (n = 0; n < D_CODES; n++) { s.dyn_dtree[n * 2] = 0; } for (n = 0; n < BL_CODES; n++) { s.bl_tree[n * 2] = 0; } s.dyn_ltree[END_BLOCK * 2] = 1; s.opt_len = s.static_len = 0; s.last_lit = s.matches = 0; } __name(init_block, "init_block"); function bi_windup(s) { if (s.bi_valid > 8) { put_short(s, s.bi_buf); } else if (s.bi_valid > 0) { s.pending_buf[s.pending++] = s.bi_buf; } s.bi_buf = 0; s.bi_valid = 0; } __name(bi_windup, "bi_windup"); function copy_block(s, buf, len, header) { bi_windup(s); if (header) { put_short(s, len); put_short(s, ~len); } utils.arraySet(s.pending_buf, s.window, buf, len, s.pending); s.pending += len; } __name(copy_block, "copy_block"); function smaller(tree, n, m, depth) { var _n2 = n * 2; var _m2 = m * 2; return tree[_n2] < tree[_m2] || tree[_n2] === tree[_m2] && depth[n] <= depth[m]; } __name(smaller, "smaller"); function pqdownheap(s, tree, k) { var v = s.heap[k]; var j = k << 1; while (j <= s.heap_len) { if (j < s.heap_len && smaller(tree, s.heap[j + 1], s.heap[j], s.depth)) { j++; } if (smaller(tree, v, s.heap[j], s.depth)) { break; } s.heap[k] = s.heap[j]; k = j; j <<= 1; } s.heap[k] = v; } __name(pqdownheap, "pqdownheap"); function compress_block(s, ltree, dtree) { var dist; var lc; var lx = 0; var code; var extra; if (s.last_lit !== 0) { do { dist = s.pending_buf[s.d_buf + lx * 2] << 8 | s.pending_buf[s.d_buf + lx * 2 + 1]; lc = s.pending_buf[s.l_buf + lx]; lx++; if (dist === 0) { send_code(s, lc, ltree); } else { code = _length_code[lc]; send_code(s, code + LITERALS + 1, ltree); extra = extra_lbits[code]; if (extra !== 0) { lc -= base_length[code]; send_bits(s, lc, extra); } dist--; code = d_code(dist); send_code(s, code, dtree); extra = extra_dbits[code]; if (extra !== 0) { dist -= base_dist[code]; send_bits(s, dist, extra); } } } while (lx < s.last_lit); } send_code(s, END_BLOCK, ltree); } __name(compress_block, "compress_block"); function build_tree(s, desc) { var tree = desc.dyn_tree; var stree = desc.stat_desc.static_tree; var has_stree = desc.stat_desc.has_stree; var elems = desc.stat_desc.elems; var n, m; var max_code = -1; var node; s.heap_len = 0; s.heap_max = HEAP_SIZE; for (n = 0; n < elems; n++) { if (tree[n * 2] !== 0) { s.heap[++s.heap_len] = max_code = n; s.depth[n] = 0; } else { tree[n * 2 + 1] = 0; } } while (s.heap_len < 2) { node = s.heap[++s.heap_len] = max_code < 2 ? ++max_code : 0; tree[node * 2] = 1; s.depth[node] = 0; s.opt_len--; if (has_stree) { s.static_len -= stree[node * 2 + 1]; } } desc.max_code = max_code; for (n = s.heap_len >> 1; n >= 1; n--) { pqdownheap(s, tree, n); } node = elems; do { n = s.heap[ 1 /*SMALLEST*/ ]; s.heap[ 1 /*SMALLEST*/ ] = s.heap[s.heap_len--]; pqdownheap( s, tree, 1 /*SMALLEST*/ ); m = s.heap[ 1 /*SMALLEST*/ ]; s.heap[--s.heap_max] = n; s.heap[--s.heap_max] = m; tree[node * 2] = tree[n * 2] + tree[m * 2]; s.depth[node] = (s.depth[n] >= s.depth[m] ? s.depth[n] : s.depth[m]) + 1; tree[n * 2 + 1] = tree[m * 2 + 1] = node; s.heap[ 1 /*SMALLEST*/ ] = node++; pqdownheap( s, tree, 1 /*SMALLEST*/ ); } while (s.heap_len >= 2); s.heap[--s.heap_max] = s.heap[ 1 /*SMALLEST*/ ]; gen_bitlen(s, desc); gen_codes(tree, max_code, s.bl_count); } __name(build_tree, "build_tree"); function scan_tree(s, tree, max_code) { var n; var prevlen = -1; var curlen; var nextlen = tree[0 * 2 + 1]; var count = 0; var max_count = 7; var min_count = 4; if (nextlen === 0) { max_count = 138; min_count = 3; } tree[(max_code + 1) * 2 + 1] = 65535; for (n = 0; n <= max_code; n++) { curlen = nextlen; nextlen = tree[(n + 1) * 2 + 1]; if (++count < max_count && curlen === nextlen) { continue; } else if (count < min_count) { s.bl_tree[curlen * 2] += count; } else if (curlen !== 0) { if (curlen !== prevlen) { s.bl_tree[curlen * 2]++; } s.bl_tree[REP_3_6 * 2]++; } else if (count <= 10) { s.bl_tree[REPZ_3_10 * 2]++; } else { s.bl_tree[REPZ_11_138 * 2]++; } count = 0; prevlen = curlen; if (nextlen === 0) { max_count = 138; min_count = 3; } else if (curlen === nextlen) { max_count = 6; min_count = 3; } else { max_count = 7; min_count = 4; } } } __name(scan_tree, "scan_tree"); function send_tree(s, tree, max_code) { var n; var prevlen = -1; var curlen; var nextlen = tree[0 * 2 + 1]; var count = 0; var max_count = 7; var min_count = 4; if (nextlen === 0) { max_count = 138; min_count = 3; } for (n = 0; n <= max_code; n++) { curlen = nextlen; nextlen = tree[(n + 1) * 2 + 1]; if (++count < max_count && curlen === nextlen) { continue; } else if (count < min_count) { do { send_code(s, curlen, s.bl_tree); } while (--count !== 0); } else if (curlen !== 0) { if (curlen !== prevlen) { send_code(s, curlen, s.bl_tree); count--; } send_code(s, REP_3_6, s.bl_tree); send_bits(s, count - 3, 2); } else if (count <= 10) { send_code(s, REPZ_3_10, s.bl_tree); send_bits(s, count - 3, 3); } else { send_code(s, REPZ_11_138, s.bl_tree); send_bits(s, count - 11, 7); } count = 0; prevlen = curlen; if (nextlen === 0) { max_count = 138; min_count = 3; } else if (curlen === nextlen) { max_count = 6; min_count = 3; } else { max_count = 7; min_count = 4; } } } __name(send_tree, "send_tree"); function build_bl_tree(s) { var max_blindex; scan_tree(s, s.dyn_ltree, s.l_desc.max_code); scan_tree(s, s.dyn_dtree, s.d_desc.max_code); build_tree(s, s.bl_desc); for (max_blindex = BL_CODES - 1; max_blindex >= 3; max_blindex--) { if (s.bl_tree[bl_order[max_blindex] * 2 + 1] !== 0) { break; } } s.opt_len += 3 * (max_blindex + 1) + 5 + 5 + 4; return max_blindex; } __name(build_bl_tree, "build_bl_tree"); function send_all_trees(s, lcodes, dcodes, blcodes) { var rank; send_bits(s, lcodes - 257, 5); send_bits(s, dcodes - 1, 5); send_bits(s, blcodes - 4, 4); for (rank = 0; rank < blcodes; rank++) { send_bits(s, s.bl_tree[bl_order[rank] * 2 + 1], 3); } send_tree(s, s.dyn_ltree, lcodes - 1); send_tree(s, s.dyn_dtree, dcodes - 1); } __name(send_all_trees, "send_all_trees"); function detect_data_type(s) { var black_mask = 4093624447; var n; for (n = 0; n <= 31; n++, black_mask >>>= 1) { if (black_mask & 1 && s.dyn_ltree[n * 2] !== 0) { return Z_BINARY; } } if (s.dyn_ltree[9 * 2] !== 0 || s.dyn_ltree[10 * 2] !== 0 || s.dyn_ltree[13 * 2] !== 0) { return Z_TEXT; } for (n = 32; n < LITERALS; n++) { if (s.dyn_ltree[n * 2] !== 0) { return Z_TEXT; } } return Z_BINARY; } __name(detect_data_type, "detect_data_type"); var static_init_done = false; function _tr_init(s) { if (!static_init_done) { tr_static_init(); static_init_done = true; } s.l_desc = new TreeDesc(s.dyn_ltree, static_l_desc); s.d_desc = new TreeDesc(s.dyn_dtree, static_d_desc); s.bl_desc = new TreeDesc(s.bl_tree, static_bl_desc); s.bi_buf = 0; s.bi_valid = 0; init_block(s); } __name(_tr_init, "_tr_init"); function _tr_stored_block(s, buf, stored_len, last) { send_bits(s, (STORED_BLOCK << 1) + (last ? 1 : 0), 3); copy_block(s, buf, stored_len, true); } __name(_tr_stored_block, "_tr_stored_block"); function _tr_align(s) { send_bits(s, STATIC_TREES << 1, 3); send_code(s, END_BLOCK, static_ltree); bi_flush(s); } __name(_tr_align, "_tr_align"); function _tr_flush_block(s, buf, stored_len, last) { var opt_lenb, static_lenb; var max_blindex = 0; if (s.level > 0) { if (s.strm.data_type === Z_UNKNOWN) { s.strm.data_type = detect_data_type(s); } build_tree(s, s.l_desc); build_tree(s, s.d_desc); max_blindex = build_bl_tree(s); opt_lenb = s.opt_len + 3 + 7 >>> 3; static_lenb = s.static_len + 3 + 7 >>> 3; if (static_lenb <= opt_lenb) { opt_lenb = static_lenb; } } else { opt_lenb = static_lenb = stored_len + 5; } if (stored_len + 4 <= opt_lenb && buf !== -1) { _tr_stored_block(s, buf, stored_len, last); } else if (s.strategy === Z_FIXED || static_lenb === opt_lenb) { send_bits(s, (STATIC_TREES << 1) + (last ? 1 : 0), 3); compress_block(s, static_ltree, static_dtree); } else { send_bits(s, (DYN_TREES << 1) + (last ? 1 : 0), 3); send_all_trees(s, s.l_desc.max_code + 1, s.d_desc.max_code + 1, max_blindex + 1); compress_block(s, s.dyn_ltree, s.dyn_dtree); } init_block(s); if (last) { bi_windup(s); } } __name(_tr_flush_block, "_tr_flush_block"); function _tr_tally(s, dist, lc) { s.pending_buf[s.d_buf + s.last_lit * 2] = dist >>> 8 & 255; s.pending_buf[s.d_buf + s.last_lit * 2 + 1] = dist & 255; s.pending_buf[s.l_buf + s.last_lit] = lc & 255; s.last_lit++; if (dist === 0) { s.dyn_ltree[lc * 2]++; } else { s.matches++; dist--; s.dyn_ltree[(_length_code[lc] + LITERALS + 1) * 2]++; s.dyn_dtree[d_code(dist) * 2]++; } return s.last_lit === s.lit_bufsize - 1; } __name(_tr_tally, "_tr_tally"); exports2._tr_init = _tr_init; exports2._tr_stored_block = _tr_stored_block; exports2._tr_flush_block = _tr_flush_block; exports2._tr_tally = _tr_tally; exports2._tr_align = _tr_align; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/adler32.js var require_adler32 = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/adler32.js"(exports2, module2) { "use strict"; function adler32(adler, buf, len, pos) { var s1 = adler & 65535 | 0, s2 = adler >>> 16 & 65535 | 0, n = 0; while (len !== 0) { n = len > 2e3 ? 2e3 : len; len -= n; do { s1 = s1 + buf[pos++] | 0; s2 = s2 + s1 | 0; } while (--n); s1 %= 65521; s2 %= 65521; } return s1 | s2 << 16 | 0; } __name(adler32, "adler32"); module2.exports = adler32; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/crc32.js var require_crc322 = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/crc32.js"(exports2, module2) { "use strict"; function makeTable() { var c, table = []; for (var n = 0; n < 256; n++) { c = n; for (var k = 0; k < 8; k++) { c = c & 1 ? 3988292384 ^ c >>> 1 : c >>> 1; } table[n] = c; } return table; } __name(makeTable, "makeTable"); var crcTable = makeTable(); function crc32(crc, buf, len, pos) { var t = crcTable, end = pos + len; crc ^= -1; for (var i = pos; i < end; i++) { crc = crc >>> 8 ^ t[(crc ^ buf[i]) & 255]; } return crc ^ -1; } __name(crc32, "crc32"); module2.exports = crc32; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/messages.js var require_messages3 = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/messages.js"(exports2, module2) { "use strict"; module2.exports = { 2: "need dictionary", /* Z_NEED_DICT 2 */ 1: "stream end", /* Z_STREAM_END 1 */ 0: "", /* Z_OK 0 */ "-1": "file error", /* Z_ERRNO (-1) */ "-2": "stream error", /* Z_STREAM_ERROR (-2) */ "-3": "data error", /* Z_DATA_ERROR (-3) */ "-4": "insufficient memory", /* Z_MEM_ERROR (-4) */ "-5": "buffer error", /* Z_BUF_ERROR (-5) */ "-6": "incompatible version" /* Z_VERSION_ERROR (-6) */ }; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/deflate.js var require_deflate = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/deflate.js"(exports2) { "use strict"; var utils = require_common4(); var trees = require_trees(); var adler32 = require_adler32(); var crc32 = require_crc322(); var msg = require_messages3(); var Z_NO_FLUSH = 0; var Z_PARTIAL_FLUSH = 1; var Z_FULL_FLUSH = 3; var Z_FINISH = 4; var Z_BLOCK = 5; var Z_OK = 0; var Z_STREAM_END = 1; var Z_STREAM_ERROR = -2; var Z_DATA_ERROR = -3; var Z_BUF_ERROR = -5; var Z_DEFAULT_COMPRESSION = -1; var Z_FILTERED = 1; var Z_HUFFMAN_ONLY = 2; var Z_RLE = 3; var Z_FIXED = 4; var Z_DEFAULT_STRATEGY = 0; var Z_UNKNOWN = 2; var Z_DEFLATED = 8; var MAX_MEM_LEVEL = 9; var MAX_WBITS = 15; var DEF_MEM_LEVEL = 8; var LENGTH_CODES = 29; var LITERALS = 256; var L_CODES = LITERALS + 1 + LENGTH_CODES; var D_CODES = 30; var BL_CODES = 19; var HEAP_SIZE = 2 * L_CODES + 1; var MAX_BITS = 15; var MIN_MATCH = 3; var MAX_MATCH = 258; var MIN_LOOKAHEAD = MAX_MATCH + MIN_MATCH + 1; var PRESET_DICT = 32; var INIT_STATE = 42; var EXTRA_STATE = 69; var NAME_STATE = 73; var COMMENT_STATE = 91; var HCRC_STATE = 103; var BUSY_STATE = 113; var FINISH_STATE = 666; var BS_NEED_MORE = 1; var BS_BLOCK_DONE = 2; var BS_FINISH_STARTED = 3; var BS_FINISH_DONE = 4; var OS_CODE = 3; function err(strm, errorCode) { strm.msg = msg[errorCode]; return errorCode; } __name(err, "err"); function rank(f) { return (f << 1) - (f > 4 ? 9 : 0); } __name(rank, "rank"); function zero(buf) { var len = buf.length; while (--len >= 0) { buf[len] = 0; } } __name(zero, "zero"); function flush_pending(strm) { var s = strm.state; var len = s.pending; if (len > strm.avail_out) { len = strm.avail_out; } if (len === 0) { return; } utils.arraySet(strm.output, s.pending_buf, s.pending_out, len, strm.next_out); strm.next_out += len; s.pending_out += len; strm.total_out += len; strm.avail_out -= len; s.pending -= len; if (s.pending === 0) { s.pending_out = 0; } } __name(flush_pending, "flush_pending"); function flush_block_only(s, last) { trees._tr_flush_block(s, s.block_start >= 0 ? s.block_start : -1, s.strstart - s.block_start, last); s.block_start = s.strstart; flush_pending(s.strm); } __name(flush_block_only, "flush_block_only"); function put_byte(s, b) { s.pending_buf[s.pending++] = b; } __name(put_byte, "put_byte"); function putShortMSB(s, b) { s.pending_buf[s.pending++] = b >>> 8 & 255; s.pending_buf[s.pending++] = b & 255; } __name(putShortMSB, "putShortMSB"); function read_buf(strm, buf, start, size) { var len = strm.avail_in; if (len > size) { len = size; } if (len === 0) { return 0; } strm.avail_in -= len; utils.arraySet(buf, strm.input, strm.next_in, len, start); if (strm.state.wrap === 1) { strm.adler = adler32(strm.adler, buf, len, start); } else if (strm.state.wrap === 2) { strm.adler = crc32(strm.adler, buf, len, start); } strm.next_in += len; strm.total_in += len; return len; } __name(read_buf, "read_buf"); function longest_match(s, cur_match) { var chain_length = s.max_chain_length; var scan = s.strstart; var match; var len; var best_len = s.prev_length; var nice_match = s.nice_match; var limit = s.strstart > s.w_size - MIN_LOOKAHEAD ? s.strstart - (s.w_size - MIN_LOOKAHEAD) : 0; var _win = s.window; var wmask = s.w_mask; var prev = s.prev; var strend = s.strstart + MAX_MATCH; var scan_end1 = _win[scan + best_len - 1]; var scan_end = _win[scan + best_len]; if (s.prev_length >= s.good_match) { chain_length >>= 2; } if (nice_match > s.lookahead) { nice_match = s.lookahead; } do { match = cur_match; if (_win[match + best_len] !== scan_end || _win[match + best_len - 1] !== scan_end1 || _win[match] !== _win[scan] || _win[++match] !== _win[scan + 1]) { continue; } scan += 2; match++; do { } while (_win[++scan] === _win[++match] && _win[++scan] === _win[++match] && _win[++scan] === _win[++match] && _win[++scan] === _win[++match] && _win[++scan] === _win[++match] && _win[++scan] === _win[++match] && _win[++scan] === _win[++match] && _win[++scan] === _win[++match] && scan < strend); len = MAX_MATCH - (strend - scan); scan = strend - MAX_MATCH; if (len > best_len) { s.match_start = cur_match; best_len = len; if (len >= nice_match) { break; } scan_end1 = _win[scan + best_len - 1]; scan_end = _win[scan + best_len]; } } while ((cur_match = prev[cur_match & wmask]) > limit && --chain_length !== 0); if (best_len <= s.lookahead) { return best_len; } return s.lookahead; } __name(longest_match, "longest_match"); function fill_window(s) { var _w_size = s.w_size; var p, n, m, more, str; do { more = s.window_size - s.lookahead - s.strstart; if (s.strstart >= _w_size + (_w_size - MIN_LOOKAHEAD)) { utils.arraySet(s.window, s.window, _w_size, _w_size, 0); s.match_start -= _w_size; s.strstart -= _w_size; s.block_start -= _w_size; n = s.hash_size; p = n; do { m = s.head[--p]; s.head[p] = m >= _w_size ? m - _w_size : 0; } while (--n); n = _w_size; p = n; do { m = s.prev[--p]; s.prev[p] = m >= _w_size ? m - _w_size : 0; } while (--n); more += _w_size; } if (s.strm.avail_in === 0) { break; } n = read_buf(s.strm, s.window, s.strstart + s.lookahead, more); s.lookahead += n; if (s.lookahead + s.insert >= MIN_MATCH) { str = s.strstart - s.insert; s.ins_h = s.window[str]; s.ins_h = (s.ins_h << s.hash_shift ^ s.window[str + 1]) & s.hash_mask; while (s.insert) { s.ins_h = (s.ins_h << s.hash_shift ^ s.window[str + MIN_MATCH - 1]) & s.hash_mask; s.prev[str & s.w_mask] = s.head[s.ins_h]; s.head[s.ins_h] = str; str++; s.insert--; if (s.lookahead + s.insert < MIN_MATCH) { break; } } } } while (s.lookahead < MIN_LOOKAHEAD && s.strm.avail_in !== 0); } __name(fill_window, "fill_window"); function deflate_stored(s, flush) { var max_block_size = 65535; if (max_block_size > s.pending_buf_size - 5) { max_block_size = s.pending_buf_size - 5; } for (; ; ) { if (s.lookahead <= 1) { fill_window(s); if (s.lookahead === 0 && flush === Z_NO_FLUSH) { return BS_NEED_MORE; } if (s.lookahead === 0) { break; } } s.strstart += s.lookahead; s.lookahead = 0; var max_start = s.block_start + max_block_size; if (s.strstart === 0 || s.strstart >= max_start) { s.lookahead = s.strstart - max_start; s.strstart = max_start; flush_block_only(s, false); if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } if (s.strstart - s.block_start >= s.w_size - MIN_LOOKAHEAD) { flush_block_only(s, false); if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } } s.insert = 0; if (flush === Z_FINISH) { flush_block_only(s, true); if (s.strm.avail_out === 0) { return BS_FINISH_STARTED; } return BS_FINISH_DONE; } if (s.strstart > s.block_start) { flush_block_only(s, false); if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } return BS_NEED_MORE; } __name(deflate_stored, "deflate_stored"); function deflate_fast(s, flush) { var hash_head; var bflush; for (; ; ) { if (s.lookahead < MIN_LOOKAHEAD) { fill_window(s); if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH) { return BS_NEED_MORE; } if (s.lookahead === 0) { break; } } hash_head = 0; if (s.lookahead >= MIN_MATCH) { s.ins_h = (s.ins_h << s.hash_shift ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; s.head[s.ins_h] = s.strstart; } if (hash_head !== 0 && s.strstart - hash_head <= s.w_size - MIN_LOOKAHEAD) { s.match_length = longest_match(s, hash_head); } if (s.match_length >= MIN_MATCH) { bflush = trees._tr_tally(s, s.strstart - s.match_start, s.match_length - MIN_MATCH); s.lookahead -= s.match_length; if (s.match_length <= s.max_lazy_match && s.lookahead >= MIN_MATCH) { s.match_length--; do { s.strstart++; s.ins_h = (s.ins_h << s.hash_shift ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; s.head[s.ins_h] = s.strstart; } while (--s.match_length !== 0); s.strstart++; } else { s.strstart += s.match_length; s.match_length = 0; s.ins_h = s.window[s.strstart]; s.ins_h = (s.ins_h << s.hash_shift ^ s.window[s.strstart + 1]) & s.hash_mask; } } else { bflush = trees._tr_tally(s, 0, s.window[s.strstart]); s.lookahead--; s.strstart++; } if (bflush) { flush_block_only(s, false); if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } } s.insert = s.strstart < MIN_MATCH - 1 ? s.strstart : MIN_MATCH - 1; if (flush === Z_FINISH) { flush_block_only(s, true); if (s.strm.avail_out === 0) { return BS_FINISH_STARTED; } return BS_FINISH_DONE; } if (s.last_lit) { flush_block_only(s, false); if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } return BS_BLOCK_DONE; } __name(deflate_fast, "deflate_fast"); function deflate_slow(s, flush) { var hash_head; var bflush; var max_insert; for (; ; ) { if (s.lookahead < MIN_LOOKAHEAD) { fill_window(s); if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH) { return BS_NEED_MORE; } if (s.lookahead === 0) { break; } } hash_head = 0; if (s.lookahead >= MIN_MATCH) { s.ins_h = (s.ins_h << s.hash_shift ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; s.head[s.ins_h] = s.strstart; } s.prev_length = s.match_length; s.prev_match = s.match_start; s.match_length = MIN_MATCH - 1; if (hash_head !== 0 && s.prev_length < s.max_lazy_match && s.strstart - hash_head <= s.w_size - MIN_LOOKAHEAD) { s.match_length = longest_match(s, hash_head); if (s.match_length <= 5 && (s.strategy === Z_FILTERED || s.match_length === MIN_MATCH && s.strstart - s.match_start > 4096)) { s.match_length = MIN_MATCH - 1; } } if (s.prev_length >= MIN_MATCH && s.match_length <= s.prev_length) { max_insert = s.strstart + s.lookahead - MIN_MATCH; bflush = trees._tr_tally(s, s.strstart - 1 - s.prev_match, s.prev_length - MIN_MATCH); s.lookahead -= s.prev_length - 1; s.prev_length -= 2; do { if (++s.strstart <= max_insert) { s.ins_h = (s.ins_h << s.hash_shift ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; s.head[s.ins_h] = s.strstart; } } while (--s.prev_length !== 0); s.match_available = 0; s.match_length = MIN_MATCH - 1; s.strstart++; if (bflush) { flush_block_only(s, false); if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } } else if (s.match_available) { bflush = trees._tr_tally(s, 0, s.window[s.strstart - 1]); if (bflush) { flush_block_only(s, false); } s.strstart++; s.lookahead--; if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } else { s.match_available = 1; s.strstart++; s.lookahead--; } } if (s.match_available) { bflush = trees._tr_tally(s, 0, s.window[s.strstart - 1]); s.match_available = 0; } s.insert = s.strstart < MIN_MATCH - 1 ? s.strstart : MIN_MATCH - 1; if (flush === Z_FINISH) { flush_block_only(s, true); if (s.strm.avail_out === 0) { return BS_FINISH_STARTED; } return BS_FINISH_DONE; } if (s.last_lit) { flush_block_only(s, false); if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } return BS_BLOCK_DONE; } __name(deflate_slow, "deflate_slow"); function deflate_rle(s, flush) { var bflush; var prev; var scan, strend; var _win = s.window; for (; ; ) { if (s.lookahead <= MAX_MATCH) { fill_window(s); if (s.lookahead <= MAX_MATCH && flush === Z_NO_FLUSH) { return BS_NEED_MORE; } if (s.lookahead === 0) { break; } } s.match_length = 0; if (s.lookahead >= MIN_MATCH && s.strstart > 0) { scan = s.strstart - 1; prev = _win[scan]; if (prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan]) { strend = s.strstart + MAX_MATCH; do { } while (prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan] && scan < strend); s.match_length = MAX_MATCH - (strend - scan); if (s.match_length > s.lookahead) { s.match_length = s.lookahead; } } } if (s.match_length >= MIN_MATCH) { bflush = trees._tr_tally(s, 1, s.match_length - MIN_MATCH); s.lookahead -= s.match_length; s.strstart += s.match_length; s.match_length = 0; } else { bflush = trees._tr_tally(s, 0, s.window[s.strstart]); s.lookahead--; s.strstart++; } if (bflush) { flush_block_only(s, false); if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } } s.insert = 0; if (flush === Z_FINISH) { flush_block_only(s, true); if (s.strm.avail_out === 0) { return BS_FINISH_STARTED; } return BS_FINISH_DONE; } if (s.last_lit) { flush_block_only(s, false); if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } return BS_BLOCK_DONE; } __name(deflate_rle, "deflate_rle"); function deflate_huff(s, flush) { var bflush; for (; ; ) { if (s.lookahead === 0) { fill_window(s); if (s.lookahead === 0) { if (flush === Z_NO_FLUSH) { return BS_NEED_MORE; } break; } } s.match_length = 0; bflush = trees._tr_tally(s, 0, s.window[s.strstart]); s.lookahead--; s.strstart++; if (bflush) { flush_block_only(s, false); if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } } s.insert = 0; if (flush === Z_FINISH) { flush_block_only(s, true); if (s.strm.avail_out === 0) { return BS_FINISH_STARTED; } return BS_FINISH_DONE; } if (s.last_lit) { flush_block_only(s, false); if (s.strm.avail_out === 0) { return BS_NEED_MORE; } } return BS_BLOCK_DONE; } __name(deflate_huff, "deflate_huff"); function Config(good_length, max_lazy, nice_length, max_chain, func) { this.good_length = good_length; this.max_lazy = max_lazy; this.nice_length = nice_length; this.max_chain = max_chain; this.func = func; } __name(Config, "Config"); var configuration_table; configuration_table = [ /* good lazy nice chain */ new Config(0, 0, 0, 0, deflate_stored), /* 0 store only */ new Config(4, 4, 8, 4, deflate_fast), /* 1 max speed, no lazy matches */ new Config(4, 5, 16, 8, deflate_fast), /* 2 */ new Config(4, 6, 32, 32, deflate_fast), /* 3 */ new Config(4, 4, 16, 16, deflate_slow), /* 4 lazy matches */ new Config(8, 16, 32, 32, deflate_slow), /* 5 */ new Config(8, 16, 128, 128, deflate_slow), /* 6 */ new Config(8, 32, 128, 256, deflate_slow), /* 7 */ new Config(32, 128, 258, 1024, deflate_slow), /* 8 */ new Config(32, 258, 258, 4096, deflate_slow) /* 9 max compression */ ]; function lm_init(s) { s.window_size = 2 * s.w_size; zero(s.head); s.max_lazy_match = configuration_table[s.level].max_lazy; s.good_match = configuration_table[s.level].good_length; s.nice_match = configuration_table[s.level].nice_length; s.max_chain_length = configuration_table[s.level].max_chain; s.strstart = 0; s.block_start = 0; s.lookahead = 0; s.insert = 0; s.match_length = s.prev_length = MIN_MATCH - 1; s.match_available = 0; s.ins_h = 0; } __name(lm_init, "lm_init"); function DeflateState() { this.strm = null; this.status = 0; this.pending_buf = null; this.pending_buf_size = 0; this.pending_out = 0; this.pending = 0; this.wrap = 0; this.gzhead = null; this.gzindex = 0; this.method = Z_DEFLATED; this.last_flush = -1; this.w_size = 0; this.w_bits = 0; this.w_mask = 0; this.window = null; this.window_size = 0; this.prev = null; this.head = null; this.ins_h = 0; this.hash_size = 0; this.hash_bits = 0; this.hash_mask = 0; this.hash_shift = 0; this.block_start = 0; this.match_length = 0; this.prev_match = 0; this.match_available = 0; this.strstart = 0; this.match_start = 0; this.lookahead = 0; this.prev_length = 0; this.max_chain_length = 0; this.max_lazy_match = 0; this.level = 0; this.strategy = 0; this.good_match = 0; this.nice_match = 0; this.dyn_ltree = new utils.Buf16(HEAP_SIZE * 2); this.dyn_dtree = new utils.Buf16((2 * D_CODES + 1) * 2); this.bl_tree = new utils.Buf16((2 * BL_CODES + 1) * 2); zero(this.dyn_ltree); zero(this.dyn_dtree); zero(this.bl_tree); this.l_desc = null; this.d_desc = null; this.bl_desc = null; this.bl_count = new utils.Buf16(MAX_BITS + 1); this.heap = new utils.Buf16(2 * L_CODES + 1); zero(this.heap); this.heap_len = 0; this.heap_max = 0; this.depth = new utils.Buf16(2 * L_CODES + 1); zero(this.depth); this.l_buf = 0; this.lit_bufsize = 0; this.last_lit = 0; this.d_buf = 0; this.opt_len = 0; this.static_len = 0; this.matches = 0; this.insert = 0; this.bi_buf = 0; this.bi_valid = 0; } __name(DeflateState, "DeflateState"); function deflateResetKeep(strm) { var s; if (!strm || !strm.state) { return err(strm, Z_STREAM_ERROR); } strm.total_in = strm.total_out = 0; strm.data_type = Z_UNKNOWN; s = strm.state; s.pending = 0; s.pending_out = 0; if (s.wrap < 0) { s.wrap = -s.wrap; } s.status = s.wrap ? INIT_STATE : BUSY_STATE; strm.adler = s.wrap === 2 ? 0 : 1; s.last_flush = Z_NO_FLUSH; trees._tr_init(s); return Z_OK; } __name(deflateResetKeep, "deflateResetKeep"); function deflateReset(strm) { var ret2 = deflateResetKeep(strm); if (ret2 === Z_OK) { lm_init(strm.state); } return ret2; } __name(deflateReset, "deflateReset"); function deflateSetHeader(strm, head) { if (!strm || !strm.state) { return Z_STREAM_ERROR; } if (strm.state.wrap !== 2) { return Z_STREAM_ERROR; } strm.state.gzhead = head; return Z_OK; } __name(deflateSetHeader, "deflateSetHeader"); function deflateInit2(strm, level, method, windowBits, memLevel, strategy) { if (!strm) { return Z_STREAM_ERROR; } var wrap = 1; if (level === Z_DEFAULT_COMPRESSION) { level = 6; } if (windowBits < 0) { wrap = 0; windowBits = -windowBits; } else if (windowBits > 15) { wrap = 2; windowBits -= 16; } if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method !== Z_DEFLATED || windowBits < 8 || windowBits > 15 || level < 0 || level > 9 || strategy < 0 || strategy > Z_FIXED) { return err(strm, Z_STREAM_ERROR); } if (windowBits === 8) { windowBits = 9; } var s = new DeflateState(); strm.state = s; s.strm = strm; s.wrap = wrap; s.gzhead = null; s.w_bits = windowBits; s.w_size = 1 << s.w_bits; s.w_mask = s.w_size - 1; s.hash_bits = memLevel + 7; s.hash_size = 1 << s.hash_bits; s.hash_mask = s.hash_size - 1; s.hash_shift = ~~((s.hash_bits + MIN_MATCH - 1) / MIN_MATCH); s.window = new utils.Buf8(s.w_size * 2); s.head = new utils.Buf16(s.hash_size); s.prev = new utils.Buf16(s.w_size); s.lit_bufsize = 1 << memLevel + 6; s.pending_buf_size = s.lit_bufsize * 4; s.pending_buf = new utils.Buf8(s.pending_buf_size); s.d_buf = 1 * s.lit_bufsize; s.l_buf = (1 + 2) * s.lit_bufsize; s.level = level; s.strategy = strategy; s.method = method; return deflateReset(strm); } __name(deflateInit2, "deflateInit2"); function deflateInit(strm, level) { return deflateInit2(strm, level, Z_DEFLATED, MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY); } __name(deflateInit, "deflateInit"); function deflate(strm, flush) { var old_flush, s; var beg, val; if (!strm || !strm.state || flush > Z_BLOCK || flush < 0) { return strm ? err(strm, Z_STREAM_ERROR) : Z_STREAM_ERROR; } s = strm.state; if (!strm.output || !strm.input && strm.avail_in !== 0 || s.status === FINISH_STATE && flush !== Z_FINISH) { return err(strm, strm.avail_out === 0 ? Z_BUF_ERROR : Z_STREAM_ERROR); } s.strm = strm; old_flush = s.last_flush; s.last_flush = flush; if (s.status === INIT_STATE) { if (s.wrap === 2) { strm.adler = 0; put_byte(s, 31); put_byte(s, 139); put_byte(s, 8); if (!s.gzhead) { put_byte(s, 0); put_byte(s, 0); put_byte(s, 0); put_byte(s, 0); put_byte(s, 0); put_byte(s, s.level === 9 ? 2 : s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ? 4 : 0); put_byte(s, OS_CODE); s.status = BUSY_STATE; } else { put_byte( s, (s.gzhead.text ? 1 : 0) + (s.gzhead.hcrc ? 2 : 0) + (!s.gzhead.extra ? 0 : 4) + (!s.gzhead.name ? 0 : 8) + (!s.gzhead.comment ? 0 : 16) ); put_byte(s, s.gzhead.time & 255); put_byte(s, s.gzhead.time >> 8 & 255); put_byte(s, s.gzhead.time >> 16 & 255); put_byte(s, s.gzhead.time >> 24 & 255); put_byte(s, s.level === 9 ? 2 : s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ? 4 : 0); put_byte(s, s.gzhead.os & 255); if (s.gzhead.extra && s.gzhead.extra.length) { put_byte(s, s.gzhead.extra.length & 255); put_byte(s, s.gzhead.extra.length >> 8 & 255); } if (s.gzhead.hcrc) { strm.adler = crc32(strm.adler, s.pending_buf, s.pending, 0); } s.gzindex = 0; s.status = EXTRA_STATE; } } else { var header = Z_DEFLATED + (s.w_bits - 8 << 4) << 8; var level_flags = -1; if (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2) { level_flags = 0; } else if (s.level < 6) { level_flags = 1; } else if (s.level === 6) { level_flags = 2; } else { level_flags = 3; } header |= level_flags << 6; if (s.strstart !== 0) { header |= PRESET_DICT; } header += 31 - header % 31; s.status = BUSY_STATE; putShortMSB(s, header); if (s.strstart !== 0) { putShortMSB(s, strm.adler >>> 16); putShortMSB(s, strm.adler & 65535); } strm.adler = 1; } } if (s.status === EXTRA_STATE) { if (s.gzhead.extra) { beg = s.pending; while (s.gzindex < (s.gzhead.extra.length & 65535)) { if (s.pending === s.pending_buf_size) { if (s.gzhead.hcrc && s.pending > beg) { strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); } flush_pending(strm); beg = s.pending; if (s.pending === s.pending_buf_size) { break; } } put_byte(s, s.gzhead.extra[s.gzindex] & 255); s.gzindex++; } if (s.gzhead.hcrc && s.pending > beg) { strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); } if (s.gzindex === s.gzhead.extra.length) { s.gzindex = 0; s.status = NAME_STATE; } } else { s.status = NAME_STATE; } } if (s.status === NAME_STATE) { if (s.gzhead.name) { beg = s.pending; do { if (s.pending === s.pending_buf_size) { if (s.gzhead.hcrc && s.pending > beg) { strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); } flush_pending(strm); beg = s.pending; if (s.pending === s.pending_buf_size) { val = 1; break; } } if (s.gzindex < s.gzhead.name.length) { val = s.gzhead.name.charCodeAt(s.gzindex++) & 255; } else { val = 0; } put_byte(s, val); } while (val !== 0); if (s.gzhead.hcrc && s.pending > beg) { strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); } if (val === 0) { s.gzindex = 0; s.status = COMMENT_STATE; } } else { s.status = COMMENT_STATE; } } if (s.status === COMMENT_STATE) { if (s.gzhead.comment) { beg = s.pending; do { if (s.pending === s.pending_buf_size) { if (s.gzhead.hcrc && s.pending > beg) { strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); } flush_pending(strm); beg = s.pending; if (s.pending === s.pending_buf_size) { val = 1; break; } } if (s.gzindex < s.gzhead.comment.length) { val = s.gzhead.comment.charCodeAt(s.gzindex++) & 255; } else { val = 0; } put_byte(s, val); } while (val !== 0); if (s.gzhead.hcrc && s.pending > beg) { strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); } if (val === 0) { s.status = HCRC_STATE; } } else { s.status = HCRC_STATE; } } if (s.status === HCRC_STATE) { if (s.gzhead.hcrc) { if (s.pending + 2 > s.pending_buf_size) { flush_pending(strm); } if (s.pending + 2 <= s.pending_buf_size) { put_byte(s, strm.adler & 255); put_byte(s, strm.adler >> 8 & 255); strm.adler = 0; s.status = BUSY_STATE; } } else { s.status = BUSY_STATE; } } if (s.pending !== 0) { flush_pending(strm); if (strm.avail_out === 0) { s.last_flush = -1; return Z_OK; } } else if (strm.avail_in === 0 && rank(flush) <= rank(old_flush) && flush !== Z_FINISH) { return err(strm, Z_BUF_ERROR); } if (s.status === FINISH_STATE && strm.avail_in !== 0) { return err(strm, Z_BUF_ERROR); } if (strm.avail_in !== 0 || s.lookahead !== 0 || flush !== Z_NO_FLUSH && s.status !== FINISH_STATE) { var bstate = s.strategy === Z_HUFFMAN_ONLY ? deflate_huff(s, flush) : s.strategy === Z_RLE ? deflate_rle(s, flush) : configuration_table[s.level].func(s, flush); if (bstate === BS_FINISH_STARTED || bstate === BS_FINISH_DONE) { s.status = FINISH_STATE; } if (bstate === BS_NEED_MORE || bstate === BS_FINISH_STARTED) { if (strm.avail_out === 0) { s.last_flush = -1; } return Z_OK; } if (bstate === BS_BLOCK_DONE) { if (flush === Z_PARTIAL_FLUSH) { trees._tr_align(s); } else if (flush !== Z_BLOCK) { trees._tr_stored_block(s, 0, 0, false); if (flush === Z_FULL_FLUSH) { zero(s.head); if (s.lookahead === 0) { s.strstart = 0; s.block_start = 0; s.insert = 0; } } } flush_pending(strm); if (strm.avail_out === 0) { s.last_flush = -1; return Z_OK; } } } if (flush !== Z_FINISH) { return Z_OK; } if (s.wrap <= 0) { return Z_STREAM_END; } if (s.wrap === 2) { put_byte(s, strm.adler & 255); put_byte(s, strm.adler >> 8 & 255); put_byte(s, strm.adler >> 16 & 255); put_byte(s, strm.adler >> 24 & 255); put_byte(s, strm.total_in & 255); put_byte(s, strm.total_in >> 8 & 255); put_byte(s, strm.total_in >> 16 & 255); put_byte(s, strm.total_in >> 24 & 255); } else { putShortMSB(s, strm.adler >>> 16); putShortMSB(s, strm.adler & 65535); } flush_pending(strm); if (s.wrap > 0) { s.wrap = -s.wrap; } return s.pending !== 0 ? Z_OK : Z_STREAM_END; } __name(deflate, "deflate"); function deflateEnd(strm) { var status; if (!strm || !strm.state) { return Z_STREAM_ERROR; } status = strm.state.status; if (status !== INIT_STATE && status !== EXTRA_STATE && status !== NAME_STATE && status !== COMMENT_STATE && status !== HCRC_STATE && status !== BUSY_STATE && status !== FINISH_STATE) { return err(strm, Z_STREAM_ERROR); } strm.state = null; return status === BUSY_STATE ? err(strm, Z_DATA_ERROR) : Z_OK; } __name(deflateEnd, "deflateEnd"); function deflateSetDictionary(strm, dictionary) { var dictLength = dictionary.length; var s; var str, n; var wrap; var avail; var next; var input; var tmpDict; if (!strm || !strm.state) { return Z_STREAM_ERROR; } s = strm.state; wrap = s.wrap; if (wrap === 2 || wrap === 1 && s.status !== INIT_STATE || s.lookahead) { return Z_STREAM_ERROR; } if (wrap === 1) { strm.adler = adler32(strm.adler, dictionary, dictLength, 0); } s.wrap = 0; if (dictLength >= s.w_size) { if (wrap === 0) { zero(s.head); s.strstart = 0; s.block_start = 0; s.insert = 0; } tmpDict = new utils.Buf8(s.w_size); utils.arraySet(tmpDict, dictionary, dictLength - s.w_size, s.w_size, 0); dictionary = tmpDict; dictLength = s.w_size; } avail = strm.avail_in; next = strm.next_in; input = strm.input; strm.avail_in = dictLength; strm.next_in = 0; strm.input = dictionary; fill_window(s); while (s.lookahead >= MIN_MATCH) { str = s.strstart; n = s.lookahead - (MIN_MATCH - 1); do { s.ins_h = (s.ins_h << s.hash_shift ^ s.window[str + MIN_MATCH - 1]) & s.hash_mask; s.prev[str & s.w_mask] = s.head[s.ins_h]; s.head[s.ins_h] = str; str++; } while (--n); s.strstart = str; s.lookahead = MIN_MATCH - 1; fill_window(s); } s.strstart += s.lookahead; s.block_start = s.strstart; s.insert = s.lookahead; s.lookahead = 0; s.match_length = s.prev_length = MIN_MATCH - 1; s.match_available = 0; strm.next_in = next; strm.input = input; strm.avail_in = avail; s.wrap = wrap; return Z_OK; } __name(deflateSetDictionary, "deflateSetDictionary"); exports2.deflateInit = deflateInit; exports2.deflateInit2 = deflateInit2; exports2.deflateReset = deflateReset; exports2.deflateResetKeep = deflateResetKeep; exports2.deflateSetHeader = deflateSetHeader; exports2.deflate = deflate; exports2.deflateEnd = deflateEnd; exports2.deflateSetDictionary = deflateSetDictionary; exports2.deflateInfo = "pako deflate (from Nodeca project)"; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/utils/strings.js var require_strings = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/utils/strings.js"(exports2) { "use strict"; var utils = require_common4(); var STR_APPLY_OK = true; var STR_APPLY_UIA_OK = true; try { String.fromCharCode.apply(null, [0]); } catch (__) { STR_APPLY_OK = false; } try { String.fromCharCode.apply(null, new Uint8Array(1)); } catch (__) { STR_APPLY_UIA_OK = false; } var _utf8len = new utils.Buf8(256); for (q = 0; q < 256; q++) { _utf8len[q] = q >= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1; } var q; _utf8len[254] = _utf8len[254] = 1; exports2.string2buf = function(str) { var buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0; for (m_pos = 0; m_pos < str_len; m_pos++) { c = str.charCodeAt(m_pos); if ((c & 64512) === 55296 && m_pos + 1 < str_len) { c2 = str.charCodeAt(m_pos + 1); if ((c2 & 64512) === 56320) { c = 65536 + (c - 55296 << 10) + (c2 - 56320); m_pos++; } } buf_len += c < 128 ? 1 : c < 2048 ? 2 : c < 65536 ? 3 : 4; } buf = new utils.Buf8(buf_len); for (i = 0, m_pos = 0; i < buf_len; m_pos++) { c = str.charCodeAt(m_pos); if ((c & 64512) === 55296 && m_pos + 1 < str_len) { c2 = str.charCodeAt(m_pos + 1); if ((c2 & 64512) === 56320) { c = 65536 + (c - 55296 << 10) + (c2 - 56320); m_pos++; } } if (c < 128) { buf[i++] = c; } else if (c < 2048) { buf[i++] = 192 | c >>> 6; buf[i++] = 128 | c & 63; } else if (c < 65536) { buf[i++] = 224 | c >>> 12; buf[i++] = 128 | c >>> 6 & 63; buf[i++] = 128 | c & 63; } else { buf[i++] = 240 | c >>> 18; buf[i++] = 128 | c >>> 12 & 63; buf[i++] = 128 | c >>> 6 & 63; buf[i++] = 128 | c & 63; } } return buf; }; function buf2binstring(buf, len) { if (len < 65534) { if (buf.subarray && STR_APPLY_UIA_OK || !buf.subarray && STR_APPLY_OK) { return String.fromCharCode.apply(null, utils.shrinkBuf(buf, len)); } } var result = ""; for (var i = 0; i < len; i++) { result += String.fromCharCode(buf[i]); } return result; } __name(buf2binstring, "buf2binstring"); exports2.buf2binstring = function(buf) { return buf2binstring(buf, buf.length); }; exports2.binstring2buf = function(str) { var buf = new utils.Buf8(str.length); for (var i = 0, len = buf.length; i < len; i++) { buf[i] = str.charCodeAt(i); } return buf; }; exports2.buf2string = function(buf, max) { var i, out, c, c_len; var len = max || buf.length; var utf16buf = new Array(len * 2); for (out = 0, i = 0; i < len; ) { c = buf[i++]; if (c < 128) { utf16buf[out++] = c; continue; } c_len = _utf8len[c]; if (c_len > 4) { utf16buf[out++] = 65533; i += c_len - 1; continue; } c &= c_len === 2 ? 31 : c_len === 3 ? 15 : 7; while (c_len > 1 && i < len) { c = c << 6 | buf[i++] & 63; c_len--; } if (c_len > 1) { utf16buf[out++] = 65533; continue; } if (c < 65536) { utf16buf[out++] = c; } else { c -= 65536; utf16buf[out++] = 55296 | c >> 10 & 1023; utf16buf[out++] = 56320 | c & 1023; } } return buf2binstring(utf16buf, out); }; exports2.utf8border = function(buf, max) { var pos; max = max || buf.length; if (max > buf.length) { max = buf.length; } pos = max - 1; while (pos >= 0 && (buf[pos] & 192) === 128) { pos--; } if (pos < 0) { return max; } if (pos === 0) { return max; } return pos + _utf8len[buf[pos]] > max ? pos : max; }; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/zstream.js var require_zstream = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/zstream.js"(exports2, module2) { "use strict"; function ZStream() { this.input = null; this.next_in = 0; this.avail_in = 0; this.total_in = 0; this.output = null; this.next_out = 0; this.avail_out = 0; this.total_out = 0; this.msg = ""; this.state = null; this.data_type = 2; this.adler = 0; } __name(ZStream, "ZStream"); module2.exports = ZStream; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/deflate.js var require_deflate2 = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/deflate.js"(exports2) { "use strict"; var zlib_deflate = require_deflate(); var utils = require_common4(); var strings = require_strings(); var msg = require_messages3(); var ZStream = require_zstream(); var toString2 = Object.prototype.toString; var Z_NO_FLUSH = 0; var Z_FINISH = 4; var Z_OK = 0; var Z_STREAM_END = 1; var Z_SYNC_FLUSH = 2; var Z_DEFAULT_COMPRESSION = -1; var Z_DEFAULT_STRATEGY = 0; var Z_DEFLATED = 8; function Deflate(options) { if (!(this instanceof Deflate)) return new Deflate(options); this.options = utils.assign({ level: Z_DEFAULT_COMPRESSION, method: Z_DEFLATED, chunkSize: 16384, windowBits: 15, memLevel: 8, strategy: Z_DEFAULT_STRATEGY, to: "" }, options || {}); var opt = this.options; if (opt.raw && opt.windowBits > 0) { opt.windowBits = -opt.windowBits; } else if (opt.gzip && opt.windowBits > 0 && opt.windowBits < 16) { opt.windowBits += 16; } this.err = 0; this.msg = ""; this.ended = false; this.chunks = []; this.strm = new ZStream(); this.strm.avail_out = 0; var status = zlib_deflate.deflateInit2( this.strm, opt.level, opt.method, opt.windowBits, opt.memLevel, opt.strategy ); if (status !== Z_OK) { throw new Error(msg[status]); } if (opt.header) { zlib_deflate.deflateSetHeader(this.strm, opt.header); } if (opt.dictionary) { var dict; if (typeof opt.dictionary === "string") { dict = strings.string2buf(opt.dictionary); } else if (toString2.call(opt.dictionary) === "[object ArrayBuffer]") { dict = new Uint8Array(opt.dictionary); } else { dict = opt.dictionary; } status = zlib_deflate.deflateSetDictionary(this.strm, dict); if (status !== Z_OK) { throw new Error(msg[status]); } this._dict_set = true; } } __name(Deflate, "Deflate"); Deflate.prototype.push = function(data, mode) { var strm = this.strm; var chunkSize = this.options.chunkSize; var status, _mode; if (this.ended) { return false; } _mode = mode === ~~mode ? mode : mode === true ? Z_FINISH : Z_NO_FLUSH; if (typeof data === "string") { strm.input = strings.string2buf(data); } else if (toString2.call(data) === "[object ArrayBuffer]") { strm.input = new Uint8Array(data); } else { strm.input = data; } strm.next_in = 0; strm.avail_in = strm.input.length; do { if (strm.avail_out === 0) { strm.output = new utils.Buf8(chunkSize); strm.next_out = 0; strm.avail_out = chunkSize; } status = zlib_deflate.deflate(strm, _mode); if (status !== Z_STREAM_END && status !== Z_OK) { this.onEnd(status); this.ended = true; return false; } if (strm.avail_out === 0 || strm.avail_in === 0 && (_mode === Z_FINISH || _mode === Z_SYNC_FLUSH)) { if (this.options.to === "string") { this.onData(strings.buf2binstring(utils.shrinkBuf(strm.output, strm.next_out))); } else { this.onData(utils.shrinkBuf(strm.output, strm.next_out)); } } } while ((strm.avail_in > 0 || strm.avail_out === 0) && status !== Z_STREAM_END); if (_mode === Z_FINISH) { status = zlib_deflate.deflateEnd(this.strm); this.onEnd(status); this.ended = true; return status === Z_OK; } if (_mode === Z_SYNC_FLUSH) { this.onEnd(Z_OK); strm.avail_out = 0; return true; } return true; }; Deflate.prototype.onData = function(chunk) { this.chunks.push(chunk); }; Deflate.prototype.onEnd = function(status) { if (status === Z_OK) { if (this.options.to === "string") { this.result = this.chunks.join(""); } else { this.result = utils.flattenChunks(this.chunks); } } this.chunks = []; this.err = status; this.msg = this.strm.msg; }; function deflate(input, options) { var deflator = new Deflate(options); deflator.push(input, true); if (deflator.err) { throw deflator.msg || msg[deflator.err]; } return deflator.result; } __name(deflate, "deflate"); function deflateRaw(input, options) { options = options || {}; options.raw = true; return deflate(input, options); } __name(deflateRaw, "deflateRaw"); function gzip(input, options) { options = options || {}; options.gzip = true; return deflate(input, options); } __name(gzip, "gzip"); exports2.Deflate = Deflate; exports2.deflate = deflate; exports2.deflateRaw = deflateRaw; exports2.gzip = gzip; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/inffast.js var require_inffast = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/inffast.js"(exports2, module2) { "use strict"; var BAD = 30; var TYPE = 12; module2.exports = /* @__PURE__ */ __name(function inflate_fast(strm, start) { var state; var _in; var last; var _out; var beg; var end; var dmax; var wsize; var whave; var wnext; var s_window; var hold; var bits; var lcode; var dcode; var lmask; var dmask; var here; var op; var len; var dist; var from; var from_source; var input, output; state = strm.state; _in = strm.next_in; input = strm.input; last = _in + (strm.avail_in - 5); _out = strm.next_out; output = strm.output; beg = _out - (start - strm.avail_out); end = _out + (strm.avail_out - 257); dmax = state.dmax; wsize = state.wsize; whave = state.whave; wnext = state.wnext; s_window = state.window; hold = state.hold; bits = state.bits; lcode = state.lencode; dcode = state.distcode; lmask = (1 << state.lenbits) - 1; dmask = (1 << state.distbits) - 1; top: do { if (bits < 15) { hold += input[_in++] << bits; bits += 8; hold += input[_in++] << bits; bits += 8; } here = lcode[hold & lmask]; dolen: for (; ; ) { op = here >>> 24; hold >>>= op; bits -= op; op = here >>> 16 & 255; if (op === 0) { output[_out++] = here & 65535; } else if (op & 16) { len = here & 65535; op &= 15; if (op) { if (bits < op) { hold += input[_in++] << bits; bits += 8; } len += hold & (1 << op) - 1; hold >>>= op; bits -= op; } if (bits < 15) { hold += input[_in++] << bits; bits += 8; hold += input[_in++] << bits; bits += 8; } here = dcode[hold & dmask]; dodist: for (; ; ) { op = here >>> 24; hold >>>= op; bits -= op; op = here >>> 16 & 255; if (op & 16) { dist = here & 65535; op &= 15; if (bits < op) { hold += input[_in++] << bits; bits += 8; if (bits < op) { hold += input[_in++] << bits; bits += 8; } } dist += hold & (1 << op) - 1; if (dist > dmax) { strm.msg = "invalid distance too far back"; state.mode = BAD; break top; } hold >>>= op; bits -= op; op = _out - beg; if (dist > op) { op = dist - op; if (op > whave) { if (state.sane) { strm.msg = "invalid distance too far back"; state.mode = BAD; break top; } } from = 0; from_source = s_window; if (wnext === 0) { from += wsize - op; if (op < len) { len -= op; do { output[_out++] = s_window[from++]; } while (--op); from = _out - dist; from_source = output; } } else if (wnext < op) { from += wsize + wnext - op; op -= wnext; if (op < len) { len -= op; do { output[_out++] = s_window[from++]; } while (--op); from = 0; if (wnext < len) { op = wnext; len -= op; do { output[_out++] = s_window[from++]; } while (--op); from = _out - dist; from_source = output; } } } else { from += wnext - op; if (op < len) { len -= op; do { output[_out++] = s_window[from++]; } while (--op); from = _out - dist; from_source = output; } } while (len > 2) { output[_out++] = from_source[from++]; output[_out++] = from_source[from++]; output[_out++] = from_source[from++]; len -= 3; } if (len) { output[_out++] = from_source[from++]; if (len > 1) { output[_out++] = from_source[from++]; } } } else { from = _out - dist; do { output[_out++] = output[from++]; output[_out++] = output[from++]; output[_out++] = output[from++]; len -= 3; } while (len > 2); if (len) { output[_out++] = output[from++]; if (len > 1) { output[_out++] = output[from++]; } } } } else if ((op & 64) === 0) { here = dcode[(here & 65535) + (hold & (1 << op) - 1)]; continue dodist; } else { strm.msg = "invalid distance code"; state.mode = BAD; break top; } break; } } else if ((op & 64) === 0) { here = lcode[(here & 65535) + (hold & (1 << op) - 1)]; continue dolen; } else if (op & 32) { state.mode = TYPE; break top; } else { strm.msg = "invalid literal/length code"; state.mode = BAD; break top; } break; } } while (_in < last && _out < end); len = bits >> 3; _in -= len; bits -= len << 3; hold &= (1 << bits) - 1; strm.next_in = _in; strm.next_out = _out; strm.avail_in = _in < last ? 5 + (last - _in) : 5 - (_in - last); strm.avail_out = _out < end ? 257 + (end - _out) : 257 - (_out - end); state.hold = hold; state.bits = bits; return; }, "inflate_fast"); } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/inftrees.js var require_inftrees = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/inftrees.js"(exports2, module2) { "use strict"; var utils = require_common4(); var MAXBITS = 15; var ENOUGH_LENS = 852; var ENOUGH_DISTS = 592; var CODES = 0; var LENS = 1; var DISTS = 2; var lbase = [ /* Length codes 257..285 base */ 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0 ]; var lext = [ /* Length codes 257..285 extra */ 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78 ]; var dbase = [ /* Distance codes 0..29 base */ 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0 ]; var dext = [ /* Distance codes 0..29 extra */ 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64 ]; module2.exports = /* @__PURE__ */ __name(function inflate_table(type, lens, lens_index, codes, table, table_index, work, opts) { var bits = opts.bits; var len = 0; var sym = 0; var min = 0, max = 0; var root = 0; var curr = 0; var drop = 0; var left = 0; var used = 0; var huff = 0; var incr; var fill; var low; var mask; var next; var base = null; var base_index = 0; var end; var count = new utils.Buf16(MAXBITS + 1); var offs = new utils.Buf16(MAXBITS + 1); var extra = null; var extra_index = 0; var here_bits, here_op, here_val; for (len = 0; len <= MAXBITS; len++) { count[len] = 0; } for (sym = 0; sym < codes; sym++) { count[lens[lens_index + sym]]++; } root = bits; for (max = MAXBITS; max >= 1; max--) { if (count[max] !== 0) { break; } } if (root > max) { root = max; } if (max === 0) { table[table_index++] = 1 << 24 | 64 << 16 | 0; table[table_index++] = 1 << 24 | 64 << 16 | 0; opts.bits = 1; return 0; } for (min = 1; min < max; min++) { if (count[min] !== 0) { break; } } if (root < min) { root = min; } left = 1; for (len = 1; len <= MAXBITS; len++) { left <<= 1; left -= count[len]; if (left < 0) { return -1; } } if (left > 0 && (type === CODES || max !== 1)) { return -1; } offs[1] = 0; for (len = 1; len < MAXBITS; len++) { offs[len + 1] = offs[len] + count[len]; } for (sym = 0; sym < codes; sym++) { if (lens[lens_index + sym] !== 0) { work[offs[lens[lens_index + sym]]++] = sym; } } if (type === CODES) { base = extra = work; end = 19; } else if (type === LENS) { base = lbase; base_index -= 257; extra = lext; extra_index -= 257; end = 256; } else { base = dbase; extra = dext; end = -1; } huff = 0; sym = 0; len = min; next = table_index; curr = root; drop = 0; low = -1; used = 1 << root; mask = used - 1; if (type === LENS && used > ENOUGH_LENS || type === DISTS && used > ENOUGH_DISTS) { return 1; } for (; ; ) { here_bits = len - drop; if (work[sym] < end) { here_op = 0; here_val = work[sym]; } else if (work[sym] > end) { here_op = extra[extra_index + work[sym]]; here_val = base[base_index + work[sym]]; } else { here_op = 32 + 64; here_val = 0; } incr = 1 << len - drop; fill = 1 << curr; min = fill; do { fill -= incr; table[next + (huff >> drop) + fill] = here_bits << 24 | here_op << 16 | here_val | 0; } while (fill !== 0); incr = 1 << len - 1; while (huff & incr) { incr >>= 1; } if (incr !== 0) { huff &= incr - 1; huff += incr; } else { huff = 0; } sym++; if (--count[len] === 0) { if (len === max) { break; } len = lens[lens_index + work[sym]]; } if (len > root && (huff & mask) !== low) { if (drop === 0) { drop = root; } next += min; curr = len - drop; left = 1 << curr; while (curr + drop < max) { left -= count[curr + drop]; if (left <= 0) { break; } curr++; left <<= 1; } used += 1 << curr; if (type === LENS && used > ENOUGH_LENS || type === DISTS && used > ENOUGH_DISTS) { return 1; } low = huff & mask; table[low] = root << 24 | curr << 16 | next - table_index | 0; } } if (huff !== 0) { table[next + huff] = len - drop << 24 | 64 << 16 | 0; } opts.bits = root; return 0; }, "inflate_table"); } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/inflate.js var require_inflate = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/inflate.js"(exports2) { "use strict"; var utils = require_common4(); var adler32 = require_adler32(); var crc32 = require_crc322(); var inflate_fast = require_inffast(); var inflate_table = require_inftrees(); var CODES = 0; var LENS = 1; var DISTS = 2; var Z_FINISH = 4; var Z_BLOCK = 5; var Z_TREES = 6; var Z_OK = 0; var Z_STREAM_END = 1; var Z_NEED_DICT = 2; var Z_STREAM_ERROR = -2; var Z_DATA_ERROR = -3; var Z_MEM_ERROR = -4; var Z_BUF_ERROR = -5; var Z_DEFLATED = 8; var HEAD = 1; var FLAGS = 2; var TIME = 3; var OS = 4; var EXLEN = 5; var EXTRA = 6; var NAME = 7; var COMMENT = 8; var HCRC = 9; var DICTID = 10; var DICT = 11; var TYPE = 12; var TYPEDO = 13; var STORED = 14; var COPY_ = 15; var COPY = 16; var TABLE = 17; var LENLENS = 18; var CODELENS = 19; var LEN_ = 20; var LEN = 21; var LENEXT = 22; var DIST = 23; var DISTEXT = 24; var MATCH = 25; var LIT = 26; var CHECK = 27; var LENGTH = 28; var DONE = 29; var BAD = 30; var MEM = 31; var SYNC = 32; var ENOUGH_LENS = 852; var ENOUGH_DISTS = 592; var MAX_WBITS = 15; var DEF_WBITS = MAX_WBITS; function zswap32(q) { return (q >>> 24 & 255) + (q >>> 8 & 65280) + ((q & 65280) << 8) + ((q & 255) << 24); } __name(zswap32, "zswap32"); function InflateState() { this.mode = 0; this.last = false; this.wrap = 0; this.havedict = false; this.flags = 0; this.dmax = 0; this.check = 0; this.total = 0; this.head = null; this.wbits = 0; this.wsize = 0; this.whave = 0; this.wnext = 0; this.window = null; this.hold = 0; this.bits = 0; this.length = 0; this.offset = 0; this.extra = 0; this.lencode = null; this.distcode = null; this.lenbits = 0; this.distbits = 0; this.ncode = 0; this.nlen = 0; this.ndist = 0; this.have = 0; this.next = null; this.lens = new utils.Buf16(320); this.work = new utils.Buf16(288); this.lendyn = null; this.distdyn = null; this.sane = 0; this.back = 0; this.was = 0; } __name(InflateState, "InflateState"); function inflateResetKeep(strm) { var state; if (!strm || !strm.state) { return Z_STREAM_ERROR; } state = strm.state; strm.total_in = strm.total_out = state.total = 0; strm.msg = ""; if (state.wrap) { strm.adler = state.wrap & 1; } state.mode = HEAD; state.last = 0; state.havedict = 0; state.dmax = 32768; state.head = null; state.hold = 0; state.bits = 0; state.lencode = state.lendyn = new utils.Buf32(ENOUGH_LENS); state.distcode = state.distdyn = new utils.Buf32(ENOUGH_DISTS); state.sane = 1; state.back = -1; return Z_OK; } __name(inflateResetKeep, "inflateResetKeep"); function inflateReset(strm) { var state; if (!strm || !strm.state) { return Z_STREAM_ERROR; } state = strm.state; state.wsize = 0; state.whave = 0; state.wnext = 0; return inflateResetKeep(strm); } __name(inflateReset, "inflateReset"); function inflateReset2(strm, windowBits) { var wrap; var state; if (!strm || !strm.state) { return Z_STREAM_ERROR; } state = strm.state; if (windowBits < 0) { wrap = 0; windowBits = -windowBits; } else { wrap = (windowBits >> 4) + 1; if (windowBits < 48) { windowBits &= 15; } } if (windowBits && (windowBits < 8 || windowBits > 15)) { return Z_STREAM_ERROR; } if (state.window !== null && state.wbits !== windowBits) { state.window = null; } state.wrap = wrap; state.wbits = windowBits; return inflateReset(strm); } __name(inflateReset2, "inflateReset2"); function inflateInit2(strm, windowBits) { var ret2; var state; if (!strm) { return Z_STREAM_ERROR; } state = new InflateState(); strm.state = state; state.window = null; ret2 = inflateReset2(strm, windowBits); if (ret2 !== Z_OK) { strm.state = null; } return ret2; } __name(inflateInit2, "inflateInit2"); function inflateInit(strm) { return inflateInit2(strm, DEF_WBITS); } __name(inflateInit, "inflateInit"); var virgin = true; var lenfix; var distfix; function fixedtables(state) { if (virgin) { var sym; lenfix = new utils.Buf32(512); distfix = new utils.Buf32(32); sym = 0; while (sym < 144) { state.lens[sym++] = 8; } while (sym < 256) { state.lens[sym++] = 9; } while (sym < 280) { state.lens[sym++] = 7; } while (sym < 288) { state.lens[sym++] = 8; } inflate_table(LENS, state.lens, 0, 288, lenfix, 0, state.work, { bits: 9 }); sym = 0; while (sym < 32) { state.lens[sym++] = 5; } inflate_table(DISTS, state.lens, 0, 32, distfix, 0, state.work, { bits: 5 }); virgin = false; } state.lencode = lenfix; state.lenbits = 9; state.distcode = distfix; state.distbits = 5; } __name(fixedtables, "fixedtables"); function updatewindow(strm, src, end, copy) { var dist; var state = strm.state; if (state.window === null) { state.wsize = 1 << state.wbits; state.wnext = 0; state.whave = 0; state.window = new utils.Buf8(state.wsize); } if (copy >= state.wsize) { utils.arraySet(state.window, src, end - state.wsize, state.wsize, 0); state.wnext = 0; state.whave = state.wsize; } else { dist = state.wsize - state.wnext; if (dist > copy) { dist = copy; } utils.arraySet(state.window, src, end - copy, dist, state.wnext); copy -= dist; if (copy) { utils.arraySet(state.window, src, end - copy, copy, 0); state.wnext = copy; state.whave = state.wsize; } else { state.wnext += dist; if (state.wnext === state.wsize) { state.wnext = 0; } if (state.whave < state.wsize) { state.whave += dist; } } } return 0; } __name(updatewindow, "updatewindow"); function inflate(strm, flush) { var state; var input, output; var next; var put; var have, left; var hold; var bits; var _in, _out; var copy; var from; var from_source; var here = 0; var here_bits, here_op, here_val; var last_bits, last_op, last_val; var len; var ret2; var hbuf = new utils.Buf8(4); var opts; var n; var order = ( /* permutation of code lengths */ [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15] ); if (!strm || !strm.state || !strm.output || !strm.input && strm.avail_in !== 0) { return Z_STREAM_ERROR; } state = strm.state; if (state.mode === TYPE) { state.mode = TYPEDO; } put = strm.next_out; output = strm.output; left = strm.avail_out; next = strm.next_in; input = strm.input; have = strm.avail_in; hold = state.hold; bits = state.bits; _in = have; _out = left; ret2 = Z_OK; inf_leave: for (; ; ) { switch (state.mode) { case HEAD: if (state.wrap === 0) { state.mode = TYPEDO; break; } while (bits < 16) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } if (state.wrap & 2 && hold === 35615) { state.check = 0; hbuf[0] = hold & 255; hbuf[1] = hold >>> 8 & 255; state.check = crc32(state.check, hbuf, 2, 0); hold = 0; bits = 0; state.mode = FLAGS; break; } state.flags = 0; if (state.head) { state.head.done = false; } if (!(state.wrap & 1) || /* check if zlib header allowed */ (((hold & 255) << 8) + (hold >> 8)) % 31) { strm.msg = "incorrect header check"; state.mode = BAD; break; } if ((hold & 15) !== Z_DEFLATED) { strm.msg = "unknown compression method"; state.mode = BAD; break; } hold >>>= 4; bits -= 4; len = (hold & 15) + 8; if (state.wbits === 0) { state.wbits = len; } else if (len > state.wbits) { strm.msg = "invalid window size"; state.mode = BAD; break; } state.dmax = 1 << len; strm.adler = state.check = 1; state.mode = hold & 512 ? DICTID : TYPE; hold = 0; bits = 0; break; case FLAGS: while (bits < 16) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } state.flags = hold; if ((state.flags & 255) !== Z_DEFLATED) { strm.msg = "unknown compression method"; state.mode = BAD; break; } if (state.flags & 57344) { strm.msg = "unknown header flags set"; state.mode = BAD; break; } if (state.head) { state.head.text = hold >> 8 & 1; } if (state.flags & 512) { hbuf[0] = hold & 255; hbuf[1] = hold >>> 8 & 255; state.check = crc32(state.check, hbuf, 2, 0); } hold = 0; bits = 0; state.mode = TIME; /* falls through */ case TIME: while (bits < 32) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } if (state.head) { state.head.time = hold; } if (state.flags & 512) { hbuf[0] = hold & 255; hbuf[1] = hold >>> 8 & 255; hbuf[2] = hold >>> 16 & 255; hbuf[3] = hold >>> 24 & 255; state.check = crc32(state.check, hbuf, 4, 0); } hold = 0; bits = 0; state.mode = OS; /* falls through */ case OS: while (bits < 16) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } if (state.head) { state.head.xflags = hold & 255; state.head.os = hold >> 8; } if (state.flags & 512) { hbuf[0] = hold & 255; hbuf[1] = hold >>> 8 & 255; state.check = crc32(state.check, hbuf, 2, 0); } hold = 0; bits = 0; state.mode = EXLEN; /* falls through */ case EXLEN: if (state.flags & 1024) { while (bits < 16) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } state.length = hold; if (state.head) { state.head.extra_len = hold; } if (state.flags & 512) { hbuf[0] = hold & 255; hbuf[1] = hold >>> 8 & 255; state.check = crc32(state.check, hbuf, 2, 0); } hold = 0; bits = 0; } else if (state.head) { state.head.extra = null; } state.mode = EXTRA; /* falls through */ case EXTRA: if (state.flags & 1024) { copy = state.length; if (copy > have) { copy = have; } if (copy) { if (state.head) { len = state.head.extra_len - state.length; if (!state.head.extra) { state.head.extra = new Array(state.head.extra_len); } utils.arraySet( state.head.extra, input, next, // extra field is limited to 65536 bytes // - no need for additional size check copy, /*len + copy > state.head.extra_max - len ? state.head.extra_max : copy,*/ len ); } if (state.flags & 512) { state.check = crc32(state.check, input, copy, next); } have -= copy; next += copy; state.length -= copy; } if (state.length) { break inf_leave; } } state.length = 0; state.mode = NAME; /* falls through */ case NAME: if (state.flags & 2048) { if (have === 0) { break inf_leave; } copy = 0; do { len = input[next + copy++]; if (state.head && len && state.length < 65536) { state.head.name += String.fromCharCode(len); } } while (len && copy < have); if (state.flags & 512) { state.check = crc32(state.check, input, copy, next); } have -= copy; next += copy; if (len) { break inf_leave; } } else if (state.head) { state.head.name = null; } state.length = 0; state.mode = COMMENT; /* falls through */ case COMMENT: if (state.flags & 4096) { if (have === 0) { break inf_leave; } copy = 0; do { len = input[next + copy++]; if (state.head && len && state.length < 65536) { state.head.comment += String.fromCharCode(len); } } while (len && copy < have); if (state.flags & 512) { state.check = crc32(state.check, input, copy, next); } have -= copy; next += copy; if (len) { break inf_leave; } } else if (state.head) { state.head.comment = null; } state.mode = HCRC; /* falls through */ case HCRC: if (state.flags & 512) { while (bits < 16) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } if (hold !== (state.check & 65535)) { strm.msg = "header crc mismatch"; state.mode = BAD; break; } hold = 0; bits = 0; } if (state.head) { state.head.hcrc = state.flags >> 9 & 1; state.head.done = true; } strm.adler = state.check = 0; state.mode = TYPE; break; case DICTID: while (bits < 32) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } strm.adler = state.check = zswap32(hold); hold = 0; bits = 0; state.mode = DICT; /* falls through */ case DICT: if (state.havedict === 0) { strm.next_out = put; strm.avail_out = left; strm.next_in = next; strm.avail_in = have; state.hold = hold; state.bits = bits; return Z_NEED_DICT; } strm.adler = state.check = 1; state.mode = TYPE; /* falls through */ case TYPE: if (flush === Z_BLOCK || flush === Z_TREES) { break inf_leave; } /* falls through */ case TYPEDO: if (state.last) { hold >>>= bits & 7; bits -= bits & 7; state.mode = CHECK; break; } while (bits < 3) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } state.last = hold & 1; hold >>>= 1; bits -= 1; switch (hold & 3) { case 0: state.mode = STORED; break; case 1: fixedtables(state); state.mode = LEN_; if (flush === Z_TREES) { hold >>>= 2; bits -= 2; break inf_leave; } break; case 2: state.mode = TABLE; break; case 3: strm.msg = "invalid block type"; state.mode = BAD; } hold >>>= 2; bits -= 2; break; case STORED: hold >>>= bits & 7; bits -= bits & 7; while (bits < 32) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } if ((hold & 65535) !== (hold >>> 16 ^ 65535)) { strm.msg = "invalid stored block lengths"; state.mode = BAD; break; } state.length = hold & 65535; hold = 0; bits = 0; state.mode = COPY_; if (flush === Z_TREES) { break inf_leave; } /* falls through */ case COPY_: state.mode = COPY; /* falls through */ case COPY: copy = state.length; if (copy) { if (copy > have) { copy = have; } if (copy > left) { copy = left; } if (copy === 0) { break inf_leave; } utils.arraySet(output, input, next, copy, put); have -= copy; next += copy; left -= copy; put += copy; state.length -= copy; break; } state.mode = TYPE; break; case TABLE: while (bits < 14) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } state.nlen = (hold & 31) + 257; hold >>>= 5; bits -= 5; state.ndist = (hold & 31) + 1; hold >>>= 5; bits -= 5; state.ncode = (hold & 15) + 4; hold >>>= 4; bits -= 4; if (state.nlen > 286 || state.ndist > 30) { strm.msg = "too many length or distance symbols"; state.mode = BAD; break; } state.have = 0; state.mode = LENLENS; /* falls through */ case LENLENS: while (state.have < state.ncode) { while (bits < 3) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } state.lens[order[state.have++]] = hold & 7; hold >>>= 3; bits -= 3; } while (state.have < 19) { state.lens[order[state.have++]] = 0; } state.lencode = state.lendyn; state.lenbits = 7; opts = { bits: state.lenbits }; ret2 = inflate_table(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts); state.lenbits = opts.bits; if (ret2) { strm.msg = "invalid code lengths set"; state.mode = BAD; break; } state.have = 0; state.mode = CODELENS; /* falls through */ case CODELENS: while (state.have < state.nlen + state.ndist) { for (; ; ) { here = state.lencode[hold & (1 << state.lenbits) - 1]; here_bits = here >>> 24; here_op = here >>> 16 & 255; here_val = here & 65535; if (here_bits <= bits) { break; } if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } if (here_val < 16) { hold >>>= here_bits; bits -= here_bits; state.lens[state.have++] = here_val; } else { if (here_val === 16) { n = here_bits + 2; while (bits < n) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } hold >>>= here_bits; bits -= here_bits; if (state.have === 0) { strm.msg = "invalid bit length repeat"; state.mode = BAD; break; } len = state.lens[state.have - 1]; copy = 3 + (hold & 3); hold >>>= 2; bits -= 2; } else if (here_val === 17) { n = here_bits + 3; while (bits < n) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } hold >>>= here_bits; bits -= here_bits; len = 0; copy = 3 + (hold & 7); hold >>>= 3; bits -= 3; } else { n = here_bits + 7; while (bits < n) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } hold >>>= here_bits; bits -= here_bits; len = 0; copy = 11 + (hold & 127); hold >>>= 7; bits -= 7; } if (state.have + copy > state.nlen + state.ndist) { strm.msg = "invalid bit length repeat"; state.mode = BAD; break; } while (copy--) { state.lens[state.have++] = len; } } } if (state.mode === BAD) { break; } if (state.lens[256] === 0) { strm.msg = "invalid code -- missing end-of-block"; state.mode = BAD; break; } state.lenbits = 9; opts = { bits: state.lenbits }; ret2 = inflate_table(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts); state.lenbits = opts.bits; if (ret2) { strm.msg = "invalid literal/lengths set"; state.mode = BAD; break; } state.distbits = 6; state.distcode = state.distdyn; opts = { bits: state.distbits }; ret2 = inflate_table(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts); state.distbits = opts.bits; if (ret2) { strm.msg = "invalid distances set"; state.mode = BAD; break; } state.mode = LEN_; if (flush === Z_TREES) { break inf_leave; } /* falls through */ case LEN_: state.mode = LEN; /* falls through */ case LEN: if (have >= 6 && left >= 258) { strm.next_out = put; strm.avail_out = left; strm.next_in = next; strm.avail_in = have; state.hold = hold; state.bits = bits; inflate_fast(strm, _out); put = strm.next_out; output = strm.output; left = strm.avail_out; next = strm.next_in; input = strm.input; have = strm.avail_in; hold = state.hold; bits = state.bits; if (state.mode === TYPE) { state.back = -1; } break; } state.back = 0; for (; ; ) { here = state.lencode[hold & (1 << state.lenbits) - 1]; here_bits = here >>> 24; here_op = here >>> 16 & 255; here_val = here & 65535; if (here_bits <= bits) { break; } if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } if (here_op && (here_op & 240) === 0) { last_bits = here_bits; last_op = here_op; last_val = here_val; for (; ; ) { here = state.lencode[last_val + ((hold & (1 << last_bits + last_op) - 1) >> last_bits)]; here_bits = here >>> 24; here_op = here >>> 16 & 255; here_val = here & 65535; if (last_bits + here_bits <= bits) { break; } if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } hold >>>= last_bits; bits -= last_bits; state.back += last_bits; } hold >>>= here_bits; bits -= here_bits; state.back += here_bits; state.length = here_val; if (here_op === 0) { state.mode = LIT; break; } if (here_op & 32) { state.back = -1; state.mode = TYPE; break; } if (here_op & 64) { strm.msg = "invalid literal/length code"; state.mode = BAD; break; } state.extra = here_op & 15; state.mode = LENEXT; /* falls through */ case LENEXT: if (state.extra) { n = state.extra; while (bits < n) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } state.length += hold & (1 << state.extra) - 1; hold >>>= state.extra; bits -= state.extra; state.back += state.extra; } state.was = state.length; state.mode = DIST; /* falls through */ case DIST: for (; ; ) { here = state.distcode[hold & (1 << state.distbits) - 1]; here_bits = here >>> 24; here_op = here >>> 16 & 255; here_val = here & 65535; if (here_bits <= bits) { break; } if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } if ((here_op & 240) === 0) { last_bits = here_bits; last_op = here_op; last_val = here_val; for (; ; ) { here = state.distcode[last_val + ((hold & (1 << last_bits + last_op) - 1) >> last_bits)]; here_bits = here >>> 24; here_op = here >>> 16 & 255; here_val = here & 65535; if (last_bits + here_bits <= bits) { break; } if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } hold >>>= last_bits; bits -= last_bits; state.back += last_bits; } hold >>>= here_bits; bits -= here_bits; state.back += here_bits; if (here_op & 64) { strm.msg = "invalid distance code"; state.mode = BAD; break; } state.offset = here_val; state.extra = here_op & 15; state.mode = DISTEXT; /* falls through */ case DISTEXT: if (state.extra) { n = state.extra; while (bits < n) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } state.offset += hold & (1 << state.extra) - 1; hold >>>= state.extra; bits -= state.extra; state.back += state.extra; } if (state.offset > state.dmax) { strm.msg = "invalid distance too far back"; state.mode = BAD; break; } state.mode = MATCH; /* falls through */ case MATCH: if (left === 0) { break inf_leave; } copy = _out - left; if (state.offset > copy) { copy = state.offset - copy; if (copy > state.whave) { if (state.sane) { strm.msg = "invalid distance too far back"; state.mode = BAD; break; } } if (copy > state.wnext) { copy -= state.wnext; from = state.wsize - copy; } else { from = state.wnext - copy; } if (copy > state.length) { copy = state.length; } from_source = state.window; } else { from_source = output; from = put - state.offset; copy = state.length; } if (copy > left) { copy = left; } left -= copy; state.length -= copy; do { output[put++] = from_source[from++]; } while (--copy); if (state.length === 0) { state.mode = LEN; } break; case LIT: if (left === 0) { break inf_leave; } output[put++] = state.length; left--; state.mode = LEN; break; case CHECK: if (state.wrap) { while (bits < 32) { if (have === 0) { break inf_leave; } have--; hold |= input[next++] << bits; bits += 8; } _out -= left; strm.total_out += _out; state.total += _out; if (_out) { strm.adler = state.check = /*UPDATE(state.check, put - _out, _out);*/ state.flags ? crc32(state.check, output, _out, put - _out) : adler32(state.check, output, _out, put - _out); } _out = left; if ((state.flags ? hold : zswap32(hold)) !== state.check) { strm.msg = "incorrect data check"; state.mode = BAD; break; } hold = 0; bits = 0; } state.mode = LENGTH; /* falls through */ case LENGTH: if (state.wrap && state.flags) { while (bits < 32) { if (have === 0) { break inf_leave; } have--; hold += input[next++] << bits; bits += 8; } if (hold !== (state.total & 4294967295)) { strm.msg = "incorrect length check"; state.mode = BAD; break; } hold = 0; bits = 0; } state.mode = DONE; /* falls through */ case DONE: ret2 = Z_STREAM_END; break inf_leave; case BAD: ret2 = Z_DATA_ERROR; break inf_leave; case MEM: return Z_MEM_ERROR; case SYNC: /* falls through */ default: return Z_STREAM_ERROR; } } strm.next_out = put; strm.avail_out = left; strm.next_in = next; strm.avail_in = have; state.hold = hold; state.bits = bits; if (state.wsize || _out !== strm.avail_out && state.mode < BAD && (state.mode < CHECK || flush !== Z_FINISH)) { if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) { state.mode = MEM; return Z_MEM_ERROR; } } _in -= strm.avail_in; _out -= strm.avail_out; strm.total_in += _in; strm.total_out += _out; state.total += _out; if (state.wrap && _out) { strm.adler = state.check = /*UPDATE(state.check, strm.next_out - _out, _out);*/ state.flags ? crc32(state.check, output, _out, strm.next_out - _out) : adler32(state.check, output, _out, strm.next_out - _out); } strm.data_type = state.bits + (state.last ? 64 : 0) + (state.mode === TYPE ? 128 : 0) + (state.mode === LEN_ || state.mode === COPY_ ? 256 : 0); if ((_in === 0 && _out === 0 || flush === Z_FINISH) && ret2 === Z_OK) { ret2 = Z_BUF_ERROR; } return ret2; } __name(inflate, "inflate"); function inflateEnd(strm) { if (!strm || !strm.state) { return Z_STREAM_ERROR; } var state = strm.state; if (state.window) { state.window = null; } strm.state = null; return Z_OK; } __name(inflateEnd, "inflateEnd"); function inflateGetHeader(strm, head) { var state; if (!strm || !strm.state) { return Z_STREAM_ERROR; } state = strm.state; if ((state.wrap & 2) === 0) { return Z_STREAM_ERROR; } state.head = head; head.done = false; return Z_OK; } __name(inflateGetHeader, "inflateGetHeader"); function inflateSetDictionary(strm, dictionary) { var dictLength = dictionary.length; var state; var dictid; var ret2; if (!strm || !strm.state) { return Z_STREAM_ERROR; } state = strm.state; if (state.wrap !== 0 && state.mode !== DICT) { return Z_STREAM_ERROR; } if (state.mode === DICT) { dictid = 1; dictid = adler32(dictid, dictionary, dictLength, 0); if (dictid !== state.check) { return Z_DATA_ERROR; } } ret2 = updatewindow(strm, dictionary, dictLength, dictLength); if (ret2) { state.mode = MEM; return Z_MEM_ERROR; } state.havedict = 1; return Z_OK; } __name(inflateSetDictionary, "inflateSetDictionary"); exports2.inflateReset = inflateReset; exports2.inflateReset2 = inflateReset2; exports2.inflateResetKeep = inflateResetKeep; exports2.inflateInit = inflateInit; exports2.inflateInit2 = inflateInit2; exports2.inflate = inflate; exports2.inflateEnd = inflateEnd; exports2.inflateGetHeader = inflateGetHeader; exports2.inflateSetDictionary = inflateSetDictionary; exports2.inflateInfo = "pako inflate (from Nodeca project)"; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/constants.js var require_constants13 = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/constants.js"(exports2, module2) { "use strict"; module2.exports = { /* Allowed flush values; see deflate() and inflate() below for details */ Z_NO_FLUSH: 0, Z_PARTIAL_FLUSH: 1, Z_SYNC_FLUSH: 2, Z_FULL_FLUSH: 3, Z_FINISH: 4, Z_BLOCK: 5, Z_TREES: 6, /* Return codes for the compression/decompression functions. Negative values * are errors, positive values are used for special but normal events. */ Z_OK: 0, Z_STREAM_END: 1, Z_NEED_DICT: 2, Z_ERRNO: -1, Z_STREAM_ERROR: -2, Z_DATA_ERROR: -3, //Z_MEM_ERROR: -4, Z_BUF_ERROR: -5, //Z_VERSION_ERROR: -6, /* compression levels */ Z_NO_COMPRESSION: 0, Z_BEST_SPEED: 1, Z_BEST_COMPRESSION: 9, Z_DEFAULT_COMPRESSION: -1, Z_FILTERED: 1, Z_HUFFMAN_ONLY: 2, Z_RLE: 3, Z_FIXED: 4, Z_DEFAULT_STRATEGY: 0, /* Possible values of the data_type field (though see inflate()) */ Z_BINARY: 0, Z_TEXT: 1, //Z_ASCII: 1, // = Z_TEXT (deprecated) Z_UNKNOWN: 2, /* The deflate compression method */ Z_DEFLATED: 8 //Z_NULL: null // Use -1 or null inline, depending on var type }; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/gzheader.js var require_gzheader = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/zlib/gzheader.js"(exports2, module2) { "use strict"; function GZheader() { this.text = 0; this.time = 0; this.xflags = 0; this.os = 0; this.extra = null; this.extra_len = 0; this.name = ""; this.comment = ""; this.hcrc = 0; this.done = false; } __name(GZheader, "GZheader"); module2.exports = GZheader; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/inflate.js var require_inflate2 = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/lib/inflate.js"(exports2) { "use strict"; var zlib_inflate = require_inflate(); var utils = require_common4(); var strings = require_strings(); var c = require_constants13(); var msg = require_messages3(); var ZStream = require_zstream(); var GZheader = require_gzheader(); var toString2 = Object.prototype.toString; function Inflate(options) { if (!(this instanceof Inflate)) return new Inflate(options); this.options = utils.assign({ chunkSize: 16384, windowBits: 0, to: "" }, options || {}); var opt = this.options; if (opt.raw && opt.windowBits >= 0 && opt.windowBits < 16) { opt.windowBits = -opt.windowBits; if (opt.windowBits === 0) { opt.windowBits = -15; } } if (opt.windowBits >= 0 && opt.windowBits < 16 && !(options && options.windowBits)) { opt.windowBits += 32; } if (opt.windowBits > 15 && opt.windowBits < 48) { if ((opt.windowBits & 15) === 0) { opt.windowBits |= 15; } } this.err = 0; this.msg = ""; this.ended = false; this.chunks = []; this.strm = new ZStream(); this.strm.avail_out = 0; var status = zlib_inflate.inflateInit2( this.strm, opt.windowBits ); if (status !== c.Z_OK) { throw new Error(msg[status]); } this.header = new GZheader(); zlib_inflate.inflateGetHeader(this.strm, this.header); if (opt.dictionary) { if (typeof opt.dictionary === "string") { opt.dictionary = strings.string2buf(opt.dictionary); } else if (toString2.call(opt.dictionary) === "[object ArrayBuffer]") { opt.dictionary = new Uint8Array(opt.dictionary); } if (opt.raw) { status = zlib_inflate.inflateSetDictionary(this.strm, opt.dictionary); if (status !== c.Z_OK) { throw new Error(msg[status]); } } } } __name(Inflate, "Inflate"); Inflate.prototype.push = function(data, mode) { var strm = this.strm; var chunkSize = this.options.chunkSize; var dictionary = this.options.dictionary; var status, _mode; var next_out_utf8, tail, utf8str; var allowBufError = false; if (this.ended) { return false; } _mode = mode === ~~mode ? mode : mode === true ? c.Z_FINISH : c.Z_NO_FLUSH; if (typeof data === "string") { strm.input = strings.binstring2buf(data); } else if (toString2.call(data) === "[object ArrayBuffer]") { strm.input = new Uint8Array(data); } else { strm.input = data; } strm.next_in = 0; strm.avail_in = strm.input.length; do { if (strm.avail_out === 0) { strm.output = new utils.Buf8(chunkSize); strm.next_out = 0; strm.avail_out = chunkSize; } status = zlib_inflate.inflate(strm, c.Z_NO_FLUSH); if (status === c.Z_NEED_DICT && dictionary) { status = zlib_inflate.inflateSetDictionary(this.strm, dictionary); } if (status === c.Z_BUF_ERROR && allowBufError === true) { status = c.Z_OK; allowBufError = false; } if (status !== c.Z_STREAM_END && status !== c.Z_OK) { this.onEnd(status); this.ended = true; return false; } if (strm.next_out) { if (strm.avail_out === 0 || status === c.Z_STREAM_END || strm.avail_in === 0 && (_mode === c.Z_FINISH || _mode === c.Z_SYNC_FLUSH)) { if (this.options.to === "string") { next_out_utf8 = strings.utf8border(strm.output, strm.next_out); tail = strm.next_out - next_out_utf8; utf8str = strings.buf2string(strm.output, next_out_utf8); strm.next_out = tail; strm.avail_out = chunkSize - tail; if (tail) { utils.arraySet(strm.output, strm.output, next_out_utf8, tail, 0); } this.onData(utf8str); } else { this.onData(utils.shrinkBuf(strm.output, strm.next_out)); } } } if (strm.avail_in === 0 && strm.avail_out === 0) { allowBufError = true; } } while ((strm.avail_in > 0 || strm.avail_out === 0) && status !== c.Z_STREAM_END); if (status === c.Z_STREAM_END) { _mode = c.Z_FINISH; } if (_mode === c.Z_FINISH) { status = zlib_inflate.inflateEnd(this.strm); this.onEnd(status); this.ended = true; return status === c.Z_OK; } if (_mode === c.Z_SYNC_FLUSH) { this.onEnd(c.Z_OK); strm.avail_out = 0; return true; } return true; }; Inflate.prototype.onData = function(chunk) { this.chunks.push(chunk); }; Inflate.prototype.onEnd = function(status) { if (status === c.Z_OK) { if (this.options.to === "string") { this.result = this.chunks.join(""); } else { this.result = utils.flattenChunks(this.chunks); } } this.chunks = []; this.err = status; this.msg = this.strm.msg; }; function inflate(input, options) { var inflator = new Inflate(options); inflator.push(input, true); if (inflator.err) { throw inflator.msg || msg[inflator.err]; } return inflator.result; } __name(inflate, "inflate"); function inflateRaw(input, options) { options = options || {}; options.raw = true; return inflate(input, options); } __name(inflateRaw, "inflateRaw"); exports2.Inflate = Inflate; exports2.inflate = inflate; exports2.inflateRaw = inflateRaw; exports2.ungzip = inflate; } }); // ../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/index.js var require_pako = __commonJS({ "../../node_modules/.pnpm/pako@1.0.11/node_modules/pako/index.js"(exports2, module2) { "use strict"; var assign = require_common4().assign; var deflate = require_deflate2(); var inflate = require_inflate2(); var constants = require_constants13(); var pako = {}; assign(pako, deflate, inflate, constants); module2.exports = pako; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/flate.js var require_flate = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/flate.js"(exports2) { "use strict"; var USE_TYPEDARRAY = typeof Uint8Array !== "undefined" && typeof Uint16Array !== "undefined" && typeof Uint32Array !== "undefined"; var pako = require_pako(); var utils = require_utils20(); var GenericWorker = require_GenericWorker(); var ARRAY_TYPE = USE_TYPEDARRAY ? "uint8array" : "array"; exports2.magic = "\b\0"; function FlateWorker(action, options) { GenericWorker.call(this, "FlateWorker/" + action); this._pako = null; this._pakoAction = action; this._pakoOptions = options; this.meta = {}; } __name(FlateWorker, "FlateWorker"); utils.inherits(FlateWorker, GenericWorker); FlateWorker.prototype.processChunk = function(chunk) { this.meta = chunk.meta; if (this._pako === null) { this._createPako(); } this._pako.push(utils.transformTo(ARRAY_TYPE, chunk.data), false); }; FlateWorker.prototype.flush = function() { GenericWorker.prototype.flush.call(this); if (this._pako === null) { this._createPako(); } this._pako.push([], true); }; FlateWorker.prototype.cleanUp = function() { GenericWorker.prototype.cleanUp.call(this); this._pako = null; }; FlateWorker.prototype._createPako = function() { this._pako = new pako[this._pakoAction]({ raw: true, level: this._pakoOptions.level || -1 // default compression }); var self2 = this; this._pako.onData = function(data) { self2.push({ data, meta: self2.meta }); }; }; exports2.compressWorker = function(compressionOptions) { return new FlateWorker("Deflate", compressionOptions); }; exports2.uncompressWorker = function() { return new FlateWorker("Inflate", {}); }; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/compressions.js var require_compressions = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/compressions.js"(exports2) { "use strict"; var GenericWorker = require_GenericWorker(); exports2.STORE = { magic: "\0\0", compressWorker: /* @__PURE__ */ __name(function() { return new GenericWorker("STORE compression"); }, "compressWorker"), uncompressWorker: /* @__PURE__ */ __name(function() { return new GenericWorker("STORE decompression"); }, "uncompressWorker") }; exports2.DEFLATE = require_flate(); } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/signature.js var require_signature = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/signature.js"(exports2) { "use strict"; exports2.LOCAL_FILE_HEADER = "PK"; exports2.CENTRAL_FILE_HEADER = "PK"; exports2.CENTRAL_DIRECTORY_END = "PK"; exports2.ZIP64_CENTRAL_DIRECTORY_LOCATOR = "PK\x07"; exports2.ZIP64_CENTRAL_DIRECTORY_END = "PK"; exports2.DATA_DESCRIPTOR = "PK\x07\b"; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/generate/ZipFileWorker.js var require_ZipFileWorker = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/generate/ZipFileWorker.js"(exports2, module2) { "use strict"; var utils = require_utils20(); var GenericWorker = require_GenericWorker(); var utf8 = require_utf8(); var crc32 = require_crc32(); var signature = require_signature(); var decToHex = /* @__PURE__ */ __name(function(dec, bytes) { var hex = "", i; for (i = 0; i < bytes; i++) { hex += String.fromCharCode(dec & 255); dec = dec >>> 8; } return hex; }, "decToHex"); var generateUnixExternalFileAttr = /* @__PURE__ */ __name(function(unixPermissions, isDir) { var result = unixPermissions; if (!unixPermissions) { result = isDir ? 16893 : 33204; } return (result & 65535) << 16; }, "generateUnixExternalFileAttr"); var generateDosExternalFileAttr = /* @__PURE__ */ __name(function(dosPermissions) { return (dosPermissions || 0) & 63; }, "generateDosExternalFileAttr"); var generateZipParts = /* @__PURE__ */ __name(function(streamInfo, streamedContent, streamingEnded, offset, platform, encodeFileName) { var file2 = streamInfo["file"], compression = streamInfo["compression"], useCustomEncoding = encodeFileName !== utf8.utf8encode, encodedFileName = utils.transformTo("string", encodeFileName(file2.name)), utfEncodedFileName = utils.transformTo("string", utf8.utf8encode(file2.name)), comment = file2.comment, encodedComment = utils.transformTo("string", encodeFileName(comment)), utfEncodedComment = utils.transformTo("string", utf8.utf8encode(comment)), useUTF8ForFileName = utfEncodedFileName.length !== file2.name.length, useUTF8ForComment = utfEncodedComment.length !== comment.length, dosTime, dosDate, extraFields = "", unicodePathExtraField = "", unicodeCommentExtraField = "", dir = file2.dir, date = file2.date; var dataInfo = { crc32: 0, compressedSize: 0, uncompressedSize: 0 }; if (!streamedContent || streamingEnded) { dataInfo.crc32 = streamInfo["crc32"]; dataInfo.compressedSize = streamInfo["compressedSize"]; dataInfo.uncompressedSize = streamInfo["uncompressedSize"]; } var bitflag = 0; if (streamedContent) { bitflag |= 8; } if (!useCustomEncoding && (useUTF8ForFileName || useUTF8ForComment)) { bitflag |= 2048; } var extFileAttr = 0; var versionMadeBy = 0; if (dir) { extFileAttr |= 16; } if (platform === "UNIX") { versionMadeBy = 798; extFileAttr |= generateUnixExternalFileAttr(file2.unixPermissions, dir); } else { versionMadeBy = 20; extFileAttr |= generateDosExternalFileAttr(file2.dosPermissions, dir); } dosTime = date.getUTCHours(); dosTime = dosTime << 6; dosTime = dosTime | date.getUTCMinutes(); dosTime = dosTime << 5; dosTime = dosTime | date.getUTCSeconds() / 2; dosDate = date.getUTCFullYear() - 1980; dosDate = dosDate << 4; dosDate = dosDate | date.getUTCMonth() + 1; dosDate = dosDate << 5; dosDate = dosDate | date.getUTCDate(); if (useUTF8ForFileName) { unicodePathExtraField = // Version decToHex(1, 1) + // NameCRC32 decToHex(crc32(encodedFileName), 4) + // UnicodeName utfEncodedFileName; extraFields += // Info-ZIP Unicode Path Extra Field "up" + // size decToHex(unicodePathExtraField.length, 2) + // content unicodePathExtraField; } if (useUTF8ForComment) { unicodeCommentExtraField = // Version decToHex(1, 1) + // CommentCRC32 decToHex(crc32(encodedComment), 4) + // UnicodeName utfEncodedComment; extraFields += // Info-ZIP Unicode Path Extra Field "uc" + // size decToHex(unicodeCommentExtraField.length, 2) + // content unicodeCommentExtraField; } var header = ""; header += "\n\0"; header += decToHex(bitflag, 2); header += compression.magic; header += decToHex(dosTime, 2); header += decToHex(dosDate, 2); header += decToHex(dataInfo.crc32, 4); header += decToHex(dataInfo.compressedSize, 4); header += decToHex(dataInfo.uncompressedSize, 4); header += decToHex(encodedFileName.length, 2); header += decToHex(extraFields.length, 2); var fileRecord = signature.LOCAL_FILE_HEADER + header + encodedFileName + extraFields; var dirRecord = signature.CENTRAL_FILE_HEADER + // version made by (00: DOS) decToHex(versionMadeBy, 2) + // file header (common to file and central directory) header + // file comment length decToHex(encodedComment.length, 2) + // disk number start "\0\0\0\0" + // external file attributes decToHex(extFileAttr, 4) + // relative offset of local header decToHex(offset, 4) + // file name encodedFileName + // extra field extraFields + // file comment encodedComment; return { fileRecord, dirRecord }; }, "generateZipParts"); var generateCentralDirectoryEnd = /* @__PURE__ */ __name(function(entriesCount, centralDirLength, localDirLength, comment, encodeFileName) { var dirEnd = ""; var encodedComment = utils.transformTo("string", encodeFileName(comment)); dirEnd = signature.CENTRAL_DIRECTORY_END + // number of this disk "\0\0\0\0" + // total number of entries in the central directory on this disk decToHex(entriesCount, 2) + // total number of entries in the central directory decToHex(entriesCount, 2) + // size of the central directory 4 bytes decToHex(centralDirLength, 4) + // offset of start of central directory with respect to the starting disk number decToHex(localDirLength, 4) + // .ZIP file comment length decToHex(encodedComment.length, 2) + // .ZIP file comment encodedComment; return dirEnd; }, "generateCentralDirectoryEnd"); var generateDataDescriptors = /* @__PURE__ */ __name(function(streamInfo) { var descriptor = ""; descriptor = signature.DATA_DESCRIPTOR + // crc-32 4 bytes decToHex(streamInfo["crc32"], 4) + // compressed size 4 bytes decToHex(streamInfo["compressedSize"], 4) + // uncompressed size 4 bytes decToHex(streamInfo["uncompressedSize"], 4); return descriptor; }, "generateDataDescriptors"); function ZipFileWorker(streamFiles, comment, platform, encodeFileName) { GenericWorker.call(this, "ZipFileWorker"); this.bytesWritten = 0; this.zipComment = comment; this.zipPlatform = platform; this.encodeFileName = encodeFileName; this.streamFiles = streamFiles; this.accumulate = false; this.contentBuffer = []; this.dirRecords = []; this.currentSourceOffset = 0; this.entriesCount = 0; this.currentFile = null; this._sources = []; } __name(ZipFileWorker, "ZipFileWorker"); utils.inherits(ZipFileWorker, GenericWorker); ZipFileWorker.prototype.push = function(chunk) { var currentFilePercent = chunk.meta.percent || 0; var entriesCount = this.entriesCount; var remainingFiles = this._sources.length; if (this.accumulate) { this.contentBuffer.push(chunk); } else { this.bytesWritten += chunk.data.length; GenericWorker.prototype.push.call(this, { data: chunk.data, meta: { currentFile: this.currentFile, percent: entriesCount ? (currentFilePercent + 100 * (entriesCount - remainingFiles - 1)) / entriesCount : 100 } }); } }; ZipFileWorker.prototype.openedSource = function(streamInfo) { this.currentSourceOffset = this.bytesWritten; this.currentFile = streamInfo["file"].name; var streamedContent = this.streamFiles && !streamInfo["file"].dir; if (streamedContent) { var record = generateZipParts(streamInfo, streamedContent, false, this.currentSourceOffset, this.zipPlatform, this.encodeFileName); this.push({ data: record.fileRecord, meta: { percent: 0 } }); } else { this.accumulate = true; } }; ZipFileWorker.prototype.closedSource = function(streamInfo) { this.accumulate = false; var streamedContent = this.streamFiles && !streamInfo["file"].dir; var record = generateZipParts(streamInfo, streamedContent, true, this.currentSourceOffset, this.zipPlatform, this.encodeFileName); this.dirRecords.push(record.dirRecord); if (streamedContent) { this.push({ data: generateDataDescriptors(streamInfo), meta: { percent: 100 } }); } else { this.push({ data: record.fileRecord, meta: { percent: 0 } }); while (this.contentBuffer.length) { this.push(this.contentBuffer.shift()); } } this.currentFile = null; }; ZipFileWorker.prototype.flush = function() { var localDirLength = this.bytesWritten; for (var i = 0; i < this.dirRecords.length; i++) { this.push({ data: this.dirRecords[i], meta: { percent: 100 } }); } var centralDirLength = this.bytesWritten - localDirLength; var dirEnd = generateCentralDirectoryEnd(this.dirRecords.length, centralDirLength, localDirLength, this.zipComment, this.encodeFileName); this.push({ data: dirEnd, meta: { percent: 100 } }); }; ZipFileWorker.prototype.prepareNextSource = function() { this.previous = this._sources.shift(); this.openedSource(this.previous.streamInfo); if (this.isPaused) { this.previous.pause(); } else { this.previous.resume(); } }; ZipFileWorker.prototype.registerPrevious = function(previous) { this._sources.push(previous); var self2 = this; previous.on("data", function(chunk) { self2.processChunk(chunk); }); previous.on("end", function() { self2.closedSource(self2.previous.streamInfo); if (self2._sources.length) { self2.prepareNextSource(); } else { self2.end(); } }); previous.on("error", function(e) { self2.error(e); }); return this; }; ZipFileWorker.prototype.resume = function() { if (!GenericWorker.prototype.resume.call(this)) { return false; } if (!this.previous && this._sources.length) { this.prepareNextSource(); return true; } if (!this.previous && !this._sources.length && !this.generatedError) { this.end(); return true; } }; ZipFileWorker.prototype.error = function(e) { var sources = this._sources; if (!GenericWorker.prototype.error.call(this, e)) { return false; } for (var i = 0; i < sources.length; i++) { try { sources[i].error(e); } catch (e2) { } } return true; }; ZipFileWorker.prototype.lock = function() { GenericWorker.prototype.lock.call(this); var sources = this._sources; for (var i = 0; i < sources.length; i++) { sources[i].lock(); } }; module2.exports = ZipFileWorker; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/generate/index.js var require_generate2 = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/generate/index.js"(exports2) { "use strict"; var compressions = require_compressions(); var ZipFileWorker = require_ZipFileWorker(); var getCompression = /* @__PURE__ */ __name(function(fileCompression, zipCompression) { var compressionName = fileCompression || zipCompression; var compression = compressions[compressionName]; if (!compression) { throw new Error(compressionName + " is not a valid compression method !"); } return compression; }, "getCompression"); exports2.generateWorker = function(zip, options, comment) { var zipFileWorker = new ZipFileWorker(options.streamFiles, comment, options.platform, options.encodeFileName); var entriesCount = 0; try { zip.forEach(function(relativePath, file2) { entriesCount++; var compression = getCompression(file2.options.compression, options.compression); var compressionOptions = file2.options.compressionOptions || options.compressionOptions || {}; var dir = file2.dir, date = file2.date; file2._compressWorker(compression, compressionOptions).withStreamInfo("file", { name: relativePath, dir, date, comment: file2.comment || "", unixPermissions: file2.unixPermissions, dosPermissions: file2.dosPermissions }).pipe(zipFileWorker); }); zipFileWorker.entriesCount = entriesCount; } catch (e) { zipFileWorker.error(e); } return zipFileWorker; }; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/nodejs/NodejsStreamInputAdapter.js var require_NodejsStreamInputAdapter = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/nodejs/NodejsStreamInputAdapter.js"(exports2, module2) { "use strict"; var utils = require_utils20(); var GenericWorker = require_GenericWorker(); function NodejsStreamInputAdapter(filename, stream) { GenericWorker.call(this, "Nodejs stream input adapter for " + filename); this._upstreamEnded = false; this._bindStream(stream); } __name(NodejsStreamInputAdapter, "NodejsStreamInputAdapter"); utils.inherits(NodejsStreamInputAdapter, GenericWorker); NodejsStreamInputAdapter.prototype._bindStream = function(stream) { var self2 = this; this._stream = stream; stream.pause(); stream.on("data", function(chunk) { self2.push({ data: chunk, meta: { percent: 0 } }); }).on("error", function(e) { if (self2.isPaused) { this.generatedError = e; } else { self2.error(e); } }).on("end", function() { if (self2.isPaused) { self2._upstreamEnded = true; } else { self2.end(); } }); }; NodejsStreamInputAdapter.prototype.pause = function() { if (!GenericWorker.prototype.pause.call(this)) { return false; } this._stream.pause(); return true; }; NodejsStreamInputAdapter.prototype.resume = function() { if (!GenericWorker.prototype.resume.call(this)) { return false; } if (this._upstreamEnded) { this.end(); } else { this._stream.resume(); } return true; }; module2.exports = NodejsStreamInputAdapter; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/object.js var require_object = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/object.js"(exports2, module2) { "use strict"; var utf8 = require_utf8(); var utils = require_utils20(); var GenericWorker = require_GenericWorker(); var StreamHelper = require_StreamHelper(); var defaults = require_defaults2(); var CompressedObject = require_compressedObject(); var ZipObject = require_zipObject(); var generate = require_generate2(); var nodejsUtils = require_nodejsUtils(); var NodejsStreamInputAdapter = require_NodejsStreamInputAdapter(); var fileAdd = /* @__PURE__ */ __name(function(name, data, originalOptions) { var dataType = utils.getTypeOf(data), parent; var o = utils.extend(originalOptions || {}, defaults); o.date = o.date || /* @__PURE__ */ new Date(); if (o.compression !== null) { o.compression = o.compression.toUpperCase(); } if (typeof o.unixPermissions === "string") { o.unixPermissions = parseInt(o.unixPermissions, 8); } if (o.unixPermissions && o.unixPermissions & 16384) { o.dir = true; } if (o.dosPermissions && o.dosPermissions & 16) { o.dir = true; } if (o.dir) { name = forceTrailingSlash(name); } if (o.createFolders && (parent = parentFolder(name))) { folderAdd.call(this, parent, true); } var isUnicodeString = dataType === "string" && o.binary === false && o.base64 === false; if (!originalOptions || typeof originalOptions.binary === "undefined") { o.binary = !isUnicodeString; } var isCompressedEmpty = data instanceof CompressedObject && data.uncompressedSize === 0; if (isCompressedEmpty || o.dir || !data || data.length === 0) { o.base64 = false; o.binary = true; data = ""; o.compression = "STORE"; dataType = "string"; } var zipObjectContent = null; if (data instanceof CompressedObject || data instanceof GenericWorker) { zipObjectContent = data; } else if (nodejsUtils.isNode && nodejsUtils.isStream(data)) { zipObjectContent = new NodejsStreamInputAdapter(name, data); } else { zipObjectContent = utils.prepareContent(name, data, o.binary, o.optimizedBinaryString, o.base64); } var object = new ZipObject(name, zipObjectContent, o); this.files[name] = object; }, "fileAdd"); var parentFolder = /* @__PURE__ */ __name(function(path) { if (path.slice(-1) === "/") { path = path.substring(0, path.length - 1); } var lastSlash = path.lastIndexOf("/"); return lastSlash > 0 ? path.substring(0, lastSlash) : ""; }, "parentFolder"); var forceTrailingSlash = /* @__PURE__ */ __name(function(path) { if (path.slice(-1) !== "/") { path += "/"; } return path; }, "forceTrailingSlash"); var folderAdd = /* @__PURE__ */ __name(function(name, createFolders) { createFolders = typeof createFolders !== "undefined" ? createFolders : defaults.createFolders; name = forceTrailingSlash(name); if (!this.files[name]) { fileAdd.call(this, name, null, { dir: true, createFolders }); } return this.files[name]; }, "folderAdd"); function isRegExp(object) { return Object.prototype.toString.call(object) === "[object RegExp]"; } __name(isRegExp, "isRegExp"); var out = { /** * @see loadAsync */ load: /* @__PURE__ */ __name(function() { throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide."); }, "load"), /** * Call a callback function for each entry at this folder level. * @param {Function} cb the callback function: * function (relativePath, file) {...} * It takes 2 arguments : the relative path and the file. */ forEach: /* @__PURE__ */ __name(function(cb) { var filename, relativePath, file2; for (filename in this.files) { file2 = this.files[filename]; relativePath = filename.slice(this.root.length, filename.length); if (relativePath && filename.slice(0, this.root.length) === this.root) { cb(relativePath, file2); } } }, "forEach"), /** * Filter nested files/folders with the specified function. * @param {Function} search the predicate to use : * function (relativePath, file) {...} * It takes 2 arguments : the relative path and the file. * @return {Array} An array of matching elements. */ filter: /* @__PURE__ */ __name(function(search) { var result = []; this.forEach(function(relativePath, entry) { if (search(relativePath, entry)) { result.push(entry); } }); return result; }, "filter"), /** * Add a file to the zip file, or search a file. * @param {string|RegExp} name The name of the file to add (if data is defined), * the name of the file to find (if no data) or a regex to match files. * @param {String|ArrayBuffer|Uint8Array|Buffer} data The file data, either raw or base64 encoded * @param {Object} o File options * @return {JSZip|Object|Array} this JSZip object (when adding a file), * a file (when searching by string) or an array of files (when searching by regex). */ file: /* @__PURE__ */ __name(function(name, data, o) { if (arguments.length === 1) { if (isRegExp(name)) { var regexp = name; return this.filter(function(relativePath, file2) { return !file2.dir && regexp.test(relativePath); }); } else { var obj2 = this.files[this.root + name]; if (obj2 && !obj2.dir) { return obj2; } else { return null; } } } else { name = this.root + name; fileAdd.call(this, name, data, o); } return this; }, "file"), /** * Add a directory to the zip file, or search. * @param {String|RegExp} arg The name of the directory to add, or a regex to search folders. * @return {JSZip} an object with the new directory as the root, or an array containing matching folders. */ folder: /* @__PURE__ */ __name(function(arg) { if (!arg) { return this; } if (isRegExp(arg)) { return this.filter(function(relativePath, file2) { return file2.dir && arg.test(relativePath); }); } var name = this.root + arg; var newFolder = folderAdd.call(this, name); var ret2 = this.clone(); ret2.root = newFolder.name; return ret2; }, "folder"), /** * Delete a file, or a directory and all sub-files, from the zip * @param {string} name the name of the file to delete * @return {JSZip} this JSZip object */ remove: /* @__PURE__ */ __name(function(name) { name = this.root + name; var file2 = this.files[name]; if (!file2) { if (name.slice(-1) !== "/") { name += "/"; } file2 = this.files[name]; } if (file2 && !file2.dir) { delete this.files[name]; } else { var kids = this.filter(function(relativePath, file3) { return file3.name.slice(0, name.length) === name; }); for (var i = 0; i < kids.length; i++) { delete this.files[kids[i].name]; } } return this; }, "remove"), /** * @deprecated This method has been removed in JSZip 3.0, please check the upgrade guide. */ generate: /* @__PURE__ */ __name(function() { throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide."); }, "generate"), /** * Generate the complete zip file as an internal stream. * @param {Object} options the options to generate the zip file : * - compression, "STORE" by default. * - type, "base64" by default. Values are : string, base64, uint8array, arraybuffer, blob. * @return {StreamHelper} the streamed zip file. */ generateInternalStream: /* @__PURE__ */ __name(function(options) { var worker, opts = {}; try { opts = utils.extend(options || {}, { streamFiles: false, compression: "STORE", compressionOptions: null, type: "", platform: "DOS", comment: null, mimeType: "application/zip", encodeFileName: utf8.utf8encode }); opts.type = opts.type.toLowerCase(); opts.compression = opts.compression.toUpperCase(); if (opts.type === "binarystring") { opts.type = "string"; } if (!opts.type) { throw new Error("No output type specified."); } utils.checkSupport(opts.type); if (opts.platform === "darwin" || opts.platform === "freebsd" || opts.platform === "linux" || opts.platform === "sunos") { opts.platform = "UNIX"; } if (opts.platform === "win32") { opts.platform = "DOS"; } var comment = opts.comment || this.comment || ""; worker = generate.generateWorker(this, opts, comment); } catch (e) { worker = new GenericWorker("error"); worker.error(e); } return new StreamHelper(worker, opts.type || "string", opts.mimeType); }, "generateInternalStream"), /** * Generate the complete zip file asynchronously. * @see generateInternalStream */ generateAsync: /* @__PURE__ */ __name(function(options, onUpdate) { return this.generateInternalStream(options).accumulate(onUpdate); }, "generateAsync"), /** * Generate the complete zip file asynchronously. * @see generateInternalStream */ generateNodeStream: /* @__PURE__ */ __name(function(options, onUpdate) { options = options || {}; if (!options.type) { options.type = "nodebuffer"; } return this.generateInternalStream(options).toNodejsStream(onUpdate); }, "generateNodeStream") }; module2.exports = out; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/DataReader.js var require_DataReader = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/DataReader.js"(exports2, module2) { "use strict"; var utils = require_utils20(); function DataReader(data) { this.data = data; this.length = data.length; this.index = 0; this.zero = 0; } __name(DataReader, "DataReader"); DataReader.prototype = { /** * Check that the offset will not go too far. * @param {string} offset the additional offset to check. * @throws {Error} an Error if the offset is out of bounds. */ checkOffset: /* @__PURE__ */ __name(function(offset) { this.checkIndex(this.index + offset); }, "checkOffset"), /** * Check that the specified index will not be too far. * @param {string} newIndex the index to check. * @throws {Error} an Error if the index is out of bounds. */ checkIndex: /* @__PURE__ */ __name(function(newIndex) { if (this.length < this.zero + newIndex || newIndex < 0) { throw new Error("End of data reached (data length = " + this.length + ", asked index = " + newIndex + "). Corrupted zip ?"); } }, "checkIndex"), /** * Change the index. * @param {number} newIndex The new index. * @throws {Error} if the new index is out of the data. */ setIndex: /* @__PURE__ */ __name(function(newIndex) { this.checkIndex(newIndex); this.index = newIndex; }, "setIndex"), /** * Skip the next n bytes. * @param {number} n the number of bytes to skip. * @throws {Error} if the new index is out of the data. */ skip: /* @__PURE__ */ __name(function(n) { this.setIndex(this.index + n); }, "skip"), /** * Get the byte at the specified index. * @param {number} i the index to use. * @return {number} a byte. */ byteAt: /* @__PURE__ */ __name(function() { }, "byteAt"), /** * Get the next number with a given byte size. * @param {number} size the number of bytes to read. * @return {number} the corresponding number. */ readInt: /* @__PURE__ */ __name(function(size) { var result = 0, i; this.checkOffset(size); for (i = this.index + size - 1; i >= this.index; i--) { result = (result << 8) + this.byteAt(i); } this.index += size; return result; }, "readInt"), /** * Get the next string with a given byte size. * @param {number} size the number of bytes to read. * @return {string} the corresponding string. */ readString: /* @__PURE__ */ __name(function(size) { return utils.transformTo("string", this.readData(size)); }, "readString"), /** * Get raw data without conversion, bytes. * @param {number} size the number of bytes to read. * @return {Object} the raw data, implementation specific. */ readData: /* @__PURE__ */ __name(function() { }, "readData"), /** * Find the last occurrence of a zip signature (4 bytes). * @param {string} sig the signature to find. * @return {number} the index of the last occurrence, -1 if not found. */ lastIndexOfSignature: /* @__PURE__ */ __name(function() { }, "lastIndexOfSignature"), /** * Read the signature (4 bytes) at the current position and compare it with sig. * @param {string} sig the expected signature * @return {boolean} true if the signature matches, false otherwise. */ readAndCheckSignature: /* @__PURE__ */ __name(function() { }, "readAndCheckSignature"), /** * Get the next date. * @return {Date} the date. */ readDate: /* @__PURE__ */ __name(function() { var dostime = this.readInt(4); return new Date(Date.UTC( (dostime >> 25 & 127) + 1980, // year (dostime >> 21 & 15) - 1, // month dostime >> 16 & 31, // day dostime >> 11 & 31, // hour dostime >> 5 & 63, // minute (dostime & 31) << 1 )); }, "readDate") }; module2.exports = DataReader; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/ArrayReader.js var require_ArrayReader = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/ArrayReader.js"(exports2, module2) { "use strict"; var DataReader = require_DataReader(); var utils = require_utils20(); function ArrayReader(data) { DataReader.call(this, data); for (var i = 0; i < this.data.length; i++) { data[i] = data[i] & 255; } } __name(ArrayReader, "ArrayReader"); utils.inherits(ArrayReader, DataReader); ArrayReader.prototype.byteAt = function(i) { return this.data[this.zero + i]; }; ArrayReader.prototype.lastIndexOfSignature = function(sig) { var sig0 = sig.charCodeAt(0), sig1 = sig.charCodeAt(1), sig2 = sig.charCodeAt(2), sig3 = sig.charCodeAt(3); for (var i = this.length - 4; i >= 0; --i) { if (this.data[i] === sig0 && this.data[i + 1] === sig1 && this.data[i + 2] === sig2 && this.data[i + 3] === sig3) { return i - this.zero; } } return -1; }; ArrayReader.prototype.readAndCheckSignature = function(sig) { var sig0 = sig.charCodeAt(0), sig1 = sig.charCodeAt(1), sig2 = sig.charCodeAt(2), sig3 = sig.charCodeAt(3), data = this.readData(4); return sig0 === data[0] && sig1 === data[1] && sig2 === data[2] && sig3 === data[3]; }; ArrayReader.prototype.readData = function(size) { this.checkOffset(size); if (size === 0) { return []; } var result = this.data.slice(this.zero + this.index, this.zero + this.index + size); this.index += size; return result; }; module2.exports = ArrayReader; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/StringReader.js var require_StringReader = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/StringReader.js"(exports2, module2) { "use strict"; var DataReader = require_DataReader(); var utils = require_utils20(); function StringReader(data) { DataReader.call(this, data); } __name(StringReader, "StringReader"); utils.inherits(StringReader, DataReader); StringReader.prototype.byteAt = function(i) { return this.data.charCodeAt(this.zero + i); }; StringReader.prototype.lastIndexOfSignature = function(sig) { return this.data.lastIndexOf(sig) - this.zero; }; StringReader.prototype.readAndCheckSignature = function(sig) { var data = this.readData(4); return sig === data; }; StringReader.prototype.readData = function(size) { this.checkOffset(size); var result = this.data.slice(this.zero + this.index, this.zero + this.index + size); this.index += size; return result; }; module2.exports = StringReader; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/Uint8ArrayReader.js var require_Uint8ArrayReader = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/Uint8ArrayReader.js"(exports2, module2) { "use strict"; var ArrayReader = require_ArrayReader(); var utils = require_utils20(); function Uint8ArrayReader(data) { ArrayReader.call(this, data); } __name(Uint8ArrayReader, "Uint8ArrayReader"); utils.inherits(Uint8ArrayReader, ArrayReader); Uint8ArrayReader.prototype.readData = function(size) { this.checkOffset(size); if (size === 0) { return new Uint8Array(0); } var result = this.data.subarray(this.zero + this.index, this.zero + this.index + size); this.index += size; return result; }; module2.exports = Uint8ArrayReader; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/NodeBufferReader.js var require_NodeBufferReader = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/NodeBufferReader.js"(exports2, module2) { "use strict"; var Uint8ArrayReader = require_Uint8ArrayReader(); var utils = require_utils20(); function NodeBufferReader(data) { Uint8ArrayReader.call(this, data); } __name(NodeBufferReader, "NodeBufferReader"); utils.inherits(NodeBufferReader, Uint8ArrayReader); NodeBufferReader.prototype.readData = function(size) { this.checkOffset(size); var result = this.data.slice(this.zero + this.index, this.zero + this.index + size); this.index += size; return result; }; module2.exports = NodeBufferReader; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/readerFor.js var require_readerFor = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/reader/readerFor.js"(exports2, module2) { "use strict"; var utils = require_utils20(); var support = require_support(); var ArrayReader = require_ArrayReader(); var StringReader = require_StringReader(); var NodeBufferReader = require_NodeBufferReader(); var Uint8ArrayReader = require_Uint8ArrayReader(); module2.exports = function(data) { var type = utils.getTypeOf(data); utils.checkSupport(type); if (type === "string" && !support.uint8array) { return new StringReader(data); } if (type === "nodebuffer") { return new NodeBufferReader(data); } if (support.uint8array) { return new Uint8ArrayReader(utils.transformTo("uint8array", data)); } return new ArrayReader(utils.transformTo("array", data)); }; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/zipEntry.js var require_zipEntry = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/zipEntry.js"(exports2, module2) { "use strict"; var readerFor = require_readerFor(); var utils = require_utils20(); var CompressedObject = require_compressedObject(); var crc32fn = require_crc32(); var utf8 = require_utf8(); var compressions = require_compressions(); var support = require_support(); var MADE_BY_DOS = 0; var MADE_BY_UNIX = 3; var findCompression = /* @__PURE__ */ __name(function(compressionMethod) { for (var method in compressions) { if (!Object.prototype.hasOwnProperty.call(compressions, method)) { continue; } if (compressions[method].magic === compressionMethod) { return compressions[method]; } } return null; }, "findCompression"); function ZipEntry(options, loadOptions) { this.options = options; this.loadOptions = loadOptions; } __name(ZipEntry, "ZipEntry"); ZipEntry.prototype = { /** * say if the file is encrypted. * @return {boolean} true if the file is encrypted, false otherwise. */ isEncrypted: /* @__PURE__ */ __name(function() { return (this.bitFlag & 1) === 1; }, "isEncrypted"), /** * say if the file has utf-8 filename/comment. * @return {boolean} true if the filename/comment is in utf-8, false otherwise. */ useUTF8: /* @__PURE__ */ __name(function() { return (this.bitFlag & 2048) === 2048; }, "useUTF8"), /** * Read the local part of a zip file and add the info in this object. * @param {DataReader} reader the reader to use. */ readLocalPart: /* @__PURE__ */ __name(function(reader) { var compression, localExtraFieldsLength; reader.skip(22); this.fileNameLength = reader.readInt(2); localExtraFieldsLength = reader.readInt(2); this.fileName = reader.readData(this.fileNameLength); reader.skip(localExtraFieldsLength); if (this.compressedSize === -1 || this.uncompressedSize === -1) { throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)"); } compression = findCompression(this.compressionMethod); if (compression === null) { throw new Error("Corrupted zip : compression " + utils.pretty(this.compressionMethod) + " unknown (inner file : " + utils.transformTo("string", this.fileName) + ")"); } this.decompressed = new CompressedObject(this.compressedSize, this.uncompressedSize, this.crc32, compression, reader.readData(this.compressedSize)); }, "readLocalPart"), /** * Read the central part of a zip file and add the info in this object. * @param {DataReader} reader the reader to use. */ readCentralPart: /* @__PURE__ */ __name(function(reader) { this.versionMadeBy = reader.readInt(2); reader.skip(2); this.bitFlag = reader.readInt(2); this.compressionMethod = reader.readString(2); this.date = reader.readDate(); this.crc32 = reader.readInt(4); this.compressedSize = reader.readInt(4); this.uncompressedSize = reader.readInt(4); var fileNameLength = reader.readInt(2); this.extraFieldsLength = reader.readInt(2); this.fileCommentLength = reader.readInt(2); this.diskNumberStart = reader.readInt(2); this.internalFileAttributes = reader.readInt(2); this.externalFileAttributes = reader.readInt(4); this.localHeaderOffset = reader.readInt(4); if (this.isEncrypted()) { throw new Error("Encrypted zip are not supported"); } reader.skip(fileNameLength); this.readExtraFields(reader); this.parseZIP64ExtraField(reader); this.fileComment = reader.readData(this.fileCommentLength); }, "readCentralPart"), /** * Parse the external file attributes and get the unix/dos permissions. */ processAttributes: /* @__PURE__ */ __name(function() { this.unixPermissions = null; this.dosPermissions = null; var madeBy = this.versionMadeBy >> 8; this.dir = this.externalFileAttributes & 16 ? true : false; if (madeBy === MADE_BY_DOS) { this.dosPermissions = this.externalFileAttributes & 63; } if (madeBy === MADE_BY_UNIX) { this.unixPermissions = this.externalFileAttributes >> 16 & 65535; } if (!this.dir && this.fileNameStr.slice(-1) === "/") { this.dir = true; } }, "processAttributes"), /** * Parse the ZIP64 extra field and merge the info in the current ZipEntry. * @param {DataReader} reader the reader to use. */ parseZIP64ExtraField: /* @__PURE__ */ __name(function() { if (!this.extraFields[1]) { return; } var extraReader = readerFor(this.extraFields[1].value); if (this.uncompressedSize === utils.MAX_VALUE_32BITS) { this.uncompressedSize = extraReader.readInt(8); } if (this.compressedSize === utils.MAX_VALUE_32BITS) { this.compressedSize = extraReader.readInt(8); } if (this.localHeaderOffset === utils.MAX_VALUE_32BITS) { this.localHeaderOffset = extraReader.readInt(8); } if (this.diskNumberStart === utils.MAX_VALUE_32BITS) { this.diskNumberStart = extraReader.readInt(4); } }, "parseZIP64ExtraField"), /** * Read the central part of a zip file and add the info in this object. * @param {DataReader} reader the reader to use. */ readExtraFields: /* @__PURE__ */ __name(function(reader) { var end = reader.index + this.extraFieldsLength, extraFieldId, extraFieldLength, extraFieldValue; if (!this.extraFields) { this.extraFields = {}; } while (reader.index + 4 < end) { extraFieldId = reader.readInt(2); extraFieldLength = reader.readInt(2); extraFieldValue = reader.readData(extraFieldLength); this.extraFields[extraFieldId] = { id: extraFieldId, length: extraFieldLength, value: extraFieldValue }; } reader.setIndex(end); }, "readExtraFields"), /** * Apply an UTF8 transformation if needed. */ handleUTF8: /* @__PURE__ */ __name(function() { var decodeParamType = support.uint8array ? "uint8array" : "array"; if (this.useUTF8()) { this.fileNameStr = utf8.utf8decode(this.fileName); this.fileCommentStr = utf8.utf8decode(this.fileComment); } else { var upath = this.findExtraFieldUnicodePath(); if (upath !== null) { this.fileNameStr = upath; } else { var fileNameByteArray = utils.transformTo(decodeParamType, this.fileName); this.fileNameStr = this.loadOptions.decodeFileName(fileNameByteArray); } var ucomment = this.findExtraFieldUnicodeComment(); if (ucomment !== null) { this.fileCommentStr = ucomment; } else { var commentByteArray = utils.transformTo(decodeParamType, this.fileComment); this.fileCommentStr = this.loadOptions.decodeFileName(commentByteArray); } } }, "handleUTF8"), /** * Find the unicode path declared in the extra field, if any. * @return {String} the unicode path, null otherwise. */ findExtraFieldUnicodePath: /* @__PURE__ */ __name(function() { var upathField = this.extraFields[28789]; if (upathField) { var extraReader = readerFor(upathField.value); if (extraReader.readInt(1) !== 1) { return null; } if (crc32fn(this.fileName) !== extraReader.readInt(4)) { return null; } return utf8.utf8decode(extraReader.readData(upathField.length - 5)); } return null; }, "findExtraFieldUnicodePath"), /** * Find the unicode comment declared in the extra field, if any. * @return {String} the unicode comment, null otherwise. */ findExtraFieldUnicodeComment: /* @__PURE__ */ __name(function() { var ucommentField = this.extraFields[25461]; if (ucommentField) { var extraReader = readerFor(ucommentField.value); if (extraReader.readInt(1) !== 1) { return null; } if (crc32fn(this.fileComment) !== extraReader.readInt(4)) { return null; } return utf8.utf8decode(extraReader.readData(ucommentField.length - 5)); } return null; }, "findExtraFieldUnicodeComment") }; module2.exports = ZipEntry; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/zipEntries.js var require_zipEntries = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/zipEntries.js"(exports2, module2) { "use strict"; var readerFor = require_readerFor(); var utils = require_utils20(); var sig = require_signature(); var ZipEntry = require_zipEntry(); var support = require_support(); function ZipEntries(loadOptions) { this.files = []; this.loadOptions = loadOptions; } __name(ZipEntries, "ZipEntries"); ZipEntries.prototype = { /** * Check that the reader is on the specified signature. * @param {string} expectedSignature the expected signature. * @throws {Error} if it is an other signature. */ checkSignature: /* @__PURE__ */ __name(function(expectedSignature) { if (!this.reader.readAndCheckSignature(expectedSignature)) { this.reader.index -= 4; var signature = this.reader.readString(4); throw new Error("Corrupted zip or bug: unexpected signature (" + utils.pretty(signature) + ", expected " + utils.pretty(expectedSignature) + ")"); } }, "checkSignature"), /** * Check if the given signature is at the given index. * @param {number} askedIndex the index to check. * @param {string} expectedSignature the signature to expect. * @return {boolean} true if the signature is here, false otherwise. */ isSignature: /* @__PURE__ */ __name(function(askedIndex, expectedSignature) { var currentIndex = this.reader.index; this.reader.setIndex(askedIndex); var signature = this.reader.readString(4); var result = signature === expectedSignature; this.reader.setIndex(currentIndex); return result; }, "isSignature"), /** * Read the end of the central directory. */ readBlockEndOfCentral: /* @__PURE__ */ __name(function() { this.diskNumber = this.reader.readInt(2); this.diskWithCentralDirStart = this.reader.readInt(2); this.centralDirRecordsOnThisDisk = this.reader.readInt(2); this.centralDirRecords = this.reader.readInt(2); this.centralDirSize = this.reader.readInt(4); this.centralDirOffset = this.reader.readInt(4); this.zipCommentLength = this.reader.readInt(2); var zipComment = this.reader.readData(this.zipCommentLength); var decodeParamType = support.uint8array ? "uint8array" : "array"; var decodeContent = utils.transformTo(decodeParamType, zipComment); this.zipComment = this.loadOptions.decodeFileName(decodeContent); }, "readBlockEndOfCentral"), /** * Read the end of the Zip 64 central directory. * Not merged with the method readEndOfCentral : * The end of central can coexist with its Zip64 brother, * I don't want to read the wrong number of bytes ! */ readBlockZip64EndOfCentral: /* @__PURE__ */ __name(function() { this.zip64EndOfCentralSize = this.reader.readInt(8); this.reader.skip(4); this.diskNumber = this.reader.readInt(4); this.diskWithCentralDirStart = this.reader.readInt(4); this.centralDirRecordsOnThisDisk = this.reader.readInt(8); this.centralDirRecords = this.reader.readInt(8); this.centralDirSize = this.reader.readInt(8); this.centralDirOffset = this.reader.readInt(8); this.zip64ExtensibleData = {}; var extraDataSize = this.zip64EndOfCentralSize - 44, index = 0, extraFieldId, extraFieldLength, extraFieldValue; while (index < extraDataSize) { extraFieldId = this.reader.readInt(2); extraFieldLength = this.reader.readInt(4); extraFieldValue = this.reader.readData(extraFieldLength); this.zip64ExtensibleData[extraFieldId] = { id: extraFieldId, length: extraFieldLength, value: extraFieldValue }; } }, "readBlockZip64EndOfCentral"), /** * Read the end of the Zip 64 central directory locator. */ readBlockZip64EndOfCentralLocator: /* @__PURE__ */ __name(function() { this.diskWithZip64CentralDirStart = this.reader.readInt(4); this.relativeOffsetEndOfZip64CentralDir = this.reader.readInt(8); this.disksCount = this.reader.readInt(4); if (this.disksCount > 1) { throw new Error("Multi-volumes zip are not supported"); } }, "readBlockZip64EndOfCentralLocator"), /** * Read the local files, based on the offset read in the central part. */ readLocalFiles: /* @__PURE__ */ __name(function() { var i, file2; for (i = 0; i < this.files.length; i++) { file2 = this.files[i]; this.reader.setIndex(file2.localHeaderOffset); this.checkSignature(sig.LOCAL_FILE_HEADER); file2.readLocalPart(this.reader); file2.handleUTF8(); file2.processAttributes(); } }, "readLocalFiles"), /** * Read the central directory. */ readCentralDir: /* @__PURE__ */ __name(function() { var file2; this.reader.setIndex(this.centralDirOffset); while (this.reader.readAndCheckSignature(sig.CENTRAL_FILE_HEADER)) { file2 = new ZipEntry({ zip64: this.zip64 }, this.loadOptions); file2.readCentralPart(this.reader); this.files.push(file2); } if (this.centralDirRecords !== this.files.length) { if (this.centralDirRecords !== 0 && this.files.length === 0) { throw new Error("Corrupted zip or bug: expected " + this.centralDirRecords + " records in central dir, got " + this.files.length); } else { } } }, "readCentralDir"), /** * Read the end of central directory. */ readEndOfCentral: /* @__PURE__ */ __name(function() { var offset = this.reader.lastIndexOfSignature(sig.CENTRAL_DIRECTORY_END); if (offset < 0) { var isGarbage = !this.isSignature(0, sig.LOCAL_FILE_HEADER); if (isGarbage) { throw new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html"); } else { throw new Error("Corrupted zip: can't find end of central directory"); } } this.reader.setIndex(offset); var endOfCentralDirOffset = offset; this.checkSignature(sig.CENTRAL_DIRECTORY_END); this.readBlockEndOfCentral(); if (this.diskNumber === utils.MAX_VALUE_16BITS || this.diskWithCentralDirStart === utils.MAX_VALUE_16BITS || this.centralDirRecordsOnThisDisk === utils.MAX_VALUE_16BITS || this.centralDirRecords === utils.MAX_VALUE_16BITS || this.centralDirSize === utils.MAX_VALUE_32BITS || this.centralDirOffset === utils.MAX_VALUE_32BITS) { this.zip64 = true; offset = this.reader.lastIndexOfSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR); if (offset < 0) { throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator"); } this.reader.setIndex(offset); this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR); this.readBlockZip64EndOfCentralLocator(); if (!this.isSignature(this.relativeOffsetEndOfZip64CentralDir, sig.ZIP64_CENTRAL_DIRECTORY_END)) { this.relativeOffsetEndOfZip64CentralDir = this.reader.lastIndexOfSignature(sig.ZIP64_CENTRAL_DIRECTORY_END); if (this.relativeOffsetEndOfZip64CentralDir < 0) { throw new Error("Corrupted zip: can't find the ZIP64 end of central directory"); } } this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir); this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_END); this.readBlockZip64EndOfCentral(); } var expectedEndOfCentralDirOffset = this.centralDirOffset + this.centralDirSize; if (this.zip64) { expectedEndOfCentralDirOffset += 20; expectedEndOfCentralDirOffset += 12 + this.zip64EndOfCentralSize; } var extraBytes = endOfCentralDirOffset - expectedEndOfCentralDirOffset; if (extraBytes > 0) { if (this.isSignature(endOfCentralDirOffset, sig.CENTRAL_FILE_HEADER)) { } else { this.reader.zero = extraBytes; } } else if (extraBytes < 0) { throw new Error("Corrupted zip: missing " + Math.abs(extraBytes) + " bytes."); } }, "readEndOfCentral"), prepareReader: /* @__PURE__ */ __name(function(data) { this.reader = readerFor(data); }, "prepareReader"), /** * Read a zip file and create ZipEntries. * @param {String|ArrayBuffer|Uint8Array|Buffer} data the binary string representing a zip file. */ load: /* @__PURE__ */ __name(function(data) { this.prepareReader(data); this.readEndOfCentral(); this.readCentralDir(); this.readLocalFiles(); }, "load") }; module2.exports = ZipEntries; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/load.js var require_load = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/load.js"(exports2, module2) { "use strict"; var utils = require_utils20(); var external = require_external(); var utf8 = require_utf8(); var ZipEntries = require_zipEntries(); var Crc32Probe = require_Crc32Probe(); var nodejsUtils = require_nodejsUtils(); function checkEntryCRC32(zipEntry) { return new external.Promise(function(resolve, reject) { var worker = zipEntry.decompressed.getContentWorker().pipe(new Crc32Probe()); worker.on("error", function(e) { reject(e); }).on("end", function() { if (worker.streamInfo.crc32 !== zipEntry.decompressed.crc32) { reject(new Error("Corrupted zip : CRC32 mismatch")); } else { resolve(); } }).resume(); }); } __name(checkEntryCRC32, "checkEntryCRC32"); module2.exports = function(data, options) { var zip = this; options = utils.extend(options || {}, { base64: false, checkCRC32: false, optimizedBinaryString: false, createFolders: false, decodeFileName: utf8.utf8decode }); if (nodejsUtils.isNode && nodejsUtils.isStream(data)) { return external.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")); } return utils.prepareContent("the loaded zip file", data, true, options.optimizedBinaryString, options.base64).then(function(data2) { var zipEntries = new ZipEntries(options); zipEntries.load(data2); return zipEntries; }).then(/* @__PURE__ */ __name(function checkCRC32(zipEntries) { var promises = [external.Promise.resolve(zipEntries)]; var files = zipEntries.files; if (options.checkCRC32) { for (var i = 0; i < files.length; i++) { promises.push(checkEntryCRC32(files[i])); } } return external.Promise.all(promises); }, "checkCRC32")).then(/* @__PURE__ */ __name(function addFiles(results) { var zipEntries = results.shift(); var files = zipEntries.files; for (var i = 0; i < files.length; i++) { var input = files[i]; var unsafeName = input.fileNameStr; var safeName = utils.resolve(input.fileNameStr); zip.file(safeName, input.decompressed, { binary: true, optimizedBinaryString: true, date: input.date, dir: input.dir, comment: input.fileCommentStr.length ? input.fileCommentStr : null, unixPermissions: input.unixPermissions, dosPermissions: input.dosPermissions, createFolders: options.createFolders }); if (!input.dir) { zip.file(safeName).unsafeOriginalName = unsafeName; } } if (zipEntries.zipComment.length) { zip.comment = zipEntries.zipComment; } return zip; }, "addFiles")); }; } }); // ../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/index.js var require_lib12 = __commonJS({ "../../node_modules/.pnpm/jszip@3.10.1/node_modules/jszip/lib/index.js"(exports2, module2) { "use strict"; function JSZip() { if (!(this instanceof JSZip)) { return new JSZip(); } if (arguments.length) { throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide."); } this.files = /* @__PURE__ */ Object.create(null); this.comment = null; this.root = ""; this.clone = function() { var newObj = new JSZip(); for (var i in this) { if (typeof this[i] !== "function") { newObj[i] = this[i]; } } return newObj; }; } __name(JSZip, "JSZip"); JSZip.prototype = require_object(); JSZip.prototype.loadAsync = require_load(); JSZip.support = require_support(); JSZip.defaults = require_defaults2(); JSZip.version = "3.10.1"; JSZip.loadAsync = function(content, options) { return new JSZip().loadAsync(content, options); }; JSZip.external = require_external(); module2.exports = JSZip; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/utils.js var require_utils21 = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/utils.js"(exports2, module2) { var fs = require("fs"); var inherits2 = /* @__PURE__ */ __name(function(cls, superCtor, statics, prototype) { cls.super_ = superCtor; if (!prototype) { prototype = statics; statics = null; } if (statics) { Object.keys(statics).forEach((i) => { Object.defineProperty(cls, i, Object.getOwnPropertyDescriptor(statics, i)); }); } const properties = { constructor: { value: cls, enumerable: false, writable: false, configurable: true } }; if (prototype) { Object.keys(prototype).forEach((i) => { properties[i] = Object.getOwnPropertyDescriptor(prototype, i); }); } cls.prototype = Object.create(superCtor.prototype, properties); }, "inherits"); var xmlDecodeRegex = /[<>&'"\x7F\x00-\x08\x0B-\x0C\x0E-\x1F]/; var utils = { nop() { }, promiseImmediate(value) { return new Promise((resolve) => { if (global.setImmediate) { setImmediate(() => { resolve(value); }); } else { setTimeout(() => { resolve(value); }, 1); } }); }, inherits: inherits2, dateToExcel(d, date1904) { return 25569 + d.getTime() / (24 * 3600 * 1e3) - (date1904 ? 1462 : 0); }, excelToDate(v, date1904) { const millisecondSinceEpoch = Math.round((v - 25569 + (date1904 ? 1462 : 0)) * 24 * 3600 * 1e3); return new Date(millisecondSinceEpoch); }, parsePath(filepath) { const last = filepath.lastIndexOf("/"); return { path: filepath.substring(0, last), name: filepath.substring(last + 1) }; }, getRelsPath(filepath) { const path = utils.parsePath(filepath); return `${path.path}/_rels/${path.name}.rels`; }, xmlEncode(text) { const regexResult = xmlDecodeRegex.exec(text); if (!regexResult) return text; let result = ""; let escape2 = ""; let lastIndex = 0; let i = regexResult.index; for (; i < text.length; i++) { const charCode = text.charCodeAt(i); switch (charCode) { case 34: escape2 = """; break; case 38: escape2 = "&"; break; case 39: escape2 = "'"; break; case 60: escape2 = "<"; break; case 62: escape2 = ">"; break; case 127: escape2 = ""; break; default: { if (charCode <= 31 && (charCode <= 8 || charCode >= 11 && charCode !== 13)) { escape2 = ""; break; } continue; } } if (lastIndex !== i) result += text.substring(lastIndex, i); lastIndex = i + 1; if (escape2) result += escape2; } if (lastIndex !== i) return result + text.substring(lastIndex, i); return result; }, xmlDecode(text) { return text.replace(/&([a-z]*);/g, (c) => { switch (c) { case "<": return "<"; case ">": return ">"; case "&": return "&"; case "'": return "'"; case """: return '"'; default: return c; } }); }, validInt(value) { const i = parseInt(value, 10); return !Number.isNaN(i) ? i : 0; }, isDateFmt(fmt) { if (!fmt) { return false; } fmt = fmt.replace(/\[[^\]]*]/g, ""); fmt = fmt.replace(/"[^"]*"/g, ""); const result = fmt.match(/[ymdhMsb]+/) !== null; return result; }, fs: { exists(path) { return new Promise((resolve) => { fs.access(path, fs.constants.F_OK, (err) => { resolve(!err); }); }); } }, toIsoDateString(dt) { return dt.toIsoString().subsstr(0, 10); }, parseBoolean(value) { return value === true || value === "true" || value === 1 || value === "1"; } }; module2.exports = utils; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/string-buf.js var require_string_buf = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/string-buf.js"(exports2, module2) { var StringBuf = class { static { __name(this, "StringBuf"); } constructor(options) { this._buf = Buffer.alloc(options && options.size || 16384); this._encoding = options && options.encoding || "utf8"; this._inPos = 0; this._buffer = void 0; } get length() { return this._inPos; } get capacity() { return this._buf.length; } get buffer() { return this._buf; } toBuffer() { if (!this._buffer) { this._buffer = Buffer.alloc(this.length); this._buf.copy(this._buffer, 0, 0, this.length); } return this._buffer; } reset(position) { position = position || 0; this._buffer = void 0; this._inPos = position; } _grow(min) { let size = this._buf.length * 2; while (size < min) { size *= 2; } const buf = Buffer.alloc(size); this._buf.copy(buf, 0); this._buf = buf; } addText(text) { this._buffer = void 0; let inPos = this._inPos + this._buf.write(text, this._inPos, this._encoding); while (inPos >= this._buf.length - 4) { this._grow(this._inPos + text.length); inPos = this._inPos + this._buf.write(text, this._inPos, this._encoding); } this._inPos = inPos; } addStringBuf(inBuf) { if (inBuf.length) { this._buffer = void 0; if (this.length + inBuf.length > this.capacity) { this._grow(this.length + inBuf.length); } inBuf._buf.copy(this._buf, this._inPos, 0, inBuf.length); this._inPos += inBuf.length; } } }; module2.exports = StringBuf; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/stream-buf.js var require_stream_buf = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/stream-buf.js"(exports2, module2) { var Stream = require_readable(); var utils = require_utils21(); var StringBuf = require_string_buf(); var StringChunk = class { static { __name(this, "StringChunk"); } constructor(data, encoding) { this._data = data; this._encoding = encoding; } get length() { return this.toBuffer().length; } // copy to target buffer copy(target, targetOffset, offset, length) { return this.toBuffer().copy(target, targetOffset, offset, length); } toBuffer() { if (!this._buffer) { this._buffer = Buffer.from(this._data, this._encoding); } return this._buffer; } }; var StringBufChunk = class { static { __name(this, "StringBufChunk"); } constructor(data) { this._data = data; } get length() { return this._data.length; } // copy to target buffer copy(target, targetOffset, offset, length) { return this._data._buf.copy(target, targetOffset, offset, length); } toBuffer() { return this._data.toBuffer(); } }; var BufferChunk = class { static { __name(this, "BufferChunk"); } constructor(data) { this._data = data; } get length() { return this._data.length; } // copy to target buffer copy(target, targetOffset, offset, length) { this._data.copy(target, targetOffset, offset, length); } toBuffer() { return this._data; } }; var ReadWriteBuf = class { static { __name(this, "ReadWriteBuf"); } constructor(size) { this.size = size; this.buffer = Buffer.alloc(size); this.iRead = 0; this.iWrite = 0; } toBuffer() { if (this.iRead === 0 && this.iWrite === this.size) { return this.buffer; } const buf = Buffer.alloc(this.iWrite - this.iRead); this.buffer.copy(buf, 0, this.iRead, this.iWrite); return buf; } get length() { return this.iWrite - this.iRead; } get eod() { return this.iRead === this.iWrite; } get full() { return this.iWrite === this.size; } read(size) { let buf; if (size === 0) { return null; } if (size === void 0 || size >= this.length) { buf = this.toBuffer(); this.iRead = this.iWrite; return buf; } buf = Buffer.alloc(size); this.buffer.copy(buf, 0, this.iRead, size); this.iRead += size; return buf; } write(chunk, offset, length) { const size = Math.min(length, this.size - this.iWrite); chunk.copy(this.buffer, this.iWrite, offset, offset + size); this.iWrite += size; return size; } }; var StreamBuf = /* @__PURE__ */ __name(function(options) { options = options || {}; this.bufSize = options.bufSize || 1024 * 1024; this.buffers = []; this.batch = options.batch || false; this.corked = false; this.inPos = 0; this.outPos = 0; this.pipes = []; this.paused = false; this.encoding = null; }, "StreamBuf"); utils.inherits(StreamBuf, Stream.Duplex, { toBuffer() { switch (this.buffers.length) { case 0: return null; case 1: return this.buffers[0].toBuffer(); default: return Buffer.concat(this.buffers.map((rwBuf) => rwBuf.toBuffer())); } }, // writable // event drain - if write returns false (which it won't), indicates when safe to write again. // finish - end() has been called // pipe(src) - pipe() has been called on readable // unpipe(src) - unpipe() has been called on readable // error - duh _getWritableBuffer() { if (this.buffers.length) { const last = this.buffers[this.buffers.length - 1]; if (!last.full) { return last; } } const buf = new ReadWriteBuf(this.bufSize); this.buffers.push(buf); return buf; }, async _pipe(chunk) { const write = /* @__PURE__ */ __name(function(pipe) { return new Promise((resolve) => { pipe.write(chunk.toBuffer(), () => { resolve(); }); }); }, "write"); await Promise.all(this.pipes.map(write)); }, _writeToBuffers(chunk) { let inPos = 0; const inLen = chunk.length; while (inPos < inLen) { const buffer = this._getWritableBuffer(); inPos += buffer.write(chunk, inPos, inLen - inPos); } }, async write(data, encoding, callback) { if (encoding instanceof Function) { callback = encoding; encoding = "utf8"; } callback = callback || utils.nop; let chunk; if (data instanceof StringBuf) { chunk = new StringBufChunk(data); } else if (data instanceof Buffer) { chunk = new BufferChunk(data); } else if (typeof data === "string" || data instanceof String || data instanceof ArrayBuffer) { chunk = new StringChunk(data, encoding); } else { throw new Error("Chunk must be one of type String, Buffer or StringBuf."); } if (this.pipes.length) { if (this.batch) { this._writeToBuffers(chunk); while (!this.corked && this.buffers.length > 1) { this._pipe(this.buffers.shift()); } } else if (!this.corked) { await this._pipe(chunk); callback(); } else { this._writeToBuffers(chunk); process.nextTick(callback); } } else { if (!this.paused) { this.emit("data", chunk.toBuffer()); } this._writeToBuffers(chunk); this.emit("readable"); } return true; }, cork() { this.corked = true; }, _flush() { if (this.pipes.length) { while (this.buffers.length) { this._pipe(this.buffers.shift()); } } }, uncork() { this.corked = false; this._flush(); }, end(chunk, encoding, callback) { const writeComplete = /* @__PURE__ */ __name((error) => { if (error) { callback(error); } else { this._flush(); this.pipes.forEach((pipe) => { pipe.end(); }); this.emit("finish"); } }, "writeComplete"); if (chunk) { this.write(chunk, encoding, writeComplete); } else { writeComplete(); } }, // readable // event readable - some data is now available // event data - switch to flowing mode - feeds chunks to handler // event end - no more data // event close - optional, indicates upstream close // event error - duh read(size) { let buffers; if (size) { buffers = []; while (size && this.buffers.length && !this.buffers[0].eod) { const first = this.buffers[0]; const buffer = first.read(size); size -= buffer.length; buffers.push(buffer); if (first.eod && first.full) { this.buffers.shift(); } } return Buffer.concat(buffers); } buffers = this.buffers.map((buf) => buf.toBuffer()).filter(Boolean); this.buffers = []; return Buffer.concat(buffers); }, setEncoding(encoding) { this.encoding = encoding; }, pause() { this.paused = true; }, resume() { this.paused = false; }, isPaused() { return !!this.paused; }, pipe(destination) { this.pipes.push(destination); if (!this.paused && this.buffers.length) { this.end(); } }, unpipe(destination) { this.pipes = this.pipes.filter((pipe) => pipe !== destination); }, unshift() { throw new Error("Not Implemented"); }, wrap() { throw new Error("Not Implemented"); } }); module2.exports = StreamBuf; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/browser-buffer-encode.js var require_browser_buffer_encode = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/browser-buffer-encode.js"(exports2) { var textEncoder = typeof TextEncoder === "undefined" ? null : new TextEncoder("utf-8"); var { Buffer: Buffer2 } = require("buffer"); function stringToBuffer(str) { if (typeof str !== "string") { return str; } if (textEncoder) { return Buffer2.from(textEncoder.encode(str).buffer); } return Buffer2.from(str); } __name(stringToBuffer, "stringToBuffer"); exports2.stringToBuffer = stringToBuffer; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/zip-stream.js var require_zip_stream = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/zip-stream.js"(exports2, module2) { var events = require("events"); var JSZip = require_lib12(); var StreamBuf = require_stream_buf(); var { stringToBuffer } = require_browser_buffer_encode(); var ZipWriter = class extends events.EventEmitter { static { __name(this, "ZipWriter"); } constructor(options) { super(); this.options = Object.assign( { type: "nodebuffer", compression: "DEFLATE" }, options ); this.zip = new JSZip(); this.stream = new StreamBuf(); } append(data, options) { if (options.hasOwnProperty("base64") && options.base64) { this.zip.file(options.name, data, { base64: true }); } else { if (process.browser && typeof data === "string") { data = stringToBuffer(data); } this.zip.file(options.name, data); } } async finalize() { const content = await this.zip.generateAsync(this.options); this.stream.end(content); this.emit("finish"); } // ========================================================================== // Stream.Readable interface read(size) { return this.stream.read(size); } setEncoding(encoding) { return this.stream.setEncoding(encoding); } pause() { return this.stream.pause(); } resume() { return this.stream.resume(); } isPaused() { return this.stream.isPaused(); } pipe(destination, options) { return this.stream.pipe(destination, options); } unpipe(destination) { return this.stream.unpipe(destination); } unshift(chunk) { return this.stream.unshift(chunk); } wrap(stream) { return this.stream.wrap(stream); } }; module2.exports = { ZipWriter }; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/xml-stream.js var require_xml_stream = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/xml-stream.js"(exports2, module2) { var _2 = require_under_dash(); var utils = require_utils21(); var OPEN_ANGLE = "<"; var CLOSE_ANGLE = ">"; var OPEN_ANGLE_SLASH = ""; function pushAttribute(xml, name, value) { xml.push(` ${name}="${utils.xmlEncode(value.toString())}"`); } __name(pushAttribute, "pushAttribute"); function pushAttributes(xml, attributes) { if (attributes) { const tmp = []; _2.each(attributes, (value, name) => { if (value !== void 0) { pushAttribute(tmp, name, value); } }); xml.push(tmp.join("")); } } __name(pushAttributes, "pushAttributes"); var XmlStream = class { static { __name(this, "XmlStream"); } constructor() { this._xml = []; this._stack = []; this._rollbacks = []; } get tos() { return this._stack.length ? this._stack[this._stack.length - 1] : void 0; } get cursor() { return this._xml.length; } openXml(docAttributes) { const xml = this._xml; xml.push("\n"); } openNode(name, attributes) { const parent = this.tos; const xml = this._xml; if (parent && this.open) { xml.push(CLOSE_ANGLE); } this._stack.push(name); xml.push(OPEN_ANGLE); xml.push(name); pushAttributes(xml, attributes); this.leaf = true; this.open = true; } addAttribute(name, value) { if (!this.open) { throw new Error("Cannot write attributes to node if it is not open"); } if (value !== void 0) { pushAttribute(this._xml, name, value); } } addAttributes(attrs) { if (!this.open) { throw new Error("Cannot write attributes to node if it is not open"); } pushAttributes(this._xml, attrs); } writeText(text) { const xml = this._xml; if (this.open) { xml.push(CLOSE_ANGLE); this.open = false; } this.leaf = false; xml.push(utils.xmlEncode(text.toString())); } writeXml(xml) { if (this.open) { this._xml.push(CLOSE_ANGLE); this.open = false; } this.leaf = false; this._xml.push(xml); } closeNode() { const node = this._stack.pop(); const xml = this._xml; if (this.leaf) { xml.push(CLOSE_SLASH_ANGLE); } else { xml.push(OPEN_ANGLE_SLASH); xml.push(node); xml.push(CLOSE_ANGLE); } this.open = false; this.leaf = false; } leafNode(name, attributes, text) { this.openNode(name, attributes); if (text !== void 0) { this.writeText(text); } this.closeNode(); } closeAll() { while (this._stack.length) { this.closeNode(); } } addRollback() { this._rollbacks.push({ xml: this._xml.length, stack: this._stack.length, leaf: this.leaf, open: this.open }); return this.cursor; } commit() { this._rollbacks.pop(); } rollback() { const r = this._rollbacks.pop(); if (this._xml.length > r.xml) { this._xml.splice(r.xml, this._xml.length - r.xml); } if (this._stack.length > r.stack) { this._stack.splice(r.stack, this._stack.length - r.stack); } this.leaf = r.leaf; this.open = r.open; } get xml() { this.closeAll(); return this._xml.join(""); } }; XmlStream.StdDocAttributes = { version: "1.0", encoding: "UTF-8", standalone: "yes" }; module2.exports = XmlStream; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/browser-buffer-decode.js var require_browser_buffer_decode = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/browser-buffer-decode.js"(exports2) { var textDecoder = typeof TextDecoder === "undefined" ? null : new TextDecoder("utf-8"); function bufferToString(chunk) { if (typeof chunk === "string") { return chunk; } if (textDecoder) { return textDecoder.decode(chunk); } return chunk.toString(); } __name(bufferToString, "bufferToString"); exports2.bufferToString = bufferToString; } }); // ../../node_modules/.pnpm/xmlchars@2.2.0/node_modules/xmlchars/xml/1.0/ed5.js var require_ed5 = __commonJS({ "../../node_modules/.pnpm/xmlchars@2.2.0/node_modules/xmlchars/xml/1.0/ed5.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CHAR = " \n\r -\uD7FF\uE000-\uFFFD\u{10000}-\u{10FFFF}"; exports2.S = " \r\n"; exports2.NAME_START_CHAR = ":A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}"; exports2.NAME_CHAR = "-" + exports2.NAME_START_CHAR + ".0-9\xB7\u0300-\u036F\u203F-\u2040"; exports2.CHAR_RE = new RegExp("^[" + exports2.CHAR + "]$", "u"); exports2.S_RE = new RegExp("^[" + exports2.S + "]+$", "u"); exports2.NAME_START_CHAR_RE = new RegExp("^[" + exports2.NAME_START_CHAR + "]$", "u"); exports2.NAME_CHAR_RE = new RegExp("^[" + exports2.NAME_CHAR + "]$", "u"); exports2.NAME_RE = new RegExp("^[" + exports2.NAME_START_CHAR + "][" + exports2.NAME_CHAR + "]*$", "u"); exports2.NMTOKEN_RE = new RegExp("^[" + exports2.NAME_CHAR + "]+$", "u"); var TAB = 9; var NL = 10; var CR = 13; var SPACE = 32; exports2.S_LIST = [SPACE, NL, CR, TAB]; function isChar(c) { return c >= SPACE && c <= 55295 || c === NL || c === CR || c === TAB || c >= 57344 && c <= 65533 || c >= 65536 && c <= 1114111; } __name(isChar, "isChar"); exports2.isChar = isChar; function isS(c) { return c === SPACE || c === NL || c === CR || c === TAB; } __name(isS, "isS"); exports2.isS = isS; function isNameStartChar(c) { return c >= 65 && c <= 90 || c >= 97 && c <= 122 || c === 58 || c === 95 || c === 8204 || c === 8205 || c >= 192 && c <= 214 || c >= 216 && c <= 246 || c >= 248 && c <= 767 || c >= 880 && c <= 893 || c >= 895 && c <= 8191 || c >= 8304 && c <= 8591 || c >= 11264 && c <= 12271 || c >= 12289 && c <= 55295 || c >= 63744 && c <= 64975 || c >= 65008 && c <= 65533 || c >= 65536 && c <= 983039; } __name(isNameStartChar, "isNameStartChar"); exports2.isNameStartChar = isNameStartChar; function isNameChar(c) { return isNameStartChar(c) || c >= 48 && c <= 57 || c === 45 || c === 46 || c === 183 || c >= 768 && c <= 879 || c >= 8255 && c <= 8256; } __name(isNameChar, "isNameChar"); exports2.isNameChar = isNameChar; } }); // ../../node_modules/.pnpm/xmlchars@2.2.0/node_modules/xmlchars/xml/1.1/ed2.js var require_ed2 = __commonJS({ "../../node_modules/.pnpm/xmlchars@2.2.0/node_modules/xmlchars/xml/1.1/ed2.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CHAR = "-\uD7FF\uE000-\uFFFD\u{10000}-\u{10FFFF}"; exports2.RESTRICTED_CHAR = "-\b\v\f-\x7F-\x84\x86-\x9F"; exports2.S = " \r\n"; exports2.NAME_START_CHAR = ":A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}"; exports2.NAME_CHAR = "-" + exports2.NAME_START_CHAR + ".0-9\xB7\u0300-\u036F\u203F-\u2040"; exports2.CHAR_RE = new RegExp("^[" + exports2.CHAR + "]$", "u"); exports2.RESTRICTED_CHAR_RE = new RegExp("^[" + exports2.RESTRICTED_CHAR + "]$", "u"); exports2.S_RE = new RegExp("^[" + exports2.S + "]+$", "u"); exports2.NAME_START_CHAR_RE = new RegExp("^[" + exports2.NAME_START_CHAR + "]$", "u"); exports2.NAME_CHAR_RE = new RegExp("^[" + exports2.NAME_CHAR + "]$", "u"); exports2.NAME_RE = new RegExp("^[" + exports2.NAME_START_CHAR + "][" + exports2.NAME_CHAR + "]*$", "u"); exports2.NMTOKEN_RE = new RegExp("^[" + exports2.NAME_CHAR + "]+$", "u"); var TAB = 9; var NL = 10; var CR = 13; var SPACE = 32; exports2.S_LIST = [SPACE, NL, CR, TAB]; function isChar(c) { return c >= 1 && c <= 55295 || c >= 57344 && c <= 65533 || c >= 65536 && c <= 1114111; } __name(isChar, "isChar"); exports2.isChar = isChar; function isRestrictedChar(c) { return c >= 1 && c <= 8 || c === 11 || c === 12 || c >= 14 && c <= 31 || c >= 127 && c <= 132 || c >= 134 && c <= 159; } __name(isRestrictedChar, "isRestrictedChar"); exports2.isRestrictedChar = isRestrictedChar; function isCharAndNotRestricted(c) { return c === 9 || c === 10 || c === 13 || c > 31 && c < 127 || c === 133 || c > 159 && c <= 55295 || c >= 57344 && c <= 65533 || c >= 65536 && c <= 1114111; } __name(isCharAndNotRestricted, "isCharAndNotRestricted"); exports2.isCharAndNotRestricted = isCharAndNotRestricted; function isS(c) { return c === SPACE || c === NL || c === CR || c === TAB; } __name(isS, "isS"); exports2.isS = isS; function isNameStartChar(c) { return c >= 65 && c <= 90 || c >= 97 && c <= 122 || c === 58 || c === 95 || c === 8204 || c === 8205 || c >= 192 && c <= 214 || c >= 216 && c <= 246 || c >= 248 && c <= 767 || c >= 880 && c <= 893 || c >= 895 && c <= 8191 || c >= 8304 && c <= 8591 || c >= 11264 && c <= 12271 || c >= 12289 && c <= 55295 || c >= 63744 && c <= 64975 || c >= 65008 && c <= 65533 || c >= 65536 && c <= 983039; } __name(isNameStartChar, "isNameStartChar"); exports2.isNameStartChar = isNameStartChar; function isNameChar(c) { return isNameStartChar(c) || c >= 48 && c <= 57 || c === 45 || c === 46 || c === 183 || c >= 768 && c <= 879 || c >= 8255 && c <= 8256; } __name(isNameChar, "isNameChar"); exports2.isNameChar = isNameChar; } }); // ../../node_modules/.pnpm/xmlchars@2.2.0/node_modules/xmlchars/xmlns/1.0/ed3.js var require_ed3 = __commonJS({ "../../node_modules/.pnpm/xmlchars@2.2.0/node_modules/xmlchars/xmlns/1.0/ed3.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NC_NAME_START_CHAR = "A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}"; exports2.NC_NAME_CHAR = "-" + exports2.NC_NAME_START_CHAR + ".0-9\xB7\u0300-\u036F\u203F-\u2040"; exports2.NC_NAME_START_CHAR_RE = new RegExp("^[" + exports2.NC_NAME_START_CHAR + "]$", "u"); exports2.NC_NAME_CHAR_RE = new RegExp("^[" + exports2.NC_NAME_CHAR + "]$", "u"); exports2.NC_NAME_RE = new RegExp("^[" + exports2.NC_NAME_START_CHAR + "][" + exports2.NC_NAME_CHAR + "]*$", "u"); function isNCNameStartChar(c) { return c >= 65 && c <= 90 || c === 95 || c >= 97 && c <= 122 || c >= 192 && c <= 214 || c >= 216 && c <= 246 || c >= 248 && c <= 767 || c >= 880 && c <= 893 || c >= 895 && c <= 8191 || c >= 8204 && c <= 8205 || c >= 8304 && c <= 8591 || c >= 11264 && c <= 12271 || c >= 12289 && c <= 55295 || c >= 63744 && c <= 64975 || c >= 65008 && c <= 65533 || c >= 65536 && c <= 983039; } __name(isNCNameStartChar, "isNCNameStartChar"); exports2.isNCNameStartChar = isNCNameStartChar; function isNCNameChar(c) { return isNCNameStartChar(c) || (c === 45 || c === 46 || c >= 48 && c <= 57 || c === 183 || c >= 768 && c <= 879 || c >= 8255 && c <= 8256); } __name(isNCNameChar, "isNCNameChar"); exports2.isNCNameChar = isNCNameChar; } }); // ../../node_modules/.pnpm/saxes@5.0.1/node_modules/saxes/saxes.js var require_saxes = __commonJS({ "../../node_modules/.pnpm/saxes@5.0.1/node_modules/saxes/saxes.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); var ed5 = require_ed5(); var ed2 = require_ed2(); var NSed3 = require_ed3(); var isS = ed5.isS; var isChar10 = ed5.isChar; var isNameStartChar = ed5.isNameStartChar; var isNameChar = ed5.isNameChar; var S_LIST = ed5.S_LIST; var NAME_RE = ed5.NAME_RE; var isChar11 = ed2.isChar; var isNCNameStartChar = NSed3.isNCNameStartChar; var isNCNameChar = NSed3.isNCNameChar; var NC_NAME_RE = NSed3.NC_NAME_RE; var XML_NAMESPACE = "http://www.w3.org/XML/1998/namespace"; var XMLNS_NAMESPACE = "http://www.w3.org/2000/xmlns/"; var rootNS = { // eslint-disable-next-line @typescript-eslint/no-explicit-any __proto__: null, xml: XML_NAMESPACE, xmlns: XMLNS_NAMESPACE }; var XML_ENTITIES = { // eslint-disable-next-line @typescript-eslint/no-explicit-any __proto__: null, amp: "&", gt: ">", lt: "<", quot: '"', apos: "'" }; var EOC = -1; var NL_LIKE = -2; var S_BEGIN = 0; var S_BEGIN_WHITESPACE = 1; var S_DOCTYPE = 2; var S_DOCTYPE_QUOTE = 3; var S_DTD = 4; var S_DTD_QUOTED = 5; var S_DTD_OPEN_WAKA = 6; var S_DTD_OPEN_WAKA_BANG = 7; var S_DTD_COMMENT = 8; var S_DTD_COMMENT_ENDING = 9; var S_DTD_COMMENT_ENDED = 10; var S_DTD_PI = 11; var S_DTD_PI_ENDING = 12; var S_TEXT = 13; var S_ENTITY = 14; var S_OPEN_WAKA = 15; var S_OPEN_WAKA_BANG = 16; var S_COMMENT = 17; var S_COMMENT_ENDING = 18; var S_COMMENT_ENDED = 19; var S_CDATA = 20; var S_CDATA_ENDING = 21; var S_CDATA_ENDING_2 = 22; var S_PI_FIRST_CHAR = 23; var S_PI_REST = 24; var S_PI_BODY = 25; var S_PI_ENDING = 26; var S_XML_DECL_NAME_START = 27; var S_XML_DECL_NAME = 28; var S_XML_DECL_EQ = 29; var S_XML_DECL_VALUE_START = 30; var S_XML_DECL_VALUE = 31; var S_XML_DECL_SEPARATOR = 32; var S_XML_DECL_ENDING = 33; var S_OPEN_TAG = 34; var S_OPEN_TAG_SLASH = 35; var S_ATTRIB = 36; var S_ATTRIB_NAME = 37; var S_ATTRIB_NAME_SAW_WHITE = 38; var S_ATTRIB_VALUE = 39; var S_ATTRIB_VALUE_QUOTED = 40; var S_ATTRIB_VALUE_CLOSED = 41; var S_ATTRIB_VALUE_UNQUOTED = 42; var S_CLOSE_TAG = 43; var S_CLOSE_TAG_SAW_WHITE = 44; var TAB = 9; var NL = 10; var CR = 13; var SPACE = 32; var BANG = 33; var DQUOTE = 34; var AMP = 38; var SQUOTE = 39; var MINUS = 45; var FORWARD_SLASH = 47; var SEMICOLON = 59; var LESS = 60; var EQUAL = 61; var GREATER = 62; var QUESTION = 63; var OPEN_BRACKET = 91; var CLOSE_BRACKET = 93; var NEL = 133; var LS = 8232; var isQuote = /* @__PURE__ */ __name((c) => c === DQUOTE || c === SQUOTE, "isQuote"); var QUOTES = [DQUOTE, SQUOTE]; var DOCTYPE_TERMINATOR = [...QUOTES, OPEN_BRACKET, GREATER]; var DTD_TERMINATOR = [...QUOTES, LESS, CLOSE_BRACKET]; var XML_DECL_NAME_TERMINATOR = [EQUAL, QUESTION, ...S_LIST]; var ATTRIB_VALUE_UNQUOTED_TERMINATOR = [...S_LIST, GREATER, AMP, LESS]; function nsPairCheck(parser, prefix, uri) { switch (prefix) { case "xml": if (uri !== XML_NAMESPACE) { parser.fail(`xml prefix must be bound to ${XML_NAMESPACE}.`); } break; case "xmlns": if (uri !== XMLNS_NAMESPACE) { parser.fail(`xmlns prefix must be bound to ${XMLNS_NAMESPACE}.`); } break; default: } switch (uri) { case XMLNS_NAMESPACE: parser.fail(prefix === "" ? `the default namespace may not be set to ${uri}.` : `may not assign a prefix (even "xmlns") to the URI ${XMLNS_NAMESPACE}.`); break; case XML_NAMESPACE: switch (prefix) { case "xml": break; case "": parser.fail(`the default namespace may not be set to ${uri}.`); break; default: parser.fail("may not assign the xml namespace to another prefix."); } break; default: } } __name(nsPairCheck, "nsPairCheck"); function nsMappingCheck(parser, mapping) { for (const local of Object.keys(mapping)) { nsPairCheck(parser, local, mapping[local]); } } __name(nsMappingCheck, "nsMappingCheck"); var isNCName = /* @__PURE__ */ __name((name) => NC_NAME_RE.test(name), "isNCName"); var isName = /* @__PURE__ */ __name((name) => NAME_RE.test(name), "isName"); var FORBIDDEN_START = 0; var FORBIDDEN_BRACKET = 1; var FORBIDDEN_BRACKET_BRACKET = 2; exports2.EVENTS = [ "xmldecl", "text", "processinginstruction", "doctype", "comment", "opentagstart", "attribute", "opentag", "closetag", "cdata", "error", "end", "ready" ]; var EVENT_NAME_TO_HANDLER_NAME = { xmldecl: "xmldeclHandler", text: "textHandler", processinginstruction: "piHandler", doctype: "doctypeHandler", comment: "commentHandler", opentagstart: "openTagStartHandler", attribute: "attributeHandler", opentag: "openTagHandler", closetag: "closeTagHandler", cdata: "cdataHandler", error: "errorHandler", end: "endHandler", ready: "readyHandler" }; var SaxesParser = class { static { __name(this, "SaxesParser"); } /** * @param opt The parser options. */ constructor(opt) { this.opt = opt !== null && opt !== void 0 ? opt : {}; this.fragmentOpt = !!this.opt.fragment; const xmlnsOpt = this.xmlnsOpt = !!this.opt.xmlns; this.trackPosition = this.opt.position !== false; this.fileName = this.opt.fileName; if (xmlnsOpt) { this.nameStartCheck = isNCNameStartChar; this.nameCheck = isNCNameChar; this.isName = isNCName; this.processAttribs = this.processAttribsNS; this.pushAttrib = this.pushAttribNS; this.ns = Object.assign({ __proto__: null }, rootNS); const additional = this.opt.additionalNamespaces; if (additional != null) { nsMappingCheck(this, additional); Object.assign(this.ns, additional); } } else { this.nameStartCheck = isNameStartChar; this.nameCheck = isNameChar; this.isName = isName; this.processAttribs = this.processAttribsPlain; this.pushAttrib = this.pushAttribPlain; } this.stateTable = [ /* eslint-disable @typescript-eslint/unbound-method */ this.sBegin, this.sBeginWhitespace, this.sDoctype, this.sDoctypeQuote, this.sDTD, this.sDTDQuoted, this.sDTDOpenWaka, this.sDTDOpenWakaBang, this.sDTDComment, this.sDTDCommentEnding, this.sDTDCommentEnded, this.sDTDPI, this.sDTDPIEnding, this.sText, this.sEntity, this.sOpenWaka, this.sOpenWakaBang, this.sComment, this.sCommentEnding, this.sCommentEnded, this.sCData, this.sCDataEnding, this.sCDataEnding2, this.sPIFirstChar, this.sPIRest, this.sPIBody, this.sPIEnding, this.sXMLDeclNameStart, this.sXMLDeclName, this.sXMLDeclEq, this.sXMLDeclValueStart, this.sXMLDeclValue, this.sXMLDeclSeparator, this.sXMLDeclEnding, this.sOpenTag, this.sOpenTagSlash, this.sAttrib, this.sAttribName, this.sAttribNameSawWhite, this.sAttribValue, this.sAttribValueQuoted, this.sAttribValueClosed, this.sAttribValueUnquoted, this.sCloseTag, this.sCloseTagSawWhite ]; this._init(); } /** * Indicates whether or not the parser is closed. If ``true``, wait for * the ``ready`` event to write again. */ get closed() { return this._closed; } _init() { var _a; this.openWakaBang = ""; this.text = ""; this.name = ""; this.piTarget = ""; this.entity = ""; this.q = null; this.tags = []; this.tag = null; this.topNS = null; this.chunk = ""; this.chunkPosition = 0; this.i = 0; this.prevI = 0; this.carriedFromPrevious = void 0; this.forbiddenState = FORBIDDEN_START; this.attribList = []; const { fragmentOpt } = this; this.state = fragmentOpt ? S_TEXT : S_BEGIN; this.reportedTextBeforeRoot = this.reportedTextAfterRoot = this.closedRoot = this.sawRoot = fragmentOpt; this.xmlDeclPossible = !fragmentOpt; this.xmlDeclExpects = ["version"]; this.entityReturnState = void 0; let { defaultXMLVersion } = this.opt; if (defaultXMLVersion === void 0) { if (this.opt.forceXMLVersion === true) { throw new Error("forceXMLVersion set but defaultXMLVersion is not set"); } defaultXMLVersion = "1.0"; } this.setXMLVersion(defaultXMLVersion); this.positionAtNewLine = 0; this.doctype = false; this._closed = false; this.xmlDecl = { version: void 0, encoding: void 0, standalone: void 0 }; this.line = 1; this.column = 0; this.ENTITIES = Object.create(XML_ENTITIES); (_a = this.readyHandler) === null || _a === void 0 ? void 0 : _a.call(this); } /** * The stream position the parser is currently looking at. This field is * zero-based. * * This field is not based on counting Unicode characters but is to be * interpreted as a plain index into a JavaScript string. */ get position() { return this.chunkPosition + this.i; } /** * The column number of the next character to be read by the parser. * * This field is zero-based. (The first column in a line is 0.) * * This field reports the index at which the next character would be in the * line if the line were represented as a JavaScript string. Note that this * *can* be different to a count based on the number of *Unicode characters* * due to how JavaScript handles astral plane characters. * * See [[column]] for a number that corresponds to a count of Unicode * characters. */ get columnIndex() { return this.position - this.positionAtNewLine; } /** * Set an event listener on an event. The parser supports one handler per * event type. If you try to set an event handler over an existing handler, * the old handler is silently overwritten. * * @param name The event to listen to. * * @param handler The handler to set. */ on(name, handler) { this[EVENT_NAME_TO_HANDLER_NAME[name]] = handler; } /** * Unset an event handler. * * @parma name The event to stop listening to. */ off(name) { this[EVENT_NAME_TO_HANDLER_NAME[name]] = void 0; } /** * Make an error object. The error object will have a message that contains * the ``fileName`` option passed at the creation of the parser. If position * tracking was turned on, it will also have line and column number * information. * * @param message The message describing the error to report. * * @returns An error object with a properly formatted message. */ makeError(message) { var _a; let msg = (_a = this.fileName) !== null && _a !== void 0 ? _a : ""; if (this.trackPosition) { if (msg.length > 0) { msg += ":"; } msg += `${this.line}:${this.column}`; } if (msg.length > 0) { msg += ": "; } return new Error(msg + message); } /** * Report a parsing error. This method is made public so that client code may * check for issues that are outside the scope of this project and can report * errors. * * @param message The error to report. * * @returns this */ fail(message) { const err = this.makeError(message); const handler = this.errorHandler; if (handler === void 0) { throw err; } else { handler(err); } return this; } /** * Write a XML data to the parser. * * @param chunk The XML data to write. * * @returns this */ write(chunk) { if (this.closed) { return this.fail("cannot write after close; assign an onready handler."); } let end = false; if (chunk === null) { end = true; chunk = ""; } else if (typeof chunk === "object") { chunk = chunk.toString(); } if (this.carriedFromPrevious !== void 0) { chunk = `${this.carriedFromPrevious}${chunk}`; this.carriedFromPrevious = void 0; } let limit = chunk.length; const lastCode = chunk.charCodeAt(limit - 1); if (!end && // A trailing CR or surrogate must be carried over to the next // chunk. (lastCode === CR || lastCode >= 55296 && lastCode <= 56319)) { this.carriedFromPrevious = chunk[limit - 1]; limit--; chunk = chunk.slice(0, limit); } const { stateTable } = this; this.chunk = chunk; this.i = 0; while (this.i < limit) { stateTable[this.state].call(this); } this.chunkPosition += limit; return end ? this.end() : this; } /** * Close the current stream. Perform final well-formedness checks and reset * the parser tstate. * * @returns this */ close() { return this.write(null); } /** * Get a single code point out of the current chunk. This updates the current * position if we do position tracking. * * This is the algorithm to use for XML 1.0. * * @returns The character read. */ getCode10() { const { chunk, i } = this; this.prevI = i; this.i = i + 1; if (i >= chunk.length) { return EOC; } const code = chunk.charCodeAt(i); this.column++; if (code < 55296) { if (code >= SPACE || code === TAB) { return code; } switch (code) { case NL: this.line++; this.column = 0; this.positionAtNewLine = this.position; return NL; case CR: if (chunk.charCodeAt(i + 1) === NL) { this.i = i + 2; } this.line++; this.column = 0; this.positionAtNewLine = this.position; return NL_LIKE; default: this.fail("disallowed character."); return code; } } if (code > 56319) { if (!(code >= 57344 && code <= 65533)) { this.fail("disallowed character."); } return code; } const final = 65536 + (code - 55296) * 1024 + (chunk.charCodeAt(i + 1) - 56320); this.i = i + 2; if (final > 1114111) { this.fail("disallowed character."); } return final; } /** * Get a single code point out of the current chunk. This updates the current * position if we do position tracking. * * This is the algorithm to use for XML 1.1. * * @returns {number} The character read. */ getCode11() { const { chunk, i } = this; this.prevI = i; this.i = i + 1; if (i >= chunk.length) { return EOC; } const code = chunk.charCodeAt(i); this.column++; if (code < 55296) { if (code > 31 && code < 127 || code > 159 && code !== LS || code === TAB) { return code; } switch (code) { case NL: this.line++; this.column = 0; this.positionAtNewLine = this.position; return NL; case CR: { const next = chunk.charCodeAt(i + 1); if (next === NL || next === NEL) { this.i = i + 2; } } /* yes, fall through */ case NEL: // 0x85 case LS: this.line++; this.column = 0; this.positionAtNewLine = this.position; return NL_LIKE; default: this.fail("disallowed character."); return code; } } if (code > 56319) { if (!(code >= 57344 && code <= 65533)) { this.fail("disallowed character."); } return code; } const final = 65536 + (code - 55296) * 1024 + (chunk.charCodeAt(i + 1) - 56320); this.i = i + 2; if (final > 1114111) { this.fail("disallowed character."); } return final; } /** * Like ``getCode`` but with the return value normalized so that ``NL`` is * returned for ``NL_LIKE``. */ getCodeNorm() { const c = this.getCode(); return c === NL_LIKE ? NL : c; } unget() { this.i = this.prevI; this.column--; } /** * Capture characters into a buffer until encountering one of a set of * characters. * * @param chars An array of codepoints. Encountering a character in the array * ends the capture. (``chars`` may safely contain ``NL``.) * * @return The character code that made the capture end, or ``EOC`` if we hit * the end of the chunk. The return value cannot be NL_LIKE: NL is returned * instead. */ captureTo(chars) { let { i: start } = this; const { chunk } = this; while (true) { const c = this.getCode(); const isNLLike = c === NL_LIKE; const final = isNLLike ? NL : c; if (final === EOC || chars.includes(final)) { this.text += chunk.slice(start, this.prevI); return final; } if (isNLLike) { this.text += `${chunk.slice(start, this.prevI)} `; start = this.i; } } } /** * Capture characters into a buffer until encountering a character. * * @param char The codepoint that ends the capture. **NOTE ``char`` MAY NOT * CONTAIN ``NL``.** Passing ``NL`` will result in buggy behavior. * * @return ``true`` if we ran into the character. Otherwise, we ran into the * end of the current chunk. */ captureToChar(char) { let { i: start } = this; const { chunk } = this; while (true) { let c = this.getCode(); switch (c) { case NL_LIKE: this.text += `${chunk.slice(start, this.prevI)} `; start = this.i; c = NL; break; case EOC: this.text += chunk.slice(start); return false; default: } if (c === char) { this.text += chunk.slice(start, this.prevI); return true; } } } /** * Capture characters that satisfy ``isNameChar`` into the ``name`` field of * this parser. * * @return The character code that made the test fail, or ``EOC`` if we hit * the end of the chunk. The return value cannot be NL_LIKE: NL is returned * instead. */ captureNameChars() { const { chunk, i: start } = this; while (true) { const c = this.getCode(); if (c === EOC) { this.name += chunk.slice(start); return EOC; } if (!isNameChar(c)) { this.name += chunk.slice(start, this.prevI); return c === NL_LIKE ? NL : c; } } } /** * Skip white spaces. * * @return The character that ended the skip, or ``EOC`` if we hit * the end of the chunk. The return value cannot be NL_LIKE: NL is returned * instead. */ skipSpaces() { while (true) { const c = this.getCodeNorm(); if (c === EOC || !isS(c)) { return c; } } } setXMLVersion(version2) { this.currentXMLVersion = version2; if (version2 === "1.0") { this.isChar = isChar10; this.getCode = this.getCode10; } else { this.isChar = isChar11; this.getCode = this.getCode11; } } // STATE ENGINE METHODS // This needs to be a state separate from S_BEGIN_WHITESPACE because we want // to be sure never to come back to this state later. sBegin() { if (this.chunk.charCodeAt(0) === 65279) { this.i++; this.column++; } this.state = S_BEGIN_WHITESPACE; } sBeginWhitespace() { const iBefore = this.i; const c = this.skipSpaces(); if (this.prevI !== iBefore) { this.xmlDeclPossible = false; } switch (c) { case LESS: this.state = S_OPEN_WAKA; if (this.text.length !== 0) { throw new Error("no-empty text at start"); } break; case EOC: break; default: this.unget(); this.state = S_TEXT; this.xmlDeclPossible = false; } } sDoctype() { var _a; const c = this.captureTo(DOCTYPE_TERMINATOR); switch (c) { case GREATER: { (_a = this.doctypeHandler) === null || _a === void 0 ? void 0 : _a.call(this, this.text); this.text = ""; this.state = S_TEXT; this.doctype = true; break; } case EOC: break; default: this.text += String.fromCodePoint(c); if (c === OPEN_BRACKET) { this.state = S_DTD; } else if (isQuote(c)) { this.state = S_DOCTYPE_QUOTE; this.q = c; } } } sDoctypeQuote() { const q = this.q; if (this.captureToChar(q)) { this.text += String.fromCodePoint(q); this.q = null; this.state = S_DOCTYPE; } } sDTD() { const c = this.captureTo(DTD_TERMINATOR); if (c === EOC) { return; } this.text += String.fromCodePoint(c); if (c === CLOSE_BRACKET) { this.state = S_DOCTYPE; } else if (c === LESS) { this.state = S_DTD_OPEN_WAKA; } else if (isQuote(c)) { this.state = S_DTD_QUOTED; this.q = c; } } sDTDQuoted() { const q = this.q; if (this.captureToChar(q)) { this.text += String.fromCodePoint(q); this.state = S_DTD; this.q = null; } } sDTDOpenWaka() { const c = this.getCodeNorm(); this.text += String.fromCodePoint(c); switch (c) { case BANG: this.state = S_DTD_OPEN_WAKA_BANG; this.openWakaBang = ""; break; case QUESTION: this.state = S_DTD_PI; break; default: this.state = S_DTD; } } sDTDOpenWakaBang() { const char = String.fromCodePoint(this.getCodeNorm()); const owb = this.openWakaBang += char; this.text += char; if (owb !== "-") { this.state = owb === "--" ? S_DTD_COMMENT : S_DTD; this.openWakaBang = ""; } } sDTDComment() { if (this.captureToChar(MINUS)) { this.text += "-"; this.state = S_DTD_COMMENT_ENDING; } } sDTDCommentEnding() { const c = this.getCodeNorm(); this.text += String.fromCodePoint(c); this.state = c === MINUS ? S_DTD_COMMENT_ENDED : S_DTD_COMMENT; } sDTDCommentEnded() { const c = this.getCodeNorm(); this.text += String.fromCodePoint(c); if (c === GREATER) { this.state = S_DTD; } else { this.fail("malformed comment."); this.state = S_DTD_COMMENT; } } sDTDPI() { if (this.captureToChar(QUESTION)) { this.text += "?"; this.state = S_DTD_PI_ENDING; } } sDTDPIEnding() { const c = this.getCodeNorm(); this.text += String.fromCodePoint(c); if (c === GREATER) { this.state = S_DTD; } } sText() { if (this.tags.length !== 0) { this.handleTextInRoot(); } else { this.handleTextOutsideRoot(); } } sEntity() { let { i: start } = this; const { chunk } = this; loop: while (true) { switch (this.getCode()) { case NL_LIKE: this.entity += `${chunk.slice(start, this.prevI)} `; start = this.i; break; case SEMICOLON: { const { entityReturnState } = this; const entity = this.entity + chunk.slice(start, this.prevI); this.state = entityReturnState; let parsed; if (entity === "") { this.fail("empty entity name."); parsed = "&;"; } else { parsed = this.parseEntity(entity); this.entity = ""; } if (entityReturnState !== S_TEXT || this.textHandler !== void 0) { this.text += parsed; } break loop; } case EOC: this.entity += chunk.slice(start); break loop; default: } } } sOpenWaka() { const c = this.getCode(); if (isNameStartChar(c)) { this.state = S_OPEN_TAG; this.unget(); this.xmlDeclPossible = false; } else { switch (c) { case FORWARD_SLASH: this.state = S_CLOSE_TAG; this.xmlDeclPossible = false; break; case BANG: this.state = S_OPEN_WAKA_BANG; this.openWakaBang = ""; this.xmlDeclPossible = false; break; case QUESTION: this.state = S_PI_FIRST_CHAR; break; default: this.fail("disallowed character in tag name"); this.state = S_TEXT; this.xmlDeclPossible = false; } } } sOpenWakaBang() { this.openWakaBang += String.fromCodePoint(this.getCodeNorm()); switch (this.openWakaBang) { case "[CDATA[": if (!this.sawRoot && !this.reportedTextBeforeRoot) { this.fail("text data outside of root node."); this.reportedTextBeforeRoot = true; } if (this.closedRoot && !this.reportedTextAfterRoot) { this.fail("text data outside of root node."); this.reportedTextAfterRoot = true; } this.state = S_CDATA; this.openWakaBang = ""; break; case "--": this.state = S_COMMENT; this.openWakaBang = ""; break; case "DOCTYPE": this.state = S_DOCTYPE; if (this.doctype || this.sawRoot) { this.fail("inappropriately located doctype declaration."); } this.openWakaBang = ""; break; default: if (this.openWakaBang.length >= 7) { this.fail("incorrect syntax."); } } } sComment() { if (this.captureToChar(MINUS)) { this.state = S_COMMENT_ENDING; } } sCommentEnding() { var _a; const c = this.getCodeNorm(); if (c === MINUS) { this.state = S_COMMENT_ENDED; (_a = this.commentHandler) === null || _a === void 0 ? void 0 : _a.call(this, this.text); this.text = ""; } else { this.text += `-${String.fromCodePoint(c)}`; this.state = S_COMMENT; } } sCommentEnded() { const c = this.getCodeNorm(); if (c !== GREATER) { this.fail("malformed comment."); this.text += `--${String.fromCodePoint(c)}`; this.state = S_COMMENT; } else { this.state = S_TEXT; } } sCData() { if (this.captureToChar(CLOSE_BRACKET)) { this.state = S_CDATA_ENDING; } } sCDataEnding() { const c = this.getCodeNorm(); if (c === CLOSE_BRACKET) { this.state = S_CDATA_ENDING_2; } else { this.text += `]${String.fromCodePoint(c)}`; this.state = S_CDATA; } } sCDataEnding2() { var _a; const c = this.getCodeNorm(); switch (c) { case GREATER: { (_a = this.cdataHandler) === null || _a === void 0 ? void 0 : _a.call(this, this.text); this.text = ""; this.state = S_TEXT; break; } case CLOSE_BRACKET: this.text += "]"; break; default: this.text += `]]${String.fromCodePoint(c)}`; this.state = S_CDATA; } } // We need this separate state to check the first character fo the pi target // with this.nameStartCheck which allows less characters than this.nameCheck. sPIFirstChar() { const c = this.getCodeNorm(); if (this.nameStartCheck(c)) { this.piTarget += String.fromCodePoint(c); this.state = S_PI_REST; } else if (c === QUESTION || isS(c)) { this.fail("processing instruction without a target."); this.state = c === QUESTION ? S_PI_ENDING : S_PI_BODY; } else { this.fail("disallowed character in processing instruction name."); this.piTarget += String.fromCodePoint(c); this.state = S_PI_REST; } } sPIRest() { const { chunk, i: start } = this; while (true) { const c = this.getCodeNorm(); if (c === EOC) { this.piTarget += chunk.slice(start); return; } if (!this.nameCheck(c)) { this.piTarget += chunk.slice(start, this.prevI); const isQuestion = c === QUESTION; if (isQuestion || isS(c)) { if (this.piTarget === "xml") { if (!this.xmlDeclPossible) { this.fail("an XML declaration must be at the start of the document."); } this.state = isQuestion ? S_XML_DECL_ENDING : S_XML_DECL_NAME_START; } else { this.state = isQuestion ? S_PI_ENDING : S_PI_BODY; } } else { this.fail("disallowed character in processing instruction name."); this.piTarget += String.fromCodePoint(c); } break; } } } sPIBody() { if (this.text.length === 0) { const c = this.getCodeNorm(); if (c === QUESTION) { this.state = S_PI_ENDING; } else if (!isS(c)) { this.text = String.fromCodePoint(c); } } else if (this.captureToChar(QUESTION)) { this.state = S_PI_ENDING; } } sPIEnding() { var _a; const c = this.getCodeNorm(); if (c === GREATER) { const { piTarget } = this; if (piTarget.toLowerCase() === "xml") { this.fail("the XML declaration must appear at the start of the document."); } (_a = this.piHandler) === null || _a === void 0 ? void 0 : _a.call(this, { target: piTarget, body: this.text }); this.piTarget = this.text = ""; this.state = S_TEXT; } else if (c === QUESTION) { this.text += "?"; } else { this.text += `?${String.fromCodePoint(c)}`; this.state = S_PI_BODY; } this.xmlDeclPossible = false; } sXMLDeclNameStart() { const c = this.skipSpaces(); if (c === QUESTION) { this.state = S_XML_DECL_ENDING; return; } if (c !== EOC) { this.state = S_XML_DECL_NAME; this.name = String.fromCodePoint(c); } } sXMLDeclName() { const c = this.captureTo(XML_DECL_NAME_TERMINATOR); if (c === QUESTION) { this.state = S_XML_DECL_ENDING; this.name += this.text; this.text = ""; this.fail("XML declaration is incomplete."); return; } if (!(isS(c) || c === EQUAL)) { return; } this.name += this.text; this.text = ""; if (!this.xmlDeclExpects.includes(this.name)) { switch (this.name.length) { case 0: this.fail("did not expect any more name/value pairs."); break; case 1: this.fail(`expected the name ${this.xmlDeclExpects[0]}.`); break; default: this.fail(`expected one of ${this.xmlDeclExpects.join(", ")}`); } } this.state = c === EQUAL ? S_XML_DECL_VALUE_START : S_XML_DECL_EQ; } sXMLDeclEq() { const c = this.getCodeNorm(); if (c === QUESTION) { this.state = S_XML_DECL_ENDING; this.fail("XML declaration is incomplete."); return; } if (isS(c)) { return; } if (c !== EQUAL) { this.fail("value required."); } this.state = S_XML_DECL_VALUE_START; } sXMLDeclValueStart() { const c = this.getCodeNorm(); if (c === QUESTION) { this.state = S_XML_DECL_ENDING; this.fail("XML declaration is incomplete."); return; } if (isS(c)) { return; } if (!isQuote(c)) { this.fail("value must be quoted."); this.q = SPACE; } else { this.q = c; } this.state = S_XML_DECL_VALUE; } sXMLDeclValue() { const c = this.captureTo([this.q, QUESTION]); if (c === QUESTION) { this.state = S_XML_DECL_ENDING; this.text = ""; this.fail("XML declaration is incomplete."); return; } if (c === EOC) { return; } const value = this.text; this.text = ""; switch (this.name) { case "version": { this.xmlDeclExpects = ["encoding", "standalone"]; const version2 = value; this.xmlDecl.version = version2; if (!/^1\.[0-9]+$/.test(version2)) { this.fail("version number must match /^1\\.[0-9]+$/."); } else if (!this.opt.forceXMLVersion) { this.setXMLVersion(version2); } break; } case "encoding": if (!/^[A-Za-z][A-Za-z0-9._-]*$/.test(value)) { this.fail("encoding value must match /^[A-Za-z0-9][A-Za-z0-9._-]*$/."); } this.xmlDeclExpects = ["standalone"]; this.xmlDecl.encoding = value; break; case "standalone": if (value !== "yes" && value !== "no") { this.fail('standalone value must match "yes" or "no".'); } this.xmlDeclExpects = []; this.xmlDecl.standalone = value; break; default: } this.name = ""; this.state = S_XML_DECL_SEPARATOR; } sXMLDeclSeparator() { const c = this.getCodeNorm(); if (c === QUESTION) { this.state = S_XML_DECL_ENDING; return; } if (!isS(c)) { this.fail("whitespace required."); this.unget(); } this.state = S_XML_DECL_NAME_START; } sXMLDeclEnding() { var _a; const c = this.getCodeNorm(); if (c === GREATER) { if (this.piTarget !== "xml") { this.fail("processing instructions are not allowed before root."); } else if (this.name !== "version" && this.xmlDeclExpects.includes("version")) { this.fail("XML declaration must contain a version."); } (_a = this.xmldeclHandler) === null || _a === void 0 ? void 0 : _a.call(this, this.xmlDecl); this.name = ""; this.piTarget = this.text = ""; this.state = S_TEXT; } else { this.fail("The character ? is disallowed anywhere in XML declarations."); } this.xmlDeclPossible = false; } sOpenTag() { var _a; const c = this.captureNameChars(); if (c === EOC) { return; } const tag = this.tag = { name: this.name, attributes: /* @__PURE__ */ Object.create(null) }; this.name = ""; if (this.xmlnsOpt) { this.topNS = tag.ns = /* @__PURE__ */ Object.create(null); } (_a = this.openTagStartHandler) === null || _a === void 0 ? void 0 : _a.call(this, tag); this.sawRoot = true; if (!this.fragmentOpt && this.closedRoot) { this.fail("documents may contain only one root."); } switch (c) { case GREATER: this.openTag(); break; case FORWARD_SLASH: this.state = S_OPEN_TAG_SLASH; break; default: if (!isS(c)) { this.fail("disallowed character in tag name."); } this.state = S_ATTRIB; } } sOpenTagSlash() { if (this.getCode() === GREATER) { this.openSelfClosingTag(); } else { this.fail("forward-slash in opening tag not followed by >."); this.state = S_ATTRIB; } } sAttrib() { const c = this.skipSpaces(); if (c === EOC) { return; } if (isNameStartChar(c)) { this.unget(); this.state = S_ATTRIB_NAME; } else if (c === GREATER) { this.openTag(); } else if (c === FORWARD_SLASH) { this.state = S_OPEN_TAG_SLASH; } else { this.fail("disallowed character in attribute name."); } } sAttribName() { const c = this.captureNameChars(); if (c === EQUAL) { this.state = S_ATTRIB_VALUE; } else if (isS(c)) { this.state = S_ATTRIB_NAME_SAW_WHITE; } else if (c === GREATER) { this.fail("attribute without value."); this.pushAttrib(this.name, this.name); this.name = this.text = ""; this.openTag(); } else if (c !== EOC) { this.fail("disallowed character in attribute name."); } } sAttribNameSawWhite() { const c = this.skipSpaces(); switch (c) { case EOC: return; case EQUAL: this.state = S_ATTRIB_VALUE; break; default: this.fail("attribute without value."); this.text = ""; this.name = ""; if (c === GREATER) { this.openTag(); } else if (isNameStartChar(c)) { this.unget(); this.state = S_ATTRIB_NAME; } else { this.fail("disallowed character in attribute name."); this.state = S_ATTRIB; } } } sAttribValue() { const c = this.getCodeNorm(); if (isQuote(c)) { this.q = c; this.state = S_ATTRIB_VALUE_QUOTED; } else if (!isS(c)) { this.fail("unquoted attribute value."); this.state = S_ATTRIB_VALUE_UNQUOTED; this.unget(); } } sAttribValueQuoted() { const { q, chunk } = this; let { i: start } = this; while (true) { switch (this.getCode()) { case q: this.pushAttrib(this.name, this.text + chunk.slice(start, this.prevI)); this.name = this.text = ""; this.q = null; this.state = S_ATTRIB_VALUE_CLOSED; return; case AMP: this.text += chunk.slice(start, this.prevI); this.state = S_ENTITY; this.entityReturnState = S_ATTRIB_VALUE_QUOTED; return; case NL: case NL_LIKE: case TAB: this.text += `${chunk.slice(start, this.prevI)} `; start = this.i; break; case LESS: this.text += chunk.slice(start, this.prevI); this.fail("disallowed character."); return; case EOC: this.text += chunk.slice(start); return; default: } } } sAttribValueClosed() { const c = this.getCodeNorm(); if (isS(c)) { this.state = S_ATTRIB; } else if (c === GREATER) { this.openTag(); } else if (c === FORWARD_SLASH) { this.state = S_OPEN_TAG_SLASH; } else if (isNameStartChar(c)) { this.fail("no whitespace between attributes."); this.unget(); this.state = S_ATTRIB_NAME; } else { this.fail("disallowed character in attribute name."); } } sAttribValueUnquoted() { const c = this.captureTo(ATTRIB_VALUE_UNQUOTED_TERMINATOR); switch (c) { case AMP: this.state = S_ENTITY; this.entityReturnState = S_ATTRIB_VALUE_UNQUOTED; break; case LESS: this.fail("disallowed character."); break; case EOC: break; default: if (this.text.includes("]]>")) { this.fail('the string "]]>" is disallowed in char data.'); } this.pushAttrib(this.name, this.text); this.name = this.text = ""; if (c === GREATER) { this.openTag(); } else { this.state = S_ATTRIB; } } } sCloseTag() { const c = this.captureNameChars(); if (c === GREATER) { this.closeTag(); } else if (isS(c)) { this.state = S_CLOSE_TAG_SAW_WHITE; } else if (c !== EOC) { this.fail("disallowed character in closing tag."); } } sCloseTagSawWhite() { switch (this.skipSpaces()) { case GREATER: this.closeTag(); break; case EOC: break; default: this.fail("disallowed character in closing tag."); } } // END OF STATE ENGINE METHODS handleTextInRoot() { let { i: start, forbiddenState } = this; const { chunk, textHandler: handler } = this; scanLoop: while (true) { switch (this.getCode()) { case LESS: { this.state = S_OPEN_WAKA; if (handler !== void 0) { const { text } = this; const slice = chunk.slice(start, this.prevI); if (text.length !== 0) { handler(text + slice); this.text = ""; } else if (slice.length !== 0) { handler(slice); } } forbiddenState = FORBIDDEN_START; break scanLoop; } case AMP: this.state = S_ENTITY; this.entityReturnState = S_TEXT; if (handler !== void 0) { this.text += chunk.slice(start, this.prevI); } forbiddenState = FORBIDDEN_START; break scanLoop; case CLOSE_BRACKET: switch (forbiddenState) { case FORBIDDEN_START: forbiddenState = FORBIDDEN_BRACKET; break; case FORBIDDEN_BRACKET: forbiddenState = FORBIDDEN_BRACKET_BRACKET; break; case FORBIDDEN_BRACKET_BRACKET: break; default: throw new Error("impossible state"); } break; case GREATER: if (forbiddenState === FORBIDDEN_BRACKET_BRACKET) { this.fail('the string "]]>" is disallowed in char data.'); } forbiddenState = FORBIDDEN_START; break; case NL_LIKE: if (handler !== void 0) { this.text += `${chunk.slice(start, this.prevI)} `; } start = this.i; forbiddenState = FORBIDDEN_START; break; case EOC: if (handler !== void 0) { this.text += chunk.slice(start); } break scanLoop; default: forbiddenState = FORBIDDEN_START; } } this.forbiddenState = forbiddenState; } handleTextOutsideRoot() { let { i: start } = this; const { chunk, textHandler: handler } = this; let nonSpace = false; outRootLoop: while (true) { const code = this.getCode(); switch (code) { case LESS: { this.state = S_OPEN_WAKA; if (handler !== void 0) { const { text } = this; const slice = chunk.slice(start, this.prevI); if (text.length !== 0) { handler(text + slice); this.text = ""; } else if (slice.length !== 0) { handler(slice); } } break outRootLoop; } case AMP: this.state = S_ENTITY; this.entityReturnState = S_TEXT; if (handler !== void 0) { this.text += chunk.slice(start, this.prevI); } nonSpace = true; break outRootLoop; case NL_LIKE: if (handler !== void 0) { this.text += `${chunk.slice(start, this.prevI)} `; } start = this.i; break; case EOC: if (handler !== void 0) { this.text += chunk.slice(start); } break outRootLoop; default: if (!isS(code)) { nonSpace = true; } } } if (!nonSpace) { return; } if (!this.sawRoot && !this.reportedTextBeforeRoot) { this.fail("text data outside of root node."); this.reportedTextBeforeRoot = true; } if (this.closedRoot && !this.reportedTextAfterRoot) { this.fail("text data outside of root node."); this.reportedTextAfterRoot = true; } } pushAttribNS(name, value) { var _a; const { prefix, local } = this.qname(name); const attr = { name, prefix, local, value }; this.attribList.push(attr); (_a = this.attributeHandler) === null || _a === void 0 ? void 0 : _a.call(this, attr); if (prefix === "xmlns") { const trimmed = value.trim(); if (this.currentXMLVersion === "1.0" && trimmed === "") { this.fail("invalid attempt to undefine prefix in XML 1.0"); } this.topNS[local] = trimmed; nsPairCheck(this, local, trimmed); } else if (name === "xmlns") { const trimmed = value.trim(); this.topNS[""] = trimmed; nsPairCheck(this, "", trimmed); } } pushAttribPlain(name, value) { var _a; const attr = { name, value }; this.attribList.push(attr); (_a = this.attributeHandler) === null || _a === void 0 ? void 0 : _a.call(this, attr); } /** * End parsing. This performs final well-formedness checks and resets the * parser to a clean state. * * @returns this */ end() { var _a, _b; if (!this.sawRoot) { this.fail("document must contain a root element."); } const { tags } = this; while (tags.length > 0) { const tag = tags.pop(); this.fail(`unclosed tag: ${tag.name}`); } if (this.state !== S_BEGIN && this.state !== S_TEXT) { this.fail("unexpected end."); } const { text } = this; if (text.length !== 0) { (_a = this.textHandler) === null || _a === void 0 ? void 0 : _a.call(this, text); this.text = ""; } this._closed = true; (_b = this.endHandler) === null || _b === void 0 ? void 0 : _b.call(this); this._init(); return this; } /** * Resolve a namespace prefix. * * @param prefix The prefix to resolve. * * @returns The namespace URI or ``undefined`` if the prefix is not defined. */ resolve(prefix) { var _a, _b; let uri = this.topNS[prefix]; if (uri !== void 0) { return uri; } const { tags } = this; for (let index = tags.length - 1; index >= 0; index--) { uri = tags[index].ns[prefix]; if (uri !== void 0) { return uri; } } uri = this.ns[prefix]; if (uri !== void 0) { return uri; } return (_b = (_a = this.opt).resolvePrefix) === null || _b === void 0 ? void 0 : _b.call(_a, prefix); } /** * Parse a qname into its prefix and local name parts. * * @param name The name to parse * * @returns */ qname(name) { const colon = name.indexOf(":"); if (colon === -1) { return { prefix: "", local: name }; } const local = name.slice(colon + 1); const prefix = name.slice(0, colon); if (prefix === "" || local === "" || local.includes(":")) { this.fail(`malformed name: ${name}.`); } return { prefix, local }; } processAttribsNS() { var _a; const { attribList } = this; const tag = this.tag; { const { prefix, local } = this.qname(tag.name); tag.prefix = prefix; tag.local = local; const uri = tag.uri = (_a = this.resolve(prefix)) !== null && _a !== void 0 ? _a : ""; if (prefix !== "") { if (prefix === "xmlns") { this.fail('tags may not have "xmlns" as prefix.'); } if (uri === "") { this.fail(`unbound namespace prefix: ${JSON.stringify(prefix)}.`); tag.uri = prefix; } } } if (attribList.length === 0) { return; } const { attributes } = tag; const seen = /* @__PURE__ */ new Set(); for (const attr of attribList) { const { name, prefix, local } = attr; let uri; let eqname; if (prefix === "") { uri = name === "xmlns" ? XMLNS_NAMESPACE : ""; eqname = name; } else { uri = this.resolve(prefix); if (uri === void 0) { this.fail(`unbound namespace prefix: ${JSON.stringify(prefix)}.`); uri = prefix; } eqname = `{${uri}}${local}`; } if (seen.has(eqname)) { this.fail(`duplicate attribute: ${eqname}.`); } seen.add(eqname); attr.uri = uri; attributes[name] = attr; } this.attribList = []; } processAttribsPlain() { const { attribList } = this; const attributes = this.tag.attributes; for (const { name, value } of attribList) { if (attributes[name] !== void 0) { this.fail(`duplicate attribute: ${name}.`); } attributes[name] = value; } this.attribList = []; } /** * Handle a complete open tag. This parser code calls this once it has seen * the whole tag. This method checks for well-formeness and then emits * ``onopentag``. */ openTag() { var _a; this.processAttribs(); const { tags } = this; const tag = this.tag; tag.isSelfClosing = false; (_a = this.openTagHandler) === null || _a === void 0 ? void 0 : _a.call(this, tag); tags.push(tag); this.state = S_TEXT; this.name = ""; } /** * Handle a complete self-closing tag. This parser code calls this once it has * seen the whole tag. This method checks for well-formeness and then emits * ``onopentag`` and ``onclosetag``. */ openSelfClosingTag() { var _a, _b, _c; this.processAttribs(); const { tags } = this; const tag = this.tag; tag.isSelfClosing = true; (_a = this.openTagHandler) === null || _a === void 0 ? void 0 : _a.call(this, tag); (_b = this.closeTagHandler) === null || _b === void 0 ? void 0 : _b.call(this, tag); const top = this.tag = (_c = tags[tags.length - 1]) !== null && _c !== void 0 ? _c : null; if (top === null) { this.closedRoot = true; } this.state = S_TEXT; this.name = ""; } /** * Handle a complete close tag. This parser code calls this once it has seen * the whole tag. This method checks for well-formeness and then emits * ``onclosetag``. */ closeTag() { const { tags, name } = this; this.state = S_TEXT; this.name = ""; if (name === "") { this.fail("weird empty close tag."); this.text += ""; return; } const handler = this.closeTagHandler; let l2 = tags.length; while (l2-- > 0) { const tag = this.tag = tags.pop(); this.topNS = tag.ns; handler === null || handler === void 0 ? void 0 : handler(tag); if (tag.name === name) { break; } this.fail("unexpected close tag."); } if (l2 === 0) { this.closedRoot = true; } else if (l2 < 0) { this.fail(`unmatched closing tag: ${name}.`); this.text += ``; } } /** * Resolves an entity. Makes any necessary well-formedness checks. * * @param entity The entity to resolve. * * @returns The parsed entity. */ parseEntity(entity) { if (entity[0] !== "#") { const defined = this.ENTITIES[entity]; if (defined !== void 0) { return defined; } this.fail(this.isName(entity) ? "undefined entity." : "disallowed character in entity name."); return `&${entity};`; } let num = NaN; if (entity[1] === "x" && /^#x[0-9a-f]+$/i.test(entity)) { num = parseInt(entity.slice(2), 16); } else if (/^#[0-9]+$/.test(entity)) { num = parseInt(entity.slice(1), 10); } if (!this.isChar(num)) { this.fail("malformed character entity."); return `&${entity};`; } return String.fromCodePoint(num); } }; exports2.SaxesParser = SaxesParser; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/parse-sax.js var require_parse_sax = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/parse-sax.js"(exports2, module2) { var { SaxesParser } = require_saxes(); var { PassThrough } = require_readable(); var { bufferToString } = require_browser_buffer_decode(); module2.exports = async function* (iterable) { if (iterable.pipe && !iterable[Symbol.asyncIterator]) { iterable = iterable.pipe(new PassThrough()); } const saxesParser = new SaxesParser(); let error; saxesParser.on("error", (err) => { error = err; }); let events = []; saxesParser.on("opentag", (value) => events.push({ eventType: "opentag", value })); saxesParser.on("text", (value) => events.push({ eventType: "text", value })); saxesParser.on("closetag", (value) => events.push({ eventType: "closetag", value })); for await (const chunk of iterable) { saxesParser.write(bufferToString(chunk)); if (error) throw error; yield events; events = []; } }; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/base-xform.js var require_base_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/base-xform.js"(exports2, module2) { var parseSax = require_parse_sax(); var XmlStream = require_xml_stream(); var BaseXform = class _BaseXform { static { __name(this, "BaseXform"); } // constructor(/* model, name */) {} // ============================================================ // Virtual Interface prepare() { } render() { } parseOpen(node) { } parseText(text) { } parseClose(name) { } reconcile(model, options) { } // ============================================================ reset() { this.model = null; if (this.map) { Object.values(this.map).forEach((xform) => { if (xform instanceof _BaseXform) { xform.reset(); } else if (xform.xform) { xform.xform.reset(); } }); } } mergeModel(obj2) { this.model = Object.assign(this.model || {}, obj2); } async parse(saxParser) { for await (const events of saxParser) { for (const { eventType, value } of events) { if (eventType === "opentag") { this.parseOpen(value); } else if (eventType === "text") { this.parseText(value); } else if (eventType === "closetag") { if (!this.parseClose(value.name)) { return this.model; } } } } return this.model; } async parseStream(stream) { return this.parse(parseSax(stream)); } get xml() { return this.toXml(this.model); } toXml(model) { const xmlStream = new XmlStream(); this.render(xmlStream, model); return xmlStream.xml; } // ============================================================ // Useful Utilities static toAttribute(value, dflt, always = false) { if (value === void 0) { if (always) { return dflt; } } else if (always || value !== dflt) { return value.toString(); } return void 0; } static toStringAttribute(value, dflt, always = false) { return _BaseXform.toAttribute(value, dflt, always); } static toStringValue(attr, dflt) { return attr === void 0 ? dflt : attr; } static toBoolAttribute(value, dflt, always = false) { if (value === void 0) { if (always) { return dflt; } } else if (always || value !== dflt) { return value ? "1" : "0"; } return void 0; } static toBoolValue(attr, dflt) { return attr === void 0 ? dflt : attr === "1"; } static toIntAttribute(value, dflt, always = false) { return _BaseXform.toAttribute(value, dflt, always); } static toIntValue(attr, dflt) { return attr === void 0 ? dflt : parseInt(attr, 10); } static toFloatAttribute(value, dflt, always = false) { return _BaseXform.toAttribute(value, dflt, always); } static toFloatValue(attr, dflt) { return attr === void 0 ? dflt : parseFloat(attr); } }; module2.exports = BaseXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/static-xform.js var require_static_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/static-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var XmlStream = require_xml_stream(); function build(xmlStream, model) { xmlStream.openNode(model.tag, model.$); if (model.c) { model.c.forEach((child) => { build(xmlStream, child); }); } if (model.t) { xmlStream.writeText(model.t); } xmlStream.closeNode(); } __name(build, "build"); var StaticXform = class extends BaseXform { static { __name(this, "StaticXform"); } constructor(model) { super(); this._model = model; } render(xmlStream) { if (!this._xml) { const stream = new XmlStream(); build(stream, this._model); this._xml = stream.xml; } xmlStream.writeXml(this._xml); } parseOpen() { return true; } parseText() { } parseClose(name) { switch (name) { case this._model.tag: return false; default: return true; } } }; module2.exports = StaticXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/list-xform.js var require_list_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/list-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var ListXform = class extends BaseXform { static { __name(this, "ListXform"); } constructor(options) { super(); this.tag = options.tag; this.always = !!options.always; this.count = options.count; this.empty = options.empty; this.$count = options.$count || "count"; this.$ = options.$; this.childXform = options.childXform; this.maxItems = options.maxItems; } prepare(model, options) { const { childXform } = this; if (model) { model.forEach((childModel, index) => { options.index = index; childXform.prepare(childModel, options); }); } } render(xmlStream, model) { if (this.always || model && model.length) { xmlStream.openNode(this.tag, this.$); if (this.count) { xmlStream.addAttribute(this.$count, model && model.length || 0); } const { childXform } = this; (model || []).forEach((childModel, index) => { childXform.render(xmlStream, childModel, index); }); xmlStream.closeNode(); } else if (this.empty) { xmlStream.leafNode(this.tag); } } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.model = []; return true; default: if (this.childXform.parseOpen(node)) { this.parser = this.childXform; return true; } return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.model.push(this.parser.model); this.parser = void 0; if (this.maxItems && this.model.length > this.maxItems) { throw new Error(`Max ${this.childXform.tag} count (${this.maxItems}) exceeded`); } } return true; } return false; } reconcile(model, options) { if (model) { const { childXform } = this; model.forEach((childModel) => { childXform.reconcile(childModel, options); }); } } }; module2.exports = ListXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/color-xform.js var require_color_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/color-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var ColorXform = class extends BaseXform { static { __name(this, "ColorXform"); } constructor(name) { super(); this.name = name || "color"; } get tag() { return this.name; } render(xmlStream, model) { if (model) { xmlStream.openNode(this.name); if (model.argb) { xmlStream.addAttribute("rgb", model.argb); } else if (model.theme !== void 0) { xmlStream.addAttribute("theme", model.theme); if (model.tint !== void 0) { xmlStream.addAttribute("tint", model.tint); } } else if (model.indexed !== void 0) { xmlStream.addAttribute("indexed", model.indexed); } else { xmlStream.addAttribute("auto", "1"); } xmlStream.closeNode(); return true; } return false; } parseOpen(node) { if (node.name === this.name) { if (node.attributes.rgb) { this.model = { argb: node.attributes.rgb }; } else if (node.attributes.theme) { this.model = { theme: parseInt(node.attributes.theme, 10) }; if (node.attributes.tint) { this.model.tint = parseFloat(node.attributes.tint); } } else if (node.attributes.indexed) { this.model = { indexed: parseInt(node.attributes.indexed, 10) }; } else { this.model = void 0; } return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = ColorXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/simple/boolean-xform.js var require_boolean_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/simple/boolean-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var BooleanXform = class extends BaseXform { static { __name(this, "BooleanXform"); } constructor(options) { super(); this.tag = options.tag; this.attr = options.attr; } render(xmlStream, model) { if (model) { xmlStream.openNode(this.tag); xmlStream.closeNode(); } } parseOpen(node) { if (node.name === this.tag) { this.model = true; } } parseText() { } parseClose() { return false; } }; module2.exports = BooleanXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/simple/integer-xform.js var require_integer_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/simple/integer-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var IntegerXform = class extends BaseXform { static { __name(this, "IntegerXform"); } constructor(options) { super(); this.tag = options.tag; this.attr = options.attr; this.attrs = options.attrs; this.zero = options.zero; } render(xmlStream, model) { if (model || this.zero) { xmlStream.openNode(this.tag); if (this.attrs) { xmlStream.addAttributes(this.attrs); } if (this.attr) { xmlStream.addAttribute(this.attr, model); } else { xmlStream.writeText(model); } xmlStream.closeNode(); } } parseOpen(node) { if (node.name === this.tag) { if (this.attr) { this.model = parseInt(node.attributes[this.attr], 10); } else { this.text = []; } return true; } return false; } parseText(text) { if (!this.attr) { this.text.push(text); } } parseClose() { if (!this.attr) { this.model = parseInt(this.text.join("") || 0, 10); } return false; } }; module2.exports = IntegerXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/simple/string-xform.js var require_string_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/simple/string-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var StringXform = class extends BaseXform { static { __name(this, "StringXform"); } constructor(options) { super(); this.tag = options.tag; this.attr = options.attr; this.attrs = options.attrs; } render(xmlStream, model) { if (model !== void 0) { xmlStream.openNode(this.tag); if (this.attrs) { xmlStream.addAttributes(this.attrs); } if (this.attr) { xmlStream.addAttribute(this.attr, model); } else { xmlStream.writeText(model); } xmlStream.closeNode(); } } parseOpen(node) { if (node.name === this.tag) { if (this.attr) { this.model = node.attributes[this.attr]; } else { this.text = []; } } } parseText(text) { if (!this.attr) { this.text.push(text); } } parseClose() { if (!this.attr) { this.model = this.text.join(""); } return false; } }; module2.exports = StringXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/underline-xform.js var require_underline_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/underline-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var UnderlineXform = class _UnderlineXform extends BaseXform { static { __name(this, "UnderlineXform"); } constructor(model) { super(); this.model = model; } get tag() { return "u"; } render(xmlStream, model) { model = model || this.model; if (model === true) { xmlStream.leafNode("u"); } else { const attr = _UnderlineXform.Attributes[model]; if (attr) { xmlStream.leafNode("u", attr); } } } parseOpen(node) { if (node.name === "u") { this.model = node.attributes.val || true; } } parseText() { } parseClose() { return false; } }; UnderlineXform.Attributes = { single: {}, double: { val: "double" }, singleAccounting: { val: "singleAccounting" }, doubleAccounting: { val: "doubleAccounting" } }; module2.exports = UnderlineXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/font-xform.js var require_font_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/font-xform.js"(exports2, module2) { "use strict"; var ColorXform = require_color_xform(); var BooleanXform = require_boolean_xform(); var IntegerXform = require_integer_xform(); var StringXform = require_string_xform(); var UnderlineXform = require_underline_xform(); var _2 = require_under_dash(); var BaseXform = require_base_xform(); var FontXform = class _FontXform extends BaseXform { static { __name(this, "FontXform"); } constructor(options) { super(); this.options = options || _FontXform.OPTIONS; this.map = { b: { prop: "bold", xform: new BooleanXform({ tag: "b", attr: "val" }) }, i: { prop: "italic", xform: new BooleanXform({ tag: "i", attr: "val" }) }, u: { prop: "underline", xform: new UnderlineXform() }, charset: { prop: "charset", xform: new IntegerXform({ tag: "charset", attr: "val" }) }, color: { prop: "color", xform: new ColorXform() }, condense: { prop: "condense", xform: new BooleanXform({ tag: "condense", attr: "val" }) }, extend: { prop: "extend", xform: new BooleanXform({ tag: "extend", attr: "val" }) }, family: { prop: "family", xform: new IntegerXform({ tag: "family", attr: "val" }) }, outline: { prop: "outline", xform: new BooleanXform({ tag: "outline", attr: "val" }) }, vertAlign: { prop: "vertAlign", xform: new StringXform({ tag: "vertAlign", attr: "val" }) }, scheme: { prop: "scheme", xform: new StringXform({ tag: "scheme", attr: "val" }) }, shadow: { prop: "shadow", xform: new BooleanXform({ tag: "shadow", attr: "val" }) }, strike: { prop: "strike", xform: new BooleanXform({ tag: "strike", attr: "val" }) }, sz: { prop: "size", xform: new IntegerXform({ tag: "sz", attr: "val" }) } }; this.map[this.options.fontNameTag] = { prop: "name", xform: new StringXform({ tag: this.options.fontNameTag, attr: "val" }) }; } get tag() { return this.options.tagName; } render(xmlStream, model) { const { map } = this; xmlStream.openNode(this.options.tagName); _2.each(this.map, (defn, tag) => { map[tag].xform.render(xmlStream, model[defn.prop]); }); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } if (this.map[node.name]) { this.parser = this.map[node.name].xform; return this.parser.parseOpen(node); } switch (node.name) { case this.options.tagName: this.model = {}; return true; default: return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser && !this.parser.parseClose(name)) { const item = this.map[name]; if (this.parser.model) { this.model[item.prop] = this.parser.model; } this.parser = void 0; return true; } switch (name) { case this.options.tagName: return false; default: return true; } } }; FontXform.OPTIONS = { tagName: "font", fontNameTag: "name" }; module2.exports = FontXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/fill-xform.js var require_fill_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/fill-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var ColorXform = require_color_xform(); var StopXform = class extends BaseXform { static { __name(this, "StopXform"); } constructor() { super(); this.map = { color: new ColorXform() }; } get tag() { return "stop"; } render(xmlStream, model) { xmlStream.openNode("stop"); xmlStream.addAttribute("position", model.position); this.map.color.render(xmlStream, model.color); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "stop": this.model = { position: parseFloat(node.attributes.position) }; return true; case "color": this.parser = this.map.color; this.parser.parseOpen(node); return true; default: return false; } } parseText() { } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.model.color = this.parser.model; this.parser = void 0; } return true; } return false; } }; var PatternFillXform = class extends BaseXform { static { __name(this, "PatternFillXform"); } constructor() { super(); this.map = { fgColor: new ColorXform("fgColor"), bgColor: new ColorXform("bgColor") }; } get name() { return "pattern"; } get tag() { return "patternFill"; } render(xmlStream, model) { xmlStream.openNode("patternFill"); xmlStream.addAttribute("patternType", model.pattern); if (model.fgColor) { this.map.fgColor.render(xmlStream, model.fgColor); } if (model.bgColor) { this.map.bgColor.render(xmlStream, model.bgColor); } xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "patternFill": this.model = { type: "pattern", pattern: node.attributes.patternType }; return true; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); return true; } return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { if (this.parser.model) { this.model[name] = this.parser.model; } this.parser = void 0; } return true; } return false; } }; var GradientFillXform = class extends BaseXform { static { __name(this, "GradientFillXform"); } constructor() { super(); this.map = { stop: new StopXform() }; } get name() { return "gradient"; } get tag() { return "gradientFill"; } render(xmlStream, model) { xmlStream.openNode("gradientFill"); switch (model.gradient) { case "angle": xmlStream.addAttribute("degree", model.degree); break; case "path": xmlStream.addAttribute("type", "path"); if (model.center.left) { xmlStream.addAttribute("left", model.center.left); if (model.center.right === void 0) { xmlStream.addAttribute("right", model.center.left); } } if (model.center.right) { xmlStream.addAttribute("right", model.center.right); } if (model.center.top) { xmlStream.addAttribute("top", model.center.top); if (model.center.bottom === void 0) { xmlStream.addAttribute("bottom", model.center.top); } } if (model.center.bottom) { xmlStream.addAttribute("bottom", model.center.bottom); } break; default: break; } const stopXform = this.map.stop; model.stops.forEach((stopModel) => { stopXform.render(xmlStream, stopModel); }); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "gradientFill": { const model = this.model = { stops: [] }; if (node.attributes.degree) { model.gradient = "angle"; model.degree = parseInt(node.attributes.degree, 10); } else if (node.attributes.type === "path") { model.gradient = "path"; model.center = { left: node.attributes.left ? parseFloat(node.attributes.left) : 0, top: node.attributes.top ? parseFloat(node.attributes.top) : 0 }; if (node.attributes.right !== node.attributes.left) { model.center.right = node.attributes.right ? parseFloat(node.attributes.right) : 0; } if (node.attributes.bottom !== node.attributes.top) { model.center.bottom = node.attributes.bottom ? parseFloat(node.attributes.bottom) : 0; } } return true; } case "stop": this.parser = this.map.stop; this.parser.parseOpen(node); return true; default: return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.model.stops.push(this.parser.model); this.parser = void 0; } return true; } return false; } }; var FillXform = class _FillXform extends BaseXform { static { __name(this, "FillXform"); } constructor() { super(); this.map = { patternFill: new PatternFillXform(), gradientFill: new GradientFillXform() }; } get tag() { return "fill"; } render(xmlStream, model) { xmlStream.addRollback(); xmlStream.openNode("fill"); switch (model.type) { case "pattern": this.map.patternFill.render(xmlStream, model); break; case "gradient": this.map.gradientFill.render(xmlStream, model); break; default: xmlStream.rollback(); return; } xmlStream.closeNode(); xmlStream.commit(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "fill": this.model = {}; return true; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); return true; } return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.model = this.parser.model; this.model.type = this.parser.name; this.parser = void 0; } return true; } return false; } validStyle(value) { return _FillXform.validPatternValues[value]; } }; FillXform.validPatternValues = [ "none", "solid", "darkVertical", "darkGray", "mediumGray", "lightGray", "gray125", "gray0625", "darkHorizontal", "darkVertical", "darkDown", "darkUp", "darkGrid", "darkTrellis", "lightHorizontal", "lightVertical", "lightDown", "lightUp", "lightGrid", "lightTrellis", "lightGrid" ].reduce((p, v) => { p[v] = true; return p; }, {}); FillXform.StopXform = StopXform; FillXform.PatternFillXform = PatternFillXform; FillXform.GradientFillXform = GradientFillXform; module2.exports = FillXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/border-xform.js var require_border_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/border-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var utils = require_utils21(); var ColorXform = require_color_xform(); var EdgeXform = class _EdgeXform extends BaseXform { static { __name(this, "EdgeXform"); } constructor(name) { super(); this.name = name; this.map = { color: new ColorXform() }; } get tag() { return this.name; } render(xmlStream, model, defaultColor) { const color = model && model.color || defaultColor || this.defaultColor; xmlStream.openNode(this.name); if (model && model.style) { xmlStream.addAttribute("style", model.style); if (color) { this.map.color.render(xmlStream, color); } } xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.name: { const { style } = node.attributes; if (style) { this.model = { style }; } else { this.model = void 0; } return true; } case "color": this.parser = this.map.color; this.parser.parseOpen(node); return true; default: return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } if (name === this.name) { if (this.map.color.model) { if (!this.model) { this.model = {}; } this.model.color = this.map.color.model; } } return false; } validStyle(value) { return _EdgeXform.validStyleValues[value]; } }; EdgeXform.validStyleValues = [ "thin", "dashed", "dotted", "dashDot", "hair", "dashDotDot", "slantDashDot", "mediumDashed", "mediumDashDotDot", "mediumDashDot", "medium", "double", "thick" ].reduce((p, v) => { p[v] = true; return p; }, {}); var BorderXform = class extends BaseXform { static { __name(this, "BorderXform"); } constructor() { super(); this.map = { top: new EdgeXform("top"), left: new EdgeXform("left"), bottom: new EdgeXform("bottom"), right: new EdgeXform("right"), diagonal: new EdgeXform("diagonal") }; } render(xmlStream, model) { const { color } = model; xmlStream.openNode("border"); if (model.diagonal && model.diagonal.style) { if (model.diagonal.up) { xmlStream.addAttribute("diagonalUp", "1"); } if (model.diagonal.down) { xmlStream.addAttribute("diagonalDown", "1"); } } function add(edgeModel, edgeXform) { if (edgeModel && !edgeModel.color && model.color) { edgeModel = { ...edgeModel, color: model.color }; } edgeXform.render(xmlStream, edgeModel, color); } __name(add, "add"); add(model.left, this.map.left); add(model.right, this.map.right); add(model.top, this.map.top); add(model.bottom, this.map.bottom); add(model.diagonal, this.map.diagonal); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "border": this.reset(); this.diagonalUp = utils.parseBoolean(node.attributes.diagonalUp); this.diagonalDown = utils.parseBoolean(node.attributes.diagonalDown); return true; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); return true; } return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } if (name === "border") { const model = this.model = {}; const add = /* @__PURE__ */ __name(function(key, edgeModel, extensions) { if (edgeModel) { if (extensions) { Object.assign(edgeModel, extensions); } model[key] = edgeModel; } }, "add"); add("left", this.map.left.model); add("right", this.map.right.model); add("top", this.map.top.model); add("bottom", this.map.bottom.model); add("diagonal", this.map.diagonal.model, { up: this.diagonalUp, down: this.diagonalDown }); } return false; } }; module2.exports = BorderXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/defaultnumformats.js var require_defaultnumformats = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/defaultnumformats.js"(exports2, module2) { module2.exports = { 0: { f: "General" }, 1: { f: "0" }, 2: { f: "0.00" }, 3: { f: "#,##0" }, 4: { f: "#,##0.00" }, 9: { f: "0%" }, 10: { f: "0.00%" }, 11: { f: "0.00E+00" }, 12: { f: "# ?/?" }, 13: { f: "# ??/??" }, 14: { f: "mm-dd-yy" }, 15: { f: "d-mmm-yy" }, 16: { f: "d-mmm" }, 17: { f: "mmm-yy" }, 18: { f: "h:mm AM/PM" }, 19: { f: "h:mm:ss AM/PM" }, 20: { f: "h:mm" }, 21: { f: "h:mm:ss" }, 22: { f: 'm/d/yy "h":mm' }, 27: { "zh-tw": "[$-404]e/m/d", "zh-cn": 'yyyy"\u5E74"m"\u6708"', "ja-jp": "[$-411]ge.m.d", "ko-kr": 'yyyy"\u5E74" mm"\u6708" dd"\u65E5"' }, 28: { "zh-tw": '[$-404]e"\u5E74"m"\u6708"d"\u65E5"', "zh-cn": 'm"\u6708"d"\u65E5"', "ja-jp": '[$-411]ggge"\u5E74"m"\u6708"d"\u65E5"', "ko-kr": "mm-dd" }, 29: { "zh-tw": '[$-404]e"\u5E74"m"\u6708"d"\u65E5"', "zh-cn": 'm"\u6708"d"\u65E5"', "ja-jp": '[$-411]ggge"\u5E74"m"\u6708"d"\u65E5"', "ko-kr": "mm-dd" }, 30: { "zh-tw": "m/d/yy ", "zh-cn": "m-d-yy", "ja-jp": "m/d/yy", "ko-kr": "mm-dd-yy" }, 31: { "zh-tw": 'yyyy"\u5E74"m"\u6708"d"\u65E5"', "zh-cn": 'yyyy"\u5E74"m"\u6708"d"\u65E5"', "ja-jp": 'yyyy"\u5E74"m"\u6708"d"\u65E5"', "ko-kr": 'yyyy"\uB144" mm"\uC6D4" dd"\uC77C"' }, 32: { "zh-tw": 'hh"\u6642"mm"\u5206"', "zh-cn": 'h"\u65F6"mm"\u5206"', "ja-jp": 'h"\u6642"mm"\u5206"', "ko-kr": 'h"\uC2DC" mm"\uBD84"' }, 33: { "zh-tw": 'hh"\u6642"mm"\u5206"ss"\u79D2"', "zh-cn": 'h"\u65F6"mm"\u5206"ss"\u79D2"', "ja-jp": 'h"\u6642"mm"\u5206"ss"\u79D2"', "ko-kr": 'h"\uC2DC" mm"\uBD84" ss"\uCD08"' }, 34: { "zh-tw": '\u4E0A\u5348/\u4E0B\u5348 hh"\u6642"mm"\u5206"', "zh-cn": '\u4E0A\u5348/\u4E0B\u5348 h"\u65F6"mm"\u5206"', "ja-jp": 'yyyy"\u5E74"m"\u6708"', "ko-kr": "yyyy-mm-dd" }, 35: { "zh-tw": '\u4E0A\u5348/\u4E0B\u5348 hh"\u6642"mm"\u5206"ss"\u79D2"', "zh-cn": '\u4E0A\u5348/\u4E0B\u5348 h"\u65F6"mm"\u5206"ss"\u79D2"', "ja-jp": 'm"\u6708"d"\u65E5"', "ko-kr": "yyyy-mm-dd" }, 36: { "zh-tw": "[$-404]e/m/d", "zh-cn": 'yyyy"\u5E74"m"\u6708"', "ja-jp": "[$-411]ge.m.d", "ko-kr": 'yyyy"\u5E74" mm"\u6708" dd"\u65E5"' }, 37: { f: "#,##0 ;(#,##0)" }, 38: { f: "#,##0 ;[Red](#,##0)" }, 39: { f: "#,##0.00 ;(#,##0.00)" }, 40: { f: "#,##0.00 ;[Red](#,##0.00)" }, 45: { f: "mm:ss" }, 46: { f: "[h]:mm:ss" }, 47: { f: "mmss.0" }, 48: { f: "##0.0E+0" }, 49: { f: "@" }, 50: { "zh-tw": "[$-404]e/m/d", "zh-cn": 'yyyy"\u5E74"m"\u6708"', "ja-jp": "[$-411]ge.m.d", "ko-kr": 'yyyy"\u5E74" mm"\u6708" dd"\u65E5"' }, 51: { "zh-tw": '[$-404]e"\u5E74"m"\u6708"d"\u65E5"', "zh-cn": 'm"\u6708"d"\u65E5"', "ja-jp": '[$-411]ggge"\u5E74"m"\u6708"d"\u65E5"', "ko-kr": "mm-dd" }, 52: { "zh-tw": '\u4E0A\u5348/\u4E0B\u5348 hh"\u6642"mm"\u5206"', "zh-cn": 'yyyy"\u5E74"m"\u6708"', "ja-jp": 'yyyy"\u5E74"m"\u6708"', "ko-kr": "yyyy-mm-dd" }, 53: { "zh-tw": '\u4E0A\u5348/\u4E0B\u5348 hh"\u6642"mm"\u5206"ss"\u79D2"', "zh-cn": 'm"\u6708"d"\u65E5"', "ja-jp": 'm"\u6708"d"\u65E5"', "ko-kr": "yyyy-mm-dd" }, 54: { "zh-tw": '[$-404]e"\u5E74"m"\u6708"d"\u65E5"', "zh-cn": 'm"\u6708"d"\u65E5"', "ja-jp": '[$-411]ggge"\u5E74"m"\u6708"d"\u65E5"', "ko-kr": "mm-dd" }, 55: { "zh-tw": '\u4E0A\u5348/\u4E0B\u5348 hh"\u6642"mm"\u5206"', "zh-cn": '\u4E0A\u5348/\u4E0B\u5348 h"\u65F6"mm"\u5206"', "ja-jp": 'yyyy"\u5E74"m"\u6708"', "ko-kr": "yyyy-mm-dd" }, 56: { "zh-tw": '\u4E0A\u5348/\u4E0B\u5348 hh"\u6642"mm"\u5206"ss"\u79D2"', "zh-cn": '\u4E0A\u5348/\u4E0B\u5348 h"\u65F6"mm"\u5206"ss"\u79D2"', "ja-jp": 'm"\u6708"d"\u65E5"', "ko-kr": "yyyy-mm-dd" }, 57: { "zh-tw": "[$-404]e/m/d", "zh-cn": 'yyyy"\u5E74"m"\u6708"', "ja-jp": "[$-411]ge.m.d", "ko-kr": 'yyyy"\u5E74" mm"\u6708" dd"\u65E5"' }, 58: { "zh-tw": '[$-404]e"\u5E74"m"\u6708"d"\u65E5"', "zh-cn": 'm"\u6708"d"\u65E5"', "ja-jp": '[$-411]ggge"\u5E74"m"\u6708"d"\u65E5"', "ko-kr": "mm-dd" }, 59: { "th-th": "t0" }, 60: { "th-th": "t0.00" }, 61: { "th-th": "t#,##0" }, 62: { "th-th": "t#,##0.00" }, 67: { "th-th": "t0%" }, 68: { "th-th": "t0.00%" }, 69: { "th-th": "t# ?/?" }, 70: { "th-th": "t# ??/??" }, 81: { "th-th": "d/m/bb" } }; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/numfmt-xform.js var require_numfmt_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/numfmt-xform.js"(exports2, module2) { var _2 = require_under_dash(); var defaultNumFormats = require_defaultnumformats(); var BaseXform = require_base_xform(); function hashDefaultFormats() { const hash = {}; _2.each(defaultNumFormats, (dnf, id) => { if (dnf.f) { hash[dnf.f] = parseInt(id, 10); } }); return hash; } __name(hashDefaultFormats, "hashDefaultFormats"); var defaultFmtHash = hashDefaultFormats(); var NumFmtXform = class extends BaseXform { static { __name(this, "NumFmtXform"); } constructor(id, formatCode) { super(); this.id = id; this.formatCode = formatCode; } get tag() { return "numFmt"; } render(xmlStream, model) { xmlStream.leafNode("numFmt", { numFmtId: model.id, formatCode: model.formatCode }); } parseOpen(node) { switch (node.name) { case "numFmt": this.model = { id: parseInt(node.attributes.numFmtId, 10), formatCode: node.attributes.formatCode.replace(/[\\](.)/g, "$1") }; return true; default: return false; } } parseText() { } parseClose() { return false; } }; NumFmtXform.getDefaultFmtId = /* @__PURE__ */ __name(function getDefaultFmtId(formatCode) { return defaultFmtHash[formatCode]; }, "getDefaultFmtId"); NumFmtXform.getDefaultFmtCode = /* @__PURE__ */ __name(function getDefaultFmtCode(numFmtId) { return defaultNumFormats[numFmtId] && defaultNumFormats[numFmtId].f; }, "getDefaultFmtCode"); module2.exports = NumFmtXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/alignment-xform.js var require_alignment_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/alignment-xform.js"(exports2, module2) { var Enums = require_enums5(); var utils = require_utils21(); var BaseXform = require_base_xform(); var validation = { horizontalValues: [ "left", "center", "right", "fill", "centerContinuous", "distributed", "justify" ].reduce((p, v) => { p[v] = true; return p; }, {}), horizontal(value) { return this.horizontalValues[value] ? value : void 0; }, verticalValues: ["top", "middle", "bottom", "distributed", "justify"].reduce((p, v) => { p[v] = true; return p; }, {}), vertical(value) { if (value === "middle") return "center"; return this.verticalValues[value] ? value : void 0; }, wrapText(value) { return value ? true : void 0; }, shrinkToFit(value) { return value ? true : void 0; }, textRotation(value) { switch (value) { case "vertical": return value; default: value = utils.validInt(value); return value >= -90 && value <= 90 ? value : void 0; } }, indent(value) { value = utils.validInt(value); return Math.max(0, value); }, readingOrder(value) { switch (value) { case "ltr": return Enums.ReadingOrder.LeftToRight; case "rtl": return Enums.ReadingOrder.RightToLeft; default: return void 0; } } }; var textRotationXform = { toXml(textRotation) { textRotation = validation.textRotation(textRotation); if (textRotation) { if (textRotation === "vertical") { return 255; } const tr = Math.round(textRotation); if (tr >= 0 && tr <= 90) { return tr; } if (tr < 0 && tr >= -90) { return 90 - tr; } } return void 0; }, toModel(textRotation) { const tr = utils.validInt(textRotation); if (tr !== void 0) { if (tr === 255) { return "vertical"; } if (tr >= 0 && tr <= 90) { return tr; } if (tr > 90 && tr <= 180) { return 90 - tr; } } return void 0; } }; var AlignmentXform = class extends BaseXform { static { __name(this, "AlignmentXform"); } get tag() { return "alignment"; } render(xmlStream, model) { xmlStream.addRollback(); xmlStream.openNode("alignment"); let isValid = false; function add(name, value) { if (value) { xmlStream.addAttribute(name, value); isValid = true; } } __name(add, "add"); add("horizontal", validation.horizontal(model.horizontal)); add("vertical", validation.vertical(model.vertical)); add("wrapText", validation.wrapText(model.wrapText) ? "1" : false); add("shrinkToFit", validation.shrinkToFit(model.shrinkToFit) ? "1" : false); add("indent", validation.indent(model.indent)); add("textRotation", textRotationXform.toXml(model.textRotation)); add("readingOrder", validation.readingOrder(model.readingOrder)); xmlStream.closeNode(); if (isValid) { xmlStream.commit(); } else { xmlStream.rollback(); } } parseOpen(node) { const model = {}; let valid = false; function add(truthy, name, value) { if (truthy) { model[name] = value; valid = true; } } __name(add, "add"); add(node.attributes.horizontal, "horizontal", node.attributes.horizontal); add( node.attributes.vertical, "vertical", node.attributes.vertical === "center" ? "middle" : node.attributes.vertical ); add(node.attributes.wrapText, "wrapText", utils.parseBoolean(node.attributes.wrapText)); add(node.attributes.shrinkToFit, "shrinkToFit", utils.parseBoolean(node.attributes.shrinkToFit)); add(node.attributes.indent, "indent", parseInt(node.attributes.indent, 10)); add( node.attributes.textRotation, "textRotation", textRotationXform.toModel(node.attributes.textRotation) ); add( node.attributes.readingOrder, "readingOrder", node.attributes.readingOrder === "2" ? "rtl" : "ltr" ); this.model = valid ? model : null; } parseText() { } parseClose() { return false; } }; module2.exports = AlignmentXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/protection-xform.js var require_protection_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/protection-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var validation = { boolean(value, dflt) { if (value === void 0) { return dflt; } return value; } }; var ProtectionXform = class extends BaseXform { static { __name(this, "ProtectionXform"); } get tag() { return "protection"; } render(xmlStream, model) { xmlStream.addRollback(); xmlStream.openNode("protection"); let isValid = false; function add(name, value) { if (value !== void 0) { xmlStream.addAttribute(name, value); isValid = true; } } __name(add, "add"); add("locked", validation.boolean(model.locked, true) ? void 0 : "0"); add("hidden", validation.boolean(model.hidden, false) ? "1" : void 0); xmlStream.closeNode(); if (isValid) { xmlStream.commit(); } else { xmlStream.rollback(); } } parseOpen(node) { const model = { locked: !(node.attributes.locked === "0"), hidden: node.attributes.hidden === "1" }; const isSignificant = !model.locked || model.hidden; this.model = isSignificant ? model : null; } parseText() { } parseClose() { return false; } }; module2.exports = ProtectionXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/style-xform.js var require_style_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/style-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var AlignmentXform = require_alignment_xform(); var ProtectionXform = require_protection_xform(); var StyleXform = class extends BaseXform { static { __name(this, "StyleXform"); } constructor(options) { super(); this.xfId = !!(options && options.xfId); this.map = { alignment: new AlignmentXform(), protection: new ProtectionXform() }; } get tag() { return "xf"; } render(xmlStream, model) { xmlStream.openNode("xf", { numFmtId: model.numFmtId || 0, fontId: model.fontId || 0, fillId: model.fillId || 0, borderId: model.borderId || 0 }); if (this.xfId) { xmlStream.addAttribute("xfId", model.xfId || 0); } if (model.numFmtId) { xmlStream.addAttribute("applyNumberFormat", "1"); } if (model.fontId) { xmlStream.addAttribute("applyFont", "1"); } if (model.fillId) { xmlStream.addAttribute("applyFill", "1"); } if (model.borderId) { xmlStream.addAttribute("applyBorder", "1"); } if (model.alignment) { xmlStream.addAttribute("applyAlignment", "1"); } if (model.protection) { xmlStream.addAttribute("applyProtection", "1"); } if (model.alignment) { this.map.alignment.render(xmlStream, model.alignment); } if (model.protection) { this.map.protection.render(xmlStream, model.protection); } xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "xf": this.model = { numFmtId: parseInt(node.attributes.numFmtId, 10), fontId: parseInt(node.attributes.fontId, 10), fillId: parseInt(node.attributes.fillId, 10), borderId: parseInt(node.attributes.borderId, 10) }; if (this.xfId) { this.model.xfId = parseInt(node.attributes.xfId, 10); } return true; case "alignment": this.parser = this.map.alignment; this.parser.parseOpen(node); return true; case "protection": this.parser = this.map.protection; this.parser.parseOpen(node); return true; default: return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { if (this.map.protection === this.parser) { this.model.protection = this.parser.model; } else { this.model.alignment = this.parser.model; } this.parser = void 0; } return true; } return name !== "xf"; } }; module2.exports = StyleXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/dxf-xform.js var require_dxf_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/dxf-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var AlignmentXform = require_alignment_xform(); var BorderXform = require_border_xform(); var FillXform = require_fill_xform(); var FontXform = require_font_xform(); var NumFmtXform = require_numfmt_xform(); var ProtectionXform = require_protection_xform(); var DxfXform = class extends BaseXform { static { __name(this, "DxfXform"); } constructor() { super(); this.map = { alignment: new AlignmentXform(), border: new BorderXform(), fill: new FillXform(), font: new FontXform(), numFmt: new NumFmtXform(), protection: new ProtectionXform() }; } get tag() { return "dxf"; } // how do we generate dxfid? render(xmlStream, model) { xmlStream.openNode(this.tag); if (model.font) { this.map.font.render(xmlStream, model.font); } if (model.numFmt && model.numFmtId) { const numFmtModel = { id: model.numFmtId, formatCode: model.numFmt }; this.map.numFmt.render(xmlStream, numFmtModel); } if (model.fill) { this.map.fill.render(xmlStream, model.fill); } if (model.alignment) { this.map.alignment.render(xmlStream, model.alignment); } if (model.border) { this.map.border.render(xmlStream, model.border); } if (model.protection) { this.map.protection.render(xmlStream, model.protection); } xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.reset(); return true; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } return true; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } if (name === this.tag) { this.model = { alignment: this.map.alignment.model, border: this.map.border.model, fill: this.map.fill.model, font: this.map.font.model, numFmt: this.map.numFmt.model, protection: this.map.protection.model }; return false; } return true; } }; module2.exports = DxfXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/styles-xform.js var require_styles_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/style/styles-xform.js"(exports2, module2) { var Enums = require_enums5(); var XmlStream = require_xml_stream(); var BaseXform = require_base_xform(); var StaticXform = require_static_xform(); var ListXform = require_list_xform(); var FontXform = require_font_xform(); var FillXform = require_fill_xform(); var BorderXform = require_border_xform(); var NumFmtXform = require_numfmt_xform(); var StyleXform = require_style_xform(); var DxfXform = require_dxf_xform(); var NUMFMT_BASE = 164; var StylesXform = class _StylesXform extends BaseXform { static { __name(this, "StylesXform"); } constructor(initialise) { super(); this.map = { numFmts: new ListXform({ tag: "numFmts", count: true, childXform: new NumFmtXform() }), fonts: new ListXform({ tag: "fonts", count: true, childXform: new FontXform(), $: { "x14ac:knownFonts": 1 } }), fills: new ListXform({ tag: "fills", count: true, childXform: new FillXform() }), borders: new ListXform({ tag: "borders", count: true, childXform: new BorderXform() }), cellStyleXfs: new ListXform({ tag: "cellStyleXfs", count: true, childXform: new StyleXform() }), cellXfs: new ListXform({ tag: "cellXfs", count: true, childXform: new StyleXform({ xfId: true }) }), dxfs: new ListXform({ tag: "dxfs", always: true, count: true, childXform: new DxfXform() }), // for style manager numFmt: new NumFmtXform(), font: new FontXform(), fill: new FillXform(), border: new BorderXform(), style: new StyleXform({ xfId: true }), cellStyles: _StylesXform.STATIC_XFORMS.cellStyles, tableStyles: _StylesXform.STATIC_XFORMS.tableStyles, extLst: _StylesXform.STATIC_XFORMS.extLst }; if (initialise) { this.init(); } } initIndex() { this.index = { style: {}, numFmt: {}, numFmtNextId: 164, // start custom format ids here font: {}, border: {}, fill: {} }; } init() { this.model = { styles: [], numFmts: [], fonts: [], borders: [], fills: [], dxfs: [] }; this.initIndex(); this._addBorder({}); this._addStyle({ numFmtId: 0, fontId: 0, fillId: 0, borderId: 0, xfId: 0 }); this._addFill({ type: "pattern", pattern: "none" }); this._addFill({ type: "pattern", pattern: "gray125" }); this.weakMap = /* @__PURE__ */ new WeakMap(); } render(xmlStream, model) { model = model || this.model; xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode("styleSheet", _StylesXform.STYLESHEET_ATTRIBUTES); if (this.index) { if (model.numFmts && model.numFmts.length) { xmlStream.openNode("numFmts", { count: model.numFmts.length }); model.numFmts.forEach((numFmtXml) => { xmlStream.writeXml(numFmtXml); }); xmlStream.closeNode(); } if (!model.fonts.length) { this._addFont({ size: 11, color: { theme: 1 }, name: "Calibri", family: 2, scheme: "minor" }); } xmlStream.openNode("fonts", { count: model.fonts.length, "x14ac:knownFonts": 1 }); model.fonts.forEach((fontXml) => { xmlStream.writeXml(fontXml); }); xmlStream.closeNode(); xmlStream.openNode("fills", { count: model.fills.length }); model.fills.forEach((fillXml) => { xmlStream.writeXml(fillXml); }); xmlStream.closeNode(); xmlStream.openNode("borders", { count: model.borders.length }); model.borders.forEach((borderXml) => { xmlStream.writeXml(borderXml); }); xmlStream.closeNode(); this.map.cellStyleXfs.render(xmlStream, [{ numFmtId: 0, fontId: 0, fillId: 0, borderId: 0, xfId: 0 }]); xmlStream.openNode("cellXfs", { count: model.styles.length }); model.styles.forEach((styleXml) => { xmlStream.writeXml(styleXml); }); xmlStream.closeNode(); } else { this.map.numFmts.render(xmlStream, model.numFmts); this.map.fonts.render(xmlStream, model.fonts); this.map.fills.render(xmlStream, model.fills); this.map.borders.render(xmlStream, model.borders); this.map.cellStyleXfs.render(xmlStream, [{ numFmtId: 0, fontId: 0, fillId: 0, borderId: 0, xfId: 0 }]); this.map.cellXfs.render(xmlStream, model.styles); } _StylesXform.STATIC_XFORMS.cellStyles.render(xmlStream); this.map.dxfs.render(xmlStream, model.dxfs); _StylesXform.STATIC_XFORMS.tableStyles.render(xmlStream); _StylesXform.STATIC_XFORMS.extLst.render(xmlStream); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "styleSheet": this.initIndex(); return true; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } return true; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case "styleSheet": { this.model = {}; const add = /* @__PURE__ */ __name((propName, xform) => { if (xform.model && xform.model.length) { this.model[propName] = xform.model; } }, "add"); add("numFmts", this.map.numFmts); add("fonts", this.map.fonts); add("fills", this.map.fills); add("borders", this.map.borders); add("styles", this.map.cellXfs); add("dxfs", this.map.dxfs); this.index = { model: [], numFmt: [] }; if (this.model.numFmts) { const numFmtIndex = this.index.numFmt; this.model.numFmts.forEach((numFmt) => { numFmtIndex[numFmt.id] = numFmt.formatCode; }); } return false; } default: return true; } } // add a cell's style model to the collection // each style property is processed and cross-referenced, etc. // the styleId is returned. Note: cellType is used when numFmt not defined addStyleModel(model, cellType) { if (!model) { return 0; } if (!this.model.fonts.length) { this._addFont({ size: 11, color: { theme: 1 }, name: "Calibri", family: 2, scheme: "minor" }); } if (this.weakMap && this.weakMap.has(model)) { return this.weakMap.get(model); } const style = {}; cellType = cellType || Enums.ValueType.Number; if (model.numFmt) { style.numFmtId = this._addNumFmtStr(model.numFmt); } else { switch (cellType) { case Enums.ValueType.Number: style.numFmtId = this._addNumFmtStr("General"); break; case Enums.ValueType.Date: style.numFmtId = this._addNumFmtStr("mm-dd-yy"); break; default: break; } } if (model.font) { style.fontId = this._addFont(model.font); } if (model.border) { style.borderId = this._addBorder(model.border); } if (model.fill) { style.fillId = this._addFill(model.fill); } if (model.alignment) { style.alignment = model.alignment; } if (model.protection) { style.protection = model.protection; } const styleId = this._addStyle(style); if (this.weakMap) { this.weakMap.set(model, styleId); } return styleId; } // given a styleId (i.e. s="n"), get the cell's style model // objects are shared where possible. getStyleModel(id) { const style = this.model.styles[id]; if (!style) return null; let model = this.index.model[id]; if (model) return model; model = this.index.model[id] = {}; if (style.numFmtId) { const numFmt = this.index.numFmt[style.numFmtId] || NumFmtXform.getDefaultFmtCode(style.numFmtId); if (numFmt) { model.numFmt = numFmt; } } function addStyle(name, group, styleId) { if (styleId || styleId === 0) { const part = group[styleId]; if (part) { model[name] = part; } } } __name(addStyle, "addStyle"); addStyle("font", this.model.fonts, style.fontId); addStyle("border", this.model.borders, style.borderId); addStyle("fill", this.model.fills, style.fillId); if (style.alignment) { model.alignment = style.alignment; } if (style.protection) { model.protection = style.protection; } return model; } addDxfStyle(style) { if (style.numFmt) { style.numFmtId = this._addNumFmtStr(style.numFmt); } this.model.dxfs.push(style); return this.model.dxfs.length - 1; } getDxfStyle(id) { return this.model.dxfs[id]; } // ========================================================================= // Private Interface _addStyle(style) { const xml = this.map.style.toXml(style); let index = this.index.style[xml]; if (index === void 0) { index = this.index.style[xml] = this.model.styles.length; this.model.styles.push(xml); } return index; } // ========================================================================= // Number Formats _addNumFmtStr(formatCode) { let index = NumFmtXform.getDefaultFmtId(formatCode); if (index !== void 0) return index; index = this.index.numFmt[formatCode]; if (index !== void 0) return index; index = this.index.numFmt[formatCode] = NUMFMT_BASE + this.model.numFmts.length; const xml = this.map.numFmt.toXml({ id: index, formatCode }); this.model.numFmts.push(xml); return index; } // ========================================================================= // Fonts _addFont(font) { const xml = this.map.font.toXml(font); let index = this.index.font[xml]; if (index === void 0) { index = this.index.font[xml] = this.model.fonts.length; this.model.fonts.push(xml); } return index; } // ========================================================================= // Borders _addBorder(border) { const xml = this.map.border.toXml(border); let index = this.index.border[xml]; if (index === void 0) { index = this.index.border[xml] = this.model.borders.length; this.model.borders.push(xml); } return index; } // ========================================================================= // Fills _addFill(fill) { const xml = this.map.fill.toXml(fill); let index = this.index.fill[xml]; if (index === void 0) { index = this.index.fill[xml] = this.model.fills.length; this.model.fills.push(xml); } return index; } // ========================================================================= }; StylesXform.STYLESHEET_ATTRIBUTES = { xmlns: "http://schemas.openxmlformats.org/spreadsheetml/2006/main", "xmlns:mc": "http://schemas.openxmlformats.org/markup-compatibility/2006", "mc:Ignorable": "x14ac x16r2", "xmlns:x14ac": "http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac", "xmlns:x16r2": "http://schemas.microsoft.com/office/spreadsheetml/2015/02/main" }; StylesXform.STATIC_XFORMS = { cellStyles: new StaticXform({ tag: "cellStyles", $: { count: 1 }, c: [{ tag: "cellStyle", $: { name: "Normal", xfId: 0, builtinId: 0 } }] }), dxfs: new StaticXform({ tag: "dxfs", $: { count: 0 } }), tableStyles: new StaticXform({ tag: "tableStyles", $: { count: 0, defaultTableStyle: "TableStyleMedium2", defaultPivotStyle: "PivotStyleLight16" } }), extLst: new StaticXform({ tag: "extLst", c: [ { tag: "ext", $: { uri: "{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}", "xmlns:x14": "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main" }, c: [{ tag: "x14:slicerStyles", $: { defaultSlicerStyle: "SlicerStyleLight1" } }] }, { tag: "ext", $: { uri: "{9260A510-F301-46a8-8635-F512D64BE5F5}", "xmlns:x15": "http://schemas.microsoft.com/office/spreadsheetml/2010/11/main" }, c: [{ tag: "x15:timelineStyles", $: { defaultTimelineStyle: "TimeSlicerStyleLight1" } }] } ] }) }; var StylesXformMock = class extends StylesXform { static { __name(this, "StylesXformMock"); } constructor() { super(); this.model = { styles: [{ numFmtId: 0, fontId: 0, fillId: 0, borderId: 0, xfId: 0 }], numFmts: [], fonts: [{ size: 11, color: { theme: 1 }, name: "Calibri", family: 2, scheme: "minor" }], borders: [{}], fills: [ { type: "pattern", pattern: "none" }, { type: "pattern", pattern: "gray125" } ] }; } // ========================================================================= // Style Manager Interface // override normal behaviour - consume and dispose parseStream(stream) { stream.autodrain(); return Promise.resolve(); } // add a cell's style model to the collection // each style property is processed and cross-referenced, etc. // the styleId is returned. Note: cellType is used when numFmt not defined addStyleModel(model, cellType) { switch (cellType) { case Enums.ValueType.Date: return this.dateStyleId; default: return 0; } } get dateStyleId() { if (!this._dateStyleId) { const dateStyle = { numFmtId: NumFmtXform.getDefaultFmtId("mm-dd-yy") }; this._dateStyleId = this.model.styles.length; this.model.styles.push(dateStyle); } return this._dateStyleId; } // given a styleId (i.e. s="n"), get the cell's style model // objects are shared where possible. getStyleModel() { return {}; } }; StylesXform.Mock = StylesXformMock; module2.exports = StylesXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/simple/date-xform.js var require_date_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/simple/date-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var DateXform = class extends BaseXform { static { __name(this, "DateXform"); } constructor(options) { super(); this.tag = options.tag; this.attr = options.attr; this.attrs = options.attrs; this._format = options.format || function(dt) { try { if (Number.isNaN(dt.getTime())) return ""; return dt.toISOString(); } catch (e) { return ""; } }; this._parse = options.parse || function(str) { return new Date(str); }; } render(xmlStream, model) { if (model) { xmlStream.openNode(this.tag); if (this.attrs) { xmlStream.addAttributes(this.attrs); } if (this.attr) { xmlStream.addAttribute(this.attr, this._format(model)); } else { xmlStream.writeText(this._format(model)); } xmlStream.closeNode(); } } parseOpen(node) { if (node.name === this.tag) { if (this.attr) { this.model = this._parse(node.attributes[this.attr]); } else { this.text = []; } } } parseText(text) { if (!this.attr) { this.text.push(text); } } parseClose() { if (!this.attr) { this.model = this._parse(this.text.join("")); } return false; } }; module2.exports = DateXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/core-xform.js var require_core_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/core-xform.js"(exports2, module2) { var XmlStream = require_xml_stream(); var BaseXform = require_base_xform(); var DateXform = require_date_xform(); var StringXform = require_string_xform(); var IntegerXform = require_integer_xform(); var CoreXform = class _CoreXform extends BaseXform { static { __name(this, "CoreXform"); } constructor() { super(); this.map = { "dc:creator": new StringXform({ tag: "dc:creator" }), "dc:title": new StringXform({ tag: "dc:title" }), "dc:subject": new StringXform({ tag: "dc:subject" }), "dc:description": new StringXform({ tag: "dc:description" }), "dc:identifier": new StringXform({ tag: "dc:identifier" }), "dc:language": new StringXform({ tag: "dc:language" }), "cp:keywords": new StringXform({ tag: "cp:keywords" }), "cp:category": new StringXform({ tag: "cp:category" }), "cp:lastModifiedBy": new StringXform({ tag: "cp:lastModifiedBy" }), "cp:lastPrinted": new DateXform({ tag: "cp:lastPrinted", format: _CoreXform.DateFormat }), "cp:revision": new IntegerXform({ tag: "cp:revision" }), "cp:version": new StringXform({ tag: "cp:version" }), "cp:contentStatus": new StringXform({ tag: "cp:contentStatus" }), "cp:contentType": new StringXform({ tag: "cp:contentType" }), "dcterms:created": new DateXform({ tag: "dcterms:created", attrs: _CoreXform.DateAttrs, format: _CoreXform.DateFormat }), "dcterms:modified": new DateXform({ tag: "dcterms:modified", attrs: _CoreXform.DateAttrs, format: _CoreXform.DateFormat }) }; } render(xmlStream, model) { xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode("cp:coreProperties", _CoreXform.CORE_PROPERTY_ATTRIBUTES); this.map["dc:creator"].render(xmlStream, model.creator); this.map["dc:title"].render(xmlStream, model.title); this.map["dc:subject"].render(xmlStream, model.subject); this.map["dc:description"].render(xmlStream, model.description); this.map["dc:identifier"].render(xmlStream, model.identifier); this.map["dc:language"].render(xmlStream, model.language); this.map["cp:keywords"].render(xmlStream, model.keywords); this.map["cp:category"].render(xmlStream, model.category); this.map["cp:lastModifiedBy"].render(xmlStream, model.lastModifiedBy); this.map["cp:lastPrinted"].render(xmlStream, model.lastPrinted); this.map["cp:revision"].render(xmlStream, model.revision); this.map["cp:version"].render(xmlStream, model.version); this.map["cp:contentStatus"].render(xmlStream, model.contentStatus); this.map["cp:contentType"].render(xmlStream, model.contentType); this.map["dcterms:created"].render(xmlStream, model.created); this.map["dcterms:modified"].render(xmlStream, model.modified); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "cp:coreProperties": case "coreProperties": return true; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); return true; } throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(node)}`); } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case "cp:coreProperties": case "coreProperties": this.model = { creator: this.map["dc:creator"].model, title: this.map["dc:title"].model, subject: this.map["dc:subject"].model, description: this.map["dc:description"].model, identifier: this.map["dc:identifier"].model, language: this.map["dc:language"].model, keywords: this.map["cp:keywords"].model, category: this.map["cp:category"].model, lastModifiedBy: this.map["cp:lastModifiedBy"].model, lastPrinted: this.map["cp:lastPrinted"].model, revision: this.map["cp:revision"].model, contentStatus: this.map["cp:contentStatus"].model, contentType: this.map["cp:contentType"].model, created: this.map["dcterms:created"].model, modified: this.map["dcterms:modified"].model }; return false; default: throw new Error(`Unexpected xml node in parseClose: ${name}`); } } }; CoreXform.DateFormat = function(dt) { return dt.toISOString().replace(/[.]\d{3}/, ""); }; CoreXform.DateAttrs = { "xsi:type": "dcterms:W3CDTF" }; CoreXform.CORE_PROPERTY_ATTRIBUTES = { "xmlns:cp": "http://schemas.openxmlformats.org/package/2006/metadata/core-properties", "xmlns:dc": "http://purl.org/dc/elements/1.1/", "xmlns:dcterms": "http://purl.org/dc/terms/", "xmlns:dcmitype": "http://purl.org/dc/dcmitype/", "xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance" }; module2.exports = CoreXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/strings/text-xform.js var require_text_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/strings/text-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var TextXform = class extends BaseXform { static { __name(this, "TextXform"); } get tag() { return "t"; } render(xmlStream, model) { xmlStream.openNode("t"); if (/^\s|\n|\s$/.test(model)) { xmlStream.addAttribute("xml:space", "preserve"); } xmlStream.writeText(model); xmlStream.closeNode(); } get model() { return this._text.join("").replace(/_x([0-9A-F]{4})_/g, ($0, $1) => String.fromCharCode(parseInt($1, 16))); } parseOpen(node) { switch (node.name) { case "t": this._text = []; return true; default: return false; } } parseText(text) { this._text.push(text); } parseClose() { return false; } }; module2.exports = TextXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/strings/rich-text-xform.js var require_rich_text_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/strings/rich-text-xform.js"(exports2, module2) { var TextXform = require_text_xform(); var FontXform = require_font_xform(); var BaseXform = require_base_xform(); var RichTextXform = class _RichTextXform extends BaseXform { static { __name(this, "RichTextXform"); } constructor(model) { super(); this.model = model; } get tag() { return "r"; } get textXform() { return this._textXform || (this._textXform = new TextXform()); } get fontXform() { return this._fontXform || (this._fontXform = new FontXform(_RichTextXform.FONT_OPTIONS)); } render(xmlStream, model) { model = model || this.model; xmlStream.openNode("r"); if (model.font) { this.fontXform.render(xmlStream, model.font); } this.textXform.render(xmlStream, model.text); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "r": this.model = {}; return true; case "t": this.parser = this.textXform; this.parser.parseOpen(node); return true; case "rPr": this.parser = this.fontXform; this.parser.parseOpen(node); return true; default: return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { switch (name) { case "r": return false; case "t": this.model.text = this.parser.model; this.parser = void 0; return true; case "rPr": this.model.font = this.parser.model; this.parser = void 0; return true; default: if (this.parser) { this.parser.parseClose(name); } return true; } } }; RichTextXform.FONT_OPTIONS = { tagName: "rPr", fontNameTag: "rFont" }; module2.exports = RichTextXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/strings/phonetic-text-xform.js var require_phonetic_text_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/strings/phonetic-text-xform.js"(exports2, module2) { var TextXform = require_text_xform(); var RichTextXform = require_rich_text_xform(); var BaseXform = require_base_xform(); var PhoneticTextXform = class extends BaseXform { static { __name(this, "PhoneticTextXform"); } constructor() { super(); this.map = { r: new RichTextXform(), t: new TextXform() }; } get tag() { return "rPh"; } render(xmlStream, model) { xmlStream.openNode(this.tag, { sb: model.sb || 0, eb: model.eb || 0 }); if (model && model.hasOwnProperty("richText") && model.richText) { const { r } = this.map; model.richText.forEach((text) => { r.render(xmlStream, text); }); } else if (model) { this.map.t.render(xmlStream, model.text); } xmlStream.closeNode(); } parseOpen(node) { const { name } = node; if (this.parser) { this.parser.parseOpen(node); return true; } if (name === this.tag) { this.model = { sb: parseInt(node.attributes.sb, 10), eb: parseInt(node.attributes.eb, 10) }; return true; } this.parser = this.map[name]; if (this.parser) { this.parser.parseOpen(node); return true; } return false; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { switch (name) { case "r": { let rt = this.model.richText; if (!rt) { rt = this.model.richText = []; } rt.push(this.parser.model); break; } case "t": this.model.text = this.parser.model; break; default: break; } this.parser = void 0; } return true; } switch (name) { case this.tag: return false; default: return true; } } }; module2.exports = PhoneticTextXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/strings/shared-string-xform.js var require_shared_string_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/strings/shared-string-xform.js"(exports2, module2) { var TextXform = require_text_xform(); var RichTextXform = require_rich_text_xform(); var PhoneticTextXform = require_phonetic_text_xform(); var BaseXform = require_base_xform(); var SharedStringXform = class extends BaseXform { static { __name(this, "SharedStringXform"); } constructor(model) { super(); this.model = model; this.map = { r: new RichTextXform(), t: new TextXform(), rPh: new PhoneticTextXform() }; } get tag() { return "si"; } render(xmlStream, model) { xmlStream.openNode(this.tag); if (model && model.hasOwnProperty("richText") && model.richText) { if (model.richText.length) { model.richText.forEach((text) => { this.map.r.render(xmlStream, text); }); } else { this.map.t.render(xmlStream, ""); } } else if (model !== void 0 && model !== null) { this.map.t.render(xmlStream, model); } xmlStream.closeNode(); } parseOpen(node) { const { name } = node; if (this.parser) { this.parser.parseOpen(node); return true; } if (name === this.tag) { this.model = {}; return true; } this.parser = this.map[name]; if (this.parser) { this.parser.parseOpen(node); return true; } return false; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { switch (name) { case "r": { let rt = this.model.richText; if (!rt) { rt = this.model.richText = []; } rt.push(this.parser.model); break; } case "t": this.model = this.parser.model; break; default: break; } this.parser = void 0; } return true; } switch (name) { case this.tag: return false; default: return true; } } }; module2.exports = SharedStringXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/strings/shared-strings-xform.js var require_shared_strings_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/strings/shared-strings-xform.js"(exports2, module2) { var XmlStream = require_xml_stream(); var BaseXform = require_base_xform(); var SharedStringXform = require_shared_string_xform(); var SharedStringsXform = class extends BaseXform { static { __name(this, "SharedStringsXform"); } constructor(model) { super(); this.model = model || { values: [], count: 0 }; this.hash = /* @__PURE__ */ Object.create(null); this.rich = /* @__PURE__ */ Object.create(null); } get sharedStringXform() { return this._sharedStringXform || (this._sharedStringXform = new SharedStringXform()); } get values() { return this.model.values; } get uniqueCount() { return this.model.values.length; } get count() { return this.model.count; } getString(index) { return this.model.values[index]; } add(value) { return value.richText ? this.addRichText(value) : this.addText(value); } addText(value) { let index = this.hash[value]; if (index === void 0) { index = this.hash[value] = this.model.values.length; this.model.values.push(value); } this.model.count++; return index; } addRichText(value) { const xml = this.sharedStringXform.toXml(value); let index = this.rich[xml]; if (index === void 0) { index = this.rich[xml] = this.model.values.length; this.model.values.push(value); } this.model.count++; return index; } // // // <%=text%> // // render(xmlStream, model) { model = model || this._values; xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode("sst", { xmlns: "http://schemas.openxmlformats.org/spreadsheetml/2006/main", count: model.count, uniqueCount: model.values.length }); const sx = this.sharedStringXform; model.values.forEach((sharedString) => { sx.render(xmlStream, sharedString); }); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "sst": return true; case "si": this.parser = this.sharedStringXform; this.parser.parseOpen(node); return true; default: throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(node)}`); } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.model.values.push(this.parser.model); this.model.count++; this.parser = void 0; } return true; } switch (name) { case "sst": return false; default: throw new Error(`Unexpected xml node in parseClose: ${name}`); } } }; module2.exports = SharedStringsXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/relationship-xform.js var require_relationship_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/relationship-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var RelationshipXform = class extends BaseXform { static { __name(this, "RelationshipXform"); } render(xmlStream, model) { xmlStream.leafNode("Relationship", model); } parseOpen(node) { switch (node.name) { case "Relationship": this.model = node.attributes; return true; default: return false; } } parseText() { } parseClose() { return false; } }; module2.exports = RelationshipXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/relationships-xform.js var require_relationships_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/relationships-xform.js"(exports2, module2) { var XmlStream = require_xml_stream(); var BaseXform = require_base_xform(); var RelationshipXform = require_relationship_xform(); var RelationshipsXform = class _RelationshipsXform extends BaseXform { static { __name(this, "RelationshipsXform"); } constructor() { super(); this.map = { Relationship: new RelationshipXform() }; } render(xmlStream, model) { model = model || this._values; xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode("Relationships", _RelationshipsXform.RELATIONSHIPS_ATTRIBUTES); model.forEach((relationship) => { this.map.Relationship.render(xmlStream, relationship); }); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "Relationships": this.model = []; return true; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); return true; } throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(node)}`); } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.model.push(this.parser.model); this.parser = void 0; } return true; } switch (name) { case "Relationships": return false; default: throw new Error(`Unexpected xml node in parseClose: ${name}`); } } }; RelationshipsXform.RELATIONSHIPS_ATTRIBUTES = { xmlns: "http://schemas.openxmlformats.org/package/2006/relationships" }; module2.exports = RelationshipsXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/content-types-xform.js var require_content_types_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/content-types-xform.js"(exports2, module2) { var XmlStream = require_xml_stream(); var BaseXform = require_base_xform(); var ContentTypesXform = class _ContentTypesXform extends BaseXform { static { __name(this, "ContentTypesXform"); } render(xmlStream, model) { xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode("Types", _ContentTypesXform.PROPERTY_ATTRIBUTES); const mediaHash = {}; (model.media || []).forEach((medium) => { if (medium.type === "image") { const imageType = medium.extension; if (!mediaHash[imageType]) { mediaHash[imageType] = true; xmlStream.leafNode("Default", { Extension: imageType, ContentType: `image/${imageType}` }); } } }); xmlStream.leafNode("Default", { Extension: "rels", ContentType: "application/vnd.openxmlformats-package.relationships+xml" }); xmlStream.leafNode("Default", { Extension: "xml", ContentType: "application/xml" }); xmlStream.leafNode("Override", { PartName: "/xl/workbook.xml", ContentType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml" }); model.worksheets.forEach((worksheet) => { const name = `/xl/worksheets/sheet${worksheet.id}.xml`; xmlStream.leafNode("Override", { PartName: name, ContentType: "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml" }); }); xmlStream.leafNode("Override", { PartName: "/xl/theme/theme1.xml", ContentType: "application/vnd.openxmlformats-officedocument.theme+xml" }); xmlStream.leafNode("Override", { PartName: "/xl/styles.xml", ContentType: "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml" }); const hasSharedStrings = model.sharedStrings && model.sharedStrings.count; if (hasSharedStrings) { xmlStream.leafNode("Override", { PartName: "/xl/sharedStrings.xml", ContentType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml" }); } if (model.tables) { model.tables.forEach((table) => { xmlStream.leafNode("Override", { PartName: `/xl/tables/${table.target}`, ContentType: "application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml" }); }); } if (model.drawings) { model.drawings.forEach((drawing) => { xmlStream.leafNode("Override", { PartName: `/xl/drawings/${drawing.name}.xml`, ContentType: "application/vnd.openxmlformats-officedocument.drawing+xml" }); }); } if (model.commentRefs) { xmlStream.leafNode("Default", { Extension: "vml", ContentType: "application/vnd.openxmlformats-officedocument.vmlDrawing" }); model.commentRefs.forEach(({ commentName }) => { xmlStream.leafNode("Override", { PartName: `/xl/${commentName}.xml`, ContentType: "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml" }); }); } xmlStream.leafNode("Override", { PartName: "/docProps/core.xml", ContentType: "application/vnd.openxmlformats-package.core-properties+xml" }); xmlStream.leafNode("Override", { PartName: "/docProps/app.xml", ContentType: "application/vnd.openxmlformats-officedocument.extended-properties+xml" }); xmlStream.closeNode(); } parseOpen() { return false; } parseText() { } parseClose() { return false; } }; ContentTypesXform.PROPERTY_ATTRIBUTES = { xmlns: "http://schemas.openxmlformats.org/package/2006/content-types" }; module2.exports = ContentTypesXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/app-heading-pairs-xform.js var require_app_heading_pairs_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/app-heading-pairs-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var AppHeadingPairsXform = class extends BaseXform { static { __name(this, "AppHeadingPairsXform"); } render(xmlStream, model) { xmlStream.openNode("HeadingPairs"); xmlStream.openNode("vt:vector", { size: 2, baseType: "variant" }); xmlStream.openNode("vt:variant"); xmlStream.leafNode("vt:lpstr", void 0, "Worksheets"); xmlStream.closeNode(); xmlStream.openNode("vt:variant"); xmlStream.leafNode("vt:i4", void 0, model.length); xmlStream.closeNode(); xmlStream.closeNode(); xmlStream.closeNode(); } parseOpen(node) { return node.name === "HeadingPairs"; } parseText() { } parseClose(name) { return name !== "HeadingPairs"; } }; module2.exports = AppHeadingPairsXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/app-titles-of-parts-xform.js var require_app_titles_of_parts_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/app-titles-of-parts-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var AppTitlesOfPartsXform = class extends BaseXform { static { __name(this, "AppTitlesOfPartsXform"); } render(xmlStream, model) { xmlStream.openNode("TitlesOfParts"); xmlStream.openNode("vt:vector", { size: model.length, baseType: "lpstr" }); model.forEach((sheet) => { xmlStream.leafNode("vt:lpstr", void 0, sheet.name); }); xmlStream.closeNode(); xmlStream.closeNode(); } parseOpen(node) { return node.name === "TitlesOfParts"; } parseText() { } parseClose(name) { return name !== "TitlesOfParts"; } }; module2.exports = AppTitlesOfPartsXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/app-xform.js var require_app_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/core/app-xform.js"(exports2, module2) { var XmlStream = require_xml_stream(); var BaseXform = require_base_xform(); var StringXform = require_string_xform(); var AppHeadingPairsXform = require_app_heading_pairs_xform(); var AppTitleOfPartsXform = require_app_titles_of_parts_xform(); var AppXform = class _AppXform extends BaseXform { static { __name(this, "AppXform"); } constructor() { super(); this.map = { Company: new StringXform({ tag: "Company" }), Manager: new StringXform({ tag: "Manager" }), HeadingPairs: new AppHeadingPairsXform(), TitleOfParts: new AppTitleOfPartsXform() }; } render(xmlStream, model) { xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode("Properties", _AppXform.PROPERTY_ATTRIBUTES); xmlStream.leafNode("Application", void 0, "Microsoft Excel"); xmlStream.leafNode("DocSecurity", void 0, "0"); xmlStream.leafNode("ScaleCrop", void 0, "false"); this.map.HeadingPairs.render(xmlStream, model.worksheets); this.map.TitleOfParts.render(xmlStream, model.worksheets); this.map.Company.render(xmlStream, model.company || ""); this.map.Manager.render(xmlStream, model.manager); xmlStream.leafNode("LinksUpToDate", void 0, "false"); xmlStream.leafNode("SharedDoc", void 0, "false"); xmlStream.leafNode("HyperlinksChanged", void 0, "false"); xmlStream.leafNode("AppVersion", void 0, "16.0300"); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "Properties": return true; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); return true; } return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case "Properties": this.model = { worksheets: this.map.TitleOfParts.model, company: this.map.Company.model, manager: this.map.Manager.model }; return false; default: return true; } } }; AppXform.DateFormat = function(dt) { return dt.toISOString().replace(/[.]\d{3,6}/, ""); }; AppXform.DateAttrs = { "xsi:type": "dcterms:W3CDTF" }; AppXform.PROPERTY_ATTRIBUTES = { xmlns: "http://schemas.openxmlformats.org/officeDocument/2006/extended-properties", "xmlns:vt": "http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes" }; module2.exports = AppXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/defined-name-xform.js var require_defined_name_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/defined-name-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var colCache = require_col_cache(); var DefinedNamesXform = class extends BaseXform { static { __name(this, "DefinedNamesXform"); } render(xmlStream, model) { xmlStream.openNode("definedName", { name: model.name, localSheetId: model.localSheetId }); xmlStream.writeText(model.ranges.join(",")); xmlStream.closeNode(); } parseOpen(node) { switch (node.name) { case "definedName": this._parsedName = node.attributes.name; this._parsedLocalSheetId = node.attributes.localSheetId; this._parsedText = []; return true; default: return false; } } parseText(text) { this._parsedText.push(text); } parseClose() { this.model = { name: this._parsedName, ranges: extractRanges(this._parsedText.join("")) }; if (this._parsedLocalSheetId !== void 0) { this.model.localSheetId = parseInt(this._parsedLocalSheetId, 10); } return false; } }; function isValidRange(range) { try { colCache.decodeEx(range); return true; } catch (err) { return false; } } __name(isValidRange, "isValidRange"); function extractRanges(parsedText) { const ranges = []; let quotesOpened = false; let last = ""; parsedText.split(",").forEach((item) => { if (!item) { return; } const quotes = (item.match(/'/g) || []).length; if (!quotes) { if (quotesOpened) { last += `${item},`; } else if (isValidRange(item)) { ranges.push(item); } return; } const quotesEven = quotes % 2 === 0; if (!quotesOpened && quotesEven && isValidRange(item)) { ranges.push(item); } else if (quotesOpened && !quotesEven) { quotesOpened = false; if (isValidRange(last + item)) { ranges.push(last + item); } last = ""; } else { quotesOpened = true; last += `${item},`; } }); return ranges; } __name(extractRanges, "extractRanges"); module2.exports = DefinedNamesXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/sheet-xform.js var require_sheet_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/sheet-xform.js"(exports2, module2) { var utils = require_utils21(); var BaseXform = require_base_xform(); var WorksheetXform = class extends BaseXform { static { __name(this, "WorksheetXform"); } render(xmlStream, model) { xmlStream.leafNode("sheet", { sheetId: model.id, name: model.name, state: model.state, "r:id": model.rId }); } parseOpen(node) { if (node.name === "sheet") { this.model = { name: utils.xmlDecode(node.attributes.name), id: parseInt(node.attributes.sheetId, 10), state: node.attributes.state, rId: node.attributes["r:id"] }; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = WorksheetXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/workbook-view-xform.js var require_workbook_view_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/workbook-view-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var WorkbookViewXform = class extends BaseXform { static { __name(this, "WorkbookViewXform"); } render(xmlStream, model) { const attributes = { xWindow: model.x || 0, yWindow: model.y || 0, windowWidth: model.width || 12e3, windowHeight: model.height || 24e3, firstSheet: model.firstSheet, activeTab: model.activeTab }; if (model.visibility && model.visibility !== "visible") { attributes.visibility = model.visibility; } xmlStream.leafNode("workbookView", attributes); } parseOpen(node) { if (node.name === "workbookView") { const model = this.model = {}; const addS = /* @__PURE__ */ __name(function(name, value, dflt) { const s = value !== void 0 ? model[name] = value : dflt; if (s !== void 0) { model[name] = s; } }, "addS"); const addN = /* @__PURE__ */ __name(function(name, value, dflt) { const n = value !== void 0 ? model[name] = parseInt(value, 10) : dflt; if (n !== void 0) { model[name] = n; } }, "addN"); addN("x", node.attributes.xWindow, 0); addN("y", node.attributes.yWindow, 0); addN("width", node.attributes.windowWidth, 25e3); addN("height", node.attributes.windowHeight, 1e4); addS("visibility", node.attributes.visibility, "visible"); addN("activeTab", node.attributes.activeTab, void 0); addN("firstSheet", node.attributes.firstSheet, void 0); return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = WorkbookViewXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/workbook-properties-xform.js var require_workbook_properties_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/workbook-properties-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var WorksheetPropertiesXform = class extends BaseXform { static { __name(this, "WorksheetPropertiesXform"); } render(xmlStream, model) { xmlStream.leafNode("workbookPr", { date1904: model.date1904 ? 1 : void 0, defaultThemeVersion: 164011, filterPrivacy: 1 }); } parseOpen(node) { if (node.name === "workbookPr") { this.model = { date1904: node.attributes.date1904 === "1" }; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = WorksheetPropertiesXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/workbook-calc-properties-xform.js var require_workbook_calc_properties_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/workbook-calc-properties-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var WorkbookCalcPropertiesXform = class extends BaseXform { static { __name(this, "WorkbookCalcPropertiesXform"); } render(xmlStream, model) { xmlStream.leafNode("calcPr", { calcId: 171027, fullCalcOnLoad: model.fullCalcOnLoad ? 1 : void 0 }); } parseOpen(node) { if (node.name === "calcPr") { this.model = {}; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = WorkbookCalcPropertiesXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/workbook-xform.js var require_workbook_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/book/workbook-xform.js"(exports2, module2) { var _2 = require_under_dash(); var colCache = require_col_cache(); var XmlStream = require_xml_stream(); var BaseXform = require_base_xform(); var StaticXform = require_static_xform(); var ListXform = require_list_xform(); var DefinedNameXform = require_defined_name_xform(); var SheetXform = require_sheet_xform(); var WorkbookViewXform = require_workbook_view_xform(); var WorkbookPropertiesXform = require_workbook_properties_xform(); var WorkbookCalcPropertiesXform = require_workbook_calc_properties_xform(); var WorkbookXform = class _WorkbookXform extends BaseXform { static { __name(this, "WorkbookXform"); } constructor() { super(); this.map = { fileVersion: _WorkbookXform.STATIC_XFORMS.fileVersion, workbookPr: new WorkbookPropertiesXform(), bookViews: new ListXform({ tag: "bookViews", count: false, childXform: new WorkbookViewXform() }), sheets: new ListXform({ tag: "sheets", count: false, childXform: new SheetXform() }), definedNames: new ListXform({ tag: "definedNames", count: false, childXform: new DefinedNameXform() }), calcPr: new WorkbookCalcPropertiesXform() }; } prepare(model) { model.sheets = model.worksheets; const printAreas = []; let index = 0; model.sheets.forEach((sheet) => { if (sheet.pageSetup && sheet.pageSetup.printArea) { sheet.pageSetup.printArea.split("&&").forEach((printArea) => { const printAreaComponents = printArea.split(":"); const definedName = { name: "_xlnm.Print_Area", ranges: [`'${sheet.name}'!$${printAreaComponents[0]}:$${printAreaComponents[1]}`], localSheetId: index }; printAreas.push(definedName); }); } if (sheet.pageSetup && (sheet.pageSetup.printTitlesRow || sheet.pageSetup.printTitlesColumn)) { const ranges = []; if (sheet.pageSetup.printTitlesColumn) { const titlesColumns = sheet.pageSetup.printTitlesColumn.split(":"); ranges.push(`'${sheet.name}'!$${titlesColumns[0]}:$${titlesColumns[1]}`); } if (sheet.pageSetup.printTitlesRow) { const titlesRows = sheet.pageSetup.printTitlesRow.split(":"); ranges.push(`'${sheet.name}'!$${titlesRows[0]}:$${titlesRows[1]}`); } const definedName = { name: "_xlnm.Print_Titles", ranges, localSheetId: index }; printAreas.push(definedName); } index++; }); if (printAreas.length) { model.definedNames = model.definedNames.concat(printAreas); } (model.media || []).forEach((medium, i) => { medium.name = medium.type + (i + 1); }); } render(xmlStream, model) { xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode("workbook", _WorkbookXform.WORKBOOK_ATTRIBUTES); this.map.fileVersion.render(xmlStream); this.map.workbookPr.render(xmlStream, model.properties); this.map.bookViews.render(xmlStream, model.views); this.map.sheets.render(xmlStream, model.sheets); this.map.definedNames.render(xmlStream, model.definedNames); this.map.calcPr.render(xmlStream, model.calcProperties); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "workbook": return true; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } return true; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case "workbook": this.model = { sheets: this.map.sheets.model, properties: this.map.workbookPr.model || {}, views: this.map.bookViews.model, calcProperties: {} }; if (this.map.definedNames.model) { this.model.definedNames = this.map.definedNames.model; } return false; default: return true; } } reconcile(model) { const rels = (model.workbookRels || []).reduce((map, rel) => { map[rel.Id] = rel; return map; }, {}); const worksheets = []; let worksheet; let index = 0; (model.sheets || []).forEach((sheet) => { const rel = rels[sheet.rId]; if (!rel) { return; } worksheet = model.worksheetHash[`xl/${rel.Target.replace(/^(\s|\/xl\/)+/, "")}`]; if (worksheet) { worksheet.name = sheet.name; worksheet.id = sheet.id; worksheet.state = sheet.state; worksheets[index++] = worksheet; } }); const definedNames = []; _2.each(model.definedNames, (definedName) => { if (definedName.name === "_xlnm.Print_Area") { worksheet = worksheets[definedName.localSheetId]; if (worksheet) { if (!worksheet.pageSetup) { worksheet.pageSetup = {}; } const range = colCache.decodeEx(definedName.ranges[0]); worksheet.pageSetup.printArea = worksheet.pageSetup.printArea ? `${worksheet.pageSetup.printArea}&&${range.dimensions}` : range.dimensions; } } else if (definedName.name === "_xlnm.Print_Titles") { worksheet = worksheets[definedName.localSheetId]; if (worksheet) { if (!worksheet.pageSetup) { worksheet.pageSetup = {}; } const rangeString = definedName.ranges.join(","); const dollarRegex = /\$/g; const rowRangeRegex = /\$\d+:\$\d+/; const rowRangeMatches = rangeString.match(rowRangeRegex); if (rowRangeMatches && rowRangeMatches.length) { const range = rowRangeMatches[0]; worksheet.pageSetup.printTitlesRow = range.replace(dollarRegex, ""); } const columnRangeRegex = /\$[A-Z]+:\$[A-Z]+/; const columnRangeMatches = rangeString.match(columnRangeRegex); if (columnRangeMatches && columnRangeMatches.length) { const range = columnRangeMatches[0]; worksheet.pageSetup.printTitlesColumn = range.replace(dollarRegex, ""); } } } else { definedNames.push(definedName); } }); model.definedNames = definedNames; model.media.forEach((media, i) => { media.index = i; }); } }; WorkbookXform.WORKBOOK_ATTRIBUTES = { xmlns: "http://schemas.openxmlformats.org/spreadsheetml/2006/main", "xmlns:r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships", "xmlns:mc": "http://schemas.openxmlformats.org/markup-compatibility/2006", "mc:Ignorable": "x15", "xmlns:x15": "http://schemas.microsoft.com/office/spreadsheetml/2010/11/main" }; WorkbookXform.STATIC_XFORMS = { fileVersion: new StaticXform({ tag: "fileVersion", $: { appName: "xl", lastEdited: 5, lowestEdited: 5, rupBuild: 9303 } }) }; module2.exports = WorkbookXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/rel-type.js var require_rel_type = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/rel-type.js"(exports2, module2) { "use strict"; module2.exports = { OfficeDocument: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument", Worksheet: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet", CalcChain: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/calcChain", SharedStrings: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings", Styles: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles", Theme: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme", Hyperlink: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink", Image: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image", CoreProperties: "http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties", ExtenderProperties: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties", Comments: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments", VmlDrawing: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing", Table: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/table" }; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/merges.js var require_merges = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/merges.js"(exports2, module2) { var _2 = require_under_dash(); var Range = require_range4(); var colCache = require_col_cache(); var Enums = require_enums5(); var Merges = class { static { __name(this, "Merges"); } constructor() { this.merges = {}; } add(merge) { if (this.merges[merge.master]) { this.merges[merge.master].expandToAddress(merge.address); } else { const range = `${merge.master}:${merge.address}`; this.merges[merge.master] = new Range(range); } } get mergeCells() { return _2.map(this.merges, (merge) => merge.range); } reconcile(mergeCells, rows) { _2.each(mergeCells, (merge) => { const dimensions = colCache.decode(merge); for (let i = dimensions.top; i <= dimensions.bottom; i++) { const row = rows[i - 1]; for (let j = dimensions.left; j <= dimensions.right; j++) { const cell = row.cells[j - 1]; if (!cell) { row.cells[j] = { type: Enums.ValueType.Null, address: colCache.encodeAddress(i, j) }; } else if (cell.type === Enums.ValueType.Merge) { cell.master = dimensions.tl; } } } }); } getMasterAddress(address) { const range = this.hash[address]; return range && range.tl; } }; module2.exports = Merges; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cell-xform.js var require_cell_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cell-xform.js"(exports2, module2) { var utils = require_utils21(); var BaseXform = require_base_xform(); var Range = require_range4(); var Enums = require_enums5(); var RichTextXform = require_rich_text_xform(); function getValueType(v) { if (v === null || v === void 0) { return Enums.ValueType.Null; } if (v instanceof String || typeof v === "string") { return Enums.ValueType.String; } if (typeof v === "number") { return Enums.ValueType.Number; } if (typeof v === "boolean") { return Enums.ValueType.Boolean; } if (v instanceof Date) { return Enums.ValueType.Date; } if (v.text && v.hyperlink) { return Enums.ValueType.Hyperlink; } if (v.formula) { return Enums.ValueType.Formula; } if (v.error) { return Enums.ValueType.Error; } throw new Error("I could not understand type of value"); } __name(getValueType, "getValueType"); function getEffectiveCellType(cell) { switch (cell.type) { case Enums.ValueType.Formula: return getValueType(cell.result); default: return cell.type; } } __name(getEffectiveCellType, "getEffectiveCellType"); var CellXform = class extends BaseXform { static { __name(this, "CellXform"); } constructor() { super(); this.richTextXForm = new RichTextXform(); } get tag() { return "c"; } prepare(model, options) { const styleId = options.styles.addStyleModel(model.style || {}, getEffectiveCellType(model)); if (styleId) { model.styleId = styleId; } if (model.comment) { options.comments.push({ ...model.comment, ref: model.address }); } switch (model.type) { case Enums.ValueType.String: case Enums.ValueType.RichText: if (options.sharedStrings) { model.ssId = options.sharedStrings.add(model.value); } break; case Enums.ValueType.Date: if (options.date1904) { model.date1904 = true; } break; case Enums.ValueType.Hyperlink: if (options.sharedStrings && model.text !== void 0 && model.text !== null) { model.ssId = options.sharedStrings.add(model.text); } options.hyperlinks.push({ address: model.address, target: model.hyperlink, tooltip: model.tooltip }); break; case Enums.ValueType.Merge: options.merges.add(model); break; case Enums.ValueType.Formula: if (options.date1904) { model.date1904 = true; } if (model.shareType === "shared") { model.si = options.siFormulae++; } if (model.formula) { options.formulae[model.address] = model; } else if (model.sharedFormula) { const master = options.formulae[model.sharedFormula]; if (!master) { throw new Error( `Shared Formula master must exist above and or left of clone for cell ${model.address}` ); } if (master.si === void 0) { master.shareType = "shared"; master.si = options.siFormulae++; master.range = new Range(master.address, model.address); } else if (master.range) { master.range.expandToAddress(model.address); } model.si = master.si; } break; default: break; } } renderFormula(xmlStream, model) { let attrs = null; switch (model.shareType) { case "shared": attrs = { t: "shared", ref: model.ref || model.range.range, si: model.si }; break; case "array": attrs = { t: "array", ref: model.ref }; break; default: if (model.si !== void 0) { attrs = { t: "shared", si: model.si }; } break; } switch (getValueType(model.result)) { case Enums.ValueType.Null: xmlStream.leafNode("f", attrs, model.formula); break; case Enums.ValueType.String: xmlStream.addAttribute("t", "str"); xmlStream.leafNode("f", attrs, model.formula); xmlStream.leafNode("v", null, model.result); break; case Enums.ValueType.Number: xmlStream.leafNode("f", attrs, model.formula); xmlStream.leafNode("v", null, model.result); break; case Enums.ValueType.Boolean: xmlStream.addAttribute("t", "b"); xmlStream.leafNode("f", attrs, model.formula); xmlStream.leafNode("v", null, model.result ? 1 : 0); break; case Enums.ValueType.Error: xmlStream.addAttribute("t", "e"); xmlStream.leafNode("f", attrs, model.formula); xmlStream.leafNode("v", null, model.result.error); break; case Enums.ValueType.Date: xmlStream.leafNode("f", attrs, model.formula); xmlStream.leafNode("v", null, utils.dateToExcel(model.result, model.date1904)); break; // case Enums.ValueType.Hyperlink: // ?? // case Enums.ValueType.Formula: default: throw new Error("I could not understand type of value"); } } render(xmlStream, model) { if (model.type === Enums.ValueType.Null && !model.styleId) { return; } xmlStream.openNode("c"); xmlStream.addAttribute("r", model.address); if (model.styleId) { xmlStream.addAttribute("s", model.styleId); } switch (model.type) { case Enums.ValueType.Null: break; case Enums.ValueType.Number: xmlStream.leafNode("v", null, model.value); break; case Enums.ValueType.Boolean: xmlStream.addAttribute("t", "b"); xmlStream.leafNode("v", null, model.value ? "1" : "0"); break; case Enums.ValueType.Error: xmlStream.addAttribute("t", "e"); xmlStream.leafNode("v", null, model.value.error); break; case Enums.ValueType.String: case Enums.ValueType.RichText: if (model.ssId !== void 0) { xmlStream.addAttribute("t", "s"); xmlStream.leafNode("v", null, model.ssId); } else if (model.value && model.value.richText) { xmlStream.addAttribute("t", "inlineStr"); xmlStream.openNode("is"); model.value.richText.forEach((text) => { this.richTextXForm.render(xmlStream, text); }); xmlStream.closeNode("is"); } else { xmlStream.addAttribute("t", "str"); xmlStream.leafNode("v", null, model.value); } break; case Enums.ValueType.Date: xmlStream.leafNode("v", null, utils.dateToExcel(model.value, model.date1904)); break; case Enums.ValueType.Hyperlink: if (model.ssId !== void 0) { xmlStream.addAttribute("t", "s"); xmlStream.leafNode("v", null, model.ssId); } else { xmlStream.addAttribute("t", "str"); xmlStream.leafNode("v", null, model.text); } break; case Enums.ValueType.Formula: this.renderFormula(xmlStream, model); break; case Enums.ValueType.Merge: break; default: break; } xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "c": this.model = { address: node.attributes.r }; this.t = node.attributes.t; if (node.attributes.s) { this.model.styleId = parseInt(node.attributes.s, 10); } return true; case "f": this.currentNode = "f"; this.model.si = node.attributes.si; this.model.shareType = node.attributes.t; this.model.ref = node.attributes.ref; return true; case "v": this.currentNode = "v"; return true; case "t": this.currentNode = "t"; return true; case "r": this.parser = this.richTextXForm; this.parser.parseOpen(node); return true; default: return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); return; } switch (this.currentNode) { case "f": this.model.formula = this.model.formula ? this.model.formula + text : text; break; case "v": case "t": if (this.model.value && this.model.value.richText) { this.model.value.richText.text = this.model.value.richText.text ? this.model.value.richText.text + text : text; } else { this.model.value = this.model.value ? this.model.value + text : text; } break; default: break; } } parseClose(name) { switch (name) { case "c": { const { model } = this; if (model.formula || model.shareType) { model.type = Enums.ValueType.Formula; if (model.value) { if (this.t === "str") { model.result = utils.xmlDecode(model.value); } else if (this.t === "b") { model.result = parseInt(model.value, 10) !== 0; } else if (this.t === "e") { model.result = { error: model.value }; } else { model.result = parseFloat(model.value); } model.value = void 0; } } else if (model.value !== void 0) { switch (this.t) { case "s": model.type = Enums.ValueType.String; model.value = parseInt(model.value, 10); break; case "str": model.type = Enums.ValueType.String; model.value = utils.xmlDecode(model.value); break; case "inlineStr": model.type = Enums.ValueType.String; break; case "b": model.type = Enums.ValueType.Boolean; model.value = parseInt(model.value, 10) !== 0; break; case "e": model.type = Enums.ValueType.Error; model.value = { error: model.value }; break; default: model.type = Enums.ValueType.Number; model.value = parseFloat(model.value); break; } } else if (model.styleId) { model.type = Enums.ValueType.Null; } else { model.type = Enums.ValueType.Merge; } return false; } case "f": case "v": case "is": this.currentNode = void 0; return true; case "t": if (this.parser) { this.parser.parseClose(name); return true; } this.currentNode = void 0; return true; case "r": this.model.value = this.model.value || {}; this.model.value.richText = this.model.value.richText || []; this.model.value.richText.push(this.parser.model); this.parser = void 0; this.currentNode = void 0; return true; default: if (this.parser) { this.parser.parseClose(name); return true; } return false; } } reconcile(model, options) { const style = model.styleId && options.styles && options.styles.getStyleModel(model.styleId); if (style) { model.style = style; } if (model.styleId !== void 0) { model.styleId = void 0; } switch (model.type) { case Enums.ValueType.String: if (typeof model.value === "number") { if (options.sharedStrings) { model.value = options.sharedStrings.getString(model.value); } } if (model.value.richText) { model.type = Enums.ValueType.RichText; } break; case Enums.ValueType.Number: if (style && utils.isDateFmt(style.numFmt)) { model.type = Enums.ValueType.Date; model.value = utils.excelToDate(model.value, options.date1904); } break; case Enums.ValueType.Formula: if (model.result !== void 0 && style && utils.isDateFmt(style.numFmt)) { model.result = utils.excelToDate(model.result, options.date1904); } if (model.shareType === "shared") { if (model.ref) { options.formulae[model.si] = model.address; } else { model.sharedFormula = options.formulae[model.si]; delete model.shareType; } delete model.si; } break; default: break; } const hyperlink = options.hyperlinkMap[model.address]; if (hyperlink) { if (model.type === Enums.ValueType.Formula) { model.text = model.result; model.result = void 0; } else { model.text = model.value; model.value = void 0; } model.type = Enums.ValueType.Hyperlink; model.hyperlink = hyperlink; } const comment = options.commentsMap && options.commentsMap[model.address]; if (comment) { model.comment = comment; } } }; module2.exports = CellXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/row-xform.js var require_row_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/row-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var utils = require_utils21(); var CellXform = require_cell_xform(); var RowXform = class extends BaseXform { static { __name(this, "RowXform"); } constructor(options) { super(); this.maxItems = options && options.maxItems; this.map = { c: new CellXform() }; } get tag() { return "row"; } prepare(model, options) { const styleId = options.styles.addStyleModel(model.style); if (styleId) { model.styleId = styleId; } const cellXform = this.map.c; model.cells.forEach((cellModel) => { cellXform.prepare(cellModel, options); }); } render(xmlStream, model, options) { xmlStream.openNode("row"); xmlStream.addAttribute("r", model.number); if (model.height) { xmlStream.addAttribute("ht", model.height); xmlStream.addAttribute("customHeight", "1"); } if (model.hidden) { xmlStream.addAttribute("hidden", "1"); } if (model.min > 0 && model.max > 0 && model.min <= model.max) { xmlStream.addAttribute("spans", `${model.min}:${model.max}`); } if (model.styleId) { xmlStream.addAttribute("s", model.styleId); xmlStream.addAttribute("customFormat", "1"); } xmlStream.addAttribute("x14ac:dyDescent", "0.25"); if (model.outlineLevel) { xmlStream.addAttribute("outlineLevel", model.outlineLevel); } if (model.collapsed) { xmlStream.addAttribute("collapsed", "1"); } const cellXform = this.map.c; model.cells.forEach((cellModel) => { cellXform.render(xmlStream, cellModel, options); }); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } if (node.name === "row") { this.numRowsSeen += 1; const spans = node.attributes.spans ? node.attributes.spans.split(":").map((span) => parseInt(span, 10)) : [void 0, void 0]; const model = this.model = { number: parseInt(node.attributes.r, 10), min: spans[0], max: spans[1], cells: [] }; if (node.attributes.s) { model.styleId = parseInt(node.attributes.s, 10); } if (utils.parseBoolean(node.attributes.hidden)) { model.hidden = true; } if (utils.parseBoolean(node.attributes.bestFit)) { model.bestFit = true; } if (node.attributes.ht) { model.height = parseFloat(node.attributes.ht); } if (node.attributes.outlineLevel) { model.outlineLevel = parseInt(node.attributes.outlineLevel, 10); } if (utils.parseBoolean(node.attributes.collapsed)) { model.collapsed = true; } return true; } this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); return true; } return false; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.model.cells.push(this.parser.model); if (this.maxItems && this.model.cells.length > this.maxItems) { throw new Error(`Max column count (${this.maxItems}) exceeded`); } this.parser = void 0; } return true; } return false; } reconcile(model, options) { model.style = model.styleId ? options.styles.getStyleModel(model.styleId) : {}; if (model.styleId !== void 0) { model.styleId = void 0; } const cellXform = this.map.c; model.cells.forEach((cellModel) => { cellXform.reconcile(cellModel, options); }); } }; module2.exports = RowXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/col-xform.js var require_col_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/col-xform.js"(exports2, module2) { var utils = require_utils21(); var BaseXform = require_base_xform(); var ColXform = class extends BaseXform { static { __name(this, "ColXform"); } get tag() { return "col"; } prepare(model, options) { const styleId = options.styles.addStyleModel(model.style || {}); if (styleId) { model.styleId = styleId; } } render(xmlStream, model) { xmlStream.openNode("col"); xmlStream.addAttribute("min", model.min); xmlStream.addAttribute("max", model.max); if (model.width) { xmlStream.addAttribute("width", model.width); } if (model.styleId) { xmlStream.addAttribute("style", model.styleId); } if (model.hidden) { xmlStream.addAttribute("hidden", "1"); } if (model.bestFit) { xmlStream.addAttribute("bestFit", "1"); } if (model.outlineLevel) { xmlStream.addAttribute("outlineLevel", model.outlineLevel); } if (model.collapsed) { xmlStream.addAttribute("collapsed", "1"); } xmlStream.addAttribute("customWidth", "1"); xmlStream.closeNode(); } parseOpen(node) { if (node.name === "col") { const model = this.model = { min: parseInt(node.attributes.min || "0", 10), max: parseInt(node.attributes.max || "0", 10), width: node.attributes.width === void 0 ? void 0 : parseFloat(node.attributes.width || "0") }; if (node.attributes.style) { model.styleId = parseInt(node.attributes.style, 10); } if (utils.parseBoolean(node.attributes.hidden)) { model.hidden = true; } if (utils.parseBoolean(node.attributes.bestFit)) { model.bestFit = true; } if (node.attributes.outlineLevel) { model.outlineLevel = parseInt(node.attributes.outlineLevel, 10); } if (utils.parseBoolean(node.attributes.collapsed)) { model.collapsed = true; } return true; } return false; } parseText() { } parseClose() { return false; } reconcile(model, options) { if (model.styleId) { model.style = options.styles.getStyleModel(model.styleId); } } }; module2.exports = ColXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/dimension-xform.js var require_dimension_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/dimension-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var DimensionXform = class extends BaseXform { static { __name(this, "DimensionXform"); } get tag() { return "dimension"; } render(xmlStream, model) { if (model) { xmlStream.leafNode("dimension", { ref: model }); } } parseOpen(node) { if (node.name === "dimension") { this.model = node.attributes.ref; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = DimensionXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/hyperlink-xform.js var require_hyperlink_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/hyperlink-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var HyperlinkXform = class extends BaseXform { static { __name(this, "HyperlinkXform"); } get tag() { return "hyperlink"; } render(xmlStream, model) { if (this.isInternalLink(model)) { xmlStream.leafNode("hyperlink", { ref: model.address, "r:id": model.rId, tooltip: model.tooltip, location: model.target }); } else { xmlStream.leafNode("hyperlink", { ref: model.address, "r:id": model.rId, tooltip: model.tooltip }); } } parseOpen(node) { if (node.name === "hyperlink") { this.model = { address: node.attributes.ref, rId: node.attributes["r:id"], tooltip: node.attributes.tooltip }; if (node.attributes.location) { this.model.target = node.attributes.location; } return true; } return false; } parseText() { } parseClose() { return false; } isInternalLink(model) { return model.target && /^[^!]+![a-zA-Z]+[\d]+$/.test(model.target); } }; module2.exports = HyperlinkXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/merge-cell-xform.js var require_merge_cell_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/merge-cell-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var MergeCellXform = class extends BaseXform { static { __name(this, "MergeCellXform"); } get tag() { return "mergeCell"; } render(xmlStream, model) { xmlStream.leafNode("mergeCell", { ref: model }); } parseOpen(node) { if (node.name === "mergeCell") { this.model = node.attributes.ref; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = MergeCellXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/data-validations-xform.js var require_data_validations_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/data-validations-xform.js"(exports2, module2) { var _2 = require_under_dash(); var utils = require_utils21(); var colCache = require_col_cache(); var BaseXform = require_base_xform(); var Range = require_range4(); function assign(definedName, attributes, name, defaultValue) { const value = attributes[name]; if (value !== void 0) { definedName[name] = value; } else if (defaultValue !== void 0) { definedName[name] = defaultValue; } } __name(assign, "assign"); function assignBool(definedName, attributes, name, defaultValue) { const value = attributes[name]; if (value !== void 0) { definedName[name] = utils.parseBoolean(value); } else if (defaultValue !== void 0) { definedName[name] = defaultValue; } } __name(assignBool, "assignBool"); function optimiseDataValidations(model) { const dvList = _2.map(model, (dataValidation, address) => ({ address, dataValidation, marked: false })).sort((a, b) => _2.strcmp(a.address, b.address)); const dvMap = _2.keyBy(dvList, "address"); const matchCol = /* @__PURE__ */ __name((addr, height, col) => { for (let i = 0; i < height; i++) { const otherAddress = colCache.encodeAddress(addr.row + i, col); if (!model[otherAddress] || !_2.isEqual(model[addr.address], model[otherAddress])) { return false; } } return true; }, "matchCol"); return dvList.map((dv) => { if (!dv.marked) { const addr = colCache.decodeEx(dv.address); if (addr.dimensions) { dvMap[addr.dimensions].marked = true; return { ...dv.dataValidation, sqref: dv.address }; } let height = 1; let otherAddress = colCache.encodeAddress(addr.row + height, addr.col); while (model[otherAddress] && _2.isEqual(dv.dataValidation, model[otherAddress])) { height++; otherAddress = colCache.encodeAddress(addr.row + height, addr.col); } let width = 1; while (matchCol(addr, height, addr.col + width)) { width++; } for (let i = 0; i < height; i++) { for (let j = 0; j < width; j++) { otherAddress = colCache.encodeAddress(addr.row + i, addr.col + j); dvMap[otherAddress].marked = true; } } if (height > 1 || width > 1) { const bottom = addr.row + (height - 1); const right = addr.col + (width - 1); return { ...dv.dataValidation, sqref: `${dv.address}:${colCache.encodeAddress(bottom, right)}` }; } return { ...dv.dataValidation, sqref: dv.address }; } return null; }).filter(Boolean); } __name(optimiseDataValidations, "optimiseDataValidations"); var DataValidationsXform = class extends BaseXform { static { __name(this, "DataValidationsXform"); } get tag() { return "dataValidations"; } render(xmlStream, model) { const optimizedModel = optimiseDataValidations(model); if (optimizedModel.length) { xmlStream.openNode("dataValidations", { count: optimizedModel.length }); optimizedModel.forEach((value) => { xmlStream.openNode("dataValidation"); if (value.type !== "any") { xmlStream.addAttribute("type", value.type); if (value.operator && value.type !== "list" && value.operator !== "between") { xmlStream.addAttribute("operator", value.operator); } if (value.allowBlank) { xmlStream.addAttribute("allowBlank", "1"); } } if (value.showInputMessage) { xmlStream.addAttribute("showInputMessage", "1"); } if (value.promptTitle) { xmlStream.addAttribute("promptTitle", value.promptTitle); } if (value.prompt) { xmlStream.addAttribute("prompt", value.prompt); } if (value.showErrorMessage) { xmlStream.addAttribute("showErrorMessage", "1"); } if (value.errorStyle) { xmlStream.addAttribute("errorStyle", value.errorStyle); } if (value.errorTitle) { xmlStream.addAttribute("errorTitle", value.errorTitle); } if (value.error) { xmlStream.addAttribute("error", value.error); } xmlStream.addAttribute("sqref", value.sqref); (value.formulae || []).forEach((formula, index) => { xmlStream.openNode(`formula${index + 1}`); if (value.type === "date") { xmlStream.writeText(utils.dateToExcel(new Date(formula))); } else { xmlStream.writeText(formula); } xmlStream.closeNode(); }); xmlStream.closeNode(); }); xmlStream.closeNode(); } } parseOpen(node) { switch (node.name) { case "dataValidations": this.model = {}; return true; case "dataValidation": { this._address = node.attributes.sqref; const dataValidation = { type: node.attributes.type || "any", formulae: [] }; if (node.attributes.type) { assignBool(dataValidation, node.attributes, "allowBlank"); } assignBool(dataValidation, node.attributes, "showInputMessage"); assignBool(dataValidation, node.attributes, "showErrorMessage"); switch (dataValidation.type) { case "any": case "list": case "custom": break; default: assign(dataValidation, node.attributes, "operator", "between"); break; } assign(dataValidation, node.attributes, "promptTitle"); assign(dataValidation, node.attributes, "prompt"); assign(dataValidation, node.attributes, "errorStyle"); assign(dataValidation, node.attributes, "errorTitle"); assign(dataValidation, node.attributes, "error"); this._dataValidation = dataValidation; return true; } case "formula1": case "formula2": this._formula = []; return true; default: return false; } } parseText(text) { if (this._formula) { this._formula.push(text); } } parseClose(name) { switch (name) { case "dataValidations": return false; case "dataValidation": { if (!this._dataValidation.formulae || !this._dataValidation.formulae.length) { delete this._dataValidation.formulae; delete this._dataValidation.operator; } const list = this._address.split(/\s+/g) || []; list.forEach((addr) => { if (addr.includes(":")) { const range = new Range(addr); range.forEachAddress((address) => { this.model[address] = this._dataValidation; }); } else { this.model[addr] = this._dataValidation; } }); return true; } case "formula1": case "formula2": { let formula = this._formula.join(""); switch (this._dataValidation.type) { case "whole": case "textLength": formula = parseInt(formula, 10); break; case "decimal": formula = parseFloat(formula); break; case "date": formula = utils.excelToDate(parseFloat(formula)); break; default: break; } this._dataValidation.formulae.push(formula); this._formula = void 0; return true; } default: return true; } } }; module2.exports = DataValidationsXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/page-setup-properties-xform.js var require_page_setup_properties_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/page-setup-properties-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var PageSetupPropertiesXform = class extends BaseXform { static { __name(this, "PageSetupPropertiesXform"); } get tag() { return "pageSetUpPr"; } render(xmlStream, model) { if (model && model.fitToPage) { xmlStream.leafNode(this.tag, { fitToPage: model.fitToPage ? "1" : void 0 }); return true; } return false; } parseOpen(node) { if (node.name === this.tag) { this.model = { fitToPage: node.attributes.fitToPage === "1" }; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = PageSetupPropertiesXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/outline-properties-xform.js var require_outline_properties_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/outline-properties-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var isDefined = /* @__PURE__ */ __name((attr) => typeof attr !== "undefined", "isDefined"); var OutlinePropertiesXform = class extends BaseXform { static { __name(this, "OutlinePropertiesXform"); } get tag() { return "outlinePr"; } render(xmlStream, model) { if (model && (isDefined(model.summaryBelow) || isDefined(model.summaryRight))) { xmlStream.leafNode(this.tag, { summaryBelow: isDefined(model.summaryBelow) ? Number(model.summaryBelow) : void 0, summaryRight: isDefined(model.summaryRight) ? Number(model.summaryRight) : void 0 }); return true; } return false; } parseOpen(node) { if (node.name === this.tag) { this.model = { summaryBelow: isDefined(node.attributes.summaryBelow) ? Boolean(Number(node.attributes.summaryBelow)) : void 0, summaryRight: isDefined(node.attributes.summaryRight) ? Boolean(Number(node.attributes.summaryRight)) : void 0 }; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = OutlinePropertiesXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/sheet-properties-xform.js var require_sheet_properties_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/sheet-properties-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var ColorXform = require_color_xform(); var PageSetupPropertiesXform = require_page_setup_properties_xform(); var OutlinePropertiesXform = require_outline_properties_xform(); var SheetPropertiesXform = class extends BaseXform { static { __name(this, "SheetPropertiesXform"); } constructor() { super(); this.map = { tabColor: new ColorXform("tabColor"), pageSetUpPr: new PageSetupPropertiesXform(), outlinePr: new OutlinePropertiesXform() }; } get tag() { return "sheetPr"; } render(xmlStream, model) { if (model) { xmlStream.addRollback(); xmlStream.openNode("sheetPr"); let inner = false; inner = this.map.tabColor.render(xmlStream, model.tabColor) || inner; inner = this.map.pageSetUpPr.render(xmlStream, model.pageSetup) || inner; inner = this.map.outlinePr.render(xmlStream, model.outlineProperties) || inner; if (inner) { xmlStream.closeNode(); xmlStream.commit(); } else { xmlStream.rollback(); } } } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } if (node.name === this.tag) { this.reset(); return true; } if (this.map[node.name]) { this.parser = this.map[node.name]; this.parser.parseOpen(node); return true; } return false; } parseText(text) { if (this.parser) { this.parser.parseText(text); return true; } return false; } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } if (this.map.tabColor.model || this.map.pageSetUpPr.model || this.map.outlinePr.model) { this.model = {}; if (this.map.tabColor.model) { this.model.tabColor = this.map.tabColor.model; } if (this.map.pageSetUpPr.model) { this.model.pageSetup = this.map.pageSetUpPr.model; } if (this.map.outlinePr.model) { this.model.outlineProperties = this.map.outlinePr.model; } } else { this.model = null; } return false; } }; module2.exports = SheetPropertiesXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/sheet-format-properties-xform.js var require_sheet_format_properties_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/sheet-format-properties-xform.js"(exports2, module2) { var _2 = require_under_dash(); var BaseXform = require_base_xform(); var SheetFormatPropertiesXform = class extends BaseXform { static { __name(this, "SheetFormatPropertiesXform"); } get tag() { return "sheetFormatPr"; } render(xmlStream, model) { if (model) { const attributes = { defaultRowHeight: model.defaultRowHeight, outlineLevelRow: model.outlineLevelRow, outlineLevelCol: model.outlineLevelCol, "x14ac:dyDescent": model.dyDescent }; if (model.defaultColWidth) { attributes.defaultColWidth = model.defaultColWidth; } if (!model.defaultRowHeight || model.defaultRowHeight !== 15) { attributes.customHeight = "1"; } if (_2.some(attributes, (value) => value !== void 0)) { xmlStream.leafNode("sheetFormatPr", attributes); } } } parseOpen(node) { if (node.name === "sheetFormatPr") { this.model = { defaultRowHeight: parseFloat(node.attributes.defaultRowHeight || "0"), dyDescent: parseFloat(node.attributes["x14ac:dyDescent"] || "0"), outlineLevelRow: parseInt(node.attributes.outlineLevelRow || "0", 10), outlineLevelCol: parseInt(node.attributes.outlineLevelCol || "0", 10) }; if (node.attributes.defaultColWidth) { this.model.defaultColWidth = parseFloat(node.attributes.defaultColWidth); } return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = SheetFormatPropertiesXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/sheet-view-xform.js var require_sheet_view_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/sheet-view-xform.js"(exports2, module2) { var colCache = require_col_cache(); var BaseXform = require_base_xform(); var VIEW_STATES = { frozen: "frozen", frozenSplit: "frozen", split: "split" }; var SheetViewXform = class extends BaseXform { static { __name(this, "SheetViewXform"); } get tag() { return "sheetView"; } prepare(model) { switch (model.state) { case "frozen": case "split": break; default: model.state = "normal"; break; } } render(xmlStream, model) { xmlStream.openNode("sheetView", { workbookViewId: model.workbookViewId || 0 }); const add = /* @__PURE__ */ __name(function(name, value, included) { if (included) { xmlStream.addAttribute(name, value); } }, "add"); add("rightToLeft", "1", model.rightToLeft === true); add("tabSelected", "1", model.tabSelected); add("showRuler", "0", model.showRuler === false); add("showRowColHeaders", "0", model.showRowColHeaders === false); add("showGridLines", "0", model.showGridLines === false); add("zoomScale", model.zoomScale, model.zoomScale); add("zoomScaleNormal", model.zoomScaleNormal, model.zoomScaleNormal); add("view", model.style, model.style); let topLeftCell; let xSplit; let ySplit; let activePane; switch (model.state) { case "frozen": xSplit = model.xSplit || 0; ySplit = model.ySplit || 0; topLeftCell = model.topLeftCell || colCache.getAddress(ySplit + 1, xSplit + 1).address; activePane = model.xSplit && model.ySplit && "bottomRight" || model.xSplit && "topRight" || "bottomLeft"; xmlStream.leafNode("pane", { xSplit: model.xSplit || void 0, ySplit: model.ySplit || void 0, topLeftCell, activePane, state: "frozen" }); xmlStream.leafNode("selection", { pane: activePane, activeCell: model.activeCell, sqref: model.activeCell }); break; case "split": if (model.activePane === "topLeft") { model.activePane = void 0; } xmlStream.leafNode("pane", { xSplit: model.xSplit || void 0, ySplit: model.ySplit || void 0, topLeftCell: model.topLeftCell, activePane: model.activePane }); xmlStream.leafNode("selection", { pane: model.activePane, activeCell: model.activeCell, sqref: model.activeCell }); break; case "normal": if (model.activeCell) { xmlStream.leafNode("selection", { activeCell: model.activeCell, sqref: model.activeCell }); } break; default: break; } xmlStream.closeNode(); } parseOpen(node) { switch (node.name) { case "sheetView": this.sheetView = { workbookViewId: parseInt(node.attributes.workbookViewId, 10), rightToLeft: node.attributes.rightToLeft === "1", tabSelected: node.attributes.tabSelected === "1", showRuler: !(node.attributes.showRuler === "0"), showRowColHeaders: !(node.attributes.showRowColHeaders === "0"), showGridLines: !(node.attributes.showGridLines === "0"), zoomScale: parseInt(node.attributes.zoomScale || "100", 10), zoomScaleNormal: parseInt(node.attributes.zoomScaleNormal || "100", 10), style: node.attributes.view }; this.pane = void 0; this.selections = {}; return true; case "pane": this.pane = { xSplit: parseInt(node.attributes.xSplit || "0", 10), ySplit: parseInt(node.attributes.ySplit || "0", 10), topLeftCell: node.attributes.topLeftCell, activePane: node.attributes.activePane || "topLeft", state: node.attributes.state }; return true; case "selection": { const name = node.attributes.pane || "topLeft"; this.selections[name] = { pane: name, activeCell: node.attributes.activeCell }; return true; } default: return false; } } parseText() { } parseClose(name) { let model; let selection; switch (name) { case "sheetView": if (this.sheetView && this.pane) { model = this.model = { workbookViewId: this.sheetView.workbookViewId, rightToLeft: this.sheetView.rightToLeft, state: VIEW_STATES[this.pane.state] || "split", // split is default xSplit: this.pane.xSplit, ySplit: this.pane.ySplit, topLeftCell: this.pane.topLeftCell, showRuler: this.sheetView.showRuler, showRowColHeaders: this.sheetView.showRowColHeaders, showGridLines: this.sheetView.showGridLines, zoomScale: this.sheetView.zoomScale, zoomScaleNormal: this.sheetView.zoomScaleNormal }; if (this.model.state === "split") { model.activePane = this.pane.activePane; } selection = this.selections[this.pane.activePane]; if (selection && selection.activeCell) { model.activeCell = selection.activeCell; } if (this.sheetView.style) { model.style = this.sheetView.style; } } else { model = this.model = { workbookViewId: this.sheetView.workbookViewId, rightToLeft: this.sheetView.rightToLeft, state: "normal", showRuler: this.sheetView.showRuler, showRowColHeaders: this.sheetView.showRowColHeaders, showGridLines: this.sheetView.showGridLines, zoomScale: this.sheetView.zoomScale, zoomScaleNormal: this.sheetView.zoomScaleNormal }; selection = this.selections.topLeft; if (selection && selection.activeCell) { model.activeCell = selection.activeCell; } if (this.sheetView.style) { model.style = this.sheetView.style; } } return false; default: return true; } } reconcile() { } }; module2.exports = SheetViewXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/sheet-protection-xform.js var require_sheet_protection_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/sheet-protection-xform.js"(exports2, module2) { var _2 = require_under_dash(); var BaseXform = require_base_xform(); function booleanToXml(model, value) { return model ? value : void 0; } __name(booleanToXml, "booleanToXml"); function xmlToBoolean(value, equals) { return value === equals ? true : void 0; } __name(xmlToBoolean, "xmlToBoolean"); var SheetProtectionXform = class extends BaseXform { static { __name(this, "SheetProtectionXform"); } get tag() { return "sheetProtection"; } render(xmlStream, model) { if (model) { const attributes = { sheet: booleanToXml(model.sheet, "1"), selectLockedCells: model.selectLockedCells === false ? "1" : void 0, selectUnlockedCells: model.selectUnlockedCells === false ? "1" : void 0, formatCells: booleanToXml(model.formatCells, "0"), formatColumns: booleanToXml(model.formatColumns, "0"), formatRows: booleanToXml(model.formatRows, "0"), insertColumns: booleanToXml(model.insertColumns, "0"), insertRows: booleanToXml(model.insertRows, "0"), insertHyperlinks: booleanToXml(model.insertHyperlinks, "0"), deleteColumns: booleanToXml(model.deleteColumns, "0"), deleteRows: booleanToXml(model.deleteRows, "0"), sort: booleanToXml(model.sort, "0"), autoFilter: booleanToXml(model.autoFilter, "0"), pivotTables: booleanToXml(model.pivotTables, "0") }; if (model.sheet) { attributes.algorithmName = model.algorithmName; attributes.hashValue = model.hashValue; attributes.saltValue = model.saltValue; attributes.spinCount = model.spinCount; attributes.objects = booleanToXml(model.objects === false, "1"); attributes.scenarios = booleanToXml(model.scenarios === false, "1"); } if (_2.some(attributes, (value) => value !== void 0)) { xmlStream.leafNode(this.tag, attributes); } } } parseOpen(node) { switch (node.name) { case this.tag: this.model = { sheet: xmlToBoolean(node.attributes.sheet, "1"), objects: node.attributes.objects === "1" ? false : void 0, scenarios: node.attributes.scenarios === "1" ? false : void 0, selectLockedCells: node.attributes.selectLockedCells === "1" ? false : void 0, selectUnlockedCells: node.attributes.selectUnlockedCells === "1" ? false : void 0, formatCells: xmlToBoolean(node.attributes.formatCells, "0"), formatColumns: xmlToBoolean(node.attributes.formatColumns, "0"), formatRows: xmlToBoolean(node.attributes.formatRows, "0"), insertColumns: xmlToBoolean(node.attributes.insertColumns, "0"), insertRows: xmlToBoolean(node.attributes.insertRows, "0"), insertHyperlinks: xmlToBoolean(node.attributes.insertHyperlinks, "0"), deleteColumns: xmlToBoolean(node.attributes.deleteColumns, "0"), deleteRows: xmlToBoolean(node.attributes.deleteRows, "0"), sort: xmlToBoolean(node.attributes.sort, "0"), autoFilter: xmlToBoolean(node.attributes.autoFilter, "0"), pivotTables: xmlToBoolean(node.attributes.pivotTables, "0") }; if (node.attributes.algorithmName) { this.model.algorithmName = node.attributes.algorithmName; this.model.hashValue = node.attributes.hashValue; this.model.saltValue = node.attributes.saltValue; this.model.spinCount = parseInt(node.attributes.spinCount, 10); } return true; default: return false; } } parseText() { } parseClose() { return false; } }; module2.exports = SheetProtectionXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/page-margins-xform.js var require_page_margins_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/page-margins-xform.js"(exports2, module2) { var _2 = require_under_dash(); var BaseXform = require_base_xform(); var PageMarginsXform = class extends BaseXform { static { __name(this, "PageMarginsXform"); } get tag() { return "pageMargins"; } render(xmlStream, model) { if (model) { const attributes = { left: model.left, right: model.right, top: model.top, bottom: model.bottom, header: model.header, footer: model.footer }; if (_2.some(attributes, (value) => value !== void 0)) { xmlStream.leafNode(this.tag, attributes); } } } parseOpen(node) { switch (node.name) { case this.tag: this.model = { left: parseFloat(node.attributes.left || 0.7), right: parseFloat(node.attributes.right || 0.7), top: parseFloat(node.attributes.top || 0.75), bottom: parseFloat(node.attributes.bottom || 0.75), header: parseFloat(node.attributes.header || 0.3), footer: parseFloat(node.attributes.footer || 0.3) }; return true; default: return false; } } parseText() { } parseClose() { return false; } }; module2.exports = PageMarginsXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/page-setup-xform.js var require_page_setup_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/page-setup-xform.js"(exports2, module2) { var _2 = require_under_dash(); var BaseXform = require_base_xform(); function booleanToXml(model) { return model ? "1" : void 0; } __name(booleanToXml, "booleanToXml"); function pageOrderToXml(model) { switch (model) { case "overThenDown": return model; default: return void 0; } } __name(pageOrderToXml, "pageOrderToXml"); function cellCommentsToXml(model) { switch (model) { case "atEnd": case "asDisplyed": return model; default: return void 0; } } __name(cellCommentsToXml, "cellCommentsToXml"); function errorsToXml(model) { switch (model) { case "dash": case "blank": case "NA": return model; default: return void 0; } } __name(errorsToXml, "errorsToXml"); function pageSizeToModel(value) { return value !== void 0 ? parseInt(value, 10) : void 0; } __name(pageSizeToModel, "pageSizeToModel"); var PageSetupXform = class extends BaseXform { static { __name(this, "PageSetupXform"); } get tag() { return "pageSetup"; } render(xmlStream, model) { if (model) { const attributes = { paperSize: model.paperSize, orientation: model.orientation, horizontalDpi: model.horizontalDpi, verticalDpi: model.verticalDpi, pageOrder: pageOrderToXml(model.pageOrder), blackAndWhite: booleanToXml(model.blackAndWhite), draft: booleanToXml(model.draft), cellComments: cellCommentsToXml(model.cellComments), errors: errorsToXml(model.errors), scale: model.scale, fitToWidth: model.fitToWidth, fitToHeight: model.fitToHeight, firstPageNumber: model.firstPageNumber, useFirstPageNumber: booleanToXml(model.firstPageNumber), usePrinterDefaults: booleanToXml(model.usePrinterDefaults), copies: model.copies }; if (_2.some(attributes, (value) => value !== void 0)) { xmlStream.leafNode(this.tag, attributes); } } } parseOpen(node) { switch (node.name) { case this.tag: this.model = { paperSize: pageSizeToModel(node.attributes.paperSize), orientation: node.attributes.orientation || "portrait", horizontalDpi: parseInt(node.attributes.horizontalDpi || "4294967295", 10), verticalDpi: parseInt(node.attributes.verticalDpi || "4294967295", 10), pageOrder: node.attributes.pageOrder || "downThenOver", blackAndWhite: node.attributes.blackAndWhite === "1", draft: node.attributes.draft === "1", cellComments: node.attributes.cellComments || "None", errors: node.attributes.errors || "displayed", scale: parseInt(node.attributes.scale || "100", 10), fitToWidth: parseInt(node.attributes.fitToWidth || "1", 10), fitToHeight: parseInt(node.attributes.fitToHeight || "1", 10), firstPageNumber: parseInt(node.attributes.firstPageNumber || "1", 10), useFirstPageNumber: node.attributes.useFirstPageNumber === "1", usePrinterDefaults: node.attributes.usePrinterDefaults === "1", copies: parseInt(node.attributes.copies || "1", 10) }; return true; default: return false; } } parseText() { } parseClose() { return false; } }; module2.exports = PageSetupXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/print-options-xform.js var require_print_options_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/print-options-xform.js"(exports2, module2) { var _2 = require_under_dash(); var BaseXform = require_base_xform(); function booleanToXml(model) { return model ? "1" : void 0; } __name(booleanToXml, "booleanToXml"); var PrintOptionsXform = class extends BaseXform { static { __name(this, "PrintOptionsXform"); } get tag() { return "printOptions"; } render(xmlStream, model) { if (model) { const attributes = { headings: booleanToXml(model.showRowColHeaders), gridLines: booleanToXml(model.showGridLines), horizontalCentered: booleanToXml(model.horizontalCentered), verticalCentered: booleanToXml(model.verticalCentered) }; if (_2.some(attributes, (value) => value !== void 0)) { xmlStream.leafNode(this.tag, attributes); } } } parseOpen(node) { switch (node.name) { case this.tag: this.model = { showRowColHeaders: node.attributes.headings === "1", showGridLines: node.attributes.gridLines === "1", horizontalCentered: node.attributes.horizontalCentered === "1", verticalCentered: node.attributes.verticalCentered === "1" }; return true; default: return false; } } parseText() { } parseClose() { return false; } }; module2.exports = PrintOptionsXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/auto-filter-xform.js var require_auto_filter_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/auto-filter-xform.js"(exports2, module2) { var colCache = require_col_cache(); var BaseXform = require_base_xform(); var AutoFilterXform = class extends BaseXform { static { __name(this, "AutoFilterXform"); } get tag() { return "autoFilter"; } render(xmlStream, model) { if (model) { if (typeof model === "string") { xmlStream.leafNode("autoFilter", { ref: model }); } else { const getAddress = /* @__PURE__ */ __name(function(addr) { if (typeof addr === "string") { return addr; } return colCache.getAddress(addr.row, addr.column).address; }, "getAddress"); const firstAddress = getAddress(model.from); const secondAddress = getAddress(model.to); if (firstAddress && secondAddress) { xmlStream.leafNode("autoFilter", { ref: `${firstAddress}:${secondAddress}` }); } } } } parseOpen(node) { if (node.name === "autoFilter") { this.model = node.attributes.ref; } } }; module2.exports = AutoFilterXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/picture-xform.js var require_picture_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/picture-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var PictureXform = class extends BaseXform { static { __name(this, "PictureXform"); } get tag() { return "picture"; } render(xmlStream, model) { if (model) { xmlStream.leafNode(this.tag, { "r:id": model.rId }); } } parseOpen(node) { switch (node.name) { case this.tag: this.model = { rId: node.attributes["r:id"] }; return true; default: return false; } } parseText() { } parseClose() { return false; } }; module2.exports = PictureXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/drawing-xform.js var require_drawing_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/drawing-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var DrawingXform = class extends BaseXform { static { __name(this, "DrawingXform"); } get tag() { return "drawing"; } render(xmlStream, model) { if (model) { xmlStream.leafNode(this.tag, { "r:id": model.rId }); } } parseOpen(node) { switch (node.name) { case this.tag: this.model = { rId: node.attributes["r:id"] }; return true; default: return false; } } parseText() { } parseClose() { return false; } }; module2.exports = DrawingXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/table-part-xform.js var require_table_part_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/table-part-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var TablePartXform = class extends BaseXform { static { __name(this, "TablePartXform"); } get tag() { return "tablePart"; } render(xmlStream, model) { if (model) { xmlStream.leafNode(this.tag, { "r:id": model.rId }); } } parseOpen(node) { switch (node.name) { case this.tag: this.model = { rId: node.attributes["r:id"] }; return true; default: return false; } } parseText() { } parseClose() { return false; } }; module2.exports = TablePartXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/page-breaks-xform.js var require_page_breaks_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/page-breaks-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var PageBreaksXform = class extends BaseXform { static { __name(this, "PageBreaksXform"); } get tag() { return "brk"; } render(xmlStream, model) { xmlStream.leafNode("brk", model); } parseOpen(node) { if (node.name === "brk") { this.model = node.attributes.ref; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = PageBreaksXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/row-breaks-xform.js var require_row_breaks_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/row-breaks-xform.js"(exports2, module2) { "use strict"; var PageBreaksXform = require_page_breaks_xform(); var ListXform = require_list_xform(); var RowBreaksXform = class extends ListXform { static { __name(this, "RowBreaksXform"); } constructor() { const options = { tag: "rowBreaks", count: true, childXform: new PageBreaksXform() }; super(options); } // get tag() { return 'rowBreaks'; } render(xmlStream, model) { if (model && model.length) { xmlStream.openNode(this.tag, this.$); if (this.count) { xmlStream.addAttribute(this.$count, model.length); xmlStream.addAttribute("manualBreakCount", model.length); } const { childXform } = this; model.forEach((childModel) => { childXform.render(xmlStream, childModel); }); xmlStream.closeNode(); } else if (this.empty) { xmlStream.leafNode(this.tag); } } }; module2.exports = RowBreaksXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/header-footer-xform.js var require_header_footer_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/header-footer-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var HeaderFooterXform = class extends BaseXform { static { __name(this, "HeaderFooterXform"); } get tag() { return "headerFooter"; } render(xmlStream, model) { if (model) { xmlStream.addRollback(); let createTag = false; xmlStream.openNode("headerFooter"); if (model.differentFirst) { xmlStream.addAttribute("differentFirst", "1"); createTag = true; } if (model.differentOddEven) { xmlStream.addAttribute("differentOddEven", "1"); createTag = true; } if (model.oddHeader && typeof model.oddHeader === "string") { xmlStream.leafNode("oddHeader", null, model.oddHeader); createTag = true; } if (model.oddFooter && typeof model.oddFooter === "string") { xmlStream.leafNode("oddFooter", null, model.oddFooter); createTag = true; } if (model.evenHeader && typeof model.evenHeader === "string") { xmlStream.leafNode("evenHeader", null, model.evenHeader); createTag = true; } if (model.evenFooter && typeof model.evenFooter === "string") { xmlStream.leafNode("evenFooter", null, model.evenFooter); createTag = true; } if (model.firstHeader && typeof model.firstHeader === "string") { xmlStream.leafNode("firstHeader", null, model.firstHeader); createTag = true; } if (model.firstFooter && typeof model.firstFooter === "string") { xmlStream.leafNode("firstFooter", null, model.firstFooter); createTag = true; } if (createTag) { xmlStream.closeNode(); xmlStream.commit(); } else { xmlStream.rollback(); } } } parseOpen(node) { switch (node.name) { case "headerFooter": this.model = {}; if (node.attributes.differentFirst) { this.model.differentFirst = parseInt(node.attributes.differentFirst, 0) === 1; } if (node.attributes.differentOddEven) { this.model.differentOddEven = parseInt(node.attributes.differentOddEven, 0) === 1; } return true; case "oddHeader": this.currentNode = "oddHeader"; return true; case "oddFooter": this.currentNode = "oddFooter"; return true; case "evenHeader": this.currentNode = "evenHeader"; return true; case "evenFooter": this.currentNode = "evenFooter"; return true; case "firstHeader": this.currentNode = "firstHeader"; return true; case "firstFooter": this.currentNode = "firstFooter"; return true; default: return false; } } parseText(text) { switch (this.currentNode) { case "oddHeader": this.model.oddHeader = text; break; case "oddFooter": this.model.oddFooter = text; break; case "evenHeader": this.model.evenHeader = text; break; case "evenFooter": this.model.evenFooter = text; break; case "firstHeader": this.model.firstHeader = text; break; case "firstFooter": this.model.firstFooter = text; break; default: break; } } parseClose() { switch (this.currentNode) { case "oddHeader": case "oddFooter": case "evenHeader": case "evenFooter": case "firstHeader": case "firstFooter": this.currentNode = void 0; return true; default: return false; } } }; module2.exports = HeaderFooterXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/composite-xform.js var require_composite_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/composite-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var CompositeXform = class extends BaseXform { static { __name(this, "CompositeXform"); } createNewModel(node) { return {}; } parseOpen(node) { this.parser = this.parser || this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); return true; } if (node.name === this.tag) { this.model = this.createNewModel(node); return true; } return false; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } onParserClose(name, parser) { this.model[name] = parser.model; } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.onParserClose(name, this.parser); this.parser = void 0; } return true; } return name !== this.tag; } }; module2.exports = CompositeXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/cfvo-xform.js var require_cfvo_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/cfvo-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var CfvoXform = class extends BaseXform { static { __name(this, "CfvoXform"); } get tag() { return "cfvo"; } render(xmlStream, model) { xmlStream.leafNode(this.tag, { type: model.type, val: model.value }); } parseOpen(node) { this.model = { type: node.attributes.type, value: BaseXform.toFloatValue(node.attributes.val) }; } parseClose(name) { return name !== this.tag; } }; module2.exports = CfvoXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/databar-xform.js var require_databar_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/databar-xform.js"(exports2, module2) { var CompositeXform = require_composite_xform(); var ColorXform = require_color_xform(); var CfvoXform = require_cfvo_xform(); var DatabarXform = class extends CompositeXform { static { __name(this, "DatabarXform"); } constructor() { super(); this.map = { cfvo: this.cfvoXform = new CfvoXform(), color: this.colorXform = new ColorXform() }; } get tag() { return "dataBar"; } render(xmlStream, model) { xmlStream.openNode(this.tag); model.cfvo.forEach((cfvo) => { this.cfvoXform.render(xmlStream, cfvo); }); this.colorXform.render(xmlStream, model.color); xmlStream.closeNode(); } createNewModel() { return { cfvo: [] }; } onParserClose(name, parser) { switch (name) { case "cfvo": this.model.cfvo.push(parser.model); break; case "color": this.model.color = parser.model; break; } } }; module2.exports = DatabarXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/ext-lst-ref-xform.js var require_ext_lst_ref_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/ext-lst-ref-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var CompositeXform = require_composite_xform(); var X14IdXform = class extends BaseXform { static { __name(this, "X14IdXform"); } get tag() { return "x14:id"; } render(xmlStream, model) { xmlStream.leafNode(this.tag, null, model); } parseOpen() { this.model = ""; } parseText(text) { this.model += text; } parseClose(name) { return name !== this.tag; } }; var ExtXform = class extends CompositeXform { static { __name(this, "ExtXform"); } constructor() { super(); this.map = { "x14:id": this.idXform = new X14IdXform() }; } get tag() { return "ext"; } render(xmlStream, model) { xmlStream.openNode(this.tag, { uri: "{B025F937-C7B1-47D3-B67F-A62EFF666E3E}", "xmlns:x14": "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main" }); this.idXform.render(xmlStream, model.x14Id); xmlStream.closeNode(); } createNewModel() { return {}; } onParserClose(name, parser) { this.model.x14Id = parser.model; } }; var ExtLstRefXform = class extends CompositeXform { static { __name(this, "ExtLstRefXform"); } constructor() { super(); this.map = { ext: new ExtXform() }; } get tag() { return "extLst"; } render(xmlStream, model) { xmlStream.openNode(this.tag); this.map.ext.render(xmlStream, model); xmlStream.closeNode(); } createNewModel() { return {}; } onParserClose(name, parser) { Object.assign(this.model, parser.model); } }; module2.exports = ExtLstRefXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/formula-xform.js var require_formula_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/formula-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var FormulaXform = class extends BaseXform { static { __name(this, "FormulaXform"); } get tag() { return "formula"; } render(xmlStream, model) { xmlStream.leafNode(this.tag, null, model); } parseOpen() { this.model = ""; } parseText(text) { this.model += text; } parseClose(name) { return name !== this.tag; } }; module2.exports = FormulaXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/color-scale-xform.js var require_color_scale_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/color-scale-xform.js"(exports2, module2) { var CompositeXform = require_composite_xform(); var ColorXform = require_color_xform(); var CfvoXform = require_cfvo_xform(); var ColorScaleXform = class extends CompositeXform { static { __name(this, "ColorScaleXform"); } constructor() { super(); this.map = { cfvo: this.cfvoXform = new CfvoXform(), color: this.colorXform = new ColorXform() }; } get tag() { return "colorScale"; } render(xmlStream, model) { xmlStream.openNode(this.tag); model.cfvo.forEach((cfvo) => { this.cfvoXform.render(xmlStream, cfvo); }); model.color.forEach((color) => { this.colorXform.render(xmlStream, color); }); xmlStream.closeNode(); } createNewModel(node) { return { cfvo: [], color: [] }; } onParserClose(name, parser) { this.model[name].push(parser.model); } }; module2.exports = ColorScaleXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/icon-set-xform.js var require_icon_set_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/icon-set-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var CompositeXform = require_composite_xform(); var CfvoXform = require_cfvo_xform(); var IconSetXform = class extends CompositeXform { static { __name(this, "IconSetXform"); } constructor() { super(); this.map = { cfvo: this.cfvoXform = new CfvoXform() }; } get tag() { return "iconSet"; } render(xmlStream, model) { xmlStream.openNode(this.tag, { iconSet: BaseXform.toStringAttribute(model.iconSet, "3TrafficLights"), reverse: BaseXform.toBoolAttribute(model.reverse, false), showValue: BaseXform.toBoolAttribute(model.showValue, true) }); model.cfvo.forEach((cfvo) => { this.cfvoXform.render(xmlStream, cfvo); }); xmlStream.closeNode(); } createNewModel({ attributes }) { return { iconSet: BaseXform.toStringValue(attributes.iconSet, "3TrafficLights"), reverse: BaseXform.toBoolValue(attributes.reverse), showValue: BaseXform.toBoolValue(attributes.showValue), cfvo: [] }; } onParserClose(name, parser) { this.model[name].push(parser.model); } }; module2.exports = IconSetXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/cf-rule-xform.js var require_cf_rule_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/cf-rule-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var CompositeXform = require_composite_xform(); var Range = require_range4(); var DatabarXform = require_databar_xform(); var ExtLstRefXform = require_ext_lst_ref_xform(); var FormulaXform = require_formula_xform(); var ColorScaleXform = require_color_scale_xform(); var IconSetXform = require_icon_set_xform(); var extIcons = { "3Triangles": true, "3Stars": true, "5Boxes": true }; var getTextFormula = /* @__PURE__ */ __name((model) => { if (model.formulae && model.formulae[0]) { return model.formulae[0]; } const range = new Range(model.ref); const { tl } = range; switch (model.operator) { case "containsText": return `NOT(ISERROR(SEARCH("${model.text}",${tl})))`; case "containsBlanks": return `LEN(TRIM(${tl}))=0`; case "notContainsBlanks": return `LEN(TRIM(${tl}))>0`; case "containsErrors": return `ISERROR(${tl})`; case "notContainsErrors": return `NOT(ISERROR(${tl}))`; default: return void 0; } }, "getTextFormula"); var getTimePeriodFormula = /* @__PURE__ */ __name((model) => { if (model.formulae && model.formulae[0]) { return model.formulae[0]; } const range = new Range(model.ref); const { tl } = range; switch (model.timePeriod) { case "thisWeek": return `AND(TODAY()-ROUNDDOWN(${tl},0)<=WEEKDAY(TODAY())-1,ROUNDDOWN(${tl},0)-TODAY()<=7-WEEKDAY(TODAY()))`; case "lastWeek": return `AND(TODAY()-ROUNDDOWN(${tl},0)>=(WEEKDAY(TODAY())),TODAY()-ROUNDDOWN(${tl},0)<(WEEKDAY(TODAY())+7))`; case "nextWeek": return `AND(ROUNDDOWN(${tl},0)-TODAY()>(7-WEEKDAY(TODAY())),ROUNDDOWN(${tl},0)-TODAY()<(15-WEEKDAY(TODAY())))`; case "yesterday": return `FLOOR(${tl},1)=TODAY()-1`; case "today": return `FLOOR(${tl},1)=TODAY()`; case "tomorrow": return `FLOOR(${tl},1)=TODAY()+1`; case "last7Days": return `AND(TODAY()-FLOOR(${tl},1)<=6,FLOOR(${tl},1)<=TODAY())`; case "lastMonth": return `AND(MONTH(${tl})=MONTH(EDATE(TODAY(),0-1)),YEAR(${tl})=YEAR(EDATE(TODAY(),0-1)))`; case "thisMonth": return `AND(MONTH(${tl})=MONTH(TODAY()),YEAR(${tl})=YEAR(TODAY()))`; case "nextMonth": return `AND(MONTH(${tl})=MONTH(EDATE(TODAY(),0+1)),YEAR(${tl})=YEAR(EDATE(TODAY(),0+1)))`; default: return void 0; } }, "getTimePeriodFormula"); var opType = /* @__PURE__ */ __name((attributes) => { const { type, operator } = attributes; switch (type) { case "containsText": case "containsBlanks": case "notContainsBlanks": case "containsErrors": case "notContainsErrors": return { type: "containsText", operator: type }; default: return { type, operator }; } }, "opType"); var CfRuleXform = class _CfRuleXform extends CompositeXform { static { __name(this, "CfRuleXform"); } constructor() { super(); this.map = { dataBar: this.databarXform = new DatabarXform(), extLst: this.extLstRefXform = new ExtLstRefXform(), formula: this.formulaXform = new FormulaXform(), colorScale: this.colorScaleXform = new ColorScaleXform(), iconSet: this.iconSetXform = new IconSetXform() }; } get tag() { return "cfRule"; } static isPrimitive(rule) { if (rule.type === "iconSet") { if (rule.custom || extIcons[rule.iconSet]) { return false; } } return true; } render(xmlStream, model) { switch (model.type) { case "expression": this.renderExpression(xmlStream, model); break; case "cellIs": this.renderCellIs(xmlStream, model); break; case "top10": this.renderTop10(xmlStream, model); break; case "aboveAverage": this.renderAboveAverage(xmlStream, model); break; case "dataBar": this.renderDataBar(xmlStream, model); break; case "colorScale": this.renderColorScale(xmlStream, model); break; case "iconSet": this.renderIconSet(xmlStream, model); break; case "containsText": this.renderText(xmlStream, model); break; case "timePeriod": this.renderTimePeriod(xmlStream, model); break; } } renderExpression(xmlStream, model) { xmlStream.openNode(this.tag, { type: "expression", dxfId: model.dxfId, priority: model.priority }); this.formulaXform.render(xmlStream, model.formulae[0]); xmlStream.closeNode(); } renderCellIs(xmlStream, model) { xmlStream.openNode(this.tag, { type: "cellIs", dxfId: model.dxfId, priority: model.priority, operator: model.operator }); model.formulae.forEach((formula) => { this.formulaXform.render(xmlStream, formula); }); xmlStream.closeNode(); } renderTop10(xmlStream, model) { xmlStream.leafNode(this.tag, { type: "top10", dxfId: model.dxfId, priority: model.priority, percent: BaseXform.toBoolAttribute(model.percent, false), bottom: BaseXform.toBoolAttribute(model.bottom, false), rank: BaseXform.toIntValue(model.rank, 10, true) }); } renderAboveAverage(xmlStream, model) { xmlStream.leafNode(this.tag, { type: "aboveAverage", dxfId: model.dxfId, priority: model.priority, aboveAverage: BaseXform.toBoolAttribute(model.aboveAverage, true) }); } renderDataBar(xmlStream, model) { xmlStream.openNode(this.tag, { type: "dataBar", priority: model.priority }); this.databarXform.render(xmlStream, model); this.extLstRefXform.render(xmlStream, model); xmlStream.closeNode(); } renderColorScale(xmlStream, model) { xmlStream.openNode(this.tag, { type: "colorScale", priority: model.priority }); this.colorScaleXform.render(xmlStream, model); xmlStream.closeNode(); } renderIconSet(xmlStream, model) { if (!_CfRuleXform.isPrimitive(model)) { return; } xmlStream.openNode(this.tag, { type: "iconSet", priority: model.priority }); this.iconSetXform.render(xmlStream, model); xmlStream.closeNode(); } renderText(xmlStream, model) { xmlStream.openNode(this.tag, { type: model.operator, dxfId: model.dxfId, priority: model.priority, operator: BaseXform.toStringAttribute(model.operator, "containsText") }); const formula = getTextFormula(model); if (formula) { this.formulaXform.render(xmlStream, formula); } xmlStream.closeNode(); } renderTimePeriod(xmlStream, model) { xmlStream.openNode(this.tag, { type: "timePeriod", dxfId: model.dxfId, priority: model.priority, timePeriod: model.timePeriod }); const formula = getTimePeriodFormula(model); if (formula) { this.formulaXform.render(xmlStream, formula); } xmlStream.closeNode(); } createNewModel({ attributes }) { return { ...opType(attributes), dxfId: BaseXform.toIntValue(attributes.dxfId), priority: BaseXform.toIntValue(attributes.priority), timePeriod: attributes.timePeriod, percent: BaseXform.toBoolValue(attributes.percent), bottom: BaseXform.toBoolValue(attributes.bottom), rank: BaseXform.toIntValue(attributes.rank), aboveAverage: BaseXform.toBoolValue(attributes.aboveAverage) }; } onParserClose(name, parser) { switch (name) { case "dataBar": case "extLst": case "colorScale": case "iconSet": Object.assign(this.model, parser.model); break; case "formula": this.model.formulae = this.model.formulae || []; this.model.formulae.push(parser.model); break; } } }; module2.exports = CfRuleXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/conditional-formatting-xform.js var require_conditional_formatting_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/conditional-formatting-xform.js"(exports2, module2) { var CompositeXform = require_composite_xform(); var CfRuleXform = require_cf_rule_xform(); var ConditionalFormattingXform = class extends CompositeXform { static { __name(this, "ConditionalFormattingXform"); } constructor() { super(); this.map = { cfRule: new CfRuleXform() }; } get tag() { return "conditionalFormatting"; } render(xmlStream, model) { if (!model.rules.some(CfRuleXform.isPrimitive)) { return; } xmlStream.openNode(this.tag, { sqref: model.ref }); model.rules.forEach((rule) => { if (CfRuleXform.isPrimitive(rule)) { rule.ref = model.ref; this.map.cfRule.render(xmlStream, rule); } }); xmlStream.closeNode(); } createNewModel({ attributes }) { return { ref: attributes.sqref, rules: [] }; } onParserClose(name, parser) { this.model.rules.push(parser.model); } }; module2.exports = ConditionalFormattingXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/conditional-formattings-xform.js var require_conditional_formattings_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf/conditional-formattings-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var ConditionalFormattingXform = require_conditional_formatting_xform(); var ConditionalFormattingsXform = class extends BaseXform { static { __name(this, "ConditionalFormattingsXform"); } constructor() { super(); this.cfXform = new ConditionalFormattingXform(); } get tag() { return "conditionalFormatting"; } reset() { this.model = []; } prepare(model, options) { let nextPriority = model.reduce( (p, cf) => Math.max(p, ...cf.rules.map((rule) => rule.priority || 0)), 1 ); model.forEach((cf) => { cf.rules.forEach((rule) => { if (!rule.priority) { rule.priority = nextPriority++; } if (rule.style) { rule.dxfId = options.styles.addDxfStyle(rule.style); } }); }); } render(xmlStream, model) { model.forEach((cf) => { this.cfXform.render(xmlStream, cf); }); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "conditionalFormatting": this.parser = this.cfXform; this.parser.parseOpen(node); return true; default: return false; } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.model.push(this.parser.model); this.parser = void 0; return false; } return true; } return false; } reconcile(model, options) { model.forEach((cf) => { cf.rules.forEach((rule) => { if (rule.dxfId !== void 0) { rule.style = options.styles.getDxfStyle(rule.dxfId); delete rule.dxfId; } }); }); } }; module2.exports = ConditionalFormattingsXform; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/rng.js function rng() { if (poolPtr > rnds8Pool.length - 16) { import_crypto.default.randomFillSync(rnds8Pool); poolPtr = 0; } return rnds8Pool.slice(poolPtr, poolPtr += 16); } var import_crypto, rnds8Pool, poolPtr; var init_rng = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/rng.js"() { import_crypto = __toESM(require("crypto")); rnds8Pool = new Uint8Array(256); poolPtr = rnds8Pool.length; __name(rng, "rng"); } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/regex.js var regex_default; var init_regex = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/regex.js"() { regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/validate.js function validate(uuid) { return typeof uuid === "string" && regex_default.test(uuid); } var validate_default; var init_validate = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/validate.js"() { init_regex(); __name(validate, "validate"); validate_default = validate; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/stringify.js function stringify(arr, offset = 0) { const uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); if (!validate_default(uuid)) { throw TypeError("Stringified UUID is invalid"); } return uuid; } var byteToHex, stringify_default; var init_stringify = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/stringify.js"() { init_validate(); byteToHex = []; for (let i = 0; i < 256; ++i) { byteToHex.push((i + 256).toString(16).substr(1)); } __name(stringify, "stringify"); stringify_default = stringify; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/v1.js function v1(options, buf, offset) { let i = buf && offset || 0; const b = buf || new Array(16); options = options || {}; let node = options.node || _nodeId; let clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq; if (node == null || clockseq == null) { const seedBytes = options.random || (options.rng || rng)(); if (node == null) { node = _nodeId = [seedBytes[0] | 1, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]]; } if (clockseq == null) { clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 16383; } } let msecs = options.msecs !== void 0 ? options.msecs : Date.now(); let nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1; const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4; if (dt < 0 && options.clockseq === void 0) { clockseq = clockseq + 1 & 16383; } if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === void 0) { nsecs = 0; } if (nsecs >= 1e4) { throw new Error("uuid.v1(): Can't create more than 10M uuids/sec"); } _lastMSecs = msecs; _lastNSecs = nsecs; _clockseq = clockseq; msecs += 122192928e5; const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296; b[i++] = tl >>> 24 & 255; b[i++] = tl >>> 16 & 255; b[i++] = tl >>> 8 & 255; b[i++] = tl & 255; const tmh = msecs / 4294967296 * 1e4 & 268435455; b[i++] = tmh >>> 8 & 255; b[i++] = tmh & 255; b[i++] = tmh >>> 24 & 15 | 16; b[i++] = tmh >>> 16 & 255; b[i++] = clockseq >>> 8 | 128; b[i++] = clockseq & 255; for (let n = 0; n < 6; ++n) { b[i + n] = node[n]; } return buf || stringify_default(b); } var _nodeId, _clockseq, _lastMSecs, _lastNSecs, v1_default; var init_v1 = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/v1.js"() { init_rng(); init_stringify(); _lastMSecs = 0; _lastNSecs = 0; __name(v1, "v1"); v1_default = v1; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/parse.js function parse(uuid) { if (!validate_default(uuid)) { throw TypeError("Invalid UUID"); } let v; const arr = new Uint8Array(16); arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24; arr[1] = v >>> 16 & 255; arr[2] = v >>> 8 & 255; arr[3] = v & 255; arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8; arr[5] = v & 255; arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8; arr[7] = v & 255; arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8; arr[9] = v & 255; arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255; arr[11] = v / 4294967296 & 255; arr[12] = v >>> 24 & 255; arr[13] = v >>> 16 & 255; arr[14] = v >>> 8 & 255; arr[15] = v & 255; return arr; } var parse_default; var init_parse = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/parse.js"() { init_validate(); __name(parse, "parse"); parse_default = parse; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/v35.js function stringToBytes(str) { str = unescape(encodeURIComponent(str)); const bytes = []; for (let i = 0; i < str.length; ++i) { bytes.push(str.charCodeAt(i)); } return bytes; } function v35_default(name, version2, hashfunc) { function generateUUID(value, namespace, buf, offset) { if (typeof value === "string") { value = stringToBytes(value); } if (typeof namespace === "string") { namespace = parse_default(namespace); } if (namespace.length !== 16) { throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)"); } let bytes = new Uint8Array(16 + value.length); bytes.set(namespace); bytes.set(value, namespace.length); bytes = hashfunc(bytes); bytes[6] = bytes[6] & 15 | version2; bytes[8] = bytes[8] & 63 | 128; if (buf) { offset = offset || 0; for (let i = 0; i < 16; ++i) { buf[offset + i] = bytes[i]; } return buf; } return stringify_default(bytes); } __name(generateUUID, "generateUUID"); try { generateUUID.name = name; } catch (err) { } generateUUID.DNS = DNS; generateUUID.URL = URL2; return generateUUID; } var DNS, URL2; var init_v35 = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/v35.js"() { init_stringify(); init_parse(); __name(stringToBytes, "stringToBytes"); DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8"; URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8"; __name(v35_default, "default"); } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/md5.js function md5(bytes) { if (Array.isArray(bytes)) { bytes = Buffer.from(bytes); } else if (typeof bytes === "string") { bytes = Buffer.from(bytes, "utf8"); } return import_crypto2.default.createHash("md5").update(bytes).digest(); } var import_crypto2, md5_default; var init_md5 = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/md5.js"() { import_crypto2 = __toESM(require("crypto")); __name(md5, "md5"); md5_default = md5; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/v3.js var v3, v3_default; var init_v3 = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/v3.js"() { init_v35(); init_md5(); v3 = v35_default("v3", 48, md5_default); v3_default = v3; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/v4.js function v4(options, buf, offset) { options = options || {}; const rnds = options.random || (options.rng || rng)(); rnds[6] = rnds[6] & 15 | 64; rnds[8] = rnds[8] & 63 | 128; if (buf) { offset = offset || 0; for (let i = 0; i < 16; ++i) { buf[offset + i] = rnds[i]; } return buf; } return stringify_default(rnds); } var v4_default; var init_v4 = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/v4.js"() { init_rng(); init_stringify(); __name(v4, "v4"); v4_default = v4; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/sha1.js function sha1(bytes) { if (Array.isArray(bytes)) { bytes = Buffer.from(bytes); } else if (typeof bytes === "string") { bytes = Buffer.from(bytes, "utf8"); } return import_crypto3.default.createHash("sha1").update(bytes).digest(); } var import_crypto3, sha1_default; var init_sha1 = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/sha1.js"() { import_crypto3 = __toESM(require("crypto")); __name(sha1, "sha1"); sha1_default = sha1; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/v5.js var v5, v5_default; var init_v5 = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/v5.js"() { init_v35(); init_sha1(); v5 = v35_default("v5", 80, sha1_default); v5_default = v5; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/nil.js var nil_default; var init_nil = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/nil.js"() { nil_default = "00000000-0000-0000-0000-000000000000"; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/version.js function version(uuid) { if (!validate_default(uuid)) { throw TypeError("Invalid UUID"); } return parseInt(uuid.substr(14, 1), 16); } var version_default; var init_version = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/version.js"() { init_validate(); __name(version, "version"); version_default = version; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/index.js var esm_node_exports = {}; __export(esm_node_exports, { NIL: () => nil_default, parse: () => parse_default, stringify: () => stringify_default, v1: () => v1_default, v3: () => v3_default, v4: () => v4_default, v5: () => v5_default, validate: () => validate_default, version: () => version_default }); var init_esm_node = __esm({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/index.js"() { init_v1(); init_v3(); init_v4(); init_v5(); init_nil(); init_version(); init_validate(); init_stringify(); init_parse(); } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/f-ext-xform.js var require_f_ext_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/f-ext-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var FExtXform = class extends BaseXform { static { __name(this, "FExtXform"); } get tag() { return "xm:f"; } render(xmlStream, model) { xmlStream.leafNode(this.tag, null, model); } parseOpen() { this.model = ""; } parseText(text) { this.model += text; } parseClose(name) { return name !== this.tag; } }; module2.exports = FExtXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js var require_cfvo_ext_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js"(exports2, module2) { var CompositeXform = require_composite_xform(); var FExtXform = require_f_ext_xform(); var CfvoExtXform = class extends CompositeXform { static { __name(this, "CfvoExtXform"); } constructor() { super(); this.map = { "xm:f": this.fExtXform = new FExtXform() }; } get tag() { return "x14:cfvo"; } render(xmlStream, model) { xmlStream.openNode(this.tag, { type: model.type }); if (model.value !== void 0) { this.fExtXform.render(xmlStream, model.value); } xmlStream.closeNode(); } createNewModel(node) { return { type: node.attributes.type }; } onParserClose(name, parser) { switch (name) { case "xm:f": this.model.value = parser.model ? parseFloat(parser.model) : 0; break; } } }; module2.exports = CfvoExtXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/databar-ext-xform.js var require_databar_ext_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/databar-ext-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var CompositeXform = require_composite_xform(); var ColorXform = require_color_xform(); var CfvoExtXform = require_cfvo_ext_xform(); var DatabarExtXform = class extends CompositeXform { static { __name(this, "DatabarExtXform"); } constructor() { super(); this.map = { "x14:cfvo": this.cfvoXform = new CfvoExtXform(), "x14:borderColor": this.borderColorXform = new ColorXform("x14:borderColor"), "x14:negativeBorderColor": this.negativeBorderColorXform = new ColorXform( "x14:negativeBorderColor" ), "x14:negativeFillColor": this.negativeFillColorXform = new ColorXform( "x14:negativeFillColor" ), "x14:axisColor": this.axisColorXform = new ColorXform("x14:axisColor") }; } static isExt(rule) { return !rule.gradient; } get tag() { return "x14:dataBar"; } render(xmlStream, model) { xmlStream.openNode(this.tag, { minLength: BaseXform.toIntAttribute(model.minLength, 0, true), maxLength: BaseXform.toIntAttribute(model.maxLength, 100, true), border: BaseXform.toBoolAttribute(model.border, false), gradient: BaseXform.toBoolAttribute(model.gradient, true), negativeBarColorSameAsPositive: BaseXform.toBoolAttribute( model.negativeBarColorSameAsPositive, true ), negativeBarBorderColorSameAsPositive: BaseXform.toBoolAttribute( model.negativeBarBorderColorSameAsPositive, true ), axisPosition: BaseXform.toAttribute(model.axisPosition, "auto"), direction: BaseXform.toAttribute(model.direction, "leftToRight") }); model.cfvo.forEach((cfvo) => { this.cfvoXform.render(xmlStream, cfvo); }); this.borderColorXform.render(xmlStream, model.borderColor); this.negativeBorderColorXform.render(xmlStream, model.negativeBorderColor); this.negativeFillColorXform.render(xmlStream, model.negativeFillColor); this.axisColorXform.render(xmlStream, model.axisColor); xmlStream.closeNode(); } createNewModel({ attributes }) { return { cfvo: [], minLength: BaseXform.toIntValue(attributes.minLength, 0), maxLength: BaseXform.toIntValue(attributes.maxLength, 100), border: BaseXform.toBoolValue(attributes.border, false), gradient: BaseXform.toBoolValue(attributes.gradient, true), negativeBarColorSameAsPositive: BaseXform.toBoolValue( attributes.negativeBarColorSameAsPositive, true ), negativeBarBorderColorSameAsPositive: BaseXform.toBoolValue( attributes.negativeBarBorderColorSameAsPositive, true ), axisPosition: BaseXform.toStringValue(attributes.axisPosition, "auto"), direction: BaseXform.toStringValue(attributes.direction, "leftToRight") }; } onParserClose(name, parser) { const [, prop] = name.split(":"); switch (prop) { case "cfvo": this.model.cfvo.push(parser.model); break; default: this.model[prop] = parser.model; break; } } }; module2.exports = DatabarExtXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js var require_cf_icon_ext_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var CfIconExtXform = class extends BaseXform { static { __name(this, "CfIconExtXform"); } get tag() { return "x14:cfIcon"; } render(xmlStream, model) { xmlStream.leafNode(this.tag, { iconSet: model.iconSet, iconId: model.iconId }); } parseOpen({ attributes }) { this.model = { iconSet: attributes.iconSet, iconId: BaseXform.toIntValue(attributes.iconId) }; } parseClose(name) { return name !== this.tag; } }; module2.exports = CfIconExtXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js var require_icon_set_ext_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var CompositeXform = require_composite_xform(); var CfvoExtXform = require_cfvo_ext_xform(); var CfIconExtXform = require_cf_icon_ext_xform(); var IconSetExtXform = class extends CompositeXform { static { __name(this, "IconSetExtXform"); } constructor() { super(); this.map = { "x14:cfvo": this.cfvoXform = new CfvoExtXform(), "x14:cfIcon": this.cfIconXform = new CfIconExtXform() }; } get tag() { return "x14:iconSet"; } render(xmlStream, model) { xmlStream.openNode(this.tag, { iconSet: BaseXform.toStringAttribute(model.iconSet), reverse: BaseXform.toBoolAttribute(model.reverse, false), showValue: BaseXform.toBoolAttribute(model.showValue, true), custom: BaseXform.toBoolAttribute(model.icons, false) }); model.cfvo.forEach((cfvo) => { this.cfvoXform.render(xmlStream, cfvo); }); if (model.icons) { model.icons.forEach((icon, i) => { icon.iconId = i; this.cfIconXform.render(xmlStream, icon); }); } xmlStream.closeNode(); } createNewModel({ attributes }) { return { cfvo: [], iconSet: BaseXform.toStringValue(attributes.iconSet, "3TrafficLights"), reverse: BaseXform.toBoolValue(attributes.reverse, false), showValue: BaseXform.toBoolValue(attributes.showValue, true) }; } onParserClose(name, parser) { const [, prop] = name.split(":"); switch (prop) { case "cfvo": this.model.cfvo.push(parser.model); break; case "cfIcon": if (!this.model.icons) { this.model.icons = []; } this.model.icons.push(parser.model); break; default: this.model[prop] = parser.model; break; } } }; module2.exports = IconSetExtXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js var require_cf_rule_ext_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js"(exports2, module2) { var { v4: uuidv4 } = (init_esm_node(), __toCommonJS(esm_node_exports)); var BaseXform = require_base_xform(); var CompositeXform = require_composite_xform(); var DatabarExtXform = require_databar_ext_xform(); var IconSetExtXform = require_icon_set_ext_xform(); var extIcons = { "3Triangles": true, "3Stars": true, "5Boxes": true }; var CfRuleExtXform = class _CfRuleExtXform extends CompositeXform { static { __name(this, "CfRuleExtXform"); } constructor() { super(); this.map = { "x14:dataBar": this.databarXform = new DatabarExtXform(), "x14:iconSet": this.iconSetXform = new IconSetExtXform() }; } get tag() { return "x14:cfRule"; } static isExt(rule) { if (rule.type === "dataBar") { return DatabarExtXform.isExt(rule); } if (rule.type === "iconSet") { if (rule.custom || extIcons[rule.iconSet]) { return true; } } return false; } prepare(model) { if (_CfRuleExtXform.isExt(model)) { model.x14Id = `{${uuidv4()}}`.toUpperCase(); } } render(xmlStream, model) { if (!_CfRuleExtXform.isExt(model)) { return; } switch (model.type) { case "dataBar": this.renderDataBar(xmlStream, model); break; case "iconSet": this.renderIconSet(xmlStream, model); break; } } renderDataBar(xmlStream, model) { xmlStream.openNode(this.tag, { type: "dataBar", id: model.x14Id }); this.databarXform.render(xmlStream, model); xmlStream.closeNode(); } renderIconSet(xmlStream, model) { xmlStream.openNode(this.tag, { type: "iconSet", priority: model.priority, id: model.x14Id || `{${uuidv4()}}` }); this.iconSetXform.render(xmlStream, model); xmlStream.closeNode(); } createNewModel({ attributes }) { return { type: attributes.type, x14Id: attributes.id, priority: BaseXform.toIntValue(attributes.priority) }; } onParserClose(name, parser) { Object.assign(this.model, parser.model); } }; module2.exports = CfRuleExtXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js var require_sqref_ext_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var SqrefExtXform = class extends BaseXform { static { __name(this, "SqrefExtXform"); } get tag() { return "xm:sqref"; } render(xmlStream, model) { xmlStream.leafNode(this.tag, null, model); } parseOpen() { this.model = ""; } parseText(text) { this.model += text; } parseClose(name) { return name !== this.tag; } }; module2.exports = SqrefExtXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js var require_conditional_formatting_ext_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js"(exports2, module2) { var CompositeXform = require_composite_xform(); var SqRefExtXform = require_sqref_ext_xform(); var CfRuleExtXform = require_cf_rule_ext_xform(); var ConditionalFormattingExtXform = class extends CompositeXform { static { __name(this, "ConditionalFormattingExtXform"); } constructor() { super(); this.map = { "xm:sqref": this.sqRef = new SqRefExtXform(), "x14:cfRule": this.cfRule = new CfRuleExtXform() }; } get tag() { return "x14:conditionalFormatting"; } prepare(model, options) { model.rules.forEach((rule) => { this.cfRule.prepare(rule, options); }); } render(xmlStream, model) { if (!model.rules.some(CfRuleExtXform.isExt)) { return; } xmlStream.openNode(this.tag, { "xmlns:xm": "http://schemas.microsoft.com/office/excel/2006/main" }); model.rules.filter(CfRuleExtXform.isExt).forEach((rule) => this.cfRule.render(xmlStream, rule)); this.sqRef.render(xmlStream, model.ref); xmlStream.closeNode(); } createNewModel() { return { rules: [] }; } onParserClose(name, parser) { switch (name) { case "xm:sqref": this.model.ref = parser.model; break; case "x14:cfRule": this.model.rules.push(parser.model); break; } } }; module2.exports = ConditionalFormattingExtXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js var require_conditional_formattings_ext_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js"(exports2, module2) { var CompositeXform = require_composite_xform(); var CfRuleExtXform = require_cf_rule_ext_xform(); var ConditionalFormattingExtXform = require_conditional_formatting_ext_xform(); var ConditionalFormattingsExtXform = class extends CompositeXform { static { __name(this, "ConditionalFormattingsExtXform"); } constructor() { super(); this.map = { "x14:conditionalFormatting": this.cfXform = new ConditionalFormattingExtXform() }; } get tag() { return "x14:conditionalFormattings"; } hasContent(model) { if (model.hasExtContent === void 0) { model.hasExtContent = model.some((cf) => cf.rules.some(CfRuleExtXform.isExt)); } return model.hasExtContent; } prepare(model, options) { model.forEach((cf) => { this.cfXform.prepare(cf, options); }); } render(xmlStream, model) { if (this.hasContent(model)) { xmlStream.openNode(this.tag); model.forEach((cf) => this.cfXform.render(xmlStream, cf)); xmlStream.closeNode(); } } createNewModel() { return []; } onParserClose(name, parser) { this.model.push(parser.model); } }; module2.exports = ConditionalFormattingsExtXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/ext-lst-xform.js var require_ext_lst_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/ext-lst-xform.js"(exports2, module2) { var CompositeXform = require_composite_xform(); var ConditionalFormattingsExt = require_conditional_formattings_ext_xform(); var ExtXform = class extends CompositeXform { static { __name(this, "ExtXform"); } constructor() { super(); this.map = { "x14:conditionalFormattings": this.conditionalFormattings = new ConditionalFormattingsExt() }; } get tag() { return "ext"; } hasContent(model) { return this.conditionalFormattings.hasContent(model.conditionalFormattings); } prepare(model, options) { this.conditionalFormattings.prepare(model.conditionalFormattings, options); } render(xmlStream, model) { xmlStream.openNode("ext", { uri: "{78C0D931-6437-407d-A8EE-F0AAD7539E65}", "xmlns:x14": "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main" }); this.conditionalFormattings.render(xmlStream, model.conditionalFormattings); xmlStream.closeNode(); } createNewModel() { return {}; } onParserClose(name, parser) { this.model[name] = parser.model; } }; var ExtLstXform = class extends CompositeXform { static { __name(this, "ExtLstXform"); } constructor() { super(); this.map = { ext: this.ext = new ExtXform() }; } get tag() { return "extLst"; } prepare(model, options) { this.ext.prepare(model, options); } hasContent(model) { return this.ext.hasContent(model); } render(xmlStream, model) { if (!this.hasContent(model)) { return; } xmlStream.openNode("extLst"); this.ext.render(xmlStream, model); xmlStream.closeNode(); } createNewModel() { return {}; } onParserClose(name, parser) { Object.assign(this.model, parser.model); } }; module2.exports = ExtLstXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/worksheet-xform.js var require_worksheet_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/sheet/worksheet-xform.js"(exports2, module2) { var _2 = require_under_dash(); var colCache = require_col_cache(); var XmlStream = require_xml_stream(); var RelType = require_rel_type(); var Merges = require_merges(); var BaseXform = require_base_xform(); var ListXform = require_list_xform(); var RowXform = require_row_xform(); var ColXform = require_col_xform(); var DimensionXform = require_dimension_xform(); var HyperlinkXform = require_hyperlink_xform(); var MergeCellXform = require_merge_cell_xform(); var DataValidationsXform = require_data_validations_xform(); var SheetPropertiesXform = require_sheet_properties_xform(); var SheetFormatPropertiesXform = require_sheet_format_properties_xform(); var SheetViewXform = require_sheet_view_xform(); var SheetProtectionXform = require_sheet_protection_xform(); var PageMarginsXform = require_page_margins_xform(); var PageSetupXform = require_page_setup_xform(); var PrintOptionsXform = require_print_options_xform(); var AutoFilterXform = require_auto_filter_xform(); var PictureXform = require_picture_xform(); var DrawingXform = require_drawing_xform(); var TablePartXform = require_table_part_xform(); var RowBreaksXform = require_row_breaks_xform(); var HeaderFooterXform = require_header_footer_xform(); var ConditionalFormattingsXform = require_conditional_formattings_xform(); var ExtListXform = require_ext_lst_xform(); var mergeRule = /* @__PURE__ */ __name((rule, extRule) => { Object.keys(extRule).forEach((key) => { const value = rule[key]; const extValue = extRule[key]; if (value === void 0 && extValue !== void 0) { rule[key] = extValue; } }); }, "mergeRule"); var mergeConditionalFormattings = /* @__PURE__ */ __name((model, extModel) => { if (!extModel || !extModel.length) { return model; } if (!model || !model.length) { return extModel; } const cfMap = {}; const ruleMap = {}; model.forEach((cf) => { cfMap[cf.ref] = cf; cf.rules.forEach((rule) => { const { x14Id } = rule; if (x14Id) { ruleMap[x14Id] = rule; } }); }); extModel.forEach((extCf) => { extCf.rules.forEach((extRule) => { const rule = ruleMap[extRule.x14Id]; if (rule) { mergeRule(rule, extRule); } else if (cfMap[extCf.ref]) { cfMap[extCf.ref].rules.push(extRule); } else { model.push({ ref: extCf.ref, rules: [extRule] }); } }); }); return model; }, "mergeConditionalFormattings"); var WorkSheetXform = class _WorkSheetXform extends BaseXform { static { __name(this, "WorkSheetXform"); } constructor(options) { super(); const { maxRows, maxCols, ignoreNodes } = options || {}; this.ignoreNodes = ignoreNodes || []; this.map = { sheetPr: new SheetPropertiesXform(), dimension: new DimensionXform(), sheetViews: new ListXform({ tag: "sheetViews", count: false, childXform: new SheetViewXform() }), sheetFormatPr: new SheetFormatPropertiesXform(), cols: new ListXform({ tag: "cols", count: false, childXform: new ColXform() }), sheetData: new ListXform({ tag: "sheetData", count: false, empty: true, childXform: new RowXform({ maxItems: maxCols }), maxItems: maxRows }), autoFilter: new AutoFilterXform(), mergeCells: new ListXform({ tag: "mergeCells", count: true, childXform: new MergeCellXform() }), rowBreaks: new RowBreaksXform(), hyperlinks: new ListXform({ tag: "hyperlinks", count: false, childXform: new HyperlinkXform() }), pageMargins: new PageMarginsXform(), dataValidations: new DataValidationsXform(), pageSetup: new PageSetupXform(), headerFooter: new HeaderFooterXform(), printOptions: new PrintOptionsXform(), picture: new PictureXform(), drawing: new DrawingXform(), sheetProtection: new SheetProtectionXform(), tableParts: new ListXform({ tag: "tableParts", count: true, childXform: new TablePartXform() }), conditionalFormatting: new ConditionalFormattingsXform(), extLst: new ExtListXform() }; } prepare(model, options) { options.merges = new Merges(); model.hyperlinks = options.hyperlinks = []; model.comments = options.comments = []; options.formulae = {}; options.siFormulae = 0; this.map.cols.prepare(model.cols, options); this.map.sheetData.prepare(model.rows, options); this.map.conditionalFormatting.prepare(model.conditionalFormattings, options); model.mergeCells = options.merges.mergeCells; const rels = model.rels = []; function nextRid(r) { return `rId${r.length + 1}`; } __name(nextRid, "nextRid"); model.hyperlinks.forEach((hyperlink) => { const rId = nextRid(rels); hyperlink.rId = rId; rels.push({ Id: rId, Type: RelType.Hyperlink, Target: hyperlink.target, TargetMode: "External" }); }); if (model.comments.length > 0) { const comment = { Id: nextRid(rels), Type: RelType.Comments, Target: `../comments${model.id}.xml` }; rels.push(comment); const vmlDrawing = { Id: nextRid(rels), Type: RelType.VmlDrawing, Target: `../drawings/vmlDrawing${model.id}.vml` }; rels.push(vmlDrawing); model.comments.forEach((item) => { item.refAddress = colCache.decodeAddress(item.ref); }); options.commentRefs.push({ commentName: `comments${model.id}`, vmlDrawing: `vmlDrawing${model.id}` }); } const drawingRelsHash = []; let bookImage; model.media.forEach((medium) => { if (medium.type === "background") { const rId = nextRid(rels); bookImage = options.media[medium.imageId]; rels.push({ Id: rId, Type: RelType.Image, Target: `../media/${bookImage.name}.${bookImage.extension}` }); model.background = { rId }; model.image = options.media[medium.imageId]; } else if (medium.type === "image") { let { drawing } = model; bookImage = options.media[medium.imageId]; if (!drawing) { drawing = model.drawing = { rId: nextRid(rels), name: `drawing${++options.drawingsCount}`, anchors: [], rels: [] }; options.drawings.push(drawing); rels.push({ Id: drawing.rId, Type: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing", Target: `../drawings/${drawing.name}.xml` }); } let rIdImage = this.preImageId === medium.imageId ? drawingRelsHash[medium.imageId] : drawingRelsHash[drawing.rels.length]; if (!rIdImage) { rIdImage = nextRid(drawing.rels); drawingRelsHash[drawing.rels.length] = rIdImage; drawing.rels.push({ Id: rIdImage, Type: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image", Target: `../media/${bookImage.name}.${bookImage.extension}` }); } const anchor = { picture: { rId: rIdImage }, range: medium.range }; if (medium.hyperlinks && medium.hyperlinks.hyperlink) { const rIdHyperLink = nextRid(drawing.rels); drawingRelsHash[drawing.rels.length] = rIdHyperLink; anchor.picture.hyperlinks = { tooltip: medium.hyperlinks.tooltip, rId: rIdHyperLink }; drawing.rels.push({ Id: rIdHyperLink, Type: RelType.Hyperlink, Target: medium.hyperlinks.hyperlink, TargetMode: "External" }); } this.preImageId = medium.imageId; drawing.anchors.push(anchor); } }); model.tables.forEach((table) => { const rId = nextRid(rels); table.rId = rId; rels.push({ Id: rId, Type: RelType.Table, Target: `../tables/${table.target}` }); table.columns.forEach((column) => { const { style } = column; if (style) { column.dxfId = options.styles.addDxfStyle(style); } }); }); this.map.extLst.prepare(model, options); } render(xmlStream, model) { xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode("worksheet", _WorkSheetXform.WORKSHEET_ATTRIBUTES); const sheetFormatPropertiesModel = model.properties ? { defaultRowHeight: model.properties.defaultRowHeight, dyDescent: model.properties.dyDescent, outlineLevelCol: model.properties.outlineLevelCol, outlineLevelRow: model.properties.outlineLevelRow } : void 0; if (model.properties && model.properties.defaultColWidth) { sheetFormatPropertiesModel.defaultColWidth = model.properties.defaultColWidth; } const sheetPropertiesModel = { outlineProperties: model.properties && model.properties.outlineProperties, tabColor: model.properties && model.properties.tabColor, pageSetup: model.pageSetup && model.pageSetup.fitToPage ? { fitToPage: model.pageSetup.fitToPage } : void 0 }; const pageMarginsModel = model.pageSetup && model.pageSetup.margins; const printOptionsModel = { showRowColHeaders: model.pageSetup && model.pageSetup.showRowColHeaders, showGridLines: model.pageSetup && model.pageSetup.showGridLines, horizontalCentered: model.pageSetup && model.pageSetup.horizontalCentered, verticalCentered: model.pageSetup && model.pageSetup.verticalCentered }; const sheetProtectionModel = model.sheetProtection; this.map.sheetPr.render(xmlStream, sheetPropertiesModel); this.map.dimension.render(xmlStream, model.dimensions); this.map.sheetViews.render(xmlStream, model.views); this.map.sheetFormatPr.render(xmlStream, sheetFormatPropertiesModel); this.map.cols.render(xmlStream, model.cols); this.map.sheetData.render(xmlStream, model.rows); this.map.sheetProtection.render(xmlStream, sheetProtectionModel); this.map.autoFilter.render(xmlStream, model.autoFilter); this.map.mergeCells.render(xmlStream, model.mergeCells); this.map.conditionalFormatting.render(xmlStream, model.conditionalFormattings); this.map.dataValidations.render(xmlStream, model.dataValidations); this.map.hyperlinks.render(xmlStream, model.hyperlinks); this.map.printOptions.render(xmlStream, printOptionsModel); this.map.pageMargins.render(xmlStream, pageMarginsModel); this.map.pageSetup.render(xmlStream, model.pageSetup); this.map.headerFooter.render(xmlStream, model.headerFooter); this.map.rowBreaks.render(xmlStream, model.rowBreaks); this.map.drawing.render(xmlStream, model.drawing); this.map.picture.render(xmlStream, model.background); this.map.tableParts.render(xmlStream, model.tables); this.map.extLst.render(xmlStream, model); if (model.rels) { model.rels.forEach((rel) => { if (rel.Type === RelType.VmlDrawing) { xmlStream.leafNode("legacyDrawing", { "r:id": rel.Id }); } }); } xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } if (node.name === "worksheet") { _2.each(this.map, (xform) => { xform.reset(); }); return true; } if (this.map[node.name] && !this.ignoreNodes.includes(node.name)) { this.parser = this.map[node.name]; this.parser.parseOpen(node); } return true; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case "worksheet": { const properties = this.map.sheetFormatPr.model || {}; if (this.map.sheetPr.model && this.map.sheetPr.model.tabColor) { properties.tabColor = this.map.sheetPr.model.tabColor; } if (this.map.sheetPr.model && this.map.sheetPr.model.outlineProperties) { properties.outlineProperties = this.map.sheetPr.model.outlineProperties; } const sheetProperties = { fitToPage: this.map.sheetPr.model && this.map.sheetPr.model.pageSetup && this.map.sheetPr.model.pageSetup.fitToPage || false, margins: this.map.pageMargins.model }; const pageSetup = Object.assign(sheetProperties, this.map.pageSetup.model, this.map.printOptions.model); const conditionalFormattings = mergeConditionalFormattings( this.map.conditionalFormatting.model, this.map.extLst.model && this.map.extLst.model["x14:conditionalFormattings"] ); this.model = { dimensions: this.map.dimension.model, cols: this.map.cols.model, rows: this.map.sheetData.model, mergeCells: this.map.mergeCells.model, hyperlinks: this.map.hyperlinks.model, dataValidations: this.map.dataValidations.model, properties, views: this.map.sheetViews.model, pageSetup, headerFooter: this.map.headerFooter.model, background: this.map.picture.model, drawing: this.map.drawing.model, tables: this.map.tableParts.model, conditionalFormattings }; if (this.map.autoFilter.model) { this.model.autoFilter = this.map.autoFilter.model; } if (this.map.sheetProtection.model) { this.model.sheetProtection = this.map.sheetProtection.model; } return false; } default: return true; } } reconcile(model, options) { const rels = (model.relationships || []).reduce((h, rel) => { h[rel.Id] = rel; if (rel.Type === RelType.Comments) { model.comments = options.comments[rel.Target].comments; } if (rel.Type === RelType.VmlDrawing && model.comments && model.comments.length) { const vmlComment = options.vmlDrawings[rel.Target].comments; model.comments.forEach((comment, index) => { comment.note = Object.assign({}, comment.note, vmlComment[index]); }); } return h; }, {}); options.commentsMap = (model.comments || []).reduce((h, comment) => { if (comment.ref) { h[comment.ref] = comment; } return h; }, {}); options.hyperlinkMap = (model.hyperlinks || []).reduce((h, hyperlink) => { if (hyperlink.rId) { h[hyperlink.address] = rels[hyperlink.rId].Target; } return h; }, {}); options.formulae = {}; model.rows = model.rows && model.rows.filter(Boolean) || []; model.rows.forEach((row) => { row.cells = row.cells && row.cells.filter(Boolean) || []; }); this.map.cols.reconcile(model.cols, options); this.map.sheetData.reconcile(model.rows, options); this.map.conditionalFormatting.reconcile(model.conditionalFormattings, options); model.media = []; if (model.drawing) { const drawingRel = rels[model.drawing.rId]; const match = drawingRel.Target.match(/\/drawings\/([a-zA-Z0-9]+)[.][a-zA-Z]{3,4}$/); if (match) { const drawingName = match[1]; const drawing = options.drawings[drawingName]; drawing.anchors.forEach((anchor) => { if (anchor.medium) { const image = { type: "image", imageId: anchor.medium.index, range: anchor.range, hyperlinks: anchor.picture.hyperlinks }; model.media.push(image); } }); } } const backgroundRel = model.background && rels[model.background.rId]; if (backgroundRel) { const target = backgroundRel.Target.split("/media/")[1]; const imageId = options.mediaIndex && options.mediaIndex[target]; if (imageId !== void 0) { model.media.push({ type: "background", imageId }); } } model.tables = (model.tables || []).map((tablePart) => { const rel = rels[tablePart.rId]; return options.tables[rel.Target]; }); delete model.relationships; delete model.hyperlinks; delete model.comments; } }; WorkSheetXform.WORKSHEET_ATTRIBUTES = { xmlns: "http://schemas.openxmlformats.org/spreadsheetml/2006/main", "xmlns:r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships", "xmlns:mc": "http://schemas.openxmlformats.org/markup-compatibility/2006", "mc:Ignorable": "x14ac", "xmlns:x14ac": "http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac" }; module2.exports = WorkSheetXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/base-cell-anchor-xform.js var require_base_cell_anchor_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/base-cell-anchor-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var BaseCellAnchorXform = class extends BaseXform { static { __name(this, "BaseCellAnchorXform"); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.reset(); this.model = { range: { editAs: node.attributes.editAs || "oneCell" } }; break; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } break; } return true; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } reconcilePicture(model, options) { if (model && model.rId) { const rel = options.rels[model.rId]; const match = rel.Target.match(/.*\/media\/(.+[.][a-zA-Z]{3,4})/); if (match) { const name = match[1]; const mediaId = options.mediaIndex[name]; return options.media[mediaId]; } } return void 0; } }; module2.exports = BaseCellAnchorXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/cell-position-xform.js var require_cell_position_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/cell-position-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var IntegerXform = require_integer_xform(); var CellPositionXform = class extends BaseXform { static { __name(this, "CellPositionXform"); } constructor(options) { super(); this.tag = options.tag; this.map = { "xdr:col": new IntegerXform({ tag: "xdr:col", zero: true }), "xdr:colOff": new IntegerXform({ tag: "xdr:colOff", zero: true }), "xdr:row": new IntegerXform({ tag: "xdr:row", zero: true }), "xdr:rowOff": new IntegerXform({ tag: "xdr:rowOff", zero: true }) }; } render(xmlStream, model) { xmlStream.openNode(this.tag); this.map["xdr:col"].render(xmlStream, model.nativeCol); this.map["xdr:colOff"].render(xmlStream, model.nativeColOff); this.map["xdr:row"].render(xmlStream, model.nativeRow); this.map["xdr:rowOff"].render(xmlStream, model.nativeRowOff); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.reset(); break; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } break; } return true; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case this.tag: this.model = { nativeCol: this.map["xdr:col"].model, nativeColOff: this.map["xdr:colOff"].model, nativeRow: this.map["xdr:row"].model, nativeRowOff: this.map["xdr:rowOff"].model }; return false; default: return true; } } }; module2.exports = CellPositionXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/blip-xform.js var require_blip_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/blip-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var BlipXform = class extends BaseXform { static { __name(this, "BlipXform"); } get tag() { return "a:blip"; } render(xmlStream, model) { xmlStream.leafNode(this.tag, { "xmlns:r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships", "r:embed": model.rId, cstate: "print" }); } parseOpen(node) { switch (node.name) { case this.tag: this.model = { rId: node.attributes["r:embed"] }; return true; default: return true; } } parseText() { } parseClose(name) { switch (name) { case this.tag: return false; default: return true; } } }; module2.exports = BlipXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/blip-fill-xform.js var require_blip_fill_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/blip-fill-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var BlipXform = require_blip_xform(); var BlipFillXform = class extends BaseXform { static { __name(this, "BlipFillXform"); } constructor() { super(); this.map = { "a:blip": new BlipXform() }; } get tag() { return "xdr:blipFill"; } render(xmlStream, model) { xmlStream.openNode(this.tag); this.map["a:blip"].render(xmlStream, model); xmlStream.openNode("a:stretch"); xmlStream.leafNode("a:fillRect"); xmlStream.closeNode(); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.reset(); break; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } break; } return true; } parseText() { } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case this.tag: this.model = this.map["a:blip"].model; return false; default: return true; } } }; module2.exports = BlipFillXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/hlink-click-xform.js var require_hlink_click_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/hlink-click-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var HLinkClickXform = class extends BaseXform { static { __name(this, "HLinkClickXform"); } get tag() { return "a:hlinkClick"; } render(xmlStream, model) { if (!(model.hyperlinks && model.hyperlinks.rId)) { return; } xmlStream.leafNode(this.tag, { "xmlns:r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships", "r:id": model.hyperlinks.rId, tooltip: model.hyperlinks.tooltip }); } parseOpen(node) { switch (node.name) { case this.tag: this.model = { hyperlinks: { rId: node.attributes["r:id"], tooltip: node.attributes.tooltip } }; return true; default: return true; } } parseText() { } parseClose() { return false; } }; module2.exports = HLinkClickXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/ext-lst-xform.js var require_ext_lst_xform2 = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/ext-lst-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var ExtLstXform = class extends BaseXform { static { __name(this, "ExtLstXform"); } get tag() { return "a:extLst"; } render(xmlStream) { xmlStream.openNode(this.tag); xmlStream.openNode("a:ext", { uri: "{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}" }); xmlStream.leafNode("a16:creationId", { "xmlns:a16": "http://schemas.microsoft.com/office/drawing/2014/main", id: "{00000000-0008-0000-0000-000002000000}" }); xmlStream.closeNode(); xmlStream.closeNode(); } parseOpen(node) { switch (node.name) { case this.tag: return true; default: return true; } } parseText() { } parseClose(name) { switch (name) { case this.tag: return false; default: return true; } } }; module2.exports = ExtLstXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/c-nv-pr-xform.js var require_c_nv_pr_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/c-nv-pr-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var HlickClickXform = require_hlink_click_xform(); var ExtLstXform = require_ext_lst_xform2(); var CNvPrXform = class extends BaseXform { static { __name(this, "CNvPrXform"); } constructor() { super(); this.map = { "a:hlinkClick": new HlickClickXform(), "a:extLst": new ExtLstXform() }; } get tag() { return "xdr:cNvPr"; } render(xmlStream, model) { xmlStream.openNode(this.tag, { id: model.index, name: `Picture ${model.index}` }); this.map["a:hlinkClick"].render(xmlStream, model); this.map["a:extLst"].render(xmlStream, model); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.reset(); break; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } break; } return true; } parseText() { } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case this.tag: this.model = this.map["a:hlinkClick"].model; return false; default: return true; } } }; module2.exports = CNvPrXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/c-nv-pic-pr-xform.js var require_c_nv_pic_pr_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/c-nv-pic-pr-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var CNvPicPrXform = class extends BaseXform { static { __name(this, "CNvPicPrXform"); } get tag() { return "xdr:cNvPicPr"; } render(xmlStream) { xmlStream.openNode(this.tag); xmlStream.leafNode("a:picLocks", { noChangeAspect: "1" }); xmlStream.closeNode(); } parseOpen(node) { switch (node.name) { case this.tag: return true; default: return true; } } parseText() { } parseClose(name) { switch (name) { case this.tag: return false; default: return true; } } }; module2.exports = CNvPicPrXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/nv-pic-pr-xform.js var require_nv_pic_pr_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/nv-pic-pr-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var CNvPrXform = require_c_nv_pr_xform(); var CNvPicPrXform = require_c_nv_pic_pr_xform(); var NvPicPrXform = class extends BaseXform { static { __name(this, "NvPicPrXform"); } constructor() { super(); this.map = { "xdr:cNvPr": new CNvPrXform(), "xdr:cNvPicPr": new CNvPicPrXform() }; } get tag() { return "xdr:nvPicPr"; } render(xmlStream, model) { xmlStream.openNode(this.tag); this.map["xdr:cNvPr"].render(xmlStream, model); this.map["xdr:cNvPicPr"].render(xmlStream, model); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.reset(); break; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } break; } return true; } parseText() { } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case this.tag: this.model = this.map["xdr:cNvPr"].model; return false; default: return true; } } }; module2.exports = NvPicPrXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/sp-pr.js var require_sp_pr = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/sp-pr.js"(exports2, module2) { module2.exports = { tag: "xdr:spPr", c: [ { tag: "a:xfrm", c: [ { tag: "a:off", $: { x: "0", y: "0" } }, { tag: "a:ext", $: { cx: "0", cy: "0" } } ] }, { tag: "a:prstGeom", $: { prst: "rect" }, c: [{ tag: "a:avLst" }] } ] }; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/pic-xform.js var require_pic_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/pic-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var StaticXform = require_static_xform(); var BlipFillXform = require_blip_fill_xform(); var NvPicPrXform = require_nv_pic_pr_xform(); var spPrJSON = require_sp_pr(); var PicXform = class extends BaseXform { static { __name(this, "PicXform"); } constructor() { super(); this.map = { "xdr:nvPicPr": new NvPicPrXform(), "xdr:blipFill": new BlipFillXform(), "xdr:spPr": new StaticXform(spPrJSON) }; } get tag() { return "xdr:pic"; } prepare(model, options) { model.index = options.index + 1; } render(xmlStream, model) { xmlStream.openNode(this.tag); this.map["xdr:nvPicPr"].render(xmlStream, model); this.map["xdr:blipFill"].render(xmlStream, model); this.map["xdr:spPr"].render(xmlStream, model); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.reset(); break; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } break; } return true; } parseText() { } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.mergeModel(this.parser.model); this.parser = void 0; } return true; } switch (name) { case this.tag: return false; default: return true; } } }; module2.exports = PicXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/two-cell-anchor-xform.js var require_two_cell_anchor_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/two-cell-anchor-xform.js"(exports2, module2) { var BaseCellAnchorXform = require_base_cell_anchor_xform(); var StaticXform = require_static_xform(); var CellPositionXform = require_cell_position_xform(); var PicXform = require_pic_xform(); var TwoCellAnchorXform = class extends BaseCellAnchorXform { static { __name(this, "TwoCellAnchorXform"); } constructor() { super(); this.map = { "xdr:from": new CellPositionXform({ tag: "xdr:from" }), "xdr:to": new CellPositionXform({ tag: "xdr:to" }), "xdr:pic": new PicXform(), "xdr:clientData": new StaticXform({ tag: "xdr:clientData" }) }; } get tag() { return "xdr:twoCellAnchor"; } prepare(model, options) { this.map["xdr:pic"].prepare(model.picture, options); } render(xmlStream, model) { xmlStream.openNode(this.tag, { editAs: model.range.editAs || "oneCell" }); this.map["xdr:from"].render(xmlStream, model.range.tl); this.map["xdr:to"].render(xmlStream, model.range.br); this.map["xdr:pic"].render(xmlStream, model.picture); this.map["xdr:clientData"].render(xmlStream, {}); xmlStream.closeNode(); } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case this.tag: this.model.range.tl = this.map["xdr:from"].model; this.model.range.br = this.map["xdr:to"].model; this.model.picture = this.map["xdr:pic"].model; return false; default: return true; } } reconcile(model, options) { model.medium = this.reconcilePicture(model.picture, options); } }; module2.exports = TwoCellAnchorXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/ext-xform.js var require_ext_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/ext-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var EMU_PER_PIXEL_AT_96_DPI = 9525; var ExtXform = class extends BaseXform { static { __name(this, "ExtXform"); } constructor(options) { super(); this.tag = options.tag; this.map = {}; } render(xmlStream, model) { xmlStream.openNode(this.tag); const width = Math.floor(model.width * EMU_PER_PIXEL_AT_96_DPI); const height = Math.floor(model.height * EMU_PER_PIXEL_AT_96_DPI); xmlStream.addAttribute("cx", width); xmlStream.addAttribute("cy", height); xmlStream.closeNode(); } parseOpen(node) { if (node.name === this.tag) { this.model = { width: parseInt(node.attributes.cx || "0", 10) / EMU_PER_PIXEL_AT_96_DPI, height: parseInt(node.attributes.cy || "0", 10) / EMU_PER_PIXEL_AT_96_DPI }; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = ExtXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/one-cell-anchor-xform.js var require_one_cell_anchor_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/one-cell-anchor-xform.js"(exports2, module2) { var BaseCellAnchorXform = require_base_cell_anchor_xform(); var StaticXform = require_static_xform(); var CellPositionXform = require_cell_position_xform(); var ExtXform = require_ext_xform(); var PicXform = require_pic_xform(); var OneCellAnchorXform = class extends BaseCellAnchorXform { static { __name(this, "OneCellAnchorXform"); } constructor() { super(); this.map = { "xdr:from": new CellPositionXform({ tag: "xdr:from" }), "xdr:ext": new ExtXform({ tag: "xdr:ext" }), "xdr:pic": new PicXform(), "xdr:clientData": new StaticXform({ tag: "xdr:clientData" }) }; } get tag() { return "xdr:oneCellAnchor"; } prepare(model, options) { this.map["xdr:pic"].prepare(model.picture, options); } render(xmlStream, model) { xmlStream.openNode(this.tag, { editAs: model.range.editAs || "oneCell" }); this.map["xdr:from"].render(xmlStream, model.range.tl); this.map["xdr:ext"].render(xmlStream, model.range.ext); this.map["xdr:pic"].render(xmlStream, model.picture); this.map["xdr:clientData"].render(xmlStream, {}); xmlStream.closeNode(); } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case this.tag: this.model.range.tl = this.map["xdr:from"].model; this.model.range.ext = this.map["xdr:ext"].model; this.model.picture = this.map["xdr:pic"].model; return false; default: return true; } } reconcile(model, options) { model.medium = this.reconcilePicture(model.picture, options); } }; module2.exports = OneCellAnchorXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/drawing-xform.js var require_drawing_xform2 = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/drawing/drawing-xform.js"(exports2, module2) { var colCache = require_col_cache(); var XmlStream = require_xml_stream(); var BaseXform = require_base_xform(); var TwoCellAnchorXform = require_two_cell_anchor_xform(); var OneCellAnchorXform = require_one_cell_anchor_xform(); function getAnchorType(model) { const range = typeof model.range === "string" ? colCache.decode(model.range) : model.range; return range.br ? "xdr:twoCellAnchor" : "xdr:oneCellAnchor"; } __name(getAnchorType, "getAnchorType"); var DrawingXform = class _DrawingXform extends BaseXform { static { __name(this, "DrawingXform"); } constructor() { super(); this.map = { "xdr:twoCellAnchor": new TwoCellAnchorXform(), "xdr:oneCellAnchor": new OneCellAnchorXform() }; } prepare(model) { model.anchors.forEach((item, index) => { item.anchorType = getAnchorType(item); const anchor = this.map[item.anchorType]; anchor.prepare(item, { index }); }); } get tag() { return "xdr:wsDr"; } render(xmlStream, model) { xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode(this.tag, _DrawingXform.DRAWING_ATTRIBUTES); model.anchors.forEach((item) => { const anchor = this.map[item.anchorType]; anchor.render(xmlStream, item); }); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.reset(); this.model = { anchors: [] }; break; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } break; } return true; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.model.anchors.push(this.parser.model); this.parser = void 0; } return true; } switch (name) { case this.tag: return false; default: return true; } } reconcile(model, options) { model.anchors.forEach((anchor) => { if (anchor.br) { this.map["xdr:twoCellAnchor"].reconcile(anchor, options); } else { this.map["xdr:oneCellAnchor"].reconcile(anchor, options); } }); } }; DrawingXform.DRAWING_ATTRIBUTES = { "xmlns:xdr": "http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing", "xmlns:a": "http://schemas.openxmlformats.org/drawingml/2006/main" }; module2.exports = DrawingXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/custom-filter-xform.js var require_custom_filter_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/custom-filter-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var CustomFilterXform = class extends BaseXform { static { __name(this, "CustomFilterXform"); } get tag() { return "customFilter"; } render(xmlStream, model) { xmlStream.leafNode(this.tag, { val: model.val, operator: model.operator }); } parseOpen(node) { if (node.name === this.tag) { this.model = { val: node.attributes.val, operator: node.attributes.operator }; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = CustomFilterXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/filter-xform.js var require_filter_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/filter-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var FilterXform = class extends BaseXform { static { __name(this, "FilterXform"); } get tag() { return "filter"; } render(xmlStream, model) { xmlStream.leafNode(this.tag, { val: model.val }); } parseOpen(node) { if (node.name === this.tag) { this.model = { val: node.attributes.val }; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = FilterXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/filter-column-xform.js var require_filter_column_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/filter-column-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var ListXform = require_list_xform(); var CustomFilterXform = require_custom_filter_xform(); var FilterXform = require_filter_xform(); var FilterColumnXform = class extends BaseXform { static { __name(this, "FilterColumnXform"); } constructor() { super(); this.map = { customFilters: new ListXform({ tag: "customFilters", count: false, empty: true, childXform: new CustomFilterXform() }), filters: new ListXform({ tag: "filters", count: false, empty: true, childXform: new FilterXform() }) }; } get tag() { return "filterColumn"; } prepare(model, options) { model.colId = options.index.toString(); } render(xmlStream, model) { if (model.customFilters) { xmlStream.openNode(this.tag, { colId: model.colId, hiddenButton: model.filterButton ? "0" : "1" }); this.map.customFilters.render(xmlStream, model.customFilters); xmlStream.closeNode(); return true; } xmlStream.leafNode(this.tag, { colId: model.colId, hiddenButton: model.filterButton ? "0" : "1" }); return true; } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } const { attributes } = node; switch (node.name) { case this.tag: this.model = { filterButton: attributes.hiddenButton === "0" }; return true; default: this.parser = this.map[node.name]; if (this.parser) { this.parseOpen(node); return true; } throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(node)}`); } } parseText() { } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case this.tag: this.model.customFilters = this.map.customFilters.model; return false; default: return true; } } }; module2.exports = FilterColumnXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/auto-filter-xform.js var require_auto_filter_xform2 = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/auto-filter-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var FilterColumnXform = require_filter_column_xform(); var AutoFilterXform = class extends BaseXform { static { __name(this, "AutoFilterXform"); } constructor() { super(); this.map = { filterColumn: new FilterColumnXform() }; } get tag() { return "autoFilter"; } prepare(model) { model.columns.forEach((column, index) => { this.map.filterColumn.prepare(column, { index }); }); } render(xmlStream, model) { xmlStream.openNode(this.tag, { ref: model.autoFilterRef }); model.columns.forEach((column) => { this.map.filterColumn.render(xmlStream, column); }); xmlStream.closeNode(); return true; } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.model = { autoFilterRef: node.attributes.ref, columns: [] }; return true; default: this.parser = this.map[node.name]; if (this.parser) { this.parseOpen(node); return true; } throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(node)}`); } } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.model.columns.push(this.parser.model); this.parser = void 0; } return true; } switch (name) { case this.tag: return false; default: throw new Error(`Unexpected xml node in parseClose: ${name}`); } } }; module2.exports = AutoFilterXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/table-column-xform.js var require_table_column_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/table-column-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var TableColumnXform = class extends BaseXform { static { __name(this, "TableColumnXform"); } get tag() { return "tableColumn"; } prepare(model, options) { model.id = options.index + 1; } render(xmlStream, model) { xmlStream.leafNode(this.tag, { id: model.id.toString(), name: model.name, totalsRowLabel: model.totalsRowLabel, totalsRowFunction: model.totalsRowFunction, dxfId: model.dxfId }); return true; } parseOpen(node) { if (node.name === this.tag) { const { attributes } = node; this.model = { name: attributes.name, totalsRowLabel: attributes.totalsRowLabel, totalsRowFunction: attributes.totalsRowFunction, dxfId: attributes.dxfId }; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = TableColumnXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/table-style-info-xform.js var require_table_style_info_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/table-style-info-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var TableStyleInfoXform = class extends BaseXform { static { __name(this, "TableStyleInfoXform"); } get tag() { return "tableStyleInfo"; } render(xmlStream, model) { xmlStream.leafNode(this.tag, { name: model.theme ? model.theme : void 0, showFirstColumn: model.showFirstColumn ? "1" : "0", showLastColumn: model.showLastColumn ? "1" : "0", showRowStripes: model.showRowStripes ? "1" : "0", showColumnStripes: model.showColumnStripes ? "1" : "0" }); return true; } parseOpen(node) { if (node.name === this.tag) { const { attributes } = node; this.model = { theme: attributes.name ? attributes.name : null, showFirstColumn: attributes.showFirstColumn === "1", showLastColumn: attributes.showLastColumn === "1", showRowStripes: attributes.showRowStripes === "1", showColumnStripes: attributes.showColumnStripes === "1" }; return true; } return false; } parseText() { } parseClose() { return false; } }; module2.exports = TableStyleInfoXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/table-xform.js var require_table_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/table/table-xform.js"(exports2, module2) { var XmlStream = require_xml_stream(); var BaseXform = require_base_xform(); var ListXform = require_list_xform(); var AutoFilterXform = require_auto_filter_xform2(); var TableColumnXform = require_table_column_xform(); var TableStyleInfoXform = require_table_style_info_xform(); var TableXform = class _TableXform extends BaseXform { static { __name(this, "TableXform"); } constructor() { super(); this.map = { autoFilter: new AutoFilterXform(), tableColumns: new ListXform({ tag: "tableColumns", count: true, empty: true, childXform: new TableColumnXform() }), tableStyleInfo: new TableStyleInfoXform() }; } prepare(model, options) { this.map.autoFilter.prepare(model); this.map.tableColumns.prepare(model.columns, options); } get tag() { return "table"; } render(xmlStream, model) { xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode(this.tag, { ..._TableXform.TABLE_ATTRIBUTES, id: model.id, name: model.name, displayName: model.displayName || model.name, ref: model.tableRef, totalsRowCount: model.totalsRow ? "1" : void 0, totalsRowShown: model.totalsRow ? void 0 : "1", headerRowCount: model.headerRow ? "1" : "0" }); this.map.autoFilter.render(xmlStream, model); this.map.tableColumns.render(xmlStream, model.columns); this.map.tableStyleInfo.render(xmlStream, model.style); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } const { name, attributes } = node; switch (name) { case this.tag: this.reset(); this.model = { name: attributes.name, displayName: attributes.displayName || attributes.name, tableRef: attributes.ref, totalsRow: attributes.totalsRowCount === "1", headerRow: attributes.headerRowCount === "1" }; break; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } break; } return true; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case this.tag: this.model.columns = this.map.tableColumns.model; if (this.map.autoFilter.model) { this.model.autoFilterRef = this.map.autoFilter.model.autoFilterRef; this.map.autoFilter.model.columns.forEach((column, index) => { this.model.columns[index].filterButton = column.filterButton; }); } this.model.style = this.map.tableStyleInfo.model; return false; default: return true; } } reconcile(model, options) { model.columns.forEach((column) => { if (column.dxfId !== void 0) { column.style = options.styles.getDxfStyle(column.dxfId); } }); } }; TableXform.TABLE_ATTRIBUTES = { xmlns: "http://schemas.openxmlformats.org/spreadsheetml/2006/main", "xmlns:mc": "http://schemas.openxmlformats.org/markup-compatibility/2006", "mc:Ignorable": "xr xr3", "xmlns:xr": "http://schemas.microsoft.com/office/spreadsheetml/2014/revision", "xmlns:xr3": "http://schemas.microsoft.com/office/spreadsheetml/2016/revision3" // 'xr:uid': '{00000000-000C-0000-FFFF-FFFF00000000}', }; module2.exports = TableXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/comment-xform.js var require_comment_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/comment-xform.js"(exports2, module2) { var RichTextXform = require_rich_text_xform(); var utils = require_utils21(); var BaseXform = require_base_xform(); var CommentXform = module2.exports = function(model) { this.model = model; }; utils.inherits(CommentXform, BaseXform, { get tag() { return "r"; }, get richTextXform() { if (!this._richTextXform) { this._richTextXform = new RichTextXform(); } return this._richTextXform; }, render(xmlStream, model) { model = model || this.model; xmlStream.openNode("comment", { ref: model.ref, authorId: 0 }); xmlStream.openNode("text"); if (model && model.note && model.note.texts) { model.note.texts.forEach((text) => { this.richTextXform.render(xmlStream, text); }); } xmlStream.closeNode(); xmlStream.closeNode(); }, parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "comment": this.model = { type: "note", note: { texts: [] }, ...node.attributes }; return true; case "r": this.parser = this.richTextXform; this.parser.parseOpen(node); return true; default: return false; } }, parseText(text) { if (this.parser) { this.parser.parseText(text); } }, parseClose(name) { switch (name) { case "comment": return false; case "r": this.model.note.texts.push(this.parser.model); this.parser = void 0; return true; default: if (this.parser) { this.parser.parseClose(name); } return true; } } }); } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/comments-xform.js var require_comments_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/comments-xform.js"(exports2, module2) { var XmlStream = require_xml_stream(); var utils = require_utils21(); var BaseXform = require_base_xform(); var CommentXform = require_comment_xform(); var CommentsXform = module2.exports = function() { this.map = { comment: new CommentXform() }; }; utils.inherits( CommentsXform, BaseXform, { COMMENTS_ATTRIBUTES: { xmlns: "http://schemas.openxmlformats.org/spreadsheetml/2006/main" } }, { render(xmlStream, model) { model = model || this.model; xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode("comments", CommentsXform.COMMENTS_ATTRIBUTES); xmlStream.openNode("authors"); xmlStream.leafNode("author", null, "Author"); xmlStream.closeNode(); xmlStream.openNode("commentList"); model.comments.forEach((comment) => { this.map.comment.render(xmlStream, comment); }); xmlStream.closeNode(); xmlStream.closeNode(); }, parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case "commentList": this.model = { comments: [] }; return true; case "comment": this.parser = this.map.comment; this.parser.parseOpen(node); return true; default: return false; } }, parseText(text) { if (this.parser) { this.parser.parseText(text); } }, parseClose(name) { switch (name) { case "commentList": return false; case "comment": this.model.comments.push(this.parser.model); this.parser = void 0; return true; default: if (this.parser) { this.parser.parseClose(name); } return true; } } } ); } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/vml-textbox-xform.js var require_vml_textbox_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/vml-textbox-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var VmlTextboxXform = class extends BaseXform { static { __name(this, "VmlTextboxXform"); } get tag() { return "v:textbox"; } conversionUnit(value, multiple, unit) { return `${parseFloat(value) * multiple.toFixed(2)}${unit}`; } reverseConversionUnit(inset) { return (inset || "").split(",").map((margin) => { return Number(parseFloat(this.conversionUnit(parseFloat(margin), 0.1, "")).toFixed(2)); }); } render(xmlStream, model) { const attributes = { style: "mso-direction-alt:auto" }; if (model && model.note) { let { inset } = model.note && model.note.margins; if (Array.isArray(inset)) { inset = inset.map((margin) => { return this.conversionUnit(margin, 10, "mm"); }).join(","); } if (inset) { attributes.inset = inset; } } xmlStream.openNode("v:textbox", attributes); xmlStream.leafNode("div", { style: "text-align:left" }); xmlStream.closeNode(); } parseOpen(node) { switch (node.name) { case this.tag: this.model = { inset: this.reverseConversionUnit(node.attributes.inset) }; return true; default: return true; } } parseText() { } parseClose(name) { switch (name) { case this.tag: return false; default: return true; } } }; module2.exports = VmlTextboxXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/vml-anchor-xform.js var require_vml_anchor_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/vml-anchor-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var VmlAnchorXform = class extends BaseXform { static { __name(this, "VmlAnchorXform"); } get tag() { return "x:Anchor"; } getAnchorRect(anchor) { const l2 = Math.floor(anchor.left); const lf = Math.floor((anchor.left - l2) * 68); const t = Math.floor(anchor.top); const tf = Math.floor((anchor.top - t) * 18); const r = Math.floor(anchor.right); const rf = Math.floor((anchor.right - r) * 68); const b = Math.floor(anchor.bottom); const bf = Math.floor((anchor.bottom - b) * 18); return [l2, lf, t, tf, r, rf, b, bf]; } getDefaultRect(ref) { const l2 = ref.col; const lf = 6; const t = Math.max(ref.row - 2, 0); const tf = 14; const r = l2 + 2; const rf = 2; const b = t + 4; const bf = 16; return [l2, lf, t, tf, r, rf, b, bf]; } render(xmlStream, model) { const rect = model.anchor ? this.getAnchorRect(model.anchor) : this.getDefaultRect(model.refAddress); xmlStream.leafNode("x:Anchor", null, rect.join(", ")); } parseOpen(node) { switch (node.name) { case this.tag: this.text = ""; return true; default: return false; } } parseText(text) { this.text = text; } parseClose() { return false; } }; module2.exports = VmlAnchorXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/style/vml-protection-xform.js var require_vml_protection_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/style/vml-protection-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var VmlProtectionXform = class extends BaseXform { static { __name(this, "VmlProtectionXform"); } constructor(model) { super(); this._model = model; } get tag() { return this._model && this._model.tag; } render(xmlStream, model) { xmlStream.leafNode(this.tag, null, model); } parseOpen(node) { switch (node.name) { case this.tag: this.text = ""; return true; default: return false; } } parseText(text) { this.text = text; } parseClose() { return false; } }; module2.exports = VmlProtectionXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/style/vml-position-xform.js var require_vml_position_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/style/vml-position-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var VmlPositionXform = class extends BaseXform { static { __name(this, "VmlPositionXform"); } constructor(model) { super(); this._model = model; } get tag() { return this._model && this._model.tag; } render(xmlStream, model, type) { if (model === type[2]) { xmlStream.leafNode(this.tag); } else if (this.tag === "x:SizeWithCells" && model === type[1]) { xmlStream.leafNode(this.tag); } } parseOpen(node) { switch (node.name) { case this.tag: this.model = {}; this.model[this.tag] = true; return true; default: return false; } } parseText() { } parseClose() { return false; } }; module2.exports = VmlPositionXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/vml-client-data-xform.js var require_vml_client_data_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/vml-client-data-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var VmlAnchorXform = require_vml_anchor_xform(); var VmlProtectionXform = require_vml_protection_xform(); var VmlPositionXform = require_vml_position_xform(); var POSITION_TYPE = ["twoCells", "oneCells", "absolute"]; var VmlClientDataXform = class extends BaseXform { static { __name(this, "VmlClientDataXform"); } constructor() { super(); this.map = { "x:Anchor": new VmlAnchorXform(), "x:Locked": new VmlProtectionXform({ tag: "x:Locked" }), "x:LockText": new VmlProtectionXform({ tag: "x:LockText" }), "x:SizeWithCells": new VmlPositionXform({ tag: "x:SizeWithCells" }), "x:MoveWithCells": new VmlPositionXform({ tag: "x:MoveWithCells" }) }; } get tag() { return "x:ClientData"; } render(xmlStream, model) { const { protection, editAs } = model.note; xmlStream.openNode(this.tag, { ObjectType: "Note" }); this.map["x:MoveWithCells"].render(xmlStream, editAs, POSITION_TYPE); this.map["x:SizeWithCells"].render(xmlStream, editAs, POSITION_TYPE); this.map["x:Anchor"].render(xmlStream, model); this.map["x:Locked"].render(xmlStream, protection.locked); xmlStream.leafNode("x:AutoFill", null, "False"); this.map["x:LockText"].render(xmlStream, protection.lockText); xmlStream.leafNode("x:Row", null, model.refAddress.row - 1); xmlStream.leafNode("x:Column", null, model.refAddress.col - 1); xmlStream.closeNode(); } parseOpen(node) { switch (node.name) { case this.tag: this.reset(); this.model = { anchor: [], protection: {}, editAs: "" }; break; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } break; } return true; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case this.tag: this.normalizeModel(); return false; default: return true; } } normalizeModel() { const position = Object.assign( {}, this.map["x:MoveWithCells"].model, this.map["x:SizeWithCells"].model ); const len = Object.keys(position).length; this.model.editAs = POSITION_TYPE[len]; this.model.anchor = this.map["x:Anchor"].text; this.model.protection.locked = this.map["x:Locked"].text; this.model.protection.lockText = this.map["x:LockText"].text; } }; module2.exports = VmlClientDataXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/vml-shape-xform.js var require_vml_shape_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/vml-shape-xform.js"(exports2, module2) { var BaseXform = require_base_xform(); var VmlTextboxXform = require_vml_textbox_xform(); var VmlClientDataXform = require_vml_client_data_xform(); var VmlShapeXform = class _VmlShapeXform extends BaseXform { static { __name(this, "VmlShapeXform"); } constructor() { super(); this.map = { "v:textbox": new VmlTextboxXform(), "x:ClientData": new VmlClientDataXform() }; } get tag() { return "v:shape"; } render(xmlStream, model, index) { xmlStream.openNode("v:shape", _VmlShapeXform.V_SHAPE_ATTRIBUTES(model, index)); xmlStream.leafNode("v:fill", { color2: "infoBackground [80]" }); xmlStream.leafNode("v:shadow", { color: "none [81]", obscured: "t" }); xmlStream.leafNode("v:path", { "o:connecttype": "none" }); this.map["v:textbox"].render(xmlStream, model); this.map["x:ClientData"].render(xmlStream, model); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.reset(); this.model = { margins: { insetmode: node.attributes["o:insetmode"] }, anchor: "", editAs: "", protection: {} }; break; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } break; } return true; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.parser = void 0; } return true; } switch (name) { case this.tag: this.model.margins.inset = this.map["v:textbox"].model && this.map["v:textbox"].model.inset; this.model.protection = this.map["x:ClientData"].model && this.map["x:ClientData"].model.protection; this.model.anchor = this.map["x:ClientData"].model && this.map["x:ClientData"].model.anchor; this.model.editAs = this.map["x:ClientData"].model && this.map["x:ClientData"].model.editAs; return false; default: return true; } } }; VmlShapeXform.V_SHAPE_ATTRIBUTES = (model, index) => ({ id: `_x0000_s${1025 + index}`, type: "#_x0000_t202", style: "position:absolute; margin-left:105.3pt;margin-top:10.5pt;width:97.8pt;height:59.1pt;z-index:1;visibility:hidden", fillcolor: "infoBackground [80]", strokecolor: "none [81]", "o:insetmode": model.note.margins && model.note.margins.insetmode }); module2.exports = VmlShapeXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/vml-notes-xform.js var require_vml_notes_xform = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xform/comment/vml-notes-xform.js"(exports2, module2) { var XmlStream = require_xml_stream(); var BaseXform = require_base_xform(); var VmlShapeXform = require_vml_shape_xform(); var VmlNotesXform = class _VmlNotesXform extends BaseXform { static { __name(this, "VmlNotesXform"); } constructor() { super(); this.map = { "v:shape": new VmlShapeXform() }; } get tag() { return "xml"; } render(xmlStream, model) { xmlStream.openXml(XmlStream.StdDocAttributes); xmlStream.openNode(this.tag, _VmlNotesXform.DRAWING_ATTRIBUTES); xmlStream.openNode("o:shapelayout", { "v:ext": "edit" }); xmlStream.leafNode("o:idmap", { "v:ext": "edit", data: 1 }); xmlStream.closeNode(); xmlStream.openNode("v:shapetype", { id: "_x0000_t202", coordsize: "21600,21600", "o:spt": 202, path: "m,l,21600r21600,l21600,xe" }); xmlStream.leafNode("v:stroke", { joinstyle: "miter" }); xmlStream.leafNode("v:path", { gradientshapeok: "t", "o:connecttype": "rect" }); xmlStream.closeNode(); model.comments.forEach((item, index) => { this.map["v:shape"].render(xmlStream, item, index); }); xmlStream.closeNode(); } parseOpen(node) { if (this.parser) { this.parser.parseOpen(node); return true; } switch (node.name) { case this.tag: this.reset(); this.model = { comments: [] }; break; default: this.parser = this.map[node.name]; if (this.parser) { this.parser.parseOpen(node); } break; } return true; } parseText(text) { if (this.parser) { this.parser.parseText(text); } } parseClose(name) { if (this.parser) { if (!this.parser.parseClose(name)) { this.model.comments.push(this.parser.model); this.parser = void 0; } return true; } switch (name) { case this.tag: return false; default: return true; } } reconcile(model, options) { model.anchors.forEach((anchor) => { if (anchor.br) { this.map["xdr:twoCellAnchor"].reconcile(anchor, options); } else { this.map["xdr:oneCellAnchor"].reconcile(anchor, options); } }); } }; VmlNotesXform.DRAWING_ATTRIBUTES = { "xmlns:v": "urn:schemas-microsoft-com:vml", "xmlns:o": "urn:schemas-microsoft-com:office:office", "xmlns:x": "urn:schemas-microsoft-com:office:excel" }; module2.exports = VmlNotesXform; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xml/theme1.js var require_theme1 = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xml/theme1.js"(exports2, module2) { module2.exports = '\n '; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xlsx.js var require_xlsx = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/xlsx/xlsx.js"(exports2, module2) { var fs = require("fs"); var JSZip = require_lib12(); var { PassThrough } = require_readable(); var ZipStream = require_zip_stream(); var StreamBuf = require_stream_buf(); var utils = require_utils21(); var XmlStream = require_xml_stream(); var { bufferToString } = require_browser_buffer_decode(); var StylesXform = require_styles_xform(); var CoreXform = require_core_xform(); var SharedStringsXform = require_shared_strings_xform(); var RelationshipsXform = require_relationships_xform(); var ContentTypesXform = require_content_types_xform(); var AppXform = require_app_xform(); var WorkbookXform = require_workbook_xform(); var WorksheetXform = require_worksheet_xform(); var DrawingXform = require_drawing_xform2(); var TableXform = require_table_xform(); var CommentsXform = require_comments_xform(); var VmlNotesXform = require_vml_notes_xform(); var theme1Xml = require_theme1(); function fsReadFileAsync(filename, options) { return new Promise((resolve, reject) => { fs.readFile(filename, options, (error, data) => { if (error) { reject(error); } else { resolve(data); } }); }); } __name(fsReadFileAsync, "fsReadFileAsync"); var XLSX = class _XLSX { static { __name(this, "XLSX"); } constructor(workbook) { this.workbook = workbook; } // =============================================================================== // Workbook // ========================================================================= // Read async readFile(filename, options) { if (!await utils.fs.exists(filename)) { throw new Error(`File not found: ${filename}`); } const stream = fs.createReadStream(filename); try { const workbook = await this.read(stream, options); stream.close(); return workbook; } catch (error) { stream.close(); throw error; } } parseRels(stream) { const xform = new RelationshipsXform(); return xform.parseStream(stream); } parseWorkbook(stream) { const xform = new WorkbookXform(); return xform.parseStream(stream); } parseSharedStrings(stream) { const xform = new SharedStringsXform(); return xform.parseStream(stream); } reconcile(model, options) { const workbookXform = new WorkbookXform(); const worksheetXform = new WorksheetXform(options); const drawingXform = new DrawingXform(); const tableXform = new TableXform(); workbookXform.reconcile(model); const drawingOptions = { media: model.media, mediaIndex: model.mediaIndex }; Object.keys(model.drawings).forEach((name) => { const drawing = model.drawings[name]; const drawingRel = model.drawingRels[name]; if (drawingRel) { drawingOptions.rels = drawingRel.reduce((o, rel) => { o[rel.Id] = rel; return o; }, {}); (drawing.anchors || []).forEach((anchor) => { const hyperlinks = anchor.picture && anchor.picture.hyperlinks; if (hyperlinks && drawingOptions.rels[hyperlinks.rId]) { hyperlinks.hyperlink = drawingOptions.rels[hyperlinks.rId].Target; delete hyperlinks.rId; } }); drawingXform.reconcile(drawing, drawingOptions); } }); const tableOptions = { styles: model.styles }; Object.values(model.tables).forEach((table) => { tableXform.reconcile(table, tableOptions); }); const sheetOptions = { styles: model.styles, sharedStrings: model.sharedStrings, media: model.media, mediaIndex: model.mediaIndex, date1904: model.properties && model.properties.date1904, drawings: model.drawings, comments: model.comments, tables: model.tables, vmlDrawings: model.vmlDrawings }; model.worksheets.forEach((worksheet) => { worksheet.relationships = model.worksheetRels[worksheet.sheetNo]; worksheetXform.reconcile(worksheet, sheetOptions); }); delete model.worksheetHash; delete model.worksheetRels; delete model.globalRels; delete model.sharedStrings; delete model.workbookRels; delete model.sheetDefs; delete model.styles; delete model.mediaIndex; delete model.drawings; delete model.drawingRels; delete model.vmlDrawings; } async _processWorksheetEntry(stream, model, sheetNo, options, path) { const xform = new WorksheetXform(options); const worksheet = await xform.parseStream(stream); worksheet.sheetNo = sheetNo; model.worksheetHash[path] = worksheet; model.worksheets.push(worksheet); } async _processCommentEntry(stream, model, name) { const xform = new CommentsXform(); const comments = await xform.parseStream(stream); model.comments[`../${name}.xml`] = comments; } async _processTableEntry(stream, model, name) { const xform = new TableXform(); const table = await xform.parseStream(stream); model.tables[`../tables/${name}.xml`] = table; } async _processWorksheetRelsEntry(stream, model, sheetNo) { const xform = new RelationshipsXform(); const relationships = await xform.parseStream(stream); model.worksheetRels[sheetNo] = relationships; } async _processMediaEntry(entry, model, filename) { const lastDot = filename.lastIndexOf("."); if (lastDot >= 1) { const extension = filename.substr(lastDot + 1); const name = filename.substr(0, lastDot); await new Promise((resolve, reject) => { const streamBuf = new StreamBuf(); streamBuf.on("finish", () => { model.mediaIndex[filename] = model.media.length; model.mediaIndex[name] = model.media.length; const medium = { type: "image", name, extension, buffer: streamBuf.toBuffer() }; model.media.push(medium); resolve(); }); entry.on("error", (error) => { reject(error); }); entry.pipe(streamBuf); }); } } async _processDrawingEntry(entry, model, name) { const xform = new DrawingXform(); const drawing = await xform.parseStream(entry); model.drawings[name] = drawing; } async _processDrawingRelsEntry(entry, model, name) { const xform = new RelationshipsXform(); const relationships = await xform.parseStream(entry); model.drawingRels[name] = relationships; } async _processVmlDrawingEntry(entry, model, name) { const xform = new VmlNotesXform(); const vmlDrawing = await xform.parseStream(entry); model.vmlDrawings[`../drawings/${name}.vml`] = vmlDrawing; } async _processThemeEntry(entry, model, name) { await new Promise((resolve, reject) => { const stream = new StreamBuf(); entry.on("error", reject); stream.on("error", reject); stream.on("finish", () => { model.themes[name] = stream.read().toString(); resolve(); }); entry.pipe(stream); }); } /** * @deprecated since version 4.0. You should use `#read` instead. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md */ createInputStream() { throw new Error( "`XLSX#createInputStream` is deprecated. You should use `XLSX#read` instead. This method will be removed in version 5.0. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md" ); } async read(stream, options) { if (!stream[Symbol.asyncIterator] && stream.pipe) { stream = stream.pipe(new PassThrough()); } const chunks = []; for await (const chunk of stream) { chunks.push(chunk); } return this.load(Buffer.concat(chunks), options); } async load(data, options) { let buffer; if (options && options.base64) { buffer = Buffer.from(data.toString(), "base64"); } else { buffer = data; } const model = { worksheets: [], worksheetHash: {}, worksheetRels: [], themes: {}, media: [], mediaIndex: {}, drawings: {}, drawingRels: {}, comments: {}, tables: {}, vmlDrawings: {} }; const zip = await JSZip.loadAsync(buffer); for (const entry of Object.values(zip.files)) { if (!entry.dir) { let entryName = entry.name; if (entryName[0] === "/") { entryName = entryName.substr(1); } let stream; if (entryName.match(/xl\/media\//) || // themes are not parsed as stream entryName.match(/xl\/theme\/([a-zA-Z0-9]+)[.]xml/)) { stream = new PassThrough(); stream.write(await entry.async("nodebuffer")); } else { stream = new PassThrough({ writableObjectMode: true, readableObjectMode: true }); let content; if (process.browser) { content = bufferToString(await entry.async("nodebuffer")); } else { content = await entry.async("string"); } const chunkSize = 16 * 1024; for (let i = 0; i < content.length; i += chunkSize) { stream.write(content.substring(i, i + chunkSize)); } } stream.end(); switch (entryName) { case "_rels/.rels": model.globalRels = await this.parseRels(stream); break; case "xl/workbook.xml": { const workbook = await this.parseWorkbook(stream); model.sheets = workbook.sheets; model.definedNames = workbook.definedNames; model.views = workbook.views; model.properties = workbook.properties; model.calcProperties = workbook.calcProperties; break; } case "xl/_rels/workbook.xml.rels": model.workbookRels = await this.parseRels(stream); break; case "xl/sharedStrings.xml": model.sharedStrings = new SharedStringsXform(); await model.sharedStrings.parseStream(stream); break; case "xl/styles.xml": model.styles = new StylesXform(); await model.styles.parseStream(stream); break; case "docProps/app.xml": { const appXform = new AppXform(); const appProperties = await appXform.parseStream(stream); model.company = appProperties.company; model.manager = appProperties.manager; break; } case "docProps/core.xml": { const coreXform = new CoreXform(); const coreProperties = await coreXform.parseStream(stream); Object.assign(model, coreProperties); break; } default: { let match = entryName.match(/xl\/worksheets\/sheet(\d+)[.]xml/); if (match) { await this._processWorksheetEntry(stream, model, match[1], options, entryName); break; } match = entryName.match(/xl\/worksheets\/_rels\/sheet(\d+)[.]xml.rels/); if (match) { await this._processWorksheetRelsEntry(stream, model, match[1]); break; } match = entryName.match(/xl\/theme\/([a-zA-Z0-9]+)[.]xml/); if (match) { await this._processThemeEntry(stream, model, match[1]); break; } match = entryName.match(/xl\/media\/([a-zA-Z0-9]+[.][a-zA-Z0-9]{3,4})$/); if (match) { await this._processMediaEntry(stream, model, match[1]); break; } match = entryName.match(/xl\/drawings\/([a-zA-Z0-9]+)[.]xml/); if (match) { await this._processDrawingEntry(stream, model, match[1]); break; } match = entryName.match(/xl\/(comments\d+)[.]xml/); if (match) { await this._processCommentEntry(stream, model, match[1]); break; } match = entryName.match(/xl\/tables\/(table\d+)[.]xml/); if (match) { await this._processTableEntry(stream, model, match[1]); break; } match = entryName.match(/xl\/drawings\/_rels\/([a-zA-Z0-9]+)[.]xml[.]rels/); if (match) { await this._processDrawingRelsEntry(stream, model, match[1]); break; } match = entryName.match(/xl\/drawings\/(vmlDrawing\d+)[.]vml/); if (match) { await this._processVmlDrawingEntry(stream, model, match[1]); break; } } } } } this.reconcile(model, options); this.workbook.model = model; return this.workbook; } // ========================================================================= // Write async addMedia(zip, model) { await Promise.all( model.media.map(async (medium) => { if (medium.type === "image") { const filename = `xl/media/${medium.name}.${medium.extension}`; if (medium.filename) { const data = await fsReadFileAsync(medium.filename); return zip.append(data, { name: filename }); } if (medium.buffer) { return zip.append(medium.buffer, { name: filename }); } if (medium.base64) { const dataimg64 = medium.base64; const content = dataimg64.substring(dataimg64.indexOf(",") + 1); return zip.append(content, { name: filename, base64: true }); } } throw new Error("Unsupported media"); }) ); } addDrawings(zip, model) { const drawingXform = new DrawingXform(); const relsXform = new RelationshipsXform(); model.worksheets.forEach((worksheet) => { const { drawing } = worksheet; if (drawing) { drawingXform.prepare(drawing, {}); let xml = drawingXform.toXml(drawing); zip.append(xml, { name: `xl/drawings/${drawing.name}.xml` }); xml = relsXform.toXml(drawing.rels); zip.append(xml, { name: `xl/drawings/_rels/${drawing.name}.xml.rels` }); } }); } addTables(zip, model) { const tableXform = new TableXform(); model.worksheets.forEach((worksheet) => { const { tables } = worksheet; tables.forEach((table) => { tableXform.prepare(table, {}); const tableXml = tableXform.toXml(table); zip.append(tableXml, { name: `xl/tables/${table.target}` }); }); }); } async addContentTypes(zip, model) { const xform = new ContentTypesXform(); const xml = xform.toXml(model); zip.append(xml, { name: "[Content_Types].xml" }); } async addApp(zip, model) { const xform = new AppXform(); const xml = xform.toXml(model); zip.append(xml, { name: "docProps/app.xml" }); } async addCore(zip, model) { const coreXform = new CoreXform(); zip.append(coreXform.toXml(model), { name: "docProps/core.xml" }); } async addThemes(zip, model) { const themes = model.themes || { theme1: theme1Xml }; Object.keys(themes).forEach((name) => { const xml = themes[name]; const path = `xl/theme/${name}.xml`; zip.append(xml, { name: path }); }); } async addOfficeRels(zip) { const xform = new RelationshipsXform(); const xml = xform.toXml([ { Id: "rId1", Type: _XLSX.RelType.OfficeDocument, Target: "xl/workbook.xml" }, { Id: "rId2", Type: _XLSX.RelType.CoreProperties, Target: "docProps/core.xml" }, { Id: "rId3", Type: _XLSX.RelType.ExtenderProperties, Target: "docProps/app.xml" } ]); zip.append(xml, { name: "_rels/.rels" }); } async addWorkbookRels(zip, model) { let count = 1; const relationships = [ { Id: `rId${count++}`, Type: _XLSX.RelType.Styles, Target: "styles.xml" }, { Id: `rId${count++}`, Type: _XLSX.RelType.Theme, Target: "theme/theme1.xml" } ]; if (model.sharedStrings.count) { relationships.push({ Id: `rId${count++}`, Type: _XLSX.RelType.SharedStrings, Target: "sharedStrings.xml" }); } model.worksheets.forEach((worksheet) => { worksheet.rId = `rId${count++}`; relationships.push({ Id: worksheet.rId, Type: _XLSX.RelType.Worksheet, Target: `worksheets/sheet${worksheet.id}.xml` }); }); const xform = new RelationshipsXform(); const xml = xform.toXml(relationships); zip.append(xml, { name: "xl/_rels/workbook.xml.rels" }); } async addSharedStrings(zip, model) { if (model.sharedStrings && model.sharedStrings.count) { zip.append(model.sharedStrings.xml, { name: "xl/sharedStrings.xml" }); } } async addStyles(zip, model) { const { xml } = model.styles; if (xml) { zip.append(xml, { name: "xl/styles.xml" }); } } async addWorkbook(zip, model) { const xform = new WorkbookXform(); zip.append(xform.toXml(model), { name: "xl/workbook.xml" }); } async addWorksheets(zip, model) { const worksheetXform = new WorksheetXform(); const relationshipsXform = new RelationshipsXform(); const commentsXform = new CommentsXform(); const vmlNotesXform = new VmlNotesXform(); model.worksheets.forEach((worksheet) => { let xmlStream = new XmlStream(); worksheetXform.render(xmlStream, worksheet); zip.append(xmlStream.xml, { name: `xl/worksheets/sheet${worksheet.id}.xml` }); if (worksheet.rels && worksheet.rels.length) { xmlStream = new XmlStream(); relationshipsXform.render(xmlStream, worksheet.rels); zip.append(xmlStream.xml, { name: `xl/worksheets/_rels/sheet${worksheet.id}.xml.rels` }); } if (worksheet.comments.length > 0) { xmlStream = new XmlStream(); commentsXform.render(xmlStream, worksheet); zip.append(xmlStream.xml, { name: `xl/comments${worksheet.id}.xml` }); xmlStream = new XmlStream(); vmlNotesXform.render(xmlStream, worksheet); zip.append(xmlStream.xml, { name: `xl/drawings/vmlDrawing${worksheet.id}.vml` }); } }); } _finalize(zip) { return new Promise((resolve, reject) => { zip.on("finish", () => { resolve(this); }); zip.on("error", reject); zip.finalize(); }); } prepareModel(model, options) { model.creator = model.creator || "ExcelJS"; model.lastModifiedBy = model.lastModifiedBy || "ExcelJS"; model.created = model.created || /* @__PURE__ */ new Date(); model.modified = model.modified || /* @__PURE__ */ new Date(); model.useSharedStrings = options.useSharedStrings !== void 0 ? options.useSharedStrings : true; model.useStyles = options.useStyles !== void 0 ? options.useStyles : true; model.sharedStrings = new SharedStringsXform(); model.styles = model.useStyles ? new StylesXform(true) : new StylesXform.Mock(); const workbookXform = new WorkbookXform(); const worksheetXform = new WorksheetXform(); workbookXform.prepare(model); const worksheetOptions = { sharedStrings: model.sharedStrings, styles: model.styles, date1904: model.properties.date1904, drawingsCount: 0, media: model.media }; worksheetOptions.drawings = model.drawings = []; worksheetOptions.commentRefs = model.commentRefs = []; let tableCount = 0; model.tables = []; model.worksheets.forEach((worksheet) => { worksheet.tables.forEach((table) => { tableCount++; table.target = `table${tableCount}.xml`; table.id = tableCount; model.tables.push(table); }); worksheetXform.prepare(worksheet, worksheetOptions); }); } async write(stream, options) { options = options || {}; const { model } = this.workbook; const zip = new ZipStream.ZipWriter(options.zip); zip.pipe(stream); this.prepareModel(model, options); await this.addContentTypes(zip, model); await this.addOfficeRels(zip, model); await this.addWorkbookRels(zip, model); await this.addWorksheets(zip, model); await this.addSharedStrings(zip, model); await this.addDrawings(zip, model); await this.addTables(zip, model); await Promise.all([this.addThemes(zip, model), this.addStyles(zip, model)]); await this.addMedia(zip, model); await Promise.all([this.addApp(zip, model), this.addCore(zip, model)]); await this.addWorkbook(zip, model); return this._finalize(zip); } writeFile(filename, options) { const stream = fs.createWriteStream(filename); return new Promise((resolve, reject) => { stream.on("finish", () => { resolve(); }); stream.on("error", (error) => { reject(error); }); this.write(stream, options).then(() => { stream.end(); }).catch((err) => { reject(err); }); }); } async writeBuffer(options) { const stream = new StreamBuf(); await this.write(stream, options); return stream.read(); } }; XLSX.RelType = require_rel_type(); module2.exports = XLSX; } }); // ../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/FormatterOptions.js var require_FormatterOptions = __commonJS({ "../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/FormatterOptions.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.FormatterOptions = void 0; var FormatterOptions = class { static { __name(this, "FormatterOptions"); } constructor(opts = {}) { var _a; this.objectMode = true; this.delimiter = ","; this.rowDelimiter = "\n"; this.quote = '"'; this.escape = this.quote; this.quoteColumns = false; this.quoteHeaders = this.quoteColumns; this.headers = null; this.includeEndRowDelimiter = false; this.writeBOM = false; this.BOM = "\uFEFF"; this.alwaysWriteHeaders = false; Object.assign(this, opts || {}); if (typeof (opts === null || opts === void 0 ? void 0 : opts.quoteHeaders) === "undefined") { this.quoteHeaders = this.quoteColumns; } if ((opts === null || opts === void 0 ? void 0 : opts.quote) === true) { this.quote = '"'; } else if ((opts === null || opts === void 0 ? void 0 : opts.quote) === false) { this.quote = ""; } if (typeof (opts === null || opts === void 0 ? void 0 : opts.escape) !== "string") { this.escape = this.quote; } this.shouldWriteHeaders = !!this.headers && ((_a = opts.writeHeaders) !== null && _a !== void 0 ? _a : true); this.headers = Array.isArray(this.headers) ? this.headers : null; this.escapedQuote = `${this.escape}${this.quote}`; } }; exports2.FormatterOptions = FormatterOptions; } }); // ../../node_modules/.pnpm/lodash.isfunction@3.0.9/node_modules/lodash.isfunction/index.js var require_lodash10 = __commonJS({ "../../node_modules/.pnpm/lodash.isfunction@3.0.9/node_modules/lodash.isfunction/index.js"(exports2, module2) { var asyncTag = "[object AsyncFunction]"; var funcTag = "[object Function]"; var genTag = "[object GeneratorFunction]"; var nullTag = "[object Null]"; var proxyTag = "[object Proxy]"; var undefinedTag = "[object Undefined]"; var freeGlobal = typeof global == "object" && global && global.Object === Object && global; var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = freeGlobal || freeSelf || Function("return this")(); var objectProto = Object.prototype; var hasOwnProperty = objectProto.hasOwnProperty; var nativeObjectToString = objectProto.toString; var Symbol2 = root.Symbol; var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0; function baseGetTag(value) { if (value == null) { return value === void 0 ? undefinedTag : nullTag; } return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value); } __name(baseGetTag, "baseGetTag"); function getRawTag(value) { var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag]; try { value[symToStringTag] = void 0; var unmasked = true; } catch (e) { } var result = nativeObjectToString.call(value); if (unmasked) { if (isOwn) { value[symToStringTag] = tag; } else { delete value[symToStringTag]; } } return result; } __name(getRawTag, "getRawTag"); function objectToString(value) { return nativeObjectToString.call(value); } __name(objectToString, "objectToString"); function isFunction(value) { if (!isObject2(value)) { return false; } var tag = baseGetTag(value); return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; } __name(isFunction, "isFunction"); function isObject2(value) { var type = typeof value; return value != null && (type == "object" || type == "function"); } __name(isObject2, "isObject"); module2.exports = isFunction; } }); // ../../node_modules/.pnpm/lodash.isequal@4.5.0/node_modules/lodash.isequal/index.js var require_lodash11 = __commonJS({ "../../node_modules/.pnpm/lodash.isequal@4.5.0/node_modules/lodash.isequal/index.js"(exports2, module2) { var LARGE_ARRAY_SIZE = 200; var HASH_UNDEFINED = "__lodash_hash_undefined__"; var COMPARE_PARTIAL_FLAG = 1; var COMPARE_UNORDERED_FLAG = 2; var MAX_SAFE_INTEGER = 9007199254740991; var argsTag = "[object Arguments]"; var arrayTag = "[object Array]"; var asyncTag = "[object AsyncFunction]"; var boolTag = "[object Boolean]"; var dateTag = "[object Date]"; var errorTag = "[object Error]"; var funcTag = "[object Function]"; var genTag = "[object GeneratorFunction]"; var mapTag = "[object Map]"; var numberTag = "[object Number]"; var nullTag = "[object Null]"; var objectTag = "[object Object]"; var promiseTag = "[object Promise]"; var proxyTag = "[object Proxy]"; var regexpTag = "[object RegExp]"; var setTag = "[object Set]"; var stringTag = "[object String]"; var symbolTag = "[object Symbol]"; var undefinedTag = "[object Undefined]"; var weakMapTag = "[object WeakMap]"; var arrayBufferTag = "[object ArrayBuffer]"; var dataViewTag = "[object DataView]"; var float32Tag = "[object Float32Array]"; var float64Tag = "[object Float64Array]"; var int8Tag = "[object Int8Array]"; var int16Tag = "[object Int16Array]"; var int32Tag = "[object Int32Array]"; var uint8Tag = "[object Uint8Array]"; var uint8ClampedTag = "[object Uint8ClampedArray]"; var uint16Tag = "[object Uint16Array]"; var uint32Tag = "[object Uint32Array]"; var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; var reIsHostCtor = /^\[object .+?Constructor\]$/; var reIsUint = /^(?:0|[1-9]\d*)$/; var typedArrayTags = {}; typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true; typedArrayTags[argsTag] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false; var freeGlobal = typeof global == "object" && global && global.Object === Object && global; var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = freeGlobal || freeSelf || Function("return this")(); var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; var moduleExports = freeModule && freeModule.exports === freeExports; var freeProcess = moduleExports && freeGlobal.process; var nodeUtil = (function() { try { return freeProcess && freeProcess.binding && freeProcess.binding("util"); } catch (e) { } })(); var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; function arrayFilter(array, predicate) { var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result = []; while (++index < length) { var value = array[index]; if (predicate(value, index, array)) { result[resIndex++] = value; } } return result; } __name(arrayFilter, "arrayFilter"); function arrayPush(array, values) { var index = -1, length = values.length, offset = array.length; while (++index < length) { array[offset + index] = values[index]; } return array; } __name(arrayPush, "arrayPush"); function arraySome(array, predicate) { var index = -1, length = array == null ? 0 : array.length; while (++index < length) { if (predicate(array[index], index, array)) { return true; } } return false; } __name(arraySome, "arraySome"); function baseTimes(n, iteratee) { var index = -1, result = Array(n); while (++index < n) { result[index] = iteratee(index); } return result; } __name(baseTimes, "baseTimes"); function baseUnary(func) { return function(value) { return func(value); }; } __name(baseUnary, "baseUnary"); function cacheHas(cache, key) { return cache.has(key); } __name(cacheHas, "cacheHas"); function getValue(object, key) { return object == null ? void 0 : object[key]; } __name(getValue, "getValue"); function mapToArray(map) { var index = -1, result = Array(map.size); map.forEach(function(value, key) { result[++index] = [key, value]; }); return result; } __name(mapToArray, "mapToArray"); function overArg(func, transform) { return function(arg) { return func(transform(arg)); }; } __name(overArg, "overArg"); function setToArray(set) { var index = -1, result = Array(set.size); set.forEach(function(value) { result[++index] = value; }); return result; } __name(setToArray, "setToArray"); var arrayProto = Array.prototype; var funcProto = Function.prototype; var objectProto = Object.prototype; var coreJsData = root["__core-js_shared__"]; var funcToString = funcProto.toString; var hasOwnProperty = objectProto.hasOwnProperty; var maskSrcKey = (function() { var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); return uid ? "Symbol(src)_1." + uid : ""; })(); var nativeObjectToString = objectProto.toString; var reIsNative = RegExp( "^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" ); var Buffer2 = moduleExports ? root.Buffer : void 0; var Symbol2 = root.Symbol; var Uint8Array2 = root.Uint8Array; var propertyIsEnumerable = objectProto.propertyIsEnumerable; var splice = arrayProto.splice; var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0; var nativeGetSymbols = Object.getOwnPropertySymbols; var nativeIsBuffer = Buffer2 ? Buffer2.isBuffer : void 0; var nativeKeys = overArg(Object.keys, Object); var DataView2 = getNative(root, "DataView"); var Map2 = getNative(root, "Map"); var Promise2 = getNative(root, "Promise"); var Set2 = getNative(root, "Set"); var WeakMap2 = getNative(root, "WeakMap"); var nativeCreate = getNative(Object, "create"); var dataViewCtorString = toSource(DataView2); var mapCtorString = toSource(Map2); var promiseCtorString = toSource(Promise2); var setCtorString = toSource(Set2); var weakMapCtorString = toSource(WeakMap2); var symbolProto = Symbol2 ? Symbol2.prototype : void 0; var symbolValueOf = symbolProto ? symbolProto.valueOf : void 0; function Hash(entries) { var index = -1, length = entries == null ? 0 : entries.length; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(Hash, "Hash"); function hashClear() { this.__data__ = nativeCreate ? nativeCreate(null) : {}; this.size = 0; } __name(hashClear, "hashClear"); function hashDelete(key) { var result = this.has(key) && delete this.__data__[key]; this.size -= result ? 1 : 0; return result; } __name(hashDelete, "hashDelete"); function hashGet(key) { var data = this.__data__; if (nativeCreate) { var result = data[key]; return result === HASH_UNDEFINED ? void 0 : result; } return hasOwnProperty.call(data, key) ? data[key] : void 0; } __name(hashGet, "hashGet"); function hashHas(key) { var data = this.__data__; return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key); } __name(hashHas, "hashHas"); function hashSet(key, value) { var data = this.__data__; this.size += this.has(key) ? 0 : 1; data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value; return this; } __name(hashSet, "hashSet"); Hash.prototype.clear = hashClear; Hash.prototype["delete"] = hashDelete; Hash.prototype.get = hashGet; Hash.prototype.has = hashHas; Hash.prototype.set = hashSet; function ListCache(entries) { var index = -1, length = entries == null ? 0 : entries.length; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(ListCache, "ListCache"); function listCacheClear() { this.__data__ = []; this.size = 0; } __name(listCacheClear, "listCacheClear"); function listCacheDelete(key) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { return false; } var lastIndex = data.length - 1; if (index == lastIndex) { data.pop(); } else { splice.call(data, index, 1); } --this.size; return true; } __name(listCacheDelete, "listCacheDelete"); function listCacheGet(key) { var data = this.__data__, index = assocIndexOf(data, key); return index < 0 ? void 0 : data[index][1]; } __name(listCacheGet, "listCacheGet"); function listCacheHas(key) { return assocIndexOf(this.__data__, key) > -1; } __name(listCacheHas, "listCacheHas"); function listCacheSet(key, value) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { ++this.size; data.push([key, value]); } else { data[index][1] = value; } return this; } __name(listCacheSet, "listCacheSet"); ListCache.prototype.clear = listCacheClear; ListCache.prototype["delete"] = listCacheDelete; ListCache.prototype.get = listCacheGet; ListCache.prototype.has = listCacheHas; ListCache.prototype.set = listCacheSet; function MapCache(entries) { var index = -1, length = entries == null ? 0 : entries.length; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(MapCache, "MapCache"); function mapCacheClear() { this.size = 0; this.__data__ = { "hash": new Hash(), "map": new (Map2 || ListCache)(), "string": new Hash() }; } __name(mapCacheClear, "mapCacheClear"); function mapCacheDelete(key) { var result = getMapData(this, key)["delete"](key); this.size -= result ? 1 : 0; return result; } __name(mapCacheDelete, "mapCacheDelete"); function mapCacheGet(key) { return getMapData(this, key).get(key); } __name(mapCacheGet, "mapCacheGet"); function mapCacheHas(key) { return getMapData(this, key).has(key); } __name(mapCacheHas, "mapCacheHas"); function mapCacheSet(key, value) { var data = getMapData(this, key), size = data.size; data.set(key, value); this.size += data.size == size ? 0 : 1; return this; } __name(mapCacheSet, "mapCacheSet"); MapCache.prototype.clear = mapCacheClear; MapCache.prototype["delete"] = mapCacheDelete; MapCache.prototype.get = mapCacheGet; MapCache.prototype.has = mapCacheHas; MapCache.prototype.set = mapCacheSet; function SetCache(values) { var index = -1, length = values == null ? 0 : values.length; this.__data__ = new MapCache(); while (++index < length) { this.add(values[index]); } } __name(SetCache, "SetCache"); function setCacheAdd(value) { this.__data__.set(value, HASH_UNDEFINED); return this; } __name(setCacheAdd, "setCacheAdd"); function setCacheHas(value) { return this.__data__.has(value); } __name(setCacheHas, "setCacheHas"); SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; SetCache.prototype.has = setCacheHas; function Stack(entries) { var data = this.__data__ = new ListCache(entries); this.size = data.size; } __name(Stack, "Stack"); function stackClear() { this.__data__ = new ListCache(); this.size = 0; } __name(stackClear, "stackClear"); function stackDelete(key) { var data = this.__data__, result = data["delete"](key); this.size = data.size; return result; } __name(stackDelete, "stackDelete"); function stackGet(key) { return this.__data__.get(key); } __name(stackGet, "stackGet"); function stackHas(key) { return this.__data__.has(key); } __name(stackHas, "stackHas"); function stackSet(key, value) { var data = this.__data__; if (data instanceof ListCache) { var pairs = data.__data__; if (!Map2 || pairs.length < LARGE_ARRAY_SIZE - 1) { pairs.push([key, value]); this.size = ++data.size; return this; } data = this.__data__ = new MapCache(pairs); } data.set(key, value); this.size = data.size; return this; } __name(stackSet, "stackSet"); Stack.prototype.clear = stackClear; Stack.prototype["delete"] = stackDelete; Stack.prototype.get = stackGet; Stack.prototype.has = stackHas; Stack.prototype.set = stackSet; function arrayLikeKeys(value, inherited) { var isArr = isArray(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer(value), isType = !isArr && !isArg && !isBuff && isTypedArray(value), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value.length, String) : [], length = result.length; for (var key in value) { if ((inherited || hasOwnProperty.call(value, key)) && !(skipIndexes && // Safari 9 has enumerable `arguments.length` in strict mode. (key == "length" || // Node.js 0.10 has enumerable non-index properties on buffers. isBuff && (key == "offset" || key == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays. isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || // Skip index properties. isIndex(key, length)))) { result.push(key); } } return result; } __name(arrayLikeKeys, "arrayLikeKeys"); function assocIndexOf(array, key) { var length = array.length; while (length--) { if (eq(array[length][0], key)) { return length; } } return -1; } __name(assocIndexOf, "assocIndexOf"); function baseGetAllKeys(object, keysFunc, symbolsFunc) { var result = keysFunc(object); return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); } __name(baseGetAllKeys, "baseGetAllKeys"); function baseGetTag(value) { if (value == null) { return value === void 0 ? undefinedTag : nullTag; } return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value); } __name(baseGetTag, "baseGetTag"); function baseIsArguments(value) { return isObjectLike(value) && baseGetTag(value) == argsTag; } __name(baseIsArguments, "baseIsArguments"); function baseIsEqual(value, other, bitmask, customizer, stack) { if (value === other) { return true; } if (value == null || other == null || !isObjectLike(value) && !isObjectLike(other)) { return value !== value && other !== other; } return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); } __name(baseIsEqual, "baseIsEqual"); function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { var objIsArr = isArray(object), othIsArr = isArray(other), objTag = objIsArr ? arrayTag : getTag(object), othTag = othIsArr ? arrayTag : getTag(other); objTag = objTag == argsTag ? objectTag : objTag; othTag = othTag == argsTag ? objectTag : othTag; var objIsObj = objTag == objectTag, othIsObj = othTag == objectTag, isSameTag = objTag == othTag; if (isSameTag && isBuffer(object)) { if (!isBuffer(other)) { return false; } objIsArr = true; objIsObj = false; } if (isSameTag && !objIsObj) { stack || (stack = new Stack()); return objIsArr || isTypedArray(object) ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); } if (!(bitmask & COMPARE_PARTIAL_FLAG)) { var objIsWrapped = objIsObj && hasOwnProperty.call(object, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty.call(other, "__wrapped__"); if (objIsWrapped || othIsWrapped) { var objUnwrapped = objIsWrapped ? object.value() : object, othUnwrapped = othIsWrapped ? other.value() : other; stack || (stack = new Stack()); return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); } } if (!isSameTag) { return false; } stack || (stack = new Stack()); return equalObjects(object, other, bitmask, customizer, equalFunc, stack); } __name(baseIsEqualDeep, "baseIsEqualDeep"); function baseIsNative(value) { if (!isObject2(value) || isMasked(value)) { return false; } var pattern = isFunction(value) ? reIsNative : reIsHostCtor; return pattern.test(toSource(value)); } __name(baseIsNative, "baseIsNative"); function baseIsTypedArray(value) { return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; } __name(baseIsTypedArray, "baseIsTypedArray"); function baseKeys(object) { if (!isPrototype(object)) { return nativeKeys(object); } var result = []; for (var key in Object(object)) { if (hasOwnProperty.call(object, key) && key != "constructor") { result.push(key); } } return result; } __name(baseKeys, "baseKeys"); function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { var isPartial = bitmask & COMPARE_PARTIAL_FLAG, arrLength = array.length, othLength = other.length; if (arrLength != othLength && !(isPartial && othLength > arrLength)) { return false; } var stacked = stack.get(array); if (stacked && stack.get(other)) { return stacked == other; } var index = -1, result = true, seen = bitmask & COMPARE_UNORDERED_FLAG ? new SetCache() : void 0; stack.set(array, other); stack.set(other, array); while (++index < arrLength) { var arrValue = array[index], othValue = other[index]; if (customizer) { var compared = isPartial ? customizer(othValue, arrValue, index, other, array, stack) : customizer(arrValue, othValue, index, array, other, stack); } if (compared !== void 0) { if (compared) { continue; } result = false; break; } if (seen) { if (!arraySome(other, function(othValue2, othIndex) { if (!cacheHas(seen, othIndex) && (arrValue === othValue2 || equalFunc(arrValue, othValue2, bitmask, customizer, stack))) { return seen.push(othIndex); } })) { result = false; break; } } else if (!(arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { result = false; break; } } stack["delete"](array); stack["delete"](other); return result; } __name(equalArrays, "equalArrays"); function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { switch (tag) { case dataViewTag: if (object.byteLength != other.byteLength || object.byteOffset != other.byteOffset) { return false; } object = object.buffer; other = other.buffer; case arrayBufferTag: if (object.byteLength != other.byteLength || !equalFunc(new Uint8Array2(object), new Uint8Array2(other))) { return false; } return true; case boolTag: case dateTag: case numberTag: return eq(+object, +other); case errorTag: return object.name == other.name && object.message == other.message; case regexpTag: case stringTag: return object == other + ""; case mapTag: var convert = mapToArray; case setTag: var isPartial = bitmask & COMPARE_PARTIAL_FLAG; convert || (convert = setToArray); if (object.size != other.size && !isPartial) { return false; } var stacked = stack.get(object); if (stacked) { return stacked == other; } bitmask |= COMPARE_UNORDERED_FLAG; stack.set(object, other); var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); stack["delete"](object); return result; case symbolTag: if (symbolValueOf) { return symbolValueOf.call(object) == symbolValueOf.call(other); } } return false; } __name(equalByTag, "equalByTag"); function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { var isPartial = bitmask & COMPARE_PARTIAL_FLAG, objProps = getAllKeys(object), objLength = objProps.length, othProps = getAllKeys(other), othLength = othProps.length; if (objLength != othLength && !isPartial) { return false; } var index = objLength; while (index--) { var key = objProps[index]; if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { return false; } } var stacked = stack.get(object); if (stacked && stack.get(other)) { return stacked == other; } var result = true; stack.set(object, other); stack.set(other, object); var skipCtor = isPartial; while (++index < objLength) { key = objProps[index]; var objValue = object[key], othValue = other[key]; if (customizer) { var compared = isPartial ? customizer(othValue, objValue, key, other, object, stack) : customizer(objValue, othValue, key, object, other, stack); } if (!(compared === void 0 ? objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack) : compared)) { result = false; break; } skipCtor || (skipCtor = key == "constructor"); } if (result && !skipCtor) { var objCtor = object.constructor, othCtor = other.constructor; if (objCtor != othCtor && ("constructor" in object && "constructor" in other) && !(typeof objCtor == "function" && objCtor instanceof objCtor && typeof othCtor == "function" && othCtor instanceof othCtor)) { result = false; } } stack["delete"](object); stack["delete"](other); return result; } __name(equalObjects, "equalObjects"); function getAllKeys(object) { return baseGetAllKeys(object, keys, getSymbols); } __name(getAllKeys, "getAllKeys"); function getMapData(map, key) { var data = map.__data__; return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; } __name(getMapData, "getMapData"); function getNative(object, key) { var value = getValue(object, key); return baseIsNative(value) ? value : void 0; } __name(getNative, "getNative"); function getRawTag(value) { var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag]; try { value[symToStringTag] = void 0; var unmasked = true; } catch (e) { } var result = nativeObjectToString.call(value); if (unmasked) { if (isOwn) { value[symToStringTag] = tag; } else { delete value[symToStringTag]; } } return result; } __name(getRawTag, "getRawTag"); var getSymbols = !nativeGetSymbols ? stubArray : function(object) { if (object == null) { return []; } object = Object(object); return arrayFilter(nativeGetSymbols(object), function(symbol) { return propertyIsEnumerable.call(object, symbol); }); }; var getTag = baseGetTag; if (DataView2 && getTag(new DataView2(new ArrayBuffer(1))) != dataViewTag || Map2 && getTag(new Map2()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set2 && getTag(new Set2()) != setTag || WeakMap2 && getTag(new WeakMap2()) != weakMapTag) { getTag = /* @__PURE__ */ __name(function(value) { var result = baseGetTag(value), Ctor = result == objectTag ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : ""; if (ctorString) { switch (ctorString) { case dataViewCtorString: return dataViewTag; case mapCtorString: return mapTag; case promiseCtorString: return promiseTag; case setCtorString: return setTag; case weakMapCtorString: return weakMapTag; } } return result; }, "getTag"); } function isIndex(value, length) { length = length == null ? MAX_SAFE_INTEGER : length; return !!length && (typeof value == "number" || reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); } __name(isIndex, "isIndex"); function isKeyable(value) { var type = typeof value; return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null; } __name(isKeyable, "isKeyable"); function isMasked(func) { return !!maskSrcKey && maskSrcKey in func; } __name(isMasked, "isMasked"); function isPrototype(value) { var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto; return value === proto; } __name(isPrototype, "isPrototype"); function objectToString(value) { return nativeObjectToString.call(value); } __name(objectToString, "objectToString"); function toSource(func) { if (func != null) { try { return funcToString.call(func); } catch (e) { } try { return func + ""; } catch (e) { } } return ""; } __name(toSource, "toSource"); function eq(value, other) { return value === other || value !== value && other !== other; } __name(eq, "eq"); var isArguments = baseIsArguments(/* @__PURE__ */ (function() { return arguments; })()) ? baseIsArguments : function(value) { return isObjectLike(value) && hasOwnProperty.call(value, "callee") && !propertyIsEnumerable.call(value, "callee"); }; var isArray = Array.isArray; function isArrayLike(value) { return value != null && isLength(value.length) && !isFunction(value); } __name(isArrayLike, "isArrayLike"); var isBuffer = nativeIsBuffer || stubFalse; function isEqual(value, other) { return baseIsEqual(value, other); } __name(isEqual, "isEqual"); function isFunction(value) { if (!isObject2(value)) { return false; } var tag = baseGetTag(value); return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; } __name(isFunction, "isFunction"); function isLength(value) { return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; } __name(isLength, "isLength"); function isObject2(value) { var type = typeof value; return value != null && (type == "object" || type == "function"); } __name(isObject2, "isObject"); function isObjectLike(value) { return value != null && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; function keys(object) { return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); } __name(keys, "keys"); function stubArray() { return []; } __name(stubArray, "stubArray"); function stubFalse() { return false; } __name(stubFalse, "stubFalse"); module2.exports = isEqual; } }); // ../../node_modules/.pnpm/lodash.isnil@4.0.0/node_modules/lodash.isnil/index.js var require_lodash12 = __commonJS({ "../../node_modules/.pnpm/lodash.isnil@4.0.0/node_modules/lodash.isnil/index.js"(exports2, module2) { function isNil(value) { return value == null; } __name(isNil, "isNil"); module2.exports = isNil; } }); // ../../node_modules/.pnpm/lodash.escaperegexp@4.1.2/node_modules/lodash.escaperegexp/index.js var require_lodash13 = __commonJS({ "../../node_modules/.pnpm/lodash.escaperegexp@4.1.2/node_modules/lodash.escaperegexp/index.js"(exports2, module2) { var INFINITY = 1 / 0; var symbolTag = "[object Symbol]"; var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; var reHasRegExpChar = RegExp(reRegExpChar.source); var freeGlobal = typeof global == "object" && global && global.Object === Object && global; var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = freeGlobal || freeSelf || Function("return this")(); var objectProto = Object.prototype; var objectToString = objectProto.toString; var Symbol2 = root.Symbol; var symbolProto = Symbol2 ? Symbol2.prototype : void 0; var symbolToString = symbolProto ? symbolProto.toString : void 0; function baseToString(value) { if (typeof value == "string") { return value; } if (isSymbol(value)) { return symbolToString ? symbolToString.call(value) : ""; } var result = value + ""; return result == "0" && 1 / value == -INFINITY ? "-0" : result; } __name(baseToString, "baseToString"); function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); function isSymbol(value) { return typeof value == "symbol" || isObjectLike(value) && objectToString.call(value) == symbolTag; } __name(isSymbol, "isSymbol"); function toString2(value) { return value == null ? "" : baseToString(value); } __name(toString2, "toString"); function escapeRegExp(string) { string = toString2(string); return string && reHasRegExpChar.test(string) ? string.replace(reRegExpChar, "\\$&") : string; } __name(escapeRegExp, "escapeRegExp"); module2.exports = escapeRegExp; } }); // ../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/formatter/FieldFormatter.js var require_FieldFormatter = __commonJS({ "../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/formatter/FieldFormatter.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.FieldFormatter = void 0; var lodash_isboolean_1 = __importDefault2(require_lodash4()); var lodash_isnil_1 = __importDefault2(require_lodash12()); var lodash_escaperegexp_1 = __importDefault2(require_lodash13()); var FieldFormatter = class { static { __name(this, "FieldFormatter"); } constructor(formatterOptions) { this._headers = null; this.formatterOptions = formatterOptions; if (formatterOptions.headers !== null) { this.headers = formatterOptions.headers; } this.REPLACE_REGEXP = new RegExp(formatterOptions.quote, "g"); const escapePattern = `[${formatterOptions.delimiter}${lodash_escaperegexp_1.default(formatterOptions.rowDelimiter)}|\r| ]`; this.ESCAPE_REGEXP = new RegExp(escapePattern); } set headers(headers) { this._headers = headers; } shouldQuote(fieldIndex, isHeader) { const quoteConfig = isHeader ? this.formatterOptions.quoteHeaders : this.formatterOptions.quoteColumns; if (lodash_isboolean_1.default(quoteConfig)) { return quoteConfig; } if (Array.isArray(quoteConfig)) { return quoteConfig[fieldIndex]; } if (this._headers !== null) { return quoteConfig[this._headers[fieldIndex]]; } return false; } format(field, fieldIndex, isHeader) { const preparedField = `${lodash_isnil_1.default(field) ? "" : field}`.replace(/\0/g, ""); const { formatterOptions } = this; if (formatterOptions.quote !== "") { const shouldEscape = preparedField.indexOf(formatterOptions.quote) !== -1; if (shouldEscape) { return this.quoteField(preparedField.replace(this.REPLACE_REGEXP, formatterOptions.escapedQuote)); } } const hasEscapeCharacters = preparedField.search(this.ESCAPE_REGEXP) !== -1; if (hasEscapeCharacters || this.shouldQuote(fieldIndex, isHeader)) { return this.quoteField(preparedField); } return preparedField; } quoteField(field) { const { quote } = this.formatterOptions; return `${quote}${field}${quote}`; } }; exports2.FieldFormatter = FieldFormatter; } }); // ../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/types.js var require_types5 = __commonJS({ "../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/types.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isSyncTransform = void 0; exports2.isSyncTransform = (transform) => transform.length === 1; } }); // ../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/formatter/RowFormatter.js var require_RowFormatter = __commonJS({ "../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/formatter/RowFormatter.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RowFormatter = void 0; var lodash_isfunction_1 = __importDefault2(require_lodash10()); var lodash_isequal_1 = __importDefault2(require_lodash11()); var FieldFormatter_1 = require_FieldFormatter(); var types_1 = require_types5(); var RowFormatter = class _RowFormatter { static { __name(this, "RowFormatter"); } constructor(formatterOptions) { this.rowCount = 0; this.formatterOptions = formatterOptions; this.fieldFormatter = new FieldFormatter_1.FieldFormatter(formatterOptions); this.headers = formatterOptions.headers; this.shouldWriteHeaders = formatterOptions.shouldWriteHeaders; this.hasWrittenHeaders = false; if (this.headers !== null) { this.fieldFormatter.headers = this.headers; } if (formatterOptions.transform) { this.rowTransform = formatterOptions.transform; } } static isRowHashArray(row) { if (Array.isArray(row)) { return Array.isArray(row[0]) && row[0].length === 2; } return false; } static isRowArray(row) { return Array.isArray(row) && !this.isRowHashArray(row); } // get headers from a row item static gatherHeaders(row) { if (_RowFormatter.isRowHashArray(row)) { return row.map((it) => it[0]); } if (Array.isArray(row)) { return row; } return Object.keys(row); } // eslint-disable-next-line @typescript-eslint/no-shadow static createTransform(transformFunction) { if (types_1.isSyncTransform(transformFunction)) { return (row, cb) => { let transformedRow = null; try { transformedRow = transformFunction(row); } catch (e) { return cb(e); } return cb(null, transformedRow); }; } return (row, cb) => { transformFunction(row, cb); }; } set rowTransform(transformFunction) { if (!lodash_isfunction_1.default(transformFunction)) { throw new TypeError("The transform should be a function"); } this._rowTransform = _RowFormatter.createTransform(transformFunction); } format(row, cb) { this.callTransformer(row, (err, transformedRow) => { if (err) { return cb(err); } if (!row) { return cb(null); } const rows = []; if (transformedRow) { const { shouldFormatColumns, headers } = this.checkHeaders(transformedRow); if (this.shouldWriteHeaders && headers && !this.hasWrittenHeaders) { rows.push(this.formatColumns(headers, true)); this.hasWrittenHeaders = true; } if (shouldFormatColumns) { const columns = this.gatherColumns(transformedRow); rows.push(this.formatColumns(columns, false)); } } return cb(null, rows); }); } finish(cb) { const rows = []; if (this.formatterOptions.alwaysWriteHeaders && this.rowCount === 0) { if (!this.headers) { return cb(new Error("`alwaysWriteHeaders` option is set to true but `headers` option not provided.")); } rows.push(this.formatColumns(this.headers, true)); } if (this.formatterOptions.includeEndRowDelimiter) { rows.push(this.formatterOptions.rowDelimiter); } return cb(null, rows); } // check if we need to write header return true if we should also write a row // could be false if headers is true and the header row(first item) is passed in checkHeaders(row) { if (this.headers) { return { shouldFormatColumns: true, headers: this.headers }; } const headers = _RowFormatter.gatherHeaders(row); this.headers = headers; this.fieldFormatter.headers = headers; if (!this.shouldWriteHeaders) { return { shouldFormatColumns: true, headers: null }; } return { shouldFormatColumns: !lodash_isequal_1.default(headers, row), headers }; } // todo change this method to unknown[] gatherColumns(row) { if (this.headers === null) { throw new Error("Headers is currently null"); } if (!Array.isArray(row)) { return this.headers.map((header) => row[header]); } if (_RowFormatter.isRowHashArray(row)) { return this.headers.map((header, i) => { const col = row[i]; if (col) { return col[1]; } return ""; }); } if (_RowFormatter.isRowArray(row) && !this.shouldWriteHeaders) { return row; } return this.headers.map((header, i) => row[i]); } callTransformer(row, cb) { if (!this._rowTransform) { return cb(null, row); } return this._rowTransform(row, cb); } formatColumns(columns, isHeadersRow) { const formattedCols = columns.map((field, i) => this.fieldFormatter.format(field, i, isHeadersRow)).join(this.formatterOptions.delimiter); const { rowCount } = this; this.rowCount += 1; if (rowCount) { return [this.formatterOptions.rowDelimiter, formattedCols].join(""); } return formattedCols; } }; exports2.RowFormatter = RowFormatter; } }); // ../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/formatter/index.js var require_formatter = __commonJS({ "../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/formatter/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.FieldFormatter = exports2.RowFormatter = void 0; var RowFormatter_1 = require_RowFormatter(); Object.defineProperty(exports2, "RowFormatter", { enumerable: true, get: /* @__PURE__ */ __name(function() { return RowFormatter_1.RowFormatter; }, "get") }); var FieldFormatter_1 = require_FieldFormatter(); Object.defineProperty(exports2, "FieldFormatter", { enumerable: true, get: /* @__PURE__ */ __name(function() { return FieldFormatter_1.FieldFormatter; }, "get") }); } }); // ../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/CsvFormatterStream.js var require_CsvFormatterStream = __commonJS({ "../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/CsvFormatterStream.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CsvFormatterStream = void 0; var stream_1 = require("stream"); var formatter_1 = require_formatter(); var CsvFormatterStream = class extends stream_1.Transform { static { __name(this, "CsvFormatterStream"); } constructor(formatterOptions) { super({ writableObjectMode: formatterOptions.objectMode }); this.hasWrittenBOM = false; this.formatterOptions = formatterOptions; this.rowFormatter = new formatter_1.RowFormatter(formatterOptions); this.hasWrittenBOM = !formatterOptions.writeBOM; } transform(transformFunction) { this.rowFormatter.rowTransform = transformFunction; return this; } _transform(row, encoding, cb) { let cbCalled = false; try { if (!this.hasWrittenBOM) { this.push(this.formatterOptions.BOM); this.hasWrittenBOM = true; } this.rowFormatter.format(row, (err, rows) => { if (err) { cbCalled = true; return cb(err); } if (rows) { rows.forEach((r) => { this.push(Buffer.from(r, "utf8")); }); } cbCalled = true; return cb(); }); } catch (e) { if (cbCalled) { throw e; } cb(e); } } _flush(cb) { this.rowFormatter.finish((err, rows) => { if (err) { return cb(err); } if (rows) { rows.forEach((r) => { this.push(Buffer.from(r, "utf8")); }); } return cb(); }); } }; exports2.CsvFormatterStream = CsvFormatterStream; } }); // ../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/index.js var require_src3 = __commonJS({ "../../node_modules/.pnpm/@fast-csv+format@4.3.5/node_modules/@fast-csv/format/build/src/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar2 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding2(result, mod, k); } __setModuleDefault2(result, mod); return result; }; var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.writeToPath = exports2.writeToString = exports2.writeToBuffer = exports2.writeToStream = exports2.write = exports2.format = exports2.FormatterOptions = exports2.CsvFormatterStream = void 0; var util_1 = require("util"); var stream_1 = require("stream"); var fs = __importStar2(require("fs")); var FormatterOptions_1 = require_FormatterOptions(); var CsvFormatterStream_1 = require_CsvFormatterStream(); __exportStar2(require_types5(), exports2); var CsvFormatterStream_2 = require_CsvFormatterStream(); Object.defineProperty(exports2, "CsvFormatterStream", { enumerable: true, get: /* @__PURE__ */ __name(function() { return CsvFormatterStream_2.CsvFormatterStream; }, "get") }); var FormatterOptions_2 = require_FormatterOptions(); Object.defineProperty(exports2, "FormatterOptions", { enumerable: true, get: /* @__PURE__ */ __name(function() { return FormatterOptions_2.FormatterOptions; }, "get") }); exports2.format = (options) => new CsvFormatterStream_1.CsvFormatterStream(new FormatterOptions_1.FormatterOptions(options)); exports2.write = (rows, options) => { const csvStream = exports2.format(options); const promiseWrite = util_1.promisify((row, cb) => { csvStream.write(row, void 0, cb); }); rows.reduce((prev, row) => prev.then(() => promiseWrite(row)), Promise.resolve()).then(() => csvStream.end()).catch((err) => { csvStream.emit("error", err); }); return csvStream; }; exports2.writeToStream = (ws, rows, options) => exports2.write(rows, options).pipe(ws); exports2.writeToBuffer = (rows, opts = {}) => { const buffers = []; const ws = new stream_1.Writable({ write(data, enc, writeCb) { buffers.push(data); writeCb(); } }); return new Promise((res, rej) => { ws.on("error", rej).on("finish", () => res(Buffer.concat(buffers))); exports2.write(rows, opts).pipe(ws); }); }; exports2.writeToString = (rows, options) => exports2.writeToBuffer(rows, options).then((buffer) => buffer.toString()); exports2.writeToPath = (path, rows, options) => { const stream = fs.createWriteStream(path, { encoding: "utf8" }); return exports2.write(rows, options).pipe(stream); }; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/ParserOptions.js var require_ParserOptions = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/ParserOptions.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ParserOptions = void 0; var lodash_escaperegexp_1 = __importDefault2(require_lodash13()); var lodash_isnil_1 = __importDefault2(require_lodash12()); var ParserOptions = class { static { __name(this, "ParserOptions"); } constructor(opts) { var _a; this.objectMode = true; this.delimiter = ","; this.ignoreEmpty = false; this.quote = '"'; this.escape = null; this.escapeChar = this.quote; this.comment = null; this.supportsComments = false; this.ltrim = false; this.rtrim = false; this.trim = false; this.headers = null; this.renameHeaders = false; this.strictColumnHandling = false; this.discardUnmappedColumns = false; this.carriageReturn = "\r"; this.encoding = "utf8"; this.limitRows = false; this.maxRows = 0; this.skipLines = 0; this.skipRows = 0; Object.assign(this, opts || {}); if (this.delimiter.length > 1) { throw new Error("delimiter option must be one character long"); } this.escapedDelimiter = lodash_escaperegexp_1.default(this.delimiter); this.escapeChar = (_a = this.escape) !== null && _a !== void 0 ? _a : this.quote; this.supportsComments = !lodash_isnil_1.default(this.comment); this.NEXT_TOKEN_REGEXP = new RegExp(`([^\\s]|\\r\\n|\\n|\\r|${this.escapedDelimiter})`); if (this.maxRows > 0) { this.limitRows = true; } } }; exports2.ParserOptions = ParserOptions; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/types.js var require_types6 = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/types.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.isSyncValidate = exports2.isSyncTransform = void 0; exports2.isSyncTransform = (transform) => transform.length === 1; exports2.isSyncValidate = (validate2) => validate2.length === 1; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/transforms/RowTransformerValidator.js var require_RowTransformerValidator = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/transforms/RowTransformerValidator.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RowTransformerValidator = void 0; var lodash_isfunction_1 = __importDefault2(require_lodash10()); var types_1 = require_types6(); var RowTransformerValidator = class _RowTransformerValidator { static { __name(this, "RowTransformerValidator"); } constructor() { this._rowTransform = null; this._rowValidator = null; } // eslint-disable-next-line @typescript-eslint/no-shadow static createTransform(transformFunction) { if (types_1.isSyncTransform(transformFunction)) { return (row, cb) => { let transformed = null; try { transformed = transformFunction(row); } catch (e) { return cb(e); } return cb(null, transformed); }; } return transformFunction; } static createValidator(validateFunction) { if (types_1.isSyncValidate(validateFunction)) { return (row, cb) => { cb(null, { row, isValid: validateFunction(row) }); }; } return (row, cb) => { validateFunction(row, (err, isValid, reason) => { if (err) { return cb(err); } if (isValid) { return cb(null, { row, isValid, reason }); } return cb(null, { row, isValid: false, reason }); }); }; } set rowTransform(transformFunction) { if (!lodash_isfunction_1.default(transformFunction)) { throw new TypeError("The transform should be a function"); } this._rowTransform = _RowTransformerValidator.createTransform(transformFunction); } set rowValidator(validateFunction) { if (!lodash_isfunction_1.default(validateFunction)) { throw new TypeError("The validate should be a function"); } this._rowValidator = _RowTransformerValidator.createValidator(validateFunction); } transformAndValidate(row, cb) { return this.callTransformer(row, (transformErr, transformedRow) => { if (transformErr) { return cb(transformErr); } if (!transformedRow) { return cb(null, { row: null, isValid: true }); } return this.callValidator(transformedRow, (validateErr, validationResult) => { if (validateErr) { return cb(validateErr); } if (validationResult && !validationResult.isValid) { return cb(null, { row: transformedRow, isValid: false, reason: validationResult.reason }); } return cb(null, { row: transformedRow, isValid: true }); }); }); } callTransformer(row, cb) { if (!this._rowTransform) { return cb(null, row); } return this._rowTransform(row, cb); } callValidator(row, cb) { if (!this._rowValidator) { return cb(null, { row, isValid: true }); } return this._rowValidator(row, cb); } }; exports2.RowTransformerValidator = RowTransformerValidator; } }); // ../../node_modules/.pnpm/lodash.isundefined@3.0.1/node_modules/lodash.isundefined/index.js var require_lodash14 = __commonJS({ "../../node_modules/.pnpm/lodash.isundefined@3.0.1/node_modules/lodash.isundefined/index.js"(exports2, module2) { function isUndefined(value) { return value === void 0; } __name(isUndefined, "isUndefined"); module2.exports = isUndefined; } }); // ../../node_modules/.pnpm/lodash.uniq@4.5.0/node_modules/lodash.uniq/index.js var require_lodash15 = __commonJS({ "../../node_modules/.pnpm/lodash.uniq@4.5.0/node_modules/lodash.uniq/index.js"(exports2, module2) { var LARGE_ARRAY_SIZE = 200; var HASH_UNDEFINED = "__lodash_hash_undefined__"; var INFINITY = 1 / 0; var funcTag = "[object Function]"; var genTag = "[object GeneratorFunction]"; var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; var reIsHostCtor = /^\[object .+?Constructor\]$/; var freeGlobal = typeof global == "object" && global && global.Object === Object && global; var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = freeGlobal || freeSelf || Function("return this")(); function arrayIncludes(array, value) { var length = array ? array.length : 0; return !!length && baseIndexOf(array, value, 0) > -1; } __name(arrayIncludes, "arrayIncludes"); function arrayIncludesWith(array, value, comparator) { var index = -1, length = array ? array.length : 0; while (++index < length) { if (comparator(value, array[index])) { return true; } } return false; } __name(arrayIncludesWith, "arrayIncludesWith"); function baseFindIndex(array, predicate, fromIndex, fromRight) { var length = array.length, index = fromIndex + (fromRight ? 1 : -1); while (fromRight ? index-- : ++index < length) { if (predicate(array[index], index, array)) { return index; } } return -1; } __name(baseFindIndex, "baseFindIndex"); function baseIndexOf(array, value, fromIndex) { if (value !== value) { return baseFindIndex(array, baseIsNaN, fromIndex); } var index = fromIndex - 1, length = array.length; while (++index < length) { if (array[index] === value) { return index; } } return -1; } __name(baseIndexOf, "baseIndexOf"); function baseIsNaN(value) { return value !== value; } __name(baseIsNaN, "baseIsNaN"); function cacheHas(cache, key) { return cache.has(key); } __name(cacheHas, "cacheHas"); function getValue(object, key) { return object == null ? void 0 : object[key]; } __name(getValue, "getValue"); function isHostObject(value) { var result = false; if (value != null && typeof value.toString != "function") { try { result = !!(value + ""); } catch (e) { } } return result; } __name(isHostObject, "isHostObject"); function setToArray(set) { var index = -1, result = Array(set.size); set.forEach(function(value) { result[++index] = value; }); return result; } __name(setToArray, "setToArray"); var arrayProto = Array.prototype; var funcProto = Function.prototype; var objectProto = Object.prototype; var coreJsData = root["__core-js_shared__"]; var maskSrcKey = (function() { var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); return uid ? "Symbol(src)_1." + uid : ""; })(); var funcToString = funcProto.toString; var hasOwnProperty = objectProto.hasOwnProperty; var objectToString = objectProto.toString; var reIsNative = RegExp( "^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" ); var splice = arrayProto.splice; var Map2 = getNative(root, "Map"); var Set2 = getNative(root, "Set"); var nativeCreate = getNative(Object, "create"); function Hash(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(Hash, "Hash"); function hashClear() { this.__data__ = nativeCreate ? nativeCreate(null) : {}; } __name(hashClear, "hashClear"); function hashDelete(key) { return this.has(key) && delete this.__data__[key]; } __name(hashDelete, "hashDelete"); function hashGet(key) { var data = this.__data__; if (nativeCreate) { var result = data[key]; return result === HASH_UNDEFINED ? void 0 : result; } return hasOwnProperty.call(data, key) ? data[key] : void 0; } __name(hashGet, "hashGet"); function hashHas(key) { var data = this.__data__; return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key); } __name(hashHas, "hashHas"); function hashSet(key, value) { var data = this.__data__; data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value; return this; } __name(hashSet, "hashSet"); Hash.prototype.clear = hashClear; Hash.prototype["delete"] = hashDelete; Hash.prototype.get = hashGet; Hash.prototype.has = hashHas; Hash.prototype.set = hashSet; function ListCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(ListCache, "ListCache"); function listCacheClear() { this.__data__ = []; } __name(listCacheClear, "listCacheClear"); function listCacheDelete(key) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { return false; } var lastIndex = data.length - 1; if (index == lastIndex) { data.pop(); } else { splice.call(data, index, 1); } return true; } __name(listCacheDelete, "listCacheDelete"); function listCacheGet(key) { var data = this.__data__, index = assocIndexOf(data, key); return index < 0 ? void 0 : data[index][1]; } __name(listCacheGet, "listCacheGet"); function listCacheHas(key) { return assocIndexOf(this.__data__, key) > -1; } __name(listCacheHas, "listCacheHas"); function listCacheSet(key, value) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { data.push([key, value]); } else { data[index][1] = value; } return this; } __name(listCacheSet, "listCacheSet"); ListCache.prototype.clear = listCacheClear; ListCache.prototype["delete"] = listCacheDelete; ListCache.prototype.get = listCacheGet; ListCache.prototype.has = listCacheHas; ListCache.prototype.set = listCacheSet; function MapCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(MapCache, "MapCache"); function mapCacheClear() { this.__data__ = { "hash": new Hash(), "map": new (Map2 || ListCache)(), "string": new Hash() }; } __name(mapCacheClear, "mapCacheClear"); function mapCacheDelete(key) { return getMapData(this, key)["delete"](key); } __name(mapCacheDelete, "mapCacheDelete"); function mapCacheGet(key) { return getMapData(this, key).get(key); } __name(mapCacheGet, "mapCacheGet"); function mapCacheHas(key) { return getMapData(this, key).has(key); } __name(mapCacheHas, "mapCacheHas"); function mapCacheSet(key, value) { getMapData(this, key).set(key, value); return this; } __name(mapCacheSet, "mapCacheSet"); MapCache.prototype.clear = mapCacheClear; MapCache.prototype["delete"] = mapCacheDelete; MapCache.prototype.get = mapCacheGet; MapCache.prototype.has = mapCacheHas; MapCache.prototype.set = mapCacheSet; function SetCache(values) { var index = -1, length = values ? values.length : 0; this.__data__ = new MapCache(); while (++index < length) { this.add(values[index]); } } __name(SetCache, "SetCache"); function setCacheAdd(value) { this.__data__.set(value, HASH_UNDEFINED); return this; } __name(setCacheAdd, "setCacheAdd"); function setCacheHas(value) { return this.__data__.has(value); } __name(setCacheHas, "setCacheHas"); SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; SetCache.prototype.has = setCacheHas; function assocIndexOf(array, key) { var length = array.length; while (length--) { if (eq(array[length][0], key)) { return length; } } return -1; } __name(assocIndexOf, "assocIndexOf"); function baseIsNative(value) { if (!isObject2(value) || isMasked(value)) { return false; } var pattern = isFunction(value) || isHostObject(value) ? reIsNative : reIsHostCtor; return pattern.test(toSource(value)); } __name(baseIsNative, "baseIsNative"); function baseUniq(array, iteratee, comparator) { var index = -1, includes = arrayIncludes, length = array.length, isCommon = true, result = [], seen = result; if (comparator) { isCommon = false; includes = arrayIncludesWith; } else if (length >= LARGE_ARRAY_SIZE) { var set = iteratee ? null : createSet(array); if (set) { return setToArray(set); } isCommon = false; includes = cacheHas; seen = new SetCache(); } else { seen = iteratee ? [] : result; } outer: while (++index < length) { var value = array[index], computed = iteratee ? iteratee(value) : value; value = comparator || value !== 0 ? value : 0; if (isCommon && computed === computed) { var seenIndex = seen.length; while (seenIndex--) { if (seen[seenIndex] === computed) { continue outer; } } if (iteratee) { seen.push(computed); } result.push(value); } else if (!includes(seen, computed, comparator)) { if (seen !== result) { seen.push(computed); } result.push(value); } } return result; } __name(baseUniq, "baseUniq"); var createSet = !(Set2 && 1 / setToArray(new Set2([, -0]))[1] == INFINITY) ? noop : function(values) { return new Set2(values); }; function getMapData(map, key) { var data = map.__data__; return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; } __name(getMapData, "getMapData"); function getNative(object, key) { var value = getValue(object, key); return baseIsNative(value) ? value : void 0; } __name(getNative, "getNative"); function isKeyable(value) { var type = typeof value; return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null; } __name(isKeyable, "isKeyable"); function isMasked(func) { return !!maskSrcKey && maskSrcKey in func; } __name(isMasked, "isMasked"); function toSource(func) { if (func != null) { try { return funcToString.call(func); } catch (e) { } try { return func + ""; } catch (e) { } } return ""; } __name(toSource, "toSource"); function uniq(array) { return array && array.length ? baseUniq(array) : []; } __name(uniq, "uniq"); function eq(value, other) { return value === other || value !== value && other !== other; } __name(eq, "eq"); function isFunction(value) { var tag = isObject2(value) ? objectToString.call(value) : ""; return tag == funcTag || tag == genTag; } __name(isFunction, "isFunction"); function isObject2(value) { var type = typeof value; return !!value && (type == "object" || type == "function"); } __name(isObject2, "isObject"); function noop() { } __name(noop, "noop"); module2.exports = uniq; } }); // ../../node_modules/.pnpm/lodash.groupby@4.6.0/node_modules/lodash.groupby/index.js var require_lodash16 = __commonJS({ "../../node_modules/.pnpm/lodash.groupby@4.6.0/node_modules/lodash.groupby/index.js"(exports2, module2) { var LARGE_ARRAY_SIZE = 200; var FUNC_ERROR_TEXT = "Expected a function"; var HASH_UNDEFINED = "__lodash_hash_undefined__"; var UNORDERED_COMPARE_FLAG = 1; var PARTIAL_COMPARE_FLAG = 2; var INFINITY = 1 / 0; var MAX_SAFE_INTEGER = 9007199254740991; var argsTag = "[object Arguments]"; var arrayTag = "[object Array]"; var boolTag = "[object Boolean]"; var dateTag = "[object Date]"; var errorTag = "[object Error]"; var funcTag = "[object Function]"; var genTag = "[object GeneratorFunction]"; var mapTag = "[object Map]"; var numberTag = "[object Number]"; var objectTag = "[object Object]"; var promiseTag = "[object Promise]"; var regexpTag = "[object RegExp]"; var setTag = "[object Set]"; var stringTag = "[object String]"; var symbolTag = "[object Symbol]"; var weakMapTag = "[object WeakMap]"; var arrayBufferTag = "[object ArrayBuffer]"; var dataViewTag = "[object DataView]"; var float32Tag = "[object Float32Array]"; var float64Tag = "[object Float64Array]"; var int8Tag = "[object Int8Array]"; var int16Tag = "[object Int16Array]"; var int32Tag = "[object Int32Array]"; var uint8Tag = "[object Uint8Array]"; var uint8ClampedTag = "[object Uint8ClampedArray]"; var uint16Tag = "[object Uint16Array]"; var uint32Tag = "[object Uint32Array]"; var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/; var reIsPlainProp = /^\w*$/; var reLeadingDot = /^\./; var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; var reEscapeChar = /\\(\\)?/g; var reIsHostCtor = /^\[object .+?Constructor\]$/; var reIsUint = /^(?:0|[1-9]\d*)$/; var typedArrayTags = {}; typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true; typedArrayTags[argsTag] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false; var freeGlobal = typeof global == "object" && global && global.Object === Object && global; var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = freeGlobal || freeSelf || Function("return this")(); var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2; var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2; var moduleExports = freeModule && freeModule.exports === freeExports; var freeProcess = moduleExports && freeGlobal.process; var nodeUtil = (function() { try { return freeProcess && freeProcess.binding("util"); } catch (e) { } })(); var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; function arrayAggregator(array, setter, iteratee, accumulator) { var index = -1, length = array ? array.length : 0; while (++index < length) { var value = array[index]; setter(accumulator, value, iteratee(value), array); } return accumulator; } __name(arrayAggregator, "arrayAggregator"); function arraySome(array, predicate) { var index = -1, length = array ? array.length : 0; while (++index < length) { if (predicate(array[index], index, array)) { return true; } } return false; } __name(arraySome, "arraySome"); function baseProperty(key) { return function(object) { return object == null ? void 0 : object[key]; }; } __name(baseProperty, "baseProperty"); function baseTimes(n, iteratee) { var index = -1, result = Array(n); while (++index < n) { result[index] = iteratee(index); } return result; } __name(baseTimes, "baseTimes"); function baseUnary(func) { return function(value) { return func(value); }; } __name(baseUnary, "baseUnary"); function getValue(object, key) { return object == null ? void 0 : object[key]; } __name(getValue, "getValue"); function isHostObject(value) { var result = false; if (value != null && typeof value.toString != "function") { try { result = !!(value + ""); } catch (e) { } } return result; } __name(isHostObject, "isHostObject"); function mapToArray(map) { var index = -1, result = Array(map.size); map.forEach(function(value, key) { result[++index] = [key, value]; }); return result; } __name(mapToArray, "mapToArray"); function overArg(func, transform) { return function(arg) { return func(transform(arg)); }; } __name(overArg, "overArg"); function setToArray(set) { var index = -1, result = Array(set.size); set.forEach(function(value) { result[++index] = value; }); return result; } __name(setToArray, "setToArray"); var arrayProto = Array.prototype; var funcProto = Function.prototype; var objectProto = Object.prototype; var coreJsData = root["__core-js_shared__"]; var maskSrcKey = (function() { var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); return uid ? "Symbol(src)_1." + uid : ""; })(); var funcToString = funcProto.toString; var hasOwnProperty = objectProto.hasOwnProperty; var objectToString = objectProto.toString; var reIsNative = RegExp( "^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" ); var Symbol2 = root.Symbol; var Uint8Array2 = root.Uint8Array; var propertyIsEnumerable = objectProto.propertyIsEnumerable; var splice = arrayProto.splice; var nativeKeys = overArg(Object.keys, Object); var DataView2 = getNative(root, "DataView"); var Map2 = getNative(root, "Map"); var Promise2 = getNative(root, "Promise"); var Set2 = getNative(root, "Set"); var WeakMap2 = getNative(root, "WeakMap"); var nativeCreate = getNative(Object, "create"); var dataViewCtorString = toSource(DataView2); var mapCtorString = toSource(Map2); var promiseCtorString = toSource(Promise2); var setCtorString = toSource(Set2); var weakMapCtorString = toSource(WeakMap2); var symbolProto = Symbol2 ? Symbol2.prototype : void 0; var symbolValueOf = symbolProto ? symbolProto.valueOf : void 0; var symbolToString = symbolProto ? symbolProto.toString : void 0; function Hash(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(Hash, "Hash"); function hashClear() { this.__data__ = nativeCreate ? nativeCreate(null) : {}; } __name(hashClear, "hashClear"); function hashDelete(key) { return this.has(key) && delete this.__data__[key]; } __name(hashDelete, "hashDelete"); function hashGet(key) { var data = this.__data__; if (nativeCreate) { var result = data[key]; return result === HASH_UNDEFINED ? void 0 : result; } return hasOwnProperty.call(data, key) ? data[key] : void 0; } __name(hashGet, "hashGet"); function hashHas(key) { var data = this.__data__; return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key); } __name(hashHas, "hashHas"); function hashSet(key, value) { var data = this.__data__; data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value; return this; } __name(hashSet, "hashSet"); Hash.prototype.clear = hashClear; Hash.prototype["delete"] = hashDelete; Hash.prototype.get = hashGet; Hash.prototype.has = hashHas; Hash.prototype.set = hashSet; function ListCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(ListCache, "ListCache"); function listCacheClear() { this.__data__ = []; } __name(listCacheClear, "listCacheClear"); function listCacheDelete(key) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { return false; } var lastIndex = data.length - 1; if (index == lastIndex) { data.pop(); } else { splice.call(data, index, 1); } return true; } __name(listCacheDelete, "listCacheDelete"); function listCacheGet(key) { var data = this.__data__, index = assocIndexOf(data, key); return index < 0 ? void 0 : data[index][1]; } __name(listCacheGet, "listCacheGet"); function listCacheHas(key) { return assocIndexOf(this.__data__, key) > -1; } __name(listCacheHas, "listCacheHas"); function listCacheSet(key, value) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { data.push([key, value]); } else { data[index][1] = value; } return this; } __name(listCacheSet, "listCacheSet"); ListCache.prototype.clear = listCacheClear; ListCache.prototype["delete"] = listCacheDelete; ListCache.prototype.get = listCacheGet; ListCache.prototype.has = listCacheHas; ListCache.prototype.set = listCacheSet; function MapCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(MapCache, "MapCache"); function mapCacheClear() { this.__data__ = { "hash": new Hash(), "map": new (Map2 || ListCache)(), "string": new Hash() }; } __name(mapCacheClear, "mapCacheClear"); function mapCacheDelete(key) { return getMapData(this, key)["delete"](key); } __name(mapCacheDelete, "mapCacheDelete"); function mapCacheGet(key) { return getMapData(this, key).get(key); } __name(mapCacheGet, "mapCacheGet"); function mapCacheHas(key) { return getMapData(this, key).has(key); } __name(mapCacheHas, "mapCacheHas"); function mapCacheSet(key, value) { getMapData(this, key).set(key, value); return this; } __name(mapCacheSet, "mapCacheSet"); MapCache.prototype.clear = mapCacheClear; MapCache.prototype["delete"] = mapCacheDelete; MapCache.prototype.get = mapCacheGet; MapCache.prototype.has = mapCacheHas; MapCache.prototype.set = mapCacheSet; function SetCache(values) { var index = -1, length = values ? values.length : 0; this.__data__ = new MapCache(); while (++index < length) { this.add(values[index]); } } __name(SetCache, "SetCache"); function setCacheAdd(value) { this.__data__.set(value, HASH_UNDEFINED); return this; } __name(setCacheAdd, "setCacheAdd"); function setCacheHas(value) { return this.__data__.has(value); } __name(setCacheHas, "setCacheHas"); SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; SetCache.prototype.has = setCacheHas; function Stack(entries) { this.__data__ = new ListCache(entries); } __name(Stack, "Stack"); function stackClear() { this.__data__ = new ListCache(); } __name(stackClear, "stackClear"); function stackDelete(key) { return this.__data__["delete"](key); } __name(stackDelete, "stackDelete"); function stackGet(key) { return this.__data__.get(key); } __name(stackGet, "stackGet"); function stackHas(key) { return this.__data__.has(key); } __name(stackHas, "stackHas"); function stackSet(key, value) { var cache = this.__data__; if (cache instanceof ListCache) { var pairs = cache.__data__; if (!Map2 || pairs.length < LARGE_ARRAY_SIZE - 1) { pairs.push([key, value]); return this; } cache = this.__data__ = new MapCache(pairs); } cache.set(key, value); return this; } __name(stackSet, "stackSet"); Stack.prototype.clear = stackClear; Stack.prototype["delete"] = stackDelete; Stack.prototype.get = stackGet; Stack.prototype.has = stackHas; Stack.prototype.set = stackSet; function arrayLikeKeys(value, inherited) { var result = isArray(value) || isArguments(value) ? baseTimes(value.length, String) : []; var length = result.length, skipIndexes = !!length; for (var key in value) { if ((inherited || hasOwnProperty.call(value, key)) && !(skipIndexes && (key == "length" || isIndex(key, length)))) { result.push(key); } } return result; } __name(arrayLikeKeys, "arrayLikeKeys"); function assocIndexOf(array, key) { var length = array.length; while (length--) { if (eq(array[length][0], key)) { return length; } } return -1; } __name(assocIndexOf, "assocIndexOf"); function baseAggregator(collection, setter, iteratee, accumulator) { baseEach(collection, function(value, key, collection2) { setter(accumulator, value, iteratee(value), collection2); }); return accumulator; } __name(baseAggregator, "baseAggregator"); var baseEach = createBaseEach(baseForOwn); var baseFor = createBaseFor(); function baseForOwn(object, iteratee) { return object && baseFor(object, iteratee, keys); } __name(baseForOwn, "baseForOwn"); function baseGet(object, path) { path = isKey(path, object) ? [path] : castPath(path); var index = 0, length = path.length; while (object != null && index < length) { object = object[toKey(path[index++])]; } return index && index == length ? object : void 0; } __name(baseGet, "baseGet"); function baseGetTag(value) { return objectToString.call(value); } __name(baseGetTag, "baseGetTag"); function baseHasIn(object, key) { return object != null && key in Object(object); } __name(baseHasIn, "baseHasIn"); function baseIsEqual(value, other, customizer, bitmask, stack) { if (value === other) { return true; } if (value == null || other == null || !isObject2(value) && !isObjectLike(other)) { return value !== value && other !== other; } return baseIsEqualDeep(value, other, baseIsEqual, customizer, bitmask, stack); } __name(baseIsEqual, "baseIsEqual"); function baseIsEqualDeep(object, other, equalFunc, customizer, bitmask, stack) { var objIsArr = isArray(object), othIsArr = isArray(other), objTag = arrayTag, othTag = arrayTag; if (!objIsArr) { objTag = getTag(object); objTag = objTag == argsTag ? objectTag : objTag; } if (!othIsArr) { othTag = getTag(other); othTag = othTag == argsTag ? objectTag : othTag; } var objIsObj = objTag == objectTag && !isHostObject(object), othIsObj = othTag == objectTag && !isHostObject(other), isSameTag = objTag == othTag; if (isSameTag && !objIsObj) { stack || (stack = new Stack()); return objIsArr || isTypedArray(object) ? equalArrays(object, other, equalFunc, customizer, bitmask, stack) : equalByTag(object, other, objTag, equalFunc, customizer, bitmask, stack); } if (!(bitmask & PARTIAL_COMPARE_FLAG)) { var objIsWrapped = objIsObj && hasOwnProperty.call(object, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty.call(other, "__wrapped__"); if (objIsWrapped || othIsWrapped) { var objUnwrapped = objIsWrapped ? object.value() : object, othUnwrapped = othIsWrapped ? other.value() : other; stack || (stack = new Stack()); return equalFunc(objUnwrapped, othUnwrapped, customizer, bitmask, stack); } } if (!isSameTag) { return false; } stack || (stack = new Stack()); return equalObjects(object, other, equalFunc, customizer, bitmask, stack); } __name(baseIsEqualDeep, "baseIsEqualDeep"); function baseIsMatch(object, source, matchData, customizer) { var index = matchData.length, length = index, noCustomizer = !customizer; if (object == null) { return !length; } object = Object(object); while (index--) { var data = matchData[index]; if (noCustomizer && data[2] ? data[1] !== object[data[0]] : !(data[0] in object)) { return false; } } while (++index < length) { data = matchData[index]; var key = data[0], objValue = object[key], srcValue = data[1]; if (noCustomizer && data[2]) { if (objValue === void 0 && !(key in object)) { return false; } } else { var stack = new Stack(); if (customizer) { var result = customizer(objValue, srcValue, key, object, source, stack); } if (!(result === void 0 ? baseIsEqual(srcValue, objValue, customizer, UNORDERED_COMPARE_FLAG | PARTIAL_COMPARE_FLAG, stack) : result)) { return false; } } } return true; } __name(baseIsMatch, "baseIsMatch"); function baseIsNative(value) { if (!isObject2(value) || isMasked(value)) { return false; } var pattern = isFunction(value) || isHostObject(value) ? reIsNative : reIsHostCtor; return pattern.test(toSource(value)); } __name(baseIsNative, "baseIsNative"); function baseIsTypedArray(value) { return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[objectToString.call(value)]; } __name(baseIsTypedArray, "baseIsTypedArray"); function baseIteratee(value) { if (typeof value == "function") { return value; } if (value == null) { return identity; } if (typeof value == "object") { return isArray(value) ? baseMatchesProperty(value[0], value[1]) : baseMatches(value); } return property(value); } __name(baseIteratee, "baseIteratee"); function baseKeys(object) { if (!isPrototype(object)) { return nativeKeys(object); } var result = []; for (var key in Object(object)) { if (hasOwnProperty.call(object, key) && key != "constructor") { result.push(key); } } return result; } __name(baseKeys, "baseKeys"); function baseMatches(source) { var matchData = getMatchData(source); if (matchData.length == 1 && matchData[0][2]) { return matchesStrictComparable(matchData[0][0], matchData[0][1]); } return function(object) { return object === source || baseIsMatch(object, source, matchData); }; } __name(baseMatches, "baseMatches"); function baseMatchesProperty(path, srcValue) { if (isKey(path) && isStrictComparable(srcValue)) { return matchesStrictComparable(toKey(path), srcValue); } return function(object) { var objValue = get(object, path); return objValue === void 0 && objValue === srcValue ? hasIn(object, path) : baseIsEqual(srcValue, objValue, void 0, UNORDERED_COMPARE_FLAG | PARTIAL_COMPARE_FLAG); }; } __name(baseMatchesProperty, "baseMatchesProperty"); function basePropertyDeep(path) { return function(object) { return baseGet(object, path); }; } __name(basePropertyDeep, "basePropertyDeep"); function baseToString(value) { if (typeof value == "string") { return value; } if (isSymbol(value)) { return symbolToString ? symbolToString.call(value) : ""; } var result = value + ""; return result == "0" && 1 / value == -INFINITY ? "-0" : result; } __name(baseToString, "baseToString"); function castPath(value) { return isArray(value) ? value : stringToPath(value); } __name(castPath, "castPath"); function createAggregator(setter, initializer) { return function(collection, iteratee) { var func = isArray(collection) ? arrayAggregator : baseAggregator, accumulator = initializer ? initializer() : {}; return func(collection, setter, baseIteratee(iteratee, 2), accumulator); }; } __name(createAggregator, "createAggregator"); function createBaseEach(eachFunc, fromRight) { return function(collection, iteratee) { if (collection == null) { return collection; } if (!isArrayLike(collection)) { return eachFunc(collection, iteratee); } var length = collection.length, index = fromRight ? length : -1, iterable = Object(collection); while (fromRight ? index-- : ++index < length) { if (iteratee(iterable[index], index, iterable) === false) { break; } } return collection; }; } __name(createBaseEach, "createBaseEach"); function createBaseFor(fromRight) { return function(object, iteratee, keysFunc) { var index = -1, iterable = Object(object), props = keysFunc(object), length = props.length; while (length--) { var key = props[fromRight ? length : ++index]; if (iteratee(iterable[key], key, iterable) === false) { break; } } return object; }; } __name(createBaseFor, "createBaseFor"); function equalArrays(array, other, equalFunc, customizer, bitmask, stack) { var isPartial = bitmask & PARTIAL_COMPARE_FLAG, arrLength = array.length, othLength = other.length; if (arrLength != othLength && !(isPartial && othLength > arrLength)) { return false; } var stacked = stack.get(array); if (stacked && stack.get(other)) { return stacked == other; } var index = -1, result = true, seen = bitmask & UNORDERED_COMPARE_FLAG ? new SetCache() : void 0; stack.set(array, other); stack.set(other, array); while (++index < arrLength) { var arrValue = array[index], othValue = other[index]; if (customizer) { var compared = isPartial ? customizer(othValue, arrValue, index, other, array, stack) : customizer(arrValue, othValue, index, array, other, stack); } if (compared !== void 0) { if (compared) { continue; } result = false; break; } if (seen) { if (!arraySome(other, function(othValue2, othIndex) { if (!seen.has(othIndex) && (arrValue === othValue2 || equalFunc(arrValue, othValue2, customizer, bitmask, stack))) { return seen.add(othIndex); } })) { result = false; break; } } else if (!(arrValue === othValue || equalFunc(arrValue, othValue, customizer, bitmask, stack))) { result = false; break; } } stack["delete"](array); stack["delete"](other); return result; } __name(equalArrays, "equalArrays"); function equalByTag(object, other, tag, equalFunc, customizer, bitmask, stack) { switch (tag) { case dataViewTag: if (object.byteLength != other.byteLength || object.byteOffset != other.byteOffset) { return false; } object = object.buffer; other = other.buffer; case arrayBufferTag: if (object.byteLength != other.byteLength || !equalFunc(new Uint8Array2(object), new Uint8Array2(other))) { return false; } return true; case boolTag: case dateTag: case numberTag: return eq(+object, +other); case errorTag: return object.name == other.name && object.message == other.message; case regexpTag: case stringTag: return object == other + ""; case mapTag: var convert = mapToArray; case setTag: var isPartial = bitmask & PARTIAL_COMPARE_FLAG; convert || (convert = setToArray); if (object.size != other.size && !isPartial) { return false; } var stacked = stack.get(object); if (stacked) { return stacked == other; } bitmask |= UNORDERED_COMPARE_FLAG; stack.set(object, other); var result = equalArrays(convert(object), convert(other), equalFunc, customizer, bitmask, stack); stack["delete"](object); return result; case symbolTag: if (symbolValueOf) { return symbolValueOf.call(object) == symbolValueOf.call(other); } } return false; } __name(equalByTag, "equalByTag"); function equalObjects(object, other, equalFunc, customizer, bitmask, stack) { var isPartial = bitmask & PARTIAL_COMPARE_FLAG, objProps = keys(object), objLength = objProps.length, othProps = keys(other), othLength = othProps.length; if (objLength != othLength && !isPartial) { return false; } var index = objLength; while (index--) { var key = objProps[index]; if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { return false; } } var stacked = stack.get(object); if (stacked && stack.get(other)) { return stacked == other; } var result = true; stack.set(object, other); stack.set(other, object); var skipCtor = isPartial; while (++index < objLength) { key = objProps[index]; var objValue = object[key], othValue = other[key]; if (customizer) { var compared = isPartial ? customizer(othValue, objValue, key, other, object, stack) : customizer(objValue, othValue, key, object, other, stack); } if (!(compared === void 0 ? objValue === othValue || equalFunc(objValue, othValue, customizer, bitmask, stack) : compared)) { result = false; break; } skipCtor || (skipCtor = key == "constructor"); } if (result && !skipCtor) { var objCtor = object.constructor, othCtor = other.constructor; if (objCtor != othCtor && ("constructor" in object && "constructor" in other) && !(typeof objCtor == "function" && objCtor instanceof objCtor && typeof othCtor == "function" && othCtor instanceof othCtor)) { result = false; } } stack["delete"](object); stack["delete"](other); return result; } __name(equalObjects, "equalObjects"); function getMapData(map, key) { var data = map.__data__; return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; } __name(getMapData, "getMapData"); function getMatchData(object) { var result = keys(object), length = result.length; while (length--) { var key = result[length], value = object[key]; result[length] = [key, value, isStrictComparable(value)]; } return result; } __name(getMatchData, "getMatchData"); function getNative(object, key) { var value = getValue(object, key); return baseIsNative(value) ? value : void 0; } __name(getNative, "getNative"); var getTag = baseGetTag; if (DataView2 && getTag(new DataView2(new ArrayBuffer(1))) != dataViewTag || Map2 && getTag(new Map2()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set2 && getTag(new Set2()) != setTag || WeakMap2 && getTag(new WeakMap2()) != weakMapTag) { getTag = /* @__PURE__ */ __name(function(value) { var result = objectToString.call(value), Ctor = result == objectTag ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : void 0; if (ctorString) { switch (ctorString) { case dataViewCtorString: return dataViewTag; case mapCtorString: return mapTag; case promiseCtorString: return promiseTag; case setCtorString: return setTag; case weakMapCtorString: return weakMapTag; } } return result; }, "getTag"); } function hasPath(object, path, hasFunc) { path = isKey(path, object) ? [path] : castPath(path); var result, index = -1, length = path.length; while (++index < length) { var key = toKey(path[index]); if (!(result = object != null && hasFunc(object, key))) { break; } object = object[key]; } if (result) { return result; } var length = object ? object.length : 0; return !!length && isLength(length) && isIndex(key, length) && (isArray(object) || isArguments(object)); } __name(hasPath, "hasPath"); function isIndex(value, length) { length = length == null ? MAX_SAFE_INTEGER : length; return !!length && (typeof value == "number" || reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); } __name(isIndex, "isIndex"); function isKey(value, object) { if (isArray(value)) { return false; } var type = typeof value; if (type == "number" || type == "symbol" || type == "boolean" || value == null || isSymbol(value)) { return true; } return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || object != null && value in Object(object); } __name(isKey, "isKey"); function isKeyable(value) { var type = typeof value; return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null; } __name(isKeyable, "isKeyable"); function isMasked(func) { return !!maskSrcKey && maskSrcKey in func; } __name(isMasked, "isMasked"); function isPrototype(value) { var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto; return value === proto; } __name(isPrototype, "isPrototype"); function isStrictComparable(value) { return value === value && !isObject2(value); } __name(isStrictComparable, "isStrictComparable"); function matchesStrictComparable(key, srcValue) { return function(object) { if (object == null) { return false; } return object[key] === srcValue && (srcValue !== void 0 || key in Object(object)); }; } __name(matchesStrictComparable, "matchesStrictComparable"); var stringToPath = memoize(function(string) { string = toString2(string); var result = []; if (reLeadingDot.test(string)) { result.push(""); } string.replace(rePropName, function(match, number, quote, string2) { result.push(quote ? string2.replace(reEscapeChar, "$1") : number || match); }); return result; }); function toKey(value) { if (typeof value == "string" || isSymbol(value)) { return value; } var result = value + ""; return result == "0" && 1 / value == -INFINITY ? "-0" : result; } __name(toKey, "toKey"); function toSource(func) { if (func != null) { try { return funcToString.call(func); } catch (e) { } try { return func + ""; } catch (e) { } } return ""; } __name(toSource, "toSource"); var groupBy = createAggregator(function(result, value, key) { if (hasOwnProperty.call(result, key)) { result[key].push(value); } else { result[key] = [value]; } }); function memoize(func, resolver) { if (typeof func != "function" || resolver && typeof resolver != "function") { throw new TypeError(FUNC_ERROR_TEXT); } var memoized = /* @__PURE__ */ __name(function() { var args = arguments, key = resolver ? resolver.apply(this, args) : args[0], cache = memoized.cache; if (cache.has(key)) { return cache.get(key); } var result = func.apply(this, args); memoized.cache = cache.set(key, result); return result; }, "memoized"); memoized.cache = new (memoize.Cache || MapCache)(); return memoized; } __name(memoize, "memoize"); memoize.Cache = MapCache; function eq(value, other) { return value === other || value !== value && other !== other; } __name(eq, "eq"); function isArguments(value) { return isArrayLikeObject(value) && hasOwnProperty.call(value, "callee") && (!propertyIsEnumerable.call(value, "callee") || objectToString.call(value) == argsTag); } __name(isArguments, "isArguments"); var isArray = Array.isArray; function isArrayLike(value) { return value != null && isLength(value.length) && !isFunction(value); } __name(isArrayLike, "isArrayLike"); function isArrayLikeObject(value) { return isObjectLike(value) && isArrayLike(value); } __name(isArrayLikeObject, "isArrayLikeObject"); function isFunction(value) { var tag = isObject2(value) ? objectToString.call(value) : ""; return tag == funcTag || tag == genTag; } __name(isFunction, "isFunction"); function isLength(value) { return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; } __name(isLength, "isLength"); function isObject2(value) { var type = typeof value; return !!value && (type == "object" || type == "function"); } __name(isObject2, "isObject"); function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); function isSymbol(value) { return typeof value == "symbol" || isObjectLike(value) && objectToString.call(value) == symbolTag; } __name(isSymbol, "isSymbol"); var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; function toString2(value) { return value == null ? "" : baseToString(value); } __name(toString2, "toString"); function get(object, path, defaultValue) { var result = object == null ? void 0 : baseGet(object, path); return result === void 0 ? defaultValue : result; } __name(get, "get"); function hasIn(object, path) { return object != null && hasPath(object, path, baseHasIn); } __name(hasIn, "hasIn"); function keys(object) { return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); } __name(keys, "keys"); function identity(value) { return value; } __name(identity, "identity"); function property(path) { return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path); } __name(property, "property"); module2.exports = groupBy; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/transforms/HeaderTransformer.js var require_HeaderTransformer = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/transforms/HeaderTransformer.js"(exports2) { "use strict"; var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.HeaderTransformer = void 0; var lodash_isundefined_1 = __importDefault2(require_lodash14()); var lodash_isfunction_1 = __importDefault2(require_lodash10()); var lodash_uniq_1 = __importDefault2(require_lodash15()); var lodash_groupby_1 = __importDefault2(require_lodash16()); var HeaderTransformer = class { static { __name(this, "HeaderTransformer"); } constructor(parserOptions) { this.headers = null; this.receivedHeaders = false; this.shouldUseFirstRow = false; this.processedFirstRow = false; this.headersLength = 0; this.parserOptions = parserOptions; if (parserOptions.headers === true) { this.shouldUseFirstRow = true; } else if (Array.isArray(parserOptions.headers)) { this.setHeaders(parserOptions.headers); } else if (lodash_isfunction_1.default(parserOptions.headers)) { this.headersTransform = parserOptions.headers; } } transform(row, cb) { if (!this.shouldMapRow(row)) { return cb(null, { row: null, isValid: true }); } return cb(null, this.processRow(row)); } shouldMapRow(row) { const { parserOptions } = this; if (!this.headersTransform && parserOptions.renameHeaders && !this.processedFirstRow) { if (!this.receivedHeaders) { throw new Error("Error renaming headers: new headers must be provided in an array"); } this.processedFirstRow = true; return false; } if (!this.receivedHeaders && Array.isArray(row)) { if (this.headersTransform) { this.setHeaders(this.headersTransform(row)); } else if (this.shouldUseFirstRow) { this.setHeaders(row); } else { return true; } return false; } return true; } processRow(row) { if (!this.headers) { return { row, isValid: true }; } const { parserOptions } = this; if (!parserOptions.discardUnmappedColumns && row.length > this.headersLength) { if (!parserOptions.strictColumnHandling) { throw new Error(`Unexpected Error: column header mismatch expected: ${this.headersLength} columns got: ${row.length}`); } return { row, isValid: false, reason: `Column header mismatch expected: ${this.headersLength} columns got: ${row.length}` }; } if (parserOptions.strictColumnHandling && row.length < this.headersLength) { return { row, isValid: false, reason: `Column header mismatch expected: ${this.headersLength} columns got: ${row.length}` }; } return { row: this.mapHeaders(row), isValid: true }; } mapHeaders(row) { const rowMap = {}; const { headers, headersLength } = this; for (let i = 0; i < headersLength; i += 1) { const header = headers[i]; if (!lodash_isundefined_1.default(header)) { const val = row[i]; if (lodash_isundefined_1.default(val)) { rowMap[header] = ""; } else { rowMap[header] = val; } } } return rowMap; } setHeaders(headers) { var _a; const filteredHeaders = headers.filter((h) => !!h); if (lodash_uniq_1.default(filteredHeaders).length !== filteredHeaders.length) { const grouped = lodash_groupby_1.default(filteredHeaders); const duplicates = Object.keys(grouped).filter((dup) => grouped[dup].length > 1); throw new Error(`Duplicate headers found ${JSON.stringify(duplicates)}`); } this.headers = headers; this.receivedHeaders = true; this.headersLength = ((_a = this.headers) === null || _a === void 0 ? void 0 : _a.length) || 0; } }; exports2.HeaderTransformer = HeaderTransformer; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/transforms/index.js var require_transforms = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/transforms/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.HeaderTransformer = exports2.RowTransformerValidator = void 0; var RowTransformerValidator_1 = require_RowTransformerValidator(); Object.defineProperty(exports2, "RowTransformerValidator", { enumerable: true, get: /* @__PURE__ */ __name(function() { return RowTransformerValidator_1.RowTransformerValidator; }, "get") }); var HeaderTransformer_1 = require_HeaderTransformer(); Object.defineProperty(exports2, "HeaderTransformer", { enumerable: true, get: /* @__PURE__ */ __name(function() { return HeaderTransformer_1.HeaderTransformer; }, "get") }); } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/Token.js var require_Token = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/Token.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Token = void 0; var Token = class { static { __name(this, "Token"); } constructor(tokenArgs) { this.token = tokenArgs.token; this.startCursor = tokenArgs.startCursor; this.endCursor = tokenArgs.endCursor; } static isTokenRowDelimiter(token) { const content = token.token; return content === "\r" || content === "\n" || content === "\r\n"; } static isTokenCarriageReturn(token, parserOptions) { return token.token === parserOptions.carriageReturn; } static isTokenComment(token, parserOptions) { return parserOptions.supportsComments && !!token && token.token === parserOptions.comment; } static isTokenEscapeCharacter(token, parserOptions) { return token.token === parserOptions.escapeChar; } static isTokenQuote(token, parserOptions) { return token.token === parserOptions.quote; } static isTokenDelimiter(token, parserOptions) { return token.token === parserOptions.delimiter; } }; exports2.Token = Token; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/Scanner.js var require_Scanner = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/Scanner.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Scanner = void 0; var Token_1 = require_Token(); var ROW_DELIMITER = /((?:\r\n)|\n|\r)/; var Scanner = class { static { __name(this, "Scanner"); } constructor(args) { this.cursor = 0; this.line = args.line; this.lineLength = this.line.length; this.parserOptions = args.parserOptions; this.hasMoreData = args.hasMoreData; this.cursor = args.cursor || 0; } get hasMoreCharacters() { return this.lineLength > this.cursor; } get nextNonSpaceToken() { const { lineFromCursor } = this; const regex = this.parserOptions.NEXT_TOKEN_REGEXP; if (lineFromCursor.search(regex) === -1) { return null; } const match = regex.exec(lineFromCursor); if (match == null) { return null; } const token = match[1]; const startCursor = this.cursor + (match.index || 0); return new Token_1.Token({ token, startCursor, endCursor: startCursor + token.length - 1 }); } get nextCharacterToken() { const { cursor, lineLength } = this; if (lineLength <= cursor) { return null; } return new Token_1.Token({ token: this.line[cursor], startCursor: cursor, endCursor: cursor }); } get lineFromCursor() { return this.line.substr(this.cursor); } advancePastLine() { const match = ROW_DELIMITER.exec(this.lineFromCursor); if (!match) { if (this.hasMoreData) { return null; } this.cursor = this.lineLength; return this; } this.cursor += (match.index || 0) + match[0].length; return this; } advanceTo(cursor) { this.cursor = cursor; return this; } advanceToToken(token) { this.cursor = token.startCursor; return this; } advancePastToken(token) { this.cursor = token.endCursor + 1; return this; } truncateToCursor() { this.line = this.lineFromCursor; this.lineLength = this.line.length; this.cursor = 0; return this; } }; exports2.Scanner = Scanner; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/column/ColumnFormatter.js var require_ColumnFormatter = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/column/ColumnFormatter.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ColumnFormatter = void 0; var ColumnFormatter = class { static { __name(this, "ColumnFormatter"); } constructor(parserOptions) { if (parserOptions.trim) { this.format = (col) => col.trim(); } else if (parserOptions.ltrim) { this.format = (col) => col.trimLeft(); } else if (parserOptions.rtrim) { this.format = (col) => col.trimRight(); } else { this.format = (col) => col; } } }; exports2.ColumnFormatter = ColumnFormatter; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/column/NonQuotedColumnParser.js var require_NonQuotedColumnParser = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/column/NonQuotedColumnParser.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.NonQuotedColumnParser = void 0; var ColumnFormatter_1 = require_ColumnFormatter(); var Token_1 = require_Token(); var NonQuotedColumnParser = class { static { __name(this, "NonQuotedColumnParser"); } constructor(parserOptions) { this.parserOptions = parserOptions; this.columnFormatter = new ColumnFormatter_1.ColumnFormatter(parserOptions); } parse(scanner) { if (!scanner.hasMoreCharacters) { return null; } const { parserOptions } = this; const characters = []; let nextToken = scanner.nextCharacterToken; for (; nextToken; nextToken = scanner.nextCharacterToken) { if (Token_1.Token.isTokenDelimiter(nextToken, parserOptions) || Token_1.Token.isTokenRowDelimiter(nextToken)) { break; } characters.push(nextToken.token); scanner.advancePastToken(nextToken); } return this.columnFormatter.format(characters.join("")); } }; exports2.NonQuotedColumnParser = NonQuotedColumnParser; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/column/QuotedColumnParser.js var require_QuotedColumnParser = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/column/QuotedColumnParser.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QuotedColumnParser = void 0; var ColumnFormatter_1 = require_ColumnFormatter(); var Token_1 = require_Token(); var QuotedColumnParser = class { static { __name(this, "QuotedColumnParser"); } constructor(parserOptions) { this.parserOptions = parserOptions; this.columnFormatter = new ColumnFormatter_1.ColumnFormatter(parserOptions); } parse(scanner) { if (!scanner.hasMoreCharacters) { return null; } const originalCursor = scanner.cursor; const { foundClosingQuote, col } = this.gatherDataBetweenQuotes(scanner); if (!foundClosingQuote) { scanner.advanceTo(originalCursor); if (!scanner.hasMoreData) { throw new Error(`Parse Error: missing closing: '${this.parserOptions.quote || ""}' in line: at '${scanner.lineFromCursor.replace(/[\r\n]/g, "\\n'")}'`); } return null; } this.checkForMalformedColumn(scanner); return col; } gatherDataBetweenQuotes(scanner) { const { parserOptions } = this; let foundStartingQuote = false; let foundClosingQuote = false; const characters = []; let nextToken = scanner.nextCharacterToken; for (; !foundClosingQuote && nextToken !== null; nextToken = scanner.nextCharacterToken) { const isQuote = Token_1.Token.isTokenQuote(nextToken, parserOptions); if (!foundStartingQuote && isQuote) { foundStartingQuote = true; } else if (foundStartingQuote) { if (Token_1.Token.isTokenEscapeCharacter(nextToken, parserOptions)) { scanner.advancePastToken(nextToken); const tokenFollowingEscape = scanner.nextCharacterToken; if (tokenFollowingEscape !== null && (Token_1.Token.isTokenQuote(tokenFollowingEscape, parserOptions) || Token_1.Token.isTokenEscapeCharacter(tokenFollowingEscape, parserOptions))) { characters.push(tokenFollowingEscape.token); nextToken = tokenFollowingEscape; } else if (isQuote) { foundClosingQuote = true; } else { characters.push(nextToken.token); } } else if (isQuote) { foundClosingQuote = true; } else { characters.push(nextToken.token); } } scanner.advancePastToken(nextToken); } return { col: this.columnFormatter.format(characters.join("")), foundClosingQuote }; } checkForMalformedColumn(scanner) { const { parserOptions } = this; const { nextNonSpaceToken } = scanner; if (nextNonSpaceToken) { const isNextTokenADelimiter = Token_1.Token.isTokenDelimiter(nextNonSpaceToken, parserOptions); const isNextTokenARowDelimiter = Token_1.Token.isTokenRowDelimiter(nextNonSpaceToken); if (!(isNextTokenADelimiter || isNextTokenARowDelimiter)) { const linePreview = scanner.lineFromCursor.substr(0, 10).replace(/[\r\n]/g, "\\n'"); throw new Error(`Parse Error: expected: '${parserOptions.escapedDelimiter}' OR new line got: '${nextNonSpaceToken.token}'. at '${linePreview}`); } scanner.advanceToToken(nextNonSpaceToken); } else if (!scanner.hasMoreData) { scanner.advancePastLine(); } } }; exports2.QuotedColumnParser = QuotedColumnParser; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/column/ColumnParser.js var require_ColumnParser = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/column/ColumnParser.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ColumnParser = void 0; var NonQuotedColumnParser_1 = require_NonQuotedColumnParser(); var QuotedColumnParser_1 = require_QuotedColumnParser(); var Token_1 = require_Token(); var ColumnParser = class { static { __name(this, "ColumnParser"); } constructor(parserOptions) { this.parserOptions = parserOptions; this.quotedColumnParser = new QuotedColumnParser_1.QuotedColumnParser(parserOptions); this.nonQuotedColumnParser = new NonQuotedColumnParser_1.NonQuotedColumnParser(parserOptions); } parse(scanner) { const { nextNonSpaceToken } = scanner; if (nextNonSpaceToken !== null && Token_1.Token.isTokenQuote(nextNonSpaceToken, this.parserOptions)) { scanner.advanceToToken(nextNonSpaceToken); return this.quotedColumnParser.parse(scanner); } return this.nonQuotedColumnParser.parse(scanner); } }; exports2.ColumnParser = ColumnParser; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/column/index.js var require_column2 = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/column/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ColumnFormatter = exports2.QuotedColumnParser = exports2.NonQuotedColumnParser = exports2.ColumnParser = void 0; var ColumnParser_1 = require_ColumnParser(); Object.defineProperty(exports2, "ColumnParser", { enumerable: true, get: /* @__PURE__ */ __name(function() { return ColumnParser_1.ColumnParser; }, "get") }); var NonQuotedColumnParser_1 = require_NonQuotedColumnParser(); Object.defineProperty(exports2, "NonQuotedColumnParser", { enumerable: true, get: /* @__PURE__ */ __name(function() { return NonQuotedColumnParser_1.NonQuotedColumnParser; }, "get") }); var QuotedColumnParser_1 = require_QuotedColumnParser(); Object.defineProperty(exports2, "QuotedColumnParser", { enumerable: true, get: /* @__PURE__ */ __name(function() { return QuotedColumnParser_1.QuotedColumnParser; }, "get") }); var ColumnFormatter_1 = require_ColumnFormatter(); Object.defineProperty(exports2, "ColumnFormatter", { enumerable: true, get: /* @__PURE__ */ __name(function() { return ColumnFormatter_1.ColumnFormatter; }, "get") }); } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/RowParser.js var require_RowParser = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/RowParser.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RowParser = void 0; var column_1 = require_column2(); var Token_1 = require_Token(); var EMPTY_STRING = ""; var RowParser = class { static { __name(this, "RowParser"); } constructor(parserOptions) { this.parserOptions = parserOptions; this.columnParser = new column_1.ColumnParser(parserOptions); } static isEmptyRow(row) { return row.join(EMPTY_STRING).replace(/\s+/g, EMPTY_STRING) === EMPTY_STRING; } parse(scanner) { const { parserOptions } = this; const { hasMoreData } = scanner; const currentScanner = scanner; const columns = []; let currentToken = this.getStartToken(currentScanner, columns); while (currentToken) { if (Token_1.Token.isTokenRowDelimiter(currentToken)) { currentScanner.advancePastToken(currentToken); if (!currentScanner.hasMoreCharacters && Token_1.Token.isTokenCarriageReturn(currentToken, parserOptions) && hasMoreData) { return null; } currentScanner.truncateToCursor(); return columns; } if (!this.shouldSkipColumnParse(currentScanner, currentToken, columns)) { const item = this.columnParser.parse(currentScanner); if (item === null) { return null; } columns.push(item); } currentToken = currentScanner.nextNonSpaceToken; } if (!hasMoreData) { currentScanner.truncateToCursor(); return columns; } return null; } getStartToken(scanner, columns) { const currentToken = scanner.nextNonSpaceToken; if (currentToken !== null && Token_1.Token.isTokenDelimiter(currentToken, this.parserOptions)) { columns.push(""); return scanner.nextNonSpaceToken; } return currentToken; } shouldSkipColumnParse(scanner, currentToken, columns) { const { parserOptions } = this; if (Token_1.Token.isTokenDelimiter(currentToken, parserOptions)) { scanner.advancePastToken(currentToken); const nextToken = scanner.nextCharacterToken; if (!scanner.hasMoreCharacters || nextToken !== null && Token_1.Token.isTokenRowDelimiter(nextToken)) { columns.push(""); return true; } if (nextToken !== null && Token_1.Token.isTokenDelimiter(nextToken, parserOptions)) { columns.push(""); return true; } } return false; } }; exports2.RowParser = RowParser; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/Parser.js var require_Parser = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/Parser.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.Parser = void 0; var Scanner_1 = require_Scanner(); var RowParser_1 = require_RowParser(); var Token_1 = require_Token(); var Parser = class _Parser { static { __name(this, "Parser"); } constructor(parserOptions) { this.parserOptions = parserOptions; this.rowParser = new RowParser_1.RowParser(this.parserOptions); } static removeBOM(line) { if (line && line.charCodeAt(0) === 65279) { return line.slice(1); } return line; } parse(line, hasMoreData) { const scanner = new Scanner_1.Scanner({ line: _Parser.removeBOM(line), parserOptions: this.parserOptions, hasMoreData }); if (this.parserOptions.supportsComments) { return this.parseWithComments(scanner); } return this.parseWithoutComments(scanner); } parseWithoutComments(scanner) { const rows = []; let shouldContinue = true; while (shouldContinue) { shouldContinue = this.parseRow(scanner, rows); } return { line: scanner.line, rows }; } parseWithComments(scanner) { const { parserOptions } = this; const rows = []; for (let nextToken = scanner.nextCharacterToken; nextToken !== null; nextToken = scanner.nextCharacterToken) { if (Token_1.Token.isTokenComment(nextToken, parserOptions)) { const cursor = scanner.advancePastLine(); if (cursor === null) { return { line: scanner.lineFromCursor, rows }; } if (!scanner.hasMoreCharacters) { return { line: scanner.lineFromCursor, rows }; } scanner.truncateToCursor(); } else if (!this.parseRow(scanner, rows)) { break; } } return { line: scanner.line, rows }; } parseRow(scanner, rows) { const nextToken = scanner.nextNonSpaceToken; if (!nextToken) { return false; } const row = this.rowParser.parse(scanner); if (row === null) { return false; } if (this.parserOptions.ignoreEmpty && RowParser_1.RowParser.isEmptyRow(row)) { return true; } rows.push(row); return true; } }; exports2.Parser = Parser; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/index.js var require_parser3 = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/parser/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.QuotedColumnParser = exports2.NonQuotedColumnParser = exports2.ColumnParser = exports2.Token = exports2.Scanner = exports2.RowParser = exports2.Parser = void 0; var Parser_1 = require_Parser(); Object.defineProperty(exports2, "Parser", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Parser_1.Parser; }, "get") }); var RowParser_1 = require_RowParser(); Object.defineProperty(exports2, "RowParser", { enumerable: true, get: /* @__PURE__ */ __name(function() { return RowParser_1.RowParser; }, "get") }); var Scanner_1 = require_Scanner(); Object.defineProperty(exports2, "Scanner", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Scanner_1.Scanner; }, "get") }); var Token_1 = require_Token(); Object.defineProperty(exports2, "Token", { enumerable: true, get: /* @__PURE__ */ __name(function() { return Token_1.Token; }, "get") }); var column_1 = require_column2(); Object.defineProperty(exports2, "ColumnParser", { enumerable: true, get: /* @__PURE__ */ __name(function() { return column_1.ColumnParser; }, "get") }); Object.defineProperty(exports2, "NonQuotedColumnParser", { enumerable: true, get: /* @__PURE__ */ __name(function() { return column_1.NonQuotedColumnParser; }, "get") }); Object.defineProperty(exports2, "QuotedColumnParser", { enumerable: true, get: /* @__PURE__ */ __name(function() { return column_1.QuotedColumnParser; }, "get") }); } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/CsvParserStream.js var require_CsvParserStream = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/CsvParserStream.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CsvParserStream = void 0; var string_decoder_1 = require("string_decoder"); var stream_1 = require("stream"); var transforms_1 = require_transforms(); var parser_1 = require_parser3(); var CsvParserStream = class _CsvParserStream extends stream_1.Transform { static { __name(this, "CsvParserStream"); } constructor(parserOptions) { super({ objectMode: parserOptions.objectMode }); this.lines = ""; this.rowCount = 0; this.parsedRowCount = 0; this.parsedLineCount = 0; this.endEmitted = false; this.headersEmitted = false; this.parserOptions = parserOptions; this.parser = new parser_1.Parser(parserOptions); this.headerTransformer = new transforms_1.HeaderTransformer(parserOptions); this.decoder = new string_decoder_1.StringDecoder(parserOptions.encoding); this.rowTransformerValidator = new transforms_1.RowTransformerValidator(); } get hasHitRowLimit() { return this.parserOptions.limitRows && this.rowCount >= this.parserOptions.maxRows; } get shouldEmitRows() { return this.parsedRowCount > this.parserOptions.skipRows; } get shouldSkipLine() { return this.parsedLineCount <= this.parserOptions.skipLines; } transform(transformFunction) { this.rowTransformerValidator.rowTransform = transformFunction; return this; } validate(validateFunction) { this.rowTransformerValidator.rowValidator = validateFunction; return this; } // eslint-disable-next-line @typescript-eslint/no-explicit-any emit(event, ...rest) { if (event === "end") { if (!this.endEmitted) { this.endEmitted = true; super.emit("end", this.rowCount); } return false; } return super.emit(event, ...rest); } _transform(data, encoding, done) { if (this.hasHitRowLimit) { return done(); } const wrappedCallback = _CsvParserStream.wrapDoneCallback(done); try { const { lines } = this; const newLine = lines + this.decoder.write(data); const rows = this.parse(newLine, true); return this.processRows(rows, wrappedCallback); } catch (e) { return wrappedCallback(e); } } _flush(done) { const wrappedCallback = _CsvParserStream.wrapDoneCallback(done); if (this.hasHitRowLimit) { return wrappedCallback(); } try { const newLine = this.lines + this.decoder.end(); const rows = this.parse(newLine, false); return this.processRows(rows, wrappedCallback); } catch (e) { return wrappedCallback(e); } } parse(data, hasMoreData) { if (!data) { return []; } const { line, rows } = this.parser.parse(data, hasMoreData); this.lines = line; return rows; } processRows(rows, cb) { const rowsLength = rows.length; const iterate = /* @__PURE__ */ __name((i) => { const callNext = /* @__PURE__ */ __name((err) => { if (err) { return cb(err); } if (i % 100 === 0) { setImmediate(() => iterate(i + 1)); return void 0; } return iterate(i + 1); }, "callNext"); this.checkAndEmitHeaders(); if (i >= rowsLength || this.hasHitRowLimit) { return cb(); } this.parsedLineCount += 1; if (this.shouldSkipLine) { return callNext(); } const row = rows[i]; this.rowCount += 1; this.parsedRowCount += 1; const nextRowCount = this.rowCount; return this.transformRow(row, (err, transformResult) => { if (err) { this.rowCount -= 1; return callNext(err); } if (!transformResult) { return callNext(new Error("expected transform result")); } if (!transformResult.isValid) { this.emit("data-invalid", transformResult.row, nextRowCount, transformResult.reason); } else if (transformResult.row) { return this.pushRow(transformResult.row, callNext); } return callNext(); }); }, "iterate"); iterate(0); } transformRow(parsedRow, cb) { try { this.headerTransformer.transform(parsedRow, (err, withHeaders) => { if (err) { return cb(err); } if (!withHeaders) { return cb(new Error("Expected result from header transform")); } if (!withHeaders.isValid) { if (this.shouldEmitRows) { return cb(null, { isValid: false, row: parsedRow }); } return this.skipRow(cb); } if (withHeaders.row) { if (this.shouldEmitRows) { return this.rowTransformerValidator.transformAndValidate(withHeaders.row, cb); } return this.skipRow(cb); } this.rowCount -= 1; this.parsedRowCount -= 1; return cb(null, { row: null, isValid: true }); }); } catch (e) { cb(e); } } checkAndEmitHeaders() { if (!this.headersEmitted && this.headerTransformer.headers) { this.headersEmitted = true; this.emit("headers", this.headerTransformer.headers); } } skipRow(cb) { this.rowCount -= 1; return cb(null, { row: null, isValid: true }); } pushRow(row, cb) { try { if (!this.parserOptions.objectMode) { this.push(JSON.stringify(row)); } else { this.push(row); } cb(); } catch (e) { cb(e); } } static wrapDoneCallback(done) { let errorCalled = false; return (err, ...args) => { if (err) { if (errorCalled) { throw err; } errorCalled = true; done(err); return; } done(...args); }; } }; exports2.CsvParserStream = CsvParserStream; } }); // ../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/index.js var require_src4 = __commonJS({ "../../node_modules/.pnpm/@fast-csv+parse@4.3.6/node_modules/@fast-csv/parse/build/src/index.js"(exports2) { "use strict"; var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) { if (k2 === void 0) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: /* @__PURE__ */ __name(function() { return m[k]; }, "get") }); }) : (function(o, m, k, k2) { if (k2 === void 0) k2 = k; o[k2] = m[k]; })); var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar2 = exports2 && exports2.__importStar || function(mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) { for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding2(result, mod, k); } __setModuleDefault2(result, mod); return result; }; var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.parseString = exports2.parseFile = exports2.parseStream = exports2.parse = exports2.ParserOptions = exports2.CsvParserStream = void 0; var fs = __importStar2(require("fs")); var stream_1 = require("stream"); var ParserOptions_1 = require_ParserOptions(); var CsvParserStream_1 = require_CsvParserStream(); __exportStar2(require_types6(), exports2); var CsvParserStream_2 = require_CsvParserStream(); Object.defineProperty(exports2, "CsvParserStream", { enumerable: true, get: /* @__PURE__ */ __name(function() { return CsvParserStream_2.CsvParserStream; }, "get") }); var ParserOptions_2 = require_ParserOptions(); Object.defineProperty(exports2, "ParserOptions", { enumerable: true, get: /* @__PURE__ */ __name(function() { return ParserOptions_2.ParserOptions; }, "get") }); exports2.parse = (args) => new CsvParserStream_1.CsvParserStream(new ParserOptions_1.ParserOptions(args)); exports2.parseStream = (stream, options) => stream.pipe(new CsvParserStream_1.CsvParserStream(new ParserOptions_1.ParserOptions(options))); exports2.parseFile = (location, options = {}) => fs.createReadStream(location).pipe(new CsvParserStream_1.CsvParserStream(new ParserOptions_1.ParserOptions(options))); exports2.parseString = (string, options) => { const rs = new stream_1.Readable(); rs.push(string); rs.push(null); return rs.pipe(new CsvParserStream_1.CsvParserStream(new ParserOptions_1.ParserOptions(options))); }; } }); // ../../node_modules/.pnpm/fast-csv@4.3.6/node_modules/fast-csv/build/src/index.js var require_src5 = __commonJS({ "../../node_modules/.pnpm/fast-csv@4.3.6/node_modules/fast-csv/build/src/index.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CsvParserStream = exports2.ParserOptions = exports2.parseFile = exports2.parseStream = exports2.parseString = exports2.parse = exports2.FormatterOptions = exports2.CsvFormatterStream = exports2.writeToPath = exports2.writeToString = exports2.writeToBuffer = exports2.writeToStream = exports2.write = exports2.format = void 0; var format_1 = require_src3(); Object.defineProperty(exports2, "format", { enumerable: true, get: /* @__PURE__ */ __name(function() { return format_1.format; }, "get") }); Object.defineProperty(exports2, "write", { enumerable: true, get: /* @__PURE__ */ __name(function() { return format_1.write; }, "get") }); Object.defineProperty(exports2, "writeToStream", { enumerable: true, get: /* @__PURE__ */ __name(function() { return format_1.writeToStream; }, "get") }); Object.defineProperty(exports2, "writeToBuffer", { enumerable: true, get: /* @__PURE__ */ __name(function() { return format_1.writeToBuffer; }, "get") }); Object.defineProperty(exports2, "writeToString", { enumerable: true, get: /* @__PURE__ */ __name(function() { return format_1.writeToString; }, "get") }); Object.defineProperty(exports2, "writeToPath", { enumerable: true, get: /* @__PURE__ */ __name(function() { return format_1.writeToPath; }, "get") }); Object.defineProperty(exports2, "CsvFormatterStream", { enumerable: true, get: /* @__PURE__ */ __name(function() { return format_1.CsvFormatterStream; }, "get") }); Object.defineProperty(exports2, "FormatterOptions", { enumerable: true, get: /* @__PURE__ */ __name(function() { return format_1.FormatterOptions; }, "get") }); var parse_1 = require_src4(); Object.defineProperty(exports2, "parse", { enumerable: true, get: /* @__PURE__ */ __name(function() { return parse_1.parse; }, "get") }); Object.defineProperty(exports2, "parseString", { enumerable: true, get: /* @__PURE__ */ __name(function() { return parse_1.parseString; }, "get") }); Object.defineProperty(exports2, "parseStream", { enumerable: true, get: /* @__PURE__ */ __name(function() { return parse_1.parseStream; }, "get") }); Object.defineProperty(exports2, "parseFile", { enumerable: true, get: /* @__PURE__ */ __name(function() { return parse_1.parseFile; }, "get") }); Object.defineProperty(exports2, "ParserOptions", { enumerable: true, get: /* @__PURE__ */ __name(function() { return parse_1.ParserOptions; }, "get") }); Object.defineProperty(exports2, "CsvParserStream", { enumerable: true, get: /* @__PURE__ */ __name(function() { return parse_1.CsvParserStream; }, "get") }); } }); // ../../node_modules/.pnpm/dayjs@1.11.23/node_modules/dayjs/plugin/customParseFormat.js var require_customParseFormat = __commonJS({ "../../node_modules/.pnpm/dayjs@1.11.23/node_modules/dayjs/plugin/customParseFormat.js"(exports2, module2) { !(function(e, t) { "object" == typeof exports2 && "undefined" != typeof module2 ? module2.exports = t() : "function" == typeof define && define.amd ? define(t) : (e = "undefined" != typeof globalThis ? globalThis : e || self).dayjs_plugin_customParseFormat = t(); })(exports2, (function() { "use strict"; var e = { LTS: "h:mm:ss A", LT: "h:mm A", L: "MM/DD/YYYY", LL: "MMMM D, YYYY", LLL: "MMMM D, YYYY h:mm A", LLLL: "dddd, MMMM D, YYYY h:mm A" }, t = /(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g, n = /\d/, r = /\d\d/, i = /\d\d?/, o = /\d*[^-_:/,()\s\d]+/, s = {}, a = /* @__PURE__ */ __name(function(e2) { return (e2 = +e2) + (e2 > 68 ? 1900 : 2e3); }, "a"); var f = /* @__PURE__ */ __name(function(e2) { return function(t2) { this[e2] = +t2; }; }, "f"), h = [/[+-]\d\d:?(\d\d)?|Z/, function(e2) { (this.zone || (this.zone = {})).offset = (function(e3) { if (!e3) return 0; if ("Z" === e3) return 0; var t2 = e3.match(/([+-]|\d\d)/g), n2 = 60 * t2[1] + (+t2[2] || 0); return 0 === n2 ? 0 : "+" === t2[0] ? -n2 : n2; })(e2); }], u = /* @__PURE__ */ __name(function(e2) { var t2 = s[e2]; return t2 && (t2.indexOf ? t2 : t2.s.concat(t2.f)); }, "u"), d = /* @__PURE__ */ __name(function(e2, t2) { var n2, r2 = s.meridiem; if (r2) { for (var i2 = 1; i2 <= 24; i2 += 1) if (e2.indexOf(r2(i2, 0, t2)) > -1) { n2 = i2 > 12; break; } } else n2 = e2 === (t2 ? "pm" : "PM"); return n2; }, "d"), c = { A: [o, function(e2) { this.afternoon = d(e2, false); }], a: [o, function(e2) { this.afternoon = d(e2, true); }], Q: [n, function(e2) { this.month = 3 * (e2 - 1) + 1; }], S: [n, function(e2) { this.milliseconds = 100 * +e2; }], SS: [r, function(e2) { this.milliseconds = 10 * +e2; }], SSS: [/\d{3}/, function(e2) { this.milliseconds = +e2; }], s: [i, f("seconds")], ss: [i, f("seconds")], m: [i, f("minutes")], mm: [i, f("minutes")], H: [i, f("hours")], h: [i, f("hours")], HH: [i, f("hours")], hh: [i, f("hours")], D: [i, f("day")], DD: [r, f("day")], Do: [o, function(e2) { var t2 = s.ordinal, n2 = e2.match(/\d+/); if (this.day = n2[0], t2) for (var r2 = 1; r2 <= 31; r2 += 1) t2(r2).replace(/\[|\]/g, "") === e2 && (this.day = r2); }], w: [i, f("week")], ww: [r, f("week")], M: [i, f("month")], MM: [r, f("month")], MMM: [o, function(e2) { var t2 = u("months"), n2 = (u("monthsShort") || t2.map((function(e3) { return e3.slice(0, 3); }))).indexOf(e2) + 1; if (n2 < 1) throw new Error(); this.month = n2 % 12 || n2; }], MMMM: [o, function(e2) { var t2 = u("months").indexOf(e2) + 1; if (t2 < 1) throw new Error(); this.month = t2 % 12 || t2; }], Y: [/[+-]?\d+/, f("year")], YY: [r, function(e2) { this.year = a(e2); }], YYYY: [/\d{4}/, f("year")], Z: h, ZZ: h }; function l2(n2) { var r2, i2; r2 = n2, i2 = s && s.formats; for (var o2 = (n2 = r2.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g, (function(t2, n3, r3) { var o3 = r3 && r3.toUpperCase(); return n3 || i2[r3] || e[r3] || i2[o3].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g, (function(e2, t3, n4) { return t3 || n4.slice(1); })); }))).match(t), a2 = o2.length, f2 = 0; f2 < a2; f2 += 1) { var h2 = o2[f2], u2 = c[h2], d2 = u2 && u2[0], l3 = u2 && u2[1]; o2[f2] = l3 ? { regex: d2, parser: l3 } : h2.replace(/^\[|\]$/g, ""); } return function(e2) { for (var t2 = {}, n3 = 0, r3 = 0; n3 < a2; n3 += 1) { var i3 = o2[n3]; if ("string" == typeof i3) r3 += i3.length; else { var s2 = i3.regex, f3 = i3.parser, h3 = e2.slice(r3), u3 = s2.exec(h3)[0]; f3.call(t2, u3), e2 = e2.replace(u3, ""); } } return (function(e3) { var t3 = e3.afternoon; if (void 0 !== t3) { var n4 = e3.hours; t3 ? n4 < 12 && (e3.hours += 12) : 12 === n4 && (e3.hours = 0), delete e3.afternoon; } })(t2), t2; }; } __name(l2, "l"); return function(e2, t2, n2) { n2.p.customParseFormat = true, e2 && e2.parseTwoDigitYear && (a = e2.parseTwoDigitYear); var r2 = t2.prototype, i2 = r2.parse; r2.parse = function(e3) { var t3 = e3.date, r3 = e3.utc, o2 = e3.args; this.$u = r3; var a2 = o2[1]; if ("string" == typeof a2) { var f2 = true === o2[2], h2 = true === o2[3], u2 = f2 || h2, d2 = o2[2]; h2 && (d2 = o2[2]), s = this.$locale(), !f2 && d2 && (s = n2.Ls[d2]), this.$d = (function(e4, t4, n3, r4) { try { if (["x", "X"].indexOf(t4) > -1) return new Date(("X" === t4 ? 1e3 : 1) * e4); var i3 = l2(t4)(e4), o3 = i3.year, s2 = i3.month, a3 = i3.day, f3 = i3.hours, h3 = i3.minutes, u3 = i3.seconds, d3 = i3.milliseconds, c3 = i3.zone, m2 = i3.week, M2 = /* @__PURE__ */ new Date(), Y = a3 || (o3 || s2 ? 1 : M2.getDate()), p = o3 || M2.getFullYear(), v = 0; o3 && !s2 || (v = s2 > 0 ? s2 - 1 : M2.getMonth()); var D, w = f3 || 0, g = h3 || 0, y = u3 || 0, L = d3 || 0; return c3 ? new Date(Date.UTC(p, v, Y, w, g, y, L + 60 * c3.offset * 1e3)) : n3 ? new Date(Date.UTC(p, v, Y, w, g, y, L)) : (D = new Date(p, v, Y, w, g, y, L), m2 && (D = r4(D).week(m2).toDate()), D); } catch (e5) { return /* @__PURE__ */ new Date(""); } })(t3, a2, r3, n2), this.init(), d2 && true !== d2 && (this.$L = this.locale(d2).$L), u2 && t3 != this.format(a2) && (this.$d = /* @__PURE__ */ new Date("")), s = {}; } else if (a2 instanceof Array) for (var c2 = a2.length, m = 1; m <= c2; m += 1) { o2[1] = a2[m - 1]; var M = n2.apply(this, o2); if (M.isValid()) { this.$d = M.$d, this.$L = M.$L, this.init(); break; } m === c2 && (this.$d = /* @__PURE__ */ new Date("")); } else i2.call(this, e3); }; }; })); } }); // ../../node_modules/.pnpm/dayjs@1.11.23/node_modules/dayjs/plugin/utc.js var require_utc = __commonJS({ "../../node_modules/.pnpm/dayjs@1.11.23/node_modules/dayjs/plugin/utc.js"(exports2, module2) { !(function(t, i) { "object" == typeof exports2 && "undefined" != typeof module2 ? module2.exports = i() : "function" == typeof define && define.amd ? define(i) : (t = "undefined" != typeof globalThis ? globalThis : t || self).dayjs_plugin_utc = i(); })(exports2, (function() { "use strict"; var t = "minute", i = /[+-]\d\d(?::?\d\d)?/g, e = /([+-]|\d\d)/g; return function(s, f, n) { var u = f.prototype; n.utc = function(t2) { var i2 = { date: t2, utc: true, args: arguments }; return new f(i2); }, u.utc = function(i2) { var e2 = n(this.toDate(), { locale: this.$L, utc: true }); return i2 ? e2.add(this.utcOffset(), t) : e2; }, u.local = function() { return n(this.toDate(), { locale: this.$L, utc: false }); }; var r = u.parse; u.parse = function(t2) { t2.utc && (this.$u = true), this.$utils().u(t2.$offset) || (this.$offset = t2.$offset), r.call(this, t2); }; var o = u.init; u.init = function() { if (this.$u) { var t2 = this.$d; this.$y = t2.getUTCFullYear(), this.$M = t2.getUTCMonth(), this.$D = t2.getUTCDate(), this.$W = t2.getUTCDay(), this.$H = t2.getUTCHours(), this.$m = t2.getUTCMinutes(), this.$s = t2.getUTCSeconds(), this.$ms = t2.getUTCMilliseconds(); } else o.call(this); }; var a = u.utcOffset; u.utcOffset = function(s2, f2) { var n2 = this.$utils().u; if (n2(s2)) return this.$u ? 0 : n2(this.$offset) ? a.call(this) : this.$offset; if ("string" == typeof s2 && (s2 = (function(t2) { void 0 === t2 && (t2 = ""); var s3 = t2.match(i); if (!s3) return null; var f3 = ("" + s3[0]).match(e) || ["-", 0, 0], n3 = f3[0], u3 = 60 * +f3[1] + +f3[2]; return 0 === u3 ? 0 : "+" === n3 ? u3 : -u3; })(s2), null === s2)) return this; var u2 = Math.abs(s2) <= 16 ? 60 * s2 : s2; if (0 === u2) return this.utc(f2); var r2 = this.clone(); if (f2) return r2.$offset = u2, r2.$u = false, r2; var o2 = this.$u ? this.toDate().getTimezoneOffset() : -1 * this.utcOffset(); return (r2 = this.local().add(u2 + o2, t)).$offset = u2, r2.$x.$localOffset = o2, r2; }; var h = u.format; u.format = function(t2) { var i2 = t2 || (this.$u ? "YYYY-MM-DDTHH:mm:ss[Z]" : ""); return h.call(this, i2); }, u.valueOf = function() { var t2 = this.$utils().u(this.$offset) ? 0 : this.$offset + (this.$x.$localOffset || this.$d.getTimezoneOffset()); return this.$d.valueOf() - 6e4 * t2; }, u.isUTC = function() { return !!this.$u; }, u.toISOString = function() { return this.toDate().toISOString(); }, u.toString = function() { return this.toDate().toUTCString(); }; var l2 = u.toDate; u.toDate = function(t2) { return "s" === t2 && this.$offset ? n(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate() : l2.call(this); }; var c = u.diff; u.diff = function(t2, i2, e2) { if (t2 && this.$u === t2.$u) return c.call(this, t2, i2, e2); var s2 = this.local(), f2 = n(t2).local(); return c.call(s2, f2, i2, e2); }; }; })); } }); // ../../node_modules/.pnpm/dayjs@1.11.23/node_modules/dayjs/dayjs.min.js var require_dayjs_min = __commonJS({ "../../node_modules/.pnpm/dayjs@1.11.23/node_modules/dayjs/dayjs.min.js"(exports2, module2) { !(function(t, e) { "object" == typeof exports2 && "undefined" != typeof module2 ? module2.exports = e() : "function" == typeof define && define.amd ? define(e) : (t = "undefined" != typeof globalThis ? globalThis : t || self).dayjs = e(); })(exports2, (function() { "use strict"; var t = 1e3, e = 6e4, n = 36e5, r = "millisecond", i = "second", s = "minute", u = "hour", a = "day", o = "week", c = "month", f = "quarter", h = "year", d = "date", l2 = "Invalid Date", $ = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/, y = /\[([^\]]+)]|YYYY|YY|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g, M = { name: "en", weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), ordinal: /* @__PURE__ */ __name(function(t2) { var e2 = ["th", "st", "nd", "rd"], n2 = t2 % 100; return "[" + t2 + (e2[(n2 - 20) % 10] || e2[n2] || e2[0]) + "]"; }, "ordinal") }, m = /* @__PURE__ */ __name(function(t2, e2, n2) { var r2 = String(t2); return !r2 || r2.length >= e2 ? t2 : "" + Array(e2 + 1 - r2.length).join(n2) + t2; }, "m"), v = { s: m, z: /* @__PURE__ */ __name(function(t2) { var e2 = -t2.utcOffset(), n2 = Math.abs(e2), r2 = Math.floor(n2 / 60), i2 = n2 % 60; return (e2 <= 0 ? "+" : "-") + m(r2, 2, "0") + ":" + m(i2, 2, "0"); }, "z"), m: /* @__PURE__ */ __name(function t2(e2, n2) { if (e2.date() < n2.date()) return -t2(n2, e2); var r2 = 12 * (n2.year() - e2.year()) + (n2.month() - e2.month()), i2 = e2.clone().add(r2, c), s2 = n2 - i2 < 0, u2 = e2.clone().add(r2 + (s2 ? -1 : 1), c); return +(-(r2 + (n2 - i2) / (s2 ? i2 - u2 : u2 - i2)) || 0); }, "t"), a: /* @__PURE__ */ __name(function(t2) { return t2 < 0 ? Math.ceil(t2) || 0 : Math.floor(t2); }, "a"), p: /* @__PURE__ */ __name(function(t2) { return { M: c, y: h, w: o, d: a, D: d, h: u, m: s, s: i, ms: r, Q: f }[t2] || String(t2 || "").toLowerCase().replace(/s$/, ""); }, "p"), u: /* @__PURE__ */ __name(function(t2) { return void 0 === t2; }, "u") }, g = "en", D = {}; D[g] = M; var p = "$isDayjsObject", S = /* @__PURE__ */ __name(function(t2) { return t2 instanceof _2 || !(!t2 || !t2[p]); }, "S"), w = /* @__PURE__ */ __name(function t2(e2, n2, r2) { var i2; if (!e2) return g; if ("string" == typeof e2) { var s2 = e2.toLowerCase(); D[s2] && (i2 = s2), n2 && (D[s2] = n2, i2 = s2); var u2 = e2.split("-"); if (!i2 && u2.length > 1) return t2(u2[0]); } else { var a2 = e2.name; D[a2] = e2, i2 = a2; } return !r2 && i2 && (g = i2), i2 || !r2 && g; }, "t"), O = /* @__PURE__ */ __name(function(t2, e2) { if (S(t2)) return t2.clone(); var n2 = "object" == typeof e2 ? e2 : {}; return n2.date = t2, n2.args = arguments, new _2(n2); }, "O"), b = v; b.l = w, b.i = S, b.w = function(t2, e2) { return O(t2, { locale: e2.$L, utc: e2.$u, x: e2.$x, $offset: e2.$offset }); }; var _2 = (function() { function M2(t2) { this.$L = w(t2.locale, null, true), this.parse(t2), this.$x = this.$x || t2.x || {}, this[p] = true; } __name(M2, "M"); var m2 = M2.prototype; return m2.parse = function(t2) { this.$d = (function(t3) { var e2 = t3.date, n2 = t3.utc; if (null === e2) return /* @__PURE__ */ new Date(NaN); if (b.u(e2)) return /* @__PURE__ */ new Date(); if (e2 instanceof Date) return new Date(e2); if ("string" == typeof e2 && !/Z$/i.test(e2)) { var r2 = e2.match($); if (r2) { var i2 = r2[2] - 1 || 0, s2 = (r2[7] || "0").substring(0, 3); return n2 ? new Date(Date.UTC(r2[1], i2, r2[3] || 1, r2[4] || 0, r2[5] || 0, r2[6] || 0, s2)) : new Date(r2[1], i2, r2[3] || 1, r2[4] || 0, r2[5] || 0, r2[6] || 0, s2); } } return new Date(e2); })(t2), this.init(); }, m2.init = function() { var t2 = this.$d; this.$y = t2.getFullYear(), this.$M = t2.getMonth(), this.$D = t2.getDate(), this.$W = t2.getDay(), this.$H = t2.getHours(), this.$m = t2.getMinutes(), this.$s = t2.getSeconds(), this.$ms = t2.getMilliseconds(); }, m2.$utils = function() { return b; }, m2.isValid = function() { return !(this.$d.toString() === l2); }, m2.isSame = function(t2, e2) { var n2 = O(t2); return this.startOf(e2) <= n2 && n2 <= this.endOf(e2); }, m2.isAfter = function(t2, e2) { return O(t2) < this.startOf(e2); }, m2.isBefore = function(t2, e2) { return this.endOf(e2) < O(t2); }, m2.$g = function(t2, e2, n2) { return b.u(t2) ? this[e2] : this.set(n2, t2); }, m2.unix = function() { return Math.floor(this.valueOf() / 1e3); }, m2.valueOf = function() { return this.$d.getTime(); }, m2.startOf = function(t2, e2) { var n2 = this, r2 = !!b.u(e2) || e2, f2 = b.p(t2), l3 = /* @__PURE__ */ __name(function(t3, e3) { var i2 = b.w(n2.$u ? Date.UTC(n2.$y, e3, t3) : new Date(n2.$y, e3, t3), n2); return r2 ? i2 : i2.endOf(a); }, "l"), $2 = /* @__PURE__ */ __name(function(t3, e3) { return b.w(n2.toDate()[t3].apply(n2.toDate("s"), (r2 ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(e3)), n2); }, "$"), y2 = this.$W, M3 = this.$M, m3 = this.$D, v2 = "set" + (this.$u ? "UTC" : ""); switch (f2) { case h: return r2 ? l3(1, 0) : l3(31, 11); case c: return r2 ? l3(1, M3) : l3(0, M3 + 1); case o: var g2 = this.$locale().weekStart || 0, D2 = (y2 < g2 ? y2 + 7 : y2) - g2; return l3(r2 ? m3 - D2 : m3 + (6 - D2), M3); case a: case d: return $2(v2 + "Hours", 0); case u: return $2(v2 + "Minutes", 1); case s: return $2(v2 + "Seconds", 2); case i: return $2(v2 + "Milliseconds", 3); default: return this.clone(); } }, m2.endOf = function(t2) { return this.startOf(t2, false); }, m2.$set = function(t2, e2) { var n2, o2 = b.p(t2), f2 = "set" + (this.$u ? "UTC" : ""), l3 = (n2 = {}, n2[a] = f2 + "Date", n2[d] = f2 + "Date", n2[c] = f2 + "Month", n2[h] = f2 + "FullYear", n2[u] = f2 + "Hours", n2[s] = f2 + "Minutes", n2[i] = f2 + "Seconds", n2[r] = f2 + "Milliseconds", n2)[o2], $2 = o2 === a ? this.$D + (e2 - this.$W) : e2; if (o2 === c || o2 === h) { var y2 = this.clone().set(d, 1); y2.$d[l3]($2), y2.init(), this.$d = y2.set(d, Math.min(this.$D, y2.daysInMonth())).$d; } else l3 && this.$d[l3]($2); return this.init(), this; }, m2.set = function(t2, e2) { return this.clone().$set(t2, e2); }, m2.get = function(t2) { return this[b.p(t2)](); }, m2.add = function(r2, f2) { var d2, l3 = this; r2 = Number(r2); var $2 = b.p(f2), y2 = /* @__PURE__ */ __name(function(t2) { var e2 = O(l3); return b.w(e2.date(e2.date() + Math.round(t2 * r2)), l3); }, "y"); if ($2 === c) return this.set(c, this.$M + r2); if ($2 === h) return this.set(h, this.$y + r2); if ($2 === a) return y2(1); if ($2 === o) return y2(7); var M3 = (d2 = {}, d2[s] = e, d2[u] = n, d2[i] = t, d2)[$2] || 1, m3 = this.$d.getTime() + r2 * M3; return b.w(m3, this); }, m2.subtract = function(t2, e2) { return this.add(-1 * t2, e2); }, m2.format = function(t2) { var e2 = this, n2 = this.$locale(); if (!this.isValid()) return n2.invalidDate || l2; var r2 = t2 || "YYYY-MM-DDTHH:mm:ssZ", i2 = b.z(this), s2 = this.$H, u2 = this.$m, a2 = this.$M, o2 = n2.weekdays, c2 = n2.months, f2 = n2.meridiem, h2 = /* @__PURE__ */ __name(function(t3, n3, i3, s3) { return t3 && (t3[n3] || t3(e2, r2)) || i3[n3].slice(0, s3); }, "h"), d2 = /* @__PURE__ */ __name(function(t3) { return b.s(s2 % 12 || 12, t3, "0"); }, "d"), $2 = f2 || function(t3, e3, n3) { var r3 = t3 < 12 ? "AM" : "PM"; return n3 ? r3.toLowerCase() : r3; }; return r2.replace(y, (function(t3, r3) { return r3 || (function(t4) { switch (t4) { case "YY": return String(e2.$y).slice(-2); case "YYYY": return b.s(e2.$y, 4, "0"); case "M": return a2 + 1; case "MM": return b.s(a2 + 1, 2, "0"); case "MMM": return h2(n2.monthsShort, a2, c2, 3); case "MMMM": return h2(c2, a2); case "D": return e2.$D; case "DD": return b.s(e2.$D, 2, "0"); case "d": return String(e2.$W); case "dd": return h2(n2.weekdaysMin, e2.$W, o2, 2); case "ddd": return h2(n2.weekdaysShort, e2.$W, o2, 3); case "dddd": return o2[e2.$W]; case "H": return String(s2); case "HH": return b.s(s2, 2, "0"); case "h": return d2(1); case "hh": return d2(2); case "a": return $2(s2, u2, true); case "A": return $2(s2, u2, false); case "m": return String(u2); case "mm": return b.s(u2, 2, "0"); case "s": return String(e2.$s); case "ss": return b.s(e2.$s, 2, "0"); case "SSS": return b.s(e2.$ms, 3, "0"); case "Z": return i2; } return null; })(t3) || i2.replace(":", ""); })); }, m2.utcOffset = function() { return 15 * -Math.round(this.$d.getTimezoneOffset() / 15); }, m2.diff = function(r2, d2, l3) { var $2, y2 = this, M3 = b.p(d2), m3 = O(r2), v2 = (m3.utcOffset() - this.utcOffset()) * e, g2 = this - m3, D2 = /* @__PURE__ */ __name(function() { return b.m(y2, m3); }, "D"); switch (M3) { case h: $2 = D2() / 12; break; case c: $2 = D2(); break; case f: $2 = D2() / 3; break; case o: $2 = (g2 - v2) / 6048e5; break; case a: $2 = (g2 - v2) / 864e5; break; case u: $2 = g2 / n; break; case s: $2 = g2 / e; break; case i: $2 = g2 / t; break; default: $2 = g2; } return l3 ? $2 : b.a($2); }, m2.daysInMonth = function() { return this.endOf(c).$D; }, m2.$locale = function() { return D[this.$L]; }, m2.locale = function(t2, e2) { if (!t2) return this.$L; var n2 = this.clone(), r2 = w(t2, e2, true); return r2 && (n2.$L = r2), n2; }, m2.clone = function() { return b.w(this.$d, this); }, m2.toDate = function() { return new Date(this.valueOf()); }, m2.toJSON = function() { return this.isValid() ? this.toISOString() : null; }, m2.toISOString = function() { return this.$d.toISOString(); }, m2.toString = function() { return this.$d.toUTCString(); }, M2; })(), Y = _2.prototype; return O.prototype = Y, [["$ms", r], ["$s", i], ["$m", s], ["$H", u], ["$W", a], ["$M", c], ["$y", h], ["$D", d]].forEach((function(t2) { Y[t2[1]] = function(e2) { return this.$g(e2, t2[0], t2[1]); }; })), O.extend = function(t2, e2) { return t2.$i || (t2(e2, _2, O), t2.$i = true), O; }, O.locale = w, O.isDayjs = S, O.unix = function(t2) { return O(1e3 * t2); }, O.en = D[g], O.Ls = D, O.p = {}, O; })); } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/csv/csv.js var require_csv = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/csv/csv.js"(exports2, module2) { var fs = require("fs"); var fastCsv = require_src5(); var customParseFormat = require_customParseFormat(); var utc = require_utc(); var dayjs = require_dayjs_min().extend(customParseFormat).extend(utc); var StreamBuf = require_stream_buf(); var { fs: { exists } } = require_utils21(); var SpecialValues = { true: true, false: false, "#N/A": { error: "#N/A" }, "#REF!": { error: "#REF!" }, "#NAME?": { error: "#NAME?" }, "#DIV/0!": { error: "#DIV/0!" }, "#NULL!": { error: "#NULL!" }, "#VALUE!": { error: "#VALUE!" }, "#NUM!": { error: "#NUM!" } }; var CSV = class { static { __name(this, "CSV"); } constructor(workbook) { this.workbook = workbook; this.worksheet = null; } async readFile(filename, options) { options = options || {}; if (!await exists(filename)) { throw new Error(`File not found: ${filename}`); } const stream = fs.createReadStream(filename); const worksheet = await this.read(stream, options); stream.close(); return worksheet; } read(stream, options) { options = options || {}; return new Promise((resolve, reject) => { const worksheet = this.workbook.addWorksheet(options.sheetName); const dateFormats = options.dateFormats || [ "YYYY-MM-DD[T]HH:mm:ssZ", "YYYY-MM-DD[T]HH:mm:ss", "MM-DD-YYYY", "YYYY-MM-DD" ]; const map = options.map || function(datum) { if (datum === "") { return null; } const datumNumber = Number(datum); if (!Number.isNaN(datumNumber) && datumNumber !== Infinity) { return datumNumber; } const dt = dateFormats.reduce((matchingDate, currentDateFormat) => { if (matchingDate) { return matchingDate; } const dayjsObj = dayjs(datum, currentDateFormat, true); if (dayjsObj.isValid()) { return dayjsObj; } return null; }, null); if (dt) { return new Date(dt.valueOf()); } const special = SpecialValues[datum]; if (special !== void 0) { return special; } return datum; }; const csvStream = fastCsv.parse(options.parserOptions).on("data", (data) => { worksheet.addRow(data.map(map)); }).on("end", () => { csvStream.emit("worksheet", worksheet); }); csvStream.on("worksheet", resolve).on("error", reject); stream.pipe(csvStream); }); } /** * @deprecated since version 4.0. You should use `CSV#read` instead. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md */ createInputStream() { throw new Error( "`CSV#createInputStream` is deprecated. You should use `CSV#read` instead. This method will be removed in version 5.0. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md" ); } write(stream, options) { return new Promise((resolve, reject) => { options = options || {}; const worksheet = this.workbook.getWorksheet(options.sheetName || options.sheetId); const csvStream = fastCsv.format(options.formatterOptions); stream.on("finish", () => { resolve(); }); csvStream.on("error", reject); csvStream.pipe(stream); const { dateFormat, dateUTC } = options; const map = options.map || ((value) => { if (value) { if (value.text || value.hyperlink) { return value.hyperlink || value.text || ""; } if (value.formula || value.result) { return value.result || ""; } if (value instanceof Date) { if (dateFormat) { return dateUTC ? dayjs.utc(value).format(dateFormat) : dayjs(value).format(dateFormat); } return dateUTC ? dayjs.utc(value).format() : dayjs(value).format(); } if (value.error) { return value.error; } if (typeof value === "object") { return JSON.stringify(value); } } return value; }); const includeEmptyRows = options.includeEmptyRows === void 0 || options.includeEmptyRows; let lastRow = 1; if (worksheet) { worksheet.eachRow((row, rowNumber) => { if (includeEmptyRows) { while (lastRow++ < rowNumber - 1) { csvStream.write([]); } } const { values } = row; values.shift(); csvStream.write(values.map(map)); lastRow = rowNumber; }); } csvStream.end(); }); } writeFile(filename, options) { options = options || {}; const streamOptions = { encoding: options.encoding || "utf8" }; const stream = fs.createWriteStream(filename, streamOptions); return this.write(stream, options); } async writeBuffer(options) { const stream = new StreamBuf(); await this.write(stream, options); return stream.read(); } }; module2.exports = CSV; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/workbook.js var require_workbook = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/workbook.js"(exports2, module2) { "use strict"; var Worksheet = require_worksheet(); var DefinedNames = require_defined_names(); var XLSX = require_xlsx(); var CSV = require_csv(); var Workbook = class { static { __name(this, "Workbook"); } constructor() { this.category = ""; this.company = ""; this.created = /* @__PURE__ */ new Date(); this.description = ""; this.keywords = ""; this.manager = ""; this.modified = this.created; this.properties = {}; this.calcProperties = {}; this._worksheets = []; this.subject = ""; this.title = ""; this.views = []; this.media = []; this._definedNames = new DefinedNames(); } get xlsx() { if (!this._xlsx) this._xlsx = new XLSX(this); return this._xlsx; } get csv() { if (!this._csv) this._csv = new CSV(this); return this._csv; } get nextId() { for (let i = 1; i < this._worksheets.length; i++) { if (!this._worksheets[i]) { return i; } } return this._worksheets.length || 1; } addWorksheet(name, options) { const id = this.nextId; if (options) { if (typeof options === "string") { console.trace( 'tabColor argument is now deprecated. Please use workbook.addWorksheet(name, {properties: { tabColor: { argb: "rbg value" } }' ); options = { properties: { tabColor: { argb: options } } }; } else if (options.argb || options.theme || options.indexed) { console.trace( "tabColor argument is now deprecated. Please use workbook.addWorksheet(name, {properties: { tabColor: { ... } }" ); options = { properties: { tabColor: options } }; } } const lastOrderNo = this._worksheets.reduce((acc, ws) => (ws && ws.orderNo) > acc ? ws.orderNo : acc, 0); const worksheetOptions = Object.assign({}, options, { id, name, orderNo: lastOrderNo + 1, workbook: this }); const worksheet = new Worksheet(worksheetOptions); this._worksheets[id] = worksheet; return worksheet; } removeWorksheetEx(worksheet) { delete this._worksheets[worksheet.id]; } removeWorksheet(id) { const worksheet = this.getWorksheet(id); if (worksheet) { worksheet.destroy(); } } getWorksheet(id) { if (id === void 0) { return this._worksheets.find(Boolean); } if (typeof id === "number") { return this._worksheets[id]; } if (typeof id === "string") { return this._worksheets.find((worksheet) => worksheet && worksheet.name === id); } return void 0; } get worksheets() { return this._worksheets.slice(1).sort((a, b) => a.orderNo - b.orderNo).filter(Boolean); } eachSheet(iteratee) { this.worksheets.forEach((sheet) => { iteratee(sheet, sheet.id); }); } get definedNames() { return this._definedNames; } clearThemes() { this._themes = void 0; } addImage(image) { const id = this.media.length; this.media.push(Object.assign({}, image, { type: "image" })); return id; } getImage(id) { return this.media[id]; } get model() { return { creator: this.creator || "Unknown", lastModifiedBy: this.lastModifiedBy || "Unknown", lastPrinted: this.lastPrinted, created: this.created, modified: this.modified, properties: this.properties, worksheets: this.worksheets.map((worksheet) => worksheet.model), sheets: this.worksheets.map((ws) => ws.model).filter(Boolean), definedNames: this._definedNames.model, views: this.views, company: this.company, manager: this.manager, title: this.title, subject: this.subject, keywords: this.keywords, category: this.category, description: this.description, language: this.language, revision: this.revision, contentStatus: this.contentStatus, themes: this._themes, media: this.media, calcProperties: this.calcProperties }; } set model(value) { this.creator = value.creator; this.lastModifiedBy = value.lastModifiedBy; this.lastPrinted = value.lastPrinted; this.created = value.created; this.modified = value.modified; this.company = value.company; this.manager = value.manager; this.title = value.title; this.subject = value.subject; this.keywords = value.keywords; this.category = value.category; this.description = value.description; this.language = value.language; this.revision = value.revision; this.contentStatus = value.contentStatus; this.properties = value.properties; this.calcProperties = value.calcProperties; this._worksheets = []; value.worksheets.forEach((worksheetModel) => { const { id, name, state } = worksheetModel; const orderNo = value.sheets && value.sheets.findIndex((ws) => ws.id === id); const worksheet = this._worksheets[id] = new Worksheet({ id, name, orderNo, state, workbook: this }); worksheet.model = worksheetModel; }); this._definedNames.model = value.definedNames; this.views = value.views; this._themes = value.themes; this.media = value.media || []; } }; module2.exports = Workbook; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/modelcontainer.js var require_modelcontainer = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/doc/modelcontainer.js"(exports2, module2) { "use strict"; var XLSX = require_xlsx(); var ModelContainer = class { static { __name(this, "ModelContainer"); } constructor(model) { this.model = model; } get xlsx() { if (!this._xlsx) { this._xlsx = new XLSX(this); } return this._xlsx; } }; module2.exports = ModelContainer; } }); // ../../node_modules/.pnpm/minimatch@5.1.9/node_modules/minimatch/lib/path.js var require_path = __commonJS({ "../../node_modules/.pnpm/minimatch@5.1.9/node_modules/minimatch/lib/path.js"(exports2, module2) { var isWindows = typeof process === "object" && process && process.platform === "win32"; module2.exports = isWindows ? { sep: "\\" } : { sep: "/" }; } }); // ../../node_modules/.pnpm/balanced-match@1.0.2/node_modules/balanced-match/index.js var require_balanced_match = __commonJS({ "../../node_modules/.pnpm/balanced-match@1.0.2/node_modules/balanced-match/index.js"(exports2, module2) { "use strict"; module2.exports = balanced; function balanced(a, b, str) { if (a instanceof RegExp) a = maybeMatch(a, str); if (b instanceof RegExp) b = maybeMatch(b, str); var r = range(a, b, str); return r && { start: r[0], end: r[1], pre: str.slice(0, r[0]), body: str.slice(r[0] + a.length, r[1]), post: str.slice(r[1] + b.length) }; } __name(balanced, "balanced"); function maybeMatch(reg, str) { var m = str.match(reg); return m ? m[0] : null; } __name(maybeMatch, "maybeMatch"); balanced.range = range; function range(a, b, str) { var begs, beg, left, right, result; var ai = str.indexOf(a); var bi = str.indexOf(b, ai + 1); var i = ai; if (ai >= 0 && bi > 0) { if (a === b) { return [ai, bi]; } begs = []; left = str.length; while (i >= 0 && !result) { if (i == ai) { begs.push(i); ai = str.indexOf(a, i + 1); } else if (begs.length == 1) { result = [begs.pop(), bi]; } else { beg = begs.pop(); if (beg < left) { left = beg; right = bi; } bi = str.indexOf(b, i + 1); } i = ai < bi && ai >= 0 ? ai : bi; } if (begs.length) { result = [left, right]; } } return result; } __name(range, "range"); } }); // ../../node_modules/.pnpm/brace-expansion@2.1.4/node_modules/brace-expansion/index.js var require_brace_expansion = __commonJS({ "../../node_modules/.pnpm/brace-expansion@2.1.4/node_modules/brace-expansion/index.js"(exports2, module2) { var balanced = require_balanced_match(); module2.exports = expandTop; var escSlash = "\0SLASH" + Math.random() + "\0"; var escOpen = "\0OPEN" + Math.random() + "\0"; var escClose = "\0CLOSE" + Math.random() + "\0"; var escComma = "\0COMMA" + Math.random() + "\0"; var escPeriod = "\0PERIOD" + Math.random() + "\0"; var EXPANSION_MAX = 1e5; var EXPANSION_MAX_LENGTH = 4e6; function numeric(str) { return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0); } __name(numeric, "numeric"); function escapeBraces(str) { return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod); } __name(escapeBraces, "escapeBraces"); function unescapeBraces(str) { return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join("."); } __name(unescapeBraces, "unescapeBraces"); function parseCommaParts(str) { if (!str) return [""]; var parts = []; var m = balanced("{", "}", str); if (!m) return str.split(","); var pre = m.pre; var body = m.body; var post = m.post; var p = pre.split(","); p[p.length - 1] += "{" + body + "}"; var postParts = parseCommaParts(post); if (post.length) { p[p.length - 1] += postParts.shift(); p.push.apply(p, postParts); } parts.push.apply(parts, p); return parts; } __name(parseCommaParts, "parseCommaParts"); function expandTop(str, options) { if (!str) return []; options = options || {}; var max = options.max == null ? EXPANSION_MAX : options.max; var maxLength = options.maxLength == null ? EXPANSION_MAX_LENGTH : options.maxLength; if (str.substr(0, 2) === "{}") { str = "\\{\\}" + str.substr(2); } return expand(escapeBraces(str), max, maxLength, true).map(unescapeBraces); } __name(expandTop, "expandTop"); function embrace(str) { return "{" + str + "}"; } __name(embrace, "embrace"); function isPadded(el) { return /^-?0\d/.test(el); } __name(isPadded, "isPadded"); function lte(i, y) { return i <= y; } __name(lte, "lte"); function gte(i, y) { return i >= y; } __name(gte, "gte"); function combine(acc, pre, values, max, maxLength, dropEmpties) { var out = []; var length = 0; for (var a = 0; a < acc.length; a++) { for (var v = 0; v < values.length; v++) { if (out.length >= max) return out; var expansion = acc[a] + pre + values[v]; if (dropEmpties && !expansion) continue; if (length + expansion.length > maxLength) return out; out.push(expansion); length += expansion.length; } } return out; } __name(combine, "combine"); function expandSequence(body, isAlphaSequence, max, maxLength) { var n = body.split(/\.\./); var N = []; if (n[0] === void 0 || n[1] === void 0) { return N; } var x = numeric(n[0]); var y = numeric(n[1]); var width = Math.max(n[0].length, n[1].length); var incr = n.length === 3 && n[2] !== void 0 ? Math.max(Math.abs(numeric(n[2])), 1) : 1; var test = lte; var reverse = y < x; if (reverse) { incr *= -1; test = gte; } var pad = n.some(isPadded); var length = 0; for (var i = x; test(i, y) && N.length < max; i += incr) { var c; if (isAlphaSequence) { c = String.fromCharCode(i); if (c === "\\") { c = ""; } } else { c = String(i); if (pad) { var need = width - c.length; if (need > 0) { var z = new Array(need + 1).join("0"); if (i < 0) { c = "-" + z + c.slice(1); } else { c = z + c; } } } } if (length + c.length > maxLength) break; N.push(c); length += c.length; } return N; } __name(expandSequence, "expandSequence"); function expand(str, max, maxLength, isTop) { var acc = [""]; var dropEmpties = false; var firstGroup = true; for (; ; ) { const m = balanced("{", "}", str); if (!m) { return combine(acc, str, [""], max, maxLength, dropEmpties); } const pre = m.pre; if (/\$$/.test(pre)) { acc = combine( acc, pre + "{" + m.body + "}", [""], max, maxLength, dropEmpties && !m.post.length ); firstGroup = false; if (!m.post.length) break; str = m.post; continue; } var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); var isSequence = isNumericSequence || isAlphaSequence; var isOptions = m.body.indexOf(",") >= 0; if (!isSequence && !isOptions) { if (m.post.match(/,(?!,).*\}/)) { str = m.pre + "{" + m.body + escClose + m.post; isTop = true; continue; } return combine( acc, pre + "{" + m.body + "}" + m.post, [""], max, maxLength, dropEmpties ); } if (firstGroup) { dropEmpties = isTop && !isSequence; firstGroup = false; } var values; if (isSequence) { values = expandSequence(m.body, isAlphaSequence, max, maxLength); } else { var n = parseCommaParts(m.body); if (n.length === 1 && n[0] !== void 0) { n = expand(n[0], max, maxLength, false).map(embrace); if (n.length === 1) { acc = combine( acc, pre + n[0], [""], max, maxLength, dropEmpties && !m.post.length ); if (!m.post.length) break; str = m.post; continue; } } var dropsEmpties = dropEmpties && !m.post.length && !pre; for (var d = 0; dropsEmpties && d < acc.length; d++) { if (acc[d]) { dropsEmpties = false; } } values = []; var valuesLength = 0; outer: for (var j = 0; j < n.length; j++) { var expanded = expand(n[j], max, maxLength, false); for (var k = 0; k < expanded.length; k++) { var v = expanded[k]; if (dropsEmpties && !v) continue; if (values.length >= max || valuesLength + v.length > maxLength) { break outer; } values.push(v); valuesLength += v.length; } } } acc = combine(acc, pre, values, max, maxLength, dropEmpties && !m.post.length); if (!m.post.length) break; str = m.post; } return acc; } __name(expand, "expand"); } }); // ../../node_modules/.pnpm/minimatch@5.1.9/node_modules/minimatch/minimatch.js var require_minimatch = __commonJS({ "../../node_modules/.pnpm/minimatch@5.1.9/node_modules/minimatch/minimatch.js"(exports2, module2) { var minimatch = module2.exports = (p, pattern, options = {}) => { assertValidPattern(pattern); if (!options.nocomment && pattern.charAt(0) === "#") { return false; } return new Minimatch(pattern, options).match(p); }; module2.exports = minimatch; var path = require_path(); minimatch.sep = path.sep; var GLOBSTAR = Symbol("globstar **"); minimatch.GLOBSTAR = GLOBSTAR; var expand = require_brace_expansion(); var plTypes = { "!": { open: "(?:(?!(?:", close: "))[^/]*?)" }, "?": { open: "(?:", close: ")?" }, "+": { open: "(?:", close: ")+" }, "*": { open: "(?:", close: ")*" }, "@": { open: "(?:", close: ")" } }; var qmark = "[^/]"; var star = qmark + "*?"; var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?"; var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?"; var charSet = /* @__PURE__ */ __name((s) => s.split("").reduce((set, c) => { set[c] = true; return set; }, {}), "charSet"); var reSpecials = charSet("().*{}+?[]^$\\!"); var addPatternStartSet = charSet("[.("); var slashSplit = /\/+/; minimatch.filter = (pattern, options = {}) => (p, i, list) => minimatch(p, pattern, options); var ext = /* @__PURE__ */ __name((a, b = {}) => { const t = {}; Object.keys(a).forEach((k) => t[k] = a[k]); Object.keys(b).forEach((k) => t[k] = b[k]); return t; }, "ext"); minimatch.defaults = (def) => { if (!def || typeof def !== "object" || !Object.keys(def).length) { return minimatch; } const orig = minimatch; const m = /* @__PURE__ */ __name((p, pattern, options) => orig(p, pattern, ext(def, options)), "m"); m.Minimatch = class Minimatch extends orig.Minimatch { static { __name(this, "Minimatch"); } constructor(pattern, options) { super(pattern, ext(def, options)); } }; m.Minimatch.defaults = (options) => orig.defaults(ext(def, options)).Minimatch; m.filter = (pattern, options) => orig.filter(pattern, ext(def, options)); m.defaults = (options) => orig.defaults(ext(def, options)); m.makeRe = (pattern, options) => orig.makeRe(pattern, ext(def, options)); m.braceExpand = (pattern, options) => orig.braceExpand(pattern, ext(def, options)); m.match = (list, pattern, options) => orig.match(list, pattern, ext(def, options)); return m; }; minimatch.braceExpand = (pattern, options) => braceExpand(pattern, options); var braceExpand = /* @__PURE__ */ __name((pattern, options = {}) => { assertValidPattern(pattern); if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) { return [pattern]; } return expand(pattern); }, "braceExpand"); var MAX_PATTERN_LENGTH = 1024 * 64; var assertValidPattern = /* @__PURE__ */ __name((pattern) => { if (typeof pattern !== "string") { throw new TypeError("invalid pattern"); } if (pattern.length > MAX_PATTERN_LENGTH) { throw new TypeError("pattern is too long"); } }, "assertValidPattern"); var SUBPARSE = Symbol("subparse"); minimatch.makeRe = (pattern, options) => new Minimatch(pattern, options || {}).makeRe(); minimatch.match = (list, pattern, options = {}) => { const mm = new Minimatch(pattern, options); list = list.filter((f) => mm.match(f)); if (mm.options.nonull && !list.length) { list.push(pattern); } return list; }; var globUnescape = /* @__PURE__ */ __name((s) => s.replace(/\\(.)/g, "$1"), "globUnescape"); var charUnescape = /* @__PURE__ */ __name((s) => s.replace(/\\([^-\]])/g, "$1"), "charUnescape"); var regExpEscape = /* @__PURE__ */ __name((s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), "regExpEscape"); var braExpEscape = /* @__PURE__ */ __name((s) => s.replace(/[[\]\\]/g, "\\$&"), "braExpEscape"); var Minimatch = class { static { __name(this, "Minimatch"); } constructor(pattern, options) { assertValidPattern(pattern); if (!options) options = {}; this.options = options; this.maxGlobstarRecursion = options.maxGlobstarRecursion !== void 0 ? options.maxGlobstarRecursion : 200; this.set = []; this.pattern = pattern; this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || options.allowWindowsEscape === false; if (this.windowsPathsNoEscape) { this.pattern = this.pattern.replace(/\\/g, "/"); } this.regexp = null; this.negate = false; this.comment = false; this.empty = false; this.partial = !!options.partial; this.make(); } debug() { } make() { const pattern = this.pattern; const options = this.options; if (!options.nocomment && pattern.charAt(0) === "#") { this.comment = true; return; } if (!pattern) { this.empty = true; return; } this.parseNegate(); let set = this.globSet = this.braceExpand(); if (options.debug) this.debug = (...args) => console.error(...args); this.debug(this.pattern, set); set = this.globParts = set.map((s) => s.split(slashSplit)); this.debug(this.pattern, set); set = set.map((s, si, set2) => s.map(this.parse, this)); this.debug(this.pattern, set); set = set.filter((s) => s.indexOf(false) === -1); this.debug(this.pattern, set); this.set = set; } parseNegate() { if (this.options.nonegate) return; const pattern = this.pattern; let negate = false; let negateOffset = 0; for (let i = 0; i < pattern.length && pattern.charAt(i) === "!"; i++) { negate = !negate; negateOffset++; } if (negateOffset) this.pattern = pattern.slice(negateOffset); this.negate = negate; } // set partial to true to test if, for example, // "/a/b" matches the start of "/*/b/*/d" // Partial means, if you run out of file before you run // out of pattern, then that's fine, as long as all // the parts match. matchOne(file2, pattern, partial) { if (pattern.indexOf(GLOBSTAR) !== -1) { return this._matchGlobstar(file2, pattern, partial, 0, 0); } return this._matchOne(file2, pattern, partial, 0, 0); } _matchGlobstar(file2, pattern, partial, fileIndex, patternIndex) { let firstgs = -1; for (let i = patternIndex; i < pattern.length; i++) { if (pattern[i] === GLOBSTAR) { firstgs = i; break; } } let lastgs = -1; for (let i = pattern.length - 1; i >= 0; i--) { if (pattern[i] === GLOBSTAR) { lastgs = i; break; } } const head = pattern.slice(patternIndex, firstgs); const body = partial ? pattern.slice(firstgs + 1) : pattern.slice(firstgs + 1, lastgs); const tail = partial ? [] : pattern.slice(lastgs + 1); if (head.length) { const fileHead = file2.slice(fileIndex, fileIndex + head.length); if (!this._matchOne(fileHead, head, partial, 0, 0)) { return false; } fileIndex += head.length; } let fileTailMatch = 0; if (tail.length) { if (tail.length + fileIndex > file2.length) return false; const tailStart = file2.length - tail.length; if (this._matchOne(file2, tail, partial, tailStart, 0)) { fileTailMatch = tail.length; } else { if (file2[file2.length - 1] !== "" || fileIndex + tail.length === file2.length) { return false; } if (!this._matchOne(file2, tail, partial, tailStart - 1, 0)) { return false; } fileTailMatch = tail.length + 1; } } if (!body.length) { let sawSome = !!fileTailMatch; for (let i = fileIndex; i < file2.length - fileTailMatch; i++) { const f = String(file2[i]); sawSome = true; if (f === "." || f === ".." || !this.options.dot && f.charAt(0) === ".") { return false; } } return partial || sawSome; } const bodySegments = [[[], 0]]; let currentBody = bodySegments[0]; let nonGsParts = 0; const nonGsPartsSums = [0]; for (const b of body) { if (b === GLOBSTAR) { nonGsPartsSums.push(nonGsParts); currentBody = [[], 0]; bodySegments.push(currentBody); } else { currentBody[0].push(b); nonGsParts++; } } let idx = bodySegments.length - 1; const fileLength = file2.length - fileTailMatch; for (const b of bodySegments) { b[1] = fileLength - (nonGsPartsSums[idx--] + b[0].length); } return !!this._matchGlobStarBodySections( file2, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch ); } // return false for "nope, not matching" // return null for "not matching, cannot keep trying" _matchGlobStarBodySections(file2, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) { const bs = bodySegments[bodyIndex]; if (!bs) { for (let i = fileIndex; i < file2.length; i++) { sawTail = true; const f = file2[i]; if (f === "." || f === ".." || !this.options.dot && f.charAt(0) === ".") { return false; } } return sawTail; } const [body, after] = bs; while (fileIndex <= after) { const m = this._matchOne( file2.slice(0, fileIndex + body.length), body, partial, fileIndex, 0 ); if (m && globStarDepth < this.maxGlobstarRecursion) { const sub = this._matchGlobStarBodySections( file2, bodySegments, fileIndex + body.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail ); if (sub !== false) { return sub; } } const f = file2[fileIndex]; if (f === "." || f === ".." || !this.options.dot && f.charAt(0) === ".") { return false; } fileIndex++; } return partial || null; } _matchOne(file2, pattern, partial, fileIndex, patternIndex) { let fi, pi, fl, pl; for (fi = fileIndex, pi = patternIndex, fl = file2.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) { this.debug("matchOne loop"); const p = pattern[pi]; const f = file2[fi]; this.debug(pattern, p, f); if (p === false || p === GLOBSTAR) return false; let hit; if (typeof p === "string") { hit = f === p; this.debug("string match", p, f, hit); } else { hit = f.match(p); this.debug("pattern match", p, f, hit); } if (!hit) return false; } if (fi === fl && pi === pl) { return true; } else if (fi === fl) { return partial; } else if (pi === pl) { return fi === fl - 1 && file2[fi] === ""; } throw new Error("wtf?"); } braceExpand() { return braceExpand(this.pattern, this.options); } parse(pattern, isSub) { assertValidPattern(pattern); const options = this.options; if (pattern === "**") { if (!options.noglobstar) return GLOBSTAR; else pattern = "*"; } if (pattern === "") return ""; let re = ""; let hasMagic = false; let escaping = false; const patternListStack = []; const negativeLists = []; let stateChar; let inClass = false; let reClassStart = -1; let classStart = -1; let cs; let pl; let sp; let dotTravAllowed = pattern.charAt(0) === "."; let dotFileAllowed = options.dot || dotTravAllowed; const patternStart = /* @__PURE__ */ __name(() => dotTravAllowed ? "" : dotFileAllowed ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)", "patternStart"); const subPatternStart = /* @__PURE__ */ __name((p) => p.charAt(0) === "." ? "" : options.dot ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)", "subPatternStart"); const clearStateChar = /* @__PURE__ */ __name(() => { if (stateChar) { switch (stateChar) { case "*": re += star; hasMagic = true; break; case "?": re += qmark; hasMagic = true; break; default: re += "\\" + stateChar; break; } this.debug("clearStateChar %j %j", stateChar, re); stateChar = false; } }, "clearStateChar"); for (let i = 0, c; i < pattern.length && (c = pattern.charAt(i)); i++) { this.debug("%s %s %s %j", pattern, i, re, c); if (escaping) { if (c === "/") { return false; } if (reSpecials[c]) { re += "\\"; } re += c; escaping = false; continue; } switch (c) { /* istanbul ignore next */ case "/": { return false; } case "\\": if (inClass && pattern.charAt(i + 1) === "-") { re += c; continue; } clearStateChar(); escaping = true; continue; // the various stateChar values // for the "extglob" stuff. case "?": case "*": case "+": case "@": case "!": this.debug("%s %s %s %j <-- stateChar", pattern, i, re, c); if (inClass) { this.debug(" in class"); if (c === "!" && i === classStart + 1) c = "^"; re += c; continue; } if (c === "*" && stateChar === "*") continue; this.debug("call clearStateChar %j", stateChar); clearStateChar(); stateChar = c; if (options.noext) clearStateChar(); continue; case "(": { if (inClass) { re += "("; continue; } if (!stateChar) { re += "\\("; continue; } const plEntry = { type: stateChar, start: i - 1, reStart: re.length, open: plTypes[stateChar].open, close: plTypes[stateChar].close }; this.debug(this.pattern, " ", plEntry); patternListStack.push(plEntry); re += plEntry.open; if (plEntry.start === 0 && plEntry.type !== "!") { dotTravAllowed = true; re += subPatternStart(pattern.slice(i + 1)); } this.debug("plType %j %j", stateChar, re); stateChar = false; continue; } case ")": { const plEntry = patternListStack[patternListStack.length - 1]; if (inClass || !plEntry) { re += "\\)"; continue; } patternListStack.pop(); clearStateChar(); hasMagic = true; pl = plEntry; re += pl.close; if (pl.type === "!") { negativeLists.push(Object.assign(pl, { reEnd: re.length })); } continue; } case "|": { const plEntry = patternListStack[patternListStack.length - 1]; if (inClass || !plEntry) { re += "\\|"; continue; } clearStateChar(); re += "|"; if (plEntry.start === 0 && plEntry.type !== "!") { dotTravAllowed = true; re += subPatternStart(pattern.slice(i + 1)); } continue; } // these are mostly the same in regexp and glob case "[": clearStateChar(); if (inClass) { re += "\\" + c; continue; } inClass = true; classStart = i; reClassStart = re.length; re += c; continue; case "]": if (i === classStart + 1 || !inClass) { re += "\\" + c; continue; } cs = pattern.substring(classStart + 1, i); try { RegExp("[" + braExpEscape(charUnescape(cs)) + "]"); re += c; } catch (er) { re = re.substring(0, reClassStart) + "(?:$.)"; } hasMagic = true; inClass = false; continue; default: clearStateChar(); if (reSpecials[c] && !(c === "^" && inClass)) { re += "\\"; } re += c; break; } } if (inClass) { cs = pattern.slice(classStart + 1); sp = this.parse(cs, SUBPARSE); re = re.substring(0, reClassStart) + "\\[" + sp[0]; hasMagic = hasMagic || sp[1]; } for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) { let tail; tail = re.slice(pl.reStart + pl.open.length); this.debug("setting tail", re, pl); tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, (_2, $1, $2) => { if (!$2) { $2 = "\\"; } return $1 + $1 + $2 + "|"; }); this.debug("tail=%j\n %s", tail, tail, pl, re); const t = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type; hasMagic = true; re = re.slice(0, pl.reStart) + t + "\\(" + tail; } clearStateChar(); if (escaping) { re += "\\\\"; } const addPatternStart = addPatternStartSet[re.charAt(0)]; for (let n = negativeLists.length - 1; n > -1; n--) { const nl = negativeLists[n]; const nlBefore = re.slice(0, nl.reStart); const nlFirst = re.slice(nl.reStart, nl.reEnd - 8); let nlAfter = re.slice(nl.reEnd); const nlLast = re.slice(nl.reEnd - 8, nl.reEnd) + nlAfter; const closeParensBefore = nlBefore.split(")").length; const openParensBefore = nlBefore.split("(").length - closeParensBefore; let cleanAfter = nlAfter; for (let i = 0; i < openParensBefore; i++) { cleanAfter = cleanAfter.replace(/\)[+*?]?/, ""); } nlAfter = cleanAfter; const dollar = nlAfter === "" && isSub !== SUBPARSE ? "(?:$|\\/)" : ""; re = nlBefore + nlFirst + nlAfter + dollar + nlLast; } if (re !== "" && hasMagic) { re = "(?=.)" + re; } if (addPatternStart) { re = patternStart() + re; } if (isSub === SUBPARSE) { return [re, hasMagic]; } if (options.nocase && !hasMagic) { hasMagic = pattern.toUpperCase() !== pattern.toLowerCase(); } if (!hasMagic) { return globUnescape(pattern); } const flags = options.nocase ? "i" : ""; try { return Object.assign(new RegExp("^" + re + "$", flags), { _glob: pattern, _src: re }); } catch (er) { return new RegExp("$."); } } makeRe() { if (this.regexp || this.regexp === false) return this.regexp; const set = this.set; if (!set.length) { this.regexp = false; return this.regexp; } const options = this.options; const twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot; const flags = options.nocase ? "i" : ""; let re = set.map((pattern) => { pattern = pattern.map( (p) => typeof p === "string" ? regExpEscape(p) : p === GLOBSTAR ? GLOBSTAR : p._src ).reduce((set2, p) => { if (!(set2[set2.length - 1] === GLOBSTAR && p === GLOBSTAR)) { set2.push(p); } return set2; }, []); pattern.forEach((p, i) => { if (p !== GLOBSTAR || pattern[i - 1] === GLOBSTAR) { return; } if (i === 0) { if (pattern.length > 1) { pattern[i + 1] = "(?:\\/|" + twoStar + "\\/)?" + pattern[i + 1]; } else { pattern[i] = twoStar; } } else if (i === pattern.length - 1) { pattern[i - 1] += "(?:\\/|" + twoStar + ")?"; } else { pattern[i - 1] += "(?:\\/|\\/" + twoStar + "\\/)" + pattern[i + 1]; pattern[i + 1] = GLOBSTAR; } }); return pattern.filter((p) => p !== GLOBSTAR).join("/"); }).join("|"); re = "^(?:" + re + ")$"; if (this.negate) re = "^(?!" + re + ").*$"; try { this.regexp = new RegExp(re, flags); } catch (ex) { this.regexp = false; } return this.regexp; } match(f, partial = this.partial) { this.debug("match", f, this.pattern); if (this.comment) return false; if (this.empty) return f === ""; if (f === "/" && partial) return true; const options = this.options; if (path.sep !== "/") { f = f.split(path.sep).join("/"); } f = f.split(slashSplit); this.debug(this.pattern, "split", f); const set = this.set; this.debug(this.pattern, "set", set); let filename; for (let i = f.length - 1; i >= 0; i--) { filename = f[i]; if (filename) break; } for (let i = 0; i < set.length; i++) { const pattern = set[i]; let file2 = f; if (options.matchBase && pattern.length === 1) { file2 = [filename]; } const hit = this.matchOne(file2, pattern, partial); if (hit) { if (options.flipNegate) return true; return !this.negate; } } if (options.flipNegate) return false; return this.negate; } static defaults(def) { return minimatch.defaults(def).Minimatch; } }; minimatch.Minimatch = Minimatch; } }); // ../../node_modules/.pnpm/readdir-glob@1.1.3/node_modules/readdir-glob/index.js var require_readdir_glob = __commonJS({ "../../node_modules/.pnpm/readdir-glob@1.1.3/node_modules/readdir-glob/index.js"(exports2, module2) { module2.exports = readdirGlob; var fs = require("fs"); var { EventEmitter } = require("events"); var { Minimatch } = require_minimatch(); var { resolve } = require("path"); function readdir(dir, strict) { return new Promise((resolve2, reject) => { fs.readdir(dir, { withFileTypes: true }, (err, files) => { if (err) { switch (err.code) { case "ENOTDIR": if (strict) { reject(err); } else { resolve2([]); } break; case "ENOTSUP": // Operation not supported case "ENOENT": // No such file or directory case "ENAMETOOLONG": // Filename too long case "UNKNOWN": resolve2([]); break; case "ELOOP": // Too many levels of symbolic links default: reject(err); break; } } else { resolve2(files); } }); }); } __name(readdir, "readdir"); function stat(file2, followSymlinks) { return new Promise((resolve2, reject) => { const statFunc = followSymlinks ? fs.stat : fs.lstat; statFunc(file2, (err, stats) => { if (err) { switch (err.code) { case "ENOENT": if (followSymlinks) { resolve2(stat(file2, false)); } else { resolve2(null); } break; default: resolve2(null); break; } } else { resolve2(stats); } }); }); } __name(stat, "stat"); async function* exploreWalkAsync(dir, path, followSymlinks, useStat, shouldSkip, strict) { let files = await readdir(path + dir, strict); for (const file2 of files) { let name = file2.name; if (name === void 0) { name = file2; useStat = true; } const filename = dir + "/" + name; const relative = filename.slice(1); const absolute = path + "/" + relative; let stats = null; if (useStat || followSymlinks) { stats = await stat(absolute, followSymlinks); } if (!stats && file2.name !== void 0) { stats = file2; } if (stats === null) { stats = { isDirectory: /* @__PURE__ */ __name(() => false, "isDirectory") }; } if (stats.isDirectory()) { if (!shouldSkip(relative)) { yield { relative, absolute, stats }; yield* exploreWalkAsync(filename, path, followSymlinks, useStat, shouldSkip, false); } } else { yield { relative, absolute, stats }; } } } __name(exploreWalkAsync, "exploreWalkAsync"); async function* explore(path, followSymlinks, useStat, shouldSkip) { yield* exploreWalkAsync("", path, followSymlinks, useStat, shouldSkip, true); } __name(explore, "explore"); function readOptions(options) { return { pattern: options.pattern, dot: !!options.dot, noglobstar: !!options.noglobstar, matchBase: !!options.matchBase, nocase: !!options.nocase, ignore: options.ignore, skip: options.skip, follow: !!options.follow, stat: !!options.stat, nodir: !!options.nodir, mark: !!options.mark, silent: !!options.silent, absolute: !!options.absolute }; } __name(readOptions, "readOptions"); var ReaddirGlob = class extends EventEmitter { static { __name(this, "ReaddirGlob"); } constructor(cwd, options, cb) { super(); if (typeof options === "function") { cb = options; options = null; } this.options = readOptions(options || {}); this.matchers = []; if (this.options.pattern) { const matchers = Array.isArray(this.options.pattern) ? this.options.pattern : [this.options.pattern]; this.matchers = matchers.map( (m) => new Minimatch(m, { dot: this.options.dot, noglobstar: this.options.noglobstar, matchBase: this.options.matchBase, nocase: this.options.nocase }) ); } this.ignoreMatchers = []; if (this.options.ignore) { const ignorePatterns = Array.isArray(this.options.ignore) ? this.options.ignore : [this.options.ignore]; this.ignoreMatchers = ignorePatterns.map( (ignore) => new Minimatch(ignore, { dot: true }) ); } this.skipMatchers = []; if (this.options.skip) { const skipPatterns = Array.isArray(this.options.skip) ? this.options.skip : [this.options.skip]; this.skipMatchers = skipPatterns.map( (skip) => new Minimatch(skip, { dot: true }) ); } this.iterator = explore(resolve(cwd || "."), this.options.follow, this.options.stat, this._shouldSkipDirectory.bind(this)); this.paused = false; this.inactive = false; this.aborted = false; if (cb) { this._matches = []; this.on("match", (match) => this._matches.push(this.options.absolute ? match.absolute : match.relative)); this.on("error", (err) => cb(err)); this.on("end", () => cb(null, this._matches)); } setTimeout(() => this._next(), 0); } _shouldSkipDirectory(relative) { return this.skipMatchers.some((m) => m.match(relative)); } _fileMatches(relative, isDirectory) { const file2 = relative + (isDirectory ? "/" : ""); return (this.matchers.length === 0 || this.matchers.some((m) => m.match(file2))) && !this.ignoreMatchers.some((m) => m.match(file2)) && (!this.options.nodir || !isDirectory); } _next() { if (!this.paused && !this.aborted) { this.iterator.next().then((obj2) => { if (!obj2.done) { const isDirectory = obj2.value.stats.isDirectory(); if (this._fileMatches(obj2.value.relative, isDirectory)) { let relative = obj2.value.relative; let absolute = obj2.value.absolute; if (this.options.mark && isDirectory) { relative += "/"; absolute += "/"; } if (this.options.stat) { this.emit("match", { relative, absolute, stat: obj2.value.stats }); } else { this.emit("match", { relative, absolute }); } } this._next(this.iterator); } else { this.emit("end"); } }).catch((err) => { this.abort(); this.emit("error", err); if (!err.code && !this.options.silent) { console.error(err); } }); } else { this.inactive = true; } } abort() { this.aborted = true; } pause() { this.paused = true; } resume() { this.paused = false; if (this.inactive) { this.inactive = false; this._next(); } } }; function readdirGlob(pattern, options, cb) { return new ReaddirGlob(pattern, options, cb); } __name(readdirGlob, "readdirGlob"); readdirGlob.ReaddirGlob = ReaddirGlob; } }); // ../../node_modules/.pnpm/async@3.2.6/node_modules/async/dist/async.js var require_async2 = __commonJS({ "../../node_modules/.pnpm/async@3.2.6/node_modules/async/dist/async.js"(exports2, module2) { (function(global2, factory) { typeof exports2 === "object" && typeof module2 !== "undefined" ? factory(exports2) : typeof define === "function" && define.amd ? define(["exports"], factory) : (global2 = typeof globalThis !== "undefined" ? globalThis : global2 || self, factory(global2.async = {})); })(exports2, (function(exports3) { "use strict"; function apply(fn, ...args) { return (...callArgs) => fn(...args, ...callArgs); } __name(apply, "apply"); function initialParams(fn) { return function(...args) { var callback = args.pop(); return fn.call(this, args, callback); }; } __name(initialParams, "initialParams"); var hasQueueMicrotask = typeof queueMicrotask === "function" && queueMicrotask; var hasSetImmediate = typeof setImmediate === "function" && setImmediate; var hasNextTick = typeof process === "object" && typeof process.nextTick === "function"; function fallback(fn) { setTimeout(fn, 0); } __name(fallback, "fallback"); function wrap(defer) { return (fn, ...args) => defer(() => fn(...args)); } __name(wrap, "wrap"); var _defer$1; if (hasQueueMicrotask) { _defer$1 = queueMicrotask; } else if (hasSetImmediate) { _defer$1 = setImmediate; } else if (hasNextTick) { _defer$1 = process.nextTick; } else { _defer$1 = fallback; } var setImmediate$1 = wrap(_defer$1); function asyncify(func) { if (isAsync(func)) { return function(...args) { const callback = args.pop(); const promise = func.apply(this, args); return handlePromise(promise, callback); }; } return initialParams(function(args, callback) { var result; try { result = func.apply(this, args); } catch (e) { return callback(e); } if (result && typeof result.then === "function") { return handlePromise(result, callback); } else { callback(null, result); } }); } __name(asyncify, "asyncify"); function handlePromise(promise, callback) { return promise.then((value) => { invokeCallback(callback, null, value); }, (err) => { invokeCallback(callback, err && (err instanceof Error || err.message) ? err : new Error(err)); }); } __name(handlePromise, "handlePromise"); function invokeCallback(callback, error, value) { try { callback(error, value); } catch (err) { setImmediate$1((e) => { throw e; }, err); } } __name(invokeCallback, "invokeCallback"); function isAsync(fn) { return fn[Symbol.toStringTag] === "AsyncFunction"; } __name(isAsync, "isAsync"); function isAsyncGenerator(fn) { return fn[Symbol.toStringTag] === "AsyncGenerator"; } __name(isAsyncGenerator, "isAsyncGenerator"); function isAsyncIterable(obj2) { return typeof obj2[Symbol.asyncIterator] === "function"; } __name(isAsyncIterable, "isAsyncIterable"); function wrapAsync(asyncFn) { if (typeof asyncFn !== "function") throw new Error("expected a function"); return isAsync(asyncFn) ? asyncify(asyncFn) : asyncFn; } __name(wrapAsync, "wrapAsync"); function awaitify(asyncFn, arity) { if (!arity) arity = asyncFn.length; if (!arity) throw new Error("arity is undefined"); function awaitable(...args) { if (typeof args[arity - 1] === "function") { return asyncFn.apply(this, args); } return new Promise((resolve, reject2) => { args[arity - 1] = (err, ...cbArgs) => { if (err) return reject2(err); resolve(cbArgs.length > 1 ? cbArgs : cbArgs[0]); }; asyncFn.apply(this, args); }); } __name(awaitable, "awaitable"); return awaitable; } __name(awaitify, "awaitify"); function applyEach$1(eachfn) { return /* @__PURE__ */ __name(function applyEach2(fns, ...callArgs) { const go = awaitify(function(callback) { var that = this; return eachfn(fns, (fn, cb) => { wrapAsync(fn).apply(that, callArgs.concat(cb)); }, callback); }); return go; }, "applyEach"); } __name(applyEach$1, "applyEach$1"); function _asyncMap(eachfn, arr, iteratee, callback) { arr = arr || []; var results = []; var counter = 0; var _iteratee = wrapAsync(iteratee); return eachfn(arr, (value, _2, iterCb) => { var index2 = counter++; _iteratee(value, (err, v) => { results[index2] = v; iterCb(err); }); }, (err) => { callback(err, results); }); } __name(_asyncMap, "_asyncMap"); function isArrayLike(value) { return value && typeof value.length === "number" && value.length >= 0 && value.length % 1 === 0; } __name(isArrayLike, "isArrayLike"); const breakLoop = {}; function once(fn) { function wrapper(...args) { if (fn === null) return; var callFn = fn; fn = null; callFn.apply(this, args); } __name(wrapper, "wrapper"); Object.assign(wrapper, fn); return wrapper; } __name(once, "once"); function getIterator(coll) { return coll[Symbol.iterator] && coll[Symbol.iterator](); } __name(getIterator, "getIterator"); function createArrayIterator(coll) { var i = -1; var len = coll.length; return /* @__PURE__ */ __name(function next() { return ++i < len ? { value: coll[i], key: i } : null; }, "next"); } __name(createArrayIterator, "createArrayIterator"); function createES2015Iterator(iterator) { var i = -1; return /* @__PURE__ */ __name(function next() { var item = iterator.next(); if (item.done) return null; i++; return { value: item.value, key: i }; }, "next"); } __name(createES2015Iterator, "createES2015Iterator"); function createObjectIterator(obj2) { var okeys = obj2 ? Object.keys(obj2) : []; var i = -1; var len = okeys.length; return /* @__PURE__ */ __name(function next() { var key = okeys[++i]; if (key === "__proto__") { return next(); } return i < len ? { value: obj2[key], key } : null; }, "next"); } __name(createObjectIterator, "createObjectIterator"); function createIterator(coll) { if (isArrayLike(coll)) { return createArrayIterator(coll); } var iterator = getIterator(coll); return iterator ? createES2015Iterator(iterator) : createObjectIterator(coll); } __name(createIterator, "createIterator"); function onlyOnce(fn) { return function(...args) { if (fn === null) throw new Error("Callback was already called."); var callFn = fn; fn = null; callFn.apply(this, args); }; } __name(onlyOnce, "onlyOnce"); function asyncEachOfLimit(generator, limit, iteratee, callback) { let done = false; let canceled = false; let awaiting = false; let running = 0; let idx = 0; function replenish() { if (running >= limit || awaiting || done) return; awaiting = true; generator.next().then(({ value, done: iterDone }) => { if (canceled || done) return; awaiting = false; if (iterDone) { done = true; if (running <= 0) { callback(null); } return; } running++; iteratee(value, idx, iterateeCallback); idx++; replenish(); }).catch(handleError); } __name(replenish, "replenish"); function iterateeCallback(err, result) { running -= 1; if (canceled) return; if (err) return handleError(err); if (err === false) { done = true; canceled = true; return; } if (result === breakLoop || done && running <= 0) { done = true; return callback(null); } replenish(); } __name(iterateeCallback, "iterateeCallback"); function handleError(err) { if (canceled) return; awaiting = false; done = true; callback(err); } __name(handleError, "handleError"); replenish(); } __name(asyncEachOfLimit, "asyncEachOfLimit"); var eachOfLimit$2 = /* @__PURE__ */ __name((limit) => { return (obj2, iteratee, callback) => { callback = once(callback); if (limit <= 0) { throw new RangeError("concurrency limit cannot be less than 1"); } if (!obj2) { return callback(null); } if (isAsyncGenerator(obj2)) { return asyncEachOfLimit(obj2, limit, iteratee, callback); } if (isAsyncIterable(obj2)) { return asyncEachOfLimit(obj2[Symbol.asyncIterator](), limit, iteratee, callback); } var nextElem = createIterator(obj2); var done = false; var canceled = false; var running = 0; var looping = false; function iterateeCallback(err, value) { if (canceled) return; running -= 1; if (err) { done = true; callback(err); } else if (err === false) { done = true; canceled = true; } else if (value === breakLoop || done && running <= 0) { done = true; return callback(null); } else if (!looping) { replenish(); } } __name(iterateeCallback, "iterateeCallback"); function replenish() { looping = true; while (running < limit && !done) { var elem = nextElem(); if (elem === null) { done = true; if (running <= 0) { callback(null); } return; } running += 1; iteratee(elem.value, elem.key, onlyOnce(iterateeCallback)); } looping = false; } __name(replenish, "replenish"); replenish(); }; }, "eachOfLimit$2"); function eachOfLimit(coll, limit, iteratee, callback) { return eachOfLimit$2(limit)(coll, wrapAsync(iteratee), callback); } __name(eachOfLimit, "eachOfLimit"); var eachOfLimit$1 = awaitify(eachOfLimit, 4); function eachOfArrayLike(coll, iteratee, callback) { callback = once(callback); var index2 = 0, completed = 0, { length } = coll, canceled = false; if (length === 0) { callback(null); } function iteratorCallback(err, value) { if (err === false) { canceled = true; } if (canceled === true) return; if (err) { callback(err); } else if (++completed === length || value === breakLoop) { callback(null); } } __name(iteratorCallback, "iteratorCallback"); for (; index2 < length; index2++) { iteratee(coll[index2], index2, onlyOnce(iteratorCallback)); } } __name(eachOfArrayLike, "eachOfArrayLike"); function eachOfGeneric(coll, iteratee, callback) { return eachOfLimit$1(coll, Infinity, iteratee, callback); } __name(eachOfGeneric, "eachOfGeneric"); function eachOf(coll, iteratee, callback) { var eachOfImplementation = isArrayLike(coll) ? eachOfArrayLike : eachOfGeneric; return eachOfImplementation(coll, wrapAsync(iteratee), callback); } __name(eachOf, "eachOf"); var eachOf$1 = awaitify(eachOf, 3); function map(coll, iteratee, callback) { return _asyncMap(eachOf$1, coll, iteratee, callback); } __name(map, "map"); var map$1 = awaitify(map, 3); var applyEach = applyEach$1(map$1); function eachOfSeries(coll, iteratee, callback) { return eachOfLimit$1(coll, 1, iteratee, callback); } __name(eachOfSeries, "eachOfSeries"); var eachOfSeries$1 = awaitify(eachOfSeries, 3); function mapSeries(coll, iteratee, callback) { return _asyncMap(eachOfSeries$1, coll, iteratee, callback); } __name(mapSeries, "mapSeries"); var mapSeries$1 = awaitify(mapSeries, 3); var applyEachSeries = applyEach$1(mapSeries$1); const PROMISE_SYMBOL = Symbol("promiseCallback"); function promiseCallback() { let resolve, reject2; function callback(err, ...args) { if (err) return reject2(err); resolve(args.length > 1 ? args : args[0]); } __name(callback, "callback"); callback[PROMISE_SYMBOL] = new Promise((res, rej) => { resolve = res, reject2 = rej; }); return callback; } __name(promiseCallback, "promiseCallback"); function auto(tasks, concurrency, callback) { if (typeof concurrency !== "number") { callback = concurrency; concurrency = null; } callback = once(callback || promiseCallback()); var numTasks = Object.keys(tasks).length; if (!numTasks) { return callback(null); } if (!concurrency) { concurrency = numTasks; } var results = {}; var runningTasks = 0; var canceled = false; var hasError = false; var listeners = /* @__PURE__ */ Object.create(null); var readyTasks = []; var readyToCheck = []; var uncheckedDependencies = {}; Object.keys(tasks).forEach((key) => { var task = tasks[key]; if (!Array.isArray(task)) { enqueueTask(key, [task]); readyToCheck.push(key); return; } var dependencies = task.slice(0, task.length - 1); var remainingDependencies = dependencies.length; if (remainingDependencies === 0) { enqueueTask(key, task); readyToCheck.push(key); return; } uncheckedDependencies[key] = remainingDependencies; dependencies.forEach((dependencyName) => { if (!tasks[dependencyName]) { throw new Error("async.auto task `" + key + "` has a non-existent dependency `" + dependencyName + "` in " + dependencies.join(", ")); } addListener(dependencyName, () => { remainingDependencies--; if (remainingDependencies === 0) { enqueueTask(key, task); } }); }); }); checkForDeadlocks(); processQueue(); function enqueueTask(key, task) { readyTasks.push(() => runTask(key, task)); } __name(enqueueTask, "enqueueTask"); function processQueue() { if (canceled) return; if (readyTasks.length === 0 && runningTasks === 0) { return callback(null, results); } while (readyTasks.length && runningTasks < concurrency) { var run = readyTasks.shift(); run(); } } __name(processQueue, "processQueue"); function addListener(taskName, fn) { var taskListeners = listeners[taskName]; if (!taskListeners) { taskListeners = listeners[taskName] = []; } taskListeners.push(fn); } __name(addListener, "addListener"); function taskComplete(taskName) { var taskListeners = listeners[taskName] || []; taskListeners.forEach((fn) => fn()); processQueue(); } __name(taskComplete, "taskComplete"); function runTask(key, task) { if (hasError) return; var taskCallback = onlyOnce((err, ...result) => { runningTasks--; if (err === false) { canceled = true; return; } if (result.length < 2) { [result] = result; } if (err) { var safeResults = {}; Object.keys(results).forEach((rkey) => { safeResults[rkey] = results[rkey]; }); safeResults[key] = result; hasError = true; listeners = /* @__PURE__ */ Object.create(null); if (canceled) return; callback(err, safeResults); } else { results[key] = result; taskComplete(key); } }); runningTasks++; var taskFn = wrapAsync(task[task.length - 1]); if (task.length > 1) { taskFn(results, taskCallback); } else { taskFn(taskCallback); } } __name(runTask, "runTask"); function checkForDeadlocks() { var currentTask; var counter = 0; while (readyToCheck.length) { currentTask = readyToCheck.pop(); counter++; getDependents(currentTask).forEach((dependent) => { if (--uncheckedDependencies[dependent] === 0) { readyToCheck.push(dependent); } }); } if (counter !== numTasks) { throw new Error( "async.auto cannot execute tasks due to a recursive dependency" ); } } __name(checkForDeadlocks, "checkForDeadlocks"); function getDependents(taskName) { var result = []; Object.keys(tasks).forEach((key) => { const task = tasks[key]; if (Array.isArray(task) && task.indexOf(taskName) >= 0) { result.push(key); } }); return result; } __name(getDependents, "getDependents"); return callback[PROMISE_SYMBOL]; } __name(auto, "auto"); var FN_ARGS = /^(?:async\s)?(?:function)?\s*(?:\w+\s*)?\(([^)]+)\)(?:\s*{)/; var ARROW_FN_ARGS = /^(?:async\s)?\s*(?:\(\s*)?((?:[^)=\s]\s*)*)(?:\)\s*)?=>/; var FN_ARG_SPLIT = /,/; var FN_ARG = /(=.+)?(\s*)$/; function stripComments(string) { let stripped = ""; let index2 = 0; let endBlockComment = string.indexOf("*/"); while (index2 < string.length) { if (string[index2] === "/" && string[index2 + 1] === "/") { let endIndex = string.indexOf("\n", index2); index2 = endIndex === -1 ? string.length : endIndex; } else if (endBlockComment !== -1 && string[index2] === "/" && string[index2 + 1] === "*") { let endIndex = string.indexOf("*/", index2); if (endIndex !== -1) { index2 = endIndex + 2; endBlockComment = string.indexOf("*/", index2); } else { stripped += string[index2]; index2++; } } else { stripped += string[index2]; index2++; } } return stripped; } __name(stripComments, "stripComments"); function parseParams(func) { const src = stripComments(func.toString()); let match = src.match(FN_ARGS); if (!match) { match = src.match(ARROW_FN_ARGS); } if (!match) throw new Error("could not parse args in autoInject\nSource:\n" + src); let [, args] = match; return args.replace(/\s/g, "").split(FN_ARG_SPLIT).map((arg) => arg.replace(FN_ARG, "").trim()); } __name(parseParams, "parseParams"); function autoInject(tasks, callback) { var newTasks = {}; Object.keys(tasks).forEach((key) => { var taskFn = tasks[key]; var params; var fnIsAsync = isAsync(taskFn); var hasNoDeps = !fnIsAsync && taskFn.length === 1 || fnIsAsync && taskFn.length === 0; if (Array.isArray(taskFn)) { params = [...taskFn]; taskFn = params.pop(); newTasks[key] = params.concat(params.length > 0 ? newTask : taskFn); } else if (hasNoDeps) { newTasks[key] = taskFn; } else { params = parseParams(taskFn); if (taskFn.length === 0 && !fnIsAsync && params.length === 0) { throw new Error("autoInject task functions require explicit parameters."); } if (!fnIsAsync) params.pop(); newTasks[key] = params.concat(newTask); } function newTask(results, taskCb) { var newArgs = params.map((name) => results[name]); newArgs.push(taskCb); wrapAsync(taskFn)(...newArgs); } __name(newTask, "newTask"); }); return auto(newTasks, callback); } __name(autoInject, "autoInject"); class DLL { static { __name(this, "DLL"); } constructor() { this.head = this.tail = null; this.length = 0; } removeLink(node) { if (node.prev) node.prev.next = node.next; else this.head = node.next; if (node.next) node.next.prev = node.prev; else this.tail = node.prev; node.prev = node.next = null; this.length -= 1; return node; } empty() { while (this.head) this.shift(); return this; } insertAfter(node, newNode) { newNode.prev = node; newNode.next = node.next; if (node.next) node.next.prev = newNode; else this.tail = newNode; node.next = newNode; this.length += 1; } insertBefore(node, newNode) { newNode.prev = node.prev; newNode.next = node; if (node.prev) node.prev.next = newNode; else this.head = newNode; node.prev = newNode; this.length += 1; } unshift(node) { if (this.head) this.insertBefore(this.head, node); else setInitial(this, node); } push(node) { if (this.tail) this.insertAfter(this.tail, node); else setInitial(this, node); } shift() { return this.head && this.removeLink(this.head); } pop() { return this.tail && this.removeLink(this.tail); } toArray() { return [...this]; } *[Symbol.iterator]() { var cur = this.head; while (cur) { yield cur.data; cur = cur.next; } } remove(testFn) { var curr = this.head; while (curr) { var { next } = curr; if (testFn(curr)) { this.removeLink(curr); } curr = next; } return this; } } function setInitial(dll, node) { dll.length = 1; dll.head = dll.tail = node; } __name(setInitial, "setInitial"); function queue$1(worker, concurrency, payload) { if (concurrency == null) { concurrency = 1; } else if (concurrency === 0) { throw new RangeError("Concurrency must not be zero"); } var _worker = wrapAsync(worker); var numRunning = 0; var workersList = []; const events = { error: [], drain: [], saturated: [], unsaturated: [], empty: [] }; function on(event, handler) { events[event].push(handler); } __name(on, "on"); function once2(event, handler) { const handleAndRemove = /* @__PURE__ */ __name((...args) => { off(event, handleAndRemove); handler(...args); }, "handleAndRemove"); events[event].push(handleAndRemove); } __name(once2, "once"); function off(event, handler) { if (!event) return Object.keys(events).forEach((ev) => events[ev] = []); if (!handler) return events[event] = []; events[event] = events[event].filter((ev) => ev !== handler); } __name(off, "off"); function trigger(event, ...args) { events[event].forEach((handler) => handler(...args)); } __name(trigger, "trigger"); var processingScheduled = false; function _insert(data, insertAtFront, rejectOnError, callback) { if (callback != null && typeof callback !== "function") { throw new Error("task callback must be a function"); } q.started = true; var res, rej; function promiseCallback2(err, ...args) { if (err) return rejectOnError ? rej(err) : res(); if (args.length <= 1) return res(args[0]); res(args); } __name(promiseCallback2, "promiseCallback"); var item = q._createTaskItem( data, rejectOnError ? promiseCallback2 : callback || promiseCallback2 ); if (insertAtFront) { q._tasks.unshift(item); } else { q._tasks.push(item); } if (!processingScheduled) { processingScheduled = true; setImmediate$1(() => { processingScheduled = false; q.process(); }); } if (rejectOnError || !callback) { return new Promise((resolve, reject2) => { res = resolve; rej = reject2; }); } } __name(_insert, "_insert"); function _createCB(tasks) { return function(err, ...args) { numRunning -= 1; for (var i = 0, l2 = tasks.length; i < l2; i++) { var task = tasks[i]; var index2 = workersList.indexOf(task); if (index2 === 0) { workersList.shift(); } else if (index2 > 0) { workersList.splice(index2, 1); } task.callback(err, ...args); if (err != null) { trigger("error", err, task.data); } } if (numRunning <= q.concurrency - q.buffer) { trigger("unsaturated"); } if (q.idle()) { trigger("drain"); } q.process(); }; } __name(_createCB, "_createCB"); function _maybeDrain(data) { if (data.length === 0 && q.idle()) { setImmediate$1(() => trigger("drain")); return true; } return false; } __name(_maybeDrain, "_maybeDrain"); const eventMethod = /* @__PURE__ */ __name((name) => (handler) => { if (!handler) { return new Promise((resolve, reject2) => { once2(name, (err, data) => { if (err) return reject2(err); resolve(data); }); }); } off(name); on(name, handler); }, "eventMethod"); var isProcessing = false; var q = { _tasks: new DLL(), _createTaskItem(data, callback) { return { data, callback }; }, *[Symbol.iterator]() { yield* q._tasks[Symbol.iterator](); }, concurrency, payload, buffer: concurrency / 4, started: false, paused: false, push(data, callback) { if (Array.isArray(data)) { if (_maybeDrain(data)) return; return data.map((datum) => _insert(datum, false, false, callback)); } return _insert(data, false, false, callback); }, pushAsync(data, callback) { if (Array.isArray(data)) { if (_maybeDrain(data)) return; return data.map((datum) => _insert(datum, false, true, callback)); } return _insert(data, false, true, callback); }, kill() { off(); q._tasks.empty(); }, unshift(data, callback) { if (Array.isArray(data)) { if (_maybeDrain(data)) return; return data.map((datum) => _insert(datum, true, false, callback)); } return _insert(data, true, false, callback); }, unshiftAsync(data, callback) { if (Array.isArray(data)) { if (_maybeDrain(data)) return; return data.map((datum) => _insert(datum, true, true, callback)); } return _insert(data, true, true, callback); }, remove(testFn) { q._tasks.remove(testFn); }, process() { if (isProcessing) { return; } isProcessing = true; while (!q.paused && numRunning < q.concurrency && q._tasks.length) { var tasks = [], data = []; var l2 = q._tasks.length; if (q.payload) l2 = Math.min(l2, q.payload); for (var i = 0; i < l2; i++) { var node = q._tasks.shift(); tasks.push(node); workersList.push(node); data.push(node.data); } numRunning += 1; if (q._tasks.length === 0) { trigger("empty"); } if (numRunning === q.concurrency) { trigger("saturated"); } var cb = onlyOnce(_createCB(tasks)); _worker(data, cb); } isProcessing = false; }, length() { return q._tasks.length; }, running() { return numRunning; }, workersList() { return workersList; }, idle() { return q._tasks.length + numRunning === 0; }, pause() { q.paused = true; }, resume() { if (q.paused === false) { return; } q.paused = false; setImmediate$1(q.process); } }; Object.defineProperties(q, { saturated: { writable: false, value: eventMethod("saturated") }, unsaturated: { writable: false, value: eventMethod("unsaturated") }, empty: { writable: false, value: eventMethod("empty") }, drain: { writable: false, value: eventMethod("drain") }, error: { writable: false, value: eventMethod("error") } }); return q; } __name(queue$1, "queue$1"); function cargo$1(worker, payload) { return queue$1(worker, 1, payload); } __name(cargo$1, "cargo$1"); function cargo(worker, concurrency, payload) { return queue$1(worker, concurrency, payload); } __name(cargo, "cargo"); function reduce(coll, memo, iteratee, callback) { callback = once(callback); var _iteratee = wrapAsync(iteratee); return eachOfSeries$1(coll, (x, i, iterCb) => { _iteratee(memo, x, (err, v) => { memo = v; iterCb(err); }); }, (err) => callback(err, memo)); } __name(reduce, "reduce"); var reduce$1 = awaitify(reduce, 4); function seq(...functions) { var _functions = functions.map(wrapAsync); return function(...args) { var that = this; var cb = args[args.length - 1]; if (typeof cb == "function") { args.pop(); } else { cb = promiseCallback(); } reduce$1( _functions, args, (newargs, fn, iterCb) => { fn.apply(that, newargs.concat((err, ...nextargs) => { iterCb(err, nextargs); })); }, (err, results) => cb(err, ...results) ); return cb[PROMISE_SYMBOL]; }; } __name(seq, "seq"); function compose(...args) { return seq(...args.reverse()); } __name(compose, "compose"); function mapLimit(coll, limit, iteratee, callback) { return _asyncMap(eachOfLimit$2(limit), coll, iteratee, callback); } __name(mapLimit, "mapLimit"); var mapLimit$1 = awaitify(mapLimit, 4); function concatLimit(coll, limit, iteratee, callback) { var _iteratee = wrapAsync(iteratee); return mapLimit$1(coll, limit, (val, iterCb) => { _iteratee(val, (err, ...args) => { if (err) return iterCb(err); return iterCb(err, args); }); }, (err, mapResults) => { var result = []; for (var i = 0; i < mapResults.length; i++) { if (mapResults[i]) { result = result.concat(...mapResults[i]); } } return callback(err, result); }); } __name(concatLimit, "concatLimit"); var concatLimit$1 = awaitify(concatLimit, 4); function concat(coll, iteratee, callback) { return concatLimit$1(coll, Infinity, iteratee, callback); } __name(concat, "concat"); var concat$1 = awaitify(concat, 3); function concatSeries(coll, iteratee, callback) { return concatLimit$1(coll, 1, iteratee, callback); } __name(concatSeries, "concatSeries"); var concatSeries$1 = awaitify(concatSeries, 3); function constant$1(...args) { return function(...ignoredArgs) { var callback = ignoredArgs.pop(); return callback(null, ...args); }; } __name(constant$1, "constant$1"); function _createTester(check, getResult) { return (eachfn, arr, _iteratee, cb) => { var testPassed = false; var testResult; const iteratee = wrapAsync(_iteratee); eachfn(arr, (value, _2, callback) => { iteratee(value, (err, result) => { if (err || err === false) return callback(err); if (check(result) && !testResult) { testPassed = true; testResult = getResult(true, value); return callback(null, breakLoop); } callback(); }); }, (err) => { if (err) return cb(err); cb(null, testPassed ? testResult : getResult(false)); }); }; } __name(_createTester, "_createTester"); function detect(coll, iteratee, callback) { return _createTester((bool) => bool, (res, item) => item)(eachOf$1, coll, iteratee, callback); } __name(detect, "detect"); var detect$1 = awaitify(detect, 3); function detectLimit(coll, limit, iteratee, callback) { return _createTester((bool) => bool, (res, item) => item)(eachOfLimit$2(limit), coll, iteratee, callback); } __name(detectLimit, "detectLimit"); var detectLimit$1 = awaitify(detectLimit, 4); function detectSeries(coll, iteratee, callback) { return _createTester((bool) => bool, (res, item) => item)(eachOfLimit$2(1), coll, iteratee, callback); } __name(detectSeries, "detectSeries"); var detectSeries$1 = awaitify(detectSeries, 3); function consoleFunc(name) { return (fn, ...args) => wrapAsync(fn)(...args, (err, ...resultArgs) => { if (typeof console === "object") { if (err) { if (console.error) { console.error(err); } } else if (console[name]) { resultArgs.forEach((x) => console[name](x)); } } }); } __name(consoleFunc, "consoleFunc"); var dir = consoleFunc("dir"); function doWhilst(iteratee, test, callback) { callback = onlyOnce(callback); var _fn = wrapAsync(iteratee); var _test = wrapAsync(test); var results; function next(err, ...args) { if (err) return callback(err); if (err === false) return; results = args; _test(...args, check); } __name(next, "next"); function check(err, truth) { if (err) return callback(err); if (err === false) return; if (!truth) return callback(null, ...results); _fn(next); } __name(check, "check"); return check(null, true); } __name(doWhilst, "doWhilst"); var doWhilst$1 = awaitify(doWhilst, 3); function doUntil(iteratee, test, callback) { const _test = wrapAsync(test); return doWhilst$1(iteratee, (...args) => { const cb = args.pop(); _test(...args, (err, truth) => cb(err, !truth)); }, callback); } __name(doUntil, "doUntil"); function _withoutIndex(iteratee) { return (value, index2, callback) => iteratee(value, callback); } __name(_withoutIndex, "_withoutIndex"); function eachLimit$2(coll, iteratee, callback) { return eachOf$1(coll, _withoutIndex(wrapAsync(iteratee)), callback); } __name(eachLimit$2, "eachLimit$2"); var each = awaitify(eachLimit$2, 3); function eachLimit(coll, limit, iteratee, callback) { return eachOfLimit$2(limit)(coll, _withoutIndex(wrapAsync(iteratee)), callback); } __name(eachLimit, "eachLimit"); var eachLimit$1 = awaitify(eachLimit, 4); function eachSeries(coll, iteratee, callback) { return eachLimit$1(coll, 1, iteratee, callback); } __name(eachSeries, "eachSeries"); var eachSeries$1 = awaitify(eachSeries, 3); function ensureAsync(fn) { if (isAsync(fn)) return fn; return function(...args) { var callback = args.pop(); var sync = true; args.push((...innerArgs) => { if (sync) { setImmediate$1(() => callback(...innerArgs)); } else { callback(...innerArgs); } }); fn.apply(this, args); sync = false; }; } __name(ensureAsync, "ensureAsync"); function every(coll, iteratee, callback) { return _createTester((bool) => !bool, (res) => !res)(eachOf$1, coll, iteratee, callback); } __name(every, "every"); var every$1 = awaitify(every, 3); function everyLimit(coll, limit, iteratee, callback) { return _createTester((bool) => !bool, (res) => !res)(eachOfLimit$2(limit), coll, iteratee, callback); } __name(everyLimit, "everyLimit"); var everyLimit$1 = awaitify(everyLimit, 4); function everySeries(coll, iteratee, callback) { return _createTester((bool) => !bool, (res) => !res)(eachOfSeries$1, coll, iteratee, callback); } __name(everySeries, "everySeries"); var everySeries$1 = awaitify(everySeries, 3); function filterArray(eachfn, arr, iteratee, callback) { var truthValues = new Array(arr.length); eachfn(arr, (x, index2, iterCb) => { iteratee(x, (err, v) => { truthValues[index2] = !!v; iterCb(err); }); }, (err) => { if (err) return callback(err); var results = []; for (var i = 0; i < arr.length; i++) { if (truthValues[i]) results.push(arr[i]); } callback(null, results); }); } __name(filterArray, "filterArray"); function filterGeneric(eachfn, coll, iteratee, callback) { var results = []; eachfn(coll, (x, index2, iterCb) => { iteratee(x, (err, v) => { if (err) return iterCb(err); if (v) { results.push({ index: index2, value: x }); } iterCb(err); }); }, (err) => { if (err) return callback(err); callback(null, results.sort((a, b) => a.index - b.index).map((v) => v.value)); }); } __name(filterGeneric, "filterGeneric"); function _filter(eachfn, coll, iteratee, callback) { var filter2 = isArrayLike(coll) ? filterArray : filterGeneric; return filter2(eachfn, coll, wrapAsync(iteratee), callback); } __name(_filter, "_filter"); function filter(coll, iteratee, callback) { return _filter(eachOf$1, coll, iteratee, callback); } __name(filter, "filter"); var filter$1 = awaitify(filter, 3); function filterLimit(coll, limit, iteratee, callback) { return _filter(eachOfLimit$2(limit), coll, iteratee, callback); } __name(filterLimit, "filterLimit"); var filterLimit$1 = awaitify(filterLimit, 4); function filterSeries(coll, iteratee, callback) { return _filter(eachOfSeries$1, coll, iteratee, callback); } __name(filterSeries, "filterSeries"); var filterSeries$1 = awaitify(filterSeries, 3); function forever(fn, errback) { var done = onlyOnce(errback); var task = wrapAsync(ensureAsync(fn)); function next(err) { if (err) return done(err); if (err === false) return; task(next); } __name(next, "next"); return next(); } __name(forever, "forever"); var forever$1 = awaitify(forever, 2); function groupByLimit(coll, limit, iteratee, callback) { var _iteratee = wrapAsync(iteratee); return mapLimit$1(coll, limit, (val, iterCb) => { _iteratee(val, (err, key) => { if (err) return iterCb(err); return iterCb(err, { key, val }); }); }, (err, mapResults) => { var result = {}; var { hasOwnProperty } = Object.prototype; for (var i = 0; i < mapResults.length; i++) { if (mapResults[i]) { var { key } = mapResults[i]; var { val } = mapResults[i]; if (hasOwnProperty.call(result, key)) { result[key].push(val); } else { result[key] = [val]; } } } return callback(err, result); }); } __name(groupByLimit, "groupByLimit"); var groupByLimit$1 = awaitify(groupByLimit, 4); function groupBy(coll, iteratee, callback) { return groupByLimit$1(coll, Infinity, iteratee, callback); } __name(groupBy, "groupBy"); function groupBySeries(coll, iteratee, callback) { return groupByLimit$1(coll, 1, iteratee, callback); } __name(groupBySeries, "groupBySeries"); var log = consoleFunc("log"); function mapValuesLimit(obj2, limit, iteratee, callback) { callback = once(callback); var newObj = {}; var _iteratee = wrapAsync(iteratee); return eachOfLimit$2(limit)(obj2, (val, key, next) => { _iteratee(val, key, (err, result) => { if (err) return next(err); newObj[key] = result; next(err); }); }, (err) => callback(err, newObj)); } __name(mapValuesLimit, "mapValuesLimit"); var mapValuesLimit$1 = awaitify(mapValuesLimit, 4); function mapValues(obj2, iteratee, callback) { return mapValuesLimit$1(obj2, Infinity, iteratee, callback); } __name(mapValues, "mapValues"); function mapValuesSeries(obj2, iteratee, callback) { return mapValuesLimit$1(obj2, 1, iteratee, callback); } __name(mapValuesSeries, "mapValuesSeries"); function memoize(fn, hasher = (v) => v) { var memo = /* @__PURE__ */ Object.create(null); var queues = /* @__PURE__ */ Object.create(null); var _fn = wrapAsync(fn); var memoized = initialParams((args, callback) => { var key = hasher(...args); if (key in memo) { setImmediate$1(() => callback(null, ...memo[key])); } else if (key in queues) { queues[key].push(callback); } else { queues[key] = [callback]; _fn(...args, (err, ...resultArgs) => { if (!err) { memo[key] = resultArgs; } var q = queues[key]; delete queues[key]; for (var i = 0, l2 = q.length; i < l2; i++) { q[i](err, ...resultArgs); } }); } }); memoized.memo = memo; memoized.unmemoized = fn; return memoized; } __name(memoize, "memoize"); var _defer; if (hasNextTick) { _defer = process.nextTick; } else if (hasSetImmediate) { _defer = setImmediate; } else { _defer = fallback; } var nextTick = wrap(_defer); var _parallel = awaitify((eachfn, tasks, callback) => { var results = isArrayLike(tasks) ? [] : {}; eachfn(tasks, (task, key, taskCb) => { wrapAsync(task)((err, ...result) => { if (result.length < 2) { [result] = result; } results[key] = result; taskCb(err); }); }, (err) => callback(err, results)); }, 3); function parallel(tasks, callback) { return _parallel(eachOf$1, tasks, callback); } __name(parallel, "parallel"); function parallelLimit(tasks, limit, callback) { return _parallel(eachOfLimit$2(limit), tasks, callback); } __name(parallelLimit, "parallelLimit"); function queue(worker, concurrency) { var _worker = wrapAsync(worker); return queue$1((items, cb) => { _worker(items[0], cb); }, concurrency, 1); } __name(queue, "queue"); class Heap { static { __name(this, "Heap"); } constructor() { this.heap = []; this.pushCount = Number.MIN_SAFE_INTEGER; } get length() { return this.heap.length; } empty() { this.heap = []; return this; } percUp(index2) { let p; while (index2 > 0 && smaller(this.heap[index2], this.heap[p = parent(index2)])) { let t = this.heap[index2]; this.heap[index2] = this.heap[p]; this.heap[p] = t; index2 = p; } } percDown(index2) { let l2; while ((l2 = leftChi(index2)) < this.heap.length) { if (l2 + 1 < this.heap.length && smaller(this.heap[l2 + 1], this.heap[l2])) { l2 = l2 + 1; } if (smaller(this.heap[index2], this.heap[l2])) { break; } let t = this.heap[index2]; this.heap[index2] = this.heap[l2]; this.heap[l2] = t; index2 = l2; } } push(node) { node.pushCount = ++this.pushCount; this.heap.push(node); this.percUp(this.heap.length - 1); } unshift(node) { return this.heap.push(node); } shift() { let [top] = this.heap; this.heap[0] = this.heap[this.heap.length - 1]; this.heap.pop(); this.percDown(0); return top; } toArray() { return [...this]; } *[Symbol.iterator]() { for (let i = 0; i < this.heap.length; i++) { yield this.heap[i].data; } } remove(testFn) { let j = 0; for (let i = 0; i < this.heap.length; i++) { if (!testFn(this.heap[i])) { this.heap[j] = this.heap[i]; j++; } } this.heap.splice(j); for (let i = parent(this.heap.length - 1); i >= 0; i--) { this.percDown(i); } return this; } } function leftChi(i) { return (i << 1) + 1; } __name(leftChi, "leftChi"); function parent(i) { return (i + 1 >> 1) - 1; } __name(parent, "parent"); function smaller(x, y) { if (x.priority !== y.priority) { return x.priority < y.priority; } else { return x.pushCount < y.pushCount; } } __name(smaller, "smaller"); function priorityQueue(worker, concurrency) { var q = queue(worker, concurrency); var { push, pushAsync } = q; q._tasks = new Heap(); q._createTaskItem = ({ data, priority }, callback) => { return { data, priority, callback }; }; function createDataItems(tasks, priority) { if (!Array.isArray(tasks)) { return { data: tasks, priority }; } return tasks.map((data) => { return { data, priority }; }); } __name(createDataItems, "createDataItems"); q.push = function(data, priority = 0, callback) { return push(createDataItems(data, priority), callback); }; q.pushAsync = function(data, priority = 0, callback) { return pushAsync(createDataItems(data, priority), callback); }; delete q.unshift; delete q.unshiftAsync; return q; } __name(priorityQueue, "priorityQueue"); function race(tasks, callback) { callback = once(callback); if (!Array.isArray(tasks)) return callback(new TypeError("First argument to race must be an array of functions")); if (!tasks.length) return callback(); for (var i = 0, l2 = tasks.length; i < l2; i++) { wrapAsync(tasks[i])(callback); } } __name(race, "race"); var race$1 = awaitify(race, 2); function reduceRight(array, memo, iteratee, callback) { var reversed = [...array].reverse(); return reduce$1(reversed, memo, iteratee, callback); } __name(reduceRight, "reduceRight"); function reflect(fn) { var _fn = wrapAsync(fn); return initialParams(/* @__PURE__ */ __name(function reflectOn(args, reflectCallback) { args.push((error, ...cbArgs) => { let retVal = {}; if (error) { retVal.error = error; } if (cbArgs.length > 0) { var value = cbArgs; if (cbArgs.length <= 1) { [value] = cbArgs; } retVal.value = value; } reflectCallback(null, retVal); }); return _fn.apply(this, args); }, "reflectOn")); } __name(reflect, "reflect"); function reflectAll(tasks) { var results; if (Array.isArray(tasks)) { results = tasks.map(reflect); } else { results = {}; Object.keys(tasks).forEach((key) => { results[key] = reflect.call(this, tasks[key]); }); } return results; } __name(reflectAll, "reflectAll"); function reject$2(eachfn, arr, _iteratee, callback) { const iteratee = wrapAsync(_iteratee); return _filter(eachfn, arr, (value, cb) => { iteratee(value, (err, v) => { cb(err, !v); }); }, callback); } __name(reject$2, "reject$2"); function reject(coll, iteratee, callback) { return reject$2(eachOf$1, coll, iteratee, callback); } __name(reject, "reject"); var reject$1 = awaitify(reject, 3); function rejectLimit(coll, limit, iteratee, callback) { return reject$2(eachOfLimit$2(limit), coll, iteratee, callback); } __name(rejectLimit, "rejectLimit"); var rejectLimit$1 = awaitify(rejectLimit, 4); function rejectSeries(coll, iteratee, callback) { return reject$2(eachOfSeries$1, coll, iteratee, callback); } __name(rejectSeries, "rejectSeries"); var rejectSeries$1 = awaitify(rejectSeries, 3); function constant(value) { return function() { return value; }; } __name(constant, "constant"); const DEFAULT_TIMES = 5; const DEFAULT_INTERVAL = 0; function retry(opts, task, callback) { var options = { times: DEFAULT_TIMES, intervalFunc: constant(DEFAULT_INTERVAL) }; if (arguments.length < 3 && typeof opts === "function") { callback = task || promiseCallback(); task = opts; } else { parseTimes(options, opts); callback = callback || promiseCallback(); } if (typeof task !== "function") { throw new Error("Invalid arguments for async.retry"); } var _task = wrapAsync(task); var attempt = 1; function retryAttempt() { _task((err, ...args) => { if (err === false) return; if (err && attempt++ < options.times && (typeof options.errorFilter != "function" || options.errorFilter(err))) { setTimeout(retryAttempt, options.intervalFunc(attempt - 1)); } else { callback(err, ...args); } }); } __name(retryAttempt, "retryAttempt"); retryAttempt(); return callback[PROMISE_SYMBOL]; } __name(retry, "retry"); function parseTimes(acc, t) { if (typeof t === "object") { acc.times = +t.times || DEFAULT_TIMES; acc.intervalFunc = typeof t.interval === "function" ? t.interval : constant(+t.interval || DEFAULT_INTERVAL); acc.errorFilter = t.errorFilter; } else if (typeof t === "number" || typeof t === "string") { acc.times = +t || DEFAULT_TIMES; } else { throw new Error("Invalid arguments for async.retry"); } } __name(parseTimes, "parseTimes"); function retryable(opts, task) { if (!task) { task = opts; opts = null; } let arity = opts && opts.arity || task.length; if (isAsync(task)) { arity += 1; } var _task = wrapAsync(task); return initialParams((args, callback) => { if (args.length < arity - 1 || callback == null) { args.push(callback); callback = promiseCallback(); } function taskFn(cb) { _task(...args, cb); } __name(taskFn, "taskFn"); if (opts) retry(opts, taskFn, callback); else retry(taskFn, callback); return callback[PROMISE_SYMBOL]; }); } __name(retryable, "retryable"); function series(tasks, callback) { return _parallel(eachOfSeries$1, tasks, callback); } __name(series, "series"); function some(coll, iteratee, callback) { return _createTester(Boolean, (res) => res)(eachOf$1, coll, iteratee, callback); } __name(some, "some"); var some$1 = awaitify(some, 3); function someLimit(coll, limit, iteratee, callback) { return _createTester(Boolean, (res) => res)(eachOfLimit$2(limit), coll, iteratee, callback); } __name(someLimit, "someLimit"); var someLimit$1 = awaitify(someLimit, 4); function someSeries(coll, iteratee, callback) { return _createTester(Boolean, (res) => res)(eachOfSeries$1, coll, iteratee, callback); } __name(someSeries, "someSeries"); var someSeries$1 = awaitify(someSeries, 3); function sortBy(coll, iteratee, callback) { var _iteratee = wrapAsync(iteratee); return map$1(coll, (x, iterCb) => { _iteratee(x, (err, criteria) => { if (err) return iterCb(err); iterCb(err, { value: x, criteria }); }); }, (err, results) => { if (err) return callback(err); callback(null, results.sort(comparator).map((v) => v.value)); }); function comparator(left, right) { var a = left.criteria, b = right.criteria; return a < b ? -1 : a > b ? 1 : 0; } __name(comparator, "comparator"); } __name(sortBy, "sortBy"); var sortBy$1 = awaitify(sortBy, 3); function timeout(asyncFn, milliseconds, info) { var fn = wrapAsync(asyncFn); return initialParams((args, callback) => { var timedOut = false; var timer; function timeoutCallback() { var name = asyncFn.name || "anonymous"; var error = new Error('Callback function "' + name + '" timed out.'); error.code = "ETIMEDOUT"; if (info) { error.info = info; } timedOut = true; callback(error); } __name(timeoutCallback, "timeoutCallback"); args.push((...cbArgs) => { if (!timedOut) { callback(...cbArgs); clearTimeout(timer); } }); timer = setTimeout(timeoutCallback, milliseconds); fn(...args); }); } __name(timeout, "timeout"); function range(size) { var result = Array(size); while (size--) { result[size] = size; } return result; } __name(range, "range"); function timesLimit(count, limit, iteratee, callback) { var _iteratee = wrapAsync(iteratee); return mapLimit$1(range(count), limit, _iteratee, callback); } __name(timesLimit, "timesLimit"); function times(n, iteratee, callback) { return timesLimit(n, Infinity, iteratee, callback); } __name(times, "times"); function timesSeries(n, iteratee, callback) { return timesLimit(n, 1, iteratee, callback); } __name(timesSeries, "timesSeries"); function transform(coll, accumulator, iteratee, callback) { if (arguments.length <= 3 && typeof accumulator === "function") { callback = iteratee; iteratee = accumulator; accumulator = Array.isArray(coll) ? [] : {}; } callback = once(callback || promiseCallback()); var _iteratee = wrapAsync(iteratee); eachOf$1(coll, (v, k, cb) => { _iteratee(accumulator, v, k, cb); }, (err) => callback(err, accumulator)); return callback[PROMISE_SYMBOL]; } __name(transform, "transform"); function tryEach(tasks, callback) { var error = null; var result; return eachSeries$1(tasks, (task, taskCb) => { wrapAsync(task)((err, ...args) => { if (err === false) return taskCb(err); if (args.length < 2) { [result] = args; } else { result = args; } error = err; taskCb(err ? null : {}); }); }, () => callback(error, result)); } __name(tryEach, "tryEach"); var tryEach$1 = awaitify(tryEach); function unmemoize(fn) { return (...args) => { return (fn.unmemoized || fn)(...args); }; } __name(unmemoize, "unmemoize"); function whilst(test, iteratee, callback) { callback = onlyOnce(callback); var _fn = wrapAsync(iteratee); var _test = wrapAsync(test); var results = []; function next(err, ...rest) { if (err) return callback(err); results = rest; if (err === false) return; _test(check); } __name(next, "next"); function check(err, truth) { if (err) return callback(err); if (err === false) return; if (!truth) return callback(null, ...results); _fn(next); } __name(check, "check"); return _test(check); } __name(whilst, "whilst"); var whilst$1 = awaitify(whilst, 3); function until(test, iteratee, callback) { const _test = wrapAsync(test); return whilst$1((cb) => _test((err, truth) => cb(err, !truth)), iteratee, callback); } __name(until, "until"); function waterfall(tasks, callback) { callback = once(callback); if (!Array.isArray(tasks)) return callback(new Error("First argument to waterfall must be an array of functions")); if (!tasks.length) return callback(); var taskIndex = 0; function nextTask(args) { var task = wrapAsync(tasks[taskIndex++]); task(...args, onlyOnce(next)); } __name(nextTask, "nextTask"); function next(err, ...args) { if (err === false) return; if (err || taskIndex === tasks.length) { return callback(err, ...args); } nextTask(args); } __name(next, "next"); nextTask([]); } __name(waterfall, "waterfall"); var waterfall$1 = awaitify(waterfall); var index = { apply, applyEach, applyEachSeries, asyncify, auto, autoInject, cargo: cargo$1, cargoQueue: cargo, compose, concat: concat$1, concatLimit: concatLimit$1, concatSeries: concatSeries$1, constant: constant$1, detect: detect$1, detectLimit: detectLimit$1, detectSeries: detectSeries$1, dir, doUntil, doWhilst: doWhilst$1, each, eachLimit: eachLimit$1, eachOf: eachOf$1, eachOfLimit: eachOfLimit$1, eachOfSeries: eachOfSeries$1, eachSeries: eachSeries$1, ensureAsync, every: every$1, everyLimit: everyLimit$1, everySeries: everySeries$1, filter: filter$1, filterLimit: filterLimit$1, filterSeries: filterSeries$1, forever: forever$1, groupBy, groupByLimit: groupByLimit$1, groupBySeries, log, map: map$1, mapLimit: mapLimit$1, mapSeries: mapSeries$1, mapValues, mapValuesLimit: mapValuesLimit$1, mapValuesSeries, memoize, nextTick, parallel, parallelLimit, priorityQueue, queue, race: race$1, reduce: reduce$1, reduceRight, reflect, reflectAll, reject: reject$1, rejectLimit: rejectLimit$1, rejectSeries: rejectSeries$1, retry, retryable, seq, series, setImmediate: setImmediate$1, some: some$1, someLimit: someLimit$1, someSeries: someSeries$1, sortBy: sortBy$1, timeout, times, timesLimit, timesSeries, transform, tryEach: tryEach$1, unmemoize, until, waterfall: waterfall$1, whilst: whilst$1, // aliases all: every$1, allLimit: everyLimit$1, allSeries: everySeries$1, any: some$1, anyLimit: someLimit$1, anySeries: someSeries$1, find: detect$1, findLimit: detectLimit$1, findSeries: detectSeries$1, flatMap: concat$1, flatMapLimit: concatLimit$1, flatMapSeries: concatSeries$1, forEach: each, forEachSeries: eachSeries$1, forEachLimit: eachLimit$1, forEachOf: eachOf$1, forEachOfSeries: eachOfSeries$1, forEachOfLimit: eachOfLimit$1, inject: reduce$1, foldl: reduce$1, foldr: reduceRight, select: filter$1, selectLimit: filterLimit$1, selectSeries: filterSeries$1, wrapSync: asyncify, during: whilst$1, doDuring: doWhilst$1 }; exports3.all = every$1; exports3.allLimit = everyLimit$1; exports3.allSeries = everySeries$1; exports3.any = some$1; exports3.anyLimit = someLimit$1; exports3.anySeries = someSeries$1; exports3.apply = apply; exports3.applyEach = applyEach; exports3.applyEachSeries = applyEachSeries; exports3.asyncify = asyncify; exports3.auto = auto; exports3.autoInject = autoInject; exports3.cargo = cargo$1; exports3.cargoQueue = cargo; exports3.compose = compose; exports3.concat = concat$1; exports3.concatLimit = concatLimit$1; exports3.concatSeries = concatSeries$1; exports3.constant = constant$1; exports3.default = index; exports3.detect = detect$1; exports3.detectLimit = detectLimit$1; exports3.detectSeries = detectSeries$1; exports3.dir = dir; exports3.doDuring = doWhilst$1; exports3.doUntil = doUntil; exports3.doWhilst = doWhilst$1; exports3.during = whilst$1; exports3.each = each; exports3.eachLimit = eachLimit$1; exports3.eachOf = eachOf$1; exports3.eachOfLimit = eachOfLimit$1; exports3.eachOfSeries = eachOfSeries$1; exports3.eachSeries = eachSeries$1; exports3.ensureAsync = ensureAsync; exports3.every = every$1; exports3.everyLimit = everyLimit$1; exports3.everySeries = everySeries$1; exports3.filter = filter$1; exports3.filterLimit = filterLimit$1; exports3.filterSeries = filterSeries$1; exports3.find = detect$1; exports3.findLimit = detectLimit$1; exports3.findSeries = detectSeries$1; exports3.flatMap = concat$1; exports3.flatMapLimit = concatLimit$1; exports3.flatMapSeries = concatSeries$1; exports3.foldl = reduce$1; exports3.foldr = reduceRight; exports3.forEach = each; exports3.forEachLimit = eachLimit$1; exports3.forEachOf = eachOf$1; exports3.forEachOfLimit = eachOfLimit$1; exports3.forEachOfSeries = eachOfSeries$1; exports3.forEachSeries = eachSeries$1; exports3.forever = forever$1; exports3.groupBy = groupBy; exports3.groupByLimit = groupByLimit$1; exports3.groupBySeries = groupBySeries; exports3.inject = reduce$1; exports3.log = log; exports3.map = map$1; exports3.mapLimit = mapLimit$1; exports3.mapSeries = mapSeries$1; exports3.mapValues = mapValues; exports3.mapValuesLimit = mapValuesLimit$1; exports3.mapValuesSeries = mapValuesSeries; exports3.memoize = memoize; exports3.nextTick = nextTick; exports3.parallel = parallel; exports3.parallelLimit = parallelLimit; exports3.priorityQueue = priorityQueue; exports3.queue = queue; exports3.race = race$1; exports3.reduce = reduce$1; exports3.reduceRight = reduceRight; exports3.reflect = reflect; exports3.reflectAll = reflectAll; exports3.reject = reject$1; exports3.rejectLimit = rejectLimit$1; exports3.rejectSeries = rejectSeries$1; exports3.retry = retry; exports3.retryable = retryable; exports3.select = filter$1; exports3.selectLimit = filterLimit$1; exports3.selectSeries = filterSeries$1; exports3.seq = seq; exports3.series = series; exports3.setImmediate = setImmediate$1; exports3.some = some$1; exports3.someLimit = someLimit$1; exports3.someSeries = someSeries$1; exports3.sortBy = sortBy$1; exports3.timeout = timeout; exports3.times = times; exports3.timesLimit = timesLimit; exports3.timesSeries = timesSeries; exports3.transform = transform; exports3.tryEach = tryEach$1; exports3.unmemoize = unmemoize; exports3.until = until; exports3.waterfall = waterfall$1; exports3.whilst = whilst$1; exports3.wrapSync = asyncify; Object.defineProperty(exports3, "__esModule", { value: true }); })); } }); // ../../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/polyfills.js var require_polyfills = __commonJS({ "../../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/polyfills.js"(exports2, module2) { var constants = require("constants"); var origCwd = process.cwd; var cwd = null; var platform = process.env.GRACEFUL_FS_PLATFORM || process.platform; process.cwd = function() { if (!cwd) cwd = origCwd.call(process); return cwd; }; try { process.cwd(); } catch (er) { } if (typeof process.chdir === "function") { chdir = process.chdir; process.chdir = function(d) { cwd = null; chdir.call(process, d); }; if (Object.setPrototypeOf) Object.setPrototypeOf(process.chdir, chdir); } var chdir; module2.exports = patch; function patch(fs) { if (constants.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) { patchLchmod(fs); } if (!fs.lutimes) { patchLutimes(fs); } fs.chown = chownFix(fs.chown); fs.fchown = chownFix(fs.fchown); fs.lchown = chownFix(fs.lchown); fs.chmod = chmodFix(fs.chmod); fs.fchmod = chmodFix(fs.fchmod); fs.lchmod = chmodFix(fs.lchmod); fs.chownSync = chownFixSync(fs.chownSync); fs.fchownSync = chownFixSync(fs.fchownSync); fs.lchownSync = chownFixSync(fs.lchownSync); fs.chmodSync = chmodFixSync(fs.chmodSync); fs.fchmodSync = chmodFixSync(fs.fchmodSync); fs.lchmodSync = chmodFixSync(fs.lchmodSync); fs.stat = statFix(fs.stat); fs.fstat = statFix(fs.fstat); fs.lstat = statFix(fs.lstat); fs.statSync = statFixSync(fs.statSync); fs.fstatSync = statFixSync(fs.fstatSync); fs.lstatSync = statFixSync(fs.lstatSync); if (fs.chmod && !fs.lchmod) { fs.lchmod = function(path, mode, cb) { if (cb) process.nextTick(cb); }; fs.lchmodSync = function() { }; } if (fs.chown && !fs.lchown) { fs.lchown = function(path, uid, gid, cb) { if (cb) process.nextTick(cb); }; fs.lchownSync = function() { }; } if (platform === "win32") { fs.rename = typeof fs.rename !== "function" ? fs.rename : (function(fs$rename) { function rename(from, to, cb) { var start = Date.now(); var backoff = 0; fs$rename(from, to, /* @__PURE__ */ __name(function CB(er) { if (er && (er.code === "EACCES" || er.code === "EPERM" || er.code === "EBUSY") && Date.now() - start < 6e4) { setTimeout(function() { fs.stat(to, function(stater, st) { if (stater && stater.code === "ENOENT") fs$rename(from, to, CB); else cb(er); }); }, backoff); if (backoff < 100) backoff += 10; return; } if (cb) cb(er); }, "CB")); } __name(rename, "rename"); if (Object.setPrototypeOf) Object.setPrototypeOf(rename, fs$rename); return rename; })(fs.rename); } fs.read = typeof fs.read !== "function" ? fs.read : (function(fs$read) { function read(fd, buffer, offset, length, position, callback_) { var callback; if (callback_ && typeof callback_ === "function") { var eagCounter = 0; callback = /* @__PURE__ */ __name(function(er, _2, __) { if (er && er.code === "EAGAIN" && eagCounter < 10) { eagCounter++; return fs$read.call(fs, fd, buffer, offset, length, position, callback); } callback_.apply(this, arguments); }, "callback"); } return fs$read.call(fs, fd, buffer, offset, length, position, callback); } __name(read, "read"); if (Object.setPrototypeOf) Object.setPrototypeOf(read, fs$read); return read; })(fs.read); fs.readSync = typeof fs.readSync !== "function" ? fs.readSync : /* @__PURE__ */ (function(fs$readSync) { return function(fd, buffer, offset, length, position) { var eagCounter = 0; while (true) { try { return fs$readSync.call(fs, fd, buffer, offset, length, position); } catch (er) { if (er.code === "EAGAIN" && eagCounter < 10) { eagCounter++; continue; } throw er; } } }; })(fs.readSync); function patchLchmod(fs2) { fs2.lchmod = function(path, mode, callback) { fs2.open( path, constants.O_WRONLY | constants.O_SYMLINK, mode, function(err, fd) { if (err) { if (callback) callback(err); return; } fs2.fchmod(fd, mode, function(err2) { fs2.close(fd, function(err22) { if (callback) callback(err2 || err22); }); }); } ); }; fs2.lchmodSync = function(path, mode) { var fd = fs2.openSync(path, constants.O_WRONLY | constants.O_SYMLINK, mode); var threw = true; var ret2; try { ret2 = fs2.fchmodSync(fd, mode); threw = false; } finally { if (threw) { try { fs2.closeSync(fd); } catch (er) { } } else { fs2.closeSync(fd); } } return ret2; }; } __name(patchLchmod, "patchLchmod"); function patchLutimes(fs2) { if (constants.hasOwnProperty("O_SYMLINK") && fs2.futimes) { fs2.lutimes = function(path, at, mt, cb) { fs2.open(path, constants.O_SYMLINK, function(er, fd) { if (er) { if (cb) cb(er); return; } fs2.futimes(fd, at, mt, function(er2) { fs2.close(fd, function(er22) { if (cb) cb(er2 || er22); }); }); }); }; fs2.lutimesSync = function(path, at, mt) { var fd = fs2.openSync(path, constants.O_SYMLINK); var ret2; var threw = true; try { ret2 = fs2.futimesSync(fd, at, mt); threw = false; } finally { if (threw) { try { fs2.closeSync(fd); } catch (er) { } } else { fs2.closeSync(fd); } } return ret2; }; } else if (fs2.futimes) { fs2.lutimes = function(_a, _b, _c, cb) { if (cb) process.nextTick(cb); }; fs2.lutimesSync = function() { }; } } __name(patchLutimes, "patchLutimes"); function chmodFix(orig) { if (!orig) return orig; return function(target, mode, cb) { return orig.call(fs, target, mode, function(er) { if (chownErOk(er)) er = null; if (cb) cb.apply(this, arguments); }); }; } __name(chmodFix, "chmodFix"); function chmodFixSync(orig) { if (!orig) return orig; return function(target, mode) { try { return orig.call(fs, target, mode); } catch (er) { if (!chownErOk(er)) throw er; } }; } __name(chmodFixSync, "chmodFixSync"); function chownFix(orig) { if (!orig) return orig; return function(target, uid, gid, cb) { return orig.call(fs, target, uid, gid, function(er) { if (chownErOk(er)) er = null; if (cb) cb.apply(this, arguments); }); }; } __name(chownFix, "chownFix"); function chownFixSync(orig) { if (!orig) return orig; return function(target, uid, gid) { try { return orig.call(fs, target, uid, gid); } catch (er) { if (!chownErOk(er)) throw er; } }; } __name(chownFixSync, "chownFixSync"); function statFix(orig) { if (!orig) return orig; return function(target, options, cb) { if (typeof options === "function") { cb = options; options = null; } function callback(er, stats) { if (stats) { if (stats.uid < 0) stats.uid += 4294967296; if (stats.gid < 0) stats.gid += 4294967296; } if (cb) cb.apply(this, arguments); } __name(callback, "callback"); return options ? orig.call(fs, target, options, callback) : orig.call(fs, target, callback); }; } __name(statFix, "statFix"); function statFixSync(orig) { if (!orig) return orig; return function(target, options) { var stats = options ? orig.call(fs, target, options) : orig.call(fs, target); if (stats) { if (stats.uid < 0) stats.uid += 4294967296; if (stats.gid < 0) stats.gid += 4294967296; } return stats; }; } __name(statFixSync, "statFixSync"); function chownErOk(er) { if (!er) return true; if (er.code === "ENOSYS") return true; var nonroot = !process.getuid || process.getuid() !== 0; if (nonroot) { if (er.code === "EINVAL" || er.code === "EPERM") return true; } return false; } __name(chownErOk, "chownErOk"); } __name(patch, "patch"); } }); // ../../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/legacy-streams.js var require_legacy_streams = __commonJS({ "../../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/legacy-streams.js"(exports2, module2) { var Stream = require("stream").Stream; module2.exports = legacy; function legacy(fs) { return { ReadStream, WriteStream }; function ReadStream(path, options) { if (!(this instanceof ReadStream)) return new ReadStream(path, options); Stream.call(this); var self2 = this; this.path = path; this.fd = null; this.readable = true; this.paused = false; this.flags = "r"; this.mode = 438; this.bufferSize = 64 * 1024; options = options || {}; var keys = Object.keys(options); for (var index = 0, length = keys.length; index < length; index++) { var key = keys[index]; this[key] = options[key]; } if (this.encoding) this.setEncoding(this.encoding); if (this.start !== void 0) { if ("number" !== typeof this.start) { throw TypeError("start must be a Number"); } if (this.end === void 0) { this.end = Infinity; } else if ("number" !== typeof this.end) { throw TypeError("end must be a Number"); } if (this.start > this.end) { throw new Error("start must be <= end"); } this.pos = this.start; } if (this.fd !== null) { process.nextTick(function() { self2._read(); }); return; } fs.open(this.path, this.flags, this.mode, function(err, fd) { if (err) { self2.emit("error", err); self2.readable = false; return; } self2.fd = fd; self2.emit("open", fd); self2._read(); }); } __name(ReadStream, "ReadStream"); function WriteStream(path, options) { if (!(this instanceof WriteStream)) return new WriteStream(path, options); Stream.call(this); this.path = path; this.fd = null; this.writable = true; this.flags = "w"; this.encoding = "binary"; this.mode = 438; this.bytesWritten = 0; options = options || {}; var keys = Object.keys(options); for (var index = 0, length = keys.length; index < length; index++) { var key = keys[index]; this[key] = options[key]; } if (this.start !== void 0) { if ("number" !== typeof this.start) { throw TypeError("start must be a Number"); } if (this.start < 0) { throw new Error("start must be >= zero"); } this.pos = this.start; } this.busy = false; this._queue = []; if (this.fd === null) { this._open = fs.open; this._queue.push([this._open, this.path, this.flags, this.mode, void 0]); this.flush(); } } __name(WriteStream, "WriteStream"); } __name(legacy, "legacy"); } }); // ../../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/clone.js var require_clone = __commonJS({ "../../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/clone.js"(exports2, module2) { "use strict"; module2.exports = clone; var getPrototypeOf = Object.getPrototypeOf || function(obj2) { return obj2.__proto__; }; function clone(obj2) { if (obj2 === null || typeof obj2 !== "object") return obj2; if (obj2 instanceof Object) var copy = { __proto__: getPrototypeOf(obj2) }; else var copy = /* @__PURE__ */ Object.create(null); Object.getOwnPropertyNames(obj2).forEach(function(key) { Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj2, key)); }); return copy; } __name(clone, "clone"); } }); // ../../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/graceful-fs.js var require_graceful_fs = __commonJS({ "../../node_modules/.pnpm/graceful-fs@4.2.11/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) { var fs = require("fs"); var polyfills = require_polyfills(); var legacy = require_legacy_streams(); var clone = require_clone(); var util2 = require("util"); var gracefulQueue; var previousSymbol; if (typeof Symbol === "function" && typeof Symbol.for === "function") { gracefulQueue = Symbol.for("graceful-fs.queue"); previousSymbol = Symbol.for("graceful-fs.previous"); } else { gracefulQueue = "___graceful-fs.queue"; previousSymbol = "___graceful-fs.previous"; } function noop() { } __name(noop, "noop"); function publishQueue(context, queue2) { Object.defineProperty(context, gracefulQueue, { get: /* @__PURE__ */ __name(function() { return queue2; }, "get") }); } __name(publishQueue, "publishQueue"); var debug = noop; if (util2.debuglog) debug = util2.debuglog("gfs4"); else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) debug = /* @__PURE__ */ __name(function() { var m = util2.format.apply(util2, arguments); m = "GFS4: " + m.split(/\n/).join("\nGFS4: "); console.error(m); }, "debug"); if (!fs[gracefulQueue]) { queue = global[gracefulQueue] || []; publishQueue(fs, queue); fs.close = (function(fs$close) { function close(fd, cb) { return fs$close.call(fs, fd, function(err) { if (!err) { resetQueue(); } if (typeof cb === "function") cb.apply(this, arguments); }); } __name(close, "close"); Object.defineProperty(close, previousSymbol, { value: fs$close }); return close; })(fs.close); fs.closeSync = (function(fs$closeSync) { function closeSync(fd) { fs$closeSync.apply(fs, arguments); resetQueue(); } __name(closeSync, "closeSync"); Object.defineProperty(closeSync, previousSymbol, { value: fs$closeSync }); return closeSync; })(fs.closeSync); if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) { process.on("exit", function() { debug(fs[gracefulQueue]); require("assert").equal(fs[gracefulQueue].length, 0); }); } } var queue; if (!global[gracefulQueue]) { publishQueue(global, fs[gracefulQueue]); } module2.exports = patch(clone(fs)); if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs.__patched) { module2.exports = patch(fs); fs.__patched = true; } function patch(fs2) { polyfills(fs2); fs2.gracefulify = patch; fs2.createReadStream = createReadStream; fs2.createWriteStream = createWriteStream; var fs$readFile = fs2.readFile; fs2.readFile = readFile; function readFile(path, options, cb) { if (typeof options === "function") cb = options, options = null; return go$readFile(path, options, cb); function go$readFile(path2, options2, cb2, startTime) { return fs$readFile(path2, options2, function(err) { if (err && (err.code === "EMFILE" || err.code === "ENFILE")) enqueue([go$readFile, [path2, options2, cb2], err, startTime || Date.now(), Date.now()]); else { if (typeof cb2 === "function") cb2.apply(this, arguments); } }); } __name(go$readFile, "go$readFile"); } __name(readFile, "readFile"); var fs$writeFile = fs2.writeFile; fs2.writeFile = writeFile; function writeFile(path, data, options, cb) { if (typeof options === "function") cb = options, options = null; return go$writeFile(path, data, options, cb); function go$writeFile(path2, data2, options2, cb2, startTime) { return fs$writeFile(path2, data2, options2, function(err) { if (err && (err.code === "EMFILE" || err.code === "ENFILE")) enqueue([go$writeFile, [path2, data2, options2, cb2], err, startTime || Date.now(), Date.now()]); else { if (typeof cb2 === "function") cb2.apply(this, arguments); } }); } __name(go$writeFile, "go$writeFile"); } __name(writeFile, "writeFile"); var fs$appendFile = fs2.appendFile; if (fs$appendFile) fs2.appendFile = appendFile; function appendFile(path, data, options, cb) { if (typeof options === "function") cb = options, options = null; return go$appendFile(path, data, options, cb); function go$appendFile(path2, data2, options2, cb2, startTime) { return fs$appendFile(path2, data2, options2, function(err) { if (err && (err.code === "EMFILE" || err.code === "ENFILE")) enqueue([go$appendFile, [path2, data2, options2, cb2], err, startTime || Date.now(), Date.now()]); else { if (typeof cb2 === "function") cb2.apply(this, arguments); } }); } __name(go$appendFile, "go$appendFile"); } __name(appendFile, "appendFile"); var fs$copyFile = fs2.copyFile; if (fs$copyFile) fs2.copyFile = copyFile; function copyFile(src, dest, flags, cb) { if (typeof flags === "function") { cb = flags; flags = 0; } return go$copyFile(src, dest, flags, cb); function go$copyFile(src2, dest2, flags2, cb2, startTime) { return fs$copyFile(src2, dest2, flags2, function(err) { if (err && (err.code === "EMFILE" || err.code === "ENFILE")) enqueue([go$copyFile, [src2, dest2, flags2, cb2], err, startTime || Date.now(), Date.now()]); else { if (typeof cb2 === "function") cb2.apply(this, arguments); } }); } __name(go$copyFile, "go$copyFile"); } __name(copyFile, "copyFile"); var fs$readdir = fs2.readdir; fs2.readdir = readdir; var noReaddirOptionVersions = /^v[0-5]\./; function readdir(path, options, cb) { if (typeof options === "function") cb = options, options = null; var go$readdir = noReaddirOptionVersions.test(process.version) ? /* @__PURE__ */ __name(function go$readdir2(path2, options2, cb2, startTime) { return fs$readdir(path2, fs$readdirCallback( path2, options2, cb2, startTime )); }, "go$readdir") : /* @__PURE__ */ __name(function go$readdir2(path2, options2, cb2, startTime) { return fs$readdir(path2, options2, fs$readdirCallback( path2, options2, cb2, startTime )); }, "go$readdir"); return go$readdir(path, options, cb); function fs$readdirCallback(path2, options2, cb2, startTime) { return function(err, files) { if (err && (err.code === "EMFILE" || err.code === "ENFILE")) enqueue([ go$readdir, [path2, options2, cb2], err, startTime || Date.now(), Date.now() ]); else { if (files && files.sort) files.sort(); if (typeof cb2 === "function") cb2.call(this, err, files); } }; } __name(fs$readdirCallback, "fs$readdirCallback"); } __name(readdir, "readdir"); if (process.version.substr(0, 4) === "v0.8") { var legStreams = legacy(fs2); ReadStream = legStreams.ReadStream; WriteStream = legStreams.WriteStream; } var fs$ReadStream = fs2.ReadStream; if (fs$ReadStream) { ReadStream.prototype = Object.create(fs$ReadStream.prototype); ReadStream.prototype.open = ReadStream$open; } var fs$WriteStream = fs2.WriteStream; if (fs$WriteStream) { WriteStream.prototype = Object.create(fs$WriteStream.prototype); WriteStream.prototype.open = WriteStream$open; } Object.defineProperty(fs2, "ReadStream", { get: /* @__PURE__ */ __name(function() { return ReadStream; }, "get"), set: /* @__PURE__ */ __name(function(val) { ReadStream = val; }, "set"), enumerable: true, configurable: true }); Object.defineProperty(fs2, "WriteStream", { get: /* @__PURE__ */ __name(function() { return WriteStream; }, "get"), set: /* @__PURE__ */ __name(function(val) { WriteStream = val; }, "set"), enumerable: true, configurable: true }); var FileReadStream = ReadStream; Object.defineProperty(fs2, "FileReadStream", { get: /* @__PURE__ */ __name(function() { return FileReadStream; }, "get"), set: /* @__PURE__ */ __name(function(val) { FileReadStream = val; }, "set"), enumerable: true, configurable: true }); var FileWriteStream = WriteStream; Object.defineProperty(fs2, "FileWriteStream", { get: /* @__PURE__ */ __name(function() { return FileWriteStream; }, "get"), set: /* @__PURE__ */ __name(function(val) { FileWriteStream = val; }, "set"), enumerable: true, configurable: true }); function ReadStream(path, options) { if (this instanceof ReadStream) return fs$ReadStream.apply(this, arguments), this; else return ReadStream.apply(Object.create(ReadStream.prototype), arguments); } __name(ReadStream, "ReadStream"); function ReadStream$open() { var that = this; open(that.path, that.flags, that.mode, function(err, fd) { if (err) { if (that.autoClose) that.destroy(); that.emit("error", err); } else { that.fd = fd; that.emit("open", fd); that.read(); } }); } __name(ReadStream$open, "ReadStream$open"); function WriteStream(path, options) { if (this instanceof WriteStream) return fs$WriteStream.apply(this, arguments), this; else return WriteStream.apply(Object.create(WriteStream.prototype), arguments); } __name(WriteStream, "WriteStream"); function WriteStream$open() { var that = this; open(that.path, that.flags, that.mode, function(err, fd) { if (err) { that.destroy(); that.emit("error", err); } else { that.fd = fd; that.emit("open", fd); } }); } __name(WriteStream$open, "WriteStream$open"); function createReadStream(path, options) { return new fs2.ReadStream(path, options); } __name(createReadStream, "createReadStream"); function createWriteStream(path, options) { return new fs2.WriteStream(path, options); } __name(createWriteStream, "createWriteStream"); var fs$open = fs2.open; fs2.open = open; function open(path, flags, mode, cb) { if (typeof mode === "function") cb = mode, mode = null; return go$open(path, flags, mode, cb); function go$open(path2, flags2, mode2, cb2, startTime) { return fs$open(path2, flags2, mode2, function(err, fd) { if (err && (err.code === "EMFILE" || err.code === "ENFILE")) enqueue([go$open, [path2, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]); else { if (typeof cb2 === "function") cb2.apply(this, arguments); } }); } __name(go$open, "go$open"); } __name(open, "open"); return fs2; } __name(patch, "patch"); function enqueue(elem) { debug("ENQUEUE", elem[0].name, elem[1]); fs[gracefulQueue].push(elem); retry(); } __name(enqueue, "enqueue"); var retryTimer; function resetQueue() { var now = Date.now(); for (var i = 0; i < fs[gracefulQueue].length; ++i) { if (fs[gracefulQueue][i].length > 2) { fs[gracefulQueue][i][3] = now; fs[gracefulQueue][i][4] = now; } } retry(); } __name(resetQueue, "resetQueue"); function retry() { clearTimeout(retryTimer); retryTimer = void 0; if (fs[gracefulQueue].length === 0) return; var elem = fs[gracefulQueue].shift(); var fn = elem[0]; var args = elem[1]; var err = elem[2]; var startTime = elem[3]; var lastTime = elem[4]; if (startTime === void 0) { debug("RETRY", fn.name, args); fn.apply(null, args); } else if (Date.now() - startTime >= 6e4) { debug("TIMEOUT", fn.name, args); var cb = args.pop(); if (typeof cb === "function") cb.call(null, err); } else { var sinceAttempt = Date.now() - lastTime; var sinceStart = Math.max(lastTime - startTime, 1); var desiredDelay = Math.min(sinceStart * 1.2, 100); if (sinceAttempt >= desiredDelay) { debug("RETRY", fn.name, args); fn.apply(null, args.concat([startTime])); } else { fs[gracefulQueue].push(elem); } } if (retryTimer === void 0) { retryTimer = setTimeout(retry, 0); } } __name(retry, "retry"); } }); // ../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/passthrough.js var require_passthrough = __commonJS({ "../../node_modules/.pnpm/readable-stream@2.3.8/node_modules/readable-stream/passthrough.js"(exports2, module2) { module2.exports = require_readable2().PassThrough; } }); // ../../node_modules/.pnpm/lazystream@1.0.1/node_modules/lazystream/lib/lazystream.js var require_lazystream = __commonJS({ "../../node_modules/.pnpm/lazystream@1.0.1/node_modules/lazystream/lib/lazystream.js"(exports2, module2) { var util2 = require("util"); var PassThrough = require_passthrough(); module2.exports = { Readable, Writable }; util2.inherits(Readable, PassThrough); util2.inherits(Writable, PassThrough); function beforeFirstCall(instance, method, callback) { instance[method] = function() { delete instance[method]; callback.apply(this, arguments); return this[method].apply(this, arguments); }; } __name(beforeFirstCall, "beforeFirstCall"); function Readable(fn, options) { if (!(this instanceof Readable)) return new Readable(fn, options); PassThrough.call(this, options); beforeFirstCall(this, "_read", function() { var source = fn.call(this, options); var emit = this.emit.bind(this, "error"); source.on("error", emit); source.pipe(this); }); this.emit("readable"); } __name(Readable, "Readable"); function Writable(fn, options) { if (!(this instanceof Writable)) return new Writable(fn, options); PassThrough.call(this, options); beforeFirstCall(this, "_write", function() { var destination = fn.call(this, options); var emit = this.emit.bind(this, "error"); destination.on("error", emit); this.pipe(destination); }); this.emit("writable"); } __name(Writable, "Writable"); } }); // ../../node_modules/.pnpm/normalize-path@3.0.0/node_modules/normalize-path/index.js var require_normalize_path = __commonJS({ "../../node_modules/.pnpm/normalize-path@3.0.0/node_modules/normalize-path/index.js"(exports2, module2) { module2.exports = function(path, stripTrailing) { if (typeof path !== "string") { throw new TypeError("expected path to be a string"); } if (path === "\\" || path === "/") return "/"; var len = path.length; if (len <= 1) return path; var prefix = ""; if (len > 4 && path[3] === "\\") { var ch = path[2]; if ((ch === "?" || ch === ".") && path.slice(0, 2) === "\\\\") { path = path.slice(2); prefix = "//"; } } var segs = path.split(/[/\\]+/); if (stripTrailing !== false && segs[segs.length - 1] === "") { segs.pop(); } return prefix + segs.join("/"); }; } }); // ../../node_modules/.pnpm/lodash.defaults@4.2.0/node_modules/lodash.defaults/index.js var require_lodash17 = __commonJS({ "../../node_modules/.pnpm/lodash.defaults@4.2.0/node_modules/lodash.defaults/index.js"(exports2, module2) { var MAX_SAFE_INTEGER = 9007199254740991; var argsTag = "[object Arguments]"; var funcTag = "[object Function]"; var genTag = "[object GeneratorFunction]"; var reIsUint = /^(?:0|[1-9]\d*)$/; function apply(func, thisArg, args) { switch (args.length) { case 0: return func.call(thisArg); case 1: return func.call(thisArg, args[0]); case 2: return func.call(thisArg, args[0], args[1]); case 3: return func.call(thisArg, args[0], args[1], args[2]); } return func.apply(thisArg, args); } __name(apply, "apply"); function baseTimes(n, iteratee) { var index = -1, result = Array(n); while (++index < n) { result[index] = iteratee(index); } return result; } __name(baseTimes, "baseTimes"); var objectProto = Object.prototype; var hasOwnProperty = objectProto.hasOwnProperty; var objectToString = objectProto.toString; var propertyIsEnumerable = objectProto.propertyIsEnumerable; var nativeMax = Math.max; function arrayLikeKeys(value, inherited) { var result = isArray(value) || isArguments(value) ? baseTimes(value.length, String) : []; var length = result.length, skipIndexes = !!length; for (var key in value) { if ((inherited || hasOwnProperty.call(value, key)) && !(skipIndexes && (key == "length" || isIndex(key, length)))) { result.push(key); } } return result; } __name(arrayLikeKeys, "arrayLikeKeys"); function assignInDefaults(objValue, srcValue, key, object) { if (objValue === void 0 || eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key)) { return srcValue; } return objValue; } __name(assignInDefaults, "assignInDefaults"); function assignValue(object, key, value) { var objValue = object[key]; if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) { object[key] = value; } } __name(assignValue, "assignValue"); function baseKeysIn(object) { if (!isObject2(object)) { return nativeKeysIn(object); } var isProto = isPrototype(object), result = []; for (var key in object) { if (!(key == "constructor" && (isProto || !hasOwnProperty.call(object, key)))) { result.push(key); } } return result; } __name(baseKeysIn, "baseKeysIn"); function baseRest(func, start) { start = nativeMax(start === void 0 ? func.length - 1 : start, 0); return function() { var args = arguments, index = -1, length = nativeMax(args.length - start, 0), array = Array(length); while (++index < length) { array[index] = args[start + index]; } index = -1; var otherArgs = Array(start + 1); while (++index < start) { otherArgs[index] = args[index]; } otherArgs[start] = array; return apply(func, this, otherArgs); }; } __name(baseRest, "baseRest"); function copyObject(source, props, object, customizer) { object || (object = {}); var index = -1, length = props.length; while (++index < length) { var key = props[index]; var newValue = customizer ? customizer(object[key], source[key], key, object, source) : void 0; assignValue(object, key, newValue === void 0 ? source[key] : newValue); } return object; } __name(copyObject, "copyObject"); function createAssigner(assigner) { return baseRest(function(object, sources) { var index = -1, length = sources.length, customizer = length > 1 ? sources[length - 1] : void 0, guard = length > 2 ? sources[2] : void 0; customizer = assigner.length > 3 && typeof customizer == "function" ? (length--, customizer) : void 0; if (guard && isIterateeCall(sources[0], sources[1], guard)) { customizer = length < 3 ? void 0 : customizer; length = 1; } object = Object(object); while (++index < length) { var source = sources[index]; if (source) { assigner(object, source, index, customizer); } } return object; }); } __name(createAssigner, "createAssigner"); function isIndex(value, length) { length = length == null ? MAX_SAFE_INTEGER : length; return !!length && (typeof value == "number" || reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length); } __name(isIndex, "isIndex"); function isIterateeCall(value, index, object) { if (!isObject2(object)) { return false; } var type = typeof index; if (type == "number" ? isArrayLike(object) && isIndex(index, object.length) : type == "string" && index in object) { return eq(object[index], value); } return false; } __name(isIterateeCall, "isIterateeCall"); function isPrototype(value) { var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto; return value === proto; } __name(isPrototype, "isPrototype"); function nativeKeysIn(object) { var result = []; if (object != null) { for (var key in Object(object)) { result.push(key); } } return result; } __name(nativeKeysIn, "nativeKeysIn"); function eq(value, other) { return value === other || value !== value && other !== other; } __name(eq, "eq"); function isArguments(value) { return isArrayLikeObject(value) && hasOwnProperty.call(value, "callee") && (!propertyIsEnumerable.call(value, "callee") || objectToString.call(value) == argsTag); } __name(isArguments, "isArguments"); var isArray = Array.isArray; function isArrayLike(value) { return value != null && isLength(value.length) && !isFunction(value); } __name(isArrayLike, "isArrayLike"); function isArrayLikeObject(value) { return isObjectLike(value) && isArrayLike(value); } __name(isArrayLikeObject, "isArrayLikeObject"); function isFunction(value) { var tag = isObject2(value) ? objectToString.call(value) : ""; return tag == funcTag || tag == genTag; } __name(isFunction, "isFunction"); function isLength(value) { return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; } __name(isLength, "isLength"); function isObject2(value) { var type = typeof value; return !!value && (type == "object" || type == "function"); } __name(isObject2, "isObject"); function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); var assignInWith = createAssigner(function(object, source, srcIndex, customizer) { copyObject(source, keysIn(source), object, customizer); }); var defaults = baseRest(function(args) { args.push(void 0, assignInDefaults); return apply(assignInWith, void 0, args); }); function keysIn(object) { return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); } __name(keysIn, "keysIn"); module2.exports = defaults; } }); // ../../node_modules/.pnpm/lodash.flatten@4.4.0/node_modules/lodash.flatten/index.js var require_lodash18 = __commonJS({ "../../node_modules/.pnpm/lodash.flatten@4.4.0/node_modules/lodash.flatten/index.js"(exports2, module2) { var MAX_SAFE_INTEGER = 9007199254740991; var argsTag = "[object Arguments]"; var funcTag = "[object Function]"; var genTag = "[object GeneratorFunction]"; var freeGlobal = typeof global == "object" && global && global.Object === Object && global; var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = freeGlobal || freeSelf || Function("return this")(); function arrayPush(array, values) { var index = -1, length = values.length, offset = array.length; while (++index < length) { array[offset + index] = values[index]; } return array; } __name(arrayPush, "arrayPush"); var objectProto = Object.prototype; var hasOwnProperty = objectProto.hasOwnProperty; var objectToString = objectProto.toString; var Symbol2 = root.Symbol; var propertyIsEnumerable = objectProto.propertyIsEnumerable; var spreadableSymbol = Symbol2 ? Symbol2.isConcatSpreadable : void 0; function baseFlatten(array, depth, predicate, isStrict, result) { var index = -1, length = array.length; predicate || (predicate = isFlattenable); result || (result = []); while (++index < length) { var value = array[index]; if (depth > 0 && predicate(value)) { if (depth > 1) { baseFlatten(value, depth - 1, predicate, isStrict, result); } else { arrayPush(result, value); } } else if (!isStrict) { result[result.length] = value; } } return result; } __name(baseFlatten, "baseFlatten"); function isFlattenable(value) { return isArray(value) || isArguments(value) || !!(spreadableSymbol && value && value[spreadableSymbol]); } __name(isFlattenable, "isFlattenable"); function flatten(array) { var length = array ? array.length : 0; return length ? baseFlatten(array, 1) : []; } __name(flatten, "flatten"); function isArguments(value) { return isArrayLikeObject(value) && hasOwnProperty.call(value, "callee") && (!propertyIsEnumerable.call(value, "callee") || objectToString.call(value) == argsTag); } __name(isArguments, "isArguments"); var isArray = Array.isArray; function isArrayLike(value) { return value != null && isLength(value.length) && !isFunction(value); } __name(isArrayLike, "isArrayLike"); function isArrayLikeObject(value) { return isObjectLike(value) && isArrayLike(value); } __name(isArrayLikeObject, "isArrayLikeObject"); function isFunction(value) { var tag = isObject2(value) ? objectToString.call(value) : ""; return tag == funcTag || tag == genTag; } __name(isFunction, "isFunction"); function isLength(value) { return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; } __name(isLength, "isLength"); function isObject2(value) { var type = typeof value; return !!value && (type == "object" || type == "function"); } __name(isObject2, "isObject"); function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); module2.exports = flatten; } }); // ../../node_modules/.pnpm/lodash.difference@4.5.0/node_modules/lodash.difference/index.js var require_lodash19 = __commonJS({ "../../node_modules/.pnpm/lodash.difference@4.5.0/node_modules/lodash.difference/index.js"(exports2, module2) { var LARGE_ARRAY_SIZE = 200; var HASH_UNDEFINED = "__lodash_hash_undefined__"; var MAX_SAFE_INTEGER = 9007199254740991; var argsTag = "[object Arguments]"; var funcTag = "[object Function]"; var genTag = "[object GeneratorFunction]"; var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; var reIsHostCtor = /^\[object .+?Constructor\]$/; var freeGlobal = typeof global == "object" && global && global.Object === Object && global; var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = freeGlobal || freeSelf || Function("return this")(); function apply(func, thisArg, args) { switch (args.length) { case 0: return func.call(thisArg); case 1: return func.call(thisArg, args[0]); case 2: return func.call(thisArg, args[0], args[1]); case 3: return func.call(thisArg, args[0], args[1], args[2]); } return func.apply(thisArg, args); } __name(apply, "apply"); function arrayIncludes(array, value) { var length = array ? array.length : 0; return !!length && baseIndexOf(array, value, 0) > -1; } __name(arrayIncludes, "arrayIncludes"); function arrayIncludesWith(array, value, comparator) { var index = -1, length = array ? array.length : 0; while (++index < length) { if (comparator(value, array[index])) { return true; } } return false; } __name(arrayIncludesWith, "arrayIncludesWith"); function arrayMap(array, iteratee) { var index = -1, length = array ? array.length : 0, result = Array(length); while (++index < length) { result[index] = iteratee(array[index], index, array); } return result; } __name(arrayMap, "arrayMap"); function arrayPush(array, values) { var index = -1, length = values.length, offset = array.length; while (++index < length) { array[offset + index] = values[index]; } return array; } __name(arrayPush, "arrayPush"); function baseFindIndex(array, predicate, fromIndex, fromRight) { var length = array.length, index = fromIndex + (fromRight ? 1 : -1); while (fromRight ? index-- : ++index < length) { if (predicate(array[index], index, array)) { return index; } } return -1; } __name(baseFindIndex, "baseFindIndex"); function baseIndexOf(array, value, fromIndex) { if (value !== value) { return baseFindIndex(array, baseIsNaN, fromIndex); } var index = fromIndex - 1, length = array.length; while (++index < length) { if (array[index] === value) { return index; } } return -1; } __name(baseIndexOf, "baseIndexOf"); function baseIsNaN(value) { return value !== value; } __name(baseIsNaN, "baseIsNaN"); function baseUnary(func) { return function(value) { return func(value); }; } __name(baseUnary, "baseUnary"); function cacheHas(cache, key) { return cache.has(key); } __name(cacheHas, "cacheHas"); function getValue(object, key) { return object == null ? void 0 : object[key]; } __name(getValue, "getValue"); function isHostObject(value) { var result = false; if (value != null && typeof value.toString != "function") { try { result = !!(value + ""); } catch (e) { } } return result; } __name(isHostObject, "isHostObject"); var arrayProto = Array.prototype; var funcProto = Function.prototype; var objectProto = Object.prototype; var coreJsData = root["__core-js_shared__"]; var maskSrcKey = (function() { var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); return uid ? "Symbol(src)_1." + uid : ""; })(); var funcToString = funcProto.toString; var hasOwnProperty = objectProto.hasOwnProperty; var objectToString = objectProto.toString; var reIsNative = RegExp( "^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" ); var Symbol2 = root.Symbol; var propertyIsEnumerable = objectProto.propertyIsEnumerable; var splice = arrayProto.splice; var spreadableSymbol = Symbol2 ? Symbol2.isConcatSpreadable : void 0; var nativeMax = Math.max; var Map2 = getNative(root, "Map"); var nativeCreate = getNative(Object, "create"); function Hash(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(Hash, "Hash"); function hashClear() { this.__data__ = nativeCreate ? nativeCreate(null) : {}; } __name(hashClear, "hashClear"); function hashDelete(key) { return this.has(key) && delete this.__data__[key]; } __name(hashDelete, "hashDelete"); function hashGet(key) { var data = this.__data__; if (nativeCreate) { var result = data[key]; return result === HASH_UNDEFINED ? void 0 : result; } return hasOwnProperty.call(data, key) ? data[key] : void 0; } __name(hashGet, "hashGet"); function hashHas(key) { var data = this.__data__; return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key); } __name(hashHas, "hashHas"); function hashSet(key, value) { var data = this.__data__; data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value; return this; } __name(hashSet, "hashSet"); Hash.prototype.clear = hashClear; Hash.prototype["delete"] = hashDelete; Hash.prototype.get = hashGet; Hash.prototype.has = hashHas; Hash.prototype.set = hashSet; function ListCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(ListCache, "ListCache"); function listCacheClear() { this.__data__ = []; } __name(listCacheClear, "listCacheClear"); function listCacheDelete(key) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { return false; } var lastIndex = data.length - 1; if (index == lastIndex) { data.pop(); } else { splice.call(data, index, 1); } return true; } __name(listCacheDelete, "listCacheDelete"); function listCacheGet(key) { var data = this.__data__, index = assocIndexOf(data, key); return index < 0 ? void 0 : data[index][1]; } __name(listCacheGet, "listCacheGet"); function listCacheHas(key) { return assocIndexOf(this.__data__, key) > -1; } __name(listCacheHas, "listCacheHas"); function listCacheSet(key, value) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { data.push([key, value]); } else { data[index][1] = value; } return this; } __name(listCacheSet, "listCacheSet"); ListCache.prototype.clear = listCacheClear; ListCache.prototype["delete"] = listCacheDelete; ListCache.prototype.get = listCacheGet; ListCache.prototype.has = listCacheHas; ListCache.prototype.set = listCacheSet; function MapCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(MapCache, "MapCache"); function mapCacheClear() { this.__data__ = { "hash": new Hash(), "map": new (Map2 || ListCache)(), "string": new Hash() }; } __name(mapCacheClear, "mapCacheClear"); function mapCacheDelete(key) { return getMapData(this, key)["delete"](key); } __name(mapCacheDelete, "mapCacheDelete"); function mapCacheGet(key) { return getMapData(this, key).get(key); } __name(mapCacheGet, "mapCacheGet"); function mapCacheHas(key) { return getMapData(this, key).has(key); } __name(mapCacheHas, "mapCacheHas"); function mapCacheSet(key, value) { getMapData(this, key).set(key, value); return this; } __name(mapCacheSet, "mapCacheSet"); MapCache.prototype.clear = mapCacheClear; MapCache.prototype["delete"] = mapCacheDelete; MapCache.prototype.get = mapCacheGet; MapCache.prototype.has = mapCacheHas; MapCache.prototype.set = mapCacheSet; function SetCache(values) { var index = -1, length = values ? values.length : 0; this.__data__ = new MapCache(); while (++index < length) { this.add(values[index]); } } __name(SetCache, "SetCache"); function setCacheAdd(value) { this.__data__.set(value, HASH_UNDEFINED); return this; } __name(setCacheAdd, "setCacheAdd"); function setCacheHas(value) { return this.__data__.has(value); } __name(setCacheHas, "setCacheHas"); SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; SetCache.prototype.has = setCacheHas; function assocIndexOf(array, key) { var length = array.length; while (length--) { if (eq(array[length][0], key)) { return length; } } return -1; } __name(assocIndexOf, "assocIndexOf"); function baseDifference(array, values, iteratee, comparator) { var index = -1, includes = arrayIncludes, isCommon = true, length = array.length, result = [], valuesLength = values.length; if (!length) { return result; } if (iteratee) { values = arrayMap(values, baseUnary(iteratee)); } if (comparator) { includes = arrayIncludesWith; isCommon = false; } else if (values.length >= LARGE_ARRAY_SIZE) { includes = cacheHas; isCommon = false; values = new SetCache(values); } outer: while (++index < length) { var value = array[index], computed = iteratee ? iteratee(value) : value; value = comparator || value !== 0 ? value : 0; if (isCommon && computed === computed) { var valuesIndex = valuesLength; while (valuesIndex--) { if (values[valuesIndex] === computed) { continue outer; } } result.push(value); } else if (!includes(values, computed, comparator)) { result.push(value); } } return result; } __name(baseDifference, "baseDifference"); function baseFlatten(array, depth, predicate, isStrict, result) { var index = -1, length = array.length; predicate || (predicate = isFlattenable); result || (result = []); while (++index < length) { var value = array[index]; if (depth > 0 && predicate(value)) { if (depth > 1) { baseFlatten(value, depth - 1, predicate, isStrict, result); } else { arrayPush(result, value); } } else if (!isStrict) { result[result.length] = value; } } return result; } __name(baseFlatten, "baseFlatten"); function baseIsNative(value) { if (!isObject2(value) || isMasked(value)) { return false; } var pattern = isFunction(value) || isHostObject(value) ? reIsNative : reIsHostCtor; return pattern.test(toSource(value)); } __name(baseIsNative, "baseIsNative"); function baseRest(func, start) { start = nativeMax(start === void 0 ? func.length - 1 : start, 0); return function() { var args = arguments, index = -1, length = nativeMax(args.length - start, 0), array = Array(length); while (++index < length) { array[index] = args[start + index]; } index = -1; var otherArgs = Array(start + 1); while (++index < start) { otherArgs[index] = args[index]; } otherArgs[start] = array; return apply(func, this, otherArgs); }; } __name(baseRest, "baseRest"); function getMapData(map, key) { var data = map.__data__; return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; } __name(getMapData, "getMapData"); function getNative(object, key) { var value = getValue(object, key); return baseIsNative(value) ? value : void 0; } __name(getNative, "getNative"); function isFlattenable(value) { return isArray(value) || isArguments(value) || !!(spreadableSymbol && value && value[spreadableSymbol]); } __name(isFlattenable, "isFlattenable"); function isKeyable(value) { var type = typeof value; return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null; } __name(isKeyable, "isKeyable"); function isMasked(func) { return !!maskSrcKey && maskSrcKey in func; } __name(isMasked, "isMasked"); function toSource(func) { if (func != null) { try { return funcToString.call(func); } catch (e) { } try { return func + ""; } catch (e) { } } return ""; } __name(toSource, "toSource"); var difference = baseRest(function(array, values) { return isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true)) : []; }); function eq(value, other) { return value === other || value !== value && other !== other; } __name(eq, "eq"); function isArguments(value) { return isArrayLikeObject(value) && hasOwnProperty.call(value, "callee") && (!propertyIsEnumerable.call(value, "callee") || objectToString.call(value) == argsTag); } __name(isArguments, "isArguments"); var isArray = Array.isArray; function isArrayLike(value) { return value != null && isLength(value.length) && !isFunction(value); } __name(isArrayLike, "isArrayLike"); function isArrayLikeObject(value) { return isObjectLike(value) && isArrayLike(value); } __name(isArrayLikeObject, "isArrayLikeObject"); function isFunction(value) { var tag = isObject2(value) ? objectToString.call(value) : ""; return tag == funcTag || tag == genTag; } __name(isFunction, "isFunction"); function isLength(value) { return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; } __name(isLength, "isLength"); function isObject2(value) { var type = typeof value; return !!value && (type == "object" || type == "function"); } __name(isObject2, "isObject"); function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); module2.exports = difference; } }); // ../../node_modules/.pnpm/lodash.union@4.6.0/node_modules/lodash.union/index.js var require_lodash20 = __commonJS({ "../../node_modules/.pnpm/lodash.union@4.6.0/node_modules/lodash.union/index.js"(exports2, module2) { var LARGE_ARRAY_SIZE = 200; var HASH_UNDEFINED = "__lodash_hash_undefined__"; var INFINITY = 1 / 0; var MAX_SAFE_INTEGER = 9007199254740991; var argsTag = "[object Arguments]"; var funcTag = "[object Function]"; var genTag = "[object GeneratorFunction]"; var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; var reIsHostCtor = /^\[object .+?Constructor\]$/; var freeGlobal = typeof global == "object" && global && global.Object === Object && global; var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = freeGlobal || freeSelf || Function("return this")(); function apply(func, thisArg, args) { switch (args.length) { case 0: return func.call(thisArg); case 1: return func.call(thisArg, args[0]); case 2: return func.call(thisArg, args[0], args[1]); case 3: return func.call(thisArg, args[0], args[1], args[2]); } return func.apply(thisArg, args); } __name(apply, "apply"); function arrayIncludes(array, value) { var length = array ? array.length : 0; return !!length && baseIndexOf(array, value, 0) > -1; } __name(arrayIncludes, "arrayIncludes"); function arrayIncludesWith(array, value, comparator) { var index = -1, length = array ? array.length : 0; while (++index < length) { if (comparator(value, array[index])) { return true; } } return false; } __name(arrayIncludesWith, "arrayIncludesWith"); function arrayPush(array, values) { var index = -1, length = values.length, offset = array.length; while (++index < length) { array[offset + index] = values[index]; } return array; } __name(arrayPush, "arrayPush"); function baseFindIndex(array, predicate, fromIndex, fromRight) { var length = array.length, index = fromIndex + (fromRight ? 1 : -1); while (fromRight ? index-- : ++index < length) { if (predicate(array[index], index, array)) { return index; } } return -1; } __name(baseFindIndex, "baseFindIndex"); function baseIndexOf(array, value, fromIndex) { if (value !== value) { return baseFindIndex(array, baseIsNaN, fromIndex); } var index = fromIndex - 1, length = array.length; while (++index < length) { if (array[index] === value) { return index; } } return -1; } __name(baseIndexOf, "baseIndexOf"); function baseIsNaN(value) { return value !== value; } __name(baseIsNaN, "baseIsNaN"); function cacheHas(cache, key) { return cache.has(key); } __name(cacheHas, "cacheHas"); function getValue(object, key) { return object == null ? void 0 : object[key]; } __name(getValue, "getValue"); function isHostObject(value) { var result = false; if (value != null && typeof value.toString != "function") { try { result = !!(value + ""); } catch (e) { } } return result; } __name(isHostObject, "isHostObject"); function setToArray(set) { var index = -1, result = Array(set.size); set.forEach(function(value) { result[++index] = value; }); return result; } __name(setToArray, "setToArray"); var arrayProto = Array.prototype; var funcProto = Function.prototype; var objectProto = Object.prototype; var coreJsData = root["__core-js_shared__"]; var maskSrcKey = (function() { var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ""); return uid ? "Symbol(src)_1." + uid : ""; })(); var funcToString = funcProto.toString; var hasOwnProperty = objectProto.hasOwnProperty; var objectToString = objectProto.toString; var reIsNative = RegExp( "^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" ); var Symbol2 = root.Symbol; var propertyIsEnumerable = objectProto.propertyIsEnumerable; var splice = arrayProto.splice; var spreadableSymbol = Symbol2 ? Symbol2.isConcatSpreadable : void 0; var nativeMax = Math.max; var Map2 = getNative(root, "Map"); var Set2 = getNative(root, "Set"); var nativeCreate = getNative(Object, "create"); function Hash(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(Hash, "Hash"); function hashClear() { this.__data__ = nativeCreate ? nativeCreate(null) : {}; } __name(hashClear, "hashClear"); function hashDelete(key) { return this.has(key) && delete this.__data__[key]; } __name(hashDelete, "hashDelete"); function hashGet(key) { var data = this.__data__; if (nativeCreate) { var result = data[key]; return result === HASH_UNDEFINED ? void 0 : result; } return hasOwnProperty.call(data, key) ? data[key] : void 0; } __name(hashGet, "hashGet"); function hashHas(key) { var data = this.__data__; return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key); } __name(hashHas, "hashHas"); function hashSet(key, value) { var data = this.__data__; data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value; return this; } __name(hashSet, "hashSet"); Hash.prototype.clear = hashClear; Hash.prototype["delete"] = hashDelete; Hash.prototype.get = hashGet; Hash.prototype.has = hashHas; Hash.prototype.set = hashSet; function ListCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(ListCache, "ListCache"); function listCacheClear() { this.__data__ = []; } __name(listCacheClear, "listCacheClear"); function listCacheDelete(key) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { return false; } var lastIndex = data.length - 1; if (index == lastIndex) { data.pop(); } else { splice.call(data, index, 1); } return true; } __name(listCacheDelete, "listCacheDelete"); function listCacheGet(key) { var data = this.__data__, index = assocIndexOf(data, key); return index < 0 ? void 0 : data[index][1]; } __name(listCacheGet, "listCacheGet"); function listCacheHas(key) { return assocIndexOf(this.__data__, key) > -1; } __name(listCacheHas, "listCacheHas"); function listCacheSet(key, value) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { data.push([key, value]); } else { data[index][1] = value; } return this; } __name(listCacheSet, "listCacheSet"); ListCache.prototype.clear = listCacheClear; ListCache.prototype["delete"] = listCacheDelete; ListCache.prototype.get = listCacheGet; ListCache.prototype.has = listCacheHas; ListCache.prototype.set = listCacheSet; function MapCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } __name(MapCache, "MapCache"); function mapCacheClear() { this.__data__ = { "hash": new Hash(), "map": new (Map2 || ListCache)(), "string": new Hash() }; } __name(mapCacheClear, "mapCacheClear"); function mapCacheDelete(key) { return getMapData(this, key)["delete"](key); } __name(mapCacheDelete, "mapCacheDelete"); function mapCacheGet(key) { return getMapData(this, key).get(key); } __name(mapCacheGet, "mapCacheGet"); function mapCacheHas(key) { return getMapData(this, key).has(key); } __name(mapCacheHas, "mapCacheHas"); function mapCacheSet(key, value) { getMapData(this, key).set(key, value); return this; } __name(mapCacheSet, "mapCacheSet"); MapCache.prototype.clear = mapCacheClear; MapCache.prototype["delete"] = mapCacheDelete; MapCache.prototype.get = mapCacheGet; MapCache.prototype.has = mapCacheHas; MapCache.prototype.set = mapCacheSet; function SetCache(values) { var index = -1, length = values ? values.length : 0; this.__data__ = new MapCache(); while (++index < length) { this.add(values[index]); } } __name(SetCache, "SetCache"); function setCacheAdd(value) { this.__data__.set(value, HASH_UNDEFINED); return this; } __name(setCacheAdd, "setCacheAdd"); function setCacheHas(value) { return this.__data__.has(value); } __name(setCacheHas, "setCacheHas"); SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; SetCache.prototype.has = setCacheHas; function assocIndexOf(array, key) { var length = array.length; while (length--) { if (eq(array[length][0], key)) { return length; } } return -1; } __name(assocIndexOf, "assocIndexOf"); function baseFlatten(array, depth, predicate, isStrict, result) { var index = -1, length = array.length; predicate || (predicate = isFlattenable); result || (result = []); while (++index < length) { var value = array[index]; if (depth > 0 && predicate(value)) { if (depth > 1) { baseFlatten(value, depth - 1, predicate, isStrict, result); } else { arrayPush(result, value); } } else if (!isStrict) { result[result.length] = value; } } return result; } __name(baseFlatten, "baseFlatten"); function baseIsNative(value) { if (!isObject2(value) || isMasked(value)) { return false; } var pattern = isFunction(value) || isHostObject(value) ? reIsNative : reIsHostCtor; return pattern.test(toSource(value)); } __name(baseIsNative, "baseIsNative"); function baseRest(func, start) { start = nativeMax(start === void 0 ? func.length - 1 : start, 0); return function() { var args = arguments, index = -1, length = nativeMax(args.length - start, 0), array = Array(length); while (++index < length) { array[index] = args[start + index]; } index = -1; var otherArgs = Array(start + 1); while (++index < start) { otherArgs[index] = args[index]; } otherArgs[start] = array; return apply(func, this, otherArgs); }; } __name(baseRest, "baseRest"); function baseUniq(array, iteratee, comparator) { var index = -1, includes = arrayIncludes, length = array.length, isCommon = true, result = [], seen = result; if (comparator) { isCommon = false; includes = arrayIncludesWith; } else if (length >= LARGE_ARRAY_SIZE) { var set = iteratee ? null : createSet(array); if (set) { return setToArray(set); } isCommon = false; includes = cacheHas; seen = new SetCache(); } else { seen = iteratee ? [] : result; } outer: while (++index < length) { var value = array[index], computed = iteratee ? iteratee(value) : value; value = comparator || value !== 0 ? value : 0; if (isCommon && computed === computed) { var seenIndex = seen.length; while (seenIndex--) { if (seen[seenIndex] === computed) { continue outer; } } if (iteratee) { seen.push(computed); } result.push(value); } else if (!includes(seen, computed, comparator)) { if (seen !== result) { seen.push(computed); } result.push(value); } } return result; } __name(baseUniq, "baseUniq"); var createSet = !(Set2 && 1 / setToArray(new Set2([, -0]))[1] == INFINITY) ? noop : function(values) { return new Set2(values); }; function getMapData(map, key) { var data = map.__data__; return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map; } __name(getMapData, "getMapData"); function getNative(object, key) { var value = getValue(object, key); return baseIsNative(value) ? value : void 0; } __name(getNative, "getNative"); function isFlattenable(value) { return isArray(value) || isArguments(value) || !!(spreadableSymbol && value && value[spreadableSymbol]); } __name(isFlattenable, "isFlattenable"); function isKeyable(value) { var type = typeof value; return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null; } __name(isKeyable, "isKeyable"); function isMasked(func) { return !!maskSrcKey && maskSrcKey in func; } __name(isMasked, "isMasked"); function toSource(func) { if (func != null) { try { return funcToString.call(func); } catch (e) { } try { return func + ""; } catch (e) { } } return ""; } __name(toSource, "toSource"); var union = baseRest(function(arrays) { return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true)); }); function eq(value, other) { return value === other || value !== value && other !== other; } __name(eq, "eq"); function isArguments(value) { return isArrayLikeObject(value) && hasOwnProperty.call(value, "callee") && (!propertyIsEnumerable.call(value, "callee") || objectToString.call(value) == argsTag); } __name(isArguments, "isArguments"); var isArray = Array.isArray; function isArrayLike(value) { return value != null && isLength(value.length) && !isFunction(value); } __name(isArrayLike, "isArrayLike"); function isArrayLikeObject(value) { return isObjectLike(value) && isArrayLike(value); } __name(isArrayLikeObject, "isArrayLikeObject"); function isFunction(value) { var tag = isObject2(value) ? objectToString.call(value) : ""; return tag == funcTag || tag == genTag; } __name(isFunction, "isFunction"); function isLength(value) { return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; } __name(isLength, "isLength"); function isObject2(value) { var type = typeof value; return !!value && (type == "object" || type == "function"); } __name(isObject2, "isObject"); function isObjectLike(value) { return !!value && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); function noop() { } __name(noop, "noop"); module2.exports = union; } }); // ../../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/old.js var require_old2 = __commonJS({ "../../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/old.js"(exports2) { var pathModule = require("path"); var isWindows = process.platform === "win32"; var fs = require("fs"); var DEBUG = process.env.NODE_DEBUG && /fs/.test(process.env.NODE_DEBUG); function rethrow() { var callback; if (DEBUG) { var backtrace = new Error(); callback = debugCallback; } else callback = missingCallback; return callback; function debugCallback(err) { if (err) { backtrace.message = err.message; err = backtrace; missingCallback(err); } } __name(debugCallback, "debugCallback"); function missingCallback(err) { if (err) { if (process.throwDeprecation) throw err; else if (!process.noDeprecation) { var msg = "fs: missing callback " + (err.stack || err.message); if (process.traceDeprecation) console.trace(msg); else console.error(msg); } } } __name(missingCallback, "missingCallback"); } __name(rethrow, "rethrow"); function maybeCallback(cb) { return typeof cb === "function" ? cb : rethrow(); } __name(maybeCallback, "maybeCallback"); var normalize = pathModule.normalize; if (isWindows) { nextPartRe = /(.*?)(?:[\/\\]+|$)/g; } else { nextPartRe = /(.*?)(?:[\/]+|$)/g; } var nextPartRe; if (isWindows) { splitRootRe = /^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/; } else { splitRootRe = /^[\/]*/; } var splitRootRe; exports2.realpathSync = /* @__PURE__ */ __name(function realpathSync(p, cache) { p = pathModule.resolve(p); if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { return cache[p]; } var original = p, seenLinks = {}, knownHard = {}; var pos; var current; var base; var previous; start(); function start() { var m = splitRootRe.exec(p); pos = m[0].length; current = m[0]; base = m[0]; previous = ""; if (isWindows && !knownHard[base]) { fs.lstatSync(base); knownHard[base] = true; } } __name(start, "start"); while (pos < p.length) { nextPartRe.lastIndex = pos; var result = nextPartRe.exec(p); previous = current; current += result[0]; base = previous + result[1]; pos = nextPartRe.lastIndex; if (knownHard[base] || cache && cache[base] === base) { continue; } var resolvedLink; if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { resolvedLink = cache[base]; } else { var stat = fs.lstatSync(base); if (!stat.isSymbolicLink()) { knownHard[base] = true; if (cache) cache[base] = base; continue; } var linkTarget = null; if (!isWindows) { var id = stat.dev.toString(32) + ":" + stat.ino.toString(32); if (seenLinks.hasOwnProperty(id)) { linkTarget = seenLinks[id]; } } if (linkTarget === null) { fs.statSync(base); linkTarget = fs.readlinkSync(base); } resolvedLink = pathModule.resolve(previous, linkTarget); if (cache) cache[base] = resolvedLink; if (!isWindows) seenLinks[id] = linkTarget; } p = pathModule.resolve(resolvedLink, p.slice(pos)); start(); } if (cache) cache[original] = p; return p; }, "realpathSync"); exports2.realpath = /* @__PURE__ */ __name(function realpath(p, cache, cb) { if (typeof cb !== "function") { cb = maybeCallback(cache); cache = null; } p = pathModule.resolve(p); if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { return process.nextTick(cb.bind(null, null, cache[p])); } var original = p, seenLinks = {}, knownHard = {}; var pos; var current; var base; var previous; start(); function start() { var m = splitRootRe.exec(p); pos = m[0].length; current = m[0]; base = m[0]; previous = ""; if (isWindows && !knownHard[base]) { fs.lstat(base, function(err) { if (err) return cb(err); knownHard[base] = true; LOOP(); }); } else { process.nextTick(LOOP); } } __name(start, "start"); function LOOP() { if (pos >= p.length) { if (cache) cache[original] = p; return cb(null, p); } nextPartRe.lastIndex = pos; var result = nextPartRe.exec(p); previous = current; current += result[0]; base = previous + result[1]; pos = nextPartRe.lastIndex; if (knownHard[base] || cache && cache[base] === base) { return process.nextTick(LOOP); } if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { return gotResolvedLink(cache[base]); } return fs.lstat(base, gotStat); } __name(LOOP, "LOOP"); function gotStat(err, stat) { if (err) return cb(err); if (!stat.isSymbolicLink()) { knownHard[base] = true; if (cache) cache[base] = base; return process.nextTick(LOOP); } if (!isWindows) { var id = stat.dev.toString(32) + ":" + stat.ino.toString(32); if (seenLinks.hasOwnProperty(id)) { return gotTarget(null, seenLinks[id], base); } } fs.stat(base, function(err2) { if (err2) return cb(err2); fs.readlink(base, function(err3, target) { if (!isWindows) seenLinks[id] = target; gotTarget(err3, target); }); }); } __name(gotStat, "gotStat"); function gotTarget(err, target, base2) { if (err) return cb(err); var resolvedLink = pathModule.resolve(previous, target); if (cache) cache[base2] = resolvedLink; gotResolvedLink(resolvedLink); } __name(gotTarget, "gotTarget"); function gotResolvedLink(resolvedLink) { p = pathModule.resolve(resolvedLink, p.slice(pos)); start(); } __name(gotResolvedLink, "gotResolvedLink"); }, "realpath"); } }); // ../../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/index.js var require_fs = __commonJS({ "../../node_modules/.pnpm/fs.realpath@1.0.0/node_modules/fs.realpath/index.js"(exports2, module2) { module2.exports = realpath; realpath.realpath = realpath; realpath.sync = realpathSync; realpath.realpathSync = realpathSync; realpath.monkeypatch = monkeypatch; realpath.unmonkeypatch = unmonkeypatch; var fs = require("fs"); var origRealpath = fs.realpath; var origRealpathSync = fs.realpathSync; var version2 = process.version; var ok = /^v[0-5]\./.test(version2); var old = require_old2(); function newError(er) { return er && er.syscall === "realpath" && (er.code === "ELOOP" || er.code === "ENOMEM" || er.code === "ENAMETOOLONG"); } __name(newError, "newError"); function realpath(p, cache, cb) { if (ok) { return origRealpath(p, cache, cb); } if (typeof cache === "function") { cb = cache; cache = null; } origRealpath(p, cache, function(er, result) { if (newError(er)) { old.realpath(p, cache, cb); } else { cb(er, result); } }); } __name(realpath, "realpath"); function realpathSync(p, cache) { if (ok) { return origRealpathSync(p, cache); } try { return origRealpathSync(p, cache); } catch (er) { if (newError(er)) { return old.realpathSync(p, cache); } else { throw er; } } } __name(realpathSync, "realpathSync"); function monkeypatch() { fs.realpath = realpath; fs.realpathSync = realpathSync; } __name(monkeypatch, "monkeypatch"); function unmonkeypatch() { fs.realpath = origRealpath; fs.realpathSync = origRealpathSync; } __name(unmonkeypatch, "unmonkeypatch"); } }); // ../../node_modules/.pnpm/concat-map@0.0.1/node_modules/concat-map/index.js var require_concat_map = __commonJS({ "../../node_modules/.pnpm/concat-map@0.0.1/node_modules/concat-map/index.js"(exports2, module2) { module2.exports = function(xs, fn) { var res = []; for (var i = 0; i < xs.length; i++) { var x = fn(xs[i], i); if (isArray(x)) res.push.apply(res, x); else res.push(x); } return res; }; var isArray = Array.isArray || function(xs) { return Object.prototype.toString.call(xs) === "[object Array]"; }; } }); // ../../node_modules/.pnpm/brace-expansion@1.1.18/node_modules/brace-expansion/index.js var require_brace_expansion2 = __commonJS({ "../../node_modules/.pnpm/brace-expansion@1.1.18/node_modules/brace-expansion/index.js"(exports2, module2) { var concatMap = require_concat_map(); var balanced = require_balanced_match(); module2.exports = expandTop; var escSlash = "\0SLASH" + Math.random() + "\0"; var escOpen = "\0OPEN" + Math.random() + "\0"; var escClose = "\0CLOSE" + Math.random() + "\0"; var escComma = "\0COMMA" + Math.random() + "\0"; var escPeriod = "\0PERIOD" + Math.random() + "\0"; var EXPANSION_MAX = 1e5; var EXPANSION_MAX_LENGTH = 4e6; function numeric(str) { return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0); } __name(numeric, "numeric"); function escapeBraces(str) { return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod); } __name(escapeBraces, "escapeBraces"); function unescapeBraces(str) { return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join("."); } __name(unescapeBraces, "unescapeBraces"); function parseCommaParts(str) { if (!str) return [""]; var parts = []; var m = balanced("{", "}", str); if (!m) return str.split(","); var pre = m.pre; var body = m.body; var post = m.post; var p = pre.split(","); p[p.length - 1] += "{" + body + "}"; var postParts = parseCommaParts(post); if (post.length) { p[p.length - 1] += postParts.shift(); p.push.apply(p, postParts); } parts.push.apply(parts, p); return parts; } __name(parseCommaParts, "parseCommaParts"); function expandTop(str, options) { if (!str) return []; options = options || {}; var max = options.max == null ? EXPANSION_MAX : options.max; var maxLength = options.maxLength == null ? EXPANSION_MAX_LENGTH : options.maxLength; if (str.substr(0, 2) === "{}") { str = "\\{\\}" + str.substr(2); } return expand(escapeBraces(str), max, maxLength, true).map(unescapeBraces); } __name(expandTop, "expandTop"); function embrace(str) { return "{" + str + "}"; } __name(embrace, "embrace"); function isPadded(el) { return /^-?0\d/.test(el); } __name(isPadded, "isPadded"); function lte(i, y) { return i <= y; } __name(lte, "lte"); function gte(i, y) { return i >= y; } __name(gte, "gte"); function combine(acc, base, pre, values, max, maxLength, dropEmpties, outBase) { var out = []; var length = 0; for (var a = 0; a < acc.length; a++) { for (var v = 0; v < values.length; v++) { if (out.length >= max) return out; var expansion = acc[a] + pre + values[v]; if (dropEmpties && expansion.length === base[a]) continue; if (length + expansion.length > maxLength) return out; out.push(expansion); outBase.push(base[a]); length += expansion.length; } } return out; } __name(combine, "combine"); function expandSequence(body, isAlphaSequence, max, maxLength) { var n = body.split(/\.\./); var N = []; if (n[0] === void 0 || n[1] === void 0) { return N; } var x = numeric(n[0]); var y = numeric(n[1]); var width = Math.max(n[0].length, n[1].length); var incr = n.length === 3 && n[2] !== void 0 ? Math.max(Math.abs(numeric(n[2])), 1) : 1; var test = lte; var reverse = y < x; if (reverse) { incr *= -1; test = gte; } var pad = n.some(isPadded); var length = 0; for (var i = x; test(i, y) && N.length < max; i += incr) { var c; if (isAlphaSequence) { c = String.fromCharCode(i); if (c === "\\") { c = ""; } } else { c = String(i); if (pad) { var need = width - c.length; if (need > 0) { var z = new Array(need + 1).join("0"); if (i < 0) { c = "-" + z + c.slice(1); } else { c = z + c; } } } } if (length + c.length > maxLength) break; N.push(c); length += c.length; } return N; } __name(expandSequence, "expandSequence"); function expand(str, max, maxLength, isTop) { var acc = [""]; var accBase = [0]; var dropEmpties = false; var firstGroup = true; var nextBase; for (; ; ) { var m = balanced("{", "}", str); if (!m) { return combine(acc, accBase, str, [""], max, maxLength, dropEmpties, []); } var pre = m.pre; if (/\$$/.test(pre)) { return combine(acc, accBase, str, [""], max, maxLength, dropEmpties, []); } var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); var isSequence = isNumericSequence || isAlphaSequence; var isOptions = m.body.indexOf(",") >= 0; if (!isSequence && !isOptions) { if (m.post.match(/,(?!,).*\}/)) { str = m.pre + "{" + m.body + escClose + m.post; isTop = true; firstGroup = true; dropEmpties = false; accBase = []; for (var b = 0; b < acc.length; b++) { accBase.push(acc[b].length); } continue; } return combine( acc, accBase, pre + "{" + m.body + "}" + m.post, [""], max, maxLength, dropEmpties, [] ); } if (firstGroup) { dropEmpties = isTop && !isSequence; firstGroup = false; } var values; if (isSequence) { values = expandSequence(m.body, isAlphaSequence, max, maxLength); } else { var n = parseCommaParts(m.body); if (n.length === 1 && n[0] !== void 0) { n = expand(n[0], max, maxLength, false).map(embrace); if (n.length === 1) { nextBase = []; acc = combine( acc, accBase, pre + n[0], [""], max, maxLength, dropEmpties && !m.post.length, nextBase ); accBase = nextBase; if (!m.post.length) break; str = m.post; continue; } } var dropsEmpties = dropEmpties && !m.post.length && !pre; for (var d = 0; dropsEmpties && d < acc.length; d++) { if (acc[d].length !== accBase[d]) { dropsEmpties = false; } } values = []; var valuesLength = 0; outer: for (var j = 0; j < n.length; j++) { var expanded = expand(n[j], max, maxLength, false); for (var k = 0; k < expanded.length; k++) { var v = expanded[k]; if (dropsEmpties && !v) continue; if (values.length >= max || valuesLength + v.length > maxLength) { break outer; } values.push(v); valuesLength += v.length; } } } nextBase = []; acc = combine( acc, accBase, pre, values, max, maxLength, dropEmpties && !m.post.length, nextBase ); accBase = nextBase; if (!m.post.length) break; str = m.post; } return acc; } __name(expand, "expand"); } }); // ../../node_modules/.pnpm/minimatch@3.1.5/node_modules/minimatch/minimatch.js var require_minimatch2 = __commonJS({ "../../node_modules/.pnpm/minimatch@3.1.5/node_modules/minimatch/minimatch.js"(exports2, module2) { module2.exports = minimatch; minimatch.Minimatch = Minimatch; var path = (function() { try { return require("path"); } catch (e) { } })() || { sep: "/" }; minimatch.sep = path.sep; var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}; var expand = require_brace_expansion2(); var plTypes = { "!": { open: "(?:(?!(?:", close: "))[^/]*?)" }, "?": { open: "(?:", close: ")?" }, "+": { open: "(?:", close: ")+" }, "*": { open: "(?:", close: ")*" }, "@": { open: "(?:", close: ")" } }; var qmark = "[^/]"; var star = qmark + "*?"; var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?"; var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?"; var reSpecials = charSet("().*{}+?[]^$\\!"); function charSet(s) { return s.split("").reduce(function(set, c) { set[c] = true; return set; }, {}); } __name(charSet, "charSet"); var slashSplit = /\/+/; minimatch.filter = filter; function filter(pattern, options) { options = options || {}; return function(p, i, list) { return minimatch(p, pattern, options); }; } __name(filter, "filter"); function ext(a, b) { b = b || {}; var t = {}; Object.keys(a).forEach(function(k) { t[k] = a[k]; }); Object.keys(b).forEach(function(k) { t[k] = b[k]; }); return t; } __name(ext, "ext"); minimatch.defaults = function(def) { if (!def || typeof def !== "object" || !Object.keys(def).length) { return minimatch; } var orig = minimatch; var m = /* @__PURE__ */ __name(function minimatch2(p, pattern, options) { return orig(p, pattern, ext(def, options)); }, "minimatch"); m.Minimatch = /* @__PURE__ */ __name(function Minimatch2(pattern, options) { return new orig.Minimatch(pattern, ext(def, options)); }, "Minimatch"); m.Minimatch.defaults = /* @__PURE__ */ __name(function defaults(options) { return orig.defaults(ext(def, options)).Minimatch; }, "defaults"); m.filter = /* @__PURE__ */ __name(function filter2(pattern, options) { return orig.filter(pattern, ext(def, options)); }, "filter"); m.defaults = /* @__PURE__ */ __name(function defaults(options) { return orig.defaults(ext(def, options)); }, "defaults"); m.makeRe = /* @__PURE__ */ __name(function makeRe2(pattern, options) { return orig.makeRe(pattern, ext(def, options)); }, "makeRe"); m.braceExpand = /* @__PURE__ */ __name(function braceExpand2(pattern, options) { return orig.braceExpand(pattern, ext(def, options)); }, "braceExpand"); m.match = function(list, pattern, options) { return orig.match(list, pattern, ext(def, options)); }; return m; }; Minimatch.defaults = function(def) { return minimatch.defaults(def).Minimatch; }; function minimatch(p, pattern, options) { assertValidPattern(pattern); if (!options) options = {}; if (!options.nocomment && pattern.charAt(0) === "#") { return false; } return new Minimatch(pattern, options).match(p); } __name(minimatch, "minimatch"); function Minimatch(pattern, options) { if (!(this instanceof Minimatch)) { return new Minimatch(pattern, options); } assertValidPattern(pattern); if (!options) options = {}; pattern = pattern.trim(); if (!options.allowWindowsEscape && path.sep !== "/") { pattern = pattern.split(path.sep).join("/"); } this.options = options; this.maxGlobstarRecursion = options.maxGlobstarRecursion !== void 0 ? options.maxGlobstarRecursion : 200; this.set = []; this.pattern = pattern; this.regexp = null; this.negate = false; this.comment = false; this.empty = false; this.partial = !!options.partial; this.make(); } __name(Minimatch, "Minimatch"); Minimatch.prototype.debug = function() { }; Minimatch.prototype.make = make; function make() { var pattern = this.pattern; var options = this.options; if (!options.nocomment && pattern.charAt(0) === "#") { this.comment = true; return; } if (!pattern) { this.empty = true; return; } this.parseNegate(); var set = this.globSet = this.braceExpand(); if (options.debug) this.debug = /* @__PURE__ */ __name(function debug() { console.error.apply(console, arguments); }, "debug"); this.debug(this.pattern, set); set = this.globParts = set.map(function(s) { return s.split(slashSplit); }); this.debug(this.pattern, set); set = set.map(function(s, si, set2) { return s.map(this.parse, this); }, this); this.debug(this.pattern, set); set = set.filter(function(s) { return s.indexOf(false) === -1; }); this.debug(this.pattern, set); this.set = set; } __name(make, "make"); Minimatch.prototype.parseNegate = parseNegate; function parseNegate() { var pattern = this.pattern; var negate = false; var options = this.options; var negateOffset = 0; if (options.nonegate) return; for (var i = 0, l2 = pattern.length; i < l2 && pattern.charAt(i) === "!"; i++) { negate = !negate; negateOffset++; } if (negateOffset) this.pattern = pattern.substr(negateOffset); this.negate = negate; } __name(parseNegate, "parseNegate"); minimatch.braceExpand = function(pattern, options) { return braceExpand(pattern, options); }; Minimatch.prototype.braceExpand = braceExpand; function braceExpand(pattern, options) { if (!options) { if (this instanceof Minimatch) { options = this.options; } else { options = {}; } } pattern = typeof pattern === "undefined" ? this.pattern : pattern; assertValidPattern(pattern); if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) { return [pattern]; } return expand(pattern); } __name(braceExpand, "braceExpand"); var MAX_PATTERN_LENGTH = 1024 * 64; var assertValidPattern = /* @__PURE__ */ __name(function(pattern) { if (typeof pattern !== "string") { throw new TypeError("invalid pattern"); } if (pattern.length > MAX_PATTERN_LENGTH) { throw new TypeError("pattern is too long"); } }, "assertValidPattern"); Minimatch.prototype.parse = parse2; var SUBPARSE = {}; function parse2(pattern, isSub) { assertValidPattern(pattern); var options = this.options; if (pattern === "**") { if (!options.noglobstar) return GLOBSTAR; else pattern = "*"; } if (pattern === "") return ""; var re = ""; var hasMagic = !!options.nocase; var escaping = false; var patternListStack = []; var negativeLists = []; var stateChar; var inClass = false; var reClassStart = -1; var classStart = -1; var patternStart = pattern.charAt(0) === "." ? "" : options.dot ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)"; var self2 = this; function clearStateChar() { if (stateChar) { switch (stateChar) { case "*": re += star; hasMagic = true; break; case "?": re += qmark; hasMagic = true; break; default: re += "\\" + stateChar; break; } self2.debug("clearStateChar %j %j", stateChar, re); stateChar = false; } } __name(clearStateChar, "clearStateChar"); for (var i = 0, len = pattern.length, c; i < len && (c = pattern.charAt(i)); i++) { this.debug("%s %s %s %j", pattern, i, re, c); if (escaping && reSpecials[c]) { re += "\\" + c; escaping = false; continue; } switch (c) { /* istanbul ignore next */ case "/": { return false; } case "\\": clearStateChar(); escaping = true; continue; // the various stateChar values // for the "extglob" stuff. case "?": case "*": case "+": case "@": case "!": this.debug("%s %s %s %j <-- stateChar", pattern, i, re, c); if (inClass) { this.debug(" in class"); if (c === "!" && i === classStart + 1) c = "^"; re += c; continue; } if (c === "*" && stateChar === "*") continue; self2.debug("call clearStateChar %j", stateChar); clearStateChar(); stateChar = c; if (options.noext) clearStateChar(); continue; case "(": if (inClass) { re += "("; continue; } if (!stateChar) { re += "\\("; continue; } patternListStack.push({ type: stateChar, start: i - 1, reStart: re.length, open: plTypes[stateChar].open, close: plTypes[stateChar].close }); re += stateChar === "!" ? "(?:(?!(?:" : "(?:"; this.debug("plType %j %j", stateChar, re); stateChar = false; continue; case ")": if (inClass || !patternListStack.length) { re += "\\)"; continue; } clearStateChar(); hasMagic = true; var pl = patternListStack.pop(); re += pl.close; if (pl.type === "!") { negativeLists.push(pl); } pl.reEnd = re.length; continue; case "|": if (inClass || !patternListStack.length || escaping) { re += "\\|"; escaping = false; continue; } clearStateChar(); re += "|"; continue; // these are mostly the same in regexp and glob case "[": clearStateChar(); if (inClass) { re += "\\" + c; continue; } inClass = true; classStart = i; reClassStart = re.length; re += c; continue; case "]": if (i === classStart + 1 || !inClass) { re += "\\" + c; escaping = false; continue; } var cs = pattern.substring(classStart + 1, i); try { RegExp("[" + cs + "]"); } catch (er) { var sp = this.parse(cs, SUBPARSE); re = re.substr(0, reClassStart) + "\\[" + sp[0] + "\\]"; hasMagic = hasMagic || sp[1]; inClass = false; continue; } hasMagic = true; inClass = false; re += c; continue; default: clearStateChar(); if (escaping) { escaping = false; } else if (reSpecials[c] && !(c === "^" && inClass)) { re += "\\"; } re += c; } } if (inClass) { cs = pattern.substr(classStart + 1); sp = this.parse(cs, SUBPARSE); re = re.substr(0, reClassStart) + "\\[" + sp[0]; hasMagic = hasMagic || sp[1]; } for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) { var tail = re.slice(pl.reStart + pl.open.length); this.debug("setting tail", re, pl); tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, function(_2, $1, $2) { if (!$2) { $2 = "\\"; } return $1 + $1 + $2 + "|"; }); this.debug("tail=%j\n %s", tail, tail, pl, re); var t = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type; hasMagic = true; re = re.slice(0, pl.reStart) + t + "\\(" + tail; } clearStateChar(); if (escaping) { re += "\\\\"; } var addPatternStart = false; switch (re.charAt(0)) { case "[": case ".": case "(": addPatternStart = true; } for (var n = negativeLists.length - 1; n > -1; n--) { var nl = negativeLists[n]; var nlBefore = re.slice(0, nl.reStart); var nlFirst = re.slice(nl.reStart, nl.reEnd - 8); var nlLast = re.slice(nl.reEnd - 8, nl.reEnd); var nlAfter = re.slice(nl.reEnd); nlLast += nlAfter; var openParensBefore = nlBefore.split("(").length - 1; var cleanAfter = nlAfter; for (i = 0; i < openParensBefore; i++) { cleanAfter = cleanAfter.replace(/\)[+*?]?/, ""); } nlAfter = cleanAfter; var dollar = ""; if (nlAfter === "" && isSub !== SUBPARSE) { dollar = "$"; } var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast; re = newRe; } if (re !== "" && hasMagic) { re = "(?=.)" + re; } if (addPatternStart) { re = patternStart + re; } if (isSub === SUBPARSE) { return [re, hasMagic]; } if (!hasMagic) { return globUnescape(pattern); } var flags = options.nocase ? "i" : ""; try { var regExp = new RegExp("^" + re + "$", flags); } catch (er) { return new RegExp("$."); } regExp._glob = pattern; regExp._src = re; return regExp; } __name(parse2, "parse"); minimatch.makeRe = function(pattern, options) { return new Minimatch(pattern, options || {}).makeRe(); }; Minimatch.prototype.makeRe = makeRe; function makeRe() { if (this.regexp || this.regexp === false) return this.regexp; var set = this.set; if (!set.length) { this.regexp = false; return this.regexp; } var options = this.options; var twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot; var flags = options.nocase ? "i" : ""; var re = set.map(function(pattern) { return pattern.map(function(p) { return p === GLOBSTAR ? twoStar : typeof p === "string" ? regExpEscape(p) : p._src; }).join("\\/"); }).join("|"); re = "^(?:" + re + ")$"; if (this.negate) re = "^(?!" + re + ").*$"; try { this.regexp = new RegExp(re, flags); } catch (ex) { this.regexp = false; } return this.regexp; } __name(makeRe, "makeRe"); minimatch.match = function(list, pattern, options) { options = options || {}; var mm = new Minimatch(pattern, options); list = list.filter(function(f) { return mm.match(f); }); if (mm.options.nonull && !list.length) { list.push(pattern); } return list; }; Minimatch.prototype.match = /* @__PURE__ */ __name(function match(f, partial) { if (typeof partial === "undefined") partial = this.partial; this.debug("match", f, this.pattern); if (this.comment) return false; if (this.empty) return f === ""; if (f === "/" && partial) return true; var options = this.options; if (path.sep !== "/") { f = f.split(path.sep).join("/"); } f = f.split(slashSplit); this.debug(this.pattern, "split", f); var set = this.set; this.debug(this.pattern, "set", set); var filename; var i; for (i = f.length - 1; i >= 0; i--) { filename = f[i]; if (filename) break; } for (i = 0; i < set.length; i++) { var pattern = set[i]; var file2 = f; if (options.matchBase && pattern.length === 1) { file2 = [filename]; } var hit = this.matchOne(file2, pattern, partial); if (hit) { if (options.flipNegate) return true; return !this.negate; } } if (options.flipNegate) return false; return this.negate; }, "match"); Minimatch.prototype.matchOne = function(file2, pattern, partial) { if (pattern.indexOf(GLOBSTAR) !== -1) { return this._matchGlobstar(file2, pattern, partial, 0, 0); } return this._matchOne(file2, pattern, partial, 0, 0); }; Minimatch.prototype._matchGlobstar = function(file2, pattern, partial, fileIndex, patternIndex) { var i; var firstgs = -1; for (i = patternIndex; i < pattern.length; i++) { if (pattern[i] === GLOBSTAR) { firstgs = i; break; } } var lastgs = -1; for (i = pattern.length - 1; i >= 0; i--) { if (pattern[i] === GLOBSTAR) { lastgs = i; break; } } var head = pattern.slice(patternIndex, firstgs); var body = partial ? pattern.slice(firstgs + 1) : pattern.slice(firstgs + 1, lastgs); var tail = partial ? [] : pattern.slice(lastgs + 1); if (head.length) { var fileHead = file2.slice(fileIndex, fileIndex + head.length); if (!this._matchOne(fileHead, head, partial, 0, 0)) { return false; } fileIndex += head.length; } var fileTailMatch = 0; if (tail.length) { if (tail.length + fileIndex > file2.length) return false; var tailStart = file2.length - tail.length; if (this._matchOne(file2, tail, partial, tailStart, 0)) { fileTailMatch = tail.length; } else { if (file2[file2.length - 1] !== "" || fileIndex + tail.length === file2.length) { return false; } tailStart--; if (!this._matchOne(file2, tail, partial, tailStart, 0)) { return false; } fileTailMatch = tail.length + 1; } } if (!body.length) { var sawSome = !!fileTailMatch; for (i = fileIndex; i < file2.length - fileTailMatch; i++) { var f = String(file2[i]); sawSome = true; if (f === "." || f === ".." || !this.options.dot && f.charAt(0) === ".") { return false; } } return partial || sawSome; } var bodySegments = [[[], 0]]; var currentBody = bodySegments[0]; var nonGsParts = 0; var nonGsPartsSums = [0]; for (var bi = 0; bi < body.length; bi++) { var b = body[bi]; if (b === GLOBSTAR) { nonGsPartsSums.push(nonGsParts); currentBody = [[], 0]; bodySegments.push(currentBody); } else { currentBody[0].push(b); nonGsParts++; } } var idx = bodySegments.length - 1; var fileLength = file2.length - fileTailMatch; for (var si = 0; si < bodySegments.length; si++) { bodySegments[si][1] = fileLength - (nonGsPartsSums[idx--] + bodySegments[si][0].length); } return !!this._matchGlobStarBodySections( file2, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch ); }; Minimatch.prototype._matchGlobStarBodySections = function(file2, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) { var bs = bodySegments[bodyIndex]; if (!bs) { for (var i = fileIndex; i < file2.length; i++) { sawTail = true; var f = file2[i]; if (f === "." || f === ".." || !this.options.dot && f.charAt(0) === ".") { return false; } } return sawTail; } var body = bs[0]; var after = bs[1]; while (fileIndex <= after) { var m = this._matchOne( file2.slice(0, fileIndex + body.length), body, partial, fileIndex, 0 ); if (m && globStarDepth < this.maxGlobstarRecursion) { var sub = this._matchGlobStarBodySections( file2, bodySegments, fileIndex + body.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail ); if (sub !== false) { return sub; } } var f = file2[fileIndex]; if (f === "." || f === ".." || !this.options.dot && f.charAt(0) === ".") { return false; } fileIndex++; } return partial || null; }; Minimatch.prototype._matchOne = function(file2, pattern, partial, fileIndex, patternIndex) { var fi, pi, fl, pl; for (fi = fileIndex, pi = patternIndex, fl = file2.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) { this.debug("matchOne loop"); var p = pattern[pi]; var f = file2[fi]; this.debug(pattern, p, f); if (p === false || p === GLOBSTAR) return false; var hit; if (typeof p === "string") { hit = f === p; this.debug("string match", p, f, hit); } else { hit = f.match(p); this.debug("pattern match", p, f, hit); } if (!hit) return false; } if (fi === fl && pi === pl) { return true; } else if (fi === fl) { return partial; } else if (pi === pl) { return fi === fl - 1 && file2[fi] === ""; } throw new Error("wtf?"); }; function globUnescape(s) { return s.replace(/\\(.)/g, "$1"); } __name(globUnescape, "globUnescape"); function regExpEscape(s) { return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); } __name(regExpEscape, "regExpEscape"); } }); // ../../node_modules/.pnpm/path-is-absolute@1.0.1/node_modules/path-is-absolute/index.js var require_path_is_absolute = __commonJS({ "../../node_modules/.pnpm/path-is-absolute@1.0.1/node_modules/path-is-absolute/index.js"(exports2, module2) { "use strict"; function posix(path) { return path.charAt(0) === "/"; } __name(posix, "posix"); function win32(path) { var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/; var result = splitDeviceRe.exec(path); var device = result[1] || ""; var isUnc = Boolean(device && device.charAt(1) !== ":"); return Boolean(result[2] || isUnc); } __name(win32, "win32"); module2.exports = process.platform === "win32" ? win32 : posix; module2.exports.posix = posix; module2.exports.win32 = win32; } }); // ../../node_modules/.pnpm/glob@7.2.3/node_modules/glob/common.js var require_common5 = __commonJS({ "../../node_modules/.pnpm/glob@7.2.3/node_modules/glob/common.js"(exports2) { exports2.setopts = setopts; exports2.ownProp = ownProp; exports2.makeAbs = makeAbs; exports2.finish = finish; exports2.mark = mark; exports2.isIgnored = isIgnored; exports2.childrenIgnored = childrenIgnored; function ownProp(obj2, field) { return Object.prototype.hasOwnProperty.call(obj2, field); } __name(ownProp, "ownProp"); var fs = require("fs"); var path = require("path"); var minimatch = require_minimatch2(); var isAbsolute = require_path_is_absolute(); var Minimatch = minimatch.Minimatch; function alphasort(a, b) { return a.localeCompare(b, "en"); } __name(alphasort, "alphasort"); function setupIgnores(self2, options) { self2.ignore = options.ignore || []; if (!Array.isArray(self2.ignore)) self2.ignore = [self2.ignore]; if (self2.ignore.length) { self2.ignore = self2.ignore.map(ignoreMap); } } __name(setupIgnores, "setupIgnores"); function ignoreMap(pattern) { var gmatcher = null; if (pattern.slice(-3) === "/**") { var gpattern = pattern.replace(/(\/\*\*)+$/, ""); gmatcher = new Minimatch(gpattern, { dot: true }); } return { matcher: new Minimatch(pattern, { dot: true }), gmatcher }; } __name(ignoreMap, "ignoreMap"); function setopts(self2, pattern, options) { if (!options) options = {}; if (options.matchBase && -1 === pattern.indexOf("/")) { if (options.noglobstar) { throw new Error("base matching requires globstar"); } pattern = "**/" + pattern; } self2.silent = !!options.silent; self2.pattern = pattern; self2.strict = options.strict !== false; self2.realpath = !!options.realpath; self2.realpathCache = options.realpathCache || /* @__PURE__ */ Object.create(null); self2.follow = !!options.follow; self2.dot = !!options.dot; self2.mark = !!options.mark; self2.nodir = !!options.nodir; if (self2.nodir) self2.mark = true; self2.sync = !!options.sync; self2.nounique = !!options.nounique; self2.nonull = !!options.nonull; self2.nosort = !!options.nosort; self2.nocase = !!options.nocase; self2.stat = !!options.stat; self2.noprocess = !!options.noprocess; self2.absolute = !!options.absolute; self2.fs = options.fs || fs; self2.maxLength = options.maxLength || Infinity; self2.cache = options.cache || /* @__PURE__ */ Object.create(null); self2.statCache = options.statCache || /* @__PURE__ */ Object.create(null); self2.symlinks = options.symlinks || /* @__PURE__ */ Object.create(null); setupIgnores(self2, options); self2.changedCwd = false; var cwd = process.cwd(); if (!ownProp(options, "cwd")) self2.cwd = cwd; else { self2.cwd = path.resolve(options.cwd); self2.changedCwd = self2.cwd !== cwd; } self2.root = options.root || path.resolve(self2.cwd, "/"); self2.root = path.resolve(self2.root); if (process.platform === "win32") self2.root = self2.root.replace(/\\/g, "/"); self2.cwdAbs = isAbsolute(self2.cwd) ? self2.cwd : makeAbs(self2, self2.cwd); if (process.platform === "win32") self2.cwdAbs = self2.cwdAbs.replace(/\\/g, "/"); self2.nomount = !!options.nomount; options.nonegate = true; options.nocomment = true; options.allowWindowsEscape = false; self2.minimatch = new Minimatch(pattern, options); self2.options = self2.minimatch.options; } __name(setopts, "setopts"); function finish(self2) { var nou = self2.nounique; var all = nou ? [] : /* @__PURE__ */ Object.create(null); for (var i = 0, l2 = self2.matches.length; i < l2; i++) { var matches = self2.matches[i]; if (!matches || Object.keys(matches).length === 0) { if (self2.nonull) { var literal = self2.minimatch.globSet[i]; if (nou) all.push(literal); else all[literal] = true; } } else { var m = Object.keys(matches); if (nou) all.push.apply(all, m); else m.forEach(function(m2) { all[m2] = true; }); } } if (!nou) all = Object.keys(all); if (!self2.nosort) all = all.sort(alphasort); if (self2.mark) { for (var i = 0; i < all.length; i++) { all[i] = self2._mark(all[i]); } if (self2.nodir) { all = all.filter(function(e) { var notDir = !/\/$/.test(e); var c = self2.cache[e] || self2.cache[makeAbs(self2, e)]; if (notDir && c) notDir = c !== "DIR" && !Array.isArray(c); return notDir; }); } } if (self2.ignore.length) all = all.filter(function(m2) { return !isIgnored(self2, m2); }); self2.found = all; } __name(finish, "finish"); function mark(self2, p) { var abs = makeAbs(self2, p); var c = self2.cache[abs]; var m = p; if (c) { var isDir = c === "DIR" || Array.isArray(c); var slash = p.slice(-1) === "/"; if (isDir && !slash) m += "/"; else if (!isDir && slash) m = m.slice(0, -1); if (m !== p) { var mabs = makeAbs(self2, m); self2.statCache[mabs] = self2.statCache[abs]; self2.cache[mabs] = self2.cache[abs]; } } return m; } __name(mark, "mark"); function makeAbs(self2, f) { var abs = f; if (f.charAt(0) === "/") { abs = path.join(self2.root, f); } else if (isAbsolute(f) || f === "") { abs = f; } else if (self2.changedCwd) { abs = path.resolve(self2.cwd, f); } else { abs = path.resolve(f); } if (process.platform === "win32") abs = abs.replace(/\\/g, "/"); return abs; } __name(makeAbs, "makeAbs"); function isIgnored(self2, path2) { if (!self2.ignore.length) return false; return self2.ignore.some(function(item) { return item.matcher.match(path2) || !!(item.gmatcher && item.gmatcher.match(path2)); }); } __name(isIgnored, "isIgnored"); function childrenIgnored(self2, path2) { if (!self2.ignore.length) return false; return self2.ignore.some(function(item) { return !!(item.gmatcher && item.gmatcher.match(path2)); }); } __name(childrenIgnored, "childrenIgnored"); } }); // ../../node_modules/.pnpm/glob@7.2.3/node_modules/glob/sync.js var require_sync = __commonJS({ "../../node_modules/.pnpm/glob@7.2.3/node_modules/glob/sync.js"(exports2, module2) { module2.exports = globSync; globSync.GlobSync = GlobSync; var rp = require_fs(); var minimatch = require_minimatch2(); var Minimatch = minimatch.Minimatch; var Glob = require_glob().Glob; var util2 = require("util"); var path = require("path"); var assert = require("assert"); var isAbsolute = require_path_is_absolute(); var common = require_common5(); var setopts = common.setopts; var ownProp = common.ownProp; var childrenIgnored = common.childrenIgnored; var isIgnored = common.isIgnored; function globSync(pattern, options) { if (typeof options === "function" || arguments.length === 3) throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); return new GlobSync(pattern, options).found; } __name(globSync, "globSync"); function GlobSync(pattern, options) { if (!pattern) throw new Error("must provide pattern"); if (typeof options === "function" || arguments.length === 3) throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167"); if (!(this instanceof GlobSync)) return new GlobSync(pattern, options); setopts(this, pattern, options); if (this.noprocess) return this; var n = this.minimatch.set.length; this.matches = new Array(n); for (var i = 0; i < n; i++) { this._process(this.minimatch.set[i], i, false); } this._finish(); } __name(GlobSync, "GlobSync"); GlobSync.prototype._finish = function() { assert.ok(this instanceof GlobSync); if (this.realpath) { var self2 = this; this.matches.forEach(function(matchset, index) { var set = self2.matches[index] = /* @__PURE__ */ Object.create(null); for (var p in matchset) { try { p = self2._makeAbs(p); var real = rp.realpathSync(p, self2.realpathCache); set[real] = true; } catch (er) { if (er.syscall === "stat") set[self2._makeAbs(p)] = true; else throw er; } } }); } common.finish(this); }; GlobSync.prototype._process = function(pattern, index, inGlobStar) { assert.ok(this instanceof GlobSync); var n = 0; while (typeof pattern[n] === "string") { n++; } var prefix; switch (n) { // if not, then this is rather simple case pattern.length: this._processSimple(pattern.join("/"), index); return; case 0: prefix = null; break; default: prefix = pattern.slice(0, n).join("/"); break; } var remain = pattern.slice(n); var read; if (prefix === null) read = "."; else if (isAbsolute(prefix) || isAbsolute(pattern.map(function(p) { return typeof p === "string" ? p : "[*]"; }).join("/"))) { if (!prefix || !isAbsolute(prefix)) prefix = "/" + prefix; read = prefix; } else read = prefix; var abs = this._makeAbs(read); if (childrenIgnored(this, read)) return; var isGlobStar = remain[0] === minimatch.GLOBSTAR; if (isGlobStar) this._processGlobStar(prefix, read, abs, remain, index, inGlobStar); else this._processReaddir(prefix, read, abs, remain, index, inGlobStar); }; GlobSync.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar) { var entries = this._readdir(abs, inGlobStar); if (!entries) return; var pn = remain[0]; var negate = !!this.minimatch.negate; var rawGlob = pn._glob; var dotOk = this.dot || rawGlob.charAt(0) === "."; var matchedEntries = []; for (var i = 0; i < entries.length; i++) { var e = entries[i]; if (e.charAt(0) !== "." || dotOk) { var m; if (negate && !prefix) { m = !e.match(pn); } else { m = e.match(pn); } if (m) matchedEntries.push(e); } } var len = matchedEntries.length; if (len === 0) return; if (remain.length === 1 && !this.mark && !this.stat) { if (!this.matches[index]) this.matches[index] = /* @__PURE__ */ Object.create(null); for (var i = 0; i < len; i++) { var e = matchedEntries[i]; if (prefix) { if (prefix.slice(-1) !== "/") e = prefix + "/" + e; else e = prefix + e; } if (e.charAt(0) === "/" && !this.nomount) { e = path.join(this.root, e); } this._emitMatch(index, e); } return; } remain.shift(); for (var i = 0; i < len; i++) { var e = matchedEntries[i]; var newPattern; if (prefix) newPattern = [prefix, e]; else newPattern = [e]; this._process(newPattern.concat(remain), index, inGlobStar); } }; GlobSync.prototype._emitMatch = function(index, e) { if (isIgnored(this, e)) return; var abs = this._makeAbs(e); if (this.mark) e = this._mark(e); if (this.absolute) { e = abs; } if (this.matches[index][e]) return; if (this.nodir) { var c = this.cache[abs]; if (c === "DIR" || Array.isArray(c)) return; } this.matches[index][e] = true; if (this.stat) this._stat(e); }; GlobSync.prototype._readdirInGlobStar = function(abs) { if (this.follow) return this._readdir(abs, false); var entries; var lstat; var stat; try { lstat = this.fs.lstatSync(abs); } catch (er) { if (er.code === "ENOENT") { return null; } } var isSym = lstat && lstat.isSymbolicLink(); this.symlinks[abs] = isSym; if (!isSym && lstat && !lstat.isDirectory()) this.cache[abs] = "FILE"; else entries = this._readdir(abs, false); return entries; }; GlobSync.prototype._readdir = function(abs, inGlobStar) { var entries; if (inGlobStar && !ownProp(this.symlinks, abs)) return this._readdirInGlobStar(abs); if (ownProp(this.cache, abs)) { var c = this.cache[abs]; if (!c || c === "FILE") return null; if (Array.isArray(c)) return c; } try { return this._readdirEntries(abs, this.fs.readdirSync(abs)); } catch (er) { this._readdirError(abs, er); return null; } }; GlobSync.prototype._readdirEntries = function(abs, entries) { if (!this.mark && !this.stat) { for (var i = 0; i < entries.length; i++) { var e = entries[i]; if (abs === "/") e = abs + e; else e = abs + "/" + e; this.cache[e] = true; } } this.cache[abs] = entries; return entries; }; GlobSync.prototype._readdirError = function(f, er) { switch (er.code) { case "ENOTSUP": // https://github.com/isaacs/node-glob/issues/205 case "ENOTDIR": var abs = this._makeAbs(f); this.cache[abs] = "FILE"; if (abs === this.cwdAbs) { var error = new Error(er.code + " invalid cwd " + this.cwd); error.path = this.cwd; error.code = er.code; throw error; } break; case "ENOENT": // not terribly unusual case "ELOOP": case "ENAMETOOLONG": case "UNKNOWN": this.cache[this._makeAbs(f)] = false; break; default: this.cache[this._makeAbs(f)] = false; if (this.strict) throw er; if (!this.silent) console.error("glob error", er); break; } }; GlobSync.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar) { var entries = this._readdir(abs, inGlobStar); if (!entries) return; var remainWithoutGlobStar = remain.slice(1); var gspref = prefix ? [prefix] : []; var noGlobStar = gspref.concat(remainWithoutGlobStar); this._process(noGlobStar, index, false); var len = entries.length; var isSym = this.symlinks[abs]; if (isSym && inGlobStar) return; for (var i = 0; i < len; i++) { var e = entries[i]; if (e.charAt(0) === "." && !this.dot) continue; var instead = gspref.concat(entries[i], remainWithoutGlobStar); this._process(instead, index, true); var below = gspref.concat(entries[i], remain); this._process(below, index, true); } }; GlobSync.prototype._processSimple = function(prefix, index) { var exists = this._stat(prefix); if (!this.matches[index]) this.matches[index] = /* @__PURE__ */ Object.create(null); if (!exists) return; if (prefix && isAbsolute(prefix) && !this.nomount) { var trail = /[\/\\]$/.test(prefix); if (prefix.charAt(0) === "/") { prefix = path.join(this.root, prefix); } else { prefix = path.resolve(this.root, prefix); if (trail) prefix += "/"; } } if (process.platform === "win32") prefix = prefix.replace(/\\/g, "/"); this._emitMatch(index, prefix); }; GlobSync.prototype._stat = function(f) { var abs = this._makeAbs(f); var needDir = f.slice(-1) === "/"; if (f.length > this.maxLength) return false; if (!this.stat && ownProp(this.cache, abs)) { var c = this.cache[abs]; if (Array.isArray(c)) c = "DIR"; if (!needDir || c === "DIR") return c; if (needDir && c === "FILE") return false; } var exists; var stat = this.statCache[abs]; if (!stat) { var lstat; try { lstat = this.fs.lstatSync(abs); } catch (er) { if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { this.statCache[abs] = false; return false; } } if (lstat && lstat.isSymbolicLink()) { try { stat = this.fs.statSync(abs); } catch (er) { stat = lstat; } } else { stat = lstat; } } this.statCache[abs] = stat; var c = true; if (stat) c = stat.isDirectory() ? "DIR" : "FILE"; this.cache[abs] = this.cache[abs] || c; if (needDir && c === "FILE") return false; return c; }; GlobSync.prototype._mark = function(p) { return common.mark(this, p); }; GlobSync.prototype._makeAbs = function(f) { return common.makeAbs(this, f); }; } }); // ../../node_modules/.pnpm/wrappy@1.0.2/node_modules/wrappy/wrappy.js var require_wrappy = __commonJS({ "../../node_modules/.pnpm/wrappy@1.0.2/node_modules/wrappy/wrappy.js"(exports2, module2) { module2.exports = wrappy; function wrappy(fn, cb) { if (fn && cb) return wrappy(fn)(cb); if (typeof fn !== "function") throw new TypeError("need wrapper function"); Object.keys(fn).forEach(function(k) { wrapper[k] = fn[k]; }); return wrapper; function wrapper() { var args = new Array(arguments.length); for (var i = 0; i < args.length; i++) { args[i] = arguments[i]; } var ret2 = fn.apply(this, args); var cb2 = args[args.length - 1]; if (typeof ret2 === "function" && ret2 !== cb2) { Object.keys(cb2).forEach(function(k) { ret2[k] = cb2[k]; }); } return ret2; } __name(wrapper, "wrapper"); } __name(wrappy, "wrappy"); } }); // ../../node_modules/.pnpm/once@1.4.0/node_modules/once/once.js var require_once = __commonJS({ "../../node_modules/.pnpm/once@1.4.0/node_modules/once/once.js"(exports2, module2) { var wrappy = require_wrappy(); module2.exports = wrappy(once); module2.exports.strict = wrappy(onceStrict); once.proto = once(function() { Object.defineProperty(Function.prototype, "once", { value: /* @__PURE__ */ __name(function() { return once(this); }, "value"), configurable: true }); Object.defineProperty(Function.prototype, "onceStrict", { value: /* @__PURE__ */ __name(function() { return onceStrict(this); }, "value"), configurable: true }); }); function once(fn) { var f = /* @__PURE__ */ __name(function() { if (f.called) return f.value; f.called = true; return f.value = fn.apply(this, arguments); }, "f"); f.called = false; return f; } __name(once, "once"); function onceStrict(fn) { var f = /* @__PURE__ */ __name(function() { if (f.called) throw new Error(f.onceError); f.called = true; return f.value = fn.apply(this, arguments); }, "f"); var name = fn.name || "Function wrapped with `once`"; f.onceError = name + " shouldn't be called more than once"; f.called = false; return f; } __name(onceStrict, "onceStrict"); } }); // ../../node_modules/.pnpm/inflight@1.0.6/node_modules/inflight/inflight.js var require_inflight = __commonJS({ "../../node_modules/.pnpm/inflight@1.0.6/node_modules/inflight/inflight.js"(exports2, module2) { var wrappy = require_wrappy(); var reqs = /* @__PURE__ */ Object.create(null); var once = require_once(); module2.exports = wrappy(inflight); function inflight(key, cb) { if (reqs[key]) { reqs[key].push(cb); return null; } else { reqs[key] = [cb]; return makeres(key); } } __name(inflight, "inflight"); function makeres(key) { return once(/* @__PURE__ */ __name(function RES() { var cbs = reqs[key]; var len = cbs.length; var args = slice(arguments); try { for (var i = 0; i < len; i++) { cbs[i].apply(null, args); } } finally { if (cbs.length > len) { cbs.splice(0, len); process.nextTick(function() { RES.apply(null, args); }); } else { delete reqs[key]; } } }, "RES")); } __name(makeres, "makeres"); function slice(args) { var length = args.length; var array = []; for (var i = 0; i < length; i++) array[i] = args[i]; return array; } __name(slice, "slice"); } }); // ../../node_modules/.pnpm/glob@7.2.3/node_modules/glob/glob.js var require_glob = __commonJS({ "../../node_modules/.pnpm/glob@7.2.3/node_modules/glob/glob.js"(exports2, module2) { module2.exports = glob; var rp = require_fs(); var minimatch = require_minimatch2(); var Minimatch = minimatch.Minimatch; var inherits2 = require_inherits(); var EE = require("events").EventEmitter; var path = require("path"); var assert = require("assert"); var isAbsolute = require_path_is_absolute(); var globSync = require_sync(); var common = require_common5(); var setopts = common.setopts; var ownProp = common.ownProp; var inflight = require_inflight(); var util2 = require("util"); var childrenIgnored = common.childrenIgnored; var isIgnored = common.isIgnored; var once = require_once(); function glob(pattern, options, cb) { if (typeof options === "function") cb = options, options = {}; if (!options) options = {}; if (options.sync) { if (cb) throw new TypeError("callback provided to sync glob"); return globSync(pattern, options); } return new Glob(pattern, options, cb); } __name(glob, "glob"); glob.sync = globSync; var GlobSync = glob.GlobSync = globSync.GlobSync; glob.glob = glob; function extend(origin, add) { if (add === null || typeof add !== "object") { return origin; } var keys = Object.keys(add); var i = keys.length; while (i--) { origin[keys[i]] = add[keys[i]]; } return origin; } __name(extend, "extend"); glob.hasMagic = function(pattern, options_) { var options = extend({}, options_); options.noprocess = true; var g = new Glob(pattern, options); var set = g.minimatch.set; if (!pattern) return false; if (set.length > 1) return true; for (var j = 0; j < set[0].length; j++) { if (typeof set[0][j] !== "string") return true; } return false; }; glob.Glob = Glob; inherits2(Glob, EE); function Glob(pattern, options, cb) { if (typeof options === "function") { cb = options; options = null; } if (options && options.sync) { if (cb) throw new TypeError("callback provided to sync glob"); return new GlobSync(pattern, options); } if (!(this instanceof Glob)) return new Glob(pattern, options, cb); setopts(this, pattern, options); this._didRealPath = false; var n = this.minimatch.set.length; this.matches = new Array(n); if (typeof cb === "function") { cb = once(cb); this.on("error", cb); this.on("end", function(matches) { cb(null, matches); }); } var self2 = this; this._processing = 0; this._emitQueue = []; this._processQueue = []; this.paused = false; if (this.noprocess) return this; if (n === 0) return done(); var sync = true; for (var i = 0; i < n; i++) { this._process(this.minimatch.set[i], i, false, done); } sync = false; function done() { --self2._processing; if (self2._processing <= 0) { if (sync) { process.nextTick(function() { self2._finish(); }); } else { self2._finish(); } } } __name(done, "done"); } __name(Glob, "Glob"); Glob.prototype._finish = function() { assert(this instanceof Glob); if (this.aborted) return; if (this.realpath && !this._didRealpath) return this._realpath(); common.finish(this); this.emit("end", this.found); }; Glob.prototype._realpath = function() { if (this._didRealpath) return; this._didRealpath = true; var n = this.matches.length; if (n === 0) return this._finish(); var self2 = this; for (var i = 0; i < this.matches.length; i++) this._realpathSet(i, next); function next() { if (--n === 0) self2._finish(); } __name(next, "next"); }; Glob.prototype._realpathSet = function(index, cb) { var matchset = this.matches[index]; if (!matchset) return cb(); var found = Object.keys(matchset); var self2 = this; var n = found.length; if (n === 0) return cb(); var set = this.matches[index] = /* @__PURE__ */ Object.create(null); found.forEach(function(p, i) { p = self2._makeAbs(p); rp.realpath(p, self2.realpathCache, function(er, real) { if (!er) set[real] = true; else if (er.syscall === "stat") set[p] = true; else self2.emit("error", er); if (--n === 0) { self2.matches[index] = set; cb(); } }); }); }; Glob.prototype._mark = function(p) { return common.mark(this, p); }; Glob.prototype._makeAbs = function(f) { return common.makeAbs(this, f); }; Glob.prototype.abort = function() { this.aborted = true; this.emit("abort"); }; Glob.prototype.pause = function() { if (!this.paused) { this.paused = true; this.emit("pause"); } }; Glob.prototype.resume = function() { if (this.paused) { this.emit("resume"); this.paused = false; if (this._emitQueue.length) { var eq = this._emitQueue.slice(0); this._emitQueue.length = 0; for (var i = 0; i < eq.length; i++) { var e = eq[i]; this._emitMatch(e[0], e[1]); } } if (this._processQueue.length) { var pq = this._processQueue.slice(0); this._processQueue.length = 0; for (var i = 0; i < pq.length; i++) { var p = pq[i]; this._processing--; this._process(p[0], p[1], p[2], p[3]); } } } }; Glob.prototype._process = function(pattern, index, inGlobStar, cb) { assert(this instanceof Glob); assert(typeof cb === "function"); if (this.aborted) return; this._processing++; if (this.paused) { this._processQueue.push([pattern, index, inGlobStar, cb]); return; } var n = 0; while (typeof pattern[n] === "string") { n++; } var prefix; switch (n) { // if not, then this is rather simple case pattern.length: this._processSimple(pattern.join("/"), index, cb); return; case 0: prefix = null; break; default: prefix = pattern.slice(0, n).join("/"); break; } var remain = pattern.slice(n); var read; if (prefix === null) read = "."; else if (isAbsolute(prefix) || isAbsolute(pattern.map(function(p) { return typeof p === "string" ? p : "[*]"; }).join("/"))) { if (!prefix || !isAbsolute(prefix)) prefix = "/" + prefix; read = prefix; } else read = prefix; var abs = this._makeAbs(read); if (childrenIgnored(this, read)) return cb(); var isGlobStar = remain[0] === minimatch.GLOBSTAR; if (isGlobStar) this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb); else this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb); }; Glob.prototype._processReaddir = function(prefix, read, abs, remain, index, inGlobStar, cb) { var self2 = this; this._readdir(abs, inGlobStar, function(er, entries) { return self2._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb); }); }; Glob.prototype._processReaddir2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { if (!entries) return cb(); var pn = remain[0]; var negate = !!this.minimatch.negate; var rawGlob = pn._glob; var dotOk = this.dot || rawGlob.charAt(0) === "."; var matchedEntries = []; for (var i = 0; i < entries.length; i++) { var e = entries[i]; if (e.charAt(0) !== "." || dotOk) { var m; if (negate && !prefix) { m = !e.match(pn); } else { m = e.match(pn); } if (m) matchedEntries.push(e); } } var len = matchedEntries.length; if (len === 0) return cb(); if (remain.length === 1 && !this.mark && !this.stat) { if (!this.matches[index]) this.matches[index] = /* @__PURE__ */ Object.create(null); for (var i = 0; i < len; i++) { var e = matchedEntries[i]; if (prefix) { if (prefix !== "/") e = prefix + "/" + e; else e = prefix + e; } if (e.charAt(0) === "/" && !this.nomount) { e = path.join(this.root, e); } this._emitMatch(index, e); } return cb(); } remain.shift(); for (var i = 0; i < len; i++) { var e = matchedEntries[i]; var newPattern; if (prefix) { if (prefix !== "/") e = prefix + "/" + e; else e = prefix + e; } this._process([e].concat(remain), index, inGlobStar, cb); } cb(); }; Glob.prototype._emitMatch = function(index, e) { if (this.aborted) return; if (isIgnored(this, e)) return; if (this.paused) { this._emitQueue.push([index, e]); return; } var abs = isAbsolute(e) ? e : this._makeAbs(e); if (this.mark) e = this._mark(e); if (this.absolute) e = abs; if (this.matches[index][e]) return; if (this.nodir) { var c = this.cache[abs]; if (c === "DIR" || Array.isArray(c)) return; } this.matches[index][e] = true; var st = this.statCache[abs]; if (st) this.emit("stat", e, st); this.emit("match", e); }; Glob.prototype._readdirInGlobStar = function(abs, cb) { if (this.aborted) return; if (this.follow) return this._readdir(abs, false, cb); var lstatkey = "lstat\0" + abs; var self2 = this; var lstatcb = inflight(lstatkey, lstatcb_); if (lstatcb) self2.fs.lstat(abs, lstatcb); function lstatcb_(er, lstat) { if (er && er.code === "ENOENT") return cb(); var isSym = lstat && lstat.isSymbolicLink(); self2.symlinks[abs] = isSym; if (!isSym && lstat && !lstat.isDirectory()) { self2.cache[abs] = "FILE"; cb(); } else self2._readdir(abs, false, cb); } __name(lstatcb_, "lstatcb_"); }; Glob.prototype._readdir = function(abs, inGlobStar, cb) { if (this.aborted) return; cb = inflight("readdir\0" + abs + "\0" + inGlobStar, cb); if (!cb) return; if (inGlobStar && !ownProp(this.symlinks, abs)) return this._readdirInGlobStar(abs, cb); if (ownProp(this.cache, abs)) { var c = this.cache[abs]; if (!c || c === "FILE") return cb(); if (Array.isArray(c)) return cb(null, c); } var self2 = this; self2.fs.readdir(abs, readdirCb(this, abs, cb)); }; function readdirCb(self2, abs, cb) { return function(er, entries) { if (er) self2._readdirError(abs, er, cb); else self2._readdirEntries(abs, entries, cb); }; } __name(readdirCb, "readdirCb"); Glob.prototype._readdirEntries = function(abs, entries, cb) { if (this.aborted) return; if (!this.mark && !this.stat) { for (var i = 0; i < entries.length; i++) { var e = entries[i]; if (abs === "/") e = abs + e; else e = abs + "/" + e; this.cache[e] = true; } } this.cache[abs] = entries; return cb(null, entries); }; Glob.prototype._readdirError = function(f, er, cb) { if (this.aborted) return; switch (er.code) { case "ENOTSUP": // https://github.com/isaacs/node-glob/issues/205 case "ENOTDIR": var abs = this._makeAbs(f); this.cache[abs] = "FILE"; if (abs === this.cwdAbs) { var error = new Error(er.code + " invalid cwd " + this.cwd); error.path = this.cwd; error.code = er.code; this.emit("error", error); this.abort(); } break; case "ENOENT": // not terribly unusual case "ELOOP": case "ENAMETOOLONG": case "UNKNOWN": this.cache[this._makeAbs(f)] = false; break; default: this.cache[this._makeAbs(f)] = false; if (this.strict) { this.emit("error", er); this.abort(); } if (!this.silent) console.error("glob error", er); break; } return cb(); }; Glob.prototype._processGlobStar = function(prefix, read, abs, remain, index, inGlobStar, cb) { var self2 = this; this._readdir(abs, inGlobStar, function(er, entries) { self2._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb); }); }; Glob.prototype._processGlobStar2 = function(prefix, read, abs, remain, index, inGlobStar, entries, cb) { if (!entries) return cb(); var remainWithoutGlobStar = remain.slice(1); var gspref = prefix ? [prefix] : []; var noGlobStar = gspref.concat(remainWithoutGlobStar); this._process(noGlobStar, index, false, cb); var isSym = this.symlinks[abs]; var len = entries.length; if (isSym && inGlobStar) return cb(); for (var i = 0; i < len; i++) { var e = entries[i]; if (e.charAt(0) === "." && !this.dot) continue; var instead = gspref.concat(entries[i], remainWithoutGlobStar); this._process(instead, index, true, cb); var below = gspref.concat(entries[i], remain); this._process(below, index, true, cb); } cb(); }; Glob.prototype._processSimple = function(prefix, index, cb) { var self2 = this; this._stat(prefix, function(er, exists) { self2._processSimple2(prefix, index, er, exists, cb); }); }; Glob.prototype._processSimple2 = function(prefix, index, er, exists, cb) { if (!this.matches[index]) this.matches[index] = /* @__PURE__ */ Object.create(null); if (!exists) return cb(); if (prefix && isAbsolute(prefix) && !this.nomount) { var trail = /[\/\\]$/.test(prefix); if (prefix.charAt(0) === "/") { prefix = path.join(this.root, prefix); } else { prefix = path.resolve(this.root, prefix); if (trail) prefix += "/"; } } if (process.platform === "win32") prefix = prefix.replace(/\\/g, "/"); this._emitMatch(index, prefix); cb(); }; Glob.prototype._stat = function(f, cb) { var abs = this._makeAbs(f); var needDir = f.slice(-1) === "/"; if (f.length > this.maxLength) return cb(); if (!this.stat && ownProp(this.cache, abs)) { var c = this.cache[abs]; if (Array.isArray(c)) c = "DIR"; if (!needDir || c === "DIR") return cb(null, c); if (needDir && c === "FILE") return cb(); } var exists; var stat = this.statCache[abs]; if (stat !== void 0) { if (stat === false) return cb(null, stat); else { var type = stat.isDirectory() ? "DIR" : "FILE"; if (needDir && type === "FILE") return cb(); else return cb(null, type, stat); } } var self2 = this; var statcb = inflight("stat\0" + abs, lstatcb_); if (statcb) self2.fs.lstat(abs, statcb); function lstatcb_(er, lstat) { if (lstat && lstat.isSymbolicLink()) { return self2.fs.stat(abs, function(er2, stat2) { if (er2) self2._stat2(f, abs, null, lstat, cb); else self2._stat2(f, abs, er2, stat2, cb); }); } else { self2._stat2(f, abs, er, lstat, cb); } } __name(lstatcb_, "lstatcb_"); }; Glob.prototype._stat2 = function(f, abs, er, stat, cb) { if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) { this.statCache[abs] = false; return cb(); } var needDir = f.slice(-1) === "/"; this.statCache[abs] = stat; if (abs.slice(-1) === "/" && stat && !stat.isDirectory()) return cb(null, false, stat); var c = true; if (stat) c = stat.isDirectory() ? "DIR" : "FILE"; this.cache[abs] = this.cache[abs] || c; if (needDir && c === "FILE") return cb(); return cb(null, c, stat); }; } }); // ../../node_modules/.pnpm/archiver-utils@2.1.0/node_modules/archiver-utils/file.js var require_file2 = __commonJS({ "../../node_modules/.pnpm/archiver-utils@2.1.0/node_modules/archiver-utils/file.js"(exports2, module2) { var fs = require_graceful_fs(); var path = require("path"); var flatten = require_lodash18(); var difference = require_lodash19(); var union = require_lodash20(); var isPlainObject = require_lodash7(); var glob = require_glob(); var file2 = module2.exports = {}; var pathSeparatorRe = /[\/\\]/g; var processPatterns = /* @__PURE__ */ __name(function(patterns, fn) { var result = []; flatten(patterns).forEach(function(pattern) { var exclusion = pattern.indexOf("!") === 0; if (exclusion) { pattern = pattern.slice(1); } var matches = fn(pattern); if (exclusion) { result = difference(result, matches); } else { result = union(result, matches); } }); return result; }, "processPatterns"); file2.exists = function() { var filepath = path.join.apply(path, arguments); return fs.existsSync(filepath); }; file2.expand = function(...args) { var options = isPlainObject(args[0]) ? args.shift() : {}; var patterns = Array.isArray(args[0]) ? args[0] : args; if (patterns.length === 0) { return []; } var matches = processPatterns(patterns, function(pattern) { return glob.sync(pattern, options); }); if (options.filter) { matches = matches.filter(function(filepath) { filepath = path.join(options.cwd || "", filepath); try { if (typeof options.filter === "function") { return options.filter(filepath); } else { return fs.statSync(filepath)[options.filter](); } } catch (e) { return false; } }); } return matches; }; file2.expandMapping = function(patterns, destBase, options) { options = Object.assign({ rename: /* @__PURE__ */ __name(function(destBase2, destPath) { return path.join(destBase2 || "", destPath); }, "rename") }, options); var files = []; var fileByDest = {}; file2.expand(options, patterns).forEach(function(src) { var destPath = src; if (options.flatten) { destPath = path.basename(destPath); } if (options.ext) { destPath = destPath.replace(/(\.[^\/]*)?$/, options.ext); } var dest = options.rename(destBase, destPath, options); if (options.cwd) { src = path.join(options.cwd, src); } dest = dest.replace(pathSeparatorRe, "/"); src = src.replace(pathSeparatorRe, "/"); if (fileByDest[dest]) { fileByDest[dest].src.push(src); } else { files.push({ src: [src], dest }); fileByDest[dest] = files[files.length - 1]; } }); return files; }; file2.normalizeFilesArray = function(data) { var files = []; data.forEach(function(obj2) { var prop; if ("src" in obj2 || "dest" in obj2) { files.push(obj2); } }); if (files.length === 0) { return []; } files = _(files).chain().forEach(function(obj2) { if (!("src" in obj2) || !obj2.src) { return; } if (Array.isArray(obj2.src)) { obj2.src = flatten(obj2.src); } else { obj2.src = [obj2.src]; } }).map(function(obj2) { var expandOptions = Object.assign({}, obj2); delete expandOptions.src; delete expandOptions.dest; if (obj2.expand) { return file2.expandMapping(obj2.src, obj2.dest, expandOptions).map(function(mapObj) { var result2 = Object.assign({}, obj2); result2.orig = Object.assign({}, obj2); result2.src = mapObj.src; result2.dest = mapObj.dest; ["expand", "cwd", "flatten", "rename", "ext"].forEach(function(prop) { delete result2[prop]; }); return result2; }); } var result = Object.assign({}, obj2); result.orig = Object.assign({}, obj2); if ("src" in result) { Object.defineProperty(result, "src", { enumerable: true, get: /* @__PURE__ */ __name(function fn() { var src; if (!("result" in fn)) { src = obj2.src; src = Array.isArray(src) ? flatten(src) : [src]; fn.result = file2.expand(expandOptions, src); } return fn.result; }, "fn") }); } if ("dest" in result) { result.dest = obj2.dest; } return result; }).flatten().value(); return files; }; } }); // ../../node_modules/.pnpm/archiver-utils@2.1.0/node_modules/archiver-utils/index.js var require_archiver_utils = __commonJS({ "../../node_modules/.pnpm/archiver-utils@2.1.0/node_modules/archiver-utils/index.js"(exports2, module2) { var fs = require_graceful_fs(); var path = require("path"); var nutil = require("util"); var lazystream = require_lazystream(); var normalizePath = require_normalize_path(); var defaults = require_lodash17(); var Stream = require("stream").Stream; var PassThrough = require_readable2().PassThrough; var utils = module2.exports = {}; utils.file = require_file2(); utils.collectStream = function(source, callback) { var collection = []; var size = 0; source.on("error", callback); source.on("data", function(chunk) { collection.push(chunk); size += chunk.length; }); source.on("end", function() { var buf = new Buffer(size); var offset = 0; collection.forEach(function(data) { data.copy(buf, offset); offset += data.length; }); callback(null, buf); }); }; utils.dateify = function(dateish) { dateish = dateish || /* @__PURE__ */ new Date(); if (dateish instanceof Date) { dateish = dateish; } else if (typeof dateish === "string") { dateish = new Date(dateish); } else { dateish = /* @__PURE__ */ new Date(); } return dateish; }; utils.defaults = function(object, source, guard) { var args = arguments; args[0] = args[0] || {}; return defaults(...args); }; utils.isStream = function(source) { return source instanceof Stream; }; utils.lazyReadStream = function(filepath) { return new lazystream.Readable(function() { return fs.createReadStream(filepath); }); }; utils.normalizeInputSource = function(source) { if (source === null) { return new Buffer(0); } else if (typeof source === "string") { return new Buffer(source); } else if (utils.isStream(source) && !source._readableState) { var normalized = new PassThrough(); source.pipe(normalized); return normalized; } return source; }; utils.sanitizePath = function(filepath) { return normalizePath(filepath, false).replace(/^\w+:/, "").replace(/^(\.\.\/|\/)+/, ""); }; utils.trailingSlashIt = function(str) { return str.slice(-1) !== "/" ? str + "/" : str; }; utils.unixifyPath = function(filepath) { return normalizePath(filepath, false).replace(/^\w+:/, ""); }; utils.walkdir = function(dirpath, base, callback) { var results = []; if (typeof base === "function") { callback = base; base = dirpath; } fs.readdir(dirpath, function(err, list) { var i = 0; var file2; var filepath; if (err) { return callback(err); } (/* @__PURE__ */ __name((function next() { file2 = list[i++]; if (!file2) { return callback(null, results); } filepath = path.join(dirpath, file2); fs.stat(filepath, function(err2, stats) { results.push({ path: filepath, relative: path.relative(base, filepath).replace(/\\/g, "/"), stats }); if (stats && stats.isDirectory()) { utils.walkdir(filepath, base, function(err3, res) { res.forEach(function(dirEntry) { results.push(dirEntry); }); next(); }); } else { next(); } }); }), "next"))(); }); }; } }); // ../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/lib/error.js var require_error = __commonJS({ "../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/lib/error.js"(exports2, module2) { var util2 = require("util"); var ERROR_CODES = { "ABORTED": "archive was aborted", "DIRECTORYDIRPATHREQUIRED": "diretory dirpath argument must be a non-empty string value", "DIRECTORYFUNCTIONINVALIDDATA": "invalid data returned by directory custom data function", "ENTRYNAMEREQUIRED": "entry name must be a non-empty string value", "FILEFILEPATHREQUIRED": "file filepath argument must be a non-empty string value", "FINALIZING": "archive already finalizing", "QUEUECLOSED": "queue closed", "NOENDMETHOD": "no suitable finalize/end method defined by module", "DIRECTORYNOTSUPPORTED": "support for directory entries not defined by module", "FORMATSET": "archive format already set", "INPUTSTEAMBUFFERREQUIRED": "input source must be valid Stream or Buffer instance", "MODULESET": "module already set", "SYMLINKNOTSUPPORTED": "support for symlink entries not defined by module", "SYMLINKFILEPATHREQUIRED": "symlink filepath argument must be a non-empty string value", "SYMLINKTARGETREQUIRED": "symlink target argument must be a non-empty string value", "ENTRYNOTSUPPORTED": "entry not supported" }; function ArchiverError(code, data) { Error.captureStackTrace(this, this.constructor); this.message = ERROR_CODES[code] || code; this.code = code; this.data = data; } __name(ArchiverError, "ArchiverError"); util2.inherits(ArchiverError, Error); exports2 = module2.exports = ArchiverError; } }); // ../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/lib/core.js var require_core5 = __commonJS({ "../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/lib/core.js"(exports2, module2) { var fs = require("fs"); var glob = require_readdir_glob(); var async = require_async2(); var path = require("path"); var util2 = require_archiver_utils(); var inherits2 = require("util").inherits; var ArchiverError = require_error(); var Transform = require_readable().Transform; var win32 = process.platform === "win32"; var Archiver = /* @__PURE__ */ __name(function(format, options) { if (!(this instanceof Archiver)) { return new Archiver(format, options); } if (typeof format !== "string") { options = format; format = "zip"; } options = this.options = util2.defaults(options, { highWaterMark: 1024 * 1024, statConcurrency: 4 }); Transform.call(this, options); this._format = false; this._module = false; this._pending = 0; this._pointer = 0; this._entriesCount = 0; this._entriesProcessedCount = 0; this._fsEntriesTotalBytes = 0; this._fsEntriesProcessedBytes = 0; this._queue = async.queue(this._onQueueTask.bind(this), 1); this._queue.drain(this._onQueueDrain.bind(this)); this._statQueue = async.queue(this._onStatQueueTask.bind(this), options.statConcurrency); this._statQueue.drain(this._onQueueDrain.bind(this)); this._state = { aborted: false, finalize: false, finalizing: false, finalized: false, modulePiped: false }; this._streams = []; }, "Archiver"); inherits2(Archiver, Transform); Archiver.prototype._abort = function() { this._state.aborted = true; this._queue.kill(); this._statQueue.kill(); if (this._queue.idle()) { this._shutdown(); } }; Archiver.prototype._append = function(filepath, data) { data = data || {}; var task = { source: null, filepath }; if (!data.name) { data.name = filepath; } data.sourcePath = filepath; task.data = data; this._entriesCount++; if (data.stats && data.stats instanceof fs.Stats) { task = this._updateQueueTaskWithStats(task, data.stats); if (task) { if (data.stats.size) { this._fsEntriesTotalBytes += data.stats.size; } this._queue.push(task); } } else { this._statQueue.push(task); } }; Archiver.prototype._finalize = function() { if (this._state.finalizing || this._state.finalized || this._state.aborted) { return; } this._state.finalizing = true; this._moduleFinalize(); this._state.finalizing = false; this._state.finalized = true; }; Archiver.prototype._maybeFinalize = function() { if (this._state.finalizing || this._state.finalized || this._state.aborted) { return false; } if (this._state.finalize && this._pending === 0 && this._queue.idle() && this._statQueue.idle()) { this._finalize(); return true; } return false; }; Archiver.prototype._moduleAppend = function(source, data, callback) { if (this._state.aborted) { callback(); return; } this._module.append(source, data, function(err) { this._task = null; if (this._state.aborted) { this._shutdown(); return; } if (err) { this.emit("error", err); setImmediate(callback); return; } this.emit("entry", data); this._entriesProcessedCount++; if (data.stats && data.stats.size) { this._fsEntriesProcessedBytes += data.stats.size; } this.emit("progress", { entries: { total: this._entriesCount, processed: this._entriesProcessedCount }, fs: { totalBytes: this._fsEntriesTotalBytes, processedBytes: this._fsEntriesProcessedBytes } }); setImmediate(callback); }.bind(this)); }; Archiver.prototype._moduleFinalize = function() { if (typeof this._module.finalize === "function") { this._module.finalize(); } else if (typeof this._module.end === "function") { this._module.end(); } else { this.emit("error", new ArchiverError("NOENDMETHOD")); } }; Archiver.prototype._modulePipe = function() { this._module.on("error", this._onModuleError.bind(this)); this._module.pipe(this); this._state.modulePiped = true; }; Archiver.prototype._moduleSupports = function(key) { if (!this._module.supports || !this._module.supports[key]) { return false; } return this._module.supports[key]; }; Archiver.prototype._moduleUnpipe = function() { this._module.unpipe(this); this._state.modulePiped = false; }; Archiver.prototype._normalizeEntryData = function(data, stats) { data = util2.defaults(data, { type: "file", name: null, date: null, mode: null, prefix: null, sourcePath: null, stats: false }); if (stats && data.stats === false) { data.stats = stats; } var isDir = data.type === "directory"; if (data.name) { if (typeof data.prefix === "string" && "" !== data.prefix) { data.name = data.prefix + "/" + data.name; data.prefix = null; } data.name = util2.sanitizePath(data.name); if (data.type !== "symlink" && data.name.slice(-1) === "/") { isDir = true; data.type = "directory"; } else if (isDir) { data.name += "/"; } } if (typeof data.mode === "number") { if (win32) { data.mode &= 511; } else { data.mode &= 4095; } } else if (data.stats && data.mode === null) { if (win32) { data.mode = data.stats.mode & 511; } else { data.mode = data.stats.mode & 4095; } if (win32 && isDir) { data.mode = 493; } } else if (data.mode === null) { data.mode = isDir ? 493 : 420; } if (data.stats && data.date === null) { data.date = data.stats.mtime; } else { data.date = util2.dateify(data.date); } return data; }; Archiver.prototype._onModuleError = function(err) { this.emit("error", err); }; Archiver.prototype._onQueueDrain = function() { if (this._state.finalizing || this._state.finalized || this._state.aborted) { return; } if (this._state.finalize && this._pending === 0 && this._queue.idle() && this._statQueue.idle()) { this._finalize(); } }; Archiver.prototype._onQueueTask = function(task, callback) { var fullCallback = /* @__PURE__ */ __name(() => { if (task.data.callback) { task.data.callback(); } callback(); }, "fullCallback"); if (this._state.finalizing || this._state.finalized || this._state.aborted) { fullCallback(); return; } this._task = task; this._moduleAppend(task.source, task.data, fullCallback); }; Archiver.prototype._onStatQueueTask = function(task, callback) { if (this._state.finalizing || this._state.finalized || this._state.aborted) { callback(); return; } fs.lstat(task.filepath, function(err, stats) { if (this._state.aborted) { setImmediate(callback); return; } if (err) { this._entriesCount--; this.emit("warning", err); setImmediate(callback); return; } task = this._updateQueueTaskWithStats(task, stats); if (task) { if (stats.size) { this._fsEntriesTotalBytes += stats.size; } this._queue.push(task); } setImmediate(callback); }.bind(this)); }; Archiver.prototype._shutdown = function() { this._moduleUnpipe(); this.end(); }; Archiver.prototype._transform = function(chunk, encoding, callback) { if (chunk) { this._pointer += chunk.length; } callback(null, chunk); }; Archiver.prototype._updateQueueTaskWithStats = function(task, stats) { if (stats.isFile()) { task.data.type = "file"; task.data.sourceType = "stream"; task.source = util2.lazyReadStream(task.filepath); } else if (stats.isDirectory() && this._moduleSupports("directory")) { task.data.name = util2.trailingSlashIt(task.data.name); task.data.type = "directory"; task.data.sourcePath = util2.trailingSlashIt(task.filepath); task.data.sourceType = "buffer"; task.source = Buffer.concat([]); } else if (stats.isSymbolicLink() && this._moduleSupports("symlink")) { var linkPath = fs.readlinkSync(task.filepath); var dirName = path.dirname(task.filepath); task.data.type = "symlink"; task.data.linkname = path.relative(dirName, path.resolve(dirName, linkPath)); task.data.sourceType = "buffer"; task.source = Buffer.concat([]); } else { if (stats.isDirectory()) { this.emit("warning", new ArchiverError("DIRECTORYNOTSUPPORTED", task.data)); } else if (stats.isSymbolicLink()) { this.emit("warning", new ArchiverError("SYMLINKNOTSUPPORTED", task.data)); } else { this.emit("warning", new ArchiverError("ENTRYNOTSUPPORTED", task.data)); } return null; } task.data = this._normalizeEntryData(task.data, stats); return task; }; Archiver.prototype.abort = function() { if (this._state.aborted || this._state.finalized) { return this; } this._abort(); return this; }; Archiver.prototype.append = function(source, data) { if (this._state.finalize || this._state.aborted) { this.emit("error", new ArchiverError("QUEUECLOSED")); return this; } data = this._normalizeEntryData(data); if (typeof data.name !== "string" || data.name.length === 0) { this.emit("error", new ArchiverError("ENTRYNAMEREQUIRED")); return this; } if (data.type === "directory" && !this._moduleSupports("directory")) { this.emit("error", new ArchiverError("DIRECTORYNOTSUPPORTED", { name: data.name })); return this; } source = util2.normalizeInputSource(source); if (Buffer.isBuffer(source)) { data.sourceType = "buffer"; } else if (util2.isStream(source)) { data.sourceType = "stream"; } else { this.emit("error", new ArchiverError("INPUTSTEAMBUFFERREQUIRED", { name: data.name })); return this; } this._entriesCount++; this._queue.push({ data, source }); return this; }; Archiver.prototype.directory = function(dirpath, destpath, data) { if (this._state.finalize || this._state.aborted) { this.emit("error", new ArchiverError("QUEUECLOSED")); return this; } if (typeof dirpath !== "string" || dirpath.length === 0) { this.emit("error", new ArchiverError("DIRECTORYDIRPATHREQUIRED")); return this; } this._pending++; if (destpath === false) { destpath = ""; } else if (typeof destpath !== "string") { destpath = dirpath; } var dataFunction = false; if (typeof data === "function") { dataFunction = data; data = {}; } else if (typeof data !== "object") { data = {}; } var globOptions = { stat: true, dot: true }; function onGlobEnd() { this._pending--; this._maybeFinalize(); } __name(onGlobEnd, "onGlobEnd"); function onGlobError(err) { this.emit("error", err); } __name(onGlobError, "onGlobError"); function onGlobMatch(match) { globber.pause(); var ignoreMatch = false; var entryData = Object.assign({}, data); entryData.name = match.relative; entryData.prefix = destpath; entryData.stats = match.stat; entryData.callback = globber.resume.bind(globber); try { if (dataFunction) { entryData = dataFunction(entryData); if (entryData === false) { ignoreMatch = true; } else if (typeof entryData !== "object") { throw new ArchiverError("DIRECTORYFUNCTIONINVALIDDATA", { dirpath }); } } } catch (e) { this.emit("error", e); return; } if (ignoreMatch) { globber.resume(); return; } this._append(match.absolute, entryData); } __name(onGlobMatch, "onGlobMatch"); var globber = glob(dirpath, globOptions); globber.on("error", onGlobError.bind(this)); globber.on("match", onGlobMatch.bind(this)); globber.on("end", onGlobEnd.bind(this)); return this; }; Archiver.prototype.file = function(filepath, data) { if (this._state.finalize || this._state.aborted) { this.emit("error", new ArchiverError("QUEUECLOSED")); return this; } if (typeof filepath !== "string" || filepath.length === 0) { this.emit("error", new ArchiverError("FILEFILEPATHREQUIRED")); return this; } this._append(filepath, data); return this; }; Archiver.prototype.glob = function(pattern, options, data) { this._pending++; options = util2.defaults(options, { stat: true, pattern }); function onGlobEnd() { this._pending--; this._maybeFinalize(); } __name(onGlobEnd, "onGlobEnd"); function onGlobError(err) { this.emit("error", err); } __name(onGlobError, "onGlobError"); function onGlobMatch(match) { globber.pause(); var entryData = Object.assign({}, data); entryData.callback = globber.resume.bind(globber); entryData.stats = match.stat; entryData.name = match.relative; this._append(match.absolute, entryData); } __name(onGlobMatch, "onGlobMatch"); var globber = glob(options.cwd || ".", options); globber.on("error", onGlobError.bind(this)); globber.on("match", onGlobMatch.bind(this)); globber.on("end", onGlobEnd.bind(this)); return this; }; Archiver.prototype.finalize = function() { if (this._state.aborted) { var abortedError = new ArchiverError("ABORTED"); this.emit("error", abortedError); return Promise.reject(abortedError); } if (this._state.finalize) { var finalizingError = new ArchiverError("FINALIZING"); this.emit("error", finalizingError); return Promise.reject(finalizingError); } this._state.finalize = true; if (this._pending === 0 && this._queue.idle() && this._statQueue.idle()) { this._finalize(); } var self2 = this; return new Promise(function(resolve, reject) { var errored; self2._module.on("end", function() { if (!errored) { resolve(); } }); self2._module.on("error", function(err) { errored = true; reject(err); }); }); }; Archiver.prototype.setFormat = function(format) { if (this._format) { this.emit("error", new ArchiverError("FORMATSET")); return this; } this._format = format; return this; }; Archiver.prototype.setModule = function(module3) { if (this._state.aborted) { this.emit("error", new ArchiverError("ABORTED")); return this; } if (this._state.module) { this.emit("error", new ArchiverError("MODULESET")); return this; } this._module = module3; this._modulePipe(); return this; }; Archiver.prototype.symlink = function(filepath, target, mode) { if (this._state.finalize || this._state.aborted) { this.emit("error", new ArchiverError("QUEUECLOSED")); return this; } if (typeof filepath !== "string" || filepath.length === 0) { this.emit("error", new ArchiverError("SYMLINKFILEPATHREQUIRED")); return this; } if (typeof target !== "string" || target.length === 0) { this.emit("error", new ArchiverError("SYMLINKTARGETREQUIRED", { filepath })); return this; } if (!this._moduleSupports("symlink")) { this.emit("error", new ArchiverError("SYMLINKNOTSUPPORTED", { filepath })); return this; } var data = {}; data.type = "symlink"; data.name = filepath.replace(/\\/g, "/"); data.linkname = target.replace(/\\/g, "/"); data.sourceType = "buffer"; if (typeof mode === "number") { data.mode = mode; } this._entriesCount++; this._queue.push({ data, source: Buffer.concat([]) }); return this; }; Archiver.prototype.pointer = function() { return this._pointer; }; Archiver.prototype.use = function(plugin) { this._streams.push(plugin); return this; }; module2.exports = Archiver; } }); // ../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/archive-entry.js var require_archive_entry = __commonJS({ "../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/archive-entry.js"(exports2, module2) { var ArchiveEntry = module2.exports = function() { }; ArchiveEntry.prototype.getName = function() { }; ArchiveEntry.prototype.getSize = function() { }; ArchiveEntry.prototype.getLastModifiedDate = function() { }; ArchiveEntry.prototype.isDirectory = function() { }; } }); // ../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/util.js var require_util4 = __commonJS({ "../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/util.js"(exports2, module2) { var util2 = module2.exports = {}; util2.dateToDos = function(d, forceLocalTime) { forceLocalTime = forceLocalTime || false; var year = forceLocalTime ? d.getFullYear() : d.getUTCFullYear(); if (year < 1980) { return 2162688; } else if (year >= 2044) { return 2141175677; } var val = { year, month: forceLocalTime ? d.getMonth() : d.getUTCMonth(), date: forceLocalTime ? d.getDate() : d.getUTCDate(), hours: forceLocalTime ? d.getHours() : d.getUTCHours(), minutes: forceLocalTime ? d.getMinutes() : d.getUTCMinutes(), seconds: forceLocalTime ? d.getSeconds() : d.getUTCSeconds() }; return val.year - 1980 << 25 | val.month + 1 << 21 | val.date << 16 | val.hours << 11 | val.minutes << 5 | val.seconds / 2; }; util2.dosToDate = function(dos) { return new Date((dos >> 25 & 127) + 1980, (dos >> 21 & 15) - 1, dos >> 16 & 31, dos >> 11 & 31, dos >> 5 & 63, (dos & 31) << 1); }; util2.fromDosTime = function(buf) { return util2.dosToDate(buf.readUInt32LE(0)); }; util2.getEightBytes = function(v) { var buf = Buffer.alloc(8); buf.writeUInt32LE(v % 4294967296, 0); buf.writeUInt32LE(v / 4294967296 | 0, 4); return buf; }; util2.getShortBytes = function(v) { var buf = Buffer.alloc(2); buf.writeUInt16LE((v & 65535) >>> 0, 0); return buf; }; util2.getShortBytesValue = function(buf, offset) { return buf.readUInt16LE(offset); }; util2.getLongBytes = function(v) { var buf = Buffer.alloc(4); buf.writeUInt32LE((v & 4294967295) >>> 0, 0); return buf; }; util2.getLongBytesValue = function(buf, offset) { return buf.readUInt32LE(offset); }; util2.toDosTime = function(d) { return util2.getLongBytes(util2.dateToDos(d)); }; } }); // ../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/general-purpose-bit.js var require_general_purpose_bit = __commonJS({ "../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/general-purpose-bit.js"(exports2, module2) { var zipUtil = require_util4(); var DATA_DESCRIPTOR_FLAG = 1 << 3; var ENCRYPTION_FLAG = 1 << 0; var NUMBER_OF_SHANNON_FANO_TREES_FLAG = 1 << 2; var SLIDING_DICTIONARY_SIZE_FLAG = 1 << 1; var STRONG_ENCRYPTION_FLAG = 1 << 6; var UFT8_NAMES_FLAG = 1 << 11; var GeneralPurposeBit = module2.exports = function() { if (!(this instanceof GeneralPurposeBit)) { return new GeneralPurposeBit(); } this.descriptor = false; this.encryption = false; this.utf8 = false; this.numberOfShannonFanoTrees = 0; this.strongEncryption = false; this.slidingDictionarySize = 0; return this; }; GeneralPurposeBit.prototype.encode = function() { return zipUtil.getShortBytes( (this.descriptor ? DATA_DESCRIPTOR_FLAG : 0) | (this.utf8 ? UFT8_NAMES_FLAG : 0) | (this.encryption ? ENCRYPTION_FLAG : 0) | (this.strongEncryption ? STRONG_ENCRYPTION_FLAG : 0) ); }; GeneralPurposeBit.prototype.parse = function(buf, offset) { var flag = zipUtil.getShortBytesValue(buf, offset); var gbp = new GeneralPurposeBit(); gbp.useDataDescriptor((flag & DATA_DESCRIPTOR_FLAG) !== 0); gbp.useUTF8ForNames((flag & UFT8_NAMES_FLAG) !== 0); gbp.useStrongEncryption((flag & STRONG_ENCRYPTION_FLAG) !== 0); gbp.useEncryption((flag & ENCRYPTION_FLAG) !== 0); gbp.setSlidingDictionarySize((flag & SLIDING_DICTIONARY_SIZE_FLAG) !== 0 ? 8192 : 4096); gbp.setNumberOfShannonFanoTrees((flag & NUMBER_OF_SHANNON_FANO_TREES_FLAG) !== 0 ? 3 : 2); return gbp; }; GeneralPurposeBit.prototype.setNumberOfShannonFanoTrees = function(n) { this.numberOfShannonFanoTrees = n; }; GeneralPurposeBit.prototype.getNumberOfShannonFanoTrees = function() { return this.numberOfShannonFanoTrees; }; GeneralPurposeBit.prototype.setSlidingDictionarySize = function(n) { this.slidingDictionarySize = n; }; GeneralPurposeBit.prototype.getSlidingDictionarySize = function() { return this.slidingDictionarySize; }; GeneralPurposeBit.prototype.useDataDescriptor = function(b) { this.descriptor = b; }; GeneralPurposeBit.prototype.usesDataDescriptor = function() { return this.descriptor; }; GeneralPurposeBit.prototype.useEncryption = function(b) { this.encryption = b; }; GeneralPurposeBit.prototype.usesEncryption = function() { return this.encryption; }; GeneralPurposeBit.prototype.useStrongEncryption = function(b) { this.strongEncryption = b; }; GeneralPurposeBit.prototype.usesStrongEncryption = function() { return this.strongEncryption; }; GeneralPurposeBit.prototype.useUTF8ForNames = function(b) { this.utf8 = b; }; GeneralPurposeBit.prototype.usesUTF8ForNames = function() { return this.utf8; }; } }); // ../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/unix-stat.js var require_unix_stat = __commonJS({ "../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/unix-stat.js"(exports2, module2) { module2.exports = { /** * Bits used for permissions (and sticky bit) */ PERM_MASK: 4095, // 07777 /** * Bits used to indicate the filesystem object type. */ FILE_TYPE_FLAG: 61440, // 0170000 /** * Indicates symbolic links. */ LINK_FLAG: 40960, // 0120000 /** * Indicates plain files. */ FILE_FLAG: 32768, // 0100000 /** * Indicates directories. */ DIR_FLAG: 16384, // 040000 // ---------------------------------------------------------- // somewhat arbitrary choices that are quite common for shared // installations // ----------------------------------------------------------- /** * Default permissions for symbolic links. */ DEFAULT_LINK_PERM: 511, // 0777 /** * Default permissions for directories. */ DEFAULT_DIR_PERM: 493, // 0755 /** * Default permissions for plain files. */ DEFAULT_FILE_PERM: 420 // 0644 }; } }); // ../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/constants.js var require_constants14 = __commonJS({ "../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/constants.js"(exports2, module2) { module2.exports = { WORD: 4, DWORD: 8, EMPTY: Buffer.alloc(0), SHORT: 2, SHORT_MASK: 65535, SHORT_SHIFT: 16, SHORT_ZERO: Buffer.from(Array(2)), LONG: 4, LONG_ZERO: Buffer.from(Array(4)), MIN_VERSION_INITIAL: 10, MIN_VERSION_DATA_DESCRIPTOR: 20, MIN_VERSION_ZIP64: 45, VERSION_MADEBY: 45, METHOD_STORED: 0, METHOD_DEFLATED: 8, PLATFORM_UNIX: 3, PLATFORM_FAT: 0, SIG_LFH: 67324752, SIG_DD: 134695760, SIG_CFH: 33639248, SIG_EOCD: 101010256, SIG_ZIP64_EOCD: 101075792, SIG_ZIP64_EOCD_LOC: 117853008, ZIP64_MAGIC_SHORT: 65535, ZIP64_MAGIC: 4294967295, ZIP64_EXTRA_ID: 1, ZLIB_NO_COMPRESSION: 0, ZLIB_BEST_SPEED: 1, ZLIB_BEST_COMPRESSION: 9, ZLIB_DEFAULT_COMPRESSION: -1, MODE_MASK: 4095, DEFAULT_FILE_MODE: 33188, // 010644 = -rw-r--r-- = S_IFREG | S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH DEFAULT_DIR_MODE: 16877, // 040755 = drwxr-xr-x = S_IFDIR | S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH EXT_FILE_ATTR_DIR: 1106051088, // 010173200020 = drwxr-xr-x = (((S_IFDIR | 0755) << 16) | S_DOS_D) EXT_FILE_ATTR_FILE: 2175008800, // 020151000040 = -rw-r--r-- = (((S_IFREG | 0644) << 16) | S_DOS_A) >>> 0 // Unix file types S_IFMT: 61440, // 0170000 type of file mask S_IFIFO: 4096, // 010000 named pipe (fifo) S_IFCHR: 8192, // 020000 character special S_IFDIR: 16384, // 040000 directory S_IFBLK: 24576, // 060000 block special S_IFREG: 32768, // 0100000 regular S_IFLNK: 40960, // 0120000 symbolic link S_IFSOCK: 49152, // 0140000 socket // DOS file type flags S_DOS_A: 32, // 040 Archive S_DOS_D: 16, // 020 Directory S_DOS_V: 8, // 010 Volume S_DOS_S: 4, // 04 System S_DOS_H: 2, // 02 Hidden S_DOS_R: 1 // 01 Read Only }; } }); // ../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/zip-archive-entry.js var require_zip_archive_entry = __commonJS({ "../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/zip-archive-entry.js"(exports2, module2) { var inherits2 = require("util").inherits; var normalizePath = require_normalize_path(); var ArchiveEntry = require_archive_entry(); var GeneralPurposeBit = require_general_purpose_bit(); var UnixStat = require_unix_stat(); var constants = require_constants14(); var zipUtil = require_util4(); var ZipArchiveEntry = module2.exports = function(name) { if (!(this instanceof ZipArchiveEntry)) { return new ZipArchiveEntry(name); } ArchiveEntry.call(this); this.platform = constants.PLATFORM_FAT; this.method = -1; this.name = null; this.size = 0; this.csize = 0; this.gpb = new GeneralPurposeBit(); this.crc = 0; this.time = -1; this.minver = constants.MIN_VERSION_INITIAL; this.mode = -1; this.extra = null; this.exattr = 0; this.inattr = 0; this.comment = null; if (name) { this.setName(name); } }; inherits2(ZipArchiveEntry, ArchiveEntry); ZipArchiveEntry.prototype.getCentralDirectoryExtra = function() { return this.getExtra(); }; ZipArchiveEntry.prototype.getComment = function() { return this.comment !== null ? this.comment : ""; }; ZipArchiveEntry.prototype.getCompressedSize = function() { return this.csize; }; ZipArchiveEntry.prototype.getCrc = function() { return this.crc; }; ZipArchiveEntry.prototype.getExternalAttributes = function() { return this.exattr; }; ZipArchiveEntry.prototype.getExtra = function() { return this.extra !== null ? this.extra : constants.EMPTY; }; ZipArchiveEntry.prototype.getGeneralPurposeBit = function() { return this.gpb; }; ZipArchiveEntry.prototype.getInternalAttributes = function() { return this.inattr; }; ZipArchiveEntry.prototype.getLastModifiedDate = function() { return this.getTime(); }; ZipArchiveEntry.prototype.getLocalFileDataExtra = function() { return this.getExtra(); }; ZipArchiveEntry.prototype.getMethod = function() { return this.method; }; ZipArchiveEntry.prototype.getName = function() { return this.name; }; ZipArchiveEntry.prototype.getPlatform = function() { return this.platform; }; ZipArchiveEntry.prototype.getSize = function() { return this.size; }; ZipArchiveEntry.prototype.getTime = function() { return this.time !== -1 ? zipUtil.dosToDate(this.time) : -1; }; ZipArchiveEntry.prototype.getTimeDos = function() { return this.time !== -1 ? this.time : 0; }; ZipArchiveEntry.prototype.getUnixMode = function() { return this.platform !== constants.PLATFORM_UNIX ? 0 : this.getExternalAttributes() >> constants.SHORT_SHIFT & constants.SHORT_MASK; }; ZipArchiveEntry.prototype.getVersionNeededToExtract = function() { return this.minver; }; ZipArchiveEntry.prototype.setComment = function(comment) { if (Buffer.byteLength(comment) !== comment.length) { this.getGeneralPurposeBit().useUTF8ForNames(true); } this.comment = comment; }; ZipArchiveEntry.prototype.setCompressedSize = function(size) { if (size < 0) { throw new Error("invalid entry compressed size"); } this.csize = size; }; ZipArchiveEntry.prototype.setCrc = function(crc) { if (crc < 0) { throw new Error("invalid entry crc32"); } this.crc = crc; }; ZipArchiveEntry.prototype.setExternalAttributes = function(attr) { this.exattr = attr >>> 0; }; ZipArchiveEntry.prototype.setExtra = function(extra) { this.extra = extra; }; ZipArchiveEntry.prototype.setGeneralPurposeBit = function(gpb) { if (!(gpb instanceof GeneralPurposeBit)) { throw new Error("invalid entry GeneralPurposeBit"); } this.gpb = gpb; }; ZipArchiveEntry.prototype.setInternalAttributes = function(attr) { this.inattr = attr; }; ZipArchiveEntry.prototype.setMethod = function(method) { if (method < 0) { throw new Error("invalid entry compression method"); } this.method = method; }; ZipArchiveEntry.prototype.setName = function(name, prependSlash = false) { name = normalizePath(name, false).replace(/^\w+:/, "").replace(/^(\.\.\/|\/)+/, ""); if (prependSlash) { name = `/${name}`; } if (Buffer.byteLength(name) !== name.length) { this.getGeneralPurposeBit().useUTF8ForNames(true); } this.name = name; }; ZipArchiveEntry.prototype.setPlatform = function(platform) { this.platform = platform; }; ZipArchiveEntry.prototype.setSize = function(size) { if (size < 0) { throw new Error("invalid entry size"); } this.size = size; }; ZipArchiveEntry.prototype.setTime = function(time, forceLocalTime) { if (!(time instanceof Date)) { throw new Error("invalid entry time"); } this.time = zipUtil.dateToDos(time, forceLocalTime); }; ZipArchiveEntry.prototype.setUnixMode = function(mode) { mode |= this.isDirectory() ? constants.S_IFDIR : constants.S_IFREG; var extattr = 0; extattr |= mode << constants.SHORT_SHIFT | (this.isDirectory() ? constants.S_DOS_D : constants.S_DOS_A); this.setExternalAttributes(extattr); this.mode = mode & constants.MODE_MASK; this.platform = constants.PLATFORM_UNIX; }; ZipArchiveEntry.prototype.setVersionNeededToExtract = function(minver) { this.minver = minver; }; ZipArchiveEntry.prototype.isDirectory = function() { return this.getName().slice(-1) === "/"; }; ZipArchiveEntry.prototype.isUnixSymlink = function() { return (this.getUnixMode() & UnixStat.FILE_TYPE_FLAG) === UnixStat.LINK_FLAG; }; ZipArchiveEntry.prototype.isZip64 = function() { return this.csize > constants.ZIP64_MAGIC || this.size > constants.ZIP64_MAGIC; }; } }); // ../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/util/index.js var require_util5 = __commonJS({ "../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/util/index.js"(exports2, module2) { var Stream = require("stream").Stream; var PassThrough = require_readable().PassThrough; var util2 = module2.exports = {}; util2.isStream = function(source) { return source instanceof Stream; }; util2.normalizeInputSource = function(source) { if (source === null) { return Buffer.alloc(0); } else if (typeof source === "string") { return Buffer.from(source); } else if (util2.isStream(source) && !source._readableState) { var normalized = new PassThrough(); source.pipe(normalized); return normalized; } return source; }; } }); // ../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/archive-output-stream.js var require_archive_output_stream = __commonJS({ "../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/archive-output-stream.js"(exports2, module2) { var inherits2 = require("util").inherits; var Transform = require_readable().Transform; var ArchiveEntry = require_archive_entry(); var util2 = require_util5(); var ArchiveOutputStream = module2.exports = function(options) { if (!(this instanceof ArchiveOutputStream)) { return new ArchiveOutputStream(options); } Transform.call(this, options); this.offset = 0; this._archive = { finish: false, finished: false, processing: false }; }; inherits2(ArchiveOutputStream, Transform); ArchiveOutputStream.prototype._appendBuffer = function(zae, source, callback) { }; ArchiveOutputStream.prototype._appendStream = function(zae, source, callback) { }; ArchiveOutputStream.prototype._emitErrorCallback = function(err) { if (err) { this.emit("error", err); } }; ArchiveOutputStream.prototype._finish = function(ae) { }; ArchiveOutputStream.prototype._normalizeEntry = function(ae) { }; ArchiveOutputStream.prototype._transform = function(chunk, encoding, callback) { callback(null, chunk); }; ArchiveOutputStream.prototype.entry = function(ae, source, callback) { source = source || null; if (typeof callback !== "function") { callback = this._emitErrorCallback.bind(this); } if (!(ae instanceof ArchiveEntry)) { callback(new Error("not a valid instance of ArchiveEntry")); return; } if (this._archive.finish || this._archive.finished) { callback(new Error("unacceptable entry after finish")); return; } if (this._archive.processing) { callback(new Error("already processing an entry")); return; } this._archive.processing = true; this._normalizeEntry(ae); this._entry = ae; source = util2.normalizeInputSource(source); if (Buffer.isBuffer(source)) { this._appendBuffer(ae, source, callback); } else if (util2.isStream(source)) { this._appendStream(ae, source, callback); } else { this._archive.processing = false; callback(new Error("input source must be valid Stream or Buffer instance")); return; } return this; }; ArchiveOutputStream.prototype.finish = function() { if (this._archive.processing) { this._archive.finish = true; return; } this._finish(); }; ArchiveOutputStream.prototype.getBytesWritten = function() { return this.offset; }; ArchiveOutputStream.prototype.write = function(chunk, cb) { if (chunk) { this.offset += chunk.length; } return Transform.prototype.write.call(this, chunk, cb); }; } }); // ../../node_modules/.pnpm/buffer-crc32@0.2.13/node_modules/buffer-crc32/index.js var require_buffer_crc32 = __commonJS({ "../../node_modules/.pnpm/buffer-crc32@0.2.13/node_modules/buffer-crc32/index.js"(exports2, module2) { var Buffer2 = require("buffer").Buffer; var CRC_TABLE = [ 0, 1996959894, 3993919788, 2567524794, 124634137, 1886057615, 3915621685, 2657392035, 249268274, 2044508324, 3772115230, 2547177864, 162941995, 2125561021, 3887607047, 2428444049, 498536548, 1789927666, 4089016648, 2227061214, 450548861, 1843258603, 4107580753, 2211677639, 325883990, 1684777152, 4251122042, 2321926636, 335633487, 1661365465, 4195302755, 2366115317, 997073096, 1281953886, 3579855332, 2724688242, 1006888145, 1258607687, 3524101629, 2768942443, 901097722, 1119000684, 3686517206, 2898065728, 853044451, 1172266101, 3705015759, 2882616665, 651767980, 1373503546, 3369554304, 3218104598, 565507253, 1454621731, 3485111705, 3099436303, 671266974, 1594198024, 3322730930, 2970347812, 795835527, 1483230225, 3244367275, 3060149565, 1994146192, 31158534, 2563907772, 4023717930, 1907459465, 112637215, 2680153253, 3904427059, 2013776290, 251722036, 2517215374, 3775830040, 2137656763, 141376813, 2439277719, 3865271297, 1802195444, 476864866, 2238001368, 4066508878, 1812370925, 453092731, 2181625025, 4111451223, 1706088902, 314042704, 2344532202, 4240017532, 1658658271, 366619977, 2362670323, 4224994405, 1303535960, 984961486, 2747007092, 3569037538, 1256170817, 1037604311, 2765210733, 3554079995, 1131014506, 879679996, 2909243462, 3663771856, 1141124467, 855842277, 2852801631, 3708648649, 1342533948, 654459306, 3188396048, 3373015174, 1466479909, 544179635, 3110523913, 3462522015, 1591671054, 702138776, 2966460450, 3352799412, 1504918807, 783551873, 3082640443, 3233442989, 3988292384, 2596254646, 62317068, 1957810842, 3939845945, 2647816111, 81470997, 1943803523, 3814918930, 2489596804, 225274430, 2053790376, 3826175755, 2466906013, 167816743, 2097651377, 4027552580, 2265490386, 503444072, 1762050814, 4150417245, 2154129355, 426522225, 1852507879, 4275313526, 2312317920, 282753626, 1742555852, 4189708143, 2394877945, 397917763, 1622183637, 3604390888, 2714866558, 953729732, 1340076626, 3518719985, 2797360999, 1068828381, 1219638859, 3624741850, 2936675148, 906185462, 1090812512, 3747672003, 2825379669, 829329135, 1181335161, 3412177804, 3160834842, 628085408, 1382605366, 3423369109, 3138078467, 570562233, 1426400815, 3317316542, 2998733608, 733239954, 1555261956, 3268935591, 3050360625, 752459403, 1541320221, 2607071920, 3965973030, 1969922972, 40735498, 2617837225, 3943577151, 1913087877, 83908371, 2512341634, 3803740692, 2075208622, 213261112, 2463272603, 3855990285, 2094854071, 198958881, 2262029012, 4057260610, 1759359992, 534414190, 2176718541, 4139329115, 1873836001, 414664567, 2282248934, 4279200368, 1711684554, 285281116, 2405801727, 4167216745, 1634467795, 376229701, 2685067896, 3608007406, 1308918612, 956543938, 2808555105, 3495958263, 1231636301, 1047427035, 2932959818, 3654703836, 1088359270, 936918e3, 2847714899, 3736837829, 1202900863, 817233897, 3183342108, 3401237130, 1404277552, 615818150, 3134207493, 3453421203, 1423857449, 601450431, 3009837614, 3294710456, 1567103746, 711928724, 3020668471, 3272380065, 1510334235, 755167117 ]; if (typeof Int32Array !== "undefined") { CRC_TABLE = new Int32Array(CRC_TABLE); } function ensureBuffer(input) { if (Buffer2.isBuffer(input)) { return input; } var hasNewBufferAPI = typeof Buffer2.alloc === "function" && typeof Buffer2.from === "function"; if (typeof input === "number") { return hasNewBufferAPI ? Buffer2.alloc(input) : new Buffer2(input); } else if (typeof input === "string") { return hasNewBufferAPI ? Buffer2.from(input) : new Buffer2(input); } else { throw new Error("input must be buffer, number, or string, received " + typeof input); } } __name(ensureBuffer, "ensureBuffer"); function bufferizeInt(num) { var tmp = ensureBuffer(4); tmp.writeInt32BE(num, 0); return tmp; } __name(bufferizeInt, "bufferizeInt"); function _crc32(buf, previous) { buf = ensureBuffer(buf); if (Buffer2.isBuffer(previous)) { previous = previous.readUInt32BE(0); } var crc = ~~previous ^ -1; for (var n = 0; n < buf.length; n++) { crc = CRC_TABLE[(crc ^ buf[n]) & 255] ^ crc >>> 8; } return crc ^ -1; } __name(_crc32, "_crc32"); function crc32() { return bufferizeInt(_crc32.apply(null, arguments)); } __name(crc32, "crc32"); crc32.signed = function() { return _crc32.apply(null, arguments); }; crc32.unsigned = function() { return _crc32.apply(null, arguments) >>> 0; }; module2.exports = crc32; } }); // ../../node_modules/.pnpm/crc-32@1.2.2/node_modules/crc-32/crc32.js var require_crc323 = __commonJS({ "../../node_modules/.pnpm/crc-32@1.2.2/node_modules/crc-32/crc32.js"(exports2) { var CRC32; (function(factory) { if (typeof DO_NOT_EXPORT_CRC === "undefined") { if ("object" === typeof exports2) { factory(exports2); } else if ("function" === typeof define && define.amd) { define(function() { var module3 = {}; factory(module3); return module3; }); } else { factory(CRC32 = {}); } } else { factory(CRC32 = {}); } })(function(CRC322) { CRC322.version = "1.2.2"; function signed_crc_table() { var c = 0, table = new Array(256); for (var n = 0; n != 256; ++n) { c = n; c = c & 1 ? -306674912 ^ c >>> 1 : c >>> 1; c = c & 1 ? -306674912 ^ c >>> 1 : c >>> 1; c = c & 1 ? -306674912 ^ c >>> 1 : c >>> 1; c = c & 1 ? -306674912 ^ c >>> 1 : c >>> 1; c = c & 1 ? -306674912 ^ c >>> 1 : c >>> 1; c = c & 1 ? -306674912 ^ c >>> 1 : c >>> 1; c = c & 1 ? -306674912 ^ c >>> 1 : c >>> 1; c = c & 1 ? -306674912 ^ c >>> 1 : c >>> 1; table[n] = c; } return typeof Int32Array !== "undefined" ? new Int32Array(table) : table; } __name(signed_crc_table, "signed_crc_table"); var T0 = signed_crc_table(); function slice_by_16_tables(T) { var c = 0, v = 0, n = 0, table = typeof Int32Array !== "undefined" ? new Int32Array(4096) : new Array(4096); for (n = 0; n != 256; ++n) table[n] = T[n]; for (n = 0; n != 256; ++n) { v = T[n]; for (c = 256 + n; c < 4096; c += 256) v = table[c] = v >>> 8 ^ T[v & 255]; } var out = []; for (n = 1; n != 16; ++n) out[n - 1] = typeof Int32Array !== "undefined" ? table.subarray(n * 256, n * 256 + 256) : table.slice(n * 256, n * 256 + 256); return out; } __name(slice_by_16_tables, "slice_by_16_tables"); var TT = slice_by_16_tables(T0); var T1 = TT[0], T2 = TT[1], T3 = TT[2], T4 = TT[3], T5 = TT[4]; var T6 = TT[5], T7 = TT[6], T8 = TT[7], T9 = TT[8], Ta = TT[9]; var Tb = TT[10], Tc = TT[11], Td = TT[12], Te = TT[13], Tf = TT[14]; function crc32_bstr(bstr, seed) { var C = seed ^ -1; for (var i = 0, L = bstr.length; i < L; ) C = C >>> 8 ^ T0[(C ^ bstr.charCodeAt(i++)) & 255]; return ~C; } __name(crc32_bstr, "crc32_bstr"); function crc32_buf(B, seed) { var C = seed ^ -1, L = B.length - 15, i = 0; for (; i < L; ) C = Tf[B[i++] ^ C & 255] ^ Te[B[i++] ^ C >> 8 & 255] ^ Td[B[i++] ^ C >> 16 & 255] ^ Tc[B[i++] ^ C >>> 24] ^ Tb[B[i++]] ^ Ta[B[i++]] ^ T9[B[i++]] ^ T8[B[i++]] ^ T7[B[i++]] ^ T6[B[i++]] ^ T5[B[i++]] ^ T4[B[i++]] ^ T3[B[i++]] ^ T2[B[i++]] ^ T1[B[i++]] ^ T0[B[i++]]; L += 15; while (i < L) C = C >>> 8 ^ T0[(C ^ B[i++]) & 255]; return ~C; } __name(crc32_buf, "crc32_buf"); function crc32_str(str, seed) { var C = seed ^ -1; for (var i = 0, L = str.length, c = 0, d = 0; i < L; ) { c = str.charCodeAt(i++); if (c < 128) { C = C >>> 8 ^ T0[(C ^ c) & 255]; } else if (c < 2048) { C = C >>> 8 ^ T0[(C ^ (192 | c >> 6 & 31)) & 255]; C = C >>> 8 ^ T0[(C ^ (128 | c & 63)) & 255]; } else if (c >= 55296 && c < 57344) { c = (c & 1023) + 64; d = str.charCodeAt(i++) & 1023; C = C >>> 8 ^ T0[(C ^ (240 | c >> 8 & 7)) & 255]; C = C >>> 8 ^ T0[(C ^ (128 | c >> 2 & 63)) & 255]; C = C >>> 8 ^ T0[(C ^ (128 | d >> 6 & 15 | (c & 3) << 4)) & 255]; C = C >>> 8 ^ T0[(C ^ (128 | d & 63)) & 255]; } else { C = C >>> 8 ^ T0[(C ^ (224 | c >> 12 & 15)) & 255]; C = C >>> 8 ^ T0[(C ^ (128 | c >> 6 & 63)) & 255]; C = C >>> 8 ^ T0[(C ^ (128 | c & 63)) & 255]; } } return ~C; } __name(crc32_str, "crc32_str"); CRC322.table = T0; CRC322.bstr = crc32_bstr; CRC322.buf = crc32_buf; CRC322.str = crc32_str; }); } }); // ../../node_modules/.pnpm/crc32-stream@4.0.3/node_modules/crc32-stream/lib/crc32-stream.js var require_crc32_stream = __commonJS({ "../../node_modules/.pnpm/crc32-stream@4.0.3/node_modules/crc32-stream/lib/crc32-stream.js"(exports2, module2) { "use strict"; var { Transform } = require_readable(); var crc32 = require_crc323(); var CRC32Stream = class extends Transform { static { __name(this, "CRC32Stream"); } constructor(options) { super(options); this.checksum = Buffer.allocUnsafe(4); this.checksum.writeInt32BE(0, 0); this.rawSize = 0; } _transform(chunk, encoding, callback) { if (chunk) { this.checksum = crc32.buf(chunk, this.checksum) >>> 0; this.rawSize += chunk.length; } callback(null, chunk); } digest(encoding) { const checksum = Buffer.allocUnsafe(4); checksum.writeUInt32BE(this.checksum >>> 0, 0); return encoding ? checksum.toString(encoding) : checksum; } hex() { return this.digest("hex").toUpperCase(); } size() { return this.rawSize; } }; module2.exports = CRC32Stream; } }); // ../../node_modules/.pnpm/crc32-stream@4.0.3/node_modules/crc32-stream/lib/deflate-crc32-stream.js var require_deflate_crc32_stream = __commonJS({ "../../node_modules/.pnpm/crc32-stream@4.0.3/node_modules/crc32-stream/lib/deflate-crc32-stream.js"(exports2, module2) { "use strict"; var { DeflateRaw } = require("zlib"); var crc32 = require_crc323(); var DeflateCRC32Stream = class extends DeflateRaw { static { __name(this, "DeflateCRC32Stream"); } constructor(options) { super(options); this.checksum = Buffer.allocUnsafe(4); this.checksum.writeInt32BE(0, 0); this.rawSize = 0; this.compressedSize = 0; } push(chunk, encoding) { if (chunk) { this.compressedSize += chunk.length; } return super.push(chunk, encoding); } _transform(chunk, encoding, callback) { if (chunk) { this.checksum = crc32.buf(chunk, this.checksum) >>> 0; this.rawSize += chunk.length; } super._transform(chunk, encoding, callback); } digest(encoding) { const checksum = Buffer.allocUnsafe(4); checksum.writeUInt32BE(this.checksum >>> 0, 0); return encoding ? checksum.toString(encoding) : checksum; } hex() { return this.digest("hex").toUpperCase(); } size(compressed = false) { if (compressed) { return this.compressedSize; } else { return this.rawSize; } } }; module2.exports = DeflateCRC32Stream; } }); // ../../node_modules/.pnpm/crc32-stream@4.0.3/node_modules/crc32-stream/lib/index.js var require_lib13 = __commonJS({ "../../node_modules/.pnpm/crc32-stream@4.0.3/node_modules/crc32-stream/lib/index.js"(exports2, module2) { "use strict"; module2.exports = { CRC32Stream: require_crc32_stream(), DeflateCRC32Stream: require_deflate_crc32_stream() }; } }); // ../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/zip-archive-output-stream.js var require_zip_archive_output_stream = __commonJS({ "../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/archivers/zip/zip-archive-output-stream.js"(exports2, module2) { var inherits2 = require("util").inherits; var crc32 = require_buffer_crc32(); var { CRC32Stream } = require_lib13(); var { DeflateCRC32Stream } = require_lib13(); var ArchiveOutputStream = require_archive_output_stream(); var ZipArchiveEntry = require_zip_archive_entry(); var GeneralPurposeBit = require_general_purpose_bit(); var constants = require_constants14(); var util2 = require_util5(); var zipUtil = require_util4(); var ZipArchiveOutputStream = module2.exports = function(options) { if (!(this instanceof ZipArchiveOutputStream)) { return new ZipArchiveOutputStream(options); } options = this.options = this._defaults(options); ArchiveOutputStream.call(this, options); this._entry = null; this._entries = []; this._archive = { centralLength: 0, centralOffset: 0, comment: "", finish: false, finished: false, processing: false, forceZip64: options.forceZip64, forceLocalTime: options.forceLocalTime }; }; inherits2(ZipArchiveOutputStream, ArchiveOutputStream); ZipArchiveOutputStream.prototype._afterAppend = function(ae) { this._entries.push(ae); if (ae.getGeneralPurposeBit().usesDataDescriptor()) { this._writeDataDescriptor(ae); } this._archive.processing = false; this._entry = null; if (this._archive.finish && !this._archive.finished) { this._finish(); } }; ZipArchiveOutputStream.prototype._appendBuffer = function(ae, source, callback) { if (source.length === 0) { ae.setMethod(constants.METHOD_STORED); } var method = ae.getMethod(); if (method === constants.METHOD_STORED) { ae.setSize(source.length); ae.setCompressedSize(source.length); ae.setCrc(crc32.unsigned(source)); } this._writeLocalFileHeader(ae); if (method === constants.METHOD_STORED) { this.write(source); this._afterAppend(ae); callback(null, ae); return; } else if (method === constants.METHOD_DEFLATED) { this._smartStream(ae, callback).end(source); return; } else { callback(new Error("compression method " + method + " not implemented")); return; } }; ZipArchiveOutputStream.prototype._appendStream = function(ae, source, callback) { ae.getGeneralPurposeBit().useDataDescriptor(true); ae.setVersionNeededToExtract(constants.MIN_VERSION_DATA_DESCRIPTOR); this._writeLocalFileHeader(ae); var smart = this._smartStream(ae, callback); source.once("error", function(err) { smart.emit("error", err); smart.end(); }); source.pipe(smart); }; ZipArchiveOutputStream.prototype._defaults = function(o) { if (typeof o !== "object") { o = {}; } if (typeof o.zlib !== "object") { o.zlib = {}; } if (typeof o.zlib.level !== "number") { o.zlib.level = constants.ZLIB_BEST_SPEED; } o.forceZip64 = !!o.forceZip64; o.forceLocalTime = !!o.forceLocalTime; return o; }; ZipArchiveOutputStream.prototype._finish = function() { this._archive.centralOffset = this.offset; this._entries.forEach(function(ae) { this._writeCentralFileHeader(ae); }.bind(this)); this._archive.centralLength = this.offset - this._archive.centralOffset; if (this.isZip64()) { this._writeCentralDirectoryZip64(); } this._writeCentralDirectoryEnd(); this._archive.processing = false; this._archive.finish = true; this._archive.finished = true; this.end(); }; ZipArchiveOutputStream.prototype._normalizeEntry = function(ae) { if (ae.getMethod() === -1) { ae.setMethod(constants.METHOD_DEFLATED); } if (ae.getMethod() === constants.METHOD_DEFLATED) { ae.getGeneralPurposeBit().useDataDescriptor(true); ae.setVersionNeededToExtract(constants.MIN_VERSION_DATA_DESCRIPTOR); } if (ae.getTime() === -1) { ae.setTime(/* @__PURE__ */ new Date(), this._archive.forceLocalTime); } ae._offsets = { file: 0, data: 0, contents: 0 }; }; ZipArchiveOutputStream.prototype._smartStream = function(ae, callback) { var deflate = ae.getMethod() === constants.METHOD_DEFLATED; var process2 = deflate ? new DeflateCRC32Stream(this.options.zlib) : new CRC32Stream(); var error = null; function handleStuff() { var digest = process2.digest().readUInt32BE(0); ae.setCrc(digest); ae.setSize(process2.size()); ae.setCompressedSize(process2.size(true)); this._afterAppend(ae); callback(error, ae); } __name(handleStuff, "handleStuff"); process2.once("end", handleStuff.bind(this)); process2.once("error", function(err) { error = err; }); process2.pipe(this, { end: false }); return process2; }; ZipArchiveOutputStream.prototype._writeCentralDirectoryEnd = function() { var records = this._entries.length; var size = this._archive.centralLength; var offset = this._archive.centralOffset; if (this.isZip64()) { records = constants.ZIP64_MAGIC_SHORT; size = constants.ZIP64_MAGIC; offset = constants.ZIP64_MAGIC; } this.write(zipUtil.getLongBytes(constants.SIG_EOCD)); this.write(constants.SHORT_ZERO); this.write(constants.SHORT_ZERO); this.write(zipUtil.getShortBytes(records)); this.write(zipUtil.getShortBytes(records)); this.write(zipUtil.getLongBytes(size)); this.write(zipUtil.getLongBytes(offset)); var comment = this.getComment(); var commentLength = Buffer.byteLength(comment); this.write(zipUtil.getShortBytes(commentLength)); this.write(comment); }; ZipArchiveOutputStream.prototype._writeCentralDirectoryZip64 = function() { this.write(zipUtil.getLongBytes(constants.SIG_ZIP64_EOCD)); this.write(zipUtil.getEightBytes(44)); this.write(zipUtil.getShortBytes(constants.MIN_VERSION_ZIP64)); this.write(zipUtil.getShortBytes(constants.MIN_VERSION_ZIP64)); this.write(constants.LONG_ZERO); this.write(constants.LONG_ZERO); this.write(zipUtil.getEightBytes(this._entries.length)); this.write(zipUtil.getEightBytes(this._entries.length)); this.write(zipUtil.getEightBytes(this._archive.centralLength)); this.write(zipUtil.getEightBytes(this._archive.centralOffset)); this.write(zipUtil.getLongBytes(constants.SIG_ZIP64_EOCD_LOC)); this.write(constants.LONG_ZERO); this.write(zipUtil.getEightBytes(this._archive.centralOffset + this._archive.centralLength)); this.write(zipUtil.getLongBytes(1)); }; ZipArchiveOutputStream.prototype._writeCentralFileHeader = function(ae) { var gpb = ae.getGeneralPurposeBit(); var method = ae.getMethod(); var offsets = ae._offsets; var size = ae.getSize(); var compressedSize = ae.getCompressedSize(); if (ae.isZip64() || offsets.file > constants.ZIP64_MAGIC) { size = constants.ZIP64_MAGIC; compressedSize = constants.ZIP64_MAGIC; ae.setVersionNeededToExtract(constants.MIN_VERSION_ZIP64); var extraBuf = Buffer.concat([ zipUtil.getShortBytes(constants.ZIP64_EXTRA_ID), zipUtil.getShortBytes(24), zipUtil.getEightBytes(ae.getSize()), zipUtil.getEightBytes(ae.getCompressedSize()), zipUtil.getEightBytes(offsets.file) ], 28); ae.setExtra(extraBuf); } this.write(zipUtil.getLongBytes(constants.SIG_CFH)); this.write(zipUtil.getShortBytes(ae.getPlatform() << 8 | constants.VERSION_MADEBY)); this.write(zipUtil.getShortBytes(ae.getVersionNeededToExtract())); this.write(gpb.encode()); this.write(zipUtil.getShortBytes(method)); this.write(zipUtil.getLongBytes(ae.getTimeDos())); this.write(zipUtil.getLongBytes(ae.getCrc())); this.write(zipUtil.getLongBytes(compressedSize)); this.write(zipUtil.getLongBytes(size)); var name = ae.getName(); var comment = ae.getComment(); var extra = ae.getCentralDirectoryExtra(); if (gpb.usesUTF8ForNames()) { name = Buffer.from(name); comment = Buffer.from(comment); } this.write(zipUtil.getShortBytes(name.length)); this.write(zipUtil.getShortBytes(extra.length)); this.write(zipUtil.getShortBytes(comment.length)); this.write(constants.SHORT_ZERO); this.write(zipUtil.getShortBytes(ae.getInternalAttributes())); this.write(zipUtil.getLongBytes(ae.getExternalAttributes())); if (offsets.file > constants.ZIP64_MAGIC) { this.write(zipUtil.getLongBytes(constants.ZIP64_MAGIC)); } else { this.write(zipUtil.getLongBytes(offsets.file)); } this.write(name); this.write(extra); this.write(comment); }; ZipArchiveOutputStream.prototype._writeDataDescriptor = function(ae) { this.write(zipUtil.getLongBytes(constants.SIG_DD)); this.write(zipUtil.getLongBytes(ae.getCrc())); if (ae.isZip64()) { this.write(zipUtil.getEightBytes(ae.getCompressedSize())); this.write(zipUtil.getEightBytes(ae.getSize())); } else { this.write(zipUtil.getLongBytes(ae.getCompressedSize())); this.write(zipUtil.getLongBytes(ae.getSize())); } }; ZipArchiveOutputStream.prototype._writeLocalFileHeader = function(ae) { var gpb = ae.getGeneralPurposeBit(); var method = ae.getMethod(); var name = ae.getName(); var extra = ae.getLocalFileDataExtra(); if (ae.isZip64()) { gpb.useDataDescriptor(true); ae.setVersionNeededToExtract(constants.MIN_VERSION_ZIP64); } if (gpb.usesUTF8ForNames()) { name = Buffer.from(name); } ae._offsets.file = this.offset; this.write(zipUtil.getLongBytes(constants.SIG_LFH)); this.write(zipUtil.getShortBytes(ae.getVersionNeededToExtract())); this.write(gpb.encode()); this.write(zipUtil.getShortBytes(method)); this.write(zipUtil.getLongBytes(ae.getTimeDos())); ae._offsets.data = this.offset; if (gpb.usesDataDescriptor()) { this.write(constants.LONG_ZERO); this.write(constants.LONG_ZERO); this.write(constants.LONG_ZERO); } else { this.write(zipUtil.getLongBytes(ae.getCrc())); this.write(zipUtil.getLongBytes(ae.getCompressedSize())); this.write(zipUtil.getLongBytes(ae.getSize())); } this.write(zipUtil.getShortBytes(name.length)); this.write(zipUtil.getShortBytes(extra.length)); this.write(name); this.write(extra); ae._offsets.contents = this.offset; }; ZipArchiveOutputStream.prototype.getComment = function(comment) { return this._archive.comment !== null ? this._archive.comment : ""; }; ZipArchiveOutputStream.prototype.isZip64 = function() { return this._archive.forceZip64 || this._entries.length > constants.ZIP64_MAGIC_SHORT || this._archive.centralLength > constants.ZIP64_MAGIC || this._archive.centralOffset > constants.ZIP64_MAGIC; }; ZipArchiveOutputStream.prototype.setComment = function(comment) { this._archive.comment = comment; }; } }); // ../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/compress-commons.js var require_compress_commons = __commonJS({ "../../node_modules/.pnpm/compress-commons@4.1.2/node_modules/compress-commons/lib/compress-commons.js"(exports2, module2) { module2.exports = { ArchiveEntry: require_archive_entry(), ZipArchiveEntry: require_zip_archive_entry(), ArchiveOutputStream: require_archive_output_stream(), ZipArchiveOutputStream: require_zip_archive_output_stream() }; } }); // ../../node_modules/.pnpm/archiver-utils@3.0.4/node_modules/archiver-utils/file.js var require_file3 = __commonJS({ "../../node_modules/.pnpm/archiver-utils@3.0.4/node_modules/archiver-utils/file.js"(exports2, module2) { var fs = require_graceful_fs(); var path = require("path"); var flatten = require_lodash18(); var difference = require_lodash19(); var union = require_lodash20(); var isPlainObject = require_lodash7(); var glob = require_glob(); var file2 = module2.exports = {}; var pathSeparatorRe = /[\/\\]/g; var processPatterns = /* @__PURE__ */ __name(function(patterns, fn) { var result = []; flatten(patterns).forEach(function(pattern) { var exclusion = pattern.indexOf("!") === 0; if (exclusion) { pattern = pattern.slice(1); } var matches = fn(pattern); if (exclusion) { result = difference(result, matches); } else { result = union(result, matches); } }); return result; }, "processPatterns"); file2.exists = function() { var filepath = path.join.apply(path, arguments); return fs.existsSync(filepath); }; file2.expand = function(...args) { var options = isPlainObject(args[0]) ? args.shift() : {}; var patterns = Array.isArray(args[0]) ? args[0] : args; if (patterns.length === 0) { return []; } var matches = processPatterns(patterns, function(pattern) { return glob.sync(pattern, options); }); if (options.filter) { matches = matches.filter(function(filepath) { filepath = path.join(options.cwd || "", filepath); try { if (typeof options.filter === "function") { return options.filter(filepath); } else { return fs.statSync(filepath)[options.filter](); } } catch (e) { return false; } }); } return matches; }; file2.expandMapping = function(patterns, destBase, options) { options = Object.assign({ rename: /* @__PURE__ */ __name(function(destBase2, destPath) { return path.join(destBase2 || "", destPath); }, "rename") }, options); var files = []; var fileByDest = {}; file2.expand(options, patterns).forEach(function(src) { var destPath = src; if (options.flatten) { destPath = path.basename(destPath); } if (options.ext) { destPath = destPath.replace(/(\.[^\/]*)?$/, options.ext); } var dest = options.rename(destBase, destPath, options); if (options.cwd) { src = path.join(options.cwd, src); } dest = dest.replace(pathSeparatorRe, "/"); src = src.replace(pathSeparatorRe, "/"); if (fileByDest[dest]) { fileByDest[dest].src.push(src); } else { files.push({ src: [src], dest }); fileByDest[dest] = files[files.length - 1]; } }); return files; }; file2.normalizeFilesArray = function(data) { var files = []; data.forEach(function(obj2) { var prop; if ("src" in obj2 || "dest" in obj2) { files.push(obj2); } }); if (files.length === 0) { return []; } files = _(files).chain().forEach(function(obj2) { if (!("src" in obj2) || !obj2.src) { return; } if (Array.isArray(obj2.src)) { obj2.src = flatten(obj2.src); } else { obj2.src = [obj2.src]; } }).map(function(obj2) { var expandOptions = Object.assign({}, obj2); delete expandOptions.src; delete expandOptions.dest; if (obj2.expand) { return file2.expandMapping(obj2.src, obj2.dest, expandOptions).map(function(mapObj) { var result2 = Object.assign({}, obj2); result2.orig = Object.assign({}, obj2); result2.src = mapObj.src; result2.dest = mapObj.dest; ["expand", "cwd", "flatten", "rename", "ext"].forEach(function(prop) { delete result2[prop]; }); return result2; }); } var result = Object.assign({}, obj2); result.orig = Object.assign({}, obj2); if ("src" in result) { Object.defineProperty(result, "src", { enumerable: true, get: /* @__PURE__ */ __name(function fn() { var src; if (!("result" in fn)) { src = obj2.src; src = Array.isArray(src) ? flatten(src) : [src]; fn.result = file2.expand(expandOptions, src); } return fn.result; }, "fn") }); } if ("dest" in result) { result.dest = obj2.dest; } return result; }).flatten().value(); return files; }; } }); // ../../node_modules/.pnpm/archiver-utils@3.0.4/node_modules/archiver-utils/index.js var require_archiver_utils2 = __commonJS({ "../../node_modules/.pnpm/archiver-utils@3.0.4/node_modules/archiver-utils/index.js"(exports2, module2) { var fs = require_graceful_fs(); var path = require("path"); var lazystream = require_lazystream(); var normalizePath = require_normalize_path(); var defaults = require_lodash17(); var Stream = require("stream").Stream; var PassThrough = require_readable().PassThrough; var utils = module2.exports = {}; utils.file = require_file3(); utils.collectStream = function(source, callback) { var collection = []; var size = 0; source.on("error", callback); source.on("data", function(chunk) { collection.push(chunk); size += chunk.length; }); source.on("end", function() { var buf = Buffer.alloc(size); var offset = 0; collection.forEach(function(data) { data.copy(buf, offset); offset += data.length; }); callback(null, buf); }); }; utils.dateify = function(dateish) { dateish = dateish || /* @__PURE__ */ new Date(); if (dateish instanceof Date) { dateish = dateish; } else if (typeof dateish === "string") { dateish = new Date(dateish); } else { dateish = /* @__PURE__ */ new Date(); } return dateish; }; utils.defaults = function(object, source, guard) { var args = arguments; args[0] = args[0] || {}; return defaults(...args); }; utils.isStream = function(source) { return source instanceof Stream; }; utils.lazyReadStream = function(filepath) { return new lazystream.Readable(function() { return fs.createReadStream(filepath); }); }; utils.normalizeInputSource = function(source) { if (source === null) { return Buffer.alloc(0); } else if (typeof source === "string") { return Buffer.from(source); } else if (utils.isStream(source)) { return source.pipe(new PassThrough()); } return source; }; utils.sanitizePath = function(filepath) { return normalizePath(filepath, false).replace(/^\w+:/, "").replace(/^(\.\.\/|\/)+/, ""); }; utils.trailingSlashIt = function(str) { return str.slice(-1) !== "/" ? str + "/" : str; }; utils.unixifyPath = function(filepath) { return normalizePath(filepath, false).replace(/^\w+:/, ""); }; utils.walkdir = function(dirpath, base, callback) { var results = []; if (typeof base === "function") { callback = base; base = dirpath; } fs.readdir(dirpath, function(err, list) { var i = 0; var file2; var filepath; if (err) { return callback(err); } (/* @__PURE__ */ __name((function next() { file2 = list[i++]; if (!file2) { return callback(null, results); } filepath = path.join(dirpath, file2); fs.stat(filepath, function(err2, stats) { results.push({ path: filepath, relative: path.relative(base, filepath).replace(/\\/g, "/"), stats }); if (stats && stats.isDirectory()) { utils.walkdir(filepath, base, function(err3, res) { res.forEach(function(dirEntry) { results.push(dirEntry); }); next(); }); } else { next(); } }); }), "next"))(); }); }; } }); // ../../node_modules/.pnpm/zip-stream@4.1.1/node_modules/zip-stream/index.js var require_zip_stream2 = __commonJS({ "../../node_modules/.pnpm/zip-stream@4.1.1/node_modules/zip-stream/index.js"(exports2, module2) { var inherits2 = require("util").inherits; var ZipArchiveOutputStream = require_compress_commons().ZipArchiveOutputStream; var ZipArchiveEntry = require_compress_commons().ZipArchiveEntry; var util2 = require_archiver_utils2(); var ZipStream = module2.exports = function(options) { if (!(this instanceof ZipStream)) { return new ZipStream(options); } options = this.options = options || {}; options.zlib = options.zlib || {}; ZipArchiveOutputStream.call(this, options); if (typeof options.level === "number" && options.level >= 0) { options.zlib.level = options.level; delete options.level; } if (!options.forceZip64 && typeof options.zlib.level === "number" && options.zlib.level === 0) { options.store = true; } options.namePrependSlash = options.namePrependSlash || false; if (options.comment && options.comment.length > 0) { this.setComment(options.comment); } }; inherits2(ZipStream, ZipArchiveOutputStream); ZipStream.prototype._normalizeFileData = function(data) { data = util2.defaults(data, { type: "file", name: null, namePrependSlash: this.options.namePrependSlash, linkname: null, date: null, mode: null, store: this.options.store, comment: "" }); var isDir = data.type === "directory"; var isSymlink = data.type === "symlink"; if (data.name) { data.name = util2.sanitizePath(data.name); if (!isSymlink && data.name.slice(-1) === "/") { isDir = true; data.type = "directory"; } else if (isDir) { data.name += "/"; } } if (isDir || isSymlink) { data.store = true; } data.date = util2.dateify(data.date); return data; }; ZipStream.prototype.entry = function(source, data, callback) { if (typeof callback !== "function") { callback = this._emitErrorCallback.bind(this); } data = this._normalizeFileData(data); if (data.type !== "file" && data.type !== "directory" && data.type !== "symlink") { callback(new Error(data.type + " entries not currently supported")); return; } if (typeof data.name !== "string" || data.name.length === 0) { callback(new Error("entry name must be a non-empty string value")); return; } if (data.type === "symlink" && typeof data.linkname !== "string") { callback(new Error("entry linkname must be a non-empty string value when type equals symlink")); return; } var entry = new ZipArchiveEntry(data.name); entry.setTime(data.date, this.options.forceLocalTime); if (data.namePrependSlash) { entry.setName(data.name, true); } if (data.store) { entry.setMethod(0); } if (data.comment.length > 0) { entry.setComment(data.comment); } if (data.type === "symlink" && typeof data.mode !== "number") { data.mode = 40960; } if (typeof data.mode === "number") { if (data.type === "symlink") { data.mode |= 40960; } entry.setUnixMode(data.mode); } if (data.type === "symlink" && typeof data.linkname === "string") { source = Buffer.from(data.linkname); } return ZipArchiveOutputStream.prototype.entry.call(this, entry, source, callback); }; ZipStream.prototype.finalize = function() { this.finish(); }; } }); // ../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/lib/plugins/zip.js var require_zip4 = __commonJS({ "../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/lib/plugins/zip.js"(exports2, module2) { var engine = require_zip_stream2(); var util2 = require_archiver_utils(); var Zip = /* @__PURE__ */ __name(function(options) { if (!(this instanceof Zip)) { return new Zip(options); } options = this.options = util2.defaults(options, { comment: "", forceUTC: false, namePrependSlash: false, store: false }); this.supports = { directory: true, symlink: true }; this.engine = new engine(options); }, "Zip"); Zip.prototype.append = function(source, data, callback) { this.engine.entry(source, data, callback); }; Zip.prototype.finalize = function() { this.engine.finalize(); }; Zip.prototype.on = function() { return this.engine.on.apply(this.engine, arguments); }; Zip.prototype.pipe = function() { return this.engine.pipe.apply(this.engine, arguments); }; Zip.prototype.unpipe = function() { return this.engine.unpipe.apply(this.engine, arguments); }; module2.exports = Zip; } }); // ../../node_modules/.pnpm/bl@4.1.0/node_modules/bl/BufferList.js var require_BufferList2 = __commonJS({ "../../node_modules/.pnpm/bl@4.1.0/node_modules/bl/BufferList.js"(exports2, module2) { "use strict"; var { Buffer: Buffer2 } = require("buffer"); var symbol = Symbol.for("BufferList"); function BufferList(buf) { if (!(this instanceof BufferList)) { return new BufferList(buf); } BufferList._init.call(this, buf); } __name(BufferList, "BufferList"); BufferList._init = /* @__PURE__ */ __name(function _init(buf) { Object.defineProperty(this, symbol, { value: true }); this._bufs = []; this.length = 0; if (buf) { this.append(buf); } }, "_init"); BufferList.prototype._new = /* @__PURE__ */ __name(function _new(buf) { return new BufferList(buf); }, "_new"); BufferList.prototype._offset = /* @__PURE__ */ __name(function _offset(offset) { if (offset === 0) { return [0, 0]; } let tot = 0; for (let i = 0; i < this._bufs.length; i++) { const _t = tot + this._bufs[i].length; if (offset < _t || i === this._bufs.length - 1) { return [i, offset - tot]; } tot = _t; } }, "_offset"); BufferList.prototype._reverseOffset = function(blOffset) { const bufferId = blOffset[0]; let offset = blOffset[1]; for (let i = 0; i < bufferId; i++) { offset += this._bufs[i].length; } return offset; }; BufferList.prototype.get = /* @__PURE__ */ __name(function get(index) { if (index > this.length || index < 0) { return void 0; } const offset = this._offset(index); return this._bufs[offset[0]][offset[1]]; }, "get"); BufferList.prototype.slice = /* @__PURE__ */ __name(function slice(start, end) { if (typeof start === "number" && start < 0) { start += this.length; } if (typeof end === "number" && end < 0) { end += this.length; } return this.copy(null, 0, start, end); }, "slice"); BufferList.prototype.copy = /* @__PURE__ */ __name(function copy(dst, dstStart, srcStart, srcEnd) { if (typeof srcStart !== "number" || srcStart < 0) { srcStart = 0; } if (typeof srcEnd !== "number" || srcEnd > this.length) { srcEnd = this.length; } if (srcStart >= this.length) { return dst || Buffer2.alloc(0); } if (srcEnd <= 0) { return dst || Buffer2.alloc(0); } const copy2 = !!dst; const off = this._offset(srcStart); const len = srcEnd - srcStart; let bytes = len; let bufoff = copy2 && dstStart || 0; let start = off[1]; if (srcStart === 0 && srcEnd === this.length) { if (!copy2) { return this._bufs.length === 1 ? this._bufs[0] : Buffer2.concat(this._bufs, this.length); } for (let i = 0; i < this._bufs.length; i++) { this._bufs[i].copy(dst, bufoff); bufoff += this._bufs[i].length; } return dst; } if (bytes <= this._bufs[off[0]].length - start) { return copy2 ? this._bufs[off[0]].copy(dst, dstStart, start, start + bytes) : this._bufs[off[0]].slice(start, start + bytes); } if (!copy2) { dst = Buffer2.allocUnsafe(len); } for (let i = off[0]; i < this._bufs.length; i++) { const l2 = this._bufs[i].length - start; if (bytes > l2) { this._bufs[i].copy(dst, bufoff, start); bufoff += l2; } else { this._bufs[i].copy(dst, bufoff, start, start + bytes); bufoff += l2; break; } bytes -= l2; if (start) { start = 0; } } if (dst.length > bufoff) return dst.slice(0, bufoff); return dst; }, "copy"); BufferList.prototype.shallowSlice = /* @__PURE__ */ __name(function shallowSlice(start, end) { start = start || 0; end = typeof end !== "number" ? this.length : end; if (start < 0) { start += this.length; } if (end < 0) { end += this.length; } if (start === end) { return this._new(); } const startOffset = this._offset(start); const endOffset = this._offset(end); const buffers = this._bufs.slice(startOffset[0], endOffset[0] + 1); if (endOffset[1] === 0) { buffers.pop(); } else { buffers[buffers.length - 1] = buffers[buffers.length - 1].slice(0, endOffset[1]); } if (startOffset[1] !== 0) { buffers[0] = buffers[0].slice(startOffset[1]); } return this._new(buffers); }, "shallowSlice"); BufferList.prototype.toString = /* @__PURE__ */ __name(function toString2(encoding, start, end) { return this.slice(start, end).toString(encoding); }, "toString"); BufferList.prototype.consume = /* @__PURE__ */ __name(function consume(bytes) { bytes = Math.trunc(bytes); if (Number.isNaN(bytes) || bytes <= 0) return this; while (this._bufs.length) { if (bytes >= this._bufs[0].length) { bytes -= this._bufs[0].length; this.length -= this._bufs[0].length; this._bufs.shift(); } else { this._bufs[0] = this._bufs[0].slice(bytes); this.length -= bytes; break; } } return this; }, "consume"); BufferList.prototype.duplicate = /* @__PURE__ */ __name(function duplicate() { const copy = this._new(); for (let i = 0; i < this._bufs.length; i++) { copy.append(this._bufs[i]); } return copy; }, "duplicate"); BufferList.prototype.append = /* @__PURE__ */ __name(function append(buf) { if (buf == null) { return this; } if (buf.buffer) { this._appendBuffer(Buffer2.from(buf.buffer, buf.byteOffset, buf.byteLength)); } else if (Array.isArray(buf)) { for (let i = 0; i < buf.length; i++) { this.append(buf[i]); } } else if (this._isBufferList(buf)) { for (let i = 0; i < buf._bufs.length; i++) { this.append(buf._bufs[i]); } } else { if (typeof buf === "number") { buf = buf.toString(); } this._appendBuffer(Buffer2.from(buf)); } return this; }, "append"); BufferList.prototype._appendBuffer = /* @__PURE__ */ __name(function appendBuffer(buf) { this._bufs.push(buf); this.length += buf.length; }, "appendBuffer"); BufferList.prototype.indexOf = function(search, offset, encoding) { if (encoding === void 0 && typeof offset === "string") { encoding = offset; offset = void 0; } if (typeof search === "function" || Array.isArray(search)) { throw new TypeError('The "value" argument must be one of type string, Buffer, BufferList, or Uint8Array.'); } else if (typeof search === "number") { search = Buffer2.from([search]); } else if (typeof search === "string") { search = Buffer2.from(search, encoding); } else if (this._isBufferList(search)) { search = search.slice(); } else if (Array.isArray(search.buffer)) { search = Buffer2.from(search.buffer, search.byteOffset, search.byteLength); } else if (!Buffer2.isBuffer(search)) { search = Buffer2.from(search); } offset = Number(offset || 0); if (isNaN(offset)) { offset = 0; } if (offset < 0) { offset = this.length + offset; } if (offset < 0) { offset = 0; } if (search.length === 0) { return offset > this.length ? this.length : offset; } const blOffset = this._offset(offset); let blIndex = blOffset[0]; let buffOffset = blOffset[1]; for (; blIndex < this._bufs.length; blIndex++) { const buff = this._bufs[blIndex]; while (buffOffset < buff.length) { const availableWindow = buff.length - buffOffset; if (availableWindow >= search.length) { const nativeSearchResult = buff.indexOf(search, buffOffset); if (nativeSearchResult !== -1) { return this._reverseOffset([blIndex, nativeSearchResult]); } buffOffset = buff.length - search.length + 1; } else { const revOffset = this._reverseOffset([blIndex, buffOffset]); if (this._match(revOffset, search)) { return revOffset; } buffOffset++; } } buffOffset = 0; } return -1; }; BufferList.prototype._match = function(offset, search) { if (this.length - offset < search.length) { return false; } for (let searchOffset = 0; searchOffset < search.length; searchOffset++) { if (this.get(offset + searchOffset) !== search[searchOffset]) { return false; } } return true; }; (function() { const methods = { readDoubleBE: 8, readDoubleLE: 8, readFloatBE: 4, readFloatLE: 4, readInt32BE: 4, readInt32LE: 4, readUInt32BE: 4, readUInt32LE: 4, readInt16BE: 2, readInt16LE: 2, readUInt16BE: 2, readUInt16LE: 2, readInt8: 1, readUInt8: 1, readIntBE: null, readIntLE: null, readUIntBE: null, readUIntLE: null }; for (const m in methods) { (function(m2) { if (methods[m2] === null) { BufferList.prototype[m2] = function(offset, byteLength) { return this.slice(offset, offset + byteLength)[m2](0, byteLength); }; } else { BufferList.prototype[m2] = function(offset = 0) { return this.slice(offset, offset + methods[m2])[m2](0); }; } })(m); } })(); BufferList.prototype._isBufferList = /* @__PURE__ */ __name(function _isBufferList(b) { return b instanceof BufferList || BufferList.isBufferList(b); }, "_isBufferList"); BufferList.isBufferList = /* @__PURE__ */ __name(function isBufferList(b) { return b != null && b[symbol]; }, "isBufferList"); module2.exports = BufferList; } }); // ../../node_modules/.pnpm/bl@4.1.0/node_modules/bl/bl.js var require_bl = __commonJS({ "../../node_modules/.pnpm/bl@4.1.0/node_modules/bl/bl.js"(exports2, module2) { "use strict"; var DuplexStream = require_readable().Duplex; var inherits2 = require_inherits(); var BufferList = require_BufferList2(); function BufferListStream(callback) { if (!(this instanceof BufferListStream)) { return new BufferListStream(callback); } if (typeof callback === "function") { this._callback = callback; const piper = (/* @__PURE__ */ __name(function piper2(err) { if (this._callback) { this._callback(err); this._callback = null; } }, "piper")).bind(this); this.on("pipe", /* @__PURE__ */ __name(function onPipe(src) { src.on("error", piper); }, "onPipe")); this.on("unpipe", /* @__PURE__ */ __name(function onUnpipe(src) { src.removeListener("error", piper); }, "onUnpipe")); callback = null; } BufferList._init.call(this, callback); DuplexStream.call(this); } __name(BufferListStream, "BufferListStream"); inherits2(BufferListStream, DuplexStream); Object.assign(BufferListStream.prototype, BufferList.prototype); BufferListStream.prototype._new = /* @__PURE__ */ __name(function _new(callback) { return new BufferListStream(callback); }, "_new"); BufferListStream.prototype._write = /* @__PURE__ */ __name(function _write(buf, encoding, callback) { this._appendBuffer(buf); if (typeof callback === "function") { callback(); } }, "_write"); BufferListStream.prototype._read = /* @__PURE__ */ __name(function _read(size) { if (!this.length) { return this.push(null); } size = Math.min(size, this.length); this.push(this.slice(0, size)); this.consume(size); }, "_read"); BufferListStream.prototype.end = /* @__PURE__ */ __name(function end(chunk) { DuplexStream.prototype.end.call(this, chunk); if (this._callback) { this._callback(null, this.slice()); this._callback = null; } }, "end"); BufferListStream.prototype._destroy = /* @__PURE__ */ __name(function _destroy(err, cb) { this._bufs.length = 0; this.length = 0; cb(err); }, "_destroy"); BufferListStream.prototype._isBufferList = /* @__PURE__ */ __name(function _isBufferList(b) { return b instanceof BufferListStream || b instanceof BufferList || BufferListStream.isBufferList(b); }, "_isBufferList"); BufferListStream.isBufferList = BufferList.isBufferList; module2.exports = BufferListStream; module2.exports.BufferListStream = BufferListStream; module2.exports.BufferList = BufferList; } }); // ../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/headers.js var require_headers = __commonJS({ "../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/headers.js"(exports2) { var alloc = Buffer.alloc; var ZEROS = "0000000000000000000"; var SEVENS = "7777777777777777777"; var ZERO_OFFSET = "0".charCodeAt(0); var USTAR_MAGIC = Buffer.from("ustar\0", "binary"); var USTAR_VER = Buffer.from("00", "binary"); var GNU_MAGIC = Buffer.from("ustar ", "binary"); var GNU_VER = Buffer.from(" \0", "binary"); var MASK = parseInt("7777", 8); var MAGIC_OFFSET = 257; var VERSION_OFFSET = 263; var clamp = /* @__PURE__ */ __name(function(index, len, defaultValue) { if (typeof index !== "number") return defaultValue; index = ~~index; if (index >= len) return len; if (index >= 0) return index; index += len; if (index >= 0) return index; return 0; }, "clamp"); var toType = /* @__PURE__ */ __name(function(flag) { switch (flag) { case 0: return "file"; case 1: return "link"; case 2: return "symlink"; case 3: return "character-device"; case 4: return "block-device"; case 5: return "directory"; case 6: return "fifo"; case 7: return "contiguous-file"; case 72: return "pax-header"; case 55: return "pax-global-header"; case 27: return "gnu-long-link-path"; case 28: case 30: return "gnu-long-path"; } return null; }, "toType"); var toTypeflag = /* @__PURE__ */ __name(function(flag) { switch (flag) { case "file": return 0; case "link": return 1; case "symlink": return 2; case "character-device": return 3; case "block-device": return 4; case "directory": return 5; case "fifo": return 6; case "contiguous-file": return 7; case "pax-header": return 72; } return 0; }, "toTypeflag"); var indexOf = /* @__PURE__ */ __name(function(block, num, offset, end) { for (; offset < end; offset++) { if (block[offset] === num) return offset; } return end; }, "indexOf"); var cksum = /* @__PURE__ */ __name(function(block) { var sum = 8 * 32; for (var i = 0; i < 148; i++) sum += block[i]; for (var j = 156; j < 512; j++) sum += block[j]; return sum; }, "cksum"); var encodeOct = /* @__PURE__ */ __name(function(val, n) { val = val.toString(8); if (val.length > n) return SEVENS.slice(0, n) + " "; else return ZEROS.slice(0, n - val.length) + val + " "; }, "encodeOct"); function parse256(buf) { var positive; if (buf[0] === 128) positive = true; else if (buf[0] === 255) positive = false; else return null; var tuple = []; for (var i = buf.length - 1; i > 0; i--) { var byte = buf[i]; if (positive) tuple.push(byte); else tuple.push(255 - byte); } var sum = 0; var l2 = tuple.length; for (i = 0; i < l2; i++) { sum += tuple[i] * Math.pow(256, i); } return positive ? sum : -1 * sum; } __name(parse256, "parse256"); var decodeOct = /* @__PURE__ */ __name(function(val, offset, length) { val = val.slice(offset, offset + length); offset = 0; if (val[offset] & 128) { return parse256(val); } else { while (offset < val.length && val[offset] === 32) offset++; var end = clamp(indexOf(val, 32, offset, val.length), val.length, val.length); while (offset < end && val[offset] === 0) offset++; if (end === offset) return 0; return parseInt(val.slice(offset, end).toString(), 8); } }, "decodeOct"); var decodeStr = /* @__PURE__ */ __name(function(val, offset, length, encoding) { return val.slice(offset, indexOf(val, 0, offset, offset + length)).toString(encoding); }, "decodeStr"); var addLength = /* @__PURE__ */ __name(function(str) { var len = Buffer.byteLength(str); var digits = Math.floor(Math.log(len) / Math.log(10)) + 1; if (len + digits >= Math.pow(10, digits)) digits++; return len + digits + str; }, "addLength"); exports2.decodeLongPath = function(buf, encoding) { return decodeStr(buf, 0, buf.length, encoding); }; exports2.encodePax = function(opts) { var result = ""; if (opts.name) result += addLength(" path=" + opts.name + "\n"); if (opts.linkname) result += addLength(" linkpath=" + opts.linkname + "\n"); var pax = opts.pax; if (pax) { for (var key in pax) { result += addLength(" " + key + "=" + pax[key] + "\n"); } } return Buffer.from(result); }; exports2.decodePax = function(buf) { var result = {}; while (buf.length) { var i = 0; while (i < buf.length && buf[i] !== 32) i++; var len = parseInt(buf.slice(0, i).toString(), 10); if (!len) return result; var b = buf.slice(i + 1, len - 1).toString(); var keyIndex = b.indexOf("="); if (keyIndex === -1) return result; result[b.slice(0, keyIndex)] = b.slice(keyIndex + 1); buf = buf.slice(len); } return result; }; exports2.encode = function(opts) { var buf = alloc(512); var name = opts.name; var prefix = ""; if (opts.typeflag === 5 && name[name.length - 1] !== "/") name += "/"; if (Buffer.byteLength(name) !== name.length) return null; while (Buffer.byteLength(name) > 100) { var i = name.indexOf("/"); if (i === -1) return null; prefix += prefix ? "/" + name.slice(0, i) : name.slice(0, i); name = name.slice(i + 1); } if (Buffer.byteLength(name) > 100 || Buffer.byteLength(prefix) > 155) return null; if (opts.linkname && Buffer.byteLength(opts.linkname) > 100) return null; buf.write(name); buf.write(encodeOct(opts.mode & MASK, 6), 100); buf.write(encodeOct(opts.uid, 6), 108); buf.write(encodeOct(opts.gid, 6), 116); buf.write(encodeOct(opts.size, 11), 124); buf.write(encodeOct(opts.mtime.getTime() / 1e3 | 0, 11), 136); buf[156] = ZERO_OFFSET + toTypeflag(opts.type); if (opts.linkname) buf.write(opts.linkname, 157); USTAR_MAGIC.copy(buf, MAGIC_OFFSET); USTAR_VER.copy(buf, VERSION_OFFSET); if (opts.uname) buf.write(opts.uname, 265); if (opts.gname) buf.write(opts.gname, 297); buf.write(encodeOct(opts.devmajor || 0, 6), 329); buf.write(encodeOct(opts.devminor || 0, 6), 337); if (prefix) buf.write(prefix, 345); buf.write(encodeOct(cksum(buf), 6), 148); return buf; }; exports2.decode = function(buf, filenameEncoding, allowUnknownFormat) { var typeflag = buf[156] === 0 ? 0 : buf[156] - ZERO_OFFSET; var name = decodeStr(buf, 0, 100, filenameEncoding); var mode = decodeOct(buf, 100, 8); var uid = decodeOct(buf, 108, 8); var gid = decodeOct(buf, 116, 8); var size = decodeOct(buf, 124, 12); var mtime = decodeOct(buf, 136, 12); var type = toType(typeflag); var linkname = buf[157] === 0 ? null : decodeStr(buf, 157, 100, filenameEncoding); var uname = decodeStr(buf, 265, 32); var gname = decodeStr(buf, 297, 32); var devmajor = decodeOct(buf, 329, 8); var devminor = decodeOct(buf, 337, 8); var c = cksum(buf); if (c === 8 * 32) return null; if (c !== decodeOct(buf, 148, 8)) throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?"); if (USTAR_MAGIC.compare(buf, MAGIC_OFFSET, MAGIC_OFFSET + 6) === 0) { if (buf[345]) name = decodeStr(buf, 345, 155, filenameEncoding) + "/" + name; } else if (GNU_MAGIC.compare(buf, MAGIC_OFFSET, MAGIC_OFFSET + 6) === 0 && GNU_VER.compare(buf, VERSION_OFFSET, VERSION_OFFSET + 2) === 0) { } else { if (!allowUnknownFormat) { throw new Error("Invalid tar header: unknown format."); } } if (typeflag === 0 && name && name[name.length - 1] === "/") typeflag = 5; return { name, mode, uid, gid, size, mtime: new Date(1e3 * mtime), type, linkname, uname, gname, devmajor, devminor }; }; } }); // ../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/extract.js var require_extract = __commonJS({ "../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/extract.js"(exports2, module2) { var util2 = require("util"); var bl = require_bl(); var headers = require_headers(); var Writable = require_readable().Writable; var PassThrough = require_readable().PassThrough; var noop = /* @__PURE__ */ __name(function() { }, "noop"); var overflow = /* @__PURE__ */ __name(function(size) { size &= 511; return size && 512 - size; }, "overflow"); var emptyStream = /* @__PURE__ */ __name(function(self2, offset) { var s = new Source(self2, offset); s.end(); return s; }, "emptyStream"); var mixinPax = /* @__PURE__ */ __name(function(header, pax) { if (pax.path) header.name = pax.path; if (pax.linkpath) header.linkname = pax.linkpath; if (pax.size) header.size = parseInt(pax.size, 10); header.pax = pax; return header; }, "mixinPax"); var Source = /* @__PURE__ */ __name(function(self2, offset) { this._parent = self2; this.offset = offset; PassThrough.call(this, { autoDestroy: false }); }, "Source"); util2.inherits(Source, PassThrough); Source.prototype.destroy = function(err) { this._parent.destroy(err); }; var Extract = /* @__PURE__ */ __name(function(opts) { if (!(this instanceof Extract)) return new Extract(opts); Writable.call(this, opts); opts = opts || {}; this._offset = 0; this._buffer = bl(); this._missing = 0; this._partial = false; this._onparse = noop; this._header = null; this._stream = null; this._overflow = null; this._cb = null; this._locked = false; this._destroyed = false; this._pax = null; this._paxGlobal = null; this._gnuLongPath = null; this._gnuLongLinkPath = null; var self2 = this; var b = self2._buffer; var oncontinue = /* @__PURE__ */ __name(function() { self2._continue(); }, "oncontinue"); var onunlock = /* @__PURE__ */ __name(function(err) { self2._locked = false; if (err) return self2.destroy(err); if (!self2._stream) oncontinue(); }, "onunlock"); var onstreamend = /* @__PURE__ */ __name(function() { self2._stream = null; var drain = overflow(self2._header.size); if (drain) self2._parse(drain, ondrain); else self2._parse(512, onheader); if (!self2._locked) oncontinue(); }, "onstreamend"); var ondrain = /* @__PURE__ */ __name(function() { self2._buffer.consume(overflow(self2._header.size)); self2._parse(512, onheader); oncontinue(); }, "ondrain"); var onpaxglobalheader = /* @__PURE__ */ __name(function() { var size = self2._header.size; self2._paxGlobal = headers.decodePax(b.slice(0, size)); b.consume(size); onstreamend(); }, "onpaxglobalheader"); var onpaxheader = /* @__PURE__ */ __name(function() { var size = self2._header.size; self2._pax = headers.decodePax(b.slice(0, size)); if (self2._paxGlobal) self2._pax = Object.assign({}, self2._paxGlobal, self2._pax); b.consume(size); onstreamend(); }, "onpaxheader"); var ongnulongpath = /* @__PURE__ */ __name(function() { var size = self2._header.size; this._gnuLongPath = headers.decodeLongPath(b.slice(0, size), opts.filenameEncoding); b.consume(size); onstreamend(); }, "ongnulongpath"); var ongnulonglinkpath = /* @__PURE__ */ __name(function() { var size = self2._header.size; this._gnuLongLinkPath = headers.decodeLongPath(b.slice(0, size), opts.filenameEncoding); b.consume(size); onstreamend(); }, "ongnulonglinkpath"); var onheader = /* @__PURE__ */ __name(function() { var offset = self2._offset; var header; try { header = self2._header = headers.decode(b.slice(0, 512), opts.filenameEncoding, opts.allowUnknownFormat); } catch (err) { self2.emit("error", err); } b.consume(512); if (!header) { self2._parse(512, onheader); oncontinue(); return; } if (header.type === "gnu-long-path") { self2._parse(header.size, ongnulongpath); oncontinue(); return; } if (header.type === "gnu-long-link-path") { self2._parse(header.size, ongnulonglinkpath); oncontinue(); return; } if (header.type === "pax-global-header") { self2._parse(header.size, onpaxglobalheader); oncontinue(); return; } if (header.type === "pax-header") { self2._parse(header.size, onpaxheader); oncontinue(); return; } if (self2._gnuLongPath) { header.name = self2._gnuLongPath; self2._gnuLongPath = null; } if (self2._gnuLongLinkPath) { header.linkname = self2._gnuLongLinkPath; self2._gnuLongLinkPath = null; } if (self2._pax) { self2._header = header = mixinPax(header, self2._pax); self2._pax = null; } self2._locked = true; if (!header.size || header.type === "directory") { self2._parse(512, onheader); self2.emit("entry", header, emptyStream(self2, offset), onunlock); return; } self2._stream = new Source(self2, offset); self2.emit("entry", header, self2._stream, onunlock); self2._parse(header.size, onstreamend); oncontinue(); }, "onheader"); this._onheader = onheader; this._parse(512, onheader); }, "Extract"); util2.inherits(Extract, Writable); Extract.prototype.destroy = function(err) { if (this._destroyed) return; this._destroyed = true; if (err) this.emit("error", err); this.emit("close"); if (this._stream) this._stream.emit("close"); }; Extract.prototype._parse = function(size, onparse) { if (this._destroyed) return; this._offset += size; this._missing = size; if (onparse === this._onheader) this._partial = false; this._onparse = onparse; }; Extract.prototype._continue = function() { if (this._destroyed) return; var cb = this._cb; this._cb = noop; if (this._overflow) this._write(this._overflow, void 0, cb); else cb(); }; Extract.prototype._write = function(data, enc, cb) { if (this._destroyed) return; var s = this._stream; var b = this._buffer; var missing = this._missing; if (data.length) this._partial = true; if (data.length < missing) { this._missing -= data.length; this._overflow = null; if (s) return s.write(data, cb); b.append(data); return cb(); } this._cb = cb; this._missing = 0; var overflow2 = null; if (data.length > missing) { overflow2 = data.slice(missing); data = data.slice(0, missing); } if (s) s.end(data); else b.append(data); this._overflow = overflow2; this._onparse(); }; Extract.prototype._final = function(cb) { if (this._partial) return this.destroy(new Error("Unexpected end of data")); cb(); }; module2.exports = Extract; } }); // ../../node_modules/.pnpm/fs-constants@1.0.0/node_modules/fs-constants/index.js var require_fs_constants = __commonJS({ "../../node_modules/.pnpm/fs-constants@1.0.0/node_modules/fs-constants/index.js"(exports2, module2) { module2.exports = require("fs").constants || require("constants"); } }); // ../../node_modules/.pnpm/end-of-stream@1.4.5/node_modules/end-of-stream/index.js var require_end_of_stream2 = __commonJS({ "../../node_modules/.pnpm/end-of-stream@1.4.5/node_modules/end-of-stream/index.js"(exports2, module2) { var once = require_once(); var noop = /* @__PURE__ */ __name(function() { }, "noop"); var qnt = global.Bare ? queueMicrotask : process.nextTick.bind(process); var isRequest = /* @__PURE__ */ __name(function(stream) { return stream.setHeader && typeof stream.abort === "function"; }, "isRequest"); var isChildProcess = /* @__PURE__ */ __name(function(stream) { return stream.stdio && Array.isArray(stream.stdio) && stream.stdio.length === 3; }, "isChildProcess"); var eos = /* @__PURE__ */ __name(function(stream, opts, callback) { if (typeof opts === "function") return eos(stream, null, opts); if (!opts) opts = {}; callback = once(callback || noop); var ws = stream._writableState; var rs = stream._readableState; var readable = opts.readable || opts.readable !== false && stream.readable; var writable = opts.writable || opts.writable !== false && stream.writable; var cancelled = false; var onlegacyfinish = /* @__PURE__ */ __name(function() { if (!stream.writable) onfinish(); }, "onlegacyfinish"); var onfinish = /* @__PURE__ */ __name(function() { writable = false; if (!readable) callback.call(stream); }, "onfinish"); var onend = /* @__PURE__ */ __name(function() { readable = false; if (!writable) callback.call(stream); }, "onend"); var onexit = /* @__PURE__ */ __name(function(exitCode) { callback.call(stream, exitCode ? new Error("exited with error code: " + exitCode) : null); }, "onexit"); var onerror = /* @__PURE__ */ __name(function(err) { callback.call(stream, err); }, "onerror"); var onclose = /* @__PURE__ */ __name(function() { qnt(onclosenexttick); }, "onclose"); var onclosenexttick = /* @__PURE__ */ __name(function() { if (cancelled) return; if (readable && !(rs && (rs.ended && !rs.destroyed))) return callback.call(stream, new Error("premature close")); if (writable && !(ws && (ws.ended && !ws.destroyed))) return callback.call(stream, new Error("premature close")); }, "onclosenexttick"); var onrequest = /* @__PURE__ */ __name(function() { stream.req.on("finish", onfinish); }, "onrequest"); if (isRequest(stream)) { stream.on("complete", onfinish); stream.on("abort", onclose); if (stream.req) onrequest(); else stream.on("request", onrequest); } else if (writable && !ws) { stream.on("end", onlegacyfinish); stream.on("close", onlegacyfinish); } if (isChildProcess(stream)) stream.on("exit", onexit); stream.on("end", onend); stream.on("finish", onfinish); if (opts.error !== false) stream.on("error", onerror); stream.on("close", onclose); return function() { cancelled = true; stream.removeListener("complete", onfinish); stream.removeListener("abort", onclose); stream.removeListener("request", onrequest); if (stream.req) stream.req.removeListener("finish", onfinish); stream.removeListener("end", onlegacyfinish); stream.removeListener("close", onlegacyfinish); stream.removeListener("finish", onfinish); stream.removeListener("exit", onexit); stream.removeListener("end", onend); stream.removeListener("error", onerror); stream.removeListener("close", onclose); }; }, "eos"); module2.exports = eos; } }); // ../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/pack.js var require_pack = __commonJS({ "../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/pack.js"(exports2, module2) { var constants = require_fs_constants(); var eos = require_end_of_stream2(); var inherits2 = require_inherits(); var alloc = Buffer.alloc; var Readable = require_readable().Readable; var Writable = require_readable().Writable; var StringDecoder = require("string_decoder").StringDecoder; var headers = require_headers(); var DMODE = parseInt("755", 8); var FMODE = parseInt("644", 8); var END_OF_TAR = alloc(1024); var noop = /* @__PURE__ */ __name(function() { }, "noop"); var overflow = /* @__PURE__ */ __name(function(self2, size) { size &= 511; if (size) self2.push(END_OF_TAR.slice(0, 512 - size)); }, "overflow"); function modeToType(mode) { switch (mode & constants.S_IFMT) { case constants.S_IFBLK: return "block-device"; case constants.S_IFCHR: return "character-device"; case constants.S_IFDIR: return "directory"; case constants.S_IFIFO: return "fifo"; case constants.S_IFLNK: return "symlink"; } return "file"; } __name(modeToType, "modeToType"); var Sink = /* @__PURE__ */ __name(function(to) { Writable.call(this); this.written = 0; this._to = to; this._destroyed = false; }, "Sink"); inherits2(Sink, Writable); Sink.prototype._write = function(data, enc, cb) { this.written += data.length; if (this._to.push(data)) return cb(); this._to._drain = cb; }; Sink.prototype.destroy = function() { if (this._destroyed) return; this._destroyed = true; this.emit("close"); }; var LinkSink = /* @__PURE__ */ __name(function() { Writable.call(this); this.linkname = ""; this._decoder = new StringDecoder("utf-8"); this._destroyed = false; }, "LinkSink"); inherits2(LinkSink, Writable); LinkSink.prototype._write = function(data, enc, cb) { this.linkname += this._decoder.write(data); cb(); }; LinkSink.prototype.destroy = function() { if (this._destroyed) return; this._destroyed = true; this.emit("close"); }; var Void = /* @__PURE__ */ __name(function() { Writable.call(this); this._destroyed = false; }, "Void"); inherits2(Void, Writable); Void.prototype._write = function(data, enc, cb) { cb(new Error("No body allowed for this entry")); }; Void.prototype.destroy = function() { if (this._destroyed) return; this._destroyed = true; this.emit("close"); }; var Pack = /* @__PURE__ */ __name(function(opts) { if (!(this instanceof Pack)) return new Pack(opts); Readable.call(this, opts); this._drain = noop; this._finalized = false; this._finalizing = false; this._destroyed = false; this._stream = null; }, "Pack"); inherits2(Pack, Readable); Pack.prototype.entry = function(header, buffer, callback) { if (this._stream) throw new Error("already piping an entry"); if (this._finalized || this._destroyed) return; if (typeof buffer === "function") { callback = buffer; buffer = null; } if (!callback) callback = noop; var self2 = this; if (!header.size || header.type === "symlink") header.size = 0; if (!header.type) header.type = modeToType(header.mode); if (!header.mode) header.mode = header.type === "directory" ? DMODE : FMODE; if (!header.uid) header.uid = 0; if (!header.gid) header.gid = 0; if (!header.mtime) header.mtime = /* @__PURE__ */ new Date(); if (typeof buffer === "string") buffer = Buffer.from(buffer); if (Buffer.isBuffer(buffer)) { header.size = buffer.length; this._encode(header); var ok = this.push(buffer); overflow(self2, header.size); if (ok) process.nextTick(callback); else this._drain = callback; return new Void(); } if (header.type === "symlink" && !header.linkname) { var linkSink = new LinkSink(); eos(linkSink, function(err) { if (err) { self2.destroy(); return callback(err); } header.linkname = linkSink.linkname; self2._encode(header); callback(); }); return linkSink; } this._encode(header); if (header.type !== "file" && header.type !== "contiguous-file") { process.nextTick(callback); return new Void(); } var sink = new Sink(this); this._stream = sink; eos(sink, function(err) { self2._stream = null; if (err) { self2.destroy(); return callback(err); } if (sink.written !== header.size) { self2.destroy(); return callback(new Error("size mismatch")); } overflow(self2, header.size); if (self2._finalizing) self2.finalize(); callback(); }); return sink; }; Pack.prototype.finalize = function() { if (this._stream) { this._finalizing = true; return; } if (this._finalized) return; this._finalized = true; this.push(END_OF_TAR); this.push(null); }; Pack.prototype.destroy = function(err) { if (this._destroyed) return; this._destroyed = true; if (err) this.emit("error", err); this.emit("close"); if (this._stream && this._stream.destroy) this._stream.destroy(); }; Pack.prototype._encode = function(header) { if (!header.pax) { var buf = headers.encode(header); if (buf) { this.push(buf); return; } } this._encodePax(header); }; Pack.prototype._encodePax = function(header) { var paxHeader = headers.encodePax({ name: header.name, linkname: header.linkname, pax: header.pax }); var newHeader = { name: "PaxHeader", mode: header.mode, uid: header.uid, gid: header.gid, size: paxHeader.length, mtime: header.mtime, type: "pax-header", linkname: header.linkname && "PaxHeader", uname: header.uname, gname: header.gname, devmajor: header.devmajor, devminor: header.devminor }; this.push(headers.encode(newHeader)); this.push(paxHeader); overflow(this, paxHeader.length); newHeader.size = header.size; newHeader.type = header.type; this.push(headers.encode(newHeader)); }; Pack.prototype._read = function(n) { var drain = this._drain; this._drain = noop; drain(); }; module2.exports = Pack; } }); // ../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/index.js var require_tar_stream = __commonJS({ "../../node_modules/.pnpm/tar-stream@2.2.0/node_modules/tar-stream/index.js"(exports2) { exports2.extract = require_extract(); exports2.pack = require_pack(); } }); // ../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/lib/plugins/tar.js var require_tar = __commonJS({ "../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/lib/plugins/tar.js"(exports2, module2) { var zlib = require("zlib"); var engine = require_tar_stream(); var util2 = require_archiver_utils(); var Tar = /* @__PURE__ */ __name(function(options) { if (!(this instanceof Tar)) { return new Tar(options); } options = this.options = util2.defaults(options, { gzip: false }); if (typeof options.gzipOptions !== "object") { options.gzipOptions = {}; } this.supports = { directory: true, symlink: true }; this.engine = engine.pack(options); this.compressor = false; if (options.gzip) { this.compressor = zlib.createGzip(options.gzipOptions); this.compressor.on("error", this._onCompressorError.bind(this)); } }, "Tar"); Tar.prototype._onCompressorError = function(err) { this.engine.emit("error", err); }; Tar.prototype.append = function(source, data, callback) { var self2 = this; data.mtime = data.date; function append(err, sourceBuffer) { if (err) { callback(err); return; } self2.engine.entry(data, sourceBuffer, function(err2) { callback(err2, data); }); } __name(append, "append"); if (data.sourceType === "buffer") { append(null, source); } else if (data.sourceType === "stream" && data.stats) { data.size = data.stats.size; var entry = self2.engine.entry(data, function(err) { callback(err, data); }); source.pipe(entry); } else if (data.sourceType === "stream") { util2.collectStream(source, append); } }; Tar.prototype.finalize = function() { this.engine.finalize(); }; Tar.prototype.on = function() { return this.engine.on.apply(this.engine, arguments); }; Tar.prototype.pipe = function(destination, options) { if (this.compressor) { return this.engine.pipe.apply(this.engine, [this.compressor]).pipe(destination, options); } else { return this.engine.pipe.apply(this.engine, arguments); } }; Tar.prototype.unpipe = function() { if (this.compressor) { return this.compressor.unpipe.apply(this.compressor, arguments); } else { return this.engine.unpipe.apply(this.engine, arguments); } }; module2.exports = Tar; } }); // ../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/lib/plugins/json.js var require_json3 = __commonJS({ "../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/lib/plugins/json.js"(exports2, module2) { var inherits2 = require("util").inherits; var Transform = require_readable().Transform; var crc32 = require_buffer_crc32(); var util2 = require_archiver_utils(); var Json = /* @__PURE__ */ __name(function(options) { if (!(this instanceof Json)) { return new Json(options); } options = this.options = util2.defaults(options, {}); Transform.call(this, options); this.supports = { directory: true, symlink: true }; this.files = []; }, "Json"); inherits2(Json, Transform); Json.prototype._transform = function(chunk, encoding, callback) { callback(null, chunk); }; Json.prototype._writeStringified = function() { var fileString = JSON.stringify(this.files); this.write(fileString); }; Json.prototype.append = function(source, data, callback) { var self2 = this; data.crc32 = 0; function onend(err, sourceBuffer) { if (err) { callback(err); return; } data.size = sourceBuffer.length || 0; data.crc32 = crc32.unsigned(sourceBuffer); self2.files.push(data); callback(null, data); } __name(onend, "onend"); if (data.sourceType === "buffer") { onend(null, source); } else if (data.sourceType === "stream") { util2.collectStream(source, onend); } }; Json.prototype.finalize = function() { this._writeStringified(); this.end(); }; module2.exports = Json; } }); // ../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/index.js var require_archiver = __commonJS({ "../../node_modules/.pnpm/archiver@5.3.2/node_modules/archiver/index.js"(exports2, module2) { var Archiver = require_core5(); var formats = {}; var vending = /* @__PURE__ */ __name(function(format, options) { return vending.create(format, options); }, "vending"); vending.create = function(format, options) { if (formats[format]) { var instance = new Archiver(format, options); instance.setFormat(format); instance.setModule(new formats[format](options)); return instance; } else { throw new Error("create(" + format + "): format not registered"); } }; vending.registerFormat = function(format, module3) { if (formats[format]) { throw new Error("register(" + format + "): format already registered"); } if (typeof module3 !== "function") { throw new Error("register(" + format + "): format module invalid"); } if (typeof module3.prototype.append !== "function" || typeof module3.prototype.finalize !== "function") { throw new Error("register(" + format + "): format module missing methods"); } formats[format] = module3; }; vending.isRegisteredFormat = function(format) { if (formats[format]) { return true; } return false; }; vending.registerFormat("zip", require_zip4()); vending.registerFormat("tar", require_tar()); vending.registerFormat("json", require_json3()); module2.exports = vending; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/shared-strings.js var require_shared_strings = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/shared-strings.js"(exports2, module2) { var SharedStrings = class { static { __name(this, "SharedStrings"); } constructor() { this._values = []; this._totalRefs = 0; this._hash = /* @__PURE__ */ Object.create(null); } get count() { return this._values.length; } get values() { return this._values; } get totalRefs() { return this._totalRefs; } getString(index) { return this._values[index]; } add(value) { let index = this._hash[value]; if (index === void 0) { index = this._hash[value] = this._values.length; this._values.push(value); } this._totalRefs++; return index; } }; module2.exports = SharedStrings; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/sheet-rels-writer.js var require_sheet_rels_writer = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/sheet-rels-writer.js"(exports2, module2) { var utils = require_utils21(); var RelType = require_rel_type(); var HyperlinksProxy = class { static { __name(this, "HyperlinksProxy"); } constructor(sheetRelsWriter) { this.writer = sheetRelsWriter; } push(hyperlink) { this.writer.addHyperlink(hyperlink); } }; var SheetRelsWriter = class { static { __name(this, "SheetRelsWriter"); } constructor(options) { this.id = options.id; this.count = 0; this._hyperlinks = []; this._workbook = options.workbook; } get stream() { if (!this._stream) { this._stream = this._workbook._openStream(`/xl/worksheets/_rels/sheet${this.id}.xml.rels`); } return this._stream; } get length() { return this._hyperlinks.length; } each(fn) { return this._hyperlinks.forEach(fn); } get hyperlinksProxy() { return this._hyperlinksProxy || (this._hyperlinksProxy = new HyperlinksProxy(this)); } addHyperlink(hyperlink) { const relationship = { Target: hyperlink.target, Type: RelType.Hyperlink, TargetMode: "External" }; const rId = this._writeRelationship(relationship); this._hyperlinks.push({ rId, address: hyperlink.address }); } addMedia(media) { return this._writeRelationship(media); } addRelationship(rel) { return this._writeRelationship(rel); } commit() { if (this.count) { this._writeClose(); this.stream.end(); } } // ================================================================================ _writeOpen() { this.stream.write( ` ` ); } _writeRelationship(relationship) { if (!this.count) { this._writeOpen(); } const rId = `rId${++this.count}`; if (relationship.TargetMode) { this.stream.write( `` ); } else { this.stream.write( `` ); } return rId; } _writeClose() { this.stream.write(""); } }; module2.exports = SheetRelsWriter; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/sheet-comments-writer.js var require_sheet_comments_writer = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/sheet-comments-writer.js"(exports2, module2) { var XmlStream = require_xml_stream(); var RelType = require_rel_type(); var colCache = require_col_cache(); var CommentXform = require_comment_xform(); var VmlShapeXform = require_vml_shape_xform(); var SheetCommentsWriter = class { static { __name(this, "SheetCommentsWriter"); } constructor(worksheet, sheetRelsWriter, options) { this.id = options.id; this.count = 0; this._worksheet = worksheet; this._workbook = options.workbook; this._sheetRelsWriter = sheetRelsWriter; } get commentsStream() { if (!this._commentsStream) { this._commentsStream = this._workbook._openStream(`/xl/comments${this.id}.xml`); } return this._commentsStream; } get vmlStream() { if (!this._vmlStream) { this._vmlStream = this._workbook._openStream(`xl/drawings/vmlDrawing${this.id}.vml`); } return this._vmlStream; } _addRelationships() { const commentRel = { Type: RelType.Comments, Target: `../comments${this.id}.xml` }; this._sheetRelsWriter.addRelationship(commentRel); const vmlDrawingRel = { Type: RelType.VmlDrawing, Target: `../drawings/vmlDrawing${this.id}.vml` }; this.vmlRelId = this._sheetRelsWriter.addRelationship(vmlDrawingRel); } _addCommentRefs() { this._workbook.commentRefs.push({ commentName: `comments${this.id}`, vmlDrawing: `vmlDrawing${this.id}` }); } _writeOpen() { this.commentsStream.write( 'Author' ); this.vmlStream.write( '' ); } _writeComment(comment, index) { const commentXform = new CommentXform(); const commentsXmlStream = new XmlStream(); commentXform.render(commentsXmlStream, comment); this.commentsStream.write(commentsXmlStream.xml); const vmlShapeXform = new VmlShapeXform(); const vmlXmlStream = new XmlStream(); vmlShapeXform.render(vmlXmlStream, comment, index); this.vmlStream.write(vmlXmlStream.xml); } _writeClose() { this.commentsStream.write(""); this.vmlStream.write(""); } addComments(comments) { if (comments && comments.length) { if (!this.startedData) { this._worksheet.comments = []; this._writeOpen(); this._addRelationships(); this._addCommentRefs(); this.startedData = true; } comments.forEach((item) => { item.refAddress = colCache.decodeAddress(item.ref); }); comments.forEach((comment) => { this._writeComment(comment, this.count); this.count += 1; }); } } commit() { if (this.count) { this._writeClose(); this.commentsStream.end(); this.vmlStream.end(); } } }; module2.exports = SheetCommentsWriter; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/worksheet-writer.js var require_worksheet_writer = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/worksheet-writer.js"(exports2, module2) { var _2 = require_under_dash(); var RelType = require_rel_type(); var colCache = require_col_cache(); var Encryptor = require_encryptor(); var Dimensions = require_range4(); var StringBuf = require_string_buf(); var Row = require_row(); var Column = require_column(); var SheetRelsWriter = require_sheet_rels_writer(); var SheetCommentsWriter = require_sheet_comments_writer(); var DataValidations = require_data_validations(); var xmlBuffer = new StringBuf(); var ListXform = require_list_xform(); var DataValidationsXform = require_data_validations_xform(); var SheetPropertiesXform = require_sheet_properties_xform(); var SheetFormatPropertiesXform = require_sheet_format_properties_xform(); var ColXform = require_col_xform(); var RowXform = require_row_xform(); var HyperlinkXform = require_hyperlink_xform(); var SheetViewXform = require_sheet_view_xform(); var SheetProtectionXform = require_sheet_protection_xform(); var PageMarginsXform = require_page_margins_xform(); var PageSetupXform = require_page_setup_xform(); var AutoFilterXform = require_auto_filter_xform(); var PictureXform = require_picture_xform(); var ConditionalFormattingsXform = require_conditional_formattings_xform(); var HeaderFooterXform = require_header_footer_xform(); var RowBreaksXform = require_row_breaks_xform(); var xform = { dataValidations: new DataValidationsXform(), sheetProperties: new SheetPropertiesXform(), sheetFormatProperties: new SheetFormatPropertiesXform(), columns: new ListXform({ tag: "cols", length: false, childXform: new ColXform() }), row: new RowXform(), hyperlinks: new ListXform({ tag: "hyperlinks", length: false, childXform: new HyperlinkXform() }), sheetViews: new ListXform({ tag: "sheetViews", length: false, childXform: new SheetViewXform() }), sheetProtection: new SheetProtectionXform(), pageMargins: new PageMarginsXform(), pageSeteup: new PageSetupXform(), autoFilter: new AutoFilterXform(), picture: new PictureXform(), conditionalFormattings: new ConditionalFormattingsXform(), headerFooter: new HeaderFooterXform(), rowBreaks: new RowBreaksXform() }; var WorksheetWriter = class { static { __name(this, "WorksheetWriter"); } constructor(options) { this.id = options.id; this.name = options.name || `Sheet${this.id}`; this.state = options.state || "visible"; this._rows = []; this._columns = null; this._keys = {}; this._merges = []; this._merges.add = function() { }; this._sheetRelsWriter = new SheetRelsWriter(options); this._sheetCommentsWriter = new SheetCommentsWriter(this, this._sheetRelsWriter, options); this._dimensions = new Dimensions(); this._rowZero = 1; this.committed = false; this.dataValidations = new DataValidations(); this._formulae = {}; this._siFormulae = 0; this.conditionalFormatting = []; this.rowBreaks = []; this.properties = Object.assign( {}, { defaultRowHeight: 15, dyDescent: 55, outlineLevelCol: 0, outlineLevelRow: 0 }, options.properties ); this.headerFooter = Object.assign( {}, { differentFirst: false, differentOddEven: false, oddHeader: null, oddFooter: null, evenHeader: null, evenFooter: null, firstHeader: null, firstFooter: null }, options.headerFooter ); this.pageSetup = Object.assign( {}, { margins: { left: 0.7, right: 0.7, top: 0.75, bottom: 0.75, header: 0.3, footer: 0.3 }, orientation: "portrait", horizontalDpi: 4294967295, verticalDpi: 4294967295, fitToPage: !!(options.pageSetup && (options.pageSetup.fitToWidth || options.pageSetup.fitToHeight) && !options.pageSetup.scale), pageOrder: "downThenOver", blackAndWhite: false, draft: false, cellComments: "None", errors: "displayed", scale: 100, fitToWidth: 1, fitToHeight: 1, paperSize: void 0, showRowColHeaders: false, showGridLines: false, horizontalCentered: false, verticalCentered: false, rowBreaks: null, colBreaks: null }, options.pageSetup ); this.useSharedStrings = options.useSharedStrings || false; this._workbook = options.workbook; this.hasComments = false; this._views = options.views || []; this.autoFilter = options.autoFilter || null; this._media = []; this.sheetProtection = null; this._writeOpenWorksheet(); this.startedData = false; } get workbook() { return this._workbook; } get stream() { if (!this._stream) { this._stream = this._workbook._openStream(`/xl/worksheets/sheet${this.id}.xml`); this._stream.pause(); } return this._stream; } // destroy - not a valid operation for a streaming writer // even though some streamers might be able to, it's a bad idea. destroy() { throw new Error("Invalid Operation: destroy"); } commit() { if (this.committed) { return; } this._rows.forEach((cRow) => { if (cRow) { this._writeRow(cRow); } }); this._rows = null; if (!this.startedData) { this._writeOpenSheetData(); } this._writeCloseSheetData(); this._writeAutoFilter(); this._writeMergeCells(); this._writeHyperlinks(); this._writeConditionalFormatting(); this._writeDataValidations(); this._writeSheetProtection(); this._writePageMargins(); this._writePageSetup(); this._writeBackground(); this._writeHeaderFooter(); this._writeRowBreaks(); this._writeLegacyData(); this._writeCloseWorksheet(); this.stream.end(); this._sheetCommentsWriter.commit(); this._sheetRelsWriter.commit(); this.committed = true; } // return the current dimensions of the writer get dimensions() { return this._dimensions; } get views() { return this._views; } // ========================================================================= // Columns // get the current columns array. get columns() { return this._columns; } // set the columns from an array of column definitions. // Note: any headers defined will overwrite existing values. set columns(value) { this._headerRowCount = value.reduce((pv, cv) => { const headerCount = cv.header && 1 || cv.headers && cv.headers.length || 0; return Math.max(pv, headerCount); }, 0); let count = 1; const columns = this._columns = []; value.forEach((defn) => { const column = new Column(this, count++, false); columns.push(column); column.defn = defn; }); } getColumnKey(key) { return this._keys[key]; } setColumnKey(key, value) { this._keys[key] = value; } deleteColumnKey(key) { delete this._keys[key]; } eachColumnKey(f) { _2.each(this._keys, f); } // get a single column by col number. If it doesn't exist, it and any gaps before it // are created. getColumn(c) { if (typeof c === "string") { const col = this._keys[c]; if (col) return col; c = colCache.l2n(c); } if (!this._columns) { this._columns = []; } if (c > this._columns.length) { let n = this._columns.length + 1; while (n <= c) { this._columns.push(new Column(this, n++)); } } return this._columns[c - 1]; } // ========================================================================= // Rows get _nextRow() { return this._rowZero + this._rows.length; } // iterate over every uncommitted row in the worksheet, including maybe empty rows eachRow(options, iteratee) { if (!iteratee) { iteratee = options; options = void 0; } if (options && options.includeEmpty) { const n = this._nextRow; for (let i = this._rowZero; i < n; i++) { iteratee(this.getRow(i), i); } } else { this._rows.forEach((row) => { if (row.hasValues) { iteratee(row, row.number); } }); } } _commitRow(cRow) { let found = false; while (this._rows.length && !found) { const row = this._rows.shift(); this._rowZero++; if (row) { this._writeRow(row); found = row.number === cRow.number; this._rowZero = row.number + 1; } } } get lastRow() { if (this._rows.length) { return this._rows[this._rows.length - 1]; } return void 0; } // find a row (if exists) by row number findRow(rowNumber) { const index = rowNumber - this._rowZero; return this._rows[index]; } getRow(rowNumber) { const index = rowNumber - this._rowZero; if (index < 0) { throw new Error("Out of bounds: this row has been committed"); } let row = this._rows[index]; if (!row) { this._rows[index] = row = new Row(this, rowNumber); } return row; } addRow(value) { const row = new Row(this, this._nextRow); this._rows[row.number - this._rowZero] = row; row.values = value; return row; } // ================================================================================ // Cells // returns the cell at [r,c] or address given by r. If not found, return undefined findCell(r, c) { const address = colCache.getAddress(r, c); const row = this.findRow(address.row); return row ? row.findCell(address.column) : void 0; } // return the cell at [r,c] or address given by r. If not found, create a new one. getCell(r, c) { const address = colCache.getAddress(r, c); const row = this.getRow(address.row); return row.getCellEx(address); } mergeCells(...cells) { const dimensions = new Dimensions(cells); this._merges.forEach((merge) => { if (merge.intersects(dimensions)) { throw new Error("Cannot merge already merged cells"); } }); const master = this.getCell(dimensions.top, dimensions.left); for (let i = dimensions.top; i <= dimensions.bottom; i++) { for (let j = dimensions.left; j <= dimensions.right; j++) { if (i > dimensions.top || j > dimensions.left) { this.getCell(i, j).merge(master); } } } this._merges.push(dimensions); } // =========================================================================== // Conditional Formatting addConditionalFormatting(cf) { this.conditionalFormatting.push(cf); } removeConditionalFormatting(filter) { if (typeof filter === "number") { this.conditionalFormatting.splice(filter, 1); } else if (filter instanceof Function) { this.conditionalFormatting = this.conditionalFormatting.filter(filter); } else { this.conditionalFormatting = []; } } // ========================================================================= addBackgroundImage(imageId) { this._background = { imageId }; } getBackgroundImageId() { return this._background && this._background.imageId; } // ========================================================================= // Worksheet Protection protect(password, options) { return new Promise((resolve) => { this.sheetProtection = { sheet: true }; if (options && "spinCount" in options) { options.spinCount = Number.isFinite(options.spinCount) ? Math.round(Math.max(0, options.spinCount)) : 1e5; } if (password) { this.sheetProtection.algorithmName = "SHA-512"; this.sheetProtection.saltValue = Encryptor.randomBytes(16).toString("base64"); this.sheetProtection.spinCount = options && "spinCount" in options ? options.spinCount : 1e5; this.sheetProtection.hashValue = Encryptor.convertPasswordToHash( password, "SHA512", this.sheetProtection.saltValue, this.sheetProtection.spinCount ); } if (options) { this.sheetProtection = Object.assign(this.sheetProtection, options); if (!password && "spinCount" in options) { delete this.sheetProtection.spinCount; } } resolve(); }); } unprotect() { this.sheetProtection = null; } // ================================================================================ _write(text) { xmlBuffer.reset(); xmlBuffer.addText(text); this.stream.write(xmlBuffer); } _writeSheetProperties(xmlBuf, properties, pageSetup) { const sheetPropertiesModel = { outlineProperties: properties && properties.outlineProperties, tabColor: properties && properties.tabColor, pageSetup: pageSetup && pageSetup.fitToPage ? { fitToPage: pageSetup.fitToPage } : void 0 }; xmlBuf.addText(xform.sheetProperties.toXml(sheetPropertiesModel)); } _writeSheetFormatProperties(xmlBuf, properties) { const sheetFormatPropertiesModel = properties ? { defaultRowHeight: properties.defaultRowHeight, dyDescent: properties.dyDescent, outlineLevelCol: properties.outlineLevelCol, outlineLevelRow: properties.outlineLevelRow } : void 0; if (properties.defaultColWidth) { sheetFormatPropertiesModel.defaultColWidth = properties.defaultColWidth; } xmlBuf.addText(xform.sheetFormatProperties.toXml(sheetFormatPropertiesModel)); } _writeOpenWorksheet() { xmlBuffer.reset(); xmlBuffer.addText(''); xmlBuffer.addText( '' ); this._writeSheetProperties(xmlBuffer, this.properties, this.pageSetup); xmlBuffer.addText(xform.sheetViews.toXml(this.views)); this._writeSheetFormatProperties(xmlBuffer, this.properties); this.stream.write(xmlBuffer); } _writeColumns() { const cols = Column.toModel(this.columns); if (cols) { xform.columns.prepare(cols, { styles: this._workbook.styles }); this.stream.write(xform.columns.toXml(cols)); } } _writeOpenSheetData() { this._write(""); } _writeRow(row) { if (!this.startedData) { this._writeColumns(); this._writeOpenSheetData(); this.startedData = true; } if (row.hasValues || row.height) { const { model } = row; const options = { styles: this._workbook.styles, sharedStrings: this.useSharedStrings ? this._workbook.sharedStrings : void 0, hyperlinks: this._sheetRelsWriter.hyperlinksProxy, merges: this._merges, formulae: this._formulae, siFormulae: this._siFormulae, comments: [] }; xform.row.prepare(model, options); this.stream.write(xform.row.toXml(model)); if (options.comments.length) { this.hasComments = true; this._sheetCommentsWriter.addComments(options.comments); } } } _writeCloseSheetData() { this._write(""); } _writeMergeCells() { if (this._merges.length) { xmlBuffer.reset(); xmlBuffer.addText(``); this._merges.forEach((merge) => { xmlBuffer.addText(``); }); xmlBuffer.addText(""); this.stream.write(xmlBuffer); } } _writeHyperlinks() { this.stream.write(xform.hyperlinks.toXml(this._sheetRelsWriter._hyperlinks)); } _writeConditionalFormatting() { const options = { styles: this._workbook.styles }; xform.conditionalFormattings.prepare(this.conditionalFormatting, options); this.stream.write(xform.conditionalFormattings.toXml(this.conditionalFormatting)); } _writeRowBreaks() { this.stream.write(xform.rowBreaks.toXml(this.rowBreaks)); } _writeDataValidations() { this.stream.write(xform.dataValidations.toXml(this.dataValidations.model)); } _writeSheetProtection() { this.stream.write(xform.sheetProtection.toXml(this.sheetProtection)); } _writePageMargins() { this.stream.write(xform.pageMargins.toXml(this.pageSetup.margins)); } _writePageSetup() { this.stream.write(xform.pageSeteup.toXml(this.pageSetup)); } _writeHeaderFooter() { this.stream.write(xform.headerFooter.toXml(this.headerFooter)); } _writeAutoFilter() { this.stream.write(xform.autoFilter.toXml(this.autoFilter)); } _writeBackground() { if (this._background) { if (this._background.imageId !== void 0) { const image = this._workbook.getImage(this._background.imageId); const pictureId = this._sheetRelsWriter.addMedia({ Target: `../media/${image.name}`, Type: RelType.Image }); this._background = { ...this._background, rId: pictureId }; } this.stream.write(xform.picture.toXml({ rId: this._background.rId })); } } _writeLegacyData() { if (this.hasComments) { xmlBuffer.reset(); xmlBuffer.addText(``); this.stream.write(xmlBuffer); } } _writeDimensions() { } _writeCloseWorksheet() { this._write(""); } }; module2.exports = WorksheetWriter; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/workbook-writer.js var require_workbook_writer = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/workbook-writer.js"(exports2, module2) { var fs = require("fs"); var Archiver = require_archiver(); var StreamBuf = require_stream_buf(); var RelType = require_rel_type(); var StylesXform = require_styles_xform(); var SharedStrings = require_shared_strings(); var DefinedNames = require_defined_names(); var CoreXform = require_core_xform(); var RelationshipsXform = require_relationships_xform(); var ContentTypesXform = require_content_types_xform(); var AppXform = require_app_xform(); var WorkbookXform = require_workbook_xform(); var SharedStringsXform = require_shared_strings_xform(); var WorksheetWriter = require_worksheet_writer(); var theme1Xml = require_theme1(); var WorkbookWriter = class { static { __name(this, "WorkbookWriter"); } constructor(options) { options = options || {}; this.created = options.created || /* @__PURE__ */ new Date(); this.modified = options.modified || this.created; this.creator = options.creator || "ExcelJS"; this.lastModifiedBy = options.lastModifiedBy || "ExcelJS"; this.lastPrinted = options.lastPrinted; this.useSharedStrings = options.useSharedStrings || false; this.sharedStrings = new SharedStrings(); this.styles = options.useStyles ? new StylesXform(true) : new StylesXform.Mock(true); this._definedNames = new DefinedNames(); this._worksheets = []; this.views = []; this.zipOptions = options.zip; this.media = []; this.commentRefs = []; this.zip = Archiver("zip", this.zipOptions); if (options.stream) { this.stream = options.stream; } else if (options.filename) { this.stream = fs.createWriteStream(options.filename); } else { this.stream = new StreamBuf(); } this.zip.pipe(this.stream); this.promise = Promise.all([this.addThemes(), this.addOfficeRels()]); } get definedNames() { return this._definedNames; } _openStream(path) { const stream = new StreamBuf({ bufSize: 65536, batch: true }); this.zip.append(stream, { name: path }); stream.on("finish", () => { stream.emit("zipped"); }); return stream; } _commitWorksheets() { const commitWorksheet = /* @__PURE__ */ __name(function(worksheet) { if (!worksheet.committed) { return new Promise((resolve) => { worksheet.stream.on("zipped", () => { resolve(); }); worksheet.commit(); }); } return Promise.resolve(); }, "commitWorksheet"); const promises = this._worksheets.map(commitWorksheet); if (promises.length) { return Promise.all(promises); } return Promise.resolve(); } async commit() { await this.promise; await this.addMedia(); await this._commitWorksheets(); await Promise.all([ this.addContentTypes(), this.addApp(), this.addCore(), this.addSharedStrings(), this.addStyles(), this.addWorkbookRels() ]); await this.addWorkbook(); return this._finalize(); } get nextId() { let i; for (i = 1; i < this._worksheets.length; i++) { if (!this._worksheets[i]) { return i; } } return this._worksheets.length || 1; } addImage(image) { const id = this.media.length; const medium = Object.assign({}, image, { type: "image", name: `image${id}.${image.extension}` }); this.media.push(medium); return id; } getImage(id) { return this.media[id]; } addWorksheet(name, options) { options = options || {}; const useSharedStrings = options.useSharedStrings !== void 0 ? options.useSharedStrings : this.useSharedStrings; if (options.tabColor) { console.trace("tabColor option has moved to { properties: tabColor: {...} }"); options.properties = Object.assign( { tabColor: options.tabColor }, options.properties ); } const id = this.nextId; name = name || `sheet${id}`; const worksheet = new WorksheetWriter({ id, name, workbook: this, useSharedStrings, properties: options.properties, state: options.state, pageSetup: options.pageSetup, views: options.views, autoFilter: options.autoFilter, headerFooter: options.headerFooter }); this._worksheets[id] = worksheet; return worksheet; } getWorksheet(id) { if (id === void 0) { return this._worksheets.find(() => true); } if (typeof id === "number") { return this._worksheets[id]; } if (typeof id === "string") { return this._worksheets.find((worksheet) => worksheet && worksheet.name === id); } return void 0; } addStyles() { return new Promise((resolve) => { this.zip.append(this.styles.xml, { name: "xl/styles.xml" }); resolve(); }); } addThemes() { return new Promise((resolve) => { this.zip.append(theme1Xml, { name: "xl/theme/theme1.xml" }); resolve(); }); } addOfficeRels() { return new Promise((resolve) => { const xform = new RelationshipsXform(); const xml = xform.toXml([ { Id: "rId1", Type: RelType.OfficeDocument, Target: "xl/workbook.xml" }, { Id: "rId2", Type: RelType.CoreProperties, Target: "docProps/core.xml" }, { Id: "rId3", Type: RelType.ExtenderProperties, Target: "docProps/app.xml" } ]); this.zip.append(xml, { name: "/_rels/.rels" }); resolve(); }); } addContentTypes() { return new Promise((resolve) => { const model = { worksheets: this._worksheets.filter(Boolean), sharedStrings: this.sharedStrings, commentRefs: this.commentRefs, media: this.media }; const xform = new ContentTypesXform(); const xml = xform.toXml(model); this.zip.append(xml, { name: "[Content_Types].xml" }); resolve(); }); } addMedia() { return Promise.all( this.media.map((medium) => { if (medium.type === "image") { const filename = `xl/media/${medium.name}`; if (medium.filename) { return this.zip.file(medium.filename, { name: filename }); } if (medium.buffer) { return this.zip.append(medium.buffer, { name: filename }); } if (medium.base64) { const dataimg64 = medium.base64; const content = dataimg64.substring(dataimg64.indexOf(",") + 1); return this.zip.append(content, { name: filename, base64: true }); } } throw new Error("Unsupported media"); }) ); } addApp() { return new Promise((resolve) => { const model = { worksheets: this._worksheets.filter(Boolean) }; const xform = new AppXform(); const xml = xform.toXml(model); this.zip.append(xml, { name: "docProps/app.xml" }); resolve(); }); } addCore() { return new Promise((resolve) => { const coreXform = new CoreXform(); const xml = coreXform.toXml(this); this.zip.append(xml, { name: "docProps/core.xml" }); resolve(); }); } addSharedStrings() { if (this.sharedStrings.count) { return new Promise((resolve) => { const sharedStringsXform = new SharedStringsXform(); const xml = sharedStringsXform.toXml(this.sharedStrings); this.zip.append(xml, { name: "/xl/sharedStrings.xml" }); resolve(); }); } return Promise.resolve(); } addWorkbookRels() { let count = 1; const relationships = [ { Id: `rId${count++}`, Type: RelType.Styles, Target: "styles.xml" }, { Id: `rId${count++}`, Type: RelType.Theme, Target: "theme/theme1.xml" } ]; if (this.sharedStrings.count) { relationships.push({ Id: `rId${count++}`, Type: RelType.SharedStrings, Target: "sharedStrings.xml" }); } this._worksheets.forEach((worksheet) => { if (worksheet) { worksheet.rId = `rId${count++}`; relationships.push({ Id: worksheet.rId, Type: RelType.Worksheet, Target: `worksheets/sheet${worksheet.id}.xml` }); } }); return new Promise((resolve) => { const xform = new RelationshipsXform(); const xml = xform.toXml(relationships); this.zip.append(xml, { name: "/xl/_rels/workbook.xml.rels" }); resolve(); }); } addWorkbook() { const { zip } = this; const model = { worksheets: this._worksheets.filter(Boolean), definedNames: this._definedNames.model, views: this.views, properties: {}, calcProperties: {} }; return new Promise((resolve) => { const xform = new WorkbookXform(); xform.prepare(model); zip.append(xform.toXml(model), { name: "/xl/workbook.xml" }); resolve(); }); } _finalize() { return new Promise((resolve, reject) => { this.stream.on("error", reject); this.stream.on("finish", () => { resolve(this); }); this.zip.on("error", reject); this.zip.finalize(); }); } }; module2.exports = WorkbookWriter; } }); // ../../node_modules/.pnpm/listenercount@1.0.1/node_modules/listenercount/index.js var require_listenercount = __commonJS({ "../../node_modules/.pnpm/listenercount@1.0.1/node_modules/listenercount/index.js"(exports2, module2) { "use strict"; var listenerCount = require("events").listenerCount; listenerCount = listenerCount || function(ee, event) { var listeners = ee && ee._events && ee._events[event]; if (Array.isArray(listeners)) { return listeners.length; } else if (typeof listeners === "function") { return 1; } else { return 0; } }; module2.exports = listenerCount; } }); // ../../node_modules/.pnpm/buffer-indexof-polyfill@1.0.2/node_modules/buffer-indexof-polyfill/init-buffer.js var require_init_buffer = __commonJS({ "../../node_modules/.pnpm/buffer-indexof-polyfill@1.0.2/node_modules/buffer-indexof-polyfill/init-buffer.js"(exports2, module2) { module2.exports = /* @__PURE__ */ __name(function initBuffer(val) { var nodeVersion = process && process.version ? process.version : "v5.0.0"; var major = nodeVersion.split(".")[0].replace("v", ""); return major < 6 ? new Buffer(val) : Buffer.from(val); }, "initBuffer"); } }); // ../../node_modules/.pnpm/buffer-indexof-polyfill@1.0.2/node_modules/buffer-indexof-polyfill/index.js var require_buffer_indexof_polyfill = __commonJS({ "../../node_modules/.pnpm/buffer-indexof-polyfill@1.0.2/node_modules/buffer-indexof-polyfill/index.js"() { "use strict"; var initBuffer = require_init_buffer(); if (!Buffer.prototype.indexOf) { Buffer.prototype.indexOf = function(value, offset) { offset = offset || 0; if (typeof value === "string" || value instanceof String) { value = initBuffer(value); } else if (typeof value === "number" || value instanceof Number) { value = initBuffer([value]); } var len = value.length; for (var i = offset; i <= this.length - len; i++) { var mismatch = false; for (var j = 0; j < len; j++) { if (this[i + j] != value[j]) { mismatch = true; break; } } if (!mismatch) { return i; } } return -1; }; } function bufferLastIndexOf(value, offset) { if (typeof value === "string" || value instanceof String) { value = initBuffer(value); } else if (typeof value === "number" || value instanceof Number) { value = initBuffer([value]); } var len = value.length; offset = offset || this.length - len; for (var i = offset; i >= 0; i--) { var mismatch = false; for (var j = 0; j < len; j++) { if (this[i + j] != value[j]) { mismatch = true; break; } } if (!mismatch) { return i; } } return -1; } __name(bufferLastIndexOf, "bufferLastIndexOf"); if (Buffer.prototype.lastIndexOf) { if (initBuffer("ABC").lastIndexOf("ABC") === -1) Buffer.prototype.lastIndexOf = bufferLastIndexOf; } else { Buffer.prototype.lastIndexOf = bufferLastIndexOf; } } }); // ../../node_modules/.pnpm/traverse@0.3.9/node_modules/traverse/index.js var require_traverse = __commonJS({ "../../node_modules/.pnpm/traverse@0.3.9/node_modules/traverse/index.js"(exports2, module2) { module2.exports = Traverse; function Traverse(obj2) { if (!(this instanceof Traverse)) return new Traverse(obj2); this.value = obj2; } __name(Traverse, "Traverse"); Traverse.prototype.get = function(ps) { var node = this.value; for (var i = 0; i < ps.length; i++) { var key = ps[i]; if (!Object.hasOwnProperty.call(node, key)) { node = void 0; break; } node = node[key]; } return node; }; Traverse.prototype.set = function(ps, value) { var node = this.value; for (var i = 0; i < ps.length - 1; i++) { var key = ps[i]; if (!Object.hasOwnProperty.call(node, key)) node[key] = {}; node = node[key]; } node[ps[i]] = value; return value; }; Traverse.prototype.map = function(cb) { return walk(this.value, cb, true); }; Traverse.prototype.forEach = function(cb) { this.value = walk(this.value, cb, false); return this.value; }; Traverse.prototype.reduce = function(cb, init) { var skip = arguments.length === 1; var acc = skip ? this.value : init; this.forEach(function(x) { if (!this.isRoot || !skip) { acc = cb.call(this, acc, x); } }); return acc; }; Traverse.prototype.deepEqual = function(obj2) { if (arguments.length !== 1) { throw new Error( "deepEqual requires exactly one object to compare against" ); } var equal = true; var node = obj2; this.forEach(function(y) { var notEqual = (function() { equal = false; return void 0; }).bind(this); if (!this.isRoot) { if (typeof node !== "object") return notEqual(); node = node[this.key]; } var x = node; this.post(function() { node = x; }); var toS = /* @__PURE__ */ __name(function(o) { return Object.prototype.toString.call(o); }, "toS"); if (this.circular) { if (Traverse(obj2).get(this.circular.path) !== x) notEqual(); } else if (typeof x !== typeof y) { notEqual(); } else if (x === null || y === null || x === void 0 || y === void 0) { if (x !== y) notEqual(); } else if (x.__proto__ !== y.__proto__) { notEqual(); } else if (x === y) { } else if (typeof x === "function") { if (x instanceof RegExp) { if (x.toString() != y.toString()) notEqual(); } else if (x !== y) notEqual(); } else if (typeof x === "object") { if (toS(y) === "[object Arguments]" || toS(x) === "[object Arguments]") { if (toS(x) !== toS(y)) { notEqual(); } } else if (x instanceof Date || y instanceof Date) { if (!(x instanceof Date) || !(y instanceof Date) || x.getTime() !== y.getTime()) { notEqual(); } } else { var kx = Object.keys(x); var ky = Object.keys(y); if (kx.length !== ky.length) return notEqual(); for (var i = 0; i < kx.length; i++) { var k = kx[i]; if (!Object.hasOwnProperty.call(y, k)) { notEqual(); } } } } }); return equal; }; Traverse.prototype.paths = function() { var acc = []; this.forEach(function(x) { acc.push(this.path); }); return acc; }; Traverse.prototype.nodes = function() { var acc = []; this.forEach(function(x) { acc.push(this.node); }); return acc; }; Traverse.prototype.clone = function() { var parents = [], nodes = []; return (/* @__PURE__ */ __name((function clone(src) { for (var i = 0; i < parents.length; i++) { if (parents[i] === src) { return nodes[i]; } } if (typeof src === "object" && src !== null) { var dst = copy(src); parents.push(src); nodes.push(dst); Object.keys(src).forEach(function(key) { dst[key] = clone(src[key]); }); parents.pop(); nodes.pop(); return dst; } else { return src; } }), "clone"))(this.value); }; function walk(root, cb, immutable) { var path = []; var parents = []; var alive = true; return (/* @__PURE__ */ __name((function walker(node_) { var node = immutable ? copy(node_) : node_; var modifiers = {}; var state = { node, node_, path: [].concat(path), parent: parents.slice(-1)[0], key: path.slice(-1)[0], isRoot: path.length === 0, level: path.length, circular: null, update: /* @__PURE__ */ __name(function(x) { if (!state.isRoot) { state.parent.node[state.key] = x; } state.node = x; }, "update"), "delete": /* @__PURE__ */ __name(function() { delete state.parent.node[state.key]; }, "delete"), remove: /* @__PURE__ */ __name(function() { if (Array.isArray(state.parent.node)) { state.parent.node.splice(state.key, 1); } else { delete state.parent.node[state.key]; } }, "remove"), before: /* @__PURE__ */ __name(function(f) { modifiers.before = f; }, "before"), after: /* @__PURE__ */ __name(function(f) { modifiers.after = f; }, "after"), pre: /* @__PURE__ */ __name(function(f) { modifiers.pre = f; }, "pre"), post: /* @__PURE__ */ __name(function(f) { modifiers.post = f; }, "post"), stop: /* @__PURE__ */ __name(function() { alive = false; }, "stop") }; if (!alive) return state; if (typeof node === "object" && node !== null) { state.isLeaf = Object.keys(node).length == 0; for (var i = 0; i < parents.length; i++) { if (parents[i].node_ === node_) { state.circular = parents[i]; break; } } } else { state.isLeaf = true; } state.notLeaf = !state.isLeaf; state.notRoot = !state.isRoot; var ret2 = cb.call(state, state.node); if (ret2 !== void 0 && state.update) state.update(ret2); if (modifiers.before) modifiers.before.call(state, state.node); if (typeof state.node == "object" && state.node !== null && !state.circular) { parents.push(state); var keys = Object.keys(state.node); keys.forEach(function(key, i2) { path.push(key); if (modifiers.pre) modifiers.pre.call(state, state.node[key], key); var child = walker(state.node[key]); if (immutable && Object.hasOwnProperty.call(state.node, key)) { state.node[key] = child.node; } child.isLast = i2 == keys.length - 1; child.isFirst = i2 == 0; if (modifiers.post) modifiers.post.call(state, child); path.pop(); }); parents.pop(); } if (modifiers.after) modifiers.after.call(state, state.node); return state; }), "walker"))(root).node; } __name(walk, "walk"); Object.keys(Traverse.prototype).forEach(function(key) { Traverse[key] = function(obj2) { var args = [].slice.call(arguments, 1); var t = Traverse(obj2); return t[key].apply(t, args); }; }); function copy(src) { if (typeof src === "object" && src !== null) { var dst; if (Array.isArray(src)) { dst = []; } else if (src instanceof Date) { dst = new Date(src); } else if (src instanceof Boolean) { dst = new Boolean(src); } else if (src instanceof Number) { dst = new Number(src); } else if (src instanceof String) { dst = new String(src); } else { dst = Object.create(Object.getPrototypeOf(src)); } Object.keys(src).forEach(function(key) { dst[key] = src[key]; }); return dst; } else return src; } __name(copy, "copy"); } }); // ../../node_modules/.pnpm/chainsaw@0.1.0/node_modules/chainsaw/index.js var require_chainsaw = __commonJS({ "../../node_modules/.pnpm/chainsaw@0.1.0/node_modules/chainsaw/index.js"(exports2, module2) { var Traverse = require_traverse(); var EventEmitter = require("events").EventEmitter; module2.exports = Chainsaw; function Chainsaw(builder) { var saw = Chainsaw.saw(builder, {}); var r = builder.call(saw.handlers, saw); if (r !== void 0) saw.handlers = r; saw.record(); return saw.chain(); } __name(Chainsaw, "Chainsaw"); Chainsaw.light = /* @__PURE__ */ __name(function ChainsawLight(builder) { var saw = Chainsaw.saw(builder, {}); var r = builder.call(saw.handlers, saw); if (r !== void 0) saw.handlers = r; return saw.chain(); }, "ChainsawLight"); Chainsaw.saw = function(builder, handlers) { var saw = new EventEmitter(); saw.handlers = handlers; saw.actions = []; saw.chain = function() { var ch = Traverse(saw.handlers).map(function(node) { if (this.isRoot) return node; var ps = this.path; if (typeof node === "function") { this.update(function() { saw.actions.push({ path: ps, args: [].slice.call(arguments) }); return ch; }); } }); process.nextTick(function() { saw.emit("begin"); saw.next(); }); return ch; }; saw.pop = function() { return saw.actions.shift(); }; saw.next = function() { var action = saw.pop(); if (!action) { saw.emit("end"); } else if (!action.trap) { var node = saw.handlers; action.path.forEach(function(key) { node = node[key]; }); node.apply(saw.handlers, action.args); } }; saw.nest = function(cb) { var args = [].slice.call(arguments, 1); var autonext = true; if (typeof cb === "boolean") { var autonext = cb; cb = args.shift(); } var s = Chainsaw.saw(builder, {}); var r = builder.call(s.handlers, s); if (r !== void 0) s.handlers = r; if ("undefined" !== typeof saw.step) { s.record(); } cb.apply(s.chain(), args); if (autonext !== false) s.on("end", saw.next); }; saw.record = function() { upgradeChainsaw(saw); }; ["trap", "down", "jump"].forEach(function(method) { saw[method] = function() { throw new Error("To use the trap, down and jump features, please call record() first to start recording actions."); }; }); return saw; }; function upgradeChainsaw(saw) { saw.step = 0; saw.pop = function() { return saw.actions[saw.step++]; }; saw.trap = function(name, cb) { var ps = Array.isArray(name) ? name : [name]; saw.actions.push({ path: ps, step: saw.step, cb, trap: true }); }; saw.down = function(name) { var ps = (Array.isArray(name) ? name : [name]).join("/"); var i = saw.actions.slice(saw.step).map(function(x) { if (x.trap && x.step <= saw.step) return false; return x.path.join("/") == ps; }).indexOf(true); if (i >= 0) saw.step += i; else saw.step = saw.actions.length; var act = saw.actions[saw.step - 1]; if (act && act.trap) { saw.step = act.step; act.cb(); } else saw.next(); }; saw.jump = function(step) { saw.step = step; saw.next(); }; } __name(upgradeChainsaw, "upgradeChainsaw"); } }); // ../../node_modules/.pnpm/buffers@0.1.1/node_modules/buffers/index.js var require_buffers = __commonJS({ "../../node_modules/.pnpm/buffers@0.1.1/node_modules/buffers/index.js"(exports2, module2) { module2.exports = Buffers; function Buffers(bufs) { if (!(this instanceof Buffers)) return new Buffers(bufs); this.buffers = bufs || []; this.length = this.buffers.reduce(function(size, buf) { return size + buf.length; }, 0); } __name(Buffers, "Buffers"); Buffers.prototype.push = function() { for (var i = 0; i < arguments.length; i++) { if (!Buffer.isBuffer(arguments[i])) { throw new TypeError("Tried to push a non-buffer"); } } for (var i = 0; i < arguments.length; i++) { var buf = arguments[i]; this.buffers.push(buf); this.length += buf.length; } return this.length; }; Buffers.prototype.unshift = function() { for (var i = 0; i < arguments.length; i++) { if (!Buffer.isBuffer(arguments[i])) { throw new TypeError("Tried to unshift a non-buffer"); } } for (var i = 0; i < arguments.length; i++) { var buf = arguments[i]; this.buffers.unshift(buf); this.length += buf.length; } return this.length; }; Buffers.prototype.copy = function(dst, dStart, start, end) { return this.slice(start, end).copy(dst, dStart, 0, end - start); }; Buffers.prototype.splice = function(i, howMany) { var buffers = this.buffers; var index = i >= 0 ? i : this.length - i; var reps = [].slice.call(arguments, 2); if (howMany === void 0) { howMany = this.length - index; } else if (howMany > this.length - index) { howMany = this.length - index; } for (var i = 0; i < reps.length; i++) { this.length += reps[i].length; } var removed = new Buffers(); var bytes = 0; var startBytes = 0; for (var ii = 0; ii < buffers.length && startBytes + buffers[ii].length < index; ii++) { startBytes += buffers[ii].length; } if (index - startBytes > 0) { var start = index - startBytes; if (start + howMany < buffers[ii].length) { removed.push(buffers[ii].slice(start, start + howMany)); var orig = buffers[ii]; var buf0 = new Buffer(start); for (var i = 0; i < start; i++) { buf0[i] = orig[i]; } var buf1 = new Buffer(orig.length - start - howMany); for (var i = start + howMany; i < orig.length; i++) { buf1[i - howMany - start] = orig[i]; } if (reps.length > 0) { var reps_ = reps.slice(); reps_.unshift(buf0); reps_.push(buf1); buffers.splice.apply(buffers, [ii, 1].concat(reps_)); ii += reps_.length; reps = []; } else { buffers.splice(ii, 1, buf0, buf1); ii += 2; } } else { removed.push(buffers[ii].slice(start)); buffers[ii] = buffers[ii].slice(0, start); ii++; } } if (reps.length > 0) { buffers.splice.apply(buffers, [ii, 0].concat(reps)); ii += reps.length; } while (removed.length < howMany) { var buf = buffers[ii]; var len = buf.length; var take = Math.min(len, howMany - removed.length); if (take === len) { removed.push(buf); buffers.splice(ii, 1); } else { removed.push(buf.slice(0, take)); buffers[ii] = buffers[ii].slice(take); } } this.length -= removed.length; return removed; }; Buffers.prototype.slice = function(i, j) { var buffers = this.buffers; if (j === void 0) j = this.length; if (i === void 0) i = 0; if (j > this.length) j = this.length; var startBytes = 0; for (var si = 0; si < buffers.length && startBytes + buffers[si].length <= i; si++) { startBytes += buffers[si].length; } var target = new Buffer(j - i); var ti = 0; for (var ii = si; ti < j - i && ii < buffers.length; ii++) { var len = buffers[ii].length; var start = ti === 0 ? i - startBytes : 0; var end = ti + len >= j - i ? Math.min(start + (j - i) - ti, len) : len; buffers[ii].copy(target, ti, start, end); ti += end - start; } return target; }; Buffers.prototype.pos = function(i) { if (i < 0 || i >= this.length) throw new Error("oob"); var l2 = i, bi = 0, bu = null; for (; ; ) { bu = this.buffers[bi]; if (l2 < bu.length) { return { buf: bi, offset: l2 }; } else { l2 -= bu.length; } bi++; } }; Buffers.prototype.get = /* @__PURE__ */ __name(function get(i) { var pos = this.pos(i); return this.buffers[pos.buf].get(pos.offset); }, "get"); Buffers.prototype.set = /* @__PURE__ */ __name(function set(i, b) { var pos = this.pos(i); return this.buffers[pos.buf].set(pos.offset, b); }, "set"); Buffers.prototype.indexOf = function(needle, offset) { if ("string" === typeof needle) { needle = new Buffer(needle); } else if (needle instanceof Buffer) { } else { throw new Error("Invalid type for a search string"); } if (!needle.length) { return 0; } if (!this.length) { return -1; } var i = 0, j = 0, match = 0, mstart, pos = 0; if (offset) { var p = this.pos(offset); i = p.buf; j = p.offset; pos = offset; } for (; ; ) { while (j >= this.buffers[i].length) { j = 0; i++; if (i >= this.buffers.length) { return -1; } } var char = this.buffers[i][j]; if (char == needle[match]) { if (match == 0) { mstart = { i, j, pos }; } match++; if (match == needle.length) { return mstart.pos; } } else if (match != 0) { i = mstart.i; j = mstart.j; pos = mstart.pos; match = 0; } j++; pos++; } }; Buffers.prototype.toBuffer = function() { return this.slice(); }; Buffers.prototype.toString = function(encoding, start, end) { return this.slice(start, end).toString(encoding); }; } }); // ../../node_modules/.pnpm/binary@0.3.0/node_modules/binary/lib/vars.js var require_vars = __commonJS({ "../../node_modules/.pnpm/binary@0.3.0/node_modules/binary/lib/vars.js"(exports2, module2) { module2.exports = function(store) { function getset(name, value) { var node = vars.store; var keys = name.split("."); keys.slice(0, -1).forEach(function(k) { if (node[k] === void 0) node[k] = {}; node = node[k]; }); var key = keys[keys.length - 1]; if (arguments.length == 1) { return node[key]; } else { return node[key] = value; } } __name(getset, "getset"); var vars = { get: /* @__PURE__ */ __name(function(name) { return getset(name); }, "get"), set: /* @__PURE__ */ __name(function(name, value) { return getset(name, value); }, "set"), store: store || {} }; return vars; }; } }); // ../../node_modules/.pnpm/binary@0.3.0/node_modules/binary/index.js var require_binary2 = __commonJS({ "../../node_modules/.pnpm/binary@0.3.0/node_modules/binary/index.js"(exports2, module2) { var Chainsaw = require_chainsaw(); var EventEmitter = require("events").EventEmitter; var Buffers = require_buffers(); var Vars = require_vars(); var Stream = require("stream").Stream; exports2 = module2.exports = function(bufOrEm, eventName) { if (Buffer.isBuffer(bufOrEm)) { return exports2.parse(bufOrEm); } var s = exports2.stream(); if (bufOrEm && bufOrEm.pipe) { bufOrEm.pipe(s); } else if (bufOrEm) { bufOrEm.on(eventName || "data", function(buf) { s.write(buf); }); bufOrEm.on("end", function() { s.end(); }); } return s; }; exports2.stream = function(input) { if (input) return exports2.apply(null, arguments); var pending = null; function getBytes(bytes, cb, skip) { pending = { bytes, skip, cb: /* @__PURE__ */ __name(function(buf) { pending = null; cb(buf); }, "cb") }; dispatch(); } __name(getBytes, "getBytes"); var offset = null; function dispatch() { if (!pending) { if (caughtEnd) done = true; return; } if (typeof pending === "function") { pending(); } else { var bytes = offset + pending.bytes; if (buffers.length >= bytes) { var buf; if (offset == null) { buf = buffers.splice(0, bytes); if (!pending.skip) { buf = buf.slice(); } } else { if (!pending.skip) { buf = buffers.slice(offset, bytes); } offset = bytes; } if (pending.skip) { pending.cb(); } else { pending.cb(buf); } } } } __name(dispatch, "dispatch"); function builder(saw) { function next() { if (!done) saw.next(); } __name(next, "next"); var self2 = words(function(bytes, cb) { return function(name) { getBytes(bytes, function(buf) { vars.set(name, cb(buf)); next(); }); }; }); self2.tap = function(cb) { saw.nest(cb, vars.store); }; self2.into = function(key, cb) { if (!vars.get(key)) vars.set(key, {}); var parent = vars; vars = Vars(parent.get(key)); saw.nest(function() { cb.apply(this, arguments); this.tap(function() { vars = parent; }); }, vars.store); }; self2.flush = function() { vars.store = {}; next(); }; self2.loop = function(cb) { var end = false; saw.nest(false, /* @__PURE__ */ __name(function loop() { this.vars = vars.store; cb.call(this, function() { end = true; next(); }, vars.store); this.tap(function() { if (end) saw.next(); else loop.call(this); }.bind(this)); }, "loop"), vars.store); }; self2.buffer = function(name, bytes) { if (typeof bytes === "string") { bytes = vars.get(bytes); } getBytes(bytes, function(buf) { vars.set(name, buf); next(); }); }; self2.skip = function(bytes) { if (typeof bytes === "string") { bytes = vars.get(bytes); } getBytes(bytes, function() { next(); }); }; self2.scan = /* @__PURE__ */ __name(function find(name, search) { if (typeof search === "string") { search = new Buffer(search); } else if (!Buffer.isBuffer(search)) { throw new Error("search must be a Buffer or a string"); } var taken = 0; pending = /* @__PURE__ */ __name(function() { var pos = buffers.indexOf(search, offset + taken); var i = pos - offset - taken; if (pos !== -1) { pending = null; if (offset != null) { vars.set( name, buffers.slice(offset, offset + taken + i) ); offset += taken + i + search.length; } else { vars.set( name, buffers.slice(0, taken + i) ); buffers.splice(0, taken + i + search.length); } next(); dispatch(); } else { i = Math.max(buffers.length - search.length - offset - taken, 0); } taken += i; }, "pending"); dispatch(); }, "find"); self2.peek = function(cb) { offset = 0; saw.nest(function() { cb.call(this, vars.store); this.tap(function() { offset = null; }); }); }; return self2; } __name(builder, "builder"); ; var stream = Chainsaw.light(builder); stream.writable = true; var buffers = Buffers(); stream.write = function(buf) { buffers.push(buf); dispatch(); }; var vars = Vars(); var done = false, caughtEnd = false; stream.end = function() { caughtEnd = true; }; stream.pipe = Stream.prototype.pipe; Object.getOwnPropertyNames(EventEmitter.prototype).forEach(function(name) { stream[name] = EventEmitter.prototype[name]; }); return stream; }; exports2.parse = /* @__PURE__ */ __name(function parse2(buffer) { var self2 = words(function(bytes, cb) { return function(name) { if (offset + bytes <= buffer.length) { var buf = buffer.slice(offset, offset + bytes); offset += bytes; vars.set(name, cb(buf)); } else { vars.set(name, null); } return self2; }; }); var offset = 0; var vars = Vars(); self2.vars = vars.store; self2.tap = function(cb) { cb.call(self2, vars.store); return self2; }; self2.into = function(key, cb) { if (!vars.get(key)) { vars.set(key, {}); } var parent = vars; vars = Vars(parent.get(key)); cb.call(self2, vars.store); vars = parent; return self2; }; self2.loop = function(cb) { var end = false; var ender = /* @__PURE__ */ __name(function() { end = true; }, "ender"); while (end === false) { cb.call(self2, ender, vars.store); } return self2; }; self2.buffer = function(name, size) { if (typeof size === "string") { size = vars.get(size); } var buf = buffer.slice(offset, Math.min(buffer.length, offset + size)); offset += size; vars.set(name, buf); return self2; }; self2.skip = function(bytes) { if (typeof bytes === "string") { bytes = vars.get(bytes); } offset += bytes; return self2; }; self2.scan = function(name, search) { if (typeof search === "string") { search = new Buffer(search); } else if (!Buffer.isBuffer(search)) { throw new Error("search must be a Buffer or a string"); } vars.set(name, null); for (var i = 0; i + offset <= buffer.length - search.length + 1; i++) { for (var j = 0; j < search.length && buffer[offset + i + j] === search[j]; j++) ; if (j === search.length) break; } vars.set(name, buffer.slice(offset, offset + i)); offset += i + search.length; return self2; }; self2.peek = function(cb) { var was = offset; cb.call(self2, vars.store); offset = was; return self2; }; self2.flush = function() { vars.store = {}; return self2; }; self2.eof = function() { return offset >= buffer.length; }; return self2; }, "parse"); function decodeLEu(bytes) { var acc = 0; for (var i = 0; i < bytes.length; i++) { acc += Math.pow(256, i) * bytes[i]; } return acc; } __name(decodeLEu, "decodeLEu"); function decodeBEu(bytes) { var acc = 0; for (var i = 0; i < bytes.length; i++) { acc += Math.pow(256, bytes.length - i - 1) * bytes[i]; } return acc; } __name(decodeBEu, "decodeBEu"); function decodeBEs(bytes) { var val = decodeBEu(bytes); if ((bytes[0] & 128) == 128) { val -= Math.pow(256, bytes.length); } return val; } __name(decodeBEs, "decodeBEs"); function decodeLEs(bytes) { var val = decodeLEu(bytes); if ((bytes[bytes.length - 1] & 128) == 128) { val -= Math.pow(256, bytes.length); } return val; } __name(decodeLEs, "decodeLEs"); function words(decode) { var self2 = {}; [1, 2, 4, 8].forEach(function(bytes) { var bits = bytes * 8; self2["word" + bits + "le"] = self2["word" + bits + "lu"] = decode(bytes, decodeLEu); self2["word" + bits + "ls"] = decode(bytes, decodeLEs); self2["word" + bits + "be"] = self2["word" + bits + "bu"] = decode(bytes, decodeBEu); self2["word" + bits + "bs"] = decode(bytes, decodeBEs); }); self2.word8 = self2.word8u = self2.word8be; self2.word8s = self2.word8bs; return self2; } __name(words, "words"); } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/es5.js var require_es5 = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/es5.js"(exports2, module2) { var isES5 = (function() { "use strict"; return this === void 0; })(); if (isES5) { module2.exports = { freeze: Object.freeze, defineProperty: Object.defineProperty, getDescriptor: Object.getOwnPropertyDescriptor, keys: Object.keys, names: Object.getOwnPropertyNames, getPrototypeOf: Object.getPrototypeOf, isArray: Array.isArray, isES5, propertyIsWritable: /* @__PURE__ */ __name(function(obj2, prop) { var descriptor = Object.getOwnPropertyDescriptor(obj2, prop); return !!(!descriptor || descriptor.writable || descriptor.set); }, "propertyIsWritable") }; } else { has = {}.hasOwnProperty; str = {}.toString; proto = {}.constructor.prototype; ObjectKeys = /* @__PURE__ */ __name(function(o) { var ret2 = []; for (var key in o) { if (has.call(o, key)) { ret2.push(key); } } return ret2; }, "ObjectKeys"); ObjectGetDescriptor = /* @__PURE__ */ __name(function(o, key) { return { value: o[key] }; }, "ObjectGetDescriptor"); ObjectDefineProperty = /* @__PURE__ */ __name(function(o, key, desc) { o[key] = desc.value; return o; }, "ObjectDefineProperty"); ObjectFreeze = /* @__PURE__ */ __name(function(obj2) { return obj2; }, "ObjectFreeze"); ObjectGetPrototypeOf = /* @__PURE__ */ __name(function(obj2) { try { return Object(obj2).constructor.prototype; } catch (e) { return proto; } }, "ObjectGetPrototypeOf"); ArrayIsArray = /* @__PURE__ */ __name(function(obj2) { try { return str.call(obj2) === "[object Array]"; } catch (e) { return false; } }, "ArrayIsArray"); module2.exports = { isArray: ArrayIsArray, keys: ObjectKeys, names: ObjectKeys, defineProperty: ObjectDefineProperty, getDescriptor: ObjectGetDescriptor, freeze: ObjectFreeze, getPrototypeOf: ObjectGetPrototypeOf, isES5, propertyIsWritable: /* @__PURE__ */ __name(function() { return true; }, "propertyIsWritable") }; } var has; var str; var proto; var ObjectKeys; var ObjectGetDescriptor; var ObjectDefineProperty; var ObjectFreeze; var ObjectGetPrototypeOf; var ArrayIsArray; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/util.js var require_util6 = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/util.js"(exports, module) { "use strict"; var es5 = require_es5(); var canEvaluate = typeof navigator == "undefined"; var errorObj = { e: {} }; var tryCatchTarget; var globalObject = typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : exports !== void 0 ? exports : null; function tryCatcher() { try { var target = tryCatchTarget; tryCatchTarget = null; return target.apply(this, arguments); } catch (e) { errorObj.e = e; return errorObj; } } __name(tryCatcher, "tryCatcher"); function tryCatch(fn) { tryCatchTarget = fn; return tryCatcher; } __name(tryCatch, "tryCatch"); var inherits = /* @__PURE__ */ __name(function(Child, Parent) { var hasProp = {}.hasOwnProperty; function T() { this.constructor = Child; this.constructor$ = Parent; for (var propertyName in Parent.prototype) { if (hasProp.call(Parent.prototype, propertyName) && propertyName.charAt(propertyName.length - 1) !== "$") { this[propertyName + "$"] = Parent.prototype[propertyName]; } } } __name(T, "T"); T.prototype = Parent.prototype; Child.prototype = new T(); return Child.prototype; }, "inherits"); function isPrimitive(val) { return val == null || val === true || val === false || typeof val === "string" || typeof val === "number"; } __name(isPrimitive, "isPrimitive"); function isObject(value) { return typeof value === "function" || typeof value === "object" && value !== null; } __name(isObject, "isObject"); function maybeWrapAsError(maybeError) { if (!isPrimitive(maybeError)) return maybeError; return new Error(safeToString(maybeError)); } __name(maybeWrapAsError, "maybeWrapAsError"); function withAppended(target, appendee) { var len = target.length; var ret2 = new Array(len + 1); var i; for (i = 0; i < len; ++i) { ret2[i] = target[i]; } ret2[i] = appendee; return ret2; } __name(withAppended, "withAppended"); function getDataPropertyOrDefault(obj2, key, defaultValue) { if (es5.isES5) { var desc = Object.getOwnPropertyDescriptor(obj2, key); if (desc != null) { return desc.get == null && desc.set == null ? desc.value : defaultValue; } } else { return {}.hasOwnProperty.call(obj2, key) ? obj2[key] : void 0; } } __name(getDataPropertyOrDefault, "getDataPropertyOrDefault"); function notEnumerableProp(obj2, name, value) { if (isPrimitive(obj2)) return obj2; var descriptor = { value, configurable: true, enumerable: false, writable: true }; es5.defineProperty(obj2, name, descriptor); return obj2; } __name(notEnumerableProp, "notEnumerableProp"); function thrower(r) { throw r; } __name(thrower, "thrower"); var inheritedDataKeys = (function() { var excludedPrototypes = [ Array.prototype, Object.prototype, Function.prototype ]; var isExcludedProto = /* @__PURE__ */ __name(function(val) { for (var i = 0; i < excludedPrototypes.length; ++i) { if (excludedPrototypes[i] === val) { return true; } } return false; }, "isExcludedProto"); if (es5.isES5) { var getKeys = Object.getOwnPropertyNames; return function(obj2) { var ret2 = []; var visitedKeys = /* @__PURE__ */ Object.create(null); while (obj2 != null && !isExcludedProto(obj2)) { var keys; try { keys = getKeys(obj2); } catch (e) { return ret2; } for (var i = 0; i < keys.length; ++i) { var key = keys[i]; if (visitedKeys[key]) continue; visitedKeys[key] = true; var desc = Object.getOwnPropertyDescriptor(obj2, key); if (desc != null && desc.get == null && desc.set == null) { ret2.push(key); } } obj2 = es5.getPrototypeOf(obj2); } return ret2; }; } else { var hasProp = {}.hasOwnProperty; return function(obj2) { if (isExcludedProto(obj2)) return []; var ret2 = []; enumeration: for (var key in obj2) { if (hasProp.call(obj2, key)) { ret2.push(key); } else { for (var i = 0; i < excludedPrototypes.length; ++i) { if (hasProp.call(excludedPrototypes[i], key)) { continue enumeration; } } ret2.push(key); } } return ret2; }; } })(); var thisAssignmentPattern = /this\s*\.\s*\S+\s*=/; function isClass(fn) { try { if (typeof fn === "function") { var keys = es5.names(fn.prototype); var hasMethods = es5.isES5 && keys.length > 1; var hasMethodsOtherThanConstructor = keys.length > 0 && !(keys.length === 1 && keys[0] === "constructor"); var hasThisAssignmentAndStaticMethods = thisAssignmentPattern.test(fn + "") && es5.names(fn).length > 0; if (hasMethods || hasMethodsOtherThanConstructor || hasThisAssignmentAndStaticMethods) { return true; } } return false; } catch (e) { return false; } } __name(isClass, "isClass"); function toFastProperties(obj) { function FakeConstructor() { } __name(FakeConstructor, "FakeConstructor"); FakeConstructor.prototype = obj; var l = 8; while (l--) new FakeConstructor(); return obj; eval(obj); } __name(toFastProperties, "toFastProperties"); var rident = /^[a-z$_][a-z$_0-9]*$/i; function isIdentifier(str) { return rident.test(str); } __name(isIdentifier, "isIdentifier"); function filledRange(count, prefix, suffix) { var ret2 = new Array(count); for (var i = 0; i < count; ++i) { ret2[i] = prefix + i + suffix; } return ret2; } __name(filledRange, "filledRange"); function safeToString(obj2) { try { return obj2 + ""; } catch (e) { return "[no string representation]"; } } __name(safeToString, "safeToString"); function isError(obj2) { return obj2 !== null && typeof obj2 === "object" && typeof obj2.message === "string" && typeof obj2.name === "string"; } __name(isError, "isError"); function markAsOriginatingFromRejection(e) { try { notEnumerableProp(e, "isOperational", true); } catch (ignore) { } } __name(markAsOriginatingFromRejection, "markAsOriginatingFromRejection"); function originatesFromRejection(e) { if (e == null) return false; return e instanceof Error["__BluebirdErrorTypes__"].OperationalError || e["isOperational"] === true; } __name(originatesFromRejection, "originatesFromRejection"); function canAttachTrace(obj2) { return isError(obj2) && es5.propertyIsWritable(obj2, "stack"); } __name(canAttachTrace, "canAttachTrace"); var ensureErrorObject = (function() { if (!("stack" in new Error())) { return function(value) { if (canAttachTrace(value)) return value; try { throw new Error(safeToString(value)); } catch (err) { return err; } }; } else { return function(value) { if (canAttachTrace(value)) return value; return new Error(safeToString(value)); }; } })(); function classString(obj2) { return {}.toString.call(obj2); } __name(classString, "classString"); function copyDescriptors(from, to, filter) { var keys = es5.names(from); for (var i = 0; i < keys.length; ++i) { var key = keys[i]; if (filter(key)) { try { es5.defineProperty(to, key, es5.getDescriptor(from, key)); } catch (ignore) { } } } } __name(copyDescriptors, "copyDescriptors"); var asArray = /* @__PURE__ */ __name(function(v) { if (es5.isArray(v)) { return v; } return null; }, "asArray"); if (typeof Symbol !== "undefined" && Symbol.iterator) { ArrayFrom = typeof Array.from === "function" ? function(v) { return Array.from(v); } : function(v) { var ret2 = []; var it = v[Symbol.iterator](); var itResult; while (!(itResult = it.next()).done) { ret2.push(itResult.value); } return ret2; }; asArray = /* @__PURE__ */ __name(function(v) { if (es5.isArray(v)) { return v; } else if (v != null && typeof v[Symbol.iterator] === "function") { return ArrayFrom(v); } return null; }, "asArray"); } var ArrayFrom; var isNode = typeof process !== "undefined" && classString(process).toLowerCase() === "[object process]"; var hasEnvVariables = typeof process !== "undefined" && typeof process.env !== "undefined"; function env(key) { return hasEnvVariables ? process.env[key] : void 0; } __name(env, "env"); function getNativePromise() { if (typeof Promise === "function") { try { var promise = new Promise(function() { }); if ({}.toString.call(promise) === "[object Promise]") { return Promise; } } catch (e) { } } } __name(getNativePromise, "getNativePromise"); function domainBind(self2, cb) { return self2.bind(cb); } __name(domainBind, "domainBind"); var ret = { isClass, isIdentifier, inheritedDataKeys, getDataPropertyOrDefault, thrower, isArray: es5.isArray, asArray, notEnumerableProp, isPrimitive, isObject, isError, canEvaluate, errorObj, tryCatch, inherits, withAppended, maybeWrapAsError, toFastProperties, filledRange, toString: safeToString, canAttachTrace, ensureErrorObject, originatesFromRejection, markAsOriginatingFromRejection, classString, copyDescriptors, hasDevTools: typeof chrome !== "undefined" && chrome && typeof chrome.loadTimes === "function", isNode, hasEnvVariables, env, global: globalObject, getNativePromise, domainBind }; ret.isRecentNode = ret.isNode && (function() { var version2 = process.versions.node.split(".").map(Number); return version2[0] === 0 && version2[1] > 10 || version2[0] > 0; })(); if (ret.isNode) ret.toFastProperties(process); try { throw new Error(); } catch (e) { ret.lastLineError = e; } module.exports = ret; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/schedule.js var require_schedule2 = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/schedule.js"(exports2, module2) { "use strict"; var util2 = require_util6(); var schedule; var noAsyncScheduler = /* @__PURE__ */ __name(function() { throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n"); }, "noAsyncScheduler"); var NativePromise = util2.getNativePromise(); if (util2.isNode && typeof MutationObserver === "undefined") { GlobalSetImmediate = global.setImmediate; ProcessNextTick = process.nextTick; schedule = util2.isRecentNode ? function(fn) { GlobalSetImmediate.call(global, fn); } : function(fn) { ProcessNextTick.call(process, fn); }; } else if (typeof NativePromise === "function" && typeof NativePromise.resolve === "function") { nativePromise = NativePromise.resolve(); schedule = /* @__PURE__ */ __name(function(fn) { nativePromise.then(fn); }, "schedule"); } else if (typeof MutationObserver !== "undefined" && !(typeof window !== "undefined" && window.navigator && (window.navigator.standalone || window.cordova))) { schedule = (function() { var div = document.createElement("div"); var opts = { attributes: true }; var toggleScheduled = false; var div2 = document.createElement("div"); var o2 = new MutationObserver(function() { div.classList.toggle("foo"); toggleScheduled = false; }); o2.observe(div2, opts); var scheduleToggle = /* @__PURE__ */ __name(function() { if (toggleScheduled) return; toggleScheduled = true; div2.classList.toggle("foo"); }, "scheduleToggle"); return /* @__PURE__ */ __name(function schedule2(fn) { var o = new MutationObserver(function() { o.disconnect(); fn(); }); o.observe(div, opts); scheduleToggle(); }, "schedule"); })(); } else if (typeof setImmediate !== "undefined") { schedule = /* @__PURE__ */ __name(function(fn) { setImmediate(fn); }, "schedule"); } else if (typeof setTimeout !== "undefined") { schedule = /* @__PURE__ */ __name(function(fn) { setTimeout(fn, 0); }, "schedule"); } else { schedule = noAsyncScheduler; } var GlobalSetImmediate; var ProcessNextTick; var nativePromise; module2.exports = schedule; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/queue.js var require_queue3 = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/queue.js"(exports2, module2) { "use strict"; function arrayMove(src, srcIndex, dst, dstIndex, len) { for (var j = 0; j < len; ++j) { dst[j + dstIndex] = src[j + srcIndex]; src[j + srcIndex] = void 0; } } __name(arrayMove, "arrayMove"); function Queue(capacity) { this._capacity = capacity; this._length = 0; this._front = 0; } __name(Queue, "Queue"); Queue.prototype._willBeOverCapacity = function(size) { return this._capacity < size; }; Queue.prototype._pushOne = function(arg) { var length = this.length(); this._checkCapacity(length + 1); var i = this._front + length & this._capacity - 1; this[i] = arg; this._length = length + 1; }; Queue.prototype.push = function(fn, receiver, arg) { var length = this.length() + 3; if (this._willBeOverCapacity(length)) { this._pushOne(fn); this._pushOne(receiver); this._pushOne(arg); return; } var j = this._front + length - 3; this._checkCapacity(length); var wrapMask = this._capacity - 1; this[j + 0 & wrapMask] = fn; this[j + 1 & wrapMask] = receiver; this[j + 2 & wrapMask] = arg; this._length = length; }; Queue.prototype.shift = function() { var front = this._front, ret2 = this[front]; this[front] = void 0; this._front = front + 1 & this._capacity - 1; this._length--; return ret2; }; Queue.prototype.length = function() { return this._length; }; Queue.prototype._checkCapacity = function(size) { if (this._capacity < size) { this._resizeTo(this._capacity << 1); } }; Queue.prototype._resizeTo = function(capacity) { var oldCapacity = this._capacity; this._capacity = capacity; var front = this._front; var length = this._length; var moveItemsCount = front + length & oldCapacity - 1; arrayMove(this, 0, this, oldCapacity, moveItemsCount); }; module2.exports = Queue; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/async.js var require_async3 = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/async.js"(exports2, module2) { "use strict"; var firstLineError; try { throw new Error(); } catch (e) { firstLineError = e; } var schedule = require_schedule2(); var Queue = require_queue3(); var util2 = require_util6(); function Async() { this._customScheduler = false; this._isTickUsed = false; this._lateQueue = new Queue(16); this._normalQueue = new Queue(16); this._haveDrainedQueues = false; this._trampolineEnabled = true; var self2 = this; this.drainQueues = function() { self2._drainQueues(); }; this._schedule = schedule; } __name(Async, "Async"); Async.prototype.setScheduler = function(fn) { var prev = this._schedule; this._schedule = fn; this._customScheduler = true; return prev; }; Async.prototype.hasCustomScheduler = function() { return this._customScheduler; }; Async.prototype.enableTrampoline = function() { this._trampolineEnabled = true; }; Async.prototype.disableTrampolineIfNecessary = function() { if (util2.hasDevTools) { this._trampolineEnabled = false; } }; Async.prototype.haveItemsQueued = function() { return this._isTickUsed || this._haveDrainedQueues; }; Async.prototype.fatalError = function(e, isNode2) { if (isNode2) { process.stderr.write("Fatal " + (e instanceof Error ? e.stack : e) + "\n"); process.exit(2); } else { this.throwLater(e); } }; Async.prototype.throwLater = function(fn, arg) { if (arguments.length === 1) { arg = fn; fn = /* @__PURE__ */ __name(function() { throw arg; }, "fn"); } if (typeof setTimeout !== "undefined") { setTimeout(function() { fn(arg); }, 0); } else try { this._schedule(function() { fn(arg); }); } catch (e) { throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n"); } }; function AsyncInvokeLater(fn, receiver, arg) { this._lateQueue.push(fn, receiver, arg); this._queueTick(); } __name(AsyncInvokeLater, "AsyncInvokeLater"); function AsyncInvoke(fn, receiver, arg) { this._normalQueue.push(fn, receiver, arg); this._queueTick(); } __name(AsyncInvoke, "AsyncInvoke"); function AsyncSettlePromises(promise) { this._normalQueue._pushOne(promise); this._queueTick(); } __name(AsyncSettlePromises, "AsyncSettlePromises"); if (!util2.hasDevTools) { Async.prototype.invokeLater = AsyncInvokeLater; Async.prototype.invoke = AsyncInvoke; Async.prototype.settlePromises = AsyncSettlePromises; } else { Async.prototype.invokeLater = function(fn, receiver, arg) { if (this._trampolineEnabled) { AsyncInvokeLater.call(this, fn, receiver, arg); } else { this._schedule(function() { setTimeout(function() { fn.call(receiver, arg); }, 100); }); } }; Async.prototype.invoke = function(fn, receiver, arg) { if (this._trampolineEnabled) { AsyncInvoke.call(this, fn, receiver, arg); } else { this._schedule(function() { fn.call(receiver, arg); }); } }; Async.prototype.settlePromises = function(promise) { if (this._trampolineEnabled) { AsyncSettlePromises.call(this, promise); } else { this._schedule(function() { promise._settlePromises(); }); } }; } Async.prototype._drainQueue = function(queue) { while (queue.length() > 0) { var fn = queue.shift(); if (typeof fn !== "function") { fn._settlePromises(); continue; } var receiver = queue.shift(); var arg = queue.shift(); fn.call(receiver, arg); } }; Async.prototype._drainQueues = function() { this._drainQueue(this._normalQueue); this._reset(); this._haveDrainedQueues = true; this._drainQueue(this._lateQueue); }; Async.prototype._queueTick = function() { if (!this._isTickUsed) { this._isTickUsed = true; this._schedule(this.drainQueues); } }; Async.prototype._reset = function() { this._isTickUsed = false; }; module2.exports = Async; module2.exports.firstLineError = firstLineError; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/errors.js var require_errors7 = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/errors.js"(exports2, module2) { "use strict"; var es52 = require_es5(); var Objectfreeze = es52.freeze; var util2 = require_util6(); var inherits2 = util2.inherits; var notEnumerableProp2 = util2.notEnumerableProp; function subError(nameProperty, defaultMessage) { function SubError(message) { if (!(this instanceof SubError)) return new SubError(message); notEnumerableProp2( this, "message", typeof message === "string" ? message : defaultMessage ); notEnumerableProp2(this, "name", nameProperty); if (Error.captureStackTrace) { Error.captureStackTrace(this, this.constructor); } else { Error.call(this); } } __name(SubError, "SubError"); inherits2(SubError, Error); return SubError; } __name(subError, "subError"); var _TypeError; var _RangeError; var Warning = subError("Warning", "warning"); var CancellationError = subError("CancellationError", "cancellation error"); var TimeoutError = subError("TimeoutError", "timeout error"); var AggregateError2 = subError("AggregateError", "aggregate error"); try { _TypeError = TypeError; _RangeError = RangeError; } catch (e) { _TypeError = subError("TypeError", "type error"); _RangeError = subError("RangeError", "range error"); } var methods = "join pop push shift unshift slice filter forEach some every map indexOf lastIndexOf reduce reduceRight sort reverse".split(" "); for (i = 0; i < methods.length; ++i) { if (typeof Array.prototype[methods[i]] === "function") { AggregateError2.prototype[methods[i]] = Array.prototype[methods[i]]; } } var i; es52.defineProperty(AggregateError2.prototype, "length", { value: 0, configurable: false, writable: true, enumerable: true }); AggregateError2.prototype["isOperational"] = true; var level = 0; AggregateError2.prototype.toString = function() { var indent = Array(level * 4 + 1).join(" "); var ret2 = "\n" + indent + "AggregateError of:\n"; level++; indent = Array(level * 4 + 1).join(" "); for (var i2 = 0; i2 < this.length; ++i2) { var str = this[i2] === this ? "[Circular AggregateError]" : this[i2] + ""; var lines = str.split("\n"); for (var j = 0; j < lines.length; ++j) { lines[j] = indent + lines[j]; } str = lines.join("\n"); ret2 += str + "\n"; } level--; return ret2; }; function OperationalError(message) { if (!(this instanceof OperationalError)) return new OperationalError(message); notEnumerableProp2(this, "name", "OperationalError"); notEnumerableProp2(this, "message", message); this.cause = message; this["isOperational"] = true; if (message instanceof Error) { notEnumerableProp2(this, "message", message.message); notEnumerableProp2(this, "stack", message.stack); } else if (Error.captureStackTrace) { Error.captureStackTrace(this, this.constructor); } } __name(OperationalError, "OperationalError"); inherits2(OperationalError, Error); var errorTypes = Error["__BluebirdErrorTypes__"]; if (!errorTypes) { errorTypes = Objectfreeze({ CancellationError, TimeoutError, OperationalError, RejectionError: OperationalError, AggregateError: AggregateError2 }); es52.defineProperty(Error, "__BluebirdErrorTypes__", { value: errorTypes, writable: false, enumerable: false, configurable: false }); } module2.exports = { Error, TypeError: _TypeError, RangeError: _RangeError, CancellationError: errorTypes.CancellationError, OperationalError: errorTypes.OperationalError, TimeoutError: errorTypes.TimeoutError, AggregateError: errorTypes.AggregateError, Warning }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/thenables.js var require_thenables = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/thenables.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, INTERNAL) { var util2 = require_util6(); var errorObj2 = util2.errorObj; var isObject2 = util2.isObject; function tryConvertToPromise(obj2, context) { if (isObject2(obj2)) { if (obj2 instanceof Promise2) return obj2; var then = getThen(obj2); if (then === errorObj2) { if (context) context._pushContext(); var ret2 = Promise2.reject(then.e); if (context) context._popContext(); return ret2; } else if (typeof then === "function") { if (isAnyBluebirdPromise(obj2)) { var ret2 = new Promise2(INTERNAL); obj2._then( ret2._fulfill, ret2._reject, void 0, ret2, null ); return ret2; } return doThenable(obj2, then, context); } } return obj2; } __name(tryConvertToPromise, "tryConvertToPromise"); function doGetThen(obj2) { return obj2.then; } __name(doGetThen, "doGetThen"); function getThen(obj2) { try { return doGetThen(obj2); } catch (e) { errorObj2.e = e; return errorObj2; } } __name(getThen, "getThen"); var hasProp = {}.hasOwnProperty; function isAnyBluebirdPromise(obj2) { try { return hasProp.call(obj2, "_promise0"); } catch (e) { return false; } } __name(isAnyBluebirdPromise, "isAnyBluebirdPromise"); function doThenable(x, then, context) { var promise = new Promise2(INTERNAL); var ret2 = promise; if (context) context._pushContext(); promise._captureStackTrace(); if (context) context._popContext(); var synchronous = true; var result = util2.tryCatch(then).call(x, resolve, reject); synchronous = false; if (promise && result === errorObj2) { promise._rejectCallback(result.e, true, true); promise = null; } function resolve(value) { if (!promise) return; promise._resolveCallback(value); promise = null; } __name(resolve, "resolve"); function reject(reason) { if (!promise) return; promise._rejectCallback(reason, synchronous, true); promise = null; } __name(reject, "reject"); return ret2; } __name(doThenable, "doThenable"); return tryConvertToPromise; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promise_array.js var require_promise_array = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promise_array.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, INTERNAL, tryConvertToPromise, apiRejection, Proxyable) { var util2 = require_util6(); var isArray = util2.isArray; function toResolutionValue(val) { switch (val) { case -2: return []; case -3: return {}; } } __name(toResolutionValue, "toResolutionValue"); function PromiseArray(values) { var promise = this._promise = new Promise2(INTERNAL); if (values instanceof Promise2) { promise._propagateFrom(values, 3); } promise._setOnCancel(this); this._values = values; this._length = 0; this._totalResolved = 0; this._init(void 0, -2); } __name(PromiseArray, "PromiseArray"); util2.inherits(PromiseArray, Proxyable); PromiseArray.prototype.length = function() { return this._length; }; PromiseArray.prototype.promise = function() { return this._promise; }; PromiseArray.prototype._init = /* @__PURE__ */ __name(function init(_2, resolveValueIfEmpty) { var values = tryConvertToPromise(this._values, this._promise); if (values instanceof Promise2) { values = values._target(); var bitField = values._bitField; ; this._values = values; if ((bitField & 50397184) === 0) { this._promise._setAsyncGuaranteed(); return values._then( init, this._reject, void 0, this, resolveValueIfEmpty ); } else if ((bitField & 33554432) !== 0) { values = values._value(); } else if ((bitField & 16777216) !== 0) { return this._reject(values._reason()); } else { return this._cancel(); } } values = util2.asArray(values); if (values === null) { var err = apiRejection( "expecting an array or an iterable object but got " + util2.classString(values) ).reason(); this._promise._rejectCallback(err, false); return; } if (values.length === 0) { if (resolveValueIfEmpty === -5) { this._resolveEmptyArray(); } else { this._resolve(toResolutionValue(resolveValueIfEmpty)); } return; } this._iterate(values); }, "init"); PromiseArray.prototype._iterate = function(values) { var len = this.getActualLength(values.length); this._length = len; this._values = this.shouldCopyValues() ? new Array(len) : this._values; var result = this._promise; var isResolved = false; var bitField = null; for (var i = 0; i < len; ++i) { var maybePromise = tryConvertToPromise(values[i], result); if (maybePromise instanceof Promise2) { maybePromise = maybePromise._target(); bitField = maybePromise._bitField; } else { bitField = null; } if (isResolved) { if (bitField !== null) { maybePromise.suppressUnhandledRejections(); } } else if (bitField !== null) { if ((bitField & 50397184) === 0) { maybePromise._proxy(this, i); this._values[i] = maybePromise; } else if ((bitField & 33554432) !== 0) { isResolved = this._promiseFulfilled(maybePromise._value(), i); } else if ((bitField & 16777216) !== 0) { isResolved = this._promiseRejected(maybePromise._reason(), i); } else { isResolved = this._promiseCancelled(i); } } else { isResolved = this._promiseFulfilled(maybePromise, i); } } if (!isResolved) result._setAsyncGuaranteed(); }; PromiseArray.prototype._isResolved = function() { return this._values === null; }; PromiseArray.prototype._resolve = function(value) { this._values = null; this._promise._fulfill(value); }; PromiseArray.prototype._cancel = function() { if (this._isResolved() || !this._promise._isCancellable()) return; this._values = null; this._promise._cancel(); }; PromiseArray.prototype._reject = function(reason) { this._values = null; this._promise._rejectCallback(reason, false); }; PromiseArray.prototype._promiseFulfilled = function(value, index) { this._values[index] = value; var totalResolved = ++this._totalResolved; if (totalResolved >= this._length) { this._resolve(this._values); return true; } return false; }; PromiseArray.prototype._promiseCancelled = function() { this._cancel(); return true; }; PromiseArray.prototype._promiseRejected = function(reason) { this._totalResolved++; this._reject(reason); return true; }; PromiseArray.prototype._resultCancelled = function() { if (this._isResolved()) return; var values = this._values; this._cancel(); if (values instanceof Promise2) { values.cancel(); } else { for (var i = 0; i < values.length; ++i) { if (values[i] instanceof Promise2) { values[i].cancel(); } } } }; PromiseArray.prototype.shouldCopyValues = function() { return true; }; PromiseArray.prototype.getActualLength = function(len) { return len; }; return PromiseArray; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/context.js var require_context = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/context.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2) { var longStackTraces = false; var contextStack = []; Promise2.prototype._promiseCreated = function() { }; Promise2.prototype._pushContext = function() { }; Promise2.prototype._popContext = function() { return null; }; Promise2._peekContext = Promise2.prototype._peekContext = function() { }; function Context() { this._trace = new Context.CapturedTrace(peekContext()); } __name(Context, "Context"); Context.prototype._pushContext = function() { if (this._trace !== void 0) { this._trace._promiseCreated = null; contextStack.push(this._trace); } }; Context.prototype._popContext = function() { if (this._trace !== void 0) { var trace = contextStack.pop(); var ret2 = trace._promiseCreated; trace._promiseCreated = null; return ret2; } return null; }; function createContext() { if (longStackTraces) return new Context(); } __name(createContext, "createContext"); function peekContext() { var lastIndex = contextStack.length - 1; if (lastIndex >= 0) { return contextStack[lastIndex]; } return void 0; } __name(peekContext, "peekContext"); Context.CapturedTrace = null; Context.create = createContext; Context.deactivateLongStackTraces = function() { }; Context.activateLongStackTraces = function() { var Promise_pushContext = Promise2.prototype._pushContext; var Promise_popContext = Promise2.prototype._popContext; var Promise_PeekContext = Promise2._peekContext; var Promise_peekContext = Promise2.prototype._peekContext; var Promise_promiseCreated = Promise2.prototype._promiseCreated; Context.deactivateLongStackTraces = function() { Promise2.prototype._pushContext = Promise_pushContext; Promise2.prototype._popContext = Promise_popContext; Promise2._peekContext = Promise_PeekContext; Promise2.prototype._peekContext = Promise_peekContext; Promise2.prototype._promiseCreated = Promise_promiseCreated; longStackTraces = false; }; longStackTraces = true; Promise2.prototype._pushContext = Context.prototype._pushContext; Promise2.prototype._popContext = Context.prototype._popContext; Promise2._peekContext = Promise2.prototype._peekContext = peekContext; Promise2.prototype._promiseCreated = function() { var ctx = this._peekContext(); if (ctx && ctx._promiseCreated == null) ctx._promiseCreated = this; }; }; return Context; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/debuggability.js var require_debuggability = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/debuggability.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, Context) { var getDomain = Promise2._getDomain; var async = Promise2._async; var Warning = require_errors7().Warning; var util2 = require_util6(); var canAttachTrace2 = util2.canAttachTrace; var unhandledRejectionHandled; var possiblyUnhandledRejection; var bluebirdFramePattern = /[\\\/]bluebird[\\\/]js[\\\/](release|debug|instrumented)/; var nodeFramePattern = /\((?:timers\.js):\d+:\d+\)/; var parseLinePattern = /[\/<\(](.+?):(\d+):(\d+)\)?\s*$/; var stackFramePattern = null; var formatStack = null; var indentStackFrames = false; var printWarning; var debugging = !!(util2.env("BLUEBIRD_DEBUG") != 0 && (util2.env("BLUEBIRD_DEBUG") || util2.env("NODE_ENV") === "development")); var warnings = !!(util2.env("BLUEBIRD_WARNINGS") != 0 && (debugging || util2.env("BLUEBIRD_WARNINGS"))); var longStackTraces = !!(util2.env("BLUEBIRD_LONG_STACK_TRACES") != 0 && (debugging || util2.env("BLUEBIRD_LONG_STACK_TRACES"))); var wForgottenReturn = util2.env("BLUEBIRD_W_FORGOTTEN_RETURN") != 0 && (warnings || !!util2.env("BLUEBIRD_W_FORGOTTEN_RETURN")); Promise2.prototype.suppressUnhandledRejections = function() { var target = this._target(); target._bitField = target._bitField & ~1048576 | 524288; }; Promise2.prototype._ensurePossibleRejectionHandled = function() { if ((this._bitField & 524288) !== 0) return; this._setRejectionIsUnhandled(); async.invokeLater(this._notifyUnhandledRejection, this, void 0); }; Promise2.prototype._notifyUnhandledRejectionIsHandled = function() { fireRejectionEvent( "rejectionHandled", unhandledRejectionHandled, void 0, this ); }; Promise2.prototype._setReturnedNonUndefined = function() { this._bitField = this._bitField | 268435456; }; Promise2.prototype._returnedNonUndefined = function() { return (this._bitField & 268435456) !== 0; }; Promise2.prototype._notifyUnhandledRejection = function() { if (this._isRejectionUnhandled()) { var reason = this._settledValue(); this._setUnhandledRejectionIsNotified(); fireRejectionEvent( "unhandledRejection", possiblyUnhandledRejection, reason, this ); } }; Promise2.prototype._setUnhandledRejectionIsNotified = function() { this._bitField = this._bitField | 262144; }; Promise2.prototype._unsetUnhandledRejectionIsNotified = function() { this._bitField = this._bitField & ~262144; }; Promise2.prototype._isUnhandledRejectionNotified = function() { return (this._bitField & 262144) > 0; }; Promise2.prototype._setRejectionIsUnhandled = function() { this._bitField = this._bitField | 1048576; }; Promise2.prototype._unsetRejectionIsUnhandled = function() { this._bitField = this._bitField & ~1048576; if (this._isUnhandledRejectionNotified()) { this._unsetUnhandledRejectionIsNotified(); this._notifyUnhandledRejectionIsHandled(); } }; Promise2.prototype._isRejectionUnhandled = function() { return (this._bitField & 1048576) > 0; }; Promise2.prototype._warn = function(message, shouldUseOwnTrace, promise) { return warn(message, shouldUseOwnTrace, promise || this); }; Promise2.onPossiblyUnhandledRejection = function(fn) { var domain = getDomain(); possiblyUnhandledRejection = typeof fn === "function" ? domain === null ? fn : util2.domainBind(domain, fn) : void 0; }; Promise2.onUnhandledRejectionHandled = function(fn) { var domain = getDomain(); unhandledRejectionHandled = typeof fn === "function" ? domain === null ? fn : util2.domainBind(domain, fn) : void 0; }; var disableLongStackTraces = /* @__PURE__ */ __name(function() { }, "disableLongStackTraces"); Promise2.longStackTraces = function() { if (async.haveItemsQueued() && !config.longStackTraces) { throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n"); } if (!config.longStackTraces && longStackTracesIsSupported()) { var Promise_captureStackTrace = Promise2.prototype._captureStackTrace; var Promise_attachExtraTrace = Promise2.prototype._attachExtraTrace; config.longStackTraces = true; disableLongStackTraces = /* @__PURE__ */ __name(function() { if (async.haveItemsQueued() && !config.longStackTraces) { throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n"); } Promise2.prototype._captureStackTrace = Promise_captureStackTrace; Promise2.prototype._attachExtraTrace = Promise_attachExtraTrace; Context.deactivateLongStackTraces(); async.enableTrampoline(); config.longStackTraces = false; }, "disableLongStackTraces"); Promise2.prototype._captureStackTrace = longStackTracesCaptureStackTrace; Promise2.prototype._attachExtraTrace = longStackTracesAttachExtraTrace; Context.activateLongStackTraces(); async.disableTrampolineIfNecessary(); } }; Promise2.hasLongStackTraces = function() { return config.longStackTraces && longStackTracesIsSupported(); }; var fireDomEvent = (function() { try { if (typeof CustomEvent === "function") { var event = new CustomEvent("CustomEvent"); util2.global.dispatchEvent(event); return function(name, event2) { var domEvent = new CustomEvent(name.toLowerCase(), { detail: event2, cancelable: true }); return !util2.global.dispatchEvent(domEvent); }; } else if (typeof Event === "function") { var event = new Event("CustomEvent"); util2.global.dispatchEvent(event); return function(name, event2) { var domEvent = new Event(name.toLowerCase(), { cancelable: true }); domEvent.detail = event2; return !util2.global.dispatchEvent(domEvent); }; } else { var event = document.createEvent("CustomEvent"); event.initCustomEvent("testingtheevent", false, true, {}); util2.global.dispatchEvent(event); return function(name, event2) { var domEvent = document.createEvent("CustomEvent"); domEvent.initCustomEvent( name.toLowerCase(), false, true, event2 ); return !util2.global.dispatchEvent(domEvent); }; } } catch (e) { } return function() { return false; }; })(); var fireGlobalEvent = (function() { if (util2.isNode) { return function() { return process.emit.apply(process, arguments); }; } else { if (!util2.global) { return function() { return false; }; } return function(name) { var methodName = "on" + name.toLowerCase(); var method = util2.global[methodName]; if (!method) return false; method.apply(util2.global, [].slice.call(arguments, 1)); return true; }; } })(); function generatePromiseLifecycleEventObject(name, promise) { return { promise }; } __name(generatePromiseLifecycleEventObject, "generatePromiseLifecycleEventObject"); var eventToObjectGenerator = { promiseCreated: generatePromiseLifecycleEventObject, promiseFulfilled: generatePromiseLifecycleEventObject, promiseRejected: generatePromiseLifecycleEventObject, promiseResolved: generatePromiseLifecycleEventObject, promiseCancelled: generatePromiseLifecycleEventObject, promiseChained: /* @__PURE__ */ __name(function(name, promise, child) { return { promise, child }; }, "promiseChained"), warning: /* @__PURE__ */ __name(function(name, warning) { return { warning }; }, "warning"), unhandledRejection: /* @__PURE__ */ __name(function(name, reason, promise) { return { reason, promise }; }, "unhandledRejection"), rejectionHandled: generatePromiseLifecycleEventObject }; var activeFireEvent = /* @__PURE__ */ __name(function(name) { var globalEventFired = false; try { globalEventFired = fireGlobalEvent.apply(null, arguments); } catch (e) { async.throwLater(e); globalEventFired = true; } var domEventFired = false; try { domEventFired = fireDomEvent( name, eventToObjectGenerator[name].apply(null, arguments) ); } catch (e) { async.throwLater(e); domEventFired = true; } return domEventFired || globalEventFired; }, "activeFireEvent"); Promise2.config = function(opts) { opts = Object(opts); if ("longStackTraces" in opts) { if (opts.longStackTraces) { Promise2.longStackTraces(); } else if (!opts.longStackTraces && Promise2.hasLongStackTraces()) { disableLongStackTraces(); } } if ("warnings" in opts) { var warningsOption = opts.warnings; config.warnings = !!warningsOption; wForgottenReturn = config.warnings; if (util2.isObject(warningsOption)) { if ("wForgottenReturn" in warningsOption) { wForgottenReturn = !!warningsOption.wForgottenReturn; } } } if ("cancellation" in opts && opts.cancellation && !config.cancellation) { if (async.haveItemsQueued()) { throw new Error( "cannot enable cancellation after promises are in use" ); } Promise2.prototype._clearCancellationData = cancellationClearCancellationData; Promise2.prototype._propagateFrom = cancellationPropagateFrom; Promise2.prototype._onCancel = cancellationOnCancel; Promise2.prototype._setOnCancel = cancellationSetOnCancel; Promise2.prototype._attachCancellationCallback = cancellationAttachCancellationCallback; Promise2.prototype._execute = cancellationExecute; propagateFromFunction = cancellationPropagateFrom; config.cancellation = true; } if ("monitoring" in opts) { if (opts.monitoring && !config.monitoring) { config.monitoring = true; Promise2.prototype._fireEvent = activeFireEvent; } else if (!opts.monitoring && config.monitoring) { config.monitoring = false; Promise2.prototype._fireEvent = defaultFireEvent; } } return Promise2; }; function defaultFireEvent() { return false; } __name(defaultFireEvent, "defaultFireEvent"); Promise2.prototype._fireEvent = defaultFireEvent; Promise2.prototype._execute = function(executor, resolve, reject) { try { executor(resolve, reject); } catch (e) { return e; } }; Promise2.prototype._onCancel = function() { }; Promise2.prototype._setOnCancel = function(handler) { ; }; Promise2.prototype._attachCancellationCallback = function(onCancel) { ; }; Promise2.prototype._captureStackTrace = function() { }; Promise2.prototype._attachExtraTrace = function() { }; Promise2.prototype._clearCancellationData = function() { }; Promise2.prototype._propagateFrom = function(parent, flags) { ; ; }; function cancellationExecute(executor, resolve, reject) { var promise = this; try { executor(resolve, reject, function(onCancel) { if (typeof onCancel !== "function") { throw new TypeError("onCancel must be a function, got: " + util2.toString(onCancel)); } promise._attachCancellationCallback(onCancel); }); } catch (e) { return e; } } __name(cancellationExecute, "cancellationExecute"); function cancellationAttachCancellationCallback(onCancel) { if (!this._isCancellable()) return this; var previousOnCancel = this._onCancel(); if (previousOnCancel !== void 0) { if (util2.isArray(previousOnCancel)) { previousOnCancel.push(onCancel); } else { this._setOnCancel([previousOnCancel, onCancel]); } } else { this._setOnCancel(onCancel); } } __name(cancellationAttachCancellationCallback, "cancellationAttachCancellationCallback"); function cancellationOnCancel() { return this._onCancelField; } __name(cancellationOnCancel, "cancellationOnCancel"); function cancellationSetOnCancel(onCancel) { this._onCancelField = onCancel; } __name(cancellationSetOnCancel, "cancellationSetOnCancel"); function cancellationClearCancellationData() { this._cancellationParent = void 0; this._onCancelField = void 0; } __name(cancellationClearCancellationData, "cancellationClearCancellationData"); function cancellationPropagateFrom(parent, flags) { if ((flags & 1) !== 0) { this._cancellationParent = parent; var branchesRemainingToCancel = parent._branchesRemainingToCancel; if (branchesRemainingToCancel === void 0) { branchesRemainingToCancel = 0; } parent._branchesRemainingToCancel = branchesRemainingToCancel + 1; } if ((flags & 2) !== 0 && parent._isBound()) { this._setBoundTo(parent._boundTo); } } __name(cancellationPropagateFrom, "cancellationPropagateFrom"); function bindingPropagateFrom(parent, flags) { if ((flags & 2) !== 0 && parent._isBound()) { this._setBoundTo(parent._boundTo); } } __name(bindingPropagateFrom, "bindingPropagateFrom"); var propagateFromFunction = bindingPropagateFrom; function boundValueFunction() { var ret2 = this._boundTo; if (ret2 !== void 0) { if (ret2 instanceof Promise2) { if (ret2.isFulfilled()) { return ret2.value(); } else { return void 0; } } } return ret2; } __name(boundValueFunction, "boundValueFunction"); function longStackTracesCaptureStackTrace() { this._trace = new CapturedTrace(this._peekContext()); } __name(longStackTracesCaptureStackTrace, "longStackTracesCaptureStackTrace"); function longStackTracesAttachExtraTrace(error, ignoreSelf) { if (canAttachTrace2(error)) { var trace = this._trace; if (trace !== void 0) { if (ignoreSelf) trace = trace._parent; } if (trace !== void 0) { trace.attachExtraTrace(error); } else if (!error.__stackCleaned__) { var parsed = parseStackAndMessage(error); util2.notEnumerableProp( error, "stack", parsed.message + "\n" + parsed.stack.join("\n") ); util2.notEnumerableProp(error, "__stackCleaned__", true); } } } __name(longStackTracesAttachExtraTrace, "longStackTracesAttachExtraTrace"); function checkForgottenReturns(returnValue, promiseCreated, name, promise, parent) { if (returnValue === void 0 && promiseCreated !== null && wForgottenReturn) { if (parent !== void 0 && parent._returnedNonUndefined()) return; if ((promise._bitField & 65535) === 0) return; if (name) name = name + " "; var handlerLine = ""; var creatorLine = ""; if (promiseCreated._trace) { var traceLines = promiseCreated._trace.stack.split("\n"); var stack = cleanStack(traceLines); for (var i = stack.length - 1; i >= 0; --i) { var line = stack[i]; if (!nodeFramePattern.test(line)) { var lineMatches = line.match(parseLinePattern); if (lineMatches) { handlerLine = "at " + lineMatches[1] + ":" + lineMatches[2] + ":" + lineMatches[3] + " "; } break; } } if (stack.length > 0) { var firstUserLine = stack[0]; for (var i = 0; i < traceLines.length; ++i) { if (traceLines[i] === firstUserLine) { if (i > 0) { creatorLine = "\n" + traceLines[i - 1]; } break; } } } } var msg = "a promise was created in a " + name + "handler " + handlerLine + "but was not returned from it, see http://goo.gl/rRqMUw" + creatorLine; promise._warn(msg, true, promiseCreated); } } __name(checkForgottenReturns, "checkForgottenReturns"); function deprecated(name, replacement) { var message = name + " is deprecated and will be removed in a future version."; if (replacement) message += " Use " + replacement + " instead."; return warn(message); } __name(deprecated, "deprecated"); function warn(message, shouldUseOwnTrace, promise) { if (!config.warnings) return; var warning = new Warning(message); var ctx; if (shouldUseOwnTrace) { promise._attachExtraTrace(warning); } else if (config.longStackTraces && (ctx = Promise2._peekContext())) { ctx.attachExtraTrace(warning); } else { var parsed = parseStackAndMessage(warning); warning.stack = parsed.message + "\n" + parsed.stack.join("\n"); } if (!activeFireEvent("warning", warning)) { formatAndLogError(warning, "", true); } } __name(warn, "warn"); function reconstructStack(message, stacks) { for (var i = 0; i < stacks.length - 1; ++i) { stacks[i].push("From previous event:"); stacks[i] = stacks[i].join("\n"); } if (i < stacks.length) { stacks[i] = stacks[i].join("\n"); } return message + "\n" + stacks.join("\n"); } __name(reconstructStack, "reconstructStack"); function removeDuplicateOrEmptyJumps(stacks) { for (var i = 0; i < stacks.length; ++i) { if (stacks[i].length === 0 || i + 1 < stacks.length && stacks[i][0] === stacks[i + 1][0]) { stacks.splice(i, 1); i--; } } } __name(removeDuplicateOrEmptyJumps, "removeDuplicateOrEmptyJumps"); function removeCommonRoots(stacks) { var current = stacks[0]; for (var i = 1; i < stacks.length; ++i) { var prev = stacks[i]; var currentLastIndex = current.length - 1; var currentLastLine = current[currentLastIndex]; var commonRootMeetPoint = -1; for (var j = prev.length - 1; j >= 0; --j) { if (prev[j] === currentLastLine) { commonRootMeetPoint = j; break; } } for (var j = commonRootMeetPoint; j >= 0; --j) { var line = prev[j]; if (current[currentLastIndex] === line) { current.pop(); currentLastIndex--; } else { break; } } current = prev; } } __name(removeCommonRoots, "removeCommonRoots"); function cleanStack(stack) { var ret2 = []; for (var i = 0; i < stack.length; ++i) { var line = stack[i]; var isTraceLine = " (No stack trace)" === line || stackFramePattern.test(line); var isInternalFrame = isTraceLine && shouldIgnore(line); if (isTraceLine && !isInternalFrame) { if (indentStackFrames && line.charAt(0) !== " ") { line = " " + line; } ret2.push(line); } } return ret2; } __name(cleanStack, "cleanStack"); function stackFramesAsArray(error) { var stack = error.stack.replace(/\s+$/g, "").split("\n"); for (var i = 0; i < stack.length; ++i) { var line = stack[i]; if (" (No stack trace)" === line || stackFramePattern.test(line)) { break; } } if (i > 0 && error.name != "SyntaxError") { stack = stack.slice(i); } return stack; } __name(stackFramesAsArray, "stackFramesAsArray"); function parseStackAndMessage(error) { var stack = error.stack; var message = error.toString(); stack = typeof stack === "string" && stack.length > 0 ? stackFramesAsArray(error) : [" (No stack trace)"]; return { message, stack: error.name == "SyntaxError" ? stack : cleanStack(stack) }; } __name(parseStackAndMessage, "parseStackAndMessage"); function formatAndLogError(error, title, isSoft) { if (typeof console !== "undefined") { var message; if (util2.isObject(error)) { var stack = error.stack; message = title + formatStack(stack, error); } else { message = title + String(error); } if (typeof printWarning === "function") { printWarning(message, isSoft); } else if (typeof console.log === "function" || typeof console.log === "object") { console.log(message); } } } __name(formatAndLogError, "formatAndLogError"); function fireRejectionEvent(name, localHandler, reason, promise) { var localEventFired = false; try { if (typeof localHandler === "function") { localEventFired = true; if (name === "rejectionHandled") { localHandler(promise); } else { localHandler(reason, promise); } } } catch (e) { async.throwLater(e); } if (name === "unhandledRejection") { if (!activeFireEvent(name, reason, promise) && !localEventFired) { formatAndLogError(reason, "Unhandled rejection "); } } else { activeFireEvent(name, promise); } } __name(fireRejectionEvent, "fireRejectionEvent"); function formatNonError(obj2) { var str; if (typeof obj2 === "function") { str = "[function " + (obj2.name || "anonymous") + "]"; } else { str = obj2 && typeof obj2.toString === "function" ? obj2.toString() : util2.toString(obj2); var ruselessToString = /\[object [a-zA-Z0-9$_]+\]/; if (ruselessToString.test(str)) { try { var newStr = JSON.stringify(obj2); str = newStr; } catch (e) { } } if (str.length === 0) { str = "(empty array)"; } } return "(<" + snip(str) + ">, no stack trace)"; } __name(formatNonError, "formatNonError"); function snip(str) { var maxChars = 41; if (str.length < maxChars) { return str; } return str.substr(0, maxChars - 3) + "..."; } __name(snip, "snip"); function longStackTracesIsSupported() { return typeof captureStackTrace === "function"; } __name(longStackTracesIsSupported, "longStackTracesIsSupported"); var shouldIgnore = /* @__PURE__ */ __name(function() { return false; }, "shouldIgnore"); var parseLineInfoRegex = /[\/<\(]([^:\/]+):(\d+):(?:\d+)\)?\s*$/; function parseLineInfo(line) { var matches = line.match(parseLineInfoRegex); if (matches) { return { fileName: matches[1], line: parseInt(matches[2], 10) }; } } __name(parseLineInfo, "parseLineInfo"); function setBounds(firstLineError, lastLineError) { if (!longStackTracesIsSupported()) return; var firstStackLines = firstLineError.stack.split("\n"); var lastStackLines = lastLineError.stack.split("\n"); var firstIndex = -1; var lastIndex = -1; var firstFileName; var lastFileName; for (var i = 0; i < firstStackLines.length; ++i) { var result = parseLineInfo(firstStackLines[i]); if (result) { firstFileName = result.fileName; firstIndex = result.line; break; } } for (var i = 0; i < lastStackLines.length; ++i) { var result = parseLineInfo(lastStackLines[i]); if (result) { lastFileName = result.fileName; lastIndex = result.line; break; } } if (firstIndex < 0 || lastIndex < 0 || !firstFileName || !lastFileName || firstFileName !== lastFileName || firstIndex >= lastIndex) { return; } shouldIgnore = /* @__PURE__ */ __name(function(line) { if (bluebirdFramePattern.test(line)) return true; var info = parseLineInfo(line); if (info) { if (info.fileName === firstFileName && (firstIndex <= info.line && info.line <= lastIndex)) { return true; } } return false; }, "shouldIgnore"); } __name(setBounds, "setBounds"); function CapturedTrace(parent) { this._parent = parent; this._promisesCreated = 0; var length = this._length = 1 + (parent === void 0 ? 0 : parent._length); captureStackTrace(this, CapturedTrace); if (length > 32) this.uncycle(); } __name(CapturedTrace, "CapturedTrace"); util2.inherits(CapturedTrace, Error); Context.CapturedTrace = CapturedTrace; CapturedTrace.prototype.uncycle = function() { var length = this._length; if (length < 2) return; var nodes = []; var stackToIndex = {}; for (var i = 0, node = this; node !== void 0; ++i) { nodes.push(node); node = node._parent; } length = this._length = i; for (var i = length - 1; i >= 0; --i) { var stack = nodes[i].stack; if (stackToIndex[stack] === void 0) { stackToIndex[stack] = i; } } for (var i = 0; i < length; ++i) { var currentStack = nodes[i].stack; var index = stackToIndex[currentStack]; if (index !== void 0 && index !== i) { if (index > 0) { nodes[index - 1]._parent = void 0; nodes[index - 1]._length = 1; } nodes[i]._parent = void 0; nodes[i]._length = 1; var cycleEdgeNode = i > 0 ? nodes[i - 1] : this; if (index < length - 1) { cycleEdgeNode._parent = nodes[index + 1]; cycleEdgeNode._parent.uncycle(); cycleEdgeNode._length = cycleEdgeNode._parent._length + 1; } else { cycleEdgeNode._parent = void 0; cycleEdgeNode._length = 1; } var currentChildLength = cycleEdgeNode._length + 1; for (var j = i - 2; j >= 0; --j) { nodes[j]._length = currentChildLength; currentChildLength++; } return; } } }; CapturedTrace.prototype.attachExtraTrace = function(error) { if (error.__stackCleaned__) return; this.uncycle(); var parsed = parseStackAndMessage(error); var message = parsed.message; var stacks = [parsed.stack]; var trace = this; while (trace !== void 0) { stacks.push(cleanStack(trace.stack.split("\n"))); trace = trace._parent; } removeCommonRoots(stacks); removeDuplicateOrEmptyJumps(stacks); util2.notEnumerableProp(error, "stack", reconstructStack(message, stacks)); util2.notEnumerableProp(error, "__stackCleaned__", true); }; var captureStackTrace = (/* @__PURE__ */ __name((function stackDetection() { var v8stackFramePattern = /^\s*at\s*/; var v8stackFormatter = /* @__PURE__ */ __name(function(stack, error) { if (typeof stack === "string") return stack; if (error.name !== void 0 && error.message !== void 0) { return error.toString(); } return formatNonError(error); }, "v8stackFormatter"); if (typeof Error.stackTraceLimit === "number" && typeof Error.captureStackTrace === "function") { Error.stackTraceLimit += 6; stackFramePattern = v8stackFramePattern; formatStack = v8stackFormatter; var captureStackTrace2 = Error.captureStackTrace; shouldIgnore = /* @__PURE__ */ __name(function(line) { return bluebirdFramePattern.test(line); }, "shouldIgnore"); return function(receiver, ignoreUntil) { Error.stackTraceLimit += 6; captureStackTrace2(receiver, ignoreUntil); Error.stackTraceLimit -= 6; }; } var err = new Error(); if (typeof err.stack === "string" && err.stack.split("\n")[0].indexOf("stackDetection@") >= 0) { stackFramePattern = /@/; formatStack = v8stackFormatter; indentStackFrames = true; return /* @__PURE__ */ __name(function captureStackTrace3(o) { o.stack = new Error().stack; }, "captureStackTrace"); } var hasStackAfterThrow; try { throw new Error(); } catch (e) { hasStackAfterThrow = "stack" in e; } if (!("stack" in err) && hasStackAfterThrow && typeof Error.stackTraceLimit === "number") { stackFramePattern = v8stackFramePattern; formatStack = v8stackFormatter; return /* @__PURE__ */ __name(function captureStackTrace3(o) { Error.stackTraceLimit += 6; try { throw new Error(); } catch (e) { o.stack = e.stack; } Error.stackTraceLimit -= 6; }, "captureStackTrace"); } formatStack = /* @__PURE__ */ __name(function(stack, error) { if (typeof stack === "string") return stack; if ((typeof error === "object" || typeof error === "function") && error.name !== void 0 && error.message !== void 0) { return error.toString(); } return formatNonError(error); }, "formatStack"); return null; }), "stackDetection"))([]); if (typeof console !== "undefined" && typeof console.warn !== "undefined") { printWarning = /* @__PURE__ */ __name(function(message) { console.warn(message); }, "printWarning"); if (util2.isNode && process.stderr.isTTY) { printWarning = /* @__PURE__ */ __name(function(message, isSoft) { var color = isSoft ? "\x1B[33m" : "\x1B[31m"; console.warn(color + message + "\x1B[0m\n"); }, "printWarning"); } else if (!util2.isNode && typeof new Error().stack === "string") { printWarning = /* @__PURE__ */ __name(function(message, isSoft) { console.warn( "%c" + message, isSoft ? "color: darkorange" : "color: red" ); }, "printWarning"); } } var config = { warnings, longStackTraces: false, cancellation: false, monitoring: false }; if (longStackTraces) Promise2.longStackTraces(); return { longStackTraces: /* @__PURE__ */ __name(function() { return config.longStackTraces; }, "longStackTraces"), warnings: /* @__PURE__ */ __name(function() { return config.warnings; }, "warnings"), cancellation: /* @__PURE__ */ __name(function() { return config.cancellation; }, "cancellation"), monitoring: /* @__PURE__ */ __name(function() { return config.monitoring; }, "monitoring"), propagateFromFunction: /* @__PURE__ */ __name(function() { return propagateFromFunction; }, "propagateFromFunction"), boundValueFunction: /* @__PURE__ */ __name(function() { return boundValueFunction; }, "boundValueFunction"), checkForgottenReturns, setBounds, warn, deprecated, CapturedTrace, fireDomEvent, fireGlobalEvent }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/finally.js var require_finally = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/finally.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, tryConvertToPromise) { var util2 = require_util6(); var CancellationError = Promise2.CancellationError; var errorObj2 = util2.errorObj; function PassThroughHandlerContext(promise, type, handler) { this.promise = promise; this.type = type; this.handler = handler; this.called = false; this.cancelPromise = null; } __name(PassThroughHandlerContext, "PassThroughHandlerContext"); PassThroughHandlerContext.prototype.isFinallyHandler = function() { return this.type === 0; }; function FinallyHandlerCancelReaction(finallyHandler2) { this.finallyHandler = finallyHandler2; } __name(FinallyHandlerCancelReaction, "FinallyHandlerCancelReaction"); FinallyHandlerCancelReaction.prototype._resultCancelled = function() { checkCancel(this.finallyHandler); }; function checkCancel(ctx, reason) { if (ctx.cancelPromise != null) { if (arguments.length > 1) { ctx.cancelPromise._reject(reason); } else { ctx.cancelPromise._cancel(); } ctx.cancelPromise = null; return true; } return false; } __name(checkCancel, "checkCancel"); function succeed() { return finallyHandler.call(this, this.promise._target()._settledValue()); } __name(succeed, "succeed"); function fail(reason) { if (checkCancel(this, reason)) return; errorObj2.e = reason; return errorObj2; } __name(fail, "fail"); function finallyHandler(reasonOrValue) { var promise = this.promise; var handler = this.handler; if (!this.called) { this.called = true; var ret2 = this.isFinallyHandler() ? handler.call(promise._boundValue()) : handler.call(promise._boundValue(), reasonOrValue); if (ret2 !== void 0) { promise._setReturnedNonUndefined(); var maybePromise = tryConvertToPromise(ret2, promise); if (maybePromise instanceof Promise2) { if (this.cancelPromise != null) { if (maybePromise._isCancelled()) { var reason = new CancellationError("late cancellation observer"); promise._attachExtraTrace(reason); errorObj2.e = reason; return errorObj2; } else if (maybePromise.isPending()) { maybePromise._attachCancellationCallback( new FinallyHandlerCancelReaction(this) ); } } return maybePromise._then( succeed, fail, void 0, this, void 0 ); } } } if (promise.isRejected()) { checkCancel(this); errorObj2.e = reasonOrValue; return errorObj2; } else { checkCancel(this); return reasonOrValue; } } __name(finallyHandler, "finallyHandler"); Promise2.prototype._passThrough = function(handler, type, success, fail2) { if (typeof handler !== "function") return this.then(); return this._then( success, fail2, void 0, new PassThroughHandlerContext(this, type, handler), void 0 ); }; Promise2.prototype.lastly = Promise2.prototype["finally"] = function(handler) { return this._passThrough( handler, 0, finallyHandler, finallyHandler ); }; Promise2.prototype.tap = function(handler) { return this._passThrough(handler, 1, finallyHandler); }; return PassThroughHandlerContext; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/catch_filter.js var require_catch_filter = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/catch_filter.js"(exports2, module2) { "use strict"; module2.exports = function(NEXT_FILTER) { var util2 = require_util6(); var getKeys = require_es5().keys; var tryCatch2 = util2.tryCatch; var errorObj2 = util2.errorObj; function catchFilter(instances, cb, promise) { return function(e) { var boundTo = promise._boundValue(); predicateLoop: for (var i = 0; i < instances.length; ++i) { var item = instances[i]; if (item === Error || item != null && item.prototype instanceof Error) { if (e instanceof item) { return tryCatch2(cb).call(boundTo, e); } } else if (typeof item === "function") { var matchesPredicate = tryCatch2(item).call(boundTo, e); if (matchesPredicate === errorObj2) { return matchesPredicate; } else if (matchesPredicate) { return tryCatch2(cb).call(boundTo, e); } } else if (util2.isObject(e)) { var keys = getKeys(item); for (var j = 0; j < keys.length; ++j) { var key = keys[j]; if (item[key] != e[key]) { continue predicateLoop; } } return tryCatch2(cb).call(boundTo, e); } } return NEXT_FILTER; }; } __name(catchFilter, "catchFilter"); return catchFilter; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/nodeback.js var require_nodeback = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/nodeback.js"(exports2, module2) { "use strict"; var util2 = require_util6(); var maybeWrapAsError2 = util2.maybeWrapAsError; var errors = require_errors7(); var OperationalError = errors.OperationalError; var es52 = require_es5(); function isUntypedError(obj2) { return obj2 instanceof Error && es52.getPrototypeOf(obj2) === Error.prototype; } __name(isUntypedError, "isUntypedError"); var rErrorKey = /^(?:name|message|stack|cause)$/; function wrapAsOperationalError(obj2) { var ret2; if (isUntypedError(obj2)) { ret2 = new OperationalError(obj2); ret2.name = obj2.name; ret2.message = obj2.message; ret2.stack = obj2.stack; var keys = es52.keys(obj2); for (var i = 0; i < keys.length; ++i) { var key = keys[i]; if (!rErrorKey.test(key)) { ret2[key] = obj2[key]; } } return ret2; } util2.markAsOriginatingFromRejection(obj2); return obj2; } __name(wrapAsOperationalError, "wrapAsOperationalError"); function nodebackForPromise(promise, multiArgs) { return function(err, value) { if (promise === null) return; if (err) { var wrapped = wrapAsOperationalError(maybeWrapAsError2(err)); promise._attachExtraTrace(wrapped); promise._reject(wrapped); } else if (!multiArgs) { promise._fulfill(value); } else { var $_len = arguments.length; var args = new Array(Math.max($_len - 1, 0)); for (var $_i = 1; $_i < $_len; ++$_i) { args[$_i - 1] = arguments[$_i]; } ; promise._fulfill(args); } promise = null; }; } __name(nodebackForPromise, "nodebackForPromise"); module2.exports = nodebackForPromise; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/method.js var require_method = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/method.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, INTERNAL, tryConvertToPromise, apiRejection, debug) { var util2 = require_util6(); var tryCatch2 = util2.tryCatch; Promise2.method = function(fn) { if (typeof fn !== "function") { throw new Promise2.TypeError("expecting a function but got " + util2.classString(fn)); } return function() { var ret2 = new Promise2(INTERNAL); ret2._captureStackTrace(); ret2._pushContext(); var value = tryCatch2(fn).apply(this, arguments); var promiseCreated = ret2._popContext(); debug.checkForgottenReturns( value, promiseCreated, "Promise.method", ret2 ); ret2._resolveFromSyncValue(value); return ret2; }; }; Promise2.attempt = Promise2["try"] = function(fn) { if (typeof fn !== "function") { return apiRejection("expecting a function but got " + util2.classString(fn)); } var ret2 = new Promise2(INTERNAL); ret2._captureStackTrace(); ret2._pushContext(); var value; if (arguments.length > 1) { debug.deprecated("calling Promise.try with more than 1 argument"); var arg = arguments[1]; var ctx = arguments[2]; value = util2.isArray(arg) ? tryCatch2(fn).apply(ctx, arg) : tryCatch2(fn).call(ctx, arg); } else { value = tryCatch2(fn)(); } var promiseCreated = ret2._popContext(); debug.checkForgottenReturns( value, promiseCreated, "Promise.try", ret2 ); ret2._resolveFromSyncValue(value); return ret2; }; Promise2.prototype._resolveFromSyncValue = function(value) { if (value === util2.errorObj) { this._rejectCallback(value.e, false); } else { this._resolveCallback(value, true); } }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/bind.js var require_bind = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/bind.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, INTERNAL, tryConvertToPromise, debug) { var calledBind = false; var rejectThis = /* @__PURE__ */ __name(function(_2, e) { this._reject(e); }, "rejectThis"); var targetRejected = /* @__PURE__ */ __name(function(e, context) { context.promiseRejectionQueued = true; context.bindingPromise._then(rejectThis, rejectThis, null, this, e); }, "targetRejected"); var bindingResolved = /* @__PURE__ */ __name(function(thisArg, context) { if ((this._bitField & 50397184) === 0) { this._resolveCallback(context.target); } }, "bindingResolved"); var bindingRejected = /* @__PURE__ */ __name(function(e, context) { if (!context.promiseRejectionQueued) this._reject(e); }, "bindingRejected"); Promise2.prototype.bind = function(thisArg) { if (!calledBind) { calledBind = true; Promise2.prototype._propagateFrom = debug.propagateFromFunction(); Promise2.prototype._boundValue = debug.boundValueFunction(); } var maybePromise = tryConvertToPromise(thisArg); var ret2 = new Promise2(INTERNAL); ret2._propagateFrom(this, 1); var target = this._target(); ret2._setBoundTo(maybePromise); if (maybePromise instanceof Promise2) { var context = { promiseRejectionQueued: false, promise: ret2, target, bindingPromise: maybePromise }; target._then(INTERNAL, targetRejected, void 0, ret2, context); maybePromise._then( bindingResolved, bindingRejected, void 0, ret2, context ); ret2._setOnCancel(maybePromise); } else { ret2._resolveCallback(target); } return ret2; }; Promise2.prototype._setBoundTo = function(obj2) { if (obj2 !== void 0) { this._bitField = this._bitField | 2097152; this._boundTo = obj2; } else { this._bitField = this._bitField & ~2097152; } }; Promise2.prototype._isBound = function() { return (this._bitField & 2097152) === 2097152; }; Promise2.bind = function(thisArg, value) { return Promise2.resolve(value).bind(thisArg); }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/cancel.js var require_cancel = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/cancel.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, PromiseArray, apiRejection, debug) { var util2 = require_util6(); var tryCatch2 = util2.tryCatch; var errorObj2 = util2.errorObj; var async = Promise2._async; Promise2.prototype["break"] = Promise2.prototype.cancel = function() { if (!debug.cancellation()) return this._warn("cancellation is disabled"); var promise = this; var child = promise; while (promise._isCancellable()) { if (!promise._cancelBy(child)) { if (child._isFollowing()) { child._followee().cancel(); } else { child._cancelBranched(); } break; } var parent = promise._cancellationParent; if (parent == null || !parent._isCancellable()) { if (promise._isFollowing()) { promise._followee().cancel(); } else { promise._cancelBranched(); } break; } else { if (promise._isFollowing()) promise._followee().cancel(); promise._setWillBeCancelled(); child = promise; promise = parent; } } }; Promise2.prototype._branchHasCancelled = function() { this._branchesRemainingToCancel--; }; Promise2.prototype._enoughBranchesHaveCancelled = function() { return this._branchesRemainingToCancel === void 0 || this._branchesRemainingToCancel <= 0; }; Promise2.prototype._cancelBy = function(canceller) { if (canceller === this) { this._branchesRemainingToCancel = 0; this._invokeOnCancel(); return true; } else { this._branchHasCancelled(); if (this._enoughBranchesHaveCancelled()) { this._invokeOnCancel(); return true; } } return false; }; Promise2.prototype._cancelBranched = function() { if (this._enoughBranchesHaveCancelled()) { this._cancel(); } }; Promise2.prototype._cancel = function() { if (!this._isCancellable()) return; this._setCancelled(); async.invoke(this._cancelPromises, this, void 0); }; Promise2.prototype._cancelPromises = function() { if (this._length() > 0) this._settlePromises(); }; Promise2.prototype._unsetOnCancel = function() { this._onCancelField = void 0; }; Promise2.prototype._isCancellable = function() { return this.isPending() && !this._isCancelled(); }; Promise2.prototype.isCancellable = function() { return this.isPending() && !this.isCancelled(); }; Promise2.prototype._doInvokeOnCancel = function(onCancelCallback, internalOnly) { if (util2.isArray(onCancelCallback)) { for (var i = 0; i < onCancelCallback.length; ++i) { this._doInvokeOnCancel(onCancelCallback[i], internalOnly); } } else if (onCancelCallback !== void 0) { if (typeof onCancelCallback === "function") { if (!internalOnly) { var e = tryCatch2(onCancelCallback).call(this._boundValue()); if (e === errorObj2) { this._attachExtraTrace(e.e); async.throwLater(e.e); } } } else { onCancelCallback._resultCancelled(this); } } }; Promise2.prototype._invokeOnCancel = function() { var onCancelCallback = this._onCancel(); this._unsetOnCancel(); async.invoke(this._doInvokeOnCancel, this, onCancelCallback); }; Promise2.prototype._invokeInternalOnCancel = function() { if (this._isCancellable()) { this._doInvokeOnCancel(this._onCancel(), true); this._unsetOnCancel(); } }; Promise2.prototype._resultCancelled = function() { this.cancel(); }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/direct_resolve.js var require_direct_resolve = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/direct_resolve.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2) { function returner() { return this.value; } __name(returner, "returner"); function thrower2() { throw this.reason; } __name(thrower2, "thrower"); Promise2.prototype["return"] = Promise2.prototype.thenReturn = function(value) { if (value instanceof Promise2) value.suppressUnhandledRejections(); return this._then( returner, void 0, void 0, { value }, void 0 ); }; Promise2.prototype["throw"] = Promise2.prototype.thenThrow = function(reason) { return this._then( thrower2, void 0, void 0, { reason }, void 0 ); }; Promise2.prototype.catchThrow = function(reason) { if (arguments.length <= 1) { return this._then( void 0, thrower2, void 0, { reason }, void 0 ); } else { var _reason = arguments[1]; var handler = /* @__PURE__ */ __name(function() { throw _reason; }, "handler"); return this.caught(reason, handler); } }; Promise2.prototype.catchReturn = function(value) { if (arguments.length <= 1) { if (value instanceof Promise2) value.suppressUnhandledRejections(); return this._then( void 0, returner, void 0, { value }, void 0 ); } else { var _value = arguments[1]; if (_value instanceof Promise2) _value.suppressUnhandledRejections(); var handler = /* @__PURE__ */ __name(function() { return _value; }, "handler"); return this.caught(value, handler); } }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/synchronous_inspection.js var require_synchronous_inspection = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/synchronous_inspection.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2) { function PromiseInspection(promise) { if (promise !== void 0) { promise = promise._target(); this._bitField = promise._bitField; this._settledValueField = promise._isFateSealed() ? promise._settledValue() : void 0; } else { this._bitField = 0; this._settledValueField = void 0; } } __name(PromiseInspection, "PromiseInspection"); PromiseInspection.prototype._settledValue = function() { return this._settledValueField; }; var value = PromiseInspection.prototype.value = function() { if (!this.isFulfilled()) { throw new TypeError("cannot get fulfillment value of a non-fulfilled promise\n\n See http://goo.gl/MqrFmX\n"); } return this._settledValue(); }; var reason = PromiseInspection.prototype.error = PromiseInspection.prototype.reason = function() { if (!this.isRejected()) { throw new TypeError("cannot get rejection reason of a non-rejected promise\n\n See http://goo.gl/MqrFmX\n"); } return this._settledValue(); }; var isFulfilled = PromiseInspection.prototype.isFulfilled = function() { return (this._bitField & 33554432) !== 0; }; var isRejected = PromiseInspection.prototype.isRejected = function() { return (this._bitField & 16777216) !== 0; }; var isPending = PromiseInspection.prototype.isPending = function() { return (this._bitField & 50397184) === 0; }; var isResolved = PromiseInspection.prototype.isResolved = function() { return (this._bitField & 50331648) !== 0; }; PromiseInspection.prototype.isCancelled = function() { return (this._bitField & 8454144) !== 0; }; Promise2.prototype.__isCancelled = function() { return (this._bitField & 65536) === 65536; }; Promise2.prototype._isCancelled = function() { return this._target().__isCancelled(); }; Promise2.prototype.isCancelled = function() { return (this._target()._bitField & 8454144) !== 0; }; Promise2.prototype.isPending = function() { return isPending.call(this._target()); }; Promise2.prototype.isRejected = function() { return isRejected.call(this._target()); }; Promise2.prototype.isFulfilled = function() { return isFulfilled.call(this._target()); }; Promise2.prototype.isResolved = function() { return isResolved.call(this._target()); }; Promise2.prototype.value = function() { return value.call(this._target()); }; Promise2.prototype.reason = function() { var target = this._target(); target._unsetRejectionIsUnhandled(); return reason.call(target); }; Promise2.prototype._value = function() { return this._settledValue(); }; Promise2.prototype._reason = function() { this._unsetRejectionIsUnhandled(); return this._settledValue(); }; Promise2.PromiseInspection = PromiseInspection; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/join.js var require_join = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/join.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, PromiseArray, tryConvertToPromise, INTERNAL, async, getDomain) { var util2 = require_util6(); var canEvaluate2 = util2.canEvaluate; var tryCatch2 = util2.tryCatch; var errorObj2 = util2.errorObj; var reject; if (true) { if (canEvaluate2) { var thenCallback = /* @__PURE__ */ __name(function(i2) { return new Function("value", "holder", " \n 'use strict'; \n holder.pIndex = value; \n holder.checkFulfillment(this); \n ".replace(/Index/g, i2)); }, "thenCallback"); var promiseSetter = /* @__PURE__ */ __name(function(i2) { return new Function("promise", "holder", " \n 'use strict'; \n holder.pIndex = promise; \n ".replace(/Index/g, i2)); }, "promiseSetter"); var generateHolderClass = /* @__PURE__ */ __name(function(total) { var props = new Array(total); for (var i2 = 0; i2 < props.length; ++i2) { props[i2] = "this.p" + (i2 + 1); } var assignment = props.join(" = ") + " = null;"; var cancellationCode = "var promise;\n" + props.map(function(prop) { return " \n promise = " + prop + "; \n if (promise instanceof Promise) { \n promise.cancel(); \n } \n "; }).join("\n"); var passedArguments = props.join(", "); var name = "Holder$" + total; var code = "return function(tryCatch, errorObj, Promise, async) { \n 'use strict'; \n function [TheName](fn) { \n [TheProperties] \n this.fn = fn; \n this.asyncNeeded = true; \n this.now = 0; \n } \n \n [TheName].prototype._callFunction = function(promise) { \n promise._pushContext(); \n var ret = tryCatch(this.fn)([ThePassedArguments]); \n promise._popContext(); \n if (ret === errorObj) { \n promise._rejectCallback(ret.e, false); \n } else { \n promise._resolveCallback(ret); \n } \n }; \n \n [TheName].prototype.checkFulfillment = function(promise) { \n var now = ++this.now; \n if (now === [TheTotal]) { \n if (this.asyncNeeded) { \n async.invoke(this._callFunction, this, promise); \n } else { \n this._callFunction(promise); \n } \n \n } \n }; \n \n [TheName].prototype._resultCancelled = function() { \n [CancellationCode] \n }; \n \n return [TheName]; \n }(tryCatch, errorObj, Promise, async); \n "; code = code.replace(/\[TheName\]/g, name).replace(/\[TheTotal\]/g, total).replace(/\[ThePassedArguments\]/g, passedArguments).replace(/\[TheProperties\]/g, assignment).replace(/\[CancellationCode\]/g, cancellationCode); return new Function("tryCatch", "errorObj", "Promise", "async", code)(tryCatch2, errorObj2, Promise2, async); }, "generateHolderClass"); var holderClasses = []; var thenCallbacks = []; var promiseSetters = []; for (var i = 0; i < 8; ++i) { holderClasses.push(generateHolderClass(i + 1)); thenCallbacks.push(thenCallback(i + 1)); promiseSetters.push(promiseSetter(i + 1)); } reject = /* @__PURE__ */ __name(function(reason) { this._reject(reason); }, "reject"); } } Promise2.join = function() { var last = arguments.length - 1; var fn; if (last > 0 && typeof arguments[last] === "function") { fn = arguments[last]; if (true) { if (last <= 8 && canEvaluate2) { var ret2 = new Promise2(INTERNAL); ret2._captureStackTrace(); var HolderClass = holderClasses[last - 1]; var holder = new HolderClass(fn); var callbacks = thenCallbacks; for (var i2 = 0; i2 < last; ++i2) { var maybePromise = tryConvertToPromise(arguments[i2], ret2); if (maybePromise instanceof Promise2) { maybePromise = maybePromise._target(); var bitField = maybePromise._bitField; ; if ((bitField & 50397184) === 0) { maybePromise._then( callbacks[i2], reject, void 0, ret2, holder ); promiseSetters[i2](maybePromise, holder); holder.asyncNeeded = false; } else if ((bitField & 33554432) !== 0) { callbacks[i2].call( ret2, maybePromise._value(), holder ); } else if ((bitField & 16777216) !== 0) { ret2._reject(maybePromise._reason()); } else { ret2._cancel(); } } else { callbacks[i2].call(ret2, maybePromise, holder); } } if (!ret2._isFateSealed()) { if (holder.asyncNeeded) { var domain = getDomain(); if (domain !== null) { holder.fn = util2.domainBind(domain, holder.fn); } } ret2._setAsyncGuaranteed(); ret2._setOnCancel(holder); } return ret2; } } } var $_len = arguments.length; var args = new Array($_len); for (var $_i = 0; $_i < $_len; ++$_i) { args[$_i] = arguments[$_i]; } ; if (fn) args.pop(); var ret2 = new PromiseArray(args).promise(); return fn !== void 0 ? ret2.spread(fn) : ret2; }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/map.js var require_map4 = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/map.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, PromiseArray, apiRejection, tryConvertToPromise, INTERNAL, debug) { var getDomain = Promise2._getDomain; var util2 = require_util6(); var tryCatch2 = util2.tryCatch; var errorObj2 = util2.errorObj; var async = Promise2._async; function MappingPromiseArray(promises, fn, limit, _filter) { this.constructor$(promises); this._promise._captureStackTrace(); var domain = getDomain(); this._callback = domain === null ? fn : util2.domainBind(domain, fn); this._preservedValues = _filter === INTERNAL ? new Array(this.length()) : null; this._limit = limit; this._inFlight = 0; this._queue = []; async.invoke(this._asyncInit, this, void 0); } __name(MappingPromiseArray, "MappingPromiseArray"); util2.inherits(MappingPromiseArray, PromiseArray); MappingPromiseArray.prototype._asyncInit = function() { this._init$(void 0, -2); }; MappingPromiseArray.prototype._init = function() { }; MappingPromiseArray.prototype._promiseFulfilled = function(value, index) { var values = this._values; var length = this.length(); var preservedValues = this._preservedValues; var limit = this._limit; if (index < 0) { index = index * -1 - 1; values[index] = value; if (limit >= 1) { this._inFlight--; this._drainQueue(); if (this._isResolved()) return true; } } else { if (limit >= 1 && this._inFlight >= limit) { values[index] = value; this._queue.push(index); return false; } if (preservedValues !== null) preservedValues[index] = value; var promise = this._promise; var callback = this._callback; var receiver = promise._boundValue(); promise._pushContext(); var ret2 = tryCatch2(callback).call(receiver, value, index, length); var promiseCreated = promise._popContext(); debug.checkForgottenReturns( ret2, promiseCreated, preservedValues !== null ? "Promise.filter" : "Promise.map", promise ); if (ret2 === errorObj2) { this._reject(ret2.e); return true; } var maybePromise = tryConvertToPromise(ret2, this._promise); if (maybePromise instanceof Promise2) { maybePromise = maybePromise._target(); var bitField = maybePromise._bitField; ; if ((bitField & 50397184) === 0) { if (limit >= 1) this._inFlight++; values[index] = maybePromise; maybePromise._proxy(this, (index + 1) * -1); return false; } else if ((bitField & 33554432) !== 0) { ret2 = maybePromise._value(); } else if ((bitField & 16777216) !== 0) { this._reject(maybePromise._reason()); return true; } else { this._cancel(); return true; } } values[index] = ret2; } var totalResolved = ++this._totalResolved; if (totalResolved >= length) { if (preservedValues !== null) { this._filter(values, preservedValues); } else { this._resolve(values); } return true; } return false; }; MappingPromiseArray.prototype._drainQueue = function() { var queue = this._queue; var limit = this._limit; var values = this._values; while (queue.length > 0 && this._inFlight < limit) { if (this._isResolved()) return; var index = queue.pop(); this._promiseFulfilled(values[index], index); } }; MappingPromiseArray.prototype._filter = function(booleans, values) { var len = values.length; var ret2 = new Array(len); var j = 0; for (var i = 0; i < len; ++i) { if (booleans[i]) ret2[j++] = values[i]; } ret2.length = j; this._resolve(ret2); }; MappingPromiseArray.prototype.preservedValues = function() { return this._preservedValues; }; function map(promises, fn, options, _filter) { if (typeof fn !== "function") { return apiRejection("expecting a function but got " + util2.classString(fn)); } var limit = 0; if (options !== void 0) { if (typeof options === "object" && options !== null) { if (typeof options.concurrency !== "number") { return Promise2.reject( new TypeError("'concurrency' must be a number but it is " + util2.classString(options.concurrency)) ); } limit = options.concurrency; } else { return Promise2.reject(new TypeError( "options argument must be an object but it is " + util2.classString(options) )); } } limit = typeof limit === "number" && isFinite(limit) && limit >= 1 ? limit : 0; return new MappingPromiseArray(promises, fn, limit, _filter).promise(); } __name(map, "map"); Promise2.prototype.map = function(fn, options) { return map(this, fn, options, null); }; Promise2.map = function(promises, fn, options, _filter) { return map(promises, fn, options, _filter); }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/call_get.js var require_call_get = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/call_get.js"(exports2, module2) { "use strict"; var cr = Object.create; if (cr) { callerCache = cr(null); getterCache = cr(null); callerCache[" size"] = getterCache[" size"] = 0; } var callerCache; var getterCache; module2.exports = function(Promise2) { var util2 = require_util6(); var canEvaluate2 = util2.canEvaluate; var isIdentifier2 = util2.isIdentifier; var getMethodCaller; var getGetter; if (true) { var makeMethodCaller = /* @__PURE__ */ __name(function(methodName) { return new Function("ensureMethod", " \n return function(obj) { \n 'use strict' \n var len = this.length; \n ensureMethod(obj, 'methodName'); \n switch(len) { \n case 1: return obj.methodName(this[0]); \n case 2: return obj.methodName(this[0], this[1]); \n case 3: return obj.methodName(this[0], this[1], this[2]); \n case 0: return obj.methodName(); \n default: \n return obj.methodName.apply(obj, this); \n } \n }; \n ".replace(/methodName/g, methodName))(ensureMethod); }, "makeMethodCaller"); var makeGetter = /* @__PURE__ */ __name(function(propertyName) { return new Function("obj", " \n 'use strict'; \n return obj.propertyName; \n ".replace("propertyName", propertyName)); }, "makeGetter"); var getCompiled = /* @__PURE__ */ __name(function(name, compiler, cache) { var ret2 = cache[name]; if (typeof ret2 !== "function") { if (!isIdentifier2(name)) { return null; } ret2 = compiler(name); cache[name] = ret2; cache[" size"]++; if (cache[" size"] > 512) { var keys = Object.keys(cache); for (var i = 0; i < 256; ++i) delete cache[keys[i]]; cache[" size"] = keys.length - 256; } } return ret2; }, "getCompiled"); getMethodCaller = /* @__PURE__ */ __name(function(name) { return getCompiled(name, makeMethodCaller, callerCache); }, "getMethodCaller"); getGetter = /* @__PURE__ */ __name(function(name) { return getCompiled(name, makeGetter, getterCache); }, "getGetter"); } function ensureMethod(obj2, methodName) { var fn; if (obj2 != null) fn = obj2[methodName]; if (typeof fn !== "function") { var message = "Object " + util2.classString(obj2) + " has no method '" + util2.toString(methodName) + "'"; throw new Promise2.TypeError(message); } return fn; } __name(ensureMethod, "ensureMethod"); function caller(obj2) { var methodName = this.pop(); var fn = ensureMethod(obj2, methodName); return fn.apply(obj2, this); } __name(caller, "caller"); Promise2.prototype.call = function(methodName) { var $_len = arguments.length; var args = new Array(Math.max($_len - 1, 0)); for (var $_i = 1; $_i < $_len; ++$_i) { args[$_i - 1] = arguments[$_i]; } ; if (true) { if (canEvaluate2) { var maybeCaller = getMethodCaller(methodName); if (maybeCaller !== null) { return this._then( maybeCaller, void 0, void 0, args, void 0 ); } } } args.push(methodName); return this._then(caller, void 0, void 0, args, void 0); }; function namedGetter(obj2) { return obj2[this]; } __name(namedGetter, "namedGetter"); function indexedGetter(obj2) { var index = +this; if (index < 0) index = Math.max(0, index + obj2.length); return obj2[index]; } __name(indexedGetter, "indexedGetter"); Promise2.prototype.get = function(propertyName) { var isIndex = typeof propertyName === "number"; var getter; if (!isIndex) { if (canEvaluate2) { var maybeGetter = getGetter(propertyName); getter = maybeGetter !== null ? maybeGetter : namedGetter; } else { getter = namedGetter; } } else { getter = indexedGetter; } return this._then(getter, void 0, void 0, propertyName, void 0); }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/using.js var require_using2 = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/using.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, apiRejection, tryConvertToPromise, createContext, INTERNAL, debug) { var util2 = require_util6(); var TypeError2 = require_errors7().TypeError; var inherits2 = require_util6().inherits; var errorObj2 = util2.errorObj; var tryCatch2 = util2.tryCatch; var NULL = {}; function thrower2(e) { setTimeout(function() { throw e; }, 0); } __name(thrower2, "thrower"); function castPreservingDisposable(thenable) { var maybePromise = tryConvertToPromise(thenable); if (maybePromise !== thenable && typeof thenable._isDisposable === "function" && typeof thenable._getDisposer === "function" && thenable._isDisposable()) { maybePromise._setDisposable(thenable._getDisposer()); } return maybePromise; } __name(castPreservingDisposable, "castPreservingDisposable"); function dispose(resources, inspection) { var i = 0; var len = resources.length; var ret2 = new Promise2(INTERNAL); function iterator() { if (i >= len) return ret2._fulfill(); var maybePromise = castPreservingDisposable(resources[i++]); if (maybePromise instanceof Promise2 && maybePromise._isDisposable()) { try { maybePromise = tryConvertToPromise( maybePromise._getDisposer().tryDispose(inspection), resources.promise ); } catch (e) { return thrower2(e); } if (maybePromise instanceof Promise2) { return maybePromise._then( iterator, thrower2, null, null, null ); } } iterator(); } __name(iterator, "iterator"); iterator(); return ret2; } __name(dispose, "dispose"); function Disposer(data, promise, context) { this._data = data; this._promise = promise; this._context = context; } __name(Disposer, "Disposer"); Disposer.prototype.data = function() { return this._data; }; Disposer.prototype.promise = function() { return this._promise; }; Disposer.prototype.resource = function() { if (this.promise().isFulfilled()) { return this.promise().value(); } return NULL; }; Disposer.prototype.tryDispose = function(inspection) { var resource = this.resource(); var context = this._context; if (context !== void 0) context._pushContext(); var ret2 = resource !== NULL ? this.doDispose(resource, inspection) : null; if (context !== void 0) context._popContext(); this._promise._unsetDisposable(); this._data = null; return ret2; }; Disposer.isDisposer = function(d) { return d != null && typeof d.resource === "function" && typeof d.tryDispose === "function"; }; function FunctionDisposer(fn, promise, context) { this.constructor$(fn, promise, context); } __name(FunctionDisposer, "FunctionDisposer"); inherits2(FunctionDisposer, Disposer); FunctionDisposer.prototype.doDispose = function(resource, inspection) { var fn = this.data(); return fn.call(resource, resource, inspection); }; function maybeUnwrapDisposer(value) { if (Disposer.isDisposer(value)) { this.resources[this.index]._setDisposable(value); return value.promise(); } return value; } __name(maybeUnwrapDisposer, "maybeUnwrapDisposer"); function ResourceList(length) { this.length = length; this.promise = null; this[length - 1] = null; } __name(ResourceList, "ResourceList"); ResourceList.prototype._resultCancelled = function() { var len = this.length; for (var i = 0; i < len; ++i) { var item = this[i]; if (item instanceof Promise2) { item.cancel(); } } }; Promise2.using = function() { var len = arguments.length; if (len < 2) return apiRejection( "you must pass at least 2 arguments to Promise.using" ); var fn = arguments[len - 1]; if (typeof fn !== "function") { return apiRejection("expecting a function but got " + util2.classString(fn)); } var input; var spreadArgs = true; if (len === 2 && Array.isArray(arguments[0])) { input = arguments[0]; len = input.length; spreadArgs = false; } else { input = arguments; len--; } var resources = new ResourceList(len); for (var i = 0; i < len; ++i) { var resource = input[i]; if (Disposer.isDisposer(resource)) { var disposer = resource; resource = resource.promise(); resource._setDisposable(disposer); } else { var maybePromise = tryConvertToPromise(resource); if (maybePromise instanceof Promise2) { resource = maybePromise._then(maybeUnwrapDisposer, null, null, { resources, index: i }, void 0); } } resources[i] = resource; } var reflectedResources = new Array(resources.length); for (var i = 0; i < reflectedResources.length; ++i) { reflectedResources[i] = Promise2.resolve(resources[i]).reflect(); } var resultPromise = Promise2.all(reflectedResources).then(function(inspections) { for (var i2 = 0; i2 < inspections.length; ++i2) { var inspection = inspections[i2]; if (inspection.isRejected()) { errorObj2.e = inspection.error(); return errorObj2; } else if (!inspection.isFulfilled()) { resultPromise.cancel(); return; } inspections[i2] = inspection.value(); } promise._pushContext(); fn = tryCatch2(fn); var ret2 = spreadArgs ? fn.apply(void 0, inspections) : fn(inspections); var promiseCreated = promise._popContext(); debug.checkForgottenReturns( ret2, promiseCreated, "Promise.using", promise ); return ret2; }); var promise = resultPromise.lastly(function() { var inspection = new Promise2.PromiseInspection(resultPromise); return dispose(resources, inspection); }); resources.promise = promise; promise._setOnCancel(resources); return promise; }; Promise2.prototype._setDisposable = function(disposer) { this._bitField = this._bitField | 131072; this._disposer = disposer; }; Promise2.prototype._isDisposable = function() { return (this._bitField & 131072) > 0; }; Promise2.prototype._getDisposer = function() { return this._disposer; }; Promise2.prototype._unsetDisposable = function() { this._bitField = this._bitField & ~131072; this._disposer = void 0; }; Promise2.prototype.disposer = function(fn) { if (typeof fn === "function") { return new FunctionDisposer(fn, this, createContext()); } throw new TypeError2(); }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/timers.js var require_timers = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/timers.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, INTERNAL, debug) { var util2 = require_util6(); var TimeoutError = Promise2.TimeoutError; function HandleWrapper(handle) { this.handle = handle; } __name(HandleWrapper, "HandleWrapper"); HandleWrapper.prototype._resultCancelled = function() { clearTimeout(this.handle); }; var afterValue = /* @__PURE__ */ __name(function(value) { return delay(+this).thenReturn(value); }, "afterValue"); var delay = Promise2.delay = function(ms, value) { var ret2; var handle; if (value !== void 0) { ret2 = Promise2.resolve(value)._then(afterValue, null, null, ms, void 0); if (debug.cancellation() && value instanceof Promise2) { ret2._setOnCancel(value); } } else { ret2 = new Promise2(INTERNAL); handle = setTimeout(function() { ret2._fulfill(); }, +ms); if (debug.cancellation()) { ret2._setOnCancel(new HandleWrapper(handle)); } ret2._captureStackTrace(); } ret2._setAsyncGuaranteed(); return ret2; }; Promise2.prototype.delay = function(ms) { return delay(ms, this); }; var afterTimeout = /* @__PURE__ */ __name(function(promise, message, parent) { var err; if (typeof message !== "string") { if (message instanceof Error) { err = message; } else { err = new TimeoutError("operation timed out"); } } else { err = new TimeoutError(message); } util2.markAsOriginatingFromRejection(err); promise._attachExtraTrace(err); promise._reject(err); if (parent != null) { parent.cancel(); } }, "afterTimeout"); function successClear(value) { clearTimeout(this.handle); return value; } __name(successClear, "successClear"); function failureClear(reason) { clearTimeout(this.handle); throw reason; } __name(failureClear, "failureClear"); Promise2.prototype.timeout = function(ms, message) { ms = +ms; var ret2, parent; var handleWrapper = new HandleWrapper(setTimeout(/* @__PURE__ */ __name(function timeoutTimeout() { if (ret2.isPending()) { afterTimeout(ret2, message, parent); } }, "timeoutTimeout"), ms)); if (debug.cancellation()) { parent = this.then(); ret2 = parent._then( successClear, failureClear, void 0, handleWrapper, void 0 ); ret2._setOnCancel(handleWrapper); } else { ret2 = this._then( successClear, failureClear, void 0, handleWrapper, void 0 ); } return ret2; }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/generators.js var require_generators = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/generators.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, apiRejection, INTERNAL, tryConvertToPromise, Proxyable, debug) { var errors = require_errors7(); var TypeError2 = errors.TypeError; var util2 = require_util6(); var errorObj2 = util2.errorObj; var tryCatch2 = util2.tryCatch; var yieldHandlers = []; function promiseFromYieldHandler(value, yieldHandlers2, traceParent) { for (var i = 0; i < yieldHandlers2.length; ++i) { traceParent._pushContext(); var result = tryCatch2(yieldHandlers2[i])(value); traceParent._popContext(); if (result === errorObj2) { traceParent._pushContext(); var ret2 = Promise2.reject(errorObj2.e); traceParent._popContext(); return ret2; } var maybePromise = tryConvertToPromise(result, traceParent); if (maybePromise instanceof Promise2) return maybePromise; } return null; } __name(promiseFromYieldHandler, "promiseFromYieldHandler"); function PromiseSpawn(generatorFunction, receiver, yieldHandler, stack) { if (debug.cancellation()) { var internal = new Promise2(INTERNAL); var _finallyPromise = this._finallyPromise = new Promise2(INTERNAL); this._promise = internal.lastly(function() { return _finallyPromise; }); internal._captureStackTrace(); internal._setOnCancel(this); } else { var promise = this._promise = new Promise2(INTERNAL); promise._captureStackTrace(); } this._stack = stack; this._generatorFunction = generatorFunction; this._receiver = receiver; this._generator = void 0; this._yieldHandlers = typeof yieldHandler === "function" ? [yieldHandler].concat(yieldHandlers) : yieldHandlers; this._yieldedPromise = null; this._cancellationPhase = false; } __name(PromiseSpawn, "PromiseSpawn"); util2.inherits(PromiseSpawn, Proxyable); PromiseSpawn.prototype._isResolved = function() { return this._promise === null; }; PromiseSpawn.prototype._cleanup = function() { this._promise = this._generator = null; if (debug.cancellation() && this._finallyPromise !== null) { this._finallyPromise._fulfill(); this._finallyPromise = null; } }; PromiseSpawn.prototype._promiseCancelled = function() { if (this._isResolved()) return; var implementsReturn = typeof this._generator["return"] !== "undefined"; var result; if (!implementsReturn) { var reason = new Promise2.CancellationError( "generator .return() sentinel" ); Promise2.coroutine.returnSentinel = reason; this._promise._attachExtraTrace(reason); this._promise._pushContext(); result = tryCatch2(this._generator["throw"]).call( this._generator, reason ); this._promise._popContext(); } else { this._promise._pushContext(); result = tryCatch2(this._generator["return"]).call( this._generator, void 0 ); this._promise._popContext(); } this._cancellationPhase = true; this._yieldedPromise = null; this._continue(result); }; PromiseSpawn.prototype._promiseFulfilled = function(value) { this._yieldedPromise = null; this._promise._pushContext(); var result = tryCatch2(this._generator.next).call(this._generator, value); this._promise._popContext(); this._continue(result); }; PromiseSpawn.prototype._promiseRejected = function(reason) { this._yieldedPromise = null; this._promise._attachExtraTrace(reason); this._promise._pushContext(); var result = tryCatch2(this._generator["throw"]).call(this._generator, reason); this._promise._popContext(); this._continue(result); }; PromiseSpawn.prototype._resultCancelled = function() { if (this._yieldedPromise instanceof Promise2) { var promise = this._yieldedPromise; this._yieldedPromise = null; promise.cancel(); } }; PromiseSpawn.prototype.promise = function() { return this._promise; }; PromiseSpawn.prototype._run = function() { this._generator = this._generatorFunction.call(this._receiver); this._receiver = this._generatorFunction = void 0; this._promiseFulfilled(void 0); }; PromiseSpawn.prototype._continue = function(result) { var promise = this._promise; if (result === errorObj2) { this._cleanup(); if (this._cancellationPhase) { return promise.cancel(); } else { return promise._rejectCallback(result.e, false); } } var value = result.value; if (result.done === true) { this._cleanup(); if (this._cancellationPhase) { return promise.cancel(); } else { return promise._resolveCallback(value); } } else { var maybePromise = tryConvertToPromise(value, this._promise); if (!(maybePromise instanceof Promise2)) { maybePromise = promiseFromYieldHandler( maybePromise, this._yieldHandlers, this._promise ); if (maybePromise === null) { this._promiseRejected( new TypeError2( "A value %s was yielded that could not be treated as a promise\n\n See http://goo.gl/MqrFmX\n\n".replace("%s", value) + "From coroutine:\n" + this._stack.split("\n").slice(1, -7).join("\n") ) ); return; } } maybePromise = maybePromise._target(); var bitField = maybePromise._bitField; ; if ((bitField & 50397184) === 0) { this._yieldedPromise = maybePromise; maybePromise._proxy(this, null); } else if ((bitField & 33554432) !== 0) { Promise2._async.invoke( this._promiseFulfilled, this, maybePromise._value() ); } else if ((bitField & 16777216) !== 0) { Promise2._async.invoke( this._promiseRejected, this, maybePromise._reason() ); } else { this._promiseCancelled(); } } }; Promise2.coroutine = function(generatorFunction, options) { if (typeof generatorFunction !== "function") { throw new TypeError2("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n"); } var yieldHandler = Object(options).yieldHandler; var PromiseSpawn$ = PromiseSpawn; var stack = new Error().stack; return function() { var generator = generatorFunction.apply(this, arguments); var spawn = new PromiseSpawn$( void 0, void 0, yieldHandler, stack ); var ret2 = spawn.promise(); spawn._generator = generator; spawn._promiseFulfilled(void 0); return ret2; }; }; Promise2.coroutine.addYieldHandler = function(fn) { if (typeof fn !== "function") { throw new TypeError2("expecting a function but got " + util2.classString(fn)); } yieldHandlers.push(fn); }; Promise2.spawn = function(generatorFunction) { debug.deprecated("Promise.spawn()", "Promise.coroutine()"); if (typeof generatorFunction !== "function") { return apiRejection("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n"); } var spawn = new PromiseSpawn(generatorFunction, this); var ret2 = spawn.promise(); spawn._run(Promise2.spawn); return ret2; }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/nodeify.js var require_nodeify = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/nodeify.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2) { var util2 = require_util6(); var async = Promise2._async; var tryCatch2 = util2.tryCatch; var errorObj2 = util2.errorObj; function spreadAdapter(val, nodeback) { var promise = this; if (!util2.isArray(val)) return successAdapter.call(promise, val, nodeback); var ret2 = tryCatch2(nodeback).apply(promise._boundValue(), [null].concat(val)); if (ret2 === errorObj2) { async.throwLater(ret2.e); } } __name(spreadAdapter, "spreadAdapter"); function successAdapter(val, nodeback) { var promise = this; var receiver = promise._boundValue(); var ret2 = val === void 0 ? tryCatch2(nodeback).call(receiver, null) : tryCatch2(nodeback).call(receiver, null, val); if (ret2 === errorObj2) { async.throwLater(ret2.e); } } __name(successAdapter, "successAdapter"); function errorAdapter(reason, nodeback) { var promise = this; if (!reason) { var newReason = new Error(reason + ""); newReason.cause = reason; reason = newReason; } var ret2 = tryCatch2(nodeback).call(promise._boundValue(), reason); if (ret2 === errorObj2) { async.throwLater(ret2.e); } } __name(errorAdapter, "errorAdapter"); Promise2.prototype.asCallback = Promise2.prototype.nodeify = function(nodeback, options) { if (typeof nodeback == "function") { var adapter = successAdapter; if (options !== void 0 && Object(options).spread) { adapter = spreadAdapter; } this._then( adapter, errorAdapter, void 0, this, nodeback ); } return this; }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promisify.js var require_promisify = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promisify.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, INTERNAL) { var THIS = {}; var util2 = require_util6(); var nodebackForPromise = require_nodeback(); var withAppended2 = util2.withAppended; var maybeWrapAsError2 = util2.maybeWrapAsError; var canEvaluate2 = util2.canEvaluate; var TypeError2 = require_errors7().TypeError; var defaultSuffix = "Async"; var defaultPromisified = { __isPromisified__: true }; var noCopyProps = [ "arity", "length", "name", "arguments", "caller", "callee", "prototype", "__isPromisified__" ]; var noCopyPropsPattern = new RegExp("^(?:" + noCopyProps.join("|") + ")$"); var defaultFilter = /* @__PURE__ */ __name(function(name) { return util2.isIdentifier(name) && name.charAt(0) !== "_" && name !== "constructor"; }, "defaultFilter"); function propsFilter(key) { return !noCopyPropsPattern.test(key); } __name(propsFilter, "propsFilter"); function isPromisified(fn) { try { return fn.__isPromisified__ === true; } catch (e) { return false; } } __name(isPromisified, "isPromisified"); function hasPromisified(obj2, key, suffix) { var val = util2.getDataPropertyOrDefault( obj2, key + suffix, defaultPromisified ); return val ? isPromisified(val) : false; } __name(hasPromisified, "hasPromisified"); function checkValid(ret2, suffix, suffixRegexp) { for (var i = 0; i < ret2.length; i += 2) { var key = ret2[i]; if (suffixRegexp.test(key)) { var keyWithoutAsyncSuffix = key.replace(suffixRegexp, ""); for (var j = 0; j < ret2.length; j += 2) { if (ret2[j] === keyWithoutAsyncSuffix) { throw new TypeError2("Cannot promisify an API that has normal methods with '%s'-suffix\n\n See http://goo.gl/MqrFmX\n".replace("%s", suffix)); } } } } } __name(checkValid, "checkValid"); function promisifiableMethods(obj2, suffix, suffixRegexp, filter) { var keys = util2.inheritedDataKeys(obj2); var ret2 = []; for (var i = 0; i < keys.length; ++i) { var key = keys[i]; var value = obj2[key]; var passesDefaultFilter = filter === defaultFilter ? true : defaultFilter(key, value, obj2); if (typeof value === "function" && !isPromisified(value) && !hasPromisified(obj2, key, suffix) && filter(key, value, obj2, passesDefaultFilter)) { ret2.push(key, value); } } checkValid(ret2, suffix, suffixRegexp); return ret2; } __name(promisifiableMethods, "promisifiableMethods"); var escapeIdentRegex = /* @__PURE__ */ __name(function(str) { return str.replace(/([$])/, "\\$"); }, "escapeIdentRegex"); var makeNodePromisifiedEval; if (true) { var switchCaseArgumentOrder = /* @__PURE__ */ __name(function(likelyArgumentCount) { var ret2 = [likelyArgumentCount]; var min = Math.max(0, likelyArgumentCount - 1 - 3); for (var i = likelyArgumentCount - 1; i >= min; --i) { ret2.push(i); } for (var i = likelyArgumentCount + 1; i <= 3; ++i) { ret2.push(i); } return ret2; }, "switchCaseArgumentOrder"); var argumentSequence = /* @__PURE__ */ __name(function(argumentCount) { return util2.filledRange(argumentCount, "_arg", ""); }, "argumentSequence"); var parameterDeclaration = /* @__PURE__ */ __name(function(parameterCount2) { return util2.filledRange( Math.max(parameterCount2, 3), "_arg", "" ); }, "parameterDeclaration"); var parameterCount = /* @__PURE__ */ __name(function(fn) { if (typeof fn.length === "number") { return Math.max(Math.min(fn.length, 1023 + 1), 0); } return 0; }, "parameterCount"); makeNodePromisifiedEval = /* @__PURE__ */ __name(function(callback, receiver, originalName, fn, _2, multiArgs) { var newParameterCount = Math.max(0, parameterCount(fn) - 1); var argumentOrder = switchCaseArgumentOrder(newParameterCount); var shouldProxyThis = typeof callback === "string" || receiver === THIS; function generateCallForArgumentCount(count) { var args = argumentSequence(count).join(", "); var comma = count > 0 ? ", " : ""; var ret2; if (shouldProxyThis) { ret2 = "ret = callback.call(this, {{args}}, nodeback); break;\n"; } else { ret2 = receiver === void 0 ? "ret = callback({{args}}, nodeback); break;\n" : "ret = callback.call(receiver, {{args}}, nodeback); break;\n"; } return ret2.replace("{{args}}", args).replace(", ", comma); } __name(generateCallForArgumentCount, "generateCallForArgumentCount"); function generateArgumentSwitchCase() { var ret2 = ""; for (var i = 0; i < argumentOrder.length; ++i) { ret2 += "case " + argumentOrder[i] + ":" + generateCallForArgumentCount(argumentOrder[i]); } ret2 += " \n default: \n var args = new Array(len + 1); \n var i = 0; \n for (var i = 0; i < len; ++i) { \n args[i] = arguments[i]; \n } \n args[i] = nodeback; \n [CodeForCall] \n break; \n ".replace("[CodeForCall]", shouldProxyThis ? "ret = callback.apply(this, args);\n" : "ret = callback.apply(receiver, args);\n"); return ret2; } __name(generateArgumentSwitchCase, "generateArgumentSwitchCase"); var getFunctionCode = typeof callback === "string" ? "this != null ? this['" + callback + "'] : fn" : "fn"; var body = "'use strict'; \n var ret = function (Parameters) { \n 'use strict'; \n var len = arguments.length; \n var promise = new Promise(INTERNAL); \n promise._captureStackTrace(); \n var nodeback = nodebackForPromise(promise, " + multiArgs + "); \n var ret; \n var callback = tryCatch([GetFunctionCode]); \n switch(len) { \n [CodeForSwitchCase] \n } \n if (ret === errorObj) { \n promise._rejectCallback(maybeWrapAsError(ret.e), true, true);\n } \n if (!promise._isFateSealed()) promise._setAsyncGuaranteed(); \n return promise; \n }; \n notEnumerableProp(ret, '__isPromisified__', true); \n return ret; \n ".replace("[CodeForSwitchCase]", generateArgumentSwitchCase()).replace("[GetFunctionCode]", getFunctionCode); body = body.replace("Parameters", parameterDeclaration(newParameterCount)); return new Function( "Promise", "fn", "receiver", "withAppended", "maybeWrapAsError", "nodebackForPromise", "tryCatch", "errorObj", "notEnumerableProp", "INTERNAL", body )( Promise2, fn, receiver, withAppended2, maybeWrapAsError2, nodebackForPromise, util2.tryCatch, util2.errorObj, util2.notEnumerableProp, INTERNAL ); }, "makeNodePromisifiedEval"); } function makeNodePromisifiedClosure(callback, receiver, _2, fn, __, multiArgs) { var defaultThis = /* @__PURE__ */ (function() { return this; })(); var method = callback; if (typeof method === "string") { callback = fn; } function promisified() { var _receiver = receiver; if (receiver === THIS) _receiver = this; var promise = new Promise2(INTERNAL); promise._captureStackTrace(); var cb = typeof method === "string" && this !== defaultThis ? this[method] : callback; var fn2 = nodebackForPromise(promise, multiArgs); try { cb.apply(_receiver, withAppended2(arguments, fn2)); } catch (e) { promise._rejectCallback(maybeWrapAsError2(e), true, true); } if (!promise._isFateSealed()) promise._setAsyncGuaranteed(); return promise; } __name(promisified, "promisified"); util2.notEnumerableProp(promisified, "__isPromisified__", true); return promisified; } __name(makeNodePromisifiedClosure, "makeNodePromisifiedClosure"); var makeNodePromisified = canEvaluate2 ? makeNodePromisifiedEval : makeNodePromisifiedClosure; function promisifyAll(obj2, suffix, filter, promisifier, multiArgs) { var suffixRegexp = new RegExp(escapeIdentRegex(suffix) + "$"); var methods = promisifiableMethods(obj2, suffix, suffixRegexp, filter); for (var i = 0, len = methods.length; i < len; i += 2) { var key = methods[i]; var fn = methods[i + 1]; var promisifiedKey = key + suffix; if (promisifier === makeNodePromisified) { obj2[promisifiedKey] = makeNodePromisified(key, THIS, key, fn, suffix, multiArgs); } else { var promisified = promisifier(fn, function() { return makeNodePromisified( key, THIS, key, fn, suffix, multiArgs ); }); util2.notEnumerableProp(promisified, "__isPromisified__", true); obj2[promisifiedKey] = promisified; } } util2.toFastProperties(obj2); return obj2; } __name(promisifyAll, "promisifyAll"); function promisify(callback, receiver, multiArgs) { return makeNodePromisified( callback, receiver, void 0, callback, null, multiArgs ); } __name(promisify, "promisify"); Promise2.promisify = function(fn, options) { if (typeof fn !== "function") { throw new TypeError2("expecting a function but got " + util2.classString(fn)); } if (isPromisified(fn)) { return fn; } options = Object(options); var receiver = options.context === void 0 ? THIS : options.context; var multiArgs = !!options.multiArgs; var ret2 = promisify(fn, receiver, multiArgs); util2.copyDescriptors(fn, ret2, propsFilter); return ret2; }; Promise2.promisifyAll = function(target, options) { if (typeof target !== "function" && typeof target !== "object") { throw new TypeError2("the target of promisifyAll must be an object or a function\n\n See http://goo.gl/MqrFmX\n"); } options = Object(options); var multiArgs = !!options.multiArgs; var suffix = options.suffix; if (typeof suffix !== "string") suffix = defaultSuffix; var filter = options.filter; if (typeof filter !== "function") filter = defaultFilter; var promisifier = options.promisifier; if (typeof promisifier !== "function") promisifier = makeNodePromisified; if (!util2.isIdentifier(suffix)) { throw new RangeError("suffix must be a valid identifier\n\n See http://goo.gl/MqrFmX\n"); } var keys = util2.inheritedDataKeys(target); for (var i = 0; i < keys.length; ++i) { var value = target[keys[i]]; if (keys[i] !== "constructor" && util2.isClass(value)) { promisifyAll( value.prototype, suffix, filter, promisifier, multiArgs ); promisifyAll(value, suffix, filter, promisifier, multiArgs); } } return promisifyAll(target, suffix, filter, promisifier, multiArgs); }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/props.js var require_props = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/props.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, PromiseArray, tryConvertToPromise, apiRejection) { var util2 = require_util6(); var isObject2 = util2.isObject; var es52 = require_es5(); var Es6Map; if (typeof Map === "function") Es6Map = Map; var mapToEntries = /* @__PURE__ */ (function() { var index = 0; var size = 0; function extractEntry(value, key) { this[index] = value; this[index + size] = key; index++; } __name(extractEntry, "extractEntry"); return /* @__PURE__ */ __name(function mapToEntries2(map) { size = map.size; index = 0; var ret2 = new Array(map.size * 2); map.forEach(extractEntry, ret2); return ret2; }, "mapToEntries"); })(); var entriesToMap = /* @__PURE__ */ __name(function(entries) { var ret2 = new Es6Map(); var length = entries.length / 2 | 0; for (var i = 0; i < length; ++i) { var key = entries[length + i]; var value = entries[i]; ret2.set(key, value); } return ret2; }, "entriesToMap"); function PropertiesPromiseArray(obj2) { var isMap = false; var entries; if (Es6Map !== void 0 && obj2 instanceof Es6Map) { entries = mapToEntries(obj2); isMap = true; } else { var keys = es52.keys(obj2); var len = keys.length; entries = new Array(len * 2); for (var i = 0; i < len; ++i) { var key = keys[i]; entries[i] = obj2[key]; entries[i + len] = key; } } this.constructor$(entries); this._isMap = isMap; this._init$(void 0, -3); } __name(PropertiesPromiseArray, "PropertiesPromiseArray"); util2.inherits(PropertiesPromiseArray, PromiseArray); PropertiesPromiseArray.prototype._init = function() { }; PropertiesPromiseArray.prototype._promiseFulfilled = function(value, index) { this._values[index] = value; var totalResolved = ++this._totalResolved; if (totalResolved >= this._length) { var val; if (this._isMap) { val = entriesToMap(this._values); } else { val = {}; var keyOffset = this.length(); for (var i = 0, len = this.length(); i < len; ++i) { val[this._values[i + keyOffset]] = this._values[i]; } } this._resolve(val); return true; } return false; }; PropertiesPromiseArray.prototype.shouldCopyValues = function() { return false; }; PropertiesPromiseArray.prototype.getActualLength = function(len) { return len >> 1; }; function props(promises) { var ret2; var castValue = tryConvertToPromise(promises); if (!isObject2(castValue)) { return apiRejection("cannot await properties of a non-object\n\n See http://goo.gl/MqrFmX\n"); } else if (castValue instanceof Promise2) { ret2 = castValue._then( Promise2.props, void 0, void 0, void 0, void 0 ); } else { ret2 = new PropertiesPromiseArray(castValue).promise(); } if (castValue instanceof Promise2) { ret2._propagateFrom(castValue, 2); } return ret2; } __name(props, "props"); Promise2.prototype.props = function() { return props(this); }; Promise2.props = function(promises) { return props(promises); }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/race.js var require_race3 = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/race.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, INTERNAL, tryConvertToPromise, apiRejection) { var util2 = require_util6(); var raceLater = /* @__PURE__ */ __name(function(promise) { return promise.then(function(array) { return race(array, promise); }); }, "raceLater"); function race(promises, parent) { var maybePromise = tryConvertToPromise(promises); if (maybePromise instanceof Promise2) { return raceLater(maybePromise); } else { promises = util2.asArray(promises); if (promises === null) return apiRejection("expecting an array or an iterable object but got " + util2.classString(promises)); } var ret2 = new Promise2(INTERNAL); if (parent !== void 0) { ret2._propagateFrom(parent, 3); } var fulfill = ret2._fulfill; var reject = ret2._reject; for (var i = 0, len = promises.length; i < len; ++i) { var val = promises[i]; if (val === void 0 && !(i in promises)) { continue; } Promise2.cast(val)._then(fulfill, reject, void 0, ret2, null); } return ret2; } __name(race, "race"); Promise2.race = function(promises) { return race(promises, void 0); }; Promise2.prototype.race = function() { return race(this, void 0); }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/reduce.js var require_reduce2 = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/reduce.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, PromiseArray, apiRejection, tryConvertToPromise, INTERNAL, debug) { var getDomain = Promise2._getDomain; var util2 = require_util6(); var tryCatch2 = util2.tryCatch; function ReductionPromiseArray(promises, fn, initialValue, _each) { this.constructor$(promises); var domain = getDomain(); this._fn = domain === null ? fn : util2.domainBind(domain, fn); if (initialValue !== void 0) { initialValue = Promise2.resolve(initialValue); initialValue._attachCancellationCallback(this); } this._initialValue = initialValue; this._currentCancellable = null; if (_each === INTERNAL) { this._eachValues = Array(this._length); } else if (_each === 0) { this._eachValues = null; } else { this._eachValues = void 0; } this._promise._captureStackTrace(); this._init$(void 0, -5); } __name(ReductionPromiseArray, "ReductionPromiseArray"); util2.inherits(ReductionPromiseArray, PromiseArray); ReductionPromiseArray.prototype._gotAccum = function(accum) { if (this._eachValues !== void 0 && this._eachValues !== null && accum !== INTERNAL) { this._eachValues.push(accum); } }; ReductionPromiseArray.prototype._eachComplete = function(value) { if (this._eachValues !== null) { this._eachValues.push(value); } return this._eachValues; }; ReductionPromiseArray.prototype._init = function() { }; ReductionPromiseArray.prototype._resolveEmptyArray = function() { this._resolve(this._eachValues !== void 0 ? this._eachValues : this._initialValue); }; ReductionPromiseArray.prototype.shouldCopyValues = function() { return false; }; ReductionPromiseArray.prototype._resolve = function(value) { this._promise._resolveCallback(value); this._values = null; }; ReductionPromiseArray.prototype._resultCancelled = function(sender) { if (sender === this._initialValue) return this._cancel(); if (this._isResolved()) return; this._resultCancelled$(); if (this._currentCancellable instanceof Promise2) { this._currentCancellable.cancel(); } if (this._initialValue instanceof Promise2) { this._initialValue.cancel(); } }; ReductionPromiseArray.prototype._iterate = function(values) { this._values = values; var value; var i; var length = values.length; if (this._initialValue !== void 0) { value = this._initialValue; i = 0; } else { value = Promise2.resolve(values[0]); i = 1; } this._currentCancellable = value; if (!value.isRejected()) { for (; i < length; ++i) { var ctx = { accum: null, value: values[i], index: i, length, array: this }; value = value._then(gotAccum, void 0, void 0, ctx, void 0); } } if (this._eachValues !== void 0) { value = value._then(this._eachComplete, void 0, void 0, this, void 0); } value._then(completed, completed, void 0, value, this); }; Promise2.prototype.reduce = function(fn, initialValue) { return reduce(this, fn, initialValue, null); }; Promise2.reduce = function(promises, fn, initialValue, _each) { return reduce(promises, fn, initialValue, _each); }; function completed(valueOrReason, array) { if (this.isFulfilled()) { array._resolve(valueOrReason); } else { array._reject(valueOrReason); } } __name(completed, "completed"); function reduce(promises, fn, initialValue, _each) { if (typeof fn !== "function") { return apiRejection("expecting a function but got " + util2.classString(fn)); } var array = new ReductionPromiseArray(promises, fn, initialValue, _each); return array.promise(); } __name(reduce, "reduce"); function gotAccum(accum) { this.accum = accum; this.array._gotAccum(accum); var value = tryConvertToPromise(this.value, this.array._promise); if (value instanceof Promise2) { this.array._currentCancellable = value; return value._then(gotValue, void 0, void 0, this, void 0); } else { return gotValue.call(this, value); } } __name(gotAccum, "gotAccum"); function gotValue(value) { var array = this.array; var promise = array._promise; var fn = tryCatch2(array._fn); promise._pushContext(); var ret2; if (array._eachValues !== void 0) { ret2 = fn.call(promise._boundValue(), value, this.index, this.length); } else { ret2 = fn.call( promise._boundValue(), this.accum, value, this.index, this.length ); } if (ret2 instanceof Promise2) { array._currentCancellable = ret2; } var promiseCreated = promise._popContext(); debug.checkForgottenReturns( ret2, promiseCreated, array._eachValues !== void 0 ? "Promise.each" : "Promise.reduce", promise ); return ret2; } __name(gotValue, "gotValue"); }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/settle.js var require_settle = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/settle.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, PromiseArray, debug) { var PromiseInspection = Promise2.PromiseInspection; var util2 = require_util6(); function SettledPromiseArray(values) { this.constructor$(values); } __name(SettledPromiseArray, "SettledPromiseArray"); util2.inherits(SettledPromiseArray, PromiseArray); SettledPromiseArray.prototype._promiseResolved = function(index, inspection) { this._values[index] = inspection; var totalResolved = ++this._totalResolved; if (totalResolved >= this._length) { this._resolve(this._values); return true; } return false; }; SettledPromiseArray.prototype._promiseFulfilled = function(value, index) { var ret2 = new PromiseInspection(); ret2._bitField = 33554432; ret2._settledValueField = value; return this._promiseResolved(index, ret2); }; SettledPromiseArray.prototype._promiseRejected = function(reason, index) { var ret2 = new PromiseInspection(); ret2._bitField = 16777216; ret2._settledValueField = reason; return this._promiseResolved(index, ret2); }; Promise2.settle = function(promises) { debug.deprecated(".settle()", ".reflect()"); return new SettledPromiseArray(promises).promise(); }; Promise2.prototype.settle = function() { return Promise2.settle(this); }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/some.js var require_some = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/some.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, PromiseArray, apiRejection) { var util2 = require_util6(); var RangeError2 = require_errors7().RangeError; var AggregateError2 = require_errors7().AggregateError; var isArray = util2.isArray; var CANCELLATION = {}; function SomePromiseArray(values) { this.constructor$(values); this._howMany = 0; this._unwrap = false; this._initialized = false; } __name(SomePromiseArray, "SomePromiseArray"); util2.inherits(SomePromiseArray, PromiseArray); SomePromiseArray.prototype._init = function() { if (!this._initialized) { return; } if (this._howMany === 0) { this._resolve([]); return; } this._init$(void 0, -5); var isArrayResolved = isArray(this._values); if (!this._isResolved() && isArrayResolved && this._howMany > this._canPossiblyFulfill()) { this._reject(this._getRangeError(this.length())); } }; SomePromiseArray.prototype.init = function() { this._initialized = true; this._init(); }; SomePromiseArray.prototype.setUnwrap = function() { this._unwrap = true; }; SomePromiseArray.prototype.howMany = function() { return this._howMany; }; SomePromiseArray.prototype.setHowMany = function(count) { this._howMany = count; }; SomePromiseArray.prototype._promiseFulfilled = function(value) { this._addFulfilled(value); if (this._fulfilled() === this.howMany()) { this._values.length = this.howMany(); if (this.howMany() === 1 && this._unwrap) { this._resolve(this._values[0]); } else { this._resolve(this._values); } return true; } return false; }; SomePromiseArray.prototype._promiseRejected = function(reason) { this._addRejected(reason); return this._checkOutcome(); }; SomePromiseArray.prototype._promiseCancelled = function() { if (this._values instanceof Promise2 || this._values == null) { return this._cancel(); } this._addRejected(CANCELLATION); return this._checkOutcome(); }; SomePromiseArray.prototype._checkOutcome = function() { if (this.howMany() > this._canPossiblyFulfill()) { var e = new AggregateError2(); for (var i = this.length(); i < this._values.length; ++i) { if (this._values[i] !== CANCELLATION) { e.push(this._values[i]); } } if (e.length > 0) { this._reject(e); } else { this._cancel(); } return true; } return false; }; SomePromiseArray.prototype._fulfilled = function() { return this._totalResolved; }; SomePromiseArray.prototype._rejected = function() { return this._values.length - this.length(); }; SomePromiseArray.prototype._addRejected = function(reason) { this._values.push(reason); }; SomePromiseArray.prototype._addFulfilled = function(value) { this._values[this._totalResolved++] = value; }; SomePromiseArray.prototype._canPossiblyFulfill = function() { return this.length() - this._rejected(); }; SomePromiseArray.prototype._getRangeError = function(count) { var message = "Input array must contain at least " + this._howMany + " items but contains only " + count + " items"; return new RangeError2(message); }; SomePromiseArray.prototype._resolveEmptyArray = function() { this._reject(this._getRangeError(0)); }; function some(promises, howMany) { if ((howMany | 0) !== howMany || howMany < 0) { return apiRejection("expecting a positive integer\n\n See http://goo.gl/MqrFmX\n"); } var ret2 = new SomePromiseArray(promises); var promise = ret2.promise(); ret2.setHowMany(howMany); ret2.init(); return promise; } __name(some, "some"); Promise2.some = function(promises, howMany) { return some(promises, howMany); }; Promise2.prototype.some = function(howMany) { return some(this, howMany); }; Promise2._SomePromiseArray = SomePromiseArray; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/filter.js var require_filter3 = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/filter.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, INTERNAL) { var PromiseMap = Promise2.map; Promise2.prototype.filter = function(fn, options) { return PromiseMap(this, fn, options, INTERNAL); }; Promise2.filter = function(promises, fn, options) { return PromiseMap(promises, fn, options, INTERNAL); }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/each.js var require_each = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/each.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2, INTERNAL) { var PromiseReduce = Promise2.reduce; var PromiseAll = Promise2.all; function promiseAllThis() { return PromiseAll(this); } __name(promiseAllThis, "promiseAllThis"); function PromiseMapSeries(promises, fn) { return PromiseReduce(promises, fn, INTERNAL, INTERNAL); } __name(PromiseMapSeries, "PromiseMapSeries"); Promise2.prototype.each = function(fn) { return PromiseReduce(this, fn, INTERNAL, 0)._then(promiseAllThis, void 0, void 0, this, void 0); }; Promise2.prototype.mapSeries = function(fn) { return PromiseReduce(this, fn, INTERNAL, INTERNAL); }; Promise2.each = function(promises, fn) { return PromiseReduce(promises, fn, INTERNAL, 0)._then(promiseAllThis, void 0, void 0, promises, void 0); }; Promise2.mapSeries = PromiseMapSeries; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/any.js var require_any = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/any.js"(exports2, module2) { "use strict"; module2.exports = function(Promise2) { var SomePromiseArray = Promise2._SomePromiseArray; function any(promises) { var ret2 = new SomePromiseArray(promises); var promise = ret2.promise(); ret2.setHowMany(1); ret2.setUnwrap(); ret2.init(); return promise; } __name(any, "any"); Promise2.any = function(promises) { return any(promises); }; Promise2.prototype.any = function() { return any(this); }; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promise.js var require_promise = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/promise.js"(exports2, module2) { "use strict"; module2.exports = function() { var makeSelfResolutionError = /* @__PURE__ */ __name(function() { return new TypeError2("circular promise resolution chain\n\n See http://goo.gl/MqrFmX\n"); }, "makeSelfResolutionError"); var reflectHandler = /* @__PURE__ */ __name(function() { return new Promise2.PromiseInspection(this._target()); }, "reflectHandler"); var apiRejection = /* @__PURE__ */ __name(function(msg) { return Promise2.reject(new TypeError2(msg)); }, "apiRejection"); function Proxyable() { } __name(Proxyable, "Proxyable"); var UNDEFINED_BINDING = {}; var util2 = require_util6(); var getDomain; if (util2.isNode) { getDomain = /* @__PURE__ */ __name(function() { var ret2 = process.domain; if (ret2 === void 0) ret2 = null; return ret2; }, "getDomain"); } else { getDomain = /* @__PURE__ */ __name(function() { return null; }, "getDomain"); } util2.notEnumerableProp(Promise2, "_getDomain", getDomain); var es52 = require_es5(); var Async = require_async3(); var async = new Async(); es52.defineProperty(Promise2, "_async", { value: async }); var errors = require_errors7(); var TypeError2 = Promise2.TypeError = errors.TypeError; Promise2.RangeError = errors.RangeError; var CancellationError = Promise2.CancellationError = errors.CancellationError; Promise2.TimeoutError = errors.TimeoutError; Promise2.OperationalError = errors.OperationalError; Promise2.RejectionError = errors.OperationalError; Promise2.AggregateError = errors.AggregateError; var INTERNAL = /* @__PURE__ */ __name(function() { }, "INTERNAL"); var APPLY = {}; var NEXT_FILTER = {}; var tryConvertToPromise = require_thenables()(Promise2, INTERNAL); var PromiseArray = require_promise_array()( Promise2, INTERNAL, tryConvertToPromise, apiRejection, Proxyable ); var Context = require_context()(Promise2); var createContext = Context.create; var debug = require_debuggability()(Promise2, Context); var CapturedTrace = debug.CapturedTrace; var PassThroughHandlerContext = require_finally()(Promise2, tryConvertToPromise); var catchFilter = require_catch_filter()(NEXT_FILTER); var nodebackForPromise = require_nodeback(); var errorObj2 = util2.errorObj; var tryCatch2 = util2.tryCatch; function check(self2, executor) { if (typeof executor !== "function") { throw new TypeError2("expecting a function but got " + util2.classString(executor)); } if (self2.constructor !== Promise2) { throw new TypeError2("the promise constructor cannot be invoked directly\n\n See http://goo.gl/MqrFmX\n"); } } __name(check, "check"); function Promise2(executor) { this._bitField = 0; this._fulfillmentHandler0 = void 0; this._rejectionHandler0 = void 0; this._promise0 = void 0; this._receiver0 = void 0; if (executor !== INTERNAL) { check(this, executor); this._resolveFromExecutor(executor); } this._promiseCreated(); this._fireEvent("promiseCreated", this); } __name(Promise2, "Promise"); Promise2.prototype.toString = function() { return "[object Promise]"; }; Promise2.prototype.caught = Promise2.prototype["catch"] = function(fn) { var len = arguments.length; if (len > 1) { var catchInstances = new Array(len - 1), j = 0, i; for (i = 0; i < len - 1; ++i) { var item = arguments[i]; if (util2.isObject(item)) { catchInstances[j++] = item; } else { return apiRejection("expecting an object but got A catch statement predicate " + util2.classString(item)); } } catchInstances.length = j; fn = arguments[i]; return this.then(void 0, catchFilter(catchInstances, fn, this)); } return this.then(void 0, fn); }; Promise2.prototype.reflect = function() { return this._then( reflectHandler, reflectHandler, void 0, this, void 0 ); }; Promise2.prototype.then = function(didFulfill, didReject) { if (debug.warnings() && arguments.length > 0 && typeof didFulfill !== "function" && typeof didReject !== "function") { var msg = ".then() only accepts functions but was passed: " + util2.classString(didFulfill); if (arguments.length > 1) { msg += ", " + util2.classString(didReject); } this._warn(msg); } return this._then(didFulfill, didReject, void 0, void 0, void 0); }; Promise2.prototype.done = function(didFulfill, didReject) { var promise = this._then(didFulfill, didReject, void 0, void 0, void 0); promise._setIsFinal(); }; Promise2.prototype.spread = function(fn) { if (typeof fn !== "function") { return apiRejection("expecting a function but got " + util2.classString(fn)); } return this.all()._then(fn, void 0, void 0, APPLY, void 0); }; Promise2.prototype.toJSON = function() { var ret2 = { isFulfilled: false, isRejected: false, fulfillmentValue: void 0, rejectionReason: void 0 }; if (this.isFulfilled()) { ret2.fulfillmentValue = this.value(); ret2.isFulfilled = true; } else if (this.isRejected()) { ret2.rejectionReason = this.reason(); ret2.isRejected = true; } return ret2; }; Promise2.prototype.all = function() { if (arguments.length > 0) { this._warn(".all() was passed arguments but it does not take any"); } return new PromiseArray(this).promise(); }; Promise2.prototype.error = function(fn) { return this.caught(util2.originatesFromRejection, fn); }; Promise2.getNewLibraryCopy = module2.exports; Promise2.is = function(val) { return val instanceof Promise2; }; Promise2.fromNode = Promise2.fromCallback = function(fn) { var ret2 = new Promise2(INTERNAL); ret2._captureStackTrace(); var multiArgs = arguments.length > 1 ? !!Object(arguments[1]).multiArgs : false; var result = tryCatch2(fn)(nodebackForPromise(ret2, multiArgs)); if (result === errorObj2) { ret2._rejectCallback(result.e, true); } if (!ret2._isFateSealed()) ret2._setAsyncGuaranteed(); return ret2; }; Promise2.all = function(promises) { return new PromiseArray(promises).promise(); }; Promise2.cast = function(obj2) { var ret2 = tryConvertToPromise(obj2); if (!(ret2 instanceof Promise2)) { ret2 = new Promise2(INTERNAL); ret2._captureStackTrace(); ret2._setFulfilled(); ret2._rejectionHandler0 = obj2; } return ret2; }; Promise2.resolve = Promise2.fulfilled = Promise2.cast; Promise2.reject = Promise2.rejected = function(reason) { var ret2 = new Promise2(INTERNAL); ret2._captureStackTrace(); ret2._rejectCallback(reason, true); return ret2; }; Promise2.setScheduler = function(fn) { if (typeof fn !== "function") { throw new TypeError2("expecting a function but got " + util2.classString(fn)); } return async.setScheduler(fn); }; Promise2.prototype._then = function(didFulfill, didReject, _2, receiver, internalData) { var haveInternalData = internalData !== void 0; var promise = haveInternalData ? internalData : new Promise2(INTERNAL); var target = this._target(); var bitField = target._bitField; if (!haveInternalData) { promise._propagateFrom(this, 3); promise._captureStackTrace(); if (receiver === void 0 && (this._bitField & 2097152) !== 0) { if (!((bitField & 50397184) === 0)) { receiver = this._boundValue(); } else { receiver = target === this ? void 0 : this._boundTo; } } this._fireEvent("promiseChained", this, promise); } var domain = getDomain(); if (!((bitField & 50397184) === 0)) { var handler, value, settler = target._settlePromiseCtx; if ((bitField & 33554432) !== 0) { value = target._rejectionHandler0; handler = didFulfill; } else if ((bitField & 16777216) !== 0) { value = target._fulfillmentHandler0; handler = didReject; target._unsetRejectionIsUnhandled(); } else { settler = target._settlePromiseLateCancellationObserver; value = new CancellationError("late cancellation observer"); target._attachExtraTrace(value); handler = didReject; } async.invoke(settler, target, { handler: domain === null ? handler : typeof handler === "function" && util2.domainBind(domain, handler), promise, receiver, value }); } else { target._addCallbacks(didFulfill, didReject, promise, receiver, domain); } return promise; }; Promise2.prototype._length = function() { return this._bitField & 65535; }; Promise2.prototype._isFateSealed = function() { return (this._bitField & 117506048) !== 0; }; Promise2.prototype._isFollowing = function() { return (this._bitField & 67108864) === 67108864; }; Promise2.prototype._setLength = function(len) { this._bitField = this._bitField & -65536 | len & 65535; }; Promise2.prototype._setFulfilled = function() { this._bitField = this._bitField | 33554432; this._fireEvent("promiseFulfilled", this); }; Promise2.prototype._setRejected = function() { this._bitField = this._bitField | 16777216; this._fireEvent("promiseRejected", this); }; Promise2.prototype._setFollowing = function() { this._bitField = this._bitField | 67108864; this._fireEvent("promiseResolved", this); }; Promise2.prototype._setIsFinal = function() { this._bitField = this._bitField | 4194304; }; Promise2.prototype._isFinal = function() { return (this._bitField & 4194304) > 0; }; Promise2.prototype._unsetCancelled = function() { this._bitField = this._bitField & ~65536; }; Promise2.prototype._setCancelled = function() { this._bitField = this._bitField | 65536; this._fireEvent("promiseCancelled", this); }; Promise2.prototype._setWillBeCancelled = function() { this._bitField = this._bitField | 8388608; }; Promise2.prototype._setAsyncGuaranteed = function() { if (async.hasCustomScheduler()) return; this._bitField = this._bitField | 134217728; }; Promise2.prototype._receiverAt = function(index) { var ret2 = index === 0 ? this._receiver0 : this[index * 4 - 4 + 3]; if (ret2 === UNDEFINED_BINDING) { return void 0; } else if (ret2 === void 0 && this._isBound()) { return this._boundValue(); } return ret2; }; Promise2.prototype._promiseAt = function(index) { return this[index * 4 - 4 + 2]; }; Promise2.prototype._fulfillmentHandlerAt = function(index) { return this[index * 4 - 4 + 0]; }; Promise2.prototype._rejectionHandlerAt = function(index) { return this[index * 4 - 4 + 1]; }; Promise2.prototype._boundValue = function() { }; Promise2.prototype._migrateCallback0 = function(follower) { var bitField = follower._bitField; var fulfill = follower._fulfillmentHandler0; var reject = follower._rejectionHandler0; var promise = follower._promise0; var receiver = follower._receiverAt(0); if (receiver === void 0) receiver = UNDEFINED_BINDING; this._addCallbacks(fulfill, reject, promise, receiver, null); }; Promise2.prototype._migrateCallbackAt = function(follower, index) { var fulfill = follower._fulfillmentHandlerAt(index); var reject = follower._rejectionHandlerAt(index); var promise = follower._promiseAt(index); var receiver = follower._receiverAt(index); if (receiver === void 0) receiver = UNDEFINED_BINDING; this._addCallbacks(fulfill, reject, promise, receiver, null); }; Promise2.prototype._addCallbacks = function(fulfill, reject, promise, receiver, domain) { var index = this._length(); if (index >= 65535 - 4) { index = 0; this._setLength(0); } if (index === 0) { this._promise0 = promise; this._receiver0 = receiver; if (typeof fulfill === "function") { this._fulfillmentHandler0 = domain === null ? fulfill : util2.domainBind(domain, fulfill); } if (typeof reject === "function") { this._rejectionHandler0 = domain === null ? reject : util2.domainBind(domain, reject); } } else { var base = index * 4 - 4; this[base + 2] = promise; this[base + 3] = receiver; if (typeof fulfill === "function") { this[base + 0] = domain === null ? fulfill : util2.domainBind(domain, fulfill); } if (typeof reject === "function") { this[base + 1] = domain === null ? reject : util2.domainBind(domain, reject); } } this._setLength(index + 1); return index; }; Promise2.prototype._proxy = function(proxyable, arg) { this._addCallbacks(void 0, void 0, arg, proxyable, null); }; Promise2.prototype._resolveCallback = function(value, shouldBind) { if ((this._bitField & 117506048) !== 0) return; if (value === this) return this._rejectCallback(makeSelfResolutionError(), false); var maybePromise = tryConvertToPromise(value, this); if (!(maybePromise instanceof Promise2)) return this._fulfill(value); if (shouldBind) this._propagateFrom(maybePromise, 2); var promise = maybePromise._target(); if (promise === this) { this._reject(makeSelfResolutionError()); return; } var bitField = promise._bitField; if ((bitField & 50397184) === 0) { var len = this._length(); if (len > 0) promise._migrateCallback0(this); for (var i = 1; i < len; ++i) { promise._migrateCallbackAt(this, i); } this._setFollowing(); this._setLength(0); this._setFollowee(promise); } else if ((bitField & 33554432) !== 0) { this._fulfill(promise._value()); } else if ((bitField & 16777216) !== 0) { this._reject(promise._reason()); } else { var reason = new CancellationError("late cancellation observer"); promise._attachExtraTrace(reason); this._reject(reason); } }; Promise2.prototype._rejectCallback = function(reason, synchronous, ignoreNonErrorWarnings) { var trace = util2.ensureErrorObject(reason); var hasStack = trace === reason; if (!hasStack && !ignoreNonErrorWarnings && debug.warnings()) { var message = "a promise was rejected with a non-error: " + util2.classString(reason); this._warn(message, true); } this._attachExtraTrace(trace, synchronous ? hasStack : false); this._reject(reason); }; Promise2.prototype._resolveFromExecutor = function(executor) { var promise = this; this._captureStackTrace(); this._pushContext(); var synchronous = true; var r = this._execute(executor, function(value) { promise._resolveCallback(value); }, function(reason) { promise._rejectCallback(reason, synchronous); }); synchronous = false; this._popContext(); if (r !== void 0) { promise._rejectCallback(r, true); } }; Promise2.prototype._settlePromiseFromHandler = function(handler, receiver, value, promise) { var bitField = promise._bitField; if ((bitField & 65536) !== 0) return; promise._pushContext(); var x; if (receiver === APPLY) { if (!value || typeof value.length !== "number") { x = errorObj2; x.e = new TypeError2("cannot .spread() a non-array: " + util2.classString(value)); } else { x = tryCatch2(handler).apply(this._boundValue(), value); } } else { x = tryCatch2(handler).call(receiver, value); } var promiseCreated = promise._popContext(); bitField = promise._bitField; if ((bitField & 65536) !== 0) return; if (x === NEXT_FILTER) { promise._reject(value); } else if (x === errorObj2) { promise._rejectCallback(x.e, false); } else { debug.checkForgottenReturns(x, promiseCreated, "", promise, this); promise._resolveCallback(x); } }; Promise2.prototype._target = function() { var ret2 = this; while (ret2._isFollowing()) ret2 = ret2._followee(); return ret2; }; Promise2.prototype._followee = function() { return this._rejectionHandler0; }; Promise2.prototype._setFollowee = function(promise) { this._rejectionHandler0 = promise; }; Promise2.prototype._settlePromise = function(promise, handler, receiver, value) { var isPromise = promise instanceof Promise2; var bitField = this._bitField; var asyncGuaranteed = (bitField & 134217728) !== 0; if ((bitField & 65536) !== 0) { if (isPromise) promise._invokeInternalOnCancel(); if (receiver instanceof PassThroughHandlerContext && receiver.isFinallyHandler()) { receiver.cancelPromise = promise; if (tryCatch2(handler).call(receiver, value) === errorObj2) { promise._reject(errorObj2.e); } } else if (handler === reflectHandler) { promise._fulfill(reflectHandler.call(receiver)); } else if (receiver instanceof Proxyable) { receiver._promiseCancelled(promise); } else if (isPromise || promise instanceof PromiseArray) { promise._cancel(); } else { receiver.cancel(); } } else if (typeof handler === "function") { if (!isPromise) { handler.call(receiver, value, promise); } else { if (asyncGuaranteed) promise._setAsyncGuaranteed(); this._settlePromiseFromHandler(handler, receiver, value, promise); } } else if (receiver instanceof Proxyable) { if (!receiver._isResolved()) { if ((bitField & 33554432) !== 0) { receiver._promiseFulfilled(value, promise); } else { receiver._promiseRejected(value, promise); } } } else if (isPromise) { if (asyncGuaranteed) promise._setAsyncGuaranteed(); if ((bitField & 33554432) !== 0) { promise._fulfill(value); } else { promise._reject(value); } } }; Promise2.prototype._settlePromiseLateCancellationObserver = function(ctx) { var handler = ctx.handler; var promise = ctx.promise; var receiver = ctx.receiver; var value = ctx.value; if (typeof handler === "function") { if (!(promise instanceof Promise2)) { handler.call(receiver, value, promise); } else { this._settlePromiseFromHandler(handler, receiver, value, promise); } } else if (promise instanceof Promise2) { promise._reject(value); } }; Promise2.prototype._settlePromiseCtx = function(ctx) { this._settlePromise(ctx.promise, ctx.handler, ctx.receiver, ctx.value); }; Promise2.prototype._settlePromise0 = function(handler, value, bitField) { var promise = this._promise0; var receiver = this._receiverAt(0); this._promise0 = void 0; this._receiver0 = void 0; this._settlePromise(promise, handler, receiver, value); }; Promise2.prototype._clearCallbackDataAtIndex = function(index) { var base = index * 4 - 4; this[base + 2] = this[base + 3] = this[base + 0] = this[base + 1] = void 0; }; Promise2.prototype._fulfill = function(value) { var bitField = this._bitField; if ((bitField & 117506048) >>> 16) return; if (value === this) { var err = makeSelfResolutionError(); this._attachExtraTrace(err); return this._reject(err); } this._setFulfilled(); this._rejectionHandler0 = value; if ((bitField & 65535) > 0) { if ((bitField & 134217728) !== 0) { this._settlePromises(); } else { async.settlePromises(this); } } }; Promise2.prototype._reject = function(reason) { var bitField = this._bitField; if ((bitField & 117506048) >>> 16) return; this._setRejected(); this._fulfillmentHandler0 = reason; if (this._isFinal()) { return async.fatalError(reason, util2.isNode); } if ((bitField & 65535) > 0) { async.settlePromises(this); } else { this._ensurePossibleRejectionHandled(); } }; Promise2.prototype._fulfillPromises = function(len, value) { for (var i = 1; i < len; i++) { var handler = this._fulfillmentHandlerAt(i); var promise = this._promiseAt(i); var receiver = this._receiverAt(i); this._clearCallbackDataAtIndex(i); this._settlePromise(promise, handler, receiver, value); } }; Promise2.prototype._rejectPromises = function(len, reason) { for (var i = 1; i < len; i++) { var handler = this._rejectionHandlerAt(i); var promise = this._promiseAt(i); var receiver = this._receiverAt(i); this._clearCallbackDataAtIndex(i); this._settlePromise(promise, handler, receiver, reason); } }; Promise2.prototype._settlePromises = function() { var bitField = this._bitField; var len = bitField & 65535; if (len > 0) { if ((bitField & 16842752) !== 0) { var reason = this._fulfillmentHandler0; this._settlePromise0(this._rejectionHandler0, reason, bitField); this._rejectPromises(len, reason); } else { var value = this._rejectionHandler0; this._settlePromise0(this._fulfillmentHandler0, value, bitField); this._fulfillPromises(len, value); } this._setLength(0); } this._clearCancellationData(); }; Promise2.prototype._settledValue = function() { var bitField = this._bitField; if ((bitField & 33554432) !== 0) { return this._rejectionHandler0; } else if ((bitField & 16777216) !== 0) { return this._fulfillmentHandler0; } }; function deferResolve(v) { this.promise._resolveCallback(v); } __name(deferResolve, "deferResolve"); function deferReject(v) { this.promise._rejectCallback(v, false); } __name(deferReject, "deferReject"); Promise2.defer = Promise2.pending = function() { debug.deprecated("Promise.defer", "new Promise"); var promise = new Promise2(INTERNAL); return { promise, resolve: deferResolve, reject: deferReject }; }; util2.notEnumerableProp( Promise2, "_makeSelfResolutionError", makeSelfResolutionError ); require_method()( Promise2, INTERNAL, tryConvertToPromise, apiRejection, debug ); require_bind()(Promise2, INTERNAL, tryConvertToPromise, debug); require_cancel()(Promise2, PromiseArray, apiRejection, debug); require_direct_resolve()(Promise2); require_synchronous_inspection()(Promise2); require_join()( Promise2, PromiseArray, tryConvertToPromise, INTERNAL, async, getDomain ); Promise2.Promise = Promise2; Promise2.version = "3.4.7"; require_map4()(Promise2, PromiseArray, apiRejection, tryConvertToPromise, INTERNAL, debug); require_call_get()(Promise2); require_using2()(Promise2, apiRejection, tryConvertToPromise, createContext, INTERNAL, debug); require_timers()(Promise2, INTERNAL, debug); require_generators()(Promise2, apiRejection, INTERNAL, tryConvertToPromise, Proxyable, debug); require_nodeify()(Promise2); require_promisify()(Promise2, INTERNAL); require_props()(Promise2, PromiseArray, tryConvertToPromise, apiRejection); require_race3()(Promise2, INTERNAL, tryConvertToPromise, apiRejection); require_reduce2()(Promise2, PromiseArray, apiRejection, tryConvertToPromise, INTERNAL, debug); require_settle()(Promise2, PromiseArray, debug); require_some()(Promise2, PromiseArray, apiRejection); require_filter3()(Promise2, INTERNAL); require_each()(Promise2, INTERNAL); require_any()(Promise2); util2.toFastProperties(Promise2); util2.toFastProperties(Promise2.prototype); function fillTypes(value) { var p = new Promise2(INTERNAL); p._fulfillmentHandler0 = value; p._rejectionHandler0 = value; p._promise0 = value; p._receiver0 = value; } __name(fillTypes, "fillTypes"); fillTypes({ a: 1 }); fillTypes({ b: 2 }); fillTypes({ c: 3 }); fillTypes(1); fillTypes(function() { }); fillTypes(void 0); fillTypes(false); fillTypes(new Promise2(INTERNAL)); debug.setBounds(Async.firstLineError, util2.lastLineError); return Promise2; }; } }); // ../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/bluebird.js var require_bluebird = __commonJS({ "../../node_modules/.pnpm/bluebird@3.4.7/node_modules/bluebird/js/release/bluebird.js"(exports2, module2) { "use strict"; var old; if (typeof Promise !== "undefined") old = Promise; function noConflict() { try { if (Promise === bluebird) Promise = old; } catch (e) { } return bluebird; } __name(noConflict, "noConflict"); var bluebird = require_promise()(); bluebird.noConflict = noConflict; module2.exports = bluebird; } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Buffer.js var require_Buffer = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Buffer.js"(exports2, module2) { var Buffer2 = require("buffer").Buffer; if (Buffer2.from === void 0) { Buffer2.from = function(a, b, c) { return new Buffer2(a, b, c); }; Buffer2.alloc = Buffer2.from; } module2.exports = Buffer2; } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/PullStream.js var require_PullStream = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/PullStream.js"(exports2, module2) { var Stream = require("stream"); var Promise2 = require_bluebird(); var util2 = require("util"); var Buffer2 = require_Buffer(); var strFunction = "function"; if (!Stream.Writable || !Stream.Writable.prototype.destroy) Stream = require_readable2(); function PullStream() { if (!(this instanceof PullStream)) return new PullStream(); Stream.Duplex.call(this, { decodeStrings: false, objectMode: true }); this.buffer = Buffer2.from(""); var self2 = this; self2.on("finish", function() { self2.finished = true; self2.emit("chunk", false); }); } __name(PullStream, "PullStream"); util2.inherits(PullStream, Stream.Duplex); PullStream.prototype._write = function(chunk, e, cb) { this.buffer = Buffer2.concat([this.buffer, chunk]); this.cb = cb; this.emit("chunk"); }; PullStream.prototype.stream = function(eof, includeEof) { var p = Stream.PassThrough(); var done, self2 = this; function cb() { if (typeof self2.cb === strFunction) { var callback = self2.cb; self2.cb = void 0; return callback(); } } __name(cb, "cb"); function pull() { var packet; if (self2.buffer && self2.buffer.length) { if (typeof eof === "number") { packet = self2.buffer.slice(0, eof); self2.buffer = self2.buffer.slice(eof); eof -= packet.length; done = !eof; } else { var match = self2.buffer.indexOf(eof); if (match !== -1) { self2.match = match; if (includeEof) match = match + eof.length; packet = self2.buffer.slice(0, match); self2.buffer = self2.buffer.slice(match); done = true; } else { var len = self2.buffer.length - eof.length; if (len <= 0) { cb(); } else { packet = self2.buffer.slice(0, len); self2.buffer = self2.buffer.slice(len); } } } if (packet) p.write(packet, function() { if (self2.buffer.length === 0 || eof.length && self2.buffer.length <= eof.length) cb(); }); } if (!done) { if (self2.finished) { self2.removeListener("chunk", pull); self2.emit("error", new Error("FILE_ENDED")); return; } } else { self2.removeListener("chunk", pull); p.end(); } } __name(pull, "pull"); self2.on("chunk", pull); pull(); return p; }; PullStream.prototype.pull = function(eof, includeEof) { if (eof === 0) return Promise2.resolve(""); if (!isNaN(eof) && this.buffer.length > eof) { var data = this.buffer.slice(0, eof); this.buffer = this.buffer.slice(eof); return Promise2.resolve(data); } var buffer = Buffer2.from(""), self2 = this; var concatStream = Stream.Transform(); concatStream._transform = function(d, e, cb) { buffer = Buffer2.concat([buffer, d]); cb(); }; var rejectHandler; var pullStreamRejectHandler; return new Promise2(function(resolve, reject) { rejectHandler = reject; pullStreamRejectHandler = /* @__PURE__ */ __name(function(e) { self2.__emittedError = e; reject(e); }, "pullStreamRejectHandler"); if (self2.finished) return reject(new Error("FILE_ENDED")); self2.once("error", pullStreamRejectHandler); self2.stream(eof, includeEof).on("error", reject).pipe(concatStream).on("finish", function() { resolve(buffer); }).on("error", reject); }).finally(function() { self2.removeListener("error", rejectHandler); self2.removeListener("error", pullStreamRejectHandler); }); }; PullStream.prototype._read = function() { }; module2.exports = PullStream; } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/NoopStream.js var require_NoopStream = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/NoopStream.js"(exports2, module2) { var Stream = require("stream"); var util2 = require("util"); if (!Stream.Writable || !Stream.Writable.prototype.destroy) Stream = require_readable2(); function NoopStream() { if (!(this instanceof NoopStream)) { return new NoopStream(); } Stream.Transform.call(this); } __name(NoopStream, "NoopStream"); util2.inherits(NoopStream, Stream.Transform); NoopStream.prototype._transform = function(d, e, cb) { cb(); }; module2.exports = NoopStream; } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/BufferStream.js var require_BufferStream = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/BufferStream.js"(exports2, module2) { var Promise2 = require_bluebird(); var Stream = require("stream"); var Buffer2 = require_Buffer(); if (!Stream.Writable || !Stream.Writable.prototype.destroy) Stream = require_readable2(); module2.exports = function(entry) { return new Promise2(function(resolve, reject) { var chunks = []; var bufferStream = Stream.Transform().on("finish", function() { resolve(Buffer2.concat(chunks)); }).on("error", reject); bufferStream._transform = function(d, e, cb) { chunks.push(d); cb(); }; entry.on("error", reject).pipe(bufferStream); }); }; } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseExtraField.js var require_parseExtraField = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseExtraField.js"(exports2, module2) { var binary = require_binary2(); module2.exports = function(extraField, vars) { var extra; while (!extra && extraField && extraField.length) { var candidateExtra = binary.parse(extraField).word16lu("signature").word16lu("partsize").word64lu("uncompressedSize").word64lu("compressedSize").word64lu("offset").word64lu("disknum").vars; if (candidateExtra.signature === 1) { extra = candidateExtra; } else { extraField = extraField.slice(candidateExtra.partsize + 4); } } extra = extra || {}; if (vars.compressedSize === 4294967295) vars.compressedSize = extra.compressedSize; if (vars.uncompressedSize === 4294967295) vars.uncompressedSize = extra.uncompressedSize; if (vars.offsetToLocalFileHeader === 4294967295) vars.offsetToLocalFileHeader = extra.offset; return extra; }; } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseDateTime.js var require_parseDateTime = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseDateTime.js"(exports2, module2) { module2.exports = /* @__PURE__ */ __name(function parseDateTime(date, time) { const day = date & 31; const month = date >> 5 & 15; const year = (date >> 9 & 127) + 1980; const seconds = time ? (time & 31) * 2 : 0; const minutes = time ? time >> 5 & 63 : 0; const hours = time ? time >> 11 : 0; return new Date(Date.UTC(year, month - 1, day, hours, minutes, seconds)); }, "parseDateTime"); } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parse.js var require_parse5 = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parse.js"(exports2, module2) { var util2 = require("util"); var zlib = require("zlib"); var Stream = require("stream"); var binary = require_binary2(); var Promise2 = require_bluebird(); var PullStream = require_PullStream(); var NoopStream = require_NoopStream(); var BufferStream = require_BufferStream(); var parseExtraField = require_parseExtraField(); var Buffer2 = require_Buffer(); var parseDateTime = require_parseDateTime(); if (!Stream.Writable || !Stream.Writable.prototype.destroy) Stream = require_readable2(); var endDirectorySignature = Buffer2.alloc(4); endDirectorySignature.writeUInt32LE(101010256, 0); function Parse(opts) { if (!(this instanceof Parse)) { return new Parse(opts); } var self2 = this; self2._opts = opts || { verbose: false }; PullStream.call(self2, self2._opts); self2.on("finish", function() { self2.emit("end"); self2.emit("close"); }); self2._readRecord().catch(function(e) { if (!self2.__emittedError || self2.__emittedError !== e) self2.emit("error", e); }); } __name(Parse, "Parse"); util2.inherits(Parse, PullStream); Parse.prototype._readRecord = function() { var self2 = this; return self2.pull(4).then(function(data) { if (data.length === 0) return; var signature = data.readUInt32LE(0); if (signature === 875721283) { return self2._readCrxHeader(); } if (signature === 67324752) { return self2._readFile(); } else if (signature === 33639248) { self2.reachedCD = true; return self2._readCentralDirectoryFileHeader(); } else if (signature === 101010256) { return self2._readEndOfCentralDirectoryRecord(); } else if (self2.reachedCD) { var includeEof = true; return self2.pull(endDirectorySignature, includeEof).then(function() { return self2._readEndOfCentralDirectoryRecord(); }); } else self2.emit("error", new Error("invalid signature: 0x" + signature.toString(16))); }); }; Parse.prototype._readCrxHeader = function() { var self2 = this; return self2.pull(12).then(function(data) { self2.crxHeader = binary.parse(data).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars; return self2.pull(self2.crxHeader.pubKeyLength + self2.crxHeader.signatureLength); }).then(function(data) { self2.crxHeader.publicKey = data.slice(0, self2.crxHeader.pubKeyLength); self2.crxHeader.signature = data.slice(self2.crxHeader.pubKeyLength); self2.emit("crx-header", self2.crxHeader); return self2._readRecord(); }); }; Parse.prototype._readFile = function() { var self2 = this; return self2.pull(26).then(function(data) { var vars = binary.parse(data).word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars; vars.lastModifiedDateTime = parseDateTime(vars.lastModifiedDate, vars.lastModifiedTime); if (self2.crxHeader) vars.crxHeader = self2.crxHeader; return self2.pull(vars.fileNameLength).then(function(fileNameBuffer) { var fileName = fileNameBuffer.toString("utf8"); var entry = Stream.PassThrough(); var __autodraining = false; entry.autodrain = function() { __autodraining = true; var draining = entry.pipe(NoopStream()); draining.promise = function() { return new Promise2(function(resolve, reject) { draining.on("finish", resolve); draining.on("error", reject); }); }; return draining; }; entry.buffer = function() { return BufferStream(entry); }; entry.path = fileName; entry.props = {}; entry.props.path = fileName; entry.props.pathBuffer = fileNameBuffer; entry.props.flags = { "isUnicode": (vars.flags & 2048) != 0 }; entry.type = vars.uncompressedSize === 0 && /[\/\\]$/.test(fileName) ? "Directory" : "File"; if (self2._opts.verbose) { if (entry.type === "Directory") { console.log(" creating:", fileName); } else if (entry.type === "File") { if (vars.compressionMethod === 0) { console.log(" extracting:", fileName); } else { console.log(" inflating:", fileName); } } } return self2.pull(vars.extraFieldLength).then(function(extraField) { var extra = parseExtraField(extraField, vars); entry.vars = vars; entry.extra = extra; if (self2._opts.forceStream) { self2.push(entry); } else { self2.emit("entry", entry); if (self2._readableState.pipesCount || self2._readableState.pipes && self2._readableState.pipes.length) self2.push(entry); } if (self2._opts.verbose) console.log({ filename: fileName, vars, extra }); var fileSizeKnown = !(vars.flags & 8) || vars.compressedSize > 0, eof; entry.__autodraining = __autodraining; var inflater = vars.compressionMethod && !__autodraining ? zlib.createInflateRaw() : Stream.PassThrough(); if (fileSizeKnown) { entry.size = vars.uncompressedSize; eof = vars.compressedSize; } else { eof = Buffer2.alloc(4); eof.writeUInt32LE(134695760, 0); } return new Promise2(function(resolve, reject) { self2.stream(eof).pipe(inflater).on("error", function(err) { self2.emit("error", err); }).pipe(entry).on("finish", function() { return fileSizeKnown ? self2._readRecord().then(resolve).catch(reject) : self2._processDataDescriptor(entry).then(resolve).catch(reject); }); }); }); }); }); }; Parse.prototype._processDataDescriptor = function(entry) { var self2 = this; return self2.pull(16).then(function(data) { var vars = binary.parse(data).word32lu("dataDescriptorSignature").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").vars; entry.size = vars.uncompressedSize; return self2._readRecord(); }); }; Parse.prototype._readCentralDirectoryFileHeader = function() { var self2 = this; return self2.pull(42).then(function(data) { var vars = binary.parse(data).word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars; return self2.pull(vars.fileNameLength).then(function(fileName) { vars.fileName = fileName.toString("utf8"); return self2.pull(vars.extraFieldLength); }).then(function(extraField) { return self2.pull(vars.fileCommentLength); }).then(function(fileComment) { return self2._readRecord(); }); }); }; Parse.prototype._readEndOfCentralDirectoryRecord = function() { var self2 = this; return self2.pull(18).then(function(data) { var vars = binary.parse(data).word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars; return self2.pull(vars.commentLength).then(function(comment) { comment = comment.toString("utf8"); self2.end(); self2.push(null); }); }); }; Parse.prototype.promise = function() { var self2 = this; return new Promise2(function(resolve, reject) { self2.on("finish", resolve); self2.on("error", reject); }); }; module2.exports = Parse; } }); // ../../node_modules/.pnpm/duplexer2@0.1.4/node_modules/duplexer2/index.js var require_duplexer2 = __commonJS({ "../../node_modules/.pnpm/duplexer2@0.1.4/node_modules/duplexer2/index.js"(exports2, module2) { "use strict"; var stream = require_readable2(); function DuplexWrapper(options, writable, readable) { if (typeof readable === "undefined") { readable = writable; writable = options; options = null; } stream.Duplex.call(this, options); if (typeof readable.read !== "function") { readable = new stream.Readable(options).wrap(readable); } this._writable = writable; this._readable = readable; this._waiting = false; var self2 = this; writable.once("finish", function() { self2.end(); }); this.once("finish", function() { writable.end(); }); readable.on("readable", function() { if (self2._waiting) { self2._waiting = false; self2._read(); } }); readable.once("end", function() { self2.push(null); }); if (!options || typeof options.bubbleErrors === "undefined" || options.bubbleErrors) { writable.on("error", function(err) { self2.emit("error", err); }); readable.on("error", function(err) { self2.emit("error", err); }); } } __name(DuplexWrapper, "DuplexWrapper"); DuplexWrapper.prototype = Object.create(stream.Duplex.prototype, { constructor: { value: DuplexWrapper } }); DuplexWrapper.prototype._write = /* @__PURE__ */ __name(function _write(input, encoding, done) { this._writable.write(input, encoding, done); }, "_write"); DuplexWrapper.prototype._read = /* @__PURE__ */ __name(function _read() { var buf; var reads = 0; while ((buf = this._readable.read()) !== null) { this.push(buf); reads++; } if (reads === 0) { this._waiting = true; } }, "_read"); module2.exports = /* @__PURE__ */ __name(function duplex2(options, writable, readable) { return new DuplexWrapper(options, writable, readable); }, "duplex2"); module2.exports.DuplexWrapper = DuplexWrapper; } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseOne.js var require_parseOne = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/parseOne.js"(exports2, module2) { var Stream = require("stream"); var Parse = require_parse5(); var duplexer2 = require_duplexer2(); var BufferStream = require_BufferStream(); if (!Stream.Writable || !Stream.Writable.prototype.destroy) Stream = require_readable2(); function parseOne(match, opts) { var inStream = Stream.PassThrough({ objectMode: true }); var outStream = Stream.PassThrough(); var transform = Stream.Transform({ objectMode: true }); var re = match instanceof RegExp ? match : match && new RegExp(match); var found; transform._transform = function(entry, e, cb) { if (found || re && !re.exec(entry.path)) { entry.autodrain(); return cb(); } else { found = true; out.emit("entry", entry); entry.on("error", function(e2) { outStream.emit("error", e2); }); entry.pipe(outStream).on("error", function(err) { cb(err); }).on("finish", function(d) { cb(null, d); }); } }; inStream.pipe(Parse(opts)).on("error", function(err) { outStream.emit("error", err); }).pipe(transform).on("error", Object).on("finish", function() { if (!found) outStream.emit("error", new Error("PATTERN_NOT_FOUND")); else outStream.end(); }); var out = duplexer2(inStream, outStream); out.buffer = function() { return BufferStream(outStream); }; return out; } __name(parseOne, "parseOne"); module2.exports = parseOne; } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/abstract.js var require_abstract = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/abstract.js"(exports2, module2) { module2.exports = Abstract; var Stream = require("stream").Stream; var inherits2 = require_inherits(); function Abstract() { Stream.call(this); } __name(Abstract, "Abstract"); inherits2(Abstract, Stream); Abstract.prototype.on = function(ev, fn) { if (ev === "ready" && this.ready) { process.nextTick(fn.bind(this)); } else { Stream.prototype.on.call(this, ev, fn); } return this; }; Abstract.prototype.abort = function() { this._aborted = true; this.emit("abort"); }; Abstract.prototype.destroy = function() { }; Abstract.prototype.warn = function(msg, code) { var self2 = this; var er = decorate(msg, code, self2); if (!self2.listeners("warn")) { console.error( "%s %s\npath = %s\nsyscall = %s\nfstream_type = %s\nfstream_path = %s\nfstream_unc_path = %s\nfstream_class = %s\nfstream_stack =\n%s\n", code || "UNKNOWN", er.stack, er.path, er.syscall, er.fstream_type, er.fstream_path, er.fstream_unc_path, er.fstream_class, er.fstream_stack.join("\n") ); } else { self2.emit("warn", er); } }; Abstract.prototype.info = function(msg, code) { this.emit("info", msg, code); }; Abstract.prototype.error = function(msg, code, th) { var er = decorate(msg, code, this); if (th) throw er; else this.emit("error", er); }; function decorate(er, code, self2) { if (!(er instanceof Error)) er = new Error(er); er.code = er.code || code; er.path = er.path || self2.path; er.fstream_type = er.fstream_type || self2.type; er.fstream_path = er.fstream_path || self2.path; if (self2._path !== self2.path) { er.fstream_unc_path = er.fstream_unc_path || self2._path; } if (self2.linkpath) { er.fstream_linkpath = er.fstream_linkpath || self2.linkpath; } er.fstream_class = er.fstream_class || self2.constructor.name; er.fstream_stack = er.fstream_stack || new Error().stack.split(/\n/).slice(3).map(function(s) { return s.replace(/^ {4}at /, ""); }); return er; } __name(decorate, "decorate"); } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/get-type.js var require_get_type = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/get-type.js"(exports2, module2) { module2.exports = getType; function getType(st) { var types = [ "Directory", "File", "SymbolicLink", "Link", // special for hardlinks from tarballs "BlockDevice", "CharacterDevice", "FIFO", "Socket" ]; var type; if (st.type && types.indexOf(st.type) !== -1) { st[st.type] = true; return st.type; } for (var i = 0, l2 = types.length; i < l2; i++) { type = types[i]; var is = st[type] || st["is" + type]; if (typeof is === "function") is = is.call(st); if (is) { st[type] = true; st.type = type; return type; } } return null; } __name(getType, "getType"); } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/link-reader.js var require_link_reader = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/link-reader.js"(exports2, module2) { module2.exports = LinkReader; var fs = require_graceful_fs(); var inherits2 = require_inherits(); var Reader = require_reader(); inherits2(LinkReader, Reader); function LinkReader(props) { var self2 = this; if (!(self2 instanceof LinkReader)) { throw new Error("LinkReader must be called as constructor."); } if (!(props.type === "Link" && props.Link || props.type === "SymbolicLink" && props.SymbolicLink)) { throw new Error("Non-link type " + props.type); } Reader.call(self2, props); } __name(LinkReader, "LinkReader"); LinkReader.prototype._stat = function(currentStat) { var self2 = this; fs.readlink(self2._path, function(er, linkpath) { if (er) return self2.error(er); self2.linkpath = self2.props.linkpath = linkpath; self2.emit("linkpath", linkpath); Reader.prototype._stat.call(self2, currentStat); }); }; LinkReader.prototype._read = function() { var self2 = this; if (self2._paused) return; if (!self2._ended) { self2.emit("end"); self2.emit("close"); self2._ended = true; } }; } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/dir-reader.js var require_dir_reader = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/dir-reader.js"(exports2, module2) { module2.exports = DirReader; var fs = require_graceful_fs(); var inherits2 = require_inherits(); var path = require("path"); var Reader = require_reader(); var assert = require("assert").ok; inherits2(DirReader, Reader); function DirReader(props) { var self2 = this; if (!(self2 instanceof DirReader)) { throw new Error("DirReader must be called as constructor."); } if (props.type !== "Directory" || !props.Directory) { throw new Error("Non-directory type " + props.type); } self2.entries = null; self2._index = -1; self2._paused = false; self2._length = -1; if (props.sort) { this.sort = props.sort; } Reader.call(this, props); } __name(DirReader, "DirReader"); DirReader.prototype._getEntries = function() { var self2 = this; if (self2._gotEntries) return; self2._gotEntries = true; fs.readdir(self2._path, function(er, entries) { if (er) return self2.error(er); self2.entries = entries; self2.emit("entries", entries); if (self2._paused) self2.once("resume", processEntries); else processEntries(); function processEntries() { self2._length = self2.entries.length; if (typeof self2.sort === "function") { self2.entries = self2.entries.sort(self2.sort.bind(self2)); } self2._read(); } __name(processEntries, "processEntries"); }); }; DirReader.prototype._read = function() { var self2 = this; if (!self2.entries) return self2._getEntries(); if (self2._paused || self2._currentEntry || self2._aborted) { return; } self2._index++; if (self2._index >= self2.entries.length) { if (!self2._ended) { self2._ended = true; self2.emit("end"); self2.emit("close"); } return; } var p = path.resolve(self2._path, self2.entries[self2._index]); assert(p !== self2._path); assert(self2.entries[self2._index]); self2._currentEntry = p; fs[self2.props.follow ? "stat" : "lstat"](p, function(er, stat) { if (er) return self2.error(er); var who = self2._proxy || self2; stat.path = p; stat.basename = path.basename(p); stat.dirname = path.dirname(p); var childProps = self2.getChildProps.call(who, stat); childProps.path = p; childProps.basename = path.basename(p); childProps.dirname = path.dirname(p); var entry = Reader(childProps, stat); self2._currentEntry = entry; entry.on("pause", function(who2) { if (!self2._paused && !entry._disowned) { self2.pause(who2); } }); entry.on("resume", function(who2) { if (self2._paused && !entry._disowned) { self2.resume(who2); } }); entry.on("stat", function(props) { self2.emit("_entryStat", entry, props); if (entry._aborted) return; if (entry._paused) { entry.once("resume", function() { self2.emit("entryStat", entry, props); }); } else self2.emit("entryStat", entry, props); }); entry.on("ready", /* @__PURE__ */ __name(function EMITCHILD() { if (self2._paused) { entry.pause(self2); return self2.once("resume", EMITCHILD); } if (entry.type === "Socket") { self2.emit("socket", entry); } else { self2.emitEntry(entry); } }, "EMITCHILD")); var ended = false; entry.on("close", onend); entry.on("disown", onend); function onend() { if (ended) return; ended = true; self2.emit("childEnd", entry); self2.emit("entryEnd", entry); self2._currentEntry = null; if (!self2._paused) { self2._read(); } } __name(onend, "onend"); entry.on("error", function(er2) { if (entry._swallowErrors) { self2.warn(er2); entry.emit("end"); entry.emit("close"); } else { self2.emit("error", er2); } }); [ "child", "childEnd", "warn" ].forEach(function(ev) { entry.on(ev, self2.emit.bind(self2, ev)); }); }); }; DirReader.prototype.disown = function(entry) { entry.emit("beforeDisown"); entry._disowned = true; entry.parent = entry.root = null; if (entry === this._currentEntry) { this._currentEntry = null; } entry.emit("disown"); }; DirReader.prototype.getChildProps = function() { return { depth: this.depth + 1, root: this.root || this, parent: this, follow: this.follow, filter: this.filter, sort: this.props.sort, hardlinks: this.props.hardlinks }; }; DirReader.prototype.pause = function(who) { var self2 = this; if (self2._paused) return; who = who || self2; self2._paused = true; if (self2._currentEntry && self2._currentEntry.pause) { self2._currentEntry.pause(who); } self2.emit("pause", who); }; DirReader.prototype.resume = function(who) { var self2 = this; if (!self2._paused) return; who = who || self2; self2._paused = false; self2.emit("resume", who); if (self2._paused) { return; } if (self2._currentEntry) { if (self2._currentEntry.resume) self2._currentEntry.resume(who); } else self2._read(); }; DirReader.prototype.emitEntry = function(entry) { this.emit("entry", entry); this.emit("child", entry); }; } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/file-reader.js var require_file_reader = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/file-reader.js"(exports2, module2) { module2.exports = FileReader2; var fs = require_graceful_fs(); var inherits2 = require_inherits(); var Reader = require_reader(); var EOF = { EOF: true }; var CLOSE = { CLOSE: true }; inherits2(FileReader2, Reader); function FileReader2(props) { var self2 = this; if (!(self2 instanceof FileReader2)) { throw new Error("FileReader must be called as constructor."); } if (!(props.type === "Link" && props.Link || props.type === "File" && props.File)) { throw new Error("Non-file type " + props.type); } self2._buffer = []; self2._bytesEmitted = 0; Reader.call(self2, props); } __name(FileReader2, "FileReader"); FileReader2.prototype._getStream = function() { var self2 = this; var stream = self2._stream = fs.createReadStream(self2._path, self2.props); if (self2.props.blksize) { stream.bufferSize = self2.props.blksize; } stream.on("open", self2.emit.bind(self2, "open")); stream.on("data", function(c) { self2._bytesEmitted += c.length; if (!c.length) { return; } else if (self2._paused || self2._buffer.length) { self2._buffer.push(c); self2._read(); } else self2.emit("data", c); }); stream.on("end", function() { if (self2._paused || self2._buffer.length) { self2._buffer.push(EOF); self2._read(); } else { self2.emit("end"); } if (self2._bytesEmitted !== self2.props.size) { self2.error("Didn't get expected byte count\nexpect: " + self2.props.size + "\nactual: " + self2._bytesEmitted); } }); stream.on("close", function() { if (self2._paused || self2._buffer.length) { self2._buffer.push(CLOSE); self2._read(); } else { self2.emit("close"); } }); stream.on("error", function(e) { self2.emit("error", e); }); self2._read(); }; FileReader2.prototype._read = function() { var self2 = this; if (self2._paused) { return; } if (!self2._stream) { return self2._getStream(); } if (self2._buffer.length) { var buf = self2._buffer; for (var i = 0, l2 = buf.length; i < l2; i++) { var c = buf[i]; if (c === EOF) { self2.emit("end"); } else if (c === CLOSE) { self2.emit("close"); } else { self2.emit("data", c); } if (self2._paused) { self2._buffer = buf.slice(i); return; } } self2._buffer.length = 0; } }; FileReader2.prototype.pause = function(who) { var self2 = this; if (self2._paused) return; who = who || self2; self2._paused = true; if (self2._stream) self2._stream.pause(); self2.emit("pause", who); }; FileReader2.prototype.resume = function(who) { var self2 = this; if (!self2._paused) return; who = who || self2; self2.emit("resume", who); self2._paused = false; if (self2._stream) self2._stream.resume(); self2._read(); }; } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/socket-reader.js var require_socket_reader = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/socket-reader.js"(exports2, module2) { module2.exports = SocketReader; var inherits2 = require_inherits(); var Reader = require_reader(); inherits2(SocketReader, Reader); function SocketReader(props) { var self2 = this; if (!(self2 instanceof SocketReader)) { throw new Error("SocketReader must be called as constructor."); } if (!(props.type === "Socket" && props.Socket)) { throw new Error("Non-socket type " + props.type); } Reader.call(self2, props); } __name(SocketReader, "SocketReader"); SocketReader.prototype._read = function() { var self2 = this; if (self2._paused) return; if (!self2._ended) { self2.emit("end"); self2.emit("close"); self2._ended = true; } }; } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/proxy-reader.js var require_proxy_reader = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/proxy-reader.js"(exports2, module2) { module2.exports = ProxyReader; var Reader = require_reader(); var getType = require_get_type(); var inherits2 = require_inherits(); var fs = require_graceful_fs(); inherits2(ProxyReader, Reader); function ProxyReader(props) { var self2 = this; if (!(self2 instanceof ProxyReader)) { throw new Error("ProxyReader must be called as constructor."); } self2.props = props; self2._buffer = []; self2.ready = false; Reader.call(self2, props); } __name(ProxyReader, "ProxyReader"); ProxyReader.prototype._stat = function() { var self2 = this; var props = self2.props; var stat = props.follow ? "stat" : "lstat"; fs[stat](props.path, function(er, current) { var type; if (er || !current) { type = "File"; } else { type = getType(current); } props[type] = true; props.type = self2.type = type; self2._old = current; self2._addProxy(Reader(props, current)); }); }; ProxyReader.prototype._addProxy = function(proxy) { var self2 = this; if (self2._proxyTarget) { return self2.error("proxy already set"); } self2._proxyTarget = proxy; proxy._proxy = self2; [ "error", "data", "end", "close", "linkpath", "entry", "entryEnd", "child", "childEnd", "warn", "stat" ].forEach(function(ev) { proxy.on(ev, self2.emit.bind(self2, ev)); }); self2.emit("proxy", proxy); proxy.on("ready", function() { self2.ready = true; self2.emit("ready"); }); var calls = self2._buffer; self2._buffer.length = 0; calls.forEach(function(c) { proxy[c[0]].apply(proxy, c[1]); }); }; ProxyReader.prototype.pause = function() { return this._proxyTarget ? this._proxyTarget.pause() : false; }; ProxyReader.prototype.resume = function() { return this._proxyTarget ? this._proxyTarget.resume() : false; }; } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/reader.js var require_reader = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/reader.js"(exports2, module2) { module2.exports = Reader; var fs = require_graceful_fs(); var Stream = require("stream").Stream; var inherits2 = require_inherits(); var path = require("path"); var getType = require_get_type(); var hardLinks = Reader.hardLinks = {}; var Abstract = require_abstract(); inherits2(Reader, Abstract); var LinkReader = require_link_reader(); function Reader(props, currentStat) { var self2 = this; if (!(self2 instanceof Reader)) return new Reader(props, currentStat); if (typeof props === "string") { props = { path: props }; } var type; var ClassType; if (props.type && typeof props.type === "function") { type = props.type; ClassType = type; } else { type = getType(props); ClassType = Reader; } if (currentStat && !type) { type = getType(currentStat); props[type] = true; props.type = type; } switch (type) { case "Directory": ClassType = require_dir_reader(); break; case "Link": // XXX hard links are just files. // However, it would be good to keep track of files' dev+inode // and nlink values, and create a HardLinkReader that emits // a linkpath value of the original copy, so that the tar // writer can preserve them. // ClassType = HardLinkReader // break case "File": ClassType = require_file_reader(); break; case "SymbolicLink": ClassType = LinkReader; break; case "Socket": ClassType = require_socket_reader(); break; case null: ClassType = require_proxy_reader(); break; } if (!(self2 instanceof ClassType)) { return new ClassType(props); } Abstract.call(self2); if (!props.path) { self2.error("Must provide a path", null, true); } self2.readable = true; self2.writable = false; self2.type = type; self2.props = props; self2.depth = props.depth = props.depth || 0; self2.parent = props.parent || null; self2.root = props.root || props.parent && props.parent.root || self2; self2._path = self2.path = path.resolve(props.path); if (process.platform === "win32") { self2.path = self2._path = self2.path.replace(/\?/g, "_"); if (self2._path.length >= 260) { self2._swallowErrors = true; self2._path = "\\\\?\\" + self2.path.replace(/\//g, "\\"); } } self2.basename = props.basename = path.basename(self2.path); self2.dirname = props.dirname = path.dirname(self2.path); props.parent = props.root = null; self2.size = props.size; self2.filter = typeof props.filter === "function" ? props.filter : null; if (props.sort === "alpha") props.sort = alphasort; self2._stat(currentStat); } __name(Reader, "Reader"); function alphasort(a, b) { return a === b ? 0 : a.toLowerCase() > b.toLowerCase() ? 1 : a.toLowerCase() < b.toLowerCase() ? -1 : a > b ? 1 : -1; } __name(alphasort, "alphasort"); Reader.prototype._stat = function(currentStat) { var self2 = this; var props = self2.props; var stat = props.follow ? "stat" : "lstat"; if (currentStat) process.nextTick(statCb.bind(null, null, currentStat)); else fs[stat](self2._path, statCb); function statCb(er, props_) { if (er) return self2.error(er); Object.keys(props_).forEach(function(k2) { props[k2] = props_[k2]; }); if (void 0 !== self2.size && props.size !== self2.size) { return self2.error("incorrect size"); } self2.size = props.size; var type = getType(props); var handleHardlinks = props.hardlinks !== false; if (handleHardlinks && type !== "Directory" && props.nlink && props.nlink > 1) { var k = props.dev + ":" + props.ino; if (hardLinks[k] === self2._path || !hardLinks[k]) { hardLinks[k] = self2._path; } else { type = self2.type = self2.props.type = "Link"; self2.Link = self2.props.Link = true; self2.linkpath = self2.props.linkpath = hardLinks[k]; self2._stat = self2._read = LinkReader.prototype._read; } } if (self2.type && self2.type !== type) { self2.error("Unexpected type: " + type); } if (self2.filter) { var who = self2._proxy || self2; if (!self2.filter.call(who, who, props)) { if (!self2._disowned) { self2.abort(); self2.emit("end"); self2.emit("close"); } return; } } var events = ["_stat", "stat", "ready"]; var e = 0; (/* @__PURE__ */ __name((function go() { if (self2._aborted) { self2.emit("end"); self2.emit("close"); return; } if (self2._paused && self2.type !== "Directory") { self2.once("resume", go); return; } var ev = events[e++]; if (!ev) { return self2._read(); } self2.emit(ev, props); go(); }), "go"))(); } __name(statCb, "statCb"); }; Reader.prototype.pipe = function(dest) { var self2 = this; if (typeof dest.add === "function") { self2.on("entry", function(entry) { var ret2 = dest.add(entry); if (ret2 === false) { self2.pause(); } }); } return Stream.prototype.pipe.apply(this, arguments); }; Reader.prototype.pause = function(who) { this._paused = true; who = who || this; this.emit("pause", who); if (this._stream) this._stream.pause(who); }; Reader.prototype.resume = function(who) { this._paused = false; who = who || this; this.emit("resume", who); if (this._stream) this._stream.resume(who); this._read(); }; Reader.prototype._read = function() { this.error("Cannot read unknown type: " + this.type); }; } }); // ../../node_modules/.pnpm/rimraf@2.7.1/node_modules/rimraf/rimraf.js var require_rimraf = __commonJS({ "../../node_modules/.pnpm/rimraf@2.7.1/node_modules/rimraf/rimraf.js"(exports2, module2) { module2.exports = rimraf; rimraf.sync = rimrafSync; var assert = require("assert"); var path = require("path"); var fs = require("fs"); var glob = void 0; try { glob = require_glob(); } catch (_err) { } var _0666 = parseInt("666", 8); var defaultGlobOpts = { nosort: true, silent: true }; var timeout = 0; var isWindows = process.platform === "win32"; function defaults(options) { var methods = [ "unlink", "chmod", "stat", "lstat", "rmdir", "readdir" ]; methods.forEach(function(m) { options[m] = options[m] || fs[m]; m = m + "Sync"; options[m] = options[m] || fs[m]; }); options.maxBusyTries = options.maxBusyTries || 3; options.emfileWait = options.emfileWait || 1e3; if (options.glob === false) { options.disableGlob = true; } if (options.disableGlob !== true && glob === void 0) { throw Error("glob dependency not found, set `options.disableGlob = true` if intentional"); } options.disableGlob = options.disableGlob || false; options.glob = options.glob || defaultGlobOpts; } __name(defaults, "defaults"); function rimraf(p, options, cb) { if (typeof options === "function") { cb = options; options = {}; } assert(p, "rimraf: missing path"); assert.equal(typeof p, "string", "rimraf: path should be a string"); assert.equal(typeof cb, "function", "rimraf: callback function required"); assert(options, "rimraf: invalid options argument provided"); assert.equal(typeof options, "object", "rimraf: options should be object"); defaults(options); var busyTries = 0; var errState = null; var n = 0; if (options.disableGlob || !glob.hasMagic(p)) return afterGlob(null, [p]); options.lstat(p, function(er, stat) { if (!er) return afterGlob(null, [p]); glob(p, options.glob, afterGlob); }); function next(er) { errState = errState || er; if (--n === 0) cb(errState); } __name(next, "next"); function afterGlob(er, results) { if (er) return cb(er); n = results.length; if (n === 0) return cb(); results.forEach(function(p2) { rimraf_(p2, options, /* @__PURE__ */ __name(function CB(er2) { if (er2) { if ((er2.code === "EBUSY" || er2.code === "ENOTEMPTY" || er2.code === "EPERM") && busyTries < options.maxBusyTries) { busyTries++; var time = busyTries * 100; return setTimeout(function() { rimraf_(p2, options, CB); }, time); } if (er2.code === "EMFILE" && timeout < options.emfileWait) { return setTimeout(function() { rimraf_(p2, options, CB); }, timeout++); } if (er2.code === "ENOENT") er2 = null; } timeout = 0; next(er2); }, "CB")); }); } __name(afterGlob, "afterGlob"); } __name(rimraf, "rimraf"); function rimraf_(p, options, cb) { assert(p); assert(options); assert(typeof cb === "function"); options.lstat(p, function(er, st) { if (er && er.code === "ENOENT") return cb(null); if (er && er.code === "EPERM" && isWindows) fixWinEPERM(p, options, er, cb); if (st && st.isDirectory()) return rmdir(p, options, er, cb); options.unlink(p, function(er2) { if (er2) { if (er2.code === "ENOENT") return cb(null); if (er2.code === "EPERM") return isWindows ? fixWinEPERM(p, options, er2, cb) : rmdir(p, options, er2, cb); if (er2.code === "EISDIR") return rmdir(p, options, er2, cb); } return cb(er2); }); }); } __name(rimraf_, "rimraf_"); function fixWinEPERM(p, options, er, cb) { assert(p); assert(options); assert(typeof cb === "function"); if (er) assert(er instanceof Error); options.chmod(p, _0666, function(er2) { if (er2) cb(er2.code === "ENOENT" ? null : er); else options.stat(p, function(er3, stats) { if (er3) cb(er3.code === "ENOENT" ? null : er); else if (stats.isDirectory()) rmdir(p, options, er, cb); else options.unlink(p, cb); }); }); } __name(fixWinEPERM, "fixWinEPERM"); function fixWinEPERMSync(p, options, er) { assert(p); assert(options); if (er) assert(er instanceof Error); try { options.chmodSync(p, _0666); } catch (er2) { if (er2.code === "ENOENT") return; else throw er; } try { var stats = options.statSync(p); } catch (er3) { if (er3.code === "ENOENT") return; else throw er; } if (stats.isDirectory()) rmdirSync(p, options, er); else options.unlinkSync(p); } __name(fixWinEPERMSync, "fixWinEPERMSync"); function rmdir(p, options, originalEr, cb) { assert(p); assert(options); if (originalEr) assert(originalEr instanceof Error); assert(typeof cb === "function"); options.rmdir(p, function(er) { if (er && (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM")) rmkids(p, options, cb); else if (er && er.code === "ENOTDIR") cb(originalEr); else cb(er); }); } __name(rmdir, "rmdir"); function rmkids(p, options, cb) { assert(p); assert(options); assert(typeof cb === "function"); options.readdir(p, function(er, files) { if (er) return cb(er); var n = files.length; if (n === 0) return options.rmdir(p, cb); var errState; files.forEach(function(f) { rimraf(path.join(p, f), options, function(er2) { if (errState) return; if (er2) return cb(errState = er2); if (--n === 0) options.rmdir(p, cb); }); }); }); } __name(rmkids, "rmkids"); function rimrafSync(p, options) { options = options || {}; defaults(options); assert(p, "rimraf: missing path"); assert.equal(typeof p, "string", "rimraf: path should be a string"); assert(options, "rimraf: missing options"); assert.equal(typeof options, "object", "rimraf: options should be object"); var results; if (options.disableGlob || !glob.hasMagic(p)) { results = [p]; } else { try { options.lstatSync(p); results = [p]; } catch (er) { results = glob.sync(p, options.glob); } } if (!results.length) return; for (var i = 0; i < results.length; i++) { var p = results[i]; try { var st = options.lstatSync(p); } catch (er) { if (er.code === "ENOENT") return; if (er.code === "EPERM" && isWindows) fixWinEPERMSync(p, options, er); } try { if (st && st.isDirectory()) rmdirSync(p, options, null); else options.unlinkSync(p); } catch (er) { if (er.code === "ENOENT") return; if (er.code === "EPERM") return isWindows ? fixWinEPERMSync(p, options, er) : rmdirSync(p, options, er); if (er.code !== "EISDIR") throw er; rmdirSync(p, options, er); } } } __name(rimrafSync, "rimrafSync"); function rmdirSync(p, options, originalEr) { assert(p); assert(options); if (originalEr) assert(originalEr instanceof Error); try { options.rmdirSync(p); } catch (er) { if (er.code === "ENOENT") return; if (er.code === "ENOTDIR") throw originalEr; if (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM") rmkidsSync(p, options); } } __name(rmdirSync, "rmdirSync"); function rmkidsSync(p, options) { assert(p); assert(options); options.readdirSync(p).forEach(function(f) { rimrafSync(path.join(p, f), options); }); var retries = isWindows ? 100 : 1; var i = 0; do { var threw = true; try { var ret2 = options.rmdirSync(p, options); threw = false; return ret2; } finally { if (++i < retries && threw) continue; } } while (true); } __name(rmkidsSync, "rmkidsSync"); } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/collect.js var require_collect = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/collect.js"(exports2, module2) { module2.exports = collect; function collect(stream) { if (stream._collected) return; if (stream._paused) return stream.on("resume", collect.bind(null, stream)); stream._collected = true; stream.pause(); stream.on("data", save); stream.on("end", save); var buf = []; function save(b) { if (typeof b === "string") b = new Buffer(b); if (Buffer.isBuffer(b) && !b.length) return; buf.push(b); } __name(save, "save"); stream.on("entry", saveEntry); var entryBuffer = []; function saveEntry(e) { collect(e); entryBuffer.push(e); } __name(saveEntry, "saveEntry"); stream.on("proxy", proxyPause); function proxyPause(p) { p.pause(); } __name(proxyPause, "proxyPause"); stream.pipe = /* @__PURE__ */ (function(orig) { return function(dest) { var e = 0; (/* @__PURE__ */ __name((function unblockEntry() { var entry = entryBuffer[e++]; if (!entry) return resume(); entry.on("end", unblockEntry); if (dest) dest.add(entry); else stream.emit("entry", entry); }), "unblockEntry"))(); function resume() { stream.removeListener("entry", saveEntry); stream.removeListener("data", save); stream.removeListener("end", save); stream.pipe = orig; if (dest) stream.pipe(dest); buf.forEach(function(b) { if (b) stream.emit("data", b); else stream.emit("end"); }); stream.resume(); } __name(resume, "resume"); return dest; }; })(stream.pipe); } __name(collect, "collect"); } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/dir-writer.js var require_dir_writer = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/dir-writer.js"(exports2, module2) { module2.exports = DirWriter; var Writer = require_writer(); var inherits2 = require_inherits(); var mkdir = require_mkdirp(); var path = require("path"); var collect = require_collect(); inherits2(DirWriter, Writer); function DirWriter(props) { var self2 = this; if (!(self2 instanceof DirWriter)) { self2.error("DirWriter must be called as constructor.", null, true); } if (props.type !== "Directory" || !props.Directory) { self2.error("Non-directory type " + props.type + " " + JSON.stringify(props), null, true); } Writer.call(this, props); } __name(DirWriter, "DirWriter"); DirWriter.prototype._create = function() { var self2 = this; mkdir(self2._path, Writer.dirmode, function(er) { if (er) return self2.error(er); self2.ready = true; self2.emit("ready"); self2._process(); }); }; DirWriter.prototype.write = function() { return true; }; DirWriter.prototype.end = function() { this._ended = true; this._process(); }; DirWriter.prototype.add = function(entry) { var self2 = this; collect(entry); if (!self2.ready || self2._currentEntry) { self2._buffer.push(entry); return false; } if (self2._ended) { return self2.error("add after end"); } self2._buffer.push(entry); self2._process(); return this._buffer.length === 0; }; DirWriter.prototype._process = function() { var self2 = this; if (self2._processing) return; var entry = self2._buffer.shift(); if (!entry) { self2.emit("drain"); if (self2._ended) self2._finish(); return; } self2._processing = true; self2.emit("entry", entry); var p = entry; var pp; do { pp = p._path || p.path; if (pp === self2.root._path || pp === self2._path || pp && pp.indexOf(self2._path) === 0) { self2._processing = false; if (entry._collected) entry.pipe(); return self2._process(); } p = p.parent; } while (p); var props = { parent: self2, root: self2.root || self2, type: entry.type, depth: self2.depth + 1 }; pp = entry._path || entry.path || entry.props.path; if (entry.parent) { pp = pp.substr(entry.parent._path.length + 1); } props.path = path.join(self2.path, path.join("/", pp)); props.filter = self2.filter; Object.keys(entry.props).forEach(function(k) { if (!props.hasOwnProperty(k)) { props[k] = entry.props[k]; } }); var child = self2._currentChild = new Writer(props); child.on("ready", function() { entry.pipe(child); entry.resume(); }); child.on("error", function(er) { if (child._swallowErrors) { self2.warn(er); child.emit("end"); child.emit("close"); } else { self2.emit("error", er); } }); child.on("close", onend); var ended = false; function onend() { if (ended) return; ended = true; self2._currentChild = null; self2._processing = false; self2._process(); } __name(onend, "onend"); }; } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/link-writer.js var require_link_writer = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/link-writer.js"(exports2, module2) { module2.exports = LinkWriter; var fs = require_graceful_fs(); var Writer = require_writer(); var inherits2 = require_inherits(); var path = require("path"); var rimraf = require_rimraf(); inherits2(LinkWriter, Writer); function LinkWriter(props) { var self2 = this; if (!(self2 instanceof LinkWriter)) { throw new Error("LinkWriter must be called as constructor."); } if (!(props.type === "Link" && props.Link || props.type === "SymbolicLink" && props.SymbolicLink)) { throw new Error("Non-link type " + props.type); } if (props.linkpath === "") props.linkpath = "."; if (!props.linkpath) { self2.error("Need linkpath property to create " + props.type); } Writer.call(this, props); } __name(LinkWriter, "LinkWriter"); LinkWriter.prototype._create = function() { var self2 = this; var hard = self2.type === "Link" || process.platform === "win32"; var link = hard ? "link" : "symlink"; var lp = hard ? path.resolve(self2.dirname, self2.linkpath) : self2.linkpath; if (hard) return clobber(self2, lp, link); fs.readlink(self2._path, function(er, p) { if (p && p === lp) return finish(self2); clobber(self2, lp, link); }); }; function clobber(self2, lp, link) { rimraf(self2._path, function(er) { if (er) return self2.error(er); create(self2, lp, link); }); } __name(clobber, "clobber"); function create(self2, lp, link) { fs[link](lp, self2._path, function(er) { if (er) { if ((er.code === "ENOENT" || er.code === "EACCES" || er.code === "EPERM") && process.platform === "win32") { self2.ready = true; self2.emit("ready"); self2.emit("end"); self2.emit("close"); self2.end = self2._finish = function() { }; } else return self2.error(er); } finish(self2); }); } __name(create, "create"); function finish(self2) { self2.ready = true; self2.emit("ready"); if (self2._ended && !self2._finished) self2._finish(); } __name(finish, "finish"); LinkWriter.prototype.end = function() { this._ended = true; if (this.ready) { this._finished = true; this._finish(); } }; } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/file-writer.js var require_file_writer = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/file-writer.js"(exports2, module2) { module2.exports = FileWriter; var fs = require_graceful_fs(); var Writer = require_writer(); var inherits2 = require_inherits(); var EOF = {}; inherits2(FileWriter, Writer); function FileWriter(props) { var self2 = this; if (!(self2 instanceof FileWriter)) { throw new Error("FileWriter must be called as constructor."); } if (props.type !== "File" || !props.File) { throw new Error("Non-file type " + props.type); } self2._buffer = []; self2._bytesWritten = 0; Writer.call(this, props); } __name(FileWriter, "FileWriter"); FileWriter.prototype._create = function() { var self2 = this; if (self2._stream) return; var so = {}; if (self2.props.flags) so.flags = self2.props.flags; so.mode = Writer.filemode; if (self2._old && self2._old.blksize) so.bufferSize = self2._old.blksize; self2._stream = fs.createWriteStream(self2._path, so); self2._stream.on("open", function() { self2.ready = true; self2._buffer.forEach(function(c) { if (c === EOF) self2._stream.end(); else self2._stream.write(c); }); self2.emit("ready"); self2.emit("drain"); }); self2._stream.on("error", function(er) { self2.emit("error", er); }); self2._stream.on("drain", function() { self2.emit("drain"); }); self2._stream.on("close", function() { self2._finish(); }); }; FileWriter.prototype.write = function(c) { var self2 = this; self2._bytesWritten += c.length; if (!self2.ready) { if (!Buffer.isBuffer(c) && typeof c !== "string") { throw new Error("invalid write data"); } self2._buffer.push(c); return false; } var ret2 = self2._stream.write(c); if (ret2 === false && self2._stream._queue) { return self2._stream._queue.length <= 2; } else { return ret2; } }; FileWriter.prototype.end = function(c) { var self2 = this; if (c) self2.write(c); if (!self2.ready) { self2._buffer.push(EOF); return false; } return self2._stream.end(); }; FileWriter.prototype._finish = function() { var self2 = this; if (typeof self2.size === "number" && self2._bytesWritten !== self2.size) { self2.error( "Did not get expected byte count.\nexpect: " + self2.size + "\nactual: " + self2._bytesWritten ); } Writer.prototype._finish.call(self2); }; } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/proxy-writer.js var require_proxy_writer = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/proxy-writer.js"(exports2, module2) { module2.exports = ProxyWriter; var Writer = require_writer(); var getType = require_get_type(); var inherits2 = require_inherits(); var collect = require_collect(); var fs = require("fs"); inherits2(ProxyWriter, Writer); function ProxyWriter(props) { var self2 = this; if (!(self2 instanceof ProxyWriter)) { throw new Error("ProxyWriter must be called as constructor."); } self2.props = props; self2._needDrain = false; Writer.call(self2, props); } __name(ProxyWriter, "ProxyWriter"); ProxyWriter.prototype._stat = function() { var self2 = this; var props = self2.props; var stat = props.follow ? "stat" : "lstat"; fs[stat](props.path, function(er, current) { var type; if (er || !current) { type = "File"; } else { type = getType(current); } props[type] = true; props.type = self2.type = type; self2._old = current; self2._addProxy(Writer(props, current)); }); }; ProxyWriter.prototype._addProxy = function(proxy) { var self2 = this; if (self2._proxy) { return self2.error("proxy already set"); } self2._proxy = proxy; [ "ready", "error", "close", "pipe", "drain", "warn" ].forEach(function(ev) { proxy.on(ev, self2.emit.bind(self2, ev)); }); self2.emit("proxy", proxy); var calls = self2._buffer; calls.forEach(function(c) { proxy[c[0]].apply(proxy, c[1]); }); self2._buffer.length = 0; if (self2._needsDrain) self2.emit("drain"); }; ProxyWriter.prototype.add = function(entry) { collect(entry); if (!this._proxy) { this._buffer.push(["add", [entry]]); this._needDrain = true; return false; } return this._proxy.add(entry); }; ProxyWriter.prototype.write = function(c) { if (!this._proxy) { this._buffer.push(["write", [c]]); this._needDrain = true; return false; } return this._proxy.write(c); }; ProxyWriter.prototype.end = function(c) { if (!this._proxy) { this._buffer.push(["end", [c]]); return false; } return this._proxy.end(c); }; } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/writer.js var require_writer = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/lib/writer.js"(exports2, module2) { module2.exports = Writer; var fs = require_graceful_fs(); var inherits2 = require_inherits(); var rimraf = require_rimraf(); var mkdir = require_mkdirp(); var path = require("path"); var umask = process.platform === "win32" ? 0 : process.umask(); var getType = require_get_type(); var Abstract = require_abstract(); inherits2(Writer, Abstract); Writer.dirmode = parseInt("0777", 8) & ~umask; Writer.filemode = parseInt("0666", 8) & ~umask; var DirWriter = require_dir_writer(); var LinkWriter = require_link_writer(); var FileWriter = require_file_writer(); var ProxyWriter = require_proxy_writer(); function Writer(props, current) { var self2 = this; if (typeof props === "string") { props = { path: props }; } var type = getType(props); var ClassType = Writer; switch (type) { case "Directory": ClassType = DirWriter; break; case "File": ClassType = FileWriter; break; case "Link": case "SymbolicLink": ClassType = LinkWriter; break; case null: default: ClassType = ProxyWriter; break; } if (!(self2 instanceof ClassType)) return new ClassType(props); Abstract.call(self2); if (!props.path) self2.error("Must provide a path", null, true); self2.type = props.type; self2.props = props; self2.depth = props.depth || 0; self2.clobber = props.clobber === false ? props.clobber : true; self2.parent = props.parent || null; self2.root = props.root || props.parent && props.parent.root || self2; self2._path = self2.path = path.resolve(props.path); if (process.platform === "win32") { self2.path = self2._path = self2.path.replace(/\?/g, "_"); if (self2._path.length >= 260) { self2._swallowErrors = true; self2._path = "\\\\?\\" + self2.path.replace(/\//g, "\\"); } } self2.basename = path.basename(props.path); self2.dirname = path.dirname(props.path); self2.linkpath = props.linkpath || null; props.parent = props.root = null; self2.size = props.size; if (typeof props.mode === "string") { props.mode = parseInt(props.mode, 8); } self2.readable = false; self2.writable = true; self2._buffer = []; self2.ready = false; self2.filter = typeof props.filter === "function" ? props.filter : null; self2._stat(current); } __name(Writer, "Writer"); Writer.prototype._create = function() { var self2 = this; fs[self2.props.follow ? "stat" : "lstat"](self2._path, function(er) { if (er) { return self2.warn("Cannot create " + self2._path + "\nUnsupported type: " + self2.type, "ENOTSUP"); } self2._finish(); }); }; Writer.prototype._stat = function(current) { var self2 = this; var props = self2.props; var stat = props.follow ? "stat" : "lstat"; var who = self2._proxy || self2; if (current) statCb(null, current); else fs[stat](self2._path, statCb); function statCb(er, current2) { if (self2.filter && !self2.filter.call(who, who, current2)) { self2._aborted = true; self2.emit("end"); self2.emit("close"); return; } if (er || !current2) { return create(self2); } self2._old = current2; var currentType = getType(current2); if (currentType !== self2.type || self2.type === "File" && current2.nlink > 1) { return rimraf(self2._path, function(er2) { if (er2) return self2.error(er2); self2._old = null; create(self2); }); } create(self2); } __name(statCb, "statCb"); }; function create(self2) { mkdir(path.dirname(self2._path), Writer.dirmode, function(er, made) { if (er) return self2.error(er); self2._madeDir = made; return self2._create(); }); } __name(create, "create"); function endChmod(self2, want, current, path2, cb) { var wantMode = want.mode; var chmod = want.follow || self2.type !== "SymbolicLink" ? "chmod" : "lchmod"; if (!fs[chmod]) return cb(); if (typeof wantMode !== "number") return cb(); var curMode = current.mode & parseInt("0777", 8); wantMode = wantMode & parseInt("0777", 8); if (wantMode === curMode) return cb(); fs[chmod](path2, wantMode, cb); } __name(endChmod, "endChmod"); function endChown(self2, want, current, path2, cb) { if (process.platform === "win32") return cb(); if (!process.getuid || process.getuid() !== 0) return cb(); if (typeof want.uid !== "number" && typeof want.gid !== "number") return cb(); if (current.uid === want.uid && current.gid === want.gid) return cb(); var chown = self2.props.follow || self2.type !== "SymbolicLink" ? "chown" : "lchown"; if (!fs[chown]) return cb(); if (typeof want.uid !== "number") want.uid = current.uid; if (typeof want.gid !== "number") want.gid = current.gid; fs[chown](path2, want.uid, want.gid, cb); } __name(endChown, "endChown"); function endUtimes(self2, want, current, path2, cb) { if (!fs.utimes || process.platform === "win32") return cb(); var utimes = want.follow || self2.type !== "SymbolicLink" ? "utimes" : "lutimes"; if (utimes === "lutimes" && !fs[utimes]) { utimes = "utimes"; } if (!fs[utimes]) return cb(); var curA = current.atime; var curM = current.mtime; var meA = want.atime; var meM = want.mtime; if (meA === void 0) meA = curA; if (meM === void 0) meM = curM; if (!isDate(meA)) meA = new Date(meA); if (!isDate(meM)) meA = new Date(meM); if (meA.getTime() === curA.getTime() && meM.getTime() === curM.getTime()) return cb(); fs[utimes](path2, meA, meM, cb); } __name(endUtimes, "endUtimes"); Writer.prototype._finish = function() { var self2 = this; if (self2._finishing) return; self2._finishing = true; var todo = 0; var errState = null; var done = false; if (self2._old) { self2._old.atime = /* @__PURE__ */ new Date(0); self2._old.mtime = /* @__PURE__ */ new Date(0); setProps(self2._old); } else { var stat = self2.props.follow ? "stat" : "lstat"; fs[stat](self2._path, function(er, current) { if (er) { if (er.code === "ENOENT" && (self2.type === "Link" || self2.type === "SymbolicLink") && process.platform === "win32") { self2.ready = true; self2.emit("ready"); self2.emit("end"); self2.emit("close"); self2.end = self2._finish = function() { }; return; } else return self2.error(er); } setProps(self2._old = current); }); } return; function setProps(current) { todo += 3; endChmod(self2, self2.props, current, self2._path, next("chmod")); endChown(self2, self2.props, current, self2._path, next("chown")); endUtimes(self2, self2.props, current, self2._path, next("utimes")); } __name(setProps, "setProps"); function next(what) { return function(er) { if (errState) return; if (er) { er.fstream_finish_call = what; return self2.error(errState = er); } if (--todo > 0) return; if (done) return; done = true; if (!self2._madeDir) return end(); else endMadeDir(self2, self2._path, end); function end(er2) { if (er2) { er2.fstream_finish_call = "setupMadeDir"; return self2.error(er2); } self2.emit("end"); self2.emit("close"); } __name(end, "end"); }; } __name(next, "next"); }; function endMadeDir(self2, p, cb) { var made = self2._madeDir; var d = path.dirname(p); endMadeDir_(self2, d, function(er) { if (er) return cb(er); if (d === made) { return cb(); } endMadeDir(self2, d, cb); }); } __name(endMadeDir, "endMadeDir"); function endMadeDir_(self2, p, cb) { var dirProps = {}; Object.keys(self2.props).forEach(function(k) { dirProps[k] = self2.props[k]; if (k === "mode" && self2.type !== "Directory") { dirProps[k] = dirProps[k] | parseInt("0111", 8); } }); var todo = 3; var errState = null; fs.stat(p, function(er, current) { if (er) return cb(errState = er); endChmod(self2, dirProps, current, p, next); endChown(self2, dirProps, current, p, next); endUtimes(self2, dirProps, current, p, next); }); function next(er) { if (errState) return; if (er) return cb(errState = er); if (--todo === 0) return cb(); } __name(next, "next"); } __name(endMadeDir_, "endMadeDir_"); Writer.prototype.pipe = function() { this.error("Can't pipe from writable stream"); }; Writer.prototype.add = function() { this.error("Can't add to non-Directory type"); }; Writer.prototype.write = function() { return true; }; function objectToString(d) { return Object.prototype.toString.call(d); } __name(objectToString, "objectToString"); function isDate(d) { return typeof d === "object" && objectToString(d) === "[object Date]"; } __name(isDate, "isDate"); } }); // ../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/fstream.js var require_fstream = __commonJS({ "../../node_modules/.pnpm/fstream@1.0.12/node_modules/fstream/fstream.js"(exports2) { exports2.Abstract = require_abstract(); exports2.Reader = require_reader(); exports2.Writer = require_writer(); exports2.File = { Reader: require_file_reader(), Writer: require_file_writer() }; exports2.Dir = { Reader: require_dir_reader(), Writer: require_dir_writer() }; exports2.Link = { Reader: require_link_reader(), Writer: require_link_writer() }; exports2.Proxy = { Reader: require_proxy_reader(), Writer: require_proxy_writer() }; exports2.Reader.Dir = exports2.DirReader = exports2.Dir.Reader; exports2.Reader.File = exports2.FileReader = exports2.File.Reader; exports2.Reader.Link = exports2.LinkReader = exports2.Link.Reader; exports2.Reader.Proxy = exports2.ProxyReader = exports2.Proxy.Reader; exports2.Writer.Dir = exports2.DirWriter = exports2.Dir.Writer; exports2.Writer.File = exports2.FileWriter = exports2.File.Writer; exports2.Writer.Link = exports2.LinkWriter = exports2.Link.Writer; exports2.Writer.Proxy = exports2.ProxyWriter = exports2.Proxy.Writer; exports2.collect = require_collect(); } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/extract.js var require_extract2 = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/extract.js"(exports2, module2) { module2.exports = Extract; var Parse = require_parse5(); var Writer = require_fstream().Writer; var path = require("path"); var stream = require("stream"); var duplexer2 = require_duplexer2(); var Promise2 = require_bluebird(); function Extract(opts) { opts.path = path.resolve(path.normalize(opts.path)); var parser = new Parse(opts); var outStream = new stream.Writable({ objectMode: true }); outStream._write = function(entry, encoding, cb) { if (entry.type == "Directory") return cb(); var extractPath = path.join(opts.path, entry.path); if (extractPath.indexOf(opts.path) != 0) { return cb(); } const writer = opts.getWriter ? opts.getWriter({ path: extractPath }) : Writer({ path: extractPath }); entry.pipe(writer).on("error", cb).on("close", cb); }; var extract = duplexer2(parser, outStream); parser.once("crx-header", function(crxHeader) { extract.crxHeader = crxHeader; }); parser.pipe(outStream).on("finish", function() { extract.emit("close"); }); extract.promise = function() { return new Promise2(function(resolve, reject) { extract.on("close", resolve); extract.on("error", reject); }); }; return extract; } __name(Extract, "Extract"); } }); // ../../node_modules/.pnpm/big-integer@1.6.52/node_modules/big-integer/BigInteger.js var require_BigInteger = __commonJS({ "../../node_modules/.pnpm/big-integer@1.6.52/node_modules/big-integer/BigInteger.js"(exports2, module2) { var bigInt = (function(undefined2) { "use strict"; var BASE = 1e7, LOG_BASE = 7, MAX_INT = 9007199254740992, MAX_INT_ARR = smallToArray(MAX_INT), DEFAULT_ALPHABET = "0123456789abcdefghijklmnopqrstuvwxyz"; var supportsNativeBigInt = typeof BigInt === "function"; function Integer(v, radix, alphabet, caseSensitive) { if (typeof v === "undefined") return Integer[0]; if (typeof radix !== "undefined") return +radix === 10 && !alphabet ? parseValue(v) : parseBase(v, radix, alphabet, caseSensitive); return parseValue(v); } __name(Integer, "Integer"); function BigInteger(value, sign) { this.value = value; this.sign = sign; this.isSmall = false; } __name(BigInteger, "BigInteger"); BigInteger.prototype = Object.create(Integer.prototype); function SmallInteger(value) { this.value = value; this.sign = value < 0; this.isSmall = true; } __name(SmallInteger, "SmallInteger"); SmallInteger.prototype = Object.create(Integer.prototype); function NativeBigInt(value) { this.value = value; } __name(NativeBigInt, "NativeBigInt"); NativeBigInt.prototype = Object.create(Integer.prototype); function isPrecise(n) { return -MAX_INT < n && n < MAX_INT; } __name(isPrecise, "isPrecise"); function smallToArray(n) { if (n < 1e7) return [n]; if (n < 1e14) return [n % 1e7, Math.floor(n / 1e7)]; return [n % 1e7, Math.floor(n / 1e7) % 1e7, Math.floor(n / 1e14)]; } __name(smallToArray, "smallToArray"); function arrayToSmall(arr) { trim(arr); var length = arr.length; if (length < 4 && compareAbs(arr, MAX_INT_ARR) < 0) { switch (length) { case 0: return 0; case 1: return arr[0]; case 2: return arr[0] + arr[1] * BASE; default: return arr[0] + (arr[1] + arr[2] * BASE) * BASE; } } return arr; } __name(arrayToSmall, "arrayToSmall"); function trim(v) { var i2 = v.length; while (v[--i2] === 0) ; v.length = i2 + 1; } __name(trim, "trim"); function createArray(length) { var x = new Array(length); var i2 = -1; while (++i2 < length) { x[i2] = 0; } return x; } __name(createArray, "createArray"); function truncate(n) { if (n > 0) return Math.floor(n); return Math.ceil(n); } __name(truncate, "truncate"); function add(a, b) { var l_a = a.length, l_b = b.length, r = new Array(l_a), carry = 0, base = BASE, sum, i2; for (i2 = 0; i2 < l_b; i2++) { sum = a[i2] + b[i2] + carry; carry = sum >= base ? 1 : 0; r[i2] = sum - carry * base; } while (i2 < l_a) { sum = a[i2] + carry; carry = sum === base ? 1 : 0; r[i2++] = sum - carry * base; } if (carry > 0) r.push(carry); return r; } __name(add, "add"); function addAny(a, b) { if (a.length >= b.length) return add(a, b); return add(b, a); } __name(addAny, "addAny"); function addSmall(a, carry) { var l2 = a.length, r = new Array(l2), base = BASE, sum, i2; for (i2 = 0; i2 < l2; i2++) { sum = a[i2] - base + carry; carry = Math.floor(sum / base); r[i2] = sum - carry * base; carry += 1; } while (carry > 0) { r[i2++] = carry % base; carry = Math.floor(carry / base); } return r; } __name(addSmall, "addSmall"); BigInteger.prototype.add = function(v) { var n = parseValue(v); if (this.sign !== n.sign) { return this.subtract(n.negate()); } var a = this.value, b = n.value; if (n.isSmall) { return new BigInteger(addSmall(a, Math.abs(b)), this.sign); } return new BigInteger(addAny(a, b), this.sign); }; BigInteger.prototype.plus = BigInteger.prototype.add; SmallInteger.prototype.add = function(v) { var n = parseValue(v); var a = this.value; if (a < 0 !== n.sign) { return this.subtract(n.negate()); } var b = n.value; if (n.isSmall) { if (isPrecise(a + b)) return new SmallInteger(a + b); b = smallToArray(Math.abs(b)); } return new BigInteger(addSmall(b, Math.abs(a)), a < 0); }; SmallInteger.prototype.plus = SmallInteger.prototype.add; NativeBigInt.prototype.add = function(v) { return new NativeBigInt(this.value + parseValue(v).value); }; NativeBigInt.prototype.plus = NativeBigInt.prototype.add; function subtract(a, b) { var a_l = a.length, b_l = b.length, r = new Array(a_l), borrow = 0, base = BASE, i2, difference; for (i2 = 0; i2 < b_l; i2++) { difference = a[i2] - borrow - b[i2]; if (difference < 0) { difference += base; borrow = 1; } else borrow = 0; r[i2] = difference; } for (i2 = b_l; i2 < a_l; i2++) { difference = a[i2] - borrow; if (difference < 0) difference += base; else { r[i2++] = difference; break; } r[i2] = difference; } for (; i2 < a_l; i2++) { r[i2] = a[i2]; } trim(r); return r; } __name(subtract, "subtract"); function subtractAny(a, b, sign) { var value; if (compareAbs(a, b) >= 0) { value = subtract(a, b); } else { value = subtract(b, a); sign = !sign; } value = arrayToSmall(value); if (typeof value === "number") { if (sign) value = -value; return new SmallInteger(value); } return new BigInteger(value, sign); } __name(subtractAny, "subtractAny"); function subtractSmall(a, b, sign) { var l2 = a.length, r = new Array(l2), carry = -b, base = BASE, i2, difference; for (i2 = 0; i2 < l2; i2++) { difference = a[i2] + carry; carry = Math.floor(difference / base); difference %= base; r[i2] = difference < 0 ? difference + base : difference; } r = arrayToSmall(r); if (typeof r === "number") { if (sign) r = -r; return new SmallInteger(r); } return new BigInteger(r, sign); } __name(subtractSmall, "subtractSmall"); BigInteger.prototype.subtract = function(v) { var n = parseValue(v); if (this.sign !== n.sign) { return this.add(n.negate()); } var a = this.value, b = n.value; if (n.isSmall) return subtractSmall(a, Math.abs(b), this.sign); return subtractAny(a, b, this.sign); }; BigInteger.prototype.minus = BigInteger.prototype.subtract; SmallInteger.prototype.subtract = function(v) { var n = parseValue(v); var a = this.value; if (a < 0 !== n.sign) { return this.add(n.negate()); } var b = n.value; if (n.isSmall) { return new SmallInteger(a - b); } return subtractSmall(b, Math.abs(a), a >= 0); }; SmallInteger.prototype.minus = SmallInteger.prototype.subtract; NativeBigInt.prototype.subtract = function(v) { return new NativeBigInt(this.value - parseValue(v).value); }; NativeBigInt.prototype.minus = NativeBigInt.prototype.subtract; BigInteger.prototype.negate = function() { return new BigInteger(this.value, !this.sign); }; SmallInteger.prototype.negate = function() { var sign = this.sign; var small = new SmallInteger(-this.value); small.sign = !sign; return small; }; NativeBigInt.prototype.negate = function() { return new NativeBigInt(-this.value); }; BigInteger.prototype.abs = function() { return new BigInteger(this.value, false); }; SmallInteger.prototype.abs = function() { return new SmallInteger(Math.abs(this.value)); }; NativeBigInt.prototype.abs = function() { return new NativeBigInt(this.value >= 0 ? this.value : -this.value); }; function multiplyLong(a, b) { var a_l = a.length, b_l = b.length, l2 = a_l + b_l, r = createArray(l2), base = BASE, product, carry, i2, a_i, b_j; for (i2 = 0; i2 < a_l; ++i2) { a_i = a[i2]; for (var j = 0; j < b_l; ++j) { b_j = b[j]; product = a_i * b_j + r[i2 + j]; carry = Math.floor(product / base); r[i2 + j] = product - carry * base; r[i2 + j + 1] += carry; } } trim(r); return r; } __name(multiplyLong, "multiplyLong"); function multiplySmall(a, b) { var l2 = a.length, r = new Array(l2), base = BASE, carry = 0, product, i2; for (i2 = 0; i2 < l2; i2++) { product = a[i2] * b + carry; carry = Math.floor(product / base); r[i2] = product - carry * base; } while (carry > 0) { r[i2++] = carry % base; carry = Math.floor(carry / base); } return r; } __name(multiplySmall, "multiplySmall"); function shiftLeft(x, n) { var r = []; while (n-- > 0) r.push(0); return r.concat(x); } __name(shiftLeft, "shiftLeft"); function multiplyKaratsuba(x, y) { var n = Math.max(x.length, y.length); if (n <= 30) return multiplyLong(x, y); n = Math.ceil(n / 2); var b = x.slice(n), a = x.slice(0, n), d = y.slice(n), c = y.slice(0, n); var ac = multiplyKaratsuba(a, c), bd = multiplyKaratsuba(b, d), abcd = multiplyKaratsuba(addAny(a, b), addAny(c, d)); var product = addAny(addAny(ac, shiftLeft(subtract(subtract(abcd, ac), bd), n)), shiftLeft(bd, 2 * n)); trim(product); return product; } __name(multiplyKaratsuba, "multiplyKaratsuba"); function useKaratsuba(l1, l2) { return -0.012 * l1 - 0.012 * l2 + 15e-6 * l1 * l2 > 0; } __name(useKaratsuba, "useKaratsuba"); BigInteger.prototype.multiply = function(v) { var n = parseValue(v), a = this.value, b = n.value, sign = this.sign !== n.sign, abs; if (n.isSmall) { if (b === 0) return Integer[0]; if (b === 1) return this; if (b === -1) return this.negate(); abs = Math.abs(b); if (abs < BASE) { return new BigInteger(multiplySmall(a, abs), sign); } b = smallToArray(abs); } if (useKaratsuba(a.length, b.length)) return new BigInteger(multiplyKaratsuba(a, b), sign); return new BigInteger(multiplyLong(a, b), sign); }; BigInteger.prototype.times = BigInteger.prototype.multiply; function multiplySmallAndArray(a, b, sign) { if (a < BASE) { return new BigInteger(multiplySmall(b, a), sign); } return new BigInteger(multiplyLong(b, smallToArray(a)), sign); } __name(multiplySmallAndArray, "multiplySmallAndArray"); SmallInteger.prototype._multiplyBySmall = function(a) { if (isPrecise(a.value * this.value)) { return new SmallInteger(a.value * this.value); } return multiplySmallAndArray(Math.abs(a.value), smallToArray(Math.abs(this.value)), this.sign !== a.sign); }; BigInteger.prototype._multiplyBySmall = function(a) { if (a.value === 0) return Integer[0]; if (a.value === 1) return this; if (a.value === -1) return this.negate(); return multiplySmallAndArray(Math.abs(a.value), this.value, this.sign !== a.sign); }; SmallInteger.prototype.multiply = function(v) { return parseValue(v)._multiplyBySmall(this); }; SmallInteger.prototype.times = SmallInteger.prototype.multiply; NativeBigInt.prototype.multiply = function(v) { return new NativeBigInt(this.value * parseValue(v).value); }; NativeBigInt.prototype.times = NativeBigInt.prototype.multiply; function square(a) { var l2 = a.length, r = createArray(l2 + l2), base = BASE, product, carry, i2, a_i, a_j; for (i2 = 0; i2 < l2; i2++) { a_i = a[i2]; carry = 0 - a_i * a_i; for (var j = i2; j < l2; j++) { a_j = a[j]; product = 2 * (a_i * a_j) + r[i2 + j] + carry; carry = Math.floor(product / base); r[i2 + j] = product - carry * base; } r[i2 + l2] = carry; } trim(r); return r; } __name(square, "square"); BigInteger.prototype.square = function() { return new BigInteger(square(this.value), false); }; SmallInteger.prototype.square = function() { var value = this.value * this.value; if (isPrecise(value)) return new SmallInteger(value); return new BigInteger(square(smallToArray(Math.abs(this.value))), false); }; NativeBigInt.prototype.square = function(v) { return new NativeBigInt(this.value * this.value); }; function divMod1(a, b) { var a_l = a.length, b_l = b.length, base = BASE, result = createArray(b.length), divisorMostSignificantDigit = b[b_l - 1], lambda = Math.ceil(base / (2 * divisorMostSignificantDigit)), remainder = multiplySmall(a, lambda), divisor = multiplySmall(b, lambda), quotientDigit, shift, carry, borrow, i2, l2, q; if (remainder.length <= a_l) remainder.push(0); divisor.push(0); divisorMostSignificantDigit = divisor[b_l - 1]; for (shift = a_l - b_l; shift >= 0; shift--) { quotientDigit = base - 1; if (remainder[shift + b_l] !== divisorMostSignificantDigit) { quotientDigit = Math.floor((remainder[shift + b_l] * base + remainder[shift + b_l - 1]) / divisorMostSignificantDigit); } carry = 0; borrow = 0; l2 = divisor.length; for (i2 = 0; i2 < l2; i2++) { carry += quotientDigit * divisor[i2]; q = Math.floor(carry / base); borrow += remainder[shift + i2] - (carry - q * base); carry = q; if (borrow < 0) { remainder[shift + i2] = borrow + base; borrow = -1; } else { remainder[shift + i2] = borrow; borrow = 0; } } while (borrow !== 0) { quotientDigit -= 1; carry = 0; for (i2 = 0; i2 < l2; i2++) { carry += remainder[shift + i2] - base + divisor[i2]; if (carry < 0) { remainder[shift + i2] = carry + base; carry = 0; } else { remainder[shift + i2] = carry; carry = 1; } } borrow += carry; } result[shift] = quotientDigit; } remainder = divModSmall(remainder, lambda)[0]; return [arrayToSmall(result), arrayToSmall(remainder)]; } __name(divMod1, "divMod1"); function divMod2(a, b) { var a_l = a.length, b_l = b.length, result = [], part = [], base = BASE, guess, xlen, highx, highy, check; while (a_l) { part.unshift(a[--a_l]); trim(part); if (compareAbs(part, b) < 0) { result.push(0); continue; } xlen = part.length; highx = part[xlen - 1] * base + part[xlen - 2]; highy = b[b_l - 1] * base + b[b_l - 2]; if (xlen > b_l) { highx = (highx + 1) * base; } guess = Math.ceil(highx / highy); do { check = multiplySmall(b, guess); if (compareAbs(check, part) <= 0) break; guess--; } while (guess); result.push(guess); part = subtract(part, check); } result.reverse(); return [arrayToSmall(result), arrayToSmall(part)]; } __name(divMod2, "divMod2"); function divModSmall(value, lambda) { var length = value.length, quotient = createArray(length), base = BASE, i2, q, remainder, divisor; remainder = 0; for (i2 = length - 1; i2 >= 0; --i2) { divisor = remainder * base + value[i2]; q = truncate(divisor / lambda); remainder = divisor - q * lambda; quotient[i2] = q | 0; } return [quotient, remainder | 0]; } __name(divModSmall, "divModSmall"); function divModAny(self2, v) { var value, n = parseValue(v); if (supportsNativeBigInt) { return [new NativeBigInt(self2.value / n.value), new NativeBigInt(self2.value % n.value)]; } var a = self2.value, b = n.value; var quotient; if (b === 0) throw new Error("Cannot divide by zero"); if (self2.isSmall) { if (n.isSmall) { return [new SmallInteger(truncate(a / b)), new SmallInteger(a % b)]; } return [Integer[0], self2]; } if (n.isSmall) { if (b === 1) return [self2, Integer[0]]; if (b == -1) return [self2.negate(), Integer[0]]; var abs = Math.abs(b); if (abs < BASE) { value = divModSmall(a, abs); quotient = arrayToSmall(value[0]); var remainder = value[1]; if (self2.sign) remainder = -remainder; if (typeof quotient === "number") { if (self2.sign !== n.sign) quotient = -quotient; return [new SmallInteger(quotient), new SmallInteger(remainder)]; } return [new BigInteger(quotient, self2.sign !== n.sign), new SmallInteger(remainder)]; } b = smallToArray(abs); } var comparison = compareAbs(a, b); if (comparison === -1) return [Integer[0], self2]; if (comparison === 0) return [Integer[self2.sign === n.sign ? 1 : -1], Integer[0]]; if (a.length + b.length <= 200) value = divMod1(a, b); else value = divMod2(a, b); quotient = value[0]; var qSign = self2.sign !== n.sign, mod = value[1], mSign = self2.sign; if (typeof quotient === "number") { if (qSign) quotient = -quotient; quotient = new SmallInteger(quotient); } else quotient = new BigInteger(quotient, qSign); if (typeof mod === "number") { if (mSign) mod = -mod; mod = new SmallInteger(mod); } else mod = new BigInteger(mod, mSign); return [quotient, mod]; } __name(divModAny, "divModAny"); BigInteger.prototype.divmod = function(v) { var result = divModAny(this, v); return { quotient: result[0], remainder: result[1] }; }; NativeBigInt.prototype.divmod = SmallInteger.prototype.divmod = BigInteger.prototype.divmod; BigInteger.prototype.divide = function(v) { return divModAny(this, v)[0]; }; NativeBigInt.prototype.over = NativeBigInt.prototype.divide = function(v) { return new NativeBigInt(this.value / parseValue(v).value); }; SmallInteger.prototype.over = SmallInteger.prototype.divide = BigInteger.prototype.over = BigInteger.prototype.divide; BigInteger.prototype.mod = function(v) { return divModAny(this, v)[1]; }; NativeBigInt.prototype.mod = NativeBigInt.prototype.remainder = function(v) { return new NativeBigInt(this.value % parseValue(v).value); }; SmallInteger.prototype.remainder = SmallInteger.prototype.mod = BigInteger.prototype.remainder = BigInteger.prototype.mod; BigInteger.prototype.pow = function(v) { var n = parseValue(v), a = this.value, b = n.value, value, x, y; if (b === 0) return Integer[1]; if (a === 0) return Integer[0]; if (a === 1) return Integer[1]; if (a === -1) return n.isEven() ? Integer[1] : Integer[-1]; if (n.sign) { return Integer[0]; } if (!n.isSmall) throw new Error("The exponent " + n.toString() + " is too large."); if (this.isSmall) { if (isPrecise(value = Math.pow(a, b))) return new SmallInteger(truncate(value)); } x = this; y = Integer[1]; while (true) { if (b & true) { y = y.times(x); --b; } if (b === 0) break; b /= 2; x = x.square(); } return y; }; SmallInteger.prototype.pow = BigInteger.prototype.pow; NativeBigInt.prototype.pow = function(v) { var n = parseValue(v); var a = this.value, b = n.value; var _0 = BigInt(0), _1 = BigInt(1), _2 = BigInt(2); if (b === _0) return Integer[1]; if (a === _0) return Integer[0]; if (a === _1) return Integer[1]; if (a === BigInt(-1)) return n.isEven() ? Integer[1] : Integer[-1]; if (n.isNegative()) return new NativeBigInt(_0); var x = this; var y = Integer[1]; while (true) { if ((b & _1) === _1) { y = y.times(x); --b; } if (b === _0) break; b /= _2; x = x.square(); } return y; }; BigInteger.prototype.modPow = function(exp, mod) { exp = parseValue(exp); mod = parseValue(mod); if (mod.isZero()) throw new Error("Cannot take modPow with modulus 0"); var r = Integer[1], base = this.mod(mod); if (exp.isNegative()) { exp = exp.multiply(Integer[-1]); base = base.modInv(mod); } while (exp.isPositive()) { if (base.isZero()) return Integer[0]; if (exp.isOdd()) r = r.multiply(base).mod(mod); exp = exp.divide(2); base = base.square().mod(mod); } return r; }; NativeBigInt.prototype.modPow = SmallInteger.prototype.modPow = BigInteger.prototype.modPow; function compareAbs(a, b) { if (a.length !== b.length) { return a.length > b.length ? 1 : -1; } for (var i2 = a.length - 1; i2 >= 0; i2--) { if (a[i2] !== b[i2]) return a[i2] > b[i2] ? 1 : -1; } return 0; } __name(compareAbs, "compareAbs"); BigInteger.prototype.compareAbs = function(v) { var n = parseValue(v), a = this.value, b = n.value; if (n.isSmall) return 1; return compareAbs(a, b); }; SmallInteger.prototype.compareAbs = function(v) { var n = parseValue(v), a = Math.abs(this.value), b = n.value; if (n.isSmall) { b = Math.abs(b); return a === b ? 0 : a > b ? 1 : -1; } return -1; }; NativeBigInt.prototype.compareAbs = function(v) { var a = this.value; var b = parseValue(v).value; a = a >= 0 ? a : -a; b = b >= 0 ? b : -b; return a === b ? 0 : a > b ? 1 : -1; }; BigInteger.prototype.compare = function(v) { if (v === Infinity) { return -1; } if (v === -Infinity) { return 1; } var n = parseValue(v), a = this.value, b = n.value; if (this.sign !== n.sign) { return n.sign ? 1 : -1; } if (n.isSmall) { return this.sign ? -1 : 1; } return compareAbs(a, b) * (this.sign ? -1 : 1); }; BigInteger.prototype.compareTo = BigInteger.prototype.compare; SmallInteger.prototype.compare = function(v) { if (v === Infinity) { return -1; } if (v === -Infinity) { return 1; } var n = parseValue(v), a = this.value, b = n.value; if (n.isSmall) { return a == b ? 0 : a > b ? 1 : -1; } if (a < 0 !== n.sign) { return a < 0 ? -1 : 1; } return a < 0 ? 1 : -1; }; SmallInteger.prototype.compareTo = SmallInteger.prototype.compare; NativeBigInt.prototype.compare = function(v) { if (v === Infinity) { return -1; } if (v === -Infinity) { return 1; } var a = this.value; var b = parseValue(v).value; return a === b ? 0 : a > b ? 1 : -1; }; NativeBigInt.prototype.compareTo = NativeBigInt.prototype.compare; BigInteger.prototype.equals = function(v) { return this.compare(v) === 0; }; NativeBigInt.prototype.eq = NativeBigInt.prototype.equals = SmallInteger.prototype.eq = SmallInteger.prototype.equals = BigInteger.prototype.eq = BigInteger.prototype.equals; BigInteger.prototype.notEquals = function(v) { return this.compare(v) !== 0; }; NativeBigInt.prototype.neq = NativeBigInt.prototype.notEquals = SmallInteger.prototype.neq = SmallInteger.prototype.notEquals = BigInteger.prototype.neq = BigInteger.prototype.notEquals; BigInteger.prototype.greater = function(v) { return this.compare(v) > 0; }; NativeBigInt.prototype.gt = NativeBigInt.prototype.greater = SmallInteger.prototype.gt = SmallInteger.prototype.greater = BigInteger.prototype.gt = BigInteger.prototype.greater; BigInteger.prototype.lesser = function(v) { return this.compare(v) < 0; }; NativeBigInt.prototype.lt = NativeBigInt.prototype.lesser = SmallInteger.prototype.lt = SmallInteger.prototype.lesser = BigInteger.prototype.lt = BigInteger.prototype.lesser; BigInteger.prototype.greaterOrEquals = function(v) { return this.compare(v) >= 0; }; NativeBigInt.prototype.geq = NativeBigInt.prototype.greaterOrEquals = SmallInteger.prototype.geq = SmallInteger.prototype.greaterOrEquals = BigInteger.prototype.geq = BigInteger.prototype.greaterOrEquals; BigInteger.prototype.lesserOrEquals = function(v) { return this.compare(v) <= 0; }; NativeBigInt.prototype.leq = NativeBigInt.prototype.lesserOrEquals = SmallInteger.prototype.leq = SmallInteger.prototype.lesserOrEquals = BigInteger.prototype.leq = BigInteger.prototype.lesserOrEquals; BigInteger.prototype.isEven = function() { return (this.value[0] & 1) === 0; }; SmallInteger.prototype.isEven = function() { return (this.value & 1) === 0; }; NativeBigInt.prototype.isEven = function() { return (this.value & BigInt(1)) === BigInt(0); }; BigInteger.prototype.isOdd = function() { return (this.value[0] & 1) === 1; }; SmallInteger.prototype.isOdd = function() { return (this.value & 1) === 1; }; NativeBigInt.prototype.isOdd = function() { return (this.value & BigInt(1)) === BigInt(1); }; BigInteger.prototype.isPositive = function() { return !this.sign; }; SmallInteger.prototype.isPositive = function() { return this.value > 0; }; NativeBigInt.prototype.isPositive = SmallInteger.prototype.isPositive; BigInteger.prototype.isNegative = function() { return this.sign; }; SmallInteger.prototype.isNegative = function() { return this.value < 0; }; NativeBigInt.prototype.isNegative = SmallInteger.prototype.isNegative; BigInteger.prototype.isUnit = function() { return false; }; SmallInteger.prototype.isUnit = function() { return Math.abs(this.value) === 1; }; NativeBigInt.prototype.isUnit = function() { return this.abs().value === BigInt(1); }; BigInteger.prototype.isZero = function() { return false; }; SmallInteger.prototype.isZero = function() { return this.value === 0; }; NativeBigInt.prototype.isZero = function() { return this.value === BigInt(0); }; BigInteger.prototype.isDivisibleBy = function(v) { var n = parseValue(v); if (n.isZero()) return false; if (n.isUnit()) return true; if (n.compareAbs(2) === 0) return this.isEven(); return this.mod(n).isZero(); }; NativeBigInt.prototype.isDivisibleBy = SmallInteger.prototype.isDivisibleBy = BigInteger.prototype.isDivisibleBy; function isBasicPrime(v) { var n = v.abs(); if (n.isUnit()) return false; if (n.equals(2) || n.equals(3) || n.equals(5)) return true; if (n.isEven() || n.isDivisibleBy(3) || n.isDivisibleBy(5)) return false; if (n.lesser(49)) return true; } __name(isBasicPrime, "isBasicPrime"); function millerRabinTest(n, a) { var nPrev = n.prev(), b = nPrev, r = 0, d, t, i2, x; while (b.isEven()) b = b.divide(2), r++; next: for (i2 = 0; i2 < a.length; i2++) { if (n.lesser(a[i2])) continue; x = bigInt(a[i2]).modPow(b, n); if (x.isUnit() || x.equals(nPrev)) continue; for (d = r - 1; d != 0; d--) { x = x.square().mod(n); if (x.isUnit()) return false; if (x.equals(nPrev)) continue next; } return false; } return true; } __name(millerRabinTest, "millerRabinTest"); BigInteger.prototype.isPrime = function(strict) { var isPrime = isBasicPrime(this); if (isPrime !== undefined2) return isPrime; var n = this.abs(); var bits = n.bitLength(); if (bits <= 64) return millerRabinTest(n, [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37]); var logN = Math.log(2) * bits.toJSNumber(); var t = Math.ceil(strict === true ? 2 * Math.pow(logN, 2) : logN); for (var a = [], i2 = 0; i2 < t; i2++) { a.push(bigInt(i2 + 2)); } return millerRabinTest(n, a); }; NativeBigInt.prototype.isPrime = SmallInteger.prototype.isPrime = BigInteger.prototype.isPrime; BigInteger.prototype.isProbablePrime = function(iterations, rng2) { var isPrime = isBasicPrime(this); if (isPrime !== undefined2) return isPrime; var n = this.abs(); var t = iterations === undefined2 ? 5 : iterations; for (var a = [], i2 = 0; i2 < t; i2++) { a.push(bigInt.randBetween(2, n.minus(2), rng2)); } return millerRabinTest(n, a); }; NativeBigInt.prototype.isProbablePrime = SmallInteger.prototype.isProbablePrime = BigInteger.prototype.isProbablePrime; BigInteger.prototype.modInv = function(n) { var t = bigInt.zero, newT = bigInt.one, r = parseValue(n), newR = this.abs(), q, lastT, lastR; while (!newR.isZero()) { q = r.divide(newR); lastT = t; lastR = r; t = newT; r = newR; newT = lastT.subtract(q.multiply(newT)); newR = lastR.subtract(q.multiply(newR)); } if (!r.isUnit()) throw new Error(this.toString() + " and " + n.toString() + " are not co-prime"); if (t.compare(0) === -1) { t = t.add(n); } if (this.isNegative()) { return t.negate(); } return t; }; NativeBigInt.prototype.modInv = SmallInteger.prototype.modInv = BigInteger.prototype.modInv; BigInteger.prototype.next = function() { var value = this.value; if (this.sign) { return subtractSmall(value, 1, this.sign); } return new BigInteger(addSmall(value, 1), this.sign); }; SmallInteger.prototype.next = function() { var value = this.value; if (value + 1 < MAX_INT) return new SmallInteger(value + 1); return new BigInteger(MAX_INT_ARR, false); }; NativeBigInt.prototype.next = function() { return new NativeBigInt(this.value + BigInt(1)); }; BigInteger.prototype.prev = function() { var value = this.value; if (this.sign) { return new BigInteger(addSmall(value, 1), true); } return subtractSmall(value, 1, this.sign); }; SmallInteger.prototype.prev = function() { var value = this.value; if (value - 1 > -MAX_INT) return new SmallInteger(value - 1); return new BigInteger(MAX_INT_ARR, true); }; NativeBigInt.prototype.prev = function() { return new NativeBigInt(this.value - BigInt(1)); }; var powersOfTwo = [1]; while (2 * powersOfTwo[powersOfTwo.length - 1] <= BASE) powersOfTwo.push(2 * powersOfTwo[powersOfTwo.length - 1]); var powers2Length = powersOfTwo.length, highestPower2 = powersOfTwo[powers2Length - 1]; function shift_isSmall(n) { return Math.abs(n) <= BASE; } __name(shift_isSmall, "shift_isSmall"); BigInteger.prototype.shiftLeft = function(v) { var n = parseValue(v).toJSNumber(); if (!shift_isSmall(n)) { throw new Error(String(n) + " is too large for shifting."); } if (n < 0) return this.shiftRight(-n); var result = this; if (result.isZero()) return result; while (n >= powers2Length) { result = result.multiply(highestPower2); n -= powers2Length - 1; } return result.multiply(powersOfTwo[n]); }; NativeBigInt.prototype.shiftLeft = SmallInteger.prototype.shiftLeft = BigInteger.prototype.shiftLeft; BigInteger.prototype.shiftRight = function(v) { var remQuo; var n = parseValue(v).toJSNumber(); if (!shift_isSmall(n)) { throw new Error(String(n) + " is too large for shifting."); } if (n < 0) return this.shiftLeft(-n); var result = this; while (n >= powers2Length) { if (result.isZero() || result.isNegative() && result.isUnit()) return result; remQuo = divModAny(result, highestPower2); result = remQuo[1].isNegative() ? remQuo[0].prev() : remQuo[0]; n -= powers2Length - 1; } remQuo = divModAny(result, powersOfTwo[n]); return remQuo[1].isNegative() ? remQuo[0].prev() : remQuo[0]; }; NativeBigInt.prototype.shiftRight = SmallInteger.prototype.shiftRight = BigInteger.prototype.shiftRight; function bitwise(x, y, fn) { y = parseValue(y); var xSign = x.isNegative(), ySign = y.isNegative(); var xRem = xSign ? x.not() : x, yRem = ySign ? y.not() : y; var xDigit = 0, yDigit = 0; var xDivMod = null, yDivMod = null; var result = []; while (!xRem.isZero() || !yRem.isZero()) { xDivMod = divModAny(xRem, highestPower2); xDigit = xDivMod[1].toJSNumber(); if (xSign) { xDigit = highestPower2 - 1 - xDigit; } yDivMod = divModAny(yRem, highestPower2); yDigit = yDivMod[1].toJSNumber(); if (ySign) { yDigit = highestPower2 - 1 - yDigit; } xRem = xDivMod[0]; yRem = yDivMod[0]; result.push(fn(xDigit, yDigit)); } var sum = fn(xSign ? 1 : 0, ySign ? 1 : 0) !== 0 ? bigInt(-1) : bigInt(0); for (var i2 = result.length - 1; i2 >= 0; i2 -= 1) { sum = sum.multiply(highestPower2).add(bigInt(result[i2])); } return sum; } __name(bitwise, "bitwise"); BigInteger.prototype.not = function() { return this.negate().prev(); }; NativeBigInt.prototype.not = SmallInteger.prototype.not = BigInteger.prototype.not; BigInteger.prototype.and = function(n) { return bitwise(this, n, function(a, b) { return a & b; }); }; NativeBigInt.prototype.and = SmallInteger.prototype.and = BigInteger.prototype.and; BigInteger.prototype.or = function(n) { return bitwise(this, n, function(a, b) { return a | b; }); }; NativeBigInt.prototype.or = SmallInteger.prototype.or = BigInteger.prototype.or; BigInteger.prototype.xor = function(n) { return bitwise(this, n, function(a, b) { return a ^ b; }); }; NativeBigInt.prototype.xor = SmallInteger.prototype.xor = BigInteger.prototype.xor; var LOBMASK_I = 1 << 30, LOBMASK_BI = (BASE & -BASE) * (BASE & -BASE) | LOBMASK_I; function roughLOB(n) { var v = n.value, x = typeof v === "number" ? v | LOBMASK_I : typeof v === "bigint" ? v | BigInt(LOBMASK_I) : v[0] + v[1] * BASE | LOBMASK_BI; return x & -x; } __name(roughLOB, "roughLOB"); function integerLogarithm(value, base) { if (base.compareTo(value) <= 0) { var tmp = integerLogarithm(value, base.square(base)); var p = tmp.p; var e = tmp.e; var t = p.multiply(base); return t.compareTo(value) <= 0 ? { p: t, e: e * 2 + 1 } : { p, e: e * 2 }; } return { p: bigInt(1), e: 0 }; } __name(integerLogarithm, "integerLogarithm"); BigInteger.prototype.bitLength = function() { var n = this; if (n.compareTo(bigInt(0)) < 0) { n = n.negate().subtract(bigInt(1)); } if (n.compareTo(bigInt(0)) === 0) { return bigInt(0); } return bigInt(integerLogarithm(n, bigInt(2)).e).add(bigInt(1)); }; NativeBigInt.prototype.bitLength = SmallInteger.prototype.bitLength = BigInteger.prototype.bitLength; function max(a, b) { a = parseValue(a); b = parseValue(b); return a.greater(b) ? a : b; } __name(max, "max"); function min(a, b) { a = parseValue(a); b = parseValue(b); return a.lesser(b) ? a : b; } __name(min, "min"); function gcd(a, b) { a = parseValue(a).abs(); b = parseValue(b).abs(); if (a.equals(b)) return a; if (a.isZero()) return b; if (b.isZero()) return a; var c = Integer[1], d, t; while (a.isEven() && b.isEven()) { d = min(roughLOB(a), roughLOB(b)); a = a.divide(d); b = b.divide(d); c = c.multiply(d); } while (a.isEven()) { a = a.divide(roughLOB(a)); } do { while (b.isEven()) { b = b.divide(roughLOB(b)); } if (a.greater(b)) { t = b; b = a; a = t; } b = b.subtract(a); } while (!b.isZero()); return c.isUnit() ? a : a.multiply(c); } __name(gcd, "gcd"); function lcm(a, b) { a = parseValue(a).abs(); b = parseValue(b).abs(); return a.divide(gcd(a, b)).multiply(b); } __name(lcm, "lcm"); function randBetween(a, b, rng2) { a = parseValue(a); b = parseValue(b); var usedRNG = rng2 || Math.random; var low = min(a, b), high = max(a, b); var range = high.subtract(low).add(1); if (range.isSmall) return low.add(Math.floor(usedRNG() * range)); var digits = toBase(range, BASE).value; var result = [], restricted = true; for (var i2 = 0; i2 < digits.length; i2++) { var top = restricted ? digits[i2] + (i2 + 1 < digits.length ? digits[i2 + 1] / BASE : 0) : BASE; var digit = truncate(usedRNG() * top); result.push(digit); if (digit < digits[i2]) restricted = false; } return low.add(Integer.fromArray(result, BASE, false)); } __name(randBetween, "randBetween"); var parseBase = /* @__PURE__ */ __name(function(text, base, alphabet, caseSensitive) { alphabet = alphabet || DEFAULT_ALPHABET; text = String(text); if (!caseSensitive) { text = text.toLowerCase(); alphabet = alphabet.toLowerCase(); } var length = text.length; var i2; var absBase = Math.abs(base); var alphabetValues = {}; for (i2 = 0; i2 < alphabet.length; i2++) { alphabetValues[alphabet[i2]] = i2; } for (i2 = 0; i2 < length; i2++) { var c = text[i2]; if (c === "-") continue; if (c in alphabetValues) { if (alphabetValues[c] >= absBase) { if (c === "1" && absBase === 1) continue; throw new Error(c + " is not a valid digit in base " + base + "."); } } } base = parseValue(base); var digits = []; var isNegative = text[0] === "-"; for (i2 = isNegative ? 1 : 0; i2 < text.length; i2++) { var c = text[i2]; if (c in alphabetValues) digits.push(parseValue(alphabetValues[c])); else if (c === "<") { var start = i2; do { i2++; } while (text[i2] !== ">" && i2 < text.length); digits.push(parseValue(text.slice(start + 1, i2))); } else throw new Error(c + " is not a valid character"); } return parseBaseFromArray(digits, base, isNegative); }, "parseBase"); function parseBaseFromArray(digits, base, isNegative) { var val = Integer[0], pow = Integer[1], i2; for (i2 = digits.length - 1; i2 >= 0; i2--) { val = val.add(digits[i2].times(pow)); pow = pow.times(base); } return isNegative ? val.negate() : val; } __name(parseBaseFromArray, "parseBaseFromArray"); function stringify2(digit, alphabet) { alphabet = alphabet || DEFAULT_ALPHABET; if (digit < alphabet.length) { return alphabet[digit]; } return "<" + digit + ">"; } __name(stringify2, "stringify"); function toBase(n, base) { base = bigInt(base); if (base.isZero()) { if (n.isZero()) return { value: [0], isNegative: false }; throw new Error("Cannot convert nonzero numbers to base 0."); } if (base.equals(-1)) { if (n.isZero()) return { value: [0], isNegative: false }; if (n.isNegative()) return { value: [].concat.apply( [], Array.apply(null, Array(-n.toJSNumber())).map(Array.prototype.valueOf, [1, 0]) ), isNegative: false }; var arr = Array.apply(null, Array(n.toJSNumber() - 1)).map(Array.prototype.valueOf, [0, 1]); arr.unshift([1]); return { value: [].concat.apply([], arr), isNegative: false }; } var neg = false; if (n.isNegative() && base.isPositive()) { neg = true; n = n.abs(); } if (base.isUnit()) { if (n.isZero()) return { value: [0], isNegative: false }; return { value: Array.apply(null, Array(n.toJSNumber())).map(Number.prototype.valueOf, 1), isNegative: neg }; } var out = []; var left = n, divmod; while (left.isNegative() || left.compareAbs(base) >= 0) { divmod = left.divmod(base); left = divmod.quotient; var digit = divmod.remainder; if (digit.isNegative()) { digit = base.minus(digit).abs(); left = left.next(); } out.push(digit.toJSNumber()); } out.push(left.toJSNumber()); return { value: out.reverse(), isNegative: neg }; } __name(toBase, "toBase"); function toBaseString(n, base, alphabet) { var arr = toBase(n, base); return (arr.isNegative ? "-" : "") + arr.value.map(function(x) { return stringify2(x, alphabet); }).join(""); } __name(toBaseString, "toBaseString"); BigInteger.prototype.toArray = function(radix) { return toBase(this, radix); }; SmallInteger.prototype.toArray = function(radix) { return toBase(this, radix); }; NativeBigInt.prototype.toArray = function(radix) { return toBase(this, radix); }; BigInteger.prototype.toString = function(radix, alphabet) { if (radix === undefined2) radix = 10; if (radix !== 10 || alphabet) return toBaseString(this, radix, alphabet); var v = this.value, l2 = v.length, str = String(v[--l2]), zeros = "0000000", digit; while (--l2 >= 0) { digit = String(v[l2]); str += zeros.slice(digit.length) + digit; } var sign = this.sign ? "-" : ""; return sign + str; }; SmallInteger.prototype.toString = function(radix, alphabet) { if (radix === undefined2) radix = 10; if (radix != 10 || alphabet) return toBaseString(this, radix, alphabet); return String(this.value); }; NativeBigInt.prototype.toString = SmallInteger.prototype.toString; NativeBigInt.prototype.toJSON = BigInteger.prototype.toJSON = SmallInteger.prototype.toJSON = function() { return this.toString(); }; BigInteger.prototype.valueOf = function() { return parseInt(this.toString(), 10); }; BigInteger.prototype.toJSNumber = BigInteger.prototype.valueOf; SmallInteger.prototype.valueOf = function() { return this.value; }; SmallInteger.prototype.toJSNumber = SmallInteger.prototype.valueOf; NativeBigInt.prototype.valueOf = NativeBigInt.prototype.toJSNumber = function() { return parseInt(this.toString(), 10); }; function parseStringValue(v) { if (isPrecise(+v)) { var x = +v; if (x === truncate(x)) return supportsNativeBigInt ? new NativeBigInt(BigInt(x)) : new SmallInteger(x); throw new Error("Invalid integer: " + v); } var sign = v[0] === "-"; if (sign) v = v.slice(1); var split = v.split(/e/i); if (split.length > 2) throw new Error("Invalid integer: " + split.join("e")); if (split.length === 2) { var exp = split[1]; if (exp[0] === "+") exp = exp.slice(1); exp = +exp; if (exp !== truncate(exp) || !isPrecise(exp)) throw new Error("Invalid integer: " + exp + " is not a valid exponent."); var text = split[0]; var decimalPlace = text.indexOf("."); if (decimalPlace >= 0) { exp -= text.length - decimalPlace - 1; text = text.slice(0, decimalPlace) + text.slice(decimalPlace + 1); } if (exp < 0) throw new Error("Cannot include negative exponent part for integers"); text += new Array(exp + 1).join("0"); v = text; } var isValid = /^([0-9][0-9]*)$/.test(v); if (!isValid) throw new Error("Invalid integer: " + v); if (supportsNativeBigInt) { return new NativeBigInt(BigInt(sign ? "-" + v : v)); } var r = [], max2 = v.length, l2 = LOG_BASE, min2 = max2 - l2; while (max2 > 0) { r.push(+v.slice(min2, max2)); min2 -= l2; if (min2 < 0) min2 = 0; max2 -= l2; } trim(r); return new BigInteger(r, sign); } __name(parseStringValue, "parseStringValue"); function parseNumberValue(v) { if (supportsNativeBigInt) { return new NativeBigInt(BigInt(v)); } if (isPrecise(v)) { if (v !== truncate(v)) throw new Error(v + " is not an integer."); return new SmallInteger(v); } return parseStringValue(v.toString()); } __name(parseNumberValue, "parseNumberValue"); function parseValue(v) { if (typeof v === "number") { return parseNumberValue(v); } if (typeof v === "string") { return parseStringValue(v); } if (typeof v === "bigint") { return new NativeBigInt(v); } return v; } __name(parseValue, "parseValue"); for (var i = 0; i < 1e3; i++) { Integer[i] = parseValue(i); if (i > 0) Integer[-i] = parseValue(-i); } Integer.one = Integer[1]; Integer.zero = Integer[0]; Integer.minusOne = Integer[-1]; Integer.max = max; Integer.min = min; Integer.gcd = gcd; Integer.lcm = lcm; Integer.isInstance = function(x) { return x instanceof BigInteger || x instanceof SmallInteger || x instanceof NativeBigInt; }; Integer.randBetween = randBetween; Integer.fromArray = function(digits, base, isNegative) { return parseBaseFromArray(digits.map(parseValue), parseValue(base || 10), isNegative); }; return Integer; })(); if (typeof module2 !== "undefined" && module2.hasOwnProperty("exports")) { module2.exports = bigInt; } if (typeof define === "function" && define.amd) { define(function() { return bigInt; }); } } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Decrypt.js var require_Decrypt = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Decrypt.js"(exports2, module2) { var bigInt = require_BigInteger(); var Stream = require("stream"); if (!Stream.Writable || !Stream.Writable.prototype.destroy) Stream = require_readable2(); var table; function generateTable() { var poly = 3988292384, c, n, k; table = []; for (n = 0; n < 256; n++) { c = n; for (k = 0; k < 8; k++) c = c & 1 ? poly ^ c >>> 1 : c = c >>> 1; table[n] = c >>> 0; } } __name(generateTable, "generateTable"); function crc(ch, crc2) { if (!table) generateTable(); if (ch.charCodeAt) ch = ch.charCodeAt(0); return bigInt(crc2).shiftRight(8).and(16777215).xor(table[bigInt(crc2).xor(ch).and(255)]).value; } __name(crc, "crc"); function Decrypt() { if (!(this instanceof Decrypt)) return new Decrypt(); this.key0 = 305419896; this.key1 = 591751049; this.key2 = 878082192; } __name(Decrypt, "Decrypt"); Decrypt.prototype.update = function(h) { this.key0 = crc(h, this.key0); this.key1 = bigInt(this.key0).and(255).and(4294967295).add(this.key1); this.key1 = bigInt(this.key1).multiply(134775813).add(1).and(4294967295).value; this.key2 = crc(bigInt(this.key1).shiftRight(24).and(255), this.key2); }; Decrypt.prototype.decryptByte = function(c) { var k = bigInt(this.key2).or(2); c = c ^ bigInt(k).multiply(bigInt(k ^ 1)).shiftRight(8).and(255); this.update(c); return c; }; Decrypt.prototype.stream = function() { var stream = Stream.Transform(), self2 = this; stream._transform = function(d, e, cb) { for (var i = 0; i < d.length; i++) { d[i] = self2.decryptByte(d[i]); } this.push(d); cb(); }; return stream; }; module2.exports = Decrypt; } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/unzip.js var require_unzip = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/unzip.js"(exports2, module2) { var Promise2 = require_bluebird(); var Decrypt = require_Decrypt(); var PullStream = require_PullStream(); var Stream = require("stream"); var binary = require_binary2(); var zlib = require("zlib"); var parseExtraField = require_parseExtraField(); var Buffer2 = require_Buffer(); var parseDateTime = require_parseDateTime(); if (!Stream.Writable || !Stream.Writable.prototype.destroy) Stream = require_readable2(); module2.exports = /* @__PURE__ */ __name(function unzip(source, offset, _password, directoryVars) { var file2 = PullStream(), entry = Stream.PassThrough(); var req = source.stream(offset); req.pipe(file2).on("error", function(e) { entry.emit("error", e); }); entry.vars = file2.pull(30).then(function(data) { var vars = binary.parse(data).word32lu("signature").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars; vars.lastModifiedDateTime = parseDateTime(vars.lastModifiedDate, vars.lastModifiedTime); return file2.pull(vars.fileNameLength).then(function(fileName) { vars.fileName = fileName.toString("utf8"); return file2.pull(vars.extraFieldLength); }).then(function(extraField) { var checkEncryption; vars.extra = parseExtraField(extraField, vars); if (directoryVars && directoryVars.compressedSize) vars = directoryVars; if (vars.flags & 1) checkEncryption = file2.pull(12).then(function(header) { if (!_password) throw new Error("MISSING_PASSWORD"); var decrypt = Decrypt(); String(_password).split("").forEach(function(d) { decrypt.update(d); }); for (var i = 0; i < header.length; i++) header[i] = decrypt.decryptByte(header[i]); vars.decrypt = decrypt; vars.compressedSize -= 12; var check = vars.flags & 8 ? vars.lastModifiedTime >> 8 & 255 : vars.crc32 >> 24 & 255; if (header[11] !== check) throw new Error("BAD_PASSWORD"); return vars; }); return Promise2.resolve(checkEncryption).then(function() { entry.emit("vars", vars); return vars; }); }); }); entry.vars.then(function(vars) { var fileSizeKnown = !(vars.flags & 8) || vars.compressedSize > 0, eof; var inflater = vars.compressionMethod ? zlib.createInflateRaw() : Stream.PassThrough(); if (fileSizeKnown) { entry.size = vars.uncompressedSize; eof = vars.compressedSize; } else { eof = Buffer2.alloc(4); eof.writeUInt32LE(134695760, 0); } var stream = file2.stream(eof); if (vars.decrypt) stream = stream.pipe(vars.decrypt.stream()); stream.pipe(inflater).on("error", function(err) { entry.emit("error", err); }).pipe(entry).on("finish", function() { if (req.destroy) req.destroy(); else if (req.abort) req.abort(); else if (req.close) req.close(); else if (req.push) req.push(); else console.log("warning - unable to close stream"); }); }).catch(function(e) { entry.emit("error", e); }); return entry; }, "unzip"); } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/directory.js var require_directory = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/directory.js"(exports2, module2) { var binary = require_binary2(); var PullStream = require_PullStream(); var unzip = require_unzip(); var Promise2 = require_bluebird(); var BufferStream = require_BufferStream(); var parseExtraField = require_parseExtraField(); var Buffer2 = require_Buffer(); var path = require("path"); var Writer = require_fstream().Writer; var parseDateTime = require_parseDateTime(); var signature = Buffer2.alloc(4); signature.writeUInt32LE(101010256, 0); function getCrxHeader(source) { var sourceStream = source.stream(0).pipe(PullStream()); return sourceStream.pull(4).then(function(data) { var signature2 = data.readUInt32LE(0); if (signature2 === 875721283) { var crxHeader; return sourceStream.pull(12).then(function(data2) { crxHeader = binary.parse(data2).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars; }).then(function() { return sourceStream.pull(crxHeader.pubKeyLength + crxHeader.signatureLength); }).then(function(data2) { crxHeader.publicKey = data2.slice(0, crxHeader.pubKeyLength); crxHeader.signature = data2.slice(crxHeader.pubKeyLength); crxHeader.size = 16 + crxHeader.pubKeyLength + crxHeader.signatureLength; return crxHeader; }); } }); } __name(getCrxHeader, "getCrxHeader"); function getZip64CentralDirectory(source, zip64CDL) { var d64loc = binary.parse(zip64CDL).word32lu("signature").word32lu("diskNumber").word64lu("offsetToStartOfCentralDirectory").word32lu("numberOfDisks").vars; if (d64loc.signature != 117853008) { throw new Error("invalid zip64 end of central dir locator signature (0x07064b50): 0x" + d64loc.signature.toString(16)); } var dir64 = PullStream(); source.stream(d64loc.offsetToStartOfCentralDirectory).pipe(dir64); return dir64.pull(56); } __name(getZip64CentralDirectory, "getZip64CentralDirectory"); function parseZip64DirRecord(dir64record) { var vars = binary.parse(dir64record).word32lu("signature").word64lu("sizeOfCentralDirectory").word16lu("version").word16lu("versionsNeededToExtract").word32lu("diskNumber").word32lu("diskStart").word64lu("numberOfRecordsOnDisk").word64lu("numberOfRecords").word64lu("sizeOfCentralDirectory").word64lu("offsetToStartOfCentralDirectory").vars; if (vars.signature != 101075792) { throw new Error("invalid zip64 end of central dir locator signature (0x06064b50): 0x0" + vars.signature.toString(16)); } return vars; } __name(parseZip64DirRecord, "parseZip64DirRecord"); module2.exports = /* @__PURE__ */ __name(function centralDirectory(source, options) { var endDir = PullStream(), records = PullStream(), tailSize = options && options.tailSize || 80, sourceSize, crxHeader, startOffset, vars; if (options && options.crx) crxHeader = getCrxHeader(source); return source.size().then(function(size) { sourceSize = size; source.stream(Math.max(0, size - tailSize)).on("error", function(error) { endDir.emit("error", error); }).pipe(endDir); return endDir.pull(signature); }).then(function() { return Promise2.props({ directory: endDir.pull(22), crxHeader }); }).then(function(d) { var data = d.directory; startOffset = d.crxHeader && d.crxHeader.size || 0; vars = binary.parse(data).word32lu("signature").word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars; if (vars.numberOfRecords == 65535 || vars.numberOfRecords == 65535 || vars.offsetToStartOfCentralDirectory == 4294967295) { const zip64CDLSize = 20; const zip64CDLOffset = sourceSize - (tailSize - endDir.match + zip64CDLSize); const zip64CDLStream = PullStream(); source.stream(zip64CDLOffset).pipe(zip64CDLStream); return zip64CDLStream.pull(zip64CDLSize).then(function(d2) { return getZip64CentralDirectory(source, d2); }).then(function(dir64record) { vars = parseZip64DirRecord(dir64record); }); } else { vars.offsetToStartOfCentralDirectory += startOffset; } }).then(function() { if (vars.commentLength) return endDir.pull(vars.commentLength).then(function(comment) { vars.comment = comment.toString("utf8"); }); }).then(function() { source.stream(vars.offsetToStartOfCentralDirectory).pipe(records); vars.extract = function(opts) { if (!opts || !opts.path) throw new Error("PATH_MISSING"); opts.path = path.resolve(path.normalize(opts.path)); return vars.files.then(function(files) { return Promise2.map(files, function(entry) { if (entry.type == "Directory") return; var extractPath = path.join(opts.path, entry.path); if (extractPath.indexOf(opts.path) != 0) { return; } var writer = opts.getWriter ? opts.getWriter({ path: extractPath }) : Writer({ path: extractPath }); return new Promise2(function(resolve, reject) { entry.stream(opts.password).on("error", reject).pipe(writer).on("close", resolve).on("error", reject); }); }, { concurrency: opts.concurrency > 1 ? opts.concurrency : 1 }); }); }; vars.files = Promise2.mapSeries(Array(vars.numberOfRecords), function() { return records.pull(46).then(function(data) { var vars2 = binary.parse(data).word32lu("signature").word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars; vars2.offsetToLocalFileHeader += startOffset; vars2.lastModifiedDateTime = parseDateTime(vars2.lastModifiedDate, vars2.lastModifiedTime); return records.pull(vars2.fileNameLength).then(function(fileNameBuffer) { vars2.pathBuffer = fileNameBuffer; vars2.path = fileNameBuffer.toString("utf8"); vars2.isUnicode = (vars2.flags & 2048) != 0; return records.pull(vars2.extraFieldLength); }).then(function(extraField) { vars2.extra = parseExtraField(extraField, vars2); return records.pull(vars2.fileCommentLength); }).then(function(comment) { vars2.comment = comment; vars2.type = vars2.uncompressedSize === 0 && /[\/\\]$/.test(vars2.path) ? "Directory" : "File"; vars2.stream = function(_password) { return unzip(source, vars2.offsetToLocalFileHeader, _password, vars2); }; vars2.buffer = function(_password) { return BufferStream(vars2.stream(_password)); }; return vars2; }); }); }); return Promise2.props(vars); }); }, "centralDirectory"); } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/index.js var require_Open = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/lib/Open/index.js"(exports2, module2) { var fs = require_graceful_fs(); var Promise2 = require_bluebird(); var directory = require_directory(); var Stream = require("stream"); if (!Stream.Writable || !Stream.Writable.prototype.destroy) Stream = require_readable2(); module2.exports = { buffer: /* @__PURE__ */ __name(function(buffer, options) { var source = { stream: /* @__PURE__ */ __name(function(offset, length) { var stream = Stream.PassThrough(); stream.end(buffer.slice(offset, length)); return stream; }, "stream"), size: /* @__PURE__ */ __name(function() { return Promise2.resolve(buffer.length); }, "size") }; return directory(source, options); }, "buffer"), file: /* @__PURE__ */ __name(function(filename, options) { var source = { stream: /* @__PURE__ */ __name(function(offset, length) { return fs.createReadStream(filename, { start: offset, end: length && offset + length }); }, "stream"), size: /* @__PURE__ */ __name(function() { return new Promise2(function(resolve, reject) { fs.stat(filename, function(err, d) { if (err) reject(err); else resolve(d.size); }); }); }, "size") }; return directory(source, options); }, "file"), url: /* @__PURE__ */ __name(function(request, params, options) { if (typeof params === "string") params = { url: params }; if (!params.url) throw "URL missing"; params.headers = params.headers || {}; var source = { stream: /* @__PURE__ */ __name(function(offset, length) { var options2 = Object.create(params); options2.headers = Object.create(params.headers); options2.headers.range = "bytes=" + offset + "-" + (length ? length : ""); return request(options2); }, "stream"), size: /* @__PURE__ */ __name(function() { return new Promise2(function(resolve, reject) { var req = request(params); req.on("response", function(d) { req.abort(); if (!d.headers["content-length"]) reject(new Error("Missing content length header")); else resolve(d.headers["content-length"]); }).on("error", reject); }); }, "size") }; return directory(source, options); }, "url"), s3: /* @__PURE__ */ __name(function(client, params, options) { var source = { size: /* @__PURE__ */ __name(function() { return new Promise2(function(resolve, reject) { client.headObject(params, function(err, d) { if (err) reject(err); else resolve(d.ContentLength); }); }); }, "size"), stream: /* @__PURE__ */ __name(function(offset, length) { var d = {}; for (var key in params) d[key] = params[key]; d.Range = "bytes=" + offset + "-" + (length ? length : ""); return client.getObject(d).createReadStream(); }, "stream") }; return directory(source, options); }, "s3"), custom: /* @__PURE__ */ __name(function(source, options) { return directory(source, options); }, "custom") }; } }); // ../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/unzip.js var require_unzip2 = __commonJS({ "../../node_modules/.pnpm/unzipper@0.10.14/node_modules/unzipper/unzip.js"(exports2) { "use strict"; require_listenercount(); require_buffer_indexof_polyfill(); require_setImmediate(); exports2.Parse = require_parse5(); exports2.ParseOne = require_parseOne(); exports2.Extract = require_extract2(); exports2.Open = require_Open(); } }); // ../../node_modules/.pnpm/tmp@0.2.7/node_modules/tmp/lib/tmp.js var require_tmp = __commonJS({ "../../node_modules/.pnpm/tmp@0.2.7/node_modules/tmp/lib/tmp.js"(exports2, module2) { var fs = require("fs"); var os = require("os"); var path = require("path"); var crypto5 = require("crypto"); var _c = { fs: fs.constants, os: os.constants }; var RANDOM_CHARS = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; var TEMPLATE_PATTERN = /XXXXXX/; var DEFAULT_TRIES = 3; var CREATE_FLAGS = (_c.O_CREAT || _c.fs.O_CREAT) | (_c.O_EXCL || _c.fs.O_EXCL) | (_c.O_RDWR || _c.fs.O_RDWR); var IS_WIN32 = os.platform() === "win32"; var EBADF = _c.EBADF || _c.os.errno.EBADF; var ENOENT = _c.ENOENT || _c.os.errno.ENOENT; var DIR_MODE = 448; var FILE_MODE = 384; var EXIT = "exit"; var _removeObjects = []; var FN_RMDIR_SYNC = fs.rmdirSync.bind(fs); var _gracefulCleanup = false; function rimraf(dirPath, callback) { return fs.rm(dirPath, { recursive: true }, callback); } __name(rimraf, "rimraf"); function FN_RIMRAF_SYNC(dirPath) { return fs.rmSync(dirPath, { recursive: true }); } __name(FN_RIMRAF_SYNC, "FN_RIMRAF_SYNC"); function tmpName(options, callback) { const args = _parseArguments(options, callback), opts = args[0], cb = args[1]; _assertAndSanitizeOptions(opts, function(err, sanitizedOptions) { if (err) return cb(err); let tries = sanitizedOptions.tries; (/* @__PURE__ */ __name((function _getUniqueName() { try { const name = _generateTmpName(sanitizedOptions); fs.stat(name, function(err2) { if (!err2) { if (tries-- > 0) return _getUniqueName(); return cb(new Error("Could not get a unique tmp filename, max tries reached " + name)); } cb(null, name); }); } catch (err2) { cb(err2); } }), "_getUniqueName"))(); }); } __name(tmpName, "tmpName"); function tmpNameSync(options) { const args = _parseArguments(options), opts = args[0]; const sanitizedOptions = _assertAndSanitizeOptionsSync(opts); let tries = sanitizedOptions.tries; do { const name = _generateTmpName(sanitizedOptions); try { fs.statSync(name); } catch (e) { return name; } } while (tries-- > 0); throw new Error("Could not get a unique tmp filename, max tries reached"); } __name(tmpNameSync, "tmpNameSync"); function file2(options, callback) { const args = _parseArguments(options, callback), opts = args[0], cb = args[1]; tmpName(opts, /* @__PURE__ */ __name(function _tmpNameCreated(err, name) { if (err) return cb(err); fs.open(name, CREATE_FLAGS, opts.mode || FILE_MODE, /* @__PURE__ */ __name(function _fileCreated(err2, fd) { if (err2) return cb(err2); if (opts.discardDescriptor) { return fs.close(fd, /* @__PURE__ */ __name(function _discardCallback(possibleErr) { return cb(possibleErr, name, void 0, _prepareTmpFileRemoveCallback(name, -1, opts, false)); }, "_discardCallback")); } else { const discardOrDetachDescriptor = opts.discardDescriptor || opts.detachDescriptor; cb(null, name, fd, _prepareTmpFileRemoveCallback(name, discardOrDetachDescriptor ? -1 : fd, opts, false)); } }, "_fileCreated")); }, "_tmpNameCreated")); } __name(file2, "file"); function fileSync(options) { const args = _parseArguments(options), opts = args[0]; const discardOrDetachDescriptor = opts.discardDescriptor || opts.detachDescriptor; const name = tmpNameSync(opts); let fd = fs.openSync(name, CREATE_FLAGS, opts.mode || FILE_MODE); if (opts.discardDescriptor) { fs.closeSync(fd); fd = void 0; } return { name, fd, removeCallback: _prepareTmpFileRemoveCallback(name, discardOrDetachDescriptor ? -1 : fd, opts, true) }; } __name(fileSync, "fileSync"); function dir(options, callback) { const args = _parseArguments(options, callback), opts = args[0], cb = args[1]; tmpName(opts, /* @__PURE__ */ __name(function _tmpNameCreated(err, name) { if (err) return cb(err); fs.mkdir(name, opts.mode || DIR_MODE, /* @__PURE__ */ __name(function _dirCreated(err2) { if (err2) return cb(err2); cb(null, name, _prepareTmpDirRemoveCallback(name, opts, false)); }, "_dirCreated")); }, "_tmpNameCreated")); } __name(dir, "dir"); function dirSync(options) { const args = _parseArguments(options), opts = args[0]; const name = tmpNameSync(opts); fs.mkdirSync(name, opts.mode || DIR_MODE); return { name, removeCallback: _prepareTmpDirRemoveCallback(name, opts, true) }; } __name(dirSync, "dirSync"); function _removeFileAsync(fdPath, next) { const _handler = /* @__PURE__ */ __name(function(err) { if (err && !_isENOENT(err)) { return next(err); } next(); }, "_handler"); if (0 <= fdPath[0]) fs.close(fdPath[0], function() { fs.unlink(fdPath[1], _handler); }); else fs.unlink(fdPath[1], _handler); } __name(_removeFileAsync, "_removeFileAsync"); function _removeFileSync(fdPath) { let rethrownException = null; try { if (0 <= fdPath[0]) fs.closeSync(fdPath[0]); } catch (e) { if (!_isEBADF(e) && !_isENOENT(e)) throw e; } finally { try { fs.unlinkSync(fdPath[1]); } catch (e) { if (!_isENOENT(e)) rethrownException = e; } } if (rethrownException !== null) { throw rethrownException; } } __name(_removeFileSync, "_removeFileSync"); function _prepareTmpFileRemoveCallback(name, fd, opts, sync) { const removeCallbackSync = _prepareRemoveCallback(_removeFileSync, [fd, name], sync); const removeCallback = _prepareRemoveCallback(_removeFileAsync, [fd, name], sync, removeCallbackSync); if (!opts.keep) _removeObjects.unshift(removeCallbackSync); return sync ? removeCallbackSync : removeCallback; } __name(_prepareTmpFileRemoveCallback, "_prepareTmpFileRemoveCallback"); function _prepareTmpDirRemoveCallback(name, opts, sync) { const removeFunction = opts.unsafeCleanup ? rimraf : fs.rmdir.bind(fs); const removeFunctionSync = opts.unsafeCleanup ? FN_RIMRAF_SYNC : FN_RMDIR_SYNC; const removeCallbackSync = _prepareRemoveCallback(removeFunctionSync, name, sync); const removeCallback = _prepareRemoveCallback(removeFunction, name, sync, removeCallbackSync); if (!opts.keep) _removeObjects.unshift(removeCallbackSync); return sync ? removeCallbackSync : removeCallback; } __name(_prepareTmpDirRemoveCallback, "_prepareTmpDirRemoveCallback"); function _prepareRemoveCallback(removeFunction, fileOrDirName, sync, cleanupCallbackSync) { let called = false; return /* @__PURE__ */ __name(function _cleanupCallback(next) { if (!called) { const toRemove = cleanupCallbackSync || _cleanupCallback; const index = _removeObjects.indexOf(toRemove); if (index >= 0) _removeObjects.splice(index, 1); called = true; if (sync || removeFunction === FN_RMDIR_SYNC || removeFunction === FN_RIMRAF_SYNC) { return removeFunction(fileOrDirName); } else { return removeFunction(fileOrDirName, next || function() { }); } } }, "_cleanupCallback"); } __name(_prepareRemoveCallback, "_prepareRemoveCallback"); function _garbageCollector() { if (!_gracefulCleanup) return; while (_removeObjects.length) { try { _removeObjects[0](); } catch (e) { } } } __name(_garbageCollector, "_garbageCollector"); function _randomChars(howMany) { let value = [], rnd = null; try { rnd = crypto5.randomBytes(howMany); } catch (e) { rnd = crypto5.pseudoRandomBytes(howMany); } for (let i = 0; i < howMany; i++) { value.push(RANDOM_CHARS[rnd[i] % RANDOM_CHARS.length]); } return value.join(""); } __name(_randomChars, "_randomChars"); function _isUndefined(obj2) { return typeof obj2 === "undefined"; } __name(_isUndefined, "_isUndefined"); function _parseArguments(options, callback) { if (typeof options === "function") { return [{}, options]; } if (_isUndefined(options)) { return [{}, callback]; } const actualOptions = {}; for (const key of Object.getOwnPropertyNames(options)) { actualOptions[key] = options[key]; } return [actualOptions, callback]; } __name(_parseArguments, "_parseArguments"); function _resolvePath(name, tmpDir, cb) { const pathToResolve = path.isAbsolute(name) ? name : path.join(tmpDir, name); fs.stat(pathToResolve, function(err) { if (err) { fs.realpath(path.dirname(pathToResolve), function(err2, parentDir) { if (err2) return cb(err2); cb(null, path.join(parentDir, path.basename(pathToResolve))); }); } else { fs.realpath(pathToResolve, cb); } }); } __name(_resolvePath, "_resolvePath"); function _resolvePathSync(name, tmpDir) { const pathToResolve = path.isAbsolute(name) ? name : path.join(tmpDir, name); try { fs.statSync(pathToResolve); return fs.realpathSync(pathToResolve); } catch (_err) { const parentDir = fs.realpathSync(path.dirname(pathToResolve)); return path.join(parentDir, path.basename(pathToResolve)); } } __name(_resolvePathSync, "_resolvePathSync"); function _generateTmpName(opts) { const tmpDir = opts.tmpdir; if (!_isUndefined(opts.name)) { return path.join(tmpDir, opts.dir, opts.name); } if (!_isUndefined(opts.template)) { return path.join(tmpDir, opts.dir, opts.template).replace(TEMPLATE_PATTERN, _randomChars(6)); } const name = [ opts.prefix ? opts.prefix : "tmp", "-", process.pid, "-", _randomChars(12), opts.postfix ? "-" + opts.postfix : "" ].join(""); return path.join(tmpDir, opts.dir, name); } __name(_generateTmpName, "_generateTmpName"); function _assertPath(option, value) { if (typeof value !== "string") { throw new Error(`${option} option must be a string, got "${typeof value}".`); } if (value.includes("..")) { throw new Error("Relative value not allowed"); } return value; } __name(_assertPath, "_assertPath"); function _assertOptionsBase(options) { if (!_isUndefined(options.name)) { const name = options.name; if (path.isAbsolute(name)) throw new Error(`name option must not contain an absolute path, found "${name}".`); const basename = path.basename(name); if (basename === ".." || basename === "." || basename !== name) { throw new Error(`name option must not contain a path, found "${name}".`); } } if (!_isUndefined(options.template)) { if (typeof options.template !== "string") { throw new Error(`template option must be a string, got "${typeof options.template}".`); } if (!options.template.match(TEMPLATE_PATTERN)) { throw new Error(`Invalid template, found "${options.template}".`); } } if (!_isUndefined(options.tries) && isNaN(options.tries) || options.tries < 0) { throw new Error(`Invalid tries, found "${options.tries}".`); } options.tries = _isUndefined(options.name) ? options.tries || DEFAULT_TRIES : 1; options.keep = !!options.keep; options.detachDescriptor = !!options.detachDescriptor; options.discardDescriptor = !!options.discardDescriptor; options.unsafeCleanup = !!options.unsafeCleanup; options.prefix = _isUndefined(options.prefix) ? "" : _assertPath("prefix", options.prefix); options.postfix = _isUndefined(options.postfix) ? "" : _assertPath("postfix", options.postfix); options.template = _isUndefined(options.template) ? void 0 : _assertPath("template", options.template); } __name(_assertOptionsBase, "_assertOptionsBase"); function _getRelativePath(option, name, tmpDir, cb) { if (_isUndefined(name)) return cb(null); _resolvePath(name, tmpDir, function(err, resolvedPath) { if (err) return cb(err); const relativePath = path.relative(tmpDir, resolvedPath); if (relativePath.startsWith("..") || path.isAbsolute(relativePath)) { return cb(new Error(`${option} option must be relative to "${tmpDir}", found "${relativePath}".`)); } cb(null, relativePath); }); } __name(_getRelativePath, "_getRelativePath"); function _getRelativePathSync(option, name, tmpDir) { if (_isUndefined(name)) return; const resolvedPath = _resolvePathSync(name, tmpDir); const relativePath = path.relative(tmpDir, resolvedPath); if (relativePath.startsWith("..") || path.isAbsolute(relativePath)) { throw new Error(`${option} option must be relative to "${tmpDir}", found "${relativePath}".`); } return relativePath; } __name(_getRelativePathSync, "_getRelativePathSync"); function _assertAndSanitizeOptions(options, cb) { _getTmpDir(options, function(err, tmpDir) { if (err) return cb(err); options.tmpdir = tmpDir; try { _assertOptionsBase(options, tmpDir); } catch (err2) { return cb(err2); } _getRelativePath("dir", options.dir, tmpDir, function(err2, dir2) { if (err2) return cb(err2); options.dir = _isUndefined(dir2) ? "" : dir2; _getRelativePath("template", options.template, tmpDir, function(err3, template) { if (err3) return cb(err3); options.template = template; cb(null, options); }); }); }); } __name(_assertAndSanitizeOptions, "_assertAndSanitizeOptions"); function _assertAndSanitizeOptionsSync(options) { const tmpDir = options.tmpdir = _getTmpDirSync(options); _assertOptionsBase(options, tmpDir); const dir2 = _getRelativePathSync("dir", options.dir, tmpDir); options.dir = _isUndefined(dir2) ? "" : dir2; options.template = _getRelativePathSync("template", options.template, tmpDir); return options; } __name(_assertAndSanitizeOptionsSync, "_assertAndSanitizeOptionsSync"); function _isEBADF(error) { return _isExpectedError(error, -EBADF, "EBADF"); } __name(_isEBADF, "_isEBADF"); function _isENOENT(error) { return _isExpectedError(error, -ENOENT, "ENOENT"); } __name(_isENOENT, "_isENOENT"); function _isExpectedError(error, errno, code) { return IS_WIN32 ? error.code === code : error.code === code && error.errno === errno; } __name(_isExpectedError, "_isExpectedError"); function setGracefulCleanup() { _gracefulCleanup = true; } __name(setGracefulCleanup, "setGracefulCleanup"); function _getTmpDir(options, cb) { return fs.realpath(options && options.tmpdir || os.tmpdir(), cb); } __name(_getTmpDir, "_getTmpDir"); function _getTmpDirSync(options) { return fs.realpathSync(options && options.tmpdir || os.tmpdir()); } __name(_getTmpDirSync, "_getTmpDirSync"); process.addListener(EXIT, _garbageCollector); Object.defineProperty(module2.exports, "tmpdir", { enumerable: true, configurable: false, get: /* @__PURE__ */ __name(function() { return _getTmpDirSync(); }, "get") }); module2.exports.dir = dir; module2.exports.dirSync = dirSync; module2.exports.file = file2; module2.exports.fileSync = fileSync; module2.exports.tmpName = tmpName; module2.exports.tmpNameSync = tmpNameSync; module2.exports.setGracefulCleanup = setGracefulCleanup; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/iterate-stream.js var require_iterate_stream = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/utils/iterate-stream.js"(exports2, module2) { module2.exports = /* @__PURE__ */ __name(async function* iterateStream(stream) { const contents = []; stream.on("data", (data) => contents.push(data)); let resolveStreamEndedPromise; const streamEndedPromise = new Promise((resolve) => resolveStreamEndedPromise = resolve); let ended = false; stream.on("end", () => { ended = true; resolveStreamEndedPromise(); }); let error = false; stream.on("error", (err) => { error = err; resolveStreamEndedPromise(); }); while (!ended || contents.length > 0) { if (contents.length === 0) { stream.resume(); await Promise.race([once(stream, "data"), streamEndedPromise]); } else { stream.pause(); const data = contents.shift(); yield data; } if (error) throw error; } resolveStreamEndedPromise(); }, "iterateStream"); function once(eventEmitter, type) { return new Promise((resolve) => { let fired = false; const handler = /* @__PURE__ */ __name(() => { if (!fired) { fired = true; eventEmitter.removeListener(type, handler); resolve(); } }, "handler"); eventEmitter.addListener(type, handler); }); } __name(once, "once"); } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/worksheet-reader.js var require_worksheet_reader = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/worksheet-reader.js"(exports2, module2) { var { EventEmitter } = require("events"); var parseSax = require_parse_sax(); var _2 = require_under_dash(); var utils = require_utils21(); var colCache = require_col_cache(); var Dimensions = require_range4(); var Row = require_row(); var Column = require_column(); var WorksheetReader = class extends EventEmitter { static { __name(this, "WorksheetReader"); } constructor({ workbook, id, iterator, options }) { super(); this.workbook = workbook; this.id = id; this.iterator = iterator; this.options = options || {}; this.name = `Sheet${this.id}`; this._columns = null; this._keys = {}; this._dimensions = new Dimensions(); } // destroy - not a valid operation for a streaming writer // even though some streamers might be able to, it's a bad idea. destroy() { throw new Error("Invalid Operation: destroy"); } // return the current dimensions of the writer get dimensions() { return this._dimensions; } // ========================================================================= // Columns // get the current columns array. get columns() { return this._columns; } // get a single column by col number. If it doesn't exist, it and any gaps before it // are created. getColumn(c) { if (typeof c === "string") { const col = this._keys[c]; if (col) { return col; } c = colCache.l2n(c); } if (!this._columns) { this._columns = []; } if (c > this._columns.length) { let n = this._columns.length + 1; while (n <= c) { this._columns.push(new Column(this, n++)); } } return this._columns[c - 1]; } getColumnKey(key) { return this._keys[key]; } setColumnKey(key, value) { this._keys[key] = value; } deleteColumnKey(key) { delete this._keys[key]; } eachColumnKey(f) { _2.each(this._keys, f); } async read() { try { for await (const events of this.parse()) { for (const { eventType, value } of events) { this.emit(eventType, value); } } this.emit("finished"); } catch (error) { this.emit("error", error); } } async *[Symbol.asyncIterator]() { for await (const events of this.parse()) { for (const { eventType, value } of events) { if (eventType === "row") { yield value; } } } } async *parse() { const { iterator, options } = this; let emitSheet = false; let emitHyperlinks = false; let hyperlinks = null; switch (options.worksheets) { case "emit": emitSheet = true; break; case "prep": break; default: break; } switch (options.hyperlinks) { case "emit": emitHyperlinks = true; break; case "cache": this.hyperlinks = hyperlinks = {}; break; default: break; } if (!emitSheet && !emitHyperlinks && !hyperlinks) { return; } const { sharedStrings, styles, properties } = this.workbook; let inCols = false; let inRows = false; let inHyperlinks = false; let cols = null; let row = null; let c = null; let current = null; for await (const events of parseSax(iterator)) { const worksheetEvents = []; for (const { eventType, value } of events) { if (eventType === "opentag") { const node = value; if (emitSheet) { switch (node.name) { case "cols": inCols = true; cols = []; break; case "sheetData": inRows = true; break; case "col": if (inCols) { cols.push({ min: parseInt(node.attributes.min, 10), max: parseInt(node.attributes.max, 10), width: parseFloat(node.attributes.width), styleId: parseInt(node.attributes.style || "0", 10) }); } break; case "row": if (inRows) { const r = parseInt(node.attributes.r, 10); row = new Row(this, r); if (node.attributes.ht) { row.height = parseFloat(node.attributes.ht); } if (node.attributes.s) { const styleId = parseInt(node.attributes.s, 10); const style = styles.getStyleModel(styleId); if (style) { row.style = style; } } } break; case "c": if (row) { c = { ref: node.attributes.r, s: parseInt(node.attributes.s, 10), t: node.attributes.t }; } break; case "f": if (c) { current = c.f = { text: "" }; } break; case "v": if (c) { current = c.v = { text: "" }; } break; case "is": case "t": if (c) { current = c.v = { text: "" }; } break; case "mergeCell": break; default: break; } } if (emitHyperlinks || hyperlinks) { switch (node.name) { case "hyperlinks": inHyperlinks = true; break; case "hyperlink": if (inHyperlinks) { const hyperlink = { ref: node.attributes.ref, rId: node.attributes["r:id"] }; if (emitHyperlinks) { worksheetEvents.push({ eventType: "hyperlink", value: hyperlink }); } else { hyperlinks[hyperlink.ref] = hyperlink; } } break; default: break; } } } else if (eventType === "text") { if (emitSheet) { if (current) { current.text += value; } } } else if (eventType === "closetag") { const node = value; if (emitSheet) { switch (node.name) { case "cols": inCols = false; this._columns = Column.fromModel(cols); break; case "sheetData": inRows = false; break; case "row": this._dimensions.expandRow(row); worksheetEvents.push({ eventType: "row", value: row }); row = null; break; case "c": if (row && c) { const address = colCache.decodeAddress(c.ref); const cell = row.getCell(address.col); if (c.s) { const style = styles.getStyleModel(c.s); if (style) { cell.style = style; } } if (c.f) { const cellValue = { formula: c.f.text }; if (c.v) { if (c.t === "str") { cellValue.result = utils.xmlDecode(c.v.text); } else { cellValue.result = parseFloat(c.v.text); } } cell.value = cellValue; } else if (c.v) { switch (c.t) { case "s": { const index = parseInt(c.v.text, 10); if (sharedStrings) { cell.value = sharedStrings[index]; } else { cell.value = { sharedString: index }; } break; } case "inlineStr": case "str": cell.value = utils.xmlDecode(c.v.text); break; case "e": cell.value = { error: c.v.text }; break; case "b": cell.value = parseInt(c.v.text, 10) !== 0; break; default: if (utils.isDateFmt(cell.numFmt)) { cell.value = utils.excelToDate( parseFloat(c.v.text), properties.model && properties.model.date1904 ); } else { cell.value = parseFloat(c.v.text); } break; } } if (hyperlinks) { const hyperlink = hyperlinks[c.ref]; if (hyperlink) { cell.text = cell.value; cell.value = void 0; cell.hyperlink = hyperlink; } } c = null; } break; default: break; } } if (emitHyperlinks || hyperlinks) { switch (node.name) { case "hyperlinks": inHyperlinks = false; break; default: break; } } } } if (worksheetEvents.length > 0) { yield worksheetEvents; } } } }; module2.exports = WorksheetReader; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/hyperlink-reader.js var require_hyperlink_reader = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/hyperlink-reader.js"(exports2, module2) { var { EventEmitter } = require("events"); var parseSax = require_parse_sax(); var Enums = require_enums5(); var RelType = require_rel_type(); var HyperlinkReader = class extends EventEmitter { static { __name(this, "HyperlinkReader"); } constructor({ workbook, id, iterator, options }) { super(); this.workbook = workbook; this.id = id; this.iterator = iterator; this.options = options; } get count() { return this.hyperlinks && this.hyperlinks.length || 0; } each(fn) { return this.hyperlinks.forEach(fn); } async read() { const { iterator, options } = this; let emitHyperlinks = false; let hyperlinks = null; switch (options.hyperlinks) { case "emit": emitHyperlinks = true; break; case "cache": this.hyperlinks = hyperlinks = {}; break; default: break; } if (!emitHyperlinks && !hyperlinks) { this.emit("finished"); return; } try { for await (const events of parseSax(iterator)) { for (const { eventType, value } of events) { if (eventType === "opentag") { const node = value; if (node.name === "Relationship") { const rId = node.attributes.Id; switch (node.attributes.Type) { case RelType.Hyperlink: { const relationship = { type: Enums.RelationshipType.Styles, rId, target: node.attributes.Target, targetMode: node.attributes.TargetMode }; if (emitHyperlinks) { this.emit("hyperlink", relationship); } else { hyperlinks[relationship.rId] = relationship; } } break; default: break; } } } } } this.emit("finished"); } catch (error) { this.emit("error", error); } } }; module2.exports = HyperlinkReader; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/workbook-reader.js var require_workbook_reader = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/stream/xlsx/workbook-reader.js"(exports2, module2) { var fs = require("fs"); var { EventEmitter } = require("events"); var { PassThrough, Readable } = require_readable(); var nodeStream = require("stream"); var unzip = require_unzip2(); var tmp = require_tmp(); var iterateStream = require_iterate_stream(); var parseSax = require_parse_sax(); var StyleManager = require_styles_xform(); var WorkbookXform = require_workbook_xform(); var RelationshipsXform = require_relationships_xform(); var WorksheetReader = require_worksheet_reader(); var HyperlinkReader = require_hyperlink_reader(); tmp.setGracefulCleanup(); var WorkbookReader = class extends EventEmitter { static { __name(this, "WorkbookReader"); } constructor(input, options = {}) { super(); this.input = input; this.options = { worksheets: "emit", sharedStrings: "cache", hyperlinks: "ignore", styles: "ignore", entries: "ignore", ...options }; this.styles = new StyleManager(); this.styles.init(); } _getStream(input) { if (input instanceof nodeStream.Readable || input instanceof Readable) { return input; } if (typeof input === "string") { return fs.createReadStream(input); } throw new Error(`Could not recognise input: ${input}`); } async read(input, options) { try { for await (const { eventType, value } of this.parse(input, options)) { switch (eventType) { case "shared-strings": this.emit(eventType, value); break; case "worksheet": this.emit(eventType, value); await value.read(); break; case "hyperlinks": this.emit(eventType, value); break; } } this.emit("end"); this.emit("finished"); } catch (error) { this.emit("error", error); } } async *[Symbol.asyncIterator]() { for await (const { eventType, value } of this.parse()) { if (eventType === "worksheet") { yield value; } } } async *parse(input, options) { if (options) this.options = options; const stream = this.stream = this._getStream(input || this.input); const zip = unzip.Parse({ forceStream: true }); stream.pipe(zip); const waitingWorkSheets = []; for await (const entry of iterateStream(zip)) { let match; let sheetNo; switch (entry.path) { case "_rels/.rels": break; case "xl/_rels/workbook.xml.rels": await this._parseRels(entry); break; case "xl/workbook.xml": await this._parseWorkbook(entry); break; case "xl/sharedStrings.xml": yield* this._parseSharedStrings(entry); break; case "xl/styles.xml": await this._parseStyles(entry); break; default: if (entry.path.match(/xl\/worksheets\/sheet\d+[.]xml/)) { match = entry.path.match(/xl\/worksheets\/sheet(\d+)[.]xml/); sheetNo = match[1]; if (this.sharedStrings && this.workbookRels) { yield* this._parseWorksheet(iterateStream(entry), sheetNo); } else { await new Promise((resolve, reject) => { tmp.file((err, path, fd, tempFileCleanupCallback) => { if (err) { return reject(err); } waitingWorkSheets.push({ sheetNo, path, tempFileCleanupCallback }); const tempStream = fs.createWriteStream(path); tempStream.on("error", reject); entry.pipe(tempStream); return tempStream.on("finish", () => { return resolve(); }); }); }); } } else if (entry.path.match(/xl\/worksheets\/_rels\/sheet\d+[.]xml.rels/)) { match = entry.path.match(/xl\/worksheets\/_rels\/sheet(\d+)[.]xml.rels/); sheetNo = match[1]; yield* this._parseHyperlinks(iterateStream(entry), sheetNo); } break; } entry.autodrain(); } for (const { sheetNo, path, tempFileCleanupCallback } of waitingWorkSheets) { let fileStream = fs.createReadStream(path); if (!fileStream[Symbol.asyncIterator]) { fileStream = fileStream.pipe(new PassThrough()); } yield* this._parseWorksheet(fileStream, sheetNo); tempFileCleanupCallback(); } } _emitEntry(payload) { if (this.options.entries === "emit") { this.emit("entry", payload); } } async _parseRels(entry) { const xform = new RelationshipsXform(); this.workbookRels = await xform.parseStream(iterateStream(entry)); } async _parseWorkbook(entry) { this._emitEntry({ type: "workbook" }); const workbook = new WorkbookXform(); await workbook.parseStream(iterateStream(entry)); this.properties = workbook.map.workbookPr; this.model = workbook.model; } async *_parseSharedStrings(entry) { this._emitEntry({ type: "shared-strings" }); switch (this.options.sharedStrings) { case "cache": this.sharedStrings = []; break; case "emit": break; default: return; } let text = null; let richText = []; let index = 0; let font = null; for await (const events of parseSax(iterateStream(entry))) { for (const { eventType, value } of events) { if (eventType === "opentag") { const node = value; switch (node.name) { case "b": font = font || {}; font.bold = true; break; case "charset": font = font || {}; font.charset = parseInt(node.attributes.charset, 10); break; case "color": font = font || {}; font.color = {}; if (node.attributes.rgb) { font.color.argb = node.attributes.argb; } if (node.attributes.val) { font.color.argb = node.attributes.val; } if (node.attributes.theme) { font.color.theme = node.attributes.theme; } break; case "family": font = font || {}; font.family = parseInt(node.attributes.val, 10); break; case "i": font = font || {}; font.italic = true; break; case "outline": font = font || {}; font.outline = true; break; case "rFont": font = font || {}; font.name = node.value; break; case "si": font = null; richText = []; text = null; break; case "sz": font = font || {}; font.size = parseInt(node.attributes.val, 10); break; case "strike": break; case "t": text = null; break; case "u": font = font || {}; font.underline = true; break; case "vertAlign": font = font || {}; font.vertAlign = node.attributes.val; break; } } else if (eventType === "text") { text = text ? text + value : value; } else if (eventType === "closetag") { const node = value; switch (node.name) { case "r": richText.push({ font, text }); font = null; text = null; break; case "si": if (this.options.sharedStrings === "cache") { this.sharedStrings.push(richText.length ? { richText } : text); } else if (this.options.sharedStrings === "emit") { yield { index: index++, text: richText.length ? { richText } : text }; } richText = []; font = null; text = null; break; } } } } } async _parseStyles(entry) { this._emitEntry({ type: "styles" }); if (this.options.styles === "cache") { this.styles = new StyleManager(); await this.styles.parseStream(iterateStream(entry)); } } *_parseWorksheet(iterator, sheetNo) { this._emitEntry({ type: "worksheet", id: sheetNo }); const worksheetReader = new WorksheetReader({ workbook: this, id: sheetNo, iterator, options: this.options }); const matchingRel = (this.workbookRels || []).find((rel) => rel.Target === `worksheets/sheet${sheetNo}.xml`); const matchingSheet = matchingRel && (this.model.sheets || []).find((sheet) => sheet.rId === matchingRel.Id); if (matchingSheet) { worksheetReader.id = matchingSheet.id; worksheetReader.name = matchingSheet.name; worksheetReader.state = matchingSheet.state; } if (this.options.worksheets === "emit") { yield { eventType: "worksheet", value: worksheetReader }; } } *_parseHyperlinks(iterator, sheetNo) { this._emitEntry({ type: "hyperlinks", id: sheetNo }); const hyperlinksReader = new HyperlinkReader({ workbook: this, id: sheetNo, iterator, options: this.options }); if (this.options.hyperlinks === "emit") { yield { eventType: "hyperlinks", value: hyperlinksReader }; } } }; WorkbookReader.Options = { worksheets: ["emit", "ignore"], sharedStrings: ["cache", "emit", "ignore"], hyperlinks: ["cache", "emit", "ignore"], styles: ["cache", "ignore"], entries: ["emit", "ignore"] }; module2.exports = WorkbookReader; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/exceljs.nodejs.js var require_exceljs_nodejs = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/lib/exceljs.nodejs.js"(exports2, module2) { var ExcelJS = { Workbook: require_workbook(), ModelContainer: require_modelcontainer(), stream: { xlsx: { WorkbookWriter: require_workbook_writer(), WorkbookReader: require_workbook_reader() } } }; Object.assign(ExcelJS, require_enums5()); module2.exports = ExcelJS; } }); // ../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/excel.js var require_excel = __commonJS({ "../../node_modules/.pnpm/exceljs@4.4.0/node_modules/exceljs/excel.js"(exports2, module2) { if (parseInt(process.versions.node.split(".")[0], 10) < 10) { throw new Error( "For node versions older than 10, please use the ES5 Import: https://github.com/exceljs/exceljs#es5-imports" ); } module2.exports = require_exceljs_nodejs(); } }); // dist/src/modules/report/report.service.js var require_report_service = __commonJS({ "dist/src/modules/report/report.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ReportService = void 0; var common_12 = require_common(); var ExcelJS = require_excel(); var prisma_service_12 = require_prisma_service(); var ReportService = class ReportService { static { __name(this, "ReportService"); } constructor(prisma) { this.prisma = prisma; } async getDashboardStats() { const todayStart = /* @__PURE__ */ new Date(); todayStart.setHours(0, 0, 0, 0); const [totalUsers, todayUsers, totalSpins, todaySpins, totalWinners, totalDistributedPrizes, consumedChancesAggr, activePrizesCount, activeCampaignsCount, activeCampaignsList, recentWinners] = await Promise.all([ this.prisma.user.count(), this.prisma.user.count({ where: { createdAt: { gte: todayStart } } }), this.prisma.spin.count(), this.prisma.spin.count({ where: { createdAt: { gte: todayStart } } }), this.prisma.userPrize.count(), this.prisma.userPrize.count({ where: { status: { in: ["DELIVERED", "USED"] } } }), this.prisma.chanceTransaction.aggregate({ where: { type: "SPIN_CONSUME" }, _sum: { amount: true } }), this.prisma.prize.count({ where: { status: "ACTIVE" } }), this.prisma.campaign.count({ where: { status: "ACTIVE" } }), this.prisma.campaign.findMany({ where: { status: "ACTIVE" }, take: 4, orderBy: { createdAt: "desc" }, select: { id: true, title: true, slug: true, status: true, startAt: true, endAt: true, wheelDesign: true, _count: { select: { spins: true, userPrizes: true, prizes: true } } } }), this.prisma.userPrize.findMany({ take: 10, orderBy: { wonAt: "desc" }, include: { user: { select: { id: true, mobile: true, name: true } }, prize: { select: { title: true, type: true, image: true } }, campaign: { select: { id: true, title: true } } } }) ]); const fourteenDaysAgo = /* @__PURE__ */ new Date(); fourteenDaysAgo.setDate(fourteenDaysAgo.getDate() - 14); fourteenDaysAgo.setHours(0, 0, 0, 0); const recentSpins = await this.prisma.spin.findMany({ where: { createdAt: { gte: fourteenDaysAgo } }, select: { createdAt: true, prizeId: true } }); const dayMap = {}; for (let i = 0; i < 14; i++) { const d = /* @__PURE__ */ new Date(); d.setDate(d.getDate() - (13 - i)); const key = d.toISOString().slice(0, 10); dayMap[key] = { spins: 0, winners: 0 }; } recentSpins.forEach((s) => { const key = s.createdAt.toISOString().slice(0, 10); if (dayMap[key]) { dayMap[key].spins++; if (s.prizeId) { dayMap[key].winners++; } } }); const spinsByDay = Object.entries(dayMap).map(([date, data]) => ({ date, spins: data.spins, winners: data.winners })); const prizesWithWins = await this.prisma.userPrize.groupBy({ by: ["prizeId"], _count: { id: true } }); const prizeDetails = await this.prisma.prize.findMany({ where: { id: { in: prizesWithWins.map((p) => p.prizeId) } }, select: { id: true, title: true } }); const prizeTitleMap = new Map(prizeDetails.map((p) => [p.id, p.title])); const totalWon = prizesWithWins.reduce((sum, p) => sum + p._count.id, 0); const prizeDistribution = prizesWithWins.map((p) => ({ prizeTitle: prizeTitleMap.get(p.prizeId) || "\u0646\u0627\u0645\u0634\u062E\u0635", count: p._count.id, percentage: totalWon > 0 ? Number((p._count.id / totalWon * 100).toFixed(1)) : 0 })); const winRate = totalSpins > 0 ? Number((totalWinners / totalSpins * 100).toFixed(1)) : 0; return { stats: { totalUsers, todayUsers, totalSpins, todaySpins, totalWinners, totalDistributedPrizes, consumedChances: Math.abs(consumedChancesAggr._sum.amount || 0), activePrizesCount, activeCampaignsCount, winRate }, activeCampaigns: activeCampaignsList, spinsByDay, prizeDistribution, recentWinners }; } async getParticipationReport(query) { const where = {}; if (query.campaignId) where.campaignId = query.campaignId; if (query.from || query.to) { where.createdAt = {}; if (query.from) where.createdAt.gte = new Date(query.from); if (query.to) where.createdAt.lte = new Date(query.to); } const [totalSpins, winnersCount, userCampaigns] = await Promise.all([ this.prisma.spin.count({ where }), this.prisma.userPrize.count({ where: { ...query.campaignId ? { campaignId: query.campaignId } : {}, ...query.from || query.to ? { wonAt: { ...query.from ? { gte: new Date(query.from) } : {}, ...query.to ? { lte: new Date(query.to) } : {} } } : {} } }), this.prisma.userCampaign.findMany({ where: query.campaignId ? { campaignId: query.campaignId } : {}, select: { totalChances: true, usedChances: true } }) ]); const totalChancesAllocated = userCampaigns.reduce((sum, c) => sum + c.totalChances, 0); const totalChancesUsed = userCampaigns.reduce((sum, c) => sum + c.usedChances, 0); const zeroSpinUsers = userCampaigns.filter((c) => c.usedChances === 0).length; const remainingChanceUsers = userCampaigns.filter((c) => c.totalChances > c.usedChances).length; return { totalSpins, winnersCount, totalChancesAllocated, totalChancesUsed, zeroSpinUsers, remainingChanceUsers }; } async exportParticipationExcel(query) { const report = await this.getParticipationReport(query); const workbook = new ExcelJS.Workbook(); const worksheet = workbook.addWorksheet("\u06AF\u0632\u0627\u0631\u0634 \u0645\u0634\u0627\u0631\u06A9\u062A"); worksheet.columns = [ { header: "\u0634\u0627\u062E\u0635 KPI", key: "metric", width: 35 }, { header: "\u0645\u0642\u062F\u0627\u0631", key: "value", width: 20 } ]; worksheet.addRow({ metric: "\u062A\u0639\u062F\u0627\u062F \u06A9\u0644 \u0686\u0631\u062E\u0634\u200C\u0647\u0627 (Spins)", value: report.totalSpins }); worksheet.addRow({ metric: "\u062A\u0639\u062F\u0627\u062F \u062C\u0648\u0627\u06CC\u0632 \u0628\u0631\u0646\u062F\u0647 \u0634\u062F\u0647", value: report.winnersCount }); worksheet.addRow({ metric: "\u06A9\u0644 \u0634\u0627\u0646\u0633\u200C\u0647\u0627\u06CC \u062A\u062E\u0635\u06CC\u0635 \u06CC\u0627\u0641\u062A\u0647", value: report.totalChancesAllocated }); worksheet.addRow({ metric: "\u06A9\u0644 \u0634\u0627\u0646\u0633\u200C\u0647\u0627\u06CC \u0645\u0635\u0631\u0641 \u0634\u062F\u0647", value: report.totalChancesUsed }); worksheet.addRow({ metric: "\u06A9\u0627\u0631\u0628\u0631\u0627\u0646 \u0628\u062F\u0648\u0646 \u0686\u0631\u062E\u0634 (Zero Spin)", value: report.zeroSpinUsers }); worksheet.addRow({ metric: "\u06A9\u0627\u0631\u0628\u0631\u0627\u0646 \u0628\u0627 \u0634\u0627\u0646\u0633 \u0628\u0627\u0642\u06CC\u200C\u0645\u0627\u0646\u062F\u0647", value: report.remainingChanceUsers }); return workbook.xlsx.writeBuffer(); } }; exports2.ReportService = ReportService; exports2.ReportService = ReportService = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [prisma_service_12.PrismaService]) ], ReportService); } }); // dist/src/modules/report/admin-report.controller.js var require_admin_report_controller = __commonJS({ "dist/src/modules/report/admin-report.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminReportController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var jwt_admin_guard_1 = require_jwt_admin_guard(); var report_service_1 = require_report_service(); var AdminReportController = class AdminReportController { static { __name(this, "AdminReportController"); } constructor(reportService) { this.reportService = reportService; } async getDashboard() { return this.reportService.getDashboardStats(); } async getParticipation(query) { return this.reportService.getParticipationReport(query); } async exportExcel(query, res) { const buffer = await this.reportService.exportParticipationExcel(query); res.send(buffer); } }; exports2.AdminReportController = AdminReportController; __decorate2([ (0, common_12.Get)("dashboard"), (0, swagger_12.ApiOperation)({ summary: "\u062F\u0631\u06CC\u0627\u0641\u062A \u062A\u0645\u0627\u0645 \u0622\u0645\u0627\u0631\u0647\u0627\u06CC \u062A\u062C\u0645\u06CC\u0639\u06CC \u062F\u0627\u0634\u0628\u0648\u0631\u062F \u0627\u0635\u0644\u06CC\u060C \u0686\u0627\u0631\u062A\u200C\u0647\u0627\u06CC \u0631\u0648\u0632\u0627\u0646\u0647 \u0648 \u0622\u062E\u0631\u06CC\u0646 \u0628\u0631\u0646\u062F\u06AF\u0627\u0646" }), (0, swagger_12.ApiResponse)({ status: 200, description: "\u0634\u0627\u062E\u0635\u200C\u0647\u0627\u06CC KPI \u062F\u0627\u0634\u0628\u0648\u0631\u062F" }), __metadata2("design:type", Function), __metadata2("design:paramtypes", []), __metadata2("design:returntype", Promise) ], AdminReportController.prototype, "getDashboard", null); __decorate2([ (0, common_12.Get)("participation"), (0, swagger_12.ApiOperation)({ summary: "\u06AF\u0632\u0627\u0631\u0634 \u0645\u0634\u0627\u0631\u06A9\u062A \u06A9\u0627\u0631\u0628\u0631\u0627\u0646 \u0648 \u062A\u062D\u0644\u06CC\u0644 \u0634\u0627\u0646\u0633\u200C\u0647\u0627 \u0628\u0627 \u0641\u06CC\u0644\u062A\u0631 \u0628\u0627\u0632\u0647 \u0632\u0645\u0627\u0646\u06CC" }), (0, swagger_12.ApiQuery)({ name: "from", required: false }), (0, swagger_12.ApiQuery)({ name: "to", required: false }), (0, swagger_12.ApiQuery)({ name: "campaignId", required: false }), __param2(0, (0, common_12.Query)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [Object]), __metadata2("design:returntype", Promise) ], AdminReportController.prototype, "getParticipation", null); __decorate2([ (0, common_12.Get)("export"), (0, swagger_12.ApiOperation)({ summary: "\u062E\u0631\u0648\u062C\u06CC \u0627\u06A9\u0633\u0644 \u06AF\u0632\u0627\u0631\u0634 \u0645\u0634\u0627\u0631\u06A9\u062A" }), (0, common_12.Header)("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"), (0, common_12.Header)("Content-Disposition", "attachment; filename=participation-report.xlsx"), __param2(0, (0, common_12.Query)()), __param2(1, (0, common_12.Res)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [Object, Object]), __metadata2("design:returntype", Promise) ], AdminReportController.prototype, "exportExcel", null); exports2.AdminReportController = AdminReportController = __decorate2([ (0, swagger_12.ApiTags)("Admin Reports (\u06AF\u0632\u0627\u0631\u0634\u200C\u06AF\u06CC\u0631\u06CC \u0648 \u062F\u0627\u0634\u0628\u0648\u0631\u062F)"), (0, common_12.Controller)("admin/reports"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, swagger_12.ApiBearerAuth)("AdminAuth"), __metadata2("design:paramtypes", [report_service_1.ReportService]) ], AdminReportController); } }); // dist/src/modules/report/report.module.js var require_report_module = __commonJS({ "dist/src/modules/report/report.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ReportModule = void 0; var common_12 = require_common(); var admin_report_controller_1 = require_admin_report_controller(); var report_service_1 = require_report_service(); var ReportModule = class ReportModule { static { __name(this, "ReportModule"); } }; exports2.ReportModule = ReportModule; exports2.ReportModule = ReportModule = __decorate2([ (0, common_12.Module)({ controllers: [admin_report_controller_1.AdminReportController], providers: [report_service_1.ReportService], exports: [report_service_1.ReportService] }) ], ReportModule); } }); // dist/src/modules/sms/sms.service.js var require_sms_service = __commonJS({ "dist/src/modules/sms/sms.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; var SmsService_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SmsService = void 0; var bullmq_1 = require_dist6(); var common_12 = require_common(); var client_1 = require("@prisma/client"); var bullmq_2 = require_cjs4(); var prisma_service_12 = require_prisma_service(); var SmsService = SmsService_1 = class SmsService { static { __name(this, "SmsService"); } constructor(smsQueue, prisma) { this.smsQueue = smsQueue; this.prisma = prisma; this.logger = new common_12.Logger(SmsService_1.name); } async enqueueOtp(mobile, code) { const message = `\u06A9\u062F \u0648\u0631\u0648\u062F \u0634\u0645\u0627 \u0628\u0647 \u0633\u0627\u0645\u0627\u0646\u0647 \u06AF\u0631\u062F\u0648\u0646\u0647 \u0634\u0627\u0646\u0633: ${code}`; try { await this.smsQueue.add("otp", { mobile, message, type: client_1.SmsType.OTP }, { attempts: 3, backoff: { type: "exponential", delay: 2e3 }, priority: 1, removeOnComplete: true }); } catch (e) { this.logger.error(`Failed to enqueue OTP SMS: ${e.message}`); } } async enqueueSpinResult(spinId) { try { const spin = await this.prisma.spin.findUnique({ where: { id: spinId }, include: { user: true, prize: true, userPrize: true, campaign: true } }); if (!spin || !spin.user) { return; } const mobile = spin.user.mobile; let message = ""; let type = client_1.SmsType.WINNING; if (!spin.prize || spin.prize.type === "NO_PRIZE") { type = client_1.SmsType.NO_PRIZE; message = `\u0647\u0645\u0631\u0627\u0647 \u06AF\u0631\u0627\u0645\u06CC\u060C \u0645\u062A\u0623\u0633\u0641\u0627\u0646\u0647 \u062F\u0631 \u0627\u06CC\u0646 \u062F\u0648\u0631 \u0627\u0632 \u06AF\u0631\u062F\u0648\u0646\u0647 ${spin.campaign.title} \u0628\u0631\u0646\u062F\u0647 \u0646\u0634\u062F\u06CC\u062F. \u0634\u0627\u0646\u0633\u200C\u0647\u0627\u06CC \u062F\u06CC\u06AF\u0631 \u062E\u0648\u062F \u0631\u0627 \u0627\u0645\u062A\u062D\u0627\u0646 \u06A9\u0646\u06CC\u062F!`; } else { type = client_1.SmsType.WINNING; const codeText = spin.userPrize?.code ? ` \u06A9\u062F \u062C\u0627\u06CC\u0632\u0647: ${spin.userPrize.code}` : ""; if (spin.prize.smsTemplate) { message = spin.prize.smsTemplate.replace("{prize}", spin.prize.title).replace("{code}", spin.userPrize?.code || "").replace("{campaign}", spin.campaign.title); } else { message = `\u062A\u0628\u0631\u06CC\u06A9! \u0634\u0645\u0627 \u062F\u0631 \u06AF\u0631\u062F\u0648\u0646\u0647 ${spin.campaign.title} \u0628\u0631\u0646\u062F\u0647 \xAB${spin.prize.title}\xBB \u0634\u062F\u06CC\u062F.${codeText}`; } } await this.smsQueue.add("spin-result", { userId: spin.userId, mobile, message, type }, { attempts: 3, backoff: { type: "exponential", delay: 3e3 }, removeOnComplete: true }); } catch (e) { this.logger.error(`Failed to enqueue spin result SMS for spin ${spinId}: ${e.message}`); } } async resendSms(logId) { const log = await this.prisma.smsLog.findUnique({ where: { id: logId } }); if (!log) { throw new common_12.NotFoundException("\u0644\u0627\u06AF \u067E\u06CC\u0627\u0645\u06A9 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } await this.smsQueue.add("resend", { userId: log.userId, mobile: log.mobile, message: log.message, type: log.type }, { attempts: 3, backoff: { type: "exponential", delay: 2e3 } }); return { success: true, message: "\u067E\u06CC\u0627\u0645\u06A9 \u0628\u0627 \u0645\u0648\u0641\u0642\u06CC\u062A \u062F\u0631 \u0635\u0641 \u0627\u0631\u0633\u0627\u0644 \u0645\u062C\u062F\u062F \u0642\u0631\u0627\u0631 \u06AF\u0631\u0641\u062A." }; } async getLogs(query) { const page = Number(query.page) || 1; const pageSize = Number(query.pageSize) || 20; const skip = (page - 1) * pageSize; const where = {}; if (query.mobile) where.mobile = { contains: query.mobile }; if (query.status) where.status = query.status; const [data, total] = await Promise.all([ this.prisma.smsLog.findMany({ where, skip, take: pageSize, orderBy: { createdAt: "desc" } }), this.prisma.smsLog.count({ where }) ]); return { data, meta: { page, pageSize, total, totalPages: Math.ceil(total / pageSize) } }; } }; exports2.SmsService = SmsService; exports2.SmsService = SmsService = SmsService_1 = __decorate2([ (0, common_12.Injectable)(), __param2(0, (0, bullmq_1.InjectQueue)("sms")), __metadata2("design:paramtypes", [ bullmq_2.Queue, prisma_service_12.PrismaService ]) ], SmsService); } }); // dist/src/modules/sms/admin-sms.controller.js var require_admin_sms_controller = __commonJS({ "dist/src/modules/sms/admin-sms.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminSmsController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var jwt_admin_guard_1 = require_jwt_admin_guard(); var audit_interceptor_1 = require_audit_interceptor(); var sms_service_1 = require_sms_service(); var AdminSmsController = class AdminSmsController { static { __name(this, "AdminSmsController"); } constructor(smsService) { this.smsService = smsService; } async getLogs(query) { return this.smsService.getLogs(query); } async resend(id) { return this.smsService.resendSms(id); } }; exports2.AdminSmsController = AdminSmsController; __decorate2([ (0, common_12.Get)(), (0, swagger_12.ApiOperation)({ summary: "\u0644\u06CC\u0633\u062A \u062A\u0645\u0627\u0645 \u067E\u06CC\u0627\u0645\u06A9\u200C\u0647\u0627\u06CC \u0627\u0631\u0633\u0627\u0644\u06CC \u0628\u0627 \u0641\u06CC\u0644\u062A\u0631 \u0648\u0636\u0639\u06CC\u062A \u0648 \u0645\u0648\u0628\u0627\u06CC\u0644" }), (0, swagger_12.ApiQuery)({ name: "page", required: false }), (0, swagger_12.ApiQuery)({ name: "pageSize", required: false }), (0, swagger_12.ApiQuery)({ name: "mobile", required: false }), (0, swagger_12.ApiQuery)({ name: "status", required: false }), __param2(0, (0, common_12.Query)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [Object]), __metadata2("design:returntype", Promise) ], AdminSmsController.prototype, "getLogs", null); __decorate2([ (0, common_12.Post)(":id/resend"), (0, swagger_12.ApiOperation)({ summary: "\u0627\u0631\u0633\u0627\u0644 \u0645\u062C\u062F\u062F \u067E\u06CC\u0627\u0645\u06A9 \u0646\u0627\u0645\u0648\u0641\u0642" }), (0, swagger_12.ApiResponse)({ status: 200, description: "\u067E\u06CC\u0627\u0645\u06A9 \u062F\u0631 \u0635\u0641 \u0627\u0631\u0633\u0627\u0644 \u0645\u062C\u062F\u062F \u0642\u0631\u0627\u0631 \u06AF\u0631\u0641\u062A" }), __param2(0, (0, common_12.Param)("id")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], AdminSmsController.prototype, "resend", null); exports2.AdminSmsController = AdminSmsController = __decorate2([ (0, swagger_12.ApiTags)("Admin SMS Logs (\u0645\u062F\u06CC\u0631\u06CC\u062A \u067E\u06CC\u0627\u0645\u06A9\u200C\u0647\u0627)"), (0, common_12.Controller)("admin/sms-logs"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, common_12.UseInterceptors)(audit_interceptor_1.AuditInterceptor), (0, swagger_12.ApiBearerAuth)("AdminAuth"), __metadata2("design:paramtypes", [sms_service_1.SmsService]) ], AdminSmsController); } }); // dist/src/modules/sms/providers/mock-sms.provider.js var require_mock_sms_provider = __commonJS({ "dist/src/modules/sms/providers/mock-sms.provider.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var MockSmsProvider_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.MockSmsProvider = void 0; var common_12 = require_common(); var MockSmsProvider = MockSmsProvider_1 = class MockSmsProvider { static { __name(this, "MockSmsProvider"); } constructor() { this.logger = new common_12.Logger(MockSmsProvider_1.name); } async send(mobile, message) { const providerMessageId = `MOCK-SMS-${Date.now()}`; this.logger.log(`[MOCK SMS] Sent to ${mobile} | Content: ${message} | ID: ${providerMessageId}`); return { providerMessageId, raw: { success: true, mock: true, recipient: mobile, body: message } }; } }; exports2.MockSmsProvider = MockSmsProvider; exports2.MockSmsProvider = MockSmsProvider = MockSmsProvider_1 = __decorate2([ (0, common_12.Injectable)() ], MockSmsProvider); } }); // dist/src/modules/sms/providers/raygan-sms.provider.js var require_raygan_sms_provider = __commonJS({ "dist/src/modules/sms/providers/raygan-sms.provider.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var RayganSmsProvider_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.RayganSmsProvider = void 0; var common_12 = require_common(); var config_12 = require_config2(); var RayganSmsProvider = RayganSmsProvider_1 = class RayganSmsProvider { static { __name(this, "RayganSmsProvider"); } constructor(configService) { this.configService = configService; this.logger = new common_12.Logger(RayganSmsProvider_1.name); this.baseUrl = this.configService.get("RAYGAN_SMS_API_BASE_URL", "https://api.raygansms.com"); this.username = this.configService.get("RAYGAN_SMS_USERNAME"); this.password = this.configService.get("RAYGAN_SMS_PASSWORD"); this.fromLine = this.configService.get("RAYGAN_SMS_LINE_NUMBER"); } async send(mobile, message) { try { const response = await fetch(`${this.baseUrl}/api/sms/send`, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ username: this.username, password: this.password, from: this.fromLine, to: mobile, text: message }) }); const data = await response.json(); const messageId = data?.messageId || data?.id || `RAYGAN-${Date.now()}`; return { providerMessageId: String(messageId), raw: data }; } catch (err) { this.logger.error(`RayganSMS send failure to ${mobile}: ${err.message}`); throw err; } } }; exports2.RayganSmsProvider = RayganSmsProvider; exports2.RayganSmsProvider = RayganSmsProvider = RayganSmsProvider_1 = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [config_12.ConfigService]) ], RayganSmsProvider); } }); // dist/src/modules/sms/sms.processor.js var require_sms_processor = __commonJS({ "dist/src/modules/sms/sms.processor.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; var SmsProcessor_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SmsProcessor = void 0; var bullmq_1 = require_dist6(); var common_12 = require_common(); var client_1 = require("@prisma/client"); var prisma_service_12 = require_prisma_service(); var SmsProcessor = SmsProcessor_1 = class SmsProcessor extends bullmq_1.WorkerHost { static { __name(this, "SmsProcessor"); } constructor(prisma, provider) { super(); this.prisma = prisma; this.provider = provider; this.logger = new common_12.Logger(SmsProcessor_1.name); } async process(job) { const { mobile, message, type = client_1.SmsType.WINNING, userId } = job.data; const log = await this.prisma.smsLog.create({ data: { userId: userId || null, mobile, type, message, provider: "raygansms", status: client_1.SmsStatus.PENDING } }); try { const result = await this.provider.send(mobile, message); await this.prisma.smsLog.update({ where: { id: log.id }, data: { status: client_1.SmsStatus.SENT, providerResponse: result.raw } }); return result; } catch (err) { this.logger.error(`SMS Job ${job.id} failed: ${err.message}`); await this.prisma.smsLog.update({ where: { id: log.id }, data: { status: client_1.SmsStatus.FAILED, providerResponse: { error: err.message || String(err) } } }); throw err; } } }; exports2.SmsProcessor = SmsProcessor; exports2.SmsProcessor = SmsProcessor = SmsProcessor_1 = __decorate2([ (0, bullmq_1.Processor)("sms"), __param2(1, (0, common_12.Inject)("SMS_PROVIDER")), __metadata2("design:paramtypes", [prisma_service_12.PrismaService, Object]) ], SmsProcessor); } }); // dist/src/modules/sms/sms.module.js var require_sms_module = __commonJS({ "dist/src/modules/sms/sms.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SmsModule = void 0; var bullmq_1 = require_dist6(); var common_12 = require_common(); var config_12 = require_config2(); var admin_sms_controller_1 = require_admin_sms_controller(); var mock_sms_provider_1 = require_mock_sms_provider(); var raygan_sms_provider_1 = require_raygan_sms_provider(); var sms_processor_1 = require_sms_processor(); var sms_service_1 = require_sms_service(); var SmsModule = class SmsModule { static { __name(this, "SmsModule"); } }; exports2.SmsModule = SmsModule; exports2.SmsModule = SmsModule = __decorate2([ (0, common_12.Module)({ imports: [ bullmq_1.BullModule.registerQueue({ name: "sms" }) ], controllers: [admin_sms_controller_1.AdminSmsController], providers: [ sms_service_1.SmsService, sms_processor_1.SmsProcessor, { provide: "SMS_PROVIDER", useFactory: /* @__PURE__ */ __name((config) => { const driver = config.get("SMS_DRIVER", "mock"); return driver === "raygansms" ? new raygan_sms_provider_1.RayganSmsProvider(config) : new mock_sms_provider_1.MockSmsProvider(); }, "useFactory"), inject: [config_12.ConfigService] } ], exports: [sms_service_1.SmsService] }) ], SmsModule); } }); // dist/src/modules/spin-engine/prize-code-generator.js var require_prize_code_generator = __commonJS({ "dist/src/modules/spin-engine/prize-code-generator.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PrizeCodeGenerator = void 0; var common_12 = require_common(); var crypto5 = require("crypto"); var PrizeCodeGenerator = class PrizeCodeGenerator { static { __name(this, "PrizeCodeGenerator"); } async generateUnique(tx) { for (let i = 0; i < 5; i++) { const randomHex = crypto5.randomBytes(4).toString("hex").toUpperCase(); const code = `MNT-${randomHex}`; const existing = await tx.userPrize.findUnique({ where: { code }, select: { id: true } }); if (!existing) { return code; } } throw new common_12.InternalServerErrorException("\u062E\u0637\u0627 \u062F\u0631 \u062A\u0648\u0644\u06CC\u062F \u06A9\u062F \u06CC\u06A9\u062A\u0627\u06CC \u062C\u0627\u06CC\u0632\u0647. \u0644\u0637\u0641\u0627\u064B \u0645\u062C\u062F\u062F\u0627\u064B \u062A\u0644\u0627\u0634 \u06A9\u0646\u06CC\u062F."); } }; exports2.PrizeCodeGenerator = PrizeCodeGenerator; exports2.PrizeCodeGenerator = PrizeCodeGenerator = __decorate2([ (0, common_12.Injectable)() ], PrizeCodeGenerator); } }); // dist/src/common/decorators/current-user.decorator.js var require_current_user_decorator = __commonJS({ "dist/src/common/decorators/current-user.decorator.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.CurrentUser = void 0; var common_12 = require_common(); exports2.CurrentUser = (0, common_12.createParamDecorator)((data, ctx) => { const request = ctx.switchToHttp().getRequest(); const user = request.user; return data ? user?.[data] : user; }); } }); // dist/src/common/guards/jwt-user.guard.js var require_jwt_user_guard = __commonJS({ "dist/src/common/guards/jwt-user.guard.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.JwtUserGuard = void 0; var common_12 = require_common(); var passport_1 = require_passport(); var JwtUserGuard = class JwtUserGuard extends (0, passport_1.AuthGuard)("jwt-user") { static { __name(this, "JwtUserGuard"); } canActivate(context) { return super.canActivate(context); } handleRequest(err, user) { if (err || !user || user.type !== "user") { throw err || new common_12.UnauthorizedException("UNAUTHORIZED"); } return user; } }; exports2.JwtUserGuard = JwtUserGuard; exports2.JwtUserGuard = JwtUserGuard = __decorate2([ (0, common_12.Injectable)() ], JwtUserGuard); } }); // dist/src/modules/spin-engine/dto/spin-request.dto.js var require_spin_request_dto = __commonJS({ "dist/src/modules/spin-engine/dto/spin-request.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SpinRequestDto = void 0; var swagger_12 = require_swagger(); var class_validator_1 = require_cjs(); var SpinRequestDto = class { static { __name(this, "SpinRequestDto"); } }; exports2.SpinRequestDto = SpinRequestDto; __decorate2([ (0, swagger_12.ApiProperty)({ example: "d3b07384-d113-4ec3-a612-42fe1d3f56e9", description: "\u06A9\u0644\u06CC\u062F \u06CC\u06A9\u062A\u0627 \u062A\u0648\u0644\u06CC\u062F\u0634\u062F\u0647 \u062A\u0648\u0633\u0637 \u06A9\u0644\u0627\u06CC\u0646\u062A \u0628\u0631\u0627\u06CC \u062A\u0636\u0645\u06CC\u0646 Idempotency (UUID v4)" }), (0, class_validator_1.IsUUID)("4", { message: "\u06A9\u0644\u06CC\u062F Idempotency \u0628\u0627\u06CC\u062F \u06CC\u06A9 UUID v4 \u0645\u0639\u062A\u0628\u0631 \u0628\u0627\u0634\u062F" }), (0, class_validator_1.IsNotEmpty)({ message: "\u06A9\u0644\u06CC\u062F Idempotency \u0627\u0644\u0632\u0627\u0645\u06CC \u0627\u0633\u062A" }), __metadata2("design:type", String) ], SpinRequestDto.prototype, "idempotencyKey", void 0); } }); // dist/src/modules/spin-engine/weighted-random-selector.js var require_weighted_random_selector = __commonJS({ "dist/src/modules/spin-engine/weighted-random-selector.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.WeightedRandomSelector = void 0; var common_12 = require_common(); var crypto5 = require("crypto"); var WeightedRandomSelector = class WeightedRandomSelector { static { __name(this, "WeightedRandomSelector"); } select(candidates) { if (!candidates || candidates.length === 0) { throw new Error("Candidate pool cannot be empty."); } if (candidates.length === 1) { return candidates[0]; } const totalWeight = candidates.reduce((sum, item) => sum + Math.max(0, item.weight), 0); if (totalWeight <= 0) { throw new Error("Total weight of eligible prizes must be greater than zero."); } const rnd = crypto5.randomInt(0, totalWeight); let cursor = 0; for (const item of candidates) { cursor += Math.max(0, item.weight); if (rnd < cursor) { return item; } } return candidates[candidates.length - 1]; } }; exports2.WeightedRandomSelector = WeightedRandomSelector; exports2.WeightedRandomSelector = WeightedRandomSelector = __decorate2([ (0, common_12.Injectable)() ], WeightedRandomSelector); } }); // dist/src/modules/spin-engine/spin-engine.service.js var require_spin_engine_service = __commonJS({ "dist/src/modules/spin-engine/spin-engine.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var SpinEngineService_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SpinEngineService = void 0; var common_12 = require_common(); var client_1 = require("@prisma/client"); var crypto5 = require("crypto"); var prisma_service_12 = require_prisma_service(); var campaign_availability_service_1 = require_campaign_availability_service(); var sms_service_1 = require_sms_service(); var prize_code_generator_1 = require_prize_code_generator(); var weighted_random_selector_1 = require_weighted_random_selector(); var SpinEngineService = SpinEngineService_1 = class SpinEngineService { static { __name(this, "SpinEngineService"); } constructor(prisma, availabilityService, weightedRandomSelector, prizeCodeGenerator, smsService) { this.prisma = prisma; this.availabilityService = availabilityService; this.weightedRandomSelector = weightedRandomSelector; this.prizeCodeGenerator = prizeCodeGenerator; this.smsService = smsService; this.logger = new common_12.Logger(SpinEngineService_1.name); } async spin(userId, campaignId, idempotencyKey, metadata) { const existing = await this.prisma.spin.findUnique({ where: { idempotencyKey }, include: { prize: true, userPrize: true } }); if (existing) { this.logger.log(`[IDEMPOTENCY HIT] Returning existing spin result for key: ${idempotencyKey}`); return this.formatExistingSpinResponse(existing, campaignId, userId); } let retries = 5; while (retries >= 0) { try { return await this.executeSpinTransaction(userId, campaignId, idempotencyKey, metadata); } catch (err) { const isSerializationError = err.code === "P2034" || err.message?.includes("could not serialize access") || err.message?.includes("40001") || err.message?.includes("deadlock") || err.code === "P2010" && String(err.meta?.code) === "40001"; if (isSerializationError && retries > 0) { retries--; const jitter = crypto5.randomInt(30, 150); this.logger.warn(`Serialization conflict during spin. Retrying in ${jitter}ms... (${retries} attempts left)`); await new Promise((res) => setTimeout(res, jitter)); continue; } if (err.code === "P2002" && (err.meta?.target?.includes("idempotency_key") || err.message?.includes("idempotency_key"))) { const concurrentSpin = await this.prisma.spin.findUnique({ where: { idempotencyKey }, include: { prize: true, userPrize: true } }); if (concurrentSpin) { return this.formatExistingSpinResponse(concurrentSpin, campaignId, userId); } } throw err; } } throw new common_12.InternalServerErrorException("\u062E\u0637\u0627 \u062F\u0631 \u067E\u0631\u062F\u0627\u0632\u0634 \u0627\u0633\u067E\u06CC\u0646 \u0628\u0631 \u0627\u062B\u0631 \u062A\u0631\u0627\u0641\u06CC\u06A9 \u0628\u0627\u0644\u0627. \u0644\u0637\u0641\u0627\u064B \u0645\u062C\u062F\u062F\u0627\u064B \u062A\u0644\u0627\u0634 \u06A9\u0646\u06CC\u062F."); } async executeSpinTransaction(userId, campaignId, idempotencyKey, metadata) { return this.prisma.$transaction(async (tx) => { const campaign = await tx.campaign.findUnique({ where: { id: campaignId } }); if (!campaign) { throw new common_12.NotFoundException("CAMPAIGN_NOT_FOUND"); } if (!this.availabilityService.isCampaignAvailable(campaign)) { const error = this.availabilityService.getAvailabilityError(campaign); const errorMessages = { CAMPAIGN_DRAFT: "\u0627\u06CC\u0646 \u06A9\u0645\u067E\u06CC\u0646 \u062F\u0631 \u0648\u0636\u0639\u06CC\u062A \u067E\u06CC\u0634\u200C\u0646\u0648\u06CC\u0633 (DRAFT) \u0642\u0631\u0627\u0631 \u062F\u0627\u0631\u062F \u0648 \u0647\u0646\u0648\u0632 \u0641\u0639\u0627\u0644 \u0646\u0634\u062F\u0647 \u0627\u0633\u062A.", CAMPAIGN_PAUSED: "\u0627\u06CC\u0646 \u06A9\u0645\u067E\u06CC\u0646 \u0645\u0648\u0642\u062A\u0627\u064B \u0645\u062A\u0648\u0642\u0641 \u0634\u062F\u0647 \u0627\u0633\u062A.", CAMPAIGN_NOT_STARTED: "\u0632\u0645\u0627\u0646 \u0634\u0631\u0648\u0639 \u0627\u06CC\u0646 \u06A9\u0645\u067E\u06CC\u0646 \u0647\u0646\u0648\u0632 \u0641\u0631\u0627 \u0646\u0631\u0633\u06CC\u062F\u0647 \u0627\u0633\u062A.", CAMPAIGN_FINISHED: "\u0645\u0647\u0644\u062A \u0634\u0631\u06A9\u062A \u062F\u0631 \u0627\u06CC\u0646 \u06A9\u0645\u067E\u06CC\u0646 \u0628\u0647 \u067E\u0627\u06CC\u0627\u0646 \u0631\u0633\u06CC\u062F\u0647 \u0627\u0633\u062A." }; const message = errorMessages[error || ""] || error || "\u0627\u06CC\u0646 \u06A9\u0645\u067E\u06CC\u0646 \u062F\u0631 \u062D\u0627\u0644 \u062D\u0627\u0636\u0631 \u0641\u0639\u0627\u0644 \u0646\u0645\u06CC\u200C\u0628\u0627\u0634\u062F."; throw new common_12.BadRequestException(message); } const userCampaigns = await tx.$queryRaw` SELECT id, user_id, campaign_id, total_chances, used_chances FROM user_campaigns WHERE user_id = ${userId} AND campaign_id = ${campaignId} FOR UPDATE `; let userCampaign = userCampaigns[0]; let totalChances = userCampaign?.total_chances ?? 0; let usedChances = userCampaign?.used_chances ?? 0; if (!userCampaign) { const defaultChances = campaign.defaultChances; const newRecord = await tx.userCampaign.create({ data: { userId, campaignId, totalChances: defaultChances, usedChances: 0 } }); await tx.chanceTransaction.create({ data: { userId, campaignId, amount: defaultChances, type: "SIGNUP_BONUS", referenceType: "campaign_entry", description: "\u0634\u0627\u0646\u0633 \u0627\u0648\u0644\u06CC\u0647 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u0648\u0631\u0648\u062F \u0628\u0647 \u06A9\u0645\u067E\u06CC\u0646" } }); userCampaign = { id: newRecord.id, user_id: newRecord.userId, campaign_id: newRecord.campaignId, total_chances: newRecord.totalChances, used_chances: 0 }; totalChances = defaultChances; usedChances = 0; } else if (totalChances < campaign.defaultChances) { const diff = campaign.defaultChances - totalChances; await tx.userCampaign.update({ where: { id: userCampaign.id }, data: { totalChances: { increment: diff } } }); await tx.chanceTransaction.create({ data: { userId, campaignId, amount: diff, type: "ADMIN_ADJUSTMENT", referenceType: "campaign_default_chances_sync", description: `\u0647\u0645\u06AF\u0627\u0645\u200C\u0633\u0627\u0632\u06CC \u062E\u0648\u062F\u06A9\u0627\u0631 \u0628\u0627 \u0634\u0627\u0646\u0633 \u067E\u06CC\u0634\u200C\u0641\u0631\u0636 \u06A9\u0645\u067E\u06CC\u0646 (${campaign.defaultChances})` } }); totalChances = campaign.defaultChances; } const remainingChances = totalChances - usedChances; if (remainingChances <= 0) { throw new common_12.BadRequestException("NO_CHANCE_LEFT"); } const eligiblePrizes = await tx.$queryRaw` SELECT id, campaign_id, title, description, image, type, stock_type, initial_stock, remaining_stock, weight, status, sort_order, segment_color FROM prizes WHERE campaign_id = ${campaignId} AND status = 'ACTIVE' AND weight > 0 AND (stock_type = 'UNLIMITED' OR remaining_stock > 0) ORDER BY id ASC FOR UPDATE `; if (!eligiblePrizes || eligiblePrizes.length === 0) { throw new common_12.ConflictException("NO_ACTIVE_PRIZE"); } const selected = this.weightedRandomSelector.select(eligiblePrizes); if (selected.stock_type === client_1.StockType.LIMITED) { await tx.prize.update({ where: { id: selected.id }, data: { remainingStock: { decrement: 1 } } }); } await tx.chanceTransaction.create({ data: { userId, campaignId, amount: -1, type: "SPIN_CONSUME", referenceType: "spin", description: `\u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0627\u0632 \u0634\u0627\u0646\u0633 \u062F\u0631 \u0642\u0631\u0639\u0647\u200C\u06A9\u0634\u06CC` } }); await tx.userCampaign.update({ where: { id: userCampaign.id }, data: { usedChances: { increment: 1 } } }); const spin = await tx.spin.create({ data: { userId, campaignId, prizeId: selected.id, idempotencyKey, status: "SUCCESS", ip: metadata?.ip || null, userAgent: metadata?.userAgent || null } }); let userPrize = null; if (selected.type !== client_1.PrizeType.NO_PRIZE) { const code = await this.prizeCodeGenerator.generateUnique(tx); userPrize = await tx.userPrize.create({ data: { userId, campaignId, prizeId: selected.id, spinId: spin.id, code, status: "NEW", wonAt: /* @__PURE__ */ new Date() } }); } return { spin, selectedPrize: selected, userPrize, remainingChances: remainingChances - 1 }; }, { isolationLevel: client_1.Prisma.TransactionIsolationLevel.ReadCommitted, timeout: 1e4 }).then(async (result) => { try { await this.smsService.enqueueSpinResult(result.spin.id); } catch (smsErr) { this.logger.error(`Failed to enqueue spin SMS (non-blocking): ${smsErr}`); } return { success: true, spinId: result.spin.id, prize: { id: result.selectedPrize.id, title: result.selectedPrize.title, segment: result.selectedPrize.sort_order, code: result.userPrize?.code || null, type: result.selectedPrize.type, image: result.selectedPrize.image }, remainingChances: result.remainingChances }; }); } async formatExistingSpinResponse(spin, campaignId, userId) { const userCampaign = await this.prisma.userCampaign.findUnique({ where: { userId_campaignId: { userId, campaignId } } }); const remainingChances = (userCampaign?.totalChances ?? 0) - (userCampaign?.usedChances ?? 0); return { success: true, spinId: spin.id, prize: spin.prize ? { id: spin.prize.id, title: spin.prize.title, segment: spin.prize.sortOrder, code: spin.userPrize?.code || null, type: spin.prize.type, image: spin.prize.image } : null, remainingChances }; } }; exports2.SpinEngineService = SpinEngineService; exports2.SpinEngineService = SpinEngineService = SpinEngineService_1 = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [ prisma_service_12.PrismaService, campaign_availability_service_1.CampaignAvailabilityService, weighted_random_selector_1.WeightedRandomSelector, prize_code_generator_1.PrizeCodeGenerator, sms_service_1.SmsService ]) ], SpinEngineService); } }); // dist/src/modules/spin-engine/spin-engine.controller.js var require_spin_engine_controller = __commonJS({ "dist/src/modules/spin-engine/spin-engine.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SpinEngineController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var throttler_1 = require_dist9(); var current_user_decorator_1 = require_current_user_decorator(); var jwt_user_guard_1 = require_jwt_user_guard(); var spin_request_dto_1 = require_spin_request_dto(); var spin_engine_service_1 = require_spin_engine_service(); var SpinEngineController = class SpinEngineController { static { __name(this, "SpinEngineController"); } constructor(spinEngineService) { this.spinEngineService = spinEngineService; } async spin(campaignId, userId, dto, req) { const ip = req.ip || req.headers["x-forwarded-for"]; const userAgent = req.headers["user-agent"]; return this.spinEngineService.spin(userId, campaignId, dto.idempotencyKey, { ip, userAgent }); } }; exports2.SpinEngineController = SpinEngineController; __decorate2([ (0, common_12.Post)(":id/spin"), (0, common_12.HttpCode)(common_12.HttpStatus.OK), (0, throttler_1.Throttle)({ default: { limit: 20, ttl: 6e4 } }), (0, swagger_12.ApiOperation)({ summary: "\u0686\u0631\u062E\u0627\u0646\u062F\u0646 \u06AF\u0631\u062F\u0648\u0646\u0647 \u0634\u0627\u0646\u0633 (\u062A\u0636\u0645\u06CC\u0646 \u0627\u062A\u0645\u06CC\u06A9\u060C \u062C\u0644\u0648\u06AF\u06CC\u0631\u06CC \u0627\u0632 Concurrency \u0648 Idempotency)" }), (0, swagger_12.ApiResponse)({ status: 200, description: "\u0646\u062A\u06CC\u062C\u0647 \u0642\u0631\u0639\u0647\u200C\u06A9\u0634\u06CC \u0628\u0627 \u0645\u0648\u0641\u0642\u06CC\u062A \u062A\u0648\u0633\u0637 \u0633\u0631\u0648\u0631 \u062A\u0639\u06CC\u06CC\u0646 \u0648 \u062B\u0628\u062A \u06AF\u0631\u062F\u06CC\u062F.", schema: { example: { success: true, data: { success: true, spinId: "d3b07384-d113-4ec3-a612-42fe1d3f56e9", prize: { id: "prize-uuid", title: "\u06A9\u0627\u0631\u062A \u0647\u062F\u06CC\u0647 \u06F5\u06F0\u06F0 \u0647\u0632\u0627\u0631 \u062A\u0648\u0645\u0627\u0646\u06CC", segment: 3, code: "MNT-8F4KD2", type: "CREDIT", image: "http://localhost:3000/uploads/gift.png" }, remainingChances: 2 } } } }), __param2(0, (0, common_12.Param)("id")), __param2(1, (0, current_user_decorator_1.CurrentUser)("id")), __param2(2, (0, common_12.Body)()), __param2(3, (0, common_12.Req)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String, String, spin_request_dto_1.SpinRequestDto, Object]), __metadata2("design:returntype", Promise) ], SpinEngineController.prototype, "spin", null); exports2.SpinEngineController = SpinEngineController = __decorate2([ (0, swagger_12.ApiTags)("Spin Engine (\u06AF\u0631\u062F\u0648\u0646\u0647 \u0634\u0627\u0646\u0633)"), (0, common_12.Controller)("campaigns"), (0, common_12.UseGuards)(jwt_user_guard_1.JwtUserGuard), (0, swagger_12.ApiBearerAuth)("UserAuth"), __metadata2("design:paramtypes", [spin_engine_service_1.SpinEngineService]) ], SpinEngineController); } }); // dist/src/modules/spin-engine/spin-engine.module.js var require_spin_engine_module = __commonJS({ "dist/src/modules/spin-engine/spin-engine.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.SpinEngineModule = void 0; var common_12 = require_common(); var campaign_module_1 = require_campaign_module(); var chance_module_1 = require_chance_module(); var sms_module_1 = require_sms_module(); var prize_code_generator_1 = require_prize_code_generator(); var spin_engine_controller_1 = require_spin_engine_controller(); var spin_engine_service_1 = require_spin_engine_service(); var weighted_random_selector_1 = require_weighted_random_selector(); var SpinEngineModule = class SpinEngineModule { static { __name(this, "SpinEngineModule"); } }; exports2.SpinEngineModule = SpinEngineModule; exports2.SpinEngineModule = SpinEngineModule = __decorate2([ (0, common_12.Module)({ imports: [campaign_module_1.CampaignModule, chance_module_1.ChanceModule, sms_module_1.SmsModule], controllers: [spin_engine_controller_1.SpinEngineController], providers: [spin_engine_service_1.SpinEngineService, weighted_random_selector_1.WeightedRandomSelector, prize_code_generator_1.PrizeCodeGenerator], exports: [spin_engine_service_1.SpinEngineService, weighted_random_selector_1.WeightedRandomSelector, prize_code_generator_1.PrizeCodeGenerator] }) ], SpinEngineModule); } }); // dist/src/modules/storage/providers/local-storage.provider.js var require_local_storage_provider = __commonJS({ "dist/src/modules/storage/providers/local-storage.provider.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.LocalStorageProvider = void 0; var common_12 = require_common(); var config_12 = require_config2(); var crypto5 = require("crypto"); var fs = require("fs"); var path = require("path"); var LocalStorageProvider = class LocalStorageProvider { static { __name(this, "LocalStorageProvider"); } constructor(configService) { this.configService = configService; this.root = this.configService.get("STORAGE_LOCAL_ROOT", "./uploads"); this.publicBaseUrl = this.configService.get("STORAGE_PUBLIC_URL", "http://localhost:3000/uploads"); } async upload(file2, options) { const dir = path.join(process.cwd(), this.root, options.folder); await fs.promises.mkdir(dir, { recursive: true }); const ext = path.extname(options.filename); const finalName = `${Date.now()}-${crypto5.randomUUID()}${ext}`; const fullPath = path.join(dir, finalName); await fs.promises.writeFile(fullPath, file2); const relPath = `${options.folder}/${finalName}`.replace(/\\/g, "/"); const url = `${this.publicBaseUrl}/${relPath}`; return { url, path: relPath }; } async delete(relPath) { const fullPath = path.join(process.cwd(), this.root, relPath); await fs.promises.unlink(fullPath).catch(() => void 0); } }; exports2.LocalStorageProvider = LocalStorageProvider; exports2.LocalStorageProvider = LocalStorageProvider = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [config_12.ConfigService]) ], LocalStorageProvider); } }); // dist/src/modules/storage/storage.service.js var require_storage_service = __commonJS({ "dist/src/modules/storage/storage.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.StorageService = void 0; var common_12 = require_common(); var StorageService = class StorageService { static { __name(this, "StorageService"); } constructor(provider) { this.provider = provider; } async uploadFile(file2, folder = "general") { return this.provider.upload(file2.buffer, { folder, filename: file2.originalname, mimeType: file2.mimetype }); } async deleteFile(relPath) { return this.provider.delete(relPath); } }; exports2.StorageService = StorageService; exports2.StorageService = StorageService = __decorate2([ (0, common_12.Injectable)(), __param2(0, (0, common_12.Inject)("STORAGE_PROVIDER")), __metadata2("design:paramtypes", [Object]) ], StorageService); } }); // dist/src/modules/storage/storage.controller.js var require_storage_controller = __commonJS({ "dist/src/modules/storage/storage.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.StorageController = void 0; var common_12 = require_common(); var platform_express_1 = require_platform_express(); var swagger_12 = require_swagger(); var jwt_admin_guard_1 = require_jwt_admin_guard(); var storage_service_1 = require_storage_service(); var StorageController = class StorageController { static { __name(this, "StorageController"); } constructor(storageService) { this.storageService = storageService; } async uploadFile(file2) { if (!file2) { throw new common_12.BadRequestException("\u0641\u0627\u06CC\u0644\u06CC \u0627\u0631\u0633\u0627\u0644 \u0646\u0634\u062F\u0647 \u0627\u0633\u062A."); } return this.storageService.uploadFile(file2, "campaign-assets"); } }; exports2.StorageController = StorageController; __decorate2([ (0, common_12.Post)(), (0, common_12.UseInterceptors)((0, platform_express_1.FileInterceptor)("file", { limits: { fileSize: 5 * 1024 * 1024 }, fileFilter: /* @__PURE__ */ __name((req, file2, cb) => { if (!file2.mimetype.match(/\/(jpg|jpeg|png|webp|svg\+xml)$/)) { return cb(new common_12.BadRequestException("\u0641\u0642\u0637 \u0641\u0631\u0645\u062A\u200C\u0647\u0627\u06CC \u062A\u0635\u0648\u06CC\u0631\u06CC JPG, PNG, WebP \u0648 SVG \u0645\u062C\u0627\u0632 \u0645\u06CC\u200C\u0628\u0627\u0634\u0646\u062F."), false); } cb(null, true); }, "fileFilter") })), (0, swagger_12.ApiOperation)({ summary: "\u0622\u067E\u0644\u0648\u062F \u062A\u0635\u0648\u06CC\u0631 \u0628\u0631\u0627\u06CC \u0644\u0648\u06AF\u0648\u060C \u0628\u0646\u0631 \u06CC\u0627 \u0639\u06A9\u0633 \u062C\u0627\u06CC\u0632\u0647" }), (0, swagger_12.ApiConsumes)("multipart/form-data"), (0, swagger_12.ApiBody)({ schema: { type: "object", properties: { file: { type: "string", format: "binary" } } } }), __param2(0, (0, common_12.UploadedFile)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [Object]), __metadata2("design:returntype", Promise) ], StorageController.prototype, "uploadFile", null); exports2.StorageController = StorageController = __decorate2([ (0, swagger_12.ApiTags)("Admin Uploads (\u0622\u067E\u0644\u0648\u062F \u0641\u0627\u06CC\u0644)"), (0, common_12.Controller)("admin/uploads"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, swagger_12.ApiBearerAuth)("AdminAuth"), __metadata2("design:paramtypes", [storage_service_1.StorageService]) ], StorageController); } }); // dist/src/modules/storage/storage.module.js var require_storage_module = __commonJS({ "dist/src/modules/storage/storage.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.StorageModule = void 0; var common_12 = require_common(); var local_storage_provider_1 = require_local_storage_provider(); var storage_controller_1 = require_storage_controller(); var storage_service_1 = require_storage_service(); var StorageModule = class StorageModule { static { __name(this, "StorageModule"); } }; exports2.StorageModule = StorageModule; exports2.StorageModule = StorageModule = __decorate2([ (0, common_12.Module)({ controllers: [storage_controller_1.StorageController], providers: [ storage_service_1.StorageService, { provide: "STORAGE_PROVIDER", useClass: local_storage_provider_1.LocalStorageProvider } ], exports: [storage_service_1.StorageService] }) ], StorageModule); } }); // dist/src/modules/user/user.service.js var require_user_service = __commonJS({ "dist/src/modules/user/user.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UserService = void 0; var common_12 = require_common(); var client_1 = require("@prisma/client"); var prisma_service_12 = require_prisma_service(); var chance_service_1 = require_chance_service(); var UserService = class UserService { static { __name(this, "UserService"); } constructor(prisma, chanceService) { this.prisma = prisma; this.chanceService = chanceService; } async getMe(userId) { const user = await this.prisma.user.findUnique({ where: { id: userId }, select: { id: true, mobile: true, name: true, status: true, lastLoginAt: true, createdAt: true } }); if (!user) { throw new common_12.NotFoundException("\u06A9\u0627\u0631\u0628\u0631 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } return user; } async getMyChances(userId, campaignId) { if (!campaignId) { return this.prisma.userCampaign.findMany({ where: { userId }, include: { campaign: { select: { id: true, title: true, slug: true, status: true } } } }); } return this.chanceService.getUserChances(userId, campaignId); } async getMyPrizes(userId) { return this.prisma.userPrize.findMany({ where: { userId }, orderBy: { wonAt: "desc" }, include: { prize: { select: { id: true, title: true, description: true, image: true, type: true, expiresAt: true } }, campaign: { select: { id: true, title: true, slug: true } } } }); } async findAllForAdmin(query) { const page = Number(query.page) || 1; const pageSize = Number(query.pageSize) || 20; const skip = (page - 1) * pageSize; const where = {}; if (query.status) { where.status = query.status; } else if (query.isBlocked !== void 0 && query.isBlocked !== "") { const isBlocked = String(query.isBlocked) === "true"; where.status = isBlocked ? client_1.UserStatus.BLOCKED : client_1.UserStatus.ACTIVE; } if (query.search) { where.OR = [ { mobile: { contains: query.search } }, { name: { contains: query.search, mode: "insensitive" } } ]; } const [data, total] = await Promise.all([ this.prisma.user.findMany({ where, skip, take: pageSize, orderBy: { createdAt: "desc" }, select: { id: true, mobile: true, name: true, status: true, lastLoginAt: true, createdAt: true, _count: { select: { userCampaigns: true, spins: true, userPrizes: true } } } }), this.prisma.user.count({ where }) ]); return { data, meta: { page, pageSize, total, totalPages: Math.ceil(total / pageSize) } }; } async findOneForAdmin(id) { const user = await this.prisma.user.findUnique({ where: { id }, include: { userCampaigns: { include: { campaign: { select: { id: true, title: true, slug: true } } } }, userPrizes: { orderBy: { wonAt: "desc" }, include: { prize: true, campaign: { select: { title: true } } } }, spins: { take: 20, orderBy: { createdAt: "desc" }, include: { prize: { select: { title: true, type: true } }, campaign: { select: { title: true } } } }, chanceTransactions: { take: 30, orderBy: { createdAt: "desc" }, include: { campaign: { select: { title: true } }, createdBy: { select: { name: true } } } } } }); if (!user) { throw new common_12.NotFoundException("\u06A9\u0627\u0631\u0628\u0631 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } return user; } async toggleBlockUser(id, blocked) { const user = await this.prisma.user.findUnique({ where: { id } }); if (!user) { throw new common_12.NotFoundException("\u06A9\u0627\u0631\u0628\u0631 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } const newStatus = blocked ? client_1.UserStatus.BLOCKED : client_1.UserStatus.ACTIVE; return this.prisma.user.update({ where: { id }, data: { status: newStatus }, select: { id: true, mobile: true, status: true } }); } }; exports2.UserService = UserService; exports2.UserService = UserService = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [ prisma_service_12.PrismaService, chance_service_1.ChanceService ]) ], UserService); } }); // dist/src/modules/user/admin-user.controller.js var require_admin_user_controller = __commonJS({ "dist/src/modules/user/admin-user.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminUserController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var client_1 = require("@prisma/client"); var jwt_admin_guard_1 = require_jwt_admin_guard(); var audit_interceptor_1 = require_audit_interceptor(); var user_service_1 = require_user_service(); var AdminUserController = class AdminUserController { static { __name(this, "AdminUserController"); } constructor(userService) { this.userService = userService; } async findAll(query) { return this.userService.findAllForAdmin(query); } async findOne(id) { return this.userService.findOneForAdmin(id); } async toggleBlock(id, blocked) { return this.userService.toggleBlockUser(id, blocked); } }; exports2.AdminUserController = AdminUserController; __decorate2([ (0, common_12.Get)(), (0, swagger_12.ApiOperation)({ summary: "\u0644\u06CC\u0633\u062A \u06A9\u0627\u0631\u0628\u0631\u0627\u0646 \u0628\u0627 \u062C\u0633\u062A\u062C\u0648\u06CC \u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644/\u0646\u0627\u0645 \u0648 \u0641\u06CC\u0644\u062A\u0631 \u0648\u0636\u0639\u06CC\u062A" }), (0, swagger_12.ApiQuery)({ name: "page", required: false }), (0, swagger_12.ApiQuery)({ name: "pageSize", required: false }), (0, swagger_12.ApiQuery)({ name: "search", required: false }), (0, swagger_12.ApiQuery)({ name: "status", enum: client_1.UserStatus, required: false }), __param2(0, (0, common_12.Query)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [Object]), __metadata2("design:returntype", Promise) ], AdminUserController.prototype, "findAll", null); __decorate2([ (0, common_12.Get)(":id"), (0, swagger_12.ApiOperation)({ summary: "\u0645\u0634\u0627\u0647\u062F\u0647 \u067E\u0631\u0648\u0641\u0627\u06CC\u0644 \u06A9\u0627\u0645\u0644\u060C \u06A9\u0645\u067E\u06CC\u0646\u200C\u0647\u0627\u060C \u0634\u0627\u0646\u0633\u200C\u0647\u0627\u060C \u0627\u0633\u067E\u06CC\u0646\u200C\u0647\u0627 \u0648 \u062C\u0648\u0627\u06CC\u0632 \u06A9\u0627\u0631\u0628\u0631" }), __param2(0, (0, common_12.Param)("id")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], AdminUserController.prototype, "findOne", null); __decorate2([ (0, common_12.Patch)(":id/block"), (0, swagger_12.ApiOperation)({ summary: "\u0645\u0633\u062F\u0648\u062F\u0633\u0627\u0632\u06CC \u06CC\u0627 \u0631\u0641\u0639 \u0645\u0633\u062F\u0648\u062F\u06CC\u062A \u06A9\u0627\u0631\u0628\u0631" }), __param2(0, (0, common_12.Param)("id")), __param2(1, (0, common_12.Body)("blocked")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String, Boolean]), __metadata2("design:returntype", Promise) ], AdminUserController.prototype, "toggleBlock", null); exports2.AdminUserController = AdminUserController = __decorate2([ (0, swagger_12.ApiTags)("Admin Users (\u0645\u062F\u06CC\u0631\u06CC\u062A \u06A9\u0627\u0631\u0628\u0631\u0627\u0646)"), (0, common_12.Controller)("admin/users"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, common_12.UseInterceptors)(audit_interceptor_1.AuditInterceptor), (0, swagger_12.ApiBearerAuth)("AdminAuth"), __metadata2("design:paramtypes", [user_service_1.UserService]) ], AdminUserController); } }); // dist/src/modules/user/user.controller.js var require_user_controller = __commonJS({ "dist/src/modules/user/user.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UserController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var current_user_decorator_1 = require_current_user_decorator(); var jwt_user_guard_1 = require_jwt_user_guard(); var user_service_1 = require_user_service(); var UserController = class UserController { static { __name(this, "UserController"); } constructor(userService) { this.userService = userService; } async getMe(userId) { return this.userService.getMe(userId); } async getMyChances(userId, campaignId) { return this.userService.getMyChances(userId, campaignId); } async getMyPrizes(userId) { return this.userService.getMyPrizes(userId); } }; exports2.UserController = UserController; __decorate2([ (0, common_12.Get)(), (0, swagger_12.ApiOperation)({ summary: "\u062F\u0631\u06CC\u0627\u0641\u062A \u0645\u0634\u062E\u0635\u0627\u062A \u062D\u0633\u0627\u0628 \u06A9\u0627\u0631\u0628\u0631\u06CC \u0645\u0646" }), (0, swagger_12.ApiResponse)({ status: 200, description: "\u0645\u0634\u062E\u0635\u0627\u062A \u06A9\u0627\u0631\u0628\u0631 \u062C\u0627\u0631\u06CC" }), __param2(0, (0, current_user_decorator_1.CurrentUser)("id")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], UserController.prototype, "getMe", null); __decorate2([ (0, common_12.Get)("chances"), (0, swagger_12.ApiOperation)({ summary: "\u062F\u0631\u06CC\u0627\u0641\u062A \u0648\u0636\u0639\u06CC\u062A \u0648 \u062A\u0639\u062F\u0627\u062F \u0634\u0627\u0646\u0633\u200C\u0647\u0627\u06CC \u06A9\u0627\u0631\u0628\u0631 \u062F\u0631 \u06CC\u06A9 \u06A9\u0645\u067E\u06CC\u0646" }), (0, swagger_12.ApiQuery)({ name: "campaignId", required: false, description: "\u0634\u0646\u0627\u0633\u0647 \u06A9\u0645\u067E\u06CC\u0646 \u0645\u0648\u0631\u062F \u0646\u0638\u0631" }), __param2(0, (0, current_user_decorator_1.CurrentUser)("id")), __param2(1, (0, common_12.Query)("campaignId")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String, String]), __metadata2("design:returntype", Promise) ], UserController.prototype, "getMyChances", null); __decorate2([ (0, common_12.Get)("prizes"), (0, swagger_12.ApiOperation)({ summary: "\u062A\u0627\u0631\u06CC\u062E\u0686\u0647 \u062A\u0645\u0627\u0645 \u062C\u0648\u0627\u06CC\u0632 \u0628\u0631\u0646\u062F\u0647 \u0634\u062F\u0647 \u062A\u0648\u0633\u0637 \u06A9\u0627\u0631\u0628\u0631 (\u062C\u0648\u0627\u06CC\u0632 \u0645\u0646)" }), __param2(0, (0, current_user_decorator_1.CurrentUser)("id")), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String]), __metadata2("design:returntype", Promise) ], UserController.prototype, "getMyPrizes", null); exports2.UserController = UserController = __decorate2([ (0, swagger_12.ApiTags)("User (\u06A9\u0627\u0631\u0628\u0631 \u0644\u0627\u06AF\u06CC\u0646\u200C\u0634\u062F\u0647)"), (0, common_12.Controller)("me"), (0, common_12.UseGuards)(jwt_user_guard_1.JwtUserGuard), (0, swagger_12.ApiBearerAuth)("UserAuth"), __metadata2("design:paramtypes", [user_service_1.UserService]) ], UserController); } }); // dist/src/modules/user/user.module.js var require_user_module = __commonJS({ "dist/src/modules/user/user.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UserModule = void 0; var common_12 = require_common(); var chance_module_1 = require_chance_module(); var admin_user_controller_1 = require_admin_user_controller(); var user_controller_1 = require_user_controller(); var user_service_1 = require_user_service(); var UserModule = class UserModule { static { __name(this, "UserModule"); } }; exports2.UserModule = UserModule; exports2.UserModule = UserModule = __decorate2([ (0, common_12.Module)({ imports: [chance_module_1.ChanceModule], controllers: [user_controller_1.UserController, admin_user_controller_1.AdminUserController], providers: [user_service_1.UserService], exports: [user_service_1.UserService] }) ], UserModule); } }); // dist/src/modules/winner/winner.service.js var require_winner_service = __commonJS({ "dist/src/modules/winner/winner.service.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var WinnerService_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.WinnerService = void 0; var common_12 = require_common(); var schedule_1 = require_schedule(); var client_1 = require("@prisma/client"); var ExcelJS = require_excel(); var prisma_service_12 = require_prisma_service(); var WinnerService = WinnerService_1 = class WinnerService { static { __name(this, "WinnerService"); } constructor(prisma) { this.prisma = prisma; this.logger = new common_12.Logger(WinnerService_1.name); } async findAllUserPrizes(query) { const page = Number(query.page) || 1; const pageSize = Number(query.pageSize) || 20; const skip = (page - 1) * pageSize; const where = {}; if (query.campaignId) where.campaignId = query.campaignId; if (query.status) where.status = query.status; if (query.search) { where.OR = [ { code: { contains: query.search } }, { user: { mobile: { contains: query.search } } }, { user: { name: { contains: query.search, mode: "insensitive" } } }, { prize: { title: { contains: query.search, mode: "insensitive" } } } ]; } const [data, total] = await Promise.all([ this.prisma.userPrize.findMany({ where, skip, take: pageSize, orderBy: { wonAt: "desc" }, include: { user: { select: { id: true, mobile: true, name: true } }, prize: { select: { id: true, title: true, type: true, image: true } }, campaign: { select: { id: true, title: true, slug: true } } } }), this.prisma.userPrize.count({ where }) ]); return { data, meta: { page, pageSize, total, totalPages: Math.ceil(total / pageSize) } }; } async updatePrizeStatus(id, dto, adminId, ip) { const userPrize = await this.prisma.userPrize.findUnique({ where: { id }, include: { user: { select: { mobile: true } }, prize: { select: { title: true, type: true } } } }); if (!userPrize) { throw new common_12.NotFoundException("\u062C\u0627\u06CC\u0632\u0647 \u0628\u0631\u0646\u062F\u0647 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u06CC\u0627\u0641\u062A \u0646\u0634\u062F."); } const oldStatus = userPrize.status; const newStatus = dto.status; const updated = await this.prisma.userPrize.update({ where: { id }, data: { status: newStatus, redeemedAt: ["DELIVERED", "USED"].includes(newStatus) ? /* @__PURE__ */ new Date() : userPrize.redeemedAt } }); await this.prisma.adminLog.create({ data: { adminId, action: "user_prize.update_status", entityType: "user_prize", entityId: id, oldValue: { status: oldStatus }, newValue: { status: newStatus, userMobile: userPrize.user.mobile, prizeTitle: userPrize.prize.title }, ip } }); return updated; } async exportWinnersExcel(query) { const where = {}; if (query.campaignId) where.campaignId = query.campaignId; if (query.status) where.status = query.status; const items = await this.prisma.userPrize.findMany({ where, orderBy: { wonAt: "desc" }, include: { user: { select: { mobile: true, name: true } }, prize: { select: { title: true, type: true } }, campaign: { select: { title: true } } } }); const workbook = new ExcelJS.Workbook(); const worksheet = workbook.addWorksheet("Winners"); worksheet.columns = [ { header: "\u0634\u0646\u0627\u0633\u0647 \u0628\u0631\u062F", key: "id", width: 36 }, { header: "\u0634\u0645\u0627\u0631\u0647 \u0645\u0648\u0628\u0627\u06CC\u0644", key: "mobile", width: 16 }, { header: "\u0646\u0627\u0645 \u06A9\u0627\u0631\u0628\u0631", key: "name", width: 20 }, { header: "\u06A9\u0645\u067E\u06CC\u0646", key: "campaign", width: 25 }, { header: "\u0639\u0646\u0648\u0627\u0646 \u062C\u0627\u06CC\u0632\u0647", key: "prize", width: 25 }, { header: "\u0646\u0648\u0639 \u062C\u0627\u06CC\u0632\u0647", key: "type", width: 16 }, { header: "\u06A9\u062F \u062C\u0627\u06CC\u0632\u0647", key: "code", width: 20 }, { header: "\u0648\u0636\u0639\u06CC\u062A", key: "status", width: 16 }, { header: "\u062A\u0627\u0631\u06CC\u062E \u0628\u0631\u062F", key: "wonAt", width: 24 }, { header: "\u062A\u0627\u0631\u06CC\u062E \u062A\u062D\u0648\u06CC\u0644 / \u0645\u0635\u0631\u0641", key: "redeemedAt", width: 24 } ]; items.forEach((item) => { worksheet.addRow({ id: item.id, mobile: item.user.mobile, name: item.user.name || "-", campaign: item.campaign.title, prize: item.prize.title, type: item.prize.type, code: item.code || "-", status: item.status, wonAt: item.wonAt.toISOString(), redeemedAt: item.redeemedAt ? item.redeemedAt.toISOString() : "-" }); }); return workbook.xlsx.writeBuffer(); } async findAllSpins(query) { const page = Number(query.page) || 1; const pageSize = Number(query.pageSize) || 20; const skip = (page - 1) * pageSize; const where = {}; if (query.campaignId) where.campaignId = query.campaignId; if (query.prizeId) where.prizeId = query.prizeId; if (query.search) { where.OR = [ { user: { mobile: { contains: query.search } } }, { prize: { title: { contains: query.search, mode: "insensitive" } } }, { idempotencyKey: { contains: query.search } } ]; } const [data, total] = await Promise.all([ this.prisma.spin.findMany({ where, skip, take: pageSize, orderBy: { createdAt: "desc" }, include: { user: { select: { id: true, mobile: true, name: true } }, prize: { select: { id: true, title: true, type: true, segmentColor: true } }, campaign: { select: { id: true, title: true } }, userPrize: { select: { code: true, status: true } } } }), this.prisma.spin.count({ where }) ]); return { data, meta: { page, pageSize, total, totalPages: Math.ceil(total / pageSize) } }; } async exportSpinsExcel(query) { const where = {}; if (query.campaignId) where.campaignId = query.campaignId; const items = await this.prisma.spin.findMany({ where, orderBy: { createdAt: "desc" }, include: { user: { select: { mobile: true, name: true } }, prize: { select: { title: true, type: true } }, campaign: { select: { title: true } } } }); const workbook = new ExcelJS.Workbook(); const worksheet = workbook.addWorksheet("Spins"); worksheet.columns = [ { header: "\u0634\u0646\u0627\u0633\u0647 \u0627\u0633\u067E\u06CC\u0646", key: "id", width: 36 }, { header: "\u0645\u0648\u0628\u0627\u06CC\u0644 \u06A9\u0627\u0631\u0628\u0631", key: "mobile", width: 16 }, { header: "\u06A9\u0645\u067E\u06CC\u0646", key: "campaign", width: 25 }, { header: "\u062C\u0627\u06CC\u0632\u0647 \u062A\u0639\u06CC\u06CC\u0646\u200C\u0634\u062F\u0647", key: "prize", width: 25 }, { header: "\u0646\u0648\u0639 \u062C\u0627\u06CC\u0632\u0647", key: "type", width: 16 }, { header: "\u06A9\u0644\u06CC\u062F Idempotency", key: "key", width: 36 }, { header: "IP \u062F\u0631\u062E\u0648\u0627\u0633\u062A", key: "ip", width: 18 }, { header: "\u062A\u0627\u0631\u06CC\u062E \u0648 \u0633\u0627\u0639\u062A", key: "createdAt", width: 24 } ]; items.forEach((item) => { worksheet.addRow({ id: item.id, mobile: item.user.mobile, campaign: item.campaign.title, prize: item.prize?.title || "\u0628\u062F\u0648\u0646 \u062C\u0627\u06CC\u0632\u0647", type: item.prize?.type || "-", key: item.idempotencyKey, ip: item.ip || "-", createdAt: item.createdAt.toISOString() }); }); return workbook.xlsx.writeBuffer(); } async handlePrizeExpirations() { this.logger.log("[CRON] Running daily prize expiration check..."); const now = /* @__PURE__ */ new Date(); const expiredResult = await this.prisma.userPrize.updateMany({ where: { status: { in: [client_1.UserPrizeStatus.NEW, client_1.UserPrizeStatus.ACTIVE_CODE] }, prize: { expiresAt: { lt: now } } }, data: { status: client_1.UserPrizeStatus.EXPIRED } }); this.logger.log(`[CRON] ${expiredResult.count} user prize(s) marked as EXPIRED.`); } }; exports2.WinnerService = WinnerService; __decorate2([ (0, schedule_1.Cron)(schedule_1.CronExpression.EVERY_DAY_AT_MIDNIGHT), __metadata2("design:type", Function), __metadata2("design:paramtypes", []), __metadata2("design:returntype", Promise) ], WinnerService.prototype, "handlePrizeExpirations", null); exports2.WinnerService = WinnerService = WinnerService_1 = __decorate2([ (0, common_12.Injectable)(), __metadata2("design:paramtypes", [prisma_service_12.PrismaService]) ], WinnerService); } }); // dist/src/modules/winner/admin-spin.controller.js var require_admin_spin_controller = __commonJS({ "dist/src/modules/winner/admin-spin.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminSpinController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var jwt_admin_guard_1 = require_jwt_admin_guard(); var audit_interceptor_1 = require_audit_interceptor(); var winner_service_1 = require_winner_service(); var AdminSpinController = class AdminSpinController { static { __name(this, "AdminSpinController"); } constructor(winnerService) { this.winnerService = winnerService; } async findAll(query) { return this.winnerService.findAllSpins(query); } async export(query, res) { const buffer = await this.winnerService.exportSpinsExcel(query); res.send(buffer); } }; exports2.AdminSpinController = AdminSpinController; __decorate2([ (0, common_12.Get)(), (0, swagger_12.ApiOperation)({ summary: "\u0644\u06CC\u0633\u062A \u062A\u0627\u0631\u06CC\u062E\u0686\u0647 \u062A\u0645\u0627\u0645 \u0686\u0631\u062E\u0627\u0646\u062F\u0646\u200C\u0647\u0627\u06CC \u06AF\u0631\u062F\u0648\u0646\u0647 \u0628\u0627 \u0641\u06CC\u0644\u062A\u0631 \u0648 \u062C\u0633\u062A\u062C\u0648" }), (0, swagger_12.ApiQuery)({ name: "page", required: false }), (0, swagger_12.ApiQuery)({ name: "pageSize", required: false }), (0, swagger_12.ApiQuery)({ name: "campaignId", required: false }), (0, swagger_12.ApiQuery)({ name: "prizeId", required: false }), (0, swagger_12.ApiQuery)({ name: "search", required: false }), __param2(0, (0, common_12.Query)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [Object]), __metadata2("design:returntype", Promise) ], AdminSpinController.prototype, "findAll", null); __decorate2([ (0, common_12.Get)("export"), (0, swagger_12.ApiOperation)({ summary: "\u062E\u0631\u0648\u062C\u06CC \u0641\u0627\u06CC\u0644 \u0627\u06A9\u0633\u0644 \u0627\u0632 \u062A\u0627\u0631\u06CC\u062E\u0686\u0647 \u062A\u0645\u0627\u0645 \u0627\u0633\u067E\u06CC\u0646\u200C\u0647\u0627" }), (0, common_12.Header)("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"), (0, common_12.Header)("Content-Disposition", "attachment; filename=spins.xlsx"), __param2(0, (0, common_12.Query)()), __param2(1, (0, common_12.Res)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [Object, Object]), __metadata2("design:returntype", Promise) ], AdminSpinController.prototype, "export", null); exports2.AdminSpinController = AdminSpinController = __decorate2([ (0, swagger_12.ApiTags)("Admin Spins (\u062A\u0627\u0631\u06CC\u062E\u0686\u0647 \u0627\u0633\u067E\u06CC\u0646\u200C\u0647\u0627)"), (0, common_12.Controller)("admin/spins"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, common_12.UseInterceptors)(audit_interceptor_1.AuditInterceptor), (0, swagger_12.ApiBearerAuth)("AdminAuth"), __metadata2("design:paramtypes", [winner_service_1.WinnerService]) ], AdminSpinController); } }); // dist/src/modules/winner/dto/update-prize-status.dto.js var require_update_prize_status_dto = __commonJS({ "dist/src/modules/winner/dto/update-prize-status.dto.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.UpdatePrizeStatusDto = void 0; var swagger_12 = require_swagger(); var client_1 = require("@prisma/client"); var class_validator_1 = require_cjs(); var UpdatePrizeStatusDto = class { static { __name(this, "UpdatePrizeStatusDto"); } }; exports2.UpdatePrizeStatusDto = UpdatePrizeStatusDto; __decorate2([ (0, swagger_12.ApiProperty)({ enum: client_1.UserPrizeStatus, example: client_1.UserPrizeStatus.DELIVERED, description: "\u0648\u0636\u0639\u06CC\u062A \u062C\u062F\u06CC\u062F \u062C\u0627\u06CC\u0632\u0647 \u0628\u0631\u0646\u062F\u0647" }), (0, class_validator_1.IsEnum)(client_1.UserPrizeStatus, { message: "\u0648\u0636\u0639\u06CC\u062A \u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062F\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u0627\u0633\u062A" }), (0, class_validator_1.IsNotEmpty)(), __metadata2("design:type", String) ], UpdatePrizeStatusDto.prototype, "status", void 0); } }); // dist/src/modules/winner/admin-winner.controller.js var require_admin_winner_controller = __commonJS({ "dist/src/modules/winner/admin-winner.controller.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata2 = exports2 && exports2.__metadata || function(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param2 = exports2 && exports2.__param || function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AdminWinnerController = void 0; var common_12 = require_common(); var swagger_12 = require_swagger(); var current_admin_decorator_1 = require_current_admin_decorator(); var jwt_admin_guard_1 = require_jwt_admin_guard(); var audit_interceptor_1 = require_audit_interceptor(); var update_prize_status_dto_1 = require_update_prize_status_dto(); var winner_service_1 = require_winner_service(); var AdminWinnerController = class AdminWinnerController { static { __name(this, "AdminWinnerController"); } constructor(winnerService) { this.winnerService = winnerService; } async findAll(query) { return this.winnerService.findAllUserPrizes(query); } async updateStatus(id, dto, adminId, req) { const ip = req.ip || req.headers["x-forwarded-for"]; return this.winnerService.updatePrizeStatus(id, dto, adminId, ip); } async export(query, res) { const buffer = await this.winnerService.exportWinnersExcel(query); res.send(buffer); } }; exports2.AdminWinnerController = AdminWinnerController; __decorate2([ (0, common_12.Get)(), (0, swagger_12.ApiOperation)({ summary: "\u0644\u06CC\u0633\u062A \u0628\u0631\u0646\u062F\u06AF\u0627\u0646 \u0628\u0627 \u0641\u06CC\u0644\u062A\u0631 \u06A9\u0645\u067E\u06CC\u0646\u060C \u0648\u0636\u0639\u06CC\u062A \u062C\u0627\u06CC\u0632\u0647 \u0648 \u062C\u0633\u062A\u062C\u0648" }), (0, swagger_12.ApiQuery)({ name: "page", required: false }), (0, swagger_12.ApiQuery)({ name: "pageSize", required: false }), (0, swagger_12.ApiQuery)({ name: "campaignId", required: false }), (0, swagger_12.ApiQuery)({ name: "status", required: false }), (0, swagger_12.ApiQuery)({ name: "search", required: false }), __param2(0, (0, common_12.Query)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [Object]), __metadata2("design:returntype", Promise) ], AdminWinnerController.prototype, "findAll", null); __decorate2([ (0, common_12.Patch)(":id/status"), (0, swagger_12.ApiOperation)({ summary: "\u062A\u063A\u06CC\u06CC\u0631 \u0648\u0636\u0639\u06CC\u062A \u062C\u0627\u06CC\u0632\u0647 \u0628\u0631\u0646\u062F\u0647 (\u062A\u062D\u0648\u06CC\u0644 \u0634\u062F / \u062A\u0645\u0627\u0633 \u06AF\u0631\u0641\u062A\u0647 \u0634\u062F / \u0645\u0646\u0642\u0636\u06CC \u0634\u062F)" }), __param2(0, (0, common_12.Param)("id")), __param2(1, (0, common_12.Body)()), __param2(2, (0, current_admin_decorator_1.CurrentAdmin)("id")), __param2(3, (0, common_12.Req)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [String, update_prize_status_dto_1.UpdatePrizeStatusDto, String, Object]), __metadata2("design:returntype", Promise) ], AdminWinnerController.prototype, "updateStatus", null); __decorate2([ (0, common_12.Get)("export"), (0, swagger_12.ApiOperation)({ summary: "\u062E\u0631\u0648\u062C\u06CC \u0641\u0627\u06CC\u0644 \u0627\u06A9\u0633\u0644 \u0627\u0632 \u0644\u06CC\u0633\u062A \u0628\u0631\u0646\u062F\u06AF\u0627\u0646" }), (0, common_12.Header)("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"), (0, common_12.Header)("Content-Disposition", "attachment; filename=winners.xlsx"), __param2(0, (0, common_12.Query)()), __param2(1, (0, common_12.Res)()), __metadata2("design:type", Function), __metadata2("design:paramtypes", [Object, Object]), __metadata2("design:returntype", Promise) ], AdminWinnerController.prototype, "export", null); exports2.AdminWinnerController = AdminWinnerController = __decorate2([ (0, swagger_12.ApiTags)("Admin Winners (\u0645\u062F\u06CC\u0631\u06CC\u062A \u0628\u0631\u0646\u062F\u06AF\u0627\u0646)"), (0, common_12.Controller)("admin/user-prizes"), (0, common_12.UseGuards)(jwt_admin_guard_1.JwtAdminGuard), (0, common_12.UseInterceptors)(audit_interceptor_1.AuditInterceptor), (0, swagger_12.ApiBearerAuth)("AdminAuth"), __metadata2("design:paramtypes", [winner_service_1.WinnerService]) ], AdminWinnerController); } }); // dist/src/modules/winner/winner.module.js var require_winner_module = __commonJS({ "dist/src/modules/winner/winner.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.WinnerModule = void 0; var common_12 = require_common(); var admin_spin_controller_1 = require_admin_spin_controller(); var admin_winner_controller_1 = require_admin_winner_controller(); var winner_service_1 = require_winner_service(); var WinnerModule = class WinnerModule { static { __name(this, "WinnerModule"); } }; exports2.WinnerModule = WinnerModule; exports2.WinnerModule = WinnerModule = __decorate2([ (0, common_12.Module)({ controllers: [admin_winner_controller_1.AdminWinnerController, admin_spin_controller_1.AdminSpinController], providers: [winner_service_1.WinnerService], exports: [winner_service_1.WinnerService] }) ], WinnerModule); } }); // dist/src/prisma/prisma.module.js var require_prisma_module = __commonJS({ "dist/src/prisma/prisma.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.PrismaModule = void 0; var common_12 = require_common(); var prisma_service_12 = require_prisma_service(); var PrismaModule = class PrismaModule { static { __name(this, "PrismaModule"); } }; exports2.PrismaModule = PrismaModule; exports2.PrismaModule = PrismaModule = __decorate2([ (0, common_12.Global)(), (0, common_12.Module)({ providers: [prisma_service_12.PrismaService], exports: [prisma_service_12.PrismaService] }) ], PrismaModule); } }); // dist/src/app.module.js var require_app_module = __commonJS({ "dist/src/app.module.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AppModule = void 0; var bullmq_1 = require_dist6(); var common_12 = require_common(); var config_12 = require_config2(); var schedule_1 = require_schedule(); var throttler_1 = require_dist9(); var env_validation_1 = require_env_validation(); var admin_audit_module_1 = require_admin_audit_module(); var admin_auth_module_1 = require_admin_auth_module(); var auth_module_1 = require_auth_module(); var campaign_module_1 = require_campaign_module(); var chance_module_1 = require_chance_module(); var prize_module_1 = require_prize_module(); var report_module_1 = require_report_module(); var sms_module_1 = require_sms_module(); var spin_engine_module_1 = require_spin_engine_module(); var storage_module_1 = require_storage_module(); var user_module_1 = require_user_module(); var winner_module_1 = require_winner_module(); var prisma_module_1 = require_prisma_module(); var AppModule = class AppModule { static { __name(this, "AppModule"); } }; exports2.AppModule = AppModule; exports2.AppModule = AppModule = __decorate2([ (0, common_12.Module)({ imports: [ config_12.ConfigModule.forRoot({ isGlobal: true, validate: env_validation_1.validateEnv, envFilePath: ".env" }), schedule_1.ScheduleModule.forRoot(), throttler_1.ThrottlerModule.forRoot([ { name: "default", ttl: 6e4, limit: 60 } ]), bullmq_1.BullModule.forRootAsync({ imports: [config_12.ConfigModule], useFactory: /* @__PURE__ */ __name((configService) => ({ connection: { host: configService.get("REDIS_HOST", "localhost"), port: configService.get("REDIS_PORT", 6379), password: configService.get("REDIS_PASSWORD") || void 0 } }), "useFactory"), inject: [config_12.ConfigService] }), prisma_module_1.PrismaModule, auth_module_1.AuthModule, admin_auth_module_1.AdminAuthModule, storage_module_1.StorageModule, campaign_module_1.CampaignModule, prize_module_1.PrizeModule, chance_module_1.ChanceModule, user_module_1.UserModule, sms_module_1.SmsModule, spin_engine_module_1.SpinEngineModule, winner_module_1.WinnerModule, report_module_1.ReportModule, admin_audit_module_1.AdminAuditModule ] }) ], AppModule); } }); // dist/src/common/filters/all-exceptions.filter.js var require_all_exceptions_filter = __commonJS({ "dist/src/common/filters/all-exceptions.filter.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var AllExceptionsFilter_1; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.AllExceptionsFilter = void 0; var common_12 = require_common(); var client_1 = require("@prisma/client"); var AllExceptionsFilter = AllExceptionsFilter_1 = class AllExceptionsFilter { static { __name(this, "AllExceptionsFilter"); } constructor() { this.logger = new common_12.Logger(AllExceptionsFilter_1.name); } catch(exception, host) { const ctx = host.switchToHttp(); const response = ctx.getResponse(); let status = common_12.HttpStatus.INTERNAL_SERVER_ERROR; let message = "Internal server error"; let errorCode = "INTERNAL_ERROR"; if (exception instanceof common_12.HttpException) { status = exception.getStatus(); const res = exception.getResponse(); if (typeof res === "object" && res !== null) { const anyRes = res; message = anyRes.message || exception.message; errorCode = anyRes.error || anyRes.errorCode || this.getErrorCodeFromStatus(status); } else { message = exception.message; errorCode = this.getErrorCodeFromStatus(status); } } else if (exception instanceof client_1.Prisma.PrismaClientKnownRequestError) { if (exception.code === "P2002") { status = common_12.HttpStatus.CONFLICT; message = "A resource with this identifier already exists (duplicate entry)."; errorCode = "DUPLICATE_ENTRY"; } else if (exception.code === "P2025") { status = common_12.HttpStatus.NOT_FOUND; message = "Record to update or delete not found."; errorCode = "NOT_FOUND"; } else { status = common_12.HttpStatus.BAD_REQUEST; message = `Database query error: ${exception.code}`; errorCode = "DATABASE_ERROR"; } } else if (exception instanceof Error) { this.logger.error(exception.message, exception.stack); message = exception.message; } response.status(status).json({ success: false, statusCode: status, errorCode, message, timestamp: (/* @__PURE__ */ new Date()).toISOString() }); } getErrorCodeFromStatus(status) { switch (status) { case common_12.HttpStatus.BAD_REQUEST: return "BAD_REQUEST"; case common_12.HttpStatus.UNAUTHORIZED: return "UNAUTHORIZED"; case common_12.HttpStatus.FORBIDDEN: return "FORBIDDEN"; case common_12.HttpStatus.NOT_FOUND: return "NOT_FOUND"; case common_12.HttpStatus.CONFLICT: return "CONFLICT"; case common_12.HttpStatus.TOO_MANY_REQUESTS: return "TOO_MANY_REQUESTS"; default: return "INTERNAL_ERROR"; } } }; exports2.AllExceptionsFilter = AllExceptionsFilter; exports2.AllExceptionsFilter = AllExceptionsFilter = AllExceptionsFilter_1 = __decorate2([ (0, common_12.Catch)() ], AllExceptionsFilter); } }); // dist/src/common/interceptors/response.interceptor.js var require_response_interceptor = __commonJS({ "dist/src/common/interceptors/response.interceptor.js"(exports2) { "use strict"; var __decorate2 = exports2 && exports2.__decorate || function(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.ResponseInterceptor = void 0; var common_12 = require_common(); var operators_1 = require_operators(); var ResponseInterceptor = class ResponseInterceptor { static { __name(this, "ResponseInterceptor"); } intercept(context, next) { return next.handle().pipe((0, operators_1.map)((data) => { if (data && typeof data === "object" && ("success" in data || "data" in data)) { return data; } return { success: true, data }; })); } }; exports2.ResponseInterceptor = ResponseInterceptor; exports2.ResponseInterceptor = ResponseInterceptor = __decorate2([ (0, common_12.Injectable)() ], ResponseInterceptor); } }); // dist/src/main.js Object.defineProperty(exports, "__esModule", { value: true }); var common_1 = require_common(); var config_1 = require_config2(); var core_1 = require_core3(); var swagger_1 = require_swagger(); var helmet_1 = require_helmet(); var path_1 = require("path"); var app_module_1 = require_app_module(); var all_exceptions_filter_1 = require_all_exceptions_filter(); var response_interceptor_1 = require_response_interceptor(); var prisma_service_1 = require_prisma_service(); async function bootstrap() { const app = await core_1.NestFactory.create(app_module_1.AppModule); const configService = app.get(config_1.ConfigService); app.use((0, helmet_1.default)({ crossOriginResourcePolicy: { policy: "cross-origin" } })); const adminOrigin = configService.get("CORS_ADMIN_ORIGIN", "http://localhost:5173"); const clientOrigin = configService.get("CORS_CLIENT_ORIGIN", "http://localhost:5174"); app.enableCors({ origin: [adminOrigin, clientOrigin], credentials: true }); app.setGlobalPrefix("api"); const uploadRoot = configService.get("STORAGE_LOCAL_ROOT", "./uploads"); app.useStaticAssets((0, path_1.join)(process.cwd(), uploadRoot), { prefix: "/uploads/" }); app.useGlobalPipes(new common_1.ValidationPipe({ whitelist: true, forbidNonWhitelisted: false, transform: true, transformOptions: { enableImplicitConversion: true } })); app.useGlobalFilters(new all_exceptions_filter_1.AllExceptionsFilter()); app.useGlobalInterceptors(new response_interceptor_1.ResponseInterceptor()); const prismaService = app.get(prisma_service_1.PrismaService); await prismaService.enableShutdownHooks(app); const swaggerConfig = new swagger_1.DocumentBuilder().setTitle("Lucky Wheel API").setDescription("\u0645\u0633\u062A\u0646\u062F\u0627\u062A \u062C\u0627\u0645\u0639 \u0648\u0628\u200C\u0633\u0631\u0648\u06CC\u0633 \u0633\u0627\u0645\u0627\u0646\u0647 \u06AF\u0631\u062F\u0648\u0646\u0647 \u0634\u0627\u0646\u0633 \u0648 \u0642\u0631\u0639\u0647\u200C\u06A9\u0634\u06CC").setVersion("1.0").addBearerAuth({ type: "http", scheme: "bearer", bearerFormat: "JWT", in: "header" }, "UserAuth").addBearerAuth({ type: "http", scheme: "bearer", bearerFormat: "JWT", in: "header" }, "AdminAuth").build(); const document2 = swagger_1.SwaggerModule.createDocument(app, swaggerConfig); swagger_1.SwaggerModule.setup("api/docs", app, document2); const port = configService.get("PORT", 3e3); await app.listen(port, "0.0.0.0"); console.log(`Application is running on: http://0.0.0.0:${port}`); console.log(`Swagger documentation: http://0.0.0.0:${port}/api/docs`); } __name(bootstrap, "bootstrap"); bootstrap();