webpack-atoms
Version:
Small atomic bits for crafting webpack configs
44 lines (39 loc) • 1.82 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _webpack = _interopRequireDefault(require("webpack"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function plugin(plugin) {
return (...args) => {
return new plugin(...args);
};
}
const plugins = {
normalModuleReplacement: plugin(_webpack.default.NormalModuleReplacementPlugin),
contextReplacement: plugin(_webpack.default.ContextReplacementPlugin),
ignore: plugin(_webpack.default.IgnorePlugin),
watchIgnore: plugin(_webpack.default.WatchIgnorePlugin),
banner: plugin(_webpack.default.BannerPlugin),
prefetch: plugin(_webpack.default.PrefetchPlugin),
provide: plugin(_webpack.default.ProvidePlugin),
hotModuleReplacement: plugin(_webpack.default.HotModuleReplacementPlugin),
sourceMapDevTool: plugin(_webpack.default.SourceMapDevToolPlugin),
evalSourceMapDevTool: plugin(_webpack.default.EvalSourceMapDevToolPlugin),
progress: plugin(_webpack.default.ProgressPlugin),
noEmitOnErrors: plugin(_webpack.default.NoEmitOnErrorsPlugin),
environment: plugin(_webpack.default.EnvironmentPlugin),
dll: plugin(_webpack.default.DllPlugin),
dllReference: plugin(_webpack.default.DllReferencePlugin),
loaderOptions: plugin(_webpack.default.LoaderOptionsPlugin),
aggressiveMerging: plugin(_webpack.default.optimize.AggressiveMergingPlugin),
// aggressiveSplitting: plugin(
// webpack.optimize.AggressiveSplittingPlugin as any,
// ),
limitChunkCount: plugin(_webpack.default.optimize.LimitChunkCountPlugin),
minChunkSize: plugin(_webpack.default.optimize.MinChunkSizePlugin),
moduleConcatenation: plugin(_webpack.default.optimize.ModuleConcatenationPlugin)
};
var _default = plugins;
exports.default = _default;