-
Notifications
You must be signed in to change notification settings - Fork 3
/
config-overrides.js
37 lines (30 loc) · 1.01 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
const NodePolyfillPlugin = require('node-polyfill-webpack-plugin');
const { buffer } = require('stream/consumers');
const webpack = require('webpack');
module.exports = function override(config, env) {
config.resolve.fallback = {
fs: false,
path: false,
net: false,
tls: false,
crypto: require.resolve('crypto-browserify'),
stream: require.resolve('stream-browserify'),
assert: require.resolve('assert'),
http: require.resolve('stream-http'),
https: require.resolve('https-browserify'),
os: require.resolve('os-browserify'),
url: require.resolve('url')
}
const scopePluginIndex = config.resolve.plugins.findIndex(
({ constructor }) => constructor && constructor.name === 'ModuleScopePlugin'
);
config.resolve.plugins.splice(scopePluginIndex, 1);
config.plugins.push(new NodePolyfillPlugin({
excludeAliases: ['console']
}))
config.plugins.push(new webpack.ProvidePlugin({
process: 'process/browser',
Buffer: ['buffer', 'Buffer']
}))
return config;
}