@rsdoctor/graph 1.0.0-alpha.4 → 1.0.0-beta.1
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/dist/cjs/graph/package-graph/graph.js +17 -0
- package/dist/cjs/graph/package-graph/package.js +9 -1
- package/dist/esm/graph/package-graph/graph.js +17 -0
- package/dist/esm/graph/package-graph/package.js +9 -1
- package/dist/type/graph/package-graph/graph.d.ts +1 -0
- package/dist/type/graph/package-graph/graph.d.ts.map +1 -1
- package/dist/type/graph/package-graph/package.d.ts +2 -0
- package/dist/type/graph/package-graph/package.d.ts.map +1 -1
- package/package.json +3 -3
@@ -85,6 +85,7 @@ class PackageGraph {
|
|
85
85
|
}
|
86
86
|
if (meta.packageData) {
|
87
87
|
const pkg2 = getPackageByData(meta.packageData);
|
88
|
+
this.setDuplicates(module2, pkg2);
|
88
89
|
pkgsMap.set(file, pkg2);
|
89
90
|
return pkg2;
|
90
91
|
}
|
@@ -101,6 +102,7 @@ class PackageGraph {
|
|
101
102
|
data.root = (0, import_path.resolve)(this._root, data.root);
|
102
103
|
}
|
103
104
|
const pkg = getPackageByData(data);
|
105
|
+
this.setDuplicates(module2, pkg);
|
104
106
|
this.addPackage(pkg);
|
105
107
|
pkgsMap.set(file, pkg);
|
106
108
|
return pkg;
|
@@ -130,6 +132,21 @@ class PackageGraph {
|
|
130
132
|
}
|
131
133
|
}
|
132
134
|
}
|
135
|
+
setDuplicates(module2, pkg) {
|
136
|
+
const assetsList = [];
|
137
|
+
const chunksList = module2.getChunks();
|
138
|
+
chunksList.forEach(
|
139
|
+
(chunk) => assetsList.push(
|
140
|
+
...chunk.getAssets().filter((asset) => asset.path.endsWith(".js"))
|
141
|
+
)
|
142
|
+
);
|
143
|
+
if (chunksList.length > 1) {
|
144
|
+
pkg.setDuplicates({
|
145
|
+
module: { id: module2.id, path: module2.path },
|
146
|
+
chunks: assetsList.map((asset) => ({ name: asset.path }))
|
147
|
+
});
|
148
|
+
}
|
149
|
+
}
|
133
150
|
getDependenciesFromPackage(pkg) {
|
134
151
|
return this._dependencies.filter((dep) => dep.dependency === pkg);
|
135
152
|
}
|
@@ -33,6 +33,13 @@ class Package {
|
|
33
33
|
this.name = name;
|
34
34
|
this.root = root;
|
35
35
|
this.version = version;
|
36
|
+
this.duplicates = [];
|
37
|
+
}
|
38
|
+
setDuplicates(data) {
|
39
|
+
this.duplicates.push({
|
40
|
+
module: data.module,
|
41
|
+
chunks: data.chunks
|
42
|
+
});
|
36
43
|
}
|
37
44
|
getModules() {
|
38
45
|
return this._modules.slice();
|
@@ -112,7 +119,8 @@ class Package {
|
|
112
119
|
root: this.root,
|
113
120
|
version: this.version,
|
114
121
|
modules: this.getModules().map((e) => e.id),
|
115
|
-
size: this.getSize()
|
122
|
+
size: this.getSize(),
|
123
|
+
duplicates: this.duplicates
|
116
124
|
};
|
117
125
|
}
|
118
126
|
}
|
@@ -51,6 +51,7 @@ class PackageGraph {
|
|
51
51
|
}
|
52
52
|
if (meta.packageData) {
|
53
53
|
const pkg2 = getPackageByData(meta.packageData);
|
54
|
+
this.setDuplicates(module, pkg2);
|
54
55
|
pkgsMap.set(file, pkg2);
|
55
56
|
return pkg2;
|
56
57
|
}
|
@@ -67,6 +68,7 @@ class PackageGraph {
|
|
67
68
|
data.root = resolve(this._root, data.root);
|
68
69
|
}
|
69
70
|
const pkg = getPackageByData(data);
|
71
|
+
this.setDuplicates(module, pkg);
|
70
72
|
this.addPackage(pkg);
|
71
73
|
pkgsMap.set(file, pkg);
|
72
74
|
return pkg;
|
@@ -96,6 +98,21 @@ class PackageGraph {
|
|
96
98
|
}
|
97
99
|
}
|
98
100
|
}
|
101
|
+
setDuplicates(module, pkg) {
|
102
|
+
const assetsList = [];
|
103
|
+
const chunksList = module.getChunks();
|
104
|
+
chunksList.forEach(
|
105
|
+
(chunk) => assetsList.push(
|
106
|
+
...chunk.getAssets().filter((asset) => asset.path.endsWith(".js"))
|
107
|
+
)
|
108
|
+
);
|
109
|
+
if (chunksList.length > 1) {
|
110
|
+
pkg.setDuplicates({
|
111
|
+
module: { id: module.id, path: module.path },
|
112
|
+
chunks: assetsList.map((asset) => ({ name: asset.path }))
|
113
|
+
});
|
114
|
+
}
|
115
|
+
}
|
99
116
|
getDependenciesFromPackage(pkg) {
|
100
117
|
return this._dependencies.filter((dep) => dep.dependency === pkg);
|
101
118
|
}
|
@@ -10,6 +10,13 @@ class Package {
|
|
10
10
|
this.name = name;
|
11
11
|
this.root = root;
|
12
12
|
this.version = version;
|
13
|
+
this.duplicates = [];
|
14
|
+
}
|
15
|
+
setDuplicates(data) {
|
16
|
+
this.duplicates.push({
|
17
|
+
module: data.module,
|
18
|
+
chunks: data.chunks
|
19
|
+
});
|
13
20
|
}
|
14
21
|
getModules() {
|
15
22
|
return this._modules.slice();
|
@@ -89,7 +96,8 @@ class Package {
|
|
89
96
|
root: this.root,
|
90
97
|
version: this.version,
|
91
98
|
modules: this.getModules().map((e) => e.id),
|
92
|
-
size: this.getSize()
|
99
|
+
size: this.getSize(),
|
100
|
+
duplicates: this.duplicates
|
93
101
|
};
|
94
102
|
}
|
95
103
|
}
|
@@ -16,6 +16,7 @@ export declare class PackageGraph implements SDK.PackageGraphInstance {
|
|
16
16
|
getPackagesByName(name: string): SDK.PackageInstance[];
|
17
17
|
getPackageByData(data: SDK.PackageBasicData): SDK.PackageInstance | undefined;
|
18
18
|
addPackage(pkg: SDK.PackageInstance): void;
|
19
|
+
setDuplicates(module: SDK.ModuleInstance, pkg: SDK.PackageInstance): void;
|
19
20
|
getDependenciesFromPackage(pkg: SDK.PackageInstance): SDK.PackageDependencyInstance[];
|
20
21
|
addDependency(dep: SDK.PackageDependencyInstance): void;
|
21
22
|
getDependenciesFromOrigin(): SDK.PackageDependencyInstance[];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../../src/graph/package-graph/graph.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,qBAAa,YAAa,YAAW,GAAG,CAAC,oBAAoB;IAC3D,MAAM,CAAC,eAAe,CACpB,KAAK,EAAE,GAAG,CAAC,mBAAmB,EAC9B,IAAI,EAAE,MAAM,EACZ,cAAc,CAAC,EAAE,GAAG,CAAC,cAAc,GAClC,YAAY;IAmCf,OAAO,CAAC,KAAK,CAAS;IAEtB,OAAO,CAAC,aAAa,CAAuC;IAE5D,OAAO,CAAC,SAAS,CAA6B;IAE9C,OAAO,CAAC,WAAW,CAA4C;IAE/D,OAAO,CAAC,WAAW,CAA0C;gBAEjD,IAAI,EAAE,MAAM;IAIxB,WAAW;IAIX,kBAAkB,CAChB,MAAM,EAAE,GAAG,CAAC,cAAc,EAC1B,QAAQ,CAAC,EAAE,GAAG,CAAC,cAAc;
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../../src/graph/package-graph/graph.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,qBAAa,YAAa,YAAW,GAAG,CAAC,oBAAoB;IAC3D,MAAM,CAAC,eAAe,CACpB,KAAK,EAAE,GAAG,CAAC,mBAAmB,EAC9B,IAAI,EAAE,MAAM,EACZ,cAAc,CAAC,EAAE,GAAG,CAAC,cAAc,GAClC,YAAY;IAmCf,OAAO,CAAC,KAAK,CAAS;IAEtB,OAAO,CAAC,aAAa,CAAuC;IAE5D,OAAO,CAAC,SAAS,CAA6B;IAE9C,OAAO,CAAC,WAAW,CAA4C;IAE/D,OAAO,CAAC,WAAW,CAA0C;gBAEjD,IAAI,EAAE,MAAM;IAIxB,WAAW;IAIX,kBAAkB,CAChB,MAAM,EAAE,GAAG,CAAC,cAAc,EAC1B,QAAQ,CAAC,EAAE,GAAG,CAAC,cAAc;IA+C/B,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAI7B,qBAAqB,CAAC,IAAI,EAAE,MAAM;IAIlC,iBAAiB,CAAC,IAAI,EAAE,MAAM;IAI9B,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,gBAAgB;IAQ3C,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,eAAe;IAcnC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,cAAc,EAAE,GAAG,EAAE,GAAG,CAAC,eAAe;IAgBlE,0BAA0B,CAAC,GAAG,EAAE,GAAG,CAAC,eAAe;IAInD,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,yBAAyB;IAMhD,yBAAyB;IAIzB,oBAAoB,IAAI,GAAG,CAAC,eAAe,EAAE,EAAE;IAW/C,MAAM,IAAI,GAAG,CAAC,gBAAgB;CAM/B"}
|
@@ -4,10 +4,12 @@ export declare class Package implements SDK.PackageInstance {
|
|
4
4
|
root: string;
|
5
5
|
name: string;
|
6
6
|
version: string;
|
7
|
+
duplicates: SDK.CrossChunksPackageType[];
|
7
8
|
private _modules;
|
8
9
|
private _dependencies;
|
9
10
|
private _imported;
|
10
11
|
constructor(name: string, root: string, version: string);
|
12
|
+
setDuplicates(data: SDK.CrossChunksPackageType): void;
|
11
13
|
getModules(): SDK.ModuleInstance[];
|
12
14
|
getDependencies(): SDK.PackageDependencyInstance[];
|
13
15
|
getImported(): SDK.PackageInstance[];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../../../src/graph/package-graph/package.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAM3C,qBAAa,OAAQ,YAAW,GAAG,CAAC,eAAe;IACjD,EAAE,SAAQ;IAEV,IAAI,EAAE,MAAM,CAAC;IAEb,IAAI,EAAE,MAAM,CAAC;IAEb,OAAO,EAAE,MAAM,CAAC;IAEhB,OAAO,CAAC,QAAQ,CAA4B;IAE5C,OAAO,CAAC,aAAa,CAAuC;IAE5D,OAAO,CAAC,SAAS,CAA6B;gBAElC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;
|
1
|
+
{"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../../../src/graph/package-graph/package.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAM3C,qBAAa,OAAQ,YAAW,GAAG,CAAC,eAAe;IACjD,EAAE,SAAQ;IAEV,IAAI,EAAE,MAAM,CAAC;IAEb,IAAI,EAAE,MAAM,CAAC;IAEb,OAAO,EAAE,MAAM,CAAC;IAEhB,UAAU,EAAE,GAAG,CAAC,sBAAsB,EAAE,CAAC;IAEzC,OAAO,CAAC,QAAQ,CAA4B;IAE5C,OAAO,CAAC,aAAa,CAAuC;IAE5D,OAAO,CAAC,SAAS,CAA6B;gBAElC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAOvD,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,sBAAsB;IAO9C,UAAU,IAAI,GAAG,CAAC,cAAc,EAAE;IAIlC,eAAe,IAAI,GAAG,CAAC,yBAAyB,EAAE;IAIlD,WAAW,IAAI,GAAG,CAAC,eAAe,EAAE;IAIpC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,cAAc;IAMpC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,yBAAyB;IAOhD,oBAAoB,CAAC,KAAK,EAAE,GAAG,CAAC,oBAAoB;IA+BpD,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,eAAe;IAMpC,OAAO,CAAC,IAAI,EAAE,MAAM;IAcpB,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,eAAe;IAQ/B,OAAO,IAAI,GAAG,CAAC,UAAU;IAiBzB,MAAM,IAAI,GAAG,CAAC,WAAW;CAW1B"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@rsdoctor/graph",
|
3
|
-
"version": "1.0.0-
|
3
|
+
"version": "1.0.0-beta.1",
|
4
4
|
"repository": {
|
5
5
|
"type": "git",
|
6
6
|
"url": "https://github.com/web-infra-dev/rsdoctor",
|
@@ -17,8 +17,8 @@
|
|
17
17
|
"lodash.unionby": "^4.8.0",
|
18
18
|
"socket.io": "4.8.1",
|
19
19
|
"source-map": "^0.7.4",
|
20
|
-
"@rsdoctor/types": "1.0.0-
|
21
|
-
"@rsdoctor/utils": "1.0.0-
|
20
|
+
"@rsdoctor/types": "1.0.0-beta.1",
|
21
|
+
"@rsdoctor/utils": "1.0.0-beta.1"
|
22
22
|
},
|
23
23
|
"devDependencies": {
|
24
24
|
"@types/body-parser": "1.19.5",
|