@depup/webpack 5.109.2-depup.0 → 5.110.3-depup.0
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/README.md +5 -5
- package/changes.json +7 -7
- package/lib/APIPlugin.js +123 -17
- package/lib/AsyncDependenciesBlock.js +10 -7
- package/lib/AutomaticPrefetchPlugin.js +1 -1
- package/lib/BannerPlugin.js +10 -6
- package/lib/CacheFacade.js +6 -6
- package/lib/Chunk.js +14 -11
- package/lib/ChunkGraph.js +46 -35
- package/lib/ChunkGroup.js +7 -7
- package/lib/ChunkTemplate.js +35 -44
- package/lib/CircularModulesPlugin.js +205 -28
- package/lib/CleanPlugin.js +4 -7
- package/lib/CodeGenerationResults.js +11 -8
- package/lib/CompatibilityPlugin.js +7 -7
- package/lib/Compilation.js +688 -409
- package/lib/Compiler.js +53 -38
- package/lib/ConcatenationScope.js +107 -8
- package/lib/ConditionalInitFragment.js +3 -3
- package/lib/ConstPlugin.js +13 -11
- package/lib/ContextExclusionPlugin.js +1 -1
- package/lib/ContextModule.js +146 -54
- package/lib/ContextModuleFactory.js +46 -14
- package/lib/ContextReplacementPlugin.js +12 -14
- package/lib/DefinePlugin.js +121 -37
- package/lib/DependenciesBlock.js +9 -6
- package/lib/Dependency.js +36 -16
- package/lib/DependencyTemplate.js +11 -12
- package/lib/DependencyTemplates.js +3 -3
- package/lib/DotenvPlugin.js +91 -26
- package/lib/DynamicEntryPlugin.js +8 -4
- package/lib/EntryOptionPlugin.js +8 -4
- package/lib/EntryPlugin.js +2 -2
- package/lib/Entrypoint.js +6 -2
- package/lib/EnvironmentPlugin.js +2 -2
- package/lib/EvalDevToolModulePlugin.js +8 -4
- package/lib/EvalSourceMapDevToolPlugin.js +15 -8
- package/lib/ExportsInfo.js +111 -14
- package/lib/ExportsInfoApiPlugin.js +2 -4
- package/lib/ExternalModule.js +232 -77
- package/lib/ExternalModuleFactoryPlugin.js +97 -38
- package/lib/ExternalsPlugin.js +10 -6
- package/lib/FileSystemInfo.js +44 -70
- package/lib/FlagAllModulesAsUsedPlugin.js +2 -3
- package/lib/FlagDependencyExportsPlugin.js +76 -19
- package/lib/FlagDependencyUsagePlugin.js +40 -49
- package/lib/FlagEntryExportAsUsedPlugin.js +1 -1
- package/lib/Generator.js +36 -15
- package/lib/HotModuleReplacementPlugin.js +16 -44
- package/lib/IgnorePlugin.js +8 -4
- package/lib/IgnoreWarningsPlugin.js +2 -2
- package/lib/InitFragment.js +8 -4
- package/lib/JavascriptMetaInfoPlugin.js +35 -4
- package/lib/LazyBarrel.js +3 -4
- package/lib/LibraryTemplatePlugin.js +10 -6
- package/lib/LoaderOptionsPlugin.js +7 -3
- package/lib/LoaderTargetPlugin.js +1 -1
- package/lib/MainTemplate.js +49 -42
- package/lib/ManifestPlugin.js +12 -11
- package/lib/Module.js +62 -33
- package/lib/ModuleFactory.js +3 -3
- package/lib/ModuleFilenameHelpers.js +9 -4
- package/lib/ModuleGraph.js +195 -21
- package/lib/ModuleGraphConnection.js +6 -13
- package/lib/ModuleInfoHeaderPlugin.js +8 -10
- package/lib/ModuleTemplate.js +62 -63
- package/lib/MultiCompiler.js +130 -64
- package/lib/MultiStats.js +40 -9
- package/lib/MultiWatching.js +3 -3
- package/lib/NoEmitOnErrorsPlugin.js +1 -1
- package/lib/NodeStuffPlugin.js +29 -19
- package/lib/NormalModule.js +152 -103
- package/lib/NormalModuleFactory.js +555 -110
- package/lib/NormalModuleReplacementPlugin.js +5 -8
- package/lib/NullFactory.js +6 -2
- package/lib/OptionsApply.js +7 -3
- package/lib/Parser.js +7 -3
- package/lib/PlatformPlugin.js +2 -2
- package/lib/PrefetchPlugin.js +1 -1
- package/lib/ProgressPlugin.js +16 -13
- package/lib/ProvidePlugin.js +3 -5
- package/lib/RawModule.js +25 -17
- package/lib/RecordIdsPlugin.js +3 -3
- package/lib/RequestShortener.js +1 -1
- package/lib/ResolverFactory.js +2 -2
- package/lib/RuntimeGlobals.js +22 -10
- package/lib/RuntimeModule.js +29 -19
- package/lib/RuntimePlugin.js +335 -169
- package/lib/RuntimeTemplate.js +2761 -316
- package/lib/SelfModuleFactory.js +7 -3
- package/lib/SourceMapDevToolModuleOptionsPlugin.js +6 -2
- package/lib/SourceMapDevToolPlugin.js +30 -20
- package/lib/Stats.js +3 -4
- package/lib/Template.js +32 -22
- package/lib/TemplatedPathPlugin.js +96 -14
- package/lib/UseStrictPlugin.js +4 -6
- package/lib/WarnCaseSensitiveModulesPlugin.js +4 -4
- package/lib/WarnDeprecatedOptionPlugin.js +1 -1
- package/lib/WarnNoModeSetPlugin.js +1 -1
- package/lib/WatchIgnorePlugin.js +8 -6
- package/lib/Watching.js +8 -8
- package/lib/WebpackIsIncludedPlugin.js +2 -4
- package/lib/WebpackOptionsApply.js +308 -18
- package/lib/WebpackOptionsDefaulter.js +6 -2
- package/lib/asset/AssetBytesGenerator.js +12 -10
- package/lib/asset/AssetBytesParser.js +2 -4
- package/lib/asset/AssetGenerator.js +188 -95
- package/lib/asset/AssetModule.js +7 -3
- package/lib/asset/AssetModulesPlugin.js +110 -38
- package/lib/asset/AssetParser.js +9 -7
- package/lib/asset/AssetSourceGenerator.js +60 -13
- package/lib/asset/AssetSourceParser.js +2 -4
- package/lib/asset/RawDataUrlModule.js +24 -16
- package/lib/asset/WebManifestGenerator.js +8 -10
- package/lib/asset/WebManifestParser.js +24 -10
- package/lib/async-modules/AsyncModuleHelpers.js +12 -6
- package/lib/async-modules/AwaitDependenciesInitFragment.js +2 -2
- package/lib/async-modules/InferAsyncModulesPlugin.js +2 -2
- package/lib/async-modules/isGeneratorLowered.js +4 -4
- package/lib/buildChunkGraph.js +36 -27
- package/lib/bun/BunTargetPlugin.js +1 -1
- package/lib/cache/AddBuildDependenciesPlugin.js +1 -1
- package/lib/cache/AddManagedPathsPlugin.js +1 -1
- package/lib/cache/IdleFileCachePlugin.js +2 -2
- package/lib/cache/MemoryCachePlugin.js +18 -10
- package/lib/cache/MemoryWithGcCachePlugin.js +34 -22
- package/lib/cache/PackFileCacheStrategy.js +30 -23
- package/lib/cache/ResolverCachePlugin.js +38 -18
- package/lib/cache/getLazyHashedEtag.js +1 -2
- package/lib/cache/mergeEtags.js +1 -1
- package/lib/cli.js +1 -3
- package/lib/config/browserslistTargetHandler.js +41 -5
- package/lib/config/defaults.js +270 -78
- package/lib/config/defineConfig.js +10 -2
- package/lib/config/getClaimedAssetTypes.js +65 -0
- package/lib/config/normalization.js +46 -16
- package/lib/config/target.js +46 -3
- package/lib/container/ContainerEntryDependency.js +1 -1
- package/lib/container/ContainerEntryModule.js +24 -15
- package/lib/container/ContainerEntryModuleFactory.js +7 -3
- package/lib/container/ContainerPlugin.js +9 -10
- package/lib/container/ContainerReferencePlugin.js +6 -2
- package/lib/container/FallbackDependency.js +1 -1
- package/lib/container/FallbackModule.js +24 -17
- package/lib/container/FallbackModuleFactory.js +7 -3
- package/lib/container/HoistContainerReferencesPlugin.js +6 -11
- package/lib/container/ModuleFederationPlugin.js +7 -24
- package/lib/container/RemoteModule.js +27 -19
- package/lib/container/RemoteRuntimeModule.js +10 -8
- package/lib/container/moduleFederationHooks.js +32 -0
- package/lib/css/CssGenerator.js +171 -43
- package/lib/css/CssInjectStyleRuntimeModule.js +7 -5
- package/lib/css/CssLoadingRuntimeModule.js +84 -32
- package/lib/css/CssModule.js +10 -7
- package/lib/css/CssModulesPlugin.js +172 -100
- package/lib/css/CssParser.js +1113 -568
- package/lib/css/CssServerStylesRuntimeModule.js +54 -0
- package/lib/css/cssMinify.js +168 -0
- package/lib/css/data.js +5334 -0
- package/lib/css/syntax.js +9647 -232
- package/lib/debug/ProfilingPlugin.js +14 -9
- package/lib/deno/DenoTargetPlugin.js +1 -1
- package/lib/dependencies/AMDDefineDependency.js +112 -87
- package/lib/dependencies/AMDDefineDependencyParserPlugin.js +30 -17
- package/lib/dependencies/AMDPlugin.js +9 -7
- package/lib/dependencies/AMDRequireArrayDependency.js +5 -5
- package/lib/dependencies/AMDRequireContextDependency.js +2 -2
- package/lib/dependencies/AMDRequireDependenciesBlock.js +1 -1
- package/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +25 -14
- package/lib/dependencies/AMDRequireDependency.js +8 -7
- package/lib/dependencies/AMDRequireItemDependency.js +1 -1
- package/lib/dependencies/AMDRuntimeModules.js +21 -1
- package/lib/dependencies/BuildTimeConstDependency.js +102 -0
- package/lib/dependencies/CachedConstDependency.js +11 -8
- package/lib/dependencies/CommonJsDependencyHelpers.js +67 -46
- package/lib/dependencies/CommonJsExportRequireDependency.js +121 -45
- package/lib/dependencies/CommonJsExportsDependency.js +53 -49
- package/lib/dependencies/CommonJsExportsParserPlugin.js +207 -25
- package/lib/dependencies/CommonJsFullRequireDependency.js +119 -34
- package/lib/dependencies/CommonJsImportsParserPlugin.js +100 -50
- package/lib/dependencies/CommonJsObjectExportDependency.js +188 -0
- package/lib/dependencies/CommonJsPlugin.js +35 -6
- package/lib/dependencies/CommonJsRequireContextDependency.js +5 -6
- package/lib/dependencies/CommonJsRequireDependency.js +170 -27
- package/lib/dependencies/CommonJsSelfReferenceDependency.js +63 -38
- package/lib/dependencies/ConstDependency.js +8 -9
- package/lib/dependencies/ContextDependency.js +12 -8
- package/lib/dependencies/ContextDependencyHelpers.js +14 -9
- package/lib/dependencies/ContextDependencyTemplateAsId.js +4 -4
- package/lib/dependencies/ContextDependencyTemplateAsRequireCall.js +24 -11
- package/lib/dependencies/ContextElementDependency.js +31 -12
- package/lib/dependencies/CreateRequireParserPlugin.js +12 -7
- package/lib/dependencies/CreateScriptUrlDependency.js +4 -4
- package/lib/dependencies/CssIcssExportDependency.js +56 -28
- package/lib/dependencies/CssIcssImportDependency.js +17 -13
- package/lib/dependencies/CssIcssSymbolDependency.js +9 -10
- package/lib/dependencies/CssImportDependency.js +18 -9
- package/lib/dependencies/CssUrlDependency.js +17 -13
- package/lib/dependencies/DllEntryDependency.js +1 -1
- package/lib/dependencies/DynamicExports.js +2 -2
- package/lib/dependencies/ExportBindingInitFragment.js +36 -9
- package/lib/dependencies/ExportsInfoDependency.js +7 -8
- package/lib/dependencies/ExternalModuleDependency.js +9 -5
- package/lib/dependencies/ExternalModuleInitFragment.js +2 -2
- package/lib/dependencies/ExternalModuleInitFragmentDependency.js +8 -5
- package/lib/dependencies/HarmonyAcceptDependency.js +5 -5
- package/lib/dependencies/HarmonyCompatibilityDependency.js +52 -17
- package/lib/dependencies/HarmonyDetectionParserPlugin.js +11 -7
- package/lib/dependencies/HarmonyEvaluatedImportSpecifierDependency.js +23 -14
- package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +80 -12
- package/lib/dependencies/HarmonyExportExpressionDependency.js +23 -18
- package/lib/dependencies/HarmonyExportHeaderDependency.js +7 -7
- package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +286 -80
- package/lib/dependencies/HarmonyExportInitFragment.js +18 -6
- package/lib/dependencies/HarmonyExportSpecifierDependency.js +51 -14
- package/lib/dependencies/HarmonyExports.js +7 -4
- package/lib/dependencies/HarmonyImportDependency.js +121 -60
- package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +124 -38
- package/lib/dependencies/HarmonyImportGuard.js +20 -30
- package/lib/dependencies/HarmonyImportSideEffectDependency.js +152 -9
- package/lib/dependencies/HarmonyImportSpecifierDependency.js +97 -49
- package/lib/dependencies/HarmonyModulesPlugin.js +7 -3
- package/lib/dependencies/HarmonyTopLevelThisParserPlugin.js +1 -3
- package/lib/dependencies/HtmlEntryDependency.js +49 -31
- package/lib/dependencies/HtmlInlineHtmlDependency.js +7 -8
- package/lib/dependencies/HtmlInlineScriptDependency.js +11 -8
- package/lib/dependencies/HtmlInlineStyleDependency.js +7 -10
- package/lib/dependencies/HtmlSourceDependency.js +22 -14
- package/lib/dependencies/ImportContextDependency.js +45 -5
- package/lib/dependencies/ImportDependency.js +33 -50
- package/lib/dependencies/ImportEagerDependency.js +6 -9
- package/lib/dependencies/ImportMetaContextDependency.js +2 -2
- package/lib/dependencies/ImportMetaContextDependencyParserPlugin.js +14 -13
- package/lib/dependencies/ImportMetaContextPlugin.js +7 -3
- package/lib/dependencies/ImportMetaGlobDependency.js +2 -2
- package/lib/dependencies/ImportMetaGlobDependencyParserPlugin.js +2 -3
- package/lib/dependencies/ImportMetaGlobHelpers.js +19 -22
- package/lib/dependencies/ImportMetaHotAcceptDependency.js +1 -1
- package/lib/dependencies/ImportMetaHotDeclineDependency.js +1 -1
- package/lib/dependencies/ImportMetaPlugin.js +154 -71
- package/lib/dependencies/ImportMetaResolveDependency.js +3 -4
- package/lib/dependencies/ImportParserPlugin.js +73 -49
- package/lib/dependencies/ImportPhase.js +12 -5
- package/lib/dependencies/ImportPlugin.js +7 -3
- package/lib/dependencies/ImportWeakDependency.js +6 -9
- package/lib/dependencies/JsonExportsDependency.js +11 -7
- package/lib/dependencies/LoaderDependency.js +2 -2
- package/lib/dependencies/LoaderImportDependency.js +2 -2
- package/lib/dependencies/LoaderPlugin.js +11 -7
- package/lib/dependencies/LocalModuleDependency.js +5 -5
- package/lib/dependencies/LocalModulesHelpers.js +1 -1
- package/lib/dependencies/ModuleDecoratorDependency.js +6 -7
- package/lib/dependencies/ModuleDependency.js +9 -6
- package/lib/dependencies/ModuleDependencyTemplateAsId.js +4 -4
- package/lib/dependencies/ModuleDependencyTemplateAsRequireId.js +3 -3
- package/lib/dependencies/ModuleHotAcceptDependency.js +1 -1
- package/lib/dependencies/ModuleHotDeclineDependency.js +1 -1
- package/lib/dependencies/ModuleInitFragmentDependency.js +24 -10
- package/lib/dependencies/NullDependency.js +3 -3
- package/lib/dependencies/ProvidedDependency.js +14 -10
- package/lib/dependencies/PureExpressionDependency.js +9 -10
- package/lib/dependencies/RequireContextDependency.js +2 -2
- package/lib/dependencies/RequireContextDependencyParserPlugin.js +2 -4
- package/lib/dependencies/RequireContextPlugin.js +8 -4
- package/lib/dependencies/RequireEnsureDependenciesBlock.js +2 -2
- package/lib/dependencies/RequireEnsureDependenciesBlockParserPlugin.js +5 -8
- package/lib/dependencies/RequireEnsureDependency.js +8 -7
- package/lib/dependencies/RequireEnsurePlugin.js +7 -3
- package/lib/dependencies/RequireHeaderDependency.js +50 -12
- package/lib/dependencies/RequireIncludeDependency.js +6 -6
- package/lib/dependencies/RequireIncludeDependencyParserPlugin.js +2 -3
- package/lib/dependencies/RequireIncludePlugin.js +7 -3
- package/lib/dependencies/RequireJsStuffPlugin.js +7 -3
- package/lib/dependencies/RequireResolveContextDependency.js +2 -2
- package/lib/dependencies/RequireResolveDependency.js +4 -4
- package/lib/dependencies/RequireResolveHeaderDependency.js +4 -4
- package/lib/dependencies/RuntimeRequirementsDependency.js +5 -6
- package/lib/dependencies/StaticExportsDependency.js +2 -2
- package/lib/dependencies/SystemPlugin.js +10 -6
- package/lib/dependencies/SystemRuntimeModule.js +10 -0
- package/lib/dependencies/TopLevelAwaitDependency.js +11 -7
- package/lib/dependencies/URLContextDependency.js +2 -2
- package/lib/dependencies/URLDependency.js +110 -64
- package/lib/dependencies/URLPlugin.js +7 -3
- package/lib/dependencies/UnsupportedDependency.js +4 -4
- package/lib/dependencies/WebAssemblyExportImportedDependency.js +3 -4
- package/lib/dependencies/WebAssemblyImportDependency.js +5 -5
- package/lib/dependencies/WebpackIsIncludedDependency.js +6 -6
- package/lib/dependencies/WorkerAndWorkletPlugin.js +47 -28
- package/lib/dependencies/WorkerDependency.js +22 -22
- package/lib/dependencies/WorkletDependency.js +18 -21
- package/lib/dependencies/getFunctionExpression.js +8 -4
- package/lib/dependencies/importOptionsCheck.js +47 -0
- package/lib/dependencies/processExportInfo.js +5 -5
- package/lib/dll/DelegatedModule.js +34 -22
- package/lib/dll/DelegatedModuleFactoryPlugin.js +15 -7
- package/lib/dll/DelegatedPlugin.js +2 -2
- package/lib/dll/DllEntryPlugin.js +2 -2
- package/lib/dll/DllModule.js +22 -15
- package/lib/dll/DllModuleFactory.js +7 -3
- package/lib/dll/DllPlugin.js +7 -5
- package/lib/dll/DllReferencePlugin.js +10 -7
- package/lib/dll/LibManifestPlugin.js +5 -5
- package/lib/electron/ElectronTargetPlugin.js +53 -49
- package/lib/errors/AsyncChunkWaterfallWarning.js +36 -0
- package/lib/errors/AsyncDependencyToInitialChunkError.js +2 -2
- package/lib/errors/BroadContextsWarning.js +43 -0
- package/lib/errors/BuildCycleError.js +1 -1
- package/lib/errors/CacheEffectivenessWarning.js +55 -0
- package/lib/errors/ChunkRenderError.js +1 -1
- package/lib/errors/CircularDependenciesWarning.js +38 -0
- package/lib/errors/CodeGenerationError.js +1 -1
- package/lib/errors/CommentCompilationWarning.js +1 -1
- package/lib/errors/ConflictingResourceHintsWarning.js +35 -0
- package/lib/errors/DotenvFileError.js +29 -0
- package/lib/errors/DuplicateModulesWarning.js +45 -0
- package/lib/errors/DynamicExportsWarning.js +30 -0
- package/lib/errors/EmbeddedSourceMapsWarning.js +25 -0
- package/lib/errors/EntrypointOverlapWarning.js +45 -0
- package/lib/errors/EnvironmentNotSupportAsyncWarning.js +2 -2
- package/lib/errors/EvalUsageWarning.js +28 -0
- package/lib/errors/HookWebpackError.js +5 -5
- package/lib/errors/HotspotsWarning.js +57 -0
- package/lib/errors/IgnoreErrorModuleFactory.js +7 -3
- package/lib/errors/ImportedBindingAssignmentError.js +30 -0
- package/lib/errors/InlinedAssetsWarning.js +36 -0
- package/lib/errors/InvalidDependenciesModuleWarning.js +1 -1
- package/lib/errors/LargeModulesWarning.js +45 -0
- package/lib/errors/LegacyJavascriptWarning.js +48 -0
- package/lib/errors/MissingSideEffectsWarning.js +36 -0
- package/lib/errors/MixedExportsWarning.js +41 -0
- package/lib/errors/ModuleDependencyError.js +13 -16
- package/lib/errors/ModuleDependencyWarning.js +5 -15
- package/lib/errors/ModuleHashingError.js +1 -1
- package/lib/errors/ModuleNotFoundError.js +2 -2
- package/lib/errors/ModuleParseError.js +1 -2
- package/lib/errors/ModuleRestoreError.js +1 -1
- package/lib/errors/ModuleStoreError.js +1 -1
- package/lib/errors/NodeStuffInWebError.js +1 -1
- package/lib/errors/OsDependentRuleWarning.js +31 -0
- package/lib/errors/PureAnnotationsWarning.js +36 -0
- package/lib/errors/RedundantDynamicImportWarning.js +31 -0
- package/lib/errors/ScopeHoistingBailoutsWarning.js +41 -0
- package/lib/errors/SplitChunksCappedWarning.js +41 -0
- package/lib/errors/TinyChunksWarning.js +40 -0
- package/lib/errors/TopLevelThisWarning.js +34 -0
- package/lib/errors/UnsplitVendorsWarning.js +42 -0
- package/lib/errors/UnsupportedFeatureWarning.js +1 -1
- package/lib/errors/UnusedAliasesWarning.js +29 -0
- package/lib/errors/UnusedDefinesWarning.js +29 -0
- package/lib/errors/UnusedExternalsWarning.js +29 -0
- package/lib/errors/UnusedReexportsWarning.js +42 -0
- package/lib/errors/UnusedRuleWarning.js +29 -0
- package/lib/errors/WebpackError.js +9 -5
- package/lib/errors/deriveStackFromNestedError.js +90 -0
- package/lib/esm/ExportWebpackRequireRuntimeModule.js +2 -0
- package/lib/esm/ModuleChunkFormatPlugin.js +37 -19
- package/lib/esm/ModuleChunkLoadingPlugin.js +86 -51
- package/lib/esm/ModuleChunkLoadingRuntimeModule.js +161 -62
- package/lib/hmr/HotModuleReplacement.runtime.js +24 -5
- package/lib/hmr/HotModuleReplacementRuntimeModule.js +1 -1
- package/lib/hmr/LazyCompilationPlugin.js +45 -24
- package/lib/hmr/lazyCompilationBackend.js +9 -6
- package/lib/hmr/parserHooks.js +56 -0
- package/lib/html/HtmlGenerator.js +277 -77
- package/lib/html/HtmlModule.js +7 -3
- package/lib/html/HtmlModulesPlugin.js +366 -200
- package/lib/html/HtmlParser.js +31 -86
- package/lib/html/data.js +1928 -0
- package/lib/html/htmlMinify.js +288 -0
- package/lib/html/syntax.js +6034 -1384
- package/lib/ids/ChunkModuleIdRangePlugin.js +3 -3
- package/lib/ids/DeterministicChunkIdsPlugin.js +1 -1
- package/lib/ids/DeterministicModuleIdsPlugin.js +2 -2
- package/lib/ids/HashedModuleIdsPlugin.js +6 -2
- package/lib/ids/IdHelpers.js +7 -8
- package/lib/ids/NamedChunkIdsPlugin.js +1 -1
- package/lib/ids/NamedModuleIdsPlugin.js +1 -1
- package/lib/ids/NaturalChunkIdsPlugin.js +2 -2
- package/lib/ids/NaturalModuleIdsPlugin.js +1 -1
- package/lib/ids/OccurrenceChunkIdsPlugin.js +7 -3
- package/lib/ids/OccurrenceModuleIdsPlugin.js +7 -3
- package/lib/ids/SyncModuleIdsPlugin.js +4 -4
- package/lib/index.js +10 -0
- package/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +3 -3
- package/lib/javascript/BasicEvaluatedExpression.js +18 -14
- package/lib/javascript/ChunkFormatHelpers.js +6 -6
- package/lib/javascript/ChunkHelpers.js +1 -1
- package/lib/javascript/CommonJsChunkFormatPlugin.js +11 -5
- package/lib/javascript/EnableChunkLoadingPlugin.js +2 -2
- package/lib/javascript/JavascriptGenerator.js +65 -165
- package/lib/javascript/JavascriptModule.js +9 -3
- package/lib/javascript/JavascriptModulesPlugin.js +103 -123
- package/lib/javascript/JavascriptParser.js +242 -99
- package/lib/javascript/JavascriptParserHelpers.js +10 -7
- package/lib/javascript/ScopeAnalyzer.js +1094 -0
- package/lib/javascript/StartupHelpers.js +55 -9
- package/lib/javascript/syntax.js +2678 -232
- package/lib/json/JsonData.js +8 -4
- package/lib/json/JsonGenerator.js +38 -16
- package/lib/json/JsonModule.js +7 -3
- package/lib/json/JsonModulesPlugin.js +1 -1
- package/lib/json/JsonParser.js +5 -6
- package/lib/library/AbstractLibraryPlugin.js +20 -14
- package/lib/library/AmdLibraryPlugin.js +11 -7
- package/lib/library/AssignLibraryPlugin.js +19 -13
- package/lib/library/EnableLibraryPlugin.js +2 -2
- package/lib/library/ExportPropertyLibraryPlugin.js +15 -8
- package/lib/library/JsonpLibraryPlugin.js +11 -7
- package/lib/library/ModuleLibraryPlugin.js +256 -64
- package/lib/library/SystemLibraryPlugin.js +12 -8
- package/lib/library/UmdLibraryPlugin.js +62 -25
- package/lib/loaders/LoaderRunner.js +47 -6
- package/lib/loaders/loadLoader.js +8 -4
- package/lib/logging/createConsoleLogger.js +7 -4
- package/lib/node/CommonJsChunkLoadingPlugin.js +36 -22
- package/lib/node/NodeEnvironmentPlugin.js +17 -3
- package/lib/node/NodeSourcePlugin.js +1 -1
- package/lib/node/NodeTargetPlugin.js +4 -3
- package/lib/node/NodeTemplatePlugin.js +1 -1
- package/lib/node/NodeWatchFileSystem.js +70 -9
- package/lib/node/ReadFileChunkLoadingRuntimeModule.js +35 -38
- package/lib/node/ReadFileCompileAsyncWasmPlugin.js +65 -19
- package/lib/node/ReadFileCompileWasmPlugin.js +28 -16
- package/lib/node/RequireChunkLoadingRuntimeModule.js +35 -38
- package/lib/node/nodeConsole.js +7 -3
- package/lib/optimize/AggressiveMergingPlugin.js +2 -2
- package/lib/optimize/AggressiveSplittingPlugin.js +9 -6
- package/lib/optimize/ConcatenatedModule.js +1030 -476
- package/lib/optimize/ConstExportsPlugin.js +16 -7
- package/lib/optimize/EnsureChunkConditionsPlugin.js +3 -3
- package/lib/optimize/FlagIncludedChunksPlugin.js +3 -4
- package/lib/optimize/InlineExports.js +130 -5
- package/lib/optimize/InnerGraph.js +28 -12
- package/lib/optimize/InnerGraphPlugin.js +23 -18
- package/lib/optimize/LimitChunkCountPlugin.js +7 -3
- package/lib/optimize/MangleExportsPlugin.js +7 -8
- package/lib/optimize/MergeDuplicateChunksPlugin.js +7 -3
- package/lib/optimize/MinChunkSizePlugin.js +7 -3
- package/lib/optimize/ModuleConcatenationPlugin.js +51 -35
- package/lib/optimize/RealContentHashPlugin.js +121 -41
- package/lib/optimize/RemoveEmptyChunksPlugin.js +2 -2
- package/lib/optimize/RemoveParentModulesPlugin.js +4 -4
- package/lib/optimize/RuntimeChunkPlugin.js +2 -2
- package/lib/optimize/SideEffectsFlagPlugin.js +262 -39
- package/lib/optimize/SplitChunksPlugin.js +86 -24
- package/lib/performance/AssetsOverSizeLimitWarning.js +10 -2
- package/lib/performance/AsyncChunkWaterfallsPlugin.js +136 -0
- package/lib/performance/BroadContextsPlugin.js +142 -0
- package/lib/performance/CacheEffectivenessPlugin.js +125 -0
- package/lib/performance/ConflictingResourceHintsPlugin.js +99 -0
- package/lib/performance/DuplicateModulesPlugin.js +93 -0
- package/lib/performance/DuplicatePackagesPlugin.js +119 -0
- package/lib/performance/DuplicatePackagesWarning.js +84 -0
- package/lib/performance/DynamicExportsPlugin.js +120 -0
- package/lib/performance/EmbeddedSourceMapsPlugin.js +71 -0
- package/lib/performance/EntrypointOverlapPlugin.js +122 -0
- package/lib/performance/EntrypointsOverSizeLimitWarning.js +1 -1
- package/lib/performance/EvalUsagePlugin.js +115 -0
- package/lib/performance/HotspotsPlugin.js +296 -0
- package/lib/performance/InlinedAssetsPlugin.js +99 -0
- package/lib/performance/LargeModulesPlugin.js +126 -0
- package/lib/performance/LegacyJavascriptPlugin.js +139 -0
- package/lib/performance/MissingSideEffectsPlugin.js +138 -0
- package/lib/performance/MixedExportsPlugin.js +136 -0
- package/lib/performance/OsDependentRuleWarningPlugin.js +178 -0
- package/lib/performance/PureAnnotationsPlugin.js +219 -0
- package/lib/performance/RedundantDynamicImportsPlugin.js +225 -0
- package/lib/performance/RuntimeInLargeChunkWarning.js +27 -0
- package/lib/performance/ScopeHoistingBailoutsPlugin.js +164 -0
- package/lib/performance/SizeLimitsPlugin.js +139 -7
- package/lib/performance/SplitChunksCappedPlugin.js +99 -0
- package/lib/performance/TinyChunksPlugin.js +128 -0
- package/lib/performance/TopLevelThisPlugin.js +208 -0
- package/lib/performance/UnsplitVendorsPlugin.js +112 -0
- package/lib/performance/UnusedAliasesPlugin.js +253 -0
- package/lib/performance/UnusedDefinesPlugin.js +87 -0
- package/lib/performance/UnusedExternalsPlugin.js +110 -0
- package/lib/performance/UnusedReexportsPlugin.js +159 -0
- package/lib/performance/UnusedRuleWarningPlugin.js +105 -0
- package/lib/performance/getModuleSize.js +22 -0
- package/lib/performance/getSourceModules.js +22 -0
- package/lib/performance/hasOnlyUnusedExports.js +40 -0
- package/lib/prefetch/ChunkPrefetchFunctionRuntimeModule.js +24 -10
- package/lib/prefetch/ChunkPrefetchPreloadPlugin.js +63 -46
- package/lib/prefetch/ChunkPrefetchStartupRuntimeModule.js +2 -3
- package/lib/prefetch/ChunkPrefetchTriggerRuntimeModule.js +2 -2
- package/lib/prefetch/ChunkPreloadTriggerRuntimeModule.js +2 -2
- package/lib/prefetch/ResourceHintPlugin.js +295 -79
- package/lib/prefetch/ResourceHintRuntimeModule.js +1 -21
- package/lib/prefetch/StartupAssetHintRuntimeModule.js +10 -133
- package/lib/prefetch/parseResourceHintOptions.js +31 -4
- package/lib/rules/BasicEffectRulePlugin.js +2 -2
- package/lib/rules/BasicMatcherRulePlugin.js +8 -4
- package/lib/rules/GlobMatcherRulePlugin.js +68 -0
- package/lib/rules/ObjectMatcherRulePlugin.js +12 -5
- package/lib/rules/RuleSetCompiler.js +146 -12
- package/lib/rules/UseEffectRulePlugin.js +18 -11
- package/lib/runtime/AsyncModuleGeneratorRuntimeModule.js +11 -1
- package/lib/runtime/AsyncModuleRuntimeModule.js +6 -2
- package/lib/runtime/AutoPublicPathRuntimeModule.js +15 -20
- package/lib/runtime/BaseUriRuntimeModule.js +33 -7
- package/lib/runtime/ChunkNameRuntimeModule.js +10 -0
- package/lib/runtime/CompatGetDefaultExportRuntimeModule.js +11 -1
- package/lib/runtime/CompatRuntimeModule.js +5 -3
- package/lib/runtime/ConcatenationWrapRuntimeModule.js +90 -0
- package/lib/runtime/ConstructRequireRuntimeModule.js +52 -0
- package/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js +8 -6
- package/lib/runtime/CreateScriptRuntimeModule.js +11 -1
- package/lib/runtime/CreateScriptUrlRuntimeModule.js +11 -1
- package/lib/runtime/DefinePropertyGettersRuntimeModule.js +56 -38
- package/lib/runtime/EnsureChunkRuntimeModule.js +18 -2
- package/lib/runtime/GetChunkFilenameRuntimeModule.js +62 -37
- package/lib/runtime/GetFullHashRuntimeModule.js +12 -2
- package/lib/runtime/GetMainFilenameRuntimeModule.js +12 -2
- package/lib/runtime/GetTrustedTypesPolicyRuntimeModule.js +2 -2
- package/lib/runtime/GetWorkletBootstrapRuntimeModule.js +16 -3
- package/lib/runtime/GlobalRuntimeModule.js +18 -0
- package/lib/runtime/HasOwnPropertyRuntimeModule.js +12 -2
- package/lib/runtime/LoadScriptRuntimeModule.js +2 -2
- package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +34 -7
- package/lib/runtime/MakeNamespaceObjectRuntimeModule.js +22 -6
- package/lib/runtime/NonceRuntimeModule.js +10 -0
- package/lib/runtime/OnChunksLoadedRuntimeModule.js +5 -3
- package/lib/runtime/PublicPathRuntimeModule.js +12 -2
- package/lib/runtime/RelativeUrlRuntimeModule.js +11 -1
- package/lib/runtime/RuntimeIdRuntimeModule.js +12 -2
- package/lib/runtime/SetAnonymousDefaultNameRuntimeModule.js +11 -1
- package/lib/runtime/StartupChunkDependenciesPlugin.js +18 -9
- package/lib/runtime/StartupChunkDependenciesRuntimeModule.js +3 -3
- package/lib/runtime/StartupEntrypointRuntimeModule.js +21 -4
- package/lib/runtime/SystemContextRuntimeModule.js +10 -0
- package/lib/runtime/ToBinaryRuntimeModule.js +1 -1
- package/lib/runtime/WorkerRuntimeModule.js +11 -1
- package/lib/runtime/baseUri.js +63 -0
- package/lib/schemes/DataUriPlugin.js +1 -1
- package/lib/schemes/FileUriPlugin.js +1 -1
- package/lib/schemes/HttpUriPlugin.js +46 -20
- package/lib/schemes/VirtualUrlPlugin.js +13 -7
- package/lib/serialization/AggregateErrorSerializer.js +1 -1
- package/lib/serialization/BinaryMiddleware.js +4 -4
- package/lib/serialization/ErrorObjectSerializer.js +1 -1
- package/lib/serialization/FileMiddleware.js +22 -9
- package/lib/serialization/ObjectMiddleware.js +139 -114
- package/lib/serialization/PlainObjectSerializer.js +19 -16
- package/lib/sharing/ConsumeSharedModule.js +30 -21
- package/lib/sharing/ConsumeSharedPlugin.js +18 -10
- package/lib/sharing/ConsumeSharedRuntimeModule.js +6 -9
- package/lib/sharing/ProvideSharedModule.js +25 -16
- package/lib/sharing/ProvideSharedModuleFactory.js +7 -3
- package/lib/sharing/ProvideSharedPlugin.js +8 -4
- package/lib/sharing/SharePlugin.js +17 -5
- package/lib/sharing/ShareRuntimeModule.js +4 -4
- package/lib/sharing/resolveMatchedConfigs.js +9 -6
- package/lib/sharing/utils.js +1 -3
- package/lib/stats/DefaultStatsFactoryPlugin.js +50 -29
- package/lib/stats/DefaultStatsPresetPlugin.js +17 -8
- package/lib/stats/DefaultStatsPrinterPlugin.js +36 -26
- package/lib/stats/StatsFactory.js +25 -26
- package/lib/stats/StatsPrinter.js +16 -12
- package/lib/typescript/TypeScriptPlugin.js +20 -24
- package/lib/url/URLParserPlugin.js +26 -13
- package/lib/util/ArrayQueue.js +3 -3
- package/lib/util/AsyncQueue.js +4 -3
- package/lib/util/Hash.js +5 -1
- package/lib/util/LazySet.js +35 -22
- package/lib/util/LocConverter.js +36 -13
- package/lib/util/SourceProcessor.js +1066 -24
- package/lib/util/StringXor.js +1 -1
- package/lib/util/URLAbsoluteSpecifier.js +3 -1
- package/lib/util/chainedImports.js +9 -5
- package/lib/util/cleverMerge.js +1 -1
- package/lib/util/comparators.js +45 -14
- package/lib/util/concatenate.js +203 -77
- package/lib/util/conventions.js +10 -2
- package/lib/util/createHash.js +2 -2
- package/lib/util/createHooksRegistry.js +8 -10
- package/lib/util/createMappings.js +25 -3
- package/lib/util/dataURL.js +225 -1
- package/lib/util/extractSourceMap.js +4 -3
- package/lib/util/findCaseMismatch.js +139 -0
- package/lib/util/formatLocation.js +1 -2
- package/lib/util/fs.js +22 -5
- package/lib/util/globUtils.js +298 -24
- package/lib/util/hash/BatchedHash.js +5 -1
- package/lib/util/hash/BulkUpdateHash.js +5 -1
- package/lib/util/hash/DebugHash.js +5 -1
- package/lib/util/hash/hash-digest.js +6 -2
- package/lib/util/identifier.js +4 -0
- package/lib/util/implicitTypeLoaderFallback.js +1 -1
- package/lib/util/internalSerializables.js +8 -0
- package/lib/util/lazyModule.js +56 -0
- package/lib/util/makeSerializable.js +7 -3
- package/lib/util/matchAlias.js +25 -0
- package/lib/util/mimeTypes.js +11 -5
- package/lib/util/nonNumericOnlyHash.js +4 -3
- package/lib/util/parseJson.js +5 -3
- package/lib/util/preloadModuleType.js +32 -0
- package/lib/util/registerExternalSerializer.js +7 -5
- package/lib/util/removeBOM.js +82 -1
- package/lib/util/runtime.js +2 -2
- package/lib/util/semver.js +1 -1
- package/lib/util/serialization.js +28 -28
- package/lib/util/source.js +2 -2
- package/lib/util/traverseDestructuringAssignmentProperties.js +6 -2
- package/lib/wasm/EnableWasmLoadingPlugin.js +10 -8
- package/lib/wasm/wasmModuleFilename.js +54 -0
- package/lib/wasm-async/AsyncWasmCompileRuntimeModule.js +43 -21
- package/lib/wasm-async/AsyncWasmLoadingRuntimeModule.js +45 -21
- package/lib/wasm-async/AsyncWasmModule.js +3 -3
- package/lib/wasm-async/AsyncWebAssemblyGenerator.js +4 -5
- package/lib/wasm-async/AsyncWebAssemblyJavascriptGenerator.js +57 -17
- package/lib/wasm-async/AsyncWebAssemblyModulesPlugin.js +34 -18
- package/lib/wasm-async/AsyncWebAssemblyParser.js +9 -8
- package/lib/wasm-async/UniversalCompileAsyncWasmPlugin.js +29 -8
- package/lib/wasm-sync/SyncWasmModule.js +2 -2
- package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +18 -13
- package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +4 -5
- package/lib/wasm-sync/WebAssemblyGenerator.js +18 -17
- package/lib/wasm-sync/WebAssemblyInInitialChunkError.js +4 -4
- package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +7 -7
- package/lib/wasm-sync/WebAssemblyModulesPlugin.js +24 -11
- package/lib/wasm-sync/WebAssemblyParser.js +4 -6
- package/lib/wasm-sync/WebAssemblyUtils.js +2 -2
- package/lib/web/FetchCompileAsyncWasmPlugin.js +105 -19
- package/lib/web/FetchCompileWasmPlugin.js +48 -16
- package/lib/web/JsonpChunkLoadingPlugin.js +47 -23
- package/lib/web/JsonpChunkLoadingRuntimeModule.js +50 -20
- package/lib/web/JsonpTemplatePlugin.js +2 -2
- package/lib/webpack.js +22 -11
- package/lib/webworker/ImportScriptsChunkLoadingPlugin.js +60 -26
- package/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +30 -32
- package/lib/webworker/WebWorkerTemplatePlugin.js +1 -1
- package/module.d.ts +1 -0
- package/package.json +32 -25
- package/schemas/WebpackOptions.check.js +1 -1
- package/schemas/WebpackOptions.json +667 -34
- package/schemas/plugins/HtmlParserOptions.check.js +1 -1
- package/schemas/plugins/container/ContainerPlugin.check.js +1 -1
- package/schemas/plugins/container/ContainerPlugin.json +10 -0
- package/schemas/plugins/container/ModuleFederationPlugin.check.js +1 -1
- package/schemas/plugins/container/ModuleFederationPlugin.json +10 -0
- package/schemas/plugins/css/CssAutoOrModuleParserOptions.check.js +1 -1
- package/schemas/plugins/css/CssModuleParserOptions.check.js +1 -1
- package/schemas/plugins/css/CssParserOptions.check.js +1 -1
- package/types.d.ts +3223 -465
- package/lib/runtime/CommonJsWrapRuntimeModule.js +0 -37
|
@@ -9,15 +9,14 @@ const Dependency = require("../Dependency");
|
|
|
9
9
|
const makeSerializable = require("../util/makeSerializable");
|
|
10
10
|
const ModuleDependency = require("./ModuleDependency");
|
|
11
11
|
|
|
12
|
-
/** @
|
|
13
|
-
/** @
|
|
14
|
-
/** @
|
|
15
|
-
/** @
|
|
16
|
-
/** @
|
|
17
|
-
/** @
|
|
18
|
-
/** @typedef {import("../
|
|
19
|
-
/** @typedef {import("../serialization/ObjectMiddleware").
|
|
20
|
-
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext<[string | undefined, string, RawReferencedExports | null | undefined, ImportAttributes | undefined]>} ObjectSerializerContext */
|
|
12
|
+
/** @import ContextModule from "../ContextModule" */
|
|
13
|
+
/** @import { RawReferencedExports, ReferencedExports } from "../Dependency" */
|
|
14
|
+
/** @import Module from "../Module" */
|
|
15
|
+
/** @import ModuleGraph from "../ModuleGraph" */
|
|
16
|
+
/** @import { ImportAttributes } from "../javascript/JavascriptParser" */
|
|
17
|
+
/** @import { RuntimeSpec } from "../util/runtime" */
|
|
18
|
+
/** @typedef {import("../serialization/ObjectMiddleware").ObjectDeserializerContext<[string | undefined, string, RawReferencedExports | null | undefined, ImportAttributes | undefined, string | undefined]>} ObjectDeserializerContext */
|
|
19
|
+
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext<[string | undefined, string, RawReferencedExports | null | undefined, ImportAttributes | undefined, string | undefined]>} ObjectSerializerContext */
|
|
21
20
|
|
|
22
21
|
class ContextElementDependency extends ModuleDependency {
|
|
23
22
|
/**
|
|
@@ -29,6 +28,7 @@ class ContextElementDependency extends ModuleDependency {
|
|
|
29
28
|
* @param {RawReferencedExports | null=} referencedExports referenced exports
|
|
30
29
|
* @param {string=} context context
|
|
31
30
|
* @param {ImportAttributes=} attributes import assertions
|
|
31
|
+
* @param {string=} contextRequest the request of the context as written by the user, without query and fragment
|
|
32
32
|
*/
|
|
33
33
|
constructor(
|
|
34
34
|
request,
|
|
@@ -37,7 +37,8 @@ class ContextElementDependency extends ModuleDependency {
|
|
|
37
37
|
category,
|
|
38
38
|
referencedExports,
|
|
39
39
|
context,
|
|
40
|
-
attributes
|
|
40
|
+
attributes,
|
|
41
|
+
contextRequest
|
|
41
42
|
) {
|
|
42
43
|
super(request);
|
|
43
44
|
|
|
@@ -56,6 +57,21 @@ class ContextElementDependency extends ModuleDependency {
|
|
|
56
57
|
this._context = context || undefined;
|
|
57
58
|
/** @type {ImportAttributes | undefined} */
|
|
58
59
|
this.attributes = attributes;
|
|
60
|
+
/** @type {string | undefined} */
|
|
61
|
+
this._contextRequest = contextRequest || undefined;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* The request as the user wrote it, e.g. `#configs/file.mjs` where `request`
|
|
66
|
+
* is the `./file.mjs` relative to the resolved `#configs` directory.
|
|
67
|
+
* @returns {string} the original request
|
|
68
|
+
*/
|
|
69
|
+
get originalRequest() {
|
|
70
|
+
const request = this.request;
|
|
71
|
+
if (this._contextRequest === undefined || !request.startsWith("./")) {
|
|
72
|
+
return request;
|
|
73
|
+
}
|
|
74
|
+
return this._contextRequest + request.slice(1);
|
|
59
75
|
}
|
|
60
76
|
|
|
61
77
|
get type() {
|
|
@@ -132,7 +148,8 @@ class ContextElementDependency extends ModuleDependency {
|
|
|
132
148
|
.write(this._typePrefix)
|
|
133
149
|
.write(this._category)
|
|
134
150
|
.write(this.referencedExports)
|
|
135
|
-
.write(this.attributes)
|
|
151
|
+
.write(this.attributes)
|
|
152
|
+
.write(this._contextRequest);
|
|
136
153
|
super.serialize(context);
|
|
137
154
|
}
|
|
138
155
|
|
|
@@ -148,7 +165,9 @@ class ContextElementDependency extends ModuleDependency {
|
|
|
148
165
|
this.referencedExports = c2.read();
|
|
149
166
|
const c3 = c2.rest;
|
|
150
167
|
this.attributes = c3.read();
|
|
151
|
-
|
|
168
|
+
const c4 = c3.rest;
|
|
169
|
+
this._contextRequest = c4.read();
|
|
170
|
+
super.deserialize(c4.rest);
|
|
152
171
|
}
|
|
153
172
|
}
|
|
154
173
|
|
|
@@ -17,13 +17,18 @@ const {
|
|
|
17
17
|
const CommonJsImportsParserPlugin = require("./CommonJsImportsParserPlugin");
|
|
18
18
|
const ConstDependency = require("./ConstDependency");
|
|
19
19
|
|
|
20
|
-
/** @
|
|
21
|
-
/**
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
/**
|
|
20
|
+
/** @import { CallExpression, Expression } from "estree" */
|
|
21
|
+
/**
|
|
22
|
+
* @import {
|
|
23
|
+
* JavascriptParserOptions
|
|
24
|
+
* } from "../../declarations/WebpackOptions"
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* @import JavascriptParser, {
|
|
28
|
+
* ImportSource,
|
|
29
|
+
* Range
|
|
30
|
+
* } from "../javascript/JavascriptParser"
|
|
31
|
+
*/
|
|
27
32
|
|
|
28
33
|
/**
|
|
29
34
|
* Defines the common js import settings type used by this module.
|
|
@@ -9,10 +9,10 @@ const RuntimeGlobals = require("../RuntimeGlobals");
|
|
|
9
9
|
const makeSerializable = require("../util/makeSerializable");
|
|
10
10
|
const NullDependency = require("./NullDependency");
|
|
11
11
|
|
|
12
|
-
/** @
|
|
13
|
-
/** @
|
|
14
|
-
/** @
|
|
15
|
-
/** @
|
|
12
|
+
/** @import { ReplaceSource } from "webpack-sources" */
|
|
13
|
+
/** @import Dependency from "../Dependency" */
|
|
14
|
+
/** @import { DependencyTemplateContext } from "../DependencyTemplate" */
|
|
15
|
+
/** @import { Range } from "../javascript/JavascriptParser" */
|
|
16
16
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectDeserializerContext<[Range]>} ObjectDeserializerContext */
|
|
17
17
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext<[Range]>} ObjectSerializerContext */
|
|
18
18
|
|
|
@@ -20,27 +20,38 @@ const NullDependency = require("./NullDependency");
|
|
|
20
20
|
|
|
21
21
|
const getCssTokens = memoize(() => require("../css/syntax"));
|
|
22
22
|
|
|
23
|
-
/** @
|
|
24
|
-
/**
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
/** @
|
|
32
|
-
/** @
|
|
33
|
-
/** @
|
|
34
|
-
/**
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
23
|
+
/** @import { ReplaceSource } from "webpack-sources" */
|
|
24
|
+
/**
|
|
25
|
+
* @import {
|
|
26
|
+
* CssGeneratorExportsConvention,
|
|
27
|
+
* CssGeneratorLocalIdentName,
|
|
28
|
+
* HashFunction
|
|
29
|
+
* } from "../../declarations/WebpackOptions"
|
|
30
|
+
*/
|
|
31
|
+
/** @import CssGenerator from "../css/CssGenerator" */
|
|
32
|
+
/** @import CssModule from "../css/CssModule" */
|
|
33
|
+
/** @import ChunkGraph from "../ChunkGraph" */
|
|
34
|
+
/**
|
|
35
|
+
* @import Dependency, {
|
|
36
|
+
* ExportsSpec,
|
|
37
|
+
* ReferencedExports,
|
|
38
|
+
* UpdateHashContext,
|
|
39
|
+
* DependencyLocation
|
|
40
|
+
* } from "../Dependency"
|
|
41
|
+
*/
|
|
42
|
+
/**
|
|
43
|
+
* @import {
|
|
44
|
+
* CssDependencyTemplateContext as DependencyTemplateContext
|
|
45
|
+
* } from "../DependencyTemplate"
|
|
46
|
+
*/
|
|
47
|
+
/** @import ModuleGraph from "../ModuleGraph" */
|
|
48
|
+
/** @import RuntimeTemplate from "../RuntimeTemplate" */
|
|
49
|
+
/** @import { Range } from "../css/CssParser" */
|
|
39
50
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectDeserializerContext<(number | string | Value | Range | boolean | ExportMode | ExportType | DependencyLocation | undefined)[]>} ObjectDeserializerContext */
|
|
40
51
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext<(number | string | Value | Range | boolean | ExportMode | ExportType | DependencyLocation | undefined)[]>} ObjectSerializerContext */
|
|
41
|
-
/** @
|
|
42
|
-
/** @
|
|
43
|
-
/** @
|
|
52
|
+
/** @import Hash from "../util/Hash" */
|
|
53
|
+
/** @import { RuntimeSpec } from "../util/runtime" */
|
|
54
|
+
/** @import WebpackErrorType from "../errors/WebpackError" */
|
|
44
55
|
|
|
45
56
|
/** @typedef {string | [string, string] | [string, string, string]} Value */
|
|
46
57
|
/** @typedef {(name: string) => string | string[]} ExportsConventionFn */
|
|
@@ -201,21 +212,23 @@ const getLocalIdent = (local, module, chunkGraph, runtimeTemplate) => {
|
|
|
201
212
|
* Module-level reference so `moduleGraph.cached` can use it as a stable
|
|
202
213
|
* computer key — repeated lookups during a build skip `cssExportConvention`,
|
|
203
214
|
* `getLocalIdent` (with its content / path hashing) and `escapeIdentifier`.
|
|
215
|
+
* Parameters are ordered by rising cardinality because `cached` keys a trie on
|
|
216
|
+
* them — see the call site.
|
|
204
217
|
* @param {ModuleGraph} _moduleGraph module graph (unused, kept for `cached` signature)
|
|
205
218
|
* @param {CssModule} module css module the value resolves in
|
|
206
|
-
* @param {string} value raw value to interpolate
|
|
207
|
-
* @param {ExportType} exportType export type discriminator
|
|
208
219
|
* @param {ChunkGraph} chunkGraph chunk graph
|
|
209
220
|
* @param {RuntimeTemplate} runtimeTemplate runtime template
|
|
221
|
+
* @param {ExportType} exportType export type discriminator
|
|
222
|
+
* @param {string} value raw value to interpolate
|
|
210
223
|
* @returns {string} interpolated identifier
|
|
211
224
|
*/
|
|
212
225
|
const computeInterpolatedIdentifier = (
|
|
213
226
|
_moduleGraph,
|
|
214
227
|
module,
|
|
215
|
-
value,
|
|
216
|
-
exportType,
|
|
217
228
|
chunkGraph,
|
|
218
|
-
runtimeTemplate
|
|
229
|
+
runtimeTemplate,
|
|
230
|
+
exportType,
|
|
231
|
+
value
|
|
219
232
|
) => {
|
|
220
233
|
const generator = /** @type {CssGenerator} */ (module.generator);
|
|
221
234
|
const local = cssExportConvention(
|
|
@@ -690,7 +703,16 @@ CssIcssExportDependency.Template = class CssIcssExportDependencyTemplate extends
|
|
|
690
703
|
if (!module) return undefined;
|
|
691
704
|
|
|
692
705
|
const matches = getExportIndex(cache, module).get(importName);
|
|
693
|
-
|
|
706
|
+
// Skip demoted (`NONE`) cross-kind entries so `@value name from` picks the same winner as the JS export map.
|
|
707
|
+
let exportEntry;
|
|
708
|
+
if (matches) {
|
|
709
|
+
for (const m of matches) {
|
|
710
|
+
if (m.exportMode !== EXPORT_MODE.NONE) {
|
|
711
|
+
exportEntry = m;
|
|
712
|
+
break;
|
|
713
|
+
}
|
|
714
|
+
}
|
|
715
|
+
}
|
|
694
716
|
if (!exportEntry) return undefined;
|
|
695
717
|
if (seen.has(exportEntry)) return undefined;
|
|
696
718
|
seen.add(exportEntry);
|
|
@@ -754,6 +776,7 @@ CssIcssExportDependency.Template = class CssIcssExportDependencyTemplate extends
|
|
|
754
776
|
const matches = getExportIndex(cache, module).get(name);
|
|
755
777
|
if (matches) {
|
|
756
778
|
for (const d of matches) {
|
|
779
|
+
if (d.exportMode === EXPORT_MODE.NONE) continue;
|
|
757
780
|
if (Array.isArray(d.value)) {
|
|
758
781
|
references.push(
|
|
759
782
|
...CssIcssExportDependencyTemplate.resolveReferences(
|
|
@@ -789,6 +812,7 @@ CssIcssExportDependency.Template = class CssIcssExportDependencyTemplate extends
|
|
|
789
812
|
).get(/** @type {string} */ (entry.value));
|
|
790
813
|
if (matches) {
|
|
791
814
|
for (const d of matches) {
|
|
815
|
+
if (d.exportMode === EXPORT_MODE.NONE) continue;
|
|
792
816
|
if (d.exportType !== EXPORT_TYPE.COMPOSES) continue;
|
|
793
817
|
if (Array.isArray(d.value)) {
|
|
794
818
|
references.push(
|
|
@@ -826,13 +850,17 @@ CssIcssExportDependency.Template = class CssIcssExportDependencyTemplate extends
|
|
|
826
850
|
if (!entry.interpolate) return value;
|
|
827
851
|
const { moduleGraph, module, chunkGraph, runtimeTemplate } =
|
|
828
852
|
templateContext;
|
|
853
|
+
// Key order is by rising cardinality: `moduleGraph.cached` is a trie that
|
|
854
|
+
// allocates a node per level per new prefix, so the per-export `value` goes
|
|
855
|
+
// last — otherwise every export name forks the trie and re-allocates the
|
|
856
|
+
// three elements below it, which are constant for the whole compilation.
|
|
829
857
|
return moduleGraph.cached(
|
|
830
858
|
computeInterpolatedIdentifier,
|
|
831
859
|
/** @type {CssModule} */ (module),
|
|
832
|
-
value,
|
|
833
|
-
entry.exportType,
|
|
834
860
|
chunkGraph,
|
|
835
|
-
runtimeTemplate
|
|
861
|
+
runtimeTemplate,
|
|
862
|
+
entry.exportType,
|
|
863
|
+
value
|
|
836
864
|
);
|
|
837
865
|
}
|
|
838
866
|
|
|
@@ -10,21 +10,25 @@ const { cssExportConvention } = require("../util/conventions");
|
|
|
10
10
|
const makeSerializable = require("../util/makeSerializable");
|
|
11
11
|
const CssImportDependency = require("./CssImportDependency");
|
|
12
12
|
|
|
13
|
-
/** @
|
|
14
|
-
/** @
|
|
15
|
-
/**
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
/** @
|
|
21
|
-
/** @
|
|
13
|
+
/** @import { ReplaceSource } from "webpack-sources" */
|
|
14
|
+
/** @import Dependency, { ReferencedExports } from "../Dependency" */
|
|
15
|
+
/**
|
|
16
|
+
* @import {
|
|
17
|
+
* CssDependencyTemplateContext as DependencyTemplateContext
|
|
18
|
+
* } from "../DependencyTemplate"
|
|
19
|
+
*/
|
|
20
|
+
/** @import CssGenerator from "../css/CssGenerator" */
|
|
21
|
+
/** @import CssModule from "../css/CssModule" */
|
|
22
|
+
/** @import ModuleGraph from "../ModuleGraph" */
|
|
23
|
+
/** @import { RuntimeSpec } from "../util/runtime" */
|
|
24
|
+
/** @import { Range } from "../javascript/JavascriptParser" */
|
|
22
25
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectDeserializerContext<[string, string]>} ObjectDeserializerContext */
|
|
23
26
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext<[string, string]>} ObjectSerializerContext */
|
|
24
|
-
/**
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
27
|
+
/**
|
|
28
|
+
* @import {
|
|
29
|
+
* CssGeneratorExportsConvention
|
|
30
|
+
* } from "../../declarations/WebpackOptions"
|
|
31
|
+
*/
|
|
28
32
|
|
|
29
33
|
class CssIcssImportDependency extends CssImportDependency {
|
|
30
34
|
/**
|
|
@@ -10,18 +10,17 @@ const makeSerializable = require("../util/makeSerializable");
|
|
|
10
10
|
const CssIcssExportDependency = require("./CssIcssExportDependency");
|
|
11
11
|
const NullDependency = require("./NullDependency");
|
|
12
12
|
|
|
13
|
-
/** @
|
|
14
|
-
/** @
|
|
15
|
-
/**
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
/** @
|
|
13
|
+
/** @import { ReplaceSource } from "webpack-sources" */
|
|
14
|
+
/** @import Dependency, { UpdateHashContext } from "../Dependency" */
|
|
15
|
+
/**
|
|
16
|
+
* @import {
|
|
17
|
+
* CssDependencyTemplateContext as DependencyTemplateContext
|
|
18
|
+
* } from "../DependencyTemplate"
|
|
19
|
+
*/
|
|
20
|
+
/** @import { Range } from "../css/CssParser" */
|
|
21
21
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectDeserializerContext<[string, Range, string | undefined, string | undefined, string | undefined]>} ObjectDeserializerContext */
|
|
22
22
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext<[string, Range, string | undefined, string | undefined, string | undefined]>} ObjectSerializerContext */
|
|
23
|
-
/** @
|
|
24
|
-
/** @typedef {import("../util/runtime").RuntimeSpec} RuntimeSpec */
|
|
23
|
+
/** @import Hash from "../util/Hash" */
|
|
25
24
|
|
|
26
25
|
class CssIcssSymbolDependency extends NullDependency {
|
|
27
26
|
/**
|
|
@@ -8,14 +8,22 @@
|
|
|
8
8
|
const makeSerializable = require("../util/makeSerializable");
|
|
9
9
|
const ModuleDependency = require("./ModuleDependency");
|
|
10
10
|
|
|
11
|
-
/** @
|
|
12
|
-
/** @
|
|
13
|
-
/** @
|
|
14
|
-
/**
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
11
|
+
/** @import { ReplaceSource } from "webpack-sources" */
|
|
12
|
+
/** @import { CssParserExportType } from "../../declarations/WebpackOptions" */
|
|
13
|
+
/** @import Dependency from "../Dependency" */
|
|
14
|
+
/**
|
|
15
|
+
* @import {
|
|
16
|
+
* CssDependencyTemplateContext as DependencyTemplateContext
|
|
17
|
+
* } from "../DependencyTemplate"
|
|
18
|
+
*/
|
|
19
|
+
/** @import { Inheritance } from "../css/CssModule" */
|
|
20
|
+
/** @import { Range } from "../css/CssParser" */
|
|
21
|
+
/**
|
|
22
|
+
* @import {
|
|
23
|
+
* ObjectDeserializerContext,
|
|
24
|
+
* ObjectSerializerContext
|
|
25
|
+
* } from "../serialization/ObjectMiddleware"
|
|
26
|
+
*/
|
|
19
27
|
|
|
20
28
|
class CssImportDependency extends ModuleDependency {
|
|
21
29
|
/**
|
|
@@ -65,9 +73,10 @@ class CssImportDependency extends ModuleDependency {
|
|
|
65
73
|
|
|
66
74
|
/**
|
|
67
75
|
* Returns true if this dependency can be concatenated
|
|
76
|
+
* @param {boolean} concatenateCommonJsModules whether optimization.concatenateModules.commonjs is enabled
|
|
68
77
|
* @returns {boolean} true if this dependency can be concatenated
|
|
69
78
|
*/
|
|
70
|
-
canConcatenate() {
|
|
79
|
+
canConcatenate(concatenateCommonJsModules) {
|
|
71
80
|
return true;
|
|
72
81
|
}
|
|
73
82
|
|
|
@@ -11,21 +11,21 @@ const makeSerializable = require("../util/makeSerializable");
|
|
|
11
11
|
const memoize = require("../util/memoize");
|
|
12
12
|
const ModuleDependency = require("./ModuleDependency");
|
|
13
13
|
|
|
14
|
-
/** @
|
|
15
|
-
/** @
|
|
16
|
-
/** @
|
|
17
|
-
/**
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
/** @
|
|
23
|
-
/** @
|
|
14
|
+
/** @import { ReplaceSource } from "webpack-sources" */
|
|
15
|
+
/** @import CodeGenerationResults from "../CodeGenerationResults" */
|
|
16
|
+
/** @import Dependency, { UpdateHashContext } from "../Dependency" */
|
|
17
|
+
/**
|
|
18
|
+
* @import {
|
|
19
|
+
* CssDependencyTemplateContext as DependencyTemplateContext
|
|
20
|
+
* } from "../DependencyTemplate"
|
|
21
|
+
*/
|
|
22
|
+
/** @import Module from "../Module" */
|
|
23
|
+
/** @import { Range } from "../javascript/JavascriptParser" */
|
|
24
24
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectDeserializerContext<["string" | "url" | "src", true | undefined, true | undefined, ("high" | "low" | "auto" | undefined), string | undefined, string | undefined, string | undefined]>} ObjectDeserializerContext */
|
|
25
25
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext<["string" | "url" | "src", true | undefined, true | undefined, ("high" | "low" | "auto" | undefined), string | undefined, string | undefined, string | undefined]>} ObjectSerializerContext */
|
|
26
|
-
/** @
|
|
27
|
-
/** @
|
|
28
|
-
/** @
|
|
26
|
+
/** @import Hash from "../util/Hash" */
|
|
27
|
+
/** @import { RuntimeSpec } from "../util/runtime" */
|
|
28
|
+
/** @import { NormalModuleBuildInfo } from "../NormalModule" */
|
|
29
29
|
|
|
30
30
|
const getIgnoredRawDataUrlModule = memoize(
|
|
31
31
|
() => new RawDataUrlModule("data:,", "ignored-asset", "(ignored asset)")
|
|
@@ -64,6 +64,10 @@ class CssUrlDependency extends ModuleDependency {
|
|
|
64
64
|
return "url";
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
+
get referencedSourceType() {
|
|
68
|
+
return ASSET_URL_TYPE;
|
|
69
|
+
}
|
|
70
|
+
|
|
67
71
|
/**
|
|
68
72
|
* Creates an ignored module.
|
|
69
73
|
* @param {string} context context directory
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
const Dependency = require("../Dependency");
|
|
9
9
|
const makeSerializable = require("../util/makeSerializable");
|
|
10
10
|
|
|
11
|
-
/** @
|
|
11
|
+
/** @import EntryDependency from "./EntryDependency" */
|
|
12
12
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectDeserializerContext<[EntryDependency[], string]>} ObjectDeserializerContext */
|
|
13
13
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext<[EntryDependency[], string]>} ObjectSerializerContext */
|
|
14
14
|
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
|
-
/** @
|
|
9
|
-
/** @
|
|
8
|
+
/** @import { BuildMeta } from "../Module" */
|
|
9
|
+
/** @import { JavascriptParserState } from "../javascript/JavascriptParser" */
|
|
10
10
|
|
|
11
11
|
/** @type {WeakMap<JavascriptParserState, boolean>} */
|
|
12
12
|
const parserStateExportsState = new WeakMap();
|
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
const InitFragment = require("../InitFragment");
|
|
9
9
|
const RuntimeGlobals = require("../RuntimeGlobals");
|
|
10
10
|
|
|
11
|
-
/** @
|
|
12
|
-
/** @
|
|
13
|
-
/** @
|
|
11
|
+
/** @import { Source } from "webpack-sources" */
|
|
12
|
+
/** @import { GenerateContext } from "../Generator" */
|
|
13
|
+
/** @import { UsedName } from "../ExportsInfo" */
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* @typedef {object} ExportBinding
|
|
@@ -19,6 +19,14 @@ const RuntimeGlobals = require("../RuntimeGlobals");
|
|
|
19
19
|
* @property {"getter" | "value"=} bindingType "value" for value binding, defaults to "getter"
|
|
20
20
|
*/
|
|
21
21
|
|
|
22
|
+
/**
|
|
23
|
+
* Offered the rendered `d()` call and where it sits, and answers whether it took it
|
|
24
|
+
* over. A consumer that does emits the call itself where it is actually read — or
|
|
25
|
+
* leaves it out. Value bindings read the declarations above them, so one placed at
|
|
26
|
+
* the end cannot be moved before the module body.
|
|
27
|
+
* @typedef {(source: string, placeAtEnd: boolean) => boolean} OnDemandGeneration
|
|
28
|
+
*/
|
|
29
|
+
|
|
22
30
|
/**
|
|
23
31
|
* Init fragment for const export bindings.
|
|
24
32
|
* Generates a flat-array __webpack_require__.d() call.
|
|
@@ -35,8 +43,14 @@ class ExportBindingInitFragment extends InitFragment {
|
|
|
35
43
|
* @param {string} exportsArgument the exports identifier
|
|
36
44
|
* @param {ExportBinding[]} bindings list of export bindings
|
|
37
45
|
* @param {boolean=} placeAtEnd when true, place the d() call at the end of the module
|
|
46
|
+
* @param {OnDemandGeneration=} onDemand offered the call instead of emitting it
|
|
38
47
|
*/
|
|
39
|
-
constructor(
|
|
48
|
+
constructor(
|
|
49
|
+
exportsArgument,
|
|
50
|
+
bindings,
|
|
51
|
+
placeAtEnd = false,
|
|
52
|
+
onDemand = undefined
|
|
53
|
+
) {
|
|
40
54
|
super(
|
|
41
55
|
undefined,
|
|
42
56
|
InitFragment.STAGE_HARMONY_EXPORTS,
|
|
@@ -49,6 +63,8 @@ class ExportBindingInitFragment extends InitFragment {
|
|
|
49
63
|
this.bindings = bindings;
|
|
50
64
|
/** @type {boolean} */
|
|
51
65
|
this.placeAtEnd = placeAtEnd;
|
|
66
|
+
/** @type {OnDemandGeneration | undefined} */
|
|
67
|
+
this.onDemand = onDemand;
|
|
52
68
|
}
|
|
53
69
|
|
|
54
70
|
/**
|
|
@@ -75,7 +91,8 @@ class ExportBindingInitFragment extends InitFragment {
|
|
|
75
91
|
return new ExportBindingInitFragment(
|
|
76
92
|
this.exportsArgument,
|
|
77
93
|
bindings,
|
|
78
|
-
placeAtEnd
|
|
94
|
+
placeAtEnd,
|
|
95
|
+
this.onDemand
|
|
79
96
|
);
|
|
80
97
|
}
|
|
81
98
|
|
|
@@ -103,7 +120,8 @@ class ExportBindingInitFragment extends InitFragment {
|
|
|
103
120
|
return new ExportBindingInitFragment(
|
|
104
121
|
this.exportsArgument,
|
|
105
122
|
bindings,
|
|
106
|
-
this.placeAtEnd || other.placeAtEnd
|
|
123
|
+
this.placeAtEnd || other.placeAtEnd,
|
|
124
|
+
this.onDemand || other.onDemand
|
|
107
125
|
);
|
|
108
126
|
}
|
|
109
127
|
|
|
@@ -131,11 +149,20 @@ class ExportBindingInitFragment extends InitFragment {
|
|
|
131
149
|
}
|
|
132
150
|
}
|
|
133
151
|
|
|
152
|
+
// Requested even when the call is taken over below: whoever took it may still
|
|
153
|
+
// emit it, and by then the requirement set is closed.
|
|
134
154
|
runtimeRequirements.add(RuntimeGlobals.exports);
|
|
135
155
|
runtimeRequirements.add(RuntimeGlobals.definePropertyGetters);
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
156
|
+
// Only this fragment emits the array form, so the runtime helper drops the
|
|
157
|
+
// branch reading it unless this asks for it.
|
|
158
|
+
runtimeRequirements.add(RuntimeGlobals.definePropertyGettersFromArray);
|
|
159
|
+
const definition = `/* harmony export */ ${
|
|
160
|
+
RuntimeGlobals.definePropertyGetters
|
|
161
|
+
}(${this.exportsArgument}, [${items.join(",")}\n/* harmony export */ ]);\n`;
|
|
162
|
+
return this.onDemand !== undefined &&
|
|
163
|
+
this.onDemand(definition, this.placeAtEnd)
|
|
164
|
+
? ""
|
|
165
|
+
: definition;
|
|
139
166
|
}
|
|
140
167
|
|
|
141
168
|
/**
|
|
@@ -9,14 +9,13 @@ const { UsageState } = require("../ExportsInfo");
|
|
|
9
9
|
const makeSerializable = require("../util/makeSerializable");
|
|
10
10
|
const NullDependency = require("./NullDependency");
|
|
11
11
|
|
|
12
|
-
/** @
|
|
13
|
-
/** @
|
|
14
|
-
/** @
|
|
15
|
-
/** @
|
|
16
|
-
/** @
|
|
17
|
-
/** @
|
|
18
|
-
/** @
|
|
19
|
-
/** @typedef {import("../util/runtime").RuntimeSpec} RuntimeSpec */
|
|
12
|
+
/** @import { ReplaceSource } from "webpack-sources" */
|
|
13
|
+
/** @import Dependency, { ExportInfoName } from "../Dependency" */
|
|
14
|
+
/** @import { DependencyTemplateContext } from "../DependencyTemplate" */
|
|
15
|
+
/** @import Module from "../Module" */
|
|
16
|
+
/** @import ModuleGraph from "../ModuleGraph" */
|
|
17
|
+
/** @import { Range } from "../javascript/JavascriptParser" */
|
|
18
|
+
/** @import { RuntimeSpec } from "../util/runtime" */
|
|
20
19
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectDeserializerContext<[Range, ExportInfoName[] | null, string | null]>} ObjectDeserializerContext */
|
|
21
20
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext<[Range, ExportInfoName[] | null, string | null]>} ObjectSerializerContext */
|
|
22
21
|
|
|
@@ -9,11 +9,15 @@ const makeSerializable = require("../util/makeSerializable");
|
|
|
9
9
|
const CachedConstDependency = require("./CachedConstDependency");
|
|
10
10
|
const ExternalModuleInitFragment = require("./ExternalModuleInitFragment");
|
|
11
11
|
|
|
12
|
-
/** @
|
|
13
|
-
/** @
|
|
14
|
-
/** @
|
|
15
|
-
/** @
|
|
16
|
-
/**
|
|
12
|
+
/** @import { ReplaceSource } from "webpack-sources" */
|
|
13
|
+
/** @import Dependency from "../Dependency" */
|
|
14
|
+
/** @import { DependencyTemplateContext } from "../DependencyTemplate" */
|
|
15
|
+
/** @import { Range } from "../javascript/JavascriptParser" */
|
|
16
|
+
/**
|
|
17
|
+
* @import {
|
|
18
|
+
* ArrayImportSpecifiers
|
|
19
|
+
* } from "../dependencies/ExternalModuleInitFragment"
|
|
20
|
+
*/
|
|
17
21
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectDeserializerContext<(string | ArrayImportSpecifiers | undefined)[]>} ObjectDeserializerContext */
|
|
18
22
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext<(string | ArrayImportSpecifiers | undefined)[]>} ObjectSerializerContext */
|
|
19
23
|
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
const InitFragment = require("../InitFragment");
|
|
9
9
|
const makeSerializable = require("../util/makeSerializable");
|
|
10
10
|
|
|
11
|
-
/** @
|
|
12
|
-
/** @
|
|
11
|
+
/** @import { Source } from "webpack-sources" */
|
|
12
|
+
/** @import { GenerateContext } from "../Generator" */
|
|
13
13
|
/** @typedef {{ name: string, value?: string }[]} ArrayImportSpecifiers */
|
|
14
14
|
/** @typedef {Set<string>} ImportSpecifier */
|
|
15
15
|
/** @typedef {Map<string, ImportSpecifier>} ImportSpecifiers */
|
|
@@ -10,11 +10,14 @@ const makeSerializable = require("../util/makeSerializable");
|
|
|
10
10
|
const ExternalModuleInitFragment = require("./ExternalModuleInitFragment");
|
|
11
11
|
const NullDependency = require("./NullDependency");
|
|
12
12
|
|
|
13
|
-
/** @
|
|
14
|
-
/** @
|
|
15
|
-
/** @
|
|
16
|
-
/**
|
|
17
|
-
|
|
13
|
+
/** @import { ReplaceSource } from "webpack-sources" */
|
|
14
|
+
/** @import Dependency from "../Dependency" */
|
|
15
|
+
/** @import { DependencyTemplateContext } from "../DependencyTemplate" */
|
|
16
|
+
/**
|
|
17
|
+
* @import {
|
|
18
|
+
* ArrayImportSpecifiers
|
|
19
|
+
* } from "../dependencies/ExternalModuleInitFragment"
|
|
20
|
+
*/
|
|
18
21
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectDeserializerContext<[string, ArrayImportSpecifiers, string | undefined]>} ObjectDeserializerContext */
|
|
19
22
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext<[string, ArrayImportSpecifiers, string | undefined]>} ObjectSerializerContext */
|
|
20
23
|
|