@palantir/pack.sdkgen.pack-versioned-template 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.txt +13 -0
- package/build/browser/index.js +1176 -0
- package/build/browser/index.js.map +1 -0
- package/build/browser/prompt-6ZJZATIW.js +947 -0
- package/build/browser/prompt-6ZJZATIW.js.map +1 -0
- package/build/cjs/index.cjs +1204 -0
- package/build/cjs/index.cjs.map +1 -0
- package/build/cjs/index.d.cts +39 -0
- package/build/cjs/prompt-BQYHWSYA.cjs +955 -0
- package/build/cjs/prompt-BQYHWSYA.cjs.map +1 -0
- package/build/esm/config.js +54 -0
- package/build/esm/hooks/afterGenerate.js +89 -0
- package/build/esm/index.js +17 -0
- package/build/types/config.d.ts +26 -0
- package/build/types/config.d.ts.map +1 -0
- package/build/types/hooks/afterGenerate.d.ts +13 -0
- package/build/types/hooks/afterGenerate.d.ts.map +1 -0
- package/build/types/index.d.ts +3 -0
- package/build/types/index.d.ts.map +1 -0
- package/package.json +72 -0
- package/template/README.md.ejs +76 -0
- package/template/_gitignore +7 -0
- package/template/package.json.ejs +33 -0
- package/template/src/index.ts +2 -0
- package/template/tsconfig.json +22 -0
- package/template.config.js +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/config.ts","../../../../../node_modules/.pnpm/consola@3.4.2/node_modules/consola/dist/core.mjs","../../../../../node_modules/.pnpm/consola@3.4.2/node_modules/consola/dist/shared/consola.DRwqZj3T.mjs","../../../../../node_modules/.pnpm/consola@3.4.2/node_modules/consola/dist/shared/consola.DXBYu-KD.mjs","../../../../../node_modules/.pnpm/consola@3.4.2/node_modules/consola/dist/index.mjs","../../src/hooks/afterGenerate.ts"],"names":["c","i","l","s","ansiRegex","stripAnsi","env","_","getColor","createConsola"],"mappings":"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AA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,QAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,MAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,KAAM,QAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,MAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,QAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,KAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,QAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,KAAK,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,QAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,KAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,QAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,MAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,KAAM,QAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,MAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,QAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,MAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,KAAM,IAAA,IAAU,CAAA,IAAK,IAAA,IAAU,CA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AK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,IAAK,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,KAAM,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,MAAM,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,IAAK,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,IAAK,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,KAAM,UAAW,CAAA,KAAM,MAAA,IAAW,CAAA,KAAM,MAAA,IAAW,CAAA,KAAM,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,IAAK,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,KAAM,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,KAAM,MAAA,IAAW,CAAA,KAAM,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,IAAK,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,KAAM,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,IAAK,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,IAAK,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,IAAK,UAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,KAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,MAAA,IAAW,CAAA,IAAK,UAAW,CA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","file":"index.js","sourcesContent":["/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport const config = {\n name: \"@palantir/pack.sdkgen.pack-versioned-template\",\n description: \"PACK SDK template for generating versioned types and Zod schemas from a versioned IR JSON file\",\n templateFiles: [\"**/*.ejs\"],\n staticFiles: [\"**/*\", \"!**/*.ejs\", \"_gitignore\"],\n prompts: [{\n type: \"input\",\n name: \"description\",\n message: \"SDK description:\",\n default: \"Generated versioned SDK from IR\"\n }, {\n type: \"input\",\n name: \"author\",\n message: \"Author:\",\n default: \"\"\n }, {\n type: \"number\",\n name: \"minVersion\",\n message: \"Minimum supported schema version (leave blank to track latest):\"\n }],\n hooks: {\n afterGenerate: \"./build/esm/hooks/afterGenerate.js\"\n },\n utils: [\"camelCase\", \"pascalCase\", \"kebabCase\", \"upperCase\", \"lowerCase\"]\n};","const LogLevels = {\n silent: Number.NEGATIVE_INFINITY,\n fatal: 0,\n error: 0,\n warn: 1,\n log: 2,\n info: 3,\n success: 3,\n fail: 3,\n ready: 3,\n start: 3,\n box: 3,\n debug: 4,\n trace: 5,\n verbose: Number.POSITIVE_INFINITY\n};\nconst LogTypes = {\n // Silent\n silent: {\n level: -1\n },\n // Level 0\n fatal: {\n level: LogLevels.fatal\n },\n error: {\n level: LogLevels.error\n },\n // Level 1\n warn: {\n level: LogLevels.warn\n },\n // Level 2\n log: {\n level: LogLevels.log\n },\n // Level 3\n info: {\n level: LogLevels.info\n },\n success: {\n level: LogLevels.success\n },\n fail: {\n level: LogLevels.fail\n },\n ready: {\n level: LogLevels.info\n },\n start: {\n level: LogLevels.info\n },\n box: {\n level: LogLevels.info\n },\n // Level 4\n debug: {\n level: LogLevels.debug\n },\n // Level 5\n trace: {\n level: LogLevels.trace\n },\n // Verbose\n verbose: {\n level: LogLevels.verbose\n }\n};\nfunction isPlainObject$1(value) {\n if (value === null || typeof value !== \"object\") {\n return false;\n }\n const prototype = Object.getPrototypeOf(value);\n if (prototype !== null && prototype !== Object.prototype && Object.getPrototypeOf(prototype) !== null) {\n return false;\n }\n if (Symbol.iterator in value) {\n return false;\n }\n if (Symbol.toStringTag in value) {\n return Object.prototype.toString.call(value) === \"[object Module]\";\n }\n return true;\n}\nfunction _defu(baseObject, defaults, namespace = \".\", merger) {\n if (!isPlainObject$1(defaults)) {\n return _defu(baseObject, {}, namespace, merger);\n }\n const object = Object.assign({}, defaults);\n for (const key in baseObject) {\n if (key === \"__proto__\" || key === \"constructor\") {\n continue;\n }\n const value = baseObject[key];\n if (value === null || value === void 0) {\n continue;\n }\n if (merger && merger(object, key, value, namespace)) {\n continue;\n }\n if (Array.isArray(value) && Array.isArray(object[key])) {\n object[key] = [...value, ...object[key]];\n } else if (isPlainObject$1(value) && isPlainObject$1(object[key])) {\n object[key] = _defu(value, object[key], (namespace ? `${namespace}.` : \"\") + key.toString(), merger);\n } else {\n object[key] = value;\n }\n }\n return object;\n}\nfunction createDefu(merger) {\n return (...arguments_) =>\n // eslint-disable-next-line unicorn/no-array-reduce\n arguments_.reduce((p, c) => _defu(p, c, \"\", merger), {});\n}\nconst defu = createDefu();\nfunction isPlainObject(obj) {\n return Object.prototype.toString.call(obj) === \"[object Object]\";\n}\nfunction isLogObj(arg) {\n if (!isPlainObject(arg)) {\n return false;\n }\n if (!arg.message && !arg.args) {\n return false;\n }\n if (arg.stack) {\n return false;\n }\n return true;\n}\nlet paused = false;\nconst queue = [];\nclass Consola {\n options;\n _lastLog;\n _mockFn;\n /**\n * Creates an instance of Consola with specified options or defaults.\n *\n * @param {Partial<ConsolaOptions>} [options={}] - Configuration options for the Consola instance.\n */\n constructor(options = {}) {\n const types = options.types || LogTypes;\n this.options = defu({\n ...options,\n defaults: {\n ...options.defaults\n },\n level: _normalizeLogLevel(options.level, types),\n reporters: [...(options.reporters || [])]\n }, {\n types: LogTypes,\n throttle: 1e3,\n throttleMin: 5,\n formatOptions: {\n date: true,\n colors: false,\n compact: true\n }\n });\n for (const type in types) {\n const defaults = {\n type,\n ...this.options.defaults,\n ...types[type]\n };\n this[type] = this._wrapLogFn(defaults);\n this[type].raw = this._wrapLogFn(defaults, true);\n }\n if (this.options.mockFn) {\n this.mockTypes();\n }\n this._lastLog = {};\n }\n /**\n * Gets the current log level of the Consola instance.\n *\n * @returns {number} The current log level.\n */\n get level() {\n return this.options.level;\n }\n /**\n * Sets the minimum log level that will be output by the instance.\n *\n * @param {number} level - The new log level to set.\n */\n set level(level) {\n this.options.level = _normalizeLogLevel(level, this.options.types, this.options.level);\n }\n /**\n * Displays a prompt to the user and returns the response.\n * Throw an error if `prompt` is not supported by the current configuration.\n *\n * @template T\n * @param {string} message - The message to display in the prompt.\n * @param {T} [opts] - Optional options for the prompt. See {@link PromptOptions}.\n * @returns {promise<T>} A promise that infer with the prompt options. See {@link PromptOptions}.\n */\n prompt(message, opts) {\n if (!this.options.prompt) {\n throw new Error(\"prompt is not supported!\");\n }\n return this.options.prompt(message, opts);\n }\n /**\n * Creates a new instance of Consola, inheriting options from the current instance, with possible overrides.\n *\n * @param {Partial<ConsolaOptions>} options - Optional overrides for the new instance. See {@link ConsolaOptions}.\n * @returns {ConsolaInstance} A new Consola instance. See {@link ConsolaInstance}.\n */\n create(options) {\n const instance = new Consola({\n ...this.options,\n ...options\n });\n if (this._mockFn) {\n instance.mockTypes(this._mockFn);\n }\n return instance;\n }\n /**\n * Creates a new Consola instance with the specified default log object properties.\n *\n * @param {InputLogObject} defaults - Default properties to include in any log from the new instance. See {@link InputLogObject}.\n * @returns {ConsolaInstance} A new Consola instance. See {@link ConsolaInstance}.\n */\n withDefaults(defaults) {\n return this.create({\n ...this.options,\n defaults: {\n ...this.options.defaults,\n ...defaults\n }\n });\n }\n /**\n * Creates a new Consola instance with a specified tag, which will be included in every log.\n *\n * @param {string} tag - The tag to include in each log of the new instance.\n * @returns {ConsolaInstance} A new Consola instance. See {@link ConsolaInstance}.\n */\n withTag(tag) {\n return this.withDefaults({\n tag: this.options.defaults.tag ? this.options.defaults.tag + \":\" + tag : tag\n });\n }\n /**\n * Adds a custom reporter to the Consola instance.\n * Reporters will be called for each log message, depending on their implementation and log level.\n *\n * @param {ConsolaReporter} reporter - The reporter to add. See {@link ConsolaReporter}.\n * @returns {Consola} The current Consola instance.\n */\n addReporter(reporter) {\n this.options.reporters.push(reporter);\n return this;\n }\n /**\n * Removes a custom reporter from the Consola instance.\n * If no reporter is specified, all reporters will be removed.\n *\n * @param {ConsolaReporter} reporter - The reporter to remove. See {@link ConsolaReporter}.\n * @returns {Consola} The current Consola instance.\n */\n removeReporter(reporter) {\n if (reporter) {\n const i = this.options.reporters.indexOf(reporter);\n if (i !== -1) {\n return this.options.reporters.splice(i, 1);\n }\n } else {\n this.options.reporters.splice(0);\n }\n return this;\n }\n /**\n * Replaces all reporters of the Consola instance with the specified array of reporters.\n *\n * @param {ConsolaReporter[]} reporters - The new reporters to set. See {@link ConsolaReporter}.\n * @returns {Consola} The current Consola instance.\n */\n setReporters(reporters) {\n this.options.reporters = Array.isArray(reporters) ? reporters : [reporters];\n return this;\n }\n wrapAll() {\n this.wrapConsole();\n this.wrapStd();\n }\n restoreAll() {\n this.restoreConsole();\n this.restoreStd();\n }\n /**\n * Overrides console methods with Consola logging methods for consistent logging.\n */\n wrapConsole() {\n for (const type in this.options.types) {\n if (!console[\"__\" + type]) {\n console[\"__\" + type] = console[type];\n }\n console[type] = this[type].raw;\n }\n }\n /**\n * Restores the original console methods, removing Consola overrides.\n */\n restoreConsole() {\n for (const type in this.options.types) {\n if (console[\"__\" + type]) {\n console[type] = console[\"__\" + type];\n delete console[\"__\" + type];\n }\n }\n }\n /**\n * Overrides standard output and error streams to redirect them through Consola.\n */\n wrapStd() {\n this._wrapStream(this.options.stdout, \"log\");\n this._wrapStream(this.options.stderr, \"log\");\n }\n _wrapStream(stream, type) {\n if (!stream) {\n return;\n }\n if (!stream.__write) {\n stream.__write = stream.write;\n }\n stream.write = data => {\n this[type].raw(String(data).trim());\n };\n }\n /**\n * Restores the original standard output and error streams, removing the Consola redirection.\n */\n restoreStd() {\n this._restoreStream(this.options.stdout);\n this._restoreStream(this.options.stderr);\n }\n _restoreStream(stream) {\n if (!stream) {\n return;\n }\n if (stream.__write) {\n stream.write = stream.__write;\n delete stream.__write;\n }\n }\n /**\n * Pauses logging, queues incoming logs until resumed.\n */\n pauseLogs() {\n paused = true;\n }\n /**\n * Resumes logging, processing any queued logs.\n */\n resumeLogs() {\n paused = false;\n const _queue = queue.splice(0);\n for (const item of _queue) {\n item[0]._logFn(item[1], item[2]);\n }\n }\n /**\n * Replaces logging methods with mocks if a mock function is provided.\n *\n * @param {ConsolaOptions[\"mockFn\"]} mockFn - The function to use for mocking logging methods. See {@link ConsolaOptions[\"mockFn\"]}.\n */\n mockTypes(mockFn) {\n const _mockFn = mockFn || this.options.mockFn;\n this._mockFn = _mockFn;\n if (typeof _mockFn !== \"function\") {\n return;\n }\n for (const type in this.options.types) {\n this[type] = _mockFn(type, this.options.types[type]) || this[type];\n this[type].raw = this[type];\n }\n }\n _wrapLogFn(defaults, isRaw) {\n return (...args) => {\n if (paused) {\n queue.push([this, defaults, args, isRaw]);\n return;\n }\n return this._logFn(defaults, args, isRaw);\n };\n }\n _logFn(defaults, args, isRaw) {\n if ((defaults.level || 0) > this.level) {\n return false;\n }\n const logObj = {\n date: /* @__PURE__ */new Date(),\n args: [],\n ...defaults,\n level: _normalizeLogLevel(defaults.level, this.options.types)\n };\n if (!isRaw && args.length === 1 && isLogObj(args[0])) {\n Object.assign(logObj, args[0]);\n } else {\n logObj.args = [...args];\n }\n if (logObj.message) {\n logObj.args.unshift(logObj.message);\n delete logObj.message;\n }\n if (logObj.additional) {\n if (!Array.isArray(logObj.additional)) {\n logObj.additional = logObj.additional.split(\"\\n\");\n }\n logObj.args.push(\"\\n\" + logObj.additional.join(\"\\n\"));\n delete logObj.additional;\n }\n logObj.type = typeof logObj.type === \"string\" ? logObj.type.toLowerCase() : \"log\";\n logObj.tag = typeof logObj.tag === \"string\" ? logObj.tag : \"\";\n const resolveLog = (newLog = false) => {\n const repeated = (this._lastLog.count || 0) - this.options.throttleMin;\n if (this._lastLog.object && repeated > 0) {\n const args2 = [...this._lastLog.object.args];\n if (repeated > 1) {\n args2.push(`(repeated ${repeated} times)`);\n }\n this._log({\n ...this._lastLog.object,\n args: args2\n });\n this._lastLog.count = 1;\n }\n if (newLog) {\n this._lastLog.object = logObj;\n this._log(logObj);\n }\n };\n clearTimeout(this._lastLog.timeout);\n const diffTime = this._lastLog.time && logObj.date ? logObj.date.getTime() - this._lastLog.time.getTime() : 0;\n this._lastLog.time = logObj.date;\n if (diffTime < this.options.throttle) {\n try {\n const serializedLog = JSON.stringify([logObj.type, logObj.tag, logObj.args]);\n const isSameLog = this._lastLog.serialized === serializedLog;\n this._lastLog.serialized = serializedLog;\n if (isSameLog) {\n this._lastLog.count = (this._lastLog.count || 0) + 1;\n if (this._lastLog.count > this.options.throttleMin) {\n this._lastLog.timeout = setTimeout(resolveLog, this.options.throttle);\n return;\n }\n }\n } catch {}\n }\n resolveLog(true);\n }\n _log(logObj) {\n for (const reporter of this.options.reporters) {\n reporter.log(logObj, {\n options: this.options\n });\n }\n }\n}\nfunction _normalizeLogLevel(input, types = {}, defaultLevel = 3) {\n if (input === void 0) {\n return defaultLevel;\n }\n if (typeof input === \"number\") {\n return input;\n }\n if (types[input] && types[input].level !== void 0) {\n return types[input].level;\n }\n return defaultLevel;\n}\nConsola.prototype.add = Consola.prototype.addReporter;\nConsola.prototype.remove = Consola.prototype.removeReporter;\nConsola.prototype.clear = Consola.prototype.removeReporter;\nConsola.prototype.withScope = Consola.prototype.withTag;\nConsola.prototype.mock = Consola.prototype.mockTypes;\nConsola.prototype.pause = Consola.prototype.pauseLogs;\nConsola.prototype.resume = Consola.prototype.resumeLogs;\nfunction createConsola(options = {}) {\n return new Consola(options);\n}\nexport { Consola, LogLevels, LogTypes, createConsola };","import { formatWithOptions } from 'node:util';\nimport { sep } from 'node:path';\nfunction parseStack(stack, message) {\n const cwd = process.cwd() + sep;\n const lines = stack.split(\"\\n\").splice(message.split(\"\\n\").length).map(l => l.trim().replace(\"file://\", \"\").replace(cwd, \"\"));\n return lines;\n}\nfunction writeStream(data, stream) {\n const write = stream.__write || stream.write;\n return write.call(stream, data);\n}\nconst bracket = x => x ? `[${x}]` : \"\";\nclass BasicReporter {\n formatStack(stack, message, opts) {\n const indent = \" \".repeat((opts?.errorLevel || 0) + 1);\n return indent + parseStack(stack, message).join(`\n${indent}`);\n }\n formatError(err, opts) {\n const message = err.message ?? formatWithOptions(opts, err);\n const stack = err.stack ? this.formatStack(err.stack, message, opts) : \"\";\n const level = opts?.errorLevel || 0;\n const causedPrefix = level > 0 ? `${\" \".repeat(level)}[cause]: ` : \"\";\n const causedError = err.cause ? \"\\n\\n\" + this.formatError(err.cause, {\n ...opts,\n errorLevel: level + 1\n }) : \"\";\n return causedPrefix + message + \"\\n\" + stack + causedError;\n }\n formatArgs(args, opts) {\n const _args = args.map(arg => {\n if (arg && typeof arg.stack === \"string\") {\n return this.formatError(arg, opts);\n }\n return arg;\n });\n return formatWithOptions(opts, ..._args);\n }\n formatDate(date, opts) {\n return opts.date ? date.toLocaleTimeString() : \"\";\n }\n filterAndJoin(arr) {\n return arr.filter(Boolean).join(\" \");\n }\n formatLogObj(logObj, opts) {\n const message = this.formatArgs(logObj.args, opts);\n if (logObj.type === \"box\") {\n return \"\\n\" + [bracket(logObj.tag), logObj.title && logObj.title, ...message.split(\"\\n\")].filter(Boolean).map(l => \" > \" + l).join(\"\\n\") + \"\\n\";\n }\n return this.filterAndJoin([bracket(logObj.type), bracket(logObj.tag), message]);\n }\n log(logObj, ctx) {\n const line = this.formatLogObj(logObj, {\n columns: ctx.options.stdout.columns || 0,\n ...ctx.options.formatOptions\n });\n return writeStream(line + \"\\n\", logObj.level < 2 ? ctx.options.stderr || process.stderr : ctx.options.stdout || process.stdout);\n }\n}\nexport { BasicReporter as B, parseStack as p };","import * as tty from 'node:tty';\nconst {\n env = {},\n argv = [],\n platform = \"\"\n} = typeof process === \"undefined\" ? {} : process;\nconst isDisabled = \"NO_COLOR\" in env || argv.includes(\"--no-color\");\nconst isForced = \"FORCE_COLOR\" in env || argv.includes(\"--color\");\nconst isWindows = platform === \"win32\";\nconst isDumbTerminal = env.TERM === \"dumb\";\nconst isCompatibleTerminal = tty && tty.isatty && tty.isatty(1) && env.TERM && !isDumbTerminal;\nconst isCI = \"CI\" in env && (\"GITHUB_ACTIONS\" in env || \"GITLAB_CI\" in env || \"CIRCLECI\" in env);\nconst isColorSupported = !isDisabled && (isForced || isWindows && !isDumbTerminal || isCompatibleTerminal || isCI);\nfunction replaceClose(index, string, close, replace, head = string.slice(0, Math.max(0, index)) + replace, tail = string.slice(Math.max(0, index + close.length)), next = tail.indexOf(close)) {\n return head + (next < 0 ? tail : replaceClose(next, tail, close, replace));\n}\nfunction clearBleed(index, string, open, close, replace) {\n return index < 0 ? open + string + close : open + replaceClose(index, string, close, replace) + close;\n}\nfunction filterEmpty(open, close, replace = open, at = open.length + 1) {\n return string => string || !(string === \"\" || string === void 0) ? clearBleed((\"\" + string).indexOf(close, at), string, open, close, replace) : \"\";\n}\nfunction init(open, close, replace) {\n return filterEmpty(`\\x1B[${open}m`, `\\x1B[${close}m`, replace);\n}\nconst colorDefs = {\n reset: init(0, 0),\n bold: init(1, 22, \"\\x1B[22m\\x1B[1m\"),\n dim: init(2, 22, \"\\x1B[22m\\x1B[2m\"),\n italic: init(3, 23),\n underline: init(4, 24),\n inverse: init(7, 27),\n hidden: init(8, 28),\n strikethrough: init(9, 29),\n black: init(30, 39),\n red: init(31, 39),\n green: init(32, 39),\n yellow: init(33, 39),\n blue: init(34, 39),\n magenta: init(35, 39),\n cyan: init(36, 39),\n white: init(37, 39),\n gray: init(90, 39),\n bgBlack: init(40, 49),\n bgRed: init(41, 49),\n bgGreen: init(42, 49),\n bgYellow: init(43, 49),\n bgBlue: init(44, 49),\n bgMagenta: init(45, 49),\n bgCyan: init(46, 49),\n bgWhite: init(47, 49),\n blackBright: init(90, 39),\n redBright: init(91, 39),\n greenBright: init(92, 39),\n yellowBright: init(93, 39),\n blueBright: init(94, 39),\n magentaBright: init(95, 39),\n cyanBright: init(96, 39),\n whiteBright: init(97, 39),\n bgBlackBright: init(100, 49),\n bgRedBright: init(101, 49),\n bgGreenBright: init(102, 49),\n bgYellowBright: init(103, 49),\n bgBlueBright: init(104, 49),\n bgMagentaBright: init(105, 49),\n bgCyanBright: init(106, 49),\n bgWhiteBright: init(107, 49)\n};\nfunction createColors(useColor = isColorSupported) {\n return useColor ? colorDefs : Object.fromEntries(Object.keys(colorDefs).map(key => [key, String]));\n}\nconst colors = createColors();\nfunction getColor(color, fallback = \"reset\") {\n return colors[color] || colors[fallback];\n}\nfunction colorize(color, text) {\n return getColor(color)(text);\n}\nconst ansiRegex = [String.raw`[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)`, String.raw`(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))`].join(\"|\");\nfunction stripAnsi(text) {\n return text.replace(new RegExp(ansiRegex, \"g\"), \"\");\n}\nfunction centerAlign(str, len, space = \" \") {\n const free = len - str.length;\n if (free <= 0) {\n return str;\n }\n const freeLeft = Math.floor(free / 2);\n let _str = \"\";\n for (let i = 0; i < len; i++) {\n _str += i < freeLeft || i >= freeLeft + str.length ? space : str[i - freeLeft];\n }\n return _str;\n}\nfunction rightAlign(str, len, space = \" \") {\n const free = len - str.length;\n if (free <= 0) {\n return str;\n }\n let _str = \"\";\n for (let i = 0; i < len; i++) {\n _str += i < free ? space : str[i - free];\n }\n return _str;\n}\nfunction leftAlign(str, len, space = \" \") {\n let _str = \"\";\n for (let i = 0; i < len; i++) {\n _str += i < str.length ? str[i] : space;\n }\n return _str;\n}\nfunction align(alignment, str, len, space = \" \") {\n switch (alignment) {\n case \"left\":\n {\n return leftAlign(str, len, space);\n }\n case \"right\":\n {\n return rightAlign(str, len, space);\n }\n case \"center\":\n {\n return centerAlign(str, len, space);\n }\n default:\n {\n return str;\n }\n }\n}\nconst boxStylePresets = {\n solid: {\n tl: \"\\u250C\",\n tr: \"\\u2510\",\n bl: \"\\u2514\",\n br: \"\\u2518\",\n h: \"\\u2500\",\n v: \"\\u2502\"\n },\n double: {\n tl: \"\\u2554\",\n tr: \"\\u2557\",\n bl: \"\\u255A\",\n br: \"\\u255D\",\n h: \"\\u2550\",\n v: \"\\u2551\"\n },\n doubleSingle: {\n tl: \"\\u2553\",\n tr: \"\\u2556\",\n bl: \"\\u2559\",\n br: \"\\u255C\",\n h: \"\\u2500\",\n v: \"\\u2551\"\n },\n doubleSingleRounded: {\n tl: \"\\u256D\",\n tr: \"\\u256E\",\n bl: \"\\u2570\",\n br: \"\\u256F\",\n h: \"\\u2500\",\n v: \"\\u2551\"\n },\n singleThick: {\n tl: \"\\u250F\",\n tr: \"\\u2513\",\n bl: \"\\u2517\",\n br: \"\\u251B\",\n h: \"\\u2501\",\n v: \"\\u2503\"\n },\n singleDouble: {\n tl: \"\\u2552\",\n tr: \"\\u2555\",\n bl: \"\\u2558\",\n br: \"\\u255B\",\n h: \"\\u2550\",\n v: \"\\u2502\"\n },\n singleDoubleRounded: {\n tl: \"\\u256D\",\n tr: \"\\u256E\",\n bl: \"\\u2570\",\n br: \"\\u256F\",\n h: \"\\u2550\",\n v: \"\\u2502\"\n },\n rounded: {\n tl: \"\\u256D\",\n tr: \"\\u256E\",\n bl: \"\\u2570\",\n br: \"\\u256F\",\n h: \"\\u2500\",\n v: \"\\u2502\"\n }\n};\nconst defaultStyle = {\n borderColor: \"white\",\n borderStyle: \"rounded\",\n valign: \"center\",\n padding: 2,\n marginLeft: 1,\n marginTop: 1,\n marginBottom: 1\n};\nfunction box(text, _opts = {}) {\n const opts = {\n ..._opts,\n style: {\n ...defaultStyle,\n ..._opts.style\n }\n };\n const textLines = text.split(\"\\n\");\n const boxLines = [];\n const _color = getColor(opts.style.borderColor);\n const borderStyle = {\n ...(typeof opts.style.borderStyle === \"string\" ? boxStylePresets[opts.style.borderStyle] || boxStylePresets.solid : opts.style.borderStyle)\n };\n if (_color) {\n for (const key in borderStyle) {\n borderStyle[key] = _color(borderStyle[key]);\n }\n }\n const paddingOffset = opts.style.padding % 2 === 0 ? opts.style.padding : opts.style.padding + 1;\n const height = textLines.length + paddingOffset;\n const width = Math.max(...textLines.map(line => stripAnsi(line).length), opts.title ? stripAnsi(opts.title).length : 0) + paddingOffset;\n const widthOffset = width + paddingOffset;\n const leftSpace = opts.style.marginLeft > 0 ? \" \".repeat(opts.style.marginLeft) : \"\";\n if (opts.style.marginTop > 0) {\n boxLines.push(\"\".repeat(opts.style.marginTop));\n }\n if (opts.title) {\n const title = _color ? _color(opts.title) : opts.title;\n const left = borderStyle.h.repeat(Math.floor((width - stripAnsi(opts.title).length) / 2));\n const right = borderStyle.h.repeat(width - stripAnsi(opts.title).length - stripAnsi(left).length + paddingOffset);\n boxLines.push(`${leftSpace}${borderStyle.tl}${left}${title}${right}${borderStyle.tr}`);\n } else {\n boxLines.push(`${leftSpace}${borderStyle.tl}${borderStyle.h.repeat(widthOffset)}${borderStyle.tr}`);\n }\n const valignOffset = opts.style.valign === \"center\" ? Math.floor((height - textLines.length) / 2) : opts.style.valign === \"top\" ? height - textLines.length - paddingOffset : height - textLines.length;\n for (let i = 0; i < height; i++) {\n if (i < valignOffset || i >= valignOffset + textLines.length) {\n boxLines.push(`${leftSpace}${borderStyle.v}${\" \".repeat(widthOffset)}${borderStyle.v}`);\n } else {\n const line = textLines[i - valignOffset];\n const left = \" \".repeat(paddingOffset);\n const right = \" \".repeat(width - stripAnsi(line).length);\n boxLines.push(`${leftSpace}${borderStyle.v}${left}${line}${right}${borderStyle.v}`);\n }\n }\n boxLines.push(`${leftSpace}${borderStyle.bl}${borderStyle.h.repeat(widthOffset)}${borderStyle.br}`);\n if (opts.style.marginBottom > 0) {\n boxLines.push(\"\".repeat(opts.style.marginBottom));\n }\n return boxLines.join(\"\\n\");\n}\nexport { centerAlign as a, align as b, colorize as c, box as d, colors as e, getColor as g, leftAlign as l, rightAlign as r, stripAnsi as s };","import { createConsola as createConsola$1, LogLevels } from './core.mjs';\nexport { Consola, LogTypes } from './core.mjs';\nimport { B as BasicReporter, p as parseStack } from './shared/consola.DRwqZj3T.mjs';\nimport g$1 from 'node:process';\nimport { e as colors, d as box, s as stripAnsi$1 } from './shared/consola.DXBYu-KD.mjs';\nimport 'node:util';\nimport 'node:path';\nimport 'node:tty';\nconst r = Object.create(null),\n i = e => globalThis.process?.env || import.meta.env || globalThis.Deno?.env.toObject() || globalThis.__env__ || (e ? r : globalThis),\n o = new Proxy(r, {\n get(e, s) {\n return i()[s] ?? r[s];\n },\n has(e, s) {\n const E = i();\n return s in E || s in r;\n },\n set(e, s, E) {\n const B = i(true);\n return B[s] = E, true;\n },\n deleteProperty(e, s) {\n if (!s) return false;\n const E = i(true);\n return delete E[s], true;\n },\n ownKeys() {\n const e = i(true);\n return Object.keys(e);\n }\n }),\n t = typeof process < \"u\" && process.env && process.env.NODE_ENV || \"\",\n f = [[\"APPVEYOR\"], [\"AWS_AMPLIFY\", \"AWS_APP_ID\", {\n ci: true\n }], [\"AZURE_PIPELINES\", \"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI\"], [\"AZURE_STATIC\", \"INPUT_AZURE_STATIC_WEB_APPS_API_TOKEN\"], [\"APPCIRCLE\", \"AC_APPCIRCLE\"], [\"BAMBOO\", \"bamboo_planKey\"], [\"BITBUCKET\", \"BITBUCKET_COMMIT\"], [\"BITRISE\", \"BITRISE_IO\"], [\"BUDDY\", \"BUDDY_WORKSPACE_ID\"], [\"BUILDKITE\"], [\"CIRCLE\", \"CIRCLECI\"], [\"CIRRUS\", \"CIRRUS_CI\"], [\"CLOUDFLARE_PAGES\", \"CF_PAGES\", {\n ci: true\n }], [\"CODEBUILD\", \"CODEBUILD_BUILD_ARN\"], [\"CODEFRESH\", \"CF_BUILD_ID\"], [\"DRONE\"], [\"DRONE\", \"DRONE_BUILD_EVENT\"], [\"DSARI\"], [\"GITHUB_ACTIONS\"], [\"GITLAB\", \"GITLAB_CI\"], [\"GITLAB\", \"CI_MERGE_REQUEST_ID\"], [\"GOCD\", \"GO_PIPELINE_LABEL\"], [\"LAYERCI\"], [\"HUDSON\", \"HUDSON_URL\"], [\"JENKINS\", \"JENKINS_URL\"], [\"MAGNUM\"], [\"NETLIFY\"], [\"NETLIFY\", \"NETLIFY_LOCAL\", {\n ci: false\n }], [\"NEVERCODE\"], [\"RENDER\"], [\"SAIL\", \"SAILCI\"], [\"SEMAPHORE\"], [\"SCREWDRIVER\"], [\"SHIPPABLE\"], [\"SOLANO\", \"TDDIUM\"], [\"STRIDER\"], [\"TEAMCITY\", \"TEAMCITY_VERSION\"], [\"TRAVIS\"], [\"VERCEL\", \"NOW_BUILDER\"], [\"VERCEL\", \"VERCEL\", {\n ci: false\n }], [\"VERCEL\", \"VERCEL_ENV\", {\n ci: false\n }], [\"APPCENTER\", \"APPCENTER_BUILD_ID\"], [\"CODESANDBOX\", \"CODESANDBOX_SSE\", {\n ci: false\n }], [\"CODESANDBOX\", \"CODESANDBOX_HOST\", {\n ci: false\n }], [\"STACKBLITZ\"], [\"STORMKIT\"], [\"CLEAVR\"], [\"ZEABUR\"], [\"CODESPHERE\", \"CODESPHERE_APP_ID\", {\n ci: true\n }], [\"RAILWAY\", \"RAILWAY_PROJECT_ID\"], [\"RAILWAY\", \"RAILWAY_SERVICE_ID\"], [\"DENO-DEPLOY\", \"DENO_DEPLOYMENT_ID\"], [\"FIREBASE_APP_HOSTING\", \"FIREBASE_APP_HOSTING\", {\n ci: true\n }]];\nfunction b() {\n if (globalThis.process?.env) for (const e of f) {\n const s = e[1] || e[0];\n if (globalThis.process?.env[s]) return {\n name: e[0].toLowerCase(),\n ...e[2]\n };\n }\n return globalThis.process?.env?.SHELL === \"/bin/jsh\" && globalThis.process?.versions?.webcontainer ? {\n name: \"stackblitz\",\n ci: false\n } : {\n name: \"\",\n ci: false\n };\n}\nconst l = b();\nl.name;\nfunction n(e) {\n return e ? e !== \"false\" : false;\n}\nconst I = globalThis.process?.platform || \"\",\n T = n(o.CI) || l.ci !== false,\n a = n(globalThis.process?.stdout && globalThis.process?.stdout.isTTY),\n g = n(o.DEBUG),\n R = t === \"test\" || n(o.TEST);\nn(o.MINIMAL) || T || R || !a;\nconst A = /^win/i.test(I);\n!n(o.NO_COLOR) && (n(o.FORCE_COLOR) || (a || A) && o.TERM !== \"dumb\" || T);\nconst C = (globalThis.process?.versions?.node || \"\").replace(/^v/, \"\") || null;\nNumber(C?.split(\".\")[0]) || null;\nconst y = globalThis.process || Object.create(null),\n _ = {\n versions: {}\n };\nnew Proxy(y, {\n get(e, s) {\n if (s === \"env\") return o;\n if (s in e) return e[s];\n if (s in _) return _[s];\n }\n});\nconst c = globalThis.process?.release?.name === \"node\",\n O = !!globalThis.Bun || !!globalThis.process?.versions?.bun,\n D = !!globalThis.Deno,\n L = !!globalThis.fastly,\n S = !!globalThis.Netlify,\n u = !!globalThis.EdgeRuntime,\n N = globalThis.navigator?.userAgent === \"Cloudflare-Workers\",\n F = [[S, \"netlify\"], [u, \"edge-light\"], [N, \"workerd\"], [L, \"fastly\"], [D, \"deno\"], [O, \"bun\"], [c, \"node\"]];\nfunction G() {\n const e = F.find(s => s[0]);\n if (e) return {\n name: e[1]\n };\n}\nconst P = G();\nP?.name || \"\";\nfunction ansiRegex({\n onlyFirst = false\n} = {}) {\n // Valid string terminator sequences are BEL, ESC\\, and 0x9c\n const ST = '(?:\\\\u0007|\\\\u001B\\\\u005C|\\\\u009C)';\n const pattern = [`[\\\\u001B\\\\u009B][[\\\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]+)*|[a-zA-Z\\\\d]+(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]*)*)?${ST})`, '(?:(?:\\\\d{1,4}(?:;\\\\d{0,4})*)?[\\\\dA-PR-TZcf-nq-uy=><~]))'].join('|');\n return new RegExp(pattern, onlyFirst ? undefined : 'g');\n}\nconst regex = ansiRegex();\nfunction stripAnsi(string) {\n if (typeof string !== 'string') {\n throw new TypeError(`Expected a \\`string\\`, got \\`${typeof string}\\``);\n }\n\n // Even though the regex is global, we don't need to reset the `.lastIndex`\n // because unlike `.exec()` and `.test()`, `.replace()` does it automatically\n // and doing it manually has a performance penalty.\n return string.replace(regex, '');\n}\n\n// Generated code.\n\nfunction isAmbiguous(x) {\n return x === 0xA1 || x === 0xA4 || x === 0xA7 || x === 0xA8 || x === 0xAA || x === 0xAD || x === 0xAE || x >= 0xB0 && x <= 0xB4 || x >= 0xB6 && x <= 0xBA || x >= 0xBC && x <= 0xBF || x === 0xC6 || x === 0xD0 || x === 0xD7 || x === 0xD8 || x >= 0xDE && x <= 0xE1 || x === 0xE6 || x >= 0xE8 && x <= 0xEA || x === 0xEC || x === 0xED || x === 0xF0 || x === 0xF2 || x === 0xF3 || x >= 0xF7 && x <= 0xFA || x === 0xFC || x === 0xFE || x === 0x101 || x === 0x111 || x === 0x113 || x === 0x11B || x === 0x126 || x === 0x127 || x === 0x12B || x >= 0x131 && x <= 0x133 || x === 0x138 || x >= 0x13F && x <= 0x142 || x === 0x144 || x >= 0x148 && x <= 0x14B || x === 0x14D || x === 0x152 || x === 0x153 || x === 0x166 || x === 0x167 || x === 0x16B || x === 0x1CE || x === 0x1D0 || x === 0x1D2 || x === 0x1D4 || x === 0x1D6 || x === 0x1D8 || x === 0x1DA || x === 0x1DC || x === 0x251 || x === 0x261 || x === 0x2C4 || x === 0x2C7 || x >= 0x2C9 && x <= 0x2CB || x === 0x2CD || x === 0x2D0 || x >= 0x2D8 && x <= 0x2DB || x === 0x2DD || x === 0x2DF || x >= 0x300 && x <= 0x36F || x >= 0x391 && x <= 0x3A1 || x >= 0x3A3 && x <= 0x3A9 || x >= 0x3B1 && x <= 0x3C1 || x >= 0x3C3 && x <= 0x3C9 || x === 0x401 || x >= 0x410 && x <= 0x44F || x === 0x451 || x === 0x2010 || x >= 0x2013 && x <= 0x2016 || x === 0x2018 || x === 0x2019 || x === 0x201C || x === 0x201D || x >= 0x2020 && x <= 0x2022 || x >= 0x2024 && x <= 0x2027 || x === 0x2030 || x === 0x2032 || x === 0x2033 || x === 0x2035 || x === 0x203B || x === 0x203E || x === 0x2074 || x === 0x207F || x >= 0x2081 && x <= 0x2084 || x === 0x20AC || x === 0x2103 || x === 0x2105 || x === 0x2109 || x === 0x2113 || x === 0x2116 || x === 0x2121 || x === 0x2122 || x === 0x2126 || x === 0x212B || x === 0x2153 || x === 0x2154 || x >= 0x215B && x <= 0x215E || x >= 0x2160 && x <= 0x216B || x >= 0x2170 && x <= 0x2179 || x === 0x2189 || x >= 0x2190 && x <= 0x2199 || x === 0x21B8 || x === 0x21B9 || x === 0x21D2 || x === 0x21D4 || x === 0x21E7 || x === 0x2200 || x === 0x2202 || x === 0x2203 || x === 0x2207 || x === 0x2208 || x === 0x220B || x === 0x220F || x === 0x2211 || x === 0x2215 || x === 0x221A || x >= 0x221D && x <= 0x2220 || x === 0x2223 || x === 0x2225 || x >= 0x2227 && x <= 0x222C || x === 0x222E || x >= 0x2234 && x <= 0x2237 || x === 0x223C || x === 0x223D || x === 0x2248 || x === 0x224C || x === 0x2252 || x === 0x2260 || x === 0x2261 || x >= 0x2264 && x <= 0x2267 || x === 0x226A || x === 0x226B || x === 0x226E || x === 0x226F || x === 0x2282 || x === 0x2283 || x === 0x2286 || x === 0x2287 || x === 0x2295 || x === 0x2299 || x === 0x22A5 || x === 0x22BF || x === 0x2312 || x >= 0x2460 && x <= 0x24E9 || x >= 0x24EB && x <= 0x254B || x >= 0x2550 && x <= 0x2573 || x >= 0x2580 && x <= 0x258F || x >= 0x2592 && x <= 0x2595 || x === 0x25A0 || x === 0x25A1 || x >= 0x25A3 && x <= 0x25A9 || x === 0x25B2 || x === 0x25B3 || x === 0x25B6 || x === 0x25B7 || x === 0x25BC || x === 0x25BD || x === 0x25C0 || x === 0x25C1 || x >= 0x25C6 && x <= 0x25C8 || x === 0x25CB || x >= 0x25CE && x <= 0x25D1 || x >= 0x25E2 && x <= 0x25E5 || x === 0x25EF || x === 0x2605 || x === 0x2606 || x === 0x2609 || x === 0x260E || x === 0x260F || x === 0x261C || x === 0x261E || x === 0x2640 || x === 0x2642 || x === 0x2660 || x === 0x2661 || x >= 0x2663 && x <= 0x2665 || x >= 0x2667 && x <= 0x266A || x === 0x266C || x === 0x266D || x === 0x266F || x === 0x269E || x === 0x269F || x === 0x26BF || x >= 0x26C6 && x <= 0x26CD || x >= 0x26CF && x <= 0x26D3 || x >= 0x26D5 && x <= 0x26E1 || x === 0x26E3 || x === 0x26E8 || x === 0x26E9 || x >= 0x26EB && x <= 0x26F1 || x === 0x26F4 || x >= 0x26F6 && x <= 0x26F9 || x === 0x26FB || x === 0x26FC || x === 0x26FE || x === 0x26FF || x === 0x273D || x >= 0x2776 && x <= 0x277F || x >= 0x2B56 && x <= 0x2B59 || x >= 0x3248 && x <= 0x324F || x >= 0xE000 && x <= 0xF8FF || x >= 0xFE00 && x <= 0xFE0F || x === 0xFFFD || x >= 0x1F100 && x <= 0x1F10A || x >= 0x1F110 && x <= 0x1F12D || x >= 0x1F130 && x <= 0x1F169 || x >= 0x1F170 && x <= 0x1F18D || x === 0x1F18F || x === 0x1F190 || x >= 0x1F19B && x <= 0x1F1AC || x >= 0xE0100 && x <= 0xE01EF || x >= 0xF0000 && x <= 0xFFFFD || x >= 0x100000 && x <= 0x10FFFD;\n}\nfunction isFullWidth(x) {\n return x === 0x3000 || x >= 0xFF01 && x <= 0xFF60 || x >= 0xFFE0 && x <= 0xFFE6;\n}\nfunction isWide(x) {\n return x >= 0x1100 && x <= 0x115F || x === 0x231A || x === 0x231B || x === 0x2329 || x === 0x232A || x >= 0x23E9 && x <= 0x23EC || x === 0x23F0 || x === 0x23F3 || x === 0x25FD || x === 0x25FE || x === 0x2614 || x === 0x2615 || x >= 0x2630 && x <= 0x2637 || x >= 0x2648 && x <= 0x2653 || x === 0x267F || x >= 0x268A && x <= 0x268F || x === 0x2693 || x === 0x26A1 || x === 0x26AA || x === 0x26AB || x === 0x26BD || x === 0x26BE || x === 0x26C4 || x === 0x26C5 || x === 0x26CE || x === 0x26D4 || x === 0x26EA || x === 0x26F2 || x === 0x26F3 || x === 0x26F5 || x === 0x26FA || x === 0x26FD || x === 0x2705 || x === 0x270A || x === 0x270B || x === 0x2728 || x === 0x274C || x === 0x274E || x >= 0x2753 && x <= 0x2755 || x === 0x2757 || x >= 0x2795 && x <= 0x2797 || x === 0x27B0 || x === 0x27BF || x === 0x2B1B || x === 0x2B1C || x === 0x2B50 || x === 0x2B55 || x >= 0x2E80 && x <= 0x2E99 || x >= 0x2E9B && x <= 0x2EF3 || x >= 0x2F00 && x <= 0x2FD5 || x >= 0x2FF0 && x <= 0x2FFF || x >= 0x3001 && x <= 0x303E || x >= 0x3041 && x <= 0x3096 || x >= 0x3099 && x <= 0x30FF || x >= 0x3105 && x <= 0x312F || x >= 0x3131 && x <= 0x318E || x >= 0x3190 && x <= 0x31E5 || x >= 0x31EF && x <= 0x321E || x >= 0x3220 && x <= 0x3247 || x >= 0x3250 && x <= 0xA48C || x >= 0xA490 && x <= 0xA4C6 || x >= 0xA960 && x <= 0xA97C || x >= 0xAC00 && x <= 0xD7A3 || x >= 0xF900 && x <= 0xFAFF || x >= 0xFE10 && x <= 0xFE19 || x >= 0xFE30 && x <= 0xFE52 || x >= 0xFE54 && x <= 0xFE66 || x >= 0xFE68 && x <= 0xFE6B || x >= 0x16FE0 && x <= 0x16FE4 || x === 0x16FF0 || x === 0x16FF1 || x >= 0x17000 && x <= 0x187F7 || x >= 0x18800 && x <= 0x18CD5 || x >= 0x18CFF && x <= 0x18D08 || x >= 0x1AFF0 && x <= 0x1AFF3 || x >= 0x1AFF5 && x <= 0x1AFFB || x === 0x1AFFD || x === 0x1AFFE || x >= 0x1B000 && x <= 0x1B122 || x === 0x1B132 || x >= 0x1B150 && x <= 0x1B152 || x === 0x1B155 || x >= 0x1B164 && x <= 0x1B167 || x >= 0x1B170 && x <= 0x1B2FB || x >= 0x1D300 && x <= 0x1D356 || x >= 0x1D360 && x <= 0x1D376 || x === 0x1F004 || x === 0x1F0CF || x === 0x1F18E || x >= 0x1F191 && x <= 0x1F19A || x >= 0x1F200 && x <= 0x1F202 || x >= 0x1F210 && x <= 0x1F23B || x >= 0x1F240 && x <= 0x1F248 || x === 0x1F250 || x === 0x1F251 || x >= 0x1F260 && x <= 0x1F265 || x >= 0x1F300 && x <= 0x1F320 || x >= 0x1F32D && x <= 0x1F335 || x >= 0x1F337 && x <= 0x1F37C || x >= 0x1F37E && x <= 0x1F393 || x >= 0x1F3A0 && x <= 0x1F3CA || x >= 0x1F3CF && x <= 0x1F3D3 || x >= 0x1F3E0 && x <= 0x1F3F0 || x === 0x1F3F4 || x >= 0x1F3F8 && x <= 0x1F43E || x === 0x1F440 || x >= 0x1F442 && x <= 0x1F4FC || x >= 0x1F4FF && x <= 0x1F53D || x >= 0x1F54B && x <= 0x1F54E || x >= 0x1F550 && x <= 0x1F567 || x === 0x1F57A || x === 0x1F595 || x === 0x1F596 || x === 0x1F5A4 || x >= 0x1F5FB && x <= 0x1F64F || x >= 0x1F680 && x <= 0x1F6C5 || x === 0x1F6CC || x >= 0x1F6D0 && x <= 0x1F6D2 || x >= 0x1F6D5 && x <= 0x1F6D7 || x >= 0x1F6DC && x <= 0x1F6DF || x === 0x1F6EB || x === 0x1F6EC || x >= 0x1F6F4 && x <= 0x1F6FC || x >= 0x1F7E0 && x <= 0x1F7EB || x === 0x1F7F0 || x >= 0x1F90C && x <= 0x1F93A || x >= 0x1F93C && x <= 0x1F945 || x >= 0x1F947 && x <= 0x1F9FF || x >= 0x1FA70 && x <= 0x1FA7C || x >= 0x1FA80 && x <= 0x1FA89 || x >= 0x1FA8F && x <= 0x1FAC6 || x >= 0x1FACE && x <= 0x1FADC || x >= 0x1FADF && x <= 0x1FAE9 || x >= 0x1FAF0 && x <= 0x1FAF8 || x >= 0x20000 && x <= 0x2FFFD || x >= 0x30000 && x <= 0x3FFFD;\n}\nfunction validate(codePoint) {\n if (!Number.isSafeInteger(codePoint)) {\n throw new TypeError(`Expected a code point, got \\`${typeof codePoint}\\`.`);\n }\n}\nfunction eastAsianWidth(codePoint, {\n ambiguousAsWide = false\n} = {}) {\n validate(codePoint);\n if (isFullWidth(codePoint) || isWide(codePoint) || ambiguousAsWide && isAmbiguous(codePoint)) {\n return 2;\n }\n return 1;\n}\nconst emojiRegex = () => {\n // https://mths.be/emoji\n return /[#*0-9]\\uFE0F?\\u20E3|[\\xA9\\xAE\\u203C\\u2049\\u2122\\u2139\\u2194-\\u2199\\u21A9\\u21AA\\u231A\\u231B\\u2328\\u23CF\\u23ED-\\u23EF\\u23F1\\u23F2\\u23F8-\\u23FA\\u24C2\\u25AA\\u25AB\\u25B6\\u25C0\\u25FB\\u25FC\\u25FE\\u2600-\\u2604\\u260E\\u2611\\u2614\\u2615\\u2618\\u2620\\u2622\\u2623\\u2626\\u262A\\u262E\\u262F\\u2638-\\u263A\\u2640\\u2642\\u2648-\\u2653\\u265F\\u2660\\u2663\\u2665\\u2666\\u2668\\u267B\\u267E\\u267F\\u2692\\u2694-\\u2697\\u2699\\u269B\\u269C\\u26A0\\u26A7\\u26AA\\u26B0\\u26B1\\u26BD\\u26BE\\u26C4\\u26C8\\u26CF\\u26D1\\u26E9\\u26F0-\\u26F5\\u26F7\\u26F8\\u26FA\\u2702\\u2708\\u2709\\u270F\\u2712\\u2714\\u2716\\u271D\\u2721\\u2733\\u2734\\u2744\\u2747\\u2757\\u2763\\u27A1\\u2934\\u2935\\u2B05-\\u2B07\\u2B1B\\u2B1C\\u2B55\\u3030\\u303D\\u3297\\u3299]\\uFE0F?|[\\u261D\\u270C\\u270D](?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?|[\\u270A\\u270B](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\u23E9-\\u23EC\\u23F0\\u23F3\\u25FD\\u2693\\u26A1\\u26AB\\u26C5\\u26CE\\u26D4\\u26EA\\u26FD\\u2705\\u2728\\u274C\\u274E\\u2753-\\u2755\\u2795-\\u2797\\u27B0\\u27BF\\u2B50]|\\u26D3\\uFE0F?(?:\\u200D\\uD83D\\uDCA5)?|\\u26F9(?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|\\u2764\\uFE0F?(?:\\u200D(?:\\uD83D\\uDD25|\\uD83E\\uDE79))?|\\uD83C(?:[\\uDC04\\uDD70\\uDD71\\uDD7E\\uDD7F\\uDE02\\uDE37\\uDF21\\uDF24-\\uDF2C\\uDF36\\uDF7D\\uDF96\\uDF97\\uDF99-\\uDF9B\\uDF9E\\uDF9F\\uDFCD\\uDFCE\\uDFD4-\\uDFDF\\uDFF5\\uDFF7]\\uFE0F?|[\\uDF85\\uDFC2\\uDFC7](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDFC4\\uDFCA](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDFCB\\uDFCC](?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDCCF\\uDD8E\\uDD91-\\uDD9A\\uDE01\\uDE1A\\uDE2F\\uDE32-\\uDE36\\uDE38-\\uDE3A\\uDE50\\uDE51\\uDF00-\\uDF20\\uDF2D-\\uDF35\\uDF37-\\uDF43\\uDF45-\\uDF4A\\uDF4C-\\uDF7C\\uDF7E-\\uDF84\\uDF86-\\uDF93\\uDFA0-\\uDFC1\\uDFC5\\uDFC6\\uDFC8\\uDFC9\\uDFCF-\\uDFD3\\uDFE0-\\uDFF0\\uDFF8-\\uDFFF]|\\uDDE6\\uD83C[\\uDDE8-\\uDDEC\\uDDEE\\uDDF1\\uDDF2\\uDDF4\\uDDF6-\\uDDFA\\uDDFC\\uDDFD\\uDDFF]|\\uDDE7\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEF\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9\\uDDFB\\uDDFC\\uDDFE\\uDDFF]|\\uDDE8\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDEE\\uDDF0-\\uDDF7\\uDDFA-\\uDDFF]|\\uDDE9\\uD83C[\\uDDEA\\uDDEC\\uDDEF\\uDDF0\\uDDF2\\uDDF4\\uDDFF]|\\uDDEA\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDED\\uDDF7-\\uDDFA]|\\uDDEB\\uD83C[\\uDDEE-\\uDDF0\\uDDF2\\uDDF4\\uDDF7]|\\uDDEC\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEE\\uDDF1-\\uDDF3\\uDDF5-\\uDDFA\\uDDFC\\uDDFE]|\\uDDED\\uD83C[\\uDDF0\\uDDF2\\uDDF3\\uDDF7\\uDDF9\\uDDFA]|\\uDDEE\\uD83C[\\uDDE8-\\uDDEA\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9]|\\uDDEF\\uD83C[\\uDDEA\\uDDF2\\uDDF4\\uDDF5]|\\uDDF0\\uD83C[\\uDDEA\\uDDEC-\\uDDEE\\uDDF2\\uDDF3\\uDDF5\\uDDF7\\uDDFC\\uDDFE\\uDDFF]|\\uDDF1\\uD83C[\\uDDE6-\\uDDE8\\uDDEE\\uDDF0\\uDDF7-\\uDDFB\\uDDFE]|\\uDDF2\\uD83C[\\uDDE6\\uDDE8-\\uDDED\\uDDF0-\\uDDFF]|\\uDDF3\\uD83C[\\uDDE6\\uDDE8\\uDDEA-\\uDDEC\\uDDEE\\uDDF1\\uDDF4\\uDDF5\\uDDF7\\uDDFA\\uDDFF]|\\uDDF4\\uD83C\\uDDF2|\\uDDF5\\uD83C[\\uDDE6\\uDDEA-\\uDDED\\uDDF0-\\uDDF3\\uDDF7-\\uDDF9\\uDDFC\\uDDFE]|\\uDDF6\\uD83C\\uDDE6|\\uDDF7\\uD83C[\\uDDEA\\uDDF4\\uDDF8\\uDDFA\\uDDFC]|\\uDDF8\\uD83C[\\uDDE6-\\uDDEA\\uDDEC-\\uDDF4\\uDDF7-\\uDDF9\\uDDFB\\uDDFD-\\uDDFF]|\\uDDF9\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDED\\uDDEF-\\uDDF4\\uDDF7\\uDDF9\\uDDFB\\uDDFC\\uDDFF]|\\uDDFA\\uD83C[\\uDDE6\\uDDEC\\uDDF2\\uDDF3\\uDDF8\\uDDFE\\uDDFF]|\\uDDFB\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDEE\\uDDF3\\uDDFA]|\\uDDFC\\uD83C[\\uDDEB\\uDDF8]|\\uDDFD\\uD83C\\uDDF0|\\uDDFE\\uD83C[\\uDDEA\\uDDF9]|\\uDDFF\\uD83C[\\uDDE6\\uDDF2\\uDDFC]|\\uDF44(?:\\u200D\\uD83D\\uDFEB)?|\\uDF4B(?:\\u200D\\uD83D\\uDFE9)?|\\uDFC3(?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D(?:[\\u2640\\u2642]\\uFE0F?(?:\\u200D\\u27A1\\uFE0F?)?|\\u27A1\\uFE0F?))?|\\uDFF3\\uFE0F?(?:\\u200D(?:\\u26A7\\uFE0F?|\\uD83C\\uDF08))?|\\uDFF4(?:\\u200D\\u2620\\uFE0F?|\\uDB40\\uDC67\\uDB40\\uDC62\\uDB40(?:\\uDC65\\uDB40\\uDC6E\\uDB40\\uDC67|\\uDC73\\uDB40\\uDC63\\uDB40\\uDC74|\\uDC77\\uDB40\\uDC6C\\uDB40\\uDC73)\\uDB40\\uDC7F)?)|\\uD83D(?:[\\uDC3F\\uDCFD\\uDD49\\uDD4A\\uDD6F\\uDD70\\uDD73\\uDD76-\\uDD79\\uDD87\\uDD8A-\\uDD8D\\uDDA5\\uDDA8\\uDDB1\\uDDB2\\uDDBC\\uDDC2-\\uDDC4\\uDDD1-\\uDDD3\\uDDDC-\\uDDDE\\uDDE1\\uDDE3\\uDDE8\\uDDEF\\uDDF3\\uDDFA\\uDECB\\uDECD-\\uDECF\\uDEE0-\\uDEE5\\uDEE9\\uDEF0\\uDEF3]\\uFE0F?|[\\uDC42\\uDC43\\uDC46-\\uDC50\\uDC66\\uDC67\\uDC6B-\\uDC6D\\uDC72\\uDC74-\\uDC76\\uDC78\\uDC7C\\uDC83\\uDC85\\uDC8F\\uDC91\\uDCAA\\uDD7A\\uDD95\\uDD96\\uDE4C\\uDE4F\\uDEC0\\uDECC](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDC6E\\uDC70\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4\\uDEB5](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDD74\\uDD90](?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?|[\\uDC00-\\uDC07\\uDC09-\\uDC14\\uDC16-\\uDC25\\uDC27-\\uDC3A\\uDC3C-\\uDC3E\\uDC40\\uDC44\\uDC45\\uDC51-\\uDC65\\uDC6A\\uDC79-\\uDC7B\\uDC7D-\\uDC80\\uDC84\\uDC88-\\uDC8E\\uDC90\\uDC92-\\uDCA9\\uDCAB-\\uDCFC\\uDCFF-\\uDD3D\\uDD4B-\\uDD4E\\uDD50-\\uDD67\\uDDA4\\uDDFB-\\uDE2D\\uDE2F-\\uDE34\\uDE37-\\uDE41\\uDE43\\uDE44\\uDE48-\\uDE4A\\uDE80-\\uDEA2\\uDEA4-\\uDEB3\\uDEB7-\\uDEBF\\uDEC1-\\uDEC5\\uDED0-\\uDED2\\uDED5-\\uDED7\\uDEDC-\\uDEDF\\uDEEB\\uDEEC\\uDEF4-\\uDEFC\\uDFE0-\\uDFEB\\uDFF0]|\\uDC08(?:\\u200D\\u2B1B)?|\\uDC15(?:\\u200D\\uD83E\\uDDBA)?|\\uDC26(?:\\u200D(?:\\u2B1B|\\uD83D\\uDD25))?|\\uDC3B(?:\\u200D\\u2744\\uFE0F?)?|\\uDC41\\uFE0F?(?:\\u200D\\uD83D\\uDDE8\\uFE0F?)?|\\uDC68(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDC68\\uDC69]\\u200D\\uD83D(?:\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?)|[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?)|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]))|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFC-\\uDFFF])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB-\\uDFFE])))?))?|\\uDC69(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?[\\uDC68\\uDC69]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?|\\uDC69\\u200D\\uD83D(?:\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?))|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]))|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFC-\\uDFFF])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB-\\uDFFE])))?))?|\\uDC6F(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|\\uDD75(?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|\\uDE2E(?:\\u200D\\uD83D\\uDCA8)?|\\uDE35(?:\\u200D\\uD83D\\uDCAB)?|\\uDE36(?:\\u200D\\uD83C\\uDF2B\\uFE0F?)?|\\uDE42(?:\\u200D[\\u2194\\u2195]\\uFE0F?)?|\\uDEB6(?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D(?:[\\u2640\\u2642]\\uFE0F?(?:\\u200D\\u27A1\\uFE0F?)?|\\u27A1\\uFE0F?))?)|\\uD83E(?:[\\uDD0C\\uDD0F\\uDD18-\\uDD1F\\uDD30-\\uDD34\\uDD36\\uDD77\\uDDB5\\uDDB6\\uDDBB\\uDDD2\\uDDD3\\uDDD5\\uDEC3-\\uDEC5\\uDEF0\\uDEF2-\\uDEF8](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3D\\uDD3E\\uDDB8\\uDDB9\\uDDCD\\uDDCF\\uDDD4\\uDDD6-\\uDDDD](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDDDE\\uDDDF](?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDD0D\\uDD0E\\uDD10-\\uDD17\\uDD20-\\uDD25\\uDD27-\\uDD2F\\uDD3A\\uDD3F-\\uDD45\\uDD47-\\uDD76\\uDD78-\\uDDB4\\uDDB7\\uDDBA\\uDDBC-\\uDDCC\\uDDD0\\uDDE0-\\uDDFF\\uDE70-\\uDE7C\\uDE80-\\uDE89\\uDE8F-\\uDEC2\\uDEC6\\uDECE-\\uDEDC\\uDEDF-\\uDEE9]|\\uDD3C(?:\\u200D[\\u2640\\u2642]\\uFE0F?|\\uD83C[\\uDFFB-\\uDFFF])?|\\uDDCE(?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D(?:[\\u2640\\u2642]\\uFE0F?(?:\\u200D\\u27A1\\uFE0F?)?|\\u27A1\\uFE0F?))?|\\uDDD1(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1|\\uDDD1\\u200D\\uD83E\\uDDD2(?:\\u200D\\uD83E\\uDDD2)?|\\uDDD2(?:\\u200D\\uD83E\\uDDD2)?))|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFC-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFD-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFD\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFE]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?))?|\\uDEF1(?:\\uD83C(?:\\uDFFB(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFC-\\uDFFF])?|\\uDFFC(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])?|\\uDFFD(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])?|\\uDFFE(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])?|\\uDFFF(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB-\\uDFFE])?))?)/g;\n};\nconst segmenter = globalThis.Intl?.Segmenter ? new Intl.Segmenter() : {\n segment: str => str.split('')\n};\nconst defaultIgnorableCodePointRegex = /^\\p{Default_Ignorable_Code_Point}$/u;\nfunction stringWidth$1(string, options = {}) {\n if (typeof string !== 'string' || string.length === 0) {\n return 0;\n }\n const {\n ambiguousIsNarrow = true,\n countAnsiEscapeCodes = false\n } = options;\n if (!countAnsiEscapeCodes) {\n string = stripAnsi(string);\n }\n if (string.length === 0) {\n return 0;\n }\n let width = 0;\n const eastAsianWidthOptions = {\n ambiguousAsWide: !ambiguousIsNarrow\n };\n for (const {\n segment: character\n } of segmenter.segment(string)) {\n const codePoint = character.codePointAt(0);\n\n // Ignore control characters\n if (codePoint <= 0x1F || codePoint >= 0x7F && codePoint <= 0x9F) {\n continue;\n }\n\n // Ignore zero-width characters\n if (codePoint >= 0x20_0B && codePoint <= 0x20_0F // Zero-width space, non-joiner, joiner, left-to-right mark, right-to-left mark\n || codePoint === 0xFE_FF // Zero-width no-break space\n ) {\n continue;\n }\n\n // Ignore combining characters\n if (codePoint >= 0x3_00 && codePoint <= 0x3_6F // Combining diacritical marks\n || codePoint >= 0x1A_B0 && codePoint <= 0x1A_FF // Combining diacritical marks extended\n || codePoint >= 0x1D_C0 && codePoint <= 0x1D_FF // Combining diacritical marks supplement\n || codePoint >= 0x20_D0 && codePoint <= 0x20_FF // Combining diacritical marks for symbols\n || codePoint >= 0xFE_20 && codePoint <= 0xFE_2F // Combining half marks\n ) {\n continue;\n }\n\n // Ignore surrogate pairs\n if (codePoint >= 0xD8_00 && codePoint <= 0xDF_FF) {\n continue;\n }\n\n // Ignore variation selectors\n if (codePoint >= 0xFE_00 && codePoint <= 0xFE_0F) {\n continue;\n }\n\n // This covers some of the above cases, but we still keep them for performance reasons.\n if (defaultIgnorableCodePointRegex.test(character)) {\n continue;\n }\n\n // TODO: Use `/\\p{RGI_Emoji}/v` when targeting Node.js 20.\n if (emojiRegex().test(character)) {\n width += 2;\n continue;\n }\n width += eastAsianWidth(codePoint, eastAsianWidthOptions);\n }\n return width;\n}\nfunction isUnicodeSupported() {\n const {\n env\n } = g$1;\n const {\n TERM,\n TERM_PROGRAM\n } = env;\n if (g$1.platform !== 'win32') {\n return TERM !== 'linux'; // Linux console (kernel)\n }\n return Boolean(env.WT_SESSION) // Windows Terminal\n || Boolean(env.TERMINUS_SUBLIME) // Terminus (<0.2.27)\n || env.ConEmuTask === '{cmd::Cmder}' // ConEmu and cmder\n || TERM_PROGRAM === 'Terminus-Sublime' || TERM_PROGRAM === 'vscode' || TERM === 'xterm-256color' || TERM === 'alacritty' || TERM === 'rxvt-unicode' || TERM === 'rxvt-unicode-256color' || env.TERMINAL_EMULATOR === 'JetBrains-JediTerm';\n}\nconst TYPE_COLOR_MAP = {\n info: \"cyan\",\n fail: \"red\",\n success: \"green\",\n ready: \"green\",\n start: \"magenta\"\n};\nconst LEVEL_COLOR_MAP = {\n 0: \"red\",\n 1: \"yellow\"\n};\nconst unicode = isUnicodeSupported();\nconst s = (c, fallback) => unicode ? c : fallback;\nconst TYPE_ICONS = {\n error: s(\"\\u2716\", \"\\xD7\"),\n fatal: s(\"\\u2716\", \"\\xD7\"),\n ready: s(\"\\u2714\", \"\\u221A\"),\n warn: s(\"\\u26A0\", \"\\u203C\"),\n info: s(\"\\u2139\", \"i\"),\n success: s(\"\\u2714\", \"\\u221A\"),\n debug: s(\"\\u2699\", \"D\"),\n trace: s(\"\\u2192\", \"\\u2192\"),\n fail: s(\"\\u2716\", \"\\xD7\"),\n start: s(\"\\u25D0\", \"o\"),\n log: \"\"\n};\nfunction stringWidth(str) {\n const hasICU = typeof Intl === \"object\";\n if (!hasICU || !Intl.Segmenter) {\n return stripAnsi$1(str).length;\n }\n return stringWidth$1(str);\n}\nclass FancyReporter extends BasicReporter {\n formatStack(stack, message, opts) {\n const indent = \" \".repeat((opts?.errorLevel || 0) + 1);\n return `\n${indent}` + parseStack(stack, message).map(line => \" \" + line.replace(/^at +/, m => colors.gray(m)).replace(/\\((.+)\\)/, (_, m) => `(${colors.cyan(m)})`)).join(`\n${indent}`);\n }\n formatType(logObj, isBadge, opts) {\n const typeColor = TYPE_COLOR_MAP[logObj.type] || LEVEL_COLOR_MAP[logObj.level] || \"gray\";\n if (isBadge) {\n return getBgColor(typeColor)(colors.black(` ${logObj.type.toUpperCase()} `));\n }\n const _type = typeof TYPE_ICONS[logObj.type] === \"string\" ? TYPE_ICONS[logObj.type] : logObj.icon || logObj.type;\n return _type ? getColor(typeColor)(_type) : \"\";\n }\n formatLogObj(logObj, opts) {\n const [message, ...additional] = this.formatArgs(logObj.args, opts).split(\"\\n\");\n if (logObj.type === \"box\") {\n return box(characterFormat(message + (additional.length > 0 ? \"\\n\" + additional.join(\"\\n\") : \"\")), {\n title: logObj.title ? characterFormat(logObj.title) : void 0,\n style: logObj.style\n });\n }\n const date = this.formatDate(logObj.date, opts);\n const coloredDate = date && colors.gray(date);\n const isBadge = logObj.badge ?? logObj.level < 2;\n const type = this.formatType(logObj, isBadge, opts);\n const tag = logObj.tag ? colors.gray(logObj.tag) : \"\";\n let line;\n const left = this.filterAndJoin([type, characterFormat(message)]);\n const right = this.filterAndJoin(opts.columns ? [tag, coloredDate] : [tag]);\n const space = (opts.columns || 0) - stringWidth(left) - stringWidth(right) - 2;\n line = space > 0 && (opts.columns || 0) >= 80 ? left + \" \".repeat(space) + right : (right ? `${colors.gray(`[${right}]`)} ` : \"\") + left;\n line += characterFormat(additional.length > 0 ? \"\\n\" + additional.join(\"\\n\") : \"\");\n if (logObj.type === \"trace\") {\n const _err = new Error(\"Trace: \" + logObj.message);\n line += this.formatStack(_err.stack || \"\", _err.message);\n }\n return isBadge ? \"\\n\" + line + \"\\n\" : line;\n }\n}\nfunction characterFormat(str) {\n return str.replace(/`([^`]+)`/gm, (_, m) => colors.cyan(m)).replace(/\\s+_([^_]+)_\\s+/gm, (_, m) => ` ${colors.underline(m)} `);\n}\nfunction getColor(color = \"white\") {\n return colors[color] || colors.white;\n}\nfunction getBgColor(color = \"bgWhite\") {\n return colors[`bg${color[0].toUpperCase()}${color.slice(1)}`] || colors.bgWhite;\n}\nfunction createConsola(options = {}) {\n let level = _getDefaultLogLevel();\n if (process.env.CONSOLA_LEVEL) {\n level = Number.parseInt(process.env.CONSOLA_LEVEL) ?? level;\n }\n const consola2 = createConsola$1({\n level,\n defaults: {\n level\n },\n stdout: process.stdout,\n stderr: process.stderr,\n prompt: (...args) => import('./chunks/prompt.mjs').then(m => m.prompt(...args)),\n reporters: options.reporters || [options.fancy ?? !(T || R) ? new FancyReporter() : new BasicReporter()],\n ...options\n });\n return consola2;\n}\nfunction _getDefaultLogLevel() {\n if (g) {\n return LogLevels.debug;\n }\n if (R) {\n return LogLevels.warn;\n }\n return LogLevels.info;\n}\nconst consola = createConsola();\nexport { LogLevels, consola, createConsola, consola as default };","/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { spawnSync } from \"child_process\";\nimport { consola } from \"consola\";\nimport fs from \"fs-extra\";\nimport path from \"path\";\nimport { fileURLToPath } from \"url\";\nfunction resolveTypeGenCli() {\n const resolvedUrl = import.meta.resolve(\"@palantir/pack.document-schema.type-gen\");\n const cli = path.resolve(fileURLToPath(resolvedUrl), \"../../../bin/cli-node.js\");\n const packageJsonPath = path.resolve(fileURLToPath(resolvedUrl), \"../../../package.json\");\n return {\n cli,\n packageJsonPath\n };\n}\nasync function syncModelTypesVersion(outputPath, typeGenPackageJsonPath) {\n const typeGenPackageJson = await fs.readJson(typeGenPackageJsonPath);\n const modelTypesVersion = typeGenPackageJson.dependencies?.[\"@palantir/pack.document-schema.model-types\"];\n if (modelTypesVersion == null) {\n consola.warn(\"Could not find model-types dependency in type-gen package.json\");\n return;\n }\n const outputPackageJsonPath = path.join(outputPath, \"package.json\");\n const outputPackageJson = await fs.readJson(outputPackageJsonPath);\n if (outputPackageJson.dependencies?.[\"@palantir/pack.document-schema.model-types\"] != null) {\n outputPackageJson.dependencies[\"@palantir/pack.document-schema.model-types\"] = modelTypesVersion;\n await fs.writeJson(outputPackageJsonPath, outputPackageJson, {\n spaces: 2\n });\n consola.log(`Updated model-types dependency to ${modelTypesVersion}`);\n }\n}\nfunction readMinVersion(answers) {\n const raw = answers?.minVersion;\n if (raw == null || raw === \"\") return undefined;\n if (typeof raw !== \"number\" && typeof raw !== \"string\") {\n throw new Error(`minVersion answer must be a number or numeric string`);\n }\n const value = typeof raw === \"number\" ? raw : Number(raw);\n if (!Number.isInteger(value)) {\n throw new Error(`minVersion answer must be an integer, got: ${raw}`);\n }\n return value;\n}\nexport default async function afterGenerate(context) {\n const {\n outputPath,\n schemaPath,\n answers,\n options\n } = context;\n if (options.dryRun) return;\n if (schemaPath == null) {\n consola.warn(\"No --schema provided; skipping versioned SDK generation\");\n return;\n }\n if (!schemaPath.endsWith(\".json\")) {\n throw new Error(`pack-versioned-template expects --schema to point to a versioned IR JSON ` + `(produced by 'type-gen schema ir'); got: ${schemaPath}`);\n }\n const resolvedIr = path.resolve(schemaPath);\n const {\n cli: typeGenCli,\n packageJsonPath: typeGenPackageJsonPath\n } = resolveTypeGenCli();\n const minVersion = readMinVersion(answers);\n consola.log(\"Generating versioned SDK files from IR...\");\n const genArgs = [\"ir\", \"gen-types\", \"-s\", resolvedIr, \"-o\", path.join(outputPath, \"src\")];\n if (minVersion != null) {\n genArgs.push(\"--min-version\", String(minVersion));\n }\n const genResult = spawnSync(typeGenCli, genArgs, {\n stdio: \"inherit\",\n cwd: outputPath\n });\n if (genResult.status !== 0) {\n throw new Error(`'ir gen-types' failed with exit code ${genResult.status ?? \"unknown\"}`);\n }\n await syncModelTypesVersion(outputPath, typeGenPackageJsonPath);\n consola.log(\"Versioned SDK generation complete.\");\n}"]}
|