Skip to content

Commit bc92444

Browse files
committed
Configure Angular template rules
1 parent c7e454a commit bc92444

File tree

1 file changed

+77
-1
lines changed

1 file changed

+77
-1
lines changed

src/rules/angular/template/angular-template-config.ts

Lines changed: 77 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,17 @@ export function angularTemplateConfig(): Linter.Config {
77
return {
88
files: ['**/*.component.html'],
99
languageOptions: {
10-
parser: angularTemplateParser as unknown as Linter.Parser,
10+
parser: {
11+
meta: angularTemplateParser.meta,
12+
// eslint-disable-next-line @typescript-eslint/naming-convention -- existing property.
13+
parseForESLint: angularTemplateParser.parseForESLint,
14+
},
1115
},
1216
plugins: {
1317
'@angular-eslint/template': angularTemplateEslintPlugin as unknown as ESLint.Plugin,
1418
},
1519
rules: {
20+
...disabledBrokenRules(),
1621
'@angular-eslint/template/alt-text': 'error',
1722
'@angular-eslint/template/attributes-order': ['warn', {
1823
alphabetical: false,
@@ -73,3 +78,74 @@ export function angularTemplateConfig(): Linter.Config {
7378
},
7479
};
7580
}
81+
82+
/**
83+
* Disable rules that are broken for Angular templates.
84+
*/
85+
function disabledBrokenRules(): Record<string, string> {
86+
return {
87+
// From ESLint
88+
'no-implicit-globals': 'off',
89+
'strict': 'off',
90+
// From @stylistic
91+
'@stylistic/indent': 'off',
92+
'@stylistic/lines-around-comment': 'off',
93+
// From eslint-plugin-import
94+
'import/namespace': 'off',
95+
'import/no-unused-modules': 'off',
96+
// From eslint-plugin-jsdoc
97+
'jsdoc/check-alignment': 'off',
98+
'jsdoc/check-property-names': 'off',
99+
'jsdoc/check-syntax': 'off',
100+
'jsdoc/check-tag-names': 'off',
101+
'jsdoc/check-template-names': 'off',
102+
'jsdoc/check-types': 'off',
103+
'jsdoc/check-values': 'off',
104+
'jsdoc/empty-tags': 'off',
105+
'jsdoc/empty-types': 'off',
106+
'jsdoc/escape-inline-tags': 'off',
107+
'jsdoc/imports-as-dependencies': 'off',
108+
'jsdoc/multiline-blocks': 'off',
109+
'jsdoc/no-blank-blocks': 'off',
110+
'jsdoc/no-multi-asterisks': 'off',
111+
'jsdoc/no-undefined-types': 'off',
112+
'jsdoc/prefer-import-tag': 'off',
113+
'jsdoc/reject-any-type': 'off',
114+
'jsdoc/reject-function-type': 'off',
115+
'jsdoc/require-asterisk-prefix': 'off',
116+
'jsdoc/require-description-complete-sentence': 'off',
117+
'jsdoc/require-hyphen-before-param-description': 'off',
118+
'jsdoc/require-next-description': 'off',
119+
'jsdoc/require-next-type': 'off',
120+
'jsdoc/require-property': 'off',
121+
'jsdoc/require-property-description': 'off',
122+
'jsdoc/require-property-name': 'off',
123+
'jsdoc/require-property-type': 'off',
124+
'jsdoc/require-throws-description': 'off',
125+
'jsdoc/require-throws-type': 'off',
126+
'jsdoc/require-yields-description': 'off',
127+
'jsdoc/require-yields-type': 'off',
128+
'jsdoc/sort-tags': 'off',
129+
'jsdoc/tag-lines': 'off',
130+
'jsdoc/ts-method-signature-style': 'off',
131+
'jsdoc/ts-no-empty-object-type': 'off',
132+
'jsdoc/ts-no-unnecessary-template-expression': 'off',
133+
'jsdoc/ts-prefer-function-type': 'off',
134+
'jsdoc/type-formatting': 'off',
135+
'jsdoc/valid-types': 'off',
136+
// From eslint-plugin-n
137+
'n/no-deprecated-api': 'off',
138+
'n/no-path-concat': 'off',
139+
'n/no-unsupported-features/es-builtins': 'off',
140+
'n/no-unsupported-features/node-builtins': 'off',
141+
'n/prefer-global/buffer': 'off',
142+
'n/prefer-global/console': 'off',
143+
'n/prefer-global/process': 'off',
144+
'n/prefer-global/text-decoder': 'off',
145+
'n/prefer-global/text-encoder': 'off',
146+
'n/prefer-global/url': 'off',
147+
'n/prefer-global/url-search-params': 'off',
148+
'n/prefer-promises/dns': 'off',
149+
'n/prefer-promises/fs': 'off',
150+
};
151+
}

0 commit comments

Comments
 (0)