@rspack/core 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/dist/compilation.d.ts +3 -0
  2. package/dist/compilation.d.ts.map +1 -1
  3. package/dist/compilation.js +17 -0
  4. package/dist/compilation.js.map +1 -1
  5. package/dist/config/adapter.d.ts +2 -4
  6. package/dist/config/adapter.d.ts.map +1 -1
  7. package/dist/config/adapter.js +113 -29
  8. package/dist/config/adapter.js.map +1 -1
  9. package/dist/config/builtins.d.ts.map +1 -1
  10. package/dist/config/builtins.js +29 -4
  11. package/dist/config/builtins.js.map +1 -1
  12. package/dist/config/defaults.d.ts.map +1 -1
  13. package/dist/config/defaults.js +5 -1
  14. package/dist/config/defaults.js.map +1 -1
  15. package/dist/config/normalization.d.ts.map +1 -1
  16. package/dist/config/normalization.js +3 -1
  17. package/dist/config/normalization.js.map +1 -1
  18. package/dist/config/schema.check.d.ts.map +1 -1
  19. package/dist/config/schema.check.js +459 -369
  20. package/dist/config/schema.check.js.map +1 -1
  21. package/dist/config/schema.d.ts +381 -366
  22. package/dist/config/schema.js +18 -1
  23. package/dist/config/schema.js.map +1 -1
  24. package/dist/config/types.d.ts +37 -3
  25. package/dist/config/types.d.ts.map +1 -1
  26. package/dist/config/zod/_rewrite.d.ts +2 -4
  27. package/dist/config/zod/_rewrite.d.ts.map +1 -1
  28. package/dist/config/zod/builtins.d.ts +93 -1
  29. package/dist/config/zod/builtins.d.ts.map +1 -1
  30. package/dist/config/zod/builtins.js +22 -2
  31. package/dist/config/zod/builtins.js.map +1 -1
  32. package/dist/config/zod/experiments.d.ts +18 -3
  33. package/dist/config/zod/experiments.d.ts.map +1 -1
  34. package/dist/config/zod/experiments.js +7 -1
  35. package/dist/config/zod/experiments.js.map +1 -1
  36. package/dist/config/zod/index.d.ts +311 -39
  37. package/dist/config/zod/index.d.ts.map +1 -1
  38. package/dist/config/zod/index.js +4 -2
  39. package/dist/config/zod/index.js.map +1 -1
  40. package/dist/config/zod/optimization/index.d.ts +19 -19
  41. package/dist/config/zod/optimization/split-chunks.d.ts +16 -16
  42. package/dist/config/zod/optimization/split-chunks.js +1 -1
  43. package/dist/config/zod/optimization/split-chunks.js.map +1 -1
  44. package/dist/config/zod/plugins.d.ts +13 -0
  45. package/dist/config/zod/plugins.d.ts.map +1 -0
  46. package/dist/config/zod/plugins.js +19 -0
  47. package/dist/config/zod/plugins.js.map +1 -0
  48. package/dist/config/zod/resolve.d.ts +50 -0
  49. package/dist/config/zod/resolve.d.ts.map +1 -0
  50. package/dist/config/zod/resolve.js +30 -0
  51. package/dist/config/zod/resolve.js.map +1 -0
  52. package/dist/util/MergeCaller.d.ts +12 -0
  53. package/dist/util/MergeCaller.d.ts.map +1 -0
  54. package/dist/util/MergeCaller.js +25 -0
  55. package/dist/util/MergeCaller.js.map +1 -0
  56. package/package.json +8 -8
@@ -2,13 +2,13 @@
2
2
  "use strict";
3
3
  module.exports = validate10;
4
4
  module.exports.default = validate10;
5
- const schema11 = { "definitions": { "AssetModuleFilename": { "description": "The filename of asset modules as relative path inside the 'output.path' directory.", "anyOf": [{ "type": "string" }] }, "AssetParserDataUrlOptions": { "description": "Options object for DataUrl condition.", "type": "object", "additionalProperties": false, "properties": { "maxSize": { "description": "Maximum size of asset that should be inline as modules. Default: 8kb.", "type": "number" } } }, "AssetParserOptions": { "description": "Parser options for asset modules.", "type": "object", "additionalProperties": false, "properties": { "dataUrlCondition": { "description": "The condition for inlining the asset as DataUrl.", "anyOf": [{ "$ref": "#/definitions/AssetParserDataUrlOptions" }] } } }, "AuxiliaryComment": { "description": "Add a comment in the UMD wrapper.", "anyOf": [{ "description": "Append the same comment above each import style.", "type": "string" }, { "$ref": "#/definitions/LibraryCustomUmdCommentObject" }] }, "CacheOptions": { "description": "Cache generated modules and chunks to improve performance for multiple incremental builds.", "type": "boolean" }, "ChunkFilename": { "description": "Specifies the filename template of output files of non-initial chunks on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "ChunkFormat": { "description": "The format of chunks (formats included by default are 'array-push' (web/WebWorker), 'commonjs' (node.js), 'module' (ESM), but others might be added by plugins).", "anyOf": [{ "enum": ["array-push", "commonjs", "module", false] }, { "type": "string" }] }, "ChunkLoading": { "description": "The method of loading chunks (methods included by default are 'jsonp' (web), 'import' (ESM), 'importScripts' (WebWorker), 'require' (sync node.js), 'async-node' (async node.js), but others might be added by plugins).", "anyOf": [{ "enum": [false] }, { "$ref": "#/definitions/ChunkLoadingType" }] }, "ChunkLoadingType": { "description": "The method of loading chunks (methods included by default are 'jsonp' (web), 'import' (ESM), 'importScripts' (WebWorker), 'require' (sync node.js), 'async-node' (async node.js), but others might be added by plugins).", "anyOf": [{ "enum": ["jsonp", "import-scripts", "require", "async-node", "import"] }, { "type": "string" }] }, "CrossOriginLoading": { "description": "This option enables cross-origin loading of chunks.", "enum": [false, "anonymous", "use-credentials"] }, "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" }, "CssChunkFilename": { "description": "Specifies the filename template of non-initial output css files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "CssFilename": { "description": "Specifies the filename template of output css files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "HotUpdateChunkFilename": { "description": "The filename of the Hot Update Chunks. They are inside the output.path directory.", "type": "string", "absolutePath": false }, "HotUpdateMainFilename": { "description": "The filename of the Hot Update Main File. It is inside the 'output.path' directory.", "type": "string", "absolutePath": false }, "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" }] }, "HashSalt": { "description": "Any string which is added to the hash to salt it.", "type": "string", "minLength": 1 }, "WebassemblyModuleFilename": { "description": "The filename of WebAssembly modules as relative path inside the 'output.path' directory.", "type": "string" }, "EnabledWasmLoadingTypes": { "description": "List of wasm loading types enabled for use by entry points.", "type": "array", "items": { "$ref": "#/definitions/WasmLoadingType" } }, "EnabledChunkLoadingTypes": { "description": "List of chunk loading types enabled for use by entry points.", "type": "array", "items": { "$ref": "#/definitions/ChunkLoadingType" } }, "WasmLoading": { "description": "The method of loading WebAssembly Modules (methods included by default are 'fetch' (web/WebWorker), 'async-node' (node.js), but others might be added by plugins).", "anyOf": [{ "enum": [false] }, { "$ref": "#/definitions/WasmLoadingType" }] }, "WasmLoadingType": { "description": "The method of loading WebAssembly Modules (methods included by default are 'fetch' (web/WebWorker), 'async-node' (node.js), but others might be added by plugins).", "anyOf": [{ "enum": ["fetch-streaming", "fetch", "async-node"] }, { "type": "string" }] }, "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 rspack-dev-server.", "type": "object" }, "DevTool": { "description": "A developer tool to enhance debugging (false | eval | [inline-|hidden-|eval-][nosources-][cheap-[module-]]source-map).", "anyOf": [{ "enum": [false] }, { "type": "string", "pattern": "^(inline-|hidden-|eval-)?(nosources-)?(cheap-(module-)?)?source-map$" }] }, "EnabledLibraryTypes": { "description": "List of library types enabled for use by entry points.", "type": "array", "items": { "$ref": "#/definitions/LibraryType" } }, "Entry": { "description": "The entry point(s) of the compilation.", "anyOf": [{ "$ref": "#/definitions/EntryStatic" }] }, "EntryDescription": { "description": "An object with entry point description.", "type": "object", "additionalProperties": false, "properties": { "import": { "$ref": "#/definitions/EntryItem" }, "runtime": { "$ref": "#/definitions/EntryRuntime" }, "wasmLoading": { "$ref": "#/definitions/WasmLoading" } }, "required": ["import"] }, "EntryFilename": { "description": "Specifies the filename of the output file on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "EntryItem": { "description": "Module(s) that are loaded upon startup.", "anyOf": [{ "description": "All modules are loaded upon startup. The last one is exported.", "type": "array", "items": { "description": "A module that is loaded upon startup. Only the last one is exported.", "type": "string", "minLength": 1 }, "minItems": 1, "uniqueItems": true }, { "description": "The string is resolved to a module which is loaded upon startup.", "type": "string", "minLength": 1 }] }, "EntryObject": { "description": "Multiple entry bundles are created. The key is the entry name. The value can be a string, an array or an entry description object.", "type": "object", "additionalProperties": { "description": "An entry point with name.", "anyOf": [{ "$ref": "#/definitions/EntryItem" }, { "$ref": "#/definitions/EntryDescription" }] } }, "EntryRuntime": { "description": "The name of the runtime chunk. If set a runtime chunk with this name is created or an existing entrypoint is used as runtime.", "anyOf": [{ "enum": [false] }, { "type": "string", "minLength": 1 }] }, "EntryStatic": { "description": "A static entry description.", "anyOf": [{ "$ref": "#/definitions/EntryObject" }, { "$ref": "#/definitions/EntryUnnamed" }] }, "EntryUnnamed": { "description": "An entry point without name.", "oneOf": [{ "$ref": "#/definitions/EntryItem" }] }, "Experiments": { "description": "Enables/Disables experiments (experimental features with relax SemVer compatibility).", "type": "object", "additionalProperties": false, "properties": { "asyncWebAssembly": { "description": "Support WebAssembly as asynchronous EcmaScript Module.", "type": "boolean" }, "incrementalRebuild": { "description": "Rebuild incrementally", "type": "boolean" }, "lazyCompilation": { "description": "Compile entrypoints and import()s only when they are accessed.", "anyOf": [{ "type": "boolean" }] }, "outputModule": { "description": "Allow output javascript files as module source type.", "type": "boolean" }, "newSplitChunks": { "description": "Enable new SplitChunksPlugin", "type": "boolean" }, "css": { "description": "Enable native css support.", "type": "boolean" } } }, "ExternalItem": { "description": "Specify dependency that shouldn't be resolved by rspack, but should become dependencies of the resulting bundle. The kind of the dependency depends on `output.libraryTarget`.", "anyOf": [{ "description": "Every matched dependency becomes external.", "instanceof": "RegExp" }, { "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": { "$ref": "#/definitions/ExternalItemValue" } }, { "description": "The function is called on each dependency (`function(context, request, callback(err, result))`).", "instanceof": "Function" }] }, "ExternalItemValue": { "description": "The dependency used for the external.", "anyOf": [{ "type": "array", "items": { "description": "A part of the target of the external.", "type": "string", "minLength": 1 } }, { "description": "The target of the external.", "type": "string" }, { "description": "`true`: The dependency name is used as target of the external.", "type": "boolean" }] }, "Externals": { "description": "Specify dependencies that shouldn't be resolved by rspack, but should become dependencies of the resulting bundle. The kind of the dependency depends on `output.libraryTarget`.", "anyOf": [{ "type": "array", "items": { "$ref": "#/definitions/ExternalItem" } }, { "$ref": "#/definitions/ExternalItem" }] }, "ExternalsPresets": { "description": "Enable presets of externals for specific targets.", "type": "object", "additionalProperties": false, "properties": { "node": { "description": "Treat node.js built-in modules like fs, path or vm as external and load them via require() when used.", "type": "boolean" }, "web": { "description": "Treat references to 'http(s)://...' and 'std:...' as external and load them via import when used (Note that this changes execution order as externals are executed before any other code in the chunk).", "type": "boolean" }, "electron": { "description": "Treat common electron built-in modules in main and preload context like 'electron', 'ipc' or 'shell' as external and load them via require() when used.", "type": "boolean" }, "electronMain": { "description": "Treat electron built-in modules in the main context like 'app', 'ipc-main' or 'shell' as external and load them via require() when used.", "type": "boolean" }, "electronPreload": { "description": "Treat electron built-in modules in the preload context like 'web-frame', 'ipc-renderer' or 'shell' as external and load them via require() when used.", "type": "boolean" }, "electronRenderer": { "description": "Treat electron built-in modules in the renderer context like 'web-frame', 'ipc-renderer' or 'shell' as external and load them via require() when used.", "type": "boolean" } } }, "ExternalsType": { "description": "Specifies the default type of externals ('amd*', 'umd*', 'system' and 'jsonp' depend on output.libraryTarget set to the same value).", "enum": ["var", "module", "assign", "this", "window", "self", "global", "commonjs", "commonjs2", "commonjs-module", "commonjs-static", "amd", "amd-require", "umd", "umd2", "jsonp", "system", "promise", "import", "script", "node-commonjs"] }, "Filename": { "description": "Specifies the filename of output files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "SourceMapFilename": { "description": "Specifies the filename of output files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "FilenameTemplate": { "description": "Specifies the filename template of output files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "anyOf": [{ "type": "string", "minLength": 1 }, { "instanceof": "Function" }] }, "FilterItemTypes": { "description": "Filtering value, regexp or function.", "anyOf": [{ "instanceof": "RegExp" }, { "type": "string" }, { "instanceof": "Function" }] }, "FilterTypes": { "description": "Filtering values.", "anyOf": [{ "type": "array", "items": { "description": "Rule to filter.", "oneOf": [{ "$ref": "#/definitions/FilterItemTypes" }] } }, { "$ref": "#/definitions/FilterItemTypes" }] }, "GlobalObject": { "description": "An expression which is used to address the global object/scope in runtime code.", "type": "string", "minLength": 1 }, "ImportFunctionName": { "description": "The name of the native import() function (can be exchanged for a polyfill).", "type": "string" }, "InfrastructureLogging": { "description": "Options for infrastructure level logging.", "type": "object", "additionalProperties": false, "properties": { "appendOnly": { "description": "Only appends lines to the output. Avoids updating existing output e. g. for status messages. This option is only used when no custom console is provided.", "type": "boolean" }, "colors": { "description": "Enables/Disables colorful output. This option is only used when no custom console is provided.", "type": "boolean" }, "console": { "description": "Custom console used for logging." }, "debug": { "description": "Enable debug logging for specific loggers.", "anyOf": [{ "description": "Enable/Disable debug logging for all loggers.", "type": "boolean" }, { "$ref": "#/definitions/FilterTypes" }] }, "level": { "description": "Log level.", "enum": ["none", "error", "warn", "info", "log", "verbose"] }, "stream": { "description": "Stream used for logging output. Defaults to process.stderr. This option is only used when no custom console is provided." } } }, "Library": { "description": "Make the output files a library, exporting the exports of the entry point.", "anyOf": [{ "$ref": "#/definitions/LibraryName" }, { "$ref": "#/definitions/LibraryOptions" }] }, "LibraryCustomUmdCommentObject": { "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" } } }, "LibraryCustomUmdObject": { "description": "Description object for all UMD variants of the library name.", "type": "object", "additionalProperties": false, "properties": { "amd": { "description": "Name of the exposed AMD library in the UMD.", "type": "string", "minLength": 1 }, "commonjs": { "description": "Name of the exposed commonjs export in the UMD.", "type": "string", "minLength": 1 }, "root": { "description": "Name of the property exposed globally by a UMD library.", "anyOf": [{ "type": "array", "items": { "description": "Part of the name of the property exposed globally by a UMD library.", "type": "string", "minLength": 1 } }, { "type": "string", "minLength": 1 }] } } }, "LibraryExport": { "description": "Specify which export should be exposed as library.", "anyOf": [{ "type": "array", "items": { "description": "Part of the export that should be exposed as library.", "type": "string", "minLength": 1 } }, { "type": "string", "minLength": 1 }] }, "LibraryName": { "description": "The name of the library (some types allow unnamed libraries too).", "anyOf": [{ "type": "array", "items": { "description": "A part of the library name.", "type": "string", "minLength": 1 }, "minItems": 1 }, { "type": "string", "minLength": 1 }, { "$ref": "#/definitions/LibraryCustomUmdObject" }] }, "LibraryOptions": { "description": "Options for library.", "type": "object", "additionalProperties": false, "properties": { "auxiliaryComment": { "$ref": "#/definitions/AuxiliaryComment" }, "export": { "$ref": "#/definitions/LibraryExport" }, "name": { "$ref": "#/definitions/LibraryName" }, "type": { "$ref": "#/definitions/LibraryType" }, "umdNamedDefine": { "$ref": "#/definitions/UmdNamedDefine" } }, "required": ["type"] }, "LibraryType": { "description": "Type of library (types included by default are 'var', 'module', 'assign', 'assign-properties', 'this', 'window', 'self', 'global', 'commonjs', 'commonjs2', 'commonjs-module', 'commonjs-static', 'amd', 'amd-require', 'umd', 'umd2', 'jsonp', 'system', but others might be added by plugins).", "anyOf": [{ "enum": ["var", "module", "assign", "assign-properties", "this", "window", "self", "global", "commonjs", "commonjs2", "commonjs-module", "commonjs-static", "amd", "amd-require", "umd", "umd2", "jsonp", "system"] }, { "type": "string" }] }, "Mode": { "description": "Enable production optimizations or development hints.", "enum": ["development", "production", "none"] }, "IgnoreWarnings": { "description": "ignore warnings based on pattern", "type": "array", "items": { "anyOf": [{ "instanceof": "RegExp" }, { "instanceof": "Function" }] } }, "ModuleOptions": { "description": "Options affecting the normal modules (`NormalModuleFactory`).", "type": "object", "additionalProperties": false, "properties": { "defaultRules": { "description": "An array of rules applied by default for modules.", "oneOf": [{ "$ref": "#/definitions/RuleSetRules" }] }, "parser": { "$ref": "#/definitions/ParserOptionsByModuleType" }, "rules": { "description": "An array of rules applied for modules.", "oneOf": [{ "$ref": "#/definitions/RuleSetRules" }] } } }, "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" }] }, "NodeOptions": { "description": "Options object for node compatibility features.", "type": "object", "additionalProperties": false, "properties": { "__dirname": { "description": "Include a polyfill for the '__dirname' variable.", "enum": [false, true, "warn-mock", "mock", "eval-only"] }, "__filename": { "description": "Include a polyfill for the '__filename' variable.", "enum": [false, true, "warn-mock", "mock", "eval-only"] }, "global": { "description": "Include a polyfill for the 'global' variable.", "enum": [false, true, "warn"] } } }, "Optimization": { "description": "Enables/Disables integrated optimizations.", "type": "object", "additionalProperties": false, "properties": { "chunkIds": { "description": "Define the algorithm to choose chunk ids (named: readable ids for better debugging, deterministic: numeric hash 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": ["named", "deterministic"] }, "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": [{ "enum": ["..."] }, { "$ref": "#/definitions/RspackPluginInstance" }, { "$ref": "#/definitions/RspackPluginFunction" }] } }, "moduleIds": { "description": "Define the algorithm to choose module ids (natural: numeric ids in order of usage, named: readable ids for better debugging, hashed: (deprecated) short hashes as ids for better long term caching, deterministic: numeric hash ids for better long term caching, size: numeric ids focused on minimal initial download size, false: no algorithm used, as custom one can be provided via plugin).", "enum": ["named", "deterministic"] }, "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": { "$ref": "#/definitions/OptimizationRuntimeChunk" }, "sideEffects": { "description": "Skip over modules which contain no side effects when exports are not used (false: disabled, 'flag': only use manually placed side effects flag, true: also analyse source code for side effects).", "anyOf": [{ "enum": ["flag"] }, { "type": "boolean" }] }, "splitChunks": { "description": "Optimize duplication and caching by splitting chunks by shared modules and cache group.", "anyOf": [{ "enum": [false] }, { "$ref": "#/definitions/OptimizationSplitChunksOptions" }] }, "realContentHash": { "description": "Use real [contenthash] based on final content of the assets.", "type": "boolean" } } }, "OptimizationRuntimeChunk": { "description": "Create an additional chunk which contains only the rspack runtime and chunk hash maps.", "anyOf": [{ "enum": ["single", "multiple"] }, { "type": "boolean" }, { "type": "object", "additionalProperties": false, "properties": { "name": { "description": "The name or name factory for the runtime chunks.", "anyOf": [{ "type": "string" }, { "instanceof": "Function" }] } } }] }, "OptimizationSplitChunksCacheGroup": { "description": "Options object for describing behavior of a cache group selecting modules that should be cached together.", "type": "object", "additionalProperties": false, "properties": { "chunks": { "description": "Select chunks for determining cache group content (defaults to \"initial\", \"initial\" and \"all\" requires adding these chunks to the HTML).", "anyOf": [{ "enum": ["initial", "async", "all"] }, { "instanceof": "Function" }] }, "minChunks": { "description": "Minimum number of times a module has to be duplicated until it's considered for splitting.", "type": "number", "minimum": 1 }, "name": { "description": "Give chunks for this cache group a name (chunks with equal name are merged).", "anyOf": [{ "enum": [false] }, { "type": "string" }, { "instanceof": "Function" }] }, "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" }, "enforce": { "description": "ignore splitChunks.minSize, splitChunks.minChunks, splitChunks.maxAsyncRequests and splitChunks.maxInitialRequests options and always create chunks for this cache group.", "type": "boolean" }, "hidePathInfo": { "type": "boolean" }, "maxSize": { "type": "number" }, "test": { "description": "Assign modules to a cache group by module name.", "anyOf": [{ "instanceof": "RegExp" }] }, "minSize": { "description": "Minimal size for the created chunks.", "oneOf": [{ "$ref": "#/definitions/OptimizationSplitChunksSizes" }] } } }, "OptimizationSplitChunksOptions": { "description": "Options object for splitting chunks into smaller chunks.", "type": "object", "additionalProperties": false, "properties": { "fallbackCacheGroup": { "type": "object", "properties": { "maxSize": { "type": "number" }, "maxInitialSize": { "type": "number" }, "maxAsyncSize": { "type": "number" }, "minSize": { "type": "number" } } }, "hidePathInfo": { "type": "boolean" }, "name": { "description": "The name or name for chunks.", "anyOf": [{ "type": "string" }] }, "cacheGroups": { "description": "Assign modules to a cache group (modules from different cache groups are tried to keep in separate chunks, default categories: 'default', 'defaultVendors').", "type": "object", "additionalProperties": { "description": "Configuration for a cache group.", "anyOf": [{ "$ref": "#/definitions/OptimizationSplitChunksCacheGroup" }] } }, "chunks": { "description": "Select chunks for determining shared modules (defaults to \"async\", \"initial\" and \"all\" requires adding these chunks to the HTML).", "anyOf": [{ "enum": ["initial", "async", "all"] }] }, "enforceSizeThreshold": { "description": "Size threshold at which splitting is enforced and other restrictions (minRemainingSize, maxAsyncRequests, maxInitialRequests) are ignored.", "oneOf": [{ "$ref": "#/definitions/OptimizationSplitChunksSizes" }] }, "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 }, "minChunks": { "description": "Minimum number of times a module has to be duplicated until it's considered for splitting.", "type": "number", "minimum": 1 }, "minRemainingSize": { "description": "Minimal size for the chunks the stay after moving the modules to a new chunk.", "oneOf": [{ "$ref": "#/definitions/OptimizationSplitChunksSizes" }] }, "minSize": { "description": "Minimal size for the created chunks.", "oneOf": [{ "$ref": "#/definitions/OptimizationSplitChunksSizes" }] }, "maxSize": { "type": "number" }, "maxInitialSize": { "type": "number" }, "maxAsyncSize": { "type": "number" }, "reuseExistingChunk": { "description": "If the current chunk contains modules already split out from the main bundle, it will be reused instead of a new one being generated. This can affect the resulting file name of the chunk.", "type": "boolean" } } }, "OptimizationSplitChunksSizes": { "description": "Size description for limits.", "anyOf": [{ "description": "Size of the javascript part of the chunk.", "type": "number", "minimum": 0 }] }, "Iife": { "description": "Wrap javascript code into IIFE's to avoid leaking into global scope.", "type": "boolean" }, "Clean": { "description": "Clears the output build directory", "type": "boolean" }, "Output": { "description": "Options affecting the output of the compilation. `output` options tell rspack how to write the compiled files to disk.", "type": "object", "additionalProperties": false, "properties": { "iife": { "$ref": "#/definitions/Iife" }, "clean": { "$ref": "#/definitions/Clean" }, "assetModuleFilename": { "$ref": "#/definitions/AssetModuleFilename" }, "auxiliaryComment": { "oneOf": [{ "$ref": "#/definitions/AuxiliaryComment" }] }, "chunkFormat": { "$ref": "#/definitions/ChunkFormat" }, "chunkLoading": { "$ref": "#/definitions/ChunkLoading" }, "enabledChunkLoadingTypes": { "$ref": "#/definitions/EnabledChunkLoadingTypes" }, "chunkFilename": { "$ref": "#/definitions/ChunkFilename" }, "crossOriginLoading": { "$ref": "#/definitions/CrossOriginLoading" }, "cssChunkFilename": { "$ref": "#/definitions/CssChunkFilename" }, "cssFilename": { "$ref": "#/definitions/CssFilename" }, "hotUpdateChunkFilename": { "$ref": "#/definitions/HotUpdateChunkFilename" }, "hotUpdateMainFilename": { "$ref": "#/definitions/HotUpdateMainFilename" }, "enabledWasmLoadingTypes": { "$ref": "#/definitions/EnabledWasmLoadingTypes" }, "wasmLoading": { "$ref": "#/definitions/WasmLoading" }, "webassemblyModuleFilename": { "$ref": "#/definitions/WebassemblyModuleFilename" }, "enabledLibraryTypes": { "$ref": "#/definitions/EnabledLibraryTypes" }, "filename": { "$ref": "#/definitions/Filename" }, "globalObject": { "$ref": "#/definitions/GlobalObject" }, "importFunctionName": { "$ref": "#/definitions/ImportFunctionName" }, "library": { "$ref": "#/definitions/Library" }, "libraryExport": { "oneOf": [{ "$ref": "#/definitions/LibraryExport" }] }, "libraryTarget": { "oneOf": [{ "$ref": "#/definitions/LibraryType" }] }, "module": { "$ref": "#/definitions/OutputModule" }, "path": { "$ref": "#/definitions/Path" }, "publicPath": { "$ref": "#/definitions/PublicPath" }, "strictModuleErrorHandling": { "$ref": "#/definitions/StrictModuleErrorHandling" }, "umdNamedDefine": { "oneOf": [{ "$ref": "#/definitions/UmdNamedDefine" }] }, "uniqueName": { "$ref": "#/definitions/UniqueName" }, "chunkLoadingGlobal": { "$ref": "#/definitions/ChunkLoadingGlobal" }, "trustedTypes": { "description": "Use a Trusted Types policy to create urls for chunks. 'output.uniqueName' is used a default policy name. Passing a string sets a custom policy name.", "anyOf": [{ "enum": [true] }, { "description": "The name of the Trusted Types policy created by webpack to serve bundle chunks.", "type": "string", "minLength": 1 }, { "$ref": "#/definitions/TrustedTypes" }] }, "sourceMapFilename": { "$ref": "#/definitions/SourceMapFilename" }, "hashDigest": { "$ref": "#/definitions/HashDigest" }, "hashDigestLength": { "$ref": "#/definitions/HashDigestLength" }, "hashFunction": { "$ref": "#/definitions/HashFunction" }, "hashSalt": { "$ref": "#/definitions/HashSalt" } } }, "OutputModule": { "description": "Output javascript files as module source type.", "type": "boolean" }, "ParserOptionsByModuleType": { "description": "Specify options for each parser.", "type": "object", "additionalProperties": { "description": "Options for parsing.", "type": "object", "additionalProperties": true }, "properties": { "asset": { "$ref": "#/definitions/AssetParserOptions" } } }, "Path": { "description": "The output directory as **absolute path** (required).", "type": "string" }, "Plugins": { "description": "Add additional plugins to the compiler.", "type": "array", "items": { "description": "Plugin of type object or instanceof Function.", "anyOf": [{ "$ref": "#/definitions/RspackPluginInstance" }, { "$ref": "#/definitions/RspackPluginFunction" }] } }, "PublicPath": { "description": "The 'publicPath' specifies the public URL address of the output files when referenced in a browser.", "anyOf": [{ "enum": ["auto"] }, { "$ref": "#/definitions/RawPublicPath" }] }, "RawPublicPath": { "description": "The 'publicPath' specifies the public URL address of the output files when referenced in a browser.", "anyOf": [{ "type": "string" }] }, "Resolve": { "description": "Options for the resolver.", "oneOf": [{ "$ref": "#/definitions/ResolveOptions" }] }, "ResolveAlias": { "description": "Redirect module requests.", "anyOf": [{ "type": "object", "additionalProperties": { "description": "New request.", "anyOf": [{ "description": "Multiple alternative requests.", "type": "array", "items": { "description": "One choice of request.", "type": "string", "minLength": 1 } }, { "description": "Ignore request (replace with empty module).", "enum": [false] }, { "description": "New request.", "type": "string", "minLength": 1 }] } }] }, "ResolveOptions": { "description": "Options object for resolving requests.", "type": "object", "additionalProperties": false, "properties": { "alias": { "$ref": "#/definitions/ResolveAlias" }, "browserField": { "description": "Fields in the description file (usually package.json) which are used to redirect requests inside the module.", "type": "boolean" }, "conditionNames": { "description": "Condition names for exports field entry point.", "type": "array", "items": { "description": "Condition names for exports field entry point.", "type": "string" } }, "extensionAlias": { "description": "An object which maps extension to extension aliases.", "type": "object", "additionalProperties": { "description": "Extension alias.", "anyOf": [{ "description": "Multiple extensions.", "type": "array", "items": { "description": "Aliased extension.", "type": "string", "minLength": 1 } }, { "description": "Aliased extension.", "type": "string", "minLength": 1 }] } }, "extensions": { "description": "Extensions added to the request when trying to find the file.", "type": "array", "items": { "description": "Extension added to the request when trying to find the file.", "type": "string" } }, "fallback": { "description": "Redirect module requests when normal resolving fails.", "oneOf": [{ "$ref": "#/definitions/ResolveAlias" }] }, "fullySpecified": { "description": "Treats the request specified by the user as fully specified, meaning no extensions are added and the mainFiles in directories are not resolved (This doesn't affect requests from mainFields, aliasFields or aliases).", "type": "boolean" }, "mainFields": { "description": "Field names from the description file (package.json) which are used to find the default entry point.", "type": "array", "items": { "description": "Field name from the description file (package.json) which are used to find the default entry point.", "anyOf": [{ "type": "array", "items": { "description": "Part of the field path from the description file (package.json) which are used to find the default entry point.", "type": "string", "minLength": 1 } }, { "type": "string", "minLength": 1 }] } }, "mainFiles": { "description": "Filenames used to find the default entry point if there is no description file or main field.", "type": "array", "items": { "description": "Filename used to find the default entry point if there is no description file or main field.", "type": "string", "minLength": 1 } }, "modules": { "description": "Folder names or directory paths where to find modules.", "type": "array", "items": { "description": "Folder name or directory path where to find modules.", "type": "string", "minLength": 1 } }, "preferRelative": { "description": "Prefer to resolve module requests as relative request and fallback to resolving as module.", "type": "boolean" }, "byDependency": { "description": "Extra resolve options per dependency category. Typical categories are \"commonjs\", \"amd\", \"esm\".", "type": "object", "additionalProperties": { "description": "Options object for resolving requests.", "oneOf": [{ "$ref": "#/definitions/ResolveOptions" }] } }, "tsConfigPath": { "description": "Path to tsconfig.json", "type": "string" }, "exportsFields": { "description": "Fields in the description file (usually package.json) which are used to redirect requests inside the module.", "type": "array", "items": { "description": "Field name from the description file (package.json) which are used to find the default entry point.", "type": "string" } } } }, "RuleSetCondition": { "description": "A condition matcher.", "anyOf": [{ "instanceof": "RegExp" }, { "type": "string" }, { "instanceof": "Function" }, { "$ref": "#/definitions/RuleSetLogicalConditions" }, { "$ref": "#/definitions/RuleSetConditions" }] }, "RuleSetConditionOrConditions": { "description": "One or multiple rule conditions.", "anyOf": [{ "$ref": "#/definitions/RuleSetCondition" }, { "$ref": "#/definitions/RuleSetConditions" }] }, "RuleSetConditions": { "description": "A list of rule conditions.", "type": "array", "items": { "description": "A rule condition.", "oneOf": [{ "$ref": "#/definitions/RuleSetCondition" }] } }, "RuleSetLoader": { "description": "A loader request.", "type": "string", "minLength": 1 }, "RuleSetLoaderOptions": { "description": "Options passed to a loader.", "anyOf": [{ "type": "string" }, { "type": "object" }] }, "RuleSetLogicalConditions": { "description": "Logic operators used in a condition matcher.", "type": "object", "additionalProperties": false, "properties": { "and": { "description": "Logical AND.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditions" }] }, "not": { "description": "Logical NOT.", "oneOf": [{ "$ref": "#/definitions/RuleSetCondition" }] }, "or": { "description": "Logical OR.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditions" }] } } }, "RuleSetRule": { "description": "A rule description with conditions and effects for modules.", "type": "object", "additionalProperties": false, "properties": { "enforce": { "description": "Enforce this rule as pre or post step.", "enum": ["pre", "post"] }, "exclude": { "description": "Shortcut for resource.exclude.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "generator": { "description": "The options for the module generator.", "type": "object" }, "include": { "description": "Shortcut for resource.include.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "issuer": { "description": "Match the issuer of the module (The module pointing to this module).", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "dependency": { "description": "Match dependency type.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "descriptionData": { "description": "Match values of properties in the description file (usually package.json).", "type": "object", "additionalProperties": { "$ref": "#/definitions/RuleSetConditionOrConditions" } }, "oneOf": { "description": "Only execute the first matching rule in this array.", "type": "array", "items": { "description": "A rule.", "oneOf": [{ "$ref": "#/definitions/RuleSetRule" }] } }, "parser": { "description": "Options for parsing.", "type": "object", "additionalProperties": true }, "resolve": { "description": "Options for the resolver.", "type": "object", "oneOf": [{ "$ref": "#/definitions/ResolveOptions" }] }, "resource": { "description": "Match the resource path of the module.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "resourceFragment": { "description": "Match the resource fragment of the module.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "resourceQuery": { "description": "Match the resource query of the module.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "mimetype": { "description": "Match module mimetype when load from Data URI.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "loader": { "description": "Shortcut for use.loader.", "oneOf": [{ "$ref": "#/definitions/RuleSetLoader" }] }, "options": { "description": "Shortcut for use.options.", "oneOf": [{ "$ref": "#/definitions/RuleSetLoaderOptions" }] }, "scheme": { "description": "Match module scheme.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "rules": { "description": "Match and execute these rules when this rule is matched.", "type": "array", "items": { "description": "A rule.", "oneOf": [{ "$ref": "#/definitions/RuleSetRule" }] } }, "sideEffects": { "description": "Flags a module as with or without side effects.", "type": "boolean" }, "test": { "description": "Shortcut for resource.test.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "type": { "description": "Module type to use for the module.", "type": "string" }, "use": { "description": "Modifiers applied to the module when rule is matched.", "oneOf": [{ "$ref": "#/definitions/RuleSetUse" }] } } }, "RuleSetRules": { "description": "A list of rules.", "type": "array", "items": { "description": "A rule.", "anyOf": [{ "enum": ["..."] }, { "$ref": "#/definitions/RuleSetRule" }] } }, "RuleSetUse": { "description": "A list of descriptions of loaders applied.", "anyOf": [{ "type": "array", "items": { "description": "An use item.", "oneOf": [{ "$ref": "#/definitions/RuleSetUseItem" }] } }, { "$ref": "#/definitions/RuleSetUseItem" }] }, "RuleSetUseItem": { "description": "A description of an applied loader.", "anyOf": [{ "type": "object", "additionalProperties": false, "properties": { "loader": { "description": "Loader name.", "oneOf": [{ "$ref": "#/definitions/RuleSetLoader" }] }, "options": { "description": "Loader options.", "oneOf": [{ "$ref": "#/definitions/RuleSetLoaderOptions" }] } } }, { "$ref": "#/definitions/RuleSetLoader" }] }, "SnapshotOptions": { "description": "Options affecting how file system snapshots are created and validated.", "type": "object", "additionalProperties": false, "properties": { "module": { "description": "Options for snapshotting dependencies of modules to determine if they need to be built again.", "type": "object", "additionalProperties": false, "properties": { "hash": { "description": "Use hashes of the content of the files/directories to determine invalidation.", "type": "boolean" }, "timestamp": { "description": "Use timestamps of the files/directories to determine invalidation.", "type": "boolean" } } }, "resolve": { "description": "Options for snapshotting dependencies of request resolving to determine if requests need to be re-resolved.", "type": "object", "additionalProperties": false, "properties": { "hash": { "description": "Use hashes of the content of the files/directories to determine invalidation.", "type": "boolean" }, "timestamp": { "description": "Use timestamps of the files/directories to determine invalidation.", "type": "boolean" } } } } }, "StatsOptions": { "description": "Stats options object.", "type": "object", "additionalProperties": true, "properties": { "all": { "description": "Fallback value for stats options when an option is not defined (has precedence over local rspack defaults).", "type": "boolean" }, "assets": { "description": "Add assets information.", "type": "boolean" }, "chunkGroups": { "description": "Display all chunk groups with the corresponding bundles.", "type": "boolean" }, "chunks": { "description": "Add chunk information.", "type": "boolean" }, "colors": { "description": "Enables/Disables colorful output.", "type": "boolean" }, "entrypoints": { "description": "Display the entry points with the corresponding bundles.", "anyOf": [{ "enum": ["auto"] }, { "type": "boolean" }] }, "errors": { "description": "Add errors.", "type": "boolean" }, "errorsCount": { "description": "Add errors count.", "type": "boolean" }, "hash": { "description": "Add the hash of the compilation.", "type": "boolean" }, "modules": { "description": "Add built modules information.", "type": "boolean" }, "preset": { "description": "Preset for the default values.", "anyOf": [{ "type": "boolean" }, { "type": "string" }] }, "publicPath": { "description": "Add public path information.", "type": "boolean" }, "reasons": { "description": "Add information about the reasons why modules are included.", "type": "boolean" }, "warnings": { "description": "Add warnings.", "type": "boolean" }, "warningsCount": { "description": "Add warnings count.", "type": "boolean" }, "outputPath": { "description": "Add output path information.", "type": "boolean" }, "chunkModules": { "description": "Add built modules information to chunk information.", "type": "boolean" }, "chunkRelations": { "description": "Add information about parent, children and sibling chunks to chunk information.", "type": "boolean" }, "timings": { "description": "Add timing information.", "type": "boolean" }, "builtAt": { "description": "Add built at time information.", "type": "boolean" }, "nestedModules": { "description": "Add information about modules nested in other modules (like with module concatenation).", "type": "boolean" } } }, "StatsValue": { "description": "Stats options object or preset name.", "anyOf": [{ "enum": ["none", "errors-only", "errors-warnings", "normal", "verbose"] }, { "type": "boolean" }, { "$ref": "#/definitions/StatsOptions" }] }, "StrictModuleErrorHandling": { "description": "Handles error in module loading correctly at a performance cost. This will handle module error compatible with the EcmaScript Modules spec.", "type": "boolean" }, "Target": { "description": "Environment to build for. An array of environments to build for all of them when possible.", "anyOf": [{ "type": "array", "items": { "description": "Environment to build for.", "type": "string", "minLength": 1 }, "minItems": 1 }, { "enum": [false] }, { "type": "string", "minLength": 1 }] }, "TrustedTypes": { "description": "Use a Trusted Types policy to create urls for chunks.", "type": "object", "additionalProperties": false, "properties": { "policyName": { "description": "The name of the Trusted Types policy created by webpack to serve bundle chunks.", "type": "string", "minLength": 1 } } }, "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" }, "UniqueName": { "description": "A unique name of the rspack build to avoid multiple rspack runtimes to conflict when using globals.", "type": "string", "minLength": 1 }, "ChunkLoadingGlobal": { "description": "The global variable used by rspack for loading of chunks.", "type": "string", "minLength": 1 }, "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" }, "followSymlinks": { "description": "Resolve symlinks and watch symlink and real file. This is usually not needed as rspack already resolves symlinks ('resolve.symlinks').", "type": "boolean" }, "ignored": { "description": "Ignore some files from watching (glob pattern or regexp).", "anyOf": [{ "type": "array", "items": { "description": "A glob pattern for files that should be ignored from watching.", "type": "string", "minLength": 1 } }, { "instanceof": "RegExp" }, { "description": "A single glob pattern for files that should be ignored from watching.", "type": "string", "minLength": 1 }] }, "poll": { "description": "Enable polling mode for watching.", "anyOf": [{ "description": "`number`: use polling with specified interval.", "type": "number" }, { "description": "`true`: use polling.", "type": "boolean" }] }, "stdin": { "description": "Stop watching when stdin stream has ended.", "type": "boolean" } } }, "RspackPluginFunction": { "description": "Function acting as plugin.", "instanceof": "Function" }, "RspackPluginInstance": { "description": "Plugin instance.", "type": "object", "additionalProperties": true, "properties": { "apply": { "description": "The run point of the plugin, required method.", "instanceof": "Function" } }, "required": ["apply"] } }, "title": "RspackOptions", "description": "Options object as provided by the user.", "type": "object", "additionalProperties": false, "properties": { "cache": { "$ref": "#/definitions/CacheOptions" }, "context": { "$ref": "#/definitions/Context" }, "dependencies": { "$ref": "#/definitions/Dependencies" }, "devServer": { "$ref": "#/definitions/DevServer" }, "devtool": { "$ref": "#/definitions/DevTool" }, "entry": { "$ref": "#/definitions/Entry" }, "experiments": { "$ref": "#/definitions/Experiments" }, "externals": { "$ref": "#/definitions/Externals" }, "externalsType": { "$ref": "#/definitions/ExternalsType" }, "externalsPresets": { "$ref": "#/definitions/ExternalsPresets" }, "infrastructureLogging": { "$ref": "#/definitions/InfrastructureLogging" }, "mode": { "$ref": "#/definitions/Mode" }, "module": { "$ref": "#/definitions/ModuleOptions" }, "name": { "$ref": "#/definitions/Name" }, "node": { "$ref": "#/definitions/Node" }, "optimization": { "$ref": "#/definitions/Optimization" }, "output": { "$ref": "#/definitions/Output" }, "plugins": { "$ref": "#/definitions/Plugins" }, "resolve": { "$ref": "#/definitions/Resolve" }, "snapshot": { "$ref": "#/definitions/SnapshotOptions" }, "stats": { "$ref": "#/definitions/StatsValue" }, "target": { "$ref": "#/definitions/Target" }, "watch": { "$ref": "#/definitions/Watch" }, "watchOptions": { "$ref": "#/definitions/WatchOptions" }, "builtins": { "description": "Builtins features in rspack", "type": "object", "additionalProperties": true }, "ignoreWarnings": { "$ref": "#/definitions/IgnoreWarnings" } } };
5
+ const schema11 = { "definitions": { "AssetModuleFilename": { "description": "The filename of asset modules as relative path inside the 'output.path' directory.", "anyOf": [{ "type": "string" }] }, "AssetParserDataUrlOptions": { "description": "Options object for DataUrl condition.", "type": "object", "additionalProperties": false, "properties": { "maxSize": { "description": "Maximum size of asset that should be inline as modules. Default: 8kb.", "type": "number" } } }, "AssetParserOptions": { "description": "Parser options for asset modules.", "type": "object", "additionalProperties": false, "properties": { "dataUrlCondition": { "description": "The condition for inlining the asset as DataUrl.", "anyOf": [{ "$ref": "#/definitions/AssetParserDataUrlOptions" }] } } }, "AuxiliaryComment": { "description": "Add a comment in the UMD wrapper.", "anyOf": [{ "description": "Append the same comment above each import style.", "type": "string" }, { "$ref": "#/definitions/LibraryCustomUmdCommentObject" }] }, "CacheOptions": { "description": "Cache generated modules and chunks to improve performance for multiple incremental builds.", "type": "boolean" }, "ChunkFilename": { "description": "Specifies the filename template of output files of non-initial chunks on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "ChunkFormat": { "description": "The format of chunks (formats included by default are 'array-push' (web/WebWorker), 'commonjs' (node.js), 'module' (ESM), but others might be added by plugins).", "anyOf": [{ "enum": ["array-push", "commonjs", "module", false] }, { "type": "string" }] }, "ChunkLoading": { "description": "The method of loading chunks (methods included by default are 'jsonp' (web), 'import' (ESM), 'importScripts' (WebWorker), 'require' (sync node.js), 'async-node' (async node.js), but others might be added by plugins).", "anyOf": [{ "enum": [false] }, { "$ref": "#/definitions/ChunkLoadingType" }] }, "ChunkLoadingType": { "description": "The method of loading chunks (methods included by default are 'jsonp' (web), 'import' (ESM), 'importScripts' (WebWorker), 'require' (sync node.js), 'async-node' (async node.js), but others might be added by plugins).", "anyOf": [{ "enum": ["jsonp", "import-scripts", "require", "async-node", "import"] }, { "type": "string" }] }, "CrossOriginLoading": { "description": "This option enables cross-origin loading of chunks.", "enum": [false, "anonymous", "use-credentials"] }, "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" }, "CssChunkFilename": { "description": "Specifies the filename template of non-initial output css files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "CssFilename": { "description": "Specifies the filename template of output css files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "HotUpdateChunkFilename": { "description": "The filename of the Hot Update Chunks. They are inside the output.path directory.", "type": "string", "absolutePath": false }, "HotUpdateMainFilename": { "description": "The filename of the Hot Update Main File. It is inside the 'output.path' directory.", "type": "string", "absolutePath": false }, "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" }] }, "HashSalt": { "description": "Any string which is added to the hash to salt it.", "type": "string", "minLength": 1 }, "WebassemblyModuleFilename": { "description": "The filename of WebAssembly modules as relative path inside the 'output.path' directory.", "type": "string" }, "EnabledWasmLoadingTypes": { "description": "List of wasm loading types enabled for use by entry points.", "type": "array", "items": { "$ref": "#/definitions/WasmLoadingType" } }, "EnabledChunkLoadingTypes": { "description": "List of chunk loading types enabled for use by entry points.", "type": "array", "items": { "$ref": "#/definitions/ChunkLoadingType" } }, "WasmLoading": { "description": "The method of loading WebAssembly Modules (methods included by default are 'fetch' (web/WebWorker), 'async-node' (node.js), but others might be added by plugins).", "anyOf": [{ "enum": [false] }, { "$ref": "#/definitions/WasmLoadingType" }] }, "WasmLoadingType": { "description": "The method of loading WebAssembly Modules (methods included by default are 'fetch' (web/WebWorker), 'async-node' (node.js), but others might be added by plugins).", "anyOf": [{ "enum": ["fetch-streaming", "fetch", "async-node"] }, { "type": "string" }] }, "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 rspack-dev-server.", "type": "object" }, "DevTool": { "description": "A developer tool to enhance debugging (false | eval | [inline-|hidden-|eval-][nosources-][cheap-[module-]]source-map).", "anyOf": [{ "enum": [false] }, { "type": "string", "pattern": "^(inline-|hidden-|eval-)?(nosources-)?(cheap-(module-)?)?source-map$" }] }, "EnabledLibraryTypes": { "description": "List of library types enabled for use by entry points.", "type": "array", "items": { "$ref": "#/definitions/LibraryType" } }, "Entry": { "description": "The entry point(s) of the compilation.", "anyOf": [{ "$ref": "#/definitions/EntryStatic" }] }, "EntryDescription": { "description": "An object with entry point description.", "type": "object", "additionalProperties": false, "properties": { "import": { "$ref": "#/definitions/EntryItem" }, "runtime": { "$ref": "#/definitions/EntryRuntime" }, "wasmLoading": { "$ref": "#/definitions/WasmLoading" } }, "required": ["import"] }, "EntryFilename": { "description": "Specifies the filename of the output file on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "EntryItem": { "description": "Module(s) that are loaded upon startup.", "anyOf": [{ "description": "All modules are loaded upon startup. The last one is exported.", "type": "array", "items": { "description": "A module that is loaded upon startup. Only the last one is exported.", "type": "string", "minLength": 1 }, "minItems": 1, "uniqueItems": true }, { "description": "The string is resolved to a module which is loaded upon startup.", "type": "string", "minLength": 1 }] }, "EntryObject": { "description": "Multiple entry bundles are created. The key is the entry name. The value can be a string, an array or an entry description object.", "type": "object", "additionalProperties": { "description": "An entry point with name.", "anyOf": [{ "$ref": "#/definitions/EntryItem" }, { "$ref": "#/definitions/EntryDescription" }] } }, "EntryRuntime": { "description": "The name of the runtime chunk. If set a runtime chunk with this name is created or an existing entrypoint is used as runtime.", "anyOf": [{ "enum": [false] }, { "type": "string", "minLength": 1 }] }, "EntryStatic": { "description": "A static entry description.", "anyOf": [{ "$ref": "#/definitions/EntryObject" }, { "$ref": "#/definitions/EntryUnnamed" }] }, "EntryUnnamed": { "description": "An entry point without name.", "oneOf": [{ "$ref": "#/definitions/EntryItem" }] }, "Experiments": { "description": "Enables/Disables experiments (experimental features with relax SemVer compatibility).", "type": "object", "additionalProperties": false, "properties": { "asyncWebAssembly": { "description": "Support WebAssembly as asynchronous EcmaScript Module.", "type": "boolean" }, "incrementalRebuild": { "description": "Rebuild incrementally", "anyOf": [{ "type": "boolean" }, { "type": "object", "properties": { "make": { "description": "Make stage enable incremental rebuild", "type": "boolean" }, "emitAsset": { "description": "Emit asset enable incremental rebuild", "type": "boolean" } } }] }, "lazyCompilation": { "description": "Compile entrypoints and import()s only when they are accessed.", "anyOf": [{ "type": "boolean" }] }, "outputModule": { "description": "Allow output javascript files as module source type.", "type": "boolean" }, "newSplitChunks": { "description": "Enable new SplitChunksPlugin", "type": "boolean" }, "css": { "description": "Enable native css support.", "type": "boolean" } } }, "ExternalItem": { "description": "Specify dependency that shouldn't be resolved by rspack, but should become dependencies of the resulting bundle. The kind of the dependency depends on `output.libraryTarget`.", "anyOf": [{ "description": "Every matched dependency becomes external.", "instanceof": "RegExp" }, { "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": { "$ref": "#/definitions/ExternalItemValue" } }, { "description": "The function is called on each dependency (`function(context, request, callback(err, result))`).", "instanceof": "Function" }] }, "ExternalItemValue": { "description": "The dependency used for the external.", "anyOf": [{ "type": "array", "items": { "description": "A part of the target of the external.", "type": "string", "minLength": 1 } }, { "description": "The target of the external.", "type": "string" }, { "description": "`true`: The dependency name is used as target of the external.", "type": "boolean" }] }, "Externals": { "description": "Specify dependencies that shouldn't be resolved by rspack, but should become dependencies of the resulting bundle. The kind of the dependency depends on `output.libraryTarget`.", "anyOf": [{ "type": "array", "items": { "$ref": "#/definitions/ExternalItem" } }, { "$ref": "#/definitions/ExternalItem" }] }, "ExternalsPresets": { "description": "Enable presets of externals for specific targets.", "type": "object", "additionalProperties": false, "properties": { "node": { "description": "Treat node.js built-in modules like fs, path or vm as external and load them via require() when used.", "type": "boolean" }, "web": { "description": "Treat references to 'http(s)://...' and 'std:...' as external and load them via import when used (Note that this changes execution order as externals are executed before any other code in the chunk).", "type": "boolean" }, "electron": { "description": "Treat common electron built-in modules in main and preload context like 'electron', 'ipc' or 'shell' as external and load them via require() when used.", "type": "boolean" }, "electronMain": { "description": "Treat electron built-in modules in the main context like 'app', 'ipc-main' or 'shell' as external and load them via require() when used.", "type": "boolean" }, "electronPreload": { "description": "Treat electron built-in modules in the preload context like 'web-frame', 'ipc-renderer' or 'shell' as external and load them via require() when used.", "type": "boolean" }, "electronRenderer": { "description": "Treat electron built-in modules in the renderer context like 'web-frame', 'ipc-renderer' or 'shell' as external and load them via require() when used.", "type": "boolean" } } }, "ExternalsType": { "description": "Specifies the default type of externals ('amd*', 'umd*', 'system' and 'jsonp' depend on output.libraryTarget set to the same value).", "enum": ["var", "module", "assign", "this", "window", "self", "global", "commonjs", "commonjs2", "commonjs-module", "commonjs-static", "amd", "amd-require", "umd", "umd2", "jsonp", "system", "promise", "import", "script", "node-commonjs"] }, "Filename": { "description": "Specifies the filename of output files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "SourceMapFilename": { "description": "Specifies the filename of output files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "oneOf": [{ "$ref": "#/definitions/FilenameTemplate" }] }, "FilenameTemplate": { "description": "Specifies the filename template of output files on disk. You must **not** specify an absolute path here, but the path may contain folders separated by '/'! The specified path is joined with the value of the 'output.path' option to determine the location on disk.", "anyOf": [{ "type": "string", "minLength": 1 }, { "instanceof": "Function" }] }, "FilterItemTypes": { "description": "Filtering value, regexp or function.", "anyOf": [{ "instanceof": "RegExp" }, { "type": "string" }, { "instanceof": "Function" }] }, "FilterTypes": { "description": "Filtering values.", "anyOf": [{ "type": "array", "items": { "description": "Rule to filter.", "oneOf": [{ "$ref": "#/definitions/FilterItemTypes" }] } }, { "$ref": "#/definitions/FilterItemTypes" }] }, "GlobalObject": { "description": "An expression which is used to address the global object/scope in runtime code.", "type": "string", "minLength": 1 }, "ImportFunctionName": { "description": "The name of the native import() function (can be exchanged for a polyfill).", "type": "string" }, "InfrastructureLogging": { "description": "Options for infrastructure level logging.", "type": "object", "additionalProperties": false, "properties": { "appendOnly": { "description": "Only appends lines to the output. Avoids updating existing output e. g. for status messages. This option is only used when no custom console is provided.", "type": "boolean" }, "colors": { "description": "Enables/Disables colorful output. This option is only used when no custom console is provided.", "type": "boolean" }, "console": { "description": "Custom console used for logging." }, "debug": { "description": "Enable debug logging for specific loggers.", "anyOf": [{ "description": "Enable/Disable debug logging for all loggers.", "type": "boolean" }, { "$ref": "#/definitions/FilterTypes" }] }, "level": { "description": "Log level.", "enum": ["none", "error", "warn", "info", "log", "verbose"] }, "stream": { "description": "Stream used for logging output. Defaults to process.stderr. This option is only used when no custom console is provided." } } }, "Library": { "description": "Make the output files a library, exporting the exports of the entry point.", "anyOf": [{ "$ref": "#/definitions/LibraryName" }, { "$ref": "#/definitions/LibraryOptions" }] }, "LibraryCustomUmdCommentObject": { "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" } } }, "LibraryCustomUmdObject": { "description": "Description object for all UMD variants of the library name.", "type": "object", "additionalProperties": false, "properties": { "amd": { "description": "Name of the exposed AMD library in the UMD.", "type": "string", "minLength": 1 }, "commonjs": { "description": "Name of the exposed commonjs export in the UMD.", "type": "string", "minLength": 1 }, "root": { "description": "Name of the property exposed globally by a UMD library.", "anyOf": [{ "type": "array", "items": { "description": "Part of the name of the property exposed globally by a UMD library.", "type": "string", "minLength": 1 } }, { "type": "string", "minLength": 1 }] } } }, "LibraryExport": { "description": "Specify which export should be exposed as library.", "anyOf": [{ "type": "array", "items": { "description": "Part of the export that should be exposed as library.", "type": "string", "minLength": 1 } }, { "type": "string", "minLength": 1 }] }, "LibraryName": { "description": "The name of the library (some types allow unnamed libraries too).", "anyOf": [{ "type": "array", "items": { "description": "A part of the library name.", "type": "string", "minLength": 1 }, "minItems": 1 }, { "type": "string", "minLength": 1 }, { "$ref": "#/definitions/LibraryCustomUmdObject" }] }, "LibraryOptions": { "description": "Options for library.", "type": "object", "additionalProperties": false, "properties": { "auxiliaryComment": { "$ref": "#/definitions/AuxiliaryComment" }, "export": { "$ref": "#/definitions/LibraryExport" }, "name": { "$ref": "#/definitions/LibraryName" }, "type": { "$ref": "#/definitions/LibraryType" }, "umdNamedDefine": { "$ref": "#/definitions/UmdNamedDefine" } }, "required": ["type"] }, "LibraryType": { "description": "Type of library (types included by default are 'var', 'module', 'assign', 'assign-properties', 'this', 'window', 'self', 'global', 'commonjs', 'commonjs2', 'commonjs-module', 'commonjs-static', 'amd', 'amd-require', 'umd', 'umd2', 'jsonp', 'system', but others might be added by plugins).", "anyOf": [{ "enum": ["var", "module", "assign", "assign-properties", "this", "window", "self", "global", "commonjs", "commonjs2", "commonjs-module", "commonjs-static", "amd", "amd-require", "umd", "umd2", "jsonp", "system"] }, { "type": "string" }] }, "Mode": { "description": "Enable production optimizations or development hints.", "enum": ["development", "production", "none"] }, "IgnoreWarnings": { "description": "ignore warnings based on pattern", "type": "array", "items": { "anyOf": [{ "instanceof": "RegExp" }, { "instanceof": "Function" }] } }, "ModuleOptions": { "description": "Options affecting the normal modules (`NormalModuleFactory`).", "type": "object", "additionalProperties": false, "properties": { "defaultRules": { "description": "An array of rules applied by default for modules.", "oneOf": [{ "$ref": "#/definitions/RuleSetRules" }] }, "parser": { "$ref": "#/definitions/ParserOptionsByModuleType" }, "rules": { "description": "An array of rules applied for modules.", "oneOf": [{ "$ref": "#/definitions/RuleSetRules" }] } } }, "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" }] }, "NodeOptions": { "description": "Options object for node compatibility features.", "type": "object", "additionalProperties": false, "properties": { "__dirname": { "description": "Include a polyfill for the '__dirname' variable.", "enum": [false, true, "warn-mock", "mock", "eval-only"] }, "__filename": { "description": "Include a polyfill for the '__filename' variable.", "enum": [false, true, "warn-mock", "mock", "eval-only"] }, "global": { "description": "Include a polyfill for the 'global' variable.", "enum": [false, true, "warn"] } } }, "Optimization": { "description": "Enables/Disables integrated optimizations.", "type": "object", "additionalProperties": false, "properties": { "chunkIds": { "description": "Define the algorithm to choose chunk ids (named: readable ids for better debugging, deterministic: numeric hash 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": ["named", "deterministic"] }, "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": [{ "enum": ["..."] }, { "$ref": "#/definitions/RspackPluginInstance" }, { "$ref": "#/definitions/RspackPluginFunction" }] } }, "moduleIds": { "description": "Define the algorithm to choose module ids (natural: numeric ids in order of usage, named: readable ids for better debugging, hashed: (deprecated) short hashes as ids for better long term caching, deterministic: numeric hash ids for better long term caching, size: numeric ids focused on minimal initial download size, false: no algorithm used, as custom one can be provided via plugin).", "enum": ["named", "deterministic"] }, "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": { "$ref": "#/definitions/OptimizationRuntimeChunk" }, "sideEffects": { "description": "Skip over modules which contain no side effects when exports are not used (false: disabled, 'flag': only use manually placed side effects flag, true: also analyse source code for side effects).", "anyOf": [{ "enum": ["flag"] }, { "type": "boolean" }] }, "splitChunks": { "description": "Optimize duplication and caching by splitting chunks by shared modules and cache group.", "anyOf": [{ "enum": [false] }, { "$ref": "#/definitions/OptimizationSplitChunksOptions" }] }, "realContentHash": { "description": "Use real [contenthash] based on final content of the assets.", "type": "boolean" } } }, "OptimizationRuntimeChunk": { "description": "Create an additional chunk which contains only the rspack runtime and chunk hash maps.", "anyOf": [{ "enum": ["single", "multiple"] }, { "type": "boolean" }, { "type": "object", "additionalProperties": false, "properties": { "name": { "description": "The name or name factory for the runtime chunks.", "anyOf": [{ "type": "string" }, { "instanceof": "Function" }] } } }] }, "OptimizationSplitChunksCacheGroup": { "description": "Options object for describing behavior of a cache group selecting modules that should be cached together.", "type": "object", "additionalProperties": false, "properties": { "chunks": { "description": "Select chunks for determining cache group content (defaults to \"initial\", \"initial\" and \"all\" requires adding these chunks to the HTML).", "anyOf": [{ "enum": ["initial", "async", "all"] }, { "instanceof": "Function" }] }, "minChunks": { "description": "Minimum number of times a module has to be duplicated until it's considered for splitting.", "type": "number", "minimum": 1 }, "name": { "description": "Give chunks for this cache group a name (chunks with equal name are merged).", "anyOf": [{ "enum": [false] }, { "type": "string" }, { "instanceof": "Function" }] }, "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" }, "enforce": { "description": "ignore splitChunks.minSize, splitChunks.minChunks, splitChunks.maxAsyncRequests and splitChunks.maxInitialRequests options and always create chunks for this cache group.", "type": "boolean" }, "hidePathInfo": { "type": "boolean" }, "maxSize": { "type": "number" }, "test": { "description": "Assign modules to a cache group by module name.", "anyOf": [{ "instanceof": "RegExp" }] }, "minSize": { "description": "Minimal size for the created chunks.", "oneOf": [{ "$ref": "#/definitions/OptimizationSplitChunksSizes" }] } } }, "OptimizationSplitChunksOptions": { "description": "Options object for splitting chunks into smaller chunks.", "type": "object", "additionalProperties": false, "properties": { "fallbackCacheGroup": { "type": "object", "properties": { "maxSize": { "type": "number" }, "maxInitialSize": { "type": "number" }, "maxAsyncSize": { "type": "number" }, "minSize": { "type": "number" } } }, "hidePathInfo": { "type": "boolean" }, "name": { "description": "The name or name for chunks.", "anyOf": [{ "type": "string" }] }, "cacheGroups": { "description": "Assign modules to a cache group (modules from different cache groups are tried to keep in separate chunks, default categories: 'default', 'defaultVendors').", "type": "object", "additionalProperties": { "description": "Configuration for a cache group.", "anyOf": [{ "$ref": "#/definitions/OptimizationSplitChunksCacheGroup" }] } }, "chunks": { "description": "Select chunks for determining shared modules (defaults to \"async\", \"initial\" and \"all\" requires adding these chunks to the HTML).", "anyOf": [{ "enum": ["initial", "async", "all"] }] }, "enforceSizeThreshold": { "description": "Size threshold at which splitting is enforced and other restrictions (minRemainingSize, maxAsyncRequests, maxInitialRequests) are ignored.", "oneOf": [{ "$ref": "#/definitions/OptimizationSplitChunksSizes" }] }, "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 }, "minChunks": { "description": "Minimum number of times a module has to be duplicated until it's considered for splitting.", "type": "number", "minimum": 1 }, "minRemainingSize": { "description": "Minimal size for the chunks the stay after moving the modules to a new chunk.", "oneOf": [{ "$ref": "#/definitions/OptimizationSplitChunksSizes" }] }, "minSize": { "description": "Minimal size for the created chunks.", "oneOf": [{ "$ref": "#/definitions/OptimizationSplitChunksSizes" }] }, "maxSize": { "type": "number" }, "maxInitialSize": { "type": "number" }, "maxAsyncSize": { "type": "number" }, "reuseExistingChunk": { "description": "If the current chunk contains modules already split out from the main bundle, it will be reused instead of a new one being generated. This can affect the resulting file name of the chunk.", "type": "boolean" } } }, "OptimizationSplitChunksSizes": { "description": "Size description for limits.", "anyOf": [{ "description": "Size of the javascript part of the chunk.", "type": "number", "minimum": 0 }] }, "Iife": { "description": "Wrap javascript code into IIFE's to avoid leaking into global scope.", "type": "boolean" }, "Clean": { "description": "Clears the output build directory", "type": "boolean" }, "Output": { "description": "Options affecting the output of the compilation. `output` options tell rspack how to write the compiled files to disk.", "type": "object", "additionalProperties": false, "properties": { "iife": { "$ref": "#/definitions/Iife" }, "clean": { "$ref": "#/definitions/Clean" }, "assetModuleFilename": { "$ref": "#/definitions/AssetModuleFilename" }, "auxiliaryComment": { "oneOf": [{ "$ref": "#/definitions/AuxiliaryComment" }] }, "chunkFormat": { "$ref": "#/definitions/ChunkFormat" }, "chunkLoading": { "$ref": "#/definitions/ChunkLoading" }, "enabledChunkLoadingTypes": { "$ref": "#/definitions/EnabledChunkLoadingTypes" }, "chunkFilename": { "$ref": "#/definitions/ChunkFilename" }, "crossOriginLoading": { "$ref": "#/definitions/CrossOriginLoading" }, "cssChunkFilename": { "$ref": "#/definitions/CssChunkFilename" }, "cssFilename": { "$ref": "#/definitions/CssFilename" }, "hotUpdateChunkFilename": { "$ref": "#/definitions/HotUpdateChunkFilename" }, "hotUpdateMainFilename": { "$ref": "#/definitions/HotUpdateMainFilename" }, "enabledWasmLoadingTypes": { "$ref": "#/definitions/EnabledWasmLoadingTypes" }, "wasmLoading": { "$ref": "#/definitions/WasmLoading" }, "webassemblyModuleFilename": { "$ref": "#/definitions/WebassemblyModuleFilename" }, "enabledLibraryTypes": { "$ref": "#/definitions/EnabledLibraryTypes" }, "filename": { "$ref": "#/definitions/Filename" }, "globalObject": { "$ref": "#/definitions/GlobalObject" }, "importFunctionName": { "$ref": "#/definitions/ImportFunctionName" }, "library": { "$ref": "#/definitions/Library" }, "libraryExport": { "oneOf": [{ "$ref": "#/definitions/LibraryExport" }] }, "libraryTarget": { "oneOf": [{ "$ref": "#/definitions/LibraryType" }] }, "module": { "$ref": "#/definitions/OutputModule" }, "path": { "$ref": "#/definitions/Path" }, "publicPath": { "$ref": "#/definitions/PublicPath" }, "strictModuleErrorHandling": { "$ref": "#/definitions/StrictModuleErrorHandling" }, "umdNamedDefine": { "oneOf": [{ "$ref": "#/definitions/UmdNamedDefine" }] }, "uniqueName": { "$ref": "#/definitions/UniqueName" }, "chunkLoadingGlobal": { "$ref": "#/definitions/ChunkLoadingGlobal" }, "trustedTypes": { "description": "Use a Trusted Types policy to create urls for chunks. 'output.uniqueName' is used a default policy name. Passing a string sets a custom policy name.", "anyOf": [{ "enum": [true] }, { "description": "The name of the Trusted Types policy created by webpack to serve bundle chunks.", "type": "string", "minLength": 1 }, { "$ref": "#/definitions/TrustedTypes" }] }, "sourceMapFilename": { "$ref": "#/definitions/SourceMapFilename" }, "hashDigest": { "$ref": "#/definitions/HashDigest" }, "hashDigestLength": { "$ref": "#/definitions/HashDigestLength" }, "hashFunction": { "$ref": "#/definitions/HashFunction" }, "hashSalt": { "$ref": "#/definitions/HashSalt" } } }, "OutputModule": { "description": "Output javascript files as module source type.", "type": "boolean" }, "ParserOptionsByModuleType": { "description": "Specify options for each parser.", "type": "object", "additionalProperties": { "description": "Options for parsing.", "type": "object", "additionalProperties": true }, "properties": { "asset": { "$ref": "#/definitions/AssetParserOptions" } } }, "Path": { "description": "The output directory as **absolute path** (required).", "type": "string" }, "Plugins": { "description": "Add additional plugins to the compiler.", "type": "array", "items": { "description": "Plugin of type object or instanceof Function.", "anyOf": [{ "$ref": "#/definitions/RspackPluginInstance" }, { "$ref": "#/definitions/RspackPluginFunction" }] } }, "PublicPath": { "description": "The 'publicPath' specifies the public URL address of the output files when referenced in a browser.", "anyOf": [{ "enum": ["auto"] }, { "$ref": "#/definitions/RawPublicPath" }] }, "RawPublicPath": { "description": "The 'publicPath' specifies the public URL address of the output files when referenced in a browser.", "anyOf": [{ "type": "string" }] }, "Resolve": { "description": "Options for the resolver.", "oneOf": [{ "$ref": "#/definitions/ResolveOptions" }] }, "ResolveAlias": { "description": "Redirect module requests.", "anyOf": [{ "type": "object", "additionalProperties": { "description": "New request.", "anyOf": [{ "description": "Multiple alternative requests.", "type": "array", "items": { "description": "One choice of request.", "type": "string", "minLength": 1 } }, { "description": "Ignore request (replace with empty module).", "enum": [false] }, { "description": "New request.", "type": "string", "minLength": 1 }] } }] }, "ResolveOptions": { "description": "Options object for resolving requests.", "type": "object", "additionalProperties": false, "properties": { "alias": { "$ref": "#/definitions/ResolveAlias" }, "browserField": { "description": "Fields in the description file (usually package.json) which are used to redirect requests inside the module.", "type": "boolean" }, "conditionNames": { "description": "Condition names for exports field entry point.", "type": "array", "items": { "description": "Condition names for exports field entry point.", "type": "string" } }, "extensionAlias": { "description": "An object which maps extension to extension aliases.", "type": "object", "additionalProperties": { "description": "Extension alias.", "anyOf": [{ "description": "Multiple extensions.", "type": "array", "items": { "description": "Aliased extension.", "type": "string", "minLength": 1 } }, { "description": "Aliased extension.", "type": "string", "minLength": 1 }] } }, "extensions": { "description": "Extensions added to the request when trying to find the file.", "type": "array", "items": { "description": "Extension added to the request when trying to find the file.", "type": "string" } }, "fallback": { "description": "Redirect module requests when normal resolving fails.", "oneOf": [{ "$ref": "#/definitions/ResolveAlias" }] }, "fullySpecified": { "description": "Treats the request specified by the user as fully specified, meaning no extensions are added and the mainFiles in directories are not resolved (This doesn't affect requests from mainFields, aliasFields or aliases).", "type": "boolean" }, "mainFields": { "description": "Field names from the description file (package.json) which are used to find the default entry point.", "type": "array", "items": { "description": "Field name from the description file (package.json) which are used to find the default entry point.", "anyOf": [{ "type": "array", "items": { "description": "Part of the field path from the description file (package.json) which are used to find the default entry point.", "type": "string", "minLength": 1 } }, { "type": "string", "minLength": 1 }] } }, "mainFiles": { "description": "Filenames used to find the default entry point if there is no description file or main field.", "type": "array", "items": { "description": "Filename used to find the default entry point if there is no description file or main field.", "type": "string", "minLength": 1 } }, "modules": { "description": "Folder names or directory paths where to find modules.", "type": "array", "items": { "description": "Folder name or directory path where to find modules.", "type": "string", "minLength": 1 } }, "preferRelative": { "description": "Prefer to resolve module requests as relative request and fallback to resolving as module.", "type": "boolean" }, "byDependency": { "description": "Extra resolve options per dependency category. Typical categories are \"commonjs\", \"amd\", \"esm\".", "type": "object", "additionalProperties": { "description": "Options object for resolving requests.", "oneOf": [{ "$ref": "#/definitions/ResolveOptions" }] } }, "tsConfigPath": { "description": "Path to tsconfig.json", "type": "string" }, "exportsFields": { "description": "Fields in the description file (usually package.json) which are used to redirect requests inside the module.", "type": "array", "items": { "description": "Field name from the description file (package.json) which are used to find the default entry point.", "type": "string" } } } }, "RuleSetCondition": { "description": "A condition matcher.", "anyOf": [{ "instanceof": "RegExp" }, { "type": "string" }, { "instanceof": "Function" }, { "$ref": "#/definitions/RuleSetLogicalConditions" }, { "$ref": "#/definitions/RuleSetConditions" }] }, "RuleSetConditionOrConditions": { "description": "One or multiple rule conditions.", "anyOf": [{ "$ref": "#/definitions/RuleSetCondition" }, { "$ref": "#/definitions/RuleSetConditions" }] }, "RuleSetConditions": { "description": "A list of rule conditions.", "type": "array", "items": { "description": "A rule condition.", "oneOf": [{ "$ref": "#/definitions/RuleSetCondition" }] } }, "RuleSetLoader": { "description": "A loader request.", "type": "string", "minLength": 1 }, "RuleSetLoaderOptions": { "description": "Options passed to a loader.", "anyOf": [{ "type": "string" }, { "type": "object" }] }, "RuleSetLogicalConditions": { "description": "Logic operators used in a condition matcher.", "type": "object", "additionalProperties": false, "properties": { "and": { "description": "Logical AND.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditions" }] }, "not": { "description": "Logical NOT.", "oneOf": [{ "$ref": "#/definitions/RuleSetCondition" }] }, "or": { "description": "Logical OR.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditions" }] } } }, "RuleSetRule": { "description": "A rule description with conditions and effects for modules.", "type": "object", "additionalProperties": false, "properties": { "enforce": { "description": "Enforce this rule as pre or post step.", "enum": ["pre", "post"] }, "exclude": { "description": "Shortcut for resource.exclude.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "generator": { "description": "The options for the module generator.", "type": "object" }, "include": { "description": "Shortcut for resource.include.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "issuer": { "description": "Match the issuer of the module (The module pointing to this module).", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "dependency": { "description": "Match dependency type.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "descriptionData": { "description": "Match values of properties in the description file (usually package.json).", "type": "object", "additionalProperties": { "$ref": "#/definitions/RuleSetConditionOrConditions" } }, "oneOf": { "description": "Only execute the first matching rule in this array.", "type": "array", "items": { "description": "A rule.", "oneOf": [{ "$ref": "#/definitions/RuleSetRule" }] } }, "parser": { "description": "Options for parsing.", "type": "object", "additionalProperties": true }, "resolve": { "description": "Options for the resolver.", "type": "object", "oneOf": [{ "$ref": "#/definitions/ResolveOptions" }] }, "resource": { "description": "Match the resource path of the module.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "resourceFragment": { "description": "Match the resource fragment of the module.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "resourceQuery": { "description": "Match the resource query of the module.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "mimetype": { "description": "Match module mimetype when load from Data URI.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "loader": { "description": "Shortcut for use.loader.", "oneOf": [{ "$ref": "#/definitions/RuleSetLoader" }] }, "options": { "description": "Shortcut for use.options.", "oneOf": [{ "$ref": "#/definitions/RuleSetLoaderOptions" }] }, "scheme": { "description": "Match module scheme.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "rules": { "description": "Match and execute these rules when this rule is matched.", "type": "array", "items": { "description": "A rule.", "oneOf": [{ "$ref": "#/definitions/RuleSetRule" }] } }, "sideEffects": { "description": "Flags a module as with or without side effects.", "type": "boolean" }, "test": { "description": "Shortcut for resource.test.", "oneOf": [{ "$ref": "#/definitions/RuleSetConditionOrConditions" }] }, "type": { "description": "Module type to use for the module.", "type": "string" }, "use": { "description": "Modifiers applied to the module when rule is matched.", "oneOf": [{ "$ref": "#/definitions/RuleSetUse" }] } } }, "RuleSetRules": { "description": "A list of rules.", "type": "array", "items": { "description": "A rule.", "anyOf": [{ "enum": ["..."] }, { "$ref": "#/definitions/RuleSetRule" }] } }, "RuleSetUse": { "description": "A list of descriptions of loaders applied.", "anyOf": [{ "type": "array", "items": { "description": "An use item.", "oneOf": [{ "$ref": "#/definitions/RuleSetUseItem" }] } }, { "$ref": "#/definitions/RuleSetUseItem" }] }, "RuleSetUseItem": { "description": "A description of an applied loader.", "anyOf": [{ "type": "object", "additionalProperties": false, "properties": { "loader": { "description": "Loader name.", "oneOf": [{ "$ref": "#/definitions/RuleSetLoader" }] }, "options": { "description": "Loader options.", "oneOf": [{ "$ref": "#/definitions/RuleSetLoaderOptions" }] } } }, { "$ref": "#/definitions/RuleSetLoader" }] }, "SnapshotOptions": { "description": "Options affecting how file system snapshots are created and validated.", "type": "object", "additionalProperties": false, "properties": { "module": { "description": "Options for snapshotting dependencies of modules to determine if they need to be built again.", "type": "object", "additionalProperties": false, "properties": { "hash": { "description": "Use hashes of the content of the files/directories to determine invalidation.", "type": "boolean" }, "timestamp": { "description": "Use timestamps of the files/directories to determine invalidation.", "type": "boolean" } } }, "resolve": { "description": "Options for snapshotting dependencies of request resolving to determine if requests need to be re-resolved.", "type": "object", "additionalProperties": false, "properties": { "hash": { "description": "Use hashes of the content of the files/directories to determine invalidation.", "type": "boolean" }, "timestamp": { "description": "Use timestamps of the files/directories to determine invalidation.", "type": "boolean" } } } } }, "StatsOptions": { "description": "Stats options object.", "type": "object", "additionalProperties": true, "properties": { "all": { "description": "Fallback value for stats options when an option is not defined (has precedence over local rspack defaults).", "type": "boolean" }, "assets": { "description": "Add assets information.", "type": "boolean" }, "chunkGroups": { "description": "Display all chunk groups with the corresponding bundles.", "type": "boolean" }, "chunks": { "description": "Add chunk information.", "type": "boolean" }, "colors": { "description": "Enables/Disables colorful output.", "type": "boolean" }, "entrypoints": { "description": "Display the entry points with the corresponding bundles.", "anyOf": [{ "enum": ["auto"] }, { "type": "boolean" }] }, "errors": { "description": "Add errors.", "type": "boolean" }, "errorsCount": { "description": "Add errors count.", "type": "boolean" }, "hash": { "description": "Add the hash of the compilation.", "type": "boolean" }, "modules": { "description": "Add built modules information.", "type": "boolean" }, "preset": { "description": "Preset for the default values.", "anyOf": [{ "type": "boolean" }, { "type": "string" }] }, "publicPath": { "description": "Add public path information.", "type": "boolean" }, "reasons": { "description": "Add information about the reasons why modules are included.", "type": "boolean" }, "warnings": { "description": "Add warnings.", "type": "boolean" }, "warningsCount": { "description": "Add warnings count.", "type": "boolean" }, "outputPath": { "description": "Add output path information.", "type": "boolean" }, "chunkModules": { "description": "Add built modules information to chunk information.", "type": "boolean" }, "chunkRelations": { "description": "Add information about parent, children and sibling chunks to chunk information.", "type": "boolean" }, "timings": { "description": "Add timing information.", "type": "boolean" }, "builtAt": { "description": "Add built at time information.", "type": "boolean" }, "nestedModules": { "description": "Add information about modules nested in other modules (like with module concatenation).", "type": "boolean" } } }, "StatsValue": { "description": "Stats options object or preset name.", "anyOf": [{ "enum": ["none", "errors-only", "errors-warnings", "normal", "verbose"] }, { "type": "boolean" }, { "$ref": "#/definitions/StatsOptions" }] }, "StrictModuleErrorHandling": { "description": "Handles error in module loading correctly at a performance cost. This will handle module error compatible with the EcmaScript Modules spec.", "type": "boolean" }, "Target": { "description": "Environment to build for. An array of environments to build for all of them when possible.", "anyOf": [{ "type": "array", "items": { "description": "Environment to build for.", "type": "string", "minLength": 1 }, "minItems": 1 }, { "enum": [false] }, { "type": "string", "minLength": 1 }] }, "TrustedTypes": { "description": "Use a Trusted Types policy to create urls for chunks.", "type": "object", "additionalProperties": false, "properties": { "policyName": { "description": "The name of the Trusted Types policy created by webpack to serve bundle chunks.", "type": "string", "minLength": 1 } } }, "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" }, "UniqueName": { "description": "A unique name of the rspack build to avoid multiple rspack runtimes to conflict when using globals.", "type": "string", "minLength": 1 }, "ChunkLoadingGlobal": { "description": "The global variable used by rspack for loading of chunks.", "type": "string", "minLength": 1 }, "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" }, "followSymlinks": { "description": "Resolve symlinks and watch symlink and real file. This is usually not needed as rspack already resolves symlinks ('resolve.symlinks').", "type": "boolean" }, "ignored": { "description": "Ignore some files from watching (glob pattern or regexp).", "anyOf": [{ "type": "array", "items": { "description": "A glob pattern for files that should be ignored from watching.", "type": "string", "minLength": 1 } }, { "instanceof": "RegExp" }, { "description": "A single glob pattern for files that should be ignored from watching.", "type": "string", "minLength": 1 }] }, "poll": { "description": "Enable polling mode for watching.", "anyOf": [{ "description": "`number`: use polling with specified interval.", "type": "number" }, { "description": "`true`: use polling.", "type": "boolean" }] }, "stdin": { "description": "Stop watching when stdin stream has ended.", "type": "boolean" } } }, "RspackPluginFunction": { "description": "Function acting as plugin.", "instanceof": "Function" }, "RspackPluginInstance": { "description": "Plugin instance.", "type": "object", "additionalProperties": true, "properties": { "apply": { "description": "The run point of the plugin, required method.", "instanceof": "Function" } }, "required": ["apply"] } }, "title": "RspackOptions", "description": "Options object as provided by the user.", "type": "object", "additionalProperties": false, "properties": { "cache": { "$ref": "#/definitions/CacheOptions" }, "context": { "$ref": "#/definitions/Context" }, "dependencies": { "$ref": "#/definitions/Dependencies" }, "devServer": { "$ref": "#/definitions/DevServer" }, "devtool": { "$ref": "#/definitions/DevTool" }, "entry": { "$ref": "#/definitions/Entry" }, "experiments": { "$ref": "#/definitions/Experiments" }, "externals": { "$ref": "#/definitions/Externals" }, "externalsType": { "$ref": "#/definitions/ExternalsType" }, "externalsPresets": { "$ref": "#/definitions/ExternalsPresets" }, "infrastructureLogging": { "$ref": "#/definitions/InfrastructureLogging" }, "mode": { "$ref": "#/definitions/Mode" }, "module": { "$ref": "#/definitions/ModuleOptions" }, "name": { "$ref": "#/definitions/Name" }, "node": { "$ref": "#/definitions/Node" }, "optimization": { "$ref": "#/definitions/Optimization" }, "output": { "$ref": "#/definitions/Output" }, "plugins": { "$ref": "#/definitions/Plugins" }, "resolve": { "$ref": "#/definitions/Resolve" }, "snapshot": { "$ref": "#/definitions/SnapshotOptions" }, "stats": { "$ref": "#/definitions/StatsValue" }, "target": { "$ref": "#/definitions/Target" }, "watch": { "$ref": "#/definitions/Watch" }, "watchOptions": { "$ref": "#/definitions/WatchOptions" }, "builtins": { "description": "Builtins features in rspack", "type": "object", "additionalProperties": true }, "ignoreWarnings": { "$ref": "#/definitions/IgnoreWarnings" } } };
6
6
  const schema12 = { "description": "Cache generated modules and chunks to improve performance for multiple incremental builds.", "type": "boolean" };
7
7
  const schema13 = { "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" };
8
8
  const schema14 = { "description": "References to other configurations to depend on.", "type": "array", "items": { "description": "References to another configuration to depend on.", "type": "string" } };
9
9
  const schema15 = { "description": "Options for the rspack-dev-server.", "type": "object" };
10
10
  const schema16 = { "description": "A developer tool to enhance debugging (false | eval | [inline-|hidden-|eval-][nosources-][cheap-[module-]]source-map).", "anyOf": [{ "enum": [false] }, { "type": "string", "pattern": "^(inline-|hidden-|eval-)?(nosources-)?(cheap-(module-)?)?source-map$" }] };
11
- const schema28 = { "description": "Enables/Disables experiments (experimental features with relax SemVer compatibility).", "type": "object", "additionalProperties": false, "properties": { "asyncWebAssembly": { "description": "Support WebAssembly as asynchronous EcmaScript Module.", "type": "boolean" }, "incrementalRebuild": { "description": "Rebuild incrementally", "type": "boolean" }, "lazyCompilation": { "description": "Compile entrypoints and import()s only when they are accessed.", "anyOf": [{ "type": "boolean" }] }, "outputModule": { "description": "Allow output javascript files as module source type.", "type": "boolean" }, "newSplitChunks": { "description": "Enable new SplitChunksPlugin", "type": "boolean" }, "css": { "description": "Enable native css support.", "type": "boolean" } } };
11
+ const schema28 = { "description": "Enables/Disables experiments (experimental features with relax SemVer compatibility).", "type": "object", "additionalProperties": false, "properties": { "asyncWebAssembly": { "description": "Support WebAssembly as asynchronous EcmaScript Module.", "type": "boolean" }, "incrementalRebuild": { "description": "Rebuild incrementally", "anyOf": [{ "type": "boolean" }, { "type": "object", "properties": { "make": { "description": "Make stage enable incremental rebuild", "type": "boolean" }, "emitAsset": { "description": "Emit asset enable incremental rebuild", "type": "boolean" } } }] }, "lazyCompilation": { "description": "Compile entrypoints and import()s only when they are accessed.", "anyOf": [{ "type": "boolean" }] }, "outputModule": { "description": "Allow output javascript files as module source type.", "type": "boolean" }, "newSplitChunks": { "description": "Enable new SplitChunksPlugin", "type": "boolean" }, "css": { "description": "Enable native css support.", "type": "boolean" } } };
12
12
  const schema32 = { "description": "Specifies the default type of externals ('amd*', 'umd*', 'system' and 'jsonp' depend on output.libraryTarget set to the same value).", "enum": ["var", "module", "assign", "this", "window", "self", "global", "commonjs", "commonjs2", "commonjs-module", "commonjs-static", "amd", "amd-require", "umd", "umd2", "jsonp", "system", "promise", "import", "script", "node-commonjs"] };
13
13
  const schema33 = { "description": "Enable presets of externals for specific targets.", "type": "object", "additionalProperties": false, "properties": { "node": { "description": "Treat node.js built-in modules like fs, path or vm as external and load them via require() when used.", "type": "boolean" }, "web": { "description": "Treat references to 'http(s)://...' and 'std:...' as external and load them via import when used (Note that this changes execution order as externals are executed before any other code in the chunk).", "type": "boolean" }, "electron": { "description": "Treat common electron built-in modules in main and preload context like 'electron', 'ipc' or 'shell' as external and load them via require() when used.", "type": "boolean" }, "electronMain": { "description": "Treat electron built-in modules in the main context like 'app', 'ipc-main' or 'shell' as external and load them via require() when used.", "type": "boolean" }, "electronPreload": { "description": "Treat electron built-in modules in the preload context like 'web-frame', 'ipc-renderer' or 'shell' as external and load them via require() when used.", "type": "boolean" }, "electronRenderer": { "description": "Treat electron built-in modules in the renderer context like 'web-frame', 'ipc-renderer' or 'shell' as external and load them via require() when used.", "type": "boolean" } } };
14
14
  const schema38 = { "description": "Enable production optimizations or development hints.", "enum": ["development", "production", "none"] };
@@ -9455,11 +9455,101 @@ function validate10(data, { instancePath = "", parentData, parentDataProperty, r
9455
9455
  }
9456
9456
  if (valid9) {
9457
9457
  if (data7.incrementalRebuild !== undefined) {
9458
+ let data9 = data7.incrementalRebuild;
9458
9459
  const _errs29 = errors;
9459
- if (typeof data7.incrementalRebuild !== "boolean") {
9460
- validate10.errors = [{ instancePath: instancePath + "/experiments/incrementalRebuild", schemaPath: "#/definitions/Experiments/properties/incrementalRebuild/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9460
+ const _errs30 = errors;
9461
+ let valid10 = false;
9462
+ const _errs31 = errors;
9463
+ if (typeof data9 !== "boolean") {
9464
+ const err4 = { instancePath: instancePath + "/experiments/incrementalRebuild", schemaPath: "#/definitions/Experiments/properties/incrementalRebuild/anyOf/0/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
9465
+ if (vErrors === null) {
9466
+ vErrors = [err4];
9467
+ }
9468
+ else {
9469
+ vErrors.push(err4);
9470
+ }
9471
+ errors++;
9472
+ }
9473
+ var _valid1 = _errs31 === errors;
9474
+ valid10 = valid10 || _valid1;
9475
+ if (!valid10) {
9476
+ const _errs33 = errors;
9477
+ if (errors === _errs33) {
9478
+ if (data9 && typeof data9 == "object" && !Array.isArray(data9)) {
9479
+ if (data9.make !== undefined) {
9480
+ const _errs35 = errors;
9481
+ if (typeof data9.make !== "boolean") {
9482
+ const err5 = { instancePath: instancePath + "/experiments/incrementalRebuild/make", schemaPath: "#/definitions/Experiments/properties/incrementalRebuild/anyOf/1/properties/make/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
9483
+ if (vErrors === null) {
9484
+ vErrors = [err5];
9485
+ }
9486
+ else {
9487
+ vErrors.push(err5);
9488
+ }
9489
+ errors++;
9490
+ }
9491
+ var valid11 = _errs35 === errors;
9492
+ }
9493
+ else {
9494
+ var valid11 = true;
9495
+ }
9496
+ if (valid11) {
9497
+ if (data9.emitAsset !== undefined) {
9498
+ const _errs37 = errors;
9499
+ if (typeof data9.emitAsset !== "boolean") {
9500
+ const err6 = { instancePath: instancePath + "/experiments/incrementalRebuild/emitAsset", schemaPath: "#/definitions/Experiments/properties/incrementalRebuild/anyOf/1/properties/emitAsset/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
9501
+ if (vErrors === null) {
9502
+ vErrors = [err6];
9503
+ }
9504
+ else {
9505
+ vErrors.push(err6);
9506
+ }
9507
+ errors++;
9508
+ }
9509
+ var valid11 = _errs37 === errors;
9510
+ }
9511
+ else {
9512
+ var valid11 = true;
9513
+ }
9514
+ }
9515
+ }
9516
+ else {
9517
+ const err7 = { instancePath: instancePath + "/experiments/incrementalRebuild", schemaPath: "#/definitions/Experiments/properties/incrementalRebuild/anyOf/1/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9518
+ if (vErrors === null) {
9519
+ vErrors = [err7];
9520
+ }
9521
+ else {
9522
+ vErrors.push(err7);
9523
+ }
9524
+ errors++;
9525
+ }
9526
+ }
9527
+ var _valid1 = _errs33 === errors;
9528
+ valid10 = valid10 || _valid1;
9529
+ }
9530
+ if (!valid10) {
9531
+ const err8 = { instancePath: instancePath + "/experiments/incrementalRebuild", schemaPath: "#/definitions/Experiments/properties/incrementalRebuild/anyOf", keyword: "anyOf", params: {}, message: "must match a schema in anyOf" };
9532
+ if (vErrors === null) {
9533
+ vErrors = [err8];
9534
+ }
9535
+ else {
9536
+ vErrors.push(err8);
9537
+ }
9538
+ errors++;
9539
+ validate10.errors = vErrors;
9461
9540
  return false;
9462
9541
  }
9542
+ else {
9543
+ errors = _errs30;
9544
+ if (vErrors !== null) {
9545
+ if (_errs30) {
9546
+ vErrors.length = _errs30;
9547
+ }
9548
+ else {
9549
+ vErrors = null;
9550
+ }
9551
+ }
9552
+ }
9463
9553
  var valid9 = _errs29 === errors;
9464
9554
  }
9465
9555
  else {
@@ -9467,82 +9557,82 @@ function validate10(data, { instancePath = "", parentData, parentDataProperty, r
9467
9557
  }
9468
9558
  if (valid9) {
9469
9559
  if (data7.lazyCompilation !== undefined) {
9470
- const _errs31 = errors;
9471
- const _errs32 = errors;
9472
- let valid10 = false;
9473
- const _errs33 = errors;
9560
+ const _errs39 = errors;
9561
+ const _errs40 = errors;
9562
+ let valid12 = false;
9563
+ const _errs41 = errors;
9474
9564
  if (typeof data7.lazyCompilation !== "boolean") {
9475
- const err4 = { instancePath: instancePath + "/experiments/lazyCompilation", schemaPath: "#/definitions/Experiments/properties/lazyCompilation/anyOf/0/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
9565
+ const err9 = { instancePath: instancePath + "/experiments/lazyCompilation", schemaPath: "#/definitions/Experiments/properties/lazyCompilation/anyOf/0/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
9476
9566
  if (vErrors === null) {
9477
- vErrors = [err4];
9567
+ vErrors = [err9];
9478
9568
  }
9479
9569
  else {
9480
- vErrors.push(err4);
9570
+ vErrors.push(err9);
9481
9571
  }
9482
9572
  errors++;
9483
9573
  }
9484
- var _valid1 = _errs33 === errors;
9485
- valid10 = valid10 || _valid1;
9486
- if (!valid10) {
9487
- const err5 = { instancePath: instancePath + "/experiments/lazyCompilation", schemaPath: "#/definitions/Experiments/properties/lazyCompilation/anyOf", keyword: "anyOf", params: {}, message: "must match a schema in anyOf" };
9574
+ var _valid2 = _errs41 === errors;
9575
+ valid12 = valid12 || _valid2;
9576
+ if (!valid12) {
9577
+ const err10 = { instancePath: instancePath + "/experiments/lazyCompilation", schemaPath: "#/definitions/Experiments/properties/lazyCompilation/anyOf", keyword: "anyOf", params: {}, message: "must match a schema in anyOf" };
9488
9578
  if (vErrors === null) {
9489
- vErrors = [err5];
9579
+ vErrors = [err10];
9490
9580
  }
9491
9581
  else {
9492
- vErrors.push(err5);
9582
+ vErrors.push(err10);
9493
9583
  }
9494
9584
  errors++;
9495
9585
  validate10.errors = vErrors;
9496
9586
  return false;
9497
9587
  }
9498
9588
  else {
9499
- errors = _errs32;
9589
+ errors = _errs40;
9500
9590
  if (vErrors !== null) {
9501
- if (_errs32) {
9502
- vErrors.length = _errs32;
9591
+ if (_errs40) {
9592
+ vErrors.length = _errs40;
9503
9593
  }
9504
9594
  else {
9505
9595
  vErrors = null;
9506
9596
  }
9507
9597
  }
9508
9598
  }
9509
- var valid9 = _errs31 === errors;
9599
+ var valid9 = _errs39 === errors;
9510
9600
  }
9511
9601
  else {
9512
9602
  var valid9 = true;
9513
9603
  }
9514
9604
  if (valid9) {
9515
9605
  if (data7.outputModule !== undefined) {
9516
- const _errs35 = errors;
9606
+ const _errs43 = errors;
9517
9607
  if (typeof data7.outputModule !== "boolean") {
9518
9608
  validate10.errors = [{ instancePath: instancePath + "/experiments/outputModule", schemaPath: "#/definitions/Experiments/properties/outputModule/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9519
9609
  return false;
9520
9610
  }
9521
- var valid9 = _errs35 === errors;
9611
+ var valid9 = _errs43 === errors;
9522
9612
  }
9523
9613
  else {
9524
9614
  var valid9 = true;
9525
9615
  }
9526
9616
  if (valid9) {
9527
9617
  if (data7.newSplitChunks !== undefined) {
9528
- const _errs37 = errors;
9618
+ const _errs45 = errors;
9529
9619
  if (typeof data7.newSplitChunks !== "boolean") {
9530
9620
  validate10.errors = [{ instancePath: instancePath + "/experiments/newSplitChunks", schemaPath: "#/definitions/Experiments/properties/newSplitChunks/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9531
9621
  return false;
9532
9622
  }
9533
- var valid9 = _errs37 === errors;
9623
+ var valid9 = _errs45 === errors;
9534
9624
  }
9535
9625
  else {
9536
9626
  var valid9 = true;
9537
9627
  }
9538
9628
  if (valid9) {
9539
9629
  if (data7.css !== undefined) {
9540
- const _errs39 = errors;
9630
+ const _errs47 = errors;
9541
9631
  if (typeof data7.css !== "boolean") {
9542
9632
  validate10.errors = [{ instancePath: instancePath + "/experiments/css", schemaPath: "#/definitions/Experiments/properties/css/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9543
9633
  return false;
9544
9634
  }
9545
- var valid9 = _errs39 === errors;
9635
+ var valid9 = _errs47 === errors;
9546
9636
  }
9547
9637
  else {
9548
9638
  var valid9 = true;
@@ -9566,115 +9656,115 @@ function validate10(data, { instancePath = "", parentData, parentDataProperty, r
9566
9656
  }
9567
9657
  if (valid0) {
9568
9658
  if (data.externals !== undefined) {
9569
- const _errs41 = errors;
9659
+ const _errs49 = errors;
9570
9660
  if (!(validate23(data.externals, { instancePath: instancePath + "/externals", parentData: data, parentDataProperty: "externals", rootData }))) {
9571
9661
  vErrors = vErrors === null ? validate23.errors : vErrors.concat(validate23.errors);
9572
9662
  errors = vErrors.length;
9573
9663
  }
9574
- var valid0 = _errs41 === errors;
9664
+ var valid0 = _errs49 === errors;
9575
9665
  }
9576
9666
  else {
9577
9667
  var valid0 = true;
9578
9668
  }
9579
9669
  if (valid0) {
9580
9670
  if (data.externalsType !== undefined) {
9581
- let data15 = data.externalsType;
9582
- const _errs42 = errors;
9583
- if (data15 !== "var" && data15 !== "module" && data15 !== "assign" && data15 !== "this" && data15 !== "window" && data15 !== "self" && data15 !== "global" && data15 !== "commonjs" && data15 !== "commonjs2" && data15 !== "commonjs-module" && data15 !== "commonjs-static" && data15 !== "amd" && data15 !== "amd-require" && data15 !== "umd" && data15 !== "umd2" && data15 !== "jsonp" && data15 !== "system" && data15 !== "promise" && data15 !== "import" && data15 !== "script" && data15 !== "node-commonjs") {
9671
+ let data17 = data.externalsType;
9672
+ const _errs50 = errors;
9673
+ if (data17 !== "var" && data17 !== "module" && data17 !== "assign" && data17 !== "this" && data17 !== "window" && data17 !== "self" && data17 !== "global" && data17 !== "commonjs" && data17 !== "commonjs2" && data17 !== "commonjs-module" && data17 !== "commonjs-static" && data17 !== "amd" && data17 !== "amd-require" && data17 !== "umd" && data17 !== "umd2" && data17 !== "jsonp" && data17 !== "system" && data17 !== "promise" && data17 !== "import" && data17 !== "script" && data17 !== "node-commonjs") {
9584
9674
  validate10.errors = [{ instancePath: instancePath + "/externalsType", schemaPath: "#/definitions/ExternalsType/enum", keyword: "enum", params: {}, message: "must pass \"enum\" keyword validation" }];
9585
9675
  return false;
9586
9676
  }
9587
- var valid0 = _errs42 === errors;
9677
+ var valid0 = _errs50 === errors;
9588
9678
  }
9589
9679
  else {
9590
9680
  var valid0 = true;
9591
9681
  }
9592
9682
  if (valid0) {
9593
9683
  if (data.externalsPresets !== undefined) {
9594
- let data16 = data.externalsPresets;
9595
- const _errs44 = errors;
9596
- const _errs45 = errors;
9597
- if (errors === _errs45) {
9598
- if (data16 && typeof data16 == "object" && !Array.isArray(data16)) {
9599
- const _errs47 = errors;
9600
- for (const key2 in data16) {
9684
+ let data18 = data.externalsPresets;
9685
+ const _errs52 = errors;
9686
+ const _errs53 = errors;
9687
+ if (errors === _errs53) {
9688
+ if (data18 && typeof data18 == "object" && !Array.isArray(data18)) {
9689
+ const _errs55 = errors;
9690
+ for (const key2 in data18) {
9601
9691
  if (!((((((key2 === "node") || (key2 === "web")) || (key2 === "electron")) || (key2 === "electronMain")) || (key2 === "electronPreload")) || (key2 === "electronRenderer"))) {
9602
9692
  validate10.errors = [{ instancePath: instancePath + "/externalsPresets", schemaPath: "#/definitions/ExternalsPresets/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key2 }, message: "must NOT have additional properties" }];
9603
9693
  return false;
9604
9694
  break;
9605
9695
  }
9606
9696
  }
9607
- if (_errs47 === errors) {
9608
- if (data16.node !== undefined) {
9609
- const _errs48 = errors;
9610
- if (typeof data16.node !== "boolean") {
9697
+ if (_errs55 === errors) {
9698
+ if (data18.node !== undefined) {
9699
+ const _errs56 = errors;
9700
+ if (typeof data18.node !== "boolean") {
9611
9701
  validate10.errors = [{ instancePath: instancePath + "/externalsPresets/node", schemaPath: "#/definitions/ExternalsPresets/properties/node/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9612
9702
  return false;
9613
9703
  }
9614
- var valid13 = _errs48 === errors;
9704
+ var valid15 = _errs56 === errors;
9615
9705
  }
9616
9706
  else {
9617
- var valid13 = true;
9707
+ var valid15 = true;
9618
9708
  }
9619
- if (valid13) {
9620
- if (data16.web !== undefined) {
9621
- const _errs50 = errors;
9622
- if (typeof data16.web !== "boolean") {
9709
+ if (valid15) {
9710
+ if (data18.web !== undefined) {
9711
+ const _errs58 = errors;
9712
+ if (typeof data18.web !== "boolean") {
9623
9713
  validate10.errors = [{ instancePath: instancePath + "/externalsPresets/web", schemaPath: "#/definitions/ExternalsPresets/properties/web/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9624
9714
  return false;
9625
9715
  }
9626
- var valid13 = _errs50 === errors;
9716
+ var valid15 = _errs58 === errors;
9627
9717
  }
9628
9718
  else {
9629
- var valid13 = true;
9719
+ var valid15 = true;
9630
9720
  }
9631
- if (valid13) {
9632
- if (data16.electron !== undefined) {
9633
- const _errs52 = errors;
9634
- if (typeof data16.electron !== "boolean") {
9721
+ if (valid15) {
9722
+ if (data18.electron !== undefined) {
9723
+ const _errs60 = errors;
9724
+ if (typeof data18.electron !== "boolean") {
9635
9725
  validate10.errors = [{ instancePath: instancePath + "/externalsPresets/electron", schemaPath: "#/definitions/ExternalsPresets/properties/electron/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9636
9726
  return false;
9637
9727
  }
9638
- var valid13 = _errs52 === errors;
9728
+ var valid15 = _errs60 === errors;
9639
9729
  }
9640
9730
  else {
9641
- var valid13 = true;
9731
+ var valid15 = true;
9642
9732
  }
9643
- if (valid13) {
9644
- if (data16.electronMain !== undefined) {
9645
- const _errs54 = errors;
9646
- if (typeof data16.electronMain !== "boolean") {
9733
+ if (valid15) {
9734
+ if (data18.electronMain !== undefined) {
9735
+ const _errs62 = errors;
9736
+ if (typeof data18.electronMain !== "boolean") {
9647
9737
  validate10.errors = [{ instancePath: instancePath + "/externalsPresets/electronMain", schemaPath: "#/definitions/ExternalsPresets/properties/electronMain/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9648
9738
  return false;
9649
9739
  }
9650
- var valid13 = _errs54 === errors;
9740
+ var valid15 = _errs62 === errors;
9651
9741
  }
9652
9742
  else {
9653
- var valid13 = true;
9743
+ var valid15 = true;
9654
9744
  }
9655
- if (valid13) {
9656
- if (data16.electronPreload !== undefined) {
9657
- const _errs56 = errors;
9658
- if (typeof data16.electronPreload !== "boolean") {
9745
+ if (valid15) {
9746
+ if (data18.electronPreload !== undefined) {
9747
+ const _errs64 = errors;
9748
+ if (typeof data18.electronPreload !== "boolean") {
9659
9749
  validate10.errors = [{ instancePath: instancePath + "/externalsPresets/electronPreload", schemaPath: "#/definitions/ExternalsPresets/properties/electronPreload/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9660
9750
  return false;
9661
9751
  }
9662
- var valid13 = _errs56 === errors;
9752
+ var valid15 = _errs64 === errors;
9663
9753
  }
9664
9754
  else {
9665
- var valid13 = true;
9755
+ var valid15 = true;
9666
9756
  }
9667
- if (valid13) {
9668
- if (data16.electronRenderer !== undefined) {
9669
- const _errs58 = errors;
9670
- if (typeof data16.electronRenderer !== "boolean") {
9757
+ if (valid15) {
9758
+ if (data18.electronRenderer !== undefined) {
9759
+ const _errs66 = errors;
9760
+ if (typeof data18.electronRenderer !== "boolean") {
9671
9761
  validate10.errors = [{ instancePath: instancePath + "/externalsPresets/electronRenderer", schemaPath: "#/definitions/ExternalsPresets/properties/electronRenderer/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9672
9762
  return false;
9673
9763
  }
9674
- var valid13 = _errs58 === errors;
9764
+ var valid15 = _errs66 === errors;
9675
9765
  }
9676
9766
  else {
9677
- var valid13 = true;
9767
+ var valid15 = true;
9678
9768
  }
9679
9769
  }
9680
9770
  }
@@ -9688,172 +9778,172 @@ function validate10(data, { instancePath = "", parentData, parentDataProperty, r
9688
9778
  return false;
9689
9779
  }
9690
9780
  }
9691
- var valid0 = _errs44 === errors;
9781
+ var valid0 = _errs52 === errors;
9692
9782
  }
9693
9783
  else {
9694
9784
  var valid0 = true;
9695
9785
  }
9696
9786
  if (valid0) {
9697
9787
  if (data.infrastructureLogging !== undefined) {
9698
- const _errs60 = errors;
9788
+ const _errs68 = errors;
9699
9789
  if (!(validate28(data.infrastructureLogging, { instancePath: instancePath + "/infrastructureLogging", parentData: data, parentDataProperty: "infrastructureLogging", rootData }))) {
9700
9790
  vErrors = vErrors === null ? validate28.errors : vErrors.concat(validate28.errors);
9701
9791
  errors = vErrors.length;
9702
9792
  }
9703
- var valid0 = _errs60 === errors;
9793
+ var valid0 = _errs68 === errors;
9704
9794
  }
9705
9795
  else {
9706
9796
  var valid0 = true;
9707
9797
  }
9708
9798
  if (valid0) {
9709
9799
  if (data.mode !== undefined) {
9710
- let data24 = data.mode;
9711
- const _errs61 = errors;
9712
- if (data24 !== "development" && data24 !== "production" && data24 !== "none") {
9800
+ let data26 = data.mode;
9801
+ const _errs69 = errors;
9802
+ if (data26 !== "development" && data26 !== "production" && data26 !== "none") {
9713
9803
  validate10.errors = [{ instancePath: instancePath + "/mode", schemaPath: "#/definitions/Mode/enum", keyword: "enum", params: {}, message: "must pass \"enum\" keyword validation" }];
9714
9804
  return false;
9715
9805
  }
9716
- var valid0 = _errs61 === errors;
9806
+ var valid0 = _errs69 === errors;
9717
9807
  }
9718
9808
  else {
9719
9809
  var valid0 = true;
9720
9810
  }
9721
9811
  if (valid0) {
9722
9812
  if (data.module !== undefined) {
9723
- const _errs63 = errors;
9813
+ const _errs71 = errors;
9724
9814
  if (!(validate32(data.module, { instancePath: instancePath + "/module", parentData: data, parentDataProperty: "module", rootData }))) {
9725
9815
  vErrors = vErrors === null ? validate32.errors : vErrors.concat(validate32.errors);
9726
9816
  errors = vErrors.length;
9727
9817
  }
9728
- var valid0 = _errs63 === errors;
9818
+ var valid0 = _errs71 === errors;
9729
9819
  }
9730
9820
  else {
9731
9821
  var valid0 = true;
9732
9822
  }
9733
9823
  if (valid0) {
9734
9824
  if (data.name !== undefined) {
9735
- const _errs64 = errors;
9825
+ const _errs72 = errors;
9736
9826
  if (typeof data.name !== "string") {
9737
9827
  validate10.errors = [{ instancePath: instancePath + "/name", schemaPath: "#/definitions/Name/type", keyword: "type", params: { type: "string" }, message: "must be string" }];
9738
9828
  return false;
9739
9829
  }
9740
- var valid0 = _errs64 === errors;
9830
+ var valid0 = _errs72 === errors;
9741
9831
  }
9742
9832
  else {
9743
9833
  var valid0 = true;
9744
9834
  }
9745
9835
  if (valid0) {
9746
9836
  if (data.node !== undefined) {
9747
- const _errs67 = errors;
9837
+ const _errs75 = errors;
9748
9838
  if (!(validate71(data.node, { instancePath: instancePath + "/node", parentData: data, parentDataProperty: "node", rootData }))) {
9749
9839
  vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors);
9750
9840
  errors = vErrors.length;
9751
9841
  }
9752
- var valid0 = _errs67 === errors;
9842
+ var valid0 = _errs75 === errors;
9753
9843
  }
9754
9844
  else {
9755
9845
  var valid0 = true;
9756
9846
  }
9757
9847
  if (valid0) {
9758
9848
  if (data.optimization !== undefined) {
9759
- const _errs68 = errors;
9849
+ const _errs76 = errors;
9760
9850
  if (!(validate73(data.optimization, { instancePath: instancePath + "/optimization", parentData: data, parentDataProperty: "optimization", rootData }))) {
9761
9851
  vErrors = vErrors === null ? validate73.errors : vErrors.concat(validate73.errors);
9762
9852
  errors = vErrors.length;
9763
9853
  }
9764
- var valid0 = _errs68 === errors;
9854
+ var valid0 = _errs76 === errors;
9765
9855
  }
9766
9856
  else {
9767
9857
  var valid0 = true;
9768
9858
  }
9769
9859
  if (valid0) {
9770
9860
  if (data.output !== undefined) {
9771
- const _errs69 = errors;
9861
+ const _errs77 = errors;
9772
9862
  if (!(validate79(data.output, { instancePath: instancePath + "/output", parentData: data, parentDataProperty: "output", rootData }))) {
9773
9863
  vErrors = vErrors === null ? validate79.errors : vErrors.concat(validate79.errors);
9774
9864
  errors = vErrors.length;
9775
9865
  }
9776
- var valid0 = _errs69 === errors;
9866
+ var valid0 = _errs77 === errors;
9777
9867
  }
9778
9868
  else {
9779
9869
  var valid0 = true;
9780
9870
  }
9781
9871
  if (valid0) {
9782
9872
  if (data.plugins !== undefined) {
9783
- const _errs70 = errors;
9873
+ const _errs78 = errors;
9784
9874
  if (!(validate112(data.plugins, { instancePath: instancePath + "/plugins", parentData: data, parentDataProperty: "plugins", rootData }))) {
9785
9875
  vErrors = vErrors === null ? validate112.errors : vErrors.concat(validate112.errors);
9786
9876
  errors = vErrors.length;
9787
9877
  }
9788
- var valid0 = _errs70 === errors;
9878
+ var valid0 = _errs78 === errors;
9789
9879
  }
9790
9880
  else {
9791
9881
  var valid0 = true;
9792
9882
  }
9793
9883
  if (valid0) {
9794
9884
  if (data.resolve !== undefined) {
9795
- const _errs71 = errors;
9885
+ const _errs79 = errors;
9796
9886
  if (!(validate114(data.resolve, { instancePath: instancePath + "/resolve", parentData: data, parentDataProperty: "resolve", rootData }))) {
9797
9887
  vErrors = vErrors === null ? validate114.errors : vErrors.concat(validate114.errors);
9798
9888
  errors = vErrors.length;
9799
9889
  }
9800
- var valid0 = _errs71 === errors;
9890
+ var valid0 = _errs79 === errors;
9801
9891
  }
9802
9892
  else {
9803
9893
  var valid0 = true;
9804
9894
  }
9805
9895
  if (valid0) {
9806
9896
  if (data.snapshot !== undefined) {
9807
- let data32 = data.snapshot;
9808
- const _errs72 = errors;
9809
- const _errs73 = errors;
9810
- if (errors === _errs73) {
9811
- if (data32 && typeof data32 == "object" && !Array.isArray(data32)) {
9812
- const _errs75 = errors;
9813
- for (const key3 in data32) {
9897
+ let data34 = data.snapshot;
9898
+ const _errs80 = errors;
9899
+ const _errs81 = errors;
9900
+ if (errors === _errs81) {
9901
+ if (data34 && typeof data34 == "object" && !Array.isArray(data34)) {
9902
+ const _errs83 = errors;
9903
+ for (const key3 in data34) {
9814
9904
  if (!((key3 === "module") || (key3 === "resolve"))) {
9815
9905
  validate10.errors = [{ instancePath: instancePath + "/snapshot", schemaPath: "#/definitions/SnapshotOptions/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key3 }, message: "must NOT have additional properties" }];
9816
9906
  return false;
9817
9907
  break;
9818
9908
  }
9819
9909
  }
9820
- if (_errs75 === errors) {
9821
- if (data32.module !== undefined) {
9822
- let data33 = data32.module;
9823
- const _errs76 = errors;
9824
- if (errors === _errs76) {
9825
- if (data33 && typeof data33 == "object" && !Array.isArray(data33)) {
9826
- const _errs78 = errors;
9827
- for (const key4 in data33) {
9910
+ if (_errs83 === errors) {
9911
+ if (data34.module !== undefined) {
9912
+ let data35 = data34.module;
9913
+ const _errs84 = errors;
9914
+ if (errors === _errs84) {
9915
+ if (data35 && typeof data35 == "object" && !Array.isArray(data35)) {
9916
+ const _errs86 = errors;
9917
+ for (const key4 in data35) {
9828
9918
  if (!((key4 === "hash") || (key4 === "timestamp"))) {
9829
9919
  validate10.errors = [{ instancePath: instancePath + "/snapshot/module", schemaPath: "#/definitions/SnapshotOptions/properties/module/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key4 }, message: "must NOT have additional properties" }];
9830
9920
  return false;
9831
9921
  break;
9832
9922
  }
9833
9923
  }
9834
- if (_errs78 === errors) {
9835
- if (data33.hash !== undefined) {
9836
- const _errs79 = errors;
9837
- if (typeof data33.hash !== "boolean") {
9924
+ if (_errs86 === errors) {
9925
+ if (data35.hash !== undefined) {
9926
+ const _errs87 = errors;
9927
+ if (typeof data35.hash !== "boolean") {
9838
9928
  validate10.errors = [{ instancePath: instancePath + "/snapshot/module/hash", schemaPath: "#/definitions/SnapshotOptions/properties/module/properties/hash/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9839
9929
  return false;
9840
9930
  }
9841
- var valid18 = _errs79 === errors;
9931
+ var valid20 = _errs87 === errors;
9842
9932
  }
9843
9933
  else {
9844
- var valid18 = true;
9934
+ var valid20 = true;
9845
9935
  }
9846
- if (valid18) {
9847
- if (data33.timestamp !== undefined) {
9848
- const _errs81 = errors;
9849
- if (typeof data33.timestamp !== "boolean") {
9936
+ if (valid20) {
9937
+ if (data35.timestamp !== undefined) {
9938
+ const _errs89 = errors;
9939
+ if (typeof data35.timestamp !== "boolean") {
9850
9940
  validate10.errors = [{ instancePath: instancePath + "/snapshot/module/timestamp", schemaPath: "#/definitions/SnapshotOptions/properties/module/properties/timestamp/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9851
9941
  return false;
9852
9942
  }
9853
- var valid18 = _errs81 === errors;
9943
+ var valid20 = _errs89 === errors;
9854
9944
  }
9855
9945
  else {
9856
- var valid18 = true;
9946
+ var valid20 = true;
9857
9947
  }
9858
9948
  }
9859
9949
  }
@@ -9863,48 +9953,48 @@ function validate10(data, { instancePath = "", parentData, parentDataProperty, r
9863
9953
  return false;
9864
9954
  }
9865
9955
  }
9866
- var valid17 = _errs76 === errors;
9956
+ var valid19 = _errs84 === errors;
9867
9957
  }
9868
9958
  else {
9869
- var valid17 = true;
9959
+ var valid19 = true;
9870
9960
  }
9871
- if (valid17) {
9872
- if (data32.resolve !== undefined) {
9873
- let data36 = data32.resolve;
9874
- const _errs83 = errors;
9875
- if (errors === _errs83) {
9876
- if (data36 && typeof data36 == "object" && !Array.isArray(data36)) {
9877
- const _errs85 = errors;
9878
- for (const key5 in data36) {
9961
+ if (valid19) {
9962
+ if (data34.resolve !== undefined) {
9963
+ let data38 = data34.resolve;
9964
+ const _errs91 = errors;
9965
+ if (errors === _errs91) {
9966
+ if (data38 && typeof data38 == "object" && !Array.isArray(data38)) {
9967
+ const _errs93 = errors;
9968
+ for (const key5 in data38) {
9879
9969
  if (!((key5 === "hash") || (key5 === "timestamp"))) {
9880
9970
  validate10.errors = [{ instancePath: instancePath + "/snapshot/resolve", schemaPath: "#/definitions/SnapshotOptions/properties/resolve/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key5 }, message: "must NOT have additional properties" }];
9881
9971
  return false;
9882
9972
  break;
9883
9973
  }
9884
9974
  }
9885
- if (_errs85 === errors) {
9886
- if (data36.hash !== undefined) {
9887
- const _errs86 = errors;
9888
- if (typeof data36.hash !== "boolean") {
9975
+ if (_errs93 === errors) {
9976
+ if (data38.hash !== undefined) {
9977
+ const _errs94 = errors;
9978
+ if (typeof data38.hash !== "boolean") {
9889
9979
  validate10.errors = [{ instancePath: instancePath + "/snapshot/resolve/hash", schemaPath: "#/definitions/SnapshotOptions/properties/resolve/properties/hash/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9890
9980
  return false;
9891
9981
  }
9892
- var valid19 = _errs86 === errors;
9982
+ var valid21 = _errs94 === errors;
9893
9983
  }
9894
9984
  else {
9895
- var valid19 = true;
9985
+ var valid21 = true;
9896
9986
  }
9897
- if (valid19) {
9898
- if (data36.timestamp !== undefined) {
9899
- const _errs88 = errors;
9900
- if (typeof data36.timestamp !== "boolean") {
9987
+ if (valid21) {
9988
+ if (data38.timestamp !== undefined) {
9989
+ const _errs96 = errors;
9990
+ if (typeof data38.timestamp !== "boolean") {
9901
9991
  validate10.errors = [{ instancePath: instancePath + "/snapshot/resolve/timestamp", schemaPath: "#/definitions/SnapshotOptions/properties/resolve/properties/timestamp/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
9902
9992
  return false;
9903
9993
  }
9904
- var valid19 = _errs88 === errors;
9994
+ var valid21 = _errs96 === errors;
9905
9995
  }
9906
9996
  else {
9907
- var valid19 = true;
9997
+ var valid21 = true;
9908
9998
  }
9909
9999
  }
9910
10000
  }
@@ -9914,10 +10004,10 @@ function validate10(data, { instancePath = "", parentData, parentDataProperty, r
9914
10004
  return false;
9915
10005
  }
9916
10006
  }
9917
- var valid17 = _errs83 === errors;
10007
+ var valid19 = _errs91 === errors;
9918
10008
  }
9919
10009
  else {
9920
- var valid17 = true;
10010
+ var valid19 = true;
9921
10011
  }
9922
10012
  }
9923
10013
  }
@@ -9927,417 +10017,417 @@ function validate10(data, { instancePath = "", parentData, parentDataProperty, r
9927
10017
  return false;
9928
10018
  }
9929
10019
  }
9930
- var valid0 = _errs72 === errors;
10020
+ var valid0 = _errs80 === errors;
9931
10021
  }
9932
10022
  else {
9933
10023
  var valid0 = true;
9934
10024
  }
9935
10025
  if (valid0) {
9936
10026
  if (data.stats !== undefined) {
9937
- const _errs90 = errors;
10027
+ const _errs98 = errors;
9938
10028
  if (!(validate117(data.stats, { instancePath: instancePath + "/stats", parentData: data, parentDataProperty: "stats", rootData }))) {
9939
10029
  vErrors = vErrors === null ? validate117.errors : vErrors.concat(validate117.errors);
9940
10030
  errors = vErrors.length;
9941
10031
  }
9942
- var valid0 = _errs90 === errors;
10032
+ var valid0 = _errs98 === errors;
9943
10033
  }
9944
10034
  else {
9945
10035
  var valid0 = true;
9946
10036
  }
9947
10037
  if (valid0) {
9948
10038
  if (data.target !== undefined) {
9949
- let data40 = data.target;
9950
- const _errs91 = errors;
9951
- const _errs93 = errors;
9952
- let valid21 = false;
9953
- const _errs94 = errors;
9954
- if (errors === _errs94) {
9955
- if (Array.isArray(data40)) {
9956
- if (data40.length < 1) {
9957
- const err6 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf/0/minItems", keyword: "minItems", params: { limit: 1 }, message: "must NOT have fewer than 1 items" };
10039
+ let data42 = data.target;
10040
+ const _errs99 = errors;
10041
+ const _errs101 = errors;
10042
+ let valid23 = false;
10043
+ const _errs102 = errors;
10044
+ if (errors === _errs102) {
10045
+ if (Array.isArray(data42)) {
10046
+ if (data42.length < 1) {
10047
+ const err11 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf/0/minItems", keyword: "minItems", params: { limit: 1 }, message: "must NOT have fewer than 1 items" };
9958
10048
  if (vErrors === null) {
9959
- vErrors = [err6];
10049
+ vErrors = [err11];
9960
10050
  }
9961
10051
  else {
9962
- vErrors.push(err6);
10052
+ vErrors.push(err11);
9963
10053
  }
9964
10054
  errors++;
9965
10055
  }
9966
10056
  else {
9967
- var valid22 = true;
9968
- const len1 = data40.length;
10057
+ var valid24 = true;
10058
+ const len1 = data42.length;
9969
10059
  for (let i1 = 0; i1 < len1; i1++) {
9970
- let data41 = data40[i1];
9971
- const _errs96 = errors;
9972
- if (errors === _errs96) {
9973
- if (typeof data41 === "string") {
9974
- if (data41.length < 1) {
9975
- const err7 = { instancePath: instancePath + "/target/" + i1, schemaPath: "#/definitions/Target/anyOf/0/items/minLength", keyword: "minLength", params: {}, message: "must pass \"minLength\" keyword validation" };
10060
+ let data43 = data42[i1];
10061
+ const _errs104 = errors;
10062
+ if (errors === _errs104) {
10063
+ if (typeof data43 === "string") {
10064
+ if (data43.length < 1) {
10065
+ const err12 = { instancePath: instancePath + "/target/" + i1, schemaPath: "#/definitions/Target/anyOf/0/items/minLength", keyword: "minLength", params: {}, message: "must pass \"minLength\" keyword validation" };
9976
10066
  if (vErrors === null) {
9977
- vErrors = [err7];
10067
+ vErrors = [err12];
9978
10068
  }
9979
10069
  else {
9980
- vErrors.push(err7);
10070
+ vErrors.push(err12);
9981
10071
  }
9982
10072
  errors++;
9983
10073
  }
9984
10074
  }
9985
10075
  else {
9986
- const err8 = { instancePath: instancePath + "/target/" + i1, schemaPath: "#/definitions/Target/anyOf/0/items/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10076
+ const err13 = { instancePath: instancePath + "/target/" + i1, schemaPath: "#/definitions/Target/anyOf/0/items/type", keyword: "type", params: { type: "string" }, message: "must be string" };
9987
10077
  if (vErrors === null) {
9988
- vErrors = [err8];
10078
+ vErrors = [err13];
9989
10079
  }
9990
10080
  else {
9991
- vErrors.push(err8);
10081
+ vErrors.push(err13);
9992
10082
  }
9993
10083
  errors++;
9994
10084
  }
9995
10085
  }
9996
- var valid22 = _errs96 === errors;
9997
- if (!valid22) {
10086
+ var valid24 = _errs104 === errors;
10087
+ if (!valid24) {
9998
10088
  break;
9999
10089
  }
10000
10090
  }
10001
10091
  }
10002
10092
  }
10003
10093
  else {
10004
- const err9 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf/0/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10094
+ const err14 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf/0/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10005
10095
  if (vErrors === null) {
10006
- vErrors = [err9];
10096
+ vErrors = [err14];
10007
10097
  }
10008
10098
  else {
10009
- vErrors.push(err9);
10099
+ vErrors.push(err14);
10010
10100
  }
10011
10101
  errors++;
10012
10102
  }
10013
10103
  }
10014
- var _valid2 = _errs94 === errors;
10015
- valid21 = valid21 || _valid2;
10016
- if (!valid21) {
10017
- const _errs98 = errors;
10018
- if (data40 !== false) {
10019
- const err10 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf/1/enum", keyword: "enum", params: {}, message: "must pass \"enum\" keyword validation" };
10104
+ var _valid3 = _errs102 === errors;
10105
+ valid23 = valid23 || _valid3;
10106
+ if (!valid23) {
10107
+ const _errs106 = errors;
10108
+ if (data42 !== false) {
10109
+ const err15 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf/1/enum", keyword: "enum", params: {}, message: "must pass \"enum\" keyword validation" };
10020
10110
  if (vErrors === null) {
10021
- vErrors = [err10];
10111
+ vErrors = [err15];
10022
10112
  }
10023
10113
  else {
10024
- vErrors.push(err10);
10114
+ vErrors.push(err15);
10025
10115
  }
10026
10116
  errors++;
10027
10117
  }
10028
- var _valid2 = _errs98 === errors;
10029
- valid21 = valid21 || _valid2;
10030
- if (!valid21) {
10031
- const _errs99 = errors;
10032
- if (errors === _errs99) {
10033
- if (typeof data40 === "string") {
10034
- if (data40.length < 1) {
10035
- const err11 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf/2/minLength", keyword: "minLength", params: {}, message: "must pass \"minLength\" keyword validation" };
10118
+ var _valid3 = _errs106 === errors;
10119
+ valid23 = valid23 || _valid3;
10120
+ if (!valid23) {
10121
+ const _errs107 = errors;
10122
+ if (errors === _errs107) {
10123
+ if (typeof data42 === "string") {
10124
+ if (data42.length < 1) {
10125
+ const err16 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf/2/minLength", keyword: "minLength", params: {}, message: "must pass \"minLength\" keyword validation" };
10036
10126
  if (vErrors === null) {
10037
- vErrors = [err11];
10127
+ vErrors = [err16];
10038
10128
  }
10039
10129
  else {
10040
- vErrors.push(err11);
10130
+ vErrors.push(err16);
10041
10131
  }
10042
10132
  errors++;
10043
10133
  }
10044
10134
  }
10045
10135
  else {
10046
- const err12 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf/2/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10136
+ const err17 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf/2/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10047
10137
  if (vErrors === null) {
10048
- vErrors = [err12];
10138
+ vErrors = [err17];
10049
10139
  }
10050
10140
  else {
10051
- vErrors.push(err12);
10141
+ vErrors.push(err17);
10052
10142
  }
10053
10143
  errors++;
10054
10144
  }
10055
10145
  }
10056
- var _valid2 = _errs99 === errors;
10057
- valid21 = valid21 || _valid2;
10146
+ var _valid3 = _errs107 === errors;
10147
+ valid23 = valid23 || _valid3;
10058
10148
  }
10059
10149
  }
10060
- if (!valid21) {
10061
- const err13 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf", keyword: "anyOf", params: {}, message: "must match a schema in anyOf" };
10150
+ if (!valid23) {
10151
+ const err18 = { instancePath: instancePath + "/target", schemaPath: "#/definitions/Target/anyOf", keyword: "anyOf", params: {}, message: "must match a schema in anyOf" };
10062
10152
  if (vErrors === null) {
10063
- vErrors = [err13];
10153
+ vErrors = [err18];
10064
10154
  }
10065
10155
  else {
10066
- vErrors.push(err13);
10156
+ vErrors.push(err18);
10067
10157
  }
10068
10158
  errors++;
10069
10159
  validate10.errors = vErrors;
10070
10160
  return false;
10071
10161
  }
10072
10162
  else {
10073
- errors = _errs93;
10163
+ errors = _errs101;
10074
10164
  if (vErrors !== null) {
10075
- if (_errs93) {
10076
- vErrors.length = _errs93;
10165
+ if (_errs101) {
10166
+ vErrors.length = _errs101;
10077
10167
  }
10078
10168
  else {
10079
10169
  vErrors = null;
10080
10170
  }
10081
10171
  }
10082
10172
  }
10083
- var valid0 = _errs91 === errors;
10173
+ var valid0 = _errs99 === errors;
10084
10174
  }
10085
10175
  else {
10086
10176
  var valid0 = true;
10087
10177
  }
10088
10178
  if (valid0) {
10089
10179
  if (data.watch !== undefined) {
10090
- const _errs101 = errors;
10180
+ const _errs109 = errors;
10091
10181
  if (typeof data.watch !== "boolean") {
10092
10182
  validate10.errors = [{ instancePath: instancePath + "/watch", schemaPath: "#/definitions/Watch/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
10093
10183
  return false;
10094
10184
  }
10095
- var valid0 = _errs101 === errors;
10185
+ var valid0 = _errs109 === errors;
10096
10186
  }
10097
10187
  else {
10098
10188
  var valid0 = true;
10099
10189
  }
10100
10190
  if (valid0) {
10101
10191
  if (data.watchOptions !== undefined) {
10102
- let data43 = data.watchOptions;
10103
- const _errs104 = errors;
10104
- const _errs105 = errors;
10105
- if (errors === _errs105) {
10106
- if (data43 && typeof data43 == "object" && !Array.isArray(data43)) {
10107
- const _errs107 = errors;
10108
- for (const key6 in data43) {
10192
+ let data45 = data.watchOptions;
10193
+ const _errs112 = errors;
10194
+ const _errs113 = errors;
10195
+ if (errors === _errs113) {
10196
+ if (data45 && typeof data45 == "object" && !Array.isArray(data45)) {
10197
+ const _errs115 = errors;
10198
+ for (const key6 in data45) {
10109
10199
  if (!(((((key6 === "aggregateTimeout") || (key6 === "followSymlinks")) || (key6 === "ignored")) || (key6 === "poll")) || (key6 === "stdin"))) {
10110
10200
  validate10.errors = [{ instancePath: instancePath + "/watchOptions", schemaPath: "#/definitions/WatchOptions/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key6 }, message: "must NOT have additional properties" }];
10111
10201
  return false;
10112
10202
  break;
10113
10203
  }
10114
10204
  }
10115
- if (_errs107 === errors) {
10116
- if (data43.aggregateTimeout !== undefined) {
10117
- const _errs108 = errors;
10118
- if (!(typeof data43.aggregateTimeout == "number")) {
10205
+ if (_errs115 === errors) {
10206
+ if (data45.aggregateTimeout !== undefined) {
10207
+ const _errs116 = errors;
10208
+ if (!(typeof data45.aggregateTimeout == "number")) {
10119
10209
  validate10.errors = [{ instancePath: instancePath + "/watchOptions/aggregateTimeout", schemaPath: "#/definitions/WatchOptions/properties/aggregateTimeout/type", keyword: "type", params: { type: "number" }, message: "must be number" }];
10120
10210
  return false;
10121
10211
  }
10122
- var valid25 = _errs108 === errors;
10212
+ var valid27 = _errs116 === errors;
10123
10213
  }
10124
10214
  else {
10125
- var valid25 = true;
10215
+ var valid27 = true;
10126
10216
  }
10127
- if (valid25) {
10128
- if (data43.followSymlinks !== undefined) {
10129
- const _errs110 = errors;
10130
- if (typeof data43.followSymlinks !== "boolean") {
10217
+ if (valid27) {
10218
+ if (data45.followSymlinks !== undefined) {
10219
+ const _errs118 = errors;
10220
+ if (typeof data45.followSymlinks !== "boolean") {
10131
10221
  validate10.errors = [{ instancePath: instancePath + "/watchOptions/followSymlinks", schemaPath: "#/definitions/WatchOptions/properties/followSymlinks/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
10132
10222
  return false;
10133
10223
  }
10134
- var valid25 = _errs110 === errors;
10224
+ var valid27 = _errs118 === errors;
10135
10225
  }
10136
10226
  else {
10137
- var valid25 = true;
10227
+ var valid27 = true;
10138
10228
  }
10139
- if (valid25) {
10140
- if (data43.ignored !== undefined) {
10141
- let data46 = data43.ignored;
10142
- const _errs112 = errors;
10143
- const _errs113 = errors;
10144
- let valid26 = false;
10145
- const _errs114 = errors;
10146
- if (errors === _errs114) {
10147
- if (Array.isArray(data46)) {
10148
- var valid27 = true;
10149
- const len2 = data46.length;
10229
+ if (valid27) {
10230
+ if (data45.ignored !== undefined) {
10231
+ let data48 = data45.ignored;
10232
+ const _errs120 = errors;
10233
+ const _errs121 = errors;
10234
+ let valid28 = false;
10235
+ const _errs122 = errors;
10236
+ if (errors === _errs122) {
10237
+ if (Array.isArray(data48)) {
10238
+ var valid29 = true;
10239
+ const len2 = data48.length;
10150
10240
  for (let i2 = 0; i2 < len2; i2++) {
10151
- let data47 = data46[i2];
10152
- const _errs116 = errors;
10153
- if (errors === _errs116) {
10154
- if (typeof data47 === "string") {
10155
- if (data47.length < 1) {
10156
- const err14 = { instancePath: instancePath + "/watchOptions/ignored/" + i2, schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/0/items/minLength", keyword: "minLength", params: {}, message: "must pass \"minLength\" keyword validation" };
10241
+ let data49 = data48[i2];
10242
+ const _errs124 = errors;
10243
+ if (errors === _errs124) {
10244
+ if (typeof data49 === "string") {
10245
+ if (data49.length < 1) {
10246
+ const err19 = { instancePath: instancePath + "/watchOptions/ignored/" + i2, schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/0/items/minLength", keyword: "minLength", params: {}, message: "must pass \"minLength\" keyword validation" };
10157
10247
  if (vErrors === null) {
10158
- vErrors = [err14];
10248
+ vErrors = [err19];
10159
10249
  }
10160
10250
  else {
10161
- vErrors.push(err14);
10251
+ vErrors.push(err19);
10162
10252
  }
10163
10253
  errors++;
10164
10254
  }
10165
10255
  }
10166
10256
  else {
10167
- const err15 = { instancePath: instancePath + "/watchOptions/ignored/" + i2, schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/0/items/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10257
+ const err20 = { instancePath: instancePath + "/watchOptions/ignored/" + i2, schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/0/items/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10168
10258
  if (vErrors === null) {
10169
- vErrors = [err15];
10259
+ vErrors = [err20];
10170
10260
  }
10171
10261
  else {
10172
- vErrors.push(err15);
10262
+ vErrors.push(err20);
10173
10263
  }
10174
10264
  errors++;
10175
10265
  }
10176
10266
  }
10177
- var valid27 = _errs116 === errors;
10178
- if (!valid27) {
10267
+ var valid29 = _errs124 === errors;
10268
+ if (!valid29) {
10179
10269
  break;
10180
10270
  }
10181
10271
  }
10182
10272
  }
10183
10273
  else {
10184
- const err16 = { instancePath: instancePath + "/watchOptions/ignored", schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/0/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10274
+ const err21 = { instancePath: instancePath + "/watchOptions/ignored", schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/0/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10185
10275
  if (vErrors === null) {
10186
- vErrors = [err16];
10276
+ vErrors = [err21];
10187
10277
  }
10188
10278
  else {
10189
- vErrors.push(err16);
10279
+ vErrors.push(err21);
10190
10280
  }
10191
10281
  errors++;
10192
10282
  }
10193
10283
  }
10194
- var _valid3 = _errs114 === errors;
10195
- valid26 = valid26 || _valid3;
10196
- if (!valid26) {
10197
- const _errs118 = errors;
10198
- if (!(data46 instanceof RegExp)) {
10199
- const err17 = { instancePath: instancePath + "/watchOptions/ignored", schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/1/instanceof", keyword: "instanceof", params: {}, message: "must pass \"instanceof\" keyword validation" };
10284
+ var _valid4 = _errs122 === errors;
10285
+ valid28 = valid28 || _valid4;
10286
+ if (!valid28) {
10287
+ const _errs126 = errors;
10288
+ if (!(data48 instanceof RegExp)) {
10289
+ const err22 = { instancePath: instancePath + "/watchOptions/ignored", schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/1/instanceof", keyword: "instanceof", params: {}, message: "must pass \"instanceof\" keyword validation" };
10200
10290
  if (vErrors === null) {
10201
- vErrors = [err17];
10291
+ vErrors = [err22];
10202
10292
  }
10203
10293
  else {
10204
- vErrors.push(err17);
10294
+ vErrors.push(err22);
10205
10295
  }
10206
10296
  errors++;
10207
10297
  }
10208
- var _valid3 = _errs118 === errors;
10209
- valid26 = valid26 || _valid3;
10210
- if (!valid26) {
10211
- const _errs119 = errors;
10212
- if (errors === _errs119) {
10213
- if (typeof data46 === "string") {
10214
- if (data46.length < 1) {
10215
- const err18 = { instancePath: instancePath + "/watchOptions/ignored", schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/2/minLength", keyword: "minLength", params: {}, message: "must pass \"minLength\" keyword validation" };
10298
+ var _valid4 = _errs126 === errors;
10299
+ valid28 = valid28 || _valid4;
10300
+ if (!valid28) {
10301
+ const _errs127 = errors;
10302
+ if (errors === _errs127) {
10303
+ if (typeof data48 === "string") {
10304
+ if (data48.length < 1) {
10305
+ const err23 = { instancePath: instancePath + "/watchOptions/ignored", schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/2/minLength", keyword: "minLength", params: {}, message: "must pass \"minLength\" keyword validation" };
10216
10306
  if (vErrors === null) {
10217
- vErrors = [err18];
10307
+ vErrors = [err23];
10218
10308
  }
10219
10309
  else {
10220
- vErrors.push(err18);
10310
+ vErrors.push(err23);
10221
10311
  }
10222
10312
  errors++;
10223
10313
  }
10224
10314
  }
10225
10315
  else {
10226
- const err19 = { instancePath: instancePath + "/watchOptions/ignored", schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/2/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10316
+ const err24 = { instancePath: instancePath + "/watchOptions/ignored", schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf/2/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10227
10317
  if (vErrors === null) {
10228
- vErrors = [err19];
10318
+ vErrors = [err24];
10229
10319
  }
10230
10320
  else {
10231
- vErrors.push(err19);
10321
+ vErrors.push(err24);
10232
10322
  }
10233
10323
  errors++;
10234
10324
  }
10235
10325
  }
10236
- var _valid3 = _errs119 === errors;
10237
- valid26 = valid26 || _valid3;
10326
+ var _valid4 = _errs127 === errors;
10327
+ valid28 = valid28 || _valid4;
10238
10328
  }
10239
10329
  }
10240
- if (!valid26) {
10241
- const err20 = { instancePath: instancePath + "/watchOptions/ignored", schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf", keyword: "anyOf", params: {}, message: "must match a schema in anyOf" };
10330
+ if (!valid28) {
10331
+ const err25 = { instancePath: instancePath + "/watchOptions/ignored", schemaPath: "#/definitions/WatchOptions/properties/ignored/anyOf", keyword: "anyOf", params: {}, message: "must match a schema in anyOf" };
10242
10332
  if (vErrors === null) {
10243
- vErrors = [err20];
10333
+ vErrors = [err25];
10244
10334
  }
10245
10335
  else {
10246
- vErrors.push(err20);
10336
+ vErrors.push(err25);
10247
10337
  }
10248
10338
  errors++;
10249
10339
  validate10.errors = vErrors;
10250
10340
  return false;
10251
10341
  }
10252
10342
  else {
10253
- errors = _errs113;
10343
+ errors = _errs121;
10254
10344
  if (vErrors !== null) {
10255
- if (_errs113) {
10256
- vErrors.length = _errs113;
10345
+ if (_errs121) {
10346
+ vErrors.length = _errs121;
10257
10347
  }
10258
10348
  else {
10259
10349
  vErrors = null;
10260
10350
  }
10261
10351
  }
10262
10352
  }
10263
- var valid25 = _errs112 === errors;
10353
+ var valid27 = _errs120 === errors;
10264
10354
  }
10265
10355
  else {
10266
- var valid25 = true;
10356
+ var valid27 = true;
10267
10357
  }
10268
- if (valid25) {
10269
- if (data43.poll !== undefined) {
10270
- let data48 = data43.poll;
10271
- const _errs121 = errors;
10272
- const _errs122 = errors;
10273
- let valid28 = false;
10274
- const _errs123 = errors;
10275
- if (!(typeof data48 == "number")) {
10276
- const err21 = { instancePath: instancePath + "/watchOptions/poll", schemaPath: "#/definitions/WatchOptions/properties/poll/anyOf/0/type", keyword: "type", params: { type: "number" }, message: "must be number" };
10358
+ if (valid27) {
10359
+ if (data45.poll !== undefined) {
10360
+ let data50 = data45.poll;
10361
+ const _errs129 = errors;
10362
+ const _errs130 = errors;
10363
+ let valid30 = false;
10364
+ const _errs131 = errors;
10365
+ if (!(typeof data50 == "number")) {
10366
+ const err26 = { instancePath: instancePath + "/watchOptions/poll", schemaPath: "#/definitions/WatchOptions/properties/poll/anyOf/0/type", keyword: "type", params: { type: "number" }, message: "must be number" };
10277
10367
  if (vErrors === null) {
10278
- vErrors = [err21];
10368
+ vErrors = [err26];
10279
10369
  }
10280
10370
  else {
10281
- vErrors.push(err21);
10371
+ vErrors.push(err26);
10282
10372
  }
10283
10373
  errors++;
10284
10374
  }
10285
- var _valid4 = _errs123 === errors;
10286
- valid28 = valid28 || _valid4;
10287
- if (!valid28) {
10288
- const _errs125 = errors;
10289
- if (typeof data48 !== "boolean") {
10290
- const err22 = { instancePath: instancePath + "/watchOptions/poll", schemaPath: "#/definitions/WatchOptions/properties/poll/anyOf/1/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10375
+ var _valid5 = _errs131 === errors;
10376
+ valid30 = valid30 || _valid5;
10377
+ if (!valid30) {
10378
+ const _errs133 = errors;
10379
+ if (typeof data50 !== "boolean") {
10380
+ const err27 = { instancePath: instancePath + "/watchOptions/poll", schemaPath: "#/definitions/WatchOptions/properties/poll/anyOf/1/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10291
10381
  if (vErrors === null) {
10292
- vErrors = [err22];
10382
+ vErrors = [err27];
10293
10383
  }
10294
10384
  else {
10295
- vErrors.push(err22);
10385
+ vErrors.push(err27);
10296
10386
  }
10297
10387
  errors++;
10298
10388
  }
10299
- var _valid4 = _errs125 === errors;
10300
- valid28 = valid28 || _valid4;
10389
+ var _valid5 = _errs133 === errors;
10390
+ valid30 = valid30 || _valid5;
10301
10391
  }
10302
- if (!valid28) {
10303
- const err23 = { instancePath: instancePath + "/watchOptions/poll", schemaPath: "#/definitions/WatchOptions/properties/poll/anyOf", keyword: "anyOf", params: {}, message: "must match a schema in anyOf" };
10392
+ if (!valid30) {
10393
+ const err28 = { instancePath: instancePath + "/watchOptions/poll", schemaPath: "#/definitions/WatchOptions/properties/poll/anyOf", keyword: "anyOf", params: {}, message: "must match a schema in anyOf" };
10304
10394
  if (vErrors === null) {
10305
- vErrors = [err23];
10395
+ vErrors = [err28];
10306
10396
  }
10307
10397
  else {
10308
- vErrors.push(err23);
10398
+ vErrors.push(err28);
10309
10399
  }
10310
10400
  errors++;
10311
10401
  validate10.errors = vErrors;
10312
10402
  return false;
10313
10403
  }
10314
10404
  else {
10315
- errors = _errs122;
10405
+ errors = _errs130;
10316
10406
  if (vErrors !== null) {
10317
- if (_errs122) {
10318
- vErrors.length = _errs122;
10407
+ if (_errs130) {
10408
+ vErrors.length = _errs130;
10319
10409
  }
10320
10410
  else {
10321
10411
  vErrors = null;
10322
10412
  }
10323
10413
  }
10324
10414
  }
10325
- var valid25 = _errs121 === errors;
10415
+ var valid27 = _errs129 === errors;
10326
10416
  }
10327
10417
  else {
10328
- var valid25 = true;
10418
+ var valid27 = true;
10329
10419
  }
10330
- if (valid25) {
10331
- if (data43.stdin !== undefined) {
10332
- const _errs127 = errors;
10333
- if (typeof data43.stdin !== "boolean") {
10420
+ if (valid27) {
10421
+ if (data45.stdin !== undefined) {
10422
+ const _errs135 = errors;
10423
+ if (typeof data45.stdin !== "boolean") {
10334
10424
  validate10.errors = [{ instancePath: instancePath + "/watchOptions/stdin", schemaPath: "#/definitions/WatchOptions/properties/stdin/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" }];
10335
10425
  return false;
10336
10426
  }
10337
- var valid25 = _errs127 === errors;
10427
+ var valid27 = _errs135 === errors;
10338
10428
  }
10339
10429
  else {
10340
- var valid25 = true;
10430
+ var valid27 = true;
10341
10431
  }
10342
10432
  }
10343
10433
  }
@@ -10350,94 +10440,94 @@ function validate10(data, { instancePath = "", parentData, parentDataProperty, r
10350
10440
  return false;
10351
10441
  }
10352
10442
  }
10353
- var valid0 = _errs104 === errors;
10443
+ var valid0 = _errs112 === errors;
10354
10444
  }
10355
10445
  else {
10356
10446
  var valid0 = true;
10357
10447
  }
10358
10448
  if (valid0) {
10359
10449
  if (data.builtins !== undefined) {
10360
- let data50 = data.builtins;
10361
- const _errs129 = errors;
10362
- if (errors === _errs129) {
10363
- if (data50 && typeof data50 == "object" && !Array.isArray(data50)) { }
10450
+ let data52 = data.builtins;
10451
+ const _errs137 = errors;
10452
+ if (errors === _errs137) {
10453
+ if (data52 && typeof data52 == "object" && !Array.isArray(data52)) { }
10364
10454
  else {
10365
10455
  validate10.errors = [{ instancePath: instancePath + "/builtins", schemaPath: "#/properties/builtins/type", keyword: "type", params: { type: "object" }, message: "must be object" }];
10366
10456
  return false;
10367
10457
  }
10368
10458
  }
10369
- var valid0 = _errs129 === errors;
10459
+ var valid0 = _errs137 === errors;
10370
10460
  }
10371
10461
  else {
10372
10462
  var valid0 = true;
10373
10463
  }
10374
10464
  if (valid0) {
10375
10465
  if (data.ignoreWarnings !== undefined) {
10376
- let data51 = data.ignoreWarnings;
10377
- const _errs132 = errors;
10378
- const _errs133 = errors;
10379
- if (errors === _errs133) {
10380
- if (Array.isArray(data51)) {
10381
- var valid30 = true;
10382
- const len3 = data51.length;
10466
+ let data53 = data.ignoreWarnings;
10467
+ const _errs140 = errors;
10468
+ const _errs141 = errors;
10469
+ if (errors === _errs141) {
10470
+ if (Array.isArray(data53)) {
10471
+ var valid32 = true;
10472
+ const len3 = data53.length;
10383
10473
  for (let i3 = 0; i3 < len3; i3++) {
10384
- let data52 = data51[i3];
10385
- const _errs135 = errors;
10386
- const _errs136 = errors;
10387
- let valid31 = false;
10388
- const _errs137 = errors;
10389
- if (!(data52 instanceof RegExp)) {
10390
- const err24 = { instancePath: instancePath + "/ignoreWarnings/" + i3, schemaPath: "#/definitions/IgnoreWarnings/items/anyOf/0/instanceof", keyword: "instanceof", params: {}, message: "must pass \"instanceof\" keyword validation" };
10474
+ let data54 = data53[i3];
10475
+ const _errs143 = errors;
10476
+ const _errs144 = errors;
10477
+ let valid33 = false;
10478
+ const _errs145 = errors;
10479
+ if (!(data54 instanceof RegExp)) {
10480
+ const err29 = { instancePath: instancePath + "/ignoreWarnings/" + i3, schemaPath: "#/definitions/IgnoreWarnings/items/anyOf/0/instanceof", keyword: "instanceof", params: {}, message: "must pass \"instanceof\" keyword validation" };
10391
10481
  if (vErrors === null) {
10392
- vErrors = [err24];
10482
+ vErrors = [err29];
10393
10483
  }
10394
10484
  else {
10395
- vErrors.push(err24);
10485
+ vErrors.push(err29);
10396
10486
  }
10397
10487
  errors++;
10398
10488
  }
10399
- var _valid5 = _errs137 === errors;
10400
- valid31 = valid31 || _valid5;
10401
- if (!valid31) {
10402
- const _errs138 = errors;
10403
- if (!(data52 instanceof Function)) {
10404
- const err25 = { instancePath: instancePath + "/ignoreWarnings/" + i3, schemaPath: "#/definitions/IgnoreWarnings/items/anyOf/1/instanceof", keyword: "instanceof", params: {}, message: "must pass \"instanceof\" keyword validation" };
10489
+ var _valid6 = _errs145 === errors;
10490
+ valid33 = valid33 || _valid6;
10491
+ if (!valid33) {
10492
+ const _errs146 = errors;
10493
+ if (!(data54 instanceof Function)) {
10494
+ const err30 = { instancePath: instancePath + "/ignoreWarnings/" + i3, schemaPath: "#/definitions/IgnoreWarnings/items/anyOf/1/instanceof", keyword: "instanceof", params: {}, message: "must pass \"instanceof\" keyword validation" };
10405
10495
  if (vErrors === null) {
10406
- vErrors = [err25];
10496
+ vErrors = [err30];
10407
10497
  }
10408
10498
  else {
10409
- vErrors.push(err25);
10499
+ vErrors.push(err30);
10410
10500
  }
10411
10501
  errors++;
10412
10502
  }
10413
- var _valid5 = _errs138 === errors;
10414
- valid31 = valid31 || _valid5;
10503
+ var _valid6 = _errs146 === errors;
10504
+ valid33 = valid33 || _valid6;
10415
10505
  }
10416
- if (!valid31) {
10417
- const err26 = { instancePath: instancePath + "/ignoreWarnings/" + i3, schemaPath: "#/definitions/IgnoreWarnings/items/anyOf", keyword: "anyOf", params: {}, message: "must match a schema in anyOf" };
10506
+ if (!valid33) {
10507
+ const err31 = { instancePath: instancePath + "/ignoreWarnings/" + i3, schemaPath: "#/definitions/IgnoreWarnings/items/anyOf", keyword: "anyOf", params: {}, message: "must match a schema in anyOf" };
10418
10508
  if (vErrors === null) {
10419
- vErrors = [err26];
10509
+ vErrors = [err31];
10420
10510
  }
10421
10511
  else {
10422
- vErrors.push(err26);
10512
+ vErrors.push(err31);
10423
10513
  }
10424
10514
  errors++;
10425
10515
  validate10.errors = vErrors;
10426
10516
  return false;
10427
10517
  }
10428
10518
  else {
10429
- errors = _errs136;
10519
+ errors = _errs144;
10430
10520
  if (vErrors !== null) {
10431
- if (_errs136) {
10432
- vErrors.length = _errs136;
10521
+ if (_errs144) {
10522
+ vErrors.length = _errs144;
10433
10523
  }
10434
10524
  else {
10435
10525
  vErrors = null;
10436
10526
  }
10437
10527
  }
10438
10528
  }
10439
- var valid30 = _errs135 === errors;
10440
- if (!valid30) {
10529
+ var valid32 = _errs143 === errors;
10530
+ if (!valid32) {
10441
10531
  break;
10442
10532
  }
10443
10533
  }
@@ -10447,7 +10537,7 @@ function validate10(data, { instancePath = "", parentData, parentDataProperty, r
10447
10537
  return false;
10448
10538
  }
10449
10539
  }
10450
- var valid0 = _errs132 === errors;
10540
+ var valid0 = _errs140 === errors;
10451
10541
  }
10452
10542
  else {
10453
10543
  var valid0 = true;