@taiga-ui/eslint-plugin-experience-next 0.258.0 → 0.259.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 +6 -13
  2. package/index.esm.js +12 -1
  3. package/package.json +2 -2
package/README.md CHANGED
@@ -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);
@@ -412,12 +416,14 @@ var recommended = tseslint.config(progress.configs['recommended-ci'], require('e
412
416
  '@angular-eslint/directive-selector': 'error',
413
417
  '@angular-eslint/no-attribute-decorator': 'error',
414
418
  '@angular-eslint/no-conflicting-lifecycle': 'error',
419
+ '@angular-eslint/no-duplicates-in-metadata-arrays': 'error',
415
420
  '@angular-eslint/no-empty-lifecycle-method': 'error',
416
421
  '@angular-eslint/no-input-prefix': 'error',
417
422
  '@angular-eslint/no-output-on-prefix': 'error',
418
423
  '@angular-eslint/no-queries-metadata-property': 'error',
419
424
  '@angular-eslint/prefer-on-push-component-change-detection': 'error',
420
425
  '@angular-eslint/prefer-output-readonly': 'error',
426
+ '@angular-eslint/prefer-signals': angularVersion >= modernAngularRules.preferSignals ? 'error' : 'off',
421
427
  '@angular-eslint/prefer-standalone': angularVersion >= modernAngularRules.defaultStandalone ? 'off' : 'error',
422
428
  '@angular-eslint/relative-url-prefix': 'error',
423
429
  '@angular-eslint/sort-lifecycle-methods': 'error',
@@ -940,9 +946,14 @@ var recommended = tseslint.config(progress.configs['recommended-ci'], require('e
940
946
  files: ['**/*.html'],
941
947
  extends: [...angular.configs.templateRecommended, ...angular.configs.templateAccessibility],
942
948
  rules: {
949
+ '@angular-eslint/consistent-component-styles': angularVersion >= modernAngularRules.modernStyles ? 'error' : 'off',
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.259.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",