@terai/dev 0.0.0-dev-20240606194724 → 0.0.0-dev-20251119151044
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/dist/cli.default.js +639 -290
- package/dist/cli.default.js.map +1 -1
- package/dist/cli.default.mjs +634 -285
- package/dist/cli.default.mjs.map +1 -1
- package/dist/cli.js +639 -290
- package/dist/cli.js.map +1 -1
- package/dist/cli.mjs +634 -285
- package/dist/cli.mjs.map +1 -1
- package/dist/commands/extract.js +20 -14
- package/dist/commands/extract.js.map +1 -1
- package/dist/commands/extract.mjs +12 -6
- package/dist/commands/extract.mjs.map +1 -1
- package/dist/commands/index.js +20 -14
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/index.mjs +12 -6
- package/dist/commands/index.mjs.map +1 -1
- package/dist/commands/init.js +20 -14
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/init.mjs +12 -6
- package/dist/commands/init.mjs.map +1 -1
- package/dist/commands/translate.js +20 -14
- package/dist/commands/translate.js.map +1 -1
- package/dist/commands/translate.mjs +12 -6
- package/dist/commands/translate.mjs.map +1 -1
- package/dist/index.js +6 -52
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -72
- package/dist/index.mjs.map +1 -1
- package/package.json +8 -8
package/dist/commands/extract.js
CHANGED
|
@@ -62,10 +62,10 @@ async function generate({
|
|
|
62
62
|
var import_runtime2 = require("@terai/runtime");
|
|
63
63
|
|
|
64
64
|
// ../logger/dist/index.mjs
|
|
65
|
-
var
|
|
66
|
-
var
|
|
67
|
-
var
|
|
68
|
-
var
|
|
65
|
+
var import_process = __toESM(require("process"), 1);
|
|
66
|
+
var import_process2 = __toESM(require("process"), 1);
|
|
67
|
+
var import_os = __toESM(require("os"), 1);
|
|
68
|
+
var import_tty = __toESM(require("tty"), 1);
|
|
69
69
|
var ANSI_BACKGROUND_OFFSET = 10;
|
|
70
70
|
var wrapAnsi16 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
|
|
71
71
|
var wrapAnsi256 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
|
|
@@ -250,13 +250,13 @@ function assembleStyles() {
|
|
|
250
250
|
}
|
|
251
251
|
var ansiStyles = assembleStyles();
|
|
252
252
|
var ansi_styles_default = ansiStyles;
|
|
253
|
-
function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args :
|
|
253
|
+
function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : import_process2.default.argv) {
|
|
254
254
|
const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
|
|
255
255
|
const position = argv.indexOf(prefix + flag);
|
|
256
256
|
const terminatorPosition = argv.indexOf("--");
|
|
257
257
|
return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
|
|
258
258
|
}
|
|
259
|
-
var { env } =
|
|
259
|
+
var { env } = import_process2.default;
|
|
260
260
|
var flagForceColor;
|
|
261
261
|
if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) {
|
|
262
262
|
flagForceColor = 0;
|
|
@@ -312,18 +312,18 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
|
|
|
312
312
|
if (env.TERM === "dumb") {
|
|
313
313
|
return min;
|
|
314
314
|
}
|
|
315
|
-
if (
|
|
316
|
-
const osRelease =
|
|
315
|
+
if (import_process2.default.platform === "win32") {
|
|
316
|
+
const osRelease = import_os.default.release().split(".");
|
|
317
317
|
if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
|
|
318
318
|
return Number(osRelease[2]) >= 14931 ? 3 : 2;
|
|
319
319
|
}
|
|
320
320
|
return 1;
|
|
321
321
|
}
|
|
322
322
|
if ("CI" in env) {
|
|
323
|
-
if ("GITHUB_ACTIONS"
|
|
323
|
+
if (["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((key) => key in env)) {
|
|
324
324
|
return 3;
|
|
325
325
|
}
|
|
326
|
-
if (["TRAVIS", "
|
|
326
|
+
if (["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => sign in env) || env.CI_NAME === "codeship") {
|
|
327
327
|
return 1;
|
|
328
328
|
}
|
|
329
329
|
return min;
|
|
@@ -337,6 +337,12 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
|
|
|
337
337
|
if (env.TERM === "xterm-kitty") {
|
|
338
338
|
return 3;
|
|
339
339
|
}
|
|
340
|
+
if (env.TERM === "xterm-ghostty") {
|
|
341
|
+
return 3;
|
|
342
|
+
}
|
|
343
|
+
if (env.TERM === "wezterm") {
|
|
344
|
+
return 3;
|
|
345
|
+
}
|
|
340
346
|
if ("TERM_PROGRAM" in env) {
|
|
341
347
|
const version = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
|
|
342
348
|
switch (env.TERM_PROGRAM) {
|
|
@@ -367,8 +373,8 @@ function createSupportsColor(stream, options = {}) {
|
|
|
367
373
|
return translateLevel(level);
|
|
368
374
|
}
|
|
369
375
|
var supportsColor = {
|
|
370
|
-
stdout: createSupportsColor({ isTTY:
|
|
371
|
-
stderr: createSupportsColor({ isTTY:
|
|
376
|
+
stdout: createSupportsColor({ isTTY: import_tty.default.isatty(1) }),
|
|
377
|
+
stderr: createSupportsColor({ isTTY: import_tty.default.isatty(2) })
|
|
372
378
|
};
|
|
373
379
|
var supports_color_default = supportsColor;
|
|
374
380
|
function stringReplaceAll(string, substring, replacer) {
|
|
@@ -545,11 +551,11 @@ var chalk = createChalk();
|
|
|
545
551
|
var chalkStderr = createChalk({ level: stderrColor ? stderrColor.level : 0 });
|
|
546
552
|
var source_default = chalk;
|
|
547
553
|
function log(message) {
|
|
548
|
-
return
|
|
554
|
+
return import_process.default.stdout.write(`${message}
|
|
549
555
|
`);
|
|
550
556
|
}
|
|
551
557
|
function logError(message) {
|
|
552
|
-
return
|
|
558
|
+
return import_process.default.stderr.write(`${message}
|
|
553
559
|
`);
|
|
554
560
|
}
|
|
555
561
|
function logBullet(logger2, colorizePrefix, colorizeText, symbol, prefix, text) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/commands/extract.ts","../../../generator/src/generate.ts","../../../logger/src/logger.ts","../../../../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/vendor/ansi-styles/index.js","../../../../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/vendor/supports-color/index.js","../../../../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/utilities.js","../../../../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/index.js"],"sourcesContent":["// Dependencies\nimport { debounce } from 'perfect-debounce'\nimport { extract } from '@terai/extractor'\nimport { generate } from '@terai/generator'\nimport { loadConfig, runtime } from '@terai/runtime'\nimport { logger } from '@terai/logger'\nimport {\n\tconvertExtractedMessagesToDictionary,\n\tstringify,\n\tgroupDictionaryByChunks\n} from '@terai/utils'\n\n// Types\nimport type { CAC } from 'cac'\nimport type { BuildManifest } from '@terai/types'\n\nexport type ExtractOptions = {\n\tcwd: string\n\tforce?: boolean\n\twatch?: boolean\n}\n\nexport function createExtractCommand(cli: CAC, cwd: string) {\n\treturn cli\n\t\t.command('extract', 'Statically extract messages from your project')\n\t\t.option('-w, --watch', 'Watch files and rebuild')\n\t\t.option('--cwd <cwd>', 'Current working directory', { default: cwd })\n\t\t.action(extractCmd)\n}\n\nexport async function extractCmd(options: ExtractOptions) {\n\tlogger.heading('extract', 'Statically extract messages from your project')\n\n\tconst done = logger.time.success()\n\n\tconst config = await loadConfig(options)\n\tconst filesPaths = runtime.fs.glob({\n\t\t...config,\n\t\tcwd: options.cwd\n\t})\n\n\tconst outDirPath = runtime.path.resolve(options.cwd, config.outDir)\n\tconst projectLocalePath = runtime.path.resolve(\n\t\toutDirPath,\n\t\tconfig.projectLocale\n\t)\n\tconst manifestPath = runtime.path.resolve(\n\t\toutDirPath,\n\t\t'.terai',\n\t\t'locale-manifest.json'\n\t)\n\n\tlogger.info('Scan:', 'Processing files...')\n\n\tasync function extractor(files = filesPaths) {\n\t\tconst extractedMessages = await extract({\n\t\t\t...config,\n\t\t\tfilesPaths: files,\n\t\t\tcwd: options.cwd\n\t\t})\n\t\tconst dictionary = convertExtractedMessagesToDictionary(extractedMessages)\n\t\tconst manifest: BuildManifest = {\n\t\t\tmessages: extractedMessages\n\t\t}\n\n\t\tconst dictionaries = groupDictionaryByChunks(\n\t\t\tdictionary,\n\t\t\tmanifest,\n\t\t\tconfig.projectLocale\n\t\t)\n\n\t\truntime.fs.remove(runtime.path.resolve(projectLocalePath))\n\n\t\tawait generate({\n\t\t\t...config,\n\t\t\tdictionaries,\n\t\t\tlocale: config.projectLocale,\n\t\t\tcwd: options.cwd\n\t\t})\n\n\t\truntime.fs.write(manifestPath, stringify(manifest))\n\n\t\treturn Object.keys(dictionary).length\n\t}\n\n\tlogger.info('Extraction:', 'Extracting messages...')\n\n\tconst msgCount = await extractor()\n\n\tdone(`Extracted ${msgCount} messages`)\n\n\tif (options.watch) {\n\t\tlogger.log('')\n\t\tlogger.info('Watch:', 'Watching files for changes...\\n')\n\t\tconst configWatcher = runtime.fs.watch({\n\t\t\t...config,\n\t\t\t...options\n\t\t})\n\n\t\tconfigWatcher.on(\n\t\t\t'change',\n\t\t\tdebounce(async () => {\n\t\t\t\tconst done = logger.time.success()\n\t\t\t\tlogger.info('Extraction:', 'Files changed, processing messages...')\n\n\t\t\t\tconst msgCount = await extractor()\n\n\t\t\t\tdone(`Extracted ${msgCount} messages`)\n\t\t\t\tlogger.log('')\n\t\t\t})\n\t\t)\n\t}\n}\n","// Dependencies\nimport { runtime } from '@terai/runtime'\nimport { stringify } from '@terai/utils'\n\n// Types\nimport type { Config, Locale, Dictionaries } from '@terai/types'\n\ntype GenerateOptions = {\n\tcwd: string\n\tlocale: Locale\n\tdictionaries: Dictionaries\n} & Pick<Config, 'outDir'>\n\nexport async function generate({\n\tdictionaries,\n\tlocale,\n\tcwd,\n\toutDir\n}: GenerateOptions) {\n\tconst folderPath = runtime.path.resolve(cwd, outDir, locale)\n\tconst output = []\n\n\tfor (const id in dictionaries) {\n\t\tconst fileDir = runtime.path.resolve(folderPath, `${id}.json`)\n\t\tconst fileContent = dictionaries[id]\n\t\tconst idOutput = stringify(fileContent)\n\n\t\truntime.fs.write(fileDir, idOutput)\n\n\t\toutput.push(idOutput)\n\t}\n\n\treturn output\n}\n","// Dependencies\nimport process from 'node:process'\nimport chalk from 'chalk'\n\nfunction log(message: string) {\n\treturn process.stdout.write(`${message}\\n`)\n}\n\nfunction logError(message: string) {\n\treturn process.stderr.write(`${message}\\n`)\n}\n\nfunction logBullet(\n\tlogger: typeof log | typeof logError,\n\tcolorizePrefix: typeof chalk,\n\tcolorizeText: typeof chalk,\n\tsymbol: string,\n\tprefix: string,\n\ttext?: string | string[]\n) {\n\tconst textParts = Array.isArray(text) ? text : [text || ''].filter(Boolean)\n\tconst formattedText = textParts\n\t\t.map((textPart) => colorizeText(textPart))\n\t\t.join('')\n\n\tlogger(\n\t\t`${' '.repeat(3)} ${colorizePrefix(symbol)} ${colorizePrefix(\n\t\t\tprefix\n\t\t)} ${formattedText}`\n\t)\n}\n\nfunction warn(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.yellow, chalk.yellow, '●', prefix, text)\n}\n\nfunction debug(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.yellow, chalk.dim, '●', prefix, text)\n}\n\nfunction info(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.cyan, chalk.dim, '◼', prefix, text)\n}\n\nfunction success(text: string) {\n\tlogBullet(log, chalk.green, chalk.dim, '✔', text)\n}\n\nfunction error(prefix: string, text?: string | string[]) {\n\tlog('')\n\tlogBullet(logError, chalk.red, chalk.red, '▲', prefix, text)\n}\n\nfunction heading(heading: string, description?: string) {\n\treturn log(\n\t\t`\\n${chalk.bgWhite(` ${chalk.whiteBright(heading)} `)} ${chalk.bold(\n\t\t\tdescription\n\t\t)}\\n`\n\t)\n}\n\nconst timing = (fn: (str: string) => any) => () => {\n\tconst start = performance.now()\n\treturn (msg: string) => {\n\t\tconst end = performance.now()\n\t\tconst ms = end - start\n\t\tfn(`${msg} ${chalk.gray(`(${ms.toFixed(2)}ms)`)}`)\n\t}\n}\n\nexport const logger = {\n\tcolors: chalk,\n\tlog,\n\theading,\n\tdebug,\n\tinfo,\n\twarn,\n\tsuccess,\n\terror,\n\ttime: {\n\t\tsuccess: timing(success),\n\t\tinfo: timing(info),\n\t\tdebug: timing(debug)\n\t}\n}\n","const ANSI_BACKGROUND_OFFSET = 10;\n\nconst wrapAnsi16 = (offset = 0) => code => `\\u001B[${code + offset}m`;\n\nconst wrapAnsi256 = (offset = 0) => code => `\\u001B[${38 + offset};5;${code}m`;\n\nconst wrapAnsi16m = (offset = 0) => (red, green, blue) => `\\u001B[${38 + offset};2;${red};${green};${blue}m`;\n\nconst styles = {\n\tmodifier: {\n\t\treset: [0, 0],\n\t\t// 21 isn't widely supported and 22 does the same thing\n\t\tbold: [1, 22],\n\t\tdim: [2, 22],\n\t\titalic: [3, 23],\n\t\tunderline: [4, 24],\n\t\toverline: [53, 55],\n\t\tinverse: [7, 27],\n\t\thidden: [8, 28],\n\t\tstrikethrough: [9, 29],\n\t},\n\tcolor: {\n\t\tblack: [30, 39],\n\t\tred: [31, 39],\n\t\tgreen: [32, 39],\n\t\tyellow: [33, 39],\n\t\tblue: [34, 39],\n\t\tmagenta: [35, 39],\n\t\tcyan: [36, 39],\n\t\twhite: [37, 39],\n\n\t\t// Bright color\n\t\tblackBright: [90, 39],\n\t\tgray: [90, 39], // Alias of `blackBright`\n\t\tgrey: [90, 39], // Alias of `blackBright`\n\t\tredBright: [91, 39],\n\t\tgreenBright: [92, 39],\n\t\tyellowBright: [93, 39],\n\t\tblueBright: [94, 39],\n\t\tmagentaBright: [95, 39],\n\t\tcyanBright: [96, 39],\n\t\twhiteBright: [97, 39],\n\t},\n\tbgColor: {\n\t\tbgBlack: [40, 49],\n\t\tbgRed: [41, 49],\n\t\tbgGreen: [42, 49],\n\t\tbgYellow: [43, 49],\n\t\tbgBlue: [44, 49],\n\t\tbgMagenta: [45, 49],\n\t\tbgCyan: [46, 49],\n\t\tbgWhite: [47, 49],\n\n\t\t// Bright color\n\t\tbgBlackBright: [100, 49],\n\t\tbgGray: [100, 49], // Alias of `bgBlackBright`\n\t\tbgGrey: [100, 49], // Alias of `bgBlackBright`\n\t\tbgRedBright: [101, 49],\n\t\tbgGreenBright: [102, 49],\n\t\tbgYellowBright: [103, 49],\n\t\tbgBlueBright: [104, 49],\n\t\tbgMagentaBright: [105, 49],\n\t\tbgCyanBright: [106, 49],\n\t\tbgWhiteBright: [107, 49],\n\t},\n};\n\nexport const modifierNames = Object.keys(styles.modifier);\nexport const foregroundColorNames = Object.keys(styles.color);\nexport const backgroundColorNames = Object.keys(styles.bgColor);\nexport const colorNames = [...foregroundColorNames, ...backgroundColorNames];\n\nfunction assembleStyles() {\n\tconst codes = new Map();\n\n\tfor (const [groupName, group] of Object.entries(styles)) {\n\t\tfor (const [styleName, style] of Object.entries(group)) {\n\t\t\tstyles[styleName] = {\n\t\t\t\topen: `\\u001B[${style[0]}m`,\n\t\t\t\tclose: `\\u001B[${style[1]}m`,\n\t\t\t};\n\n\t\t\tgroup[styleName] = styles[styleName];\n\n\t\t\tcodes.set(style[0], style[1]);\n\t\t}\n\n\t\tObject.defineProperty(styles, groupName, {\n\t\t\tvalue: group,\n\t\t\tenumerable: false,\n\t\t});\n\t}\n\n\tObject.defineProperty(styles, 'codes', {\n\t\tvalue: codes,\n\t\tenumerable: false,\n\t});\n\n\tstyles.color.close = '\\u001B[39m';\n\tstyles.bgColor.close = '\\u001B[49m';\n\n\tstyles.color.ansi = wrapAnsi16();\n\tstyles.color.ansi256 = wrapAnsi256();\n\tstyles.color.ansi16m = wrapAnsi16m();\n\tstyles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);\n\n\t// From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js\n\tObject.defineProperties(styles, {\n\t\trgbToAnsi256: {\n\t\t\tvalue(red, green, blue) {\n\t\t\t\t// We use the extended greyscale palette here, with the exception of\n\t\t\t\t// black and white. normal palette only has 4 greyscale shades.\n\t\t\t\tif (red === green && green === blue) {\n\t\t\t\t\tif (red < 8) {\n\t\t\t\t\t\treturn 16;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (red > 248) {\n\t\t\t\t\t\treturn 231;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn Math.round(((red - 8) / 247) * 24) + 232;\n\t\t\t\t}\n\n\t\t\t\treturn 16\n\t\t\t\t\t+ (36 * Math.round(red / 255 * 5))\n\t\t\t\t\t+ (6 * Math.round(green / 255 * 5))\n\t\t\t\t\t+ Math.round(blue / 255 * 5);\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToRgb: {\n\t\t\tvalue(hex) {\n\t\t\t\tconst matches = /[a-f\\d]{6}|[a-f\\d]{3}/i.exec(hex.toString(16));\n\t\t\t\tif (!matches) {\n\t\t\t\t\treturn [0, 0, 0];\n\t\t\t\t}\n\n\t\t\t\tlet [colorString] = matches;\n\n\t\t\t\tif (colorString.length === 3) {\n\t\t\t\t\tcolorString = [...colorString].map(character => character + character).join('');\n\t\t\t\t}\n\n\t\t\t\tconst integer = Number.parseInt(colorString, 16);\n\n\t\t\t\treturn [\n\t\t\t\t\t/* eslint-disable no-bitwise */\n\t\t\t\t\t(integer >> 16) & 0xFF,\n\t\t\t\t\t(integer >> 8) & 0xFF,\n\t\t\t\t\tinteger & 0xFF,\n\t\t\t\t\t/* eslint-enable no-bitwise */\n\t\t\t\t];\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi256: {\n\t\t\tvalue: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t\tansi256ToAnsi: {\n\t\t\tvalue(code) {\n\t\t\t\tif (code < 8) {\n\t\t\t\t\treturn 30 + code;\n\t\t\t\t}\n\n\t\t\t\tif (code < 16) {\n\t\t\t\t\treturn 90 + (code - 8);\n\t\t\t\t}\n\n\t\t\t\tlet red;\n\t\t\t\tlet green;\n\t\t\t\tlet blue;\n\n\t\t\t\tif (code >= 232) {\n\t\t\t\t\tred = (((code - 232) * 10) + 8) / 255;\n\t\t\t\t\tgreen = red;\n\t\t\t\t\tblue = red;\n\t\t\t\t} else {\n\t\t\t\t\tcode -= 16;\n\n\t\t\t\t\tconst remainder = code % 36;\n\n\t\t\t\t\tred = Math.floor(code / 36) / 5;\n\t\t\t\t\tgreen = Math.floor(remainder / 6) / 5;\n\t\t\t\t\tblue = (remainder % 6) / 5;\n\t\t\t\t}\n\n\t\t\t\tconst value = Math.max(red, green, blue) * 2;\n\n\t\t\t\tif (value === 0) {\n\t\t\t\t\treturn 30;\n\t\t\t\t}\n\n\t\t\t\t// eslint-disable-next-line no-bitwise\n\t\t\t\tlet result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red));\n\n\t\t\t\tif (value === 2) {\n\t\t\t\t\tresult += 60;\n\t\t\t\t}\n\n\t\t\t\treturn result;\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\trgbToAnsi: {\n\t\t\tvalue: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi: {\n\t\t\tvalue: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t});\n\n\treturn styles;\n}\n\nconst ansiStyles = assembleStyles();\n\nexport default ansiStyles;\n","import process from 'node:process';\nimport os from 'node:os';\nimport tty from 'node:tty';\n\n// From: https://github.com/sindresorhus/has-flag/blob/main/index.js\n/// function hasFlag(flag, argv = globalThis.Deno?.args ?? process.argv) {\nfunction hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : process.argv) {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n}\n\nconst {env} = process;\n\nlet flagForceColor;\nif (\n\thasFlag('no-color')\n\t|| hasFlag('no-colors')\n\t|| hasFlag('color=false')\n\t|| hasFlag('color=never')\n) {\n\tflagForceColor = 0;\n} else if (\n\thasFlag('color')\n\t|| hasFlag('colors')\n\t|| hasFlag('color=true')\n\t|| hasFlag('color=always')\n) {\n\tflagForceColor = 1;\n}\n\nfunction envForceColor() {\n\tif ('FORCE_COLOR' in env) {\n\t\tif (env.FORCE_COLOR === 'true') {\n\t\t\treturn 1;\n\t\t}\n\n\t\tif (env.FORCE_COLOR === 'false') {\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3,\n\t};\n}\n\nfunction _supportsColor(haveStream, {streamIsTTY, sniffFlags = true} = {}) {\n\tconst noFlagForceColor = envForceColor();\n\tif (noFlagForceColor !== undefined) {\n\t\tflagForceColor = noFlagForceColor;\n\t}\n\n\tconst forceColor = sniffFlags ? flagForceColor : noFlagForceColor;\n\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (sniffFlags) {\n\t\tif (hasFlag('color=16m')\n\t\t\t|| hasFlag('color=full')\n\t\t\t|| hasFlag('color=truecolor')) {\n\t\t\treturn 3;\n\t\t}\n\n\t\tif (hasFlag('color=256')) {\n\t\t\treturn 2;\n\t\t}\n\t}\n\n\t// Check for Azure DevOps pipelines.\n\t// Has to be above the `!streamIsTTY` check.\n\tif ('TF_BUILD' in env && 'AGENT_NAME' in env) {\n\t\treturn 1;\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10\n\t\t\t&& Number(osRelease[2]) >= 10_586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14_931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif ('GITHUB_ACTIONS' in env || 'GITEA_ACTIONS' in env) {\n\t\t\treturn 3;\n\t\t}\n\n\t\tif (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'BUILDKITE', 'DRONE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif (env.TERM === 'xterm-kitty') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = Number.parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app': {\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\t}\n\n\t\t\tcase 'Apple_Terminal': {\n\t\t\t\treturn 2;\n\t\t\t}\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nexport function createSupportsColor(stream, options = {}) {\n\tconst level = _supportsColor(stream, {\n\t\tstreamIsTTY: stream && stream.isTTY,\n\t\t...options,\n\t});\n\n\treturn translateLevel(level);\n}\n\nconst supportsColor = {\n\tstdout: createSupportsColor({isTTY: tty.isatty(1)}),\n\tstderr: createSupportsColor({isTTY: tty.isatty(2)}),\n};\n\nexport default supportsColor;\n","// TODO: When targeting Node.js 16, use `String.prototype.replaceAll`.\nexport function stringReplaceAll(string, substring, replacer) {\n\tlet index = string.indexOf(substring);\n\tif (index === -1) {\n\t\treturn string;\n\t}\n\n\tconst substringLength = substring.length;\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\treturnValue += string.slice(endIndex, index) + substring + replacer;\n\t\tendIndex = index + substringLength;\n\t\tindex = string.indexOf(substring, endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n\nexport function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\tconst gotCR = string[index - 1] === '\\r';\n\t\treturnValue += string.slice(endIndex, (gotCR ? index - 1 : index)) + prefix + (gotCR ? '\\r\\n' : '\\n') + postfix;\n\t\tendIndex = index + 1;\n\t\tindex = string.indexOf('\\n', endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n","import ansiStyles from '#ansi-styles';\nimport supportsColor from '#supports-color';\nimport { // eslint-disable-line import/order\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex,\n} from './utilities.js';\n\nconst {stdout: stdoutColor, stderr: stderrColor} = supportsColor;\n\nconst GENERATOR = Symbol('GENERATOR');\nconst STYLER = Symbol('STYLER');\nconst IS_EMPTY = Symbol('IS_EMPTY');\n\n// `supportsColor.level` → `ansiStyles.color[name]` mapping\nconst levelMapping = [\n\t'ansi',\n\t'ansi',\n\t'ansi256',\n\t'ansi16m',\n];\n\nconst styles = Object.create(null);\n\nconst applyOptions = (object, options = {}) => {\n\tif (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {\n\t\tthrow new Error('The `level` option should be an integer from 0 to 3');\n\t}\n\n\t// Detect level if not set manually\n\tconst colorLevel = stdoutColor ? stdoutColor.level : 0;\n\tobject.level = options.level === undefined ? colorLevel : options.level;\n};\n\nexport class Chalk {\n\tconstructor(options) {\n\t\t// eslint-disable-next-line no-constructor-return\n\t\treturn chalkFactory(options);\n\t}\n}\n\nconst chalkFactory = options => {\n\tconst chalk = (...strings) => strings.join(' ');\n\tapplyOptions(chalk, options);\n\n\tObject.setPrototypeOf(chalk, createChalk.prototype);\n\n\treturn chalk;\n};\n\nfunction createChalk(options) {\n\treturn chalkFactory(options);\n}\n\nObject.setPrototypeOf(createChalk.prototype, Function.prototype);\n\nfor (const [styleName, style] of Object.entries(ansiStyles)) {\n\tstyles[styleName] = {\n\t\tget() {\n\t\t\tconst builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);\n\t\t\tObject.defineProperty(this, styleName, {value: builder});\n\t\t\treturn builder;\n\t\t},\n\t};\n}\n\nstyles.visible = {\n\tget() {\n\t\tconst builder = createBuilder(this, this[STYLER], true);\n\t\tObject.defineProperty(this, 'visible', {value: builder});\n\t\treturn builder;\n\t},\n};\n\nconst getModelAnsi = (model, level, type, ...arguments_) => {\n\tif (model === 'rgb') {\n\t\tif (level === 'ansi16m') {\n\t\t\treturn ansiStyles[type].ansi16m(...arguments_);\n\t\t}\n\n\t\tif (level === 'ansi256') {\n\t\t\treturn ansiStyles[type].ansi256(ansiStyles.rgbToAnsi256(...arguments_));\n\t\t}\n\n\t\treturn ansiStyles[type].ansi(ansiStyles.rgbToAnsi(...arguments_));\n\t}\n\n\tif (model === 'hex') {\n\t\treturn getModelAnsi('rgb', level, type, ...ansiStyles.hexToRgb(...arguments_));\n\t}\n\n\treturn ansiStyles[type][model](...arguments_);\n};\n\nconst usedModels = ['rgb', 'hex', 'ansi256'];\n\nfor (const model of usedModels) {\n\tstyles[model] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'color', ...arguments_), ansiStyles.color.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n\n\tconst bgModel = 'bg' + model[0].toUpperCase() + model.slice(1);\n\tstyles[bgModel] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'bgColor', ...arguments_), ansiStyles.bgColor.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n}\n\nconst proto = Object.defineProperties(() => {}, {\n\t...styles,\n\tlevel: {\n\t\tenumerable: true,\n\t\tget() {\n\t\t\treturn this[GENERATOR].level;\n\t\t},\n\t\tset(level) {\n\t\t\tthis[GENERATOR].level = level;\n\t\t},\n\t},\n});\n\nconst createStyler = (open, close, parent) => {\n\tlet openAll;\n\tlet closeAll;\n\tif (parent === undefined) {\n\t\topenAll = open;\n\t\tcloseAll = close;\n\t} else {\n\t\topenAll = parent.openAll + open;\n\t\tcloseAll = close + parent.closeAll;\n\t}\n\n\treturn {\n\t\topen,\n\t\tclose,\n\t\topenAll,\n\t\tcloseAll,\n\t\tparent,\n\t};\n};\n\nconst createBuilder = (self, _styler, _isEmpty) => {\n\t// Single argument is hot path, implicit coercion is faster than anything\n\t// eslint-disable-next-line no-implicit-coercion\n\tconst builder = (...arguments_) => applyStyle(builder, (arguments_.length === 1) ? ('' + arguments_[0]) : arguments_.join(' '));\n\n\t// We alter the prototype because we must return a function, but there is\n\t// no way to create a function with a different prototype\n\tObject.setPrototypeOf(builder, proto);\n\n\tbuilder[GENERATOR] = self;\n\tbuilder[STYLER] = _styler;\n\tbuilder[IS_EMPTY] = _isEmpty;\n\n\treturn builder;\n};\n\nconst applyStyle = (self, string) => {\n\tif (self.level <= 0 || !string) {\n\t\treturn self[IS_EMPTY] ? '' : string;\n\t}\n\n\tlet styler = self[STYLER];\n\n\tif (styler === undefined) {\n\t\treturn string;\n\t}\n\n\tconst {openAll, closeAll} = styler;\n\tif (string.includes('\\u001B')) {\n\t\twhile (styler !== undefined) {\n\t\t\t// Replace any instances already present with a re-opening code\n\t\t\t// otherwise only the part of the string until said closing code\n\t\t\t// will be colored, and the rest will simply be 'plain'.\n\t\t\tstring = stringReplaceAll(string, styler.close, styler.open);\n\n\t\t\tstyler = styler.parent;\n\t\t}\n\t}\n\n\t// We can move both next actions out of loop, because remaining actions in loop won't have\n\t// any/visible effect on parts we add here. Close the styling before a linebreak and reopen\n\t// after next line to fix a bleed issue on macOS: https://github.com/chalk/chalk/pull/92\n\tconst lfIndex = string.indexOf('\\n');\n\tif (lfIndex !== -1) {\n\t\tstring = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);\n\t}\n\n\treturn openAll + string + closeAll;\n};\n\nObject.defineProperties(createChalk.prototype, styles);\n\nconst chalk = createChalk();\nexport const chalkStderr = createChalk({level: stderrColor ? stderrColor.level : 0});\n\nexport {\n\tmodifierNames,\n\tforegroundColorNames,\n\tbackgroundColorNames,\n\tcolorNames,\n\n\t// TODO: Remove these aliases in the next major version\n\tmodifierNames as modifiers,\n\tforegroundColorNames as foregroundColors,\n\tbackgroundColorNames as backgroundColors,\n\tcolorNames as colors,\n} from './vendor/ansi-styles/index.js';\n\nexport {\n\tstdoutColor as supportsColor,\n\tstderrColor as supportsColorStderr,\n};\n\nexport default chalk;\n"],"mappings":"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","names":["import_runtime","import_node_process","process","os","tty","styles","chalk","logger","heading","import_utils","done","msgCount"]}
|
|
1
|
+
{"version":3,"sources":["../../src/commands/extract.ts","../../../generator/src/generate.ts","../../../logger/src/logger.ts","../../../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/ansi-styles/index.js","../../../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/supports-color/index.js","../../../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/utilities.js","../../../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/index.js"],"sourcesContent":["// Dependencies\nimport { debounce } from 'perfect-debounce'\nimport { extract } from '@terai/extractor'\nimport { generate } from '@terai/generator'\nimport { loadConfig, runtime } from '@terai/runtime'\nimport { logger } from '@terai/logger'\nimport {\n\tconvertExtractedMessagesToDictionary,\n\tstringify,\n\tgroupDictionaryByChunks\n} from '@terai/utils'\n\n// Types\nimport type { CAC } from 'cac'\nimport type { BuildManifest } from '@terai/types'\n\nexport type ExtractOptions = {\n\tcwd: string\n\tforce?: boolean\n\twatch?: boolean\n}\n\nexport function createExtractCommand(cli: CAC, cwd: string) {\n\treturn cli\n\t\t.command('extract', 'Statically extract messages from your project')\n\t\t.option('-w, --watch', 'Watch files and rebuild')\n\t\t.option('--cwd <cwd>', 'Current working directory', { default: cwd })\n\t\t.action(extractCmd)\n}\n\nexport async function extractCmd(options: ExtractOptions) {\n\tlogger.heading('extract', 'Statically extract messages from your project')\n\n\tconst done = logger.time.success()\n\n\tconst config = await loadConfig(options)\n\tconst filesPaths = runtime.fs.glob({\n\t\t...config,\n\t\tcwd: options.cwd\n\t})\n\n\tconst outDirPath = runtime.path.resolve(options.cwd, config.outDir)\n\tconst projectLocalePath = runtime.path.resolve(\n\t\toutDirPath,\n\t\tconfig.projectLocale\n\t)\n\tconst manifestPath = runtime.path.resolve(\n\t\toutDirPath,\n\t\t'.terai',\n\t\t'locale-manifest.json'\n\t)\n\n\tlogger.info('Scan:', 'Processing files...')\n\n\tasync function extractor(files = filesPaths) {\n\t\tconst extractedMessages = await extract({\n\t\t\t...config,\n\t\t\tfilesPaths: files,\n\t\t\tcwd: options.cwd\n\t\t})\n\t\tconst dictionary = convertExtractedMessagesToDictionary(extractedMessages)\n\t\tconst manifest: BuildManifest = {\n\t\t\tmessages: extractedMessages\n\t\t}\n\n\t\tconst dictionaries = groupDictionaryByChunks(\n\t\t\tdictionary,\n\t\t\tmanifest,\n\t\t\tconfig.projectLocale\n\t\t)\n\n\t\truntime.fs.remove(runtime.path.resolve(projectLocalePath))\n\n\t\tawait generate({\n\t\t\t...config,\n\t\t\tdictionaries,\n\t\t\tlocale: config.projectLocale,\n\t\t\tcwd: options.cwd\n\t\t})\n\n\t\truntime.fs.write(manifestPath, stringify(manifest))\n\n\t\treturn Object.keys(dictionary).length\n\t}\n\n\tlogger.info('Extraction:', 'Extracting messages...')\n\n\tconst msgCount = await extractor()\n\n\tdone(`Extracted ${msgCount} messages`)\n\n\tif (options.watch) {\n\t\tlogger.log('')\n\t\tlogger.info('Watch:', 'Watching files for changes...\\n')\n\t\tconst configWatcher = runtime.fs.watch({\n\t\t\t...config,\n\t\t\t...options\n\t\t})\n\n\t\tconfigWatcher.on(\n\t\t\t'change',\n\t\t\tdebounce(async () => {\n\t\t\t\tconst done = logger.time.success()\n\t\t\t\tlogger.info('Extraction:', 'Files changed, processing messages...')\n\n\t\t\t\tconst msgCount = await extractor()\n\n\t\t\t\tdone(`Extracted ${msgCount} messages`)\n\t\t\t\tlogger.log('')\n\t\t\t})\n\t\t)\n\t}\n}\n","// Dependencies\nimport { runtime } from '@terai/runtime'\nimport { stringify } from '@terai/utils'\n\n// Types\nimport type { Config, Locale, Dictionaries } from '@terai/types'\n\ntype GenerateOptions = {\n\tcwd: string\n\tlocale: Locale\n\tdictionaries: Dictionaries\n} & Pick<Config, 'outDir'>\n\nexport async function generate({\n\tdictionaries,\n\tlocale,\n\tcwd,\n\toutDir\n}: GenerateOptions) {\n\tconst folderPath = runtime.path.resolve(cwd, outDir, locale)\n\tconst output = []\n\n\tfor (const id in dictionaries) {\n\t\tconst fileDir = runtime.path.resolve(folderPath, `${id}.json`)\n\t\tconst fileContent = dictionaries[id]\n\t\tconst idOutput = stringify(fileContent)\n\n\t\truntime.fs.write(fileDir, idOutput)\n\n\t\toutput.push(idOutput)\n\t}\n\n\treturn output\n}\n","// Dependencies\nimport process from 'node:process'\nimport chalk from 'chalk'\n\nfunction log(message: string) {\n\treturn process.stdout.write(`${message}\\n`)\n}\n\nfunction logError(message: string) {\n\treturn process.stderr.write(`${message}\\n`)\n}\n\nfunction logBullet(\n\tlogger: typeof log | typeof logError,\n\tcolorizePrefix: typeof chalk,\n\tcolorizeText: typeof chalk,\n\tsymbol: string,\n\tprefix: string,\n\ttext?: string | string[]\n) {\n\tconst textParts = Array.isArray(text) ? text : [text || ''].filter(Boolean)\n\tconst formattedText = textParts\n\t\t.map((textPart) => colorizeText(textPart))\n\t\t.join('')\n\n\tlogger(\n\t\t`${' '.repeat(3)} ${colorizePrefix(symbol)} ${colorizePrefix(\n\t\t\tprefix\n\t\t)} ${formattedText}`\n\t)\n}\n\nfunction warn(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.yellow, chalk.yellow, '●', prefix, text)\n}\n\nfunction debug(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.yellow, chalk.dim, '●', prefix, text)\n}\n\nfunction info(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.cyan, chalk.dim, '◼', prefix, text)\n}\n\nfunction success(text: string) {\n\tlogBullet(log, chalk.green, chalk.dim, '✔', text)\n}\n\nfunction error(prefix: string, text?: string | string[]) {\n\tlog('')\n\tlogBullet(logError, chalk.red, chalk.red, '▲', prefix, text)\n}\n\nfunction heading(heading: string, description?: string) {\n\treturn log(\n\t\t`\\n${chalk.bgWhite(` ${chalk.whiteBright(heading)} `)} ${chalk.bold(\n\t\t\tdescription\n\t\t)}\\n`\n\t)\n}\n\nconst timing = (fn: (str: string) => any) => () => {\n\tconst start = performance.now()\n\treturn (msg: string) => {\n\t\tconst end = performance.now()\n\t\tconst ms = end - start\n\t\tfn(`${msg} ${chalk.gray(`(${ms.toFixed(2)}ms)`)}`)\n\t}\n}\n\nexport const logger = {\n\tcolors: chalk,\n\tlog,\n\theading,\n\tdebug,\n\tinfo,\n\twarn,\n\tsuccess,\n\terror,\n\ttime: {\n\t\tsuccess: timing(success),\n\t\tinfo: timing(info),\n\t\tdebug: timing(debug)\n\t}\n}\n","const ANSI_BACKGROUND_OFFSET = 10;\n\nconst wrapAnsi16 = (offset = 0) => code => `\\u001B[${code + offset}m`;\n\nconst wrapAnsi256 = (offset = 0) => code => `\\u001B[${38 + offset};5;${code}m`;\n\nconst wrapAnsi16m = (offset = 0) => (red, green, blue) => `\\u001B[${38 + offset};2;${red};${green};${blue}m`;\n\nconst styles = {\n\tmodifier: {\n\t\treset: [0, 0],\n\t\t// 21 isn't widely supported and 22 does the same thing\n\t\tbold: [1, 22],\n\t\tdim: [2, 22],\n\t\titalic: [3, 23],\n\t\tunderline: [4, 24],\n\t\toverline: [53, 55],\n\t\tinverse: [7, 27],\n\t\thidden: [8, 28],\n\t\tstrikethrough: [9, 29],\n\t},\n\tcolor: {\n\t\tblack: [30, 39],\n\t\tred: [31, 39],\n\t\tgreen: [32, 39],\n\t\tyellow: [33, 39],\n\t\tblue: [34, 39],\n\t\tmagenta: [35, 39],\n\t\tcyan: [36, 39],\n\t\twhite: [37, 39],\n\n\t\t// Bright color\n\t\tblackBright: [90, 39],\n\t\tgray: [90, 39], // Alias of `blackBright`\n\t\tgrey: [90, 39], // Alias of `blackBright`\n\t\tredBright: [91, 39],\n\t\tgreenBright: [92, 39],\n\t\tyellowBright: [93, 39],\n\t\tblueBright: [94, 39],\n\t\tmagentaBright: [95, 39],\n\t\tcyanBright: [96, 39],\n\t\twhiteBright: [97, 39],\n\t},\n\tbgColor: {\n\t\tbgBlack: [40, 49],\n\t\tbgRed: [41, 49],\n\t\tbgGreen: [42, 49],\n\t\tbgYellow: [43, 49],\n\t\tbgBlue: [44, 49],\n\t\tbgMagenta: [45, 49],\n\t\tbgCyan: [46, 49],\n\t\tbgWhite: [47, 49],\n\n\t\t// Bright color\n\t\tbgBlackBright: [100, 49],\n\t\tbgGray: [100, 49], // Alias of `bgBlackBright`\n\t\tbgGrey: [100, 49], // Alias of `bgBlackBright`\n\t\tbgRedBright: [101, 49],\n\t\tbgGreenBright: [102, 49],\n\t\tbgYellowBright: [103, 49],\n\t\tbgBlueBright: [104, 49],\n\t\tbgMagentaBright: [105, 49],\n\t\tbgCyanBright: [106, 49],\n\t\tbgWhiteBright: [107, 49],\n\t},\n};\n\nexport const modifierNames = Object.keys(styles.modifier);\nexport const foregroundColorNames = Object.keys(styles.color);\nexport const backgroundColorNames = Object.keys(styles.bgColor);\nexport const colorNames = [...foregroundColorNames, ...backgroundColorNames];\n\nfunction assembleStyles() {\n\tconst codes = new Map();\n\n\tfor (const [groupName, group] of Object.entries(styles)) {\n\t\tfor (const [styleName, style] of Object.entries(group)) {\n\t\t\tstyles[styleName] = {\n\t\t\t\topen: `\\u001B[${style[0]}m`,\n\t\t\t\tclose: `\\u001B[${style[1]}m`,\n\t\t\t};\n\n\t\t\tgroup[styleName] = styles[styleName];\n\n\t\t\tcodes.set(style[0], style[1]);\n\t\t}\n\n\t\tObject.defineProperty(styles, groupName, {\n\t\t\tvalue: group,\n\t\t\tenumerable: false,\n\t\t});\n\t}\n\n\tObject.defineProperty(styles, 'codes', {\n\t\tvalue: codes,\n\t\tenumerable: false,\n\t});\n\n\tstyles.color.close = '\\u001B[39m';\n\tstyles.bgColor.close = '\\u001B[49m';\n\n\tstyles.color.ansi = wrapAnsi16();\n\tstyles.color.ansi256 = wrapAnsi256();\n\tstyles.color.ansi16m = wrapAnsi16m();\n\tstyles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);\n\n\t// From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js\n\tObject.defineProperties(styles, {\n\t\trgbToAnsi256: {\n\t\t\tvalue(red, green, blue) {\n\t\t\t\t// We use the extended greyscale palette here, with the exception of\n\t\t\t\t// black and white. normal palette only has 4 greyscale shades.\n\t\t\t\tif (red === green && green === blue) {\n\t\t\t\t\tif (red < 8) {\n\t\t\t\t\t\treturn 16;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (red > 248) {\n\t\t\t\t\t\treturn 231;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn Math.round(((red - 8) / 247) * 24) + 232;\n\t\t\t\t}\n\n\t\t\t\treturn 16\n\t\t\t\t\t+ (36 * Math.round(red / 255 * 5))\n\t\t\t\t\t+ (6 * Math.round(green / 255 * 5))\n\t\t\t\t\t+ Math.round(blue / 255 * 5);\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToRgb: {\n\t\t\tvalue(hex) {\n\t\t\t\tconst matches = /[a-f\\d]{6}|[a-f\\d]{3}/i.exec(hex.toString(16));\n\t\t\t\tif (!matches) {\n\t\t\t\t\treturn [0, 0, 0];\n\t\t\t\t}\n\n\t\t\t\tlet [colorString] = matches;\n\n\t\t\t\tif (colorString.length === 3) {\n\t\t\t\t\tcolorString = [...colorString].map(character => character + character).join('');\n\t\t\t\t}\n\n\t\t\t\tconst integer = Number.parseInt(colorString, 16);\n\n\t\t\t\treturn [\n\t\t\t\t\t/* eslint-disable no-bitwise */\n\t\t\t\t\t(integer >> 16) & 0xFF,\n\t\t\t\t\t(integer >> 8) & 0xFF,\n\t\t\t\t\tinteger & 0xFF,\n\t\t\t\t\t/* eslint-enable no-bitwise */\n\t\t\t\t];\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi256: {\n\t\t\tvalue: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t\tansi256ToAnsi: {\n\t\t\tvalue(code) {\n\t\t\t\tif (code < 8) {\n\t\t\t\t\treturn 30 + code;\n\t\t\t\t}\n\n\t\t\t\tif (code < 16) {\n\t\t\t\t\treturn 90 + (code - 8);\n\t\t\t\t}\n\n\t\t\t\tlet red;\n\t\t\t\tlet green;\n\t\t\t\tlet blue;\n\n\t\t\t\tif (code >= 232) {\n\t\t\t\t\tred = (((code - 232) * 10) + 8) / 255;\n\t\t\t\t\tgreen = red;\n\t\t\t\t\tblue = red;\n\t\t\t\t} else {\n\t\t\t\t\tcode -= 16;\n\n\t\t\t\t\tconst remainder = code % 36;\n\n\t\t\t\t\tred = Math.floor(code / 36) / 5;\n\t\t\t\t\tgreen = Math.floor(remainder / 6) / 5;\n\t\t\t\t\tblue = (remainder % 6) / 5;\n\t\t\t\t}\n\n\t\t\t\tconst value = Math.max(red, green, blue) * 2;\n\n\t\t\t\tif (value === 0) {\n\t\t\t\t\treturn 30;\n\t\t\t\t}\n\n\t\t\t\t// eslint-disable-next-line no-bitwise\n\t\t\t\tlet result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red));\n\n\t\t\t\tif (value === 2) {\n\t\t\t\t\tresult += 60;\n\t\t\t\t}\n\n\t\t\t\treturn result;\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\trgbToAnsi: {\n\t\t\tvalue: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi: {\n\t\t\tvalue: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t});\n\n\treturn styles;\n}\n\nconst ansiStyles = assembleStyles();\n\nexport default ansiStyles;\n","import process from 'node:process';\nimport os from 'node:os';\nimport tty from 'node:tty';\n\n// From: https://github.com/sindresorhus/has-flag/blob/main/index.js\n/// function hasFlag(flag, argv = globalThis.Deno?.args ?? process.argv) {\nfunction hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : process.argv) {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n}\n\nconst {env} = process;\n\nlet flagForceColor;\nif (\n\thasFlag('no-color')\n\t|| hasFlag('no-colors')\n\t|| hasFlag('color=false')\n\t|| hasFlag('color=never')\n) {\n\tflagForceColor = 0;\n} else if (\n\thasFlag('color')\n\t|| hasFlag('colors')\n\t|| hasFlag('color=true')\n\t|| hasFlag('color=always')\n) {\n\tflagForceColor = 1;\n}\n\nfunction envForceColor() {\n\tif ('FORCE_COLOR' in env) {\n\t\tif (env.FORCE_COLOR === 'true') {\n\t\t\treturn 1;\n\t\t}\n\n\t\tif (env.FORCE_COLOR === 'false') {\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3,\n\t};\n}\n\nfunction _supportsColor(haveStream, {streamIsTTY, sniffFlags = true} = {}) {\n\tconst noFlagForceColor = envForceColor();\n\tif (noFlagForceColor !== undefined) {\n\t\tflagForceColor = noFlagForceColor;\n\t}\n\n\tconst forceColor = sniffFlags ? flagForceColor : noFlagForceColor;\n\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (sniffFlags) {\n\t\tif (hasFlag('color=16m')\n\t\t\t|| hasFlag('color=full')\n\t\t\t|| hasFlag('color=truecolor')) {\n\t\t\treturn 3;\n\t\t}\n\n\t\tif (hasFlag('color=256')) {\n\t\t\treturn 2;\n\t\t}\n\t}\n\n\t// Check for Azure DevOps pipelines.\n\t// Has to be above the `!streamIsTTY` check.\n\tif ('TF_BUILD' in env && 'AGENT_NAME' in env) {\n\t\treturn 1;\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10\n\t\t\t&& Number(osRelease[2]) >= 10_586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14_931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif (['GITHUB_ACTIONS', 'GITEA_ACTIONS', 'CIRCLECI'].some(key => key in env)) {\n\t\t\treturn 3;\n\t\t}\n\n\t\tif (['TRAVIS', 'APPVEYOR', 'GITLAB_CI', 'BUILDKITE', 'DRONE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif (env.TERM === 'xterm-kitty') {\n\t\treturn 3;\n\t}\n\n\tif (env.TERM === 'xterm-ghostty') {\n\t\treturn 3;\n\t}\n\n\tif (env.TERM === 'wezterm') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = Number.parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app': {\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\t}\n\n\t\t\tcase 'Apple_Terminal': {\n\t\t\t\treturn 2;\n\t\t\t}\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nexport function createSupportsColor(stream, options = {}) {\n\tconst level = _supportsColor(stream, {\n\t\tstreamIsTTY: stream && stream.isTTY,\n\t\t...options,\n\t});\n\n\treturn translateLevel(level);\n}\n\nconst supportsColor = {\n\tstdout: createSupportsColor({isTTY: tty.isatty(1)}),\n\tstderr: createSupportsColor({isTTY: tty.isatty(2)}),\n};\n\nexport default supportsColor;\n","// TODO: When targeting Node.js 16, use `String.prototype.replaceAll`.\nexport function stringReplaceAll(string, substring, replacer) {\n\tlet index = string.indexOf(substring);\n\tif (index === -1) {\n\t\treturn string;\n\t}\n\n\tconst substringLength = substring.length;\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\treturnValue += string.slice(endIndex, index) + substring + replacer;\n\t\tendIndex = index + substringLength;\n\t\tindex = string.indexOf(substring, endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n\nexport function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\tconst gotCR = string[index - 1] === '\\r';\n\t\treturnValue += string.slice(endIndex, (gotCR ? index - 1 : index)) + prefix + (gotCR ? '\\r\\n' : '\\n') + postfix;\n\t\tendIndex = index + 1;\n\t\tindex = string.indexOf('\\n', endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n","import ansiStyles from '#ansi-styles';\nimport supportsColor from '#supports-color';\nimport { // eslint-disable-line import/order\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex,\n} from './utilities.js';\n\nconst {stdout: stdoutColor, stderr: stderrColor} = supportsColor;\n\nconst GENERATOR = Symbol('GENERATOR');\nconst STYLER = Symbol('STYLER');\nconst IS_EMPTY = Symbol('IS_EMPTY');\n\n// `supportsColor.level` → `ansiStyles.color[name]` mapping\nconst levelMapping = [\n\t'ansi',\n\t'ansi',\n\t'ansi256',\n\t'ansi16m',\n];\n\nconst styles = Object.create(null);\n\nconst applyOptions = (object, options = {}) => {\n\tif (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {\n\t\tthrow new Error('The `level` option should be an integer from 0 to 3');\n\t}\n\n\t// Detect level if not set manually\n\tconst colorLevel = stdoutColor ? stdoutColor.level : 0;\n\tobject.level = options.level === undefined ? colorLevel : options.level;\n};\n\nexport class Chalk {\n\tconstructor(options) {\n\t\t// eslint-disable-next-line no-constructor-return\n\t\treturn chalkFactory(options);\n\t}\n}\n\nconst chalkFactory = options => {\n\tconst chalk = (...strings) => strings.join(' ');\n\tapplyOptions(chalk, options);\n\n\tObject.setPrototypeOf(chalk, createChalk.prototype);\n\n\treturn chalk;\n};\n\nfunction createChalk(options) {\n\treturn chalkFactory(options);\n}\n\nObject.setPrototypeOf(createChalk.prototype, Function.prototype);\n\nfor (const [styleName, style] of Object.entries(ansiStyles)) {\n\tstyles[styleName] = {\n\t\tget() {\n\t\t\tconst builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);\n\t\t\tObject.defineProperty(this, styleName, {value: builder});\n\t\t\treturn builder;\n\t\t},\n\t};\n}\n\nstyles.visible = {\n\tget() {\n\t\tconst builder = createBuilder(this, this[STYLER], true);\n\t\tObject.defineProperty(this, 'visible', {value: builder});\n\t\treturn builder;\n\t},\n};\n\nconst getModelAnsi = (model, level, type, ...arguments_) => {\n\tif (model === 'rgb') {\n\t\tif (level === 'ansi16m') {\n\t\t\treturn ansiStyles[type].ansi16m(...arguments_);\n\t\t}\n\n\t\tif (level === 'ansi256') {\n\t\t\treturn ansiStyles[type].ansi256(ansiStyles.rgbToAnsi256(...arguments_));\n\t\t}\n\n\t\treturn ansiStyles[type].ansi(ansiStyles.rgbToAnsi(...arguments_));\n\t}\n\n\tif (model === 'hex') {\n\t\treturn getModelAnsi('rgb', level, type, ...ansiStyles.hexToRgb(...arguments_));\n\t}\n\n\treturn ansiStyles[type][model](...arguments_);\n};\n\nconst usedModels = ['rgb', 'hex', 'ansi256'];\n\nfor (const model of usedModels) {\n\tstyles[model] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'color', ...arguments_), ansiStyles.color.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n\n\tconst bgModel = 'bg' + model[0].toUpperCase() + model.slice(1);\n\tstyles[bgModel] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'bgColor', ...arguments_), ansiStyles.bgColor.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n}\n\nconst proto = Object.defineProperties(() => {}, {\n\t...styles,\n\tlevel: {\n\t\tenumerable: true,\n\t\tget() {\n\t\t\treturn this[GENERATOR].level;\n\t\t},\n\t\tset(level) {\n\t\t\tthis[GENERATOR].level = level;\n\t\t},\n\t},\n});\n\nconst createStyler = (open, close, parent) => {\n\tlet openAll;\n\tlet closeAll;\n\tif (parent === undefined) {\n\t\topenAll = open;\n\t\tcloseAll = close;\n\t} else {\n\t\topenAll = parent.openAll + open;\n\t\tcloseAll = close + parent.closeAll;\n\t}\n\n\treturn {\n\t\topen,\n\t\tclose,\n\t\topenAll,\n\t\tcloseAll,\n\t\tparent,\n\t};\n};\n\nconst createBuilder = (self, _styler, _isEmpty) => {\n\t// Single argument is hot path, implicit coercion is faster than anything\n\t// eslint-disable-next-line no-implicit-coercion\n\tconst builder = (...arguments_) => applyStyle(builder, (arguments_.length === 1) ? ('' + arguments_[0]) : arguments_.join(' '));\n\n\t// We alter the prototype because we must return a function, but there is\n\t// no way to create a function with a different prototype\n\tObject.setPrototypeOf(builder, proto);\n\n\tbuilder[GENERATOR] = self;\n\tbuilder[STYLER] = _styler;\n\tbuilder[IS_EMPTY] = _isEmpty;\n\n\treturn builder;\n};\n\nconst applyStyle = (self, string) => {\n\tif (self.level <= 0 || !string) {\n\t\treturn self[IS_EMPTY] ? '' : string;\n\t}\n\n\tlet styler = self[STYLER];\n\n\tif (styler === undefined) {\n\t\treturn string;\n\t}\n\n\tconst {openAll, closeAll} = styler;\n\tif (string.includes('\\u001B')) {\n\t\twhile (styler !== undefined) {\n\t\t\t// Replace any instances already present with a re-opening code\n\t\t\t// otherwise only the part of the string until said closing code\n\t\t\t// will be colored, and the rest will simply be 'plain'.\n\t\t\tstring = stringReplaceAll(string, styler.close, styler.open);\n\n\t\t\tstyler = styler.parent;\n\t\t}\n\t}\n\n\t// We can move both next actions out of loop, because remaining actions in loop won't have\n\t// any/visible effect on parts we add here. Close the styling before a linebreak and reopen\n\t// after next line to fix a bleed issue on macOS: https://github.com/chalk/chalk/pull/92\n\tconst lfIndex = string.indexOf('\\n');\n\tif (lfIndex !== -1) {\n\t\tstring = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);\n\t}\n\n\treturn openAll + string + closeAll;\n};\n\nObject.defineProperties(createChalk.prototype, styles);\n\nconst chalk = createChalk();\nexport const chalkStderr = createChalk({level: stderrColor ? stderrColor.level : 0});\n\nexport {\n\tmodifierNames,\n\tforegroundColorNames,\n\tbackgroundColorNames,\n\tcolorNames,\n\n\t// TODO: Remove these aliases in the next major version\n\tmodifierNames as modifiers,\n\tforegroundColorNames as foregroundColors,\n\tbackgroundColorNames as backgroundColors,\n\tcolorNames as colors,\n} from './vendor/ansi-styles/index.js';\n\nexport {\n\tstdoutColor as supportsColor,\n\tstderrColor as supportsColorStderr,\n};\n\nexport default chalk;\n"],"mappings":"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","names":["import_runtime","import_process","process","os","tty","styles","chalk","logger","heading","import_utils","done","msgCount"]}
|
|
@@ -27,10 +27,10 @@ async function generate({
|
|
|
27
27
|
import { loadConfig, runtime as runtime2 } from "@terai/runtime";
|
|
28
28
|
|
|
29
29
|
// ../logger/dist/index.mjs
|
|
30
|
-
import process2 from "
|
|
31
|
-
import process from "
|
|
32
|
-
import os from "
|
|
33
|
-
import tty from "
|
|
30
|
+
import process2 from "process";
|
|
31
|
+
import process from "process";
|
|
32
|
+
import os from "os";
|
|
33
|
+
import tty from "tty";
|
|
34
34
|
var ANSI_BACKGROUND_OFFSET = 10;
|
|
35
35
|
var wrapAnsi16 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
|
|
36
36
|
var wrapAnsi256 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
|
|
@@ -285,10 +285,10 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
|
|
|
285
285
|
return 1;
|
|
286
286
|
}
|
|
287
287
|
if ("CI" in env) {
|
|
288
|
-
if ("GITHUB_ACTIONS"
|
|
288
|
+
if (["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((key) => key in env)) {
|
|
289
289
|
return 3;
|
|
290
290
|
}
|
|
291
|
-
if (["TRAVIS", "
|
|
291
|
+
if (["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => sign in env) || env.CI_NAME === "codeship") {
|
|
292
292
|
return 1;
|
|
293
293
|
}
|
|
294
294
|
return min;
|
|
@@ -302,6 +302,12 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
|
|
|
302
302
|
if (env.TERM === "xterm-kitty") {
|
|
303
303
|
return 3;
|
|
304
304
|
}
|
|
305
|
+
if (env.TERM === "xterm-ghostty") {
|
|
306
|
+
return 3;
|
|
307
|
+
}
|
|
308
|
+
if (env.TERM === "wezterm") {
|
|
309
|
+
return 3;
|
|
310
|
+
}
|
|
305
311
|
if ("TERM_PROGRAM" in env) {
|
|
306
312
|
const version = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
|
|
307
313
|
switch (env.TERM_PROGRAM) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/commands/extract.ts","../../../generator/src/generate.ts","../../../logger/src/logger.ts","../../../../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/vendor/ansi-styles/index.js","../../../../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/vendor/supports-color/index.js","../../../../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/utilities.js","../../../../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/index.js"],"sourcesContent":["// Dependencies\nimport { debounce } from 'perfect-debounce'\nimport { extract } from '@terai/extractor'\nimport { generate } from '@terai/generator'\nimport { loadConfig, runtime } from '@terai/runtime'\nimport { logger } from '@terai/logger'\nimport {\n\tconvertExtractedMessagesToDictionary,\n\tstringify,\n\tgroupDictionaryByChunks\n} from '@terai/utils'\n\n// Types\nimport type { CAC } from 'cac'\nimport type { BuildManifest } from '@terai/types'\n\nexport type ExtractOptions = {\n\tcwd: string\n\tforce?: boolean\n\twatch?: boolean\n}\n\nexport function createExtractCommand(cli: CAC, cwd: string) {\n\treturn cli\n\t\t.command('extract', 'Statically extract messages from your project')\n\t\t.option('-w, --watch', 'Watch files and rebuild')\n\t\t.option('--cwd <cwd>', 'Current working directory', { default: cwd })\n\t\t.action(extractCmd)\n}\n\nexport async function extractCmd(options: ExtractOptions) {\n\tlogger.heading('extract', 'Statically extract messages from your project')\n\n\tconst done = logger.time.success()\n\n\tconst config = await loadConfig(options)\n\tconst filesPaths = runtime.fs.glob({\n\t\t...config,\n\t\tcwd: options.cwd\n\t})\n\n\tconst outDirPath = runtime.path.resolve(options.cwd, config.outDir)\n\tconst projectLocalePath = runtime.path.resolve(\n\t\toutDirPath,\n\t\tconfig.projectLocale\n\t)\n\tconst manifestPath = runtime.path.resolve(\n\t\toutDirPath,\n\t\t'.terai',\n\t\t'locale-manifest.json'\n\t)\n\n\tlogger.info('Scan:', 'Processing files...')\n\n\tasync function extractor(files = filesPaths) {\n\t\tconst extractedMessages = await extract({\n\t\t\t...config,\n\t\t\tfilesPaths: files,\n\t\t\tcwd: options.cwd\n\t\t})\n\t\tconst dictionary = convertExtractedMessagesToDictionary(extractedMessages)\n\t\tconst manifest: BuildManifest = {\n\t\t\tmessages: extractedMessages\n\t\t}\n\n\t\tconst dictionaries = groupDictionaryByChunks(\n\t\t\tdictionary,\n\t\t\tmanifest,\n\t\t\tconfig.projectLocale\n\t\t)\n\n\t\truntime.fs.remove(runtime.path.resolve(projectLocalePath))\n\n\t\tawait generate({\n\t\t\t...config,\n\t\t\tdictionaries,\n\t\t\tlocale: config.projectLocale,\n\t\t\tcwd: options.cwd\n\t\t})\n\n\t\truntime.fs.write(manifestPath, stringify(manifest))\n\n\t\treturn Object.keys(dictionary).length\n\t}\n\n\tlogger.info('Extraction:', 'Extracting messages...')\n\n\tconst msgCount = await extractor()\n\n\tdone(`Extracted ${msgCount} messages`)\n\n\tif (options.watch) {\n\t\tlogger.log('')\n\t\tlogger.info('Watch:', 'Watching files for changes...\\n')\n\t\tconst configWatcher = runtime.fs.watch({\n\t\t\t...config,\n\t\t\t...options\n\t\t})\n\n\t\tconfigWatcher.on(\n\t\t\t'change',\n\t\t\tdebounce(async () => {\n\t\t\t\tconst done = logger.time.success()\n\t\t\t\tlogger.info('Extraction:', 'Files changed, processing messages...')\n\n\t\t\t\tconst msgCount = await extractor()\n\n\t\t\t\tdone(`Extracted ${msgCount} messages`)\n\t\t\t\tlogger.log('')\n\t\t\t})\n\t\t)\n\t}\n}\n","// Dependencies\nimport { runtime } from '@terai/runtime'\nimport { stringify } from '@terai/utils'\n\n// Types\nimport type { Config, Locale, Dictionaries } from '@terai/types'\n\ntype GenerateOptions = {\n\tcwd: string\n\tlocale: Locale\n\tdictionaries: Dictionaries\n} & Pick<Config, 'outDir'>\n\nexport async function generate({\n\tdictionaries,\n\tlocale,\n\tcwd,\n\toutDir\n}: GenerateOptions) {\n\tconst folderPath = runtime.path.resolve(cwd, outDir, locale)\n\tconst output = []\n\n\tfor (const id in dictionaries) {\n\t\tconst fileDir = runtime.path.resolve(folderPath, `${id}.json`)\n\t\tconst fileContent = dictionaries[id]\n\t\tconst idOutput = stringify(fileContent)\n\n\t\truntime.fs.write(fileDir, idOutput)\n\n\t\toutput.push(idOutput)\n\t}\n\n\treturn output\n}\n","// Dependencies\nimport process from 'node:process'\nimport chalk from 'chalk'\n\nfunction log(message: string) {\n\treturn process.stdout.write(`${message}\\n`)\n}\n\nfunction logError(message: string) {\n\treturn process.stderr.write(`${message}\\n`)\n}\n\nfunction logBullet(\n\tlogger: typeof log | typeof logError,\n\tcolorizePrefix: typeof chalk,\n\tcolorizeText: typeof chalk,\n\tsymbol: string,\n\tprefix: string,\n\ttext?: string | string[]\n) {\n\tconst textParts = Array.isArray(text) ? text : [text || ''].filter(Boolean)\n\tconst formattedText = textParts\n\t\t.map((textPart) => colorizeText(textPart))\n\t\t.join('')\n\n\tlogger(\n\t\t`${' '.repeat(3)} ${colorizePrefix(symbol)} ${colorizePrefix(\n\t\t\tprefix\n\t\t)} ${formattedText}`\n\t)\n}\n\nfunction warn(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.yellow, chalk.yellow, '●', prefix, text)\n}\n\nfunction debug(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.yellow, chalk.dim, '●', prefix, text)\n}\n\nfunction info(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.cyan, chalk.dim, '◼', prefix, text)\n}\n\nfunction success(text: string) {\n\tlogBullet(log, chalk.green, chalk.dim, '✔', text)\n}\n\nfunction error(prefix: string, text?: string | string[]) {\n\tlog('')\n\tlogBullet(logError, chalk.red, chalk.red, '▲', prefix, text)\n}\n\nfunction heading(heading: string, description?: string) {\n\treturn log(\n\t\t`\\n${chalk.bgWhite(` ${chalk.whiteBright(heading)} `)} ${chalk.bold(\n\t\t\tdescription\n\t\t)}\\n`\n\t)\n}\n\nconst timing = (fn: (str: string) => any) => () => {\n\tconst start = performance.now()\n\treturn (msg: string) => {\n\t\tconst end = performance.now()\n\t\tconst ms = end - start\n\t\tfn(`${msg} ${chalk.gray(`(${ms.toFixed(2)}ms)`)}`)\n\t}\n}\n\nexport const logger = {\n\tcolors: chalk,\n\tlog,\n\theading,\n\tdebug,\n\tinfo,\n\twarn,\n\tsuccess,\n\terror,\n\ttime: {\n\t\tsuccess: timing(success),\n\t\tinfo: timing(info),\n\t\tdebug: timing(debug)\n\t}\n}\n","const ANSI_BACKGROUND_OFFSET = 10;\n\nconst wrapAnsi16 = (offset = 0) => code => `\\u001B[${code + offset}m`;\n\nconst wrapAnsi256 = (offset = 0) => code => `\\u001B[${38 + offset};5;${code}m`;\n\nconst wrapAnsi16m = (offset = 0) => (red, green, blue) => `\\u001B[${38 + offset};2;${red};${green};${blue}m`;\n\nconst styles = {\n\tmodifier: {\n\t\treset: [0, 0],\n\t\t// 21 isn't widely supported and 22 does the same thing\n\t\tbold: [1, 22],\n\t\tdim: [2, 22],\n\t\titalic: [3, 23],\n\t\tunderline: [4, 24],\n\t\toverline: [53, 55],\n\t\tinverse: [7, 27],\n\t\thidden: [8, 28],\n\t\tstrikethrough: [9, 29],\n\t},\n\tcolor: {\n\t\tblack: [30, 39],\n\t\tred: [31, 39],\n\t\tgreen: [32, 39],\n\t\tyellow: [33, 39],\n\t\tblue: [34, 39],\n\t\tmagenta: [35, 39],\n\t\tcyan: [36, 39],\n\t\twhite: [37, 39],\n\n\t\t// Bright color\n\t\tblackBright: [90, 39],\n\t\tgray: [90, 39], // Alias of `blackBright`\n\t\tgrey: [90, 39], // Alias of `blackBright`\n\t\tredBright: [91, 39],\n\t\tgreenBright: [92, 39],\n\t\tyellowBright: [93, 39],\n\t\tblueBright: [94, 39],\n\t\tmagentaBright: [95, 39],\n\t\tcyanBright: [96, 39],\n\t\twhiteBright: [97, 39],\n\t},\n\tbgColor: {\n\t\tbgBlack: [40, 49],\n\t\tbgRed: [41, 49],\n\t\tbgGreen: [42, 49],\n\t\tbgYellow: [43, 49],\n\t\tbgBlue: [44, 49],\n\t\tbgMagenta: [45, 49],\n\t\tbgCyan: [46, 49],\n\t\tbgWhite: [47, 49],\n\n\t\t// Bright color\n\t\tbgBlackBright: [100, 49],\n\t\tbgGray: [100, 49], // Alias of `bgBlackBright`\n\t\tbgGrey: [100, 49], // Alias of `bgBlackBright`\n\t\tbgRedBright: [101, 49],\n\t\tbgGreenBright: [102, 49],\n\t\tbgYellowBright: [103, 49],\n\t\tbgBlueBright: [104, 49],\n\t\tbgMagentaBright: [105, 49],\n\t\tbgCyanBright: [106, 49],\n\t\tbgWhiteBright: [107, 49],\n\t},\n};\n\nexport const modifierNames = Object.keys(styles.modifier);\nexport const foregroundColorNames = Object.keys(styles.color);\nexport const backgroundColorNames = Object.keys(styles.bgColor);\nexport const colorNames = [...foregroundColorNames, ...backgroundColorNames];\n\nfunction assembleStyles() {\n\tconst codes = new Map();\n\n\tfor (const [groupName, group] of Object.entries(styles)) {\n\t\tfor (const [styleName, style] of Object.entries(group)) {\n\t\t\tstyles[styleName] = {\n\t\t\t\topen: `\\u001B[${style[0]}m`,\n\t\t\t\tclose: `\\u001B[${style[1]}m`,\n\t\t\t};\n\n\t\t\tgroup[styleName] = styles[styleName];\n\n\t\t\tcodes.set(style[0], style[1]);\n\t\t}\n\n\t\tObject.defineProperty(styles, groupName, {\n\t\t\tvalue: group,\n\t\t\tenumerable: false,\n\t\t});\n\t}\n\n\tObject.defineProperty(styles, 'codes', {\n\t\tvalue: codes,\n\t\tenumerable: false,\n\t});\n\n\tstyles.color.close = '\\u001B[39m';\n\tstyles.bgColor.close = '\\u001B[49m';\n\n\tstyles.color.ansi = wrapAnsi16();\n\tstyles.color.ansi256 = wrapAnsi256();\n\tstyles.color.ansi16m = wrapAnsi16m();\n\tstyles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);\n\n\t// From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js\n\tObject.defineProperties(styles, {\n\t\trgbToAnsi256: {\n\t\t\tvalue(red, green, blue) {\n\t\t\t\t// We use the extended greyscale palette here, with the exception of\n\t\t\t\t// black and white. normal palette only has 4 greyscale shades.\n\t\t\t\tif (red === green && green === blue) {\n\t\t\t\t\tif (red < 8) {\n\t\t\t\t\t\treturn 16;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (red > 248) {\n\t\t\t\t\t\treturn 231;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn Math.round(((red - 8) / 247) * 24) + 232;\n\t\t\t\t}\n\n\t\t\t\treturn 16\n\t\t\t\t\t+ (36 * Math.round(red / 255 * 5))\n\t\t\t\t\t+ (6 * Math.round(green / 255 * 5))\n\t\t\t\t\t+ Math.round(blue / 255 * 5);\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToRgb: {\n\t\t\tvalue(hex) {\n\t\t\t\tconst matches = /[a-f\\d]{6}|[a-f\\d]{3}/i.exec(hex.toString(16));\n\t\t\t\tif (!matches) {\n\t\t\t\t\treturn [0, 0, 0];\n\t\t\t\t}\n\n\t\t\t\tlet [colorString] = matches;\n\n\t\t\t\tif (colorString.length === 3) {\n\t\t\t\t\tcolorString = [...colorString].map(character => character + character).join('');\n\t\t\t\t}\n\n\t\t\t\tconst integer = Number.parseInt(colorString, 16);\n\n\t\t\t\treturn [\n\t\t\t\t\t/* eslint-disable no-bitwise */\n\t\t\t\t\t(integer >> 16) & 0xFF,\n\t\t\t\t\t(integer >> 8) & 0xFF,\n\t\t\t\t\tinteger & 0xFF,\n\t\t\t\t\t/* eslint-enable no-bitwise */\n\t\t\t\t];\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi256: {\n\t\t\tvalue: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t\tansi256ToAnsi: {\n\t\t\tvalue(code) {\n\t\t\t\tif (code < 8) {\n\t\t\t\t\treturn 30 + code;\n\t\t\t\t}\n\n\t\t\t\tif (code < 16) {\n\t\t\t\t\treturn 90 + (code - 8);\n\t\t\t\t}\n\n\t\t\t\tlet red;\n\t\t\t\tlet green;\n\t\t\t\tlet blue;\n\n\t\t\t\tif (code >= 232) {\n\t\t\t\t\tred = (((code - 232) * 10) + 8) / 255;\n\t\t\t\t\tgreen = red;\n\t\t\t\t\tblue = red;\n\t\t\t\t} else {\n\t\t\t\t\tcode -= 16;\n\n\t\t\t\t\tconst remainder = code % 36;\n\n\t\t\t\t\tred = Math.floor(code / 36) / 5;\n\t\t\t\t\tgreen = Math.floor(remainder / 6) / 5;\n\t\t\t\t\tblue = (remainder % 6) / 5;\n\t\t\t\t}\n\n\t\t\t\tconst value = Math.max(red, green, blue) * 2;\n\n\t\t\t\tif (value === 0) {\n\t\t\t\t\treturn 30;\n\t\t\t\t}\n\n\t\t\t\t// eslint-disable-next-line no-bitwise\n\t\t\t\tlet result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red));\n\n\t\t\t\tif (value === 2) {\n\t\t\t\t\tresult += 60;\n\t\t\t\t}\n\n\t\t\t\treturn result;\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\trgbToAnsi: {\n\t\t\tvalue: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi: {\n\t\t\tvalue: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t});\n\n\treturn styles;\n}\n\nconst ansiStyles = assembleStyles();\n\nexport default ansiStyles;\n","import process from 'node:process';\nimport os from 'node:os';\nimport tty from 'node:tty';\n\n// From: https://github.com/sindresorhus/has-flag/blob/main/index.js\n/// function hasFlag(flag, argv = globalThis.Deno?.args ?? process.argv) {\nfunction hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : process.argv) {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n}\n\nconst {env} = process;\n\nlet flagForceColor;\nif (\n\thasFlag('no-color')\n\t|| hasFlag('no-colors')\n\t|| hasFlag('color=false')\n\t|| hasFlag('color=never')\n) {\n\tflagForceColor = 0;\n} else if (\n\thasFlag('color')\n\t|| hasFlag('colors')\n\t|| hasFlag('color=true')\n\t|| hasFlag('color=always')\n) {\n\tflagForceColor = 1;\n}\n\nfunction envForceColor() {\n\tif ('FORCE_COLOR' in env) {\n\t\tif (env.FORCE_COLOR === 'true') {\n\t\t\treturn 1;\n\t\t}\n\n\t\tif (env.FORCE_COLOR === 'false') {\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3,\n\t};\n}\n\nfunction _supportsColor(haveStream, {streamIsTTY, sniffFlags = true} = {}) {\n\tconst noFlagForceColor = envForceColor();\n\tif (noFlagForceColor !== undefined) {\n\t\tflagForceColor = noFlagForceColor;\n\t}\n\n\tconst forceColor = sniffFlags ? flagForceColor : noFlagForceColor;\n\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (sniffFlags) {\n\t\tif (hasFlag('color=16m')\n\t\t\t|| hasFlag('color=full')\n\t\t\t|| hasFlag('color=truecolor')) {\n\t\t\treturn 3;\n\t\t}\n\n\t\tif (hasFlag('color=256')) {\n\t\t\treturn 2;\n\t\t}\n\t}\n\n\t// Check for Azure DevOps pipelines.\n\t// Has to be above the `!streamIsTTY` check.\n\tif ('TF_BUILD' in env && 'AGENT_NAME' in env) {\n\t\treturn 1;\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10\n\t\t\t&& Number(osRelease[2]) >= 10_586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14_931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif ('GITHUB_ACTIONS' in env || 'GITEA_ACTIONS' in env) {\n\t\t\treturn 3;\n\t\t}\n\n\t\tif (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'BUILDKITE', 'DRONE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif (env.TERM === 'xterm-kitty') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = Number.parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app': {\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\t}\n\n\t\t\tcase 'Apple_Terminal': {\n\t\t\t\treturn 2;\n\t\t\t}\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nexport function createSupportsColor(stream, options = {}) {\n\tconst level = _supportsColor(stream, {\n\t\tstreamIsTTY: stream && stream.isTTY,\n\t\t...options,\n\t});\n\n\treturn translateLevel(level);\n}\n\nconst supportsColor = {\n\tstdout: createSupportsColor({isTTY: tty.isatty(1)}),\n\tstderr: createSupportsColor({isTTY: tty.isatty(2)}),\n};\n\nexport default supportsColor;\n","// TODO: When targeting Node.js 16, use `String.prototype.replaceAll`.\nexport function stringReplaceAll(string, substring, replacer) {\n\tlet index = string.indexOf(substring);\n\tif (index === -1) {\n\t\treturn string;\n\t}\n\n\tconst substringLength = substring.length;\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\treturnValue += string.slice(endIndex, index) + substring + replacer;\n\t\tendIndex = index + substringLength;\n\t\tindex = string.indexOf(substring, endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n\nexport function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\tconst gotCR = string[index - 1] === '\\r';\n\t\treturnValue += string.slice(endIndex, (gotCR ? index - 1 : index)) + prefix + (gotCR ? '\\r\\n' : '\\n') + postfix;\n\t\tendIndex = index + 1;\n\t\tindex = string.indexOf('\\n', endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n","import ansiStyles from '#ansi-styles';\nimport supportsColor from '#supports-color';\nimport { // eslint-disable-line import/order\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex,\n} from './utilities.js';\n\nconst {stdout: stdoutColor, stderr: stderrColor} = supportsColor;\n\nconst GENERATOR = Symbol('GENERATOR');\nconst STYLER = Symbol('STYLER');\nconst IS_EMPTY = Symbol('IS_EMPTY');\n\n// `supportsColor.level` → `ansiStyles.color[name]` mapping\nconst levelMapping = [\n\t'ansi',\n\t'ansi',\n\t'ansi256',\n\t'ansi16m',\n];\n\nconst styles = Object.create(null);\n\nconst applyOptions = (object, options = {}) => {\n\tif (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {\n\t\tthrow new Error('The `level` option should be an integer from 0 to 3');\n\t}\n\n\t// Detect level if not set manually\n\tconst colorLevel = stdoutColor ? stdoutColor.level : 0;\n\tobject.level = options.level === undefined ? colorLevel : options.level;\n};\n\nexport class Chalk {\n\tconstructor(options) {\n\t\t// eslint-disable-next-line no-constructor-return\n\t\treturn chalkFactory(options);\n\t}\n}\n\nconst chalkFactory = options => {\n\tconst chalk = (...strings) => strings.join(' ');\n\tapplyOptions(chalk, options);\n\n\tObject.setPrototypeOf(chalk, createChalk.prototype);\n\n\treturn chalk;\n};\n\nfunction createChalk(options) {\n\treturn chalkFactory(options);\n}\n\nObject.setPrototypeOf(createChalk.prototype, Function.prototype);\n\nfor (const [styleName, style] of Object.entries(ansiStyles)) {\n\tstyles[styleName] = {\n\t\tget() {\n\t\t\tconst builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);\n\t\t\tObject.defineProperty(this, styleName, {value: builder});\n\t\t\treturn builder;\n\t\t},\n\t};\n}\n\nstyles.visible = {\n\tget() {\n\t\tconst builder = createBuilder(this, this[STYLER], true);\n\t\tObject.defineProperty(this, 'visible', {value: builder});\n\t\treturn builder;\n\t},\n};\n\nconst getModelAnsi = (model, level, type, ...arguments_) => {\n\tif (model === 'rgb') {\n\t\tif (level === 'ansi16m') {\n\t\t\treturn ansiStyles[type].ansi16m(...arguments_);\n\t\t}\n\n\t\tif (level === 'ansi256') {\n\t\t\treturn ansiStyles[type].ansi256(ansiStyles.rgbToAnsi256(...arguments_));\n\t\t}\n\n\t\treturn ansiStyles[type].ansi(ansiStyles.rgbToAnsi(...arguments_));\n\t}\n\n\tif (model === 'hex') {\n\t\treturn getModelAnsi('rgb', level, type, ...ansiStyles.hexToRgb(...arguments_));\n\t}\n\n\treturn ansiStyles[type][model](...arguments_);\n};\n\nconst usedModels = ['rgb', 'hex', 'ansi256'];\n\nfor (const model of usedModels) {\n\tstyles[model] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'color', ...arguments_), ansiStyles.color.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n\n\tconst bgModel = 'bg' + model[0].toUpperCase() + model.slice(1);\n\tstyles[bgModel] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'bgColor', ...arguments_), ansiStyles.bgColor.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n}\n\nconst proto = Object.defineProperties(() => {}, {\n\t...styles,\n\tlevel: {\n\t\tenumerable: true,\n\t\tget() {\n\t\t\treturn this[GENERATOR].level;\n\t\t},\n\t\tset(level) {\n\t\t\tthis[GENERATOR].level = level;\n\t\t},\n\t},\n});\n\nconst createStyler = (open, close, parent) => {\n\tlet openAll;\n\tlet closeAll;\n\tif (parent === undefined) {\n\t\topenAll = open;\n\t\tcloseAll = close;\n\t} else {\n\t\topenAll = parent.openAll + open;\n\t\tcloseAll = close + parent.closeAll;\n\t}\n\n\treturn {\n\t\topen,\n\t\tclose,\n\t\topenAll,\n\t\tcloseAll,\n\t\tparent,\n\t};\n};\n\nconst createBuilder = (self, _styler, _isEmpty) => {\n\t// Single argument is hot path, implicit coercion is faster than anything\n\t// eslint-disable-next-line no-implicit-coercion\n\tconst builder = (...arguments_) => applyStyle(builder, (arguments_.length === 1) ? ('' + arguments_[0]) : arguments_.join(' '));\n\n\t// We alter the prototype because we must return a function, but there is\n\t// no way to create a function with a different prototype\n\tObject.setPrototypeOf(builder, proto);\n\n\tbuilder[GENERATOR] = self;\n\tbuilder[STYLER] = _styler;\n\tbuilder[IS_EMPTY] = _isEmpty;\n\n\treturn builder;\n};\n\nconst applyStyle = (self, string) => {\n\tif (self.level <= 0 || !string) {\n\t\treturn self[IS_EMPTY] ? '' : string;\n\t}\n\n\tlet styler = self[STYLER];\n\n\tif (styler === undefined) {\n\t\treturn string;\n\t}\n\n\tconst {openAll, closeAll} = styler;\n\tif (string.includes('\\u001B')) {\n\t\twhile (styler !== undefined) {\n\t\t\t// Replace any instances already present with a re-opening code\n\t\t\t// otherwise only the part of the string until said closing code\n\t\t\t// will be colored, and the rest will simply be 'plain'.\n\t\t\tstring = stringReplaceAll(string, styler.close, styler.open);\n\n\t\t\tstyler = styler.parent;\n\t\t}\n\t}\n\n\t// We can move both next actions out of loop, because remaining actions in loop won't have\n\t// any/visible effect on parts we add here. Close the styling before a linebreak and reopen\n\t// after next line to fix a bleed issue on macOS: https://github.com/chalk/chalk/pull/92\n\tconst lfIndex = string.indexOf('\\n');\n\tif (lfIndex !== -1) {\n\t\tstring = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);\n\t}\n\n\treturn openAll + string + closeAll;\n};\n\nObject.defineProperties(createChalk.prototype, styles);\n\nconst chalk = createChalk();\nexport const chalkStderr = createChalk({level: stderrColor ? stderrColor.level : 0});\n\nexport {\n\tmodifierNames,\n\tforegroundColorNames,\n\tbackgroundColorNames,\n\tcolorNames,\n\n\t// TODO: Remove these aliases in the next major version\n\tmodifierNames as modifiers,\n\tforegroundColorNames as foregroundColors,\n\tbackgroundColorNames as backgroundColors,\n\tcolorNames as colors,\n} from './vendor/ansi-styles/index.js';\n\nexport {\n\tstdoutColor as supportsColor,\n\tstderrColor as supportsColorStderr,\n};\n\nexport default chalk;\n"],"mappings":"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","names":["runtime","process","styles","chalk","logger","heading","stringify","runtime","done","msgCount"]}
|
|
1
|
+
{"version":3,"sources":["../../src/commands/extract.ts","../../../generator/src/generate.ts","../../../logger/src/logger.ts","../../../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/ansi-styles/index.js","../../../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/supports-color/index.js","../../../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/utilities.js","../../../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/index.js"],"sourcesContent":["// Dependencies\nimport { debounce } from 'perfect-debounce'\nimport { extract } from '@terai/extractor'\nimport { generate } from '@terai/generator'\nimport { loadConfig, runtime } from '@terai/runtime'\nimport { logger } from '@terai/logger'\nimport {\n\tconvertExtractedMessagesToDictionary,\n\tstringify,\n\tgroupDictionaryByChunks\n} from '@terai/utils'\n\n// Types\nimport type { CAC } from 'cac'\nimport type { BuildManifest } from '@terai/types'\n\nexport type ExtractOptions = {\n\tcwd: string\n\tforce?: boolean\n\twatch?: boolean\n}\n\nexport function createExtractCommand(cli: CAC, cwd: string) {\n\treturn cli\n\t\t.command('extract', 'Statically extract messages from your project')\n\t\t.option('-w, --watch', 'Watch files and rebuild')\n\t\t.option('--cwd <cwd>', 'Current working directory', { default: cwd })\n\t\t.action(extractCmd)\n}\n\nexport async function extractCmd(options: ExtractOptions) {\n\tlogger.heading('extract', 'Statically extract messages from your project')\n\n\tconst done = logger.time.success()\n\n\tconst config = await loadConfig(options)\n\tconst filesPaths = runtime.fs.glob({\n\t\t...config,\n\t\tcwd: options.cwd\n\t})\n\n\tconst outDirPath = runtime.path.resolve(options.cwd, config.outDir)\n\tconst projectLocalePath = runtime.path.resolve(\n\t\toutDirPath,\n\t\tconfig.projectLocale\n\t)\n\tconst manifestPath = runtime.path.resolve(\n\t\toutDirPath,\n\t\t'.terai',\n\t\t'locale-manifest.json'\n\t)\n\n\tlogger.info('Scan:', 'Processing files...')\n\n\tasync function extractor(files = filesPaths) {\n\t\tconst extractedMessages = await extract({\n\t\t\t...config,\n\t\t\tfilesPaths: files,\n\t\t\tcwd: options.cwd\n\t\t})\n\t\tconst dictionary = convertExtractedMessagesToDictionary(extractedMessages)\n\t\tconst manifest: BuildManifest = {\n\t\t\tmessages: extractedMessages\n\t\t}\n\n\t\tconst dictionaries = groupDictionaryByChunks(\n\t\t\tdictionary,\n\t\t\tmanifest,\n\t\t\tconfig.projectLocale\n\t\t)\n\n\t\truntime.fs.remove(runtime.path.resolve(projectLocalePath))\n\n\t\tawait generate({\n\t\t\t...config,\n\t\t\tdictionaries,\n\t\t\tlocale: config.projectLocale,\n\t\t\tcwd: options.cwd\n\t\t})\n\n\t\truntime.fs.write(manifestPath, stringify(manifest))\n\n\t\treturn Object.keys(dictionary).length\n\t}\n\n\tlogger.info('Extraction:', 'Extracting messages...')\n\n\tconst msgCount = await extractor()\n\n\tdone(`Extracted ${msgCount} messages`)\n\n\tif (options.watch) {\n\t\tlogger.log('')\n\t\tlogger.info('Watch:', 'Watching files for changes...\\n')\n\t\tconst configWatcher = runtime.fs.watch({\n\t\t\t...config,\n\t\t\t...options\n\t\t})\n\n\t\tconfigWatcher.on(\n\t\t\t'change',\n\t\t\tdebounce(async () => {\n\t\t\t\tconst done = logger.time.success()\n\t\t\t\tlogger.info('Extraction:', 'Files changed, processing messages...')\n\n\t\t\t\tconst msgCount = await extractor()\n\n\t\t\t\tdone(`Extracted ${msgCount} messages`)\n\t\t\t\tlogger.log('')\n\t\t\t})\n\t\t)\n\t}\n}\n","// Dependencies\nimport { runtime } from '@terai/runtime'\nimport { stringify } from '@terai/utils'\n\n// Types\nimport type { Config, Locale, Dictionaries } from '@terai/types'\n\ntype GenerateOptions = {\n\tcwd: string\n\tlocale: Locale\n\tdictionaries: Dictionaries\n} & Pick<Config, 'outDir'>\n\nexport async function generate({\n\tdictionaries,\n\tlocale,\n\tcwd,\n\toutDir\n}: GenerateOptions) {\n\tconst folderPath = runtime.path.resolve(cwd, outDir, locale)\n\tconst output = []\n\n\tfor (const id in dictionaries) {\n\t\tconst fileDir = runtime.path.resolve(folderPath, `${id}.json`)\n\t\tconst fileContent = dictionaries[id]\n\t\tconst idOutput = stringify(fileContent)\n\n\t\truntime.fs.write(fileDir, idOutput)\n\n\t\toutput.push(idOutput)\n\t}\n\n\treturn output\n}\n","// Dependencies\nimport process from 'node:process'\nimport chalk from 'chalk'\n\nfunction log(message: string) {\n\treturn process.stdout.write(`${message}\\n`)\n}\n\nfunction logError(message: string) {\n\treturn process.stderr.write(`${message}\\n`)\n}\n\nfunction logBullet(\n\tlogger: typeof log | typeof logError,\n\tcolorizePrefix: typeof chalk,\n\tcolorizeText: typeof chalk,\n\tsymbol: string,\n\tprefix: string,\n\ttext?: string | string[]\n) {\n\tconst textParts = Array.isArray(text) ? text : [text || ''].filter(Boolean)\n\tconst formattedText = textParts\n\t\t.map((textPart) => colorizeText(textPart))\n\t\t.join('')\n\n\tlogger(\n\t\t`${' '.repeat(3)} ${colorizePrefix(symbol)} ${colorizePrefix(\n\t\t\tprefix\n\t\t)} ${formattedText}`\n\t)\n}\n\nfunction warn(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.yellow, chalk.yellow, '●', prefix, text)\n}\n\nfunction debug(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.yellow, chalk.dim, '●', prefix, text)\n}\n\nfunction info(prefix: string, text?: string | string[]) {\n\tlogBullet(log, chalk.cyan, chalk.dim, '◼', prefix, text)\n}\n\nfunction success(text: string) {\n\tlogBullet(log, chalk.green, chalk.dim, '✔', text)\n}\n\nfunction error(prefix: string, text?: string | string[]) {\n\tlog('')\n\tlogBullet(logError, chalk.red, chalk.red, '▲', prefix, text)\n}\n\nfunction heading(heading: string, description?: string) {\n\treturn log(\n\t\t`\\n${chalk.bgWhite(` ${chalk.whiteBright(heading)} `)} ${chalk.bold(\n\t\t\tdescription\n\t\t)}\\n`\n\t)\n}\n\nconst timing = (fn: (str: string) => any) => () => {\n\tconst start = performance.now()\n\treturn (msg: string) => {\n\t\tconst end = performance.now()\n\t\tconst ms = end - start\n\t\tfn(`${msg} ${chalk.gray(`(${ms.toFixed(2)}ms)`)}`)\n\t}\n}\n\nexport const logger = {\n\tcolors: chalk,\n\tlog,\n\theading,\n\tdebug,\n\tinfo,\n\twarn,\n\tsuccess,\n\terror,\n\ttime: {\n\t\tsuccess: timing(success),\n\t\tinfo: timing(info),\n\t\tdebug: timing(debug)\n\t}\n}\n","const ANSI_BACKGROUND_OFFSET = 10;\n\nconst wrapAnsi16 = (offset = 0) => code => `\\u001B[${code + offset}m`;\n\nconst wrapAnsi256 = (offset = 0) => code => `\\u001B[${38 + offset};5;${code}m`;\n\nconst wrapAnsi16m = (offset = 0) => (red, green, blue) => `\\u001B[${38 + offset};2;${red};${green};${blue}m`;\n\nconst styles = {\n\tmodifier: {\n\t\treset: [0, 0],\n\t\t// 21 isn't widely supported and 22 does the same thing\n\t\tbold: [1, 22],\n\t\tdim: [2, 22],\n\t\titalic: [3, 23],\n\t\tunderline: [4, 24],\n\t\toverline: [53, 55],\n\t\tinverse: [7, 27],\n\t\thidden: [8, 28],\n\t\tstrikethrough: [9, 29],\n\t},\n\tcolor: {\n\t\tblack: [30, 39],\n\t\tred: [31, 39],\n\t\tgreen: [32, 39],\n\t\tyellow: [33, 39],\n\t\tblue: [34, 39],\n\t\tmagenta: [35, 39],\n\t\tcyan: [36, 39],\n\t\twhite: [37, 39],\n\n\t\t// Bright color\n\t\tblackBright: [90, 39],\n\t\tgray: [90, 39], // Alias of `blackBright`\n\t\tgrey: [90, 39], // Alias of `blackBright`\n\t\tredBright: [91, 39],\n\t\tgreenBright: [92, 39],\n\t\tyellowBright: [93, 39],\n\t\tblueBright: [94, 39],\n\t\tmagentaBright: [95, 39],\n\t\tcyanBright: [96, 39],\n\t\twhiteBright: [97, 39],\n\t},\n\tbgColor: {\n\t\tbgBlack: [40, 49],\n\t\tbgRed: [41, 49],\n\t\tbgGreen: [42, 49],\n\t\tbgYellow: [43, 49],\n\t\tbgBlue: [44, 49],\n\t\tbgMagenta: [45, 49],\n\t\tbgCyan: [46, 49],\n\t\tbgWhite: [47, 49],\n\n\t\t// Bright color\n\t\tbgBlackBright: [100, 49],\n\t\tbgGray: [100, 49], // Alias of `bgBlackBright`\n\t\tbgGrey: [100, 49], // Alias of `bgBlackBright`\n\t\tbgRedBright: [101, 49],\n\t\tbgGreenBright: [102, 49],\n\t\tbgYellowBright: [103, 49],\n\t\tbgBlueBright: [104, 49],\n\t\tbgMagentaBright: [105, 49],\n\t\tbgCyanBright: [106, 49],\n\t\tbgWhiteBright: [107, 49],\n\t},\n};\n\nexport const modifierNames = Object.keys(styles.modifier);\nexport const foregroundColorNames = Object.keys(styles.color);\nexport const backgroundColorNames = Object.keys(styles.bgColor);\nexport const colorNames = [...foregroundColorNames, ...backgroundColorNames];\n\nfunction assembleStyles() {\n\tconst codes = new Map();\n\n\tfor (const [groupName, group] of Object.entries(styles)) {\n\t\tfor (const [styleName, style] of Object.entries(group)) {\n\t\t\tstyles[styleName] = {\n\t\t\t\topen: `\\u001B[${style[0]}m`,\n\t\t\t\tclose: `\\u001B[${style[1]}m`,\n\t\t\t};\n\n\t\t\tgroup[styleName] = styles[styleName];\n\n\t\t\tcodes.set(style[0], style[1]);\n\t\t}\n\n\t\tObject.defineProperty(styles, groupName, {\n\t\t\tvalue: group,\n\t\t\tenumerable: false,\n\t\t});\n\t}\n\n\tObject.defineProperty(styles, 'codes', {\n\t\tvalue: codes,\n\t\tenumerable: false,\n\t});\n\n\tstyles.color.close = '\\u001B[39m';\n\tstyles.bgColor.close = '\\u001B[49m';\n\n\tstyles.color.ansi = wrapAnsi16();\n\tstyles.color.ansi256 = wrapAnsi256();\n\tstyles.color.ansi16m = wrapAnsi16m();\n\tstyles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);\n\n\t// From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js\n\tObject.defineProperties(styles, {\n\t\trgbToAnsi256: {\n\t\t\tvalue(red, green, blue) {\n\t\t\t\t// We use the extended greyscale palette here, with the exception of\n\t\t\t\t// black and white. normal palette only has 4 greyscale shades.\n\t\t\t\tif (red === green && green === blue) {\n\t\t\t\t\tif (red < 8) {\n\t\t\t\t\t\treturn 16;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (red > 248) {\n\t\t\t\t\t\treturn 231;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn Math.round(((red - 8) / 247) * 24) + 232;\n\t\t\t\t}\n\n\t\t\t\treturn 16\n\t\t\t\t\t+ (36 * Math.round(red / 255 * 5))\n\t\t\t\t\t+ (6 * Math.round(green / 255 * 5))\n\t\t\t\t\t+ Math.round(blue / 255 * 5);\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToRgb: {\n\t\t\tvalue(hex) {\n\t\t\t\tconst matches = /[a-f\\d]{6}|[a-f\\d]{3}/i.exec(hex.toString(16));\n\t\t\t\tif (!matches) {\n\t\t\t\t\treturn [0, 0, 0];\n\t\t\t\t}\n\n\t\t\t\tlet [colorString] = matches;\n\n\t\t\t\tif (colorString.length === 3) {\n\t\t\t\t\tcolorString = [...colorString].map(character => character + character).join('');\n\t\t\t\t}\n\n\t\t\t\tconst integer = Number.parseInt(colorString, 16);\n\n\t\t\t\treturn [\n\t\t\t\t\t/* eslint-disable no-bitwise */\n\t\t\t\t\t(integer >> 16) & 0xFF,\n\t\t\t\t\t(integer >> 8) & 0xFF,\n\t\t\t\t\tinteger & 0xFF,\n\t\t\t\t\t/* eslint-enable no-bitwise */\n\t\t\t\t];\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi256: {\n\t\t\tvalue: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t\tansi256ToAnsi: {\n\t\t\tvalue(code) {\n\t\t\t\tif (code < 8) {\n\t\t\t\t\treturn 30 + code;\n\t\t\t\t}\n\n\t\t\t\tif (code < 16) {\n\t\t\t\t\treturn 90 + (code - 8);\n\t\t\t\t}\n\n\t\t\t\tlet red;\n\t\t\t\tlet green;\n\t\t\t\tlet blue;\n\n\t\t\t\tif (code >= 232) {\n\t\t\t\t\tred = (((code - 232) * 10) + 8) / 255;\n\t\t\t\t\tgreen = red;\n\t\t\t\t\tblue = red;\n\t\t\t\t} else {\n\t\t\t\t\tcode -= 16;\n\n\t\t\t\t\tconst remainder = code % 36;\n\n\t\t\t\t\tred = Math.floor(code / 36) / 5;\n\t\t\t\t\tgreen = Math.floor(remainder / 6) / 5;\n\t\t\t\t\tblue = (remainder % 6) / 5;\n\t\t\t\t}\n\n\t\t\t\tconst value = Math.max(red, green, blue) * 2;\n\n\t\t\t\tif (value === 0) {\n\t\t\t\t\treturn 30;\n\t\t\t\t}\n\n\t\t\t\t// eslint-disable-next-line no-bitwise\n\t\t\t\tlet result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red));\n\n\t\t\t\tif (value === 2) {\n\t\t\t\t\tresult += 60;\n\t\t\t\t}\n\n\t\t\t\treturn result;\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\trgbToAnsi: {\n\t\t\tvalue: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi: {\n\t\t\tvalue: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t});\n\n\treturn styles;\n}\n\nconst ansiStyles = assembleStyles();\n\nexport default ansiStyles;\n","import process from 'node:process';\nimport os from 'node:os';\nimport tty from 'node:tty';\n\n// From: https://github.com/sindresorhus/has-flag/blob/main/index.js\n/// function hasFlag(flag, argv = globalThis.Deno?.args ?? process.argv) {\nfunction hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : process.argv) {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n}\n\nconst {env} = process;\n\nlet flagForceColor;\nif (\n\thasFlag('no-color')\n\t|| hasFlag('no-colors')\n\t|| hasFlag('color=false')\n\t|| hasFlag('color=never')\n) {\n\tflagForceColor = 0;\n} else if (\n\thasFlag('color')\n\t|| hasFlag('colors')\n\t|| hasFlag('color=true')\n\t|| hasFlag('color=always')\n) {\n\tflagForceColor = 1;\n}\n\nfunction envForceColor() {\n\tif ('FORCE_COLOR' in env) {\n\t\tif (env.FORCE_COLOR === 'true') {\n\t\t\treturn 1;\n\t\t}\n\n\t\tif (env.FORCE_COLOR === 'false') {\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3,\n\t};\n}\n\nfunction _supportsColor(haveStream, {streamIsTTY, sniffFlags = true} = {}) {\n\tconst noFlagForceColor = envForceColor();\n\tif (noFlagForceColor !== undefined) {\n\t\tflagForceColor = noFlagForceColor;\n\t}\n\n\tconst forceColor = sniffFlags ? flagForceColor : noFlagForceColor;\n\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (sniffFlags) {\n\t\tif (hasFlag('color=16m')\n\t\t\t|| hasFlag('color=full')\n\t\t\t|| hasFlag('color=truecolor')) {\n\t\t\treturn 3;\n\t\t}\n\n\t\tif (hasFlag('color=256')) {\n\t\t\treturn 2;\n\t\t}\n\t}\n\n\t// Check for Azure DevOps pipelines.\n\t// Has to be above the `!streamIsTTY` check.\n\tif ('TF_BUILD' in env && 'AGENT_NAME' in env) {\n\t\treturn 1;\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10\n\t\t\t&& Number(osRelease[2]) >= 10_586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14_931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif (['GITHUB_ACTIONS', 'GITEA_ACTIONS', 'CIRCLECI'].some(key => key in env)) {\n\t\t\treturn 3;\n\t\t}\n\n\t\tif (['TRAVIS', 'APPVEYOR', 'GITLAB_CI', 'BUILDKITE', 'DRONE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif (env.TERM === 'xterm-kitty') {\n\t\treturn 3;\n\t}\n\n\tif (env.TERM === 'xterm-ghostty') {\n\t\treturn 3;\n\t}\n\n\tif (env.TERM === 'wezterm') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = Number.parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app': {\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\t}\n\n\t\t\tcase 'Apple_Terminal': {\n\t\t\t\treturn 2;\n\t\t\t}\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nexport function createSupportsColor(stream, options = {}) {\n\tconst level = _supportsColor(stream, {\n\t\tstreamIsTTY: stream && stream.isTTY,\n\t\t...options,\n\t});\n\n\treturn translateLevel(level);\n}\n\nconst supportsColor = {\n\tstdout: createSupportsColor({isTTY: tty.isatty(1)}),\n\tstderr: createSupportsColor({isTTY: tty.isatty(2)}),\n};\n\nexport default supportsColor;\n","// TODO: When targeting Node.js 16, use `String.prototype.replaceAll`.\nexport function stringReplaceAll(string, substring, replacer) {\n\tlet index = string.indexOf(substring);\n\tif (index === -1) {\n\t\treturn string;\n\t}\n\n\tconst substringLength = substring.length;\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\treturnValue += string.slice(endIndex, index) + substring + replacer;\n\t\tendIndex = index + substringLength;\n\t\tindex = string.indexOf(substring, endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n\nexport function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\tconst gotCR = string[index - 1] === '\\r';\n\t\treturnValue += string.slice(endIndex, (gotCR ? index - 1 : index)) + prefix + (gotCR ? '\\r\\n' : '\\n') + postfix;\n\t\tendIndex = index + 1;\n\t\tindex = string.indexOf('\\n', endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n","import ansiStyles from '#ansi-styles';\nimport supportsColor from '#supports-color';\nimport { // eslint-disable-line import/order\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex,\n} from './utilities.js';\n\nconst {stdout: stdoutColor, stderr: stderrColor} = supportsColor;\n\nconst GENERATOR = Symbol('GENERATOR');\nconst STYLER = Symbol('STYLER');\nconst IS_EMPTY = Symbol('IS_EMPTY');\n\n// `supportsColor.level` → `ansiStyles.color[name]` mapping\nconst levelMapping = [\n\t'ansi',\n\t'ansi',\n\t'ansi256',\n\t'ansi16m',\n];\n\nconst styles = Object.create(null);\n\nconst applyOptions = (object, options = {}) => {\n\tif (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {\n\t\tthrow new Error('The `level` option should be an integer from 0 to 3');\n\t}\n\n\t// Detect level if not set manually\n\tconst colorLevel = stdoutColor ? stdoutColor.level : 0;\n\tobject.level = options.level === undefined ? colorLevel : options.level;\n};\n\nexport class Chalk {\n\tconstructor(options) {\n\t\t// eslint-disable-next-line no-constructor-return\n\t\treturn chalkFactory(options);\n\t}\n}\n\nconst chalkFactory = options => {\n\tconst chalk = (...strings) => strings.join(' ');\n\tapplyOptions(chalk, options);\n\n\tObject.setPrototypeOf(chalk, createChalk.prototype);\n\n\treturn chalk;\n};\n\nfunction createChalk(options) {\n\treturn chalkFactory(options);\n}\n\nObject.setPrototypeOf(createChalk.prototype, Function.prototype);\n\nfor (const [styleName, style] of Object.entries(ansiStyles)) {\n\tstyles[styleName] = {\n\t\tget() {\n\t\t\tconst builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);\n\t\t\tObject.defineProperty(this, styleName, {value: builder});\n\t\t\treturn builder;\n\t\t},\n\t};\n}\n\nstyles.visible = {\n\tget() {\n\t\tconst builder = createBuilder(this, this[STYLER], true);\n\t\tObject.defineProperty(this, 'visible', {value: builder});\n\t\treturn builder;\n\t},\n};\n\nconst getModelAnsi = (model, level, type, ...arguments_) => {\n\tif (model === 'rgb') {\n\t\tif (level === 'ansi16m') {\n\t\t\treturn ansiStyles[type].ansi16m(...arguments_);\n\t\t}\n\n\t\tif (level === 'ansi256') {\n\t\t\treturn ansiStyles[type].ansi256(ansiStyles.rgbToAnsi256(...arguments_));\n\t\t}\n\n\t\treturn ansiStyles[type].ansi(ansiStyles.rgbToAnsi(...arguments_));\n\t}\n\n\tif (model === 'hex') {\n\t\treturn getModelAnsi('rgb', level, type, ...ansiStyles.hexToRgb(...arguments_));\n\t}\n\n\treturn ansiStyles[type][model](...arguments_);\n};\n\nconst usedModels = ['rgb', 'hex', 'ansi256'];\n\nfor (const model of usedModels) {\n\tstyles[model] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'color', ...arguments_), ansiStyles.color.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n\n\tconst bgModel = 'bg' + model[0].toUpperCase() + model.slice(1);\n\tstyles[bgModel] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'bgColor', ...arguments_), ansiStyles.bgColor.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n}\n\nconst proto = Object.defineProperties(() => {}, {\n\t...styles,\n\tlevel: {\n\t\tenumerable: true,\n\t\tget() {\n\t\t\treturn this[GENERATOR].level;\n\t\t},\n\t\tset(level) {\n\t\t\tthis[GENERATOR].level = level;\n\t\t},\n\t},\n});\n\nconst createStyler = (open, close, parent) => {\n\tlet openAll;\n\tlet closeAll;\n\tif (parent === undefined) {\n\t\topenAll = open;\n\t\tcloseAll = close;\n\t} else {\n\t\topenAll = parent.openAll + open;\n\t\tcloseAll = close + parent.closeAll;\n\t}\n\n\treturn {\n\t\topen,\n\t\tclose,\n\t\topenAll,\n\t\tcloseAll,\n\t\tparent,\n\t};\n};\n\nconst createBuilder = (self, _styler, _isEmpty) => {\n\t// Single argument is hot path, implicit coercion is faster than anything\n\t// eslint-disable-next-line no-implicit-coercion\n\tconst builder = (...arguments_) => applyStyle(builder, (arguments_.length === 1) ? ('' + arguments_[0]) : arguments_.join(' '));\n\n\t// We alter the prototype because we must return a function, but there is\n\t// no way to create a function with a different prototype\n\tObject.setPrototypeOf(builder, proto);\n\n\tbuilder[GENERATOR] = self;\n\tbuilder[STYLER] = _styler;\n\tbuilder[IS_EMPTY] = _isEmpty;\n\n\treturn builder;\n};\n\nconst applyStyle = (self, string) => {\n\tif (self.level <= 0 || !string) {\n\t\treturn self[IS_EMPTY] ? '' : string;\n\t}\n\n\tlet styler = self[STYLER];\n\n\tif (styler === undefined) {\n\t\treturn string;\n\t}\n\n\tconst {openAll, closeAll} = styler;\n\tif (string.includes('\\u001B')) {\n\t\twhile (styler !== undefined) {\n\t\t\t// Replace any instances already present with a re-opening code\n\t\t\t// otherwise only the part of the string until said closing code\n\t\t\t// will be colored, and the rest will simply be 'plain'.\n\t\t\tstring = stringReplaceAll(string, styler.close, styler.open);\n\n\t\t\tstyler = styler.parent;\n\t\t}\n\t}\n\n\t// We can move both next actions out of loop, because remaining actions in loop won't have\n\t// any/visible effect on parts we add here. Close the styling before a linebreak and reopen\n\t// after next line to fix a bleed issue on macOS: https://github.com/chalk/chalk/pull/92\n\tconst lfIndex = string.indexOf('\\n');\n\tif (lfIndex !== -1) {\n\t\tstring = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);\n\t}\n\n\treturn openAll + string + closeAll;\n};\n\nObject.defineProperties(createChalk.prototype, styles);\n\nconst chalk = createChalk();\nexport const chalkStderr = createChalk({level: stderrColor ? stderrColor.level : 0});\n\nexport {\n\tmodifierNames,\n\tforegroundColorNames,\n\tbackgroundColorNames,\n\tcolorNames,\n\n\t// TODO: Remove these aliases in the next major version\n\tmodifierNames as modifiers,\n\tforegroundColorNames as foregroundColors,\n\tbackgroundColorNames as backgroundColors,\n\tcolorNames as colors,\n} from './vendor/ansi-styles/index.js';\n\nexport {\n\tstdoutColor as supportsColor,\n\tstderrColor as supportsColorStderr,\n};\n\nexport default chalk;\n"],"mappings":"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","names":["runtime","process","styles","chalk","logger","heading","stringify","runtime","done","msgCount"]}
|
package/dist/commands/index.js
CHANGED
|
@@ -44,10 +44,10 @@ var import_runtime = require("@terai/runtime");
|
|
|
44
44
|
var import_prompts = require("@inquirer/prompts");
|
|
45
45
|
|
|
46
46
|
// ../logger/dist/index.mjs
|
|
47
|
-
var
|
|
48
|
-
var
|
|
49
|
-
var
|
|
50
|
-
var
|
|
47
|
+
var import_process = __toESM(require("process"), 1);
|
|
48
|
+
var import_process2 = __toESM(require("process"), 1);
|
|
49
|
+
var import_os = __toESM(require("os"), 1);
|
|
50
|
+
var import_tty = __toESM(require("tty"), 1);
|
|
51
51
|
var ANSI_BACKGROUND_OFFSET = 10;
|
|
52
52
|
var wrapAnsi16 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
|
|
53
53
|
var wrapAnsi256 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
|
|
@@ -232,13 +232,13 @@ function assembleStyles() {
|
|
|
232
232
|
}
|
|
233
233
|
var ansiStyles = assembleStyles();
|
|
234
234
|
var ansi_styles_default = ansiStyles;
|
|
235
|
-
function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args :
|
|
235
|
+
function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : import_process2.default.argv) {
|
|
236
236
|
const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
|
|
237
237
|
const position = argv.indexOf(prefix + flag);
|
|
238
238
|
const terminatorPosition = argv.indexOf("--");
|
|
239
239
|
return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
|
|
240
240
|
}
|
|
241
|
-
var { env } =
|
|
241
|
+
var { env } = import_process2.default;
|
|
242
242
|
var flagForceColor;
|
|
243
243
|
if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) {
|
|
244
244
|
flagForceColor = 0;
|
|
@@ -294,18 +294,18 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
|
|
|
294
294
|
if (env.TERM === "dumb") {
|
|
295
295
|
return min;
|
|
296
296
|
}
|
|
297
|
-
if (
|
|
298
|
-
const osRelease =
|
|
297
|
+
if (import_process2.default.platform === "win32") {
|
|
298
|
+
const osRelease = import_os.default.release().split(".");
|
|
299
299
|
if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
|
|
300
300
|
return Number(osRelease[2]) >= 14931 ? 3 : 2;
|
|
301
301
|
}
|
|
302
302
|
return 1;
|
|
303
303
|
}
|
|
304
304
|
if ("CI" in env) {
|
|
305
|
-
if ("GITHUB_ACTIONS"
|
|
305
|
+
if (["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((key) => key in env)) {
|
|
306
306
|
return 3;
|
|
307
307
|
}
|
|
308
|
-
if (["TRAVIS", "
|
|
308
|
+
if (["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => sign in env) || env.CI_NAME === "codeship") {
|
|
309
309
|
return 1;
|
|
310
310
|
}
|
|
311
311
|
return min;
|
|
@@ -319,6 +319,12 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
|
|
|
319
319
|
if (env.TERM === "xterm-kitty") {
|
|
320
320
|
return 3;
|
|
321
321
|
}
|
|
322
|
+
if (env.TERM === "xterm-ghostty") {
|
|
323
|
+
return 3;
|
|
324
|
+
}
|
|
325
|
+
if (env.TERM === "wezterm") {
|
|
326
|
+
return 3;
|
|
327
|
+
}
|
|
322
328
|
if ("TERM_PROGRAM" in env) {
|
|
323
329
|
const version = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
|
|
324
330
|
switch (env.TERM_PROGRAM) {
|
|
@@ -349,8 +355,8 @@ function createSupportsColor(stream, options = {}) {
|
|
|
349
355
|
return translateLevel(level);
|
|
350
356
|
}
|
|
351
357
|
var supportsColor = {
|
|
352
|
-
stdout: createSupportsColor({ isTTY:
|
|
353
|
-
stderr: createSupportsColor({ isTTY:
|
|
358
|
+
stdout: createSupportsColor({ isTTY: import_tty.default.isatty(1) }),
|
|
359
|
+
stderr: createSupportsColor({ isTTY: import_tty.default.isatty(2) })
|
|
354
360
|
};
|
|
355
361
|
var supports_color_default = supportsColor;
|
|
356
362
|
function stringReplaceAll(string, substring, replacer) {
|
|
@@ -527,11 +533,11 @@ var chalk = createChalk();
|
|
|
527
533
|
var chalkStderr = createChalk({ level: stderrColor ? stderrColor.level : 0 });
|
|
528
534
|
var source_default = chalk;
|
|
529
535
|
function log(message) {
|
|
530
|
-
return
|
|
536
|
+
return import_process.default.stdout.write(`${message}
|
|
531
537
|
`);
|
|
532
538
|
}
|
|
533
539
|
function logError(message) {
|
|
534
|
-
return
|
|
540
|
+
return import_process.default.stderr.write(`${message}
|
|
535
541
|
`);
|
|
536
542
|
}
|
|
537
543
|
function logBullet(logger2, colorizePrefix, colorizeText, symbol, prefix, text) {
|