js-waku/examples/web-chat/config/webpack.extend.js

71 lines
2.1 KiB
JavaScript
Raw Normal View History

2022-02-04 03:12:00 +00:00
const webpack = require("webpack");
module.exports = {
dev: (config) => {
// Override webpack 5 config from react-scripts to load polyfills
if (!config.resolve) config.resolve = {};
if (!config.resolve.fallback) config.resolve.fallback = {};
Object.assign(config.resolve.fallback, {
assert: require.resolve("assert"),
2022-02-04 03:12:00 +00:00
buffer: require.resolve("buffer"),
2022-05-09 13:32:43 +00:00
crypto: false,
http: require.resolve("http-browserify"),
https: require.resolve("https-browserify"),
2022-02-04 03:12:00 +00:00
stream: require.resolve("stream-browserify"),
url: require.resolve("url"),
zlib: require.resolve("browserify-zlib"),
2022-01-07 04:18:37 +00:00
});
2022-01-07 04:18:37 +00:00
if (!config.plugins) config.plugins = [];
config.plugins.push(
new webpack.DefinePlugin({
2022-02-04 03:12:00 +00:00
"process.env.ENV": JSON.stringify("dev"),
})
2022-01-07 04:18:37 +00:00
);
config.plugins.push(
new webpack.ProvidePlugin({
2022-02-04 03:12:00 +00:00
process: "process/browser.js",
Buffer: ["buffer", "Buffer"],
2022-01-07 04:18:37 +00:00
})
);
2022-01-07 04:18:37 +00:00
if (!config.ignoreWarnings) config.ignoreWarnings = [];
config.ignoreWarnings.push(/Failed to parse source map/);
return config;
},
prod: (config) => {
// Override webpack 5 config from react-scripts to load polyfills
if (!config.resolve) config.resolve = {};
if (!config.resolve.fallback) config.resolve.fallback = {};
Object.assign(config.resolve.fallback, {
assert: require.resolve("assert"),
2022-02-04 03:12:00 +00:00
buffer: require.resolve("buffer"),
2022-05-09 13:32:43 +00:00
crypto: false,
http: require.resolve("http-browserify"),
https: require.resolve("https-browserify"),
2022-02-04 03:12:00 +00:00
stream: require.resolve("stream-browserify"),
url: require.resolve("url"),
zlib: require.resolve("browserify-zlib"),
2022-01-07 04:18:37 +00:00
});
2022-01-07 04:18:37 +00:00
if (!config.plugins) config.plugins = [];
config.plugins.push(
new webpack.DefinePlugin({
2022-02-04 03:12:00 +00:00
"process.env.ENV": JSON.stringify("prod"),
})
2022-01-07 04:18:37 +00:00
);
config.plugins.push(
new webpack.ProvidePlugin({
2022-02-04 03:12:00 +00:00
process: "process/browser.js",
Buffer: ["buffer", "Buffer"],
2022-01-07 04:18:37 +00:00
})
);
2022-01-07 04:18:37 +00:00
if (!config.ignoreWarnings) config.ignoreWarnings = [];
config.ignoreWarnings.push(/Failed to parse source map/);
return config;
2022-01-07 04:18:37 +00:00
},
};