Skip to content

Commit a8ae2ce

Browse files
Include JS files in XLF creation for extensions (microsoft#165774)
* Bumps @vscode/l10n-dev to a version that supports JS files * Pulls in JS files (and TSX & JSX) in addition to TS to account for scenarios like Emmet which pulls in @vscode/emmet-helper as an npm package
1 parent 46caa3b commit a8ae2ce

File tree

4 files changed

+26
-14
lines changed

4 files changed

+26
-14
lines changed

build/lib/i18n.js

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -510,15 +510,21 @@ exports.createXlfFilesForCoreBundle = createXlfFilesForCoreBundle;
510510
function createL10nBundleForExtension(extensionFolderName) {
511511
const result = (0, event_stream_1.through)();
512512
gulp.src([
513-
`extensions/${extensionFolderName}/src/**/*.ts`,
513+
// For source code of extensions
514+
`extensions/${extensionFolderName}/src/**/*.{ts,tsx}`,
515+
// For any dependencies pulled in (think vscode-css-languageservice or @vscode/emmet-helper)
516+
`extensions/${extensionFolderName}/node_modules/**/*.{js,jsx}`
514517
]).pipe((0, event_stream_1.writeArray)((err, files) => {
515518
if (err) {
516519
result.emit('error', err);
517520
return;
518521
}
519-
const json = (0, l10n_dev_1.getL10nJson)(files.map(file => {
520-
return file.contents.toString('utf8');
521-
}));
522+
const json = (0, l10n_dev_1.getL10nJson)(files
523+
.filter(file => file.isBuffer())
524+
.map(file => ({
525+
contents: file.contents.toString('utf8'),
526+
extension: path.extname(file.path)
527+
})));
522528
if (Object.keys(json).length > 0) {
523529
result.emit('data', new File({
524530
path: `extensions/${extensionFolderName}/bundle.l10n.json`,

build/lib/i18n.ts

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -582,16 +582,22 @@ export function createXlfFilesForCoreBundle(): ThroughStream {
582582
function createL10nBundleForExtension(extensionFolderName: string): ThroughStream {
583583
const result = through();
584584
gulp.src([
585-
`extensions/${extensionFolderName}/src/**/*.ts`,
585+
// For source code of extensions
586+
`extensions/${extensionFolderName}/src/**/*.{ts,tsx}`,
587+
// For any dependencies pulled in (think vscode-css-languageservice or @vscode/emmet-helper)
588+
`extensions/${extensionFolderName}/node_modules/**/*.{js,jsx}`
586589
]).pipe(writeArray((err, files: File[]) => {
587590
if (err) {
588591
result.emit('error', err);
589592
return;
590593
}
591594

592-
const json = getL10nJson(files.map(file => {
593-
return file.contents.toString('utf8');
594-
}));
595+
const json = getL10nJson(files
596+
.filter(file => file.isBuffer())
597+
.map(file => ({
598+
contents: file.contents.toString('utf8'),
599+
extension: path.extname(file.path)
600+
})));
595601

596602
if (Object.keys(json).length > 0) {
597603
result.emit('data', new File({

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@
128128
"@typescript-eslint/eslint-plugin": "^5.39.0",
129129
"@typescript-eslint/experimental-utils": "^5.39.0",
130130
"@typescript-eslint/parser": "^5.39.0",
131-
"@vscode/l10n-dev": "0.0.15",
131+
"@vscode/l10n-dev": "0.0.18",
132132
"@vscode/telemetry-extractor": "^1.9.8",
133133
"@vscode/test-web": "^0.0.32",
134134
"ansi-colors": "^3.2.3",
@@ -237,4 +237,4 @@
237237
"elliptic": "^6.5.3",
238238
"nwmatcher": "^1.4.4"
239239
}
240-
}
240+
}

yarn.lock

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1252,10 +1252,10 @@
12521252
resolved "https://registry.yarnpkg.com/@vscode/iconv-lite-umd/-/iconv-lite-umd-0.7.0.tgz#d2f1e0664ee6036408f9743fee264ea0699b0e48"
12531253
integrity sha512-bRRFxLfg5dtAyl5XyiVWz/ZBPahpOpPrNYnnHpOpUZvam4tKH35wdhP4Kj6PbM0+KdliOsPzbGWpkxcdpNB/sg==
12541254

1255-
"@vscode/[email protected].15":
1256-
version "0.0.15"
1257-
resolved "https://registry.yarnpkg.com/@vscode/l10n-dev/-/l10n-dev-0.0.15.tgz#677b527987ccd39e32c50956f139736a788061d6"
1258-
integrity sha512-zLuo/pa+FtnFrVq/7M8VHshgejNZ6TvnRW9/um1pLkg92PZ9glDgmwXUv1AdpBu5KNzgH9odiMKS4YQDkS12wQ==
1255+
"@vscode/[email protected].18":
1256+
version "0.0.18"
1257+
resolved "https://registry.yarnpkg.com/@vscode/l10n-dev/-/l10n-dev-0.0.18.tgz#80a8cf6ef13c7fe1796be7b0007d71993bd1832f"
1258+
integrity sha512-pEKLMnlg7hlxFrZLqcyJe08olmj6KVs2Rof7MVB5rN0D6NOKPBRtkQ176TuMUmW863EDV5WQUgNzOGa2nHBSSQ==
12591259
dependencies:
12601260
deepmerge-json "^1.5.0"
12611261
glob "^8.0.3"

0 commit comments

Comments
 (0)