@vinicunca/eslint-config 3.5.2 → 3.6.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/index.d.ts +32 -64
- package/dist/index.js +6 -5
- package/package.json +4 -4
package/dist/index.d.ts
CHANGED
|
@@ -7932,12 +7932,6 @@ interface RuleOptions {
|
|
|
7932
7932
|
* @see https://eslint.vuejs.org/rules/component-options-name-casing.html
|
|
7933
7933
|
*/
|
|
7934
7934
|
'vue/component-options-name-casing'?: Linter.RuleEntry<VueComponentOptionsNameCasing>
|
|
7935
|
-
/**
|
|
7936
|
-
* enforce order of component top-level elements
|
|
7937
|
-
* @see https://eslint.vuejs.org/rules/component-tags-order.html
|
|
7938
|
-
* @deprecated
|
|
7939
|
-
*/
|
|
7940
|
-
'vue/component-tags-order'?: Linter.RuleEntry<VueComponentTagsOrder>
|
|
7941
7935
|
/**
|
|
7942
7936
|
* enforce specific casing for custom event name
|
|
7943
7937
|
* @see https://eslint.vuejs.org/rules/custom-event-name-casing.html
|
|
@@ -8004,7 +7998,7 @@ interface RuleOptions {
|
|
|
8004
7998
|
*/
|
|
8005
7999
|
'vue/html-closing-bracket-spacing'?: Linter.RuleEntry<VueHtmlClosingBracketSpacing>
|
|
8006
8000
|
/**
|
|
8007
|
-
* enforce unified line
|
|
8001
|
+
* enforce unified line break in HTML comments
|
|
8008
8002
|
* @see https://eslint.vuejs.org/rules/html-comment-content-newline.html
|
|
8009
8003
|
*/
|
|
8010
8004
|
'vue/html-comment-content-newline'?: Linter.RuleEntry<VueHtmlCommentContentNewline>
|
|
@@ -8314,11 +8308,15 @@ interface RuleOptions {
|
|
|
8314
8308
|
*/
|
|
8315
8309
|
'vue/no-extra-parens'?: Linter.RuleEntry<VueNoExtraParens>
|
|
8316
8310
|
/**
|
|
8317
|
-
*
|
|
8318
|
-
* @see https://eslint.vuejs.org/rules/no-
|
|
8319
|
-
* @deprecated
|
|
8311
|
+
* Disallow shorthand type conversions in `<template>`
|
|
8312
|
+
* @see https://eslint.vuejs.org/rules/no-implicit-coercion.html
|
|
8320
8313
|
*/
|
|
8321
|
-
'vue/no-
|
|
8314
|
+
'vue/no-implicit-coercion'?: Linter.RuleEntry<VueNoImplicitCoercion>
|
|
8315
|
+
/**
|
|
8316
|
+
* disallow importing Vue compiler macros
|
|
8317
|
+
* @see https://eslint.vuejs.org/rules/no-import-compiler-macros.html
|
|
8318
|
+
*/
|
|
8319
|
+
'vue/no-import-compiler-macros'?: Linter.RuleEntry<[]>
|
|
8322
8320
|
/**
|
|
8323
8321
|
* disallow irregular whitespace in `.vue` files
|
|
8324
8322
|
* @see https://eslint.vuejs.org/rules/no-irregular-whitespace.html
|
|
@@ -8345,12 +8343,12 @@ interface RuleOptions {
|
|
|
8345
8343
|
*/
|
|
8346
8344
|
'vue/no-multi-spaces'?: Linter.RuleEntry<VueNoMultiSpaces>
|
|
8347
8345
|
/**
|
|
8348
|
-
* disallow
|
|
8346
|
+
* disallow passing multiple objects in an array to class
|
|
8349
8347
|
* @see https://eslint.vuejs.org/rules/no-multiple-objects-in-class.html
|
|
8350
8348
|
*/
|
|
8351
8349
|
'vue/no-multiple-objects-in-class'?: Linter.RuleEntry<[]>
|
|
8352
8350
|
/**
|
|
8353
|
-
* disallow
|
|
8351
|
+
* disallow passing multiple arguments to scoped slots
|
|
8354
8352
|
* @see https://eslint.vuejs.org/rules/no-multiple-slot-args.html
|
|
8355
8353
|
*/
|
|
8356
8354
|
'vue/no-multiple-slot-args'?: Linter.RuleEntry<[]>
|
|
@@ -8379,12 +8377,6 @@ interface RuleOptions {
|
|
|
8379
8377
|
* @see https://eslint.vuejs.org/rules/no-ref-as-operand.html
|
|
8380
8378
|
*/
|
|
8381
8379
|
'vue/no-ref-as-operand'?: Linter.RuleEntry<[]>
|
|
8382
|
-
/**
|
|
8383
|
-
* disallow usages of ref objects that can lead to loss of reactivity
|
|
8384
|
-
* @see https://eslint.vuejs.org/rules/no-ref-object-destructure.html
|
|
8385
|
-
* @deprecated
|
|
8386
|
-
*/
|
|
8387
|
-
'vue/no-ref-object-destructure'?: Linter.RuleEntry<[]>
|
|
8388
8380
|
/**
|
|
8389
8381
|
* disallow usages of ref objects that can lead to loss of reactivity
|
|
8390
8382
|
* @see https://eslint.vuejs.org/rules/no-ref-object-reactivity-loss.html
|
|
@@ -8475,12 +8467,6 @@ interface RuleOptions {
|
|
|
8475
8467
|
* @see https://eslint.vuejs.org/rules/no-root-v-if.html
|
|
8476
8468
|
*/
|
|
8477
8469
|
'vue/no-root-v-if'?: Linter.RuleEntry<[]>
|
|
8478
|
-
/**
|
|
8479
|
-
* disallow usages that lose the reactivity of `props` passed to `setup`
|
|
8480
|
-
* @see https://eslint.vuejs.org/rules/no-setup-props-destructure.html
|
|
8481
|
-
* @deprecated
|
|
8482
|
-
*/
|
|
8483
|
-
'vue/no-setup-props-destructure'?: Linter.RuleEntry<[]>
|
|
8484
8470
|
/**
|
|
8485
8471
|
* disallow usages that lose the reactivity of `props` passed to `setup`
|
|
8486
8472
|
* @see https://eslint.vuejs.org/rules/no-setup-props-reactivity-loss.html
|
|
@@ -8614,6 +8600,7 @@ interface RuleOptions {
|
|
|
8614
8600
|
/**
|
|
8615
8601
|
* disallow `key` attribute on `<template v-for>`
|
|
8616
8602
|
* @see https://eslint.vuejs.org/rules/no-v-for-template-key.html
|
|
8603
|
+
* @deprecated
|
|
8617
8604
|
*/
|
|
8618
8605
|
'vue/no-v-for-template-key'?: Linter.RuleEntry<[]>
|
|
8619
8606
|
/**
|
|
@@ -8629,6 +8616,7 @@ interface RuleOptions {
|
|
|
8629
8616
|
/**
|
|
8630
8617
|
* disallow adding an argument to `v-model` used in custom component
|
|
8631
8618
|
* @see https://eslint.vuejs.org/rules/no-v-model-argument.html
|
|
8619
|
+
* @deprecated
|
|
8632
8620
|
*/
|
|
8633
8621
|
'vue/no-v-model-argument'?: Linter.RuleEntry<[]>
|
|
8634
8622
|
/**
|
|
@@ -8861,12 +8849,6 @@ interface RuleOptions {
|
|
|
8861
8849
|
* @see https://eslint.vuejs.org/rules/script-indent.html
|
|
8862
8850
|
*/
|
|
8863
8851
|
'vue/script-indent'?: Linter.RuleEntry<VueScriptIndent>
|
|
8864
|
-
/**
|
|
8865
|
-
* prevent `<script setup>` variables used in `<template>` to be marked as unused
|
|
8866
|
-
* @see https://eslint.vuejs.org/rules/script-setup-uses-vars.html
|
|
8867
|
-
* @deprecated
|
|
8868
|
-
*/
|
|
8869
|
-
'vue/script-setup-uses-vars'?: Linter.RuleEntry<[]>
|
|
8870
8852
|
/**
|
|
8871
8853
|
* require a line break before and after the contents of a singleline element
|
|
8872
8854
|
* @see https://eslint.vuejs.org/rules/singleline-html-element-content-newline.html
|
|
@@ -8937,12 +8919,6 @@ interface RuleOptions {
|
|
|
8937
8919
|
* @see https://eslint.vuejs.org/rules/v-on-event-hyphenation.html
|
|
8938
8920
|
*/
|
|
8939
8921
|
'vue/v-on-event-hyphenation'?: Linter.RuleEntry<VueVOnEventHyphenation>
|
|
8940
|
-
/**
|
|
8941
|
-
* enforce or forbid parentheses after method calls without arguments in `v-on` directives
|
|
8942
|
-
* @see https://eslint.vuejs.org/rules/v-on-function-call.html
|
|
8943
|
-
* @deprecated
|
|
8944
|
-
*/
|
|
8945
|
-
'vue/v-on-function-call'?: Linter.RuleEntry<VueVOnFunctionCall>
|
|
8946
8922
|
/**
|
|
8947
8923
|
* enforce writing style for handlers in `v-on` directives
|
|
8948
8924
|
* @see https://eslint.vuejs.org/rules/v-on-handler-style.html
|
|
@@ -8981,6 +8957,7 @@ interface RuleOptions {
|
|
|
8981
8957
|
/**
|
|
8982
8958
|
* require valid keys in model option
|
|
8983
8959
|
* @see https://eslint.vuejs.org/rules/valid-model-definition.html
|
|
8960
|
+
* @deprecated
|
|
8984
8961
|
*/
|
|
8985
8962
|
'vue/valid-model-definition'?: Linter.RuleEntry<[]>
|
|
8986
8963
|
/**
|
|
@@ -9001,6 +8978,7 @@ interface RuleOptions {
|
|
|
9001
8978
|
/**
|
|
9002
8979
|
* enforce valid `.sync` modifier on `v-bind` directives
|
|
9003
8980
|
* @see https://eslint.vuejs.org/rules/valid-v-bind-sync.html
|
|
8981
|
+
* @deprecated
|
|
9004
8982
|
*/
|
|
9005
8983
|
'vue/valid-v-bind-sync'?: Linter.RuleEntry<[]>
|
|
9006
8984
|
/**
|
|
@@ -11593,18 +11571,7 @@ type NodeNoRestrictedRequire = []|[(string | {
|
|
|
11593
11571
|
// ----- node/no-sync -----
|
|
11594
11572
|
type NodeNoSync = []|[{
|
|
11595
11573
|
allowAtRootLevel?: boolean
|
|
11596
|
-
ignores?:
|
|
11597
|
-
from?: "file"
|
|
11598
|
-
path?: string
|
|
11599
|
-
name?: string[]
|
|
11600
|
-
} | {
|
|
11601
|
-
from?: "lib"
|
|
11602
|
-
name?: string[]
|
|
11603
|
-
} | {
|
|
11604
|
-
from?: "package"
|
|
11605
|
-
package?: string
|
|
11606
|
-
name?: string[]
|
|
11607
|
-
})[]
|
|
11574
|
+
ignores?: string[]
|
|
11608
11575
|
}]
|
|
11609
11576
|
// ----- node/no-unpublished-bin -----
|
|
11610
11577
|
type NodeNoUnpublishedBin = []|[{
|
|
@@ -17243,16 +17210,10 @@ type VueComponentNameInTemplateCasing = []|[("PascalCase" | "kebab-case")]|[("Pa
|
|
|
17243
17210
|
}]
|
|
17244
17211
|
// ----- vue/component-options-name-casing -----
|
|
17245
17212
|
type VueComponentOptionsNameCasing = []|[("camelCase" | "kebab-case" | "PascalCase")]
|
|
17246
|
-
// ----- vue/component-tags-order -----
|
|
17247
|
-
type VueComponentTagsOrder = []|[{
|
|
17248
|
-
order?: (string | string[])[]
|
|
17249
|
-
}]
|
|
17250
17213
|
// ----- vue/custom-event-name-casing -----
|
|
17251
|
-
type VueCustomEventNameCasing =
|
|
17214
|
+
type VueCustomEventNameCasing = []|[("kebab-case" | "camelCase")]|[("kebab-case" | "camelCase"), {
|
|
17252
17215
|
ignores?: string[]
|
|
17253
|
-
}]
|
|
17254
|
-
ignores?: string[]
|
|
17255
|
-
}])
|
|
17216
|
+
}]
|
|
17256
17217
|
// ----- vue/define-emits-declaration -----
|
|
17257
17218
|
type VueDefineEmitsDeclaration = []|[("type-based" | "type-literal" | "runtime")]
|
|
17258
17219
|
// ----- vue/define-macros-order -----
|
|
@@ -17883,6 +17844,14 @@ type VueNoExtraParens = ([]|["functions"] | []|["all"]|["all", {
|
|
|
17883
17844
|
enforceForFunctionPrototypeMethods?: boolean
|
|
17884
17845
|
allowParensAfterCommentPattern?: string
|
|
17885
17846
|
}])
|
|
17847
|
+
// ----- vue/no-implicit-coercion -----
|
|
17848
|
+
type VueNoImplicitCoercion = []|[{
|
|
17849
|
+
boolean?: boolean
|
|
17850
|
+
number?: boolean
|
|
17851
|
+
string?: boolean
|
|
17852
|
+
disallowTemplateShorthand?: boolean
|
|
17853
|
+
allow?: ("~" | "!!" | "+" | "- -" | "-" | "*")[]
|
|
17854
|
+
}]
|
|
17886
17855
|
// ----- vue/no-irregular-whitespace -----
|
|
17887
17856
|
type VueNoIrregularWhitespace = []|[{
|
|
17888
17857
|
skipComments?: boolean
|
|
@@ -18174,9 +18143,13 @@ type VuePaddingLinesInComponentDefinition = []|[(("always" | "never") | {
|
|
|
18174
18143
|
groupSingleLineProperties?: boolean
|
|
18175
18144
|
})]
|
|
18176
18145
|
// ----- vue/prefer-true-attribute-shorthand -----
|
|
18177
|
-
type VuePreferTrueAttributeShorthand = []|[("always" | "never")]
|
|
18146
|
+
type VuePreferTrueAttributeShorthand = []|[("always" | "never")]|[("always" | "never"), {
|
|
18147
|
+
except?: string[]
|
|
18148
|
+
}]
|
|
18178
18149
|
// ----- vue/prop-name-casing -----
|
|
18179
|
-
type VuePropNameCasing = []|[("camelCase" | "snake_case")]
|
|
18150
|
+
type VuePropNameCasing = []|[("camelCase" | "snake_case")]|[("camelCase" | "snake_case"), {
|
|
18151
|
+
ignoreProps?: string[]
|
|
18152
|
+
}]
|
|
18180
18153
|
// ----- vue/quote-props -----
|
|
18181
18154
|
type VueQuoteProps = ([]|[("always" | "as-needed" | "consistent" | "consistent-as-needed")] | []|[("always" | "as-needed" | "consistent" | "consistent-as-needed")]|[("always" | "as-needed" | "consistent" | "consistent-as-needed"), {
|
|
18182
18155
|
keywords?: boolean
|
|
@@ -18241,7 +18214,6 @@ type VueSortKeys = []|[("asc" | "desc")]|[("asc" | "desc"), {
|
|
|
18241
18214
|
ignoreGrandchildrenOf?: unknown[]
|
|
18242
18215
|
minKeys?: number
|
|
18243
18216
|
natural?: boolean
|
|
18244
|
-
runOutsideVue?: boolean
|
|
18245
18217
|
}]
|
|
18246
18218
|
// ----- vue/space-in-parens -----
|
|
18247
18219
|
type VueSpaceInParens = []|[("always" | "never")]|[("always" | "never"), {
|
|
@@ -18279,10 +18251,6 @@ type VueVOnEventHyphenation = []|[("always" | "never")]|[("always" | "never"), {
|
|
|
18279
18251
|
})[]
|
|
18280
18252
|
ignoreTags?: string[]
|
|
18281
18253
|
}]
|
|
18282
|
-
// ----- vue/v-on-function-call -----
|
|
18283
|
-
type VueVOnFunctionCall = []|[("always" | "never")]|[("always" | "never"), {
|
|
18284
|
-
ignoreIncludesComment?: boolean
|
|
18285
|
-
}]
|
|
18286
18254
|
// ----- vue/v-on-handler-style -----
|
|
18287
18255
|
type VueVOnHandlerStyle = []|[(("inline" | "inline-function") | ["method", ("inline" | "inline-function")])]|[(("inline" | "inline-function") | ["method", ("inline" | "inline-function")]), {
|
|
18288
18256
|
ignoreIncludesComment?: boolean
|
package/dist/index.js
CHANGED
|
@@ -2171,10 +2171,11 @@ async function unicorn(options = {}) {
|
|
|
2171
2171
|
unicorn: default7
|
|
2172
2172
|
},
|
|
2173
2173
|
rules: {
|
|
2174
|
-
...options.allRecommended ? default7.configs
|
|
2174
|
+
...options.allRecommended ? default7.configs.recommended.rules : {
|
|
2175
|
+
"unicorn/consistent-empty-array-spread": ERROR,
|
|
2175
2176
|
"unicorn/error-message": ERROR,
|
|
2176
2177
|
"unicorn/escape-case": ERROR,
|
|
2177
|
-
"unicorn/no-instanceof-
|
|
2178
|
+
"unicorn/no-instanceof-builtins": ERROR,
|
|
2178
2179
|
"unicorn/no-new-array": ERROR,
|
|
2179
2180
|
"unicorn/no-new-buffer": ERROR,
|
|
2180
2181
|
"unicorn/number-literal-case": ERROR,
|
|
@@ -2295,9 +2296,9 @@ async function vue(options = {}) {
|
|
|
2295
2296
|
]),
|
|
2296
2297
|
rules: {
|
|
2297
2298
|
...pluginVue.configs.base.rules,
|
|
2298
|
-
...pluginVue.configs["
|
|
2299
|
-
...pluginVue.configs["
|
|
2300
|
-
...pluginVue.configs["
|
|
2299
|
+
...pluginVue.configs["flat/essential"].map((c) => c.rules).reduce((acc, c) => ({ ...acc, ...c }), {}),
|
|
2300
|
+
...pluginVue.configs["flat/strongly-recommended"].map((c) => c.rules).reduce((acc, c) => ({ ...acc, ...c }), {}),
|
|
2301
|
+
...pluginVue.configs["flat/recommended"].map((c) => c.rules).reduce((acc, c) => ({ ...acc, ...c }), {}),
|
|
2301
2302
|
"node/prefer-global/process": OFF,
|
|
2302
2303
|
"vue/block-order": [ERROR, {
|
|
2303
2304
|
order: ["script", "template", "style"]
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vinicunca/eslint-config",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "3.
|
|
4
|
+
"version": "3.6.0",
|
|
5
5
|
"description": "Vinicunca ESLint config",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "praburangki",
|
|
@@ -127,7 +127,7 @@
|
|
|
127
127
|
"eslint-plugin-import-x": "^4.6.1",
|
|
128
128
|
"eslint-plugin-jsdoc": "^50.6.3",
|
|
129
129
|
"eslint-plugin-jsonc": "^2.19.1",
|
|
130
|
-
"eslint-plugin-n": "^17.16.
|
|
130
|
+
"eslint-plugin-n": "^17.16.2",
|
|
131
131
|
"eslint-plugin-no-only-tests": "^3.3.0",
|
|
132
132
|
"eslint-plugin-perfectionist": "^4.9.0",
|
|
133
133
|
"eslint-plugin-regexp": "^2.7.0",
|
|
@@ -135,14 +135,14 @@
|
|
|
135
135
|
"eslint-plugin-toml": "^0.12.0",
|
|
136
136
|
"eslint-plugin-unicorn": "^57.0.0",
|
|
137
137
|
"eslint-plugin-unused-imports": "^4.1.4",
|
|
138
|
-
"eslint-plugin-vue": "^
|
|
138
|
+
"eslint-plugin-vue": "^10.0.0",
|
|
139
139
|
"eslint-plugin-yml": "^1.17.0",
|
|
140
140
|
"eslint-processor-vue-blocks": "^2.0.0",
|
|
141
141
|
"globals": "^16.0.0",
|
|
142
142
|
"jsonc-eslint-parser": "^2.4.0",
|
|
143
143
|
"local-pkg": "^1.1.1",
|
|
144
144
|
"toml-eslint-parser": "^0.10.0",
|
|
145
|
-
"vue-eslint-parser": "^
|
|
145
|
+
"vue-eslint-parser": "^10.1.1",
|
|
146
146
|
"yaml-eslint-parser": "^1.3.0"
|
|
147
147
|
},
|
|
148
148
|
"scripts": {
|