@localheroai/cli 0.0.20 → 0.0.22

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.
@@ -2,15 +2,19 @@ import { execSync } from 'child_process';
2
2
  import { readFileSync } from 'fs';
3
3
  import chalk from 'chalk';
4
4
  import { parseFile, flattenTranslations } from './files.js';
5
- import { PLURAL_PREFIX } from './po-utils.js';
5
+ import { PLURAL_SUFFIX_REGEX, extractBaseKeys } from './po-utils.js';
6
6
  /**
7
7
  * Git integration for --changed-only flag
8
8
  * This module filters translations to only include keys that changed in the current branch
9
9
  */
10
10
  export function hasFileChanged(file, baseBranch) {
11
11
  try {
12
+ const resolvedRef = resolveBranchRef(baseBranch);
13
+ if (!resolvedRef) {
14
+ return true;
15
+ }
12
16
  const sanitizedPath = sanitizeGitPath(file.path);
13
- const oldContent = execSync(`git show ${baseBranch}:"${sanitizedPath}"`, {
17
+ const oldContent = execSync(`git show ${resolvedRef}:"${sanitizedPath}"`, {
14
18
  encoding: 'utf-8',
15
19
  maxBuffer: 10 * 1024 * 1024,
16
20
  stdio: ['pipe', 'pipe', 'ignore']
@@ -68,6 +72,12 @@ export function filterByGitChanges(sourceFiles, missingByLocale, config, verbose
68
72
  }
69
73
  // Get changed keys from source files
70
74
  const changedKeys = getChangedKeys(sourceFiles, baseBranch, verbose);
75
+ if (changedKeys === null) {
76
+ if (verbose) {
77
+ console.log(chalk.yellow('Could not determine changed keys (limit exceeded or error)'));
78
+ }
79
+ return null;
80
+ }
71
81
  if (changedKeys.size === 0) {
72
82
  if (verbose) {
73
83
  console.log(chalk.dim('No changes detected in source files'));
@@ -96,14 +106,14 @@ export function filterByGitChanges(sourceFiles, missingByLocale, config, verbose
96
106
  }
97
107
  }
98
108
  /**
99
- * Extract keys from PO file parsed object
100
- * PO files have structure: { msgid: { value: '...', metadata: ... } }
109
+ * Extract keys from PO/POT file parsed object
110
+ * PO/POT files have structure: { msgid: { value: '...', metadata: ... } }
101
111
  * We extract just msgid -> value for comparison
102
112
  */
103
113
  function extractPoKeys(poObject) {
104
114
  const result = {};
105
115
  for (const [key, data] of Object.entries(poObject)) {
106
- // For PO files, extract the value without creating nested .value keys
116
+ // For PO/POT files, extract the value without creating nested .value keys
107
117
  result[key] = typeof data === 'object' && data !== null && data.value !== undefined ? data.value : data;
108
118
  }
109
119
  return result;
@@ -120,6 +130,25 @@ export function isGitAvailable() {
120
130
  return false;
121
131
  }
122
132
  }
133
+ /**
134
+ * Get changed keys for a project by comparing current branch to base branch
135
+ * Returns Set of changed keys, or null if git is unavailable or base branch not found
136
+ *
137
+ * @param sourceFiles - Source translation files to compare
138
+ * @param config - Project configuration
139
+ * @param verbose - Whether to show verbose output
140
+ * @returns Set of changed keys, or null if git unavailable/base branch not found
141
+ */
142
+ export function getChangedKeysForProject(sourceFiles, config, verbose) {
143
+ if (!isGitAvailable()) {
144
+ return null;
145
+ }
146
+ const baseBranch = getBaseBranch(config);
147
+ if (!branchExists(baseBranch)) {
148
+ return null;
149
+ }
150
+ return getChangedKeys(sourceFiles, baseBranch, verbose);
151
+ }
123
152
  /**
124
153
  * Get base branch from config, environment, or default
125
154
  */
@@ -137,29 +166,50 @@ function sanitizeGitPath(path) {
137
166
  }
138
167
  /**
139
168
  * Check if a branch exists (local or remote)
169
+ * Tries multiple resolution strategies to handle various git scenarios
140
170
  */
141
171
  function branchExists(branch) {
142
- try {
143
- execSync(`git rev-parse --verify ${branch}`, { stdio: 'ignore' });
144
- return true;
145
- }
146
- catch {
147
- return false;
172
+ return resolveBranchRef(branch) !== null;
173
+ }
174
+ /**
175
+ * Resolve a branch name to its full ref, trying multiple strategies
176
+ * Returns the resolved ref or null if not found
177
+ */
178
+ function resolveBranchRef(branch) {
179
+ const strategies = [
180
+ branch,
181
+ `origin/${branch}`,
182
+ `refs/remotes/origin/${branch}`
183
+ ];
184
+ for (const ref of strategies) {
185
+ try {
186
+ execSync(`git rev-parse --verify ${ref}`, { stdio: 'ignore' });
187
+ return ref;
188
+ }
189
+ catch {
190
+ continue;
191
+ }
148
192
  }
193
+ return null;
149
194
  }
150
195
  /**
151
196
  * Get all changed keys from source files using object-based diff
152
197
  * Compares parsed and flattened objects from base branch vs current working directory
153
198
  */
154
199
  function getChangedKeys(sourceFiles, baseBranch, verbose) {
200
+ const resolvedRef = resolveBranchRef(baseBranch);
201
+ if (!resolvedRef) {
202
+ return null;
203
+ }
155
204
  const allChangedKeys = new Set();
205
+ const MAX_CHANGED_KEYS = 10000; // Safety limit to prevent memory issues
156
206
  for (const file of sourceFiles) {
157
207
  try {
158
208
  const sanitizedPath = sanitizeGitPath(file.path);
159
- const isPo = file.format === 'po';
209
+ const isPo = file.format === 'po' || file.format === 'pot';
160
210
  let oldFlat = {};
161
211
  try {
162
- const oldContent = execSync(`git show ${baseBranch}:"${sanitizedPath}"`, {
212
+ const oldContent = execSync(`git show ${resolvedRef}:"${sanitizedPath}"`, {
163
213
  encoding: 'utf-8',
164
214
  maxBuffer: 10 * 1024 * 1024,
165
215
  stdio: ['pipe', 'pipe', 'ignore']
@@ -191,6 +241,12 @@ function getChangedKeys(sourceFiles, baseBranch, verbose) {
191
241
  for (const [key, value] of Object.entries(newFlat)) {
192
242
  const keyExistsInOld = key in oldFlat;
193
243
  if (!keyExistsInOld || oldFlat[key] !== value) {
244
+ if (allChangedKeys.size >= MAX_CHANGED_KEYS) {
245
+ if (verbose) {
246
+ console.log(chalk.yellow(`⚠ Warning: Exceeded ${MAX_CHANGED_KEYS} changed keys limit`));
247
+ }
248
+ return null;
249
+ }
194
250
  allChangedKeys.add(key);
195
251
  totalChangedInFile++;
196
252
  if (verbose && fileChangedKeys.length < MAX_KEYS_TO_COLLECT) {
@@ -229,11 +285,7 @@ function filterMissing(missingByLocale, changedKeys) {
229
285
  const filtered = {};
230
286
  // Extract base keys from plural forms in changedKeys
231
287
  // E.g., "key__plural_1" -> "key"
232
- const baseChangedKeys = new Set();
233
- for (const key of changedKeys) {
234
- const baseKey = key.replace(new RegExp(`${PLURAL_PREFIX.replace('_', '\\_')}\\d+$`), '');
235
- baseChangedKeys.add(baseKey);
236
- }
288
+ const baseChangedKeys = extractBaseKeys(changedKeys);
237
289
  for (const [localeKey, entry] of Object.entries(missingByLocale)) {
238
290
  const filteredKeys = {};
239
291
  let count = 0;
@@ -244,7 +296,7 @@ function filterMissing(missingByLocale, changedKeys) {
244
296
  }
245
297
  else {
246
298
  // For plural forms, check if base key changed
247
- const baseKey = key.replace(new RegExp(`${PLURAL_PREFIX.replace('_', '\\_')}\\d+$`), '');
299
+ const baseKey = key.replace(PLURAL_SUFFIX_REGEX, '');
248
300
  if (baseKey !== key && baseChangedKeys.has(baseKey)) {
249
301
  // This is a plural variant of a changed key - include it
250
302
  // even if the source language doesn't have this many plural forms
@@ -1 +1 @@
1
- {"version":3,"file":"git-changes.js","sourceRoot":"","sources":["../../src/utils/git-changes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-changes.js","sourceRoot":"","sources":["../../src/utils/git-changes.ts"],"names":[],"mappings":"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"}
@@ -66,10 +66,17 @@ on:
66
66
  const formattedPath = hasPattern ? p : `${p}${p.endsWith('/') ? '' : '/'}**`;
67
67
  return `- "${formattedPath}"`;
68
68
  }).join('\n ')}
69
+ workflow_dispatch:
70
+
71
+ concurrency:
72
+ group: translate-\${{ github.head_ref || github.run_id }}
73
+ cancel-in-progress: true
69
74
 
70
75
  jobs:
71
76
  translate:
72
- if: \${{ !contains(github.event.pull_request.labels.*.name, 'skip-translation') }}
77
+ if: |
78
+ !contains(github.event.pull_request.labels.*.name, 'skip-translation') &&
79
+ github.event.head_commit.author.username != 'LocalHero-ai-bot'
73
80
  runs-on: ubuntu-latest
74
81
  permissions:
75
82
  contents: write
@@ -77,20 +84,34 @@ jobs:
77
84
 
78
85
  steps:
79
86
  - name: Checkout code
80
- uses: actions/checkout@v4
87
+ uses: actions/checkout@v5
81
88
  with:
82
89
  ref: \${{ github.head_ref }}
90
+ fetch-depth: 0
91
+
92
+ - name: Fetch base branch for comparison
93
+ if: github.event_name == 'pull_request'
94
+ run: |
95
+ git fetch --no-tags origin \${{ github.base_ref }}
83
96
 
84
97
  - name: Set up Node.js
85
- uses: actions/setup-node@v4
98
+ uses: actions/setup-node@v5
86
99
  with:
87
100
  node-version: 22
88
101
 
89
- - name: Run LocalHero CLI
102
+ - name: Translate strings
90
103
  env:
91
104
  LOCALHERO_API_KEY: \${{ secrets.LOCALHERO_API_KEY }}
92
105
  GITHUB_TOKEN: \${{ secrets.GITHUB_TOKEN }}
93
- run: npx -y @localheroai/cli translate`;
106
+ GITHUB_BASE_REF: \${{ github.base_ref }}
107
+ run: |
108
+ # Translate all strings on main/master
109
+ # Translate only changed strings in branch for PRs
110
+ if [[ "\${{ github.base_ref }}" == "main" || "\${{ github.base_ref }}" == "master" ]]; then
111
+ npx -y @localheroai/cli translate
112
+ else
113
+ npx -y @localheroai/cli translate --changed-only
114
+ fi`;
94
115
  await fs.writeFile(workflowFile, actionContent);
95
116
  return workflowFile;
96
117
  },
@@ -1 +1 @@
1
- {"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"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"}
@@ -18,8 +18,22 @@ function getFileFormat(filePath) {
18
18
  return 'yaml';
19
19
  if (ext === '.po')
20
20
  return 'po';
21
+ if (ext === '.pot')
22
+ return 'pot';
21
23
  return null;
22
24
  }
25
+ /**
26
+ * Normalize file format for API compatibility
27
+ * @param format The file format from files.ts
28
+ * @returns The normalized format for the API
29
+ */
30
+ function normalizeFormat(format) {
31
+ if (format === 'yml')
32
+ return 'yaml';
33
+ if (format === 'pot')
34
+ return 'po';
35
+ return format;
36
+ }
23
37
  /**
24
38
  * Read file content and convert to base64
25
39
  * @param filePath Path to the file
@@ -39,7 +53,7 @@ async function readFileContent(filePath, options) {
39
53
  return Buffer.from(content).toString('base64');
40
54
  }
41
55
  }
42
- if (format === 'po') {
56
+ if (format === 'po' || format === 'pot') {
43
57
  try {
44
58
  const parsed = parsePoFile(content);
45
59
  const apiFormat = poEntriesToApiFormat(parsed, options);
@@ -71,7 +85,7 @@ export const importService = {
71
85
  return files.map(file => ({
72
86
  path: path.isAbsolute(file.path) ? path.relative(basePath, file.path) : file.path,
73
87
  language: file.locale,
74
- format: file.format === 'yml' ? 'yaml' : file.format,
88
+ format: normalizeFormat(file.format),
75
89
  namespace: file.namespace || ''
76
90
  }));
77
91
  },
@@ -104,7 +118,7 @@ export const importService = {
104
118
  const fullPath = path.join(basePath, file.path);
105
119
  allTranslations.push({
106
120
  language: file.language,
107
- format: file.format === 'yml' ? 'yaml' : file.format,
121
+ format: normalizeFormat(file.format),
108
122
  filename: file.path,
109
123
  content: await readFileContent(fullPath, {
110
124
  sourceLanguage: config.sourceLocale,
@@ -116,7 +130,7 @@ export const importService = {
116
130
  const fullPath = path.join(basePath, file.path);
117
131
  allTranslations.push({
118
132
  language: file.language,
119
- format: file.format === 'yml' ? 'yaml' : file.format,
133
+ format: normalizeFormat(file.format),
120
134
  filename: file.path,
121
135
  content: await readFileContent(fullPath, {
122
136
  sourceLanguage: config.sourceLocale,
@@ -189,7 +203,7 @@ export const importService = {
189
203
  const fullPath = path.join(basePath, file.path);
190
204
  allTranslations.push({
191
205
  language: file.language,
192
- format: file.format === 'yml' ? 'yaml' : file.format,
206
+ format: normalizeFormat(file.format),
193
207
  filename: file.path,
194
208
  content: await readFileContent(fullPath, {
195
209
  sourceLanguage: config.sourceLocale,
@@ -201,7 +215,7 @@ export const importService = {
201
215
  const fullPath = path.join(basePath, file.path);
202
216
  allTranslations.push({
203
217
  language: file.language,
204
- format: file.format === 'yml' ? 'yaml' : file.format,
218
+ format: normalizeFormat(file.format),
205
219
  filename: file.path,
206
220
  content: await readFileContent(fullPath, {
207
221
  sourceLanguage: config.sourceLocale,
@@ -209,6 +223,12 @@ export const importService = {
209
223
  })
210
224
  });
211
225
  }
226
+ if (options.verbose) {
227
+ console.log(chalk.blue(`Sending ${allTranslations.length} translation files to API`));
228
+ allTranslations.forEach(t => {
229
+ console.log(chalk.gray(` - ${t.language} ${t.format} ${t.filename} (${t.content?.length || 0} bytes)`));
230
+ });
231
+ }
212
232
  const importResult = await bulkUpdateTranslations({
213
233
  projectId: config.projectId,
214
234
  translations: allTranslations
@@ -1 +1 @@
1
- {"version":3,"file":"import-service.js","sourceRoot":"","sources":["../../src/utils/import-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"import-service.js","sourceRoot":"","sources":["../../src/utils/import-service.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,19 @@
1
1
  import { po } from 'gettext-parser';
2
2
  export const PLURAL_PREFIX = '__plural_';
3
3
  export const MAX_PLURAL_FORMS = 10; // Covers MANY languages: Arabic=6, Russian=3, etc.
4
+ export const PLURAL_SUFFIX_REGEX = new RegExp(`${PLURAL_PREFIX}\\d+$`);
5
+ /**
6
+ * Extract base keys from a set of keys (removing plural suffixes)
7
+ * For example: "item__plural_1" -> "item", "item" -> "item"
8
+ */
9
+ export function extractBaseKeys(keys) {
10
+ const baseKeys = new Set();
11
+ for (const key of keys) {
12
+ const baseKey = key.replace(PLURAL_SUFFIX_REGEX, '');
13
+ baseKeys.add(baseKey);
14
+ }
15
+ return baseKeys;
16
+ }
4
17
  /**
5
18
  * Extract the number of plural forms from PO file headers
6
19
  */
@@ -66,6 +79,21 @@ export function parseUniqueKey(key) {
66
79
  msgid: key.substring(pipeIndex + 1)
67
80
  };
68
81
  }
82
+ /**
83
+ * Normalize reference comments from PO files into an array of individual file references
84
+ */
85
+ export function normalizeReferences(reference) {
86
+ const referenceArray = Array.isArray(reference) ? reference : [reference];
87
+ const normalized = [];
88
+ for (const ref of referenceArray) {
89
+ const parts = ref
90
+ .split(/[\n\s]+/)
91
+ .map(part => part.trim())
92
+ .filter(part => part.length > 0);
93
+ normalized.push(...parts);
94
+ }
95
+ return normalized;
96
+ }
69
97
  /**
70
98
  * Convert .po file to API compatible format
71
99
  */
@@ -112,6 +140,12 @@ export function poEntriesToApiFormat(parsed, options) {
112
140
  if (translatorComments) {
113
141
  keyData.metadata.translator_comments = translatorComments;
114
142
  }
143
+ if (entry.comments?.reference) {
144
+ const references = normalizeReferences(entry.comments.reference);
145
+ if (references.length > 0) {
146
+ keyData.metadata.source_references = references;
147
+ }
148
+ }
115
149
  if (entry.msgctxt) {
116
150
  keyData.context = entry.msgctxt;
117
151
  }
@@ -127,10 +161,17 @@ export function poEntriesToApiFormat(parsed, options) {
127
161
  const keyData = {
128
162
  value: value
129
163
  };
130
- if (translatorComments) {
131
- keyData.metadata = {
132
- translator_comments: translatorComments
133
- };
164
+ if (translatorComments || entry.comments?.reference) {
165
+ keyData.metadata = {};
166
+ if (translatorComments) {
167
+ keyData.metadata.translator_comments = translatorComments;
168
+ }
169
+ if (entry.comments?.reference) {
170
+ const references = normalizeReferences(entry.comments.reference);
171
+ if (references.length > 0) {
172
+ keyData.metadata.source_references = references;
173
+ }
174
+ }
134
175
  }
135
176
  if (entry.msgctxt) {
136
177
  keyData.context = entry.msgctxt;
@@ -187,6 +228,17 @@ export function findMissingPoTranslations(sourceContent, targetContent) {
187
228
  sourceEntries.forEach(entry => {
188
229
  const key = createUniqueKey(entry.msgid, entry.msgctxt);
189
230
  const targetEntry = targetMap.get(key);
231
+ const metadata = {};
232
+ if (entry.comments?.reference) {
233
+ const references = normalizeReferences(entry.comments.reference);
234
+ if (references.length > 0) {
235
+ metadata.source_references = references;
236
+ }
237
+ }
238
+ if (entry.comments?.extracted && entry.comments.extracted.length > 0) {
239
+ metadata.translator_comments = entry.comments.extracted.join('\n');
240
+ }
241
+ const hasMetadata = Object.keys(metadata).length > 0;
190
242
  if (entry.msgid_plural) {
191
243
  for (let i = 0; i < targetNplurals; i++) {
192
244
  const isEmpty = !targetEntry ||
@@ -201,7 +253,8 @@ export function findMissingPoTranslations(sourceContent, targetContent) {
201
253
  context: entry.msgctxt,
202
254
  value: i === 0 ? entry.msgid : entry.msgid_plural,
203
255
  isPlural: true,
204
- pluralForm: entry.msgid_plural
256
+ pluralForm: entry.msgid_plural,
257
+ ...(hasMetadata && { metadata })
205
258
  });
206
259
  }
207
260
  }
@@ -218,7 +271,8 @@ export function findMissingPoTranslations(sourceContent, targetContent) {
218
271
  context: entry.msgctxt,
219
272
  value: entry.msgid,
220
273
  isPlural: false,
221
- pluralForm: entry.msgid_plural
274
+ pluralForm: entry.msgid_plural,
275
+ ...(hasMetadata && { metadata })
222
276
  });
223
277
  }
224
278
  }
@@ -1 +1 @@
1
- {"version":3,"file":"po-utils.js","sourceRoot":"","sources":["../../src/utils/po-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"po-utils.js","sourceRoot":"","sources":["../../src/utils/po-utils.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import chalk from 'chalk';
2
2
  import { Spinner } from './spinner.js';
3
- export const MAX_JOB_STATUS_CHECK_ATTEMPTS = 35;
3
+ export const MAX_JOB_STATUS_CHECK_ATTEMPTS = 60;
4
4
  /**
5
5
  * Creates a job request object for a batch of translations
6
6
  *
@@ -107,6 +107,14 @@ async function monitorJobStatus(jobId, verbose, translationUtils, console) {
107
107
  async function applyTranslations(jobStatus, jobSourceMapping, missingByLocale, translationUtils, verbose, console, processedEntries, uniqueKeysTranslated, stats, config) {
108
108
  const { jobId, data } = jobStatus;
109
109
  if (!data?.translations?.data || !data.language?.code) {
110
+ if (data?.status === 'completed' && data?.language?.code) {
111
+ const languageCode = data.language.code;
112
+ stats.failedLanguages.add(languageCode);
113
+ console.error(chalk.red(` ❌ Job ${jobId} (${languageCode}) completed with no translations`));
114
+ if (data.error_details) {
115
+ console.error(chalk.gray(` Error: ${data.error_details}`));
116
+ }
117
+ }
110
118
  return false;
111
119
  }
112
120
  if (data.results_url && !stats.resultsBaseUrl) {
@@ -244,7 +252,8 @@ export async function processTranslationBatches(batches, missingByLocale, config
244
252
  totalLanguages: 0,
245
253
  languages: new Set(),
246
254
  resultsBaseUrl: null,
247
- jobGroupShortUrl: null
255
+ jobGroupShortUrl: null,
256
+ failedLanguages: new Set()
248
257
  };
249
258
  const processedEntries = new Set();
250
259
  const allJobIds = [];
@@ -265,7 +274,8 @@ export async function processTranslationBatches(batches, missingByLocale, config
265
274
  allJobIds,
266
275
  resultsBaseUrl: stats.resultsBaseUrl,
267
276
  jobGroupShortUrl: stats.jobGroupShortUrl,
268
- uniqueKeysTranslated
277
+ uniqueKeysTranslated,
278
+ failedLanguages: Array.from(stats.failedLanguages)
269
279
  };
270
280
  }
271
281
  //# sourceMappingURL=translation-processor.js.map