@o3r/eslint-config 14.6.0-prerelease.7 → 14.6.0-prerelease.70

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@o3r/eslint-config",
3
- "version": "14.6.0-prerelease.7",
3
+ "version": "14.6.0-prerelease.70",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -37,23 +37,24 @@
37
37
  "build:builders": "tsc -b tsconfig.builders.json --pretty && yarn generate-cjs-manifest"
38
38
  },
39
39
  "dependencies": {
40
- "@o3r/schematics": "~14.6.0-prerelease.7"
40
+ "@o3r/schematics": "~14.6.0-prerelease.70"
41
41
  },
42
42
  "peerDependencies": {
43
- "@angular-devkit/core": "^21.0.0",
44
- "@angular-devkit/schematics": "^21.0.0",
45
- "@angular-eslint/builder": "^21.0.0",
46
- "@angular/compiler": "^21.0.0",
43
+ "@angular-devkit/core": "^22.0.0",
44
+ "@angular-devkit/schematics": "^22.0.0",
45
+ "@angular-eslint/builder": "^22.0.0",
46
+ "@angular/compiler": "^22.0.0",
47
47
  "@eslint-community/eslint-plugin-eslint-comments": "^4.4.0",
48
+ "@eslint/compat": "^2.0.4",
48
49
  "@eslint/js": "^8.57.0 || ^9.22.0",
49
- "@o3r/eslint-plugin": "~14.6.0-prerelease.7",
50
- "@o3r/schematics": "~14.6.0-prerelease.7",
51
- "@schematics/angular": "^21.0.0",
50
+ "@o3r/eslint-plugin": "~14.6.0-prerelease.70",
51
+ "@o3r/schematics": "~14.6.0-prerelease.70",
52
+ "@schematics/angular": "^22.0.0",
52
53
  "@stylistic/eslint-plugin": "~5.10.0",
53
54
  "@typescript-eslint/parser": "^8.15.0",
54
55
  "@typescript-eslint/types": "^8.15.0",
55
56
  "@typescript-eslint/utils": "^8.15.0",
56
- "angular-eslint": "^21.0.0",
57
+ "angular-eslint": "^22.0.0",
57
58
  "eslint": "^8.57.0 || ^9.22.0",
58
59
  "eslint-import-resolver-node": "^0.3.4 || ^0.4.0",
59
60
  "eslint-import-resolver-typescript": "^4.0.0",
@@ -69,27 +70,28 @@
69
70
  "jest": "^29.0.0 || ^30.2.0",
70
71
  "jsonc-eslint-parser": "^2.4.0",
71
72
  "type-fest": "^5.3.1",
72
- "typescript": "^5.9.0",
73
+ "typescript": "^6.0.0",
73
74
  "typescript-eslint": "^8.15.0",
74
75
  "yaml-eslint-parser": "^1.2.2"
75
76
  },
76
77
  "devDependencies": {
77
- "@angular-devkit/core": "~21.2.0",
78
- "@angular-devkit/schematics": "~21.2.0",
79
- "@angular/cli": "~21.2.0",
80
- "@angular/compiler": "~21.2.17",
78
+ "@angular-devkit/core": "~22.0.4",
79
+ "@angular-devkit/schematics": "~22.0.4",
80
+ "@angular/cli": "~22.0.4",
81
+ "@angular/compiler": "~22.0.4",
81
82
  "@eslint-community/eslint-plugin-eslint-comments": "^4.4.0",
83
+ "@eslint/compat": "~2.1.0",
82
84
  "@eslint/js": "~9.39.0",
83
- "@nx/eslint-plugin": "~22.7.0",
84
- "@o3r/build-helpers": "~14.6.0-prerelease.7",
85
- "@o3r/eslint-plugin": "~14.6.0-prerelease.7",
86
- "@o3r/test-helpers": "~14.6.0-prerelease.7",
87
- "@schematics/angular": "~21.2.0",
85
+ "@nx/eslint-plugin": "~23.1.0",
86
+ "@o3r/build-helpers": "~14.6.0-prerelease.70",
87
+ "@o3r/eslint-plugin": "~14.6.0-prerelease.70",
88
+ "@o3r/test-helpers": "~14.6.0-prerelease.70",
89
+ "@schematics/angular": "~22.0.0",
88
90
  "@stylistic/eslint-plugin": "~5.10.0",
89
91
  "@types/jest": "~30.0.0",
90
92
  "@types/node": "~24.13.0",
91
- "@typescript-eslint/parser": "~8.62.0",
92
- "angular-eslint": "~21.4.0",
93
+ "@typescript-eslint/parser": "~8.65.0",
94
+ "angular-eslint": "~22.0.0",
93
95
  "cpy-cli": "^6.0.0",
94
96
  "eslint": "~9.39.0",
95
97
  "eslint-import-resolver-node": "~0.4.0",
@@ -106,14 +108,14 @@
106
108
  "jest-junit": "~16.0.0",
107
109
  "jest-util": "~30.4.0",
108
110
  "jsonc-eslint-parser": "~2.4.0",
109
- "nx": "~22.7.0",
111
+ "nx": "~23.1.0",
110
112
  "rxjs": "^7.8.1",
111
113
  "semver": "^7.5.2",
112
114
  "ts-jest": "~29.4.0",
113
115
  "tslib": "^2.6.2",
114
116
  "type-fest": "^5.3.1",
115
- "typescript": "~5.9.2",
116
- "typescript-eslint": "~8.62.0"
117
+ "typescript": "~6.0.3",
118
+ "typescript-eslint": "~8.65.0"
117
119
  },
118
120
  "peerDependenciesMeta": {
119
121
  "@angular-devkit/core": {
@@ -128,6 +130,9 @@
128
130
  "@angular/compiler": {
129
131
  "optional": true
130
132
  },
133
+ "@eslint/compat": {
134
+ "optional": true
135
+ },
131
136
  "@o3r/schematics": {
132
137
  "optional": true
133
138
  },
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.updateEslintConfig = void 0;
4
- const path = require("node:path");
4
+ const tslib_1 = require("tslib");
5
+ const path = tslib_1.__importStar(require("node:path"));
5
6
  const core_1 = require("@angular-devkit/core");
6
7
  const schematics_1 = require("@angular-devkit/schematics");
7
8
  const schematics_2 = require("@o3r/schematics");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../schematics/ng-add/eslint/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../schematics/ng-add/eslint/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../schematics/ng-add/index.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,IAAI,EAIV,MAAM,4BAA4B,CAAC;AAcpC,OAAO,KAAK,EACV,qBAAqB,EACtB,MAAM,UAAU,CAAC;AA+HlB;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,SAAS,qBAAqB,SAA2C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../schematics/ng-add/index.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,IAAI,EAIV,MAAM,4BAA4B,CAAC;AAcpC,OAAO,KAAK,EACV,qBAAqB,EACtB,MAAM,UAAU,CAAC;AAgIlB;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,SAAS,qBAAqB,SAA2C,CAAC"}
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ngAdd = void 0;
4
- const path = require("node:path");
4
+ const tslib_1 = require("tslib");
5
+ const path = tslib_1.__importStar(require("node:path"));
5
6
  const schematics_1 = require("@angular-devkit/schematics");
6
7
  const schematics_2 = require("@o3r/schematics");
7
8
  const index_1 = require("./eslint/index");
@@ -14,6 +15,7 @@ const dependenciesToInstall = [];
14
15
  * List of external dependencies to be added to the project as dev dependencies
15
16
  */
16
17
  const devDependenciesToInstall = [
18
+ '@eslint/compat',
17
19
  '@eslint/js',
18
20
  '@eslint-community/eslint-plugin-eslint-comments',
19
21
  '@stylistic/eslint-plugin',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../schematics/ng-add/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../schematics/ng-add/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  'use strict';
2
- const { dirname, posix, relative, sep } = require('node:path');
2
+ const { readFileSync } = require('node:fs');
3
+ const { dirname, posix, relative, sep, isAbsolute } = require('node:path');
3
4
  const { pathToFileURL } = require('node:url');
4
5
  const { defineConfig } = require('eslint/config');
5
6
  const { sync } = require('globby');
@@ -50,6 +51,78 @@ const mergeESLintFlatConfigs = async (localDirname, globs, ...additionalConfigs)
50
51
  ]);
51
52
  };
52
53
 
54
+ /**
55
+ * Checks if a gitattributes attribute entry matches the requested attribute.
56
+ * @param {string} entry The attribute entry from the line (e.g., "attr", "-attr", "attr=value").
57
+ * @param {string} attrName The attribute name to match.
58
+ * @param {string|undefined} attrValue The expected value, or undefined for bare name matching.
59
+ * @returns {boolean} Whether the entry matches.
60
+ */
61
+ function matchesAttribute(entry, attrName, attrValue) {
62
+ // Unset: -attr
63
+ if (entry.startsWith('-')) {
64
+ return false;
65
+ }
66
+
67
+ const [entryName, entryValue] = entry.split('=');
68
+
69
+ if (entryValue === undefined) {
70
+ // Bare entry: "attr" — matches bare name queries only
71
+ return attrValue === undefined && entryName === attrName;
72
+ }
73
+
74
+ if (entryName !== attrName) {
75
+ return false;
76
+ }
77
+
78
+ if (attrValue !== undefined) {
79
+ // name=value query: exact match
80
+ return entryValue === attrValue;
81
+ }
82
+
83
+ // Bare name query with value entry: only "true" is truthy
84
+ return entryValue === 'true';
85
+ }
86
+
87
+ /**
88
+ * Reads a .gitattributes file and returns an object with ignore patterns
89
+ * for files matching the specified attribute.
90
+ * @param {string} gitattributesPath The absolute path to the .gitattributes file.
91
+ * @param {string} attribute The attribute to match. Either a bare name or "name=value".
92
+ * @param {string} name The name of the config.
93
+ * @returns {import('@typescript-eslint/utils').TSESLint.FlatConfig} An object with `name` and `ignores` properties.
94
+ * @throws {Error} If the path is not an absolute path.
95
+ */
96
+ function ignoreFilesWithGitAttribute(gitattributesPath, attribute, name) {
97
+ if (!isAbsolute(gitattributesPath)) {
98
+ throw new Error('The ignore file location must be an absolute path.');
99
+ }
100
+
101
+ const { convertIgnorePatternToMinimatch } = require('@eslint/compat');
102
+ const [attrName, attrValue] = attribute.split('=');
103
+
104
+ const file = readFileSync(gitattributesPath, 'utf8');
105
+ const lines = file
106
+ .split(/\r?\n/u)
107
+ .map((line) => line.trim())
108
+ .filter((line) => line && !line.startsWith('#'));
109
+
110
+ return {
111
+ name: name || `Ignore files based on .gitattributes patterns for ${attribute}`,
112
+ ignores: lines
113
+ .map((line) => line.split(/\s+/u))
114
+ .filter((parts) =>
115
+ parts
116
+ .slice(1)
117
+ .some((entry) =>
118
+ matchesAttribute(entry, attrName, attrValue)
119
+ )
120
+ )
121
+ .map((parts) => convertIgnorePatternToMinimatch(parts[0]))
122
+ };
123
+ }
124
+
53
125
  module.exports = {
54
- mergeESLintFlatConfigs
126
+ mergeESLintFlatConfigs,
127
+ ignoreFilesWithGitAttribute
55
128
  };