2019-10-03 12:32:45 -06:00
|
|
|
const WorkerLoaderPlugin = require("craco-worker-loader");
|
2019-10-06 15:10:45 -06:00
|
|
|
const SentryPlugin = require("craco-sentry-plugin");
|
2019-09-26 16:22:56 -06:00
|
|
|
|
|
|
|
module.exports = function({ env }) {
|
2019-10-06 15:10:45 -06:00
|
|
|
var plugins = [
|
|
|
|
{
|
|
|
|
plugin: WorkerLoaderPlugin
|
|
|
|
}
|
|
|
|
];
|
|
|
|
if (env === "production") {
|
2019-10-07 11:58:15 -06:00
|
|
|
// plugins.push({
|
|
|
|
// plugin: SentryPlugin
|
|
|
|
// });
|
2019-10-06 15:10:45 -06:00
|
|
|
}
|
2019-09-26 16:22:56 -06:00
|
|
|
return {
|
2019-10-06 15:10:45 -06:00
|
|
|
plugins: plugins,
|
2019-09-26 16:22:56 -06:00
|
|
|
webpack: {
|
2019-10-06 15:10:45 -06:00
|
|
|
configure: (webpackConfig, { env, paths }) => {
|
|
|
|
webpackConfig.output.globalObject = "this";
|
|
|
|
webpackConfig.optimization.minimizer = webpackConfig.optimization.minimizer.map(
|
|
|
|
function(plugin) {
|
|
|
|
if (plugin.constructor.name !== "TerserPlugin") {
|
|
|
|
return plugin;
|
|
|
|
}
|
|
|
|
plugin.options.terserOptions.keep_fnames = true;
|
|
|
|
return plugin;
|
|
|
|
}
|
|
|
|
);
|
|
|
|
return webpackConfig;
|
2019-09-26 16:22:56 -06:00
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
};
|