@scoutello/i18n-magic 0.57.3 → 0.57.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"sync-locales.d.ts","sourceRoot":"","sources":["../../src/commands/sync-locales.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAepD,eAAO,MAAM,WAAW,GAAU,QAAQ,aAAa,kBA4TtD,CAAA"}
1
+ {"version":3,"file":"sync-locales.d.ts","sourceRoot":"","sources":["../../src/commands/sync-locales.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAepD,eAAO,MAAM,WAAW,GAAU,QAAQ,aAAa,kBA+WtD,CAAA"}
@@ -14,46 +14,28 @@ export const syncLocales = async (config) => {
14
14
  console.log(chalk.dim(` Default locale: ${chalk.white(getLanguageLabel(defaultLocale))}`));
15
15
  console.log(chalk.dim(` Namespaces: ${chalk.white(namespaces.join(", "))}`));
16
16
  console.log(chalk.dim(` Target languages: ${chalk.white(localesToProcess.length)}\n`));
17
- // Create multi-bar container
18
- const multibar = new cliProgress.MultiBar({
19
- clearOnComplete: false,
20
- hideCursor: true,
21
- format: (options, params, payload) => {
22
- const lang = payload.language || "unknown";
23
- const status = payload.status || "";
24
- const bar = options.barCompleteString?.substring(0, Math.round(params.progress * options.barsize)) || "";
25
- const emptyBar = options.barIncompleteString?.substring(0, options.barsize - bar.length) || "";
26
- // Color the bar based on progress
27
- let coloredBar;
28
- if (params.progress >= 1) {
29
- coloredBar = chalk.green(bar) + chalk.gray(emptyBar);
30
- }
31
- else if (params.progress >= 0.5) {
32
- coloredBar = chalk.yellow(bar) + chalk.gray(emptyBar);
33
- }
34
- else {
35
- coloredBar = chalk.cyan(bar) + chalk.gray(emptyBar);
36
- }
37
- const percentage = Math.round(params.progress * 100);
38
- const paddedLang = lang.padEnd(12);
39
- const paddedStatus = status.padEnd(20);
40
- return ` ${chalk.white(paddedLang)} ${coloredBar} ${chalk.dim(percentage.toString().padStart(3))}% ${chalk.dim(paddedStatus)}`;
41
- },
42
- barCompleteChar: "█",
43
- barIncompleteChar: "░",
44
- barsize: 25,
45
- }, cliProgress.Presets.shades_classic);
46
- // Create a progress bar for each locale
47
- const progressBars = {};
48
- const localeStats = {};
17
+ // Track results for each locale
18
+ const localeResults = {};
49
19
  for (const locale of localesToProcess) {
50
- const langLabel = getLanguageLabel(locale);
51
- progressBars[locale] = multibar.create(100, 0, {
52
- language: langLabel,
53
- status: "Waiting...",
54
- });
55
- localeStats[locale] = { missing: 0, reused: 0, translated: 0 };
20
+ localeResults[locale] = { status: "pending", translated: 0, reused: 0 };
56
21
  }
22
+ // Create a single progress bar for overall progress
23
+ const progressBar = new cliProgress.SingleBar({
24
+ format: ` {bar} {percentage}% | {current}/{total} | {lang} {status}`,
25
+ barCompleteChar: chalk.green("█"),
26
+ barIncompleteChar: chalk.gray("░"),
27
+ hideCursor: true,
28
+ clearOnComplete: false,
29
+ barsize: 30,
30
+ }, cliProgress.Presets.shades_classic);
31
+ progressBar.start(localesToProcess.length, 0, {
32
+ status: "",
33
+ current: 0,
34
+ lang: ""
35
+ });
36
+ // Suppress console.log during progress bar display
37
+ const originalConsoleLog = console.log;
38
+ const suppressedLog = () => { };
57
39
  try {
58
40
  // Helper to ensure a locale/namespace file exists before we add keys
59
41
  const ensureLocaleNamespaceFile = async (locale, namespace) => {
@@ -68,16 +50,22 @@ export const syncLocales = async (config) => {
68
50
  };
69
51
  // Ensure all default-locale namespace files exist first
70
52
  await Promise.all(namespaces.map((namespace) => ensureLocaleNamespaceFile(defaultLocale, namespace)));
71
- // Process all non-default locales in parallel
72
- await Promise.all(localesToProcess.map(async (locale) => {
73
- const bar = progressBars[locale];
74
- const stats = localeStats[locale];
53
+ // Process locales sequentially for clean output
54
+ let completedCount = 0;
55
+ for (const locale of localesToProcess) {
56
+ const langLabel = getLanguageLabel(locale);
57
+ const shortLang = langLabel.substring(0, 10).padEnd(10);
58
+ localeResults[locale].status = "processing";
59
+ progressBar.update(completedCount, {
60
+ status: "loading...",
61
+ current: completedCount,
62
+ lang: shortLang
63
+ });
64
+ // Suppress logs during file operations
65
+ console.log = suppressedLog;
75
66
  try {
76
- // Stage 1: Loading (0-20%)
77
- bar.update(5, { status: "Loading files..." });
78
- // Ensure all namespace files for this locale exist before filling keys
67
+ // Ensure all namespace files for this locale exist
79
68
  await Promise.all(namespaces.map((namespace) => ensureLocaleNamespaceFile(locale, namespace)));
80
- bar.update(10, { status: "Analyzing keys..." });
81
69
  // Collect all missing keys for this locale across all namespaces
82
70
  const allMissingKeys = {};
83
71
  const namespaceKeys = {};
@@ -91,20 +79,16 @@ export const syncLocales = async (config) => {
91
79
  localeKeys,
92
80
  };
93
81
  }));
94
- bar.update(20, { status: "Finding missing..." });
95
82
  // Process results and collect missing keys
96
83
  for (const result of namespaceResults) {
97
84
  const { namespace, defaultLocaleKeys, localeKeys } = result;
98
85
  namespaceKeys[namespace] = localeKeys;
99
- // Check which keys from default locale are missing in current locale
100
86
  for (const [key, value] of Object.entries(defaultLocaleKeys)) {
101
87
  if (!localeKeys[key]) {
102
88
  if (allMissingKeys[key]) {
103
- // Key already exists, add this namespace to the list
104
89
  allMissingKeys[key].namespaces.push(namespace);
105
90
  }
106
91
  else {
107
- // New missing key
108
92
  allMissingKeys[key] = {
109
93
  value,
110
94
  namespaces: [namespace],
@@ -114,33 +98,39 @@ export const syncLocales = async (config) => {
114
98
  }
115
99
  }
116
100
  const missingKeysList = Object.keys(allMissingKeys);
117
- stats.missing = missingKeysList.length;
118
101
  if (missingKeysList.length === 0) {
119
- bar.update(100, { status: chalk.green("✓ Up to date") });
120
- return;
102
+ localeResults[locale].status = "done";
103
+ completedCount++;
104
+ progressBar.update(completedCount, {
105
+ status: chalk.green("✓ up to date"),
106
+ current: completedCount,
107
+ lang: shortLang
108
+ });
109
+ continue;
121
110
  }
122
- // Stage 2: Check for existing translations (20-40%)
123
- bar.update(25, { status: `Checking ${missingKeysList.length} keys...` });
111
+ // Check for existing translations
112
+ progressBar.update(completedCount, {
113
+ status: `checking ${missingKeysList.length} keys...`,
114
+ current: completedCount,
115
+ lang: shortLang
116
+ });
124
117
  const keysToTranslate = {};
125
118
  const existingTranslations = {};
126
119
  const existingTranslationResults = await findExistingTranslations(missingKeysList, namespaces, locale, loadPath, { silent: true });
127
- bar.update(40, { status: "Processing results..." });
128
120
  for (const key of missingKeysList) {
129
121
  const existingValue = existingTranslationResults[key];
130
- // Use explicit null check instead of truthy check to handle empty string values
131
122
  if (existingValue !== null) {
132
123
  existingTranslations[key] = existingValue;
133
- stats.reused++;
124
+ localeResults[locale].reused++;
134
125
  }
135
126
  else {
136
127
  keysToTranslate[key] = allMissingKeys[key].value;
137
128
  }
138
129
  }
139
130
  let translatedValues = {};
140
- // Stage 3: Translate (40-80%)
131
+ // Translate if needed
141
132
  if (Object.keys(keysToTranslate).length > 0) {
142
133
  const keysCount = Object.keys(keysToTranslate).length;
143
- bar.update(45, { status: `Translating ${keysCount} keys...` });
144
134
  try {
145
135
  translatedValues = await translateKey({
146
136
  inputLanguage: defaultLocale,
@@ -149,19 +139,37 @@ export const syncLocales = async (config) => {
149
139
  object: keysToTranslate,
150
140
  openai,
151
141
  model: config.model,
142
+ onProgress: (completed, total) => {
143
+ const percent = Math.round((completed / total) * 100);
144
+ progressBar.update(completedCount, {
145
+ status: `translating ${completed}/${total} (${percent}%)`,
146
+ current: completedCount,
147
+ lang: shortLang
148
+ });
149
+ }
152
150
  });
153
- stats.translated = Object.keys(translatedValues).length;
151
+ localeResults[locale].translated = Object.keys(translatedValues).length;
154
152
  }
155
153
  catch (error) {
156
- bar.update(100, { status: chalk.red("✗ Translation failed") });
157
- throw new TranslationError(`Failed to translate keys for locale "${locale}"`, locale, undefined, error instanceof Error ? error : undefined);
154
+ localeResults[locale].status = "error";
155
+ localeResults[locale].error = error instanceof Error ? error.message : "Translation failed";
156
+ completedCount++;
157
+ progressBar.update(completedCount, {
158
+ status: chalk.red("✗ failed"),
159
+ current: completedCount,
160
+ lang: shortLang
161
+ });
162
+ continue;
158
163
  }
159
164
  }
160
- bar.update(80, { status: "Saving files..." });
161
- // Stage 4: Save (80-100%)
162
- // Combine existing translations with new translations
165
+ // Save files
166
+ progressBar.update(completedCount, {
167
+ status: "saving...",
168
+ current: completedCount,
169
+ lang: shortLang
170
+ });
171
+ // Combine and save
163
172
  const allTranslations = { ...existingTranslations, ...translatedValues };
164
- // Distribute translations to all relevant namespaces in parallel
165
173
  await Promise.all(namespaces.map(async (namespace) => {
166
174
  let hasChanges = false;
167
175
  const updatedKeys = { ...namespaceKeys[namespace] };
@@ -173,52 +181,98 @@ export const syncLocales = async (config) => {
173
181
  }
174
182
  }
175
183
  if (hasChanges) {
176
- try {
177
- await writeLocalesFile(savePath, locale, namespace, updatedKeys);
178
- }
179
- catch (error) {
180
- throw new TranslationError(`Failed to save translations for locale "${locale}" (namespace: ${namespace})`, locale, namespace, error instanceof Error ? error : undefined);
181
- }
184
+ await writeLocalesFile(savePath, locale, namespace, updatedKeys);
182
185
  }
183
186
  }));
184
- // Complete!
185
- const statusMsg = stats.translated > 0
186
- ? chalk.green(`✓ +${stats.translated} translated`)
187
- : chalk.green(`✓ ${stats.reused} reused`);
188
- bar.update(100, { status: statusMsg });
187
+ localeResults[locale].status = "done";
188
+ completedCount++;
189
+ const translated = localeResults[locale].translated;
190
+ const reused = localeResults[locale].reused;
191
+ const statusText = translated > 0
192
+ ? chalk.green(`✓ +${translated} new`)
193
+ : chalk.green(`✓ ${reused} reused`);
194
+ progressBar.update(completedCount, {
195
+ status: statusText,
196
+ current: completedCount,
197
+ lang: shortLang
198
+ });
189
199
  }
190
200
  catch (error) {
191
- if (error instanceof TranslationError) {
192
- throw error;
193
- }
194
- bar.update(100, { status: chalk.red("✗ Error") });
195
- throw error;
201
+ localeResults[locale].status = "error";
202
+ localeResults[locale].error = error instanceof Error ? error.message : "Unknown error";
203
+ completedCount++;
204
+ progressBar.update(completedCount, {
205
+ status: chalk.red("✗ error"),
206
+ current: completedCount,
207
+ lang: shortLang
208
+ });
196
209
  }
197
- }));
198
- // Stop the progress bars
199
- multibar.stop();
210
+ }
211
+ // Restore console.log
212
+ console.log = originalConsoleLog;
213
+ progressBar.stop();
200
214
  // Print summary
201
215
  console.log("");
202
216
  console.log(chalk.green("✨ Sync complete!\n"));
203
- // Show detailed stats
204
- let totalMissing = 0;
205
- let totalReused = 0;
217
+ // Count totals
206
218
  let totalTranslated = 0;
219
+ let totalReused = 0;
220
+ let totalErrors = 0;
207
221
  for (const locale of localesToProcess) {
208
- const stats = localeStats[locale];
209
- totalMissing += stats.missing;
210
- totalReused += stats.reused;
211
- totalTranslated += stats.translated;
222
+ const result = localeResults[locale];
223
+ totalTranslated += result.translated;
224
+ totalReused += result.reused;
225
+ if (result.status === "error")
226
+ totalErrors++;
212
227
  }
213
- if (totalMissing > 0) {
214
- console.log(chalk.dim(" Summary:"));
215
- console.log(chalk.dim(` • ${chalk.white(totalTranslated)} keys translated`));
216
- console.log(chalk.dim(` • ${chalk.white(totalReused)} keys reused from other namespaces`));
228
+ // Show summary table
229
+ console.log(chalk.dim(" Results by language:\n"));
230
+ // Group results into columns for compact display
231
+ const doneLocales = localesToProcess.filter(l => localeResults[l].status === "done");
232
+ const errorLocales = localesToProcess.filter(l => localeResults[l].status === "error");
233
+ // Show successful languages in a compact grid
234
+ if (doneLocales.length > 0) {
235
+ const columns = 3;
236
+ const rows = Math.ceil(doneLocales.length / columns);
237
+ for (let row = 0; row < rows; row++) {
238
+ let line = " ";
239
+ for (let col = 0; col < columns; col++) {
240
+ const idx = row + col * rows;
241
+ if (idx < doneLocales.length) {
242
+ const locale = doneLocales[idx];
243
+ const result = localeResults[locale];
244
+ const label = getLanguageLabel(locale).substring(0, 14).padEnd(14);
245
+ const count = result.translated > 0
246
+ ? chalk.cyan(`+${result.translated}`.padStart(5))
247
+ : chalk.dim(`${result.reused}`.padStart(5));
248
+ line += `${chalk.green("✓")} ${label}${count} `;
249
+ }
250
+ }
251
+ console.log(line);
252
+ }
253
+ }
254
+ // Show errors if any
255
+ if (errorLocales.length > 0) {
217
256
  console.log("");
257
+ console.log(chalk.red(" Errors:"));
258
+ for (const locale of errorLocales) {
259
+ const result = localeResults[locale];
260
+ console.log(chalk.red(` ✗ ${getLanguageLabel(locale)}: ${result.error}`));
261
+ }
218
262
  }
263
+ console.log("");
264
+ console.log(chalk.dim(" Summary:"));
265
+ console.log(chalk.dim(` • ${chalk.white(totalTranslated)} keys translated`));
266
+ console.log(chalk.dim(` • ${chalk.white(totalReused)} keys reused`));
267
+ if (totalErrors > 0) {
268
+ console.log(chalk.dim(` • ${chalk.red(totalErrors)} languages failed`));
269
+ }
270
+ console.log("");
219
271
  }
220
272
  catch (error) {
221
- multibar.stop();
273
+ // Restore console.log
274
+ console.log = originalConsoleLog;
275
+ progressBar.stop();
222
276
  if (error instanceof TranslationError) {
223
277
  throw error;
224
278
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sync-locales.js","sourceRoot":"","sources":["../../src/commands/sync-locales.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-locales.js","sourceRoot":"","sources":["../../src/commands/sync-locales.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"languges.d.ts","sourceRoot":"","sources":["../../src/lib/languges.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;;;GA6IrB,CAAA"}
1
+ {"version":3,"file":"languges.d.ts","sourceRoot":"","sources":["../../src/lib/languges.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;;;GAkJrB,CAAA"}
@@ -139,5 +139,10 @@ export const languages = [
139
139
  name: "Vietnamese",
140
140
  value: "vn",
141
141
  },
142
+ {
143
+ label: "ไทย",
144
+ name: "Thai",
145
+ value: "th",
146
+ },
142
147
  ];
143
148
  //# sourceMappingURL=languges.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"languges.js","sourceRoot":"","sources":["../../src/lib/languges.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB;QACE,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,QAAQ;QACf,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,QAAQ;QACf,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,QAAQ;QACf,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,QAAQ;QACf,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,QAAQ;QACf,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,IAAI;KACZ;IACD;QACE,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,IAAI;KACZ;CACF,CAAA"}
1
+ {"version":3,"file":"languges.js","sourceRoot":"","sources":["../../src/lib/languges.ts"],"names":[],"mappings":"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"}
@@ -4,13 +4,14 @@ export declare const loadConfig: ({ configPath, }?: {
4
4
  configPath?: string;
5
5
  }) => Promise<any>;
6
6
  export declare function removeDuplicatesFromArray<T>(arr: T[]): T[];
7
- export declare const translateKey: ({ inputLanguage, context, object, openai, outputLanguage, model, }: {
7
+ export declare const translateKey: ({ inputLanguage, context, object, openai, outputLanguage, model, onProgress, }: {
8
8
  object: Record<string, string>;
9
9
  context: string;
10
10
  inputLanguage: string;
11
11
  outputLanguage: string;
12
12
  model: string;
13
13
  openai: OpenAI;
14
+ onProgress?: (completed: number, total: number) => void;
14
15
  }) => Promise<Record<string, string>>;
15
16
  export declare const loadLocalesFile: (loadPath: string | ((locale: string, namespace: string) => Promise<Record<string, string>>), locale: string, namespace: string, options?: {
16
17
  silent?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"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"}
package/dist/lib/utils.js CHANGED
@@ -47,7 +47,7 @@ const extractKeysWithRegex = (content) => {
47
47
  }
48
48
  return keys;
49
49
  };
50
- export const translateKey = async ({ inputLanguage, context, object, openai, outputLanguage, model, }) => {
50
+ export const translateKey = async ({ inputLanguage, context, object, openai, outputLanguage, model, onProgress, }) => {
51
51
  // Split object into chunks of 100 keys
52
52
  const entries = Object.entries(object);
53
53
  const chunks = [];
@@ -60,6 +60,8 @@ export const translateKey = async ({ inputLanguage, context, object, openai, out
60
60
  const input = existingInput?.label || inputLanguage;
61
61
  const output = existingOutput?.label || outputLanguage;
62
62
  // Translate each chunk
63
+ let completedKeys = 0;
64
+ const totalKeys = entries.length;
63
65
  for (const chunk of chunks) {
64
66
  const chunkObject = Object.fromEntries(chunk);
65
67
  const completion = await openai.chat.completions.create({
@@ -87,6 +89,11 @@ export const translateKey = async ({ inputLanguage, context, object, openai, out
87
89
  const translatedChunk = JSON.parse(completion.choices[0].message.content);
88
90
  // Merge translated chunk with result
89
91
  result = { ...result, ...translatedChunk };
92
+ // Report progress
93
+ completedKeys += chunk.length;
94
+ if (onProgress) {
95
+ onProgress(completedKeys, totalKeys);
96
+ }
90
97
  // Optional: Add a small delay between chunks to avoid rate limiting
91
98
  await new Promise((resolve) => setTimeout(resolve, 100));
92
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scoutello/i18n-magic",
3
- "version": "0.57.3",
3
+ "version": "0.57.5",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "description": "Intelligent CLI toolkit that automates internationalization workflows with AI-powered translations for JavaScript/TypeScript projects",
@@ -34,53 +34,38 @@ export const syncLocales = async (config: Configuration) => {
34
34
  console.log(chalk.dim(` Namespaces: ${chalk.white(namespaces.join(", "))}`))
35
35
  console.log(chalk.dim(` Target languages: ${chalk.white(localesToProcess.length)}\n`))
36
36
 
37
- // Create multi-bar container
38
- const multibar = new cliProgress.MultiBar(
39
- {
40
- clearOnComplete: false,
41
- hideCursor: true,
42
- format: (options, params, payload) => {
43
- const lang = payload.language || "unknown"
44
- const status = payload.status || ""
45
- const bar = options.barCompleteString?.substring(0, Math.round(params.progress * options.barsize!)) || ""
46
- const emptyBar = options.barIncompleteString?.substring(0, options.barsize! - bar.length) || ""
47
-
48
- // Color the bar based on progress
49
- let coloredBar: string
50
- if (params.progress >= 1) {
51
- coloredBar = chalk.green(bar) + chalk.gray(emptyBar)
52
- } else if (params.progress >= 0.5) {
53
- coloredBar = chalk.yellow(bar) + chalk.gray(emptyBar)
54
- } else {
55
- coloredBar = chalk.cyan(bar) + chalk.gray(emptyBar)
56
- }
57
-
58
- const percentage = Math.round(params.progress * 100)
59
- const paddedLang = lang.padEnd(12)
60
- const paddedStatus = status.padEnd(20)
61
-
62
- return ` ${chalk.white(paddedLang)} ${coloredBar} ${chalk.dim(percentage.toString().padStart(3))}% ${chalk.dim(paddedStatus)}`
63
- },
64
- barCompleteChar: "█",
65
- barIncompleteChar: "░",
66
- barsize: 25,
67
- },
68
- cliProgress.Presets.shades_classic,
69
- )
70
-
71
- // Create a progress bar for each locale
72
- const progressBars: Record<string, cliProgress.SingleBar> = {}
73
- const localeStats: Record<string, { missing: number; reused: number; translated: number }> = {}
37
+ // Track results for each locale
38
+ const localeResults: Record<string, {
39
+ status: "pending" | "processing" | "done" | "error"
40
+ translated: number
41
+ reused: number
42
+ error?: string
43
+ }> = {}
74
44
 
75
45
  for (const locale of localesToProcess) {
76
- const langLabel = getLanguageLabel(locale)
77
- progressBars[locale] = multibar.create(100, 0, {
78
- language: langLabel,
79
- status: "Waiting...",
80
- })
81
- localeStats[locale] = { missing: 0, reused: 0, translated: 0 }
46
+ localeResults[locale] = { status: "pending", translated: 0, reused: 0 }
82
47
  }
83
48
 
49
+ // Create a single progress bar for overall progress
50
+ const progressBar = new cliProgress.SingleBar({
51
+ format: ` {bar} {percentage}% | {current}/{total} | {lang} {status}`,
52
+ barCompleteChar: chalk.green("█"),
53
+ barIncompleteChar: chalk.gray("░"),
54
+ hideCursor: true,
55
+ clearOnComplete: false,
56
+ barsize: 30,
57
+ }, cliProgress.Presets.shades_classic)
58
+
59
+ progressBar.start(localesToProcess.length, 0, {
60
+ status: "",
61
+ current: 0,
62
+ lang: ""
63
+ })
64
+
65
+ // Suppress console.log during progress bar display
66
+ const originalConsoleLog = console.log
67
+ const suppressedLog = () => {}
68
+
84
69
  try {
85
70
  // Helper to ensure a locale/namespace file exists before we add keys
86
71
  const ensureLocaleNamespaceFile = async (
@@ -104,224 +89,290 @@ export const syncLocales = async (config: Configuration) => {
104
89
  ),
105
90
  )
106
91
 
107
- // Process all non-default locales in parallel
108
- await Promise.all(
109
- localesToProcess.map(async (locale) => {
110
- const bar = progressBars[locale]
111
- const stats = localeStats[locale]
112
-
113
- try {
114
- // Stage 1: Loading (0-20%)
115
- bar.update(5, { status: "Loading files..." })
116
-
117
- // Ensure all namespace files for this locale exist before filling keys
118
- await Promise.all(
119
- namespaces.map((namespace) =>
120
- ensureLocaleNamespaceFile(locale, namespace),
121
- ),
122
- )
123
-
124
- bar.update(10, { status: "Analyzing keys..." })
125
-
126
- // Collect all missing keys for this locale across all namespaces
127
- const allMissingKeys: Record<
128
- string,
129
- { value: string; namespaces: string[] }
130
- > = {}
131
- const namespaceKeys: Record<string, Record<string, string>> = {}
132
-
133
- // Load existing keys for all namespaces in parallel
134
- const namespaceResults = await Promise.all(
135
- namespaces.map(async (namespace) => {
136
- const defaultLocaleKeys = await loadLocalesFile(
137
- loadPath,
138
- defaultLocale,
139
- namespace,
140
- { silent: true },
141
- )
142
-
143
- const localeKeys = await loadLocalesFile(
144
- loadPath,
145
- locale,
146
- namespace,
147
- { silent: true },
148
- )
149
-
150
- return {
151
- namespace,
152
- defaultLocaleKeys,
153
- localeKeys,
154
- }
155
- }),
156
- )
157
-
158
- bar.update(20, { status: "Finding missing..." })
159
-
160
- // Process results and collect missing keys
161
- for (const result of namespaceResults) {
162
- const { namespace, defaultLocaleKeys, localeKeys } = result
163
- namespaceKeys[namespace] = localeKeys
164
-
165
- // Check which keys from default locale are missing in current locale
166
- for (const [key, value] of Object.entries(defaultLocaleKeys)) {
167
- if (!localeKeys[key]) {
168
- if (allMissingKeys[key]) {
169
- // Key already exists, add this namespace to the list
170
- allMissingKeys[key].namespaces.push(namespace)
171
- } else {
172
- // New missing key
173
- allMissingKeys[key] = {
174
- value,
175
- namespaces: [namespace],
176
- }
92
+ // Process locales sequentially for clean output
93
+ let completedCount = 0
94
+
95
+ for (const locale of localesToProcess) {
96
+ const langLabel = getLanguageLabel(locale)
97
+ const shortLang = langLabel.substring(0, 10).padEnd(10)
98
+ localeResults[locale].status = "processing"
99
+
100
+ progressBar.update(completedCount, {
101
+ status: "loading...",
102
+ current: completedCount,
103
+ lang: shortLang
104
+ })
105
+
106
+ // Suppress logs during file operations
107
+ console.log = suppressedLog
108
+
109
+ try {
110
+ // Ensure all namespace files for this locale exist
111
+ await Promise.all(
112
+ namespaces.map((namespace) =>
113
+ ensureLocaleNamespaceFile(locale, namespace),
114
+ ),
115
+ )
116
+
117
+ // Collect all missing keys for this locale across all namespaces
118
+ const allMissingKeys: Record<
119
+ string,
120
+ { value: string; namespaces: string[] }
121
+ > = {}
122
+ const namespaceKeys: Record<string, Record<string, string>> = {}
123
+
124
+ // Load existing keys for all namespaces in parallel
125
+ const namespaceResults = await Promise.all(
126
+ namespaces.map(async (namespace) => {
127
+ const defaultLocaleKeys = await loadLocalesFile(
128
+ loadPath,
129
+ defaultLocale,
130
+ namespace,
131
+ { silent: true },
132
+ )
133
+
134
+ const localeKeys = await loadLocalesFile(
135
+ loadPath,
136
+ locale,
137
+ namespace,
138
+ { silent: true },
139
+ )
140
+
141
+ return {
142
+ namespace,
143
+ defaultLocaleKeys,
144
+ localeKeys,
145
+ }
146
+ }),
147
+ )
148
+
149
+ // Process results and collect missing keys
150
+ for (const result of namespaceResults) {
151
+ const { namespace, defaultLocaleKeys, localeKeys } = result
152
+ namespaceKeys[namespace] = localeKeys
153
+
154
+ for (const [key, value] of Object.entries(defaultLocaleKeys)) {
155
+ if (!localeKeys[key]) {
156
+ if (allMissingKeys[key]) {
157
+ allMissingKeys[key].namespaces.push(namespace)
158
+ } else {
159
+ allMissingKeys[key] = {
160
+ value,
161
+ namespaces: [namespace],
177
162
  }
178
163
  }
179
164
  }
180
165
  }
166
+ }
181
167
 
182
- const missingKeysList = Object.keys(allMissingKeys)
183
- stats.missing = missingKeysList.length
168
+ const missingKeysList = Object.keys(allMissingKeys)
169
+
170
+ if (missingKeysList.length === 0) {
171
+ localeResults[locale].status = "done"
172
+ completedCount++
173
+ progressBar.update(completedCount, {
174
+ status: chalk.green("✓ up to date"),
175
+ current: completedCount,
176
+ lang: shortLang
177
+ })
178
+ continue
179
+ }
184
180
 
185
- if (missingKeysList.length === 0) {
186
- bar.update(100, { status: chalk.green("✓ Up to date") })
187
- return
181
+ // Check for existing translations
182
+ progressBar.update(completedCount, {
183
+ status: `checking ${missingKeysList.length} keys...`,
184
+ current: completedCount,
185
+ lang: shortLang
186
+ })
187
+
188
+ const keysToTranslate: Record<string, string> = {}
189
+ const existingTranslations: Record<string, string> = {}
190
+
191
+ const existingTranslationResults = await findExistingTranslations(
192
+ missingKeysList,
193
+ namespaces,
194
+ locale,
195
+ loadPath,
196
+ { silent: true },
197
+ )
198
+
199
+ for (const key of missingKeysList) {
200
+ const existingValue = existingTranslationResults[key]
201
+ if (existingValue !== null) {
202
+ existingTranslations[key] = existingValue
203
+ localeResults[locale].reused++
204
+ } else {
205
+ keysToTranslate[key] = allMissingKeys[key].value
188
206
  }
207
+ }
189
208
 
190
- // Stage 2: Check for existing translations (20-40%)
191
- bar.update(25, { status: `Checking ${missingKeysList.length} keys...` })
192
-
193
- const keysToTranslate: Record<string, string> = {}
194
- const existingTranslations: Record<string, string> = {}
195
-
196
- const existingTranslationResults = await findExistingTranslations(
197
- missingKeysList,
198
- namespaces,
199
- locale,
200
- loadPath,
201
- { silent: true },
202
- )
203
-
204
- bar.update(40, { status: "Processing results..." })
205
-
206
- for (const key of missingKeysList) {
207
- const existingValue = existingTranslationResults[key]
208
-
209
- // Use explicit null check instead of truthy check to handle empty string values
210
- if (existingValue !== null) {
211
- existingTranslations[key] = existingValue
212
- stats.reused++
213
- } else {
214
- keysToTranslate[key] = allMissingKeys[key].value
215
- }
209
+ let translatedValues: Record<string, string> = {}
210
+
211
+ // Translate if needed
212
+ if (Object.keys(keysToTranslate).length > 0) {
213
+ const keysCount = Object.keys(keysToTranslate).length
214
+
215
+ try {
216
+ translatedValues = await translateKey({
217
+ inputLanguage: defaultLocale,
218
+ outputLanguage: locale,
219
+ context,
220
+ object: keysToTranslate,
221
+ openai,
222
+ model: config.model,
223
+ onProgress: (completed, total) => {
224
+ const percent = Math.round((completed / total) * 100)
225
+ progressBar.update(completedCount, {
226
+ status: `translating ${completed}/${total} (${percent}%)`,
227
+ current: completedCount,
228
+ lang: shortLang
229
+ })
230
+ }
231
+ })
232
+ localeResults[locale].translated = Object.keys(translatedValues).length
233
+ } catch (error) {
234
+ localeResults[locale].status = "error"
235
+ localeResults[locale].error = error instanceof Error ? error.message : "Translation failed"
236
+ completedCount++
237
+ progressBar.update(completedCount, {
238
+ status: chalk.red("✗ failed"),
239
+ current: completedCount,
240
+ lang: shortLang
241
+ })
242
+ continue
216
243
  }
244
+ }
217
245
 
218
- let translatedValues: Record<string, string> = {}
219
-
220
- // Stage 3: Translate (40-80%)
221
- if (Object.keys(keysToTranslate).length > 0) {
222
- const keysCount = Object.keys(keysToTranslate).length
223
- bar.update(45, { status: `Translating ${keysCount} keys...` })
224
-
225
- try {
226
- translatedValues = await translateKey({
227
- inputLanguage: defaultLocale,
228
- outputLanguage: locale,
229
- context,
230
- object: keysToTranslate,
231
- openai,
232
- model: config.model,
233
- })
234
- stats.translated = Object.keys(translatedValues).length
235
- } catch (error) {
236
- bar.update(100, { status: chalk.red("✗ Translation failed") })
237
- throw new TranslationError(
238
- `Failed to translate keys for locale "${locale}"`,
239
- locale,
240
- undefined,
241
- error instanceof Error ? error : undefined,
242
- )
246
+ // Save files
247
+ progressBar.update(completedCount, {
248
+ status: "saving...",
249
+ current: completedCount,
250
+ lang: shortLang
251
+ })
252
+
253
+ // Combine and save
254
+ const allTranslations = { ...existingTranslations, ...translatedValues }
255
+
256
+ await Promise.all(
257
+ namespaces.map(async (namespace) => {
258
+ let hasChanges = false
259
+ const updatedKeys = { ...namespaceKeys[namespace] }
260
+
261
+ for (const key of missingKeysList) {
262
+ if (allMissingKeys[key].namespaces.includes(namespace)) {
263
+ const translation = allTranslations[key] || ""
264
+ updatedKeys[key] = translation
265
+ hasChanges = true
266
+ }
243
267
  }
244
- }
245
-
246
- bar.update(80, { status: "Saving files..." })
247
-
248
- // Stage 4: Save (80-100%)
249
- // Combine existing translations with new translations
250
- const allTranslations = { ...existingTranslations, ...translatedValues }
251
268
 
252
- // Distribute translations to all relevant namespaces in parallel
253
- await Promise.all(
254
- namespaces.map(async (namespace) => {
255
- let hasChanges = false
256
- const updatedKeys = { ...namespaceKeys[namespace] }
269
+ if (hasChanges) {
270
+ await writeLocalesFile(savePath, locale, namespace, updatedKeys)
271
+ }
272
+ }),
273
+ )
257
274
 
258
- for (const key of missingKeysList) {
259
- if (allMissingKeys[key].namespaces.includes(namespace)) {
260
- const translation = allTranslations[key] || ""
261
- updatedKeys[key] = translation
262
- hasChanges = true
263
- }
264
- }
275
+ localeResults[locale].status = "done"
276
+ completedCount++
277
+
278
+ const translated = localeResults[locale].translated
279
+ const reused = localeResults[locale].reused
280
+ const statusText = translated > 0
281
+ ? chalk.green(`✓ +${translated} new`)
282
+ : chalk.green(`✓ ${reused} reused`)
283
+
284
+ progressBar.update(completedCount, {
285
+ status: statusText,
286
+ current: completedCount,
287
+ lang: shortLang
288
+ })
289
+
290
+ } catch (error) {
291
+ localeResults[locale].status = "error"
292
+ localeResults[locale].error = error instanceof Error ? error.message : "Unknown error"
293
+ completedCount++
294
+ progressBar.update(completedCount, {
295
+ status: chalk.red("✗ error"),
296
+ current: completedCount,
297
+ lang: shortLang
298
+ })
299
+ }
300
+ }
265
301
 
266
- if (hasChanges) {
267
- try {
268
- await writeLocalesFile(savePath, locale, namespace, updatedKeys)
269
- } catch (error) {
270
- throw new TranslationError(
271
- `Failed to save translations for locale "${locale}" (namespace: ${namespace})`,
272
- locale,
273
- namespace,
274
- error instanceof Error ? error : undefined,
275
- )
276
- }
277
- }
278
- }),
279
- )
280
-
281
- // Complete!
282
- const statusMsg = stats.translated > 0
283
- ? chalk.green(`✓ +${stats.translated} translated`)
284
- : chalk.green(`✓ ${stats.reused} reused`)
285
- bar.update(100, { status: statusMsg })
286
-
287
- } catch (error) {
288
- if (error instanceof TranslationError) {
289
- throw error
290
- }
291
- bar.update(100, { status: chalk.red("✗ Error") })
292
- throw error
293
- }
294
- }),
295
- )
302
+ // Restore console.log
303
+ console.log = originalConsoleLog
296
304
 
297
- // Stop the progress bars
298
- multibar.stop()
305
+ progressBar.stop()
299
306
 
300
307
  // Print summary
301
308
  console.log("")
302
309
  console.log(chalk.green("✨ Sync complete!\n"))
303
310
 
304
- // Show detailed stats
305
- let totalMissing = 0
306
- let totalReused = 0
311
+ // Count totals
307
312
  let totalTranslated = 0
313
+ let totalReused = 0
314
+ let totalErrors = 0
308
315
 
309
316
  for (const locale of localesToProcess) {
310
- const stats = localeStats[locale]
311
- totalMissing += stats.missing
312
- totalReused += stats.reused
313
- totalTranslated += stats.translated
317
+ const result = localeResults[locale]
318
+ totalTranslated += result.translated
319
+ totalReused += result.reused
320
+ if (result.status === "error") totalErrors++
321
+ }
322
+
323
+ // Show summary table
324
+ console.log(chalk.dim(" Results by language:\n"))
325
+
326
+ // Group results into columns for compact display
327
+ const doneLocales = localesToProcess.filter(l => localeResults[l].status === "done")
328
+ const errorLocales = localesToProcess.filter(l => localeResults[l].status === "error")
329
+
330
+ // Show successful languages in a compact grid
331
+ if (doneLocales.length > 0) {
332
+ const columns = 3
333
+ const rows = Math.ceil(doneLocales.length / columns)
334
+
335
+ for (let row = 0; row < rows; row++) {
336
+ let line = " "
337
+ for (let col = 0; col < columns; col++) {
338
+ const idx = row + col * rows
339
+ if (idx < doneLocales.length) {
340
+ const locale = doneLocales[idx]
341
+ const result = localeResults[locale]
342
+ const label = getLanguageLabel(locale).substring(0, 14).padEnd(14)
343
+ const count = result.translated > 0
344
+ ? chalk.cyan(`+${result.translated}`.padStart(5))
345
+ : chalk.dim(`${result.reused}`.padStart(5))
346
+ line += `${chalk.green("✓")} ${label}${count} `
347
+ }
348
+ }
349
+ console.log(line)
350
+ }
314
351
  }
315
352
 
316
- if (totalMissing > 0) {
317
- console.log(chalk.dim(" Summary:"))
318
- console.log(chalk.dim(` • ${chalk.white(totalTranslated)} keys translated`))
319
- console.log(chalk.dim(` • ${chalk.white(totalReused)} keys reused from other namespaces`))
353
+ // Show errors if any
354
+ if (errorLocales.length > 0) {
320
355
  console.log("")
356
+ console.log(chalk.red(" Errors:"))
357
+ for (const locale of errorLocales) {
358
+ const result = localeResults[locale]
359
+ console.log(chalk.red(` ✗ ${getLanguageLabel(locale)}: ${result.error}`))
360
+ }
361
+ }
362
+
363
+ console.log("")
364
+ console.log(chalk.dim(" Summary:"))
365
+ console.log(chalk.dim(` • ${chalk.white(totalTranslated)} keys translated`))
366
+ console.log(chalk.dim(` • ${chalk.white(totalReused)} keys reused`))
367
+ if (totalErrors > 0) {
368
+ console.log(chalk.dim(` • ${chalk.red(totalErrors)} languages failed`))
321
369
  }
370
+ console.log("")
322
371
 
323
372
  } catch (error) {
324
- multibar.stop()
373
+ // Restore console.log
374
+ console.log = originalConsoleLog
375
+ progressBar.stop()
325
376
  if (error instanceof TranslationError) {
326
377
  throw error
327
378
  }
@@ -139,4 +139,9 @@ export const languages = [
139
139
  name: "Vietnamese",
140
140
  value: "vn",
141
141
  },
142
+ {
143
+ label: "ไทย",
144
+ name: "Thai",
145
+ value: "th",
146
+ },
142
147
  ]
package/src/lib/utils.ts CHANGED
@@ -66,6 +66,7 @@ export const translateKey = async ({
66
66
  openai,
67
67
  outputLanguage,
68
68
  model,
69
+ onProgress,
69
70
  }: {
70
71
  object: Record<string, string>
71
72
  context: string
@@ -73,6 +74,7 @@ export const translateKey = async ({
73
74
  outputLanguage: string
74
75
  model: string
75
76
  openai: OpenAI
77
+ onProgress?: (completed: number, total: number) => void
76
78
  }) => {
77
79
  // Split object into chunks of 100 keys
78
80
  const entries = Object.entries(object)
@@ -91,6 +93,9 @@ export const translateKey = async ({
91
93
  const output = existingOutput?.label || outputLanguage
92
94
 
93
95
  // Translate each chunk
96
+ let completedKeys = 0
97
+ const totalKeys = entries.length
98
+
94
99
  for (const chunk of chunks) {
95
100
  const chunkObject = Object.fromEntries(chunk)
96
101
  const completion = await openai.chat.completions.create({
@@ -124,6 +129,12 @@ export const translateKey = async ({
124
129
 
125
130
  // Merge translated chunk with result
126
131
  result = { ...result, ...translatedChunk }
132
+
133
+ // Report progress
134
+ completedKeys += chunk.length
135
+ if (onProgress) {
136
+ onProgress(completedKeys, totalKeys)
137
+ }
127
138
 
128
139
  // Optional: Add a small delay between chunks to avoid rate limiting
129
140
  await new Promise((resolve) => setTimeout(resolve, 100))