webpack 5.106.1 → 5.106.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.
- package/lib/APIPlugin.js +3 -1
- package/lib/AbstractMethodError.js +10 -1
- package/lib/AsyncDependenciesBlock.js +3 -0
- package/lib/AsyncDependencyToInitialChunkError.js +6 -1
- package/lib/AutomaticPrefetchPlugin.js +6 -1
- package/lib/BannerPlugin.js +10 -1
- package/lib/Cache.js +26 -1
- package/lib/CacheFacade.js +26 -0
- package/lib/CaseSensitiveModulesWarning.js +9 -1
- package/lib/Chunk.js +46 -0
- package/lib/ChunkGraph.js +111 -0
- package/lib/ChunkGroup.js +57 -13
- package/lib/ChunkTemplate.js +9 -0
- package/lib/CleanPlugin.js +14 -1
- package/lib/CodeGenerationResults.js +19 -0
- package/lib/CommentCompilationWarning.js +6 -0
- package/lib/CompatibilityPlugin.js +15 -1
- package/lib/Compilation.js +127 -1
- package/lib/Compiler.js +37 -4
- package/lib/ConcatenationScope.js +24 -1
- package/lib/ConditionalInitFragment.js +6 -0
- package/lib/ConstPlugin.js +4 -1
- package/lib/ContextExclusionPlugin.js +2 -1
- package/lib/ContextModule.js +12 -0
- package/lib/ContextModuleFactory.js +10 -0
- package/lib/ContextReplacementPlugin.js +4 -1
- package/lib/CssModule.js +6 -0
- package/lib/DefinePlugin.js +20 -7
- package/lib/DelegatedModule.js +13 -0
- package/lib/DelegatedModuleFactoryPlugin.js +3 -0
- package/lib/DelegatedPlugin.js +2 -1
- package/lib/DependenciesBlock.js +6 -1
- package/lib/Dependency.js +26 -3
- package/lib/DependencyTemplate.js +5 -0
- package/lib/DependencyTemplates.js +4 -0
- package/lib/DllEntryPlugin.js +2 -1
- package/lib/DllModule.js +11 -0
- package/lib/DllModuleFactory.js +1 -0
- package/lib/DllPlugin.js +2 -1
- package/lib/DllReferencePlugin.js +11 -6
- package/lib/DotenvPlugin.js +3 -0
- package/lib/DynamicEntryPlugin.js +3 -1
- package/lib/EntryOptionPlugin.js +3 -0
- package/lib/EntryPlugin.js +2 -1
- package/lib/Entrypoint.js +4 -0
- package/lib/EnvironmentPlugin.js +2 -1
- package/lib/ErrorHelpers.js +7 -0
- package/lib/EvalDevToolModulePlugin.js +3 -1
- package/lib/EvalSourceMapDevToolPlugin.js +3 -1
- package/lib/ExportsInfo.js +56 -2
- package/lib/ExportsInfoApiPlugin.js +2 -1
- package/lib/ExternalModule.js +38 -0
- package/lib/ExternalModuleFactoryPlugin.js +10 -0
- package/lib/ExternalsPlugin.js +2 -1
- package/lib/FileSystemInfo.js +105 -0
- package/lib/FlagAllModulesAsUsedPlugin.js +2 -1
- package/lib/FlagDependencyExportsPlugin.js +4 -1
- package/lib/FlagDependencyUsagePlugin.js +5 -1
- package/lib/FlagEntryExportAsUsedPlugin.js +2 -1
- package/lib/Generator.js +13 -0
- package/lib/GraphHelpers.js +3 -0
- package/lib/HookWebpackError.js +6 -0
- package/lib/HotModuleReplacementPlugin.js +9 -1
- package/lib/IgnoreErrorModuleFactory.js +2 -0
- package/lib/IgnorePlugin.js +2 -1
- package/lib/IgnoreWarningsPlugin.js +2 -1
- package/lib/InitFragment.js +10 -0
- package/lib/InvalidDependenciesModuleWarning.js +1 -0
- package/lib/JavascriptMetaInfoPlugin.js +2 -1
- package/lib/LibManifestPlugin.js +4 -1
- package/lib/LibraryTemplatePlugin.js +2 -1
- package/lib/LoaderOptionsPlugin.js +3 -1
- package/lib/LoaderTargetPlugin.js +2 -1
- package/lib/MainTemplate.js +15 -0
- package/lib/ManifestPlugin.js +9 -2
- package/lib/Module.js +82 -1
- package/lib/ModuleBuildError.js +3 -0
- package/lib/ModuleDependencyWarning.js +1 -0
- package/lib/ModuleError.js +2 -0
- package/lib/ModuleFactory.js +5 -0
- package/lib/ModuleFilenameHelpers.js +3 -0
- package/lib/ModuleGraph.js +66 -0
- package/lib/ModuleGraphConnection.js +9 -0
- package/lib/ModuleInfoHeaderPlugin.js +5 -0
- package/lib/ModuleNotFoundError.js +1 -0
- package/lib/ModuleParseError.js +3 -0
- package/lib/ModuleRestoreError.js +1 -0
- package/lib/ModuleSourceTypeConstants.js +1 -0
- package/lib/ModuleStoreError.js +1 -0
- package/lib/ModuleTemplate.js +8 -0
- package/lib/ModuleWarning.js +3 -0
- package/lib/MultiCompiler.js +28 -0
- package/lib/MultiStats.js +8 -0
- package/lib/MultiWatching.js +3 -0
- package/lib/NoEmitOnErrorsPlugin.js +1 -1
- package/lib/NodeStuffInWebError.js +1 -0
- package/lib/NodeStuffPlugin.js +10 -1
- package/lib/NormalModule.js +30 -2
- package/lib/NormalModuleFactory.js +25 -0
- package/lib/NormalModuleReplacementPlugin.js +1 -1
- package/lib/NullFactory.js +1 -0
- package/lib/OptionsApply.js +1 -0
- package/lib/Parser.js +2 -0
- package/lib/PlatformPlugin.js +2 -1
- package/lib/PrefetchPlugin.js +2 -1
- package/lib/ProgressPlugin.js +29 -12
- package/lib/ProvidePlugin.js +3 -1
- package/lib/RawModule.js +12 -0
- package/lib/RecordIdsPlugin.js +8 -0
- package/lib/RequestShortener.js +8 -0
- package/lib/RequireJsStuffPlugin.js +2 -1
- package/lib/ResolverFactory.js +5 -0
- package/lib/RuntimeGlobals.js +1 -0
- package/lib/RuntimeModule.js +13 -0
- package/lib/RuntimePlugin.js +2 -0
- package/lib/RuntimeTemplate.js +35 -1
- package/lib/SelfModuleFactory.js +2 -0
- package/lib/SizeFormatHelpers.js +1 -0
- package/lib/SourceMapDevToolModuleOptionsPlugin.js +2 -0
- package/lib/SourceMapDevToolPlugin.js +3 -1
- package/lib/Stats.js +5 -0
- package/lib/Template.js +20 -0
- package/lib/TemplatedPathPlugin.js +10 -3
- package/lib/UnhandledSchemeError.js +6 -0
- package/lib/UnsupportedFeatureWarning.js +1 -0
- package/lib/UseStrictPlugin.js +2 -1
- package/lib/WarnCaseSensitiveModulesPlugin.js +1 -1
- package/lib/WarnDeprecatedOptionPlugin.js +1 -1
- package/lib/WarnNoModeSetPlugin.js +1 -1
- package/lib/WatchIgnorePlugin.js +4 -1
- package/lib/Watching.js +14 -0
- package/lib/WebpackError.js +3 -0
- package/lib/WebpackIsIncludedPlugin.js +2 -0
- package/lib/WebpackOptionsApply.js +1 -0
- package/lib/WebpackOptionsDefaulter.js +1 -0
- package/lib/asset/AssetBytesGenerator.js +6 -0
- package/lib/asset/AssetBytesParser.js +1 -0
- package/lib/asset/AssetGenerator.js +20 -2
- package/lib/asset/AssetModulesPlugin.js +4 -1
- package/lib/asset/AssetParser.js +2 -0
- package/lib/asset/AssetSourceGenerator.js +6 -0
- package/lib/asset/AssetSourceParser.js +1 -0
- package/lib/asset/RawDataUrlModule.js +11 -0
- package/lib/async-modules/AsyncModuleHelpers.js +1 -0
- package/lib/async-modules/AwaitDependenciesInitFragment.js +4 -0
- package/lib/async-modules/InferAsyncModulesPlugin.js +1 -1
- package/lib/buildChunkGraph.js +15 -0
- package/lib/cache/AddBuildDependenciesPlugin.js +2 -1
- package/lib/cache/AddManagedPathsPlugin.js +2 -1
- package/lib/cache/IdleFileCachePlugin.js +2 -1
- package/lib/cache/MemoryCachePlugin.js +1 -1
- package/lib/cache/MemoryWithGcCachePlugin.js +3 -1
- package/lib/cache/PackFileCacheStrategy.js +29 -0
- package/lib/cache/ResolverCachePlugin.js +10 -1
- package/lib/cache/getLazyHashedEtag.js +4 -0
- package/lib/cache/mergeEtags.js +2 -0
- package/lib/cli.js +30 -0
- package/lib/config/browserslistTargetHandler.js +2 -0
- package/lib/config/defaults.js +35 -2
- package/lib/config/normalization.js +12 -0
- package/lib/config/target.js +11 -0
- package/lib/container/ContainerEntryDependency.js +2 -0
- package/lib/container/ContainerEntryModule.js +12 -0
- package/lib/container/ContainerEntryModuleFactory.js +1 -0
- package/lib/container/ContainerExposedDependency.js +4 -0
- package/lib/container/ContainerPlugin.js +2 -1
- package/lib/container/ContainerReferencePlugin.js +2 -1
- package/lib/container/FallbackDependency.js +4 -0
- package/lib/container/FallbackItemDependency.js +1 -0
- package/lib/container/FallbackModule.js +12 -0
- package/lib/container/FallbackModuleFactory.js +1 -0
- package/lib/container/ModuleFederationPlugin.js +3 -1
- package/lib/container/RemoteModule.js +13 -0
- package/lib/container/RemoteRuntimeModule.js +1 -0
- package/lib/container/RemoteToExternalDependency.js +1 -0
- package/lib/container/options.js +7 -0
- package/lib/css/CssGenerator.js +35 -14
- package/lib/css/CssInjectStyleRuntimeModule.js +1 -0
- package/lib/css/CssLoadingRuntimeModule.js +1 -0
- package/lib/css/CssMergeStyleSheetsRuntimeModule.js +1 -0
- package/lib/css/CssModulesPlugin.js +69 -3
- package/lib/css/CssParser.js +59 -1
- package/lib/css/walkCssTokens.js +31 -0
- package/lib/debug/ProfilingPlugin.js +19 -1
- package/lib/dependencies/AMDDefineDependency.js +7 -0
- package/lib/dependencies/AMDDefineDependencyParserPlugin.js +12 -0
- package/lib/dependencies/AMDPlugin.js +4 -1
- package/lib/dependencies/AMDRequireArrayDependency.js +6 -0
- package/lib/dependencies/AMDRequireContextDependency.js +3 -0
- package/lib/dependencies/AMDRequireDependenciesBlock.js +1 -0
- package/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +13 -0
- package/lib/dependencies/AMDRequireDependency.js +4 -0
- package/lib/dependencies/AMDRequireItemDependency.js +1 -0
- package/lib/dependencies/AMDRuntimeModules.js +3 -0
- package/lib/dependencies/CachedConstDependency.js +6 -1
- package/lib/dependencies/CommonJsDependencyHelpers.js +1 -0
- package/lib/dependencies/CommonJsExportRequireDependency.js +8 -0
- package/lib/dependencies/CommonJsExportsDependency.js +4 -0
- package/lib/dependencies/CommonJsExportsParserPlugin.js +8 -0
- package/lib/dependencies/CommonJsFullRequireDependency.js +4 -0
- package/lib/dependencies/CommonJsImportsParserPlugin.js +20 -0
- package/lib/dependencies/CommonJsPlugin.js +4 -1
- package/lib/dependencies/CommonJsRequireContextDependency.js +3 -0
- package/lib/dependencies/CommonJsRequireDependency.js +3 -0
- package/lib/dependencies/CommonJsSelfReferenceDependency.js +5 -0
- package/lib/dependencies/ConstDependency.js +6 -1
- package/lib/dependencies/ContextDependency.js +8 -1
- package/lib/dependencies/ContextDependencyHelpers.js +3 -0
- package/lib/dependencies/ContextDependencyTemplateAsId.js +1 -0
- package/lib/dependencies/ContextDependencyTemplateAsRequireCall.js +1 -0
- package/lib/dependencies/ContextElementDependency.js +4 -0
- package/lib/dependencies/CreateRequireParserPlugin.js +6 -0
- package/lib/dependencies/CreateScriptUrlDependency.js +4 -0
- package/lib/dependencies/CriticalDependencyWarning.js +1 -0
- package/lib/dependencies/CssIcssExportDependency.js +10 -2
- package/lib/dependencies/CssIcssImportDependency.js +4 -1
- package/lib/dependencies/CssIcssSymbolDependency.js +5 -1
- package/lib/dependencies/CssImportDependency.js +4 -0
- package/lib/dependencies/CssUrlDependency.js +7 -0
- package/lib/dependencies/DelegatedSourceDependency.js +1 -0
- package/lib/dependencies/DllEntryDependency.js +3 -0
- package/lib/dependencies/DynamicExports.js +5 -0
- package/lib/dependencies/EntryDependency.js +1 -0
- package/lib/dependencies/ExportsInfoDependency.js +6 -0
- package/lib/dependencies/ExternalModuleDependency.js +5 -0
- package/lib/dependencies/ExternalModuleInitFragment.js +3 -0
- package/lib/dependencies/ExternalModuleInitFragmentDependency.js +4 -0
- package/lib/dependencies/HarmonyAcceptDependency.js +6 -0
- package/lib/dependencies/HarmonyAcceptImportDependency.js +1 -0
- package/lib/dependencies/HarmonyCompatibilityDependency.js +1 -0
- package/lib/dependencies/HarmonyDetectionParserPlugin.js +3 -0
- package/lib/dependencies/HarmonyEvaluatedImportSpecifierDependency.js +4 -0
- package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +2 -0
- package/lib/dependencies/HarmonyExportExpressionDependency.js +5 -0
- package/lib/dependencies/HarmonyExportHeaderDependency.js +4 -0
- package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +33 -2
- package/lib/dependencies/HarmonyExportInitFragment.js +6 -0
- package/lib/dependencies/HarmonyExportSpecifierDependency.js +5 -0
- package/lib/dependencies/HarmonyExports.js +2 -0
- package/lib/dependencies/HarmonyImportDependency.js +11 -0
- package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +9 -0
- package/lib/dependencies/HarmonyImportSideEffectDependency.js +4 -0
- package/lib/dependencies/HarmonyImportSpecifierDependency.js +17 -2
- package/lib/dependencies/HarmonyModulesPlugin.js +4 -1
- package/lib/dependencies/HarmonyTopLevelThisParserPlugin.js +1 -0
- package/lib/dependencies/ImportContextDependency.js +4 -0
- package/lib/dependencies/ImportDependency.js +5 -0
- package/lib/dependencies/ImportEagerDependency.js +2 -0
- package/lib/dependencies/ImportMetaContextDependency.js +1 -0
- package/lib/dependencies/ImportMetaContextDependencyParserPlugin.js +3 -0
- package/lib/dependencies/ImportMetaContextPlugin.js +2 -1
- package/lib/dependencies/ImportMetaHotAcceptDependency.js +1 -0
- package/lib/dependencies/ImportMetaHotDeclineDependency.js +1 -0
- package/lib/dependencies/ImportMetaPlugin.js +6 -0
- package/lib/dependencies/ImportParserPlugin.js +7 -0
- package/lib/dependencies/ImportPhase.js +6 -2
- package/lib/dependencies/ImportPlugin.js +2 -1
- package/lib/dependencies/ImportWeakDependency.js +2 -0
- package/lib/dependencies/JsonExportsDependency.js +6 -1
- package/lib/dependencies/LoaderDependency.js +2 -0
- package/lib/dependencies/LoaderImportDependency.js +2 -0
- package/lib/dependencies/LoaderPlugin.js +4 -1
- package/lib/dependencies/LocalModule.js +4 -0
- package/lib/dependencies/LocalModuleDependency.js +4 -0
- package/lib/dependencies/LocalModulesHelpers.js +3 -0
- package/lib/dependencies/ModuleDecoratorDependency.js +7 -1
- package/lib/dependencies/ModuleDependency.js +7 -0
- package/lib/dependencies/ModuleDependencyTemplateAsId.js +1 -0
- package/lib/dependencies/ModuleDependencyTemplateAsRequireId.js +1 -0
- package/lib/dependencies/ModuleHotAcceptDependency.js +1 -0
- package/lib/dependencies/ModuleHotDeclineDependency.js +1 -0
- package/lib/dependencies/ModuleInitFragmentDependency.js +4 -0
- package/lib/dependencies/NullDependency.js +2 -0
- package/lib/dependencies/PrefetchDependency.js +1 -0
- package/lib/dependencies/ProvidedDependency.js +6 -1
- package/lib/dependencies/PureExpressionDependency.js +7 -1
- package/lib/dependencies/RequireContextDependency.js +1 -0
- package/lib/dependencies/RequireContextDependencyParserPlugin.js +1 -0
- package/lib/dependencies/RequireContextPlugin.js +2 -1
- package/lib/dependencies/RequireEnsureDependenciesBlock.js +1 -0
- package/lib/dependencies/RequireEnsureDependenciesBlockParserPlugin.js +1 -0
- package/lib/dependencies/RequireEnsureDependency.js +4 -0
- package/lib/dependencies/RequireEnsureItemDependency.js +1 -0
- package/lib/dependencies/RequireEnsurePlugin.js +2 -1
- package/lib/dependencies/RequireHeaderDependency.js +4 -0
- package/lib/dependencies/RequireIncludeDependency.js +2 -0
- package/lib/dependencies/RequireIncludeDependencyParserPlugin.js +3 -0
- package/lib/dependencies/RequireIncludePlugin.js +2 -1
- package/lib/dependencies/RequireResolveContextDependency.js +3 -0
- package/lib/dependencies/RequireResolveDependency.js +1 -0
- package/lib/dependencies/RequireResolveHeaderDependency.js +5 -0
- package/lib/dependencies/RuntimeRequirementsDependency.js +5 -1
- package/lib/dependencies/StaticExportsDependency.js +3 -0
- package/lib/dependencies/SystemPlugin.js +4 -1
- package/lib/dependencies/SystemRuntimeModule.js +1 -0
- package/lib/dependencies/URLContextDependency.js +3 -0
- package/lib/dependencies/URLDependency.js +6 -0
- package/lib/dependencies/URLPlugin.js +2 -0
- package/lib/dependencies/UnsupportedDependency.js +4 -0
- package/lib/dependencies/WebAssemblyExportImportedDependency.js +4 -0
- package/lib/dependencies/WebAssemblyImportDependency.js +4 -1
- package/lib/dependencies/WebpackIsIncludedDependency.js +2 -0
- package/lib/dependencies/WorkerDependency.js +6 -1
- package/lib/dependencies/WorkerPlugin.js +9 -1
- package/lib/dependencies/getFunctionExpression.js +1 -0
- package/lib/dependencies/processExportInfo.js +1 -0
- package/lib/electron/ElectronTargetPlugin.js +2 -1
- package/lib/esm/ExportWebpackRequireRuntimeModule.js +2 -0
- package/lib/esm/ModuleChunkFormatPlugin.js +5 -1
- package/lib/esm/ModuleChunkLoadingPlugin.js +3 -1
- package/lib/esm/ModuleChunkLoadingRuntimeModule.js +5 -0
- package/lib/formatLocation.js +2 -0
- package/lib/hmr/HotModuleReplacementRuntimeModule.js +1 -0
- package/lib/hmr/JavascriptHotModuleReplacementHelper.js +1 -0
- package/lib/hmr/LazyCompilationPlugin.js +20 -1
- package/lib/hmr/lazyCompilationBackend.js +2 -0
- package/lib/ids/ChunkModuleIdRangePlugin.js +3 -1
- package/lib/ids/DeterministicChunkIdsPlugin.js +3 -1
- package/lib/ids/DeterministicModuleIdsPlugin.js +3 -1
- package/lib/ids/HashedModuleIdsPlugin.js +2 -1
- package/lib/ids/IdHelpers.js +20 -0
- package/lib/ids/NamedChunkIdsPlugin.js +3 -1
- package/lib/ids/NamedModuleIdsPlugin.js +3 -1
- package/lib/ids/NaturalChunkIdsPlugin.js +1 -1
- package/lib/ids/NaturalModuleIdsPlugin.js +1 -1
- package/lib/ids/OccurrenceChunkIdsPlugin.js +2 -1
- package/lib/ids/OccurrenceModuleIdsPlugin.js +4 -1
- package/lib/ids/SyncModuleIdsPlugin.js +3 -1
- package/lib/index.js +5 -0
- package/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +1 -1
- package/lib/javascript/BasicEvaluatedExpression.js +4 -2
- package/lib/javascript/ChunkFormatHelpers.js +2 -1
- package/lib/javascript/ChunkHelpers.js +1 -0
- package/lib/javascript/CommonJsChunkFormatPlugin.js +1 -1
- package/lib/javascript/EnableChunkLoadingPlugin.js +5 -1
- package/lib/javascript/JavascriptGenerator.js +10 -0
- package/lib/javascript/JavascriptModulesPlugin.js +23 -1
- package/lib/javascript/JavascriptParser.js +163 -0
- package/lib/javascript/JavascriptParserHelpers.js +6 -0
- package/lib/javascript/StartupHelpers.js +5 -0
- package/lib/json/JsonData.js +5 -0
- package/lib/json/JsonGenerator.js +21 -0
- package/lib/json/JsonModulesPlugin.js +1 -1
- package/lib/json/JsonParser.js +8 -10
- package/lib/library/AbstractLibraryPlugin.js +16 -1
- package/lib/library/AmdLibraryPlugin.js +8 -0
- package/lib/library/AssignLibraryPlugin.js +16 -0
- package/lib/library/EnableLibraryPlugin.js +7 -1
- package/lib/library/ExportPropertyLibraryPlugin.js +9 -0
- package/lib/library/JsonpLibraryPlugin.js +8 -0
- package/lib/library/ModuleLibraryPlugin.js +12 -1
- package/lib/library/SystemLibraryPlugin.js +8 -0
- package/lib/library/UmdLibraryPlugin.js +16 -0
- package/lib/logging/Logger.js +17 -0
- package/lib/logging/createConsoleLogger.js +7 -0
- package/lib/logging/runtime.js +2 -0
- package/lib/logging/truncateArgs.js +2 -0
- package/lib/node/CommonJsChunkLoadingPlugin.js +5 -1
- package/lib/node/NodeEnvironmentPlugin.js +3 -1
- package/lib/node/NodeSourcePlugin.js +1 -1
- package/lib/node/NodeTargetPlugin.js +2 -1
- package/lib/node/NodeTemplatePlugin.js +3 -1
- package/lib/node/NodeWatchFileSystem.js +2 -0
- package/lib/node/ReadFileChunkLoadingRuntimeModule.js +3 -0
- package/lib/node/ReadFileCompileAsyncWasmPlugin.js +4 -1
- package/lib/node/ReadFileCompileWasmPlugin.js +4 -1
- package/lib/node/RequireChunkLoadingRuntimeModule.js +3 -0
- package/lib/node/nodeConsole.js +3 -0
- package/lib/optimize/AggressiveMergingPlugin.js +3 -1
- package/lib/optimize/AggressiveSplittingPlugin.js +6 -1
- package/lib/optimize/ConcatenatedModule.js +11 -0
- package/lib/optimize/EnsureChunkConditionsPlugin.js +2 -1
- package/lib/optimize/FlagIncludedChunksPlugin.js +2 -1
- package/lib/optimize/InnerGraph.js +15 -0
- package/lib/optimize/InnerGraphPlugin.js +3 -1
- package/lib/optimize/LimitChunkCountPlugin.js +9 -0
- package/lib/optimize/MangleExportsPlugin.js +5 -1
- package/lib/optimize/MergeDuplicateChunksPlugin.js +2 -0
- package/lib/optimize/MinChunkSizePlugin.js +2 -1
- package/lib/optimize/MinMaxSizeWarning.js +1 -0
- package/lib/optimize/ModuleConcatenationPlugin.js +21 -1
- package/lib/optimize/RealContentHashPlugin.js +16 -1
- package/lib/optimize/RemoveEmptyChunksPlugin.js +2 -1
- package/lib/optimize/RemoveParentModulesPlugin.js +3 -1
- package/lib/optimize/RuntimeChunkPlugin.js +2 -1
- package/lib/optimize/SideEffectsFlagPlugin.js +7 -1
- package/lib/optimize/SplitChunksPlugin.js +49 -1
- package/lib/performance/AssetsOverSizeLimitWarning.js +1 -0
- package/lib/performance/EntrypointsOverSizeLimitWarning.js +1 -0
- package/lib/performance/SizeLimitsPlugin.js +7 -1
- package/lib/prefetch/ChunkPrefetchFunctionRuntimeModule.js +1 -0
- package/lib/prefetch/ChunkPrefetchPreloadPlugin.js +6 -0
- package/lib/prefetch/ChunkPrefetchStartupRuntimeModule.js +1 -0
- package/lib/prefetch/ChunkPrefetchTriggerRuntimeModule.js +1 -0
- package/lib/prefetch/ChunkPreloadTriggerRuntimeModule.js +1 -0
- package/lib/rules/BasicEffectRulePlugin.js +3 -0
- package/lib/rules/BasicMatcherRulePlugin.js +3 -0
- package/lib/rules/ObjectMatcherRulePlugin.js +3 -0
- package/lib/rules/RuleSetCompiler.js +18 -0
- package/lib/rules/UseEffectRulePlugin.js +6 -0
- package/lib/runtime/AsyncModuleRuntimeModule.js +1 -0
- package/lib/runtime/AutoPublicPathRuntimeModule.js +1 -0
- package/lib/runtime/BaseUriRuntimeModule.js +1 -0
- package/lib/runtime/ChunkNameRuntimeModule.js +1 -0
- package/lib/runtime/CompatGetDefaultExportRuntimeModule.js +1 -0
- package/lib/runtime/CompatRuntimeModule.js +2 -0
- package/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js +1 -0
- package/lib/runtime/CreateScriptRuntimeModule.js +1 -0
- package/lib/runtime/CreateScriptUrlRuntimeModule.js +1 -0
- package/lib/runtime/DefinePropertyGettersRuntimeModule.js +1 -0
- package/lib/runtime/EnsureChunkRuntimeModule.js +1 -0
- package/lib/runtime/GetChunkFilenameRuntimeModule.js +1 -0
- package/lib/runtime/GetFullHashRuntimeModule.js +1 -0
- package/lib/runtime/GetMainFilenameRuntimeModule.js +1 -0
- package/lib/runtime/GetTrustedTypesPolicyRuntimeModule.js +1 -0
- package/lib/runtime/GlobalRuntimeModule.js +1 -0
- package/lib/runtime/HasOwnPropertyRuntimeModule.js +1 -0
- package/lib/runtime/HelperRuntimeModule.js +5 -0
- package/lib/runtime/LoadScriptRuntimeModule.js +1 -0
- package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +2 -0
- package/lib/runtime/MakeNamespaceObjectRuntimeModule.js +1 -0
- package/lib/runtime/NonceRuntimeModule.js +1 -0
- package/lib/runtime/OnChunksLoadedRuntimeModule.js +1 -0
- package/lib/runtime/PublicPathRuntimeModule.js +1 -0
- package/lib/runtime/RelativeUrlRuntimeModule.js +1 -0
- package/lib/runtime/RuntimeIdRuntimeModule.js +1 -0
- package/lib/runtime/StartupChunkDependenciesPlugin.js +13 -1
- package/lib/runtime/StartupChunkDependenciesRuntimeModule.js +1 -0
- package/lib/runtime/StartupEntrypointRuntimeModule.js +1 -0
- package/lib/runtime/SystemContextRuntimeModule.js +1 -0
- package/lib/runtime/ToBinaryRuntimeModule.js +1 -0
- package/lib/schemes/DataUriPlugin.js +1 -1
- package/lib/schemes/FileUriPlugin.js +1 -1
- package/lib/schemes/HttpUriPlugin.js +43 -1
- package/lib/schemes/VirtualUrlPlugin.js +6 -1
- package/lib/serialization/AggregateErrorSerializer.js +2 -0
- package/lib/serialization/ArraySerializer.js +2 -0
- package/lib/serialization/BinaryMiddleware.js +20 -1
- package/lib/serialization/DateObjectSerializer.js +2 -0
- package/lib/serialization/ErrorObjectSerializer.js +3 -0
- package/lib/serialization/FileMiddleware.js +21 -0
- package/lib/serialization/MapObjectSerializer.js +2 -0
- package/lib/serialization/NullPrototypeObjectSerializer.js +2 -0
- package/lib/serialization/ObjectMiddleware.js +23 -0
- package/lib/serialization/PlainObjectSerializer.js +7 -0
- package/lib/serialization/RegExpObjectSerializer.js +2 -0
- package/lib/serialization/Serializer.js +5 -0
- package/lib/serialization/SerializerMiddleware.js +12 -0
- package/lib/serialization/SetObjectSerializer.js +2 -0
- package/lib/serialization/SingleItemMiddleware.js +3 -0
- package/lib/sharing/ConsumeSharedFallbackDependency.js +1 -0
- package/lib/sharing/ConsumeSharedModule.js +15 -0
- package/lib/sharing/ConsumeSharedPlugin.js +6 -1
- package/lib/sharing/ConsumeSharedRuntimeModule.js +1 -0
- package/lib/sharing/ProvideForSharedDependency.js +1 -0
- package/lib/sharing/ProvideSharedDependency.js +4 -0
- package/lib/sharing/ProvideSharedModule.js +11 -0
- package/lib/sharing/ProvideSharedModuleFactory.js +1 -0
- package/lib/sharing/ProvideSharedPlugin.js +4 -1
- package/lib/sharing/SharePlugin.js +2 -1
- package/lib/sharing/ShareRuntimeModule.js +1 -0
- package/lib/sharing/resolveMatchedConfigs.js +3 -0
- package/lib/sharing/utils.js +8 -0
- package/lib/stats/DefaultStatsFactoryPlugin.js +56 -1
- package/lib/stats/DefaultStatsPresetPlugin.js +11 -1
- package/lib/stats/DefaultStatsPrinterPlugin.js +37 -1
- package/lib/stats/StatsFactory.js +12 -0
- package/lib/stats/StatsPrinter.js +7 -0
- package/lib/url/URLParserPlugin.js +6 -0
- package/lib/util/AppendOnlyStackedSet.js +15 -0
- package/lib/util/ArrayHelpers.js +1 -0
- package/lib/util/ArrayQueue.js +10 -5
- package/lib/util/AsyncQueue.js +20 -0
- package/lib/util/IterableHelpers.js +3 -0
- package/lib/util/LazyBucketSortedSet.js +21 -0
- package/lib/util/LazySet.js +39 -0
- package/lib/util/ParallelismFactorCalculator.js +1 -0
- package/lib/util/Queue.js +6 -3
- package/lib/util/Semaphore.js +14 -1
- package/lib/util/SetHelpers.js +3 -0
- package/lib/util/SortableSet.js +6 -0
- package/lib/util/StackedCacheMap.js +20 -3
- package/lib/util/StackedMap.js +45 -0
- package/lib/util/StringXor.js +1 -1
- package/lib/util/TupleQueue.js +7 -3
- package/lib/util/TupleSet.js +13 -0
- package/lib/util/URLAbsoluteSpecifier.js +1 -0
- package/lib/util/WeakTupleMap.js +33 -0
- package/lib/util/binarySearchBounds.js +1 -0
- package/lib/util/cleverMerge.js +17 -0
- package/lib/util/comparators.js +31 -0
- package/lib/util/compileBooleanMatcher.js +9 -0
- package/lib/util/concatenate.js +6 -0
- package/lib/util/conventions.js +4 -0
- package/lib/util/dataURL.js +1 -0
- package/lib/util/deprecation.js +19 -0
- package/lib/util/deterministicGrouping.js +20 -0
- package/lib/util/extractSourceMap.js +1 -0
- package/lib/util/extractUrlAndGlobal.js +1 -0
- package/lib/util/findGraphRoots.js +5 -0
- package/lib/util/fs.js +63 -0
- package/lib/util/generateDebugId.js +1 -0
- package/lib/util/hash/BatchedHash.js +1 -0
- package/lib/util/hash/BulkUpdateHash.js +1 -0
- package/lib/util/hash/hash-digest.js +8 -0
- package/lib/util/hash/wasm-hash.js +5 -0
- package/lib/util/identifier.js +19 -0
- package/lib/util/magicComment.js +1 -0
- package/lib/util/makeSerializable.js +6 -0
- package/lib/util/memoize.js +2 -0
- package/lib/util/mimeTypes.js +176 -0
- package/lib/util/nonNumericOnlyHash.js +1 -0
- package/lib/util/parseJson.js +112 -0
- package/lib/util/processAsyncTree.js +8 -0
- package/lib/util/property.js +1 -0
- package/lib/util/registerExternalSerializer.js +20 -0
- package/lib/util/removeBOM.js +1 -0
- package/lib/util/runtime.js +32 -0
- package/lib/util/semver.js +15 -0
- package/lib/util/serialization.js +2 -0
- package/lib/util/smartGrouping.js +8 -0
- package/lib/util/source.js +2 -0
- package/lib/validateSchema.js +1 -0
- package/lib/wasm/EnableWasmLoadingPlugin.js +15 -1
- package/lib/wasm-async/AsyncWasmCompileRuntimeModule.js +1 -0
- package/lib/wasm-async/AsyncWasmLoadingRuntimeModule.js +1 -0
- package/lib/wasm-async/AsyncWebAssemblyGenerator.js +6 -0
- package/lib/wasm-async/AsyncWebAssemblyJavascriptGenerator.js +5 -0
- package/lib/wasm-async/AsyncWebAssemblyModulesPlugin.js +10 -1
- package/lib/wasm-async/AsyncWebAssemblyParser.js +1 -0
- package/lib/wasm-async/UniversalCompileAsyncWasmPlugin.js +12 -1
- package/lib/wasm-sync/UnsupportedWebAssemblyFeatureError.js +1 -0
- package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +1 -0
- package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +1 -1
- package/lib/wasm-sync/WebAssemblyGenerator.js +26 -1
- package/lib/wasm-sync/WebAssemblyInInitialChunkError.js +2 -0
- package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +4 -0
- package/lib/wasm-sync/WebAssemblyModulesPlugin.js +10 -1
- package/lib/wasm-sync/WebAssemblyParser.js +2 -0
- package/lib/wasm-sync/WebAssemblyUtils.js +2 -0
- package/lib/web/FetchCompileAsyncWasmPlugin.js +10 -1
- package/lib/web/FetchCompileWasmPlugin.js +13 -1
- package/lib/web/JsonpChunkLoadingPlugin.js +11 -1
- package/lib/web/JsonpChunkLoadingRuntimeModule.js +1 -0
- package/lib/web/JsonpTemplatePlugin.js +2 -1
- package/lib/webpack.js +10 -0
- package/lib/webworker/ImportScriptsChunkLoadingPlugin.js +10 -1
- package/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +1 -0
- package/lib/webworker/WebWorkerTemplatePlugin.js +1 -1
- package/package.json +12 -14
- package/schemas/WebpackOptions.check.js +1 -1
- package/schemas/WebpackOptions.json +44 -55
- package/types.d.ts +4594 -331
|
@@ -11,15 +11,18 @@ const DONE_MARKER = 2;
|
|
|
11
11
|
const CANDIDATE_MARKER = 3;
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
|
+
* Defines the nodes type used by this module.
|
|
14
15
|
* @template T
|
|
15
16
|
* @typedef {Set<Node<T>>} Nodes
|
|
16
17
|
*/
|
|
17
18
|
|
|
18
19
|
/**
|
|
20
|
+
* Represents the node runtime component.
|
|
19
21
|
* @template T
|
|
20
22
|
*/
|
|
21
23
|
class Node {
|
|
22
24
|
/**
|
|
25
|
+
* Creates an instance of Node.
|
|
23
26
|
* @param {T} item the value of the node
|
|
24
27
|
*/
|
|
25
28
|
constructor(item) {
|
|
@@ -48,6 +51,7 @@ class SCC {
|
|
|
48
51
|
}
|
|
49
52
|
|
|
50
53
|
/**
|
|
54
|
+
* Defines the stack entry type used by this module.
|
|
51
55
|
* @template T
|
|
52
56
|
* @typedef {object} StackEntry
|
|
53
57
|
* @property {Node<T>} node
|
|
@@ -55,6 +59,7 @@ class SCC {
|
|
|
55
59
|
*/
|
|
56
60
|
|
|
57
61
|
/**
|
|
62
|
+
* Returns graph roots of the items.
|
|
58
63
|
* @template T
|
|
59
64
|
* @param {Iterable<T>} items list of items
|
|
60
65
|
* @param {(item: T) => Iterable<T>} getDependencies function to get dependencies of an item (items that are not in list are ignored)
|
package/lib/util/fs.js
CHANGED
|
@@ -13,6 +13,7 @@ const path = require("path");
|
|
|
13
13
|
/** @typedef {import("watchpack").ExistenceOnlyTimeEntry} ExistenceOnlyTimeEntry */
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
|
+
* Defines the i stats base type used by this module.
|
|
16
17
|
* @template T
|
|
17
18
|
* @typedef {object} IStatsBase
|
|
18
19
|
* @property {() => boolean} isFile
|
|
@@ -43,14 +44,17 @@ const path = require("path");
|
|
|
43
44
|
*/
|
|
44
45
|
|
|
45
46
|
/**
|
|
47
|
+
* Defines the i stats type used by this module.
|
|
46
48
|
* @typedef {IStatsBase<number>} IStats
|
|
47
49
|
*/
|
|
48
50
|
|
|
49
51
|
/**
|
|
52
|
+
* Defines the i big int stats type used by this module.
|
|
50
53
|
* @typedef {IStatsBase<bigint> & { atimeNs: bigint, mtimeNs: bigint, ctimeNs: bigint, birthtimeNs: bigint }} IBigIntStats
|
|
51
54
|
*/
|
|
52
55
|
|
|
53
56
|
/**
|
|
57
|
+
* Defines the dirent type used by this module.
|
|
54
58
|
* @template {string | Buffer} [T=string]
|
|
55
59
|
* @typedef {object} Dirent
|
|
56
60
|
* @property {() => boolean} isFile true when is file, otherwise false
|
|
@@ -91,6 +95,7 @@ const path = require("path");
|
|
|
91
95
|
/** @typedef {Set<string>} Removals */
|
|
92
96
|
|
|
93
97
|
/**
|
|
98
|
+
* Defines the watcher info type used by this module.
|
|
94
99
|
* @typedef {object} WatcherInfo
|
|
95
100
|
* @property {Changes | null} changes get current aggregated changes that have not yet send to callback
|
|
96
101
|
* @property {Removals | null} removals get current aggregated removals that have not yet send to callback
|
|
@@ -100,6 +105,7 @@ const path = require("path");
|
|
|
100
105
|
|
|
101
106
|
// TODO webpack 6 deprecate missing getInfo
|
|
102
107
|
/**
|
|
108
|
+
* Defines the watcher type used by this module.
|
|
103
109
|
* @typedef {object} Watcher
|
|
104
110
|
* @property {() => void} close closes the watcher and all underlying file watchers
|
|
105
111
|
* @property {() => void} pause closes the watcher, but keeps underlying file watchers alive until the next watch call
|
|
@@ -111,6 +117,7 @@ const path = require("path");
|
|
|
111
117
|
*/
|
|
112
118
|
|
|
113
119
|
/**
|
|
120
|
+
* Defines the watch method callback.
|
|
114
121
|
* @callback WatchMethod
|
|
115
122
|
* @param {Iterable<string>} files watched files
|
|
116
123
|
* @param {Iterable<string>} directories watched directories
|
|
@@ -125,19 +132,23 @@ const path = require("path");
|
|
|
125
132
|
// TODO webpack 6 make optional methods required and avoid using non standard methods like `join`, `relative`, `dirname`, move IntermediateFileSystemExtras methods to InputFilesystem or OutputFilesystem
|
|
126
133
|
|
|
127
134
|
/**
|
|
135
|
+
* Defines the path like type used by this module.
|
|
128
136
|
* @typedef {string | Buffer | URL} PathLike
|
|
129
137
|
*/
|
|
130
138
|
|
|
131
139
|
/**
|
|
140
|
+
* Defines the path or file descriptor type used by this module.
|
|
132
141
|
* @typedef {PathLike | number} PathOrFileDescriptor
|
|
133
142
|
*/
|
|
134
143
|
|
|
135
144
|
/**
|
|
145
|
+
* Defines the object encoding options type used by this module.
|
|
136
146
|
* @typedef {object} ObjectEncodingOptions
|
|
137
147
|
* @property {BufferEncoding | null | undefined=} encoding
|
|
138
148
|
*/
|
|
139
149
|
|
|
140
150
|
/**
|
|
151
|
+
* Describes the read file shape.
|
|
141
152
|
* @typedef {{
|
|
142
153
|
* (path: PathOrFileDescriptor, options: ({ encoding?: null | undefined, flag?: string | undefined } & import("events").Abortable) | undefined | null, callback: BufferCallback): void,
|
|
143
154
|
* (path: PathOrFileDescriptor, options: ({ encoding: BufferEncoding, flag?: string | undefined } & import("events").Abortable) | BufferEncoding, callback: StringCallback): void,
|
|
@@ -147,6 +158,7 @@ const path = require("path");
|
|
|
147
158
|
*/
|
|
148
159
|
|
|
149
160
|
/**
|
|
161
|
+
* Describes the read file sync shape.
|
|
150
162
|
* @typedef {{
|
|
151
163
|
* (path: PathOrFileDescriptor, options?: { encoding?: null | undefined, flag?: string | undefined } | null): Buffer,
|
|
152
164
|
* (path: PathOrFileDescriptor, options: { encoding: BufferEncoding, flag?: string | undefined } | BufferEncoding): string,
|
|
@@ -155,25 +167,30 @@ const path = require("path");
|
|
|
155
167
|
*/
|
|
156
168
|
|
|
157
169
|
/**
|
|
170
|
+
* Defines the encoding option type used by this module.
|
|
158
171
|
* @typedef {ObjectEncodingOptions | BufferEncoding | undefined | null} EncodingOption
|
|
159
172
|
*/
|
|
160
173
|
|
|
161
174
|
/**
|
|
175
|
+
* Defines the buffer encoding option type used by this module.
|
|
162
176
|
* @typedef {"buffer" | { encoding: "buffer" }} BufferEncodingOption
|
|
163
177
|
*/
|
|
164
178
|
|
|
165
179
|
/**
|
|
180
|
+
* Defines the stat options type used by this module.
|
|
166
181
|
* @typedef {object} StatOptions
|
|
167
182
|
* @property {(boolean | undefined)=} bigint
|
|
168
183
|
*/
|
|
169
184
|
|
|
170
185
|
/**
|
|
186
|
+
* Defines the stat sync options type used by this module.
|
|
171
187
|
* @typedef {object} StatSyncOptions
|
|
172
188
|
* @property {(boolean | undefined)=} bigint
|
|
173
189
|
* @property {(boolean | undefined)=} throwIfNoEntry
|
|
174
190
|
*/
|
|
175
191
|
|
|
176
192
|
/**
|
|
193
|
+
* Describes the readlink shape.
|
|
177
194
|
* @typedef {{
|
|
178
195
|
* (path: PathLike, options: EncodingOption, callback: StringCallback): void,
|
|
179
196
|
* (path: PathLike, options: BufferEncodingOption, callback: BufferCallback): void,
|
|
@@ -183,6 +200,7 @@ const path = require("path");
|
|
|
183
200
|
*/
|
|
184
201
|
|
|
185
202
|
/**
|
|
203
|
+
* Describes the readlink sync shape.
|
|
186
204
|
* @typedef {{
|
|
187
205
|
* (path: PathLike, options?: EncodingOption): string,
|
|
188
206
|
* (path: PathLike, options: BufferEncodingOption): Buffer,
|
|
@@ -191,6 +209,7 @@ const path = require("path");
|
|
|
191
209
|
*/
|
|
192
210
|
|
|
193
211
|
/**
|
|
212
|
+
* Describes the readdir shape.
|
|
194
213
|
* @typedef {{
|
|
195
214
|
* (path: PathLike, options: { encoding: BufferEncoding | null, withFileTypes?: false | undefined, recursive?: boolean | undefined } | BufferEncoding | undefined | null, callback: (err: NodeJS.ErrnoException | null, files?: string[]) => void): void,
|
|
196
215
|
* (path: PathLike, options: { encoding: "buffer", withFileTypes?: false | undefined, recursive?: boolean | undefined } | "buffer", callback: (err: NodeJS.ErrnoException | null, files?: Buffer[]) => void): void,
|
|
@@ -202,6 +221,7 @@ const path = require("path");
|
|
|
202
221
|
*/
|
|
203
222
|
|
|
204
223
|
/**
|
|
224
|
+
* Describes the readdir sync shape.
|
|
205
225
|
* @typedef {{
|
|
206
226
|
* (path: PathLike, options?: { encoding: BufferEncoding | null, withFileTypes?: false | undefined, recursive?: boolean | undefined } | BufferEncoding | null): string[],
|
|
207
227
|
* (path: PathLike, options: { encoding: "buffer", withFileTypes?: false | undefined, recursive?: boolean | undefined } | "buffer"): Buffer[],
|
|
@@ -212,6 +232,7 @@ const path = require("path");
|
|
|
212
232
|
*/
|
|
213
233
|
|
|
214
234
|
/**
|
|
235
|
+
* Describes the stat shape.
|
|
215
236
|
* @typedef {{
|
|
216
237
|
* (path: PathLike, callback: StatsCallback): void,
|
|
217
238
|
* (path: PathLike, options: (StatOptions & { bigint?: false | undefined }) | undefined, callback: StatsCallback): void,
|
|
@@ -221,6 +242,7 @@ const path = require("path");
|
|
|
221
242
|
*/
|
|
222
243
|
|
|
223
244
|
/**
|
|
245
|
+
* Describes the stat sync shape.
|
|
224
246
|
* @typedef {{
|
|
225
247
|
* (path: PathLike, options?: undefined): IStats,
|
|
226
248
|
* (path: PathLike, options?: StatSyncOptions & { bigint?: false | undefined, throwIfNoEntry: false }): IStats | undefined,
|
|
@@ -233,6 +255,7 @@ const path = require("path");
|
|
|
233
255
|
*/
|
|
234
256
|
|
|
235
257
|
/**
|
|
258
|
+
* Describes the l stat shape.
|
|
236
259
|
* @typedef {{
|
|
237
260
|
* (path: PathLike, callback: StatsCallback): void,
|
|
238
261
|
* (path: PathLike, options: (StatOptions & { bigint?: false | undefined }) | undefined, callback: StatsCallback): void,
|
|
@@ -242,6 +265,7 @@ const path = require("path");
|
|
|
242
265
|
*/
|
|
243
266
|
|
|
244
267
|
/**
|
|
268
|
+
* Describes the l stat sync shape.
|
|
245
269
|
* @typedef {{
|
|
246
270
|
* (path: PathLike, options?: undefined): IStats,
|
|
247
271
|
* (path: PathLike, options?: StatSyncOptions & { bigint?: false | undefined, throwIfNoEntry: false }): IStats | undefined,
|
|
@@ -254,6 +278,7 @@ const path = require("path");
|
|
|
254
278
|
*/
|
|
255
279
|
|
|
256
280
|
/**
|
|
281
|
+
* Describes the real path shape.
|
|
257
282
|
* @typedef {{
|
|
258
283
|
* (path: PathLike, options: EncodingOption, callback: StringCallback): void,
|
|
259
284
|
* (path: PathLike, options: BufferEncodingOption, callback: BufferCallback): void,
|
|
@@ -263,6 +288,7 @@ const path = require("path");
|
|
|
263
288
|
*/
|
|
264
289
|
|
|
265
290
|
/**
|
|
291
|
+
* Describes the real path sync shape.
|
|
266
292
|
* @typedef {{
|
|
267
293
|
* (path: PathLike, options?: EncodingOption): string,
|
|
268
294
|
* (path: PathLike, options: BufferEncodingOption): Buffer,
|
|
@@ -271,18 +297,22 @@ const path = require("path");
|
|
|
271
297
|
*/
|
|
272
298
|
|
|
273
299
|
/**
|
|
300
|
+
* Defines the read json type used by this module.
|
|
274
301
|
* @typedef {(pathOrFileDescriptor: PathOrFileDescriptor, callback: ReadJsonCallback) => void} ReadJson
|
|
275
302
|
*/
|
|
276
303
|
|
|
277
304
|
/**
|
|
305
|
+
* Defines the read json sync type used by this module.
|
|
278
306
|
* @typedef {(pathOrFileDescriptor: PathOrFileDescriptor) => JsonObject} ReadJsonSync
|
|
279
307
|
*/
|
|
280
308
|
|
|
281
309
|
/**
|
|
310
|
+
* Defines the purge type used by this module.
|
|
282
311
|
* @typedef {(value?: string | string[] | Set<string>) => void} Purge
|
|
283
312
|
*/
|
|
284
313
|
|
|
285
314
|
/**
|
|
315
|
+
* Defines the input file system type used by this module.
|
|
286
316
|
* @typedef {object} InputFileSystem
|
|
287
317
|
* @property {ReadFile} readFile
|
|
288
318
|
* @property {ReadFileSync=} readFileSync
|
|
@@ -305,14 +335,17 @@ const path = require("path");
|
|
|
305
335
|
*/
|
|
306
336
|
|
|
307
337
|
/**
|
|
338
|
+
* Defines the mode type used by this module.
|
|
308
339
|
* @typedef {number | string} Mode
|
|
309
340
|
*/
|
|
310
341
|
|
|
311
342
|
/**
|
|
343
|
+
* Defines the write file options type used by this module.
|
|
312
344
|
* @typedef {(ObjectEncodingOptions & import("events").Abortable & { mode?: Mode | undefined, flag?: string | undefined, flush?: boolean | undefined }) | BufferEncoding | null} WriteFileOptions
|
|
313
345
|
*/
|
|
314
346
|
|
|
315
347
|
/**
|
|
348
|
+
* Describes the write file shape.
|
|
316
349
|
* @typedef {{
|
|
317
350
|
* (file: PathOrFileDescriptor, data: string | NodeJS.ArrayBufferView, options: WriteFileOptions, callback: NoParamCallback): void,
|
|
318
351
|
* (file: PathOrFileDescriptor, data: string | NodeJS.ArrayBufferView, callback: NoParamCallback): void,
|
|
@@ -320,10 +353,12 @@ const path = require("path");
|
|
|
320
353
|
*/
|
|
321
354
|
|
|
322
355
|
/**
|
|
356
|
+
* Defines the make directory options type used by this module.
|
|
323
357
|
* @typedef {{ recursive?: boolean | undefined, mode?: Mode | undefined }} MakeDirectoryOptions
|
|
324
358
|
*/
|
|
325
359
|
|
|
326
360
|
/**
|
|
361
|
+
* Describes the mkdir shape.
|
|
327
362
|
* @typedef {{
|
|
328
363
|
* (file: PathLike, options: MakeDirectoryOptions & { recursive: true }, callback: StringCallback): void,
|
|
329
364
|
* (file: PathLike, options: Mode | (MakeDirectoryOptions & { recursive?: false | undefined }) | null | undefined, callback: NoParamCallback): void,
|
|
@@ -333,26 +368,32 @@ const path = require("path");
|
|
|
333
368
|
*/
|
|
334
369
|
|
|
335
370
|
/**
|
|
371
|
+
* Defines the rmdir type used by this module.
|
|
336
372
|
* @typedef {{ (file: PathLike, callback: NoParamCallback): void }} Rmdir
|
|
337
373
|
*/
|
|
338
374
|
|
|
339
375
|
/**
|
|
376
|
+
* Defines the unlink type used by this module.
|
|
340
377
|
* @typedef {(pathLike: PathLike, callback: NoParamCallback) => void} Unlink
|
|
341
378
|
*/
|
|
342
379
|
|
|
343
380
|
/**
|
|
381
|
+
* Defines the create read stream fs implementation type used by this module.
|
|
344
382
|
* @typedef {FSImplementation & { read: (...args: EXPECTED_ANY[]) => EXPECTED_ANY }} CreateReadStreamFSImplementation
|
|
345
383
|
*/
|
|
346
384
|
|
|
347
385
|
/**
|
|
386
|
+
* Defines the read stream options type used by this module.
|
|
348
387
|
* @typedef {StreamOptions & { fs?: CreateReadStreamFSImplementation | null | undefined, end?: number | undefined }} ReadStreamOptions
|
|
349
388
|
*/
|
|
350
389
|
|
|
351
390
|
/**
|
|
391
|
+
* Defines the create read stream type used by this module.
|
|
352
392
|
* @typedef {(path: PathLike, options?: BufferEncoding | ReadStreamOptions) => NodeJS.ReadableStream} CreateReadStream
|
|
353
393
|
*/
|
|
354
394
|
|
|
355
395
|
/**
|
|
396
|
+
* Defines the output file system type used by this module.
|
|
356
397
|
* @typedef {object} OutputFileSystem
|
|
357
398
|
* @property {Mkdir} mkdir
|
|
358
399
|
* @property {Readdir=} readdir
|
|
@@ -369,11 +410,13 @@ const path = require("path");
|
|
|
369
410
|
*/
|
|
370
411
|
|
|
371
412
|
/**
|
|
413
|
+
* Defines the watch file system type used by this module.
|
|
372
414
|
* @typedef {object} WatchFileSystem
|
|
373
415
|
* @property {WatchMethod} watch
|
|
374
416
|
*/
|
|
375
417
|
|
|
376
418
|
/**
|
|
419
|
+
* Describes the mkdir sync shape.
|
|
377
420
|
* @typedef {{
|
|
378
421
|
* (path: PathLike, options: MakeDirectoryOptions & { recursive: true }): string | undefined,
|
|
379
422
|
* (path: PathLike, options?: Mode | (MakeDirectoryOptions & { recursive?: false | undefined }) | null): void,
|
|
@@ -382,6 +425,7 @@ const path = require("path");
|
|
|
382
425
|
*/
|
|
383
426
|
|
|
384
427
|
/**
|
|
428
|
+
* Defines the stream options type used by this module.
|
|
385
429
|
* @typedef {object} StreamOptions
|
|
386
430
|
* @property {(string | undefined)=} flags
|
|
387
431
|
* @property {(BufferEncoding | undefined)} encoding
|
|
@@ -394,28 +438,34 @@ const path = require("path");
|
|
|
394
438
|
*/
|
|
395
439
|
|
|
396
440
|
/**
|
|
441
|
+
* Defines the fs implementation type used by this module.
|
|
397
442
|
* @typedef {object} FSImplementation
|
|
398
443
|
* @property {((...args: EXPECTED_ANY[]) => EXPECTED_ANY)=} open
|
|
399
444
|
* @property {((...args: EXPECTED_ANY[]) => EXPECTED_ANY)=} close
|
|
400
445
|
*/
|
|
401
446
|
|
|
402
447
|
/**
|
|
448
|
+
* Defines the create write stream fs implementation type used by this module.
|
|
403
449
|
* @typedef {FSImplementation & { write: (...args: EXPECTED_ANY[]) => EXPECTED_ANY, close?: (...args: EXPECTED_ANY[]) => EXPECTED_ANY }} CreateWriteStreamFSImplementation
|
|
404
450
|
*/
|
|
405
451
|
|
|
406
452
|
/**
|
|
453
|
+
* Defines the write stream options type used by this module.
|
|
407
454
|
* @typedef {StreamOptions & { fs?: CreateWriteStreamFSImplementation | null | undefined, flush?: boolean | undefined }} WriteStreamOptions
|
|
408
455
|
*/
|
|
409
456
|
|
|
410
457
|
/**
|
|
458
|
+
* Defines the create write stream type used by this module.
|
|
411
459
|
* @typedef {(pathLike: PathLike, result?: BufferEncoding | WriteStreamOptions) => NodeJS.WritableStream} CreateWriteStream
|
|
412
460
|
*/
|
|
413
461
|
|
|
414
462
|
/**
|
|
463
|
+
* Defines the open mode type used by this module.
|
|
415
464
|
* @typedef {number | string} OpenMode
|
|
416
465
|
*/
|
|
417
466
|
|
|
418
467
|
/**
|
|
468
|
+
* Describes the open shape.
|
|
419
469
|
* @typedef {{
|
|
420
470
|
* (file: PathLike, flags: OpenMode | undefined, mode: Mode | undefined | null, callback: NumberCallback): void,
|
|
421
471
|
* (file: PathLike, flags: OpenMode | undefined, callback: NumberCallback): void,
|
|
@@ -424,10 +474,12 @@ const path = require("path");
|
|
|
424
474
|
*/
|
|
425
475
|
|
|
426
476
|
/**
|
|
477
|
+
* Defines the read position type used by this module.
|
|
427
478
|
* @typedef {number | bigint} ReadPosition
|
|
428
479
|
*/
|
|
429
480
|
|
|
430
481
|
/**
|
|
482
|
+
* Defines the read sync options type used by this module.
|
|
431
483
|
* @typedef {object} ReadSyncOptions
|
|
432
484
|
* @property {(number | undefined)=} offset
|
|
433
485
|
* @property {(number | undefined)=} length
|
|
@@ -435,6 +487,7 @@ const path = require("path");
|
|
|
435
487
|
*/
|
|
436
488
|
|
|
437
489
|
/**
|
|
490
|
+
* Defines the read async options type used by this module.
|
|
438
491
|
* @template {NodeJS.ArrayBufferView} TBuffer
|
|
439
492
|
* @typedef {object} ReadAsyncOptions
|
|
440
493
|
* @property {(number | undefined)=} offset
|
|
@@ -444,6 +497,7 @@ const path = require("path");
|
|
|
444
497
|
*/
|
|
445
498
|
|
|
446
499
|
/**
|
|
500
|
+
* Defines the shared type used by this module.
|
|
447
501
|
* @template {NodeJS.ArrayBufferView} [TBuffer=NodeJS.ArrayBufferView]
|
|
448
502
|
* @typedef {{
|
|
449
503
|
* (fd: number, buffer: TBuffer, offset: number, length: number, position: ReadPosition | null, callback: (err: NodeJS.ErrnoException | null, bytesRead: number, buffer: TBuffer) => void): void,
|
|
@@ -457,6 +511,7 @@ const path = require("path");
|
|
|
457
511
|
/** @typedef {(a: PathLike, b: PathLike, callback: NoParamCallback) => void} Rename */
|
|
458
512
|
|
|
459
513
|
/**
|
|
514
|
+
* Defines the intermediate file system extras type used by this module.
|
|
460
515
|
* @typedef {object} IntermediateFileSystemExtras
|
|
461
516
|
* @property {MkdirSync} mkdirSync
|
|
462
517
|
* @property {CreateWriteStream} createWriteStream
|
|
@@ -469,6 +524,7 @@ const path = require("path");
|
|
|
469
524
|
/** @typedef {InputFileSystem & OutputFileSystem & IntermediateFileSystemExtras} IntermediateFileSystem */
|
|
470
525
|
|
|
471
526
|
/**
|
|
527
|
+
* Returns location of targetPath relative to rootPath.
|
|
472
528
|
* @param {InputFileSystem | OutputFileSystem | undefined} fs a file system
|
|
473
529
|
* @param {string} rootPath the root path
|
|
474
530
|
* @param {string} targetPath the target path
|
|
@@ -488,6 +544,7 @@ const relative = (fs, rootPath, targetPath) => {
|
|
|
488
544
|
};
|
|
489
545
|
|
|
490
546
|
/**
|
|
547
|
+
* Returns the joined path.
|
|
491
548
|
* @param {InputFileSystem | OutputFileSystem | undefined} fs a file system
|
|
492
549
|
* @param {string} rootPath a path
|
|
493
550
|
* @param {string} filename a filename
|
|
@@ -507,6 +564,7 @@ const join = (fs, rootPath, filename) => {
|
|
|
507
564
|
};
|
|
508
565
|
|
|
509
566
|
/**
|
|
567
|
+
* Returns the parent directory of the absolute path.
|
|
510
568
|
* @param {InputFileSystem | OutputFileSystem | undefined} fs a file system
|
|
511
569
|
* @param {string} absPath an absolute path
|
|
512
570
|
* @returns {string} the parent directory of the absolute path
|
|
@@ -525,6 +583,7 @@ const dirname = (fs, absPath) => {
|
|
|
525
583
|
};
|
|
526
584
|
|
|
527
585
|
/**
|
|
586
|
+
* Processes the provided f.
|
|
528
587
|
* @param {OutputFileSystem} fs a file system
|
|
529
588
|
* @param {string} p an absolute path
|
|
530
589
|
* @param {(err?: Error) => void} callback callback function for the error
|
|
@@ -569,6 +628,7 @@ const mkdirp = (fs, p, callback) => {
|
|
|
569
628
|
};
|
|
570
629
|
|
|
571
630
|
/**
|
|
631
|
+
* Processes the provided f.
|
|
572
632
|
* @param {IntermediateFileSystem} fs a file system
|
|
573
633
|
* @param {string} p an absolute path
|
|
574
634
|
* @returns {void}
|
|
@@ -595,6 +655,7 @@ const mkdirpSync = (fs, p) => {
|
|
|
595
655
|
};
|
|
596
656
|
|
|
597
657
|
/**
|
|
658
|
+
* Processes the provided f.
|
|
598
659
|
* @param {InputFileSystem} fs a file system
|
|
599
660
|
* @param {string} p an absolute path
|
|
600
661
|
* @param {ReadJsonCallback} callback callback
|
|
@@ -620,6 +681,7 @@ const readJson = (fs, p, callback) => {
|
|
|
620
681
|
};
|
|
621
682
|
|
|
622
683
|
/**
|
|
684
|
+
* Lstat readlink absolute.
|
|
623
685
|
* @param {InputFileSystem} fs a file system
|
|
624
686
|
* @param {string} p an absolute path
|
|
625
687
|
* @param {(err: NodeJS.ErrnoException | Error | null, stats?: IStats | string) => void} callback callback
|
|
@@ -659,6 +721,7 @@ const lstatReadlinkAbsolute = (fs, p, callback) => {
|
|
|
659
721
|
};
|
|
660
722
|
|
|
661
723
|
/**
|
|
724
|
+
* Checks whether this object is absolute.
|
|
662
725
|
* @param {string} pathname a path
|
|
663
726
|
* @returns {boolean} is absolute
|
|
664
727
|
*/
|
|
@@ -61,6 +61,7 @@ const encode = (buffer, base) => {
|
|
|
61
61
|
};
|
|
62
62
|
|
|
63
63
|
/**
|
|
64
|
+
* Returns buffer.
|
|
64
65
|
* @param {string} data string
|
|
65
66
|
* @param {Base} base base
|
|
66
67
|
* @returns {Buffer} buffer
|
|
@@ -100,6 +101,7 @@ const decode = (data, base) => {
|
|
|
100
101
|
// Compatibility with the old hash libraries, they can return different structures, so let's stringify them firstly
|
|
101
102
|
|
|
102
103
|
/**
|
|
104
|
+
* Returns a string representation.
|
|
103
105
|
* @param {string | { toString: (radix: number) => string }} value value
|
|
104
106
|
* @param {string} encoding encoding
|
|
105
107
|
* @returns {string} string
|
|
@@ -113,6 +115,7 @@ const toString = (value, encoding) =>
|
|
|
113
115
|
);
|
|
114
116
|
|
|
115
117
|
/**
|
|
118
|
+
* Returns buffer.
|
|
116
119
|
* @param {Buffer | { toString: (radix: number) => string }} value value
|
|
117
120
|
* @returns {Buffer} buffer
|
|
118
121
|
*/
|
|
@@ -128,6 +131,7 @@ try {
|
|
|
128
131
|
}
|
|
129
132
|
|
|
130
133
|
/**
|
|
134
|
+
* Processes the provided hash.
|
|
131
135
|
* @param {Hash} hash hash
|
|
132
136
|
* @param {string | Buffer} data data
|
|
133
137
|
* @param {Encoding=} encoding encoding of the return value
|
|
@@ -159,11 +163,13 @@ const update = (hash, data, encoding) => {
|
|
|
159
163
|
};
|
|
160
164
|
|
|
161
165
|
/**
|
|
166
|
+
* Returns digest.
|
|
162
167
|
* @overload
|
|
163
168
|
* @param {Hash} hash hash
|
|
164
169
|
* @returns {Buffer} digest
|
|
165
170
|
*/
|
|
166
171
|
/**
|
|
172
|
+
* Returns digest.
|
|
167
173
|
* @overload
|
|
168
174
|
* @param {Hash} hash hash
|
|
169
175
|
* @param {undefined} encoding encoding of the return value
|
|
@@ -171,6 +177,7 @@ const update = (hash, data, encoding) => {
|
|
|
171
177
|
* @returns {Buffer} digest
|
|
172
178
|
*/
|
|
173
179
|
/**
|
|
180
|
+
* Returns digest.
|
|
174
181
|
* @overload
|
|
175
182
|
* @param {Hash} hash hash
|
|
176
183
|
* @param {Encoding} encoding encoding of the return value
|
|
@@ -178,6 +185,7 @@ const update = (hash, data, encoding) => {
|
|
|
178
185
|
* @returns {string} digest
|
|
179
186
|
*/
|
|
180
187
|
/**
|
|
188
|
+
* Returns digest.
|
|
181
189
|
* @param {Hash} hash hash
|
|
182
190
|
* @param {Encoding=} encoding encoding of the return value
|
|
183
191
|
* @param {boolean=} isSafe true when we await right types from digest(), otherwise false
|
|
@@ -14,6 +14,7 @@ const Hash = require("../Hash");
|
|
|
14
14
|
const MAX_SHORT_STRING = Math.floor((65536 - 64) / 4) & ~3;
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
|
+
* Represents the wasm hash runtime component.
|
|
17
18
|
* @typedef {object} WasmExports
|
|
18
19
|
* @property {WebAssembly.Memory} memory
|
|
19
20
|
* @property {() => void} init
|
|
@@ -23,6 +24,7 @@ const MAX_SHORT_STRING = Math.floor((65536 - 64) / 4) & ~3;
|
|
|
23
24
|
|
|
24
25
|
class WasmHash extends Hash {
|
|
25
26
|
/**
|
|
27
|
+
* Creates an instance of WasmHash.
|
|
26
28
|
* @param {WebAssembly.Instance} instance wasm instance
|
|
27
29
|
* @param {WebAssembly.Instance[]} instancesPool pool of instances
|
|
28
30
|
* @param {number} chunkSize size of data chunks passed to wasm
|
|
@@ -93,6 +95,7 @@ class WasmHash extends Hash {
|
|
|
93
95
|
}
|
|
94
96
|
|
|
95
97
|
/**
|
|
98
|
+
* Update with short string.
|
|
96
99
|
* @param {string} data data
|
|
97
100
|
* @param {BufferEncoding=} encoding encoding
|
|
98
101
|
* @returns {void}
|
|
@@ -143,6 +146,7 @@ class WasmHash extends Hash {
|
|
|
143
146
|
}
|
|
144
147
|
|
|
145
148
|
/**
|
|
149
|
+
* Update with buffer.
|
|
146
150
|
* @param {Buffer} data data
|
|
147
151
|
* @returns {void}
|
|
148
152
|
*/
|
|
@@ -206,6 +210,7 @@ class WasmHash extends Hash {
|
|
|
206
210
|
}
|
|
207
211
|
|
|
208
212
|
/**
|
|
213
|
+
* Returns wasm hash.
|
|
209
214
|
* @param {WebAssembly.Module} wasmModule wasm module
|
|
210
215
|
* @param {WasmHash[]} instancesPool pool of instances
|
|
211
216
|
* @param {number} chunkSize size of data chunks passed to wasm
|