-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathconfig-overrides.js
38 lines (34 loc) · 1.16 KB
/
config-overrides.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
const webpack = require('webpack');
module.exports = function override(config, env) {
config.resolve.fallback = {
...config.resolve.fallback,
"http": require.resolve("stream-http"),
"https": require.resolve("https-browserify"),
"url": require.resolve("url"),
"stream": require.resolve("stream-browserify"),
"path": require.resolve("path-browserify"),
"zlib": require.resolve("browserify-zlib"),
"net": false,
"querystring": require.resolve("querystring-es3"),
"fs": false,
"process": require.resolve("process/browser"),
"timers": require.resolve("timers-browserify"),
"crypto": require.resolve("crypto-browserify"),
"assert": require.resolve("assert/"),
"vm": require.resolve("vm-browserify"),
"async_hooks": false,
};
// Prevent Webpack from bundling express and similar backend libraries
config.externals = {
express: 'commonjs express',
mongoose: 'commonjs mongoose',
// Add any other backend modules you don't want to bundle here
};
config.plugins.push(
new webpack.ProvidePlugin({
process: 'process/browser',
Buffer: ['buffer', 'Buffer'],
})
);
return config;
};