Skip to content

Commit 8e0bcbd

Browse files
committed
Pulled in from angular-v17
1 parent a6f55c0 commit 8e0bcbd

File tree

15 files changed

+16748
-25254
lines changed

15 files changed

+16748
-25254
lines changed

.eslintrc.js

Lines changed: 269 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,269 @@
1+
/*
2+
👋 Hi! This file was autogenerated by tslint-to-eslint-config.
3+
https://github.com/typescript-eslint/tslint-to-eslint-config
4+
5+
It represents the closest reasonable ESLint configuration to this
6+
project's original TSLint configuration.
7+
8+
We recommend eventually switching this configuration to extend from
9+
the recommended rulesets in typescript-eslint.
10+
https://github.com/typescript-eslint/tslint-to-eslint-config/blob/master/docs/FAQs.md
11+
12+
Happy linting! 💖
13+
*/
14+
module.exports = {
15+
"env": {
16+
"browser": true,
17+
"es6": true
18+
},
19+
"extends": [
20+
"prettier"
21+
],
22+
"parser": "@typescript-eslint/parser",
23+
"parserOptions": {
24+
"project": "tsconfig.json",
25+
"sourceType": "module"
26+
},
27+
"plugins": [
28+
"@angular-eslint/eslint-plugin",
29+
"eslint-plugin-import",
30+
"@angular-eslint/eslint-plugin-template",
31+
"eslint-plugin-react",
32+
"@typescript-eslint"
33+
],
34+
"root": true,
35+
"rules": {
36+
"@angular-eslint/component-class-suffix": "error",
37+
"@angular-eslint/component-selector": [
38+
"error",
39+
{
40+
"type": "element",
41+
"prefix": "kebab-case"
42+
}
43+
],
44+
"@angular-eslint/contextual-lifecycle": "error",
45+
"@angular-eslint/directive-class-suffix": "error",
46+
"@angular-eslint/directive-selector": [
47+
"error",
48+
{
49+
"type": "attribute",
50+
"prefix": "camelCase"
51+
}
52+
],
53+
"@angular-eslint/no-host-metadata-property": "off",
54+
"@angular-eslint/no-input-rename": "error",
55+
"@angular-eslint/no-inputs-metadata-property": "error",
56+
"@angular-eslint/no-output-on-prefix": "error",
57+
"@angular-eslint/no-output-rename": "error",
58+
"@angular-eslint/no-outputs-metadata-property": "error",
59+
"@angular-eslint/template/banana-in-box": "error",
60+
"@angular-eslint/template/eqeqeq": "error",
61+
"@angular-eslint/template/no-negated-async": "error",
62+
"@angular-eslint/use-component-view-encapsulation": "error",
63+
"@angular-eslint/use-lifecycle-interface": "error",
64+
"@angular-eslint/use-pipe-transform-interface": "error",
65+
"@typescript-eslint/array-type": [
66+
"error",
67+
{
68+
"default": "array"
69+
}
70+
],
71+
"@typescript-eslint/consistent-type-definitions": "error",
72+
"@typescript-eslint/dot-notation": "off",
73+
"@typescript-eslint/explicit-member-accessibility": [
74+
"error",
75+
{
76+
"accessibility": "explicit"
77+
}
78+
],
79+
"@typescript-eslint/member-delimiter-style": [
80+
"off",
81+
{
82+
"multiline": {
83+
"delimiter": "none",
84+
"requireLast": true
85+
},
86+
"singleline": {
87+
"delimiter": "semi",
88+
"requireLast": false
89+
}
90+
}
91+
],
92+
"@typescript-eslint/member-ordering": "error",
93+
"@typescript-eslint/naming-convention": [
94+
"error",
95+
{
96+
"selector": "variable",
97+
"format": [
98+
"camelCase",
99+
"UPPER_CASE"
100+
],
101+
"leadingUnderscore": "forbid",
102+
"trailingUnderscore": "forbid"
103+
}
104+
],
105+
"@typescript-eslint/no-empty-function": "off",
106+
"@typescript-eslint/no-empty-interface": "error",
107+
"@typescript-eslint/no-inferrable-types": [
108+
"error",
109+
{
110+
"ignoreParameters": true
111+
}
112+
],
113+
"@typescript-eslint/no-misused-new": "error",
114+
"@typescript-eslint/no-non-null-assertion": "off",
115+
"@typescript-eslint/no-shadow": [
116+
"error",
117+
{
118+
"hoist": "all"
119+
}
120+
],
121+
"@typescript-eslint/no-unused-expressions": "error",
122+
"@typescript-eslint/prefer-function-type": "error",
123+
"@typescript-eslint/semi": [
124+
"off",
125+
null
126+
],
127+
"@typescript-eslint/unified-signatures": "off",
128+
"arrow-body-style": "error",
129+
"arrow-parens": [
130+
"off",
131+
"always"
132+
],
133+
"brace-style": [
134+
"off",
135+
"off"
136+
],
137+
"constructor-super": "error",
138+
"curly": "error",
139+
"dot-notation": "off",
140+
"eqeqeq": [
141+
"error",
142+
"smart"
143+
],
144+
"guard-for-in": "error",
145+
"id-denylist": "off",
146+
"id-match": "off",
147+
"import/no-deprecated": "warn",
148+
"import/order": [
149+
"error",
150+
{
151+
"alphabetize": {
152+
"caseInsensitive": true,
153+
"order": "asc"
154+
},
155+
"newlines-between": "always",
156+
"groups": [
157+
[
158+
"builtin",
159+
"external",
160+
"internal",
161+
"unknown",
162+
"object",
163+
"type"
164+
],
165+
"parent",
166+
[
167+
"sibling",
168+
"index"
169+
]
170+
],
171+
"distinctGroup": false,
172+
"pathGroupsExcludedImportTypes": [],
173+
"pathGroups": [
174+
{
175+
"pattern": "./",
176+
"patternOptions": {
177+
"nocomment": true,
178+
"dot": true
179+
},
180+
"group": "sibling",
181+
"position": "before"
182+
},
183+
{
184+
"pattern": ".",
185+
"patternOptions": {
186+
"nocomment": true,
187+
"dot": true
188+
},
189+
"group": "sibling",
190+
"position": "before"
191+
},
192+
{
193+
"pattern": "..",
194+
"patternOptions": {
195+
"nocomment": true,
196+
"dot": true
197+
},
198+
"group": "parent",
199+
"position": "before"
200+
},
201+
{
202+
"pattern": "../",
203+
"patternOptions": {
204+
"nocomment": true,
205+
"dot": true
206+
},
207+
"group": "parent",
208+
"position": "before"
209+
}
210+
]
211+
}
212+
],
213+
"max-classes-per-file": [
214+
"error",
215+
1
216+
],
217+
"no-bitwise": "error",
218+
"no-caller": "error",
219+
"no-debugger": "error",
220+
"no-empty": "off",
221+
"no-empty-function": "off",
222+
"no-eval": "error",
223+
"no-fallthrough": "error",
224+
"no-irregular-whitespace": "off",
225+
"no-new-wrappers": "error",
226+
"no-restricted-imports": [
227+
"error",
228+
"rxjs/Rx"
229+
],
230+
"no-shadow": "off",
231+
"no-throw-literal": "error",
232+
"no-undef-init": "error",
233+
"no-underscore-dangle": "off",
234+
"no-unused-expressions": "off",
235+
"no-unused-labels": "error",
236+
"no-var": "error",
237+
"padded-blocks": [
238+
"off",
239+
{
240+
"blocks": "never"
241+
},
242+
{
243+
"allowSingleLineBlocks": true
244+
}
245+
],
246+
"prefer-const": "error",
247+
"radix": "error",
248+
"react/jsx-tag-spacing": [
249+
"off",
250+
{
251+
"afterOpening": "allow",
252+
"closingSlash": "allow"
253+
}
254+
],
255+
"space-in-parens": [
256+
"off",
257+
"never"
258+
],
259+
"spaced-comment": [
260+
"error",
261+
"always",
262+
{
263+
"markers": [
264+
"/"
265+
]
266+
}
267+
]
268+
}
269+
};

angular.json

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,18 +90,24 @@
9090
"serve": {
9191
"builder": "@angular-devkit/build-angular:dev-server",
9292
"options": {
93-
"browserTarget": "playground:build"
93+
"buildTarget": "playground:build"
9494
},
9595
"configurations": {
9696
"production": {
97-
"browserTarget": "playground:build:production"
97+
"buildTarget": "playground:build:production"
9898
}
9999
}
100+
},
101+
"lint": {
102+
"builder": "@angular-eslint/builder:lint",
103+
"options": {
104+
"lintFilePatterns": ["apps/playground/src/**/*.ts", "apps/playground/src/**/*.html"]
105+
}
100106
}
101107
}
102108
}
103109
},
104110
"cli": {
105-
"analytics": "d81f7890-056e-4fbd-90be-bc8fb5b6dfaf"
111+
"schematicCollections": ["@angular-eslint/schematics"]
106112
}
107113
}

0 commit comments

Comments
 (0)