eslint-plugin-vue-scoped-css 2.12.0 → 3.1.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/README.md +23 -54
- package/dist/index.d.mts +861 -0
- package/dist/index.mjs +5879 -0
- package/package.json +63 -63
- package/dist/configs/all.d.ts +0 -7
- package/dist/configs/all.js +0 -12
- package/dist/configs/base.d.ts +0 -5
- package/dist/configs/base.js +0 -5
- package/dist/configs/flat/all.d.ts +0 -21
- package/dist/configs/flat/all.js +0 -14
- package/dist/configs/flat/base.d.ts +0 -18
- package/dist/configs/flat/base.js +0 -53
- package/dist/configs/flat/recommended.d.ts +0 -21
- package/dist/configs/flat/recommended.js +0 -14
- package/dist/configs/flat/vue2-recommended.d.ts +0 -21
- package/dist/configs/flat/vue2-recommended.js +0 -14
- package/dist/configs/recommended.d.ts +0 -7
- package/dist/configs/recommended.js +0 -12
- package/dist/configs/vue3-recommended.d.ts +0 -7
- package/dist/configs/vue3-recommended.js +0 -12
- package/dist/index.d.ts +0 -88
- package/dist/index.js +0 -28
- package/dist/options.d.ts +0 -11
- package/dist/options.js +0 -13
- package/dist/rules/enforce-style-type.d.ts +0 -41
- package/dist/rules/enforce-style-type.js +0 -184
- package/dist/rules/no-deprecated-deep-combinator.d.ts +0 -19
- package/dist/rules/no-deprecated-deep-combinator.js +0 -68
- package/dist/rules/no-deprecated-v-enter-v-leave-class.d.ts +0 -20
- package/dist/rules/no-deprecated-v-enter-v-leave-class.js +0 -179
- package/dist/rules/no-parent-of-v-global.d.ts +0 -19
- package/dist/rules/no-parent-of-v-global.js +0 -56
- package/dist/rules/no-parsing-error.d.ts +0 -19
- package/dist/rules/no-parsing-error.js +0 -62
- package/dist/rules/no-unused-keyframes.d.ts +0 -27
- package/dist/rules/no-unused-keyframes.js +0 -127
- package/dist/rules/no-unused-selector.d.ts +0 -46
- package/dist/rules/no-unused-selector.js +0 -194
- package/dist/rules/require-scoped.d.ts +0 -28
- package/dist/rules/require-scoped.js +0 -81
- package/dist/rules/require-selector-used-inside.d.ts +0 -38
- package/dist/rules/require-selector-used-inside.js +0 -133
- package/dist/rules/require-v-deep-argument.d.ts +0 -19
- package/dist/rules/require-v-deep-argument.js +0 -95
- package/dist/rules/require-v-global-argument.d.ts +0 -19
- package/dist/rules/require-v-global-argument.js +0 -51
- package/dist/rules/require-v-slotted-argument.d.ts +0 -19
- package/dist/rules/require-v-slotted-argument.js +0 -51
- package/dist/rules/v-deep-pseudo-style.d.ts +0 -22
- package/dist/rules/v-deep-pseudo-style.js +0 -64
- package/dist/rules/v-global-pseudo-style.d.ts +0 -22
- package/dist/rules/v-global-pseudo-style.js +0 -64
- package/dist/rules/v-slotted-pseudo-style.d.ts +0 -22
- package/dist/rules/v-slotted-pseudo-style.js +0 -64
- package/dist/styles/ast.d.ts +0 -252
- package/dist/styles/ast.js +0 -303
- package/dist/styles/context/comment-directive/index.d.ts +0 -23
- package/dist/styles/context/comment-directive/index.js +0 -182
- package/dist/styles/context/index.d.ts +0 -8
- package/dist/styles/context/index.js +0 -48
- package/dist/styles/context/style/index.d.ts +0 -56
- package/dist/styles/context/style/index.js +0 -178
- package/dist/styles/context/vue-components/find-vue.d.ts +0 -4
- package/dist/styles/context/vue-components/find-vue.js +0 -92
- package/dist/styles/context/vue-components/index.d.ts +0 -11
- package/dist/styles/context/vue-components/index.js +0 -288
- package/dist/styles/parser/css-parser.d.ts +0 -30
- package/dist/styles/parser/css-parser.js +0 -273
- package/dist/styles/parser/index.d.ts +0 -3
- package/dist/styles/parser/index.js +0 -17
- package/dist/styles/parser/scss-parser.d.ts +0 -11
- package/dist/styles/parser/scss-parser.js +0 -42
- package/dist/styles/parser/selector/css-selector-parser.d.ts +0 -27
- package/dist/styles/parser/selector/css-selector-parser.js +0 -309
- package/dist/styles/parser/selector/replace-utils.d.ts +0 -55
- package/dist/styles/parser/selector/replace-utils.js +0 -372
- package/dist/styles/parser/selector/scss-selector-parser.d.ts +0 -8
- package/dist/styles/parser/selector/scss-selector-parser.js +0 -44
- package/dist/styles/parser/selector/stylus-selector-parser.d.ts +0 -8
- package/dist/styles/parser/selector/stylus-selector-parser.js +0 -105
- package/dist/styles/parser/stylus-parser.d.ts +0 -11
- package/dist/styles/parser/stylus-parser.js +0 -48
- package/dist/styles/parser/utils.d.ts +0 -3
- package/dist/styles/parser/utils.js +0 -10
- package/dist/styles/selectors/index.d.ts +0 -4
- package/dist/styles/selectors/index.js +0 -29
- package/dist/styles/selectors/query/attribute-tracker.d.ts +0 -4
- package/dist/styles/selectors/query/attribute-tracker.js +0 -51
- package/dist/styles/selectors/query/elements.d.ts +0 -11
- package/dist/styles/selectors/query/elements.js +0 -53
- package/dist/styles/selectors/query/index.d.ts +0 -23
- package/dist/styles/selectors/query/index.js +0 -664
- package/dist/styles/selectors/query/reference-expression.d.ts +0 -3
- package/dist/styles/selectors/query/reference-expression.js +0 -43
- package/dist/styles/selectors/resolver/css-selector-resolver.d.ts +0 -29
- package/dist/styles/selectors/resolver/css-selector-resolver.js +0 -231
- package/dist/styles/selectors/resolver/scss-selector-resolver.d.ts +0 -10
- package/dist/styles/selectors/resolver/scss-selector-resolver.js +0 -65
- package/dist/styles/selectors/resolver/stylus-selector-resolver.d.ts +0 -11
- package/dist/styles/selectors/resolver/stylus-selector-resolver.js +0 -165
- package/dist/styles/template/at-rule-params/css.d.ts +0 -1
- package/dist/styles/template/at-rule-params/css.js +0 -6
- package/dist/styles/template/at-rule-params/index.d.ts +0 -2
- package/dist/styles/template/at-rule-params/index.js +0 -21
- package/dist/styles/template/at-rule-params/scss.d.ts +0 -2
- package/dist/styles/template/at-rule-params/scss.js +0 -7
- package/dist/styles/template/at-rule-params/stylus.d.ts +0 -2
- package/dist/styles/template/at-rule-params/stylus.js +0 -7
- package/dist/styles/template/decl-value/css.d.ts +0 -1
- package/dist/styles/template/decl-value/css.js +0 -6
- package/dist/styles/template/decl-value/index.d.ts +0 -2
- package/dist/styles/template/decl-value/index.js +0 -21
- package/dist/styles/template/decl-value/scss.d.ts +0 -2
- package/dist/styles/template/decl-value/scss.js +0 -7
- package/dist/styles/template/decl-value/stylus.d.ts +0 -2
- package/dist/styles/template/decl-value/stylus.js +0 -7
- package/dist/styles/template/index.d.ts +0 -29
- package/dist/styles/template/index.js +0 -209
- package/dist/styles/template/interpolation.d.ts +0 -4
- package/dist/styles/template/interpolation.js +0 -9
- package/dist/styles/template/scss/util.d.ts +0 -3
- package/dist/styles/template/scss/util.js +0 -33
- package/dist/styles/template/selector/css.d.ts +0 -2
- package/dist/styles/template/selector/css.js +0 -6
- package/dist/styles/template/selector/index.d.ts +0 -3
- package/dist/styles/template/selector/index.js +0 -21
- package/dist/styles/template/selector/scss.d.ts +0 -3
- package/dist/styles/template/selector/scss.js +0 -7
- package/dist/styles/template/selector/stylus.d.ts +0 -3
- package/dist/styles/template/selector/stylus.js +0 -7
- package/dist/styles/template/stylus/util.d.ts +0 -3
- package/dist/styles/template/stylus/util.js +0 -25
- package/dist/styles/utils/css-nodes.d.ts +0 -11
- package/dist/styles/utils/css-nodes.js +0 -37
- package/dist/styles/utils/index.d.ts +0 -2
- package/dist/styles/utils/index.js +0 -10
- package/dist/styles/utils/nodes.d.ts +0 -3
- package/dist/styles/utils/nodes.js +0 -32
- package/dist/styles/utils/selectors.d.ts +0 -52
- package/dist/styles/utils/selectors.js +0 -170
- package/dist/types.d.ts +0 -200
- package/dist/types.js +0 -2
- package/dist/utils/compat.d.ts +0 -5
- package/dist/utils/compat.js +0 -19
- package/dist/utils/regexp.d.ts +0 -1
- package/dist/utils/regexp.js +0 -18
- package/dist/utils/rules.d.ts +0 -5
- package/dist/utils/rules.js +0 -96
- package/dist/utils/templates.d.ts +0 -10
- package/dist/utils/templates.js +0 -99
- package/dist/utils/utils.d.ts +0 -3
- package/dist/utils/utils.js +0 -13
package/README.md
CHANGED
|
@@ -39,10 +39,15 @@ See [documents](https://future-architect.github.io/eslint-plugin-vue-scoped-css/
|
|
|
39
39
|
npm install --save-dev eslint eslint-plugin-vue-scoped-css vue-eslint-parser
|
|
40
40
|
```
|
|
41
41
|
|
|
42
|
+
If you use SCSS or STYLUS in your project, you also need to run:
|
|
43
|
+
|
|
44
|
+
* SCSS: `npm install --save-dev postcss-scss`
|
|
45
|
+
* Stylus: `npm install --save-dev postcss-styl`
|
|
46
|
+
|
|
42
47
|
> **Requirements**
|
|
43
48
|
>
|
|
44
|
-
> - ESLint
|
|
45
|
-
> - Node.js
|
|
49
|
+
> - ESLint v9.38.0 and above
|
|
50
|
+
> - Node.js v20.19.x, v22.13.x, v24.x and above
|
|
46
51
|
|
|
47
52
|
<!--DOCS_IGNORE_END-->
|
|
48
53
|
|
|
@@ -62,7 +67,7 @@ import eslintPluginVueScopedCSS from 'eslint-plugin-vue-scoped-css';
|
|
|
62
67
|
export default [
|
|
63
68
|
// add more generic rule sets here, such as:
|
|
64
69
|
// js.configs.recommended,
|
|
65
|
-
...eslintPluginVueScopedCSS.configs['
|
|
70
|
+
...eslintPluginVueScopedCSS.configs['recommended'],
|
|
66
71
|
{
|
|
67
72
|
rules: {
|
|
68
73
|
// override/add rules settings here, such as:
|
|
@@ -72,43 +77,23 @@ export default [
|
|
|
72
77
|
];
|
|
73
78
|
```
|
|
74
79
|
|
|
75
|
-
### Legacy Config (`.eslintrc`)
|
|
76
|
-
|
|
77
|
-
Use `.eslintrc.*` file to configure rules. See also: <https://eslint.org/docs/latest/use/configure/>.
|
|
78
|
-
|
|
79
|
-
Example **.eslintrc.js**:
|
|
80
|
-
|
|
81
|
-
```js
|
|
82
|
-
module.exports = {
|
|
83
|
-
extends: [
|
|
84
|
-
// add more generic rulesets here, such as:
|
|
85
|
-
// 'eslint:recommended',
|
|
86
|
-
'plugin:vue-scoped-css/vue3-recommended'
|
|
87
|
-
],
|
|
88
|
-
rules: {
|
|
89
|
-
// override/add rules settings here, such as:
|
|
90
|
-
// 'vue-scoped-css/no-unused-selector': 'error'
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
```
|
|
94
|
-
|
|
95
80
|
## Configs
|
|
96
81
|
|
|
97
82
|
This plugin provides some predefined configs:
|
|
98
83
|
|
|
99
|
-
|
|
84
|
+
- `*.configs['base']` - Settings and rules to enable this plugin
|
|
85
|
+
- `*.configs['recommended']` - `/base`, plus rules for better ways to help you avoid problems for Vue.js 3.x
|
|
86
|
+
- `*.configs['vue2-recommended']` - `/base`, plus rules for better ways to help you avoid problems for Vue.js 2.x
|
|
87
|
+
- `*.configs['all']` - All rules of this plugin are included
|
|
100
88
|
|
|
101
|
-
|
|
102
|
-
- `*.configs['flat/recommended']` - `/base`, plus rules for better ways to help you avoid problems for Vue.js 3.x
|
|
103
|
-
- `*.configs['flat/vue2-recommended']` - `/base`, plus rules for better ways to help you avoid problems for Vue.js 2.x
|
|
104
|
-
- `*.configs['flat/all']` - All rules of this plugin are included
|
|
89
|
+
### Backward-compatible aliases
|
|
105
90
|
|
|
106
|
-
|
|
91
|
+
The following `flat/*` aliases are kept for backward compatibility:
|
|
107
92
|
|
|
108
|
-
-
|
|
109
|
-
-
|
|
110
|
-
-
|
|
111
|
-
-
|
|
93
|
+
- `*.configs['flat/base']` → `*.configs['base']`
|
|
94
|
+
- `*.configs['flat/recommended']` → `*.configs['recommended']`
|
|
95
|
+
- `*.configs['flat/vue2-recommended']` → `*.configs['vue2-recommended']`
|
|
96
|
+
- `*.configs['flat/all']` → `*.configs['all']`
|
|
112
97
|
|
|
113
98
|
<!--USAGE_GUIDE_END-->
|
|
114
99
|
<!--USAGE_SECTION_END-->
|
|
@@ -127,18 +112,10 @@ Enforce all the rules in this category with:
|
|
|
127
112
|
|
|
128
113
|
```js
|
|
129
114
|
export default [
|
|
130
|
-
...eslintPluginVueScopedCSS.configs['
|
|
115
|
+
...eslintPluginVueScopedCSS.configs['recommended'],
|
|
131
116
|
]
|
|
132
117
|
```
|
|
133
118
|
|
|
134
|
-
or
|
|
135
|
-
|
|
136
|
-
```json
|
|
137
|
-
{
|
|
138
|
-
"extends": ["plugin:vue-scoped-css/vue3-recommended"]
|
|
139
|
-
}
|
|
140
|
-
```
|
|
141
|
-
|
|
142
119
|
| Rule ID | Description | |
|
|
143
120
|
|:--------|:------------|:---|
|
|
144
121
|
| [vue-scoped-css/enforce-style-type](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/enforce-style-type.html) | enforce the `<style>` tags to be plain or have the `scoped` or `module` attribute | |
|
|
@@ -150,6 +127,9 @@ or
|
|
|
150
127
|
| [vue-scoped-css/require-v-deep-argument](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/require-v-deep-argument.html) | require selector argument to be passed to `::v-deep()` | :wrench: |
|
|
151
128
|
| [vue-scoped-css/require-v-global-argument](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/require-v-global-argument.html) | require selector argument to be passed to `::v-global()` | |
|
|
152
129
|
| [vue-scoped-css/require-v-slotted-argument](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/require-v-slotted-argument.html) | require selector argument to be passed to `::v-slotted()` | |
|
|
130
|
+
| [vue-scoped-css/v-deep-pseudo-style](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/v-deep-pseudo-style.html) | enforce `:deep()`/`::v-deep()` style | :wrench: |
|
|
131
|
+
| [vue-scoped-css/v-global-pseudo-style](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/v-global-pseudo-style.html) | enforce `:global()`/`::v-global()` style | :wrench: |
|
|
132
|
+
| [vue-scoped-css/v-slotted-pseudo-style](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/v-slotted-pseudo-style.html) | enforce `:slotted()`/`::v-slotted()` style | :wrench: |
|
|
153
133
|
|
|
154
134
|
## Recommended for Vue.js 2.x
|
|
155
135
|
|
|
@@ -157,18 +137,10 @@ Enforce all the rules in this category with:
|
|
|
157
137
|
|
|
158
138
|
```js
|
|
159
139
|
export default [
|
|
160
|
-
...eslintPluginVueScopedCSS.configs['
|
|
140
|
+
...eslintPluginVueScopedCSS.configs['vue2-recommended'],
|
|
161
141
|
]
|
|
162
142
|
```
|
|
163
143
|
|
|
164
|
-
or
|
|
165
|
-
|
|
166
|
-
```json
|
|
167
|
-
{
|
|
168
|
-
"extends": ["plugin:vue-scoped-css/recommended"]
|
|
169
|
-
}
|
|
170
|
-
```
|
|
171
|
-
|
|
172
144
|
| Rule ID | Description | |
|
|
173
145
|
|:--------|:------------|:---|
|
|
174
146
|
| [vue-scoped-css/enforce-style-type](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/enforce-style-type.html) | enforce the `<style>` tags to be plain or have the `scoped` or `module` attribute | |
|
|
@@ -195,9 +167,6 @@ For example:
|
|
|
195
167
|
|:--------|:------------|:---|
|
|
196
168
|
| [vue-scoped-css/no-deprecated-v-enter-v-leave-class](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/no-deprecated-v-enter-v-leave-class.html) | disallow v-enter and v-leave classes. | |
|
|
197
169
|
| [vue-scoped-css/require-selector-used-inside](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/require-selector-used-inside.html) | disallow selectors defined that is not used inside `<template>` | |
|
|
198
|
-
| [vue-scoped-css/v-deep-pseudo-style](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/v-deep-pseudo-style.html) | enforce `:deep()`/`::v-deep()` style | :wrench: |
|
|
199
|
-
| [vue-scoped-css/v-global-pseudo-style](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/v-global-pseudo-style.html) | enforce `:global()`/`::v-global()` style | :wrench: |
|
|
200
|
-
| [vue-scoped-css/v-slotted-pseudo-style](https://future-architect.github.io/eslint-plugin-vue-scoped-css/rules/v-slotted-pseudo-style.html) | enforce `:slotted()`/`::v-slotted()` style | :wrench: |
|
|
201
170
|
|
|
202
171
|
## Deprecated
|
|
203
172
|
|