@@ -9,13 +9,29 @@ import { defineConfigWithVueTs, vueTsConfigs } from "@vue/eslint-config-typescri
99// This returns an ARRAY of config objects optimized for Vue+TS
1010const vueTsGeneratedConfigs = defineConfigWithVueTs ( pluginVue . configs [ "flat/recommended" ] , vueTsConfigs . recommended , {
1111 rules : {
12- "@typescript-eslint/no-explicit-any" : "warn" ,
13- "vue/multi-word-component-names" : "warn" ,
12+ // --- OFF rules ---
13+ // TODO: enable this rule after https://github.com/threefoldtech/tfgrid-sdk-ts/issues/4075
14+ "@typescript-eslint/no-explicit-any" : "off" ,
1415 "vue/no-v-text-v-html-on-component" : "off" ,
15- "@typescript-eslint/no-unused-expressions" : "warn" ,
16- "@typescript-eslint/no-unused-vars" : `warn` ,
16+ "vue/max-attributes-per-line" : "off" ,
17+ "vue/no-v-html" : "off" ,
18+ "vue/singleline-html-element-content-newline" : "off" ,
19+ "vue/html-self-closing" : "off" ,
20+ "vue/html-indent" : "off" ,
21+ "vue/require-explicit-emits" : "off" ,
22+ "vue/require-default-prop" : "off" ,
23+ "@typescript-eslint/no-unused-expressions" : "off" ,
24+
25+ // --- WARN rules ---
1726 "@typescript-eslint/no-duplicate-enum-values" : "warn" ,
18- "vue/no-dupe-keys" : "warn" ,
27+
28+ // --- ERROR rules ---
29+ "vue/multi-word-component-names" : "error" ,
30+ "@typescript-eslint/no-unused-vars" : "error" ,
31+ "vue/no-template-shadow" : "error" ,
32+ "vue/multiline-html-element-content-newline" : "error" ,
33+ "vue/component-definition-name-casing" : "error" ,
34+ "vue/no-dupe-keys" : "error" ,
1935 } ,
2036} ) ;
2137
@@ -62,23 +78,24 @@ export default [
6278 } ,
6379 rules : {
6480 ...tseslint . configs . eslintRecommended . rules ,
65- "@typescript-eslint/no-unused-vars" : "warn" ,
6681
82+ // --- OFF rules ---
6783 "no-console" : "off" ,
68- "prettier/prettier" : "warn" ,
69- "simple-import-sort/imports" : "warn" ,
70-
7184 "@typescript-eslint/no-var-requires" : "off" ,
85+ // TODO: enable this rule after https://github.com/threefoldtech/tfgrid-sdk-ts/issues/4075
7286 "@typescript-eslint/no-explicit-any" : "off" ,
7387 "@typescript-eslint/no-empty-function" : "off" ,
7488 "@typescript-eslint/ban-ts-comment" : "off" ,
7589 "@typescript-eslint/no-non-null-assertion" : "off" ,
90+ "@typescript-eslint/no-empty-object-type" : "off" ,
91+
92+ // --- WARN rules ---
93+ "prettier/prettier" : "warn" ,
7694 "prefer-spread" : "warn" ,
7795 "@typescript-eslint/no-restricted-types" : [
7896 "warn" ,
7997 {
8098 types : {
81- "{}" : "Use `unknown` instead." ,
8299 "Function" : "Use specific function types instead." ,
83100 "Object" : "Use `Record<string, unknown>` or specific object types instead." ,
84101 "String" : "Use `string` instead." ,
@@ -87,9 +104,12 @@ export default [
87104 } ,
88105 } ,
89106 ] ,
90- "@typescript-eslint/no-empty-object-type" : "warn" ,
91107 "@typescript-eslint/no-unsafe-function-type" : "warn" ,
92108 "@typescript-eslint/no-wrapper-object-types" : "warn" ,
109+
110+ // --- ERROR rules ---
111+ "@typescript-eslint/no-unused-vars" : "error" ,
112+ "simple-import-sort/imports" : "error" ,
93113 } ,
94114 } ,
95115 ...vueConfig ,
0 commit comments