Webpack 5 Node v18.12.1 Backbone
I'm trying to package a client/server website using webpack (Express.js/Backbone.js) but I get this error during runtime. Not sure where to look for the problem.
[24/02/18| 9:42PM] ➜ project git:(master) ✗ $ npm start
> [email protected] start
> node ./dist/main.js
/Users/user/Documents/dir/project/dist/main.js:28830
/Users/user/Documents/dir/project/node_modules/.bin/webpack = __webpack_require__(4523);
^
SyntaxError: Invalid regular expression flags
at Object.compileFunction (node:vm:360:18)
at wrapSafe (node:internal/modules/cjs/loader:1088:15)
at Module._compile (node:internal/modules/cjs/loader:1123:27)
at Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
at Module.load (node:internal/modules/cjs/loader:1037:32)
at Module._load (node:internal/modules/cjs/loader:878:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
at node:internal/main/run_main_module:23:47
Here is my config
const path = require('path');
const webpack = require('webpack');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const isProduction = process.env.NODE_ENV == 'development';
const stylesHandler = 'style-loader';
const config = {
infrastructureLogging: {
level: 'verbose'
},
target: 'web',
optimization: {
minimize: false
},
entry: {
app: [
// 'webpack-dev-server/client?http://localhost:8081',
'./src/start-services.js',//server
'./src/main.js'//client
]
},
output: {
filename: '[name].js',
path: path.resolve(__dirname, 'dist'),
publicPath: '/assets/',
},
// devServer: {
// open: true,
// host: 'localhost',
// },
node: {
// global: true,
// __filename: true,
// __dirname: true
},
resolve: {
// modulesDirectories: ['js', 'views', 'node_modules'],
modules: [
path.resolve(__dirname, 'node_modules'),
path.resolve(__dirname, './src'),
],
fallback: {
"crypto": require.resolve("crypto-browserify"),
"path": require.resolve("path-browserify"),
"console": require.resolve("console-browserify"),
"async_hooks": false,
"http": require.resolve("stream-http"),
"https": require.resolve("https-browserify"),
"assert": require.resolve("assert/"),
"stream": require.resolve("stream-browserify"),
"zlib": require.resolve("browserify-zlib"),
"os": require.resolve("os-browserify/browser"),
"child_process": false,
"fs": false,
"os": false,
"path": false,
"tls": false,
"net": false,
"dns": false,
"util": require.resolve("util/")
// "net": require.resolve ("net-browserify"),
},
alias: {
'express-handlebars': 'handlebars/dist/handlebars.js',
}
},
plugins: [
new HtmlWebpackPlugin({
template: 'index.html',
}),
new webpack.DefinePlugin({
'process.env.FLUENTFFMPEG_COV': false
})
// Add your plugins here
// Learn more about plugins from https://webpack.js.org/configuration/plugins/
],
module: {
rules: [
{
test: /\.(?:js|mjs|cjs)$/,
exclude: /node_modules/,
use: {
loader: 'babel-loader',
options: {
presets: [
['@babel/preset-env', { targets: "defaults" }]
]
}
}
},
{
test: /\.css$/i,
use: [stylesHandler,'css-loader'],
},
{
test: /\.(eot|svg|ttf|woff|woff2|png|jpg|gif)$/i,
type: 'asset',
},
{
test: /\.(hjs)$/i,
loader: "handlebars-loader"
}
// Add your rules for custom modules here
// Learn more about loaders from https://webpack.js.org/loaders/
],
},
};
module.exports = () => {
if (isProduction) {
config.mode = 'production';
} else {
config.mode = 'development';
}
return config;
};
I tried to find one of my files that may have a regex causing this but I'm not understanding the error.