Skip to content

Commit 917f28f

Browse files
committed
chore(labs): add missing build script
1 parent f3331b1 commit 917f28f

File tree

3 files changed

+60
-5
lines changed

3 files changed

+60
-5
lines changed

.gitignore

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
dist
22
node_modules
3-
*.js
4-
*.d.ts
5-
*.map
63
*.tsbuildinfo
74
extensions/labs/lib
85
*.vsix
6+
7+
packages/*/*.d.ts
8+
packages/*/*.js
9+
packages/*/*.map
10+
packages/*/lib/**/*.d.ts
11+
packages/*/lib/**/*.js
12+
packages/*/lib/**/*.map

extensions/labs/scripts/build.js

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
// @ts-check
2+
3+
require('esbuild').context({
4+
entryPoints: {
5+
extension: './src/extension.js',
6+
},
7+
bundle: true,
8+
metafile: process.argv.includes('--metafile'),
9+
outdir: './dist',
10+
external: [
11+
'vscode',
12+
],
13+
format: 'cjs',
14+
platform: 'node',
15+
tsconfig: './tsconfig.json',
16+
define: { 'process.env.NODE_ENV': '"production"' },
17+
minify: process.argv.includes('--minify'),
18+
plugins: [
19+
require('esbuild-plugin-copy').copy({
20+
resolveFrom: 'cwd',
21+
assets: {
22+
from: ['./node_modules/esbuild-visualizer/dist/lib/**/*'],
23+
to: ['./lib'],
24+
},
25+
// @ts-expect-error
26+
keepStructure: true,
27+
}),
28+
{
29+
name: 'meta',
30+
setup(build) {
31+
build.onEnd((result) => {
32+
if (result.metafile && result.errors.length === 0) {
33+
require('fs').writeFileSync(
34+
require('path').resolve(__dirname, '../meta.json'),
35+
JSON.stringify(result.metafile),
36+
);
37+
}
38+
});
39+
},
40+
},
41+
],
42+
}).then(async ctx => {
43+
console.log('building...');
44+
if (process.argv.includes('--watch')) {
45+
await ctx.watch();
46+
console.log('watching...');
47+
} else {
48+
await ctx.rebuild();
49+
await ctx.dispose();
50+
console.log('finished.');
51+
}
52+
});

package.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22
"private": true,
33
"scripts": {
44
"build": "tsc -b",
5-
"watch": "npm run build && (npm run watch:base & npm run watch:labs)",
6-
"watch:base": "tsc -b -w",
5+
"watch": "tsc -b -w",
76
"watch:labs": "cd extensions/labs && npm run watch",
87
"prerelease": "npm run build && npm run test",
98
"release": "lerna publish --exact --force-publish --yes --sync-workspace-lock --no-push",

0 commit comments

Comments
 (0)