@anolilab/eslint-config 5.0.9 → 6.0.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/CHANGELOG.md +32 -0
- package/README.md +226 -73
- package/dist/chunk-3XUVOUJE.mjs +5 -0
- package/dist/chunk-3XUVOUJE.mjs.map +1 -0
- package/dist/chunk-6E2RGUNG.js +7 -0
- package/dist/chunk-6E2RGUNG.js.map +1 -0
- package/dist/chunk-ARKJLBXP.js +7 -0
- package/dist/chunk-ARKJLBXP.js.map +1 -0
- package/dist/chunk-B7GQAMYJ.js +9 -0
- package/dist/chunk-B7GQAMYJ.js.map +1 -0
- package/dist/chunk-DJDHW6UR.mjs +5 -0
- package/dist/chunk-DJDHW6UR.mjs.map +1 -0
- package/dist/chunk-F6JHPR4L.mjs +7 -0
- package/dist/chunk-F6JHPR4L.mjs.map +1 -0
- package/dist/chunk-G7JIJH44.mjs +5 -0
- package/dist/chunk-G7JIJH44.mjs.map +1 -0
- package/dist/chunk-NO36P4BR.js +9 -0
- package/dist/chunk-NO36P4BR.js.map +1 -0
- package/dist/chunk-PCIKFIV2.js +7 -0
- package/dist/chunk-PCIKFIV2.js.map +1 -0
- package/dist/chunk-RWRS63WY.mjs +7 -0
- package/dist/chunk-RWRS63WY.mjs.map +1 -0
- package/dist/chunk-SV64EPVP.js +7 -0
- package/dist/chunk-SV64EPVP.js.map +1 -0
- package/dist/chunk-UJAIXHCQ.js +13 -0
- package/dist/chunk-UJAIXHCQ.js.map +1 -0
- package/dist/chunk-WDMF75TJ.mjs +5 -0
- package/dist/chunk-WDMF75TJ.mjs.map +1 -0
- package/dist/chunk-WSETOOIE.mjs +5 -0
- package/dist/chunk-WSETOOIE.mjs.map +1 -0
- package/dist/chunk-XND2BWC4.mjs +7 -0
- package/dist/chunk-XND2BWC4.mjs.map +1 -0
- package/dist/chunk-YMWD4DNM.js +8 -0
- package/dist/chunk-YMWD4DNM.js.map +1 -0
- package/dist/config/best-practices.d.ts +5 -0
- package/dist/config/best-practices.js +9 -0
- package/dist/config/best-practices.js.map +1 -0
- package/dist/config/best-practices.mjs +3 -0
- package/dist/config/best-practices.mjs.map +1 -0
- package/dist/config/errors.d.ts +5 -0
- package/dist/config/errors.js +9 -0
- package/dist/config/errors.js.map +1 -0
- package/dist/config/errors.mjs +3 -0
- package/dist/config/errors.mjs.map +1 -0
- package/dist/config/es6.d.ts +5 -0
- package/dist/config/es6.js +9 -0
- package/dist/config/es6.js.map +1 -0
- package/dist/config/es6.mjs +3 -0
- package/dist/config/es6.mjs.map +1 -0
- package/dist/config/plugins/antfu.d.ts +5 -0
- package/dist/config/plugins/antfu.js +10 -0
- package/dist/config/plugins/antfu.js.map +1 -0
- package/dist/config/plugins/antfu.mjs +8 -0
- package/dist/config/plugins/antfu.mjs.map +1 -0
- package/dist/config/plugins/array-func.d.ts +5 -0
- package/dist/config/plugins/array-func.js +9 -0
- package/dist/config/plugins/array-func.js.map +1 -0
- package/dist/config/plugins/array-func.mjs +7 -0
- package/dist/config/plugins/array-func.mjs.map +1 -0
- package/dist/config/plugins/ava.d.ts +5 -0
- package/dist/config/plugins/ava.js +7 -0
- package/dist/config/plugins/ava.js.map +1 -0
- package/dist/config/plugins/ava.mjs +5 -0
- package/dist/config/plugins/ava.mjs.map +1 -0
- package/dist/config/plugins/babel.d.ts +5 -0
- package/dist/config/plugins/babel.js +12 -0
- package/dist/config/plugins/babel.js.map +1 -0
- package/dist/config/plugins/babel.mjs +10 -0
- package/dist/config/plugins/babel.mjs.map +1 -0
- package/dist/config/plugins/compat.d.ts +5 -0
- package/dist/config/plugins/compat.js +7 -0
- package/dist/config/plugins/compat.js.map +1 -0
- package/dist/config/plugins/compat.mjs +5 -0
- package/dist/config/plugins/compat.mjs.map +1 -0
- package/dist/config/plugins/cypress.d.ts +5 -0
- package/dist/config/plugins/cypress.js +7 -0
- package/dist/config/plugins/cypress.js.map +1 -0
- package/dist/config/plugins/cypress.mjs +5 -0
- package/dist/config/plugins/cypress.mjs.map +1 -0
- package/dist/config/plugins/es.d.ts +5 -0
- package/dist/config/plugins/es.js +7 -0
- package/dist/config/plugins/es.js.map +1 -0
- package/dist/config/plugins/es.mjs +5 -0
- package/dist/config/plugins/es.mjs.map +1 -0
- package/dist/config/plugins/eslint-comments.d.ts +5 -0
- package/dist/config/plugins/eslint-comments.js +7 -0
- package/dist/config/plugins/eslint-comments.js.map +1 -0
- package/dist/config/plugins/eslint-comments.mjs +5 -0
- package/dist/config/plugins/eslint-comments.mjs.map +1 -0
- package/dist/config/plugins/html.d.ts +5 -0
- package/dist/config/plugins/html.js +7 -0
- package/dist/config/plugins/html.js.map +1 -0
- package/dist/config/plugins/html.mjs +5 -0
- package/dist/config/plugins/html.mjs.map +1 -0
- package/dist/config/plugins/import.d.ts +5 -0
- package/dist/config/plugins/import.js +9 -0
- package/dist/config/plugins/import.js.map +1 -0
- package/dist/config/plugins/import.mjs +3 -0
- package/dist/config/plugins/import.mjs.map +1 -0
- package/dist/config/plugins/jest-async.d.ts +5 -0
- package/dist/config/plugins/jest-async.js +7 -0
- package/dist/config/plugins/jest-async.js.map +1 -0
- package/dist/config/plugins/jest-async.mjs +5 -0
- package/dist/config/plugins/jest-async.mjs.map +1 -0
- package/dist/config/plugins/jest-dom.d.ts +5 -0
- package/dist/config/plugins/jest-dom.js +7 -0
- package/dist/config/plugins/jest-dom.js.map +1 -0
- package/dist/config/plugins/jest-dom.mjs +5 -0
- package/dist/config/plugins/jest-dom.mjs.map +1 -0
- package/dist/config/plugins/jest-formatting.d.ts +5 -0
- package/dist/config/plugins/jest-formatting.js +7 -0
- package/dist/config/plugins/jest-formatting.js.map +1 -0
- package/dist/config/plugins/jest-formatting.mjs +5 -0
- package/dist/config/plugins/jest-formatting.mjs.map +1 -0
- package/dist/config/plugins/jest.d.ts +5 -0
- package/dist/config/plugins/jest.js +7 -0
- package/dist/config/plugins/jest.js.map +1 -0
- package/dist/config/plugins/jest.mjs +5 -0
- package/dist/config/plugins/jest.mjs.map +1 -0
- package/dist/config/plugins/jsdoc.d.ts +5 -0
- package/dist/config/plugins/jsdoc.js +11 -0
- package/dist/config/plugins/jsdoc.js.map +1 -0
- package/dist/config/plugins/jsdoc.mjs +9 -0
- package/dist/config/plugins/jsdoc.mjs.map +1 -0
- package/dist/config/plugins/jsonc.d.ts +5 -0
- package/dist/config/plugins/jsonc.js +11 -0
- package/dist/config/plugins/jsonc.js.map +1 -0
- package/dist/config/plugins/jsonc.mjs +9 -0
- package/dist/config/plugins/jsonc.mjs.map +1 -0
- package/dist/config/plugins/jsx-a11y.d.ts +5 -0
- package/dist/config/plugins/jsx-a11y.js +7 -0
- package/dist/config/plugins/jsx-a11y.js.map +1 -0
- package/dist/config/plugins/jsx-a11y.mjs +5 -0
- package/dist/config/plugins/jsx-a11y.mjs.map +1 -0
- package/dist/config/plugins/lodash-fp.d.ts +5 -0
- package/dist/config/plugins/lodash-fp.js +7 -0
- package/dist/config/plugins/lodash-fp.js.map +1 -0
- package/dist/config/plugins/lodash-fp.mjs +5 -0
- package/dist/config/plugins/lodash-fp.mjs.map +1 -0
- package/dist/config/plugins/lodash.d.ts +5 -0
- package/dist/config/plugins/lodash.js +7 -0
- package/dist/config/plugins/lodash.js.map +1 -0
- package/dist/config/plugins/lodash.mjs +5 -0
- package/dist/config/plugins/lodash.mjs.map +1 -0
- package/dist/config/plugins/markdown.d.ts +5 -0
- package/dist/config/plugins/markdown.js +7 -0
- package/dist/config/plugins/markdown.js.map +1 -0
- package/dist/config/plugins/markdown.mjs +5 -0
- package/dist/config/plugins/markdown.mjs.map +1 -0
- package/dist/config/plugins/mdx.d.ts +5 -0
- package/dist/config/plugins/mdx.js +7 -0
- package/dist/config/plugins/mdx.js.map +1 -0
- package/dist/config/plugins/mdx.mjs +5 -0
- package/dist/config/plugins/mdx.mjs.map +1 -0
- package/dist/config/plugins/no-extend-native.d.ts +5 -0
- package/dist/config/plugins/no-extend-native.js +7 -0
- package/dist/config/plugins/no-extend-native.js.map +1 -0
- package/dist/config/plugins/no-extend-native.mjs +5 -0
- package/dist/config/plugins/no-extend-native.mjs.map +1 -0
- package/dist/config/plugins/no-loops.d.ts +5 -0
- package/dist/config/plugins/no-loops.js +7 -0
- package/dist/config/plugins/no-loops.js.map +1 -0
- package/dist/config/plugins/no-loops.mjs +5 -0
- package/dist/config/plugins/no-loops.mjs.map +1 -0
- package/dist/config/plugins/no-secrets.d.ts +5 -0
- package/dist/config/plugins/no-secrets.js +7 -0
- package/dist/config/plugins/no-secrets.js.map +1 -0
- package/dist/config/plugins/no-secrets.mjs +5 -0
- package/dist/config/plugins/no-secrets.mjs.map +1 -0
- package/dist/config/plugins/no-unsanitized.d.ts +5 -0
- package/dist/config/plugins/no-unsanitized.js +7 -0
- package/dist/config/plugins/no-unsanitized.js.map +1 -0
- package/dist/config/plugins/no-unsanitized.mjs +5 -0
- package/dist/config/plugins/no-unsanitized.mjs.map +1 -0
- package/dist/config/plugins/node.d.ts +5 -0
- package/dist/config/plugins/node.js +9 -0
- package/dist/config/plugins/node.js.map +1 -0
- package/dist/config/plugins/node.mjs +7 -0
- package/dist/config/plugins/node.mjs.map +1 -0
- package/dist/config/plugins/optimize-regex.d.ts +5 -0
- package/dist/config/plugins/optimize-regex.js +7 -0
- package/dist/config/plugins/optimize-regex.js.map +1 -0
- package/dist/config/plugins/optimize-regex.mjs +5 -0
- package/dist/config/plugins/optimize-regex.mjs.map +1 -0
- package/dist/config/plugins/promise.d.ts +5 -0
- package/dist/config/plugins/promise.js +7 -0
- package/dist/config/plugins/promise.js.map +1 -0
- package/dist/config/plugins/promise.mjs +5 -0
- package/dist/config/plugins/promise.mjs.map +1 -0
- package/dist/config/plugins/react-hooks.d.ts +5 -0
- package/dist/config/plugins/react-hooks.js +7 -0
- package/dist/config/plugins/react-hooks.js.map +1 -0
- package/dist/config/plugins/react-hooks.mjs +5 -0
- package/dist/config/plugins/react-hooks.mjs.map +1 -0
- package/dist/config/plugins/react-redux.d.ts +5 -0
- package/dist/config/plugins/react-redux.js +7 -0
- package/dist/config/plugins/react-redux.js.map +1 -0
- package/dist/config/plugins/react-redux.mjs +5 -0
- package/dist/config/plugins/react-redux.mjs.map +1 -0
- package/dist/config/plugins/react.d.ts +5 -0
- package/dist/config/plugins/react.js +21 -0
- package/dist/config/plugins/react.js.map +1 -0
- package/dist/config/plugins/react.mjs +15 -0
- package/dist/config/plugins/react.mjs.map +1 -0
- package/dist/config/plugins/security.d.ts +5 -0
- package/dist/config/plugins/security.js +7 -0
- package/dist/config/plugins/security.js.map +1 -0
- package/dist/config/plugins/security.mjs +5 -0
- package/dist/config/plugins/security.mjs.map +1 -0
- package/dist/config/plugins/simple-import-sort.d.ts +5 -0
- package/dist/config/plugins/simple-import-sort.js +7 -0
- package/dist/config/plugins/simple-import-sort.js.map +1 -0
- package/dist/config/plugins/simple-import-sort.mjs +5 -0
- package/dist/config/plugins/simple-import-sort.mjs.map +1 -0
- package/dist/config/plugins/sonarjs.d.ts +5 -0
- package/dist/config/plugins/sonarjs.js +7 -0
- package/dist/config/plugins/sonarjs.js.map +1 -0
- package/dist/config/plugins/sonarjs.mjs +5 -0
- package/dist/config/plugins/sonarjs.mjs.map +1 -0
- package/dist/config/plugins/sort-keys-fix.d.ts +5 -0
- package/dist/config/plugins/sort-keys-fix.js +7 -0
- package/dist/config/plugins/sort-keys-fix.js.map +1 -0
- package/dist/config/plugins/sort-keys-fix.mjs +5 -0
- package/dist/config/plugins/sort-keys-fix.mjs.map +1 -0
- package/dist/config/plugins/tailwindcss.d.ts +5 -0
- package/dist/config/plugins/tailwindcss.js +7 -0
- package/dist/config/plugins/tailwindcss.js.map +1 -0
- package/dist/config/plugins/tailwindcss.mjs +5 -0
- package/dist/config/plugins/tailwindcss.mjs.map +1 -0
- package/dist/config/plugins/testing-library.d.ts +5 -0
- package/dist/config/plugins/testing-library.js +10 -0
- package/dist/config/plugins/testing-library.js.map +1 -0
- package/dist/config/plugins/testing-library.mjs +8 -0
- package/dist/config/plugins/testing-library.mjs.map +1 -0
- package/dist/config/plugins/toml.d.ts +5 -0
- package/dist/config/plugins/toml.js +7 -0
- package/dist/config/plugins/toml.js.map +1 -0
- package/dist/config/plugins/toml.mjs +5 -0
- package/dist/config/plugins/toml.mjs.map +1 -0
- package/dist/config/plugins/tsdoc.d.ts +5 -0
- package/dist/config/plugins/tsdoc.js +9 -0
- package/dist/config/plugins/tsdoc.js.map +1 -0
- package/dist/config/plugins/tsdoc.mjs +7 -0
- package/dist/config/plugins/tsdoc.mjs.map +1 -0
- package/dist/config/plugins/typescript-sort-keys.d.ts +5 -0
- package/dist/config/plugins/typescript-sort-keys.js +7 -0
- package/dist/config/plugins/typescript-sort-keys.js.map +1 -0
- package/dist/config/plugins/typescript-sort-keys.mjs +5 -0
- package/dist/config/plugins/typescript-sort-keys.mjs.map +1 -0
- package/dist/config/plugins/typescript.d.ts +5 -0
- package/dist/config/plugins/typescript.js +18 -0
- package/dist/config/plugins/typescript.js.map +1 -0
- package/dist/config/plugins/typescript.mjs +16 -0
- package/dist/config/plugins/typescript.mjs.map +1 -0
- package/dist/config/plugins/unicorn.d.ts +5 -0
- package/dist/config/plugins/unicorn.js +15 -0
- package/dist/config/plugins/unicorn.js.map +1 -0
- package/dist/config/plugins/unicorn.mjs +9 -0
- package/dist/config/plugins/unicorn.mjs.map +1 -0
- package/dist/config/plugins/vitest.d.ts +5 -0
- package/dist/config/plugins/vitest.js +7 -0
- package/dist/config/plugins/vitest.js.map +1 -0
- package/dist/config/plugins/vitest.mjs +5 -0
- package/dist/config/plugins/vitest.mjs.map +1 -0
- package/dist/config/plugins/yml.d.ts +5 -0
- package/dist/config/plugins/yml.js +7 -0
- package/dist/config/plugins/yml.js.map +1 -0
- package/dist/config/plugins/yml.mjs +5 -0
- package/dist/config/plugins/yml.mjs.map +1 -0
- package/dist/config/plugins/you-dont-need-lodash-underscore.d.ts +5 -0
- package/dist/config/plugins/you-dont-need-lodash-underscore.js +7 -0
- package/dist/config/plugins/you-dont-need-lodash-underscore.js.map +1 -0
- package/dist/config/plugins/you-dont-need-lodash-underscore.mjs +5 -0
- package/dist/config/plugins/you-dont-need-lodash-underscore.mjs.map +1 -0
- package/dist/config/plugins/you-dont-need-momentjs.d.ts +5 -0
- package/dist/config/plugins/you-dont-need-momentjs.js +7 -0
- package/dist/config/plugins/you-dont-need-momentjs.js.map +1 -0
- package/dist/config/plugins/you-dont-need-momentjs.mjs +5 -0
- package/dist/config/plugins/you-dont-need-momentjs.mjs.map +1 -0
- package/dist/config/plugins/zod.d.ts +5 -0
- package/dist/config/plugins/zod.js +7 -0
- package/dist/config/plugins/zod.js.map +1 -0
- package/dist/config/plugins/zod.mjs +5 -0
- package/dist/config/plugins/zod.mjs.map +1 -0
- package/dist/config/style.d.ts +5 -0
- package/dist/config/style.js +9 -0
- package/dist/config/style.js.map +1 -0
- package/dist/config/style.mjs +3 -0
- package/dist/config/style.mjs.map +1 -0
- package/dist/config/variables.d.ts +5 -0
- package/dist/config/variables.js +9 -0
- package/dist/config/variables.js.map +1 -0
- package/dist/config/variables.mjs +3 -0
- package/dist/config/variables.mjs.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +22 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +16 -0
- package/dist/index.mjs.map +1 -0
- package/dist/postinstall.d.ts +2 -0
- package/dist/postinstall.js +65 -0
- package/dist/postinstall.js.map +1 -0
- package/dist/postinstall.mjs +63 -0
- package/dist/postinstall.mjs.map +1 -0
- package/dist/typescript-type-checking.d.ts +5 -0
- package/dist/typescript-type-checking.js +10 -0
- package/dist/typescript-type-checking.js.map +1 -0
- package/dist/typescript-type-checking.mjs +8 -0
- package/dist/typescript-type-checking.mjs.map +1 -0
- package/package.json +106 -50
- package/config.cjs +0 -88
- package/index.cjs +0 -58
- package/lib/check-missing.cjs +0 -57
- package/lib/is-module-available.cjs +0 -8
- package/lib/loggers.cjs +0 -12
- package/lib/postinstall.cjs +0 -115
- package/lib/show-loaded.cjs +0 -21
- package/lib/utils.cjs +0 -90
- package/rules/best-practices.cjs +0 -395
- package/rules/errors.cjs +0 -177
- package/rules/es6.cjs +0 -217
- package/rules/plugins/array-func.cjs +0 -13
- package/rules/plugins/babel.cjs +0 -36
- package/rules/plugins/compat.cjs +0 -3
- package/rules/plugins/cypress.cjs +0 -13
- package/rules/plugins/eslint-comments.cjs +0 -11
- package/rules/plugins/html.cjs +0 -3
- package/rules/plugins/import.cjs +0 -265
- package/rules/plugins/jest-async.cjs +0 -6
- package/rules/plugins/jest-dom.cjs +0 -3
- package/rules/plugins/jest-formatting.cjs +0 -3
- package/rules/plugins/jest.cjs +0 -43
- package/rules/plugins/jsdoc.cjs +0 -4
- package/rules/plugins/json.cjs +0 -40
- package/rules/plugins/jsonc.cjs +0 -70
- package/rules/plugins/jsx-a11y.cjs +0 -261
- package/rules/plugins/lodash-fp.cjs +0 -7
- package/rules/plugins/lodash.cjs +0 -52
- package/rules/plugins/markdown.cjs +0 -32
- package/rules/plugins/mdx.cjs +0 -4
- package/rules/plugins/no-loops.cjs +0 -7
- package/rules/plugins/no-secrets.cjs +0 -20
- package/rules/plugins/no-unsanitized.cjs +0 -8
- package/rules/plugins/node.cjs +0 -44
- package/rules/plugins/optimize-regex.cjs +0 -6
- package/rules/plugins/promise.cjs +0 -9
- package/rules/plugins/react-hooks.cjs +0 -20
- package/rules/plugins/react-redux.cjs +0 -9
- package/rules/plugins/react.cjs +0 -659
- package/rules/plugins/simple-import-sort.cjs +0 -10
- package/rules/plugins/sonarjs.cjs +0 -5
- package/rules/plugins/sort-keys-fix.cjs +0 -6
- package/rules/plugins/tailwindcss.cjs +0 -4
- package/rules/plugins/testing-library.cjs +0 -34
- package/rules/plugins/toml.cjs +0 -9
- package/rules/plugins/typescript-sort-keys.cjs +0 -19
- package/rules/plugins/typescript.cjs +0 -427
- package/rules/plugins/unicorn.cjs +0 -20
- package/rules/plugins/yml.cjs +0 -12
- package/rules/plugins/you-dont-need-lodash-underscore.cjs +0 -3
- package/rules/plugins/you-dont-need-momentjs.cjs +0 -3
- package/rules/style.cjs +0 -629
- package/rules/variables.cjs +0 -54
package/config.cjs
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
const { hasAnyDep, hasTypescript } = require("./lib/utils.cjs");
|
|
2
|
-
const isModuleAvailable = require("./lib/is-module-available.cjs");
|
|
3
|
-
|
|
4
|
-
// Base rules
|
|
5
|
-
const rules = ["best-practices", "errors", "style", "es6", "variables"];
|
|
6
|
-
|
|
7
|
-
// Base plugin rules
|
|
8
|
-
const pRules = [
|
|
9
|
-
"compat",
|
|
10
|
-
"eslint-comments",
|
|
11
|
-
"import",
|
|
12
|
-
"json",
|
|
13
|
-
"jsonc",
|
|
14
|
-
"jsonc",
|
|
15
|
-
"markdown",
|
|
16
|
-
"optimize-regex",
|
|
17
|
-
"promise",
|
|
18
|
-
"simple-import-sort",
|
|
19
|
-
"toml",
|
|
20
|
-
"unicorn",
|
|
21
|
-
"yml",
|
|
22
|
-
"you-dont-need-lodash-underscore",
|
|
23
|
-
"you-dont-need-momentjs",
|
|
24
|
-
|
|
25
|
-
// Security Rules
|
|
26
|
-
"no-secrets",
|
|
27
|
-
"sonarjs",
|
|
28
|
-
];
|
|
29
|
-
|
|
30
|
-
// Optionals rules based on project dependencies
|
|
31
|
-
const depRules = [
|
|
32
|
-
"array-func",
|
|
33
|
-
"html",
|
|
34
|
-
"jsdoc",
|
|
35
|
-
"lodash",
|
|
36
|
-
"mdx",
|
|
37
|
-
"no-unsanitized",
|
|
38
|
-
"react",
|
|
39
|
-
"react-redux",
|
|
40
|
-
["lodash", "lodash-fp"],
|
|
41
|
-
["react", "jsx-a11y"],
|
|
42
|
-
["react", "react-hooks"],
|
|
43
|
-
"tailwindcss",
|
|
44
|
-
];
|
|
45
|
-
|
|
46
|
-
const testRules = [
|
|
47
|
-
"cypress",
|
|
48
|
-
"jest",
|
|
49
|
-
"jest-dom",
|
|
50
|
-
["@testing-library/dom", "testing-library"],
|
|
51
|
-
["@testing-library/jest-dom", "jest-dom"],
|
|
52
|
-
["jest", "jest-async", "jest-dom"],
|
|
53
|
-
["jest-formatting", "jest"],
|
|
54
|
-
];
|
|
55
|
-
|
|
56
|
-
// Extra required optional packages
|
|
57
|
-
const extraInstalled = [];
|
|
58
|
-
|
|
59
|
-
depRules.forEach((depRule) => {
|
|
60
|
-
const rule = typeof depRule === "string" ? [depRule, depRule] : depRule;
|
|
61
|
-
|
|
62
|
-
if (hasAnyDep(rule[0])) {
|
|
63
|
-
pRules.push(rule[1]);
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
testRules.forEach((depRule) => {
|
|
68
|
-
const rule = typeof depRule === "string" ? [depRule, depRule] : depRule;
|
|
69
|
-
|
|
70
|
-
if (isModuleAvailable(rule[0])) {
|
|
71
|
-
pRules.push(rule[1]);
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
|
|
75
|
-
if (hasTypescript) {
|
|
76
|
-
pRules.push("typescript");
|
|
77
|
-
extraInstalled.push(["typescript", "@typescript-eslint/parser"], ["typescript", "@typescript-eslint/eslint-plugin"]);
|
|
78
|
-
|
|
79
|
-
if (hasAnyDep("eslint-plugin-typescript-sort-keys")) {
|
|
80
|
-
pRules.push("typescript-sort-keys");
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
module.exports = {
|
|
85
|
-
rules,
|
|
86
|
-
pluginRules: pRules,
|
|
87
|
-
extraInstallPackage: extraInstalled,
|
|
88
|
-
};
|
package/index.cjs
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
const path = require("node:path");
|
|
2
|
-
const checkMissing = require("./lib/check-missing.cjs");
|
|
3
|
-
const showLoaded = require("./lib/show-loaded.cjs");
|
|
4
|
-
const { rules, pluginRules, extraInstallPackage } = require("./config.cjs");
|
|
5
|
-
|
|
6
|
-
// Workaround VS Code trying to run this file twice!
|
|
7
|
-
if (!global.hasAnolilabEsLintConfigLoaded) {
|
|
8
|
-
checkMissing(pluginRules, extraInstallPackage);
|
|
9
|
-
showLoaded(pluginRules, extraInstallPackage);
|
|
10
|
-
|
|
11
|
-
global.hasAnolilabEsLintConfigLoaded = true;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
module.exports = {
|
|
15
|
-
extends: [
|
|
16
|
-
...rules
|
|
17
|
-
// eslint-disable-next-line no-undef
|
|
18
|
-
.map((plugin) => path.join(__dirname, `./rules/${plugin.split("@")[0]}.cjs`)),
|
|
19
|
-
// eslint-disable-next-line no-undef
|
|
20
|
-
...pluginRules.map((plugin) => path.join(__dirname, `./rules/plugins/${plugin.split("@")[0]}.cjs`)),
|
|
21
|
-
],
|
|
22
|
-
// @see https://www.npmjs.com/package/@rushstack/eslint-plugin-security
|
|
23
|
-
plugins: ["@rushstack/eslint-plugin-security"],
|
|
24
|
-
rules: {
|
|
25
|
-
// This is disabled for tools because, for example, it is a common and safe practice for a tool
|
|
26
|
-
// to read a RegExp from a config file and use it to filter files paths.
|
|
27
|
-
// eslint-disable-next-line no-undef
|
|
28
|
-
"@rushstack/security/no-unsafe-regexp": process.env.TRUSTED_TOOL ? "off" : "warn",
|
|
29
|
-
},
|
|
30
|
-
parserOptions: {
|
|
31
|
-
ecmaVersion: 12,
|
|
32
|
-
sourceType: "module",
|
|
33
|
-
},
|
|
34
|
-
env: {
|
|
35
|
-
es2021: true,
|
|
36
|
-
},
|
|
37
|
-
ignorePatterns: [
|
|
38
|
-
"!.*",
|
|
39
|
-
|
|
40
|
-
".git/",
|
|
41
|
-
"node_modules/",
|
|
42
|
-
"bower_components/",
|
|
43
|
-
"jspm_packages/",
|
|
44
|
-
".npm/",
|
|
45
|
-
"vendor/",
|
|
46
|
-
|
|
47
|
-
"lib-cov/",
|
|
48
|
-
"coverage/",
|
|
49
|
-
".nyc_output/",
|
|
50
|
-
".cache/",
|
|
51
|
-
|
|
52
|
-
"build/",
|
|
53
|
-
"dist/",
|
|
54
|
-
"tmp/",
|
|
55
|
-
|
|
56
|
-
"**/*.min.*",
|
|
57
|
-
],
|
|
58
|
-
};
|
package/lib/check-missing.cjs
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
const isModuleAvailable = require("./is-module-available.cjs");
|
|
2
|
-
const { consoleLog } = require("./loggers.cjs");
|
|
3
|
-
|
|
4
|
-
const moduleNotAvailable = (package_) => !isModuleAvailable(package_);
|
|
5
|
-
|
|
6
|
-
const atLatest = (package_) => {
|
|
7
|
-
if (!package_.split("@").includes("@")) {
|
|
8
|
-
return `${package_}@latest`;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
return package_;
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
module.exports = function checkMissing(rules, extraInstallPackage) {
|
|
15
|
-
const notInstalled = rules
|
|
16
|
-
.map((plugin) => {
|
|
17
|
-
if (plugin === "typescript") {
|
|
18
|
-
return plugin;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
return `eslint-plugin-${plugin}`;
|
|
22
|
-
})
|
|
23
|
-
.filter((package_) => moduleNotAvailable(package_));
|
|
24
|
-
|
|
25
|
-
extraInstallPackage.forEach(([rule, package_]) => {
|
|
26
|
-
if (rules.includes(rule) && moduleNotAvailable(package_)) {
|
|
27
|
-
notInstalled.push(package_);
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
if (notInstalled.length === 0) {
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
const s = notInstalled.length === 1 ? "" : "s";
|
|
36
|
-
|
|
37
|
-
consoleLog(`\nOops! Something went wrong! :(
|
|
38
|
-
|
|
39
|
-
@anolilab/eslint-config could not find the following package${s}
|
|
40
|
-
|
|
41
|
-
${notInstalled.join("\n ")}
|
|
42
|
-
|
|
43
|
-
To install the missing package${s}, please run the following command:
|
|
44
|
-
|
|
45
|
-
npm install ${notInstalled.map((element) => atLatest(element)).join(" ")} --save-dev
|
|
46
|
-
|
|
47
|
-
or
|
|
48
|
-
|
|
49
|
-
yarn add ${notInstalled.map((element) => atLatest(element)).join(" ")} --dev
|
|
50
|
-
|
|
51
|
-
or
|
|
52
|
-
|
|
53
|
-
pnpm add ${notInstalled.map((element) => atLatest(element)).join(" ")} -D
|
|
54
|
-
`);
|
|
55
|
-
|
|
56
|
-
// process.exit(1); // eslint-disable-line unicorn/no-process-exit
|
|
57
|
-
};
|
package/lib/loggers.cjs
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line unicorn/no-useless-undefined
|
|
2
|
-
const noop = () => undefined;
|
|
3
|
-
|
|
4
|
-
const consolePrefix = (prefix) =>
|
|
5
|
-
// eslint-disable-next-line no-console,implicit-arrow-linebreak,no-undef
|
|
6
|
-
((process.env.NO_LOGS && process.env.NO_LOGS === "true") ? noop : (file) => console.log(`${prefix}${file}`));
|
|
7
|
-
|
|
8
|
-
module.exports = {
|
|
9
|
-
consolePlugin: consolePrefix(" eslint-plugin-"),
|
|
10
|
-
consoleConfig: consolePrefix(" eslint-config-"),
|
|
11
|
-
consoleLog: consolePrefix(""),
|
|
12
|
-
};
|
package/lib/postinstall.cjs
DELETED
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
// eslint-disable-next-line no-undef
|
|
4
|
-
if (process.env.CI) {
|
|
5
|
-
// eslint-disable-next-line no-undef
|
|
6
|
-
process.exit(0);
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
const { writeFile, existsSync } = require("node:fs");
|
|
10
|
-
// eslint-disable-next-line unicorn/import-style
|
|
11
|
-
const { resolve, join } = require("node:path");
|
|
12
|
-
const { promisify } = require("node:util");
|
|
13
|
-
|
|
14
|
-
const writeFileAsync = promisify(writeFile);
|
|
15
|
-
|
|
16
|
-
// get the path to the host project.
|
|
17
|
-
// eslint-disable-next-line no-undef
|
|
18
|
-
const projectPath = resolve(process.cwd(), "..", "..", "..");
|
|
19
|
-
|
|
20
|
-
console.log("Configuring @anolilab/eslint-config", projectPath, "\n");
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Writes .eslintrc.cjs if it doesn't exist. Warns if it exists.
|
|
24
|
-
*/
|
|
25
|
-
const writeEslintRc = () => {
|
|
26
|
-
const eslintPath = join(projectPath, ".eslintrc.cjs");
|
|
27
|
-
const content = `
|
|
28
|
-
/** @ts-check */
|
|
29
|
-
/** @type {import('eslint').Linter.Config} */
|
|
30
|
-
module.exports = {
|
|
31
|
-
root: true,
|
|
32
|
-
extends: ["@anolilab/eslint-config"],
|
|
33
|
-
ignorePatterns: ["!**/*"],
|
|
34
|
-
env: {
|
|
35
|
-
// Your environments (which contains several predefined global variables)
|
|
36
|
-
// browser: true,
|
|
37
|
-
// node: true,
|
|
38
|
-
// mocha: true,
|
|
39
|
-
// jest: true,
|
|
40
|
-
// jquery: true
|
|
41
|
-
},
|
|
42
|
-
globals: {
|
|
43
|
-
// Your global variables (setting to false means it's not allowed to be reassigned)
|
|
44
|
-
// myGlobal: false
|
|
45
|
-
},
|
|
46
|
-
rules: {
|
|
47
|
-
// Customize your rules
|
|
48
|
-
},
|
|
49
|
-
overrides: [
|
|
50
|
-
{
|
|
51
|
-
files: ["*.ts", "*.tsx", "*.js", "*.jsx"],
|
|
52
|
-
// Set parserOptions.project for the project to allow TypeScript to create the type-checker behind the scenes when we run linting
|
|
53
|
-
"parserOptions": {
|
|
54
|
-
},
|
|
55
|
-
rules: {},
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
files: ["*.ts", "*.tsx"],
|
|
59
|
-
// Set parserOptions.project for the project to allow TypeScript to create the type-checker behind the scenes when we run linting
|
|
60
|
-
"parserOptions": {
|
|
61
|
-
},
|
|
62
|
-
rules: {},
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
files: ["*.js", "*.jsx"],
|
|
66
|
-
rules: {},
|
|
67
|
-
},
|
|
68
|
-
],
|
|
69
|
-
};
|
|
70
|
-
`;
|
|
71
|
-
|
|
72
|
-
if (existsSync(eslintPath)) {
|
|
73
|
-
console.warn(`⚠️ .eslintrc.cjs already exists;
|
|
74
|
-
Make sure that it includes the following for @anolilab/eslint-config'
|
|
75
|
-
to work as it should: { extends: ["@anolilab/eslint-config"] }.`);
|
|
76
|
-
|
|
77
|
-
return Promise.resolve();
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
return writeFileAsync(eslintPath, content, "utf-8");
|
|
81
|
-
};
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* Writes .eslintignore if it doesn't exist. Warns if it exists.
|
|
85
|
-
*/
|
|
86
|
-
const writeEslintIgnore = () => {
|
|
87
|
-
const eslintIgnorePath = join(projectPath, ".eslintignore");
|
|
88
|
-
|
|
89
|
-
if (existsSync(eslintIgnorePath)) {
|
|
90
|
-
console.warn("⚠️ .eslintignore already exists");
|
|
91
|
-
|
|
92
|
-
return Promise.resolve();
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
return writeFileAsync(eslintIgnorePath, "", "utf-8");
|
|
96
|
-
};
|
|
97
|
-
|
|
98
|
-
// eslint-disable-next-line unicorn/prefer-top-level-await
|
|
99
|
-
(async () => {
|
|
100
|
-
try {
|
|
101
|
-
// eslint-disable-next-line compat/compat
|
|
102
|
-
await Promise.all([writeEslintRc(), writeEslintIgnore()]);
|
|
103
|
-
|
|
104
|
-
console.log("😎 Everything went well, have fun!");
|
|
105
|
-
|
|
106
|
-
// eslint-disable-next-line no-undef
|
|
107
|
-
process.exit(0);
|
|
108
|
-
} catch (error) {
|
|
109
|
-
console.log("😬 something went wrong:");
|
|
110
|
-
console.error(error.message);
|
|
111
|
-
|
|
112
|
-
// eslint-disable-next-line no-undef
|
|
113
|
-
process.exit(1);
|
|
114
|
-
}
|
|
115
|
-
})();
|
package/lib/show-loaded.cjs
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
const { consoleLog, consolePlugin } = require("./loggers.cjs");
|
|
2
|
-
|
|
3
|
-
module.exports = function showLoaded(rules, extraInstallPackage) {
|
|
4
|
-
const all = [...rules];
|
|
5
|
-
|
|
6
|
-
extraInstallPackage.forEach(([rule, package_]) => {
|
|
7
|
-
if (all.includes(rule)) {
|
|
8
|
-
all.push(package_);
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
|
|
12
|
-
consoleLog("\n@anolilab/eslint-config loaded the following packages:\n");
|
|
13
|
-
|
|
14
|
-
all.forEach((element) => {
|
|
15
|
-
if (element[0] === "@" || element === "typescript") {
|
|
16
|
-
consoleLog(` ${element}`);
|
|
17
|
-
} else {
|
|
18
|
-
consolePlugin(element);
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
};
|
package/lib/utils.cjs
DELETED
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
// From kcd-scripts
|
|
2
|
-
const { existsSync, realpathSync } = require("node:fs");
|
|
3
|
-
// eslint-disable-next-line unicorn/import-style
|
|
4
|
-
const { dirname, join } = require("node:path");
|
|
5
|
-
// eslint-disable-next-line lodash/import-scope
|
|
6
|
-
const has = require("lodash.has");
|
|
7
|
-
const readPkgUp = require("read-pkg-up");
|
|
8
|
-
|
|
9
|
-
function arrify(value) {
|
|
10
|
-
if (value === null || value === undefined) {
|
|
11
|
-
return [];
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
if (Array.isArray(value)) {
|
|
15
|
-
return value;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
if (typeof value === "string") {
|
|
19
|
-
return [value];
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
if (typeof value[Symbol.iterator] === "function") {
|
|
23
|
-
return [...value];
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
return [value];
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
30
|
-
const { packageJson: package_, path: packagePath } = readPkgUp.sync({
|
|
31
|
-
// eslint-disable-next-line no-undef
|
|
32
|
-
cwd: realpathSync(process.cwd()),
|
|
33
|
-
});
|
|
34
|
-
// eslint-disable-next-line max-len
|
|
35
|
-
const hasPackageProperty = (properties) => arrify(properties).some((property) => has(package_, property)); // eslint-disable-line lodash-fp/no-extraneous-function-wrapping
|
|
36
|
-
|
|
37
|
-
const hasPackageSubProperty = (packageProperty) => (properties) => hasPackageProperty(arrify(properties).map((p) => `${packageProperty}.${p}`));
|
|
38
|
-
|
|
39
|
-
function environmentIsSet(name) {
|
|
40
|
-
return (
|
|
41
|
-
// eslint-disable-next-line no-undef
|
|
42
|
-
process.env.hasOwnProperty(name) // eslint-disable-line no-prototype-builtins
|
|
43
|
-
// eslint-disable-next-line no-undef
|
|
44
|
-
&& process.env[name]
|
|
45
|
-
// eslint-disable-next-line no-undef
|
|
46
|
-
&& process.env[name] !== "undefined"
|
|
47
|
-
);
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
// eslint-disable-next-line unicorn/prevent-abbreviations
|
|
51
|
-
function parseEnvironment(name, def) {
|
|
52
|
-
if (environmentIsSet(name)) {
|
|
53
|
-
try {
|
|
54
|
-
// eslint-disable-next-line no-undef
|
|
55
|
-
return JSON.parse(process.env[name]);
|
|
56
|
-
} catch {
|
|
57
|
-
// eslint-disable-next-line no-undef
|
|
58
|
-
return process.env[name];
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
return def;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
const appDirectory = dirname(packagePath);
|
|
65
|
-
const fromRoot = (...p) => join(appDirectory, ...p);
|
|
66
|
-
const hasFile = (...p) => existsSync(fromRoot(...p));
|
|
67
|
-
const hasScript = hasPackageSubProperty("scripts");
|
|
68
|
-
const hasPeerDep = hasPackageSubProperty("peerDependencies");
|
|
69
|
-
const hasDep = hasPackageSubProperty("dependencies");
|
|
70
|
-
const hasDevelopmentDep = hasPackageSubProperty("devDependencies");
|
|
71
|
-
const hasAnyDep = (arguments_) => [hasDep, hasDevelopmentDep, hasPeerDep].some((function_) => function_(arguments_));
|
|
72
|
-
const hasTypescript = hasAnyDep("typescript") && hasFile("tsconfig.json");
|
|
73
|
-
|
|
74
|
-
module.exports = {
|
|
75
|
-
uniq: function uniq(array) {
|
|
76
|
-
return [...new Set(array)];
|
|
77
|
-
},
|
|
78
|
-
hasPkgProp: hasPackageProperty,
|
|
79
|
-
parseEnv: parseEnvironment,
|
|
80
|
-
pkg: package_,
|
|
81
|
-
appDirectory,
|
|
82
|
-
fromRoot,
|
|
83
|
-
hasFile,
|
|
84
|
-
hasScript,
|
|
85
|
-
hasPeerDep,
|
|
86
|
-
hasDep,
|
|
87
|
-
hasDevelopmentDep,
|
|
88
|
-
hasAnyDep,
|
|
89
|
-
hasTypescript,
|
|
90
|
-
};
|