@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.
- package/dist/build-utils/build/chunks/assetsModules.d.ts +1 -1
- package/dist/build-utils/build/chunks/assetsModules.js +1 -1
- package/dist/build-utils/build/chunks/index.d.ts +0 -1
- package/dist/build-utils/build/chunks/index.js +0 -1
- package/dist/build-utils/build/chunks/rspack/transform.d.ts +1 -1
- package/dist/build-utils/build/chunks/rspack/transform.js +1 -1
- package/dist/build-utils/build/envinfo.d.ts +13 -0
- package/dist/build-utils/build/envinfo.js +60 -0
- package/dist/build-utils/build/file/cache.d.ts +5 -0
- package/dist/build-utils/build/file/cache.js +24 -0
- package/dist/build-utils/build/file/index.d.ts +3 -0
- package/dist/build-utils/build/file/index.js +5 -0
- package/dist/build-utils/build/file/sharding.d.ts +21 -0
- package/dist/build-utils/build/file/sharding.js +38 -0
- package/dist/build-utils/build/index.d.ts +5 -0
- package/dist/build-utils/build/index.js +11 -6
- package/dist/build-utils/build/json.d.ts +3 -0
- package/dist/build-utils/build/json.js +67 -0
- package/dist/build-utils/build/loader/probeLoader.d.ts +2 -2
- package/dist/build-utils/build/loader/probeLoader.js +4 -4
- package/dist/build-utils/build/loader/probeLoaderPlugin.d.ts +1 -1
- package/dist/build-utils/build/loader/probeLoaderPlugin.js +1 -1
- package/dist/build-utils/build/module-graph/index.d.ts +0 -1
- package/dist/build-utils/build/module-graph/index.js +0 -1
- package/dist/build-utils/build/module-graph/parser.d.ts +1 -1
- package/dist/build-utils/build/module-graph/parser.js +1 -1
- package/dist/build-utils/build/module-graph/rspack/transform.d.ts +1 -1
- package/dist/build-utils/build/module-graph/rspack/transform.js +6 -4
- package/dist/build-utils/build/module-graph/utils.d.ts +1 -1
- package/dist/build-utils/build/module-graph/utils.js +5 -4
- package/dist/build-utils/build/process.d.ts +2 -0
- package/dist/build-utils/build/process.js +18 -0
- package/dist/build-utils/build/server.d.ts +15 -0
- package/dist/build-utils/build/server.js +107 -0
- package/dist/build-utils/build/utils/loader.d.ts +2 -2
- package/dist/build-utils/build/utils/loader.js +10 -19
- package/dist/build-utils/build/utils/parseBundle.d.ts +1 -1
- package/dist/build-utils/build/utils/parseBundle.js +6 -8
- package/dist/build-utils/build/utils/plugin.d.ts +1 -1
- package/dist/build-utils/index.d.ts +10 -0
- package/dist/build-utils/index.js +12 -2
- package/dist/collection.d.ts +1 -0
- package/dist/collection.js +2 -0
- package/dist/common/file.d.ts +2 -0
- package/dist/common/file.js +8 -0
- package/dist/common/global-config.d.ts +21 -0
- package/dist/common/global-config.js +33 -0
- package/dist/common/index.d.ts +4 -0
- package/dist/common/index.js +6 -0
- package/dist/common-browser.d.ts +1 -0
- package/dist/common-browser.js +2 -0
- package/dist/error/error.d.ts +35 -0
- package/dist/error/error.js +143 -0
- package/dist/error/index.d.ts +2 -0
- package/dist/error/index.js +3 -0
- package/dist/error/transform.d.ts +3 -0
- package/dist/error/transform.js +138 -0
- package/dist/error/utils.d.ts +4 -0
- package/dist/error/utils.js +23 -0
- package/dist/graph/index.d.ts +1 -0
- package/dist/graph/index.js +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +4 -2
- package/dist/inner-plugins/loaders/proxy.d.ts +4 -4
- package/dist/inner-plugins/plugins/base.d.ts +1 -1
- package/dist/inner-plugins/plugins/bundle.d.ts +1 -1
- package/dist/inner-plugins/plugins/bundle.js +3 -3
- package/dist/inner-plugins/plugins/ensureModulesChunkGraph.d.ts +3 -3
- package/dist/inner-plugins/plugins/ensureModulesChunkGraph.js +11 -39
- package/dist/inner-plugins/plugins/errors.d.ts +2 -2
- package/dist/inner-plugins/plugins/errors.js +3 -3
- package/dist/inner-plugins/plugins/loader.d.ts +1 -1
- package/dist/inner-plugins/plugins/loader.js +7 -19
- package/dist/inner-plugins/plugins/plugins.d.ts +1 -1
- package/dist/inner-plugins/plugins/plugins.js +2 -2
- package/dist/inner-plugins/plugins/progress.d.ts +2 -2
- package/dist/inner-plugins/plugins/progress.js +2 -2
- package/dist/inner-plugins/plugins/resolver.d.ts +1 -1
- package/dist/inner-plugins/plugins/resolver.js +2 -2
- package/dist/inner-plugins/plugins/rspack.d.ts +8 -3
- package/dist/inner-plugins/plugins/rspack.js +18 -4
- package/dist/inner-plugins/plugins/rules.d.ts +1 -1
- package/dist/inner-plugins/plugins/rules.js +3 -3
- package/dist/inner-plugins/plugins/sourcemapTool.d.ts +2 -2
- package/dist/inner-plugins/plugins/sourcemapTool.js +2 -2
- package/dist/inner-plugins/plugins/summary.d.ts +1 -1
- package/dist/inner-plugins/plugins/summary.js +3 -3
- package/dist/inner-plugins/utils/config.d.ts +2 -3
- package/dist/inner-plugins/utils/config.js +16 -17
- package/dist/inner-plugins/utils/loader.d.ts +4 -7
- package/dist/inner-plugins/utils/loader.js +8 -34
- package/dist/inner-plugins/utils/normalize-config.d.ts +1 -1
- package/dist/inner-plugins/utils/openBrowser.d.ts +1 -0
- package/dist/inner-plugins/utils/openBrowser.js +55 -0
- package/dist/inner-plugins/utils/plugin-common.js +4 -4
- package/dist/inner-plugins/utils/plugin.d.ts +1 -1
- package/dist/inner-plugins/utils/plugin.js +1 -1
- package/dist/inner-plugins/utils/sdk.d.ts +2 -3
- package/dist/inner-plugins/utils/sdk.js +2 -2
- package/dist/logger.d.ts +9 -0
- package/dist/logger.js +51 -0
- package/dist/{inner-plugins/constants.d.cts → rspack-plugin/constants.d.ts} +3 -0
- package/dist/rspack-plugin/constants.js +23 -0
- package/dist/rspack-plugin/index.d.ts +2 -0
- package/dist/rspack-plugin/index.js +3 -0
- package/dist/rspack-plugin/multiple.d.ts +8 -0
- package/dist/rspack-plugin/multiple.js +39 -0
- package/dist/rspack-plugin/plugin.d.ts +25 -0
- package/dist/rspack-plugin/plugin.js +133 -0
- package/dist/rule-utils/document/document.d.ts +16 -0
- package/dist/rule-utils/document/document.js +46 -0
- package/dist/rule-utils/document/index.d.ts +3 -0
- package/dist/rule-utils/document/index.js +4 -0
- package/dist/rule-utils/document/server.d.ts +4 -0
- package/dist/rule-utils/document/server.js +13 -0
- package/dist/rule-utils/document/types.d.ts +31 -0
- package/dist/rule-utils/index.d.ts +2 -0
- package/dist/rule-utils/index.js +3 -0
- package/dist/rule-utils/parser/asserts.d.ts +81 -0
- package/dist/rule-utils/parser/asserts.js +105 -0
- package/dist/rule-utils/parser/index.d.ts +4 -0
- package/dist/rule-utils/parser/index.js +5 -0
- package/dist/rule-utils/parser/parser.d.ts +118 -0
- package/dist/rule-utils/parser/parser.js +24 -0
- package/dist/rule-utils/parser/types.d.ts +30 -0
- package/dist/rule-utils/parser/types.js +8 -0
- package/dist/rule-utils/parser/utils.d.ts +30 -0
- package/dist/rule-utils/parser/utils.js +106 -0
- package/dist/rules/linter.d.ts +1 -1
- package/dist/rules/linter.js +1 -1
- package/dist/rules/rule.d.ts +2 -2
- package/dist/rules/rule.js +2 -2
- package/dist/rules/rules/cjs-require/index.d.ts +1 -1
- package/dist/rules/rules/cjs-require/index.js +1 -1
- package/dist/rules/rules/cross-chunks-package/index.d.ts +1 -1
- package/dist/rules/rules/cross-chunks-package/index.js +2 -2
- package/dist/rules/rules/default-import-check/index.d.ts +1 -1
- package/dist/rules/rules/default-import-check/index.js +2 -2
- package/dist/rules/rules/default-import-check/utils.d.ts +2 -2
- package/dist/rules/rules/default-import-check/utils.js +2 -2
- package/dist/rules/rules/duplicate-package/index.d.ts +3 -3
- package/dist/rules/rules/duplicate-package/index.js +3 -3
- package/dist/rules/rules/duplicate-package/utils.d.ts +1 -1
- package/dist/rules/rules/ecma-version-check/index.d.ts +3 -2
- package/dist/rules/rules/ecma-version-check/index.js +1 -1
- package/dist/rules/rules/ecma-version-check/types.d.ts +1 -2
- package/dist/rules/rules/ecma-version-check/utils.d.ts +1 -1
- package/dist/rules/rules/esm-resolved-to-cjs/index.d.ts +1 -1
- package/dist/rules/rules/esm-resolved-to-cjs/index.js +1 -1
- package/dist/rules/rules/index.d.ts +1 -1
- package/dist/rules/rules/loader-performance-optimization/index.d.ts +1 -1
- package/dist/rules/rules/loader-performance-optimization/index.js +2 -2
- package/dist/rules/rules/loader-performance-optimization/types.d.ts +1 -1
- package/dist/rules/rules/module-mixed-chunks/index.d.ts +1 -1
- package/dist/rules/rules/module-mixed-chunks/index.js +1 -1
- package/dist/rules/rules/side-effects-only-imports/index.d.ts +1 -1
- package/dist/rules/rules/side-effects-only-imports/index.js +1 -1
- package/dist/rules/utils.d.ts +1 -1
- package/dist/rules/utils.js +1 -1
- package/dist/sdk/index.d.ts +2 -0
- package/dist/sdk/index.js +3 -0
- package/dist/sdk/multiple/controller.d.ts +12 -0
- package/dist/sdk/multiple/controller.js +42 -0
- package/dist/sdk/multiple/index.d.ts +2 -0
- package/dist/sdk/multiple/index.js +3 -0
- package/dist/sdk/multiple/primary.d.ts +32 -0
- package/dist/sdk/multiple/primary.js +64 -0
- package/dist/sdk/multiple/server.d.ts +7 -0
- package/dist/sdk/multiple/server.js +14 -0
- package/dist/sdk/sdk/core.d.ts +33 -0
- package/dist/sdk/sdk/core.js +163 -0
- package/dist/sdk/sdk/index.d.ts +52 -0
- package/dist/sdk/sdk/index.js +435 -0
- package/dist/sdk/sdk/types.d.ts +26 -0
- package/dist/sdk/sdk/types.js +1 -0
- package/dist/sdk/server/apis/alerts.d.ts +5 -0
- package/dist/sdk/server/apis/alerts.js +30 -0
- package/dist/sdk/server/apis/base.d.ts +11 -0
- package/dist/sdk/server/apis/base.js +22 -0
- package/dist/sdk/server/apis/bundle-diff.d.ts +6 -0
- package/dist/sdk/server/apis/bundle-diff.js +51 -0
- package/dist/sdk/server/apis/data.d.ts +6 -0
- package/dist/sdk/server/apis/data.js +44 -0
- package/dist/sdk/server/apis/fs.d.ts +5 -0
- package/dist/sdk/server/apis/fs.js +28 -0
- package/dist/sdk/server/apis/graph.d.ts +12 -0
- package/dist/sdk/server/apis/graph.js +116 -0
- package/dist/sdk/server/apis/index.d.ts +10 -0
- package/dist/sdk/server/apis/index.js +11 -0
- package/dist/sdk/server/apis/loader.d.ts +15 -0
- package/dist/sdk/server/apis/loader.js +120 -0
- package/dist/sdk/server/apis/plugin.d.ts +6 -0
- package/dist/sdk/server/apis/plugin.js +39 -0
- package/dist/sdk/server/apis/project.d.ts +8 -0
- package/dist/sdk/server/apis/project.js +59 -0
- package/dist/sdk/server/apis/renderer.d.ts +6 -0
- package/dist/sdk/server/apis/renderer.js +33 -0
- package/dist/sdk/server/apis/resolver.d.ts +6 -0
- package/dist/sdk/server/apis/resolver.js +38 -0
- package/dist/sdk/server/client.d.ts +3 -0
- package/dist/sdk/server/client.js +8 -0
- package/dist/sdk/server/fakeServer.d.ts +9 -0
- package/dist/sdk/server/fakeServer.js +12 -0
- package/dist/sdk/server/index.d.ts +44 -0
- package/dist/sdk/server/index.js +292 -0
- package/dist/sdk/server/json-body.d.ts +6 -0
- package/dist/sdk/server/json-body.js +150 -0
- package/dist/sdk/server/router.d.ts +24 -0
- package/dist/sdk/server/router.js +83 -0
- package/dist/sdk/server/security.d.ts +5 -0
- package/dist/sdk/server/security.js +47 -0
- package/dist/sdk/server/socket/api.d.ts +15 -0
- package/dist/sdk/server/socket/api.js +22 -0
- package/dist/sdk/server/socket/index.d.ts +48 -0
- package/dist/sdk/server/socket/index.js +166 -0
- package/dist/sdk/server/utils.d.ts +6 -0
- package/dist/sdk/server/utils.js +19 -0
- package/dist/sdk/utils/base.d.ts +1 -0
- package/dist/sdk/utils/base.js +22 -0
- package/dist/sdk/utils/constant.d.ts +1 -0
- package/dist/sdk/utils/constant.js +4 -0
- package/dist/sdk/utils/index.d.ts +3 -0
- package/dist/sdk/utils/index.js +4 -0
- package/dist/sdk/utils/openBrowser.d.ts +4 -0
- package/dist/sdk/utils/openBrowser.js +53 -0
- package/dist/sdk/utils/upload.d.ts +2 -0
- package/dist/sdk/utils/upload.js +6 -0
- package/dist/sdk.d.ts +1 -0
- package/dist/sdk.js +2 -0
- package/dist/types/index.d.ts +0 -1
- package/dist/types/index.js +0 -1
- package/dist/types/loader.d.ts +1 -1
- package/dist/types/plugin.d.ts +7 -28
- package/package.json +127 -58
- package/static/openChrome.applescript +95 -0
- package/dist/build-utils/build/chunks/assetsModules.cjs +0 -42
- package/dist/build-utils/build/chunks/assetsModules.d.cts +0 -17
- package/dist/build-utils/build/chunks/chunkTransform.cjs +0 -39
- package/dist/build-utils/build/chunks/chunkTransform.d.cts +0 -4
- package/dist/build-utils/build/chunks/chunkTransform.d.ts +0 -4
- package/dist/build-utils/build/chunks/chunkTransform.js +0 -6
- package/dist/build-utils/build/chunks/index.cjs +0 -72
- package/dist/build-utils/build/chunks/index.d.cts +0 -3
- package/dist/build-utils/build/chunks/rspack/transform.cjs +0 -80
- package/dist/build-utils/build/chunks/rspack/transform.d.cts +0 -13
- package/dist/build-utils/build/index.cjs +0 -52
- package/dist/build-utils/build/index.d.cts +0 -5
- package/dist/build-utils/build/loader/index.cjs +0 -65
- package/dist/build-utils/build/loader/index.d.cts +0 -2
- package/dist/build-utils/build/loader/probeLoader.cjs +0 -89
- package/dist/build-utils/build/loader/probeLoader.d.cts +0 -4
- package/dist/build-utils/build/loader/probeLoaderPlugin.cjs +0 -65
- package/dist/build-utils/build/loader/probeLoaderPlugin.d.cts +0 -5
- package/dist/build-utils/build/module-graph/index.cjs +0 -65
- package/dist/build-utils/build/module-graph/index.d.cts +0 -2
- package/dist/build-utils/build/module-graph/parser.cjs +0 -46
- package/dist/build-utils/build/module-graph/parser.d.cts +0 -2
- package/dist/build-utils/build/module-graph/rspack/transform.cjs +0 -151
- package/dist/build-utils/build/module-graph/rspack/transform.d.cts +0 -26
- package/dist/build-utils/build/module-graph/transform.cjs +0 -39
- package/dist/build-utils/build/module-graph/transform.d.cts +0 -3
- package/dist/build-utils/build/module-graph/transform.d.ts +0 -3
- package/dist/build-utils/build/module-graph/transform.js +0 -6
- package/dist/build-utils/build/module-graph/utils.cjs +0 -95
- package/dist/build-utils/build/module-graph/utils.d.cts +0 -3
- package/dist/build-utils/build/utils/index.cjs +0 -72
- package/dist/build-utils/build/utils/index.d.cts +0 -3
- package/dist/build-utils/build/utils/loader.cjs +0 -354
- package/dist/build-utils/build/utils/loader.d.cts +0 -20
- package/dist/build-utils/build/utils/parseBundle.cjs +0 -283
- package/dist/build-utils/build/utils/parseBundle.d.cts +0 -12
- package/dist/build-utils/build/utils/plugin.cjs +0 -60
- package/dist/build-utils/build/utils/plugin.d.cts +0 -5
- package/dist/build-utils/index.cjs +0 -36
- package/dist/build-utils/index.d.cts +0 -1
- package/dist/index.cjs +0 -81
- package/dist/index.d.cts +0 -3
- package/dist/inner-plugins/constants.cjs +0 -64
- package/dist/inner-plugins/index.cjs +0 -65
- package/dist/inner-plugins/index.d.cts +0 -2
- package/dist/inner-plugins/loaders/proxy.cjs +0 -104
- package/dist/inner-plugins/loaders/proxy.d.cts +0 -7
- package/dist/inner-plugins/plugins/base.cjs +0 -53
- package/dist/inner-plugins/plugins/base.d.cts +0 -12
- package/dist/inner-plugins/plugins/bundle.cjs +0 -96
- package/dist/inner-plugins/plugins/bundle.d.cts +0 -15
- package/dist/inner-plugins/plugins/ensureModulesChunkGraph.cjs +0 -141
- package/dist/inner-plugins/plugins/ensureModulesChunkGraph.d.cts +0 -34
- package/dist/inner-plugins/plugins/errors.cjs +0 -98
- package/dist/inner-plugins/plugins/errors.d.cts +0 -11
- package/dist/inner-plugins/plugins/index.cjs +0 -121
- package/dist/inner-plugins/plugins/index.d.cts +0 -10
- package/dist/inner-plugins/plugins/loader.cjs +0 -165
- package/dist/inner-plugins/plugins/loader.d.cts +0 -10
- package/dist/inner-plugins/plugins/plugins.cjs +0 -73
- package/dist/inner-plugins/plugins/plugins.d.cts +0 -8
- package/dist/inner-plugins/plugins/progress.cjs +0 -68
- package/dist/inner-plugins/plugins/progress.d.cts +0 -8
- package/dist/inner-plugins/plugins/resolver.cjs +0 -90
- package/dist/inner-plugins/plugins/resolver.d.cts +0 -12
- package/dist/inner-plugins/plugins/rspack.cjs +0 -118
- package/dist/inner-plugins/plugins/rspack.d.cts +0 -4
- package/dist/inner-plugins/plugins/rules.cjs +0 -97
- package/dist/inner-plugins/plugins/rules.d.cts +0 -8
- package/dist/inner-plugins/plugins/sourcemapTool.cjs +0 -275
- package/dist/inner-plugins/plugins/sourcemapTool.d.cts +0 -52
- package/dist/inner-plugins/plugins/summary.cjs +0 -125
- package/dist/inner-plugins/plugins/summary.d.cts +0 -14
- package/dist/inner-plugins/utils/circleDetect.cjs +0 -49
- package/dist/inner-plugins/utils/circleDetect.d.cts +0 -4
- package/dist/inner-plugins/utils/config.cjs +0 -191
- package/dist/inner-plugins/utils/config.d.cts +0 -5
- package/dist/inner-plugins/utils/index.cjs +0 -106
- package/dist/inner-plugins/utils/index.d.cts +0 -9
- package/dist/inner-plugins/utils/loader.cjs +0 -218
- package/dist/inner-plugins/utils/loader.d.cts +0 -13
- package/dist/inner-plugins/utils/normalize-config.cjs +0 -122
- package/dist/inner-plugins/utils/normalize-config.d.cts +0 -37
- package/dist/inner-plugins/utils/plugin-common.cjs +0 -143
- package/dist/inner-plugins/utils/plugin-common.d.cts +0 -11
- package/dist/inner-plugins/utils/plugin.cjs +0 -106
- package/dist/inner-plugins/utils/plugin.d.cts +0 -4
- package/dist/inner-plugins/utils/sdk.cjs +0 -55
- package/dist/inner-plugins/utils/sdk.d.cts +0 -8
- package/dist/rslib-runtime.js +0 -19
- package/dist/rules/index.cjs +0 -81
- package/dist/rules/index.d.cts +0 -3
- package/dist/rules/linter.cjs +0 -72
- package/dist/rules/linter.d.cts +0 -9
- package/dist/rules/rule.cjs +0 -137
- package/dist/rules/rule.d.cts +0 -27
- package/dist/rules/rules/cjs-require/index.cjs +0 -83
- package/dist/rules/rules/cjs-require/index.d.cts +0 -4
- package/dist/rules/rules/cjs-require/types.cjs +0 -18
- package/dist/rules/rules/cjs-require/types.d.cts +0 -7
- package/dist/rules/rules/cross-chunks-package/index.cjs +0 -74
- package/dist/rules/rules/cross-chunks-package/index.d.cts +0 -4
- package/dist/rules/rules/cross-chunks-package/types.cjs +0 -18
- package/dist/rules/rules/cross-chunks-package/types.d.cts +0 -3
- package/dist/rules/rules/cross-chunks-package/utils.cjs +0 -40
- package/dist/rules/rules/cross-chunks-package/utils.d.cts +0 -1
- package/dist/rules/rules/default-import-check/index.cjs +0 -116
- package/dist/rules/rules/default-import-check/index.d.cts +0 -4
- package/dist/rules/rules/default-import-check/types.cjs +0 -18
- package/dist/rules/rules/default-import-check/types.d.cts +0 -4
- package/dist/rules/rules/default-import-check/utils.cjs +0 -97
- package/dist/rules/rules/default-import-check/utils.d.cts +0 -10
- package/dist/rules/rules/duplicate-package/index.cjs +0 -72
- package/dist/rules/rules/duplicate-package/index.d.cts +0 -4
- package/dist/rules/rules/duplicate-package/types.cjs +0 -60
- package/dist/rules/rules/duplicate-package/types.d.cts +0 -24
- package/dist/rules/rules/duplicate-package/utils.cjs +0 -84
- package/dist/rules/rules/duplicate-package/utils.d.cts +0 -3
- package/dist/rules/rules/ecma-version-check/index.cjs +0 -96
- package/dist/rules/rules/ecma-version-check/index.d.cts +0 -4
- package/dist/rules/rules/ecma-version-check/types.cjs +0 -18
- package/dist/rules/rules/ecma-version-check/types.d.cts +0 -3
- package/dist/rules/rules/ecma-version-check/utils.cjs +0 -39
- package/dist/rules/rules/ecma-version-check/utils.d.cts +0 -2
- package/dist/rules/rules/esm-resolved-to-cjs/index.cjs +0 -237
- package/dist/rules/rules/esm-resolved-to-cjs/index.d.cts +0 -4
- package/dist/rules/rules/esm-resolved-to-cjs/types.cjs +0 -18
- package/dist/rules/rules/esm-resolved-to-cjs/types.d.cts +0 -8
- package/dist/rules/rules/index.cjs +0 -55
- package/dist/rules/rules/index.d.cts +0 -2
- package/dist/rules/rules/loader-performance-optimization/index.cjs +0 -119
- package/dist/rules/rules/loader-performance-optimization/index.d.cts +0 -4
- package/dist/rules/rules/loader-performance-optimization/types.cjs +0 -18
- package/dist/rules/rules/loader-performance-optimization/types.d.cts +0 -22
- package/dist/rules/rules/loader-performance-optimization/utils.cjs +0 -43
- package/dist/rules/rules/loader-performance-optimization/utils.d.cts +0 -1
- package/dist/rules/rules/module-mixed-chunks/index.cjs +0 -85
- package/dist/rules/rules/module-mixed-chunks/index.d.cts +0 -4
- package/dist/rules/rules/module-mixed-chunks/types.cjs +0 -18
- package/dist/rules/rules/module-mixed-chunks/types.d.cts +0 -3
- package/dist/rules/rules/side-effects-only-imports/index.cjs +0 -114
- package/dist/rules/rules/side-effects-only-imports/index.d.cts +0 -4
- package/dist/rules/rules/side-effects-only-imports/types.cjs +0 -18
- package/dist/rules/rules/side-effects-only-imports/types.d.cts +0 -9
- package/dist/rules/utils.cjs +0 -46
- package/dist/rules/utils.d.cts +0 -3
- package/dist/types/chunks.cjs +0 -18
- package/dist/types/chunks.d.cts +0 -6
- package/dist/types/chunks.d.ts +0 -6
- package/dist/types/index.cjs +0 -79
- package/dist/types/index.d.cts +0 -4
- package/dist/types/loader.cjs +0 -18
- package/dist/types/loader.d.cts +0 -19
- package/dist/types/plugin.cjs +0 -18
- package/dist/types/plugin.d.cts +0 -51
- package/dist/types/rules.cjs +0 -18
- package/dist/types/rules.d.cts +0 -7
- /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,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,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,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,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,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,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;
|