@rsdoctor/utils 1.1.9 → 1.2.0-beta.0
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/build/envinfo.js +107 -95
- package/dist/cjs/build/file/cache.js +65 -56
- package/dist/cjs/build/file/index.js +78 -41
- package/dist/cjs/build/file/sharding.js +90 -78
- package/dist/cjs/build/index.js +49 -47
- package/dist/cjs/build/json.js +91 -98
- package/dist/cjs/build/process.js +47 -42
- package/dist/cjs/build/server.js +110 -87
- package/dist/cjs/common/alerts.js +46 -44
- package/dist/cjs/common/algorithm.js +63 -54
- package/dist/cjs/common/bundle.js +52 -46
- package/dist/cjs/common/crypto.js +47 -46
- package/dist/cjs/common/data/index.js +381 -455
- package/dist/cjs/common/file.js +44 -0
- package/dist/cjs/common/global-config.js +72 -64
- package/dist/cjs/common/graph/assets.js +274 -308
- package/dist/cjs/common/graph/chunk.js +66 -63
- package/dist/cjs/common/graph/dependency.js +42 -32
- package/dist/cjs/common/graph/entrypoints.js +33 -25
- package/dist/cjs/common/graph/index.js +93 -27
- package/dist/cjs/common/graph/modules.js +113 -98
- package/dist/cjs/common/index.js +101 -83
- package/dist/cjs/common/loader.js +277 -273
- package/dist/cjs/common/lodash.js +73 -62
- package/dist/cjs/common/manifest.js +57 -59
- package/dist/cjs/common/package.js +79 -80
- package/dist/cjs/common/plugin.js +78 -73
- package/dist/cjs/common/resolver.js +79 -69
- package/dist/cjs/common/rspack.js +43 -34
- package/dist/cjs/common/summary.js +39 -31
- package/dist/cjs/common/time.js +73 -78
- package/dist/cjs/common/url.js +44 -36
- package/dist/cjs/error/error.js +183 -220
- package/dist/cjs/error/index.js +70 -28
- package/dist/cjs/error/transform.js +150 -143
- package/dist/cjs/error/utils.js +54 -58
- package/dist/cjs/index.js +37 -38
- package/dist/cjs/logger.js +99 -73
- package/dist/cjs/rule-utils/document/document.js +83 -82
- package/dist/cjs/rule-utils/document/index.js +75 -23
- package/dist/cjs/rule-utils/document/server.js +42 -35
- package/dist/cjs/rule-utils/document/types.js +17 -15
- package/dist/cjs/rule-utils/index.js +66 -21
- package/dist/cjs/rule-utils/parser/asserts.js +129 -147
- package/dist/cjs/rule-utils/parser/index.js +84 -25
- package/dist/cjs/rule-utils/parser/parser.js +50 -85
- package/dist/cjs/rule-utils/parser/types.js +38 -30
- package/dist/cjs/rule-utils/parser/utils.js +141 -168
- package/dist/esm/build/envinfo.mjs +57 -0
- package/dist/esm/build/file/cache.mjs +23 -0
- package/dist/esm/build/file/index.mjs +4 -0
- package/dist/esm/build/file/sharding.mjs +50 -0
- package/dist/esm/build/index.mjs +6 -0
- package/dist/esm/build/json.mjs +66 -0
- package/dist/esm/build/process.mjs +17 -0
- package/dist/esm/build/server.mjs +96 -0
- package/dist/esm/common/alerts.mjs +17 -0
- package/dist/esm/common/algorithm.mjs +32 -0
- package/dist/esm/common/bundle.mjs +22 -0
- package/dist/esm/common/crypto.mjs +17 -0
- package/dist/esm/common/data/index.mjs +354 -0
- package/dist/esm/common/file.mjs +7 -0
- package/dist/esm/common/global-config.mjs +32 -0
- package/dist/esm/common/graph/assets.mjs +238 -0
- package/dist/esm/common/graph/chunk.mjs +32 -0
- package/dist/esm/common/graph/dependency.mjs +10 -0
- package/dist/esm/common/graph/entrypoints.mjs +4 -0
- package/dist/esm/common/graph/index.mjs +5 -0
- package/dist/esm/common/graph/modules.mjs +78 -0
- package/dist/esm/common/index.mjs +19 -0
- package/dist/esm/common/loader.mjs +247 -0
- package/dist/esm/common/lodash.mjs +32 -0
- package/dist/esm/common/manifest.mjs +30 -0
- package/dist/esm/common/package.mjs +56 -0
- package/dist/esm/common/plugin.mjs +48 -0
- package/dist/esm/common/resolver.mjs +46 -0
- package/dist/esm/common/rspack.mjs +9 -0
- package/dist/esm/common/summary.mjs +8 -0
- package/dist/esm/common/time.mjs +43 -0
- package/dist/esm/common/url.mjs +14 -0
- package/dist/esm/error/error.mjs +154 -0
- package/dist/esm/error/index.mjs +3 -0
- package/dist/esm/error/transform.mjs +138 -0
- package/dist/esm/error/utils.mjs +22 -0
- package/dist/esm/index.mjs +3 -0
- package/dist/esm/logger.mjs +49 -0
- package/dist/esm/rule-utils/document/document.mjs +58 -0
- package/dist/esm/rule-utils/document/index.mjs +3 -0
- package/dist/esm/rule-utils/document/server.mjs +12 -0
- package/dist/esm/rule-utils/index.mjs +2 -0
- package/dist/esm/rule-utils/parser/asserts.mjs +104 -0
- package/dist/esm/rule-utils/parser/index.mjs +4 -0
- package/dist/esm/rule-utils/parser/parser.mjs +23 -0
- package/dist/esm/rule-utils/parser/types.mjs +7 -0
- package/dist/esm/rule-utils/parser/utils.mjs +109 -0
- package/dist/type/common/file.d.ts +3 -0
- package/dist/type/common/file.d.ts.map +1 -0
- package/dist/type/common/graph/modules.d.ts +1 -1
- package/dist/type/common/graph/modules.d.ts.map +1 -1
- package/dist/type/common/index.d.ts +1 -0
- package/dist/type/common/index.d.ts.map +1 -1
- package/dist/type/logger.d.ts +3 -0
- package/dist/type/logger.d.ts.map +1 -1
- package/package.json +13 -12
- package/dist/esm/build/envinfo.js +0 -75
- package/dist/esm/build/file/cache.js +0 -30
- package/dist/esm/build/file/index.js +0 -7
- package/dist/esm/build/file/sharding.js +0 -50
- package/dist/esm/build/index.js +0 -12
- package/dist/esm/build/json.js +0 -85
- package/dist/esm/build/process.js +0 -24
- package/dist/esm/build/server.js +0 -96
- package/dist/esm/common/alerts.js +0 -25
- package/dist/esm/common/algorithm.js +0 -39
- package/dist/esm/common/bundle.js +0 -30
- package/dist/esm/common/crypto.js +0 -28
- package/dist/esm/common/data/index.js +0 -428
- package/dist/esm/common/global-config.js +0 -38
- package/dist/esm/common/graph/assets.js +0 -310
- package/dist/esm/common/graph/chunk.js +0 -49
- package/dist/esm/common/graph/dependency.js +0 -14
- package/dist/esm/common/graph/entrypoints.js +0 -6
- package/dist/esm/common/graph/index.js +0 -5
- package/dist/esm/common/graph/modules.js +0 -90
- package/dist/esm/common/index.js +0 -36
- package/dist/esm/common/loader.js +0 -279
- package/dist/esm/common/lodash.js +0 -49
- package/dist/esm/common/manifest.js +0 -46
- package/dist/esm/common/package.js +0 -71
- package/dist/esm/common/plugin.js +0 -59
- package/dist/esm/common/resolver.js +0 -54
- package/dist/esm/common/rspack.js +0 -12
- package/dist/esm/common/summary.js +0 -10
- package/dist/esm/common/time.js +0 -64
- package/dist/esm/common/url.js +0 -20
- package/dist/esm/error/error.js +0 -202
- package/dist/esm/error/index.js +0 -5
- package/dist/esm/error/transform.js +0 -141
- package/dist/esm/error/utils.js +0 -40
- package/dist/esm/index.js +0 -6
- package/dist/esm/logger.js +0 -43
- package/dist/esm/rule-utils/document/document.js +0 -67
- package/dist/esm/rule-utils/document/index.js +0 -3
- package/dist/esm/rule-utils/document/server.js +0 -17
- package/dist/esm/rule-utils/index.js +0 -2
- package/dist/esm/rule-utils/parser/asserts.js +0 -132
- package/dist/esm/rule-utils/parser/index.js +0 -4
- package/dist/esm/rule-utils/parser/parser.js +0 -58
- package/dist/esm/rule-utils/parser/types.js +0 -9
- package/dist/esm/rule-utils/parser/utils.js +0 -164
- /package/dist/esm/rule-utils/document/{types.js → types.mjs} +0 -0
|
@@ -1,316 +1,320 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, definition)=>{
|
|
5
|
+
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: definition[key]
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
})();
|
|
11
|
+
(()=>{
|
|
12
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
13
|
+
})();
|
|
14
|
+
(()=>{
|
|
15
|
+
__webpack_require__.r = (exports1)=>{
|
|
16
|
+
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
+
value: 'Module'
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
var __webpack_exports__ = {};
|
|
25
|
+
__webpack_require__.r(__webpack_exports__);
|
|
26
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
+
getLoadersTransformData: ()=>getLoadersTransformData,
|
|
28
|
+
getLoaderFileDetails: ()=>getLoaderFileDetails,
|
|
29
|
+
isVue: ()=>isVue,
|
|
30
|
+
getLoaderFolderStatistics: ()=>getLoaderFolderStatistics,
|
|
31
|
+
getLoaderChartData: ()=>getLoaderChartData,
|
|
32
|
+
getLoaderFileFirstInput: ()=>getLoaderFileFirstInput,
|
|
33
|
+
getDirectoriesLoaders: ()=>getDirectoriesLoaders,
|
|
34
|
+
getLoaderFileInputAndOutput: ()=>getLoaderFileInputAndOutput,
|
|
35
|
+
getLoaderNames: ()=>getLoaderNames,
|
|
36
|
+
LoaderInternalPropertyName: ()=>LoaderInternalPropertyName,
|
|
37
|
+
getLoaderCosts: ()=>getLoaderCosts,
|
|
38
|
+
getLoaderFileTree: ()=>getLoaderFileTree,
|
|
39
|
+
findLoaderTotalTiming: ()=>findLoaderTotalTiming,
|
|
40
|
+
getLoadersCosts: ()=>getLoadersCosts
|
|
35
41
|
});
|
|
36
|
-
|
|
37
|
-
var import_algorithm = require("./algorithm");
|
|
42
|
+
const external_algorithm_js_namespaceObject = require("./algorithm.js");
|
|
38
43
|
function findLoaderTotalTiming(loaders) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
46
|
-
if (loader.endAt >= end) {
|
|
47
|
-
end = loader.endAt;
|
|
44
|
+
let start = 1 / 0;
|
|
45
|
+
let end = -1 / 0;
|
|
46
|
+
for(let i = 0; i < loaders.length; i++){
|
|
47
|
+
const loader = loaders[i];
|
|
48
|
+
if (loader.startAt <= start) start = loader.startAt;
|
|
49
|
+
if (loader.endAt >= end) end = loader.endAt;
|
|
48
50
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
};
|
|
51
|
+
return {
|
|
52
|
+
start,
|
|
53
|
+
end
|
|
54
|
+
};
|
|
54
55
|
}
|
|
55
56
|
function getLoadersCosts(filter, loaders) {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
57
|
+
const match = {};
|
|
58
|
+
const others = {};
|
|
59
|
+
loaders.forEach((e)=>{
|
|
60
|
+
if (filter(e)) {
|
|
61
|
+
if (!match[e.pid]) match[e.pid] = [];
|
|
62
|
+
match[e.pid].push([
|
|
63
|
+
e.startAt,
|
|
64
|
+
e.endAt
|
|
65
|
+
]);
|
|
66
|
+
} else {
|
|
67
|
+
if (!others[e.pid]) others[e.pid] = [];
|
|
68
|
+
others[e.pid].push([
|
|
69
|
+
e.startAt,
|
|
70
|
+
e.endAt
|
|
71
|
+
]);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
let costs = 0;
|
|
75
|
+
const pids = Object.keys(match);
|
|
76
|
+
for(let i = 0; i < pids.length; i++){
|
|
77
|
+
const pid = pids[i];
|
|
78
|
+
const _match = (0, external_algorithm_js_namespaceObject.mergeIntervals)(match[pid]);
|
|
79
|
+
const _others = (0, external_algorithm_js_namespaceObject.mergeIntervals)(others[pid] || []).filter(([s, e])=>_match.some((el)=>s >= el[0] && e <= el[1]));
|
|
80
|
+
const matchSum = _match.length ? _match.reduce((t, c)=>t += c[1] - c[0], 0) : 0;
|
|
81
|
+
const othersSum = _others.length ? _others.reduce((t, c)=>t += c[1] - c[0], 0) : 0;
|
|
82
|
+
costs += matchSum - othersSum;
|
|
67
83
|
}
|
|
68
|
-
|
|
69
|
-
let costs = 0;
|
|
70
|
-
const pids = Object.keys(match);
|
|
71
|
-
for (let i = 0; i < pids.length; i++) {
|
|
72
|
-
const pid = pids[i];
|
|
73
|
-
const _match = (0, import_algorithm.mergeIntervals)(match[pid]);
|
|
74
|
-
const _others = (0, import_algorithm.mergeIntervals)(others[pid] || []).filter(
|
|
75
|
-
([s, e]) => _match.some((el) => s >= el[0] && e <= el[1])
|
|
76
|
-
);
|
|
77
|
-
const matchSum = _match.length ? _match.reduce((t, c) => t += c[1] - c[0], 0) : 0;
|
|
78
|
-
const othersSum = _others.length ? _others.reduce((t, c) => t += c[1] - c[0], 0) : 0;
|
|
79
|
-
costs += matchSum - othersSum;
|
|
80
|
-
}
|
|
81
|
-
return costs;
|
|
84
|
+
return costs;
|
|
82
85
|
}
|
|
83
86
|
function getLoaderCosts(loader, loaders) {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
return false;
|
|
95
|
-
});
|
|
96
|
-
let costs = loader.endAt - loader.startAt;
|
|
97
|
-
if (blocked.length) {
|
|
98
|
-
const intervals = blocked.map((e) => [
|
|
99
|
-
Math.max(e.startAt, loader.startAt),
|
|
100
|
-
Math.min(e.endAt, loader.endAt)
|
|
101
|
-
]);
|
|
102
|
-
(0, import_algorithm.mergeIntervals)(intervals).forEach((e) => {
|
|
103
|
-
const sub = e[1] - e[0];
|
|
104
|
-
costs -= sub;
|
|
87
|
+
const blocked = loaders.filter((e)=>{
|
|
88
|
+
if (e.loader.includes('builtin')) return false;
|
|
89
|
+
if (e !== loader && e.pid === loader.pid) {
|
|
90
|
+
if (e.startAt >= loader.startAt) {
|
|
91
|
+
if (e.endAt <= loader.endAt) return true;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return false;
|
|
105
95
|
});
|
|
106
|
-
|
|
107
|
-
|
|
96
|
+
let costs = loader.endAt - loader.startAt;
|
|
97
|
+
if (blocked.length) {
|
|
98
|
+
const intervals = blocked.map((e)=>[
|
|
99
|
+
Math.max(e.startAt, loader.startAt),
|
|
100
|
+
Math.min(e.endAt, loader.endAt)
|
|
101
|
+
]);
|
|
102
|
+
(0, external_algorithm_js_namespaceObject.mergeIntervals)(intervals).forEach((e)=>{
|
|
103
|
+
const sub = e[1] - e[0];
|
|
104
|
+
costs -= sub;
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
return costs;
|
|
108
108
|
}
|
|
109
109
|
function getLoaderNames(loaders) {
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
110
|
+
const names = new Set();
|
|
111
|
+
loaders.forEach((e)=>e.loaders.forEach((l)=>names.add(getLoadrName(l.loader))));
|
|
112
|
+
return [
|
|
113
|
+
...names
|
|
114
|
+
];
|
|
115
115
|
}
|
|
116
116
|
function getLoadersTransformData(loaders) {
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
117
|
+
const res = [];
|
|
118
|
+
for(let i = 0; i < loaders.length; i++){
|
|
119
|
+
const item = loaders[i];
|
|
120
|
+
for(let j = 0; j < item.loaders.length; j++){
|
|
121
|
+
const loader = item.loaders[j];
|
|
122
|
+
res.push(loader);
|
|
123
|
+
}
|
|
123
124
|
}
|
|
124
|
-
|
|
125
|
-
return res;
|
|
125
|
+
return res;
|
|
126
126
|
}
|
|
127
127
|
function getLoaderChartData(loaders) {
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
128
|
+
const res = [];
|
|
129
|
+
const list = getLoadersTransformData(loaders);
|
|
130
|
+
loaders.forEach((item)=>{
|
|
131
|
+
item.loaders.forEach((el)=>{
|
|
132
|
+
res.push({
|
|
133
|
+
layer: item.resource.layer,
|
|
134
|
+
loader: getLoadrName(el.loader),
|
|
135
|
+
isPitch: el.isPitch,
|
|
136
|
+
startAt: el.startAt,
|
|
137
|
+
endAt: el.endAt,
|
|
138
|
+
pid: el.pid,
|
|
139
|
+
sync: el.sync,
|
|
140
|
+
resource: item.resource.path,
|
|
141
|
+
costs: getLoaderCosts(el, list)
|
|
142
|
+
});
|
|
143
|
+
});
|
|
143
144
|
});
|
|
144
|
-
|
|
145
|
-
return res;
|
|
145
|
+
return res;
|
|
146
146
|
}
|
|
147
147
|
function getLoaderFileTree(loaders) {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
return {
|
|
152
|
-
path: resource.path,
|
|
153
|
-
layer: resource.layer,
|
|
154
|
-
loaders: arr.map((l) => {
|
|
148
|
+
const list = getLoadersTransformData(loaders);
|
|
149
|
+
return loaders.map((data)=>{
|
|
150
|
+
const { loaders: arr, resource } = data;
|
|
155
151
|
return {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
152
|
+
path: resource.path,
|
|
153
|
+
layer: resource.layer,
|
|
154
|
+
loaders: arr.map((l)=>({
|
|
155
|
+
key: l.path,
|
|
156
|
+
loader: getLoadrName(l.loader),
|
|
157
|
+
path: l.path,
|
|
158
|
+
errors: l.errors,
|
|
159
|
+
costs: getLoaderCosts(l, list)
|
|
160
|
+
}))
|
|
161
161
|
};
|
|
162
|
-
|
|
163
|
-
};
|
|
164
|
-
});
|
|
162
|
+
});
|
|
165
163
|
}
|
|
166
164
|
function getLoaderFileDetails(path, loaders) {
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
costs: getLoaderCosts(el, list)
|
|
179
|
-
};
|
|
180
|
-
})
|
|
181
|
-
};
|
|
165
|
+
const data = loaders.find((e)=>e.resource.path === path);
|
|
166
|
+
if (!data) throw new Error(`"${path}" not match any loader data`);
|
|
167
|
+
const list = getLoadersTransformData(loaders);
|
|
168
|
+
return {
|
|
169
|
+
...data,
|
|
170
|
+
loaders: data.loaders.map((el)=>({
|
|
171
|
+
...el,
|
|
172
|
+
loader: getLoadrName(el.loader),
|
|
173
|
+
costs: getLoaderCosts(el, list)
|
|
174
|
+
}))
|
|
175
|
+
};
|
|
182
176
|
}
|
|
183
177
|
function getLoaderFolderStatistics(folder, loaders) {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
178
|
+
const datas = loaders.filter((data)=>{
|
|
179
|
+
const { path } = data.resource;
|
|
180
|
+
return path.startsWith(folder);
|
|
181
|
+
});
|
|
182
|
+
const filteredLoaders = [];
|
|
183
|
+
const uniqueLoaders = new Map();
|
|
184
|
+
datas.forEach((data)=>{
|
|
185
|
+
data.loaders.forEach((fl)=>{
|
|
186
|
+
const uniqueLoader = uniqueLoaders.get(fl.loader);
|
|
187
|
+
if (uniqueLoader) uniqueLoaders.set(fl.loader, {
|
|
188
|
+
files: uniqueLoader.files + 1,
|
|
189
|
+
path: fl.path
|
|
190
|
+
});
|
|
191
|
+
else uniqueLoaders.set(fl.loader, {
|
|
192
|
+
files: 1,
|
|
193
|
+
path: fl.path
|
|
194
|
+
});
|
|
195
|
+
return filteredLoaders.push({
|
|
196
|
+
loader: fl.loader,
|
|
197
|
+
startAt: fl.startAt,
|
|
198
|
+
endAt: fl.endAt,
|
|
199
|
+
pid: fl.pid
|
|
200
|
+
});
|
|
197
201
|
});
|
|
198
|
-
} else {
|
|
199
|
-
uniqueLoaders.set(fl.loader, { files: 1, path: fl.path });
|
|
200
|
-
}
|
|
201
|
-
return filteredLoaders.push({
|
|
202
|
-
loader: fl.loader,
|
|
203
|
-
startAt: fl.startAt,
|
|
204
|
-
endAt: fl.endAt,
|
|
205
|
-
pid: fl.pid
|
|
206
|
-
});
|
|
207
202
|
});
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
};
|
|
218
|
-
|
|
219
|
-
return loaderCosts;
|
|
203
|
+
const loaderCosts = Array.from(uniqueLoaders).map((uniqueLoader)=>{
|
|
204
|
+
const filter = (l)=>l.loader === uniqueLoader[0];
|
|
205
|
+
const costs = getLoadersCosts(filter, filteredLoaders);
|
|
206
|
+
return {
|
|
207
|
+
loader: uniqueLoader[0],
|
|
208
|
+
files: uniqueLoader[1].files,
|
|
209
|
+
path: uniqueLoader[1].path,
|
|
210
|
+
costs
|
|
211
|
+
};
|
|
212
|
+
});
|
|
213
|
+
return loaderCosts;
|
|
220
214
|
}
|
|
221
215
|
function collectResourceDirectories(loaders, root) {
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
216
|
+
const directories = new Set();
|
|
217
|
+
loaders.forEach((item)=>{
|
|
218
|
+
if (item.resource.path.startsWith(root)) {
|
|
219
|
+
const pathParts = item.resource.path.split(root).slice(1).join('/').split('/');
|
|
220
|
+
if (pathParts.length >= 2) {
|
|
221
|
+
const twoLevelDir = pathParts.slice(0, 2).join('/');
|
|
222
|
+
directories.add(`${root}/${twoLevelDir}`);
|
|
223
|
+
}
|
|
224
|
+
} else {
|
|
225
|
+
const pathParts = item.resource.path.split('/');
|
|
226
|
+
const twoLevelDir = pathParts.slice(0, pathParts.length - 1).join('/');
|
|
227
|
+
directories.add(twoLevelDir);
|
|
228
|
+
}
|
|
229
|
+
});
|
|
230
|
+
return Array.from(directories);
|
|
237
231
|
}
|
|
238
232
|
function getDirectoriesLoaders(loaders, root) {
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
233
|
+
const rootPath = root || process.cwd();
|
|
234
|
+
const directories = collectResourceDirectories(loaders, rootPath);
|
|
235
|
+
return directories.map((directory)=>{
|
|
236
|
+
const stats = getLoaderFolderStatistics(directory, loaders);
|
|
237
|
+
return {
|
|
238
|
+
directory,
|
|
239
|
+
stats
|
|
240
|
+
};
|
|
241
|
+
});
|
|
248
242
|
}
|
|
249
243
|
function getLoaderFileFirstInput(file, loaders) {
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
244
|
+
for(let i = 0; i < loaders.length; i++){
|
|
245
|
+
const item = loaders[i];
|
|
246
|
+
if (item.resource.path === file) {
|
|
247
|
+
const nonPitchLoaders = item.loaders.filter((e)=>!e.isPitch);
|
|
248
|
+
if (!nonPitchLoaders.length) return '';
|
|
249
|
+
return nonPitchLoaders[0].input || '';
|
|
250
|
+
}
|
|
257
251
|
}
|
|
258
|
-
|
|
259
|
-
return "";
|
|
252
|
+
return '';
|
|
260
253
|
}
|
|
261
254
|
function getLoaderFileInputAndOutput(file, loader, loaderIndex, loaders) {
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
255
|
+
for(let i = 0; i < loaders.length; i++){
|
|
256
|
+
const item = loaders[i];
|
|
257
|
+
if (item.resource.path === file) for(let j = 0; j < item.loaders.length; j++){
|
|
258
|
+
const l = item.loaders[j];
|
|
259
|
+
if (l.loader === loader && l.loaderIndex === loaderIndex) return {
|
|
260
|
+
input: l.input || '',
|
|
261
|
+
output: l.result || ''
|
|
262
|
+
};
|
|
263
|
+
return {
|
|
264
|
+
input: '',
|
|
265
|
+
output: ''
|
|
266
|
+
};
|
|
272
267
|
}
|
|
273
|
-
return {
|
|
274
|
-
input: "",
|
|
275
|
-
output: ""
|
|
276
|
-
};
|
|
277
|
-
}
|
|
278
268
|
}
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
};
|
|
269
|
+
return {
|
|
270
|
+
input: '',
|
|
271
|
+
output: ''
|
|
272
|
+
};
|
|
284
273
|
}
|
|
285
|
-
const LoaderInternalPropertyName =
|
|
286
|
-
const isVue = (compiler)
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
return hasVueRule;
|
|
274
|
+
const LoaderInternalPropertyName = '__l__';
|
|
275
|
+
const isVue = (compiler)=>{
|
|
276
|
+
const rules = 'module' in compiler.options && compiler.options.module.rules || [];
|
|
277
|
+
const hasVueRule = rules.some((rule)=>{
|
|
278
|
+
var _rule_test;
|
|
279
|
+
if (rule && 'object' == typeof rule && rule.test instanceof RegExp && (null == (_rule_test = rule.test) ? void 0 : _rule_test.test('.vue'))) return true;
|
|
280
|
+
return false;
|
|
281
|
+
});
|
|
282
|
+
return hasVueRule;
|
|
295
283
|
};
|
|
296
|
-
const getLoadrName = (loader)
|
|
297
|
-
|
|
298
|
-
|
|
284
|
+
const getLoadrName = (loader)=>{
|
|
285
|
+
const regResults = loader.includes('node_modules') ? loader.split('node_modules') : null;
|
|
286
|
+
return regResults ? regResults[regResults.length - 1] : loader;
|
|
299
287
|
};
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
288
|
+
exports.LoaderInternalPropertyName = __webpack_exports__.LoaderInternalPropertyName;
|
|
289
|
+
exports.findLoaderTotalTiming = __webpack_exports__.findLoaderTotalTiming;
|
|
290
|
+
exports.getDirectoriesLoaders = __webpack_exports__.getDirectoriesLoaders;
|
|
291
|
+
exports.getLoaderChartData = __webpack_exports__.getLoaderChartData;
|
|
292
|
+
exports.getLoaderCosts = __webpack_exports__.getLoaderCosts;
|
|
293
|
+
exports.getLoaderFileDetails = __webpack_exports__.getLoaderFileDetails;
|
|
294
|
+
exports.getLoaderFileFirstInput = __webpack_exports__.getLoaderFileFirstInput;
|
|
295
|
+
exports.getLoaderFileInputAndOutput = __webpack_exports__.getLoaderFileInputAndOutput;
|
|
296
|
+
exports.getLoaderFileTree = __webpack_exports__.getLoaderFileTree;
|
|
297
|
+
exports.getLoaderFolderStatistics = __webpack_exports__.getLoaderFolderStatistics;
|
|
298
|
+
exports.getLoaderNames = __webpack_exports__.getLoaderNames;
|
|
299
|
+
exports.getLoadersCosts = __webpack_exports__.getLoadersCosts;
|
|
300
|
+
exports.getLoadersTransformData = __webpack_exports__.getLoadersTransformData;
|
|
301
|
+
exports.isVue = __webpack_exports__.isVue;
|
|
302
|
+
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
303
|
+
"LoaderInternalPropertyName",
|
|
304
|
+
"findLoaderTotalTiming",
|
|
305
|
+
"getDirectoriesLoaders",
|
|
306
|
+
"getLoaderChartData",
|
|
307
|
+
"getLoaderCosts",
|
|
308
|
+
"getLoaderFileDetails",
|
|
309
|
+
"getLoaderFileFirstInput",
|
|
310
|
+
"getLoaderFileInputAndOutput",
|
|
311
|
+
"getLoaderFileTree",
|
|
312
|
+
"getLoaderFolderStatistics",
|
|
313
|
+
"getLoaderNames",
|
|
314
|
+
"getLoadersCosts",
|
|
315
|
+
"getLoadersTransformData",
|
|
316
|
+
"isVue"
|
|
317
|
+
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
318
|
+
Object.defineProperty(exports, '__esModule', {
|
|
319
|
+
value: true
|
|
316
320
|
});
|