@useinsider/eslint-config 1.3.0-beta.9 → 1.3.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.
Files changed (76) hide show
  1. package/README.md +53 -77
  2. package/dist/base-BQL2gY6S.cjs +1 -0
  3. package/dist/base-Dd7loOAV.js +29 -0
  4. package/dist/compat-CZyl_Sy0.cjs +1 -0
  5. package/dist/compat-DfBTP0AK.js +15 -0
  6. package/dist/configs/config/index.d.ts +1 -1
  7. package/dist/configs/javascript/index.d.ts +3 -0
  8. package/dist/configs/{dom → javascript-dom}/index.d.ts +1 -1
  9. package/dist/configs/{node → javascript-node}/index.d.ts +1 -1
  10. package/dist/configs/typescript/index.d.ts +1 -3
  11. package/dist/configs/typescript-dom/index.d.ts +1 -3
  12. package/dist/configs/typescript-node/index.d.ts +3 -0
  13. package/dist/configs/vue3-typescript/index.d.ts +1 -3
  14. package/dist/index-B45cvr6O.cjs +1 -0
  15. package/dist/index-BADS9AaT.js +33 -0
  16. package/dist/index-BNmy0szt.js +13 -0
  17. package/dist/index-BPS1S4-r.cjs +1 -0
  18. package/dist/{index-x9l2X-No.js → index-BVRhCxZ-.js} +9 -7
  19. package/dist/index-BhzsYT7t.js +13 -0
  20. package/dist/index-Bi0aTktN.js +34 -0
  21. package/dist/index-BnmYAvIK.js +17 -0
  22. package/dist/index-Brj-OnR2.cjs +1 -0
  23. package/dist/index-CCngt07f.cjs +1 -0
  24. package/dist/index-CDDb3mvA.js +54 -0
  25. package/dist/index-COJ71EEW.cjs +1 -0
  26. package/dist/index-CZG4LLz1.cjs +1 -0
  27. package/dist/index-C_hDS_Wu.js +13 -0
  28. package/dist/index-DI_UoSW4.cjs +1 -0
  29. package/dist/index-DLjVlGbl.cjs +1 -0
  30. package/dist/index-UFJ1LWlt.js +13 -0
  31. package/dist/index-ZUN0xFSs.cjs +1 -0
  32. package/dist/main.cjs +5 -1
  33. package/dist/main.d.ts +8 -4
  34. package/dist/main.js +102 -2
  35. package/dist/rules/core.cjs +1 -1
  36. package/dist/rules/core.d.ts +1 -1
  37. package/dist/rules/core.js +2 -28
  38. package/dist/rules/cspell.cjs +1 -1
  39. package/dist/rules/cspell.d.ts +1 -1
  40. package/dist/rules/cspell.js +3 -1
  41. package/dist/rules/importRules.cjs +1 -0
  42. package/dist/rules/importRules.d.ts +3 -0
  43. package/dist/rules/importRules.js +33 -0
  44. package/dist/rules/jsdoc.cjs +1 -1
  45. package/dist/rules/jsdoc.d.ts +1 -1
  46. package/dist/rules/jsdoc.js +47 -1
  47. package/dist/rules/stylistic.cjs +1 -1
  48. package/dist/rules/stylistic.d.ts +1 -1
  49. package/dist/rules/stylistic.js +2 -2
  50. package/dist/rules/typescript.cjs +1 -1
  51. package/dist/rules/typescript.d.ts +1 -1
  52. package/dist/rules/typescript.js +2 -1
  53. package/dist/rules/vue.d.ts +1 -1
  54. package/dist/rules/vue2.d.ts +1 -1
  55. package/dist/utils/compat.d.ts +4 -4
  56. package/dist/utils/ensureDependencies.d.ts +7 -0
  57. package/package.json +43 -31
  58. package/dist/base-BAede0cC.js +0 -2793
  59. package/dist/base-DxTgZSag.cjs +0 -1
  60. package/dist/compat-BMmtJ5BI.js +0 -15
  61. package/dist/compat-CkhpJ9YP.cjs +0 -1
  62. package/dist/index-Ac6Hw-uA.cjs +0 -1
  63. package/dist/index-B16ngeJj.js +0 -22
  64. package/dist/index-B9y7N-hx.js +0 -39
  65. package/dist/index-BNob5rb3.js +0 -34
  66. package/dist/index-BaFuYv5N.js +0 -22
  67. package/dist/index-BtHFk1z3.js +0 -41
  68. package/dist/index-C6lOnN-C.js +0 -32
  69. package/dist/index-CYJsMDkS.cjs +0 -1
  70. package/dist/index-FzjaDGwD.cjs +0 -1
  71. package/dist/index-Rmzbhrzc.cjs +0 -1
  72. package/dist/index-SyvyuQ5y.cjs +0 -1
  73. package/dist/index-TqgLVfW-.cjs +0 -1
  74. package/dist/index-qbptbq51.cjs +0 -1
  75. package/dist/main-BeBiQCVR.js +0 -63
  76. package/dist/main-tNBIB6QK.cjs +0 -1
package/dist/main.js CHANGED
@@ -1,4 +1,104 @@
1
- import { u as f } from "./main-BeBiQCVR.js";
1
+ import f from "node:fs";
2
+ import u from "node:path";
3
+ import { fileURLToPath as l } from "node:url";
4
+ import { merge as g } from "ts-deepmerge";
5
+ let p = !1;
6
+ const m = /* @__PURE__ */ new Set();
7
+ function d(e) {
8
+ const t = u.resolve(e, "package.json"), r = f.readFileSync(t, "utf8");
9
+ if (!r)
10
+ throw new Error(`Unable to locate package.json: ${t}`);
11
+ return JSON.parse(r);
12
+ }
13
+ function y() {
14
+ const e = d(process.cwd());
15
+ return {
16
+ ...e.dependencies,
17
+ ...e.devDependencies
18
+ };
19
+ }
20
+ function D() {
21
+ return d(l(new URL(
22
+ /* @vite-ignore */
23
+ "../",
24
+ import.meta.url
25
+ ))).dependencies;
26
+ }
27
+ const i = {
28
+ yarn: "yarn add --exact --dev",
29
+ pnpm: "pnpm add -E -D",
30
+ npm: "npm i -E -D"
31
+ };
32
+ function v() {
33
+ const e = (process.env.npm_config_user_agent || "").replace(/\W.*/, "");
34
+ return i[e] || i.npm;
35
+ }
36
+ function w() {
37
+ if (p)
38
+ return;
39
+ const e = y(), r = Object.entries(D()).filter(([n, c]) => !m.has(n) && (!e[n] || e[n] !== c));
40
+ if (!r.length)
41
+ return;
42
+ const o = r.map(([n, c]) => `${n}@${c.replace(/^\W+/, "")}`);
43
+ console.info("Missing dependencies detected:"), console.info(o.map((n) => ` - ${n}`).join(`
44
+ `)), console.info(`
45
+ Copy the following command and install the dependencies manually:`), console.info(`
46
+ ${v()} ${o.join(" ")}
47
+ `), process.exit(1);
48
+ }
49
+ function $(e) {
50
+ if (typeof e == "boolean") {
51
+ p = !0;
52
+ return;
53
+ }
54
+ e.forEach((t) => m.add(String(t)));
55
+ }
56
+ function s(...e) {
57
+ return g.withOptions({ mergeArrays: !1 }, ...e);
58
+ }
59
+ function x(...e) {
60
+ return e.flat().reduce((t, r) => s(t, r), {});
61
+ }
62
+ const a = {
63
+ async config() {
64
+ return import("./index-CixUmpPQ.js");
65
+ },
66
+ async javascript() {
67
+ return import("./index-BnmYAvIK.js");
68
+ },
69
+ async "javascript-node"() {
70
+ return import("./index-BhzsYT7t.js");
71
+ },
72
+ async "javascript-dom"() {
73
+ return import("./index-BNmy0szt.js");
74
+ },
75
+ async typescript() {
76
+ return import("./index-BADS9AaT.js");
77
+ },
78
+ async "typescript-node"() {
79
+ return import("./index-C_hDS_Wu.js");
80
+ },
81
+ async "typescript-dom"() {
82
+ return import("./index-UFJ1LWlt.js");
83
+ },
84
+ async vue3() {
85
+ return import("./index-Bi0aTktN.js");
86
+ },
87
+ async "vue3-typescript"() {
88
+ return import("./index-CDDb3mvA.js");
89
+ },
90
+ async vue2() {
91
+ return import("./index-BVRhCxZ-.js");
92
+ }
93
+ };
94
+ async function J(e) {
95
+ w();
96
+ const t = e.preset.map(async (n) => typeof a[n] == "function" && (await a[n]()).default).filter(Boolean), r = await Promise.all(t), o = s(r.reduce((n, c) => s(n, c), {}), e.config);
97
+ return o || Promise.reject(new Error("No config found"));
98
+ }
2
99
  export {
3
- f as default
100
+ s as merge,
101
+ x as mergeAll,
102
+ $ as silenceDependencyWarning,
103
+ J as useInsider
4
104
  };
@@ -1 +1 @@
1
- "use strict";const e={rules:{"arrow-parens":"off",camelcase:["error",{allow:["^\\$_"]}],"class-methods-use-this":"off","comma-dangle":"off","consistent-return":["error"],curly:["error","all"],"dot-notation":["error"],"function-paren-newline":"off","guard-for-in":"error","handle-callback-err":["error"],"import/extensions":["error",{css:"always",js:"never",json:"always",jsx:"never",sass:"always",scss:"always",svg:"always",ts:"never",tsx:"never",vue:"always"}],"import/no-cycle":"off","import/no-unresolved":"off","import/order":["error",{alphabetize:{caseInsensitive:!0,order:"asc"},groups:["index","builtin","object","type","external","parent","internal","sibling"],pathGroups:[{group:"internal",pattern:"@/**"}]}],"import/prefer-default-export":"off",indent:"off","max-len":"off","new-cap":["error"],"no-alert":["error"],"no-bitwise":["error",{allow:["~"]}],"no-caller":["error"],"no-case-declarations":["error"],"no-confusing-arrow":["error",{allowParens:!0}],"no-console":["error"],"no-debugger":["error"],"no-div-regex":["error"],"no-dupe-args":["error"],"no-dupe-keys":["error"],"no-duplicate-case":["error"],"no-else-return":["error"],"no-empty":["error"],"no-extra-bind":["error"],"no-extra-boolean-cast":"error","no-fallthrough":["error"],"no-implicit-coercion":["error",{boolean:!0,number:!0,string:!0}],"implicit-arrow-linebreak":"off","no-invalid-regexp":["error"],"no-iterator":["error"],"no-mixed-operators":"off","no-multi-spaces":"off","no-multi-str":["error"],"no-multiple-empty-lines":"off","no-native-reassign":"error","no-nested-ternary":["error"],"no-new":"off","no-new-object":["error"],"no-new-require":["error"],"no-param-reassign":["error",{props:!1}],"no-plusplus":"off","no-process-exit":["error"],"no-promise-executor-return":["error",{allowVoid:!0}],"no-return-assign":["error","except-parens"],"no-self-compare":["error"],"no-sequences":["error"],"no-shadow":["error",{allow:["state"]}],"no-undef":["error"],"no-underscore-dangle":"off","no-unexpected-multiline":["error"],"no-unreachable":["error"],"no-unused-vars":["error"],"no-use-before-define":"error","no-useless-call":["error"],"no-void":"off","no-with":["error"],"object-curly-newline":"off","object-shorthand":["error","always"],"padded-blocks":"off","padding-line-between-statements":["error",{blankLine:"always",next:"*",prev:["const","let","var","if","block-like","directive"]},{blankLine:"always",next:["const","let","var","if","directive","return","break","default","cjs-export","export"],prev:"*"},{blankLine:"any",next:["cjs-export","export"],prev:["cjs-export","export"]},{blankLine:"any",next:["const","let","var","directive"],prev:["const","let","var","directive"]},{blankLine:"never",next:["singleline-const","singleline-let","singleline-var"],prev:["singleline-const","singleline-let","singleline-var"]},{blankLine:"always",next:["multiline-block-like"],prev:["*"]},{blankLine:"always",next:["*"],prev:["multiline-block-like"]},{blankLine:"any",next:["case"],prev:["case"]},{blankLine:"any",next:["singleline-const","singleline-let","singleline-var"],prev:["cjs-import"]}],"prefer-const":["error",{destructuring:"all"}],"prefer-destructuring":["error"],radix:["error","as-needed"],semi:"off","space-before-function-paren":"off","space-in-parens":"off",strict:["error"],"use-isnan":["error"],"valid-typeof":["error"]}};module.exports=e;
1
+ "use strict";const r={rules:{"arrow-parens":"off",camelcase:["error",{allow:["^\\$_"]}],"class-methods-use-this":"off","comma-dangle":"off","consistent-return":["error"],curly:["error","all"],"dot-notation":["error"],"function-paren-newline":"off","guard-for-in":"error","handle-callback-err":["error"],indent:"off","max-len":"off","new-cap":["error"],"no-alert":["error"],"no-bitwise":["error",{allow:["~"]}],"no-caller":["error"],"no-case-declarations":["error"],"no-confusing-arrow":["error",{allowParens:!0}],"no-console":["error"],"no-debugger":["error"],"no-div-regex":["error"],"no-dupe-args":["error"],"no-dupe-keys":["error"],"no-duplicate-case":["error"],"no-else-return":["error"],"no-empty":["error"],"no-extra-bind":["error"],"no-extra-boolean-cast":"error","no-fallthrough":["error"],"no-implicit-coercion":["error",{boolean:!0,number:!0,string:!0}],"implicit-arrow-linebreak":"off","no-invalid-regexp":["error"],"no-iterator":["error"],"no-mixed-operators":"off","no-multi-spaces":"off","no-multi-str":["error"],"no-multiple-empty-lines":"off","no-native-reassign":"error","no-nested-ternary":["error"],"no-new":"off","no-new-object":["error"],"no-new-require":["error"],"no-param-reassign":["error",{props:!1}],"no-plusplus":"off","no-process-exit":["error"],"no-promise-executor-return":["error",{allowVoid:!0}],"no-return-assign":["error","except-parens"],"no-self-compare":["error"],"no-sequences":["error"],"no-shadow":["error",{allow:["state"]}],"no-undef":["error"],"no-underscore-dangle":"off","no-unexpected-multiline":["error"],"no-unreachable":["error"],"no-unused-vars":["error"],"no-use-before-define":"error","no-useless-call":["error"],"no-void":"off","no-with":["error"],"object-curly-newline":"off","object-shorthand":["error","always"],"padded-blocks":"off","padding-line-between-statements":["error",{blankLine:"always",next:"*",prev:["const","let","var","if","block-like","directive"]},{blankLine:"always",next:["const","let","var","if","directive","return","break","default","cjs-export","export"],prev:"*"},{blankLine:"any",next:["cjs-export","export"],prev:["cjs-export","export"]},{blankLine:"any",next:["const","let","var","directive"],prev:["const","let","var","directive"]},{blankLine:"never",next:["singleline-const","singleline-let","singleline-var"],prev:["singleline-const","singleline-let","singleline-var"]},{blankLine:"always",next:["multiline-block-like"],prev:["*"]},{blankLine:"always",next:["*"],prev:["multiline-block-like"]},{blankLine:"any",next:["case"],prev:["case"]},{blankLine:"any",next:["singleline-const","singleline-let","singleline-var"],prev:["cjs-import"]}],"prefer-const":["error",{destructuring:"all"}],"prefer-destructuring":["error"],radix:["error","as-needed"],semi:"off","space-before-function-paren":"off","space-in-parens":"off",strict:["error"],"use-isnan":["error"],"valid-typeof":["error"]}};module.exports=r;
@@ -1,3 +1,3 @@
1
1
  import type { Linter } from 'eslint';
2
- declare const _default: Linter.FlatConfig<Linter.RulesRecord>;
2
+ declare const _default: Linter.FlatConfig;
3
3
  export default _default;
@@ -1,4 +1,4 @@
1
- const e = {
1
+ const r = {
2
2
  rules: {
3
3
  "arrow-parens": "off",
4
4
  camelcase: ["error", {
@@ -12,32 +12,6 @@ const e = {
12
12
  "function-paren-newline": "off",
13
13
  "guard-for-in": "error",
14
14
  "handle-callback-err": ["error"],
15
- "import/extensions": ["error", {
16
- css: "always",
17
- js: "never",
18
- json: "always",
19
- jsx: "never",
20
- sass: "always",
21
- scss: "always",
22
- svg: "always",
23
- ts: "never",
24
- tsx: "never",
25
- vue: "always"
26
- }],
27
- "import/no-cycle": "off",
28
- "import/no-unresolved": "off",
29
- "import/order": ["error", {
30
- alphabetize: {
31
- caseInsensitive: !0,
32
- order: "asc"
33
- },
34
- groups: ["index", "builtin", "object", "type", "external", "parent", "internal", "sibling"],
35
- pathGroups: [{
36
- group: "internal",
37
- pattern: "@/**"
38
- }]
39
- }],
40
- "import/prefer-default-export": "off",
41
15
  indent: "off",
42
16
  "max-len": "off",
43
17
  "new-cap": ["error"],
@@ -166,5 +140,5 @@ const e = {
166
140
  }
167
141
  };
168
142
  export {
169
- e as default
143
+ r as default
170
144
  };
@@ -1 +1 @@
1
- "use strict";const e={rules:{"@cspell/spellchecker":"error"}};module.exports=e;
1
+ "use strict";const s={rules:{"@cspell/spellchecker":["error",{customWordListFile:"./cspell.json"}]}};module.exports=s;
@@ -1,3 +1,3 @@
1
1
  import type { Linter } from 'eslint';
2
- declare const _default: Linter.FlatConfig<Linter.RulesRecord>;
2
+ declare const _default: Linter.FlatConfig;
3
3
  export default _default;
@@ -1,6 +1,8 @@
1
1
  const e = {
2
2
  rules: {
3
- "@cspell/spellchecker": "error"
3
+ "@cspell/spellchecker": ["error", {
4
+ customWordListFile: "./cspell.json"
5
+ }]
4
6
  }
5
7
  };
6
8
  export {
@@ -0,0 +1 @@
1
+ "use strict";const e={rules:{"import/extensions":["error",{css:"always",js:"never",json:"always",jsx:"never",sass:"always",scss:"always",svg:"always",ts:"never",tsx:"never",vue:"always"}],"import/no-cycle":"off","import/no-unresolved":"off","import/order":["error",{alphabetize:{caseInsensitive:!0,order:"asc"},groups:["index","builtin","object","type","external","parent","internal","sibling"],pathGroups:[{group:"internal",pattern:"@/**"}]}],"import/prefer-default-export":"off"}};module.exports=e;
@@ -0,0 +1,3 @@
1
+ import type { Linter } from 'eslint';
2
+ declare const _default: Linter.FlatConfig;
3
+ export default _default;
@@ -0,0 +1,33 @@
1
+ const e = {
2
+ rules: {
3
+ "import/extensions": ["error", {
4
+ css: "always",
5
+ js: "never",
6
+ json: "always",
7
+ jsx: "never",
8
+ sass: "always",
9
+ scss: "always",
10
+ svg: "always",
11
+ ts: "never",
12
+ tsx: "never",
13
+ vue: "always"
14
+ }],
15
+ "import/no-cycle": "off",
16
+ "import/no-unresolved": "off",
17
+ "import/order": ["error", {
18
+ alphabetize: {
19
+ caseInsensitive: !0,
20
+ order: "asc"
21
+ },
22
+ groups: ["index", "builtin", "object", "type", "external", "parent", "internal", "sibling"],
23
+ pathGroups: [{
24
+ group: "internal",
25
+ pattern: "@/**"
26
+ }]
27
+ }],
28
+ "import/prefer-default-export": "off"
29
+ }
30
+ };
31
+ export {
32
+ e as default
33
+ };
@@ -1 +1 @@
1
- "use strict";const e={rules:{"jsdoc/check-param-names":["error"],"jsdoc/check-tag-names":["error"],"jsdoc/no-undefined-types":"off","jsdoc/require-param":["error",{enableRestElementFixer:!1,enableRootFixer:!1}],"jsdoc/require-jsdoc":["off"],"jsdoc/require-param-description":"off","jsdoc/require-param-type":["error"],"jsdoc/require-property-description":"off","jsdoc/require-returns":["error",{contexts:["TSInterfaceDeclaration","TSMethodSignature"],forceRequireReturn:!0,exemptedBy:["inheritdoc","watch"]}],"jsdoc/require-returns-check":["error"],"jsdoc/require-returns-description":"off","jsdoc/tag-lines":["error"],"jsdoc/valid-types":"off","jsdoc/check-types":["error"]}};module.exports=e;
1
+ "use strict";const e={rules:{"jsdoc/check-param-names":["error"],"jsdoc/check-tag-names":["error"],"jsdoc/no-undefined-types":"off","jsdoc/require-param":["error",{enableRestElementFixer:!1,enableRootFixer:!1}],"jsdoc/require-jsdoc":["off"],"jsdoc/require-param-description":"off","jsdoc/require-param-type":["error"],"jsdoc/require-property-description":"off","jsdoc/require-returns":["error",{contexts:["TSInterfaceDeclaration","TSMethodSignature"],forceRequireReturn:!0,exemptedBy:["inheritdoc","watch"]}],"jsdoc/require-returns-check":["error"],"jsdoc/require-returns-description":"off","jsdoc/tag-lines":["error"],"jsdoc/valid-types":"off","jsdoc/check-types":["error"],"jsdoc/no-multi-asterisks":["error"],"jsdoc/check-alignment":["error"],"jsdoc/sort-tags":["error",{linesBetween:1,tagSequence:[{tags:["todo","description","deprecated","namespace","private","protected","public","static","readonly","since","access","template","typedef","class","augments","mixes","extends","interface","this","constructor","alias","memberof","example","use","see","link","global","fires","listens","type","param","property","yields","returns","lends","override","todo"]}]}]}};module.exports=e;
@@ -1,3 +1,3 @@
1
1
  import type { Linter } from 'eslint';
2
- declare const _default: Linter.FlatConfig<Linter.RulesRecord>;
2
+ declare const _default: Linter.FlatConfig;
3
3
  export default _default;
@@ -20,7 +20,53 @@ const e = {
20
20
  "jsdoc/require-returns-description": "off",
21
21
  "jsdoc/tag-lines": ["error"],
22
22
  "jsdoc/valid-types": "off",
23
- "jsdoc/check-types": ["error"]
23
+ "jsdoc/check-types": ["error"],
24
+ "jsdoc/no-multi-asterisks": ["error"],
25
+ "jsdoc/check-alignment": ["error"],
26
+ "jsdoc/sort-tags": ["error", {
27
+ linesBetween: 1,
28
+ tagSequence: [{
29
+ tags: [
30
+ "todo",
31
+ "description",
32
+ "deprecated",
33
+ "namespace",
34
+ "private",
35
+ "protected",
36
+ "public",
37
+ "static",
38
+ "readonly",
39
+ "since",
40
+ "access",
41
+ "template",
42
+ "typedef",
43
+ "class",
44
+ "augments",
45
+ "mixes",
46
+ "extends",
47
+ "interface",
48
+ "this",
49
+ "constructor",
50
+ "alias",
51
+ "memberof",
52
+ "example",
53
+ "use",
54
+ "see",
55
+ "link",
56
+ "global",
57
+ "fires",
58
+ "listens",
59
+ "type",
60
+ "param",
61
+ "property",
62
+ "yields",
63
+ "returns",
64
+ "lends",
65
+ "override",
66
+ "todo"
67
+ ]
68
+ }]
69
+ }]
24
70
  }
25
71
  };
26
72
  export {
@@ -1 +1 @@
1
- "use strict";const e={rules:{"@stylistic/array-bracket-newline":["error","consistent"],"@stylistic/array-bracket-spacing":["error","never"],"@stylistic/array-element-newline":["error","consistent"],"@stylistic/arrow-parens":["error","as-needed"],"@stylistic/arrow-spacing":["error"],"@stylistic/brace-style":["error","1tbs"],"@stylistic/comma-dangle":["error",{arrays:"always-multiline",exports:"always-multiline",functions:"never",imports:"always-multiline",objects:"always-multiline",enums:"always-multiline",generics:"always-multiline",tuples:"always-multiline"}],"@stylistic/comma-spacing":["error"],"@stylistic/computed-property-spacing":["error"],"@stylistic/dot-location":["error","property"],"@stylistic/eol-last":["error","always"],"@stylistic/function-call-argument-newline":["error","consistent"],"@stylistic/function-call-spacing":["error","never"],"@stylistic/function-paren-newline":["error","consistent"],"@stylistic/implicit-arrow-linebreak":["error","beside"],"@stylistic/indent":["error",4,{SwitchCase:1,ignoredNodes:["PropertyDefinition[decorators]","TSUnionType"]}],"@stylistic/key-spacing":["error"],"@stylistic/keyword-spacing":["error"],"@stylistic/linebreak-style":["error","unix"],"@stylistic/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"@stylistic/max-len":["error",120,{ignoreComments:!0,ignoreRegExpLiterals:!0,ignoreStrings:!0,ignoreTemplateLiterals:!0,ignoreTrailingComments:!0,ignoreUrls:!0}],"@stylistic/max-statements-per-line":["error",{max:2}],"@stylistic/member-delimiter-style":["error",{multiline:{requireLast:!0},singleline:{requireLast:!1}}],"@stylistic/multiline-ternary":["error","always-multiline"],"@stylistic/new-parens":["error","always"],"@stylistic/no-extra-parens":["error","all",{allowParensAfterCommentPattern:"@type",enforceForArrowConditionals:!1,nestedBinaryExpressions:!1,returnAssign:!1}],"@stylistic/no-extra-semi":["error"],"@stylistic/no-floating-decimal":"error","@stylistic/no-mixed-operators":["error",{allowSamePrecedence:!0,groups:[["&","|","^","~","<<",">>",">>>"],["==","!=","===","!==",">",">=","<","<="],["&&","||"],["in","instanceof"]]}],"@stylistic/no-mixed-spaces-and-tabs":["error"],"@stylistic/no-multi-spaces":["error"],"@stylistic/no-multiple-empty-lines":["error",{max:1,maxEOF:0}],"@stylistic/no-trailing-spaces":["error"],"@stylistic/no-whitespace-before-property":["error"],"@stylistic/object-curly-newline":["error",{consistent:!0}],"@stylistic/object-curly-spacing":["error","always"],"@stylistic/padded-blocks":["error","never"],"@stylistic/quote-props":["error","as-needed"],"@stylistic/quotes":["error","single",{avoidEscape:!0}],"@stylistic/rest-spread-spacing":["error","never"],"@stylistic/semi":["error"],"@stylistic/semi-spacing":["error",{after:!0,before:!1}],"@stylistic/semi-style":["error","last"],"@stylistic/space-before-blocks":["error"],"@stylistic/space-before-function-paren":["error",{anonymous:"always",named:"always"}],"@stylistic/space-in-parens":["error","never"],"@stylistic/space-infix-ops":["error"],"@stylistic/spaced-comment":["error","always",{markers:["/"]}],"@stylistic/template-curly-spacing":["error","never"],"@stylistic/template-tag-spacing":["error","never"],"@stylistic/type-annotation-spacing":["error"],"@stylistic/type-generic-spacing":["error"]}};module.exports=e;
1
+ "use strict";const e={rules:{"@stylistic/array-bracket-newline":["error","consistent"],"@stylistic/array-bracket-spacing":["error","never"],"@stylistic/array-element-newline":["error","consistent"],"@stylistic/arrow-parens":["error","as-needed"],"@stylistic/arrow-spacing":["error"],"@stylistic/brace-style":["error","1tbs"],"@stylistic/comma-dangle":["error",{arrays:"always-multiline",exports:"always-multiline",functions:"never",imports:"always-multiline",objects:"always-multiline",enums:"always-multiline",generics:"always-multiline",tuples:"always-multiline"}],"@stylistic/comma-spacing":["error"],"@stylistic/computed-property-spacing":["error"],"@stylistic/dot-location":["error","property"],"@stylistic/eol-last":["error","always"],"@stylistic/function-call-argument-newline":["error","consistent"],"@stylistic/function-call-spacing":["error","never"],"@stylistic/function-paren-newline":["error","consistent"],"@stylistic/implicit-arrow-linebreak":["error","beside"],"@stylistic/indent":["error",4,{SwitchCase:1,ignoredNodes:["PropertyDefinition[decorators]","TSUnionType"]}],"@stylistic/key-spacing":["error"],"@stylistic/keyword-spacing":["error"],"@stylistic/linebreak-style":["error","unix"],"@stylistic/lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"@stylistic/max-len":["error",120,{ignoreComments:!0,ignoreRegExpLiterals:!0,ignoreTemplateLiterals:!0,ignoreTrailingComments:!0,ignoreUrls:!0}],"@stylistic/max-statements-per-line":["error",{max:2}],"@stylistic/member-delimiter-style":["error",{multiline:{requireLast:!0},singleline:{requireLast:!1}}],"@stylistic/multiline-ternary":["error","always-multiline"],"@stylistic/new-parens":["error","always"],"@stylistic/no-extra-parens":["error","all",{allowParensAfterCommentPattern:"@type",enforceForArrowConditionals:!1,nestedBinaryExpressions:!1,returnAssign:!1}],"@stylistic/no-extra-semi":["error"],"@stylistic/no-floating-decimal":"error","@stylistic/no-mixed-operators":["error",{allowSamePrecedence:!0,groups:[["&","|","^","~","<<",">>",">>>"],["==","!=","===","!==",">",">=","<","<="],["&&","||"],["in","instanceof"]]}],"@stylistic/no-mixed-spaces-and-tabs":["error"],"@stylistic/no-multi-spaces":["error"],"@stylistic/no-multiple-empty-lines":["error",{max:1,maxEOF:0,maxBOF:0}],"@stylistic/no-trailing-spaces":["error"],"@stylistic/no-whitespace-before-property":["error"],"@stylistic/object-curly-newline":["error",{consistent:!0}],"@stylistic/object-curly-spacing":["error","always"],"@stylistic/padded-blocks":["error","never"],"@stylistic/quote-props":["error","as-needed"],"@stylistic/quotes":["error","single",{avoidEscape:!0}],"@stylistic/rest-spread-spacing":["error","never"],"@stylistic/semi":["error"],"@stylistic/semi-spacing":["error",{after:!0,before:!1}],"@stylistic/semi-style":["error","last"],"@stylistic/space-before-blocks":["error"],"@stylistic/space-before-function-paren":["error",{anonymous:"always",named:"always"}],"@stylistic/space-in-parens":["error","never"],"@stylistic/space-infix-ops":["error"],"@stylistic/spaced-comment":["error","always",{markers:["/"]}],"@stylistic/template-curly-spacing":["error","never"],"@stylistic/template-tag-spacing":["error","never"],"@stylistic/type-annotation-spacing":["error"],"@stylistic/type-generic-spacing":["error"]}};module.exports=e;
@@ -1,3 +1,3 @@
1
1
  import type { Linter } from 'eslint';
2
- declare const _default: Linter.FlatConfig<Linter.RulesRecord>;
2
+ declare const _default: Linter.FlatConfig;
3
3
  export default _default;
@@ -40,7 +40,6 @@ const e = {
40
40
  "@stylistic/max-len": ["error", 120, {
41
41
  ignoreComments: !0,
42
42
  ignoreRegExpLiterals: !0,
43
- ignoreStrings: !0,
44
43
  ignoreTemplateLiterals: !0,
45
44
  ignoreTrailingComments: !0,
46
45
  ignoreUrls: !0
@@ -79,7 +78,8 @@ const e = {
79
78
  "@stylistic/no-multi-spaces": ["error"],
80
79
  "@stylistic/no-multiple-empty-lines": ["error", {
81
80
  max: 1,
82
- maxEOF: 0
81
+ maxEOF: 0,
82
+ maxBOF: 0
83
83
  }],
84
84
  "@stylistic/no-trailing-spaces": ["error"],
85
85
  "@stylistic/no-whitespace-before-property": ["error"],
@@ -1 +1 @@
1
- "use strict";const e={indent:"off","no-undef":"off","no-shadow":"off","@typescript-eslint/comma-dangle":"off","no-extra-parens":"off","@typescript-eslint/no-extra-parens":"off","@typescript-eslint/space-before-function-paren":"off","no-unused-vars":"off","no-useless-constructor":"off","@typescript-eslint/indent":"off",semi:"off","@typescript-eslint/semi":"off","react/jsx-filename-extension":"off","no-use-before-define":"off","@typescript-eslint/lines-between-class-members":"off","@typescript-eslint/comma-spacing":"off","@typescript-eslint/space-before-blocks":"off","@typescript-eslint/object-curly-spacing":"off"},s={rules:{...e,"@typescript-eslint/no-shadow":"error","@typescript-eslint/no-unused-vars":["error"],"@typescript-eslint/no-useless-constructor":["error"],"@typescript-eslint/array-type":["error",{default:"array",readonly:"array"}],"@typescript-eslint/no-misused-promises":["error",{checksVoidReturn:{arguments:!1}}],"@typescript-eslint/no-use-before-define":["error"]}};module.exports=s;
1
+ "use strict";const e={indent:"off","no-undef":"off","no-shadow":"off","@typescript-eslint/comma-dangle":"off","no-extra-parens":"off","@typescript-eslint/no-extra-parens":"off","@typescript-eslint/space-before-function-paren":"off","no-unused-vars":"off","no-useless-constructor":"off","@typescript-eslint/indent":"off",semi:"off","@typescript-eslint/semi":"off","react/jsx-filename-extension":"off","no-use-before-define":"off","@typescript-eslint/lines-between-class-members":"off","@typescript-eslint/comma-spacing":"off","@typescript-eslint/space-before-blocks":"off","@typescript-eslint/object-curly-spacing":"off","no-redeclare":"off"},s={rules:{...e,"@typescript-eslint/no-shadow":"error","@typescript-eslint/no-unused-vars":["error"],"@typescript-eslint/no-useless-constructor":["error"],"@typescript-eslint/array-type":["error",{default:"array",readonly:"array"}],"@typescript-eslint/no-misused-promises":["error",{checksVoidReturn:{arguments:!1}}],"@typescript-eslint/no-use-before-define":["error"]}};module.exports=s;
@@ -1,3 +1,3 @@
1
1
  import type { Linter } from 'eslint';
2
- declare const _default: Linter.FlatConfig<Linter.RulesRecord>;
2
+ declare const _default: Linter.FlatConfig;
3
3
  export default _default;
@@ -16,7 +16,8 @@ const e = {
16
16
  "@typescript-eslint/lines-between-class-members": "off",
17
17
  "@typescript-eslint/comma-spacing": "off",
18
18
  "@typescript-eslint/space-before-blocks": "off",
19
- "@typescript-eslint/object-curly-spacing": "off"
19
+ "@typescript-eslint/object-curly-spacing": "off",
20
+ "no-redeclare": "off"
20
21
  }, s = {
21
22
  rules: {
22
23
  ...e,
@@ -1,3 +1,3 @@
1
1
  import type { Linter } from 'eslint';
2
- declare const _default: Linter.FlatConfig<Linter.RulesRecord>;
2
+ declare const _default: Linter.FlatConfig;
3
3
  export default _default;
@@ -1,3 +1,3 @@
1
1
  import type { Linter } from 'eslint';
2
- declare const _default: Linter.FlatConfig<Linter.RulesRecord>;
2
+ declare const _default: Linter.FlatConfig;
3
3
  export default _default;
@@ -1,7 +1,7 @@
1
1
  import { FlatCompat } from '@eslint/eslintrc';
2
2
  export declare const compat: {
3
- extends: (...configsToExtend: Parameters<FlatCompat['extends']>) => import("eslint").Linter.FlatConfig<import("eslint").Linter.RulesRecord>;
4
- config: (eslintrcConfig: Parameters<FlatCompat['config']>[0]) => import("eslint").Linter.FlatConfig<import("eslint").Linter.RulesRecord>;
5
- plugins: (...plugins: Parameters<FlatCompat['plugins']>) => import("eslint").Linter.FlatConfig<import("eslint").Linter.RulesRecord>;
6
- env: (envConfig: Parameters<FlatCompat['env']>[0]) => import("eslint").Linter.FlatConfig<import("eslint").Linter.RulesRecord>;
3
+ extends: (...configsToExtend: Parameters<FlatCompat["extends"]>) => import("eslint").Linter.FlatConfig<import("eslint").Linter.RulesRecord>;
4
+ config: (eslintrcConfig: Parameters<FlatCompat["config"]>[0]) => import("eslint").Linter.FlatConfig<import("eslint").Linter.RulesRecord>;
5
+ plugins: (...plugins: Parameters<FlatCompat["plugins"]>) => import("eslint").Linter.FlatConfig<import("eslint").Linter.RulesRecord>;
6
+ env: (envConfig: Parameters<FlatCompat["env"]>[0]) => import("eslint").Linter.FlatConfig<import("eslint").Linter.RulesRecord>;
7
7
  };
@@ -0,0 +1,7 @@
1
+ export declare function ensureDependencies(): void;
2
+ export declare function silenceDependencyWarning(
3
+ /**
4
+ * Pass `true` to silence all dependency warnings.
5
+ */
6
+ all: boolean): void;
7
+ export declare function silenceDependencyWarning(dependencies: string[]): void;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@useinsider/eslint-config",
3
3
  "type": "module",
4
- "version": "1.3.0-beta.9",
4
+ "version": "1.3.0",
5
5
  "description": "A collection of ESLint configurations provided by @useinsider, offering support for various environments including Vanilla JS, TypeScript, and framework-specific setups such as Vue 3.",
6
6
  "keywords": [
7
7
  "useinsider",
@@ -18,12 +18,16 @@
18
18
  ],
19
19
  "author": "Sahin Deniz <sahin.deniz@useinsider.com>",
20
20
  "license": "MIT",
21
- "packageManager": "pnpm@9.1.1",
21
+ "packageManager": "pnpm@9.7.1",
22
22
  "scripts": {
23
23
  "dev": "vite",
24
24
  "build": "vite build",
25
+ "watch": "vite build --mode development --watch",
25
26
  "emit-types": "tsc --declaration -p tsconfig.lib.json",
26
- "check-types": "tsc --noEmit -p tsconfig.json",
27
+ "check-types": "pnpm check-types:lib && pnpm check-types:node && pnpm check-types:test",
28
+ "check-types:lib": "tsc --noEmit -p tsconfig.lib.json",
29
+ "check-types:node": "tsc --noEmit -p tsconfig.node.json",
30
+ "check-types:test": "tsc --noEmit -p tsconfig.test.json",
27
31
  "prelint": "pnpm build",
28
32
  "lint": "eslint .",
29
33
  "lint:fix": "pnpm lint --fix",
@@ -31,7 +35,7 @@
31
35
  "test": "vitest",
32
36
  "test:ci": "pnpm test",
33
37
  "prerelease": "pnpm build",
34
- "release": "semantic-release"
38
+ "release": "semantic-release -e semantic-release-monorepo"
35
39
  },
36
40
  "homepage": "https://github.com/useinsider/config/tree/main/packages/eslint-config#readme",
37
41
  "repository": {
@@ -63,47 +67,55 @@
63
67
  "pnpm": ">=9"
64
68
  },
65
69
  "dependencies": {
66
- "@cspell/eslint-plugin": "6.19.2",
67
- "@eslint/eslintrc": "3.1.0",
68
- "@stylistic/eslint-plugin": "2.1.0",
69
- "@stylistic/eslint-plugin-migrate": "2.1.0",
70
- "eslint": "8.57.0",
70
+ "@cspell/eslint-plugin": "8.16.0",
71
+ "@eslint/eslintrc": "3.2.0",
72
+ "@eslint/js": "8.57.1",
73
+ "@stylistic/eslint-plugin": "2.10.1",
74
+ "@stylistic/eslint-plugin-migrate": "2.10.1",
75
+ "@types/eslint": "8.56.12",
76
+ "@types/eslint__eslintrc": "2.1.2",
77
+ "@types/eslint__js": "8.42.3",
78
+ "@typescript-eslint/eslint-plugin": "7.18.0",
79
+ "@typescript-eslint/parser": "7.18.0",
80
+ "eslint": "8.57.1",
71
81
  "eslint-config-airbnb-base": "15.0.0",
72
- "eslint-plugin-import": "2.29.1",
73
- "eslint-plugin-jsdoc": "48.2.5",
74
- "tslib": "2.6.2"
82
+ "eslint-config-airbnb-typescript": "18.0.0",
83
+ "eslint-import-resolver-typescript": "3.6.3",
84
+ "eslint-plugin-import": "2.31.0",
85
+ "eslint-plugin-jsdoc": "50.5.0",
86
+ "globals": "15.14.0",
87
+ "ts-deepmerge": "7.0.1",
88
+ "typescript": "5.6.2",
89
+ "typescript-eslint": "8.14.0"
75
90
  },
76
91
  "devDependencies": {
77
- "@eslint/js": "8.57.0",
78
92
  "@rollup/plugin-typescript": "11.1.6",
79
93
  "@semantic-release/changelog": "6.0.3",
80
94
  "@semantic-release/git": "10.0.1",
81
- "@types/eslint": "8.56.10",
82
- "@types/eslint__eslintrc": "2.1.1",
83
- "@types/eslint__js": "8.42.3",
84
95
  "@types/fs-extra": "11.0.4",
85
- "@types/node": "20.12.12",
86
- "@typescript-eslint/eslint-plugin": "7.9.0",
96
+ "@types/node": "22.9.0",
87
97
  "@useinsider/release-config": "workspace:*",
88
- "@vitest/coverage-v8": "1.6.0",
98
+ "@vitest/coverage-v8": "2.1.5",
89
99
  "@vue/eslint-config-typescript": "13.0.0",
90
- "eslint-import-resolver-typescript": "3.6.1",
91
- "eslint-plugin-vue": "9.26.0",
92
- "eslint-plugin-vue-scoped-css": "2.8.0",
100
+ "eslint-plugin-vue": "9.31.0",
101
+ "eslint-plugin-vue-scoped-css": "2.8.1",
93
102
  "fs-extra": "11.2.0",
94
- "globals": "15.2.0",
95
103
  "rollup-plugin-typescript-paths": "1.5.0",
96
104
  "rollup-plugin-visualizer": "5.12.0",
97
- "semantic-release": "23.1.1",
105
+ "semantic-release": "24.0.0",
98
106
  "semantic-release-monorepo": "8.0.2",
99
- "ts-deepmerge": "7.0.0",
100
- "vite": "5.2.11",
101
- "vite-tsconfig-paths": "4.3.2",
102
- "vitest": "1.6.0",
103
- "vue": "3.4.27",
104
- "vue-eslint-parser": "9.4.2"
107
+ "tslib": "2.6.3",
108
+ "vite": "5.4.11",
109
+ "vite-tsconfig-paths": "5.1.2",
110
+ "vitest": "2.1.5",
111
+ "vue": "3.5.13",
112
+ "vue-eslint-parser": "9.4.3"
105
113
  },
106
114
  "optionalDependencies": {
107
- "@rushstack/eslint-patch": ">=1.10.3"
115
+ "@rushstack/eslint-patch": ">=1.10.4",
116
+ "@vue/eslint-config-typescript": "13.0.0",
117
+ "eslint-plugin-vue": "9.31.0",
118
+ "eslint-plugin-vue-scoped-css": "2.8.1",
119
+ "vue-eslint-parser": "9.4.3"
108
120
  }
109
121
  }