Skip to content

Commit ce184a5

Browse files
authored
Merge pull request webpack#7195 from webpack/feature/type-graph-helpers
chore(types): add types to GraphHelpers
2 parents 673c103 + 19bd475 commit ce184a5

File tree

2 files changed

+45
-5
lines changed

2 files changed

+45
-5
lines changed

lib/DependenciesBlock.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,15 @@
66

77
const DependenciesBlockVariable = require("./DependenciesBlockVariable");
88

9+
/** @typedef {import("./ChunkGroup")} ChunkGroup */
10+
911
class DependenciesBlock {
1012
constructor() {
1113
this.dependencies = [];
1214
this.blocks = [];
1315
this.variables = [];
16+
/** @type {ChunkGroup=} */
17+
this.chunkGroup = undefined;
1418
}
1519

1620
addBlock(block) {

lib/GraphHelpers.js

Lines changed: 41 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,64 @@
1-
exports.connectChunkGroupAndChunk = (chunkGroup, chunk) => {
1+
/** @typedef {import("./Chunk")} Chunk */
2+
/** @typedef {import("./ChunkGroup")} ChunkGroup */
3+
/** @typedef {import("./Module")} Module */
4+
/** @typedef {import("./DependenciesBlock")} DependenciesBlock */
5+
6+
/**
7+
* @param {ChunkGroup} chunkGroup the ChunkGroup to connect
8+
* @param {Chunk} chunk chunk to tie to ChunkGroup
9+
* @returns {void}
10+
*/
11+
const connectChunkGroupAndChunk = (chunkGroup, chunk) => {
212
if (chunkGroup.pushChunk(chunk)) {
313
chunk.addGroup(chunkGroup);
414
}
515
};
616

7-
exports.connectChunkGroupParentAndChild = (parent, child) => {
17+
/**
18+
* @param {ChunkGroup} parent parent ChunkGroup to connect
19+
* @param {ChunkGroup} child child ChunkGroup to connect
20+
* @returns {void}
21+
*/
22+
const connectChunkGroupParentAndChild = (parent, child) => {
823
if (parent.addChild(child)) {
924
child.addParent(parent);
1025
}
1126
};
1227

13-
exports.connectChunkAndModule = (chunk, module) => {
28+
/**
29+
* @param {Chunk} chunk Chunk to connect to Module
30+
* @param {Module} module Module to connect to Chunk
31+
* @returns {void}
32+
*/
33+
const connectChunkAndModule = (chunk, module) => {
1434
if (module.addChunk(chunk)) {
1535
chunk.addModule(module);
1636
}
1737
};
1838

19-
exports.disconnectChunkAndModule = (chunk, module) => {
39+
/**
40+
* @param {Chunk} chunk Chunk being disconnected
41+
* @param {Module} module Module being disconnected
42+
* @returns {void}
43+
*/
44+
const disconnectChunkAndModule = (chunk, module) => {
2045
chunk.removeModule(module);
2146
module.removeChunk(chunk);
2247
};
2348

24-
exports.connectDependenciesBlockAndChunkGroup = (depBlock, chunkGroup) => {
49+
/**
50+
* @param {DependenciesBlock} depBlock DepBlock being tied to ChunkGroup
51+
* @param {ChunkGroup} chunkGroup ChunkGroup being tied to DepBlock
52+
* @returns {void}
53+
*/
54+
const connectDependenciesBlockAndChunkGroup = (depBlock, chunkGroup) => {
2555
if (chunkGroup.addBlock(depBlock)) {
2656
depBlock.chunkGroup = chunkGroup;
2757
}
2858
};
59+
60+
exports.connectChunkGroupAndChunk = connectChunkGroupAndChunk;
61+
exports.connectChunkGroupParentAndChild = connectChunkGroupParentAndChild;
62+
exports.connectChunkAndModule = connectChunkAndModule;
63+
exports.disconnectChunkAndModule = disconnectChunkAndModule;
64+
exports.connectDependenciesBlockAndChunkGroup = connectDependenciesBlockAndChunkGroup;

0 commit comments

Comments
 (0)