class Module extends DependenciesBlock
DependenciesBlock is the base class for all Module classes in webpack. It describes a "block" of dependencies which are pointers to other DependenciesBlock instances. For example when a Module has a CommonJs require statement, the DependencyBlock for the CommonJs module would be added as a dependency to the Module. DependenciesBlock is inherited by two types of classes: Module subclasses and AsyncDependenciesBlock subclasses. The only difference between the two is that AsyncDependenciesBlock subclasses are used for code-splitting (async boundary) and Module subclasses are not.
Extended by ExternalModule, NormalModule, RuntimeModule.
new Module(type, context?, layer?): Module
Creates an instance of Module.
Source Code: lib/DependenciesBlock.js#L32AsyncDependenciesBlock[]BuildInfoBuildMetaDependency[]numberDependency[]Returns the depth. Updates the depth using the provided value.
Source Code: lib/Module.js#L273FactoryMetaReturns the module id assigned by the chunk graph. Updates the module id using the provided value.
Source Code: lib/Module.js#L384Returns the pre-order index. Updates the pre-order index using the provided value.
Source Code: lib/Module.js#L410Returns the post-order index. Updates the post-order index using the provided value.
Source Code: lib/Module.js#L462Returns the issuer. Updates the issuer using the provided value.
Source Code: lib/Module.js#L261booleanDependenciesBlockDependency[]ModuleProfileResolveOptionsstringanybooleanbooleananystringGets exports argument.
anystringReturns the hash of the module.
anystringGets module argument.
Source Code: lib/Module.js#L500(string | ((requestShortener: RequestShortener) => string))[]Gets optimization bailout.
Source Code: lib/Module.js#L512booleanstringReturns the rendered hash of the module.
Source Code: lib/Module.js#L487boolean | SortableSet<string> | nullanymodule.addBlock(block): void
AsyncDependenciesBlockAdds a DependencyBlock to DependencyBlock relationship. This is used for when a Module has a AsyncDependencyBlock tie (for code-splitting)
module.addCacheDependencies(fileDependencies, contextDependencies, missingDependencies, buildDependencies): void
Adds the provided file dependencies to the module.
module.addChunk(chunk): boolean
Adds the provided chunk to the module.
module.addCodeGenerationDependency(codeGenerationDependency): void
DependencyAdds code generation dependency.
module.addDependency(dependency): void
DependencyAdds the provided dependency to the dependencies block.
module.addError(error): void
ErrorAdds the provided error to the module.
module.addPresentationalDependency(presentationalDependency): void
DependencyAdds presentational dependency.
module.addWarning(warning): void
ErrorAdds the provided warning to the module.
module.build(options, compilation, resolver, fs, callback): void
Builds the module using the provided compilation context.
module.chunkCondition(chunk, compilation): boolean
Returns true if the module can be placed in the chunk.
module.cleanupForCache(): void
Assuming this module is in the cache. Remove internal references to allow freeing some memory.
module.clearDependenciesAndBlocks(): void
Clear dependencies and blocks.
module.clearWarningsAndErrors(): void
removes all warnings and errors
module.codeGeneration(context): CodeGenerationResult
CodeGenerationContextCodeGenerationResultGenerates code and runtime requirements for this module.
module.deserialize(__namedParameters): void
ObjectDeserializerContextObjectMiddlewareObject_4Restores this instance from the provided deserializer context.
module.getChunks(): Chunk[]
Chunk[]module.getConcatenationBailoutReason(context): string | undefined
Returns the reason this module cannot be concatenated, when one exists.
module.getErrors(): Error[] | undefined
Returns list of errors if any.
module.getExportsType(moduleGraph, strict?): ExportsType
Returns export type.
module.getNumberOfChunks(): number
numbermodule.getNumberOfErrors(): number
numberGets number of errors.
module.getNumberOfWarnings(): number
numberGets number of warnings.
module.getReferencedSourceTypes(): ReadonlySet<string> | undefined
Freshly recomputed source types when they depend on incoming connections, for chunk-graph cache invalidation; undefined otherwise. #20800
module.getRootBlock(): DependenciesBlock
DependenciesBlockmodule.getSideEffectsConnectionState(moduleGraph): ConnectionState
ModuleGraphConnectionStateGets side effects connection state.
module.getSourceBasicTypes(): ReadonlySet<string>
ReadonlySet<string>Basic source types are high-level categories like javascript, css, webassembly, etc. We only have built-in knowledge about the javascript basic type here; other basic types may be added or changed over time by generators and do not need to be handled or detected here. Some modules, e.g. RemoteModule, may return non-basic source types like "remote" and "share-init" from getSourceTypes(), but their generated output is still JavaScript, i.e. their basic type is JS.
module.getSourceTypes(): ReadonlySet<string>
ReadonlySet<string>Returns the source types this module can generate.
module.getUnsafeCacheData(): UnsafeCacheData
UnsafeCacheDataModule should be unsafe cached. Get data that's needed for that. This data will be passed to restoreFromUnsafeCache later.
module.getWarnings(): Error[] | undefined
Returns list of warnings if any.
module.hasChunkCondition(): boolean
booleanmodule.hasReasonForChunk(chunk, moduleGraph, chunkGraph): boolean
Checks whether this module contains the chunk.
module.hasReasons(moduleGraph, runtime): boolean
Checks whether this module contains the module graph.
module.identifier(): string
stringReturns the unique identifier used to reference this module.
module.invalidateBuild(): void
Invalidates the cached state associated with this value.
module.isAccessibleInChunk(chunkGraph, chunk, ignoreChunk?): boolean
Checks whether this module is accessible in chunk.
module.isAccessibleInChunkGroup(chunkGraph, chunkGroup, ignoreChunk?): boolean
Checks whether this module is accessible in chunk group.
module.isEntryModule(): boolean
booleanmodule.isInChunk(chunk): boolean
Checks whether this module is in the provided chunk.
module.isOptional(moduleGraph): boolean
ModuleGraphbooleanChecks whether this module is optional.
module.isProvided(exportName): boolean | null
Checks whether this module provides the specified export.
module.libIdent(options): string | null
LibIdentOptionsGets the library identifier.
module.nameForCondition(): string | null
Returns the path used when matching this module against rule conditions.
module.needBuild(context, callback): void
NeedBuildContext(err?: WebpackError | null, needBuild?: boolean) => voidChecks whether the module needs to be rebuilt for the current build state.
module.needRebuild(fileTimestamps, contextTimestamps): boolean
Checks whether it needs rebuild.
module.originalSource(): Source | null
Gets the original source.
module.readableIdentifier(requestShortener): string
RequestShortenerstringReturns a human-readable identifier for this module.
module.removeChunk(chunk): void
ChunkRemoves the provided chunk from the module.
module.removeDependency(dependency): void
DependencyRemoves dependency.
module.serialize(__namedParameters): void
ObjectSerializerContextObjectMiddlewareObject_5Serializes this instance into the provided serializer context.
module.size(type?): number
Returns the estimated size for the requested source type.
module.source(dependencyTemplates, runtimeTemplate, type?): Source
Returns generated source.
module.updateCacheModule(module): void
ModuleAssuming this module is in the cache. Update the (cached) module with the fresh module from the factory. Usually updates internal references and properties.
module.updateHash(hash, context): void
HashUpdateHashContextDependencyUpdates the hash with the data contributed by this instance.
Module.getSourceBasicTypes(module): ReadonlySet<string>
Gets source basic types.