const path = require( 'path' ); const jetpackWebpackConfig = require( '@automattic/jetpack-webpack-config/webpack' ); module.exports = { entry: { 'action-bar': path.join( __dirname, './src/js/action-bar.js' ) }, mode: jetpackWebpackConfig.mode, devtool: jetpackWebpackConfig.devtool, output: { ...jetpackWebpackConfig.output, path: path.join( __dirname, './build' ), }, optimization: { ...jetpackWebpackConfig.optimization, splitChunks: { // Unused keys are prefixed with underscores, as per eslint recommendation. name: ( _module, _chunks, key ) => `action-bar.${ key }`, }, }, resolve: { ...jetpackWebpackConfig.resolve, alias: { ...jetpackWebpackConfig.resolve.alias, fs: false, }, }, node: false, plugins: [ ...jetpackWebpackConfig.StandardPlugins() ], module: { strictExportPresence: true, rules: [ // Transpile JavaScript. jetpackWebpackConfig.TranspileRule( { exclude: /node_modules\//, } ), // Transpile @automattic/jetpack-* in node_modules too. jetpackWebpackConfig.TranspileRule( { includeNodeModules: [ '@automattic/jetpack-' ], } ), // Handle CSS. jetpackWebpackConfig.CssRule( { extensions: [ 'css', 'sass', 'scss' ], } ), // Handle images. jetpackWebpackConfig.FileRule(), ], }, externals: { ...jetpackWebpackConfig.externals, }, };