summaryrefslogtreecommitdiffstats
path: root/node_modules/webpack/lib/webpack.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/webpack/lib/webpack.js')
-rw-r--r--node_modules/webpack/lib/webpack.js206
1 files changed, 0 insertions, 206 deletions
diff --git a/node_modules/webpack/lib/webpack.js b/node_modules/webpack/lib/webpack.js
deleted file mode 100644
index 80f810b..0000000
--- a/node_modules/webpack/lib/webpack.js
+++ /dev/null
@@ -1,206 +0,0 @@
-/*
- MIT License http://www.opensource.org/licenses/mit-license.php
- Author Tobias Koppers @sokra
-*/
-"use strict";
-
-const Compiler = require("./Compiler");
-const MultiCompiler = require("./MultiCompiler");
-const NodeEnvironmentPlugin = require("./node/NodeEnvironmentPlugin");
-const WebpackOptionsApply = require("./WebpackOptionsApply");
-const WebpackOptionsDefaulter = require("./WebpackOptionsDefaulter");
-const validateSchema = require("./validateSchema");
-const WebpackOptionsValidationError = require("./WebpackOptionsValidationError");
-const webpackOptionsSchema = require("../schemas/WebpackOptions.json");
-const RemovedPluginError = require("./RemovedPluginError");
-const version = require("../package.json").version;
-
-/** @typedef {import("../declarations/WebpackOptions").WebpackOptions} WebpackOptions */
-
-/**
- * @param {WebpackOptions} options options object
- * @param {function(Error=, Stats=): void=} callback callback
- * @returns {Compiler | MultiCompiler} the compiler object
- */
-const webpack = (options, callback) => {
- const webpackOptionsValidationErrors = validateSchema(
- webpackOptionsSchema,
- options
- );
- if (webpackOptionsValidationErrors.length) {
- throw new WebpackOptionsValidationError(webpackOptionsValidationErrors);
- }
- let compiler;
- if (Array.isArray(options)) {
- compiler = new MultiCompiler(
- Array.from(options).map(options => webpack(options))
- );
- } else if (typeof options === "object") {
- options = new WebpackOptionsDefaulter().process(options);
-
- compiler = new Compiler(options.context);
- compiler.options = options;
- new NodeEnvironmentPlugin({
- infrastructureLogging: options.infrastructureLogging
- }).apply(compiler);
- if (options.plugins && Array.isArray(options.plugins)) {
- for (const plugin of options.plugins) {
- if (typeof plugin === "function") {
- plugin.call(compiler, compiler);
- } else {
- plugin.apply(compiler);
- }
- }
- }
- compiler.hooks.environment.call();
- compiler.hooks.afterEnvironment.call();
- compiler.options = new WebpackOptionsApply().process(options, compiler);
- } else {
- throw new Error("Invalid argument: options");
- }
- if (callback) {
- if (typeof callback !== "function") {
- throw new Error("Invalid argument: callback");
- }
- if (
- options.watch === true ||
- (Array.isArray(options) && options.some(o => o.watch))
- ) {
- const watchOptions = Array.isArray(options)
- ? options.map(o => o.watchOptions || {})
- : options.watchOptions || {};
- return compiler.watch(watchOptions, callback);
- }
- compiler.run(callback);
- }
- return compiler;
-};
-
-exports = module.exports = webpack;
-exports.version = version;
-
-webpack.WebpackOptionsDefaulter = WebpackOptionsDefaulter;
-webpack.WebpackOptionsApply = WebpackOptionsApply;
-webpack.Compiler = Compiler;
-webpack.MultiCompiler = MultiCompiler;
-webpack.NodeEnvironmentPlugin = NodeEnvironmentPlugin;
-// @ts-ignore Global @this directive is not supported
-webpack.validate = validateSchema.bind(this, webpackOptionsSchema);
-webpack.validateSchema = validateSchema;
-webpack.WebpackOptionsValidationError = WebpackOptionsValidationError;
-
-const exportPlugins = (obj, mappings) => {
- for (const name of Object.keys(mappings)) {
- Object.defineProperty(obj, name, {
- configurable: false,
- enumerable: true,
- get: mappings[name]
- });
- }
-};
-
-exportPlugins(exports, {
- AutomaticPrefetchPlugin: () => require("./AutomaticPrefetchPlugin"),
- BannerPlugin: () => require("./BannerPlugin"),
- CachePlugin: () => require("./CachePlugin"),
- ContextExclusionPlugin: () => require("./ContextExclusionPlugin"),
- ContextReplacementPlugin: () => require("./ContextReplacementPlugin"),
- DefinePlugin: () => require("./DefinePlugin"),
- Dependency: () => require("./Dependency"),
- DllPlugin: () => require("./DllPlugin"),
- DllReferencePlugin: () => require("./DllReferencePlugin"),
- EnvironmentPlugin: () => require("./EnvironmentPlugin"),
- EvalDevToolModulePlugin: () => require("./EvalDevToolModulePlugin"),
- EvalSourceMapDevToolPlugin: () => require("./EvalSourceMapDevToolPlugin"),
- ExtendedAPIPlugin: () => require("./ExtendedAPIPlugin"),
- ExternalsPlugin: () => require("./ExternalsPlugin"),
- HashedModuleIdsPlugin: () => require("./HashedModuleIdsPlugin"),
- HotModuleReplacementPlugin: () => require("./HotModuleReplacementPlugin"),
- IgnorePlugin: () => require("./IgnorePlugin"),
- LibraryTemplatePlugin: () => require("./LibraryTemplatePlugin"),
- LoaderOptionsPlugin: () => require("./LoaderOptionsPlugin"),
- LoaderTargetPlugin: () => require("./LoaderTargetPlugin"),
- MemoryOutputFileSystem: () => require("./MemoryOutputFileSystem"),
- Module: () => require("./Module"),
- ModuleFilenameHelpers: () => require("./ModuleFilenameHelpers"),
- NamedChunksPlugin: () => require("./NamedChunksPlugin"),
- NamedModulesPlugin: () => require("./NamedModulesPlugin"),
- NoEmitOnErrorsPlugin: () => require("./NoEmitOnErrorsPlugin"),
- NormalModuleReplacementPlugin: () =>
- require("./NormalModuleReplacementPlugin"),
- PrefetchPlugin: () => require("./PrefetchPlugin"),
- ProgressPlugin: () => require("./ProgressPlugin"),
- ProvidePlugin: () => require("./ProvidePlugin"),
- SetVarMainTemplatePlugin: () => require("./SetVarMainTemplatePlugin"),
- SingleEntryPlugin: () => require("./SingleEntryPlugin"),
- SourceMapDevToolPlugin: () => require("./SourceMapDevToolPlugin"),
- Stats: () => require("./Stats"),
- Template: () => require("./Template"),
- UmdMainTemplatePlugin: () => require("./UmdMainTemplatePlugin"),
- WatchIgnorePlugin: () => require("./WatchIgnorePlugin")
-});
-exportPlugins((exports.dependencies = {}), {
- DependencyReference: () => require("./dependencies/DependencyReference")
-});
-exportPlugins((exports.optimize = {}), {
- AggressiveMergingPlugin: () => require("./optimize/AggressiveMergingPlugin"),
- AggressiveSplittingPlugin: () =>
- require("./optimize/AggressiveSplittingPlugin"),
- ChunkModuleIdRangePlugin: () =>
- require("./optimize/ChunkModuleIdRangePlugin"),
- LimitChunkCountPlugin: () => require("./optimize/LimitChunkCountPlugin"),
- MinChunkSizePlugin: () => require("./optimize/MinChunkSizePlugin"),
- ModuleConcatenationPlugin: () =>
- require("./optimize/ModuleConcatenationPlugin"),
- OccurrenceOrderPlugin: () => require("./optimize/OccurrenceOrderPlugin"),
- OccurrenceModuleOrderPlugin: () =>
- require("./optimize/OccurrenceModuleOrderPlugin"),
- OccurrenceChunkOrderPlugin: () =>
- require("./optimize/OccurrenceChunkOrderPlugin"),
- RuntimeChunkPlugin: () => require("./optimize/RuntimeChunkPlugin"),
- SideEffectsFlagPlugin: () => require("./optimize/SideEffectsFlagPlugin"),
- SplitChunksPlugin: () => require("./optimize/SplitChunksPlugin")
-});
-exportPlugins((exports.web = {}), {
- FetchCompileWasmTemplatePlugin: () =>
- require("./web/FetchCompileWasmTemplatePlugin"),
- JsonpTemplatePlugin: () => require("./web/JsonpTemplatePlugin")
-});
-exportPlugins((exports.webworker = {}), {
- WebWorkerTemplatePlugin: () => require("./webworker/WebWorkerTemplatePlugin")
-});
-exportPlugins((exports.node = {}), {
- NodeTemplatePlugin: () => require("./node/NodeTemplatePlugin"),
- ReadFileCompileWasmTemplatePlugin: () =>
- require("./node/ReadFileCompileWasmTemplatePlugin")
-});
-exportPlugins((exports.debug = {}), {
- ProfilingPlugin: () => require("./debug/ProfilingPlugin")
-});
-exportPlugins((exports.util = {}), {
- createHash: () => require("./util/createHash")
-});
-
-const defineMissingPluginError = (namespace, pluginName, errorMessage) => {
- Object.defineProperty(namespace, pluginName, {
- configurable: false,
- enumerable: true,
- get() {
- throw new RemovedPluginError(errorMessage);
- }
- });
-};
-
-// TODO remove in webpack 5
-defineMissingPluginError(
- exports.optimize,
- "UglifyJsPlugin",
- "webpack.optimize.UglifyJsPlugin has been removed, please use config.optimization.minimize instead."
-);
-
-// TODO remove in webpack 5
-defineMissingPluginError(
- exports.optimize,
- "CommonsChunkPlugin",
- "webpack.optimize.CommonsChunkPlugin has been removed, please use config.optimization.splitChunks instead."
-);