@fewangsit/eslint-config-vue-code-standard 1.0.3 → 1.0.8

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 (2) hide show
  1. package/index.js +70 -2
  2. package/package.json +1 -1
package/index.js CHANGED
@@ -64,15 +64,43 @@ var vue_default = {
64
64
  order: ["script[setup]", "script", "template", "style"]
65
65
  }
66
66
  ],
67
+ "vue/component-definition-name-casing": ["error", "PascalCase"],
68
+ "vue/component-name-in-template-casing": [
69
+ "error",
70
+ "PascalCase",
71
+ {
72
+ registeredComponentsOnly: false,
73
+ ignores: [
74
+ "/^transition/",
75
+ "/^keep-alive/",
76
+ "/^teleport/",
77
+ "/^suspense/",
78
+ "/^component/",
79
+ "/^slot/",
80
+ "router-view",
81
+ "router-link"
82
+ ]
83
+ }
84
+ ],
67
85
  "vue/custom-event-name-casing": "error",
86
+ "vue/component-api-style": ["error", ["script-setup", "composition"]],
68
87
  "vue/define-emits-declaration": ["error", "type-based"],
69
88
  "vue/define-macros-order": [
70
89
  "error",
71
90
  {
72
- order: ["defineProps", "defineEmits", "defineModel"],
91
+ order: [
92
+ "defineOptions",
93
+ "defineProps",
94
+ "defineEmits",
95
+ "defineModel",
96
+ "defineSlots"
97
+ ],
73
98
  defineExposeLast: true
74
99
  }
75
100
  ],
101
+ "vue/no-import-compiler-macros": "error",
102
+ "vue/no-multiple-objects-in-class": "error",
103
+ "vue/no-negated-v-if-condition": "error",
76
104
  "vue/define-props-declaration": ["error", "type-based"],
77
105
  "vue/html-comment-content-newline": "error",
78
106
  "vue/html-self-closing": [
@@ -87,6 +115,13 @@ var vue_default = {
87
115
  math: "always"
88
116
  }
89
117
  ],
118
+ "vue/match-component-file-name": [
119
+ "error",
120
+ {
121
+ extensions: ["vue"],
122
+ shouldMatchCase: true
123
+ }
124
+ ],
90
125
  "vue/max-attributes-per-line": "off",
91
126
  "vue/multi-word-component-names": "off",
92
127
  "vue/new-line-between-multi-line-property": "error",
@@ -94,16 +129,45 @@ var vue_default = {
94
129
  "vue/no-dupe-keys": "error",
95
130
  "vue/no-export-in-script-setup": "error",
96
131
  "vue/no-lone-template": "error",
132
+ "vue/no-multi-spaces": "error",
97
133
  "vue/no-reserved-component-names": "error",
98
134
  "vue/no-spaces-around-equal-signs-in-attribute": ["error"],
99
135
  "vue/no-static-inline-styles": ["error", { allowBinding: false }],
100
136
  "vue/no-unused-emit-declarations": "error",
101
137
  "vue/no-unused-refs": "error",
138
+ "vue/no-use-v-else-with-v-for": "error",
102
139
  "vue/no-useless-v-bind": [
103
140
  "error",
104
141
  { ignoreIncludesComment: false, ignoreStringEscape: false }
105
142
  ],
143
+ "vue/order-in-components": [
144
+ "error",
145
+ {
146
+ order: [
147
+ ["props", "propsData"],
148
+ "emits",
149
+ "model",
150
+ "slots",
151
+ ["components", "directives", "filters"],
152
+ "LIFECYCLE_HOOKS",
153
+ "ROUTER_GUARDS",
154
+ "inject",
155
+ "data",
156
+ "computed",
157
+ "provide",
158
+ "methods",
159
+ ["watch", "watchQuery"],
160
+ ["template", "render"],
161
+ "renderError",
162
+ "expose"
163
+ ]
164
+ }
165
+ ],
106
166
  "vue/padding-line-between-blocks": ["error", "always"],
167
+ "vue/padding-line-between-tags": [
168
+ "error",
169
+ [{ blankLine: "always", prev: "*", next: "*" }]
170
+ ],
107
171
  "vue/prefer-import-from-vue": "error",
108
172
  "vue/prefer-true-attribute-shorthand": ["error", "always"],
109
173
  "vue/prop-name-casing": ["error", "camelCase"],
@@ -115,13 +179,17 @@ var vue_default = {
115
179
  ],
116
180
  "vue/require-typed-ref": "error",
117
181
  "vue/singleline-html-element-content-newline": "off",
182
+ "vue/this-in-template": ["error", "never"],
183
+ "vue/v-bind-style": ["error", "shorthand"],
118
184
  "vue/v-on-event-hyphenation": [
119
185
  "error",
120
186
  "always",
121
187
  {
122
188
  autofix: true
123
189
  }
124
- ]
190
+ ],
191
+ "vue/v-on-style": ["error", "shorthand"],
192
+ "vue/v-slot-style": ["error", "shorthand"]
125
193
  };
126
194
 
127
195
  // index.js
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fewangsit/eslint-config-vue-code-standard",
3
- "version": "1.0.3",
3
+ "version": "1.0.8",
4
4
  "description": "A shareable ESLint configuration for standardized Vue TypeScript code for Wangsti FE Developers.",
5
5
  "type": "module",
6
6
  "main": "index.cjs",