@rsdoctor/utils 1.2.2 → 1.2.4-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/compiled/connect/index.d.ts +90 -0
- package/compiled/connect/index.js +2427 -0
- package/compiled/connect/license +25 -0
- package/compiled/connect/package.json +1 -0
- package/compiled/filesize/index.d.ts +58 -0
- package/compiled/filesize/index.js +255 -0
- package/compiled/filesize/license +28 -0
- package/compiled/filesize/package.json +1 -0
- package/dist/{type/build → build}/envinfo.d.ts +0 -1
- package/dist/{type/build → build}/file/cache.d.ts +0 -1
- package/dist/build/file/index.d.ts +3 -0
- package/dist/{type/build → build}/file/sharding.d.ts +0 -1
- package/dist/{type/build → build}/index.d.ts +0 -1
- package/dist/{type/build → build}/json.d.ts +0 -1
- package/dist/{type/build → build}/process.d.ts +0 -1
- package/dist/{type/build → build}/server.d.ts +0 -1
- package/dist/build.cjs +1310 -0
- package/dist/build.js +343 -0
- package/dist/{type/common → common}/alerts.d.ts +0 -1
- package/dist/{type/common → common}/algorithm.d.ts +0 -1
- package/dist/{type/common → common}/bundle.d.ts +0 -1
- package/dist/{type/common → common}/crypto.d.ts +0 -1
- package/dist/{type/common → common}/data/index.d.ts +0 -1
- package/dist/{type/common → common}/file.d.ts +0 -1
- package/dist/{type/common → common}/global-config.d.ts +0 -1
- package/dist/{type/common → common}/graph/assets.d.ts +0 -1
- package/dist/{type/common → common}/graph/chunk.d.ts +0 -1
- package/dist/{type/common → common}/graph/dependency.d.ts +0 -1
- package/dist/{type/common → common}/graph/entrypoints.d.ts +0 -1
- package/dist/{type/common → common}/graph/index.d.ts +0 -1
- package/dist/{type/common → common}/graph/modules.d.ts +0 -1
- package/dist/{type/common → common}/index.d.ts +0 -1
- package/dist/{type/common → common}/loader.d.ts +0 -1
- package/dist/{type/common → common}/lodash.d.ts +0 -1
- package/dist/{type/common → common}/manifest.d.ts +0 -1
- package/dist/{type/common → common}/package.d.ts +0 -1
- package/dist/{type/common → common}/plugin.d.ts +0 -1
- package/dist/{type/common → common}/resolver.d.ts +0 -1
- package/dist/{type/common → common}/rspack.d.ts +0 -1
- package/dist/{type/common → common}/summary.d.ts +0 -1
- package/dist/{type/common → common}/time.d.ts +0 -1
- package/dist/{type/common → common}/url.d.ts +0 -1
- package/dist/common.cjs +1328 -0
- package/dist/common.js +1255 -0
- package/dist/{type/error → error}/error.d.ts +0 -1
- package/dist/{type/error → error}/index.d.ts +0 -1
- package/dist/{type/error → error}/transform.d.ts +0 -1
- package/dist/{type/error → error}/utils.d.ts +0 -1
- package/dist/error.cjs +310 -0
- package/dist/error.js +232 -0
- package/dist/logger.cjs +82 -0
- package/dist/{type/logger.d.ts → logger.d.ts} +0 -1
- package/dist/{esm/logger.mjs → logger.js} +8 -13
- package/dist/{type/rule-utils → rule-utils}/document/document.d.ts +0 -1
- package/dist/{type/rule-utils → rule-utils}/document/index.d.ts +0 -1
- package/dist/{type/rule-utils → rule-utils}/document/server.d.ts +0 -1
- package/dist/{type/rule-utils → rule-utils}/document/types.d.ts +0 -1
- package/dist/{type/rule-utils → rule-utils}/index.d.ts +0 -1
- package/dist/{type/rule-utils → rule-utils}/parser/asserts.d.ts +0 -1
- package/dist/{type/rule-utils → rule-utils}/parser/index.d.ts +0 -1
- package/dist/{type/rule-utils → rule-utils}/parser/parser.d.ts +0 -1
- package/dist/{type/rule-utils → rule-utils}/parser/types.d.ts +0 -1
- package/dist/{type/rule-utils → rule-utils}/parser/utils.d.ts +0 -1
- package/dist/ruleUtils.cjs +320 -0
- package/dist/ruleUtils.js +256 -0
- package/package.json +35 -39
- package/dist/cjs/build/envinfo.js +0 -121
- package/dist/cjs/build/file/cache.js +0 -76
- package/dist/cjs/build/file/index.js +0 -81
- package/dist/cjs/build/file/sharding.js +0 -96
- package/dist/cjs/build/index.js +0 -52
- package/dist/cjs/build/json.js +0 -103
- package/dist/cjs/build/process.js +0 -54
- package/dist/cjs/build/server.js +0 -158
- package/dist/cjs/common/alerts.js +0 -51
- package/dist/cjs/common/algorithm.js +0 -75
- package/dist/cjs/common/bundle.js +0 -62
- package/dist/cjs/common/crypto.js +0 -54
- package/dist/cjs/common/data/index.js +0 -396
- package/dist/cjs/common/file.js +0 -44
- package/dist/cjs/common/global-config.js +0 -81
- package/dist/cjs/common/graph/assets.js +0 -314
- package/dist/cjs/common/graph/chunk.js +0 -81
- package/dist/cjs/common/graph/dependency.js +0 -50
- package/dist/cjs/common/graph/entrypoints.js +0 -38
- package/dist/cjs/common/graph/index.js +0 -96
- package/dist/cjs/common/graph/modules.js +0 -133
- package/dist/cjs/common/index.js +0 -104
- package/dist/cjs/common/loader.js +0 -320
- package/dist/cjs/common/lodash.js +0 -93
- package/dist/cjs/common/manifest.js +0 -70
- package/dist/cjs/common/package.js +0 -96
- package/dist/cjs/common/plugin.js +0 -91
- package/dist/cjs/common/resolver.js +0 -92
- package/dist/cjs/common/rspack.js +0 -65
- package/dist/cjs/common/summary.js +0 -42
- package/dist/cjs/common/time.js +0 -86
- package/dist/cjs/common/url.js +0 -54
- package/dist/cjs/error/error.js +0 -199
- package/dist/cjs/error/index.js +0 -73
- package/dist/cjs/error/transform.js +0 -182
- package/dist/cjs/error/utils.js +0 -62
- package/dist/cjs/index.js +0 -40
- package/dist/cjs/logger.js +0 -106
- package/dist/cjs/rule-utils/document/document.js +0 -92
- package/dist/cjs/rule-utils/document/index.js +0 -78
- package/dist/cjs/rule-utils/document/server.js +0 -49
- package/dist/cjs/rule-utils/document/types.js +0 -18
- package/dist/cjs/rule-utils/index.js +0 -69
- package/dist/cjs/rule-utils/parser/asserts.js +0 -138
- package/dist/cjs/rule-utils/parser/index.js +0 -87
- package/dist/cjs/rule-utils/parser/parser.js +0 -57
- package/dist/cjs/rule-utils/parser/types.js +0 -41
- package/dist/cjs/rule-utils/parser/utils.js +0 -170
- package/dist/esm/build/envinfo.mjs +0 -57
- package/dist/esm/build/file/cache.mjs +0 -23
- package/dist/esm/build/file/index.mjs +0 -4
- package/dist/esm/build/file/sharding.mjs +0 -50
- package/dist/esm/build/index.mjs +0 -6
- package/dist/esm/build/json.mjs +0 -66
- package/dist/esm/build/process.mjs +0 -17
- package/dist/esm/build/server.mjs +0 -96
- package/dist/esm/common/alerts.mjs +0 -17
- package/dist/esm/common/algorithm.mjs +0 -32
- package/dist/esm/common/bundle.mjs +0 -22
- package/dist/esm/common/crypto.mjs +0 -17
- package/dist/esm/common/data/index.mjs +0 -362
- package/dist/esm/common/file.mjs +0 -7
- package/dist/esm/common/global-config.mjs +0 -32
- package/dist/esm/common/graph/assets.mjs +0 -238
- package/dist/esm/common/graph/chunk.mjs +0 -32
- package/dist/esm/common/graph/dependency.mjs +0 -10
- package/dist/esm/common/graph/entrypoints.mjs +0 -4
- package/dist/esm/common/graph/index.mjs +0 -5
- package/dist/esm/common/graph/modules.mjs +0 -78
- package/dist/esm/common/index.mjs +0 -19
- package/dist/esm/common/loader.mjs +0 -247
- package/dist/esm/common/lodash.mjs +0 -32
- package/dist/esm/common/manifest.mjs +0 -30
- package/dist/esm/common/package.mjs +0 -56
- package/dist/esm/common/plugin.mjs +0 -48
- package/dist/esm/common/resolver.mjs +0 -46
- package/dist/esm/common/rspack.mjs +0 -25
- package/dist/esm/common/summary.mjs +0 -8
- package/dist/esm/common/time.mjs +0 -43
- package/dist/esm/common/url.mjs +0 -14
- package/dist/esm/error/error.mjs +0 -154
- package/dist/esm/error/index.mjs +0 -3
- package/dist/esm/error/transform.mjs +0 -138
- package/dist/esm/error/utils.mjs +0 -22
- package/dist/esm/index.mjs +0 -3
- package/dist/esm/rule-utils/document/document.mjs +0 -58
- package/dist/esm/rule-utils/document/index.mjs +0 -3
- package/dist/esm/rule-utils/document/server.mjs +0 -12
- package/dist/esm/rule-utils/document/types.mjs +0 -0
- package/dist/esm/rule-utils/index.mjs +0 -2
- package/dist/esm/rule-utils/parser/asserts.mjs +0 -104
- package/dist/esm/rule-utils/parser/index.mjs +0 -4
- package/dist/esm/rule-utils/parser/parser.mjs +0 -23
- package/dist/esm/rule-utils/parser/types.mjs +0 -7
- package/dist/esm/rule-utils/parser/utils.mjs +0 -109
- package/dist/type/build/envinfo.d.ts.map +0 -1
- package/dist/type/build/file/cache.d.ts.map +0 -1
- package/dist/type/build/file/index.d.ts +0 -4
- package/dist/type/build/file/index.d.ts.map +0 -1
- package/dist/type/build/file/sharding.d.ts.map +0 -1
- package/dist/type/build/index.d.ts.map +0 -1
- package/dist/type/build/json.d.ts.map +0 -1
- package/dist/type/build/process.d.ts.map +0 -1
- package/dist/type/build/server.d.ts.map +0 -1
- package/dist/type/common/alerts.d.ts.map +0 -1
- package/dist/type/common/algorithm.d.ts.map +0 -1
- package/dist/type/common/bundle.d.ts.map +0 -1
- package/dist/type/common/crypto.d.ts.map +0 -1
- package/dist/type/common/data/index.d.ts.map +0 -1
- package/dist/type/common/file.d.ts.map +0 -1
- package/dist/type/common/global-config.d.ts.map +0 -1
- package/dist/type/common/graph/assets.d.ts.map +0 -1
- package/dist/type/common/graph/chunk.d.ts.map +0 -1
- package/dist/type/common/graph/dependency.d.ts.map +0 -1
- package/dist/type/common/graph/entrypoints.d.ts.map +0 -1
- package/dist/type/common/graph/index.d.ts.map +0 -1
- package/dist/type/common/graph/modules.d.ts.map +0 -1
- package/dist/type/common/index.d.ts.map +0 -1
- package/dist/type/common/loader.d.ts.map +0 -1
- package/dist/type/common/lodash.d.ts.map +0 -1
- package/dist/type/common/manifest.d.ts.map +0 -1
- package/dist/type/common/package.d.ts.map +0 -1
- package/dist/type/common/plugin.d.ts.map +0 -1
- package/dist/type/common/resolver.d.ts.map +0 -1
- package/dist/type/common/rspack.d.ts.map +0 -1
- package/dist/type/common/summary.d.ts.map +0 -1
- package/dist/type/common/time.d.ts.map +0 -1
- package/dist/type/common/url.d.ts.map +0 -1
- package/dist/type/error/error.d.ts.map +0 -1
- package/dist/type/error/index.d.ts.map +0 -1
- package/dist/type/error/transform.d.ts.map +0 -1
- package/dist/type/error/utils.d.ts.map +0 -1
- package/dist/type/index.d.ts +0 -3
- package/dist/type/index.d.ts.map +0 -1
- package/dist/type/logger.d.ts.map +0 -1
- package/dist/type/rule-utils/document/document.d.ts.map +0 -1
- package/dist/type/rule-utils/document/index.d.ts.map +0 -1
- package/dist/type/rule-utils/document/server.d.ts.map +0 -1
- package/dist/type/rule-utils/document/types.d.ts.map +0 -1
- package/dist/type/rule-utils/index.d.ts.map +0 -1
- package/dist/type/rule-utils/parser/asserts.d.ts.map +0 -1
- package/dist/type/rule-utils/parser/index.d.ts.map +0 -1
- package/dist/type/rule-utils/parser/parser.d.ts.map +0 -1
- package/dist/type/rule-utils/parser/types.d.ts.map +0 -1
- package/dist/type/rule-utils/parser/utils.d.ts.map +0 -1
package/dist/common.cjs
ADDED
|
@@ -0,0 +1,1328 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
let __rslib_import_meta_url__ = 'undefined' == typeof document ? new (require('url'.replace('', ''))).URL('file:' + __filename).href : document.currentScript && document.currentScript.src || new URL('main.js', document.baseURI).href;
|
|
3
|
+
var __webpack_require__ = {};
|
|
4
|
+
__webpack_require__.n = (module)=>{
|
|
5
|
+
var getter = module && module.__esModule ? ()=>module.default : ()=>module;
|
|
6
|
+
return __webpack_require__.d(getter, {
|
|
7
|
+
a: getter
|
|
8
|
+
}), getter;
|
|
9
|
+
}, __webpack_require__.d = (exports1, definition)=>{
|
|
10
|
+
for(var key in definition)__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key) && Object.defineProperty(exports1, key, {
|
|
11
|
+
enumerable: !0,
|
|
12
|
+
get: definition[key]
|
|
13
|
+
});
|
|
14
|
+
}, __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop), __webpack_require__.r = (exports1)=>{
|
|
15
|
+
'undefined' != typeof Symbol && Symbol.toStringTag && Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
16
|
+
value: 'Module'
|
|
17
|
+
}), Object.defineProperty(exports1, '__esModule', {
|
|
18
|
+
value: !0
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
var __webpack_exports__ = {};
|
|
22
|
+
__webpack_require__.r(__webpack_exports__), __webpack_require__.d(__webpack_exports__, {
|
|
23
|
+
Time: ()=>time_namespaceObject,
|
|
24
|
+
Url: ()=>url_namespaceObject,
|
|
25
|
+
Rspack: ()=>rspack_namespaceObject,
|
|
26
|
+
Crypto: ()=>crypto_namespaceObject,
|
|
27
|
+
Loader: ()=>loader_namespaceObject,
|
|
28
|
+
Summary: ()=>summary_namespaceObject,
|
|
29
|
+
Algorithm: ()=>algorithm_namespaceObject,
|
|
30
|
+
Resolver: ()=>resolver_namespaceObject,
|
|
31
|
+
Lodash: ()=>lodash_namespaceObject,
|
|
32
|
+
Manifest: ()=>manifest_namespaceObject,
|
|
33
|
+
Alerts: ()=>alerts_namespaceObject,
|
|
34
|
+
Package: ()=>package_namespaceObject,
|
|
35
|
+
Data: ()=>data_namespaceObject,
|
|
36
|
+
Plugin: ()=>plugin_namespaceObject,
|
|
37
|
+
File: ()=>file_namespaceObject,
|
|
38
|
+
Graph: ()=>graph_namespaceObject,
|
|
39
|
+
GlobalConfig: ()=>global_config_namespaceObject,
|
|
40
|
+
Bundle: ()=>bundle_namespaceObject
|
|
41
|
+
});
|
|
42
|
+
var summary_namespaceObject = {};
|
|
43
|
+
__webpack_require__.r(summary_namespaceObject), __webpack_require__.d(summary_namespaceObject, {
|
|
44
|
+
SummaryCostsDataName: ()=>summary_SummaryCostsDataName
|
|
45
|
+
});
|
|
46
|
+
var crypto_namespaceObject = {};
|
|
47
|
+
__webpack_require__.r(crypto_namespaceObject), __webpack_require__.d(crypto_namespaceObject, {
|
|
48
|
+
decode: ()=>decode,
|
|
49
|
+
encode: ()=>encode
|
|
50
|
+
});
|
|
51
|
+
var algorithm_namespaceObject = {};
|
|
52
|
+
__webpack_require__.r(algorithm_namespaceObject), __webpack_require__.d(algorithm_namespaceObject, {
|
|
53
|
+
compressText: ()=>compressText,
|
|
54
|
+
decompressText: ()=>decompressText,
|
|
55
|
+
mergeIntervals: ()=>mergeIntervals,
|
|
56
|
+
random: ()=>random
|
|
57
|
+
});
|
|
58
|
+
var url_namespaceObject = {};
|
|
59
|
+
__webpack_require__.r(url_namespaceObject), __webpack_require__.d(url_namespaceObject, {
|
|
60
|
+
isFilePath: ()=>isFilePath,
|
|
61
|
+
isRemoteUrl: ()=>isRemoteUrl,
|
|
62
|
+
isUrl: ()=>isUrl
|
|
63
|
+
});
|
|
64
|
+
var manifest_namespaceObject = {};
|
|
65
|
+
__webpack_require__.r(manifest_namespaceObject), __webpack_require__.d(manifest_namespaceObject, {
|
|
66
|
+
fetchShardingData: ()=>fetchShardingData,
|
|
67
|
+
fetchShardingFiles: ()=>fetchShardingFiles,
|
|
68
|
+
isShardingData: ()=>isShardingData
|
|
69
|
+
});
|
|
70
|
+
var loader_namespaceObject = {};
|
|
71
|
+
__webpack_require__.r(loader_namespaceObject), __webpack_require__.d(loader_namespaceObject, {
|
|
72
|
+
LoaderInternalPropertyName: ()=>LoaderInternalPropertyName,
|
|
73
|
+
findLoaderTotalTiming: ()=>findLoaderTotalTiming,
|
|
74
|
+
getDirectoriesLoaders: ()=>getDirectoriesLoaders,
|
|
75
|
+
getLoaderChartData: ()=>getLoaderChartData,
|
|
76
|
+
getLoaderCosts: ()=>getLoaderCosts,
|
|
77
|
+
getLoaderFileDetails: ()=>getLoaderFileDetails,
|
|
78
|
+
getLoaderFileFirstInput: ()=>getLoaderFileFirstInput,
|
|
79
|
+
getLoaderFileInputAndOutput: ()=>getLoaderFileInputAndOutput,
|
|
80
|
+
getLoaderFileTree: ()=>getLoaderFileTree,
|
|
81
|
+
getLoaderFolderStatistics: ()=>getLoaderFolderStatistics,
|
|
82
|
+
getLoaderNames: ()=>getLoaderNames,
|
|
83
|
+
getLoadersCosts: ()=>getLoadersCosts,
|
|
84
|
+
getLoadersTransformData: ()=>getLoadersTransformData,
|
|
85
|
+
isVue: ()=>isVue
|
|
86
|
+
});
|
|
87
|
+
var time_namespaceObject = {};
|
|
88
|
+
__webpack_require__.r(time_namespaceObject), __webpack_require__.d(time_namespaceObject, {
|
|
89
|
+
formatCosts: ()=>formatCosts,
|
|
90
|
+
getCurrentTimestamp: ()=>getCurrentTimestamp,
|
|
91
|
+
getUnit: ()=>getUnit,
|
|
92
|
+
toFixedDigits: ()=>toFixedDigits
|
|
93
|
+
});
|
|
94
|
+
var resolver_namespaceObject = {};
|
|
95
|
+
__webpack_require__.r(resolver_namespaceObject), __webpack_require__.d(resolver_namespaceObject, {
|
|
96
|
+
getResolverCosts: ()=>getResolverCosts,
|
|
97
|
+
getResolverFileDetails: ()=>getResolverFileDetails,
|
|
98
|
+
getResolverFileTree: ()=>getResolverFileTree,
|
|
99
|
+
isResolveFailData: ()=>isResolveFailData,
|
|
100
|
+
isResolveSuccessData: ()=>isResolveSuccessData
|
|
101
|
+
});
|
|
102
|
+
var file_namespaceObject = {};
|
|
103
|
+
__webpack_require__.r(file_namespaceObject), __webpack_require__.d(file_namespaceObject, {
|
|
104
|
+
isJsExt: ()=>isJsExt,
|
|
105
|
+
isStyleExt: ()=>isStyleExt
|
|
106
|
+
});
|
|
107
|
+
var graph_namespaceObject = {};
|
|
108
|
+
__webpack_require__.r(graph_namespaceObject), __webpack_require__.d(graph_namespaceObject, {
|
|
109
|
+
diffAssetsByExtensions: ()=>diffAssetsByExtensions,
|
|
110
|
+
diffSize: ()=>diffSize,
|
|
111
|
+
extname: ()=>extname,
|
|
112
|
+
filterAssets: ()=>filterAssets,
|
|
113
|
+
filterAssetsByExtensions: ()=>filterAssetsByExtensions,
|
|
114
|
+
filterModulesAndDependenciesByPackageDeps: ()=>filterModulesAndDependenciesByPackageDeps,
|
|
115
|
+
formatAssetName: ()=>formatAssetName,
|
|
116
|
+
getAllBundleData: ()=>getAllBundleData,
|
|
117
|
+
getAssetDetails: ()=>getAssetDetails,
|
|
118
|
+
getAssetsDiffResult: ()=>getAssetsDiffResult,
|
|
119
|
+
getAssetsSizeInfo: ()=>getAssetsSizeInfo,
|
|
120
|
+
getAssetsSummary: ()=>getAssetsSummary,
|
|
121
|
+
getChunkByChunkId: ()=>getChunkByChunkId,
|
|
122
|
+
getChunkIdsByAsset: ()=>getChunkIdsByAsset,
|
|
123
|
+
getChunksByAsset: ()=>getChunksByAsset,
|
|
124
|
+
getChunksByChunkIds: ()=>getChunksByChunkIds,
|
|
125
|
+
getChunksByModule: ()=>getChunksByModule,
|
|
126
|
+
getChunksByModuleId: ()=>getChunksByModuleId,
|
|
127
|
+
getDependenciesByModule: ()=>getDependenciesByModule,
|
|
128
|
+
getDependencyByPackageData: ()=>getDependencyByPackageData,
|
|
129
|
+
getDependencyByResolvedRequest: ()=>getDependencyByResolvedRequest,
|
|
130
|
+
getEntryPoints: ()=>getEntryPoints,
|
|
131
|
+
getInitialAssetsSizeInfo: ()=>getInitialAssetsSizeInfo,
|
|
132
|
+
getModuleByDependency: ()=>getModuleByDependency,
|
|
133
|
+
getModuleDetails: ()=>getModuleDetails,
|
|
134
|
+
getModuleIdsByChunk: ()=>getModuleIdsByChunk,
|
|
135
|
+
getModuleIdsByModulesIds: ()=>getModuleIdsByModulesIds,
|
|
136
|
+
getModulesByAsset: ()=>getModulesByAsset,
|
|
137
|
+
getModulesByChunk: ()=>getModulesByChunk,
|
|
138
|
+
getModulesByChunks: ()=>getModulesByChunks,
|
|
139
|
+
isAssetMatchExtension: ()=>isAssetMatchExtension,
|
|
140
|
+
isAssetMatchExtensions: ()=>isAssetMatchExtensions,
|
|
141
|
+
isInitialAsset: ()=>isInitialAsset
|
|
142
|
+
});
|
|
143
|
+
var bundle_namespaceObject = {};
|
|
144
|
+
__webpack_require__.r(bundle_namespaceObject), __webpack_require__.d(bundle_namespaceObject, {
|
|
145
|
+
getBundleDiffPageQueryString: ()=>getBundleDiffPageQueryString,
|
|
146
|
+
getBundleDiffPageUrl: ()=>getBundleDiffPageUrl,
|
|
147
|
+
parseFilesFromBundlePageUrlQuery: ()=>parseFilesFromBundlePageUrlQuery
|
|
148
|
+
});
|
|
149
|
+
var plugin_namespaceObject = {};
|
|
150
|
+
__webpack_require__.r(plugin_namespaceObject), __webpack_require__.d(plugin_namespaceObject, {
|
|
151
|
+
getPluginData: ()=>getPluginData,
|
|
152
|
+
getPluginHooks: ()=>getPluginHooks,
|
|
153
|
+
getPluginSummary: ()=>getPluginSummary,
|
|
154
|
+
getPluginTapNames: ()=>getPluginTapNames
|
|
155
|
+
});
|
|
156
|
+
var alerts_namespaceObject = {};
|
|
157
|
+
__webpack_require__.r(alerts_namespaceObject), __webpack_require__.d(alerts_namespaceObject, {
|
|
158
|
+
getPackageRelationAlertDetails: ()=>getPackageRelationAlertDetails
|
|
159
|
+
});
|
|
160
|
+
var rspack_namespaceObject = {};
|
|
161
|
+
__webpack_require__.r(rspack_namespaceObject), __webpack_require__.d(rspack_namespaceObject, {
|
|
162
|
+
RspackLoaderInternalPropertyName: ()=>RspackLoaderInternalPropertyName,
|
|
163
|
+
RspackSummaryCostsDataName: ()=>rspack_RspackSummaryCostsDataName,
|
|
164
|
+
checkSourceMapSupport: ()=>checkSourceMapSupport
|
|
165
|
+
});
|
|
166
|
+
var data_namespaceObject = {};
|
|
167
|
+
__webpack_require__.r(data_namespaceObject), __webpack_require__.d(data_namespaceObject, {
|
|
168
|
+
APIDataLoader: ()=>APIDataLoader
|
|
169
|
+
});
|
|
170
|
+
var lodash_namespaceObject = {};
|
|
171
|
+
__webpack_require__.r(lodash_namespaceObject), __webpack_require__.d(lodash_namespaceObject, {
|
|
172
|
+
compact: ()=>compact,
|
|
173
|
+
isEmpty: ()=>isEmpty,
|
|
174
|
+
isNil: ()=>isNil,
|
|
175
|
+
isNumber: ()=>isNumber,
|
|
176
|
+
isObject: ()=>isObject,
|
|
177
|
+
isPlainObject: ()=>isPlainObject,
|
|
178
|
+
isString: ()=>isString,
|
|
179
|
+
isUndefined: ()=>isUndefined,
|
|
180
|
+
last: ()=>last,
|
|
181
|
+
pick: ()=>pick
|
|
182
|
+
});
|
|
183
|
+
var package_namespaceObject = {};
|
|
184
|
+
__webpack_require__.r(package_namespaceObject), __webpack_require__.d(package_namespaceObject, {
|
|
185
|
+
MODULE_PATH_PACKAGES: ()=>MODULE_PATH_PACKAGES,
|
|
186
|
+
PACKAGE_PATH_NAME: ()=>PACKAGE_PATH_NAME,
|
|
187
|
+
getPackageMetaFromModulePath: ()=>getPackageMetaFromModulePath
|
|
188
|
+
});
|
|
189
|
+
var global_config_namespaceObject = {};
|
|
190
|
+
__webpack_require__.r(global_config_namespaceObject), __webpack_require__.d(global_config_namespaceObject, {
|
|
191
|
+
getMcpConfigPath: ()=>getMcpConfigPath,
|
|
192
|
+
writeMcpPort: ()=>writeMcpPort
|
|
193
|
+
});
|
|
194
|
+
var summary_SummaryCostsDataName = function(SummaryCostsDataName) {
|
|
195
|
+
return SummaryCostsDataName.Bootstrap = "bootstrap->beforeCompile", SummaryCostsDataName.Compile = "beforeCompile->afterCompile", SummaryCostsDataName.Done = "afterCompile->done", SummaryCostsDataName.Minify = "minify(processAssets)", SummaryCostsDataName;
|
|
196
|
+
}({});
|
|
197
|
+
let sep = '!';
|
|
198
|
+
function encode(str) {
|
|
199
|
+
let res = `${str.charCodeAt(0)}`;
|
|
200
|
+
for(let i = 1; i < str.length; i++)res += `!${str.charCodeAt(i)}`;
|
|
201
|
+
return res;
|
|
202
|
+
}
|
|
203
|
+
function decode(str) {
|
|
204
|
+
let res = '', tmp = '';
|
|
205
|
+
for(let i = 0; i < str.length; i++)'!' === str[i] ? (res += String.fromCharCode(+tmp), tmp = '') : tmp += str[i];
|
|
206
|
+
return tmp && (res += String.fromCharCode(+tmp)), res;
|
|
207
|
+
}
|
|
208
|
+
let external_zlib_namespaceObject = require("zlib"), external_buffer_namespaceObject = require("buffer"), external_picocolors_namespaceObject = require("picocolors");
|
|
209
|
+
var external_picocolors_default = __webpack_require__.n(external_picocolors_namespaceObject);
|
|
210
|
+
let external_rslog_namespaceObject = require("rslog"), types_namespaceObject = require("@rsdoctor/types");
|
|
211
|
+
function debug(getMsg, prefix = '') {
|
|
212
|
+
process.env.DEBUG && (logger.level = 'verbose', logger.debug(`${prefix} ${getMsg()}`));
|
|
213
|
+
}
|
|
214
|
+
let rsdoctorLogger = (0, external_rslog_namespaceObject.createLogger)();
|
|
215
|
+
rsdoctorLogger.override({
|
|
216
|
+
log: (message)=>{
|
|
217
|
+
console.log(`${external_picocolors_default().green('[RSDOCTOR LOG]')} ${message}`);
|
|
218
|
+
},
|
|
219
|
+
info: (message)=>{
|
|
220
|
+
console.log(`${external_picocolors_default().yellow('[RSDOCTOR INFO]')} ${message}`);
|
|
221
|
+
},
|
|
222
|
+
warn: (message)=>{
|
|
223
|
+
console.warn(`${external_picocolors_default().yellow('[RSDOCTOR WARN]')} ${message}`);
|
|
224
|
+
},
|
|
225
|
+
start: (message)=>{
|
|
226
|
+
console.log(`${external_picocolors_default().green('[RSDOCTOR START]')} ${message}`);
|
|
227
|
+
},
|
|
228
|
+
ready: (message)=>{
|
|
229
|
+
console.log(`${external_picocolors_default().green('[RSDOCTOR READY]')} ${message}`);
|
|
230
|
+
},
|
|
231
|
+
error: (message)=>{
|
|
232
|
+
console.error(`${external_picocolors_default().red('[RSDOCTOR ERROR]')} ${message}`);
|
|
233
|
+
},
|
|
234
|
+
success: (message)=>{
|
|
235
|
+
console.error(`${external_picocolors_default().green('[RSDOCTOR SUCCESS]')} ${message}`);
|
|
236
|
+
},
|
|
237
|
+
debug: (message)=>{
|
|
238
|
+
process.env.DEBUG && console.log(`${external_picocolors_default().blue('[RSDOCTOR DEBUG]')} ${message}`);
|
|
239
|
+
}
|
|
240
|
+
});
|
|
241
|
+
let _timers = new Map();
|
|
242
|
+
function time(label) {
|
|
243
|
+
process.env.DEBUG === Constants.RsdoctorProcessEnvDebugKey && (_timers.has(label) || _timers.set(label, Date.now()));
|
|
244
|
+
}
|
|
245
|
+
function timeEnd(label) {
|
|
246
|
+
if (process.env.DEBUG !== Constants.RsdoctorProcessEnvDebugKey) return;
|
|
247
|
+
let start = _timers.get(label);
|
|
248
|
+
if (null == start) return void logger.debug(`Timer '${label}' does not exist.`);
|
|
249
|
+
let duration = Date.now() - start;
|
|
250
|
+
logger.debug(`Timer '${label}' ended: ${duration}ms`), _timers.delete(label);
|
|
251
|
+
}
|
|
252
|
+
function mergeIntervals(intervals) {
|
|
253
|
+
let previous, current;
|
|
254
|
+
intervals.sort((a, b)=>a[0] - b[0]);
|
|
255
|
+
let result = [];
|
|
256
|
+
for(let i = 0; i < intervals.length; i++)current = intervals[i], !previous || current[0] > previous[1] ? (previous = current, result.push(current)) : previous[1] = Math.max(previous[1], current[1]);
|
|
257
|
+
return result;
|
|
258
|
+
}
|
|
259
|
+
function compressText(input) {
|
|
260
|
+
try {
|
|
261
|
+
return (0, external_zlib_namespaceObject.deflateSync)(input).toString('base64');
|
|
262
|
+
} catch (e) {
|
|
263
|
+
return rsdoctorLogger.debug(`compressText error: ${e}`), '';
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
function decompressText(input) {
|
|
267
|
+
return (0, external_zlib_namespaceObject.inflateSync)(external_buffer_namespaceObject.Buffer.from(input, 'base64')).toString();
|
|
268
|
+
}
|
|
269
|
+
function random(min, max) {
|
|
270
|
+
return Math.floor(Math.random() * (max - min + 1) + min);
|
|
271
|
+
}
|
|
272
|
+
let external_path_namespaceObject = require("path");
|
|
273
|
+
var external_path_default = __webpack_require__.n(external_path_namespaceObject);
|
|
274
|
+
function isUrl(uri) {
|
|
275
|
+
return /^https?:\/\//.test(uri);
|
|
276
|
+
}
|
|
277
|
+
function isFilePath(uri) {
|
|
278
|
+
return (0, external_path_namespaceObject.isAbsolute)(uri);
|
|
279
|
+
}
|
|
280
|
+
function isRemoteUrl(uri) {
|
|
281
|
+
return !!('string' == typeof uri && (isUrl(uri) || isFilePath(uri)));
|
|
282
|
+
}
|
|
283
|
+
function isShardingData(data) {
|
|
284
|
+
return !!(Array.isArray(data) && data.length > 0 && data.every((e)=>isRemoteUrl(e)));
|
|
285
|
+
}
|
|
286
|
+
async function fetchShardingData(shardingFiles, fetchImplement) {
|
|
287
|
+
let res = await Promise.all(shardingFiles.map((url)=>fetchImplement(url))), strings = 0 === res.length ? [] : res.reduce((t, e)=>t + e);
|
|
288
|
+
return 'object' == typeof strings ? strings : JSON.parse(decompressText(strings));
|
|
289
|
+
}
|
|
290
|
+
async function fetchShardingFiles(data, fetchImplement, filterKeys) {
|
|
291
|
+
return (await Promise.all(Object.keys(data).map(async (_key)=>{
|
|
292
|
+
let val = data[_key];
|
|
293
|
+
return filterKeys?.length && 0 > filterKeys.indexOf(_key) ? {
|
|
294
|
+
[_key]: []
|
|
295
|
+
} : isShardingData(val) ? {
|
|
296
|
+
[_key]: await fetchShardingData(val, fetchImplement)
|
|
297
|
+
} : {
|
|
298
|
+
[_key]: val
|
|
299
|
+
};
|
|
300
|
+
}))).reduce((t, c)=>Object.assign(t, c));
|
|
301
|
+
}
|
|
302
|
+
function findLoaderTotalTiming(loaders) {
|
|
303
|
+
let start = 1 / 0, end = -1 / 0;
|
|
304
|
+
for(let i = 0; i < loaders.length; i++){
|
|
305
|
+
let loader = loaders[i];
|
|
306
|
+
loader.startAt <= start && (start = loader.startAt), loader.endAt >= end && (end = loader.endAt);
|
|
307
|
+
}
|
|
308
|
+
return {
|
|
309
|
+
start,
|
|
310
|
+
end
|
|
311
|
+
};
|
|
312
|
+
}
|
|
313
|
+
function getLoadersCosts(filter, loaders) {
|
|
314
|
+
let match = {}, others = {};
|
|
315
|
+
loaders.forEach((e)=>{
|
|
316
|
+
filter(e) ? (match[e.pid] || (match[e.pid] = []), match[e.pid].push([
|
|
317
|
+
e.startAt,
|
|
318
|
+
e.endAt
|
|
319
|
+
])) : (others[e.pid] || (others[e.pid] = []), others[e.pid].push([
|
|
320
|
+
e.startAt,
|
|
321
|
+
e.endAt
|
|
322
|
+
]));
|
|
323
|
+
});
|
|
324
|
+
let costs = 0, pids = Object.keys(match);
|
|
325
|
+
for(let i = 0; i < pids.length; i++){
|
|
326
|
+
let pid = pids[i], _match = mergeIntervals(match[pid]), _others = mergeIntervals(others[pid] || []).filter(([s, e])=>_match.some((el)=>s >= el[0] && e <= el[1]));
|
|
327
|
+
costs += (_match.length ? _match.reduce((t, c)=>t += c[1] - c[0], 0) : 0) - (_others.length ? _others.reduce((t, c)=>t += c[1] - c[0], 0) : 0);
|
|
328
|
+
}
|
|
329
|
+
return costs;
|
|
330
|
+
}
|
|
331
|
+
function getLoaderCosts(loader, loaders) {
|
|
332
|
+
let blocked = loaders.filter((e)=>!e.loader.includes('builtin') && e !== loader && e.pid === loader.pid && !!(e.startAt >= loader.startAt) && !!(e.endAt <= loader.endAt)), costs = loader.endAt - loader.startAt;
|
|
333
|
+
return blocked.length && mergeIntervals(blocked.map((e)=>[
|
|
334
|
+
Math.max(e.startAt, loader.startAt),
|
|
335
|
+
Math.min(e.endAt, loader.endAt)
|
|
336
|
+
])).forEach((e)=>{
|
|
337
|
+
let sub = e[1] - e[0];
|
|
338
|
+
costs -= sub;
|
|
339
|
+
}), costs;
|
|
340
|
+
}
|
|
341
|
+
function getLoaderNames(loaders) {
|
|
342
|
+
let names = new Set();
|
|
343
|
+
return loaders.forEach((e)=>e.loaders.forEach((l)=>names.add(getLoadrName(l.loader)))), [
|
|
344
|
+
...names
|
|
345
|
+
];
|
|
346
|
+
}
|
|
347
|
+
function getLoadersTransformData(loaders) {
|
|
348
|
+
let res = [];
|
|
349
|
+
for(let i = 0; i < loaders.length; i++){
|
|
350
|
+
let item = loaders[i];
|
|
351
|
+
for(let j = 0; j < item.loaders.length; j++){
|
|
352
|
+
let loader = item.loaders[j];
|
|
353
|
+
res.push(loader);
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
return res;
|
|
357
|
+
}
|
|
358
|
+
function getLoaderChartData(loaders) {
|
|
359
|
+
let res = [], list = getLoadersTransformData(loaders);
|
|
360
|
+
return loaders.forEach((item)=>{
|
|
361
|
+
item.loaders.forEach((el)=>{
|
|
362
|
+
res.push({
|
|
363
|
+
layer: item.resource.layer,
|
|
364
|
+
loader: getLoadrName(el.loader),
|
|
365
|
+
isPitch: el.isPitch,
|
|
366
|
+
startAt: el.startAt,
|
|
367
|
+
endAt: el.endAt,
|
|
368
|
+
pid: el.pid,
|
|
369
|
+
sync: el.sync,
|
|
370
|
+
resource: item.resource.path,
|
|
371
|
+
costs: getLoaderCosts(el, list)
|
|
372
|
+
});
|
|
373
|
+
});
|
|
374
|
+
}), res;
|
|
375
|
+
}
|
|
376
|
+
function getLoaderFileTree(loaders) {
|
|
377
|
+
let list = getLoadersTransformData(loaders);
|
|
378
|
+
return loaders.map((data)=>{
|
|
379
|
+
let { loaders: arr, resource } = data;
|
|
380
|
+
return {
|
|
381
|
+
path: resource.path,
|
|
382
|
+
layer: resource.layer,
|
|
383
|
+
loaders: arr.map((l)=>({
|
|
384
|
+
key: l.path,
|
|
385
|
+
loader: getLoadrName(l.loader),
|
|
386
|
+
path: l.path,
|
|
387
|
+
errors: l.errors,
|
|
388
|
+
costs: getLoaderCosts(l, list)
|
|
389
|
+
}))
|
|
390
|
+
};
|
|
391
|
+
});
|
|
392
|
+
}
|
|
393
|
+
function getLoaderFileDetails(path, loaders) {
|
|
394
|
+
let data = loaders.find((e)=>e.resource.path === path);
|
|
395
|
+
if (!data) throw Error(`"${path}" not match any loader data`);
|
|
396
|
+
let list = getLoadersTransformData(loaders);
|
|
397
|
+
return {
|
|
398
|
+
...data,
|
|
399
|
+
loaders: data.loaders.map((el)=>({
|
|
400
|
+
...el,
|
|
401
|
+
loader: getLoadrName(el.loader),
|
|
402
|
+
costs: getLoaderCosts(el, list)
|
|
403
|
+
}))
|
|
404
|
+
};
|
|
405
|
+
}
|
|
406
|
+
function getLoaderFolderStatistics(folder, loaders) {
|
|
407
|
+
let datas = loaders.filter((data)=>{
|
|
408
|
+
let { path } = data.resource;
|
|
409
|
+
return path.startsWith(folder);
|
|
410
|
+
}), filteredLoaders = [], uniqueLoaders = new Map();
|
|
411
|
+
return datas.forEach((data)=>{
|
|
412
|
+
data.loaders.forEach((fl)=>{
|
|
413
|
+
let uniqueLoader = uniqueLoaders.get(fl.loader);
|
|
414
|
+
return uniqueLoader ? uniqueLoaders.set(fl.loader, {
|
|
415
|
+
files: uniqueLoader.files + 1,
|
|
416
|
+
path: fl.path
|
|
417
|
+
}) : uniqueLoaders.set(fl.loader, {
|
|
418
|
+
files: 1,
|
|
419
|
+
path: fl.path
|
|
420
|
+
}), filteredLoaders.push({
|
|
421
|
+
loader: fl.loader,
|
|
422
|
+
startAt: fl.startAt,
|
|
423
|
+
endAt: fl.endAt,
|
|
424
|
+
pid: fl.pid
|
|
425
|
+
});
|
|
426
|
+
});
|
|
427
|
+
}), Array.from(uniqueLoaders).map((uniqueLoader)=>{
|
|
428
|
+
let costs = getLoadersCosts((l)=>l.loader === uniqueLoader[0], filteredLoaders);
|
|
429
|
+
return {
|
|
430
|
+
loader: uniqueLoader[0],
|
|
431
|
+
files: uniqueLoader[1].files,
|
|
432
|
+
path: uniqueLoader[1].path,
|
|
433
|
+
costs
|
|
434
|
+
};
|
|
435
|
+
});
|
|
436
|
+
}
|
|
437
|
+
function collectResourceDirectories(loaders, root) {
|
|
438
|
+
let directories = new Set();
|
|
439
|
+
return loaders.forEach((item)=>{
|
|
440
|
+
if (item.resource.path.startsWith(root)) {
|
|
441
|
+
let pathParts = item.resource.path.split(root).slice(1).join('/').split('/');
|
|
442
|
+
if (pathParts.length >= 2) {
|
|
443
|
+
let twoLevelDir = pathParts.slice(0, 2).join('/');
|
|
444
|
+
directories.add(`${root}/${twoLevelDir}`);
|
|
445
|
+
}
|
|
446
|
+
} else {
|
|
447
|
+
let pathParts = item.resource.path.split('/'), twoLevelDir = pathParts.slice(0, pathParts.length - 1).join('/');
|
|
448
|
+
directories.add(twoLevelDir);
|
|
449
|
+
}
|
|
450
|
+
}), Array.from(directories);
|
|
451
|
+
}
|
|
452
|
+
function getDirectoriesLoaders(loaders, root) {
|
|
453
|
+
return collectResourceDirectories(loaders, root || process.cwd()).map((directory)=>{
|
|
454
|
+
let stats = getLoaderFolderStatistics(directory, loaders);
|
|
455
|
+
return {
|
|
456
|
+
directory,
|
|
457
|
+
stats
|
|
458
|
+
};
|
|
459
|
+
});
|
|
460
|
+
}
|
|
461
|
+
function getLoaderFileFirstInput(file, loaders) {
|
|
462
|
+
for(let i = 0; i < loaders.length; i++){
|
|
463
|
+
let item = loaders[i];
|
|
464
|
+
if (item.resource.path === file) {
|
|
465
|
+
let nonPitchLoaders = item.loaders.filter((e)=>!e.isPitch);
|
|
466
|
+
if (!nonPitchLoaders.length) return '';
|
|
467
|
+
return nonPitchLoaders[0].input || '';
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
return '';
|
|
471
|
+
}
|
|
472
|
+
function getLoaderFileInputAndOutput(file, loader, loaderIndex, loaders) {
|
|
473
|
+
for(let i = 0; i < loaders.length; i++){
|
|
474
|
+
let item = loaders[i];
|
|
475
|
+
if (item.resource.path === file) for(let j = 0; j < item.loaders.length; j++){
|
|
476
|
+
let l = item.loaders[j];
|
|
477
|
+
if (l.loader === loader && l.loaderIndex === loaderIndex) return {
|
|
478
|
+
input: l.input || '',
|
|
479
|
+
output: l.result || ''
|
|
480
|
+
};
|
|
481
|
+
return {
|
|
482
|
+
input: '',
|
|
483
|
+
output: ''
|
|
484
|
+
};
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
return {
|
|
488
|
+
input: '',
|
|
489
|
+
output: ''
|
|
490
|
+
};
|
|
491
|
+
}
|
|
492
|
+
let LoaderInternalPropertyName = '__l__', isVue = (compiler)=>('module' in compiler.options && compiler.options.module.rules || []).some((rule)=>!!(rule && 'object' == typeof rule && rule.test instanceof RegExp && rule.test?.test('.vue'))), getLoadrName = (loader)=>{
|
|
493
|
+
let regResults = loader.includes('node_modules') ? loader.split('node_modules') : null;
|
|
494
|
+
return regResults ? regResults[regResults.length - 1] : loader;
|
|
495
|
+
}, external_process_namespaceObject = require("process");
|
|
496
|
+
function toFixedDigits(num, digits = 2) {
|
|
497
|
+
return 0 === digits ? Math.floor(num) : +num.toFixed(digits);
|
|
498
|
+
}
|
|
499
|
+
function getUnit(num, type) {
|
|
500
|
+
return 'm' === type ? num > 1 ? 'mins' : 'min' : num > 1 ? 'hours' : 'hour';
|
|
501
|
+
}
|
|
502
|
+
function formatCosts(costs) {
|
|
503
|
+
if ((costs = Number(costs)) >= 1000) {
|
|
504
|
+
let sec = costs / 1000;
|
|
505
|
+
if (sec >= 60) {
|
|
506
|
+
let mins = sec / 60;
|
|
507
|
+
if (mins >= 60) {
|
|
508
|
+
let hours = toFixedDigits(mins / 60, 0), restMins = toFixedDigits(mins % 60, 1), hUnit = getUnit(hours, 'h');
|
|
509
|
+
return restMins > 0 ? `${hours}${hUnit} ${restMins}${getUnit(restMins, 'm')}` : `${hours}${hUnit}`;
|
|
510
|
+
}
|
|
511
|
+
let mUnit = getUnit(mins = toFixedDigits(mins, 0), 'm'), restSec = toFixedDigits(sec % 60, 0);
|
|
512
|
+
return restSec > 0 ? `${mins}${mUnit} ${restSec}s` : `${mins}${mUnit}`;
|
|
513
|
+
}
|
|
514
|
+
return `${toFixedDigits(sec, 1)}s`;
|
|
515
|
+
}
|
|
516
|
+
if (costs >= 10) return `${+toFixedDigits(costs, 0)}ms`;
|
|
517
|
+
if (costs >= 1) return `${+toFixedDigits(costs, 1)}ms`;
|
|
518
|
+
let r = +toFixedDigits(costs, 2);
|
|
519
|
+
return 0 === r && (r = +toFixedDigits(costs, 3)), `${r}ms`;
|
|
520
|
+
}
|
|
521
|
+
function getCurrentTimestamp(start, startHRTime) {
|
|
522
|
+
let endHRTime = (0, external_process_namespaceObject.hrtime)(startHRTime);
|
|
523
|
+
return start + 1000 * endHRTime[0] + (process.env.RSTEST ? Math.round(endHRTime[1] / 1000000) : endHRTime[1] / 1000000);
|
|
524
|
+
}
|
|
525
|
+
function isResolveSuccessData(data) {
|
|
526
|
+
return !!data.result;
|
|
527
|
+
}
|
|
528
|
+
function isResolveFailData(data) {
|
|
529
|
+
return !!data.error;
|
|
530
|
+
}
|
|
531
|
+
function getResolverCosts(resolver, resolvers) {
|
|
532
|
+
let blocked = resolvers.filter((e)=>e !== resolver && e.pid === resolver.pid && e.startAt >= resolver.startAt && e.endAt <= resolver.endAt), costs = resolver.endAt - resolver.startAt;
|
|
533
|
+
return blocked.length && mergeIntervals(blocked.map((e)=>[
|
|
534
|
+
Math.max(e.startAt, resolver.startAt),
|
|
535
|
+
Math.min(e.endAt, resolver.endAt)
|
|
536
|
+
])).forEach((e)=>{
|
|
537
|
+
let sub = e[1] - e[0];
|
|
538
|
+
costs -= sub;
|
|
539
|
+
}), costs;
|
|
540
|
+
}
|
|
541
|
+
function getResolverFileTree(resolver) {
|
|
542
|
+
return resolver.map((e)=>({
|
|
543
|
+
issuerPath: e.issuerPath
|
|
544
|
+
}));
|
|
545
|
+
}
|
|
546
|
+
function getResolverFileDetails(filepath, resolvers, modules, moduleCodeMap) {
|
|
547
|
+
let module = modules.find((item)=>item.path === filepath), matchResolvers = resolvers.filter((e)=>e.issuerPath === filepath), before = module && moduleCodeMap && moduleCodeMap[module.id] ? moduleCodeMap[module.id].source : '', after = matchResolvers.reduce((t, c)=>c.request && isResolveSuccessData(c) ? t.replace(RegExp(`["']${c.request}["']`), `"${c.result}"`) : t, before);
|
|
548
|
+
return {
|
|
549
|
+
filepath,
|
|
550
|
+
before,
|
|
551
|
+
after,
|
|
552
|
+
resolvers: matchResolvers.map((e)=>({
|
|
553
|
+
...e,
|
|
554
|
+
costs: getResolverCosts(e, resolvers)
|
|
555
|
+
}))
|
|
556
|
+
};
|
|
557
|
+
}
|
|
558
|
+
function getChunkIdsByAsset(asset) {
|
|
559
|
+
return asset.chunks ? asset.chunks : [];
|
|
560
|
+
}
|
|
561
|
+
function getChunksByModule(module, chunks) {
|
|
562
|
+
return module.chunks.length ? getChunksByChunkIds(module.chunks, chunks) : [];
|
|
563
|
+
}
|
|
564
|
+
function getChunkByChunkId(chunkId, chunks) {
|
|
565
|
+
return chunks.find((e)=>e.id === chunkId);
|
|
566
|
+
}
|
|
567
|
+
function getChunksByChunkIds(chunkIds, chunks, filters) {
|
|
568
|
+
return chunkIds.length ? chunkIds.map((id)=>chunks.find((e)=>e.id === id)).filter(Boolean).map((chunk)=>{
|
|
569
|
+
if (filters && filters.length > 0) {
|
|
570
|
+
let filtered = {};
|
|
571
|
+
for (let key of filters)void 0 !== chunk[key] && (filtered[key] = chunk[key]);
|
|
572
|
+
return filtered;
|
|
573
|
+
}
|
|
574
|
+
return chunk;
|
|
575
|
+
}) : [];
|
|
576
|
+
}
|
|
577
|
+
function getChunksByAsset(asset, chunks, filters) {
|
|
578
|
+
return getChunksByChunkIds(getChunkIdsByAsset(asset), chunks, filters);
|
|
579
|
+
}
|
|
580
|
+
function getChunksByModuleId(id, modules, chunks) {
|
|
581
|
+
let mod = modules.find((e)=>e.id === id);
|
|
582
|
+
return mod ? getChunksByModule(mod, chunks) : [];
|
|
583
|
+
}
|
|
584
|
+
function getDependencyByPackageData(dep, dependencies) {
|
|
585
|
+
return dependencies.find((item)=>item.id === dep.dependencyId);
|
|
586
|
+
}
|
|
587
|
+
function getDependenciesByModule(module, dependencies) {
|
|
588
|
+
return module.dependencies.map((id)=>dependencies.find((dep)=>dep.id === id)).filter(Boolean);
|
|
589
|
+
}
|
|
590
|
+
function getDependencyByResolvedRequest(resolvedRequest, dependencies) {
|
|
591
|
+
return dependencies.find((e)=>e.resolvedRequest === resolvedRequest);
|
|
592
|
+
}
|
|
593
|
+
function isStyleExt(path) {
|
|
594
|
+
return /\.(c|le|sa|sc)ss(\?.*)?$/.test(path);
|
|
595
|
+
}
|
|
596
|
+
function isJsExt(path) {
|
|
597
|
+
return /\.(js|ts|jsx|tsx)(\?.*)?$/.test(path);
|
|
598
|
+
}
|
|
599
|
+
function getModulesByAsset(asset, chunks, modules, filterModules, checkModules) {
|
|
600
|
+
let cks = getChunksByChunkIds(getChunkIdsByAsset(asset), chunks);
|
|
601
|
+
return getModulesByChunks(asset.path, cks, modules, filterModules, checkModules);
|
|
602
|
+
}
|
|
603
|
+
function getModuleIdsByChunk(chunk) {
|
|
604
|
+
let { modules = [] } = chunk;
|
|
605
|
+
return modules;
|
|
606
|
+
}
|
|
607
|
+
function getModuleIdsByModulesIds(moduleIds, modules) {
|
|
608
|
+
return moduleIds.map((id)=>modules.find((m)=>m.id === id)).filter(Boolean);
|
|
609
|
+
}
|
|
610
|
+
function getModulesByChunk(chunk, modules, filterModules) {
|
|
611
|
+
return getModuleIdsByChunk(chunk).map((id)=>{
|
|
612
|
+
let module = modules.find((e)=>e.id === id);
|
|
613
|
+
if (filterModules && filterModules.length > 0) {
|
|
614
|
+
if (!module) return null;
|
|
615
|
+
let filtered = {};
|
|
616
|
+
for (let key of filterModules)void 0 !== module[key] && (filtered[key] = module[key]);
|
|
617
|
+
return filtered;
|
|
618
|
+
}
|
|
619
|
+
return module;
|
|
620
|
+
}).filter(Boolean);
|
|
621
|
+
}
|
|
622
|
+
function getTypeChecker(assetPath) {
|
|
623
|
+
return isStyleExt(assetPath) ? isStyleExt : isJsExt(assetPath) ? isJsExt : ()=>!0;
|
|
624
|
+
}
|
|
625
|
+
function getModulesByChunks(assetPath, chunks, modules, filterModules, checkModules) {
|
|
626
|
+
let res = [], typeChecker = getTypeChecker(assetPath);
|
|
627
|
+
try {
|
|
628
|
+
chunks.forEach((chunk)=>{
|
|
629
|
+
getModulesByChunk(chunk, modules, filterModules).forEach((md)=>{
|
|
630
|
+
let name = md.path || '';
|
|
631
|
+
typeChecker(name) && (!checkModules || checkModules(md)) && !res.filter((_m)=>_m.id === md.id).length && res.push(md);
|
|
632
|
+
});
|
|
633
|
+
});
|
|
634
|
+
} catch (error) {
|
|
635
|
+
rsdoctorLogger.debug(error);
|
|
636
|
+
}
|
|
637
|
+
return res;
|
|
638
|
+
}
|
|
639
|
+
function getModuleByDependency(dep, modules) {
|
|
640
|
+
return modules.find((item)=>item.id === dep.module);
|
|
641
|
+
}
|
|
642
|
+
function filterModulesAndDependenciesByPackageDeps(deps, dependencies, modules) {
|
|
643
|
+
let _dependencies = [], _modules = [];
|
|
644
|
+
for(let i = 0; i < deps.length; i++){
|
|
645
|
+
let dep = getDependencyByPackageData(deps[i], dependencies);
|
|
646
|
+
if (dep) {
|
|
647
|
+
_dependencies.push(dep);
|
|
648
|
+
let module = getModuleByDependency(dep, modules);
|
|
649
|
+
module && _modules.push(module);
|
|
650
|
+
}
|
|
651
|
+
}
|
|
652
|
+
return {
|
|
653
|
+
dependencies: _dependencies,
|
|
654
|
+
modules: _modules
|
|
655
|
+
};
|
|
656
|
+
}
|
|
657
|
+
function getModuleDetails(moduleId, modules, dependencies) {
|
|
658
|
+
let module = modules.find((e)=>e.id === moduleId);
|
|
659
|
+
return {
|
|
660
|
+
module,
|
|
661
|
+
dependencies: getDependenciesByModule(module, dependencies)
|
|
662
|
+
};
|
|
663
|
+
}
|
|
664
|
+
let EXT = 'js|css|html', hashPattern = /[a-z|A-Z|0-9]{4,32}/, hashSeparatorPattern = /[-|.]/, fileExtensionPattern = /(?:\.[a-z|A-Z|0-9]{2,}){1,}/, filenamePattern = RegExp(`(.*)${hashSeparatorPattern.source}${hashPattern.source}(${fileExtensionPattern.source})$`);
|
|
665
|
+
function formatAssetName(assetName, fileConfig) {
|
|
666
|
+
let splitFilesList = fileConfig?.split('.'), outputFileTailName = '', unHashedFileName = assetName;
|
|
667
|
+
return splitFilesList?.length && splitFilesList.length >= 3 && splitFilesList[splitFilesList.length - 2]?.indexOf('[') < 0 && 'js|css|html'.indexOf(splitFilesList[splitFilesList.length - 1]) > -1 ? (outputFileTailName = splitFilesList[splitFilesList.length - 2], unHashedFileName = assetName.replace(/(.*)(\.[a-f0-9]{4,32})([^.]*.[^.]+){2,}/g, '$1'), `${unHashedFileName}.${outputFileTailName}.${assetName.substring(assetName.lastIndexOf('.') + 1)}`) : assetName.replace(filenamePattern, '$1$2');
|
|
668
|
+
}
|
|
669
|
+
function isAssetMatchExtension(asset, ext) {
|
|
670
|
+
return asset.path.slice(-ext.length) === ext || extname(asset.path) === ext;
|
|
671
|
+
}
|
|
672
|
+
function isAssetMatchExtensions(asset, exts) {
|
|
673
|
+
return !!exts.length && exts.some((ext)=>isAssetMatchExtension(asset, ext));
|
|
674
|
+
}
|
|
675
|
+
function filterAssetsByExtensions(assets, exts) {
|
|
676
|
+
return 'string' == typeof exts ? assets.filter((e)=>isAssetMatchExtension(e, exts)) : Array.isArray(exts) ? assets.filter((e)=>isAssetMatchExtensions(e, exts)) : [];
|
|
677
|
+
}
|
|
678
|
+
function filterAssets(assets, filterOrExtensions) {
|
|
679
|
+
return filterOrExtensions && (assets = 'function' == typeof filterOrExtensions ? assets.filter(filterOrExtensions) : filterAssetsByExtensions(assets, filterOrExtensions)), assets;
|
|
680
|
+
}
|
|
681
|
+
function getAssetsSizeInfo(assets, chunks, options = {}) {
|
|
682
|
+
let { withFileContent = !0, filterOrExtensions } = options;
|
|
683
|
+
return (assets = assets.filter((e)=>!isAssetMatchExtensions(e, types_namespaceObject.Constants.MapExtensions)), filterOrExtensions && (assets = filterAssets(assets, filterOrExtensions)), assets.length) ? {
|
|
684
|
+
count: assets.length,
|
|
685
|
+
size: assets.reduce((t, c)=>t + c.size, 0),
|
|
686
|
+
files: assets.map((e)=>({
|
|
687
|
+
path: e.path,
|
|
688
|
+
size: e.size,
|
|
689
|
+
gzipSize: e.gzipSize,
|
|
690
|
+
initial: isInitialAsset(e, chunks),
|
|
691
|
+
content: withFileContent ? e.content : void 0
|
|
692
|
+
}))
|
|
693
|
+
} : {
|
|
694
|
+
count: 0,
|
|
695
|
+
size: 0,
|
|
696
|
+
files: []
|
|
697
|
+
};
|
|
698
|
+
}
|
|
699
|
+
function isInitialAsset(asset, chunks) {
|
|
700
|
+
return getChunksByAsset(asset, chunks).some((e)=>!!e.initial);
|
|
701
|
+
}
|
|
702
|
+
function getInitialAssetsSizeInfo(assets, chunks, options = {}) {
|
|
703
|
+
return options.filterOrExtensions && (assets = filterAssets(assets, options.filterOrExtensions)), getAssetsSizeInfo(assets, chunks, {
|
|
704
|
+
...options,
|
|
705
|
+
filterOrExtensions: (asset)=>isInitialAsset(asset, chunks)
|
|
706
|
+
});
|
|
707
|
+
}
|
|
708
|
+
function getAssetsDiffResult(baseline, current) {
|
|
709
|
+
return {
|
|
710
|
+
all: {
|
|
711
|
+
total: diffAssetsByExtensions(baseline, current)
|
|
712
|
+
},
|
|
713
|
+
js: {
|
|
714
|
+
total: diffAssetsByExtensions(baseline, current, types_namespaceObject.Constants.JSExtension),
|
|
715
|
+
initial: diffAssetsByExtensions(baseline, current, types_namespaceObject.Constants.JSExtension, !0)
|
|
716
|
+
},
|
|
717
|
+
css: {
|
|
718
|
+
total: diffAssetsByExtensions(baseline, current, types_namespaceObject.Constants.CSSExtension),
|
|
719
|
+
initial: diffAssetsByExtensions(baseline, current, types_namespaceObject.Constants.CSSExtension, !0)
|
|
720
|
+
},
|
|
721
|
+
imgs: {
|
|
722
|
+
total: diffAssetsByExtensions(baseline, current, types_namespaceObject.Constants.ImgExtensions)
|
|
723
|
+
},
|
|
724
|
+
html: {
|
|
725
|
+
total: diffAssetsByExtensions(baseline, current, types_namespaceObject.Constants.HtmlExtension)
|
|
726
|
+
},
|
|
727
|
+
media: {
|
|
728
|
+
total: diffAssetsByExtensions(baseline, current, types_namespaceObject.Constants.MediaExtensions)
|
|
729
|
+
},
|
|
730
|
+
fonts: {
|
|
731
|
+
total: diffAssetsByExtensions(baseline, current, types_namespaceObject.Constants.FontExtensions)
|
|
732
|
+
},
|
|
733
|
+
others: {
|
|
734
|
+
total: diffAssetsByExtensions(baseline, current, (asset)=>!isAssetMatchExtensions(asset, [
|
|
735
|
+
types_namespaceObject.Constants.JSExtension,
|
|
736
|
+
types_namespaceObject.Constants.CSSExtension,
|
|
737
|
+
types_namespaceObject.Constants.HtmlExtension
|
|
738
|
+
].concat(types_namespaceObject.Constants.ImgExtensions, types_namespaceObject.Constants.MediaExtensions, types_namespaceObject.Constants.FontExtensions, types_namespaceObject.Constants.MapExtensions)))
|
|
739
|
+
}
|
|
740
|
+
};
|
|
741
|
+
}
|
|
742
|
+
function diffSize(bSize, cSize) {
|
|
743
|
+
let isEqual = bSize === cSize;
|
|
744
|
+
return {
|
|
745
|
+
percent: isEqual ? 0 : 0 === bSize ? 100 : Math.abs(cSize - bSize) / bSize * 100,
|
|
746
|
+
state: isEqual ? types_namespaceObject.Client.RsdoctorClientDiffState.Equal : bSize > cSize ? types_namespaceObject.Client.RsdoctorClientDiffState.Down : types_namespaceObject.Client.RsdoctorClientDiffState.Up
|
|
747
|
+
};
|
|
748
|
+
}
|
|
749
|
+
function diffAssetsByExtensions(baseline, current, filterOrExtensions, isInitial = !1) {
|
|
750
|
+
let cSize, cCount, { size: bSize, count: bCount } = isInitial ? getInitialAssetsSizeInfo(baseline.assets, baseline.chunks, {
|
|
751
|
+
filterOrExtensions
|
|
752
|
+
}) : getAssetsSizeInfo(baseline.assets, baseline.chunks, {
|
|
753
|
+
filterOrExtensions
|
|
754
|
+
});
|
|
755
|
+
if (baseline === current) cSize = bSize, cCount = bCount;
|
|
756
|
+
else {
|
|
757
|
+
let { size, count } = isInitial ? getInitialAssetsSizeInfo(current.assets, current.chunks, {
|
|
758
|
+
filterOrExtensions
|
|
759
|
+
}) : getAssetsSizeInfo(current.assets, current.chunks, {
|
|
760
|
+
filterOrExtensions
|
|
761
|
+
});
|
|
762
|
+
cSize = size, cCount = count;
|
|
763
|
+
}
|
|
764
|
+
let { percent, state } = diffSize(bSize, cSize);
|
|
765
|
+
return {
|
|
766
|
+
size: {
|
|
767
|
+
baseline: bSize,
|
|
768
|
+
current: cSize
|
|
769
|
+
},
|
|
770
|
+
count: {
|
|
771
|
+
baseline: bCount,
|
|
772
|
+
current: cCount
|
|
773
|
+
},
|
|
774
|
+
percent,
|
|
775
|
+
state
|
|
776
|
+
};
|
|
777
|
+
}
|
|
778
|
+
function getAssetsSummary(assets, chunks, options = {}) {
|
|
779
|
+
let jsOpt = {
|
|
780
|
+
...options,
|
|
781
|
+
filterOrExtensions: types_namespaceObject.Constants.JSExtension
|
|
782
|
+
}, cssOpt = {
|
|
783
|
+
...options,
|
|
784
|
+
filterOrExtensions: types_namespaceObject.Constants.CSSExtension
|
|
785
|
+
}, imgOpt = {
|
|
786
|
+
...options,
|
|
787
|
+
filterOrExtensions: types_namespaceObject.Constants.ImgExtensions
|
|
788
|
+
}, htmlOpt = {
|
|
789
|
+
...options,
|
|
790
|
+
filterOrExtensions: types_namespaceObject.Constants.HtmlExtension
|
|
791
|
+
}, mediaOpt = {
|
|
792
|
+
...options,
|
|
793
|
+
filterOrExtensions: types_namespaceObject.Constants.MediaExtensions
|
|
794
|
+
}, fontOpt = {
|
|
795
|
+
...options,
|
|
796
|
+
filterOrExtensions: types_namespaceObject.Constants.FontExtensions
|
|
797
|
+
}, otherOpt = {
|
|
798
|
+
...options,
|
|
799
|
+
filterOrExtensions: (asset)=>!isAssetMatchExtensions(asset, [
|
|
800
|
+
types_namespaceObject.Constants.JSExtension,
|
|
801
|
+
types_namespaceObject.Constants.CSSExtension,
|
|
802
|
+
types_namespaceObject.Constants.HtmlExtension
|
|
803
|
+
].concat(types_namespaceObject.Constants.ImgExtensions, types_namespaceObject.Constants.MediaExtensions, types_namespaceObject.Constants.FontExtensions, types_namespaceObject.Constants.MapExtensions))
|
|
804
|
+
};
|
|
805
|
+
return {
|
|
806
|
+
all: {
|
|
807
|
+
total: getAssetsSizeInfo(assets, chunks, options)
|
|
808
|
+
},
|
|
809
|
+
js: {
|
|
810
|
+
total: getAssetsSizeInfo(assets, chunks, jsOpt),
|
|
811
|
+
initial: getInitialAssetsSizeInfo(assets, chunks, jsOpt)
|
|
812
|
+
},
|
|
813
|
+
css: {
|
|
814
|
+
total: getAssetsSizeInfo(assets, chunks, cssOpt),
|
|
815
|
+
initial: getInitialAssetsSizeInfo(assets, chunks, cssOpt)
|
|
816
|
+
},
|
|
817
|
+
imgs: {
|
|
818
|
+
total: getAssetsSizeInfo(assets, chunks, imgOpt)
|
|
819
|
+
},
|
|
820
|
+
html: {
|
|
821
|
+
total: getAssetsSizeInfo(assets, chunks, htmlOpt)
|
|
822
|
+
},
|
|
823
|
+
media: {
|
|
824
|
+
total: getAssetsSizeInfo(assets, chunks, mediaOpt)
|
|
825
|
+
},
|
|
826
|
+
fonts: {
|
|
827
|
+
total: getAssetsSizeInfo(assets, chunks, fontOpt)
|
|
828
|
+
},
|
|
829
|
+
others: {
|
|
830
|
+
total: getAssetsSizeInfo(assets, chunks, otherOpt)
|
|
831
|
+
}
|
|
832
|
+
};
|
|
833
|
+
}
|
|
834
|
+
function getAssetDetails(assetPath, assets, chunks, modules, checkModules) {
|
|
835
|
+
let asset = assets.find((e)=>e.path === assetPath);
|
|
836
|
+
return {
|
|
837
|
+
asset,
|
|
838
|
+
chunks: getChunksByAsset(asset, chunks),
|
|
839
|
+
modules: getModulesByAsset(asset, chunks, modules, void 0, checkModules)
|
|
840
|
+
};
|
|
841
|
+
}
|
|
842
|
+
function getAllBundleData(assets, chunks, modules, filtersModules) {
|
|
843
|
+
let result = [];
|
|
844
|
+
try {
|
|
845
|
+
for(let i = 0; i < assets.length; i++){
|
|
846
|
+
let asset = assets[i];
|
|
847
|
+
result.push({
|
|
848
|
+
asset,
|
|
849
|
+
modules: getModulesByAsset(asset, chunks, modules, filtersModules)
|
|
850
|
+
});
|
|
851
|
+
}
|
|
852
|
+
return result;
|
|
853
|
+
} catch (error) {
|
|
854
|
+
return console.error(error), [];
|
|
855
|
+
}
|
|
856
|
+
}
|
|
857
|
+
function extname(filename) {
|
|
858
|
+
let matches = filename.split('?')[0].match(/\.([0-9a-z]+)(?:[\?#]|$)/i);
|
|
859
|
+
return matches ? `.${matches[1]}` : '';
|
|
860
|
+
}
|
|
861
|
+
function getEntryPoints(entrypoints) {
|
|
862
|
+
return entrypoints;
|
|
863
|
+
}
|
|
864
|
+
let bundle_sep = ',';
|
|
865
|
+
function getBundleDiffPageQueryString(files) {
|
|
866
|
+
let qs = encodeURIComponent(files.join(','));
|
|
867
|
+
return qs && (qs = `?${types_namespaceObject.Client.RsdoctorClientUrlQuery.BundleDiffFiles}=${qs}`), qs;
|
|
868
|
+
}
|
|
869
|
+
function getBundleDiffPageUrl(files) {
|
|
870
|
+
let qs = getBundleDiffPageQueryString(files);
|
|
871
|
+
if ('development' === process.env.NODE_ENV && 'undefined' != typeof location) {
|
|
872
|
+
let { search = '', origin } = location;
|
|
873
|
+
return search && (qs += `&${search.slice(1)}`), `${origin}${qs}#${types_namespaceObject.Client.RsdoctorClientRoutes.BundleDiff}`;
|
|
874
|
+
}
|
|
875
|
+
return `${qs}#${types_namespaceObject.Client.RsdoctorClientRoutes.BundleDiff}`;
|
|
876
|
+
}
|
|
877
|
+
function parseFilesFromBundlePageUrlQuery(queryValue) {
|
|
878
|
+
return decodeURIComponent(queryValue).split(',');
|
|
879
|
+
}
|
|
880
|
+
function getPluginHooks(plugin) {
|
|
881
|
+
return Object.keys(plugin);
|
|
882
|
+
}
|
|
883
|
+
function getPluginTapNames(plugin) {
|
|
884
|
+
let hooks = getPluginHooks(plugin), tapNames = new Set();
|
|
885
|
+
return hooks.forEach((hook)=>{
|
|
886
|
+
plugin[hook].forEach((data)=>{
|
|
887
|
+
tapNames.add(data.tapName);
|
|
888
|
+
});
|
|
889
|
+
}), [
|
|
890
|
+
...tapNames
|
|
891
|
+
];
|
|
892
|
+
}
|
|
893
|
+
function getPluginSummary(plugin) {
|
|
894
|
+
return {
|
|
895
|
+
hooks: getPluginHooks(plugin),
|
|
896
|
+
tapNames: getPluginTapNames(plugin)
|
|
897
|
+
};
|
|
898
|
+
}
|
|
899
|
+
function getPluginData(plugin, selectedHooks = [], selectedTapNames = []) {
|
|
900
|
+
let hooks = getPluginHooks(plugin).filter((hook)=>!selectedHooks.length || -1 !== selectedHooks.indexOf(hook));
|
|
901
|
+
return hooks.length ? getPluginTapNames(plugin).reduce((total, tapName)=>(selectedTapNames.length && -1 === selectedTapNames.indexOf(tapName) || hooks.forEach((hook)=>{
|
|
902
|
+
let hookData = plugin[hook].filter((e)=>e.tapName === tapName);
|
|
903
|
+
0 !== hookData.length && total.push({
|
|
904
|
+
tapName,
|
|
905
|
+
hook,
|
|
906
|
+
data: hookData.map((e)=>({
|
|
907
|
+
startAt: e.startAt,
|
|
908
|
+
endAt: e.endAt,
|
|
909
|
+
costs: e.costs,
|
|
910
|
+
type: e.type
|
|
911
|
+
}))
|
|
912
|
+
});
|
|
913
|
+
}), total), []) : [];
|
|
914
|
+
}
|
|
915
|
+
function getPackageRelationAlertDetails(modules, dependencies, root, packageDependencies, moduleCodeMap) {
|
|
916
|
+
return packageDependencies.slice().reverse().map((dep)=>{
|
|
917
|
+
let dependency = dependencies.find((item)=>item.id === dep.dependencyId);
|
|
918
|
+
if (!dependency) return null;
|
|
919
|
+
let module = modules.find((item)=>item.id === dependency.module);
|
|
920
|
+
return module ? {
|
|
921
|
+
group: dep.group,
|
|
922
|
+
module,
|
|
923
|
+
dependency,
|
|
924
|
+
relativePath: (0, external_path_namespaceObject.relative)(root, module.path),
|
|
925
|
+
moduleCode: moduleCodeMap?.[module.id]
|
|
926
|
+
} : null;
|
|
927
|
+
}).filter(Boolean);
|
|
928
|
+
}
|
|
929
|
+
let RspackLoaderInternalPropertyName = '__l__';
|
|
930
|
+
var rspack_RspackSummaryCostsDataName = function(RspackSummaryCostsDataName) {
|
|
931
|
+
return RspackSummaryCostsDataName.Bootstrap = "bootstrap->rspack:beforeCompile", RspackSummaryCostsDataName.Compile = "rspack:beforeCompile->afterCompile", RspackSummaryCostsDataName.Done = "rspack:afterCompile->done", RspackSummaryCostsDataName.Minify = "rspack:minify(rspack:optimizeChunkAssets)", RspackSummaryCostsDataName;
|
|
932
|
+
}({});
|
|
933
|
+
function checkSourceMapSupport(configs) {
|
|
934
|
+
if (!Array.isArray(configs) || !configs[0]) return {
|
|
935
|
+
isRspack: !1,
|
|
936
|
+
hasSourceMap: !1
|
|
937
|
+
};
|
|
938
|
+
let isRspack = 'rspack' === configs[0].name && configs[0]?.config?.name !== 'lynx', devtool = configs[0].config?.devtool, plugins = configs[0].config?.plugins, hasLynxSourcemapPlugin = plugins?.filter((plugin)=>plugin && plugin.includes('SourceMapDevToolPlugin'));
|
|
939
|
+
return {
|
|
940
|
+
isRspack,
|
|
941
|
+
hasSourceMap: 'string' == typeof devtool && devtool.includes('source-map') && !devtool.includes('eval') || !!hasLynxSourcemapPlugin?.length
|
|
942
|
+
};
|
|
943
|
+
}
|
|
944
|
+
class APIDataLoader {
|
|
945
|
+
loader;
|
|
946
|
+
constructor(loader){
|
|
947
|
+
this.loader = loader, this.loadAPI = this.loadAPI.bind(this);
|
|
948
|
+
}
|
|
949
|
+
log(...args) {
|
|
950
|
+
console.log(`[${this.constructor.name}]`, ...args);
|
|
951
|
+
}
|
|
952
|
+
loadAPI(...args) {
|
|
953
|
+
let [api, body] = args;
|
|
954
|
+
switch(api){
|
|
955
|
+
case types_namespaceObject.SDK.ServerAPI.API.LoadDataByKey:
|
|
956
|
+
return this.loader.loadData(body.key);
|
|
957
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetProjectInfo:
|
|
958
|
+
return Promise.all([
|
|
959
|
+
this.loader.loadData('root'),
|
|
960
|
+
this.loader.loadData('pid'),
|
|
961
|
+
this.loader.loadData('hash'),
|
|
962
|
+
this.loader.loadData('summary'),
|
|
963
|
+
this.loader.loadData('configs'),
|
|
964
|
+
this.loader.loadData('envinfo'),
|
|
965
|
+
this.loader.loadData('errors')
|
|
966
|
+
]).then(([root, pid, hash, summary, configs, envinfo, errors])=>({
|
|
967
|
+
root,
|
|
968
|
+
pid,
|
|
969
|
+
hash,
|
|
970
|
+
summary,
|
|
971
|
+
configs,
|
|
972
|
+
envinfo,
|
|
973
|
+
errors
|
|
974
|
+
}));
|
|
975
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetClientRoutes:
|
|
976
|
+
if ('undefined' != typeof window && window?.[types_namespaceObject.Constants.WINDOW_RSDOCTOR_TAG]) return window[types_namespaceObject.Constants.WINDOW_RSDOCTOR_TAG].enableRoutes;
|
|
977
|
+
return this.loader.loadManifest().then((res)=>{
|
|
978
|
+
let { enableRoutes = [] } = res.client || {};
|
|
979
|
+
return enableRoutes;
|
|
980
|
+
});
|
|
981
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetLoaderNames:
|
|
982
|
+
return this.loader.loadData('loader').then((res)=>getLoaderNames(res || []));
|
|
983
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetLayers:
|
|
984
|
+
return this.loader.loadData('moduleGraph').then((res)=>{
|
|
985
|
+
let { layers } = res || {};
|
|
986
|
+
return layers;
|
|
987
|
+
});
|
|
988
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetLoaderChartData:
|
|
989
|
+
return this.loader.loadData('loader').then((res)=>getLoaderChartData(res || []));
|
|
990
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetLoaderFileTree:
|
|
991
|
+
return this.loader.loadData('loader').then((res)=>getLoaderFileTree(res || []));
|
|
992
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetLoaderFileDetails:
|
|
993
|
+
return this.loader.loadData('loader').then((res)=>getLoaderFileDetails(body.path, res || []));
|
|
994
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetLoaderFolderStatistics:
|
|
995
|
+
return this.loader.loadData('loader').then((res)=>getLoaderFolderStatistics(body.folder, res || []));
|
|
996
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetLoaderFileFirstInput:
|
|
997
|
+
return this.loader.loadData('loader').then((res)=>getLoaderFileFirstInput(body.file, res || []));
|
|
998
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetLoaderFileInputAndOutput:
|
|
999
|
+
return this.loader.loadData('loader').then((res)=>getLoaderFileFirstInput(body.file, res || []));
|
|
1000
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetResolverFileTree:
|
|
1001
|
+
return this.loader.loadData('resolver').then((res)=>getResolverFileTree(res || []));
|
|
1002
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetResolverFileDetails:
|
|
1003
|
+
return Promise.all([
|
|
1004
|
+
this.loader.loadData('resolver'),
|
|
1005
|
+
this.loader.loadData('moduleGraph.modules'),
|
|
1006
|
+
this.loader.loadData('moduleCodeMap')
|
|
1007
|
+
]).then((res)=>{
|
|
1008
|
+
let resolverData = res[0], modules = res[1], moduleCodeMap = res[2];
|
|
1009
|
+
return getResolverFileDetails(body.filepath, resolverData || [], modules || [], moduleCodeMap || {});
|
|
1010
|
+
});
|
|
1011
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetPluginSummary:
|
|
1012
|
+
return this.loader.loadData('plugin').then((res)=>getPluginSummary(res || {}));
|
|
1013
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetPluginData:
|
|
1014
|
+
return this.loader.loadData('plugin').then((res)=>{
|
|
1015
|
+
let { hooks, tapNames } = body;
|
|
1016
|
+
return getPluginData(res || {}, hooks, tapNames);
|
|
1017
|
+
});
|
|
1018
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetAssetsSummary:
|
|
1019
|
+
return this.loader.loadData('chunkGraph').then((res)=>{
|
|
1020
|
+
let { withFileContent = !0 } = body, { assets = [], chunks = [] } = res || {};
|
|
1021
|
+
return getAssetsSummary(assets, chunks, {
|
|
1022
|
+
withFileContent
|
|
1023
|
+
});
|
|
1024
|
+
});
|
|
1025
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetAssetDetails:
|
|
1026
|
+
return Promise.all([
|
|
1027
|
+
this.loader.loadData('chunkGraph'),
|
|
1028
|
+
this.loader.loadData('moduleGraph'),
|
|
1029
|
+
this.loader.loadData('configs')
|
|
1030
|
+
]).then((res)=>{
|
|
1031
|
+
let { assetPath } = body, { isRspack, hasSourceMap } = checkSourceMapSupport(res[2] || []), { assets = [], chunks = [] } = res[0] || {}, { modules = [] } = res[1] || {};
|
|
1032
|
+
return getAssetDetails(assetPath, assets, chunks, modules, isRspack || hasSourceMap ? (_module)=>!0 : ()=>!0);
|
|
1033
|
+
});
|
|
1034
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetSummaryBundles:
|
|
1035
|
+
return Promise.all([
|
|
1036
|
+
this.loader.loadData('chunkGraph'),
|
|
1037
|
+
this.loader.loadData('moduleGraph')
|
|
1038
|
+
]).then((res)=>{
|
|
1039
|
+
let { assets = [], chunks = [] } = res[0] || {}, { modules = [] } = res[1] || {};
|
|
1040
|
+
return getAllBundleData(assets, chunks, modules, [
|
|
1041
|
+
'id',
|
|
1042
|
+
'path',
|
|
1043
|
+
'size',
|
|
1044
|
+
'kind'
|
|
1045
|
+
]);
|
|
1046
|
+
});
|
|
1047
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetChunksByModuleId:
|
|
1048
|
+
return Promise.all([
|
|
1049
|
+
this.loader.loadData('chunkGraph'),
|
|
1050
|
+
this.loader.loadData('moduleGraph')
|
|
1051
|
+
]).then((res)=>{
|
|
1052
|
+
let { moduleId } = body, { chunks = [] } = res[0] || {}, { modules = [] } = res[1] || {};
|
|
1053
|
+
return getChunksByModuleId(moduleId, modules, chunks);
|
|
1054
|
+
});
|
|
1055
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetModuleDetails:
|
|
1056
|
+
return Promise.all([
|
|
1057
|
+
this.loader.loadData('chunkGraph'),
|
|
1058
|
+
this.loader.loadData('moduleGraph')
|
|
1059
|
+
]).then((res)=>{
|
|
1060
|
+
let { moduleId } = body, { modules = [], dependencies = [] } = res[1] || {};
|
|
1061
|
+
return getModuleDetails(moduleId, modules, dependencies);
|
|
1062
|
+
});
|
|
1063
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetModulesByModuleIds:
|
|
1064
|
+
return this.loader.loadData('moduleGraph').then((res)=>{
|
|
1065
|
+
let { moduleIds } = body, { modules = [] } = res || {};
|
|
1066
|
+
return getModuleIdsByModulesIds(moduleIds, modules);
|
|
1067
|
+
});
|
|
1068
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetEntryPoints:
|
|
1069
|
+
return Promise.all([
|
|
1070
|
+
this.loader.loadData('chunkGraph')
|
|
1071
|
+
]).then((res)=>{
|
|
1072
|
+
let [chunkGraph] = res, { entrypoints = [] } = chunkGraph || {};
|
|
1073
|
+
return getEntryPoints(entrypoints);
|
|
1074
|
+
});
|
|
1075
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetModuleCodeByModuleId:
|
|
1076
|
+
return this.loader.loadData('moduleCodeMap').then((moduleCodeMap)=>{
|
|
1077
|
+
let { moduleId } = body;
|
|
1078
|
+
return moduleCodeMap ? moduleCodeMap[moduleId] : {
|
|
1079
|
+
source: '',
|
|
1080
|
+
transformed: '',
|
|
1081
|
+
parsedSource: ''
|
|
1082
|
+
};
|
|
1083
|
+
});
|
|
1084
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetModuleCodeByModuleIds:
|
|
1085
|
+
return this.loader.loadData('moduleCodeMap').then((moduleCodeMap)=>{
|
|
1086
|
+
let { moduleIds } = body, _moduleCodeData = {};
|
|
1087
|
+
return moduleCodeMap ? (moduleIds.forEach((id)=>{
|
|
1088
|
+
_moduleCodeData[id] = moduleCodeMap[id];
|
|
1089
|
+
}), _moduleCodeData) : [];
|
|
1090
|
+
});
|
|
1091
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetAllModuleGraph:
|
|
1092
|
+
return this.loader.loadData('moduleGraph').then((moduleGraph)=>moduleGraph?.modules);
|
|
1093
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetSearchModules:
|
|
1094
|
+
return Promise.all([
|
|
1095
|
+
this.loader.loadData('moduleGraph'),
|
|
1096
|
+
this.loader.loadData('chunkGraph')
|
|
1097
|
+
]).then((res)=>{
|
|
1098
|
+
let [moduleGraph, chunkGraph] = res, { moduleName } = body;
|
|
1099
|
+
if (!moduleName) return [];
|
|
1100
|
+
let assetMap = chunkGraph.chunks.reduce((acc, chunk)=>(chunk.assets.forEach((asset)=>{
|
|
1101
|
+
acc[chunk.id] || (acc[chunk.id] = []), acc[chunk.id].push(asset);
|
|
1102
|
+
}), acc), {}), searchedChunksMap = new Map();
|
|
1103
|
+
return moduleGraph?.modules.filter((module)=>{
|
|
1104
|
+
module.webpackId.includes(moduleName) && module.chunks.forEach((chunk)=>{
|
|
1105
|
+
searchedChunksMap.has(chunk) || (assetMap[chunk] || []).forEach((asset)=>{
|
|
1106
|
+
asset.endsWith('.js') && searchedChunksMap.set(chunk, asset);
|
|
1107
|
+
});
|
|
1108
|
+
});
|
|
1109
|
+
}), Object.fromEntries(searchedChunksMap);
|
|
1110
|
+
});
|
|
1111
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetSearchModuleInChunk:
|
|
1112
|
+
return Promise.all([
|
|
1113
|
+
this.loader.loadData('moduleGraph'),
|
|
1114
|
+
this.loader.loadData('root')
|
|
1115
|
+
]).then((res)=>{
|
|
1116
|
+
let [moduleGraph, root] = res, { moduleName, chunk } = body;
|
|
1117
|
+
return moduleName ? moduleGraph?.modules.filter((module)=>module.webpackId.includes(moduleName) && module.chunks.includes(chunk)).map((filteredModule)=>({
|
|
1118
|
+
id: filteredModule.id,
|
|
1119
|
+
path: filteredModule.path,
|
|
1120
|
+
relativePath: (0, external_path_namespaceObject.relative)(root, filteredModule.path)
|
|
1121
|
+
})) : [];
|
|
1122
|
+
});
|
|
1123
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetAllChunkGraph:
|
|
1124
|
+
return this.loader.loadData('chunkGraph').then((chunkGraph)=>chunkGraph?.chunks);
|
|
1125
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetPackageRelationAlertDetails:
|
|
1126
|
+
return Promise.all([
|
|
1127
|
+
this.loader.loadData('moduleGraph'),
|
|
1128
|
+
this.loader.loadData('errors'),
|
|
1129
|
+
this.loader.loadData('root'),
|
|
1130
|
+
this.loader.loadData('moduleCodeMap')
|
|
1131
|
+
]).then((res)=>{
|
|
1132
|
+
let { id, target } = body, [moduleGraph, errors = [], root = '', moduleCodeMap] = res, { modules = [], dependencies = [] } = moduleGraph || {}, { packages = [] } = errors.find((e)=>e.id === id) || {}, { dependencies: pkgDependencies = [] } = packages.find((e)=>e.target.name === target.name && e.target.root === target.root && e.target.version === target.version) || {};
|
|
1133
|
+
return getPackageRelationAlertDetails(modules, dependencies, root, pkgDependencies, moduleCodeMap || {});
|
|
1134
|
+
});
|
|
1135
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetOverlayAlerts:
|
|
1136
|
+
return this.loader.loadData('errors').then((res)=>(res || []).filter((e)=>e.code === types_namespaceObject.Rule.RuleMessageCodeEnumerated.Overlay));
|
|
1137
|
+
case types_namespaceObject.SDK.ServerAPI.API.BundleDiffManifest:
|
|
1138
|
+
return this.loader.loadManifest();
|
|
1139
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetBundleDiffSummary:
|
|
1140
|
+
return Promise.all([
|
|
1141
|
+
this.loader.loadManifest(),
|
|
1142
|
+
this.loader.loadData('root'),
|
|
1143
|
+
this.loader.loadData('hash'),
|
|
1144
|
+
this.loader.loadData('errors'),
|
|
1145
|
+
this.loader.loadData('chunkGraph'),
|
|
1146
|
+
this.loader.loadData('moduleGraph'),
|
|
1147
|
+
this.loader.loadData('moduleCodeMap'),
|
|
1148
|
+
this.loader.loadData('packageGraph'),
|
|
1149
|
+
this.loader.loadData('configs')
|
|
1150
|
+
]).then(([_manifest, root = '', hash = '', errors = {}, chunkGraph = {}, moduleGraph = {}, moduleCodeMap = {}, packageGraph = {}, configs = []])=>{
|
|
1151
|
+
let outputFilename = '';
|
|
1152
|
+
return 'string' == typeof configs[0]?.config?.output?.chunkFilename && (outputFilename = configs[0]?.config.output.chunkFilename), {
|
|
1153
|
+
root,
|
|
1154
|
+
hash,
|
|
1155
|
+
errors,
|
|
1156
|
+
chunkGraph,
|
|
1157
|
+
moduleGraph,
|
|
1158
|
+
packageGraph,
|
|
1159
|
+
outputFilename,
|
|
1160
|
+
moduleCodeMap
|
|
1161
|
+
};
|
|
1162
|
+
});
|
|
1163
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetChunkGraph:
|
|
1164
|
+
return this.loader.loadData('chunkGraph').then((res)=>{
|
|
1165
|
+
let { chunks = [] } = res || {};
|
|
1166
|
+
return chunks;
|
|
1167
|
+
});
|
|
1168
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetAllModuleGraphFilter:
|
|
1169
|
+
return this.loader.loadData('moduleGraph').then((moduleGraph)=>moduleGraph?.modules.map((m)=>({
|
|
1170
|
+
id: m.id,
|
|
1171
|
+
webpackId: m.webpackId,
|
|
1172
|
+
path: m.path,
|
|
1173
|
+
size: m.size,
|
|
1174
|
+
chunks: m.chunks,
|
|
1175
|
+
kind: m.kind
|
|
1176
|
+
})));
|
|
1177
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetModuleByName:
|
|
1178
|
+
return this.loader.loadData('moduleGraph').then((moduleGraph)=>{
|
|
1179
|
+
let { moduleName } = body, { modules = [] } = moduleGraph || {};
|
|
1180
|
+
return modules.filter((m)=>m.path.includes(moduleName)).map((m)=>({
|
|
1181
|
+
id: m.id,
|
|
1182
|
+
path: m.path
|
|
1183
|
+
})) || [];
|
|
1184
|
+
});
|
|
1185
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetModuleIssuerPath:
|
|
1186
|
+
return this.loader.loadData('moduleGraph').then((moduleGraph)=>{
|
|
1187
|
+
let { moduleId } = body, modules = moduleGraph?.modules || [], issuerPath = modules.find((m)=>String(m.id) === moduleId)?.issuerPath || [];
|
|
1188
|
+
return Array.isArray(issuerPath) && issuerPath.length > 0 && 'number' == typeof issuerPath[0] ? issuerPath.map((id)=>modules.find((m)=>m.id === id)?.path).filter(Boolean) : issuerPath;
|
|
1189
|
+
});
|
|
1190
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetPackageInfo:
|
|
1191
|
+
return this.loader.loadData('packageGraph').then((packageGraph)=>packageGraph?.packages);
|
|
1192
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetPackageDependency:
|
|
1193
|
+
return this.loader.loadData('packageGraph').then((packageGraph)=>packageGraph?.dependencies || []);
|
|
1194
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetChunkGraphAI:
|
|
1195
|
+
return this.loader.loadData('chunkGraph').then((res)=>{
|
|
1196
|
+
let { chunks = [] } = res || {};
|
|
1197
|
+
return chunks.map(({ modules, ...rest })=>rest);
|
|
1198
|
+
});
|
|
1199
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetChunkByIdAI:
|
|
1200
|
+
return Promise.all([
|
|
1201
|
+
this.loader.loadData('chunkGraph'),
|
|
1202
|
+
this.loader.loadData('moduleGraph')
|
|
1203
|
+
]).then(([chunkGraph, moduleGraph])=>{
|
|
1204
|
+
let { chunks = [] } = chunkGraph || {}, { modules = [] } = moduleGraph || {}, { chunkId } = body, chunkInfo = chunks.find((c)=>c.id === chunkId);
|
|
1205
|
+
if (!chunkInfo) return null;
|
|
1206
|
+
let chunkModules = modules.filter((m)=>chunkInfo.modules.includes(m.id)).map((module)=>({
|
|
1207
|
+
id: module.id,
|
|
1208
|
+
path: module.path,
|
|
1209
|
+
size: module.size,
|
|
1210
|
+
chunks: module.chunks,
|
|
1211
|
+
kind: module.kind,
|
|
1212
|
+
issuerPath: module.issuerPath
|
|
1213
|
+
}));
|
|
1214
|
+
return chunkInfo.modulesInfo = chunkModules, chunkInfo;
|
|
1215
|
+
});
|
|
1216
|
+
case types_namespaceObject.SDK.ServerAPI.API.GetDirectoriesLoaders:
|
|
1217
|
+
return Promise.all([
|
|
1218
|
+
this.loader.loadData('root'),
|
|
1219
|
+
this.loader.loadData('loader')
|
|
1220
|
+
]).then(([root, loaders])=>getDirectoriesLoaders(loaders || [], root || ''));
|
|
1221
|
+
default:
|
|
1222
|
+
throw Error(`API not implement: "${api}"`);
|
|
1223
|
+
}
|
|
1224
|
+
}
|
|
1225
|
+
}
|
|
1226
|
+
function isUndefined(value) {
|
|
1227
|
+
return void 0 === value;
|
|
1228
|
+
}
|
|
1229
|
+
function isNumber(value) {
|
|
1230
|
+
return 'number' == typeof value && !Number.isNaN(value);
|
|
1231
|
+
}
|
|
1232
|
+
function isObject(value) {
|
|
1233
|
+
return 'object' == typeof value && null !== value;
|
|
1234
|
+
}
|
|
1235
|
+
function isEmpty(value) {
|
|
1236
|
+
return null == value || Array.isArray(value) && 0 === value.length || 'object' == typeof value && 0 === Object.keys(value).length;
|
|
1237
|
+
}
|
|
1238
|
+
function last(array) {
|
|
1239
|
+
return array[array.length - 1];
|
|
1240
|
+
}
|
|
1241
|
+
function compact(array) {
|
|
1242
|
+
return array.filter((item)=>null != item || !item);
|
|
1243
|
+
}
|
|
1244
|
+
function isNil(value) {
|
|
1245
|
+
return null == value;
|
|
1246
|
+
}
|
|
1247
|
+
let isPlainObject = (obj)=>null !== obj && 'object' == typeof obj && Object.getPrototypeOf(obj) === Object.prototype, isString = (v)=>'string' == typeof v || !!v && 'object' == typeof v && !Array.isArray(v) && '[object String]' === ({}).toString.call(v);
|
|
1248
|
+
function pick(obj, keys) {
|
|
1249
|
+
let result = {};
|
|
1250
|
+
for(let i = 0; i < keys.length; i++){
|
|
1251
|
+
let key = keys[i];
|
|
1252
|
+
Object.hasOwn(obj, key) && (result[key] = obj[key]);
|
|
1253
|
+
}
|
|
1254
|
+
return result;
|
|
1255
|
+
}
|
|
1256
|
+
let PACKAGE_PREFIX = /(?:node_modules|~)(?:\/\.pnpm)?/, PACKAGE_SLUG = /[a-zA-Z0-9]+(?:[-|_|.]+[a-zA-Z0-9]+)*/, VERSION = /@[\w|\-|_|.]+/, VERSION_NUMBER = '@([\\d.]+)', MODULE_PATH_PACKAGES = RegExp(`(?:${PACKAGE_PREFIX.source}/)(?:(?:@${PACKAGE_SLUG.source}[/|+])?(?:${PACKAGE_SLUG.source}\\+)*(?:${PACKAGE_SLUG.source})(?:${VERSION.source})?)(?:_(?:@${PACKAGE_SLUG.source}[/|+])?(?:${PACKAGE_SLUG.source})(?:@${PACKAGE_SLUG.source})?)*/`, 'g'), PACKAGE_PATH_NAME = /(?:(?:node_modules|~)(?:\/\.pnpm)?\/)(?:((?:@[a-zA-Z0-9]+(?:[-|_|.]+[a-zA-Z0-9]+)*[/|+])?(?:(?:[a-zA-Z0-9]+(?:[-|_|.]+[a-zA-Z0-9]+)*\+)*)(?:[a-zA-Z0-9]+(?:[-|_|.]+[a-zA-Z0-9]+)*))(?:@[\w|\-|_|.]+)?)(?:_((?:@[a-zA-Z0-9]+(?:[-|_|.]+[a-zA-Z0-9]+)*[/|+])?(?:[a-zA-Z0-9]+(?:[-|_|.]+[a-zA-Z0-9]+)*))(?:@[a-zA-Z0-9]+(?:[-|_|.]+[a-zA-Z0-9]+)*))*\//gm, uniqLast = (data)=>{
|
|
1257
|
+
let res = [];
|
|
1258
|
+
return data.forEach((item, index)=>{
|
|
1259
|
+
data.slice(index + 1).includes(item) || res.push(item);
|
|
1260
|
+
}), res;
|
|
1261
|
+
}, getPackageMetaFromModulePath = (modulePath)=>{
|
|
1262
|
+
let paths = modulePath.match(MODULE_PATH_PACKAGES);
|
|
1263
|
+
if (!paths) return {
|
|
1264
|
+
name: '',
|
|
1265
|
+
version: ''
|
|
1266
|
+
};
|
|
1267
|
+
let names = uniqLast(paths.flatMap((packagePath)=>{
|
|
1268
|
+
let found = packagePath.matchAll(PACKAGE_PATH_NAME);
|
|
1269
|
+
return found ? compact([
|
|
1270
|
+
...found
|
|
1271
|
+
].flat()).slice(1).filter(Boolean).map((name)=>name.replace(/\+/g, '/')) : [];
|
|
1272
|
+
}));
|
|
1273
|
+
if (isEmpty(names)) return {
|
|
1274
|
+
name: '',
|
|
1275
|
+
version: ''
|
|
1276
|
+
};
|
|
1277
|
+
let name = last(names), pattern = RegExp(`(.*)(${last(paths)}).*`), path = modulePath.replace(pattern, '$1$2').replace(/\/$/, '');
|
|
1278
|
+
return {
|
|
1279
|
+
name,
|
|
1280
|
+
version: path && name && path.match(RegExp(`${name}@([\\d.]+)`))?.flat().slice(1)?.[0] || ''
|
|
1281
|
+
};
|
|
1282
|
+
}, external_fs_namespaceObject = require("fs");
|
|
1283
|
+
var external_fs_default = __webpack_require__.n(external_fs_namespaceObject);
|
|
1284
|
+
let external_os_namespaceObject = require("os");
|
|
1285
|
+
var external_os_default = __webpack_require__.n(external_os_namespaceObject);
|
|
1286
|
+
function writeMcpPort(port, builderName) {
|
|
1287
|
+
let homeDir = external_os_default().homedir(), rsdoctorDir = external_path_default().join(homeDir, '.cache/rsdoctor'), mcpPortFilePath = external_path_default().join(rsdoctorDir, 'mcp.json');
|
|
1288
|
+
external_fs_default().existsSync(rsdoctorDir) || external_fs_default().mkdirSync(rsdoctorDir, {
|
|
1289
|
+
recursive: !0
|
|
1290
|
+
});
|
|
1291
|
+
let mcpJson = {
|
|
1292
|
+
portList: {},
|
|
1293
|
+
port: 0
|
|
1294
|
+
};
|
|
1295
|
+
if (external_fs_default().existsSync(mcpPortFilePath)) try {
|
|
1296
|
+
mcpJson = JSON.parse(external_fs_default().readFileSync(mcpPortFilePath, 'utf8'));
|
|
1297
|
+
} catch (error) {
|
|
1298
|
+
rsdoctorLogger.debug('Failed to parse mcp.json', error);
|
|
1299
|
+
}
|
|
1300
|
+
mcpJson.portList || (mcpJson.portList = {}), mcpJson.portList[builderName || 'builder'] = port, mcpJson.port = port, external_fs_default().writeFileSync(mcpPortFilePath, JSON.stringify(mcpJson, null, 2), 'utf8');
|
|
1301
|
+
}
|
|
1302
|
+
function getMcpConfigPath() {
|
|
1303
|
+
let homeDir = external_os_default().homedir(), rsdoctorDir = external_path_default().join(homeDir, '.cache/rsdoctor');
|
|
1304
|
+
return external_path_default().join(rsdoctorDir, 'mcp.json');
|
|
1305
|
+
}
|
|
1306
|
+
for(var __webpack_i__ in exports.Alerts = __webpack_exports__.Alerts, exports.Algorithm = __webpack_exports__.Algorithm, exports.Bundle = __webpack_exports__.Bundle, exports.Crypto = __webpack_exports__.Crypto, exports.Data = __webpack_exports__.Data, exports.File = __webpack_exports__.File, exports.GlobalConfig = __webpack_exports__.GlobalConfig, exports.Graph = __webpack_exports__.Graph, exports.Loader = __webpack_exports__.Loader, exports.Lodash = __webpack_exports__.Lodash, exports.Manifest = __webpack_exports__.Manifest, exports.Package = __webpack_exports__.Package, exports.Plugin = __webpack_exports__.Plugin, exports.Resolver = __webpack_exports__.Resolver, exports.Rspack = __webpack_exports__.Rspack, exports.Summary = __webpack_exports__.Summary, exports.Time = __webpack_exports__.Time, exports.Url = __webpack_exports__.Url, __webpack_exports__)-1 === [
|
|
1307
|
+
"Alerts",
|
|
1308
|
+
"Algorithm",
|
|
1309
|
+
"Bundle",
|
|
1310
|
+
"Crypto",
|
|
1311
|
+
"Data",
|
|
1312
|
+
"File",
|
|
1313
|
+
"GlobalConfig",
|
|
1314
|
+
"Graph",
|
|
1315
|
+
"Loader",
|
|
1316
|
+
"Lodash",
|
|
1317
|
+
"Manifest",
|
|
1318
|
+
"Package",
|
|
1319
|
+
"Plugin",
|
|
1320
|
+
"Resolver",
|
|
1321
|
+
"Rspack",
|
|
1322
|
+
"Summary",
|
|
1323
|
+
"Time",
|
|
1324
|
+
"Url"
|
|
1325
|
+
].indexOf(__webpack_i__) && (exports[__webpack_i__] = __webpack_exports__[__webpack_i__]);
|
|
1326
|
+
Object.defineProperty(exports, '__esModule', {
|
|
1327
|
+
value: !0
|
|
1328
|
+
});
|