diff options
| author | ruki <waruqi@gmail.com> | 2018-11-08 00:38:48 +0800 |
|---|---|---|
| committer | ruki <waruqi@gmail.com> | 2018-11-07 21:53:09 +0800 |
| commit | 26105034da4fcce7ac883c899d781f016559310d (patch) | |
| tree | c459a5dc4e3aa0972d9919033ece511ce76dd129 /node_modules/webpack/schemas | |
| parent | 2c77f00f1a7ecb6c8192f9c16d3b2001b254a107 (diff) | |
| download | xmake-docs-26105034da4fcce7ac883c899d781f016559310d.tar.gz xmake-docs-26105034da4fcce7ac883c899d781f016559310d.zip | |
switch to vuepress
Diffstat (limited to 'node_modules/webpack/schemas')
17 files changed, 2987 insertions, 0 deletions
diff --git a/node_modules/webpack/schemas/WebpackOptions.json b/node_modules/webpack/schemas/WebpackOptions.json new file mode 100644 index 00000000..ea06060b --- /dev/null +++ b/node_modules/webpack/schemas/WebpackOptions.json @@ -0,0 +1,2159 @@ +{ + "definitions": { + "ArrayOfStringOrStringArrayValues": { + "type": "array", + "items": { + "description": "string or array of strings", + "anyOf": [ + { + "type": "string", + "minLength": 1 + }, + { + "type": "array", + "items": { + "description": "A non-empty string", + "type": "string", + "minLength": 1 + } + } + ] + } + }, + "ArrayOfStringValues": { + "type": "array", + "items": { + "description": "A non-empty string", + "type": "string", + "minLength": 1 + } + }, + "Entry": { + "anyOf": [ + { + "$ref": "#/definitions/EntryDynamic" + }, + { + "$ref": "#/definitions/EntryStatic" + } + ] + }, + "EntryDynamic": { + "description": "A Function returning an entry object, an entry string, an entry array or a promise to these things.", + "instanceof": "Function", + "tsType": "(() => EntryStatic | Promise<EntryStatic>)" + }, + "EntryItem": { + "oneOf": [ + { + "description": "An entry point without name. The string is resolved to a module which is loaded upon startup.", + "type": "string", + "minLength": 1 + }, + { + "description": "An entry point without name. All modules are loaded upon startup. The last one is exported.", + "anyOf": [ + { + "$ref": "#/definitions/NonEmptyArrayOfUniqueStringValues" + } + ] + } + ] + }, + "EntryObject": { + "description": "Multiple entry bundles are created. The key is the chunk name. The value can be a string or an array.", + "type": "object", + "additionalProperties": { + "description": "An entry point with name", + "oneOf": [ + { + "description": "The string is resolved to a module which is loaded upon startup.", + "type": "string", + "minLength": 1 + }, + { + "description": "All modules are loaded upon startup. The last one is exported.", + "anyOf": [ + { + "$ref": "#/definitions/NonEmptyArrayOfUniqueStringValues" + } + ] + } + ] + }, + "minProperties": 1 + }, + "EntryStatic": { + "oneOf": [ + { + "$ref": "#/definitions/EntryObject" + }, + { + "$ref": "#/definitions/EntryItem" + } + ] + }, + "ExternalItem": { + "anyOf": [ + { + "description": "An exact matched dependency becomes external. The same string is used as external dependency.", + "type": "string" + }, + { + "description": "If an dependency matches exactly a property of the object, the property value is used as dependency.", + "type": "object", + "additionalProperties": { + "description": "The dependency used for the external", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + }, + { + "$ref": "#/definitions/ArrayOfStringValues" + }, + { + "type": "boolean" + } + ] + } + }, + { + "description": "Every matched dependency becomes external.", + "instanceof": "RegExp", + "tsType": "RegExp" + } + ] + }, + "Externals": { + "anyOf": [ + { + "description": "`function(context, request, callback(err, result))` The function is called on each dependency.", + "instanceof": "Function", + "tsType": "((context: string, request: string, callback: (err?: Error, result?: string) => void) => void)" + }, + { + "$ref": "#/definitions/ExternalItem" + }, + { + "type": "array", + "items": { + "description": "External configuration", + "anyOf": [ + { + "description": "`function(context, request, callback(err, result))` The function is called on each dependency.", + "instanceof": "Function", + "tsType": "((context: string, request: string, callback: (err?: Error, result?: string) => void) => void)" + }, + { + "$ref": "#/definitions/ExternalItem" + } + ] + } + } + ] + }, + "FilterItemTypes": { + "anyOf": [ + { + "instanceof": "RegExp", + "tsType": "RegExp" + }, + { + "type": "string" + }, + { + "instanceof": "Function", + "tsType": "Function" + } + ] + }, + "FilterTypes": { + "anyOf": [ + { + "$ref": "#/definitions/FilterItemTypes" + }, + { + "type": "array", + "items": { + "description": "Rule to filter", + "anyOf": [ + { + "$ref": "#/definitions/FilterItemTypes" + } + ] + } + } + ] + }, + "LibraryCustomUmdObject": { + "type": "object", + "additionalProperties": false, + "properties": { + "amd": { + "description": "Name of the exposed AMD library in the UMD", + "type": "string" + }, + "commonjs": { + "description": "Name of the exposed commonjs export in the UMD", + "type": "string" + }, + "root": { + "description": "Name of the property exposed globally by a UMD library", + "anyOf": [ + { + "type": "string" + }, + { + "$ref": "#/definitions/ArrayOfStringValues" + } + ] + } + } + }, + "ModuleOptions": { + "type": "object", + "additionalProperties": false, + "properties": { + "defaultRules": { + "description": "An array of rules applied by default for modules.", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetRules" + } + ] + }, + "exprContextCritical": { + "description": "Enable warnings for full dynamic dependencies", + "type": "boolean" + }, + "exprContextRecursive": { + "description": "Enable recursive directory lookup for full dynamic dependencies", + "type": "boolean" + }, + "exprContextRegExp": { + "description": "Sets the default regular expression for full dynamic dependencies", + "anyOf": [ + { + "type": "boolean" + }, + { + "instanceof": "RegExp", + "tsType": "RegExp" + } + ] + }, + "exprContextRequest": { + "description": "Set the default request for full dynamic dependencies", + "type": "string" + }, + "noParse": { + "description": "Don't parse files matching. It's matched against the full resolved request.", + "anyOf": [ + { + "type": "array", + "items": { + "description": "A regular expression, when matched the module is not parsed", + "instanceof": "RegExp", + "tsType": "RegExp" + }, + "minItems": 1 + }, + { + "instanceof": "RegExp", + "tsType": "RegExp" + }, + { + "instanceof": "Function", + "tsType": "Function" + }, + { + "type": "array", + "items": { + "description": "An absolute path, when the module starts with this path it is not parsed", + "type": "string", + "absolutePath": true + }, + "minItems": 1 + }, + { + "type": "string", + "absolutePath": true + } + ] + }, + "rules": { + "description": "An array of rules applied for modules.", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetRules" + } + ] + }, + "strictExportPresence": { + "description": "Emit errors instead of warnings when imported names don't exist in imported module", + "type": "boolean" + }, + "strictThisContextOnImports": { + "description": "Handle the this context correctly according to the spec for namespace objects", + "type": "boolean" + }, + "unknownContextCritical": { + "description": "Enable warnings when using the require function in a not statically analyse-able way", + "type": "boolean" + }, + "unknownContextRecursive": { + "description": "Enable recursive directory lookup when using the require function in a not statically analyse-able way", + "type": "boolean" + }, + "unknownContextRegExp": { + "description": "Sets the regular expression when using the require function in a not statically analyse-able way", + "anyOf": [ + { + "type": "boolean" + }, + { + "instanceof": "RegExp", + "tsType": "RegExp" + } + ] + }, + "unknownContextRequest": { + "description": "Sets the request when using the require function in a not statically analyse-able way", + "type": "string" + }, + "unsafeCache": { + "description": "Cache the resolving of module requests", + "anyOf": [ + { + "type": "boolean" + }, + { + "instanceof": "Function", + "tsType": "Function" + } + ] + }, + "wrappedContextCritical": { + "description": "Enable warnings for partial dynamic dependencies", + "type": "boolean" + }, + "wrappedContextRecursive": { + "description": "Enable recursive directory lookup for partial dynamic dependencies", + "type": "boolean" + }, + "wrappedContextRegExp": { + "description": "Set the inner regular expression for partial dynamic dependencies", + "instanceof": "RegExp", + "tsType": "RegExp" + } + } + }, + "NodeOptions": { + "type": "object", + "additionalProperties": { + "description": "Include a polyfill for the node.js module", + "enum": [false, true, "mock", "empty"] + }, + "properties": { + "Buffer": { + "description": "Include a polyfill for the 'Buffer' variable", + "enum": [false, true, "mock"] + }, + "__dirname": { + "description": "Include a polyfill for the '__dirname' variable", + "enum": [false, true, "mock"] + }, + "__filename": { + "description": "Include a polyfill for the '__filename' variable", + "enum": [false, true, "mock"] + }, + "console": { + "description": "Include a polyfill for the 'console' variable", + "enum": [false, true, "mock"] + }, + "global": { + "description": "Include a polyfill for the 'global' variable", + "type": "boolean" + }, + "process": { + "description": "Include a polyfill for the 'process' variable", + "enum": [false, true, "mock"] + } + } + }, + "NonEmptyArrayOfUniqueStringValues": { + "type": "array", + "items": { + "description": "A non-empty string", + "type": "string", + "minLength": 1 + }, + "minItems": 1, + "uniqueItems": true + }, + "OptimizationOptions": { + "description": "Enables/Disables integrated optimizations", + "type": "object", + "additionalProperties": false, + "properties": { + "checkWasmTypes": { + "description": "Check for incompatible wasm types when importing/exporting from/to ESM", + "type": "boolean" + }, + "chunkIds": { + "description": "Define the algorithm to choose chunk ids (named: readable ids for better debugging, size: numeric ids focused on minimal initial download size, total-size: numeric ids focused on minimal total download size, false: no algorithm used, as custom one can be provided via plugin)", + "enum": ["natural", "named", "size", "total-size", false] + }, + "concatenateModules": { + "description": "Concatenate modules when possible to generate less modules, more efficient code and enable more optimizations by the minimizer", + "type": "boolean" + }, + "flagIncludedChunks": { + "description": "Also flag chunks as loaded which contain a subset of the modules", + "type": "boolean" + }, + "hashedModuleIds": { + "description": "Use hashed module id instead module identifiers for better long term caching (deprecated, used moduleIds: hashed instead)", + "type": "boolean" + }, + "mangleWasmImports": { + "description": "Reduce size of WASM by changing imports to shorter strings.", + "type": "boolean" + }, + "mergeDuplicateChunks": { + "description": "Merge chunks which contain the same modules", + "type": "boolean" + }, + "minimize": { + "description": "Enable minimizing the output. Uses optimization.minimizer.", + "type": "boolean" + }, + "minimizer": { + "description": "Minimizer(s) to use for minimizing the output", + "type": "array", + "items": { + "description": "Plugin of type object or instanceof Function", + "anyOf": [ + { + "$ref": "#/definitions/WebpackPluginInstance" + }, + { + "$ref": "#/definitions/WebpackPluginFunction" + } + ] + } + }, + "moduleIds": { + "description": "Define the algorithm to choose module ids (natural: numeric ids in order of usage, named: readable ids for better debugging, hashed: short hashes as ids for better long term caching, size: numeric ids focused on minimal initial download size, total-size: numeric ids focused on minimal total download size, false: no algorithm used, as custom one can be provided via plugin)", + "enum": ["natural", "named", "hashed", "size", "total-size", false] + }, + "namedChunks": { + "description": "Use readable chunk identifiers for better debugging (deprecated, used chunkIds: named instead)", + "type": "boolean" + }, + "namedModules": { + "description": "Use readable module identifiers for better debugging (deprecated, used moduleIds: named instead)", + "type": "boolean" + }, + "noEmitOnErrors": { + "description": "Avoid emitting assets when errors occur", + "type": "boolean" + }, + "nodeEnv": { + "description": "Set process.env.NODE_ENV to a specific value", + "anyOf": [ + { + "enum": [false] + }, + { + "type": "string" + } + ] + }, + "occurrenceOrder": { + "description": "Figure out a order of modules which results in the smallest initial bundle", + "type": "boolean" + }, + "portableRecords": { + "description": "Generate records with relative paths to be able to move the context folder", + "type": "boolean" + }, + "providedExports": { + "description": "Figure out which exports are provided by modules to generate more efficient code", + "type": "boolean" + }, + "removeAvailableModules": { + "description": "Removes modules from chunks when these modules are already included in all parents", + "type": "boolean" + }, + "removeEmptyChunks": { + "description": "Remove chunks which are empty", + "type": "boolean" + }, + "runtimeChunk": { + "description": "Create an additional chunk which contains only the webpack runtime and chunk hash maps", + "oneOf": [ + { + "type": "boolean" + }, + { + "enum": ["single", "multiple"] + }, + { + "type": "object", + "additionalProperties": false, + "properties": { + "name": { + "description": "The name or name factory for the runtime chunks", + "oneOf": [ + { + "type": "string" + }, + { + "instanceof": "Function", + "tsType": "Function" + } + ] + } + } + } + ] + }, + "sideEffects": { + "description": "Skip over modules which are flagged to contain no side effects when exports are not used", + "type": "boolean" + }, + "splitChunks": { + "description": "Optimize duplication and caching by splitting chunks by shared modules and cache group", + "oneOf": [ + { + "enum": [false] + }, + { + "$ref": "#/definitions/OptimizationSplitChunksOptions" + } + ] + }, + "usedExports": { + "description": "Figure out which exports are used by modules to mangle export names, omit unused exports and generate more efficient code", + "type": "boolean" + } + } + }, + "OptimizationSplitChunksOptions": { + "type": "object", + "additionalProperties": false, + "properties": { + "automaticNameDelimiter": { + "description": "Sets the name delimiter for created chunks", + "type": "string", + "minLength": 1 + }, + "cacheGroups": { + "description": "Assign modules to a cache group (modules from different cache groups are tried to keep in separate chunks)", + "type": "object", + "additionalProperties": { + "description": "Configuration for a cache group", + "anyOf": [ + { + "enum": [false] + }, + { + "instanceof": "Function", + "tsType": "Function" + }, + { + "type": "string" + }, + { + "instanceof": "RegExp", + "tsType": "RegExp" + }, + { + "type": "object", + "additionalProperties": false, + "properties": { + "automaticNameDelimiter": { + "description": "Sets the name delimiter for created chunks", + "type": "string", + "minLength": 1 + }, + "automaticNamePrefix": { + "description": "Sets the name prefix for created chunks", + "type": "string" + }, + "chunks": { + "description": "Select chunks for determining cache group content (defaults to \"initial\", \"initial\" and \"all\" requires adding these chunks to the HTML)", + "oneOf": [ + { + "enum": ["initial", "async", "all"] + }, + { + "instanceof": "Function", + "tsType": "Function" + } + ] + }, + "enforce": { + "description": "Ignore minimum size, minimum chunks and maximum requests and always create chunks for this cache group", + "type": "boolean" + }, + "filename": { + "description": "Sets the template for the filename for created chunks (Only works for initial chunks)", + "type": "string", + "minLength": 1 + }, + "maxAsyncRequests": { + "description": "Maximum number of requests which are accepted for on-demand loading", + "type": "number", + "minimum": 1 + }, + "maxInitialRequests": { + "description": "Maximum number of initial chunks which are accepted for an entry point", + "type": "number", + "minimum": 1 + }, + "maxSize": { + "description": "Maximal size hint for the created chunks", + "type": "number", + "minimum": 0 + }, + "minChunks": { + "description": "Minimum number of times a module has to be duplicated until it's considered for splitting", + "type": "number", + "minimum": 1 + }, + "minSize": { + "description": "Minimal size for the created chunk", + "type": "number", + "minimum": 0 + }, + "name": { + "description": "Give chunks for this cache group a name (chunks with equal name are merged)", + "oneOf": [ + { + "type": "boolean" + }, + { + "instanceof": "Function", + "tsType": "Function" + }, + { + "type": "string" + } + ] + }, + "priority": { + "description": "Priority of this cache group", + "type": "number" + }, + "reuseExistingChunk": { + "description": "Try to reuse existing chunk (with name) when it has matching modules", + "type": "boolean" + }, + "test": { + "description": "Assign modules to a cache group", + "oneOf": [ + { + "instanceof": "Function", + "tsType": "Function" + }, + { + "type": "string" + }, + { + "instanceof": "RegExp", + "tsType": "RegExp" + } + ] + } + } + } + ] + } + }, + "chunks": { + "description": "Select chunks for determining shared modules (defaults to \"async\", \"initial\" and \"all\" requires adding these chunks to the HTML)", + "oneOf": [ + { + "enum": ["initial", "async", "all"] + }, + { + "instanceof": "Function", + "tsType": "Function" + } + ] + }, + "fallbackCacheGroup": { + "description": "Options for modules not selected by any other cache group", + "type": "object", + "additionalProperties": false, + "properties": { + "automaticNameDelimiter": { + "description": "Sets the name delimiter for created chunks", + "type": "string", + "minLength": 1 + }, + "maxSize": { + "description": "Maximal size hint for the created chunks", + "type": "number", + "minimum": 0 + }, + "minSize": { + "description": "Minimal size for the created chunk", + "type": "number", + "minimum": 0 + } + } + }, + "filename": { + "description": "Sets the template for the filename for created chunks (Only works for initial chunks)", + "type": "string", + "minLength": 1 + }, + "hidePathInfo": { + "description": "Prevents exposing path info when creating names for parts splitted by maxSize", + "type": "boolean" + }, + "maxAsyncRequests": { + "description": "Maximum number of requests which are accepted for on-demand loading", + "type": "number", + "minimum": 1 + }, + "maxInitialRequests": { + "description": "Maximum number of initial chunks which are accepted for an entry point", + "type": "number", + "minimum": 1 + }, + "maxSize": { + "description": "Maximal size hint for the created chunks", + "type": "number", + "minimum": 0 + }, + "minChunks": { + "description": "Minimum number of times a module has to be duplicated until it's considered for splitting", + "type": "number", + "minimum": 1 + }, + "minSize": { + "description": "Minimal size for the created chunks", + "type": "number", + "minimum": 0 + }, + "name": { + "description": "Give chunks created a name (chunks with equal name are merged)", + "oneOf": [ + { + "type": "boolean" + }, + { + "instanceof": "Function", + "tsType": "Function" + }, + { + "type": "string" + } + ] + } + } + }, + "OutputOptions": { + "type": "object", + "additionalProperties": false, + "properties": { + "auxiliaryComment": { + "description": "Add a comment in the UMD wrapper.", + "anyOf": [ + { + "description": "Append the same comment above each import style.", + "type": "string" + }, + { + "description": "Set explicit comments for `commonjs`, `commonjs2`, `amd`, and `root`.", + "type": "object", + "additionalProperties": false, + "properties": { + "amd": { + "description": "Set comment for `amd` section in UMD", + "type": "string" + }, + "commonjs": { + "description": "Set comment for `commonjs` (exports) section in UMD", + "type": "string" + }, + "commonjs2": { + "description": "Set comment for `commonjs2` (module.exports) section in UMD", + "type": "string" + }, + "root": { + "description": "Set comment for `root` (global variable) section in UMD", + "type": "string" + } + } + } + ] + }, + "chunkCallbackName": { + "description": "The callback function name used by webpack for loading of chunks in WebWorkers.", + "type": "string" + }, + "chunkFilename": { + "description": "The filename of non-entry chunks as relative path inside the `output.path` directory.", + "type": "string", + "absolutePath": false + }, + "chunkLoadTimeout": { + "description": "Number of milliseconds before chunk request expires", + "type": "number" + }, + "crossOriginLoading": { + "description": "This option enables cross-origin loading of chunks.", + "enum": [false, "anonymous", "use-credentials"] + }, + "devtoolFallbackModuleFilenameTemplate": { + "description": "Similar to `output.devtoolModuleFilenameTemplate`, but used in the case of duplicate module identifiers.", + "anyOf": [ + { + "type": "string" + }, + { + "instanceof": "Function", + "tsType": "Function" + } + ] + }, + "devtoolLineToLine": { + "description": "Enable line to line mapped mode for all/specified modules. Line to line mapped mode uses a simple SourceMap where each line of the generated source is mapped to the same line of the original source. It’s a performance optimization. Only use it if your performance need to be better and you are sure that input lines match which generated lines.", + "anyOf": [ + { + "description": "`true` enables it for all modules (not recommended)", + "type": "boolean" + }, + { + "description": "An object similar to `module.loaders` enables it for specific files.", + "type": "object" + } + ] + }, + "devtoolModuleFilenameTemplate": { + "description": "Filename template string of function for the sources array in a generated SourceMap.", + "anyOf": [ + { + "type": "string" + }, + { + "instanceof": "Function", + "tsType": "Function" + } + ] + }, + "devtoolNamespace": { + "description": "Module namespace to use when interpolating filename template string for the sources array in a generated SourceMap. Defaults to `output.library` if not set. It's useful for avoiding runtime collisions in sourcemaps from multiple webpack projects built as libraries.", + "type": "string" + }, + "filename": { + "description": "Specifies the name of each output file on disk. You must **not** specify an absolute path here! The `output.path` option determines the location on disk the files are written to, filename is used solely for naming the individual files.", + "anyOf": [ + { + "type": "string", + "absolutePath": false + }, + { + "instanceof": "Function", + "tsType": "Function" + } + ] + }, + "globalObject": { + "description": "An expression which is used to address the global object/scope in runtime code", + "type": "string", + "minLength": 1 + }, + "hashDigest": { + "description": "Digest type used for the hash", + "type": "string" + }, + "hashDigestLength": { + "description": "Number of chars which are used for the hash", + "type": "number", + "minimum": 1 + }, + "hashFunction": { + "description": "Algorithm used for generation the hash (see node.js crypto package)", + "anyOf": [ + { + "type": "string", + "minLength": 1 + }, + { + "instanceof": "Function", + "tsType": "(new () => import('../lib/util/createHash').Hash)" + } + ] + }, + "hashSalt": { + "description": "Any string which is added to the hash to salt it", + "type": "string", + "minLength": 1 + }, + "hotUpdateChunkFilename": { + "description": "The filename of the Hot Update Chunks. They are inside the output.path directory.", + "anyOf": [ + { + "type": "string", + "absolutePath": false + }, + { + "instanceof": "Function", + "tsType": "Function" + } + ] + }, + "hotUpdateFunction": { + "description": "The JSONP function used by webpack for async loading of hot update chunks.", + "type": "string" + }, + "hotUpdateMainFilename": { + "description": "The filename of the Hot Update Main File. It is inside the `output.path` directory.", + "anyOf": [ + { + "type": "string", + "absolutePath": false + }, + { + "instanceof": "Function", + "tsType": "Function" + } + ] + }, + "jsonpFunction": { + "description": "The JSONP function used by webpack for async loading of chunks.", + "type": "string" + }, + "jsonpScriptType": { + "description": "This option enables loading async chunks via a custom script type, such as script type=\"module\"", + "enum": [false, "text/javascript", "module"] + }, + "library": { + "description": "If set, export the bundle as library. `output.library` is the name.", + "anyOf": [ + { + "type": "string" + }, + { + "type": "array", + "items": { + "description": "A part of the library name", + "type": "string" + } + }, + { + "$ref": "#/definitions/LibraryCustomUmdObject" + } + ] + }, + "libraryExport": { + "description": "Specify which export should be exposed as library", + "anyOf": [ + { + "type": "string" + }, + { + "$ref": "#/definitions/ArrayOfStringValues" + } + ] + }, + "libraryTarget": { + "description": "Type of library", + "enum": [ + "var", + "assign", + "this", + "window", + "self", + "global", + "commonjs", + "commonjs2", + "commonjs-module", + "amd", + "amd-require", + "umd", + "umd2", + "jsonp" + ] + }, + "path": { + "description": "The output directory as **absolute path** (required).", + "type": "string", + "absolutePath": true + }, + "pathinfo": { + "description": "Include comments with information about the modules.", + "type": "boolean" + }, + "publicPath": { + "description": "The `publicPath` specifies the public URL address of the output files when referenced in a browser.", + "anyOf": [ + { + "type": "string" + }, + { + "instanceof": "Function", + "tsType": "Function" + } + ] + }, + "sourceMapFilename": { + "description": "The filename of the SourceMaps for the JavaScript files. They are inside the `output.path` directory.", + "type": "string", + "absolutePath": false + }, + "sourcePrefix": { + "description": "Prefixes every line of the source in the bundle with this string.", + "type": "string" + }, + "strictModuleExceptionHandling": { + "description": "Handles exceptions in module loading correctly at a performance cost.", + "type": "boolean" + }, + "umdNamedDefine": { + "description": "If `output.libraryTarget` is set to umd and `output.library` is set, setting this to true will name the AMD module.", + "type": "boolean" + }, + "webassemblyModuleFilename": { + "description": "The filename of WebAssembly modules as relative path inside the `output.path` directory.", + "type": "string", + "absolutePath": false + } + } + }, + "PerformanceOptions": { + "type": "object", + "additionalProperties": false, + "properties": { + "assetFilter": { + "description": "Filter function to select assets that are checked", + "instanceof": "Function", + "tsType": "Function" + }, + "hints": { + "description": "Sets the format of the hints: warnings, errors or nothing at all", + "enum": [false, "warning", "error"] + }, + "maxAssetSize": { + "description": "Filesize limit (in bytes) when exceeded, that webpack will provide performance hints", + "type": "number" + }, + "maxEntrypointSize": { + "description": "Total size of an entry point (in bytes)", + "type": "number" + } + } + }, + "ResolveOptions": { + "type": "object", + "additionalProperties": false, + "properties": { + "alias": { + "description": "Redirect module requests", + "anyOf": [ + { + "type": "object", + "additionalProperties": { + "description": "New request", + "type": "string" + } + }, + { + "type": "array", + "items": { + "description": "Alias configuration", + "type": "object", + "additionalProperties": false, + "properties": { + "alias": { + "description": "New request", + "type": "string" + }, + "name": { + "description": "Request to be redirected", + "type": "string" + }, + "onlyModule": { + "description": "Redirect only exact matching request", + "type": "boolean" + } + } + } + } + ] + }, + "aliasFields": { + "description": "Fields in the description file (package.json) which are used to redirect requests inside the module", + "anyOf": [ + { + "$ref": "#/definitions/ArrayOfStringOrStringArrayValues" + } + ] + }, + "cachePredicate": { + "description": "Predicate function to decide which requests should be cached", + "instanceof": "Function", + "tsType": "Function" + }, + "cacheWithContext": { + "description": "Include the context information in the cache identifier when caching", + "type": "boolean" + }, + "concord": { + "description": "Enable concord resolving extras", + "type": "boolean" + }, + "descriptionFiles": { + "description": "Filenames used to find a description file", + "anyOf": [ + { + "$ref": "#/definitions/ArrayOfStringValues" + } + ] + }, + "enforceExtension": { + "description": "Enforce using one of the extensions from the extensions option", + "type": "boolean" + }, + "enforceModuleExtension": { + "description": "Enforce using one of the module extensions from the moduleExtensions option", + "type": "boolean" + }, + "extensions": { + "description": "Extensions added to the request when trying to find the file", + "anyOf": [ + { + "$ref": "#/definitions/ArrayOfStringValues" + } + ] + }, + "fileSystem": { + "description": "Filesystem for the resolver" + }, + "mainFields": { + "description": "Field names from the description file (package.json) which are used to find the default entry point", + "anyOf": [ + { + "$ref": "#/definitions/ArrayOfStringOrStringArrayValues" + } + ] + }, + "mainFiles": { + "description": "Filenames used to find the default entry point if there is no description file or main field", + "anyOf": [ + { + "$ref": "#/definitions/ArrayOfStringValues" + } + ] + }, + "moduleExtensions": { + "description": "Extensions added to the module request when trying to find the module", + "anyOf": [ + { + "$ref": "#/definitions/ArrayOfStringValues" + } + ] + }, + "modules": { + "description": "Folder names or directory paths where to find modules", + "anyOf": [ + { + "$ref": "#/definitions/ArrayOfStringValues" + } + ] + }, + "plugins": { + "description": "Plugins for the resolver", + "type": "array", + "items": { + "description": "Plugin of type object or instanceof Function", + "anyOf": [ + { + "$ref": "#/definitions/WebpackPluginInstance" + }, + { + "$ref": "#/definitions/WebpackPluginFunction" + } + ] + } + }, + "resolver": { + "description": "Custom resolver" + }, + "symlinks": { + "description": "Enable resolving symlinks to the original location", + "type": "boolean" + }, + "unsafeCache": { + "description": "Enable caching of successfully resolved requests", + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "object", + "additionalProperties": true + } + ] + }, + "useSyncFileSystemCalls": { + "description": "Use synchronous filesystem calls for the resolver", + "type": "boolean" + } + } + }, + "RuleSetCondition": { + "anyOf": [ + { + "instanceof": "RegExp", + "tsType": "RegExp" + }, + { + "type": "string", + "minLength": 1 + }, + { + "instanceof": "Function", + "tsType": "((value: string) => boolean)" + }, + { + "$ref": "#/definitions/RuleSetConditions" + }, + { + "type": "object", + "additionalProperties": false, + "properties": { + "and": { + "description": "Logical AND", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditions" + } + ] + }, + "exclude": { + "description": "Exclude all modules matching any of these conditions", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditions" + } + ] + }, + "include": { + "description": "Exclude all modules matching not any of these conditions", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditions" + } + ] + }, + "not": { + "description": "Logical NOT", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditions" + } + ] + }, + "or": { + "description": "Logical OR", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditions" + } + ] + }, + "test": { + "description": "Exclude all modules matching any of these conditions", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditions" + } + ] + } + } + } + ] + }, + "RuleSetConditionAbsolute": { + "anyOf": [ + { + "instanceof": "RegExp", + "tsType": "RegExp" + }, + { + "type": "string", + "absolutePath": true + }, + { + "instanceof": "Function", + "tsType": "((value: string) => boolean)" + }, + { + "$ref": "#/definitions/RuleSetConditionsAbsolute" + }, + { + "type": "object", + "additionalProperties": false, + "properties": { + "and": { + "description": "Logical AND", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionsAbsolute" + } + ] + }, + "exclude": { + "description": "Exclude all modules matching any of these conditions", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditionsAbsolute" + } + ] + }, + "include": { + "description": "Exclude all modules matching not any of these conditions", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditionsAbsolute" + } + ] + }, + "not": { + "description": "Logical NOT", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionsAbsolute" + } + ] + }, + "or": { + "description": "Logical OR", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionsAbsolute" + } + ] + }, + "test": { + "description": "Exclude all modules matching any of these conditions", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditionsAbsolute" + } + ] + } + } + } + ] + }, + "RuleSetConditionOrConditions": { + "description": "One or multiple rule conditions", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetCondition" + }, + { + "$ref": "#/definitions/RuleSetConditions" + } + ] + }, + "RuleSetConditionOrConditionsAbsolute": { + "description": "One or multiple rule conditions", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionAbsolute" + }, + { + "$ref": "#/definitions/RuleSetConditionsAbsolute" + } + ] + }, + "RuleSetConditions": { + "type": "array", + "items": { + "description": "A rule condition", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetCondition" + } + ] + }, + "tsType": "RuleSetConditionsRecursive" + }, + "RuleSetConditionsAbsolute": { + "type": "array", + "items": { + "description": "A rule condition", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionAbsolute" + } + ] + }, + "tsType": "RuleSetConditionsAbsoluteRecursive" + }, + "RuleSetLoader": { + "type": "string", + "minLength": 1 + }, + "RuleSetQuery": { + "anyOf": [ + { + "type": "object" + }, + { + "type": "string" + } + ] + }, + "RuleSetRule": { + "type": "object", + "additionalProperties": false, + "properties": { + "compiler": { + "description": "Match the child compiler name", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditions" + } + ] + }, + "enforce": { + "description": "Enforce this rule as pre or post step", + "enum": ["pre", "post"] + }, + "exclude": { + "description": "Shortcut for resource.exclude", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditionsAbsolute" + } + ] + }, + "include": { + "description": "Shortcut for resource.include", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditionsAbsolute" + } + ] + }, + "issuer": { + "description": "Match the issuer of the module (The module pointing to this module)", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditionsAbsolute" + } + ] + }, + "loader": { + "description": "Shortcut for use.loader", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetLoader" + }, + { + "$ref": "#/definitions/RuleSetUse" + } + ] + }, + "loaders": { + "description": "Shortcut for use.loader", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetUse" + } + ] + }, + "oneOf": { + "description": "Only execute the first matching rule in this array", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetRules" + } + ] + }, + "options": { + "description": "Shortcut for use.options", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetQuery" + } + ] + }, + "parser": { + "description": "Options for parsing", + "type": "object", + "additionalProperties": true + }, + "query": { + "description": "Shortcut for use.query", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetQuery" + } + ] + }, + "resolve": { + "description": "Options for the resolver", + "type": "object", + "anyOf": [ + { + "$ref": "#/definitions/ResolveOptions" + } + ] + }, + "resource": { + "description": "Match the resource path of the module", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditionsAbsolute" + } + ] + }, + "resourceQuery": { + "description": "Match the resource query of the module", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditions" + } + ] + }, + "rules": { + "description": "Match and execute these rules when this rule is matched", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetRules" + } + ] + }, + "sideEffects": { + "description": "Flags a module as with or without side effects", + "type": "boolean" + }, + "test": { + "description": "Shortcut for resource.test", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetConditionOrConditionsAbsolute" + } + ] + }, + "type": { + "description": "Module type to use for the module", + "enum": [ + "javascript/auto", + "javascript/dynamic", + "javascript/esm", + "json", + "webassembly/experimental" + ] + }, + "use": { + "description": "Modifiers applied to the module when rule is matched", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetUse" + } + ] + } + } + }, + "RuleSetRules": { + "type": "array", + "items": { + "description": "A rule", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetRule" + } + ] + } + }, + "RuleSetUse": { + "anyOf": [ + { + "$ref": "#/definitions/RuleSetUseItem" + }, + { + "instanceof": "Function", + "tsType": "Function" + }, + { + "type": "array", + "items": { + "description": "An use item", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetUseItem" + } + ] + } + } + ] + }, + "RuleSetUseItem": { + "anyOf": [ + { + "$ref": "#/definitions/RuleSetLoader" + }, + { + "instanceof": "Function", + "tsType": "Function" + }, + { + "type": "object", + "additionalProperties": false, + "properties": { + "ident": { + "description": "Unique loader identifier", + "type": "string" + }, + "loader": { + "description": "Loader name", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetLoader" + } + ] + }, + "options": { + "description": "Loader options", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetQuery" + } + ] + }, + "query": { + "description": "Loader query", + "anyOf": [ + { + "$ref": "#/definitions/RuleSetQuery" + } + ] + } + } + } + ] + }, + "StatsOptions": { + "type": "object", + "additionalProperties": false, + "properties": { + "all": { + "description": "fallback value for stats options when an option is not defined (has precedence over local webpack defaults)", + "type": "boolean" + }, + "assets": { + "description": "add assets information", + "type": "boolean" + }, + "assetsSort": { + "description": "sort the assets by that field", + "type": "string" + }, + "builtAt": { + "description": "add built at time information", + "type": "boolean" + }, + "cached": { + "description": "add also information about cached (not built) modules", + "type": "boolean" + }, + "cachedAssets": { + "description": "Show cached assets (setting this to `false` only shows emitted files)", + "type": "boolean" + }, + "children": { + "description": "add children information", + "type": "boolean" + }, + "chunkGroups": { + "description": "Display all chunk groups with the corresponding bundles", + "type": "boolean" + }, + "chunkModules": { + "description": "add built modules information to chunk information", + "type": "boolean" + }, + "chunkOrigins": { + "description": "add the origins of chunks and chunk merging info", + "type": "boolean" + }, + "chunks": { + "description": "add chunk information", + "type": "boolean" + }, + "chunksSort": { + "description": "sort the chunks by that field", + "type": "string" + }, + "colors": { + "description": "Enables/Disables colorful output", + "oneOf": [ + { + "description": "`webpack --colors` equivalent", + "type": "boolean" + }, + { + "type": "object", + "additionalProperties": false, + "properties": { + "bold": { + "description": "Custom color for bold text", + "type": "string" + }, + "cyan": { + "description": "Custom color for cyan text", + "type": "string" + }, + "green": { + "description": "Custom color for green text", + "type": "string" + }, + "magenta": { + "description": "Custom color for magenta text", + "type": "string" + }, + "red": { + "description": "Custom color for red text", + "type": "string" + }, + "yellow": { + "description": "Custom color for yellow text", + "type": "string" + } + } + } + ] + }, + "context": { + "description": "context directory for request shortening", + "type": "string", + "absolutePath": true + }, + "depth": { + "description": "add module depth in module graph", + "type": "boolean" + }, + "entrypoints": { + "description": "Display the entry points with the corresponding bundles", + "type": "boolean" + }, + "env": { + "description": "add --env information", + "type": "boolean" + }, + "errorDetails": { + "description": "add details to errors (like resolving log)", + "type": "boolean" + }, + "errors": { + "description": "add errors", + "type": "boolean" + }, + "exclude": { + "description": "Please use excludeModules instead.", + "anyOf": [ + { + "$ref": "#/definitions/FilterTypes" + }, + { + "type": "boolean" + } + ] + }, + "excludeAssets": { + "description": "Suppress assets that match the specified filters. Filters can be Strings, RegExps or Functions", + "anyOf": [ + { + "$ref": "#/definitions/FilterTypes" + } + ] + }, + "excludeModules": { + "description": "Suppress modules that match the specified filters. Filters can be Strings, RegExps, Booleans or Functions", + "anyOf": [ + { + "$ref": "#/definitions/FilterTypes" + }, + { + "type": "boolean" + } + ] + }, + "hash": { + "description": "add the hash of the compilation", + "type": "boolean" + }, + "maxModules": { + "description": "Set the maximum number of modules to be shown", + "type": "number" + }, + "moduleAssets": { + "description": "add information about assets inside modules", + "type": "boolean" + }, + "moduleTrace": { + "description": "add dependencies and origin of warnings/errors", + "type": "boolean" + }, + "modules": { + "description": "add built modules information", + "type": "boolean" + }, + "modulesSort": { + "description": "sort the modules by that field", + "type": "string" + }, + "nestedModules": { + "description": "add information about modules nested in other modules (like with module concatenation)", + "type": "boolean" + }, + "optimizationBailout": { + "description": "show reasons why optimization bailed out for modules", + "type": "boolean" + }, + "outputPath": { + "description": "Add output path information", + "type": "boolean" + }, + "performance": { + "description": "add performance hint flags", + "type": "boolean" + }, + "providedExports": { + "description": "show exports provided by modules", + "type": "boolean" + }, + "publicPath": { + "description": "Add public path information", + "type": "boolean" + }, + "reasons": { + "description": "add information about the reasons why modules are included", + "type": "boolean" + }, + "source": { + "description": "add the source code of modules", + "type": "boolean" + }, + "timings": { + "description": "add timing information", + "type": "boolean" + }, + "usedExports": { + "description": "show exports used by modules", + "type": "boolean" + }, + "version": { + "description": "add webpack version information", + "type": "boolean" + }, + "warnings": { + "description": "add warnings", + "type": "boolean" + }, + "warningsFilter": { + "description": "Suppress warnings that match the specified filters. Filters can be Strings, RegExps or Functions", + "anyOf": [ + { + "$ref": "#/definitions/FilterTypes" + } + ] + } + } + }, + "WebpackPluginFunction": { + "description": "Function acting as plugin", + "instanceof": "Function", + "tsType": "(compiler: import('../lib/Compiler')) => void" + }, + "WebpackPluginInstance": { + "description": "Plugin instance", + "type": "object", + "additionalProperties": true, + "properties": { + "apply": { + "description": "The run point of the plugin, required method.", + "instanceof": "Function", + "tsType": "(compiler: import('../lib/Compiler')) => void" + } + }, + "required": ["apply"] + } + }, + "type": "object", + "additionalProperties": false, + "properties": { + "amd": { + "description": "Set the value of `require.amd` and `define.amd`." + }, + "bail": { + "description": "Report the first error as a hard error instead of tolerating it.", + "type": "boolean" + }, + "cache": { + "description": "Cache generated modules and chunks to improve performance for multiple incremental builds.", + "anyOf": [ + { + "description": "You can pass `false` to disable it.", + "type": "boolean" + }, + { + "description": "You can pass an object to enable it and let webpack use the passed object as cache. This way you can share the cache object between multiple compiler calls.", + "type": "object" + } + ] + }, + "context": { + "description": "The base directory (absolute path!) for resolving the `entry` option. If `output.pathinfo` is set, the included pathinfo is shortened to this directory.", + "type": "string", + "absolutePath": true + }, + "dependencies": { + "description": "References to other configurations to depend on.", + "type": "array", + "items": { + "description": "References to another configuration to depend on.", + "type": "string" + } + }, + "devServer": { + "description": "Options for the webpack-dev-server", + "type": "object" + }, + "devtool": { + "description": "A developer tool to enhance debugging.", + "anyOf": [ + { + "type": "string" + }, + { + "enum": [false] + } + ] + }, + "entry": { + "description": "The entry point(s) of the compilation.", + "anyOf": [ + { + "$ref": "#/definitions/Entry" + } + ] + }, + "externals": { + "description": "Specify dependencies that shouldn't be resolved by webpack, but should become dependencies of the resulting bundle. The kind of the dependency depends on `output.libraryTarget`.", + "anyOf": [ + { + "$ref": "#/definitions/Externals" + } + ] + }, + "loader": { + "description": "Custom values available in the loader context.", + "type": "object" + }, + "mode": { + "description": "Enable production optimizations or development hints.", + "enum": ["development", "production", "none"] + }, + "module": { + "description": "Options affecting the normal modules (`NormalModuleFactory`).", + "anyOf": [ + { + "$ref": "#/definitions/ModuleOptions" + } + ] + }, + "name": { + "description": "Name of the configuration. Used when loading multiple configurations.", + "type": "string" + }, + "node": { + "description": "Include polyfills or mocks for various node stuff.", + "anyOf": [ + { + "enum": [false] + }, + { + "$ref": "#/definitions/NodeOptions" + } + ] + }, + "optimization": { + "description": "Enables/Disables integrated optimizations", + "anyOf": [ + { + "$ref": "#/definitions/OptimizationOptions" + } + ] + }, + "output": { + "description": "Options affecting the output of the compilation. `output` options tell webpack how to write the compiled files to disk.", + "anyOf": [ + { + "$ref": "#/definitions/OutputOptions" + } + ] + }, + "parallelism": { + "description": "The number of parallel processed modules in the compilation.", + "type": "number", + "minimum": 1 + }, + "performance": { + "description": "Configuration for web performance recommendations.", + "anyOf": [ + { + "enum": [false] + }, + { + "$ref": "#/definitions/PerformanceOptions" + } + ] + }, + "plugins": { + "description": "Add additional plugins to the compiler.", + "type": "array", + "items": { + "description": "Plugin of type object or instanceof Function", + "anyOf": [ + { + "$ref": "#/definitions/WebpackPluginInstance" + }, + { + "$ref": "#/definitions/WebpackPluginFunction" + } + ] + } + }, + "profile": { + "description": "Capture timing information for each module.", + "type": "boolean" + }, + "recordsInputPath": { + "description": "Store compiler state to a json file.", + "type": "string", + "absolutePath": true + }, + "recordsOutputPath": { + "description": "Load compiler state from a json file.", + "type": "string", + "absolutePath": true + }, + "recordsPath": { + "description": "Store/Load compiler state from/to a json file. This will result in persistent ids of modules and chunks. An absolute path is expected. `recordsPath` is used for `recordsInputPath` and `recordsOutputPath` if they left undefined.", + "type": "string", + "absolutePath": true + }, + "resolve": { + "description": "Options for the resolver", + "anyOf": [ + { + "$ref": "#/definitions/ResolveOptions" + } + ] + }, + "resolveLoader": { + "description": "Options for the resolver when resolving loaders", + "anyOf": [ + { + "$ref": "#/definitions/ResolveOptions" + } + ] + }, + "serve": { + "description": "Options for webpack-serve", + "type": "object" + }, + "stats": { + "description": "Used by the webpack CLI program to pass stats options.", + "anyOf": [ + { + "$ref": "#/definitions/StatsOptions" + }, + { + "type": "boolean" + }, + { + "enum": [ + "none", + "errors-only", + "minimal", + "normal", + "detailed", + "verbose" + ] + } + ] + }, + "target": { + "description": "Environment to build for", + "anyOf": [ + { + "enum": [ + "web", + "webworker", + "node", + "async-node", + "node-webkit", + "electron-main", + "electron-renderer" + ] + }, + { + "instanceof": "Function", + "tsType": "((compiler: import('../lib/Compiler')) => void)" + } + ] + }, + "watch": { + "description": "Enter watch mode, which rebuilds on file change.", + "type": "boolean" + }, + "watchOptions": { + "description": "Options for the watcher", + "type": "object", + "additionalProperties": false, + "properties": { + "aggregateTimeout": { + "description": "Delay the rebuilt after the first change. Value is a time in ms.", + "type": "number" + }, + "ignored": { + "description": "Ignore some files from watching" + }, + "poll": { + "description": "Enable polling mode for watching", + "anyOf": [ + { + "description": "`true`: use polling.", + "type": "boolean" + }, + { + "description": "`number`: use polling with specified interval.", + "type": "number" + } + ] + }, + "stdin": { + "description": "Stop watching when stdin stream has ended", + "type": "boolean" + } + } + } + } +} diff --git a/node_modules/webpack/schemas/ajv.absolutePath.js b/node_modules/webpack/schemas/ajv.absolutePath.js new file mode 100644 index 00000000..8ef11f43 --- /dev/null +++ b/node_modules/webpack/schemas/ajv.absolutePath.js @@ -0,0 +1,55 @@ +"use strict"; + +const errorMessage = (schema, data, message) => ({ + keyword: "absolutePath", + params: { absolutePath: data }, + message: message, + parentSchema: schema +}); + +const getErrorFor = (shouldBeAbsolute, data, schema) => { + const message = shouldBeAbsolute + ? `The provided value ${JSON.stringify(data)} is not an absolute path!` + : `A relative path is expected. However, the provided value ${JSON.stringify( + data + )} is an absolute path!`; + + return errorMessage(schema, data, message); +}; + +module.exports = ajv => + ajv.addKeyword("absolutePath", { + errors: true, + type: "string", + compile(expected, schema) { + function callback(data) { + let passes = true; + const isExclamationMarkPresent = data.includes("!"); + const isCorrectAbsoluteOrRelativePath = + expected === /^(?:[A-Za-z]:\\|\/)/.test(data); + + if (isExclamationMarkPresent) { + callback.errors = [ + errorMessage( + schema, + data, + `The provided value ${JSON.stringify( + data + )} contains exclamation mark (!) which is not allowed because it's reserved for loader syntax.` + ) + ]; + passes = false; + } + + if (!isCorrectAbsoluteOrRelativePath) { + callback.errors = [getErrorFor(expected, data, schema)]; + passes = false; + } + + return passes; + } + callback.errors = []; + + return callback; + } + }); diff --git a/node_modules/webpack/schemas/plugins/BannerPlugin.json b/node_modules/webpack/schemas/plugins/BannerPlugin.json new file mode 100644 index 00000000..af313b90 --- /dev/null +++ b/node_modules/webpack/schemas/plugins/BannerPlugin.json @@ -0,0 +1,101 @@ +{ + "definitions": { + "BannerFunction": { + "description": "The banner as function, it will be wrapped in a comment", + "instanceof": "Function", + "tsType": "(data: { hash: string, chunk: import('../../lib/Chunk'), filename: string, basename: string, query: string}) => string" + }, + "Rule": { + "oneOf": [ + { + "instanceof": "RegExp", + "tsType": "RegExp" + }, + { + "type": "string", + "minLength": 1 + } + ] + }, + "Rules": { + "oneOf": [ + { + "type": "array", + "items": { + "description": "A rule condition", + "anyOf": [ + { + "$ref": "#/definitions/Rule" + } + ] + } + }, + { + "$ref": "#/definitions/Rule" + } + ] + } + }, + "title": "BannerPluginArgument", + "oneOf": [ + { + "title": "BannerPluginOptions", + "type": "object", + "additionalProperties": false, + "properties": { + "banner": { + "description": "Specifies the banner", + "anyOf": [ + { + "$ref": "#/definitions/BannerFunction" + }, + { + "type": "string" + } + ] + }, + "entryOnly": { + "description": "If true, the banner will only be added to the entry chunks", + "type": "boolean" + }, + "exclude": { + "description": "Exclude all modules matching any of these conditions", + "anyOf": [ + { + "$ref": "#/definitions/Rules" + } + ] + }, + "include": { + "description": "Include all modules matching any of these conditions", + "anyOf": [ + { + "$ref": "#/definitions/Rules" + } + ] + }, + "raw": { + "description": "If true, banner will not be wrapped in a comment", + "type": "boolean" + }, + "test": { + "description": "Include all modules that pass test assertion", + "anyOf": [ + { + "$ref": "#/definitions/Rules" + } + ] + } + }, + "required": ["banner"] + }, + { + "$ref": "#/definitions/BannerFunction" + }, + { + "description": "The banner as string, it will be wrapped in a comment", + "type": "string", + "minLength": 1 + } + ] +} diff --git a/node_modules/webpack/schemas/plugins/DllPlugin.json b/node_modules/webpack/schemas/plugins/DllPlugin.json new file mode 100644 index 00000000..18d7dee4 --- /dev/null +++ b/node_modules/webpack/schemas/plugins/DllPlugin.json @@ -0,0 +1,36 @@ +{ + "title": "DllPluginOptions", + "type": "object", + "additionalProperties": false, + "properties": { + "context": { + "description": "Context of requests in the manifest file (defaults to the webpack context)", + "type": "string", + "minLength": 1 + }, + "entryOnly": { + "description": "If true, only entry points will be exposed", + "type": "boolean" + }, + "format": { + "description": "If true, manifest json file (output) will be formatted", + "type": "boolean" + }, + "name": { + "description": "Name of the exposed dll function (external name, use value of 'output.library')", + "type": "string", + "minLength": 1 + }, + "path": { + "description": "Absolute path to the manifest json file (output)", + "type": "string", + "minLength": 1 + }, + "type": { + "description": "Type of the dll bundle (external type, use value of 'output.libraryTarget')", + "type": "string", + "minLength": 1 + } + }, + "required": ["path"] +} diff --git a/node_modules/webpack/schemas/plugins/DllReferencePlugin.json b/node_modules/webpack/schemas/plugins/DllReferencePlugin.json new file mode 100644 index 00000000..1e078b97 --- /dev/null +++ b/node_modules/webpack/schemas/plugins/DllReferencePlugin.json @@ -0,0 +1,205 @@ +{ + "definitions": { + "DllReferencePluginOptionsContent": { + "description": "The mappings from request to module info", + "type": "object", + "additionalProperties": { + "description": "Module info", + "type": "object", + "additionalProperties": false, + "properties": { + "buildMeta": { + "description": "Meta information about the module", + "type": "object" + }, + "exports": { + "description": "Information about the provided exports of the module", + "anyOf": [ + { + "description": "Exports unknown/dynamic", + "enum": [true] + }, + { + "description": "List of provided exports of the module", + "type": "array", + "items": { + "description": "Name of the export", + "type": "string", + "minLength": 1 + } + } + ] + }, + "id": { + "description": "Module ID", + "anyOf": [ + { + "type": "number" + }, + { + "type": "string", + "minLength": 1 + } + ] + } + }, + "required": ["id"] + }, + "minProperties": 1 + }, + "DllReferencePluginOptionsManifest": { + "description": "An object containing content, name and type", + "type": "object", + "additionalProperties": false, + "properties": { + "content": { + "description": "The mappings from request to module info", + "anyOf": [ + { + "$ref": "#/definitions/DllReferencePluginOptionsContent" + } + ] + }, + "name": { + "description": "The name where the dll is exposed (external name)", + "type": "string", + "minLength": 1 + }, + "type": { + "description": "The type how the dll is exposed (external type)", + "anyOf": [ + { + "$ref": "#/definitions/DllReferencePluginOptionsSourceType" + } + ] + } + }, + "required": ["content"] + }, + "DllReferencePluginOptionsSourceType": { + "description": "The type how the dll is exposed (external type)", + "enum": [ + "var", + "assign", + "this", + "window", + "global", + "commonjs", + "commonjs2", + "commonjs-module", + "amd", + "amd-require", + "umd", + "umd2", + "jsonp" + ] + } + }, + "title": "DllReferencePluginOptions", + "anyOf": [ + { + "type": "object", + "additionalProperties": false, + "properties": { + "context": { + "description": "(absolute path) context of requests in the manifest (or content property)", + "type": "string", + "absolutePath": true + }, + "extensions": { + "description": "Extensions used to resolve modules in the dll bundle (only used when using 'scope')", + "type": "array", + "items": { + "description": "An extension", + "type": "string" + } + }, + "manifest": { + "description": "An object containing content and name or a string to the absolute path of the JSON manifest to be loaded upon compilation", + "oneOf": [ + { + "$ref": "#/definitions/DllReferencePluginOptionsManifest" + }, + { + "type": "string", + "absolutePath": true + } + ] + }, + "name": { + "description": "The name where the dll is exposed (external name, defaults to manifest.name)", + "type": "string", + "minLength": 1 + }, + "scope": { + "description": "Prefix which is used for accessing the content of the dll", + "type": "string", + "minLength": 1 + }, + "sourceType": { + "description": "How the dll is exposed (libraryTarget, defaults to manifest.type)", + "anyOf": [ + { + "$ref": "#/definitions/DllReferencePluginOptionsSourceType" + } + ] + }, + "type": { + "description": "The way how the export of the dll bundle is used", + "enum": ["require", "object"] + } + }, + "required": ["manifest"] + }, + { + "type": "object", + "additionalProperties": false, + "properties": { + "content": { + "description": "The mappings from request to module info", + "anyOf": [ + { + "$ref": "#/definitions/DllReferencePluginOptionsContent" + } + ] + }, + "context": { + "description": "(absolute path) context of requests in the manifest (or content property)", + "type": "string", + "absolutePath": true + }, + "extensions": { + "description": "Extensions used to resolve modules in the dll bundle (only used when using 'scope')", + "type": "array", + "items": { + "description": "An extension", + "type": "string" + } + }, + "name": { + "description": "The name where the dll is exposed (external name)", + "type": "string", + "minLength": 1 + }, + "scope": { + "description": "Prefix which is used for accessing the content of the dll", + "type": "string", + "minLength": 1 + }, + "sourceType": { + "description": "How the dll is exposed (libraryTarget)", + "anyOf": [ + { + "$ref": "#/definitions/DllReferencePluginOptionsSourceType" + } + ] + }, + "type": { + "description": "The way how the export of the dll bundle is used", + "enum": ["require", "object"] + } + }, + "required": ["content", "name"] + } + ] +} diff --git a/node_modules/webpack/schemas/plugins/HashedModuleIdsPlugin.json b/node_modules/webpack/schemas/plugins/HashedModuleIdsPlugin.json new file mode 100644 index 00000000..c4592ea6 --- /dev/null +++ b/node_modules/webpack/schemas/plugins/HashedModuleIdsPlugin.json @@ -0,0 +1,26 @@ +{ + "title": "HashedModuleIdsPluginOptions", + "type": "object", + "additionalProperties": false, + "properties": { + "context": { + "description": "The context directory for creating names.", + "type": "string", + "absolutePath": true + }, + "hashDigest": { + "description": "The encoding to use when generating the hash, defaults to 'base64'. All encodings from Node.JS' hash.digest are supported.", + "enum": ["hex", "latin1", "base64"] + }, + "hashDigestLength": { + "description": "The prefix length of the hash digest to use, defaults to 4.", + "type": "number", + "minimum": 1 + }, + "hashFunction": { + "description": "The hashing algorithm to use, defaults to 'md5'. All functions from Node.JS' crypto.createHash are supported.", + "type": "string", + "minLength": 1 + } + } +} diff --git a/node_modules/webpack/schemas/plugins/IgnorePlugin.json b/node_modules/webpack/schemas/plugins/IgnorePlugin.json new file mode 100644 index 00000000..83cd78ad --- /dev/null +++ b/node_modules/webpack/schemas/plugins/IgnorePlugin.json @@ -0,0 +1,37 @@ +{ + "title": "IgnorePluginOptions", + "oneOf": [ + { + "type": "object", + "additionalProperties": false, + "properties": { + "contextRegExp": { + "description": "A RegExp to test the context (directory) against", + "instanceof": "RegExp", + "tsType": "RegExp" + }, + "resourceRegExp": { + "description": "A RegExp to test the request against", + "instanceof": "RegExp", + "tsType": "RegExp" + } + } + }, + { + "type": "object", + "additionalProperties": false, + "properties": { + "checkContext": { + "description": "A filter function for context", + "instanceof": "Function", + "tsType": "((context: string) => boolean)" + }, + "checkResource": { + "description": "A filter function for resource", + "instanceof": "Function", + "tsType": "((resource: string) => boolean)" + } + } + } + ] +} diff --git a/node_modules/webpack/schemas/plugins/LoaderOptionsPlugin.json b/node_modules/webpack/schemas/plugins/LoaderOptionsPlugin.json new file mode 100644 index 00000000..67efca43 --- /dev/null +++ b/node_modules/webpack/schemas/plugins/LoaderOptionsPlugin.json @@ -0,0 +1,27 @@ +{ + "title": "LoaderOptionsPluginOptions", + "type": "object", + "additionalProperties": true, + "properties": { + "debug": { + "description": "Whether loaders should be in debug mode or not. debug will be removed as of webpack 3", + "type": "boolean" + }, + "minimize": { + "description": "Where loaders can be switched to minimize mode", + "type": "boolean" + }, + "options": { + "description": "A configuration object that can be used to configure older loaders", + "type": "object", + "additionalProperties": true, + "properties": { + "context": { + "description": "The context that can be used to configure older loaders", + "type": "string", + "absolutePath": true + } + } + } + } +} diff --git a/node_modules/webpack/schemas/plugins/ProgressPlugin.json b/node_modules/webpack/schemas/plugins/ProgressPlugin.json new file mode 100644 index 00000000..e3847c7e --- /dev/null +++ b/node_modules/webpack/schemas/plugins/ProgressPlugin.json @@ -0,0 +1,52 @@ +{ + "definitions": { + "HandlerFunction": { + "description": "Function that executes for every progress step", + "instanceof": "Function", + "tsType": "((percentage: number, msg: string, ...args: string[]) => void)" + }, + "ProgressPluginOptions": { + "type": "object", + "additionalProperties": false, + "properties": { + "activeModules": { + "description": "Show active modules count and one active module in progress message", + "type": "boolean" + }, + "entries": { + "description": "Show entries count in progress message", + "type": "boolean" + }, + "handler": { + "description": "Function that executes for every progress step", + "anyOf": [ + { + "$ref": "#/definitions/HandlerFunction" + } + ] + }, + "modules": { + "description": "Show modules count in progress message", + "type": "boolean" + }, + "modulesCount": { + "description": "Minimum modules count to start with. Only for mode=modules. Default: 500", + "type": "number" + }, + "profile": { + "description": "Collect profile data for progress steps. Default: false", + "enum": [true, false, null] + } + } + } + }, + "title": "ProgressPluginArgument", + "oneOf": [ + { + "$ref": "#/definitions/ProgressPluginOptions" + }, + { + "$ref": "#/definitions/HandlerFunction" + } + ] +} diff --git a/node_modules/webpack/schemas/plugins/SourceMapDevToolPlugin.json b/node_modules/webpack/schemas/plugins/SourceMapDevToolPlugin.json new file mode 100644 index 00000000..dd9d3109 --- /dev/null +++ b/node_modules/webpack/schemas/plugins/SourceMapDevToolPlugin.json @@ -0,0 +1,185 @@ +{ + "definitions": { + "rule": { + "oneOf": [ + { + "instanceof": "RegExp", + "tsType": "RegExp" + }, + { + "type": "string", + "minLength": 1 + } + ] + }, + "rules": { + "oneOf": [ + { + "type": "array", + "items": { + "description": "A rule condition", + "anyOf": [ + { + "$ref": "#/definitions/rule" + } + ] + } + }, + { + "$ref": "#/definitions/rule" + } + ] + } + }, + "title": "SourceMapDevToolPluginOptions", + "type": "object", + "additionalProperties": false, + "properties": { + "append": { + "description": "Appends the given value to the original asset. Usually the #sourceMappingURL comment. [url] is replaced with a URL to the source map file. false disables the appending", + "oneOf": [ + { + "description": "Append no SourceMap comment to the bundle, but still generate SourceMaps", + "enum": [false, null] + }, + { + "type": "string", + "minLength": 1 + } + ] + }, + "columns": { + "description": "Indicates whether column mappings should be used (defaults to true)", + "type": "boolean" + }, + "exclude": { + "description": "Exclude modules that match the given value from source map generation", + "anyOf": [ + { + "$ref": "#/definitions/rules" + } + ] + }, + "fallbackModuleFilenameTemplate": { + "description": "Generator string or function to create identifiers of modules for the 'sources' array in the SourceMap used only if 'moduleFilenameTemplate' would result in a conflict", + "oneOf": [ + { + "description": "Custom function generating the identifer", + "instanceof": "Function", + "tsType": "Function" + }, + { + "type": "string", + "minLength": 1 + } + ] + }, + "fileContext": { + "description": "Path prefix to which the [file] placeholder is relative to", + "type": "string" + }, + "filename": { + "description": "Defines the output filename of the SourceMap (will be inlined if no value is provided)", + "oneOf": [ + { + "description": "Disable separate SourceMap file and inline SourceMap as DataUrl", + "enum": [false, null] + }, + { + "type": "string", + "absolutePath": false, + "minLength": 1 + } + ] + }, + "include": { + "description": "Include source maps for module paths that match the given value", + "anyOf": [ + { + "$ref": "#/definitions/rules" + } + ] + }, + "lineToLine": { + "description": "(deprecated) try to map original files line to line to generated files", + "anyOf": [ + { + "type": "boolean" + }, + { + "description": "Simplify and speed up source mapping by using line to line source mappings for matched modules", + "type": "object", + "additionalProperties": false, + "properties": { + "exclude": { + "description": "Exclude modules that match the given value from source map generation", + "anyOf": [ + { + "$ref": "#/definitions/rules" + } + ] + }, + "include": { + "description": "Include source maps for module paths that match the given value", + "anyOf": [ + { + "$ref": "#/definitions/rules" + } + ] + }, + "test": { + "description": "Include source maps for modules based on their extension (defaults to .js and .css)", + "anyOf": [ + { + "$ref": "#/definitions/rules" + } + ] + } + } + } + ] + }, + "module": { + "description": "Indicates whether SourceMaps from loaders should be used (defaults to true)", + "type": "boolean" + }, + "moduleFilenameTemplate": { + "description": "Generator string or function to create identifiers of modules for the 'sources' array in the SourceMap", + "oneOf": [ + { + "description": "Custom function generating the identifer", + "instanceof": "Function", + "tsType": "Function" + }, + { + "type": "string", + "minLength": 1 + } + ] + }, + "namespace": { + "description": "Namespace prefix to allow multiple webpack roots in the devtools", + "type": "string" + }, + "noSources": { + "description": "Omit the 'sourceContents' array from the SourceMap", + "type": "boolean" + }, + "publicPath": { + "description": "Provide a custom public path for the SourceMapping comment", + "type": "string" + }, + "sourceRoot": { + "description": "Provide a custom value for the 'sourceRoot' property in the SourceMap", + "type": "string" + }, + "test": { + "description": "Include source maps for modules based on their extension (defaults to .js and .css)", + "anyOf": [ + { + "$ref": "#/definitions/rules" + } + ] + } + } +} diff --git a/node_modules/webpack/schemas/plugins/WatchIgnorePlugin.json b/node_modules/webpack/schemas/plugins/WatchIgnorePlugin.json new file mode 100644 index 00000000..b08d50ba --- /dev/null +++ b/node_modules/webpack/schemas/plugins/WatchIgnorePlugin.json @@ -0,0 +1,18 @@ +{ + "title": "WatchIgnorePluginOptions", + "description": "A list of RegExps or absolute paths to directories or files that should be ignored", + "type": "array", + "items": { + "description": "RegExp or absolute path to directories or files that should be ignored", + "oneOf": [ + { + "type": "string" + }, + { + "instanceof": "RegExp", + "tsType": "RegExp" + } + ] + }, + "minItems": 1 +} diff --git a/node_modules/webpack/schemas/plugins/debug/ProfilingPlugin.json b/node_modules/webpack/schemas/plugins/debug/ProfilingPlugin.json new file mode 100644 index 00000000..e9a4bf18 --- /dev/null +++ b/node_modules/webpack/schemas/plugins/debug/ProfilingPlugin.json @@ -0,0 +1,13 @@ +{ + "title": "ProfilingPluginOptions", + "type": "object", + "additionalProperties": false, + "properties": { + "outputPath": { + "description": "Path to the output file e.g. `profiling/events.json`. Defaults to `events.json`.", + "type": "string", + "absolutePath": false, + "minLength": 4 + } + } +} diff --git a/node_modules/webpack/schemas/plugins/optimize/AggressiveSplittingPlugin.json b/node_modules/webpack/schemas/plugins/optimize/AggressiveSplittingPlugin.json new file mode 100644 index 00000000..19bcdfd5 --- /dev/null +++ b/node_modules/webpack/schemas/plugins/optimize/AggressiveSplittingPlugin.json @@ -0,0 +1,23 @@ +{ + "title": "AggressiveSplittingPluginOptions", + "type": "object", + "additionalProperties": false, + "properties": { + "chunkOverhead": { + "description": "Default: 0", + "type": "number" + }, + "entryChunkMultiplicator": { + "description": "Default: 1", + "type": "number" + }, + "maxSize": { + "description": "Byte, maxsize of per file. Default: 51200", + "type": "number" + }, + "minSize": { + "description": "Byte, split point. Default: 30720", + "type": "number" + } + } +} diff --git a/node_modules/webpack/schemas/plugins/optimize/LimitChunkCountPlugin.json b/node_modules/webpack/schemas/plugins/optimize/LimitChunkCountPlugin.json new file mode 100644 index 00000000..b2636eef --- /dev/null +++ b/node_modules/webpack/schemas/plugins/optimize/LimitChunkCountPlugin.json @@ -0,0 +1,16 @@ +{ + "title": "LimitChunkCountPluginOptions", + "type": "object", + "additionalProperties": false, + "properties": { + "maxChunks": { + "description": "Limit the maximum number of chunks using a value greater greater than or equal to 1", + "type": "number", + "minimum": 1 + }, + "minChunkSize": { + "description": "Set a minimum chunk size", + "type": "number" + } + } +} diff --git a/node_modules/webpack/schemas/plugins/optimize/MinChunkSizePlugin.json b/node_modules/webpack/schemas/plugins/optimize/MinChunkSizePlugin.json new file mode 100644 index 00000000..03e17d65 --- /dev/null +++ b/node_modules/webpack/schemas/plugins/optimize/MinChunkSizePlugin.json @@ -0,0 +1,12 @@ +{ + "title": "MinChunkSizePluginOptions", + "type": "object", + "additionalProperties": false, + "properties": { + "minChunkSize": { + "description": "Minimum number of characters", + "type": "number" + } + }, + "required": ["minChunkSize"] +} diff --git a/node_modules/webpack/schemas/plugins/optimize/OccurrenceOrderChunkIdsPlugin.json b/node_modules/webpack/schemas/plugins/optimize/OccurrenceOrderChunkIdsPlugin.json new file mode 100644 index 00000000..12facf2f --- /dev/null +++ b/node_modules/webpack/schemas/plugins/optimize/OccurrenceOrderChunkIdsPlugin.json @@ -0,0 +1,11 @@ +{ + "title": "OccurrenceOrderChunkIdsPluginOptions", + "type": "object", + "additionalProperties": false, + "properties": { + "prioritiseInitial": { + "description": "Prioritise initial size over total size", + "type": "boolean" + } + } +} diff --git a/node_modules/webpack/schemas/plugins/optimize/OccurrenceOrderModuleIdsPlugin.json b/node_modules/webpack/schemas/plugins/optimize/OccurrenceOrderModuleIdsPlugin.json new file mode 100644 index 00000000..d76ac14d --- /dev/null +++ b/node_modules/webpack/schemas/plugins/optimize/OccurrenceOrderModuleIdsPlugin.json @@ -0,0 +1,11 @@ +{ + "title": "OccurrenceOrderModuleIdsPluginOptions", + "type": "object", + "additionalProperties": false, + "properties": { + "prioritiseInitial": { + "description": "Prioritise initial size over total size", + "type": "boolean" + } + } +} |
