From be61a6f6ee856deee5feda2a4b4ff5d08d5f1887 Mon Sep 17 00:00:00 2001 From: Vitaly Date: Mon, 28 Aug 2023 10:34:22 +0300 Subject: [PATCH] fix dev esbuild config --- esbuild.mjs | 27 +++++++++++++++++---------- package.json | 2 +- server.js | 2 +- 3 files changed, 19 insertions(+), 12 deletions(-) diff --git a/esbuild.mjs b/esbuild.mjs index 64adc843..0c5f7fe0 100644 --- a/esbuild.mjs +++ b/esbuild.mjs @@ -43,12 +43,16 @@ const banner = [ const buildingVersion = new Date().toISOString().split(':')[0] +const dev = process.argv.includes('--watch') || process.argv.includes('-w') +const prod = process.argv.includes('--prod') + const ctx = await esbuild.context({ bundle: true, entryPoints: ['src/index.js'], + // logLevel: 'debug', logLevel: 'info', platform: 'browser', - sourcemap: process.argv.includes('--watch'), + sourcemap: dev, outdir: 'dist', mainFields: [ 'browser', 'module', 'main' @@ -79,14 +83,14 @@ const ctx = await esbuild.context({ ], minify: process.argv.includes('--minify'), define: { - 'process.env.BUILD_VERSION': process.argv.includes('--watch') ? undefined : JSON.stringify(buildingVersion), + 'process.env.BUILD_VERSION': JSON.stringify(dev ? buildingVersion : 'undefined'), 'process.env.GITHUB_URL': JSON.stringify(`https://github.com/${process.env.GITHUB_REPOSITORY || `${process.env.VERCEL_GIT_REPO_OWNER}/${process.env.VERCEL_GIT_REPO_SLUG}`}`) }, // chunkNames: '[name]', }) -if (process.argv.includes('--watch')) { +if (dev) { await ctx.watch() server.app.get('/esbuild', (req, res, next) => { res.writeHead(200, { @@ -110,16 +114,19 @@ if (process.argv.includes('--watch')) { }) }) } else { - fs.writeFileSync('dist/version.txt', buildingVersion, 'utf-8') const result = await ctx.rebuild() // console.log(await analyzeMetafile(result.metafile)) - const { count, size, warnings } = await generateSW({ - // dontCacheBustURLsMatching: [new RegExp('...')], - globDirectory: 'dist', - additionalManifestEntries: getSwAdditionalEntries(), - swDest: 'dist/service-worker.js', - }) + if (prod) { + fs.writeFileSync('dist/version.txt', buildingVersion, 'utf-8') + + const { count, size, warnings } = await generateSW({ + // dontCacheBustURLsMatching: [new RegExp('...')], + globDirectory: 'dist', + additionalManifestEntries: getSwAdditionalEntries(), + swDest: 'dist/service-worker.js', + }) + } await ctx.dispose() } diff --git a/package.json b/package.json index eccf63c8..685702ad 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "scripts": { "start": "node scripts/build.js copyFilesDev && node esbuild.mjs --minify --watch", "start-watch-script": "nodemon -w esbuild.mjs esbuild.mjs", - "build": "node scripts/build.js copyFiles && node esbuild.mjs --minify --build-only", + "build": "node scripts/build.js copyFiles && node esbuild.mjs --minify --prod", "watch": "node scripts/build.js copyFilesDev && webpack serve --config webpack.dev.js --progress", "postinstall": "node scripts/patchPackages.js", "test:cypress": "cypress run", diff --git a/server.js b/server.js index 496bbd76..0da756ca 100644 --- a/server.js +++ b/server.js @@ -30,7 +30,7 @@ if (process.argv[3] === 'dev') { } // Start the server -const server = process.argv.includes('--build-only') ? undefined : app.listen(require.main !== module || process.argv[2] === undefined ? 8080 : process.argv[2], function () { +const server = process.argv.includes('--prod') ? undefined : app.listen(require.main !== module || process.argv[2] === undefined ? 8080 : process.argv[2], function () { console.log('Server listening on port ' + server.address().port) })