32 lines
987 B
JavaScript
32 lines
987 B
JavaScript
const webpack = require('webpack');
|
|
const path = require('path');
|
|
module.exports = function override(config) {
|
|
const fallback = config.resolve.fallback || {};
|
|
Object.assign(fallback, {
|
|
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'),
|
|
vm: require.resolve('vm-browserify'),
|
|
});
|
|
config.resolve.fallback = fallback;
|
|
config.plugins = (config.plugins || []).concat([
|
|
new webpack.ProvidePlugin({
|
|
process: 'process/browser',
|
|
Buffer: ['buffer', 'Buffer'],
|
|
}),
|
|
]);
|
|
const modules = config.resolve.modules;
|
|
config.resolve.modules = [...modules, path.resolve(__dirname, 'src')];
|
|
config.module.rules.push({
|
|
test: /\.m?js/,
|
|
resolve: {
|
|
fullySpecified: false,
|
|
},
|
|
});
|
|
return config;
|
|
};
|