@taiga-ui/eslint-plugin-experience-next 0.258.0 → 0.260.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.
Files changed (3) hide show
  1. package/README.md +7 -14
  2. package/index.esm.js +12 -1
  3. package/package.json +2 -2
package/README.md CHANGED
@@ -9,7 +9,7 @@ npm i -D eslint @taiga-ui/eslint-plugin-experience-next
9
9
  **Attention**: package does not support commonjs, use `eslint.config.{ts,mjs,js}` instead of `eslint.config.cjs`
10
10
 
11
11
  ```js
12
- import taiga from 'projects/eslint-plugin-experience-next';
12
+ import taiga from '@taiga-ui/eslint-plugin-experience-next';
13
13
 
14
14
  export default [
15
15
  ...taiga.configs.recommended,
@@ -33,24 +33,17 @@ export default [
33
33
  ];
34
34
  ```
35
35
 
36
- ### taiga.configs.recommended
37
-
38
36
  - ✅ = recommended
39
37
  - 🔧 = fixable
40
38
  - 💡 = has suggestions
41
39
 
42
40
  | Rule | Description | ✅ | 🔧 | 💡 |
43
41
  | --------------------------- | --------------------------------------------------------------------------------------------- | --- | --- | --- |
44
- | decorator-key-sort | Sorts the keys of the object passed to the `@Component/@Injectable/@NgModule/@Pipe` decorator | | 🔧 | |
42
+ | decorator-key-sort | Sorts the keys of the object passed to the `@Component/@Injectable/@NgModule/@Pipe` decorator || 🔧 | |
45
43
  | injection-token-description | They are required to provide a description for `InjectionToken` | ✅ | | |
46
- | no-deep-imports | Disables deep imports of Taiga UI packages | | 🔧 | |
47
- | no-implicit-public | Prevents the use of the public modifier in classes | | 🔧 | |
44
+ | no-deep-imports | Disables deep imports of Taiga UI packages || 🔧 | |
45
+ | no-implicit-public | Prevents the use of the public modifier in classes || 🔧 | |
48
46
  | no-private-esnext-fields | Prevents the use of the ESNext private methods | ✅ | | |
49
- | standalone-imports-sort | Sort imports alphabetically | | 🔧 | |
50
-
51
- ### taiga.configs['taiga-specific']
52
-
53
- | Rule | Description | ✅ | 🔧 | 💡 |
54
- | ---------------------- | ------------------------------------------------------------------------------------------- | --- | --- | --- |
55
- | prefer-deep-imports | Allow deep imports of Taiga UI packages | | 🔧 | |
56
- | strict-tui-doc-example | If you use the addon-doc, there will be a hint that you are importing something incorrectly | | 🔧 | |
47
+ | standalone-imports-sort | Sort imports alphabetically || 🔧 | |
48
+ | prefer-deep-imports | Allow deep imports of Taiga UI packages | | 🔧 | |
49
+ | strict-tui-doc-example | If you use the addon-doc, there will be a hint that you are importing something incorrectly | | 🔧 | |
package/index.esm.js CHANGED
@@ -367,7 +367,11 @@ const parserOptions = tsconfig ? {
367
367
  }
368
368
  };
369
369
  const modernAngularRules = {
370
- defaultStandalone: 19};
370
+ defaultStandalone: 19,
371
+ modernStyles: 17,
372
+ preferControlFlow: 17,
373
+ preferSignals: 17
374
+ };
371
375
  try {
372
376
  const major = require('@angular/cli').VERSION.major;
373
377
  angularVersion = parseInt(major, 10);
@@ -407,17 +411,20 @@ var recommended = tseslint.config(progress.configs['recommended-ci'], require('e
407
411
  allowAsStatement: true
408
412
  }],
409
413
  'sonarjs/no-identical-functions': 'error',
414
+ '@angular-eslint/consistent-component-styles': angularVersion >= modernAngularRules.modernStyles ? 'error' : 'off',
410
415
  '@angular-eslint/contextual-decorator': 'error',
411
416
  '@angular-eslint/contextual-lifecycle': 'error',
412
417
  '@angular-eslint/directive-selector': 'error',
413
418
  '@angular-eslint/no-attribute-decorator': 'error',
414
419
  '@angular-eslint/no-conflicting-lifecycle': 'error',
420
+ '@angular-eslint/no-duplicates-in-metadata-arrays': 'error',
415
421
  '@angular-eslint/no-empty-lifecycle-method': 'error',
416
422
  '@angular-eslint/no-input-prefix': 'error',
417
423
  '@angular-eslint/no-output-on-prefix': 'error',
418
424
  '@angular-eslint/no-queries-metadata-property': 'error',
419
425
  '@angular-eslint/prefer-on-push-component-change-detection': 'error',
420
426
  '@angular-eslint/prefer-output-readonly': 'error',
427
+ '@angular-eslint/prefer-signals': angularVersion >= modernAngularRules.preferSignals ? 'error' : 'off',
421
428
  '@angular-eslint/prefer-standalone': angularVersion >= modernAngularRules.defaultStandalone ? 'off' : 'error',
422
429
  '@angular-eslint/relative-url-prefix': 'error',
423
430
  '@angular-eslint/sort-lifecycle-methods': 'error',
@@ -942,7 +949,11 @@ var recommended = tseslint.config(progress.configs['recommended-ci'], require('e
942
949
  rules: {
943
950
  '@angular-eslint/template/interactive-supports-focus': 'off',
944
951
  '@angular-eslint/template/label-has-associated-control': 'off',
952
+ '@angular-eslint/template/no-distracting-elements': 'error',
953
+ '@angular-eslint/template/no-duplicate-attributes': 'error',
945
954
  '@angular-eslint/template/no-negated-async': 'off',
955
+ '@angular-eslint/template/prefer-control-flow': angularVersion >= modernAngularRules.preferControlFlow ? 'error' : 'off',
956
+ '@angular-eslint/template/prefer-self-closing-tags': 'error',
946
957
  '@typescript-eslint/ban-ts-comment': 'off',
947
958
  'import/namespace': 'off'
948
959
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/eslint-plugin-experience-next",
3
- "version": "0.258.0",
3
+ "version": "0.260.0",
4
4
  "description": "An ESLint plugin to enforce a consistent code styles across taiga-ui projects",
5
5
  "license": "Apache-2.0",
6
6
  "main": "index.ts",
@@ -12,7 +12,7 @@
12
12
  "@typescript-eslint/eslint-plugin": ">=8.25.0",
13
13
  "angular-eslint": ">=19.1.0",
14
14
  "eslint": ">=9.21.0",
15
- "eslint-config-prettier": ">=10.0.1",
15
+ "eslint-config-prettier": ">=10.0.2",
16
16
  "eslint-plugin-de-morgan": ">=1.1.0",
17
17
  "eslint-plugin-decorator-position": ">=6.0.0",
18
18
  "eslint-plugin-file-progress": ">=3.0.1",