From 2c9f74b5f818b0cca9ee4b0e84f51feb57782440 Mon Sep 17 00:00:00 2001 From: EnixCoda Date: Sat, 7 Sep 2024 17:54:06 +0800 Subject: [PATCH] build: build for default only --- package.json | 1 + webpack.config.ts | 10 +++++++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 27c4cf4..a47e272 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ }, "scripts": { "dev": "VERSION=dev-v$(node scripts/get-version.js) NODE_OPTIONS=--openssl-legacy-provider webpack-dashboard -- webpack --watch", + "dev:all": "GITAKO_TARGET= yarn run dev", "debug-firefox": "web-ext run --source-dir=dist-firefox --keep-profile-changes --start-url https://github.com/EnixCoda/Gitako", "prepare": "husky install", "postinstall": "patch-package", diff --git a/webpack.config.ts b/webpack.config.ts index 8b7b248..1eb86b1 100644 --- a/webpack.config.ts +++ b/webpack.config.ts @@ -11,7 +11,9 @@ const { CleanWebpackPlugin } = require('clean-webpack-plugin') const IN_PRODUCTION_MODE = process.env.NODE_ENV === 'production' -function createConfig({ envTarget }: { envTarget: 'default' | 'firefox' | 'safari' }) { +type Target = 'default' | 'firefox' | 'safari' + +function createConfig({ envTarget }: { envTarget: Target }) { const outputPath = { default: path.resolve(__dirname, 'dist'), firefox: path.resolve(__dirname, 'dist-firefox'), @@ -196,9 +198,11 @@ function createConfig({ envTarget }: { envTarget: 'default' | 'firefox' | 'safar return webpackConfig } -const configs = (['default', 'firefox', 'safari'] as const).map(envTarget => - createConfig({ envTarget }), +const gitakoTarget = process.env.GITAKO_TARGET ?? 'default' +const enabledTargets = (['default', 'firefox', 'safari'] as Target[]).filter( + target => !gitakoTarget || gitakoTarget === target, ) +const configs = enabledTargets.map(envTarget => createConfig({ envTarget })) // Enable parallelism for faster build // https://webpack.js.org/configuration/configuration-types/#parallelism