| /** @typedef {import("./Chunk")} Chunk */ |
| /** @typedef {import("./ChunkGroup")} ChunkGroup */ |
| /** @typedef {import("./Module")} Module */ |
| /** @typedef {import("./DependenciesBlock")} DependenciesBlock */ |
| /** @typedef {import("./AsyncDependenciesBlock")} AsyncDependenciesBlock */ |
| |
| /** |
| * @param {ChunkGroup} chunkGroup the ChunkGroup to connect |
| * @param {Chunk} chunk chunk to tie to ChunkGroup |
| * @returns {void} |
| */ |
| const connectChunkGroupAndChunk = (chunkGroup, chunk) => { |
| if (chunkGroup.pushChunk(chunk)) { |
| chunk.addGroup(chunkGroup); |
| } |
| }; |
| |
| /** |
| * @param {ChunkGroup} parent parent ChunkGroup to connect |
| * @param {ChunkGroup} child child ChunkGroup to connect |
| * @returns {void} |
| */ |
| const connectChunkGroupParentAndChild = (parent, child) => { |
| if (parent.addChild(child)) { |
| child.addParent(parent); |
| } |
| }; |
| |
| /** |
| * @param {Chunk} chunk Chunk to connect to Module |
| * @param {Module} module Module to connect to Chunk |
| * @returns {void} |
| */ |
| const connectChunkAndModule = (chunk, module) => { |
| if (module.addChunk(chunk)) { |
| chunk.addModule(module); |
| } |
| }; |
| |
| /** |
| * @param {Chunk} chunk Chunk being disconnected |
| * @param {Module} module Module being disconnected |
| * @returns {void} |
| */ |
| const disconnectChunkAndModule = (chunk, module) => { |
| chunk.removeModule(module); |
| module.removeChunk(chunk); |
| }; |
| |
| /** |
| * @param {AsyncDependenciesBlock} depBlock DepBlock being tied to ChunkGroup |
| * @param {ChunkGroup} chunkGroup ChunkGroup being tied to DepBlock |
| * @returns {void} |
| */ |
| const connectDependenciesBlockAndChunkGroup = (depBlock, chunkGroup) => { |
| if (chunkGroup.addBlock(depBlock)) { |
| depBlock.chunkGroup = chunkGroup; |
| } |
| }; |
| |
| exports.connectChunkGroupAndChunk = connectChunkGroupAndChunk; |
| exports.connectChunkGroupParentAndChild = connectChunkGroupParentAndChild; |
| exports.connectChunkAndModule = connectChunkAndModule; |
| exports.disconnectChunkAndModule = disconnectChunkAndModule; |
| exports.connectDependenciesBlockAndChunkGroup = connectDependenciesBlockAndChunkGroup; |