diff --git a/webpack.config.js b/webpack.config.js index 72030e5..8ab5091 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -14,6 +14,16 @@ const manifestInput = require('./src/manifest'); const targetBrowser = process.env.TARGET_BROWSER; const manifest = wextManifest[targetBrowser](manifestInput); +const getExtensionFileType = () => { + if (targetBrowser === 'opera') { + return 'crx'; + } + if (targetBrowser === 'firefox') { + return 'xpi'; + } + return 'zip'; +}; + module.exports = { mode: 'development', @@ -35,7 +45,7 @@ module.exports = { new CleanWebpackPlugin({ cleanOnceBeforeBuildPatterns: [ path.join(process.cwd(), `extension/${targetBrowser}`), - path.join(process.cwd(), `extension/${targetBrowser}.zip`), + path.join(process.cwd(), `extension/${targetBrowser}.${getExtensionFileType()}`), ], cleanStaleWebpackAssets: false, verbose: true, @@ -117,7 +127,8 @@ module.exports = { }), new ZipPlugin({ path: path.resolve(__dirname, 'extension'), - filename: `${targetBrowser}.zip`, + extension: `${getExtensionFileType()}`, + filename: `${targetBrowser}`, }), ], },