@rsdoctor/core 2.0.0-alpha.0 → 2.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (393) hide show
  1. package/dist/build-utils/build/chunks/assetsModules.d.ts +1 -1
  2. package/dist/build-utils/build/chunks/assetsModules.js +1 -1
  3. package/dist/build-utils/build/chunks/index.d.ts +0 -1
  4. package/dist/build-utils/build/chunks/index.js +0 -1
  5. package/dist/build-utils/build/chunks/rspack/transform.d.ts +1 -1
  6. package/dist/build-utils/build/chunks/rspack/transform.js +1 -1
  7. package/dist/build-utils/build/envinfo.d.ts +13 -0
  8. package/dist/build-utils/build/envinfo.js +60 -0
  9. package/dist/build-utils/build/file/cache.d.ts +5 -0
  10. package/dist/build-utils/build/file/cache.js +24 -0
  11. package/dist/build-utils/build/file/index.d.ts +3 -0
  12. package/dist/build-utils/build/file/index.js +5 -0
  13. package/dist/build-utils/build/file/sharding.d.ts +21 -0
  14. package/dist/build-utils/build/file/sharding.js +38 -0
  15. package/dist/build-utils/build/index.d.ts +5 -0
  16. package/dist/build-utils/build/index.js +11 -6
  17. package/dist/build-utils/build/json.d.ts +3 -0
  18. package/dist/build-utils/build/json.js +67 -0
  19. package/dist/build-utils/build/loader/probeLoader.d.ts +2 -2
  20. package/dist/build-utils/build/loader/probeLoader.js +4 -4
  21. package/dist/build-utils/build/loader/probeLoaderPlugin.d.ts +1 -1
  22. package/dist/build-utils/build/loader/probeLoaderPlugin.js +1 -1
  23. package/dist/build-utils/build/module-graph/index.d.ts +0 -1
  24. package/dist/build-utils/build/module-graph/index.js +0 -1
  25. package/dist/build-utils/build/module-graph/parser.d.ts +1 -1
  26. package/dist/build-utils/build/module-graph/parser.js +1 -1
  27. package/dist/build-utils/build/module-graph/rspack/transform.d.ts +1 -1
  28. package/dist/build-utils/build/module-graph/rspack/transform.js +6 -4
  29. package/dist/build-utils/build/module-graph/utils.d.ts +1 -1
  30. package/dist/build-utils/build/module-graph/utils.js +5 -4
  31. package/dist/build-utils/build/process.d.ts +2 -0
  32. package/dist/build-utils/build/process.js +18 -0
  33. package/dist/build-utils/build/server.d.ts +15 -0
  34. package/dist/build-utils/build/server.js +107 -0
  35. package/dist/build-utils/build/utils/loader.d.ts +2 -2
  36. package/dist/build-utils/build/utils/loader.js +10 -19
  37. package/dist/build-utils/build/utils/parseBundle.d.ts +1 -1
  38. package/dist/build-utils/build/utils/parseBundle.js +6 -8
  39. package/dist/build-utils/build/utils/plugin.d.ts +1 -1
  40. package/dist/build-utils/index.d.ts +10 -0
  41. package/dist/build-utils/index.js +12 -2
  42. package/dist/collection.d.ts +1 -0
  43. package/dist/collection.js +2 -0
  44. package/dist/common/file.d.ts +2 -0
  45. package/dist/common/file.js +8 -0
  46. package/dist/common/global-config.d.ts +21 -0
  47. package/dist/common/global-config.js +33 -0
  48. package/dist/common/index.d.ts +4 -0
  49. package/dist/common/index.js +6 -0
  50. package/dist/common-browser.d.ts +1 -0
  51. package/dist/common-browser.js +2 -0
  52. package/dist/error/error.d.ts +35 -0
  53. package/dist/error/error.js +143 -0
  54. package/dist/error/index.d.ts +2 -0
  55. package/dist/error/index.js +3 -0
  56. package/dist/error/transform.d.ts +3 -0
  57. package/dist/error/transform.js +138 -0
  58. package/dist/error/utils.d.ts +4 -0
  59. package/dist/error/utils.js +23 -0
  60. package/dist/graph/index.d.ts +1 -0
  61. package/dist/graph/index.js +2 -0
  62. package/dist/index.d.ts +2 -0
  63. package/dist/index.js +4 -2
  64. package/dist/inner-plugins/loaders/proxy.d.ts +4 -4
  65. package/dist/inner-plugins/plugins/base.d.ts +1 -1
  66. package/dist/inner-plugins/plugins/bundle.d.ts +1 -1
  67. package/dist/inner-plugins/plugins/bundle.js +3 -3
  68. package/dist/inner-plugins/plugins/ensureModulesChunkGraph.d.ts +3 -3
  69. package/dist/inner-plugins/plugins/ensureModulesChunkGraph.js +11 -39
  70. package/dist/inner-plugins/plugins/errors.d.ts +2 -2
  71. package/dist/inner-plugins/plugins/errors.js +3 -3
  72. package/dist/inner-plugins/plugins/loader.d.ts +1 -1
  73. package/dist/inner-plugins/plugins/loader.js +7 -19
  74. package/dist/inner-plugins/plugins/plugins.d.ts +1 -1
  75. package/dist/inner-plugins/plugins/plugins.js +2 -2
  76. package/dist/inner-plugins/plugins/progress.d.ts +2 -2
  77. package/dist/inner-plugins/plugins/progress.js +2 -2
  78. package/dist/inner-plugins/plugins/resolver.d.ts +1 -1
  79. package/dist/inner-plugins/plugins/resolver.js +2 -2
  80. package/dist/inner-plugins/plugins/rspack.d.ts +8 -3
  81. package/dist/inner-plugins/plugins/rspack.js +18 -4
  82. package/dist/inner-plugins/plugins/rules.d.ts +1 -1
  83. package/dist/inner-plugins/plugins/rules.js +3 -3
  84. package/dist/inner-plugins/plugins/sourcemapTool.d.ts +2 -2
  85. package/dist/inner-plugins/plugins/sourcemapTool.js +2 -2
  86. package/dist/inner-plugins/plugins/summary.d.ts +1 -1
  87. package/dist/inner-plugins/plugins/summary.js +3 -3
  88. package/dist/inner-plugins/utils/config.d.ts +2 -3
  89. package/dist/inner-plugins/utils/config.js +16 -17
  90. package/dist/inner-plugins/utils/loader.d.ts +4 -7
  91. package/dist/inner-plugins/utils/loader.js +8 -34
  92. package/dist/inner-plugins/utils/normalize-config.d.ts +1 -1
  93. package/dist/inner-plugins/utils/openBrowser.d.ts +1 -0
  94. package/dist/inner-plugins/utils/openBrowser.js +55 -0
  95. package/dist/inner-plugins/utils/plugin-common.js +4 -4
  96. package/dist/inner-plugins/utils/plugin.d.ts +1 -1
  97. package/dist/inner-plugins/utils/plugin.js +1 -1
  98. package/dist/inner-plugins/utils/sdk.d.ts +2 -3
  99. package/dist/inner-plugins/utils/sdk.js +2 -2
  100. package/dist/logger.d.ts +9 -0
  101. package/dist/logger.js +51 -0
  102. package/dist/{inner-plugins/constants.d.cts → rspack-plugin/constants.d.ts} +3 -0
  103. package/dist/rspack-plugin/constants.js +23 -0
  104. package/dist/rspack-plugin/index.d.ts +2 -0
  105. package/dist/rspack-plugin/index.js +3 -0
  106. package/dist/rspack-plugin/multiple.d.ts +8 -0
  107. package/dist/rspack-plugin/multiple.js +39 -0
  108. package/dist/rspack-plugin/plugin.d.ts +25 -0
  109. package/dist/rspack-plugin/plugin.js +133 -0
  110. package/dist/rule-utils/document/document.d.ts +16 -0
  111. package/dist/rule-utils/document/document.js +46 -0
  112. package/dist/rule-utils/document/index.d.ts +3 -0
  113. package/dist/rule-utils/document/index.js +4 -0
  114. package/dist/rule-utils/document/server.d.ts +4 -0
  115. package/dist/rule-utils/document/server.js +13 -0
  116. package/dist/rule-utils/document/types.d.ts +31 -0
  117. package/dist/rule-utils/index.d.ts +2 -0
  118. package/dist/rule-utils/index.js +3 -0
  119. package/dist/rule-utils/parser/asserts.d.ts +81 -0
  120. package/dist/rule-utils/parser/asserts.js +105 -0
  121. package/dist/rule-utils/parser/index.d.ts +4 -0
  122. package/dist/rule-utils/parser/index.js +5 -0
  123. package/dist/rule-utils/parser/parser.d.ts +118 -0
  124. package/dist/rule-utils/parser/parser.js +24 -0
  125. package/dist/rule-utils/parser/types.d.ts +30 -0
  126. package/dist/rule-utils/parser/types.js +8 -0
  127. package/dist/rule-utils/parser/utils.d.ts +30 -0
  128. package/dist/rule-utils/parser/utils.js +106 -0
  129. package/dist/rules/linter.d.ts +1 -1
  130. package/dist/rules/linter.js +1 -1
  131. package/dist/rules/rule.d.ts +2 -2
  132. package/dist/rules/rule.js +2 -2
  133. package/dist/rules/rules/cjs-require/index.d.ts +1 -1
  134. package/dist/rules/rules/cjs-require/index.js +1 -1
  135. package/dist/rules/rules/cross-chunks-package/index.d.ts +1 -1
  136. package/dist/rules/rules/cross-chunks-package/index.js +2 -2
  137. package/dist/rules/rules/default-import-check/index.d.ts +1 -1
  138. package/dist/rules/rules/default-import-check/index.js +2 -2
  139. package/dist/rules/rules/default-import-check/utils.d.ts +2 -2
  140. package/dist/rules/rules/default-import-check/utils.js +2 -2
  141. package/dist/rules/rules/duplicate-package/index.d.ts +3 -3
  142. package/dist/rules/rules/duplicate-package/index.js +3 -3
  143. package/dist/rules/rules/duplicate-package/utils.d.ts +1 -1
  144. package/dist/rules/rules/ecma-version-check/index.d.ts +3 -2
  145. package/dist/rules/rules/ecma-version-check/index.js +1 -1
  146. package/dist/rules/rules/ecma-version-check/types.d.ts +1 -2
  147. package/dist/rules/rules/ecma-version-check/utils.d.ts +1 -1
  148. package/dist/rules/rules/esm-resolved-to-cjs/index.d.ts +1 -1
  149. package/dist/rules/rules/esm-resolved-to-cjs/index.js +1 -1
  150. package/dist/rules/rules/index.d.ts +1 -1
  151. package/dist/rules/rules/loader-performance-optimization/index.d.ts +1 -1
  152. package/dist/rules/rules/loader-performance-optimization/index.js +2 -2
  153. package/dist/rules/rules/loader-performance-optimization/types.d.ts +1 -1
  154. package/dist/rules/rules/module-mixed-chunks/index.d.ts +1 -1
  155. package/dist/rules/rules/module-mixed-chunks/index.js +1 -1
  156. package/dist/rules/rules/side-effects-only-imports/index.d.ts +1 -1
  157. package/dist/rules/rules/side-effects-only-imports/index.js +1 -1
  158. package/dist/rules/utils.d.ts +1 -1
  159. package/dist/rules/utils.js +1 -1
  160. package/dist/sdk/index.d.ts +2 -0
  161. package/dist/sdk/index.js +3 -0
  162. package/dist/sdk/multiple/controller.d.ts +12 -0
  163. package/dist/sdk/multiple/controller.js +42 -0
  164. package/dist/sdk/multiple/index.d.ts +2 -0
  165. package/dist/sdk/multiple/index.js +3 -0
  166. package/dist/sdk/multiple/primary.d.ts +32 -0
  167. package/dist/sdk/multiple/primary.js +64 -0
  168. package/dist/sdk/multiple/server.d.ts +7 -0
  169. package/dist/sdk/multiple/server.js +14 -0
  170. package/dist/sdk/sdk/core.d.ts +33 -0
  171. package/dist/sdk/sdk/core.js +163 -0
  172. package/dist/sdk/sdk/index.d.ts +52 -0
  173. package/dist/sdk/sdk/index.js +435 -0
  174. package/dist/sdk/sdk/types.d.ts +26 -0
  175. package/dist/sdk/sdk/types.js +1 -0
  176. package/dist/sdk/server/apis/alerts.d.ts +5 -0
  177. package/dist/sdk/server/apis/alerts.js +30 -0
  178. package/dist/sdk/server/apis/base.d.ts +11 -0
  179. package/dist/sdk/server/apis/base.js +22 -0
  180. package/dist/sdk/server/apis/bundle-diff.d.ts +6 -0
  181. package/dist/sdk/server/apis/bundle-diff.js +51 -0
  182. package/dist/sdk/server/apis/data.d.ts +6 -0
  183. package/dist/sdk/server/apis/data.js +44 -0
  184. package/dist/sdk/server/apis/fs.d.ts +5 -0
  185. package/dist/sdk/server/apis/fs.js +28 -0
  186. package/dist/sdk/server/apis/graph.d.ts +12 -0
  187. package/dist/sdk/server/apis/graph.js +116 -0
  188. package/dist/sdk/server/apis/index.d.ts +10 -0
  189. package/dist/sdk/server/apis/index.js +11 -0
  190. package/dist/sdk/server/apis/loader.d.ts +15 -0
  191. package/dist/sdk/server/apis/loader.js +120 -0
  192. package/dist/sdk/server/apis/plugin.d.ts +6 -0
  193. package/dist/sdk/server/apis/plugin.js +39 -0
  194. package/dist/sdk/server/apis/project.d.ts +8 -0
  195. package/dist/sdk/server/apis/project.js +59 -0
  196. package/dist/sdk/server/apis/renderer.d.ts +6 -0
  197. package/dist/sdk/server/apis/renderer.js +33 -0
  198. package/dist/sdk/server/apis/resolver.d.ts +6 -0
  199. package/dist/sdk/server/apis/resolver.js +38 -0
  200. package/dist/sdk/server/client.d.ts +3 -0
  201. package/dist/sdk/server/client.js +8 -0
  202. package/dist/sdk/server/fakeServer.d.ts +9 -0
  203. package/dist/sdk/server/fakeServer.js +12 -0
  204. package/dist/sdk/server/index.d.ts +44 -0
  205. package/dist/sdk/server/index.js +292 -0
  206. package/dist/sdk/server/json-body.d.ts +6 -0
  207. package/dist/sdk/server/json-body.js +150 -0
  208. package/dist/sdk/server/router.d.ts +24 -0
  209. package/dist/sdk/server/router.js +83 -0
  210. package/dist/sdk/server/security.d.ts +5 -0
  211. package/dist/sdk/server/security.js +47 -0
  212. package/dist/sdk/server/socket/api.d.ts +15 -0
  213. package/dist/sdk/server/socket/api.js +22 -0
  214. package/dist/sdk/server/socket/index.d.ts +48 -0
  215. package/dist/sdk/server/socket/index.js +166 -0
  216. package/dist/sdk/server/utils.d.ts +6 -0
  217. package/dist/sdk/server/utils.js +19 -0
  218. package/dist/sdk/utils/base.d.ts +1 -0
  219. package/dist/sdk/utils/base.js +22 -0
  220. package/dist/sdk/utils/constant.d.ts +1 -0
  221. package/dist/sdk/utils/constant.js +4 -0
  222. package/dist/sdk/utils/index.d.ts +3 -0
  223. package/dist/sdk/utils/index.js +4 -0
  224. package/dist/sdk/utils/openBrowser.d.ts +4 -0
  225. package/dist/sdk/utils/openBrowser.js +53 -0
  226. package/dist/sdk/utils/upload.d.ts +2 -0
  227. package/dist/sdk/utils/upload.js +6 -0
  228. package/dist/sdk.d.ts +1 -0
  229. package/dist/sdk.js +2 -0
  230. package/dist/types/index.d.ts +0 -1
  231. package/dist/types/index.js +0 -1
  232. package/dist/types/loader.d.ts +1 -1
  233. package/dist/types/plugin.d.ts +7 -28
  234. package/package.json +127 -58
  235. package/static/openChrome.applescript +95 -0
  236. package/dist/build-utils/build/chunks/assetsModules.cjs +0 -42
  237. package/dist/build-utils/build/chunks/assetsModules.d.cts +0 -17
  238. package/dist/build-utils/build/chunks/chunkTransform.cjs +0 -39
  239. package/dist/build-utils/build/chunks/chunkTransform.d.cts +0 -4
  240. package/dist/build-utils/build/chunks/chunkTransform.d.ts +0 -4
  241. package/dist/build-utils/build/chunks/chunkTransform.js +0 -6
  242. package/dist/build-utils/build/chunks/index.cjs +0 -72
  243. package/dist/build-utils/build/chunks/index.d.cts +0 -3
  244. package/dist/build-utils/build/chunks/rspack/transform.cjs +0 -80
  245. package/dist/build-utils/build/chunks/rspack/transform.d.cts +0 -13
  246. package/dist/build-utils/build/index.cjs +0 -52
  247. package/dist/build-utils/build/index.d.cts +0 -5
  248. package/dist/build-utils/build/loader/index.cjs +0 -65
  249. package/dist/build-utils/build/loader/index.d.cts +0 -2
  250. package/dist/build-utils/build/loader/probeLoader.cjs +0 -89
  251. package/dist/build-utils/build/loader/probeLoader.d.cts +0 -4
  252. package/dist/build-utils/build/loader/probeLoaderPlugin.cjs +0 -65
  253. package/dist/build-utils/build/loader/probeLoaderPlugin.d.cts +0 -5
  254. package/dist/build-utils/build/module-graph/index.cjs +0 -65
  255. package/dist/build-utils/build/module-graph/index.d.cts +0 -2
  256. package/dist/build-utils/build/module-graph/parser.cjs +0 -46
  257. package/dist/build-utils/build/module-graph/parser.d.cts +0 -2
  258. package/dist/build-utils/build/module-graph/rspack/transform.cjs +0 -151
  259. package/dist/build-utils/build/module-graph/rspack/transform.d.cts +0 -26
  260. package/dist/build-utils/build/module-graph/transform.cjs +0 -39
  261. package/dist/build-utils/build/module-graph/transform.d.cts +0 -3
  262. package/dist/build-utils/build/module-graph/transform.d.ts +0 -3
  263. package/dist/build-utils/build/module-graph/transform.js +0 -6
  264. package/dist/build-utils/build/module-graph/utils.cjs +0 -95
  265. package/dist/build-utils/build/module-graph/utils.d.cts +0 -3
  266. package/dist/build-utils/build/utils/index.cjs +0 -72
  267. package/dist/build-utils/build/utils/index.d.cts +0 -3
  268. package/dist/build-utils/build/utils/loader.cjs +0 -354
  269. package/dist/build-utils/build/utils/loader.d.cts +0 -20
  270. package/dist/build-utils/build/utils/parseBundle.cjs +0 -283
  271. package/dist/build-utils/build/utils/parseBundle.d.cts +0 -12
  272. package/dist/build-utils/build/utils/plugin.cjs +0 -60
  273. package/dist/build-utils/build/utils/plugin.d.cts +0 -5
  274. package/dist/build-utils/index.cjs +0 -36
  275. package/dist/build-utils/index.d.cts +0 -1
  276. package/dist/index.cjs +0 -81
  277. package/dist/index.d.cts +0 -3
  278. package/dist/inner-plugins/constants.cjs +0 -64
  279. package/dist/inner-plugins/index.cjs +0 -65
  280. package/dist/inner-plugins/index.d.cts +0 -2
  281. package/dist/inner-plugins/loaders/proxy.cjs +0 -104
  282. package/dist/inner-plugins/loaders/proxy.d.cts +0 -7
  283. package/dist/inner-plugins/plugins/base.cjs +0 -53
  284. package/dist/inner-plugins/plugins/base.d.cts +0 -12
  285. package/dist/inner-plugins/plugins/bundle.cjs +0 -96
  286. package/dist/inner-plugins/plugins/bundle.d.cts +0 -15
  287. package/dist/inner-plugins/plugins/ensureModulesChunkGraph.cjs +0 -141
  288. package/dist/inner-plugins/plugins/ensureModulesChunkGraph.d.cts +0 -34
  289. package/dist/inner-plugins/plugins/errors.cjs +0 -98
  290. package/dist/inner-plugins/plugins/errors.d.cts +0 -11
  291. package/dist/inner-plugins/plugins/index.cjs +0 -121
  292. package/dist/inner-plugins/plugins/index.d.cts +0 -10
  293. package/dist/inner-plugins/plugins/loader.cjs +0 -165
  294. package/dist/inner-plugins/plugins/loader.d.cts +0 -10
  295. package/dist/inner-plugins/plugins/plugins.cjs +0 -73
  296. package/dist/inner-plugins/plugins/plugins.d.cts +0 -8
  297. package/dist/inner-plugins/plugins/progress.cjs +0 -68
  298. package/dist/inner-plugins/plugins/progress.d.cts +0 -8
  299. package/dist/inner-plugins/plugins/resolver.cjs +0 -90
  300. package/dist/inner-plugins/plugins/resolver.d.cts +0 -12
  301. package/dist/inner-plugins/plugins/rspack.cjs +0 -118
  302. package/dist/inner-plugins/plugins/rspack.d.cts +0 -4
  303. package/dist/inner-plugins/plugins/rules.cjs +0 -97
  304. package/dist/inner-plugins/plugins/rules.d.cts +0 -8
  305. package/dist/inner-plugins/plugins/sourcemapTool.cjs +0 -275
  306. package/dist/inner-plugins/plugins/sourcemapTool.d.cts +0 -52
  307. package/dist/inner-plugins/plugins/summary.cjs +0 -125
  308. package/dist/inner-plugins/plugins/summary.d.cts +0 -14
  309. package/dist/inner-plugins/utils/circleDetect.cjs +0 -49
  310. package/dist/inner-plugins/utils/circleDetect.d.cts +0 -4
  311. package/dist/inner-plugins/utils/config.cjs +0 -191
  312. package/dist/inner-plugins/utils/config.d.cts +0 -5
  313. package/dist/inner-plugins/utils/index.cjs +0 -106
  314. package/dist/inner-plugins/utils/index.d.cts +0 -9
  315. package/dist/inner-plugins/utils/loader.cjs +0 -218
  316. package/dist/inner-plugins/utils/loader.d.cts +0 -13
  317. package/dist/inner-plugins/utils/normalize-config.cjs +0 -122
  318. package/dist/inner-plugins/utils/normalize-config.d.cts +0 -37
  319. package/dist/inner-plugins/utils/plugin-common.cjs +0 -143
  320. package/dist/inner-plugins/utils/plugin-common.d.cts +0 -11
  321. package/dist/inner-plugins/utils/plugin.cjs +0 -106
  322. package/dist/inner-plugins/utils/plugin.d.cts +0 -4
  323. package/dist/inner-plugins/utils/sdk.cjs +0 -55
  324. package/dist/inner-plugins/utils/sdk.d.cts +0 -8
  325. package/dist/rslib-runtime.js +0 -19
  326. package/dist/rules/index.cjs +0 -81
  327. package/dist/rules/index.d.cts +0 -3
  328. package/dist/rules/linter.cjs +0 -72
  329. package/dist/rules/linter.d.cts +0 -9
  330. package/dist/rules/rule.cjs +0 -137
  331. package/dist/rules/rule.d.cts +0 -27
  332. package/dist/rules/rules/cjs-require/index.cjs +0 -83
  333. package/dist/rules/rules/cjs-require/index.d.cts +0 -4
  334. package/dist/rules/rules/cjs-require/types.cjs +0 -18
  335. package/dist/rules/rules/cjs-require/types.d.cts +0 -7
  336. package/dist/rules/rules/cross-chunks-package/index.cjs +0 -74
  337. package/dist/rules/rules/cross-chunks-package/index.d.cts +0 -4
  338. package/dist/rules/rules/cross-chunks-package/types.cjs +0 -18
  339. package/dist/rules/rules/cross-chunks-package/types.d.cts +0 -3
  340. package/dist/rules/rules/cross-chunks-package/utils.cjs +0 -40
  341. package/dist/rules/rules/cross-chunks-package/utils.d.cts +0 -1
  342. package/dist/rules/rules/default-import-check/index.cjs +0 -116
  343. package/dist/rules/rules/default-import-check/index.d.cts +0 -4
  344. package/dist/rules/rules/default-import-check/types.cjs +0 -18
  345. package/dist/rules/rules/default-import-check/types.d.cts +0 -4
  346. package/dist/rules/rules/default-import-check/utils.cjs +0 -97
  347. package/dist/rules/rules/default-import-check/utils.d.cts +0 -10
  348. package/dist/rules/rules/duplicate-package/index.cjs +0 -72
  349. package/dist/rules/rules/duplicate-package/index.d.cts +0 -4
  350. package/dist/rules/rules/duplicate-package/types.cjs +0 -60
  351. package/dist/rules/rules/duplicate-package/types.d.cts +0 -24
  352. package/dist/rules/rules/duplicate-package/utils.cjs +0 -84
  353. package/dist/rules/rules/duplicate-package/utils.d.cts +0 -3
  354. package/dist/rules/rules/ecma-version-check/index.cjs +0 -96
  355. package/dist/rules/rules/ecma-version-check/index.d.cts +0 -4
  356. package/dist/rules/rules/ecma-version-check/types.cjs +0 -18
  357. package/dist/rules/rules/ecma-version-check/types.d.cts +0 -3
  358. package/dist/rules/rules/ecma-version-check/utils.cjs +0 -39
  359. package/dist/rules/rules/ecma-version-check/utils.d.cts +0 -2
  360. package/dist/rules/rules/esm-resolved-to-cjs/index.cjs +0 -237
  361. package/dist/rules/rules/esm-resolved-to-cjs/index.d.cts +0 -4
  362. package/dist/rules/rules/esm-resolved-to-cjs/types.cjs +0 -18
  363. package/dist/rules/rules/esm-resolved-to-cjs/types.d.cts +0 -8
  364. package/dist/rules/rules/index.cjs +0 -55
  365. package/dist/rules/rules/index.d.cts +0 -2
  366. package/dist/rules/rules/loader-performance-optimization/index.cjs +0 -119
  367. package/dist/rules/rules/loader-performance-optimization/index.d.cts +0 -4
  368. package/dist/rules/rules/loader-performance-optimization/types.cjs +0 -18
  369. package/dist/rules/rules/loader-performance-optimization/types.d.cts +0 -22
  370. package/dist/rules/rules/loader-performance-optimization/utils.cjs +0 -43
  371. package/dist/rules/rules/loader-performance-optimization/utils.d.cts +0 -1
  372. package/dist/rules/rules/module-mixed-chunks/index.cjs +0 -85
  373. package/dist/rules/rules/module-mixed-chunks/index.d.cts +0 -4
  374. package/dist/rules/rules/module-mixed-chunks/types.cjs +0 -18
  375. package/dist/rules/rules/module-mixed-chunks/types.d.cts +0 -3
  376. package/dist/rules/rules/side-effects-only-imports/index.cjs +0 -114
  377. package/dist/rules/rules/side-effects-only-imports/index.d.cts +0 -4
  378. package/dist/rules/rules/side-effects-only-imports/types.cjs +0 -18
  379. package/dist/rules/rules/side-effects-only-imports/types.d.cts +0 -9
  380. package/dist/rules/utils.cjs +0 -46
  381. package/dist/rules/utils.d.cts +0 -3
  382. package/dist/types/chunks.cjs +0 -18
  383. package/dist/types/chunks.d.cts +0 -6
  384. package/dist/types/chunks.d.ts +0 -6
  385. package/dist/types/index.cjs +0 -79
  386. package/dist/types/index.d.cts +0 -4
  387. package/dist/types/loader.cjs +0 -18
  388. package/dist/types/loader.d.cts +0 -19
  389. package/dist/types/plugin.cjs +0 -18
  390. package/dist/types/plugin.d.cts +0 -51
  391. package/dist/types/rules.cjs +0 -18
  392. package/dist/types/rules.d.cts +0 -7
  393. /package/dist/{types/chunks.js → rule-utils/document/types.js} +0 -0
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __webpack_require__ = {};
3
- (()=>{
4
- __webpack_require__.r = (exports1)=>{
5
- if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
6
- value: 'Module'
7
- });
8
- Object.defineProperty(exports1, '__esModule', {
9
- value: true
10
- });
11
- };
12
- })();
13
- var __webpack_exports__ = {};
14
- __webpack_require__.r(__webpack_exports__);
15
- for(var __rspack_i in __webpack_exports__)exports[__rspack_i] = __webpack_exports__[__rspack_i];
16
- Object.defineProperty(exports, '__esModule', {
17
- value: true
18
- });
@@ -1,3 +0,0 @@
1
- import type { PluginCheckSyntaxOptions } from '@rsbuild/plugin-check-syntax';
2
- export interface Config extends PluginCheckSyntaxOptions {
3
- }
@@ -1,39 +0,0 @@
1
- "use strict";
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 ("u" > 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
- getVersionNumber: ()=>getVersionNumber
28
- });
29
- function getVersionNumber(ECMAString) {
30
- const version = ECMAString.match(/\d/);
31
- return version?.length ? Number(version[0]) : void 0;
32
- }
33
- exports.getVersionNumber = __webpack_exports__.getVersionNumber;
34
- for(var __rspack_i in __webpack_exports__)if (-1 === [
35
- "getVersionNumber"
36
- ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
37
- Object.defineProperty(exports, '__esModule', {
38
- value: true
39
- });
@@ -1,2 +0,0 @@
1
- import type { ECMAVersion } from '@rsdoctor/utils/ruleUtils';
2
- export declare function getVersionNumber(ECMAString: ECMAVersion): number | undefined;
@@ -1,237 +0,0 @@
1
- "use strict";
2
- var __webpack_require__ = {};
3
- (()=>{
4
- __webpack_require__.n = (module)=>{
5
- var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
6
- __webpack_require__.d(getter, {
7
- a: getter
8
- });
9
- return getter;
10
- };
11
- })();
12
- (()=>{
13
- __webpack_require__.d = (exports1, definition)=>{
14
- for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
15
- enumerable: true,
16
- get: definition[key]
17
- });
18
- };
19
- })();
20
- (()=>{
21
- __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
22
- })();
23
- (()=>{
24
- __webpack_require__.r = (exports1)=>{
25
- if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
26
- value: 'Module'
27
- });
28
- Object.defineProperty(exports1, '__esModule', {
29
- value: true
30
- });
31
- };
32
- })();
33
- var __webpack_exports__ = {};
34
- __webpack_require__.r(__webpack_exports__);
35
- __webpack_require__.d(__webpack_exports__, {
36
- rule: ()=>rule
37
- });
38
- const external_fs_namespaceObject = require("fs");
39
- var external_fs_default = /*#__PURE__*/ __webpack_require__.n(external_fs_namespaceObject);
40
- const external_path_namespaceObject = require("path");
41
- var external_path_default = /*#__PURE__*/ __webpack_require__.n(external_path_namespaceObject);
42
- const types_namespaceObject = require("@rsdoctor/types");
43
- const external_rule_cjs_namespaceObject = require("../../rule.cjs");
44
- const title = 'esm-resolved-to-cjs';
45
- function normalizePathForCompare(filePath) {
46
- const queryIndex = filePath.indexOf('?');
47
- const hashIndex = filePath.indexOf('#');
48
- const splitIndex = [
49
- queryIndex,
50
- hashIndex
51
- ].filter((index)=>index >= 0).reduce((min, index)=>Math.min(min, index), 1 / 0);
52
- const cleanPath = splitIndex === 1 / 0 ? filePath : filePath.slice(0, splitIndex);
53
- return external_path_default().normalize(cleanPath);
54
- }
55
- function isDefinitelyEsmFile(filePath) {
56
- return '.mjs' === external_path_default().extname(normalizePathForCompare(filePath));
57
- }
58
- function isDeclaredEsmEntry(filePath, esmEntries, toRealPath) {
59
- const realPath = toRealPath(filePath);
60
- return esmEntries.some((esmEntry)=>realPath === toRealPath(esmEntry));
61
- }
62
- function isRecord(value) {
63
- return null !== value && 'object' == typeof value && !Array.isArray(value);
64
- }
65
- function substituteExportPattern(target, wildcard) {
66
- return target.replace(/\*/g, wildcard);
67
- }
68
- function toPackagePath(pkgRoot, target, wildcard) {
69
- return external_path_default().resolve(pkgRoot, substituteExportPattern(target, wildcard));
70
- }
71
- function collectStringTargets(value, wildcard) {
72
- if ('string' == typeof value) return [
73
- substituteExportPattern(value, wildcard)
74
- ];
75
- if (Array.isArray(value)) return value.flatMap((item)=>collectStringTargets(item, wildcard));
76
- if (!isRecord(value)) return [];
77
- return Object.values(value).flatMap((child)=>collectStringTargets(child, wildcard));
78
- }
79
- function collectEsmTargets(exportEntry, pkgRoot, wildcard) {
80
- const entries = new Set();
81
- const addTargets = (value)=>{
82
- for (const target of collectStringTargets(value, wildcard))entries.add(toPackagePath(pkgRoot, target, ''));
83
- };
84
- const visit = (value)=>{
85
- if ('string' == typeof value || Array.isArray(value)) return void addTargets(value);
86
- if (!isRecord(value)) return;
87
- addTargets(value['import']);
88
- addTargets(value['module']);
89
- for (const child of Object.values(value))if (isRecord(child) || Array.isArray(child)) visit(child);
90
- };
91
- visit(exportEntry);
92
- return entries;
93
- }
94
- function hasSubpathExportKeys(exports1) {
95
- return Object.keys(exports1).some((key)=>'.' === key || key.startsWith('./'));
96
- }
97
- function matchPatternExportKey(patternKey, exportKey) {
98
- const wildcardIndex = patternKey.indexOf('*');
99
- if (wildcardIndex < 0) return null;
100
- const prefix = patternKey.slice(0, wildcardIndex);
101
- const suffix = patternKey.slice(wildcardIndex + 1);
102
- if (!exportKey.startsWith(prefix) || !exportKey.endsWith(suffix)) return null;
103
- return exportKey.slice(prefix.length, exportKey.length - suffix.length);
104
- }
105
- function resolveExportEntry(exports1, exportKey) {
106
- if (Object.prototype.hasOwnProperty.call(exports1, exportKey)) return {
107
- value: exports1[exportKey],
108
- wildcard: ''
109
- };
110
- for (const [key, value] of Object.entries(exports1)){
111
- const wildcard = matchPatternExportKey(key, exportKey);
112
- if (null !== wildcard) return {
113
- value,
114
- wildcard
115
- };
116
- }
117
- return null;
118
- }
119
- function resolveExportEntryForKey(exportsField, exportKey) {
120
- if (!isRecord(exportsField)) return null;
121
- if (!hasSubpathExportKeys(exportsField)) return '.' === exportKey ? {
122
- value: exportsField,
123
- wildcard: ''
124
- } : null;
125
- return resolveExportEntry(exportsField, exportKey);
126
- }
127
- function extractEsmEntries(pkgJson, pkgRoot, exportKey) {
128
- const { exports: exportsField, module: moduleField } = pkgJson;
129
- const resolvedExport = resolveExportEntryForKey(exportsField, exportKey);
130
- const entries = resolvedExport ? collectEsmTargets(resolvedExport.value, pkgRoot, resolvedExport.wildcard) : new Set();
131
- if ('.' === exportKey && 'string' == typeof moduleField) entries.add(external_path_default().resolve(pkgRoot, moduleField));
132
- return entries;
133
- }
134
- function getExportKeyFromRequest(packageName, request) {
135
- if (request === packageName) return '.';
136
- if (request.startsWith(`${packageName}/`)) return `.${request.slice(packageName.length)}`;
137
- return null;
138
- }
139
- const rule = (0, external_rule_cjs_namespaceObject.defineRule)(()=>({
140
- meta: {
141
- code: 'E1009',
142
- title,
143
- category: 'bundle',
144
- severity: types_namespaceObject.Linter.Severity.Warn,
145
- defaultConfig: {
146
- ignore: []
147
- }
148
- },
149
- check ({ moduleGraph, packageGraph, report, ruleConfig }) {
150
- const pkgJsonCache = new Map();
151
- const realPathCache = new Map();
152
- const readPkgJson = (pkgRoot)=>{
153
- if (pkgJsonCache.has(pkgRoot)) return pkgJsonCache.get(pkgRoot);
154
- try {
155
- const raw = external_fs_default().readFileSync(external_path_default().join(pkgRoot, 'package.json'), 'utf-8');
156
- const parsed = JSON.parse(raw);
157
- pkgJsonCache.set(pkgRoot, parsed);
158
- return parsed;
159
- } catch {
160
- pkgJsonCache.set(pkgRoot, null);
161
- return null;
162
- }
163
- };
164
- const toRealPath = (filePath)=>{
165
- const normalized = normalizePathForCompare(filePath);
166
- if (realPathCache.has(normalized)) return realPathCache.get(normalized);
167
- try {
168
- const realPath = 'function' == typeof external_fs_default().realpathSync.native ? external_fs_default().realpathSync.native(normalized) : external_fs_default().realpathSync(normalized);
169
- const normalizedRealPath = external_path_default().normalize(realPath);
170
- realPathCache.set(normalized, normalizedRealPath);
171
- return normalizedRealPath;
172
- } catch {
173
- realPathCache.set(normalized, normalized);
174
- return normalized;
175
- }
176
- };
177
- const groups = new Map();
178
- const inNodeModules = /[/\\]node_modules[/\\]/;
179
- for (const dep of moduleGraph.getDependencies()){
180
- if (dep.kind !== types_namespaceObject.SDK.DependencyKind.ImportStatement || inNodeModules.test(dep.module.path) || !inNodeModules.test(dep.dependency.path) || dep.dependency.meta.strictHarmonyModule || ruleConfig.ignore.some((p)=>dep.request.includes(p))) continue;
181
- const pkg = packageGraph.getPackageByModule(dep.dependency);
182
- if (!pkg?.root) continue;
183
- const pkgJson = readPkgJson(pkg.root);
184
- if (ruleConfig.ignore.some((p)=>pkg.name.includes(p)) || !pkgJson) continue;
185
- const exportKey = getExportKeyFromRequest(pkg.name, dep.request);
186
- if (!exportKey) continue;
187
- const esmEntries = extractEsmEntries(pkgJson, pkg.root, exportKey);
188
- if (0 === esmEntries.size) continue;
189
- const esmEntryList = Array.from(esmEntries);
190
- const resolvedModuleRealPath = toRealPath(dep.dependency.path);
191
- if (isDefinitelyEsmFile(resolvedModuleRealPath)) continue;
192
- if (isDeclaredEsmEntry(resolvedModuleRealPath, esmEntryList, toRealPath)) continue;
193
- const groupKey = `${pkg.name}::${resolvedModuleRealPath}`;
194
- const issuer = {
195
- id: dep.module.id,
196
- path: dep.module.path,
197
- request: dep.request
198
- };
199
- if (groups.has(groupKey)) groups.get(groupKey).issuers.push(issuer);
200
- else groups.set(groupKey, {
201
- packageName: pkg.name,
202
- packageVersion: pkg.version,
203
- esmEntry: esmEntryList[0],
204
- resolvedModule: {
205
- id: dep.dependency.id,
206
- path: dep.dependency.path,
207
- identifier: dep.dependency.identifier
208
- },
209
- issuers: [
210
- issuer
211
- ]
212
- });
213
- }
214
- for (const group of groups.values()){
215
- const detail = {
216
- type: title,
217
- packageName: group.packageName,
218
- packageVersion: group.packageVersion,
219
- esmEntry: group.esmEntry,
220
- resolvedModule: group.resolvedModule,
221
- issuers: group.issuers
222
- };
223
- const message = `"${group.packageName}" declares an ESM entry ("${group.esmEntry}") but was resolved to CJS by ${group.issuers.length} ESM import(s). Check your bundler's \`resolve.mainFields\` or \`resolve.conditionNames\` config.`;
224
- report({
225
- message,
226
- detail
227
- });
228
- }
229
- }
230
- }));
231
- exports.rule = __webpack_exports__.rule;
232
- for(var __rspack_i in __webpack_exports__)if (-1 === [
233
- "rule"
234
- ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
235
- Object.defineProperty(exports, '__esModule', {
236
- value: true
237
- });
@@ -1,4 +0,0 @@
1
- import { Linter } from '@rsdoctor/types';
2
- import type { Config } from './types';
3
- export type { Config } from './types';
4
- export declare const rule: Linter.RuleData<Config, "esm-resolved-to-cjs">;
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __webpack_require__ = {};
3
- (()=>{
4
- __webpack_require__.r = (exports1)=>{
5
- if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
6
- value: 'Module'
7
- });
8
- Object.defineProperty(exports1, '__esModule', {
9
- value: true
10
- });
11
- };
12
- })();
13
- var __webpack_exports__ = {};
14
- __webpack_require__.r(__webpack_exports__);
15
- for(var __rspack_i in __webpack_exports__)exports[__rspack_i] = __webpack_exports__[__rspack_i];
16
- Object.defineProperty(exports, '__esModule', {
17
- value: true
18
- });
@@ -1,8 +0,0 @@
1
- export interface Config {
2
- /**
3
- * Package name patterns to ignore (substring match against the import request).
4
- * @example ['my-legacy-pkg', '@internal/']
5
- * @default []
6
- */
7
- ignore: string[];
8
- }
@@ -1,55 +0,0 @@
1
- "use strict";
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 ("u" > 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
- rules: ()=>rules
28
- });
29
- const index_cjs_namespaceObject = require("./duplicate-package/index.cjs");
30
- const external_default_import_check_index_cjs_namespaceObject = require("./default-import-check/index.cjs");
31
- const external_loader_performance_optimization_index_cjs_namespaceObject = require("./loader-performance-optimization/index.cjs");
32
- const external_ecma_version_check_index_cjs_namespaceObject = require("./ecma-version-check/index.cjs");
33
- const external_cross_chunks_package_index_cjs_namespaceObject = require("./cross-chunks-package/index.cjs");
34
- const external_module_mixed_chunks_index_cjs_namespaceObject = require("./module-mixed-chunks/index.cjs");
35
- const external_side_effects_only_imports_index_cjs_namespaceObject = require("./side-effects-only-imports/index.cjs");
36
- const external_cjs_require_index_cjs_namespaceObject = require("./cjs-require/index.cjs");
37
- const external_esm_resolved_to_cjs_index_cjs_namespaceObject = require("./esm-resolved-to-cjs/index.cjs");
38
- const rules = [
39
- index_cjs_namespaceObject.rule,
40
- external_default_import_check_index_cjs_namespaceObject.rule,
41
- external_loader_performance_optimization_index_cjs_namespaceObject.rule,
42
- external_ecma_version_check_index_cjs_namespaceObject.rule,
43
- external_cross_chunks_package_index_cjs_namespaceObject.rule,
44
- external_module_mixed_chunks_index_cjs_namespaceObject.rule,
45
- external_side_effects_only_imports_index_cjs_namespaceObject.rule,
46
- external_cjs_require_index_cjs_namespaceObject.rule,
47
- external_esm_resolved_to_cjs_index_cjs_namespaceObject.rule
48
- ];
49
- exports.rules = __webpack_exports__.rules;
50
- for(var __rspack_i in __webpack_exports__)if (-1 === [
51
- "rules"
52
- ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
53
- Object.defineProperty(exports, '__esModule', {
54
- value: true
55
- });
@@ -1,2 +0,0 @@
1
- import type { Linter } from '@rsdoctor/types';
2
- export declare const rules: Linter.RuleData[];
@@ -1,119 +0,0 @@
1
- "use strict";
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 ("u" > 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
- rule: ()=>rule
28
- });
29
- const types_namespaceObject = require("@rsdoctor/types");
30
- const common_namespaceObject = require("@rsdoctor/utils/common");
31
- const external_rule_cjs_namespaceObject = require("../../rule.cjs");
32
- const external_utils_cjs_namespaceObject = require("./utils.cjs");
33
- const title = 'loader-performance-optimization';
34
- const rule = (0, external_rule_cjs_namespaceObject.defineRule)(()=>({
35
- meta: {
36
- code: 'E1003',
37
- title,
38
- category: 'compile',
39
- severity: types_namespaceObject.Linter.Severity.Warn,
40
- defaultConfig: {
41
- ignore: [],
42
- threshold: 5000,
43
- extensions: [
44
- 'js',
45
- 'css',
46
- 'jpg',
47
- 'jpeg',
48
- 'png',
49
- 'gif',
50
- 'webp',
51
- 'svg'
52
- ]
53
- }
54
- },
55
- check ({ loader, configs, root, ruleConfig, report }) {
56
- const { extensions, ignore = [], threshold = 5000 } = ruleConfig;
57
- if (!extensions || extensions?.length === 0) return;
58
- if (0 === loader.length) return;
59
- const { config } = configs.find((e)=>'rspack' === e.name) || {
60
- config: void 0
61
- };
62
- if (!config) return;
63
- const cwd = config.context || root;
64
- const nodeModulesPathRegexp = /\/node_modules\//;
65
- const resultMap = new Map();
66
- const loaders = loader.flatMap((el)=>el.loaders);
67
- for (const item of loader){
68
- const { path, ext } = item.resource;
69
- if ((0, external_utils_cjs_namespaceObject.match)(ext, extensions)) {
70
- if (nodeModulesPathRegexp.test(path) || !path.startsWith(cwd)) item.loaders.forEach((el)=>{
71
- if ((0, external_utils_cjs_namespaceObject.match)(el.loader, ignore)) return;
72
- const costs = common_namespaceObject.Loader.getLoaderCosts(el, loaders);
73
- const v = {
74
- ...el,
75
- __resource__: item.resource,
76
- __costs__: costs
77
- };
78
- if (resultMap.has(el.loader)) resultMap.get(el.loader).push(v);
79
- else resultMap.set(el.loader, [
80
- v
81
- ]);
82
- });
83
- }
84
- }
85
- const sum = (arr)=>{
86
- const v1 = arr.reduce((t, c)=>t + c.__costs__, 0);
87
- const v2 = Math.max.apply(null, arr.map((e)=>e.endAt)) - Math.min.apply(arr.map((e)=>e.startAt));
88
- if (v2 >= v1 || v2 === -1 / 0) return v1;
89
- return v2;
90
- };
91
- for (const [loaderName, v] of resultMap.entries()){
92
- const nodeModulesFiles = v.filter((e)=>nodeModulesPathRegexp.test(e.__resource__.path));
93
- const nodeModulesFilesCosts = sum(nodeModulesFiles);
94
- const outofCwdFiles = v.filter((e)=>!e.__resource__.path.startsWith(cwd));
95
- const outofCwdFilesCosts = sum(outofCwdFiles);
96
- const msg = [
97
- nodeModulesFilesCosts >= threshold && `${nodeModulesFiles.length} node_modules files (costs: ${common_namespaceObject.Time.formatCosts(nodeModulesFilesCosts)})`,
98
- outofCwdFilesCosts >= threshold && `${outofCwdFiles.length} outside project files (costs: ${common_namespaceObject.Time.formatCosts(outofCwdFilesCosts)})`
99
- ].filter(Boolean).join(' and ');
100
- if (msg) {
101
- const message = `${loaderName} has processed ${msg}.`;
102
- report({
103
- message,
104
- detail: {
105
- description: message,
106
- type: 'link'
107
- }
108
- });
109
- }
110
- }
111
- }
112
- }));
113
- exports.rule = __webpack_exports__.rule;
114
- for(var __rspack_i in __webpack_exports__)if (-1 === [
115
- "rule"
116
- ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
117
- Object.defineProperty(exports, '__esModule', {
118
- value: true
119
- });
@@ -1,4 +0,0 @@
1
- import { Linter } from '@rsdoctor/types';
2
- import { Config } from './types';
3
- export type { Config } from './types';
4
- export declare const rule: Linter.RuleData<Config, "loader-performance-optimization">;
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __webpack_require__ = {};
3
- (()=>{
4
- __webpack_require__.r = (exports1)=>{
5
- if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
6
- value: 'Module'
7
- });
8
- Object.defineProperty(exports1, '__esModule', {
9
- value: true
10
- });
11
- };
12
- })();
13
- var __webpack_exports__ = {};
14
- __webpack_require__.r(__webpack_exports__);
15
- for(var __rspack_i in __webpack_exports__)exports[__rspack_i] = __webpack_exports__[__rspack_i];
16
- Object.defineProperty(exports, '__esModule', {
17
- value: true
18
- });
@@ -1,22 +0,0 @@
1
- import type { SDK } from '@rsdoctor/types';
2
- export interface Config {
3
- /**
4
- * loaders which should be ignore.
5
- */
6
- ignore?: (string | RegExp)[];
7
- /**
8
- * threshold which the loader total costs.
9
- * @unit millisecond
10
- * @default 5000
11
- */
12
- threshold?: number;
13
- /**
14
- * the file extensions which will be match in rule check.
15
- * @default ["js", "css", "jpg", "jpeg", "png", "gif", "webp", "svg"]
16
- */
17
- extensions?: (string | RegExp)[];
18
- }
19
- export interface LoaderMapValue extends SDK.LoaderTransformData {
20
- __resource__: SDK.ResourceData;
21
- __costs__: number;
22
- }
@@ -1,43 +0,0 @@
1
- "use strict";
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 ("u" > 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
- match: ()=>match
28
- });
29
- function match(str, patterns) {
30
- if (0 === patterns.length) return false;
31
- return patterns.some((p)=>{
32
- if ('string' == typeof p) return str === p;
33
- if (p instanceof RegExp) return p.test(str);
34
- return false;
35
- });
36
- }
37
- exports.match = __webpack_exports__.match;
38
- for(var __rspack_i in __webpack_exports__)if (-1 === [
39
- "match"
40
- ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
41
- Object.defineProperty(exports, '__esModule', {
42
- value: true
43
- });
@@ -1 +0,0 @@
1
- export declare function match(str: string, patterns: (string | RegExp)[]): boolean;