1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
| import type { Linter } from 'eslint';
|
| import { interopDefault } from '../util';
|
| export async function yaml(): Promise<Linter.Config[]> {
| const [pluginYaml, parserYaml] = await Promise.all([
| interopDefault(import('eslint-plugin-yml')),
| interopDefault(import('yaml-eslint-parser')),
| ] as const);
|
| return [
| {
| files: ['**/*.y?(a)ml'],
| plugins: {
| yaml: pluginYaml,
| },
| languageOptions: {
| parser: parserYaml,
| },
| rules: {
| 'style/spaced-comment': 'off',
|
| 'yaml/block-mapping': 'error',
| 'yaml/block-sequence': 'error',
| 'yaml/no-empty-key': 'error',
| 'yaml/no-empty-sequence-entry': 'error',
| 'yaml/no-irregular-whitespace': 'error',
| 'yaml/plain-scalar': 'error',
|
| 'yaml/vue-custom-block/no-parsing-error': 'error',
|
| 'yaml/block-mapping-question-indicator-newline': 'error',
| 'yaml/block-sequence-hyphen-indicator-newline': 'error',
| 'yaml/flow-mapping-curly-newline': 'error',
| 'yaml/flow-mapping-curly-spacing': 'error',
| 'yaml/flow-sequence-bracket-newline': 'error',
| 'yaml/flow-sequence-bracket-spacing': 'error',
| 'yaml/indent': ['error', 2],
| 'yaml/key-spacing': 'error',
| 'yaml/no-tab-indent': 'error',
| 'yaml/quotes': [
| 'error',
| {
| avoidEscape: true,
| prefer: 'single',
| },
| ],
| 'yaml/spaced-comment': 'error',
| },
| },
| {
| files: ['pnpm-workspace.yaml'],
| rules: {
| 'yaml/sort-keys': [
| 'error',
| {
| order: [
| 'packages',
| 'publicHoistPattern',
| 'strictPeerDependencies',
| 'autoInstallPeers',
| 'dedupePeerDependents',
| 'verifyDepsBeforeRun',
| 'overrides',
| 'patchedDependencies',
| 'hoistPattern',
| 'catalog',
| 'catalogs',
|
| 'allowedDeprecatedVersions',
| 'allowBuilds',
| 'allowNonAppliedPatches',
| 'configDependencies',
| 'ignoredBuiltDependencies',
| 'ignoredOptionalDependencies',
| 'neverBuiltDependencies',
| 'onlyBuiltDependencies',
| 'onlyBuiltDependenciesFile',
| 'packageExtensions',
| 'peerDependencyRules',
| 'supportedArchitectures',
| ],
| pathPattern: '^$',
| },
| {
| order: { type: 'asc' },
| pathPattern: '^.+$',
| },
| ],
| },
| },
| ];
| }
|
|