@rsdoctor/core 1.2.3 → 1.2.4-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build-utils/{common/trans-utils/transStats.js → build/chunks/assetsModules.cjs} +9 -12
- package/dist/build-utils/build/chunks/assetsModules.d.ts +0 -1
- package/dist/build-utils/build/chunks/assetsModules.js +7 -39
- package/dist/build-utils/build/chunks/chunkTransform.cjs +39 -0
- package/dist/build-utils/build/chunks/chunkTransform.d.ts +0 -1
- package/dist/build-utils/build/chunks/chunkTransform.js +5 -37
- package/dist/build-utils/{common/chunks/index.js → build/chunks/index.cjs} +8 -8
- package/dist/build-utils/build/chunks/index.d.ts +0 -1
- package/dist/build-utils/build/chunks/index.js +5 -78
- package/dist/build-utils/build/chunks/rspack/transform.cjs +80 -0
- package/dist/build-utils/build/chunks/rspack/transform.d.ts +0 -1
- package/dist/build-utils/build/chunks/rspack/transform.js +7 -42
- package/dist/build-utils/{common/index.js → build/index.cjs} +14 -14
- package/dist/build-utils/build/index.d.ts +0 -1
- package/dist/build-utils/build/index.js +8 -52
- package/dist/build-utils/build/loader/index.cjs +69 -0
- package/dist/build-utils/build/loader/index.d.ts +1 -1
- package/dist/build-utils/build/loader/index.js +4 -60
- package/dist/build-utils/build/loader/probeLoader.cjs +90 -0
- package/dist/build-utils/build/loader/probeLoader.d.ts +0 -1
- package/dist/build-utils/build/loader/probeLoader.js +12 -57
- package/dist/build-utils/build/loader/probeLoaderPlugin.cjs +65 -0
- package/dist/build-utils/build/loader/probeLoaderPlugin.d.ts +0 -1
- package/dist/build-utils/build/loader/probeLoaderPlugin.js +11 -43
- package/dist/build-utils/build/module-graph/index.cjs +87 -0
- package/dist/build-utils/build/module-graph/index.d.ts +0 -1
- package/dist/build-utils/build/module-graph/index.js +6 -87
- package/dist/build-utils/build/module-graph/parser.cjs +46 -0
- package/dist/build-utils/build/module-graph/parser.d.ts +0 -1
- package/dist/build-utils/build/module-graph/parser.js +7 -39
- package/dist/build-utils/build/module-graph/rspack/transform.cjs +110 -0
- package/dist/build-utils/build/module-graph/rspack/transform.d.ts +0 -1
- package/dist/build-utils/build/module-graph/rspack/transform.js +12 -50
- package/dist/build-utils/build/module-graph/transform.cjs +40 -0
- package/dist/build-utils/build/module-graph/transform.d.ts +0 -1
- package/dist/build-utils/build/module-graph/transform.js +6 -38
- package/dist/build-utils/build/module-graph/treeShaking.cjs +107 -0
- package/dist/build-utils/build/module-graph/treeShaking.d.ts +0 -1
- package/dist/build-utils/build/module-graph/treeShaking.js +15 -49
- package/dist/build-utils/build/module-graph/utils.cjs +97 -0
- package/dist/build-utils/build/module-graph/utils.d.ts +0 -1
- package/dist/build-utils/build/module-graph/utils.js +15 -50
- package/dist/build-utils/build/module-graph/webpack/transform.cjs +171 -0
- package/dist/build-utils/build/module-graph/webpack/transform.d.ts +0 -1
- package/dist/build-utils/build/module-graph/webpack/transform.js +31 -57
- package/dist/build-utils/{common/module-graph/index.js → build/utils/index.cjs} +15 -15
- package/dist/build-utils/build/utils/index.d.ts +0 -2
- package/dist/build-utils/build/utils/index.js +5 -87
- package/dist/build-utils/build/utils/loader.cjs +356 -0
- package/dist/build-utils/build/utils/loader.d.ts +1 -3
- package/dist/build-utils/build/utils/loader.js +44 -90
- package/dist/build-utils/build/utils/parseBundle.cjs +284 -0
- package/dist/build-utils/build/utils/parseBundle.d.ts +1 -2
- package/dist/build-utils/build/utils/parseBundle.js +19 -61
- package/dist/build-utils/build/utils/plugin.cjs +61 -0
- package/dist/build-utils/build/utils/plugin.d.ts +0 -1
- package/dist/build-utils/build/utils/plugin.js +5 -43
- package/dist/build-utils/index.cjs +36 -0
- package/dist/build-utils/index.d.ts +0 -2
- package/dist/build-utils/index.js +4 -40
- package/dist/index.cjs +85 -0
- package/dist/index.d.ts +0 -1
- package/dist/index.js +6 -85
- package/dist/inner-plugins/constants.cjs +64 -0
- package/dist/inner-plugins/constants.d.ts +0 -1
- package/dist/inner-plugins/constants.js +3 -47
- package/dist/{build-utils/common/trans-utils/index.js → inner-plugins/index.cjs} +14 -5
- package/dist/inner-plugins/index.d.ts +0 -1
- package/dist/inner-plugins/index.js +4 -69
- package/dist/inner-plugins/loaders/proxy.cjs +90 -0
- package/dist/inner-plugins/loaders/proxy.d.ts +4 -2
- package/dist/inner-plugins/loaders/proxy.js +19 -22
- package/dist/inner-plugins/plugins/base.cjs +53 -0
- package/dist/inner-plugins/plugins/base.d.ts +3 -5
- package/dist/inner-plugins/plugins/base.js +6 -38
- package/dist/inner-plugins/plugins/bundle.cjs +121 -0
- package/dist/inner-plugins/plugins/bundle.d.ts +1 -1
- package/dist/inner-plugins/plugins/bundle.js +33 -49
- package/dist/inner-plugins/plugins/bundleTagPlugin.cjs +93 -0
- package/dist/inner-plugins/plugins/bundleTagPlugin.d.ts +0 -1
- package/dist/inner-plugins/plugins/bundleTagPlugin.js +12 -44
- package/dist/inner-plugins/plugins/ensureModulesChunkGraph.cjs +166 -0
- package/dist/inner-plugins/plugins/ensureModulesChunkGraph.d.ts +0 -1
- package/dist/inner-plugins/plugins/ensureModulesChunkGraph.js +42 -70
- package/dist/inner-plugins/plugins/errors.cjs +98 -0
- package/dist/inner-plugins/plugins/errors.d.ts +0 -1
- package/dist/inner-plugins/plugins/errors.js +20 -52
- package/dist/inner-plugins/plugins/index.cjs +141 -0
- package/dist/inner-plugins/plugins/index.d.ts +0 -1
- package/dist/inner-plugins/plugins/index.js +12 -141
- package/dist/inner-plugins/plugins/loader.cjs +155 -0
- package/dist/inner-plugins/plugins/loader.d.ts +0 -1
- package/dist/inner-plugins/plugins/loader.js +29 -57
- package/dist/inner-plugins/plugins/plugins.cjs +73 -0
- package/dist/inner-plugins/plugins/plugins.d.ts +0 -1
- package/dist/inner-plugins/plugins/plugins.js +18 -50
- package/dist/inner-plugins/plugins/progress.cjs +70 -0
- package/dist/inner-plugins/plugins/progress.d.ts +0 -1
- package/dist/inner-plugins/plugins/progress.js +9 -41
- package/dist/inner-plugins/plugins/rspack.cjs +117 -0
- package/dist/inner-plugins/plugins/rspack.d.ts +0 -1
- package/dist/inner-plugins/plugins/rspack.js +24 -56
- package/dist/inner-plugins/plugins/rules.cjs +97 -0
- package/dist/inner-plugins/plugins/rules.d.ts +0 -1
- package/dist/inner-plugins/plugins/rules.js +19 -51
- package/dist/inner-plugins/plugins/sourcemapTool.cjs +213 -0
- package/dist/inner-plugins/plugins/sourcemapTool.d.ts +0 -1
- package/dist/inner-plugins/plugins/sourcemapTool.js +23 -67
- package/dist/inner-plugins/plugins/summary.cjs +125 -0
- package/dist/inner-plugins/plugins/summary.d.ts +0 -1
- package/dist/inner-plugins/plugins/summary.js +28 -60
- package/dist/inner-plugins/utils/circleDetect.cjs +49 -0
- package/dist/inner-plugins/utils/circleDetect.d.ts +0 -1
- package/dist/inner-plugins/utils/circleDetect.js +3 -35
- package/dist/inner-plugins/utils/config.cjs +177 -0
- package/dist/inner-plugins/utils/config.d.ts +3 -8
- package/dist/inner-plugins/utils/config.js +43 -116
- package/dist/inner-plugins/utils/index.cjs +124 -0
- package/dist/inner-plugins/utils/index.d.ts +4 -1
- package/dist/inner-plugins/utils/index.js +9 -96
- package/dist/inner-plugins/utils/loader.cjs +231 -0
- package/dist/inner-plugins/utils/loader.d.ts +4 -4
- package/dist/inner-plugins/utils/loader.js +39 -97
- package/dist/inner-plugins/utils/normalize-config.cjs +122 -0
- package/dist/inner-plugins/utils/normalize-config.d.ts +40 -0
- package/dist/inner-plugins/utils/normalize-config.js +78 -0
- package/dist/inner-plugins/utils/plugin-common.cjs +73 -0
- package/dist/inner-plugins/utils/plugin-common.d.ts +6 -0
- package/dist/inner-plugins/utils/plugin-common.js +28 -0
- package/dist/inner-plugins/utils/plugin.cjs +107 -0
- package/dist/inner-plugins/utils/plugin.d.ts +2 -4
- package/dist/inner-plugins/utils/plugin.js +5 -40
- package/dist/inner-plugins/utils/sdk.cjs +55 -0
- package/dist/inner-plugins/utils/sdk.d.ts +8 -4
- package/dist/inner-plugins/utils/sdk.js +9 -42
- package/dist/rules/index.cjs +85 -0
- package/dist/rules/index.d.ts +0 -1
- package/dist/rules/index.js +6 -85
- package/dist/rules/linter.cjs +71 -0
- package/dist/rules/linter.d.ts +0 -1
- package/dist/rules/linter.js +11 -46
- package/dist/rules/rule.cjs +137 -0
- package/dist/rules/rule.d.ts +1 -2
- package/dist/rules/rule.js +20 -55
- package/dist/rules/rules/cross-chunks-package/index.cjs +73 -0
- package/dist/rules/rules/cross-chunks-package/index.d.ts +0 -1
- package/dist/rules/rules/cross-chunks-package/index.js +10 -42
- package/dist/rules/rules/cross-chunks-package/types.d.ts +0 -1
- package/dist/rules/rules/cross-chunks-package/types.js +2 -18
- package/dist/rules/rules/cross-chunks-package/utils.cjs +40 -0
- package/dist/rules/rules/cross-chunks-package/utils.d.ts +1 -2
- package/dist/rules/rules/cross-chunks-package/utils.js +4 -36
- package/dist/rules/rules/default-import-check/index.cjs +116 -0
- package/dist/rules/rules/default-import-check/index.d.ts +0 -1
- package/dist/rules/rules/default-import-check/index.js +17 -49
- package/dist/rules/rules/default-import-check/types.cjs +18 -0
- package/dist/rules/rules/default-import-check/types.d.ts +0 -1
- package/dist/rules/rules/default-import-check/types.js +2 -18
- package/dist/rules/rules/default-import-check/utils.cjs +98 -0
- package/dist/rules/rules/default-import-check/utils.d.ts +0 -1
- package/dist/rules/rules/default-import-check/utils.js +9 -53
- package/dist/rules/rules/duplicate-package/index.cjs +71 -0
- package/dist/rules/rules/duplicate-package/index.d.ts +0 -1
- package/dist/rules/rules/duplicate-package/index.js +15 -47
- package/dist/rules/rules/duplicate-package/types.cjs +60 -0
- package/dist/rules/rules/duplicate-package/types.d.ts +0 -1
- package/dist/rules/rules/duplicate-package/types.js +5 -40
- package/dist/rules/rules/duplicate-package/utils.cjs +84 -0
- package/dist/rules/rules/duplicate-package/utils.d.ts +0 -1
- package/dist/rules/rules/duplicate-package/utils.js +6 -51
- package/dist/rules/rules/ecma-version-check/index.cjs +97 -0
- package/dist/rules/rules/ecma-version-check/index.d.ts +0 -1
- package/dist/rules/rules/ecma-version-check/index.js +16 -58
- package/dist/rules/rules/ecma-version-check/types.cjs +18 -0
- package/dist/rules/rules/ecma-version-check/types.d.ts +0 -1
- package/dist/rules/rules/ecma-version-check/types.js +2 -18
- package/dist/rules/rules/ecma-version-check/utils.cjs +39 -0
- package/dist/rules/rules/ecma-version-check/utils.d.ts +0 -1
- package/dist/rules/rules/ecma-version-check/utils.js +3 -35
- package/dist/rules/rules/index.cjs +47 -0
- package/dist/rules/rules/index.d.ts +0 -1
- package/dist/rules/rules/index.js +13 -45
- package/dist/rules/rules/loader-performance-optimization/index.cjs +119 -0
- package/dist/rules/rules/loader-performance-optimization/index.d.ts +0 -1
- package/dist/rules/rules/loader-performance-optimization/index.js +14 -46
- package/dist/rules/rules/loader-performance-optimization/types.cjs +18 -0
- package/dist/rules/rules/loader-performance-optimization/types.d.ts +0 -1
- package/dist/rules/rules/loader-performance-optimization/types.js +2 -18
- package/dist/{build-utils/common/chunks/assetsContent.js → rules/rules/loader-performance-optimization/utils.cjs} +9 -10
- package/dist/rules/rules/loader-performance-optimization/utils.d.ts +0 -1
- package/dist/rules/rules/loader-performance-optimization/utils.js +3 -35
- package/dist/rules/utils.cjs +46 -0
- package/dist/rules/utils.d.ts +0 -1
- package/dist/rules/utils.js +6 -41
- package/dist/types/chunks.cjs +18 -0
- package/dist/types/chunks.d.ts +1 -7
- package/dist/types/chunks.js +2 -18
- package/dist/types/index.cjs +87 -0
- package/dist/types/index.d.ts +0 -2
- package/dist/types/index.js +6 -96
- package/dist/types/loader.cjs +18 -0
- package/dist/types/loader.d.ts +0 -1
- package/dist/types/loader.js +2 -18
- package/dist/types/plugin.cjs +18 -0
- package/dist/types/plugin.d.ts +7 -108
- package/dist/types/plugin.js +2 -18
- package/dist/types/rules.cjs +18 -0
- package/dist/types/rules.d.ts +0 -1
- package/dist/types/rules.js +2 -18
- package/package.json +29 -32
- package/dist/build-utils/build/chunks/assetsModules.d.ts.map +0 -1
- package/dist/build-utils/build/chunks/chunkTransform.d.ts.map +0 -1
- package/dist/build-utils/build/chunks/index.d.ts.map +0 -1
- package/dist/build-utils/build/chunks/rspack/transform.d.ts.map +0 -1
- package/dist/build-utils/build/index.d.ts.map +0 -1
- package/dist/build-utils/build/loader/index.d.ts.map +0 -1
- package/dist/build-utils/build/loader/probeLoader.d.ts.map +0 -1
- package/dist/build-utils/build/loader/probeLoaderPlugin.d.ts.map +0 -1
- package/dist/build-utils/build/module-graph/index.d.ts.map +0 -1
- package/dist/build-utils/build/module-graph/parser.d.ts.map +0 -1
- package/dist/build-utils/build/module-graph/rspack/transform.d.ts.map +0 -1
- package/dist/build-utils/build/module-graph/transform.d.ts.map +0 -1
- package/dist/build-utils/build/module-graph/treeShaking.d.ts.map +0 -1
- package/dist/build-utils/build/module-graph/utils.d.ts.map +0 -1
- package/dist/build-utils/build/module-graph/webpack/transform.d.ts.map +0 -1
- package/dist/build-utils/build/utils/index.d.ts.map +0 -1
- package/dist/build-utils/build/utils/loader.d.ts.map +0 -1
- package/dist/build-utils/build/utils/parseBundle.d.ts.map +0 -1
- package/dist/build-utils/build/utils/plugin.d.ts.map +0 -1
- package/dist/build-utils/common/chunks/assetsContent.d.ts +0 -6
- package/dist/build-utils/common/chunks/assetsContent.d.ts.map +0 -1
- package/dist/build-utils/common/chunks/assetsModules.d.ts +0 -23
- package/dist/build-utils/common/chunks/assetsModules.d.ts.map +0 -1
- package/dist/build-utils/common/chunks/assetsModules.js +0 -155
- package/dist/build-utils/common/chunks/chunkTransform.d.ts +0 -6
- package/dist/build-utils/common/chunks/chunkTransform.d.ts.map +0 -1
- package/dist/build-utils/common/chunks/chunkTransform.js +0 -74
- package/dist/build-utils/common/chunks/index.d.ts +0 -4
- package/dist/build-utils/common/chunks/index.d.ts.map +0 -1
- package/dist/build-utils/common/index.d.ts +0 -6
- package/dist/build-utils/common/index.d.ts.map +0 -1
- package/dist/build-utils/common/module-graph/compatible.d.ts +0 -9
- package/dist/build-utils/common/module-graph/compatible.d.ts.map +0 -1
- package/dist/build-utils/common/module-graph/compatible.js +0 -73
- package/dist/build-utils/common/module-graph/index.d.ts +0 -4
- package/dist/build-utils/common/module-graph/index.d.ts.map +0 -1
- package/dist/build-utils/common/module-graph/transform.d.ts +0 -8
- package/dist/build-utils/common/module-graph/transform.d.ts.map +0 -1
- package/dist/build-utils/common/module-graph/transform.js +0 -181
- package/dist/build-utils/common/module-graph/utils.d.ts +0 -14
- package/dist/build-utils/common/module-graph/utils.d.ts.map +0 -1
- package/dist/build-utils/common/module-graph/utils.js +0 -58
- package/dist/build-utils/common/trans-utils/index.d.ts +0 -2
- package/dist/build-utils/common/trans-utils/index.d.ts.map +0 -1
- package/dist/build-utils/common/trans-utils/transStats.d.ts +0 -11
- package/dist/build-utils/common/trans-utils/transStats.d.ts.map +0 -1
- package/dist/build-utils/common/webpack/compatible.d.ts +0 -18
- package/dist/build-utils/common/webpack/compatible.d.ts.map +0 -1
- package/dist/build-utils/common/webpack/compatible.js +0 -156
- package/dist/build-utils/index.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/inner-plugins/constants.d.ts.map +0 -1
- package/dist/inner-plugins/index.d.ts.map +0 -1
- package/dist/inner-plugins/loaders/proxy.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/base.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/bundle.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/bundleTagPlugin.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/ensureModulesChunkGraph.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/errors.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/index.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/loader.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/plugins.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/progress.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/rspack.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/rules.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/sourcemapTool.d.ts.map +0 -1
- package/dist/inner-plugins/plugins/summary.d.ts.map +0 -1
- package/dist/inner-plugins/utils/circleDetect.d.ts.map +0 -1
- package/dist/inner-plugins/utils/config.d.ts.map +0 -1
- package/dist/inner-plugins/utils/index.d.ts.map +0 -1
- package/dist/inner-plugins/utils/loader.d.ts.map +0 -1
- package/dist/inner-plugins/utils/plugin.d.ts.map +0 -1
- package/dist/inner-plugins/utils/sdk.d.ts.map +0 -1
- package/dist/rules/index.d.ts.map +0 -1
- package/dist/rules/linter.d.ts.map +0 -1
- package/dist/rules/rule.d.ts.map +0 -1
- package/dist/rules/rules/cross-chunks-package/index.d.ts.map +0 -1
- package/dist/rules/rules/cross-chunks-package/types.d.ts.map +0 -1
- package/dist/rules/rules/cross-chunks-package/utils.d.ts.map +0 -1
- package/dist/rules/rules/default-import-check/index.d.ts.map +0 -1
- package/dist/rules/rules/default-import-check/types.d.ts.map +0 -1
- package/dist/rules/rules/default-import-check/utils.d.ts.map +0 -1
- package/dist/rules/rules/duplicate-package/index.d.ts.map +0 -1
- package/dist/rules/rules/duplicate-package/types.d.ts.map +0 -1
- package/dist/rules/rules/duplicate-package/utils.d.ts.map +0 -1
- package/dist/rules/rules/ecma-version-check/index.d.ts.map +0 -1
- package/dist/rules/rules/ecma-version-check/types.d.ts.map +0 -1
- package/dist/rules/rules/ecma-version-check/utils.d.ts.map +0 -1
- package/dist/rules/rules/index.d.ts.map +0 -1
- package/dist/rules/rules/loader-performance-optimization/index.d.ts.map +0 -1
- package/dist/rules/rules/loader-performance-optimization/types.d.ts.map +0 -1
- package/dist/rules/rules/loader-performance-optimization/utils.d.ts.map +0 -1
- package/dist/rules/utils.d.ts.map +0 -1
- package/dist/types/chunks.d.ts.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/loader.d.ts.map +0 -1
- package/dist/types/plugin.d.ts.map +0 -1
- package/dist/types/rules.d.ts.map +0 -1
- package/dist/types/webpack.d.ts +0 -15
- package/dist/types/webpack.d.ts.map +0 -1
- /package/dist/{types/webpack.js → rules/rules/cross-chunks-package/types.cjs} +0 -0
|
@@ -1,60 +1,34 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
})();
|
|
11
|
-
(()=>{
|
|
12
|
-
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
13
|
-
})();
|
|
14
|
-
(()=>{
|
|
15
|
-
__webpack_require__.r = (exports1)=>{
|
|
16
|
-
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
-
value: 'Module'
|
|
18
|
-
});
|
|
19
|
-
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
-
value: true
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
})();
|
|
24
|
-
var __webpack_exports__ = {};
|
|
25
|
-
__webpack_require__.r(__webpack_exports__);
|
|
26
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
-
rule: ()=>rule
|
|
28
|
-
});
|
|
29
|
-
const external_module_namespaceObject = require("module");
|
|
30
|
-
const types_namespaceObject = require("@rsdoctor/types");
|
|
31
|
-
const ruleUtils_namespaceObject = require("@rsdoctor/utils/ruleUtils");
|
|
32
|
-
const external_utils_js_namespaceObject = require("./utils.js");
|
|
33
|
-
const external_rule_js_namespaceObject = require("../../rule.js");
|
|
1
|
+
import 'module';
|
|
2
|
+
/*#__PURE__*/ import.meta.url;
|
|
3
|
+
import { builtinModules } from "module";
|
|
4
|
+
import { Linter } from "@rsdoctor/types";
|
|
5
|
+
import { getDocument, parser } from "@rsdoctor/utils/ruleUtils";
|
|
6
|
+
import { getDefaultImportByRequest, getFixData, getSourceRangeFromTransformedOffset, hasSameLeftInAssignStatement } from "./utils.js";
|
|
7
|
+
import { defineRule } from "../../rule.js";
|
|
34
8
|
const title = 'default-import-check';
|
|
35
|
-
const rule =
|
|
9
|
+
const rule = defineRule(()=>{
|
|
36
10
|
const parserOpt = {
|
|
37
11
|
ecmaVersion: 6
|
|
38
12
|
};
|
|
39
|
-
const exportsDefault =
|
|
40
|
-
const moduleExportsDefault =
|
|
13
|
+
const exportsDefault = parser.internal.parseExpressionAt('exports.default', 0, parserOpt);
|
|
14
|
+
const moduleExportsDefault = parser.internal.parseExpressionAt('module.exports.default', 0, parserOpt);
|
|
41
15
|
return {
|
|
42
16
|
meta: {
|
|
43
17
|
code: 'E1005',
|
|
44
18
|
title,
|
|
45
19
|
category: 'compile',
|
|
46
|
-
severity:
|
|
20
|
+
severity: Linter.Severity.Warn,
|
|
47
21
|
defaultConfig: {
|
|
48
22
|
ignore: []
|
|
49
23
|
}
|
|
50
24
|
},
|
|
51
25
|
check ({ moduleGraph, report, ruleConfig }) {
|
|
52
|
-
const dependencyWithNode = moduleGraph.getDependencies().filter((dep)=>'dynamic' === dep.meta.exportsType).filter((dep)=>!dep.module.path.includes('node_modules')).filter((dep)=>!ruleConfig.ignore.includes(dep.request) && !
|
|
26
|
+
const dependencyWithNode = moduleGraph.getDependencies().filter((dep)=>'dynamic' === dep.meta.exportsType).filter((dep)=>!dep.module.path.includes('node_modules')).filter((dep)=>!ruleConfig.ignore.includes(dep.request) && !builtinModules.includes(dep.request)).filter((dep)=>dep.dependency.meta.hasSetEsModuleStatement).filter((dep)=>dep.dependency.getProgram()).filter((dep)=>!hasSameLeftInAssignStatement(dep.dependency.getProgram(), [
|
|
53
27
|
exportsDefault,
|
|
54
28
|
moduleExportsDefault
|
|
55
29
|
])).map((dependency)=>{
|
|
56
30
|
const { module, request } = dependency;
|
|
57
|
-
const node = module.getProgram() &&
|
|
31
|
+
const node = module.getProgram() && getDefaultImportByRequest(module.getProgram(), request);
|
|
58
32
|
return node ? {
|
|
59
33
|
dependency,
|
|
60
34
|
node
|
|
@@ -62,19 +36,19 @@ const rule = (0, external_rule_js_namespaceObject.defineRule)(()=>{
|
|
|
62
36
|
}).filter((dep)=>null == dep ? void 0 : dep.dependency);
|
|
63
37
|
for (const { dependency, node } of dependencyWithNode){
|
|
64
38
|
if (!dependency) continue;
|
|
65
|
-
const document =
|
|
39
|
+
const document = getSourceRangeFromTransformedOffset(dependency.module, node);
|
|
66
40
|
if (!document) continue;
|
|
67
41
|
const message = 'Do not to use the default import when you import a cjs module.';
|
|
68
42
|
const canFix = !document.isTransformed && !document.path.includes('node_modules');
|
|
69
43
|
if (canFix) {
|
|
70
|
-
const fixData =
|
|
44
|
+
const fixData = getFixData(dependency.module, node, document.range);
|
|
71
45
|
const detail = {
|
|
72
46
|
type: 'code-change',
|
|
73
47
|
file: {
|
|
74
48
|
path: document.path,
|
|
75
49
|
actual: document.content,
|
|
76
50
|
line: document.range.start.line,
|
|
77
|
-
expected:
|
|
51
|
+
expected: getDocument(document.content).edit(fixData)
|
|
78
52
|
}
|
|
79
53
|
};
|
|
80
54
|
report({
|
|
@@ -107,10 +81,4 @@ const rule = (0, external_rule_js_namespaceObject.defineRule)(()=>{
|
|
|
107
81
|
}
|
|
108
82
|
};
|
|
109
83
|
});
|
|
110
|
-
|
|
111
|
-
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
112
|
-
"rule"
|
|
113
|
-
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
114
|
-
Object.defineProperty(exports, '__esModule', {
|
|
115
|
-
value: true
|
|
116
|
-
});
|
|
84
|
+
export { rule };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.r = (exports1)=>{
|
|
5
|
+
if ('undefined' != 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 __webpack_i__ in __webpack_exports__)exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
16
|
+
Object.defineProperty(exports, '__esModule', {
|
|
17
|
+
value: true
|
|
18
|
+
});
|
|
@@ -1,18 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
(()=>{
|
|
4
|
-
__webpack_require__.r = (exports1)=>{
|
|
5
|
-
if ('undefined' != 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 __webpack_i__ in __webpack_exports__)exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
16
|
-
Object.defineProperty(exports, '__esModule', {
|
|
17
|
-
value: true
|
|
18
|
-
});
|
|
1
|
+
import 'module';
|
|
2
|
+
/*#__PURE__*/ import.meta.url;
|
|
@@ -0,0 +1,98 @@
|
|
|
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 ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
+
value: 'Module'
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
var __webpack_exports__ = {};
|
|
25
|
+
__webpack_require__.r(__webpack_exports__);
|
|
26
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
+
importDeclarationToString: ()=>importDeclarationToString,
|
|
28
|
+
getSourceRangeFromTransformedOffset: ()=>getSourceRangeFromTransformedOffset,
|
|
29
|
+
hasSameLeftInAssignStatement: ()=>hasSameLeftInAssignStatement,
|
|
30
|
+
getFixData: ()=>getFixData,
|
|
31
|
+
getDefaultImportByRequest: ()=>getDefaultImportByRequest
|
|
32
|
+
});
|
|
33
|
+
const ruleUtils_namespaceObject = require("@rsdoctor/utils/ruleUtils");
|
|
34
|
+
const common_namespaceObject = require("@rsdoctor/utils/common");
|
|
35
|
+
function getDefaultImportByRequest(node, request) {
|
|
36
|
+
return ruleUtils_namespaceObject.parser.utils.getDefaultImports(node).find((decl)=>decl.source.value === request);
|
|
37
|
+
}
|
|
38
|
+
function hasSameLeftInAssignStatement(node, compare) {
|
|
39
|
+
return node.body.filter(ruleUtils_namespaceObject.parser.asserts.isExpressionStatement).map((node)=>node.expression).filter(ruleUtils_namespaceObject.parser.asserts.isAssignmentExpression).map((node)=>node.left).find((node)=>compare.some((item)=>ruleUtils_namespaceObject.parser.utils.isSameSemantics(node, item)));
|
|
40
|
+
}
|
|
41
|
+
function importDeclarationToString(node) {
|
|
42
|
+
const defaultSpecifier = node.specifiers[0];
|
|
43
|
+
const rawRequest = (node.source.raw ?? '').trim();
|
|
44
|
+
return `import * as ${defaultSpecifier.local.name} from ${rawRequest}`;
|
|
45
|
+
}
|
|
46
|
+
function getFixData(module, node, originalRange) {
|
|
47
|
+
const { source, transformed } = module.getSource();
|
|
48
|
+
const document = (0, ruleUtils_namespaceObject.getDocument)(source);
|
|
49
|
+
const newImportText = importDeclarationToString(node);
|
|
50
|
+
const oldText = transformed.substring(node.start, node.end);
|
|
51
|
+
const hasLastSemi = ';' === oldText[oldText.length - 1];
|
|
52
|
+
return {
|
|
53
|
+
start: document.offsetAt(originalRange.start),
|
|
54
|
+
end: document.offsetAt(originalRange.end),
|
|
55
|
+
newText: hasLastSemi ? `${newImportText};` : newImportText
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
function getSourceRangeFromTransformedOffset(module, node) {
|
|
59
|
+
var _sourceRange_end, _sourceRange_end1;
|
|
60
|
+
const source = module.getSource();
|
|
61
|
+
const sourceMap = module.getSourceMap();
|
|
62
|
+
const transformedStart = node.loc.start;
|
|
63
|
+
const transformedEnd = node.loc.end;
|
|
64
|
+
if (!transformedStart || !transformedEnd) return;
|
|
65
|
+
const transformedReport = {
|
|
66
|
+
path: module.path,
|
|
67
|
+
content: source.transformed,
|
|
68
|
+
isTransformed: true,
|
|
69
|
+
range: {
|
|
70
|
+
start: transformedStart,
|
|
71
|
+
end: transformedEnd
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
if (!sourceMap) return transformedReport;
|
|
75
|
+
const sourceRange = module.getSourceRange(node.loc);
|
|
76
|
+
if (common_namespaceObject.Lodash.isUndefined(null == sourceRange ? void 0 : sourceRange.start.line) || common_namespaceObject.Lodash.isUndefined(null == sourceRange ? void 0 : sourceRange.start.column) || common_namespaceObject.Lodash.isUndefined(null == sourceRange ? void 0 : null == (_sourceRange_end = sourceRange.end) ? void 0 : _sourceRange_end.line) || common_namespaceObject.Lodash.isUndefined(null == sourceRange ? void 0 : null == (_sourceRange_end1 = sourceRange.end) ? void 0 : _sourceRange_end1.column)) return transformedReport;
|
|
77
|
+
return {
|
|
78
|
+
path: module.path,
|
|
79
|
+
isTransformed: false,
|
|
80
|
+
content: source.source,
|
|
81
|
+
range: sourceRange
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
exports.getDefaultImportByRequest = __webpack_exports__.getDefaultImportByRequest;
|
|
85
|
+
exports.getFixData = __webpack_exports__.getFixData;
|
|
86
|
+
exports.getSourceRangeFromTransformedOffset = __webpack_exports__.getSourceRangeFromTransformedOffset;
|
|
87
|
+
exports.hasSameLeftInAssignStatement = __webpack_exports__.hasSameLeftInAssignStatement;
|
|
88
|
+
exports.importDeclarationToString = __webpack_exports__.importDeclarationToString;
|
|
89
|
+
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
90
|
+
"getDefaultImportByRequest",
|
|
91
|
+
"getFixData",
|
|
92
|
+
"getSourceRangeFromTransformedOffset",
|
|
93
|
+
"hasSameLeftInAssignStatement",
|
|
94
|
+
"importDeclarationToString"
|
|
95
|
+
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
96
|
+
Object.defineProperty(exports, '__esModule', {
|
|
97
|
+
value: true
|
|
98
|
+
});
|
|
@@ -8,4 +8,3 @@ export declare function hasSameLeftInAssignStatement(node: Node.Program, compare
|
|
|
8
8
|
export declare function importDeclarationToString(node: Node.ImportDeclaration): string;
|
|
9
9
|
export declare function getFixData(module: SDK.ModuleInstance, node: Node.ImportDeclaration, originalRange: Range): Linter.FixData;
|
|
10
10
|
export declare function getSourceRangeFromTransformedOffset(module: SDK.ModuleInstance, node: Node.SyntaxNode): Linter.ReportDocument | undefined;
|
|
11
|
-
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1,42 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: definition[key]
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
})();
|
|
11
|
-
(()=>{
|
|
12
|
-
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
13
|
-
})();
|
|
14
|
-
(()=>{
|
|
15
|
-
__webpack_require__.r = (exports1)=>{
|
|
16
|
-
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
-
value: 'Module'
|
|
18
|
-
});
|
|
19
|
-
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
-
value: true
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
})();
|
|
24
|
-
var __webpack_exports__ = {};
|
|
25
|
-
__webpack_require__.r(__webpack_exports__);
|
|
26
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
-
importDeclarationToString: ()=>importDeclarationToString,
|
|
28
|
-
getSourceRangeFromTransformedOffset: ()=>getSourceRangeFromTransformedOffset,
|
|
29
|
-
hasSameLeftInAssignStatement: ()=>hasSameLeftInAssignStatement,
|
|
30
|
-
getFixData: ()=>getFixData,
|
|
31
|
-
getDefaultImportByRequest: ()=>getDefaultImportByRequest
|
|
32
|
-
});
|
|
33
|
-
const ruleUtils_namespaceObject = require("@rsdoctor/utils/ruleUtils");
|
|
34
|
-
const common_namespaceObject = require("@rsdoctor/utils/common");
|
|
1
|
+
import 'module';
|
|
2
|
+
/*#__PURE__*/ import.meta.url;
|
|
3
|
+
import { getDocument, parser } from "@rsdoctor/utils/ruleUtils";
|
|
4
|
+
import { Lodash } from "@rsdoctor/utils/common";
|
|
35
5
|
function getDefaultImportByRequest(node, request) {
|
|
36
|
-
return
|
|
6
|
+
return parser.utils.getDefaultImports(node).find((decl)=>decl.source.value === request);
|
|
37
7
|
}
|
|
38
8
|
function hasSameLeftInAssignStatement(node, compare) {
|
|
39
|
-
return node.body.filter(
|
|
9
|
+
return node.body.filter(parser.asserts.isExpressionStatement).map((node)=>node.expression).filter(parser.asserts.isAssignmentExpression).map((node)=>node.left).find((node)=>compare.some((item)=>parser.utils.isSameSemantics(node, item)));
|
|
40
10
|
}
|
|
41
11
|
function importDeclarationToString(node) {
|
|
42
12
|
const defaultSpecifier = node.specifiers[0];
|
|
@@ -45,7 +15,7 @@ function importDeclarationToString(node) {
|
|
|
45
15
|
}
|
|
46
16
|
function getFixData(module, node, originalRange) {
|
|
47
17
|
const { source, transformed } = module.getSource();
|
|
48
|
-
const document =
|
|
18
|
+
const document = getDocument(source);
|
|
49
19
|
const newImportText = importDeclarationToString(node);
|
|
50
20
|
const oldText = transformed.substring(node.start, node.end);
|
|
51
21
|
const hasLastSemi = ';' === oldText[oldText.length - 1];
|
|
@@ -73,7 +43,7 @@ function getSourceRangeFromTransformedOffset(module, node) {
|
|
|
73
43
|
};
|
|
74
44
|
if (!sourceMap) return transformedReport;
|
|
75
45
|
const sourceRange = module.getSourceRange(node.loc);
|
|
76
|
-
if (
|
|
46
|
+
if (Lodash.isUndefined(null == sourceRange ? void 0 : sourceRange.start.line) || Lodash.isUndefined(null == sourceRange ? void 0 : sourceRange.start.column) || Lodash.isUndefined(null == sourceRange ? void 0 : null == (_sourceRange_end = sourceRange.end) ? void 0 : _sourceRange_end.line) || Lodash.isUndefined(null == sourceRange ? void 0 : null == (_sourceRange_end1 = sourceRange.end) ? void 0 : _sourceRange_end1.column)) return transformedReport;
|
|
77
47
|
return {
|
|
78
48
|
path: module.path,
|
|
79
49
|
isTransformed: false,
|
|
@@ -81,18 +51,4 @@ function getSourceRangeFromTransformedOffset(module, node) {
|
|
|
81
51
|
range: sourceRange
|
|
82
52
|
};
|
|
83
53
|
}
|
|
84
|
-
|
|
85
|
-
exports.getFixData = __webpack_exports__.getFixData;
|
|
86
|
-
exports.getSourceRangeFromTransformedOffset = __webpack_exports__.getSourceRangeFromTransformedOffset;
|
|
87
|
-
exports.hasSameLeftInAssignStatement = __webpack_exports__.hasSameLeftInAssignStatement;
|
|
88
|
-
exports.importDeclarationToString = __webpack_exports__.importDeclarationToString;
|
|
89
|
-
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
90
|
-
"getDefaultImportByRequest",
|
|
91
|
-
"getFixData",
|
|
92
|
-
"getSourceRangeFromTransformedOffset",
|
|
93
|
-
"hasSameLeftInAssignStatement",
|
|
94
|
-
"importDeclarationToString"
|
|
95
|
-
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
96
|
-
Object.defineProperty(exports, '__esModule', {
|
|
97
|
-
value: true
|
|
98
|
-
});
|
|
54
|
+
export { getDefaultImportByRequest, getFixData, getSourceRangeFromTransformedOffset, hasSameLeftInAssignStatement, importDeclarationToString };
|
|
@@ -0,0 +1,71 @@
|
|
|
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 ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
+
value: 'Module'
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
var __webpack_exports__ = {};
|
|
25
|
+
__webpack_require__.r(__webpack_exports__);
|
|
26
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
+
rule: ()=>rule
|
|
28
|
+
});
|
|
29
|
+
const types_namespaceObject = require("@rsdoctor/types");
|
|
30
|
+
const external_semver_namespaceObject = require("semver");
|
|
31
|
+
const external_types_cjs_namespaceObject = require("./types.cjs");
|
|
32
|
+
const external_utils_cjs_namespaceObject = require("./utils.cjs");
|
|
33
|
+
const external_rule_cjs_namespaceObject = require("../../rule.cjs");
|
|
34
|
+
const title = 'duplicate-package';
|
|
35
|
+
const rule = (0, external_rule_cjs_namespaceObject.defineRule)(()=>({
|
|
36
|
+
meta: {
|
|
37
|
+
code: 'E1001',
|
|
38
|
+
title,
|
|
39
|
+
category: 'bundle',
|
|
40
|
+
severity: types_namespaceObject.Linter.Severity.Warn,
|
|
41
|
+
defaultConfig: {
|
|
42
|
+
checkVersion: 'major',
|
|
43
|
+
ignore: []
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
check ({ packageGraph, report, root, ruleConfig }) {
|
|
47
|
+
const checkVersion = external_types_cjs_namespaceObject.CheckVersionMap[ruleConfig.checkVersion];
|
|
48
|
+
const packages = packageGraph.getDuplicatePackages().filter((pkg)=>!ruleConfig.ignore.includes(pkg[0].name)).map((pkgs)=>pkgs.filter((current)=>{
|
|
49
|
+
const check = pkgs.reduce((ans, pkg)=>ans | external_types_cjs_namespaceObject.CheckVersionMap[(0, external_semver_namespaceObject.diff)(current.version, pkg.version) ?? 'null'], 0);
|
|
50
|
+
return check <= checkVersion;
|
|
51
|
+
}).sort((_packA, _packB)=>(0, external_semver_namespaceObject.gt)(_packA.version, _packB.version) ? 1 : -1)).filter((pkgs)=>pkgs.length > 1 && pkgs.filter((pkg)=>pkg.getSize().parsedSize > 0).length > 1);
|
|
52
|
+
for (const pkg of packages){
|
|
53
|
+
const message = (0, external_utils_cjs_namespaceObject.getErrorMsg)(pkg, root);
|
|
54
|
+
const detail = {
|
|
55
|
+
type: 'package-relation',
|
|
56
|
+
packages: pkg.map((item)=>(0, external_utils_cjs_namespaceObject.getErrorDetail)(item, packageGraph))
|
|
57
|
+
};
|
|
58
|
+
report({
|
|
59
|
+
message,
|
|
60
|
+
detail
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}));
|
|
65
|
+
exports.rule = __webpack_exports__.rule;
|
|
66
|
+
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
67
|
+
"rule"
|
|
68
|
+
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
69
|
+
Object.defineProperty(exports, '__esModule', {
|
|
70
|
+
value: true
|
|
71
|
+
});
|
|
@@ -1,59 +1,33 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
})();
|
|
11
|
-
(()=>{
|
|
12
|
-
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
13
|
-
})();
|
|
14
|
-
(()=>{
|
|
15
|
-
__webpack_require__.r = (exports1)=>{
|
|
16
|
-
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
-
value: 'Module'
|
|
18
|
-
});
|
|
19
|
-
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
-
value: true
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
})();
|
|
24
|
-
var __webpack_exports__ = {};
|
|
25
|
-
__webpack_require__.r(__webpack_exports__);
|
|
26
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
-
rule: ()=>rule
|
|
28
|
-
});
|
|
29
|
-
const types_namespaceObject = require("@rsdoctor/types");
|
|
30
|
-
const external_semver_namespaceObject = require("semver");
|
|
31
|
-
const external_types_js_namespaceObject = require("./types.js");
|
|
32
|
-
const external_utils_js_namespaceObject = require("./utils.js");
|
|
33
|
-
const external_rule_js_namespaceObject = require("../../rule.js");
|
|
1
|
+
import 'module';
|
|
2
|
+
/*#__PURE__*/ import.meta.url;
|
|
3
|
+
import { Linter } from "@rsdoctor/types";
|
|
4
|
+
import { diff, gt } from "semver";
|
|
5
|
+
import { CheckVersionMap } from "./types.js";
|
|
6
|
+
import { getErrorDetail, getErrorMsg } from "./utils.js";
|
|
7
|
+
import { defineRule } from "../../rule.js";
|
|
34
8
|
const title = 'duplicate-package';
|
|
35
|
-
const rule =
|
|
9
|
+
const rule = defineRule(()=>({
|
|
36
10
|
meta: {
|
|
37
11
|
code: 'E1001',
|
|
38
12
|
title,
|
|
39
13
|
category: 'bundle',
|
|
40
|
-
severity:
|
|
14
|
+
severity: Linter.Severity.Warn,
|
|
41
15
|
defaultConfig: {
|
|
42
16
|
checkVersion: 'major',
|
|
43
17
|
ignore: []
|
|
44
18
|
}
|
|
45
19
|
},
|
|
46
20
|
check ({ packageGraph, report, root, ruleConfig }) {
|
|
47
|
-
const checkVersion =
|
|
21
|
+
const checkVersion = CheckVersionMap[ruleConfig.checkVersion];
|
|
48
22
|
const packages = packageGraph.getDuplicatePackages().filter((pkg)=>!ruleConfig.ignore.includes(pkg[0].name)).map((pkgs)=>pkgs.filter((current)=>{
|
|
49
|
-
const check = pkgs.reduce((ans, pkg)=>ans |
|
|
23
|
+
const check = pkgs.reduce((ans, pkg)=>ans | CheckVersionMap[diff(current.version, pkg.version) ?? 'null'], 0);
|
|
50
24
|
return check <= checkVersion;
|
|
51
|
-
}).sort((_packA, _packB)=>
|
|
25
|
+
}).sort((_packA, _packB)=>gt(_packA.version, _packB.version) ? 1 : -1)).filter((pkgs)=>pkgs.length > 1 && pkgs.filter((pkg)=>pkg.getSize().parsedSize > 0).length > 1);
|
|
52
26
|
for (const pkg of packages){
|
|
53
|
-
const message =
|
|
27
|
+
const message = getErrorMsg(pkg, root);
|
|
54
28
|
const detail = {
|
|
55
29
|
type: 'package-relation',
|
|
56
|
-
packages: pkg.map((item)=>
|
|
30
|
+
packages: pkg.map((item)=>getErrorDetail(item, packageGraph))
|
|
57
31
|
};
|
|
58
32
|
report({
|
|
59
33
|
message,
|
|
@@ -62,10 +36,4 @@ const rule = (0, external_rule_js_namespaceObject.defineRule)(()=>({
|
|
|
62
36
|
}
|
|
63
37
|
}
|
|
64
38
|
}));
|
|
65
|
-
|
|
66
|
-
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
67
|
-
"rule"
|
|
68
|
-
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
69
|
-
Object.defineProperty(exports, '__esModule', {
|
|
70
|
-
value: true
|
|
71
|
-
});
|
|
39
|
+
export { rule };
|
|
@@ -0,0 +1,60 @@
|
|
|
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 ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
+
value: 'Module'
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
var __webpack_exports__ = {};
|
|
25
|
+
__webpack_require__.r(__webpack_exports__);
|
|
26
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
+
CheckVersion: ()=>CheckVersion,
|
|
28
|
+
CheckVersionMap: ()=>CheckVersionMap
|
|
29
|
+
});
|
|
30
|
+
var CheckVersion = /*#__PURE__*/ function(CheckVersion) {
|
|
31
|
+
CheckVersion[CheckVersion["null"] = 0] = "null";
|
|
32
|
+
CheckVersion[CheckVersion["prerelease"] = 1] = "prerelease";
|
|
33
|
+
CheckVersion[CheckVersion["prepatch"] = 16] = "prepatch";
|
|
34
|
+
CheckVersion[CheckVersion["patch"] = 256] = "patch";
|
|
35
|
+
CheckVersion[CheckVersion["preminor"] = 4096] = "preminor";
|
|
36
|
+
CheckVersion[CheckVersion["minor"] = 65536] = "minor";
|
|
37
|
+
CheckVersion[CheckVersion["premajor"] = 1048576] = "premajor";
|
|
38
|
+
CheckVersion[CheckVersion["major"] = 16777216] = "major";
|
|
39
|
+
return CheckVersion;
|
|
40
|
+
}({});
|
|
41
|
+
var CheckVersionMap = /*#__PURE__*/ function(CheckVersionMap) {
|
|
42
|
+
CheckVersionMap[CheckVersionMap["null"] = 0] = "null";
|
|
43
|
+
CheckVersionMap[CheckVersionMap["prerelease"] = 1] = "prerelease";
|
|
44
|
+
CheckVersionMap[CheckVersionMap["prepatch"] = 17] = "prepatch";
|
|
45
|
+
CheckVersionMap[CheckVersionMap["patch"] = 273] = "patch";
|
|
46
|
+
CheckVersionMap[CheckVersionMap["preminor"] = 4369] = "preminor";
|
|
47
|
+
CheckVersionMap[CheckVersionMap["minor"] = 69905] = "minor";
|
|
48
|
+
CheckVersionMap[CheckVersionMap["premajor"] = 1118481] = "premajor";
|
|
49
|
+
CheckVersionMap[CheckVersionMap["major"] = 17895697] = "major";
|
|
50
|
+
return CheckVersionMap;
|
|
51
|
+
}({});
|
|
52
|
+
exports.CheckVersion = __webpack_exports__.CheckVersion;
|
|
53
|
+
exports.CheckVersionMap = __webpack_exports__.CheckVersionMap;
|
|
54
|
+
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
55
|
+
"CheckVersion",
|
|
56
|
+
"CheckVersionMap"
|
|
57
|
+
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
58
|
+
Object.defineProperty(exports, '__esModule', {
|
|
59
|
+
value: true
|
|
60
|
+
});
|
|
@@ -1,33 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
(
|
|
4
|
-
__webpack_require__.d = (exports1, definition)=>{
|
|
5
|
-
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: definition[key]
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
})();
|
|
11
|
-
(()=>{
|
|
12
|
-
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
13
|
-
})();
|
|
14
|
-
(()=>{
|
|
15
|
-
__webpack_require__.r = (exports1)=>{
|
|
16
|
-
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
-
value: 'Module'
|
|
18
|
-
});
|
|
19
|
-
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
-
value: true
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
})();
|
|
24
|
-
var __webpack_exports__ = {};
|
|
25
|
-
__webpack_require__.r(__webpack_exports__);
|
|
26
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
-
CheckVersion: ()=>CheckVersion,
|
|
28
|
-
CheckVersionMap: ()=>CheckVersionMap
|
|
29
|
-
});
|
|
30
|
-
var CheckVersion = /*#__PURE__*/ function(CheckVersion) {
|
|
1
|
+
import 'module';
|
|
2
|
+
/*#__PURE__*/ import.meta.url;
|
|
3
|
+
var types_CheckVersion = /*#__PURE__*/ function(CheckVersion) {
|
|
31
4
|
CheckVersion[CheckVersion["null"] = 0] = "null";
|
|
32
5
|
CheckVersion[CheckVersion["prerelease"] = 1] = "prerelease";
|
|
33
6
|
CheckVersion[CheckVersion["prepatch"] = 16] = "prepatch";
|
|
@@ -38,7 +11,7 @@ var CheckVersion = /*#__PURE__*/ function(CheckVersion) {
|
|
|
38
11
|
CheckVersion[CheckVersion["major"] = 16777216] = "major";
|
|
39
12
|
return CheckVersion;
|
|
40
13
|
}({});
|
|
41
|
-
var
|
|
14
|
+
var types_CheckVersionMap = /*#__PURE__*/ function(CheckVersionMap) {
|
|
42
15
|
CheckVersionMap[CheckVersionMap["null"] = 0] = "null";
|
|
43
16
|
CheckVersionMap[CheckVersionMap["prerelease"] = 1] = "prerelease";
|
|
44
17
|
CheckVersionMap[CheckVersionMap["prepatch"] = 17] = "prepatch";
|
|
@@ -49,12 +22,4 @@ var CheckVersionMap = /*#__PURE__*/ function(CheckVersionMap) {
|
|
|
49
22
|
CheckVersionMap[CheckVersionMap["major"] = 17895697] = "major";
|
|
50
23
|
return CheckVersionMap;
|
|
51
24
|
}({});
|
|
52
|
-
|
|
53
|
-
exports.CheckVersionMap = __webpack_exports__.CheckVersionMap;
|
|
54
|
-
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
55
|
-
"CheckVersion",
|
|
56
|
-
"CheckVersionMap"
|
|
57
|
-
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
58
|
-
Object.defineProperty(exports, '__esModule', {
|
|
59
|
-
value: true
|
|
60
|
-
});
|
|
25
|
+
export { types_CheckVersion as CheckVersion, types_CheckVersionMap as CheckVersionMap };
|