mirror of
https://github.com/bitwarden/browser
synced 2025-12-11 13:53:34 +00:00
55 lines
1.7 KiB
JavaScript
55 lines
1.7 KiB
JavaScript
const path = require("path");
|
|
const { buildConfig } = require("../../apps/browser/webpack.base");
|
|
|
|
module.exports = (webpackConfig, context) => {
|
|
// Detect if called by Nx (context parameter exists)
|
|
const isNxBuild = context && context.options;
|
|
|
|
if (isNxBuild) {
|
|
// Nx build configuration
|
|
const mode = context.options.mode || "development";
|
|
if (process.env.NODE_ENV == null) {
|
|
process.env.NODE_ENV = mode;
|
|
}
|
|
const ENV = (process.env.ENV = process.env.NODE_ENV);
|
|
|
|
// Set environment variables from Nx context
|
|
if (context.options.env) {
|
|
Object.keys(context.options.env).forEach((key) => {
|
|
process.env[key] = context.options.env[key];
|
|
});
|
|
}
|
|
|
|
return buildConfig({
|
|
configName: "Commercial",
|
|
popup: {
|
|
entry: path.resolve(__dirname, "src/popup/main.ts"),
|
|
entryModule: "bitwarden_license/bit-browser/src/popup/app.module#AppModule",
|
|
},
|
|
background: {
|
|
entry: path.resolve(__dirname, "src/platform/background.ts"),
|
|
},
|
|
tsConfig: path.resolve(__dirname, "tsconfig.build.json"),
|
|
outputPath:
|
|
context.context && context.context.root
|
|
? path.resolve(context.context.root, context.options.outputPath)
|
|
: context.options.outputPath,
|
|
mode: mode,
|
|
env: ENV,
|
|
});
|
|
} else {
|
|
// npm build configuration
|
|
return buildConfig({
|
|
configName: "Commercial",
|
|
popup: {
|
|
entry: path.resolve(__dirname, "src/popup/main.ts"),
|
|
entryModule: "bitwarden_license/bit-browser/src/popup/app.module#AppModule",
|
|
},
|
|
background: {
|
|
entry: path.resolve(__dirname, "src/platform/background.ts"),
|
|
},
|
|
tsConfig: path.resolve(__dirname, "tsconfig.json"),
|
|
});
|
|
}
|
|
};
|