@the-i18n-kit/cli 5.0.0 → 7.0.0

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.
Files changed (96) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +8 -58
  3. package/dist/bin.js +1 -6
  4. package/dist/bin.js.map +1 -1
  5. package/dist/{_shared-DFyy3sh8.js → cli-waEjbUM1.js} +157 -27
  6. package/dist/cli-waEjbUM1.js.map +1 -0
  7. package/dist/config/framework/stubs/{next-intl-routing-Cwaa3f4R.d.ts → next-intl-routing-i6Mlxwdt.d.ts} +1 -1
  8. package/dist/config/framework/stubs/{next-intl-routing-Cwaa3f4R.d.ts.map → next-intl-routing-i6Mlxwdt.d.ts.map} +1 -1
  9. package/dist/{define-config-BaZ1dZph.d.ts → define-config-ChY3jk6K.d.ts} +26 -4
  10. package/dist/define-config-ChY3jk6K.d.ts.map +1 -0
  11. package/dist/{define-config-CLgKN-7N.d.ts → define-config-e0B0VHq7.d.ts} +1 -1
  12. package/dist/define-config.d.ts +1 -1
  13. package/dist/descriptors-10sgyqEs.js +1225 -0
  14. package/dist/descriptors-10sgyqEs.js.map +1 -0
  15. package/dist/detector-BJTkyhQ0.js +5 -0
  16. package/dist/detector-DtFY4qm3.js +2189 -0
  17. package/dist/detector-DtFY4qm3.js.map +1 -0
  18. package/dist/{index-DCG3dOdC.d.ts → index-CdjJ71Ag.d.ts} +665 -250
  19. package/dist/index-CdjJ71Ag.d.ts.map +1 -0
  20. package/dist/index.d.ts +1 -1
  21. package/dist/index.js +8 -5
  22. package/dist/json-writer-D0b6vEax.js +2 -0
  23. package/dist/json-writer-ek8yEI5R.js +342 -0
  24. package/dist/json-writer-ek8yEI5R.js.map +1 -0
  25. package/dist/{operations-CTo44gPu.js → operations-CNqEBD__.js} +1505 -3285
  26. package/dist/operations-CNqEBD__.js.map +1 -0
  27. package/dist/operations-D7IMu_xY.js +8 -0
  28. package/dist/php-reader-BGx6Ii2d.js +2 -0
  29. package/dist/{php-reader-3Fgw80zK.js → php-reader-DRpcRVzv.js} +6 -3
  30. package/dist/{php-reader-3Fgw80zK.js.map → php-reader-DRpcRVzv.js.map} +1 -1
  31. package/dist/{providers-CHE2ffi6.js → project-config-C3ao4Uii.js} +24 -214
  32. package/dist/project-config-C3ao4Uii.js.map +1 -0
  33. package/dist/providers-BbVPelvp.js +406 -0
  34. package/dist/providers-BbVPelvp.js.map +1 -0
  35. package/dist/report-By1-5JtO.js +37 -0
  36. package/dist/report-By1-5JtO.js.map +1 -0
  37. package/dist/report-CHZgH9Wy.js +2 -0
  38. package/package.json +11 -23
  39. package/dist/_shared-DFyy3sh8.js.map +0 -1
  40. package/dist/add-C-qs8iBa.js +0 -40
  41. package/dist/add-C-qs8iBa.js.map +0 -1
  42. package/dist/check-BI1orjXb.js +0 -41
  43. package/dist/check-BI1orjXb.js.map +0 -1
  44. package/dist/cli-DsFuVJNP.js +0 -74
  45. package/dist/cli-DsFuVJNP.js.map +0 -1
  46. package/dist/config/framework/stubs/unplugin-vue-i18n-1ud7-Ly8.d.ts +0 -25
  47. package/dist/config/framework/stubs/unplugin-vue-i18n-1ud7-Ly8.d.ts.map +0 -1
  48. package/dist/config/framework/stubs/unplugin-vue-i18n.js +0 -26
  49. package/dist/config/framework/stubs/unplugin-vue-i18n.js.map +0 -1
  50. package/dist/define-config-BaZ1dZph.d.ts.map +0 -1
  51. package/dist/detect-7cVfsNJP.js +0 -17
  52. package/dist/detect-7cVfsNJP.js.map +0 -1
  53. package/dist/empty-DB8Hl_8u.js +0 -36
  54. package/dist/empty-DB8Hl_8u.js.map +0 -1
  55. package/dist/find-duplicates-CmEqBfby.js +0 -42
  56. package/dist/find-duplicates-CmEqBfby.js.map +0 -1
  57. package/dist/get-BE21Iy6N.js +0 -41
  58. package/dist/get-BE21Iy6N.js.map +0 -1
  59. package/dist/index-DCG3dOdC.d.ts.map +0 -1
  60. package/dist/init-BtzmhsOM.js +0 -33
  61. package/dist/init-BtzmhsOM.js.map +0 -1
  62. package/dist/list-dirs-DUQbwvlE.js +0 -17
  63. package/dist/list-dirs-DUQbwvlE.js.map +0 -1
  64. package/dist/missing-CcYrgd54.js +0 -51
  65. package/dist/missing-CcYrgd54.js.map +0 -1
  66. package/dist/move-B2px6Ck-.js +0 -50
  67. package/dist/move-B2px6Ck-.js.map +0 -1
  68. package/dist/operations-CTo44gPu.js.map +0 -1
  69. package/dist/php-reader-CpnaPSpZ.js +0 -2
  70. package/dist/providers-CHE2ffi6.js.map +0 -1
  71. package/dist/remove-DTbqM4bR.js +0 -41
  72. package/dist/remove-DTbqM4bR.js.map +0 -1
  73. package/dist/remove-orphans-Dfzu7hRz.js +0 -57
  74. package/dist/remove-orphans-Dfzu7hRz.js.map +0 -1
  75. package/dist/rename-C_rFKkU4.js +0 -45
  76. package/dist/rename-C_rFKkU4.js.map +0 -1
  77. package/dist/rename-notice-BV8HNX3O.js +0 -25
  78. package/dist/rename-notice-BV8HNX3O.js.map +0 -1
  79. package/dist/rename-notice-Cx1vuTRz.js +0 -2
  80. package/dist/scaffold-CUimlNqR.js +0 -39
  81. package/dist/scaffold-CUimlNqR.js.map +0 -1
  82. package/dist/scan-BkOIYhjZ.js +0 -31
  83. package/dist/scan-BkOIYhjZ.js.map +0 -1
  84. package/dist/search-0io1BcsY.js +0 -49
  85. package/dist/search-0io1BcsY.js.map +0 -1
  86. package/dist/status-Bp-SzjTN.js +0 -45
  87. package/dist/status-Bp-SzjTN.js.map +0 -1
  88. package/dist/translate-cCb2Z57w.js +0 -92
  89. package/dist/translate-cCb2Z57w.js.map +0 -1
  90. package/dist/translate-key-DHLWEmrA.js +0 -73
  91. package/dist/translate-key-DHLWEmrA.js.map +0 -1
  92. package/dist/update-DV4ijRVB.js +0 -40
  93. package/dist/update-DV4ijRVB.js.map +0 -1
  94. package/dist/write-Czzm_Nb0.js +0 -47
  95. package/dist/write-Czzm_Nb0.js.map +0 -1
  96. /package/dist/{bin-DrKRgnr9.d.ts → bin-NyzIHE2F.d.ts} +0 -0
@@ -1,73 +0,0 @@
1
- import "./stdout-guard-sJHFWVem.js";
2
- import { j as translateKey } from "./operations-CTo44gPu.js";
3
- import "./providers-CHE2ffi6.js";
4
- import "./php-reader-3Fgw80zK.js";
5
- import { a as resolveProviderTranslateFn, i as providerArgs, o as splitList, t as createCommand } from "./_shared-DFyy3sh8.js";
6
- //#region src/commands/translate-key.ts
7
- var translate_key_default = createCommand({
8
- name: "translate-key",
9
- description: "Translate a single key from a source locale into target locales. Supports LLM translation with --provider.",
10
- args: {
11
- layer: {
12
- type: "string",
13
- description: "Layer name",
14
- required: true
15
- },
16
- key: {
17
- type: "string",
18
- description: "Dot-separated translation key",
19
- required: true
20
- },
21
- sourceLocale: {
22
- type: "string",
23
- description: "Source locale code/language/file",
24
- required: true
25
- },
26
- sourceValue: {
27
- type: "string",
28
- description: "Optional source value to write before translating"
29
- },
30
- targets: {
31
- type: "string",
32
- description: "Comma-separated target locales, or \"all\"/omitted for all except source"
33
- },
34
- overwrite: {
35
- type: "boolean",
36
- description: "Overwrite existing target translations (default true)",
37
- default: true
38
- },
39
- dryRun: {
40
- type: "boolean",
41
- description: "Preview without writing or translating",
42
- default: false
43
- },
44
- includePreview: {
45
- type: "boolean",
46
- description: "Include translated values in output",
47
- default: false
48
- },
49
- ...providerArgs
50
- },
51
- async run(args) {
52
- const targetLocales = args.targets === "all" ? "all" : splitList(args.targets);
53
- const translateFn = await resolveProviderTranslateFn(args);
54
- const result = await translateKey({
55
- layer: args.layer,
56
- key: args.key,
57
- sourceLocale: args.sourceLocale,
58
- sourceValue: args.sourceValue,
59
- targetLocales,
60
- overwrite: args.overwrite,
61
- dryRun: args.dryRun,
62
- includePreview: args.includePreview,
63
- projectDir: args.projectDir,
64
- translateFn
65
- });
66
- if (result.mode === "agent" && result.skipped.some((s) => s.reason === "no-provider")) result.message = "No provider configured — nothing was translated. Pass --provider and --model (API key via --apiKey or the OPENAI_API_KEY / ANTHROPIC_API_KEY / GEMINI_API_KEY env vars) to translate automatically.";
67
- return result;
68
- }
69
- });
70
- //#endregion
71
- export { translate_key_default as default };
72
-
73
- //# sourceMappingURL=translate-key-DHLWEmrA.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"translate-key-DHLWEmrA.js","names":[],"sources":["../src/commands/translate-key.ts"],"sourcesContent":["import { createCommand, splitList, providerArgs, resolveProviderTranslateFn } from './_shared.js'\nimport { translateKey } from '../core/operations.js'\n\nexport default createCommand({\n name: 'translate-key',\n description: 'Translate a single key from a source locale into target locales. Supports LLM translation with --provider.',\n args: {\n layer: { type: 'string', description: 'Layer name', required: true },\n key: { type: 'string', description: 'Dot-separated translation key', required: true },\n sourceLocale: { type: 'string', description: 'Source locale code/language/file', required: true },\n sourceValue: { type: 'string', description: 'Optional source value to write before translating' },\n targets: { type: 'string', description: 'Comma-separated target locales, or \"all\"/omitted for all except source' },\n overwrite: { type: 'boolean', description: 'Overwrite existing target translations (default true)', default: true },\n dryRun: { type: 'boolean', description: 'Preview without writing or translating', default: false },\n includePreview: { type: 'boolean', description: 'Include translated values in output', default: false },\n ...providerArgs,\n },\n async run(args) {\n const targetLocales = args.targets === 'all' ? 'all' : splitList(args.targets)\n\n const translateFn = await resolveProviderTranslateFn(args)\n\n const result = await translateKey({\n layer: args.layer,\n key: args.key,\n sourceLocale: args.sourceLocale,\n sourceValue: args.sourceValue,\n targetLocales,\n overwrite: args.overwrite,\n dryRun: args.dryRun,\n includePreview: args.includePreview,\n projectDir: args.projectDir,\n translateFn,\n })\n\n // CLI-owned guidance: agent mode here just means no provider was given\n if (result.mode === 'agent' && result.skipped.some(s => s.reason === 'no-provider')) {\n result.message = 'No provider configured — nothing was translated. Pass --provider and --model '\n + '(API key via --apiKey or the OPENAI_API_KEY / ANTHROPIC_API_KEY / GEMINI_API_KEY env vars) '\n + 'to translate automatically.'\n }\n return result\n },\n})\n"],"mappings":";;;;;;AAGA,IAAA,wBAAe,cAAc;CAC3B,MAAM;CACN,aAAa;CACb,MAAM;EACJ,OAAO;GAAE,MAAM;GAAU,aAAa;GAAc,UAAU;GAAM;EACpE,KAAK;GAAE,MAAM;GAAU,aAAa;GAAiC,UAAU;GAAM;EACrF,cAAc;GAAE,MAAM;GAAU,aAAa;GAAoC,UAAU;GAAM;EACjG,aAAa;GAAE,MAAM;GAAU,aAAa;GAAqD;EACjG,SAAS;GAAE,MAAM;GAAU,aAAa;GAA0E;EAClH,WAAW;GAAE,MAAM;GAAW,aAAa;GAAyD,SAAS;GAAM;EACnH,QAAQ;GAAE,MAAM;GAAW,aAAa;GAA0C,SAAS;GAAO;EAClG,gBAAgB;GAAE,MAAM;GAAW,aAAa;GAAuC,SAAS;GAAO;EACvG,GAAG;EACJ;CACD,MAAM,IAAI,MAAM;EACd,MAAM,gBAAgB,KAAK,YAAY,QAAQ,QAAQ,UAAU,KAAK,QAAQ;EAE9E,MAAM,cAAc,MAAM,2BAA2B,KAAK;EAE1D,MAAM,SAAS,MAAM,aAAa;GAChC,OAAO,KAAK;GACZ,KAAK,KAAK;GACV,cAAc,KAAK;GACnB,aAAa,KAAK;GAClB;GACA,WAAW,KAAK;GAChB,QAAQ,KAAK;GACb,gBAAgB,KAAK;GACrB,YAAY,KAAK;GACjB;GACD,CAAC;AAGF,MAAI,OAAO,SAAS,WAAW,OAAO,QAAQ,MAAK,MAAK,EAAE,WAAW,cAAc,CACjF,QAAO,UAAU;AAInB,SAAO;;CAEV,CAAC"}
@@ -1,40 +0,0 @@
1
- import "./stdout-guard-sJHFWVem.js";
2
- import { p as updateTranslations } from "./operations-CTo44gPu.js";
3
- import "./providers-CHE2ffi6.js";
4
- import "./php-reader-3Fgw80zK.js";
5
- import { r as parseJsonArg, t as createCommand } from "./_shared-DFyy3sh8.js";
6
- //#region src/commands/update.ts
7
- var update_default = createCommand({
8
- name: "update",
9
- description: "Update existing translation keys (skips keys that do not exist)",
10
- args: {
11
- layer: {
12
- type: "string",
13
- description: "Layer name",
14
- required: true
15
- },
16
- translations: {
17
- type: "string",
18
- description: "JSON: { \"key\": { \"en\": \"val\", \"de\": \"val\" } }",
19
- required: true
20
- },
21
- dryRun: {
22
- type: "boolean",
23
- description: "Preview changes without writing",
24
- default: false
25
- }
26
- },
27
- async run(args) {
28
- const translations = parseJsonArg(args.translations, "translations");
29
- return updateTranslations({
30
- layer: args.layer,
31
- translations,
32
- dryRun: args.dryRun,
33
- projectDir: args.projectDir
34
- });
35
- }
36
- });
37
- //#endregion
38
- export { update_default as default };
39
-
40
- //# sourceMappingURL=update-DV4ijRVB.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"update-DV4ijRVB.js","names":[],"sources":["../src/commands/update.ts"],"sourcesContent":["import { createCommand, parseJsonArg } from './_shared.js'\nimport { updateTranslations } from '../core/operations.js'\n\nexport default createCommand({\n name: 'update',\n description: 'Update existing translation keys (skips keys that do not exist)',\n args: {\n layer: { type: 'string', description: 'Layer name', required: true },\n translations: { type: 'string', description: 'JSON: { \"key\": { \"en\": \"val\", \"de\": \"val\" } }', required: true },\n dryRun: { type: 'boolean', description: 'Preview changes without writing', default: false },\n },\n async run(args) {\n const translations = parseJsonArg<Record<string, Record<string, string>>>(args.translations, 'translations')\n return updateTranslations({ layer: args.layer, translations, dryRun: args.dryRun, projectDir: args.projectDir })\n },\n})\n"],"mappings":";;;;;;AAGA,IAAA,iBAAe,cAAc;CAC3B,MAAM;CACN,aAAa;CACb,MAAM;EACJ,OAAO;GAAE,MAAM;GAAU,aAAa;GAAc,UAAU;GAAM;EACpE,cAAc;GAAE,MAAM;GAAU,aAAa;GAAiD,UAAU;GAAM;EAC9G,QAAQ;GAAE,MAAM;GAAW,aAAa;GAAmC,SAAS;GAAO;EAC5F;CACD,MAAM,IAAI,MAAM;EACd,MAAM,eAAe,aAAqD,KAAK,cAAc,eAAe;AAC5G,SAAO,mBAAmB;GAAE,OAAO,KAAK;GAAO;GAAc,QAAQ,KAAK;GAAQ,YAAY,KAAK;GAAY,CAAC;;CAEnH,CAAC"}
@@ -1,47 +0,0 @@
1
- import "./stdout-guard-sJHFWVem.js";
2
- import { m as writeTranslations } from "./operations-CTo44gPu.js";
3
- import "./providers-CHE2ffi6.js";
4
- import "./php-reader-3Fgw80zK.js";
5
- import { r as parseJsonArg, t as createCommand } from "./_shared-DFyy3sh8.js";
6
- //#region src/commands/write.ts
7
- var write_default = createCommand({
8
- name: "write",
9
- description: "Write translation keys (add/update/upsert). Default mode: upsert.",
10
- args: {
11
- layer: {
12
- type: "string",
13
- description: "Layer name",
14
- required: true
15
- },
16
- translations: {
17
- type: "string",
18
- description: "JSON: { \"key\": { \"en\": \"val\", \"de\": \"val\" } }",
19
- required: true
20
- },
21
- mode: {
22
- type: "string",
23
- description: "Write mode: add | update | upsert (default: upsert)",
24
- default: "upsert"
25
- },
26
- dryRun: {
27
- type: "boolean",
28
- description: "Preview changes without writing",
29
- default: false
30
- }
31
- },
32
- async run(args) {
33
- const translations = parseJsonArg(args.translations, "translations");
34
- const mode = args.mode;
35
- return writeTranslations({
36
- layer: args.layer,
37
- translations,
38
- mode,
39
- dryRun: args.dryRun,
40
- projectDir: args.projectDir
41
- });
42
- }
43
- });
44
- //#endregion
45
- export { write_default as default };
46
-
47
- //# sourceMappingURL=write-Czzm_Nb0.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"write-Czzm_Nb0.js","names":[],"sources":["../src/commands/write.ts"],"sourcesContent":["import { createCommand, parseJsonArg } from './_shared.js'\nimport { writeTranslations } from '../core/operations.js'\n\nexport default createCommand({\n name: 'write',\n description: 'Write translation keys (add/update/upsert). Default mode: upsert.',\n args: {\n layer: { type: 'string', description: 'Layer name', required: true },\n translations: { type: 'string', description: 'JSON: { \"key\": { \"en\": \"val\", \"de\": \"val\" } }', required: true },\n mode: { type: 'string', description: 'Write mode: add | update | upsert (default: upsert)', default: 'upsert' },\n dryRun: { type: 'boolean', description: 'Preview changes without writing', default: false },\n },\n async run(args) {\n const translations = parseJsonArg<Record<string, Record<string, string>>>(args.translations, 'translations')\n const mode = args.mode as 'add' | 'update' | 'upsert'\n return writeTranslations({ layer: args.layer, translations, mode, dryRun: args.dryRun, projectDir: args.projectDir })\n },\n})\n"],"mappings":";;;;;;AAGA,IAAA,gBAAe,cAAc;CAC3B,MAAM;CACN,aAAa;CACb,MAAM;EACJ,OAAO;GAAE,MAAM;GAAU,aAAa;GAAc,UAAU;GAAM;EACpE,cAAc;GAAE,MAAM;GAAU,aAAa;GAAiD,UAAU;GAAM;EAC9G,MAAM;GAAE,MAAM;GAAU,aAAa;GAAuD,SAAS;GAAU;EAC/G,QAAQ;GAAE,MAAM;GAAW,aAAa;GAAmC,SAAS;GAAO;EAC5F;CACD,MAAM,IAAI,MAAM;EACd,MAAM,eAAe,aAAqD,KAAK,cAAc,eAAe;EAC5G,MAAM,OAAO,KAAK;AAClB,SAAO,kBAAkB;GAAE,OAAO,KAAK;GAAO;GAAc;GAAM,QAAQ,KAAK;GAAQ,YAAY,KAAK;GAAY,CAAC;;CAExH,CAAC"}
File without changes