@alexlit/lint-kit 167.4.0 → 169.0.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/package.json +1 -1
- package/packages/config-eslint/node_modules/glob/LICENSE +15 -0
- package/packages/config-eslint/node_modules/glob/README.md +1265 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/glob.d.ts +388 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/glob.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/glob.js +247 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/glob.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/has-magic.d.ts +14 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/has-magic.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/has-magic.js +27 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/has-magic.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/ignore.d.ts +24 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/ignore.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/ignore.js +119 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/ignore.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/index.d.ts +97 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/index.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/index.js +68 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/index.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/package.json +3 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/pattern.d.ts +76 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/pattern.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/pattern.js +219 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/pattern.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/processor.d.ts +59 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/processor.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/processor.js +301 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/processor.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/walker.d.ts +97 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/walker.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/walker.js +387 -0
- package/packages/config-eslint/node_modules/glob/dist/commonjs/walker.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/bin.d.mts +3 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/bin.d.mts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/bin.mjs +346 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/bin.mjs.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/glob.d.ts +388 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/glob.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/glob.js +243 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/glob.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/has-magic.d.ts +14 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/has-magic.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/has-magic.js +23 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/has-magic.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/ignore.d.ts +24 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/ignore.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/ignore.js +115 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/ignore.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/index.d.ts +97 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/index.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/index.js +55 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/index.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/package.json +3 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/pattern.d.ts +76 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/pattern.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/pattern.js +215 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/pattern.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/processor.d.ts +59 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/processor.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/processor.js +294 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/processor.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/walker.d.ts +97 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/walker.d.ts.map +1 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/walker.js +381 -0
- package/packages/config-eslint/node_modules/glob/dist/esm/walker.js.map +1 -0
- package/packages/config-eslint/node_modules/glob/package.json +99 -0
- package/packages/config-eslint/node_modules/ignore/LICENSE-MIT +21 -0
- package/packages/config-eslint/node_modules/ignore/README.md +452 -0
- package/packages/config-eslint/node_modules/ignore/index.d.ts +81 -0
- package/packages/config-eslint/node_modules/ignore/index.js +784 -0
- package/packages/config-eslint/node_modules/ignore/legacy.js +681 -0
- package/packages/config-eslint/node_modules/ignore/package.json +87 -0
- package/packages/config-eslint/node_modules/{vue-eslint-parser → synckit}/LICENSE +1 -1
- package/packages/config-eslint/node_modules/synckit/README.md +245 -0
- package/packages/config-eslint/node_modules/synckit/index.d.cts +3 -0
- package/packages/config-eslint/node_modules/synckit/lib/index.cjs +590 -0
- package/packages/config-eslint/node_modules/synckit/lib/index.d.ts +43 -0
- package/packages/config-eslint/node_modules/synckit/lib/index.js +476 -0
- package/packages/config-eslint/node_modules/synckit/lib/index.js.map +1 -0
- package/packages/config-eslint/node_modules/synckit/lib/types.d.ts +40 -0
- package/packages/config-eslint/node_modules/synckit/lib/types.js +2 -0
- package/packages/config-eslint/node_modules/synckit/lib/types.js.map +1 -0
- package/packages/config-eslint/node_modules/synckit/package.json +46 -0
- package/packages/config-eslint/package.json +6 -6
- package/packages/config-eslint/plugins/vue.js +1 -0
- package/packages/config-prettier/package.json +2 -2
- package/packages/config-eslint/node_modules/vue-eslint-parser/README.md +0 -332
- package/packages/config-eslint/node_modules/vue-eslint-parser/index.d.ts +0 -667
- package/packages/config-eslint/node_modules/vue-eslint-parser/index.js +0 -6642
- package/packages/config-eslint/node_modules/vue-eslint-parser/index.js.map +0 -1
- package/packages/config-eslint/node_modules/vue-eslint-parser/package.json +0 -100
|
@@ -1,332 +0,0 @@
|
|
|
1
|
-
# vue-eslint-parser
|
|
2
|
-
|
|
3
|
-
[](https://www.npmjs.com/package/vue-eslint-parser)
|
|
4
|
-
[](http://www.npmtrends.com/vue-eslint-parser)
|
|
5
|
-
[](https://github.com/vuejs/vue-eslint-parser/actions)
|
|
6
|
-
|
|
7
|
-
The ESLint custom parser for `.vue` files.
|
|
8
|
-
|
|
9
|
-
## ⤴️ Motivation
|
|
10
|
-
|
|
11
|
-
This parser allows us to lint the `<template>` of `.vue` files. We can make mistakes easily on `<template>` if we use complex directives and expressions in the template. This parser and the rules of [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) would catch some of the mistakes.
|
|
12
|
-
|
|
13
|
-
## 💿 Installation
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
npm install --save-dev eslint vue-eslint-parser
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## 📖 Usage
|
|
20
|
-
|
|
21
|
-
Write `parser` option into your `eslint.config.*` file.
|
|
22
|
-
|
|
23
|
-
```js
|
|
24
|
-
import vueParser from "vue-eslint-parser"
|
|
25
|
-
export default [
|
|
26
|
-
js.configs.recommended,
|
|
27
|
-
{
|
|
28
|
-
files: ["*.vue", "**/*.vue"],
|
|
29
|
-
languageOptions: {
|
|
30
|
-
parser: vueParser,
|
|
31
|
-
},
|
|
32
|
-
}
|
|
33
|
-
]
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
## 🔧 Options
|
|
37
|
-
|
|
38
|
-
`parserOptions` has the same properties as what [espree](https://github.com/eslint/espree#usage), the default parser of ESLint, is supporting.
|
|
39
|
-
For example:
|
|
40
|
-
|
|
41
|
-
```js
|
|
42
|
-
import vueParser from "vue-eslint-parser"
|
|
43
|
-
export default [
|
|
44
|
-
{
|
|
45
|
-
files: ["*.vue", "**/*.vue"],
|
|
46
|
-
languageOptions: {
|
|
47
|
-
parser: vueParser,
|
|
48
|
-
sourceType: "module",
|
|
49
|
-
ecmaVersion: "latest",
|
|
50
|
-
parserOptions: {
|
|
51
|
-
ecmaFeatures: {
|
|
52
|
-
globalReturn: false,
|
|
53
|
-
impliedStrict: false,
|
|
54
|
-
jsx: false
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
},
|
|
58
|
-
}
|
|
59
|
-
]
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
### parserOptions.parser
|
|
63
|
-
|
|
64
|
-
You can use `parserOptions.parser` property to specify a custom parser to parse `<script>` tags.
|
|
65
|
-
Other properties than parser would be given to the specified parser.
|
|
66
|
-
For example:
|
|
67
|
-
|
|
68
|
-
```js
|
|
69
|
-
import vueParser from "vue-eslint-parser"
|
|
70
|
-
import babelParser from "@babel/eslint-parser"
|
|
71
|
-
export default [
|
|
72
|
-
{
|
|
73
|
-
files: ["*.vue", "**/*.vue"],
|
|
74
|
-
languageOptions: {
|
|
75
|
-
parser: vueParser,
|
|
76
|
-
parserOptions: {
|
|
77
|
-
parser: babelParser,
|
|
78
|
-
}
|
|
79
|
-
},
|
|
80
|
-
}
|
|
81
|
-
]
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
```js
|
|
85
|
-
import vueParser from "vue-eslint-parser"
|
|
86
|
-
import tsParser from "@typescript-eslint/parser"
|
|
87
|
-
export default [
|
|
88
|
-
{
|
|
89
|
-
files: ["*.vue", "**/*.vue"],
|
|
90
|
-
languageOptions: {
|
|
91
|
-
parser: vueParser,
|
|
92
|
-
parserOptions: {
|
|
93
|
-
parser: tsParser,
|
|
94
|
-
}
|
|
95
|
-
},
|
|
96
|
-
}
|
|
97
|
-
]
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
You can also specify an object and change the parser separately for `<script lang="...">`.
|
|
101
|
-
|
|
102
|
-
```js
|
|
103
|
-
import vueParser from "vue-eslint-parser"
|
|
104
|
-
import tsParser from "@typescript-eslint/parser"
|
|
105
|
-
export default [
|
|
106
|
-
{
|
|
107
|
-
files: ["*.vue", "**/*.vue"],
|
|
108
|
-
languageOptions: {
|
|
109
|
-
parser: vueParser,
|
|
110
|
-
parserOptions: {
|
|
111
|
-
"parser": {
|
|
112
|
-
// Script parser for `<script>`
|
|
113
|
-
"js": "espree",
|
|
114
|
-
|
|
115
|
-
// Script parser for `<script lang="ts">`
|
|
116
|
-
"ts": tsParser,
|
|
117
|
-
|
|
118
|
-
// Script parser for vue directives (e.g. `v-if=` or `:attribute=`)
|
|
119
|
-
// and vue interpolations (e.g. `{{variable}}`).
|
|
120
|
-
// If not specified, the parser determined by `<script lang ="...">` is used.
|
|
121
|
-
"<template>": "espree",
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
},
|
|
125
|
-
}
|
|
126
|
-
]
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
If the `parserOptions.parser` is `false`, the `vue-eslint-parser` skips parsing `<script>` tags completely.
|
|
130
|
-
This is useful for people who use the language ESLint community doesn't provide custom parser implementation.
|
|
131
|
-
|
|
132
|
-
### parserOptions.vueFeatures
|
|
133
|
-
|
|
134
|
-
You can use `parserOptions.vueFeatures` property to specify how to parse related to Vue features.
|
|
135
|
-
For example:
|
|
136
|
-
|
|
137
|
-
```js
|
|
138
|
-
import vueParser from "vue-eslint-parser"
|
|
139
|
-
export default [
|
|
140
|
-
{
|
|
141
|
-
files: ["*.vue", "**/*.vue"],
|
|
142
|
-
languageOptions: {
|
|
143
|
-
parser: vueParser,
|
|
144
|
-
parserOptions: {
|
|
145
|
-
vueFeatures: {
|
|
146
|
-
filter: true,
|
|
147
|
-
interpolationAsNonHTML: true,
|
|
148
|
-
styleCSSVariableInjection: true,
|
|
149
|
-
customMacros: []
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
},
|
|
153
|
-
}
|
|
154
|
-
]
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
### parserOptions.vueFeatures.filter
|
|
158
|
-
|
|
159
|
-
You can use `parserOptions.vueFeatures.filter` property to specify whether to parse the Vue2 filter. If you specify `false`, the parser does not parse `|` as a filter.
|
|
160
|
-
For example:
|
|
161
|
-
|
|
162
|
-
```json
|
|
163
|
-
{
|
|
164
|
-
"parserOptions": {
|
|
165
|
-
"vueFeatures": {
|
|
166
|
-
"filter": false
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
```
|
|
171
|
-
|
|
172
|
-
If you specify `false`, it can be parsed in the same way as Vue 3.
|
|
173
|
-
The following template parses as a bitwise operation.
|
|
174
|
-
|
|
175
|
-
```vue
|
|
176
|
-
<template>
|
|
177
|
-
<div>{{ a | b }}</div>
|
|
178
|
-
</template>
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
However, the following template that are valid in Vue 2 cannot be parsed.
|
|
182
|
-
|
|
183
|
-
```vue
|
|
184
|
-
<template>
|
|
185
|
-
<div>{{ a | valid:filter }}</div>
|
|
186
|
-
</template>
|
|
187
|
-
```
|
|
188
|
-
|
|
189
|
-
### parserOptions.vueFeatures.interpolationAsNonHTML
|
|
190
|
-
|
|
191
|
-
You can use `parserOptions.vueFeatures.interpolationAsNonHTML` property to specify whether to parse the interpolation as HTML. If you specify `true`, the parser handles the interpolation as non-HTML (However, you can use HTML escaping in the interpolation). Default is `true`.
|
|
192
|
-
For example:
|
|
193
|
-
|
|
194
|
-
```json
|
|
195
|
-
{
|
|
196
|
-
"parserOptions": {
|
|
197
|
-
"vueFeatures": {
|
|
198
|
-
"interpolationAsNonHTML": true
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
```
|
|
203
|
-
|
|
204
|
-
If you specify `true`, it can be parsed in the same way as Vue 3.
|
|
205
|
-
The following template can be parsed well.
|
|
206
|
-
|
|
207
|
-
```vue
|
|
208
|
-
<template>
|
|
209
|
-
<div>{{a<b}}</div>
|
|
210
|
-
</template>
|
|
211
|
-
```
|
|
212
|
-
|
|
213
|
-
But, it cannot be parsed with Vue 2.
|
|
214
|
-
|
|
215
|
-
### parserOptions.vueFeatures.styleCSSVariableInjection
|
|
216
|
-
|
|
217
|
-
If set to `true`, to parse expressions in `v-bind` CSS functions inside `<style>` tags. `v-bind()` is parsed into the `VExpressionContainer` AST node and held in the `VElement` of `<style>`. Default is `true`.
|
|
218
|
-
|
|
219
|
-
See also to [here](https://github.com/vuejs/rfcs/blob/master/active-rfcs/0043-sfc-style-variables.md).
|
|
220
|
-
|
|
221
|
-
### parserOptions.vueFeatures.customMacros
|
|
222
|
-
|
|
223
|
-
Specifies an array of names of custom macros other than Vue standard macros.
|
|
224
|
-
For example, if you have a custom macro `defineFoo()` and you want it processed by the parser, specify `["defineFoo"]`.
|
|
225
|
-
|
|
226
|
-
Note that this option only works in `<script setup>`.
|
|
227
|
-
|
|
228
|
-
### parserOptions.templateTokenizer
|
|
229
|
-
|
|
230
|
-
**This is an experimental feature. It may be changed or deleted without notice in the minor version.**
|
|
231
|
-
|
|
232
|
-
You can use `parserOptions.templateTokenizer` property to specify custom tokenizers to parse `<template lang="...">` tags.
|
|
233
|
-
|
|
234
|
-
For example to enable parsing of pug templates:
|
|
235
|
-
|
|
236
|
-
```jsonc
|
|
237
|
-
{
|
|
238
|
-
"parserOptions": {
|
|
239
|
-
"templateTokenizer": {
|
|
240
|
-
// template tokenizer for `<template lang="pug">`
|
|
241
|
-
"pug": "vue-eslint-parser-template-tokenizer-pug",
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
}
|
|
245
|
-
```
|
|
246
|
-
|
|
247
|
-
This option is only intended for plugin developers. **Be careful** when using this option directly, as it may change behaviour of rules you might have enabled.
|
|
248
|
-
If you just want **pug** support, use [eslint-plugin-vue-pug](https://github.com/rashfael/eslint-plugin-vue-pug) instead, which uses this option internally.
|
|
249
|
-
|
|
250
|
-
See [implementing-custom-template-tokenizers.md](./docs/implementing-custom-template-tokenizers.md) for information on creating your own template tokenizer.
|
|
251
|
-
|
|
252
|
-
## 🎇 Usage for custom rules / plugins
|
|
253
|
-
|
|
254
|
-
- This parser provides `parserServices` to traverse `<template>`.
|
|
255
|
-
- `defineTemplateBodyVisitor(templateVisitor, scriptVisitor, options)` ... returns ESLint visitor to traverse `<template>`.
|
|
256
|
-
- `getTemplateBodyTokenStore()` ... returns ESLint `TokenStore` to get the tokens of `<template>`.
|
|
257
|
-
- `getDocumentFragment()` ... returns the root `VDocumentFragment`.
|
|
258
|
-
- `defineCustomBlocksVisitor(context, customParser, rule, scriptVisitor)` ... returns ESLint visitor that parses and traverses the contents of the custom block.
|
|
259
|
-
- `defineDocumentVisitor(documentVisitor, options)` ... returns ESLint visitor to traverses the document.
|
|
260
|
-
- [ast.md](./docs/ast.md) is `<template>` AST specification.
|
|
261
|
-
- [mustache-interpolation-spacing.js](https://github.com/vuejs/eslint-plugin-vue/blob/b434ff99d37f35570fa351681e43ba2cf5746db3/lib/rules/mustache-interpolation-spacing.js) is an example.
|
|
262
|
-
- Check your version of ESLint as the location of `defineTemplateBodyVisitor` was moved from `context` to `context.sourceCode` after major version `9.x`
|
|
263
|
-
|
|
264
|
-
### `defineTemplateBodyVisitor(templateBodyVisitor, scriptVisitor, options)`
|
|
265
|
-
|
|
266
|
-
*Arguments*
|
|
267
|
-
|
|
268
|
-
- `templateBodyVisitor` ... Event handlers for `<template>`.
|
|
269
|
-
- `scriptVisitor` ... Event handlers for `<script>` or scripts. (optional)
|
|
270
|
-
- `options` ... Options. (optional)
|
|
271
|
-
- `templateBodyTriggerSelector` ... Script AST node selector that triggers the templateBodyVisitor. Default is `"Program:exit"`. (optional)
|
|
272
|
-
|
|
273
|
-
```ts
|
|
274
|
-
import { AST } from "vue-eslint-parser"
|
|
275
|
-
|
|
276
|
-
export function create(context) {
|
|
277
|
-
return context.sourceCode.parserServices.defineTemplateBodyVisitor(
|
|
278
|
-
// Event handlers for <template>.
|
|
279
|
-
{
|
|
280
|
-
VElement(node: AST.VElement): void {
|
|
281
|
-
//...
|
|
282
|
-
}
|
|
283
|
-
},
|
|
284
|
-
// Event handlers for <script> or scripts. (optional)
|
|
285
|
-
{
|
|
286
|
-
Program(node: AST.ESLintProgram): void {
|
|
287
|
-
//...
|
|
288
|
-
}
|
|
289
|
-
},
|
|
290
|
-
// Options. (optional)
|
|
291
|
-
{
|
|
292
|
-
templateBodyTriggerSelector: "Program:exit"
|
|
293
|
-
}
|
|
294
|
-
)
|
|
295
|
-
}
|
|
296
|
-
```
|
|
297
|
-
|
|
298
|
-
## ⚠️ Known Limitations
|
|
299
|
-
|
|
300
|
-
Some rules make warnings due to the outside of `<script>` tags.
|
|
301
|
-
Please disable those rules for `.vue` files as necessary.
|
|
302
|
-
|
|
303
|
-
- [eol-last](http://eslint.org/docs/rules/eol-last)
|
|
304
|
-
- [linebreak-style](http://eslint.org/docs/rules/linebreak-style)
|
|
305
|
-
- [max-len](http://eslint.org/docs/rules/max-len)
|
|
306
|
-
- [max-lines](http://eslint.org/docs/rules/max-lines)
|
|
307
|
-
- [no-trailing-spaces](http://eslint.org/docs/rules/no-trailing-spaces)
|
|
308
|
-
- [unicode-bom](http://eslint.org/docs/rules/unicode-bom)
|
|
309
|
-
- Other rules which are using the source code text instead of AST might be confused as well.
|
|
310
|
-
|
|
311
|
-
## 📰 Changelog
|
|
312
|
-
|
|
313
|
-
- [GitHub Releases](https://github.com/vuejs/vue-eslint-parser/releases)
|
|
314
|
-
|
|
315
|
-
## 🍻 Contributing
|
|
316
|
-
|
|
317
|
-
Welcome contributing!
|
|
318
|
-
|
|
319
|
-
Please use GitHub's Issues/PRs.
|
|
320
|
-
|
|
321
|
-
If you want to write code, please execute `npm install` after you cloned this repository.
|
|
322
|
-
The `npm install` command installs dependencies.
|
|
323
|
-
|
|
324
|
-
### Development Tools
|
|
325
|
-
|
|
326
|
-
- `npm test` runs tests and measures coverage.
|
|
327
|
-
- `npm run build` compiles TypeScript source code to `index.js`, `index.js.map`, and `index.d.ts`.
|
|
328
|
-
- `npm run coverage` shows the coverage result of `npm test` command with the default browser.
|
|
329
|
-
- `npm run clean` removes the temporary files which are created by `npm test` and `npm run build`.
|
|
330
|
-
- `npm run lint` runs ESLint.
|
|
331
|
-
- `npm run update-fixtures` updates files in `test/fixtures/ast` directory based on `test/fixtures/ast/*/source.vue` files.
|
|
332
|
-
- `npm run watch` runs `build`, `update-fixtures`, and tests with `--watch` option.
|