| | |
| | | /** @typedef {import("../Compilation").ChunkHashContext} ChunkHashContext */ |
| | | /** @typedef {import("../javascript/JavascriptModulesPlugin").RenderContext} RenderContext */ |
| | | /** @typedef {import("../util/Hash")} Hash */ |
| | | /** @template T @typedef {import("./AbstractLibraryPlugin").LibraryContext<T>} LibraryContext<T> */ |
| | | /** |
| | | * Defines the shared type used by this module. |
| | | * @template T |
| | | * @typedef {import("./AbstractLibraryPlugin").LibraryContext<T>} LibraryContext<T> |
| | | */ |
| | | |
| | | /** |
| | | * Defines the amd library plugin options type used by this module. |
| | | * @typedef {object} AmdLibraryPluginOptions |
| | | * @property {LibraryType} type |
| | | * @property {boolean=} requireAsWrapper |
| | | */ |
| | | |
| | | /** |
| | | * Defines the amd library plugin parsed type used by this module. |
| | | * @typedef {object} AmdLibraryPluginParsed |
| | | * @property {string} name |
| | | * @property {string} amdContainer |
| | | */ |
| | | |
| | | /** |
| | | * Represents the amd library plugin runtime component. |
| | | * @typedef {AmdLibraryPluginParsed} T |
| | | * @extends {AbstractLibraryPlugin<AmdLibraryPluginParsed>} |
| | | */ |
| | | class AmdLibraryPlugin extends AbstractLibraryPlugin { |
| | | /** |
| | | * Creates an instance of AmdLibraryPlugin. |
| | | * @param {AmdLibraryPluginOptions} options the plugin options |
| | | */ |
| | | constructor(options) { |
| | |
| | | pluginName: "AmdLibraryPlugin", |
| | | type: options.type |
| | | }); |
| | | /** @type {AmdLibraryPluginOptions["requireAsWrapper"]} */ |
| | | this.requireAsWrapper = options.requireAsWrapper; |
| | | } |
| | | |
| | | /** |
| | | * Returns preprocess as needed by overriding. |
| | | * @param {LibraryOptions} library normalized library option |
| | | * @returns {T | false} preprocess as needed by overriding |
| | | * @returns {T} preprocess as needed by overriding |
| | | */ |
| | | parseOptions(library) { |
| | | const { name, amdContainer } = library; |
| | |
| | | } |
| | | |
| | | /** |
| | | * Returns source with library export. |
| | | * @param {Source} source source |
| | | * @param {RenderContext} renderContext render context |
| | | * @param {LibraryContext<T>} libraryContext context |
| | |
| | | } |
| | | |
| | | /** |
| | | * Processes the provided chunk. |
| | | * @param {Chunk} chunk the chunk |
| | | * @param {Hash} hash hash |
| | | * @param {ChunkHashContext} chunkHashContext chunk hash context |