@checkdigit/eslint-plugin 7.13.0-PR.57-4258 → 7.13.0-PR.57-58ae
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/dist-mjs/file-path-comment.mjs +6 -1
- package/dist-mjs/no-util.mjs +13 -10
- package/dist-types/no-util.d.ts +1 -1
- package/package.json +1 -1
- package/src/file-path-comment.ts +8 -1
- package/src/index.ts +1 -1
- package/src/no-util.ts +12 -9
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
// src/file-path-comment.ts
|
|
2
|
+
var DISABLE_NEXT_LINE = "eslint-disable-next-line";
|
|
2
3
|
var file_path_comment_default = {
|
|
3
4
|
meta: {
|
|
4
5
|
type: "suggestion",
|
|
@@ -14,6 +15,10 @@ var file_path_comment_default = {
|
|
|
14
15
|
if (firstLine === void 0 || expectedPath === void 0) {
|
|
15
16
|
return {};
|
|
16
17
|
}
|
|
18
|
+
const firstComment = firstLine.split("// ")[1];
|
|
19
|
+
if (firstComment?.startsWith(DISABLE_NEXT_LINE) === true) {
|
|
20
|
+
return {};
|
|
21
|
+
}
|
|
17
22
|
if (!firstLine.startsWith("//")) {
|
|
18
23
|
if (firstLine.startsWith("/*")) {
|
|
19
24
|
context.report({
|
|
@@ -81,4 +86,4 @@ var file_path_comment_default = {
|
|
|
81
86
|
export {
|
|
82
87
|
file_path_comment_default as default
|
|
83
88
|
};
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2ZpbGUtcGF0aC1jb21tZW50LnRzIl0sCiAgIm1hcHBpbmdzIjogIjtBQVVBLElBQU0sb0JBQW9CO0FBRTFCLElBQU8sNEJBQVE7QUFBQSxFQUNiLE1BQU07QUFBQSxJQUNKLE1BQU07QUFBQSxJQUNOLE1BQU07QUFBQSxNQUNKLGFBQWE7QUFBQSxNQUNiLEtBQUs7QUFBQSxJQUNQO0FBQUEsSUFDQSxTQUFTO0FBQUEsRUFDWDtBQUFBLEVBQ0EsT0FBTyxTQUFTO0FBQ2QsVUFBTSxZQUFZLFFBQVEsV0FBVyxTQUFTLEVBQUUsQ0FBQztBQUNqRCxVQUFNLGVBQWUsUUFBUSxTQUFTLE1BQU0sTUFBTSxFQUFFLENBQUM7QUFFckQsUUFBSSxjQUFjLFVBQWEsaUJBQWlCLFFBQVc7QUFDekQsYUFBTyxDQUFDO0FBQUEsSUFDVjtBQUVBLFVBQU0sZUFBZSxVQUFVLE1BQU0sS0FBSyxFQUFFLENBQUM7QUFDN0MsUUFBSSxjQUFjLFdBQVcsaUJBQWlCLE1BQU0sTUFBTTtBQUN4RCxhQUFPLENBQUM7QUFBQSxJQUNWO0FBRUEsUUFBSSxDQUFDLFVBQVUsV0FBVyxJQUFJLEdBQUc7QUFDL0IsVUFBSSxVQUFVLFdBQVcsSUFBSSxHQUFHO0FBQzlCLGdCQUFRLE9BQU87QUFBQSxVQUNiLEtBQUs7QUFBQSxZQUNILE9BQU87QUFBQSxjQUNMLE1BQU07QUFBQSxjQUNOLFFBQVE7QUFBQSxZQUNWO0FBQUEsWUFDQSxLQUFLO0FBQUEsY0FDSCxNQUFNO0FBQUEsY0FDTixRQUFRO0FBQUEsWUFDVjtBQUFBLFVBQ0Y7QUFBQSxVQUNBLFNBQVM7QUFBQSxVQUNULElBQUksT0FBdUI7QUFDekIsbUJBQU8sTUFBTSxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLFlBQVk7QUFBQTtBQUFBLENBQU07QUFBQSxVQUNyRTtBQUFBLFFBQ0YsQ0FBQztBQUFBLE1BQ0gsT0FBTztBQUNMLGdCQUFRLE9BQU87QUFBQSxVQUNiLEtBQUs7QUFBQSxZQUNILE9BQU87QUFBQSxjQUNMLE1BQU07QUFBQSxjQUNOLFFBQVE7QUFBQSxZQUNWO0FBQUEsWUFDQSxLQUFLO0FBQUEsY0FDSCxNQUFNO0FBQUEsY0FDTixRQUFRO0FBQUEsWUFDVjtBQUFBLFVBQ0Y7QUFBQSxVQUNBLFNBQVM7QUFBQSxVQUNULElBQUksT0FBdUI7QUFDekIsbUJBQU8sTUFBTSxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLFlBQVk7QUFBQTtBQUFBLENBQU07QUFBQSxVQUNyRTtBQUFBLFFBQ0YsQ0FBQztBQUFBLE1BQ0g7QUFBQSxJQUNGLE9BQU87QUFDTCxZQUFNLGdCQUFnQixVQUFVLE1BQU0sS0FBSyxFQUFFLENBQUM7QUFDOUMsVUFBSSxpQkFBaUIsZUFBZTtBQUNsQyxnQkFBUSxPQUFPO0FBQUEsVUFDYixLQUFLO0FBQUEsWUFDSCxPQUFPO0FBQUEsY0FDTCxNQUFNO0FBQUEsY0FDTixRQUFRO0FBQUEsWUFDVjtBQUFBLFlBQ0EsS0FBSztBQUFBLGNBQ0gsTUFBTTtBQUFBLGNBQ04sUUFBUTtBQUFBLFlBQ1Y7QUFBQSxVQUNGO0FBQUEsVUFDQSxTQUFTO0FBQUEsVUFDVCxJQUFJLE9BQXVCO0FBQ3pCLG1CQUFPLE1BQU0saUJBQWlCLENBQUMsR0FBRyxVQUFVLE1BQU0sR0FBRyxNQUFNLFlBQVksRUFBRTtBQUFBLFVBQzNFO0FBQUEsUUFDRixDQUFDO0FBQUEsTUFDSDtBQUFBLElBQ0Y7QUFFQSxXQUFPLENBQUM7QUFBQSxFQUNWO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
package/dist-mjs/no-util.mjs
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
// src/no-util.ts
|
|
2
2
|
import { ESLintUtils } from "@typescript-eslint/utils";
|
|
3
|
-
var ruleId = "no-util
|
|
3
|
+
var ruleId = "no-util";
|
|
4
4
|
var NO_UTIL_FILENAME = "NO_UTIL_FILENAME";
|
|
5
|
+
var DISABLE_NEXT_LINE = "eslint-disable-next-line";
|
|
5
6
|
var createRule = ESLintUtils.RuleCreator((name) => name);
|
|
6
7
|
var rule = createRule({
|
|
7
8
|
name: ruleId,
|
|
@@ -20,20 +21,22 @@ var rule = createRule({
|
|
|
20
21
|
return {
|
|
21
22
|
Program() {
|
|
22
23
|
const filename = context.filename;
|
|
24
|
+
const firstLine = context.sourceCode.getLines()[0];
|
|
25
|
+
if (firstLine === void 0) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
const actualComment = firstLine.split("// ")[1];
|
|
29
|
+
if (actualComment?.startsWith(DISABLE_NEXT_LINE) === true) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
23
32
|
const utilRegex = /(?:^|[-_/])util(?=[-_./]|$)/iu;
|
|
24
33
|
if (utilRegex.test(filename)) {
|
|
25
34
|
context.report({
|
|
26
35
|
messageId: NO_UTIL_FILENAME,
|
|
27
36
|
data: { filename },
|
|
28
37
|
loc: {
|
|
29
|
-
start: {
|
|
30
|
-
|
|
31
|
-
column: 0
|
|
32
|
-
},
|
|
33
|
-
end: {
|
|
34
|
-
line: 0,
|
|
35
|
-
column: 1
|
|
36
|
-
}
|
|
38
|
+
start: { line: 0, column: 0 },
|
|
39
|
+
end: { line: 0, column: 1 }
|
|
37
40
|
}
|
|
38
41
|
});
|
|
39
42
|
}
|
|
@@ -46,4 +49,4 @@ export {
|
|
|
46
49
|
no_util_default as default,
|
|
47
50
|
ruleId
|
|
48
51
|
};
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL25vLXV0aWwudHMiXSwKICAibWFwcGluZ3MiOiAiO0FBUUEsU0FBUyxtQkFBbUI7QUFFckIsSUFBTSxTQUFTO0FBQ3RCLElBQU0sbUJBQW1CO0FBQ3pCLElBQU0sb0JBQW9CO0FBRTFCLElBQU0sYUFBYSxZQUFZLFlBQVksQ0FBQyxTQUFTLElBQUk7QUFFekQsSUFBTSxPQUF3RCxXQUFXO0FBQUEsRUFDdkUsTUFBTTtBQUFBLEVBQ04sTUFBTTtBQUFBLElBQ0osTUFBTTtBQUFBLElBQ04sTUFBTTtBQUFBLE1BQ0osYUFBYTtBQUFBLElBQ2Y7QUFBQSxJQUNBLFFBQVEsQ0FBQztBQUFBLElBQ1QsVUFBVTtBQUFBLE1BQ1IsQ0FBQyxnQkFBZ0IsR0FBRztBQUFBLElBQ3RCO0FBQUEsRUFDRjtBQUFBLEVBQ0EsZ0JBQWdCLENBQUM7QUFBQSxFQUNqQixPQUFPLFNBQVM7QUFDZCxXQUFPO0FBQUEsTUFDTCxVQUFVO0FBQ1IsY0FBTSxXQUFXLFFBQVE7QUFDekIsY0FBTSxZQUFZLFFBQVEsV0FBVyxTQUFTLEVBQUUsQ0FBQztBQUNqRCxZQUFJLGNBQWMsUUFBVztBQUMzQjtBQUFBLFFBQ0Y7QUFDQSxjQUFNLGdCQUFnQixVQUFVLE1BQU0sS0FBSyxFQUFFLENBQUM7QUFDOUMsWUFBSSxlQUFlLFdBQVcsaUJBQWlCLE1BQU0sTUFBTTtBQUN6RDtBQUFBLFFBQ0Y7QUFDQSxjQUFNLFlBQVk7QUFDbEIsWUFBSSxVQUFVLEtBQUssUUFBUSxHQUFHO0FBQzVCLGtCQUFRLE9BQU87QUFBQSxZQUNiLFdBQVc7QUFBQSxZQUNYLE1BQU0sRUFBRSxTQUFTO0FBQUEsWUFDakIsS0FBSztBQUFBLGNBQ0gsT0FBTyxFQUFFLE1BQU0sR0FBRyxRQUFRLEVBQUU7QUFBQSxjQUM1QixLQUFLLEVBQUUsTUFBTSxHQUFHLFFBQVEsRUFBRTtBQUFBLFlBQzVCO0FBQUEsVUFDRixDQUFDO0FBQUEsUUFDSDtBQUFBLE1BQ0Y7QUFBQSxJQUNGO0FBQUEsRUFDRjtBQUNGLENBQUM7QUFFRCxJQUFPLGtCQUFROyIsCiAgIm5hbWVzIjogW10KfQo=
|
package/dist-types/no-util.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ESLintUtils } from '@typescript-eslint/utils';
|
|
2
|
-
export declare const ruleId = "no-util
|
|
2
|
+
export declare const ruleId = "no-util";
|
|
3
3
|
declare const NO_UTIL_FILENAME = "NO_UTIL_FILENAME";
|
|
4
4
|
declare const rule: ESLintUtils.RuleModule<typeof NO_UTIL_FILENAME>;
|
|
5
5
|
export default rule;
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@checkdigit/eslint-plugin","version":"7.13.0-PR.57-
|
|
1
|
+
{"name":"@checkdigit/eslint-plugin","version":"7.13.0-PR.57-58ae","description":"Check Digit eslint plugins","keywords":["eslint","eslintplugin"],"homepage":"https://github.com/checkdigit/eslint-plugin#readme","bugs":{"url":"https://github.com/checkdigit/eslint-plugin/issues"},"repository":{"type":"git","url":"https://github.com/checkdigit/eslint-plugin"},"license":"MIT","author":"Check Digit, LLC","sideEffects":false,"type":"module","exports":{".":{"types":"./dist-types/index.d.ts","import":"./dist-mjs/index.mjs","default":"./dist-mjs/index.mjs"}},"files":["src","dist-types","dist-mjs","!src/**/test/**","!src/**/*.test.ts","!src/**/*.spec.ts","!dist-types/**/test/**","!dist-types/**/*.test.d.ts","!dist-types/**/*.spec.d.ts","!dist-mjs/**/test/**","!dist-mjs/**/*.test.mjs","!dist-mjs/**/*.spec.mjs","SECURITY.md"],"scripts":{"build:dist-mjs":"rimraf dist-mjs && npx builder --type=module --sourceMap --outDir=dist-mjs && node dist-mjs/index.mjs","build:dist-types":"rimraf dist-types && npx builder --type=types --outDir=dist-types","ci:compile":"tsc --noEmit","ci:coverage":"NODE_OPTIONS=\"--disable-warning ExperimentalWarning --experimental-vm-modules\" jest --coverage=true","ci:lint":"npm run lint","ci:style":"npm run prettier","ci:test":"NODE_OPTIONS=\"--disable-warning ExperimentalWarning --experimental-vm-modules\" jest --coverage=false","lint":"eslint --max-warnings 0 .","lint:fix":"eslint --max-warnings 0 --fix .","prepare":"","prepublishOnly":"npm run build:dist-types && npm run build:dist-mjs","prettier":"prettier --ignore-path .gitignore --list-different .","prettier:fix":"prettier --ignore-path .gitignore --write .","test":"npm run ci:compile && npm run ci:test && npm run ci:lint && npm run ci:style"},"prettier":"@checkdigit/prettier-config","jest":{"preset":"@checkdigit/jest-config"},"dependencies":{"@typescript-eslint/type-utils":"^8.23.0","@typescript-eslint/utils":"^8.23.0","http-status-codes":"^2.3.0","ts-api-utils":"^2.0.1"},"devDependencies":{"@checkdigit/jest-config":"^6.0.2","@checkdigit/prettier-config":"^6.1.0","@checkdigit/typescript-config":"^9.0.0","@eslint/js":"^9.19.0","@types/eslint":"^9.6.1","@types/eslint-config-prettier":"^6.11.3","@typescript-eslint/parser":"^8.23.0","@typescript-eslint/rule-tester":"^8.23.0","eslint":"^9.19.0","eslint-config-prettier":"^10.0.1","eslint-import-resolver-typescript":"^3.7.0","eslint-plugin-eslint-plugin":"^6.4.0","eslint-plugin-import":"^2.31.0","eslint-plugin-no-only-tests":"^3.3.0","eslint-plugin-no-secrets":"^2.2.1","eslint-plugin-node":"^11.1.0","eslint-plugin-sonarjs":"1.0.4","rimraf":"^6.0.1","typescript-eslint":"^8.23.0"},"peerDependencies":{"eslint":">=9 <10"},"engines":{"node":">=22.11"}}
|
package/src/file-path-comment.ts
CHANGED
|
@@ -3,11 +3,13 @@
|
|
|
3
3
|
import type { Rule } from 'eslint';
|
|
4
4
|
|
|
5
5
|
/*
|
|
6
|
-
* Copyright (c) 2021-
|
|
6
|
+
* Copyright (c) 2021-2025 Check Digit, LLC
|
|
7
7
|
*
|
|
8
8
|
* This code is licensed under the MIT license (see LICENSE.txt for details).
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
+
const DISABLE_NEXT_LINE = 'eslint-disable-next-line';
|
|
12
|
+
|
|
11
13
|
export default {
|
|
12
14
|
meta: {
|
|
13
15
|
type: 'suggestion',
|
|
@@ -25,6 +27,11 @@ export default {
|
|
|
25
27
|
return {};
|
|
26
28
|
}
|
|
27
29
|
|
|
30
|
+
const firstComment = firstLine.split('// ')[1];
|
|
31
|
+
if (firstComment?.startsWith(DISABLE_NEXT_LINE) === true) {
|
|
32
|
+
return {};
|
|
33
|
+
}
|
|
34
|
+
|
|
28
35
|
if (!firstLine.startsWith('//')) {
|
|
29
36
|
if (firstLine.startsWith('/*')) {
|
|
30
37
|
context.report({
|
package/src/index.ts
CHANGED
|
@@ -32,7 +32,7 @@ import noEnum from './no-enum.ts';
|
|
|
32
32
|
import noSideEffects from './no-side-effects.ts';
|
|
33
33
|
import noRandomV4UUID from './no-random-v4-uuid.ts';
|
|
34
34
|
import noTestImport from './no-test-import.ts';
|
|
35
|
-
import noUtil from './no-util';
|
|
35
|
+
import noUtil from './no-util.ts';
|
|
36
36
|
import noUuid from './no-uuid.ts';
|
|
37
37
|
import noWallabyComment from './no-wallaby-comment.ts';
|
|
38
38
|
import objectLiteralResponse from './object-literal-response.ts';
|
package/src/no-util.ts
CHANGED
|
@@ -8,8 +8,9 @@
|
|
|
8
8
|
|
|
9
9
|
import { ESLintUtils } from '@typescript-eslint/utils';
|
|
10
10
|
|
|
11
|
-
export const ruleId = 'no-util
|
|
11
|
+
export const ruleId = 'no-util';
|
|
12
12
|
const NO_UTIL_FILENAME = 'NO_UTIL_FILENAME';
|
|
13
|
+
const DISABLE_NEXT_LINE = 'eslint-disable-next-line';
|
|
13
14
|
|
|
14
15
|
const createRule = ESLintUtils.RuleCreator((name) => name);
|
|
15
16
|
|
|
@@ -30,20 +31,22 @@ const rule: ESLintUtils.RuleModule<typeof NO_UTIL_FILENAME> = createRule({
|
|
|
30
31
|
return {
|
|
31
32
|
Program() {
|
|
32
33
|
const filename = context.filename;
|
|
34
|
+
const firstLine = context.sourceCode.getLines()[0];
|
|
35
|
+
if (firstLine === undefined) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
const actualComment = firstLine.split('// ')[1];
|
|
39
|
+
if (actualComment?.startsWith(DISABLE_NEXT_LINE) === true) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
33
42
|
const utilRegex = /(?:^|[-_/])util(?=[-_./]|$)/iu;
|
|
34
43
|
if (utilRegex.test(filename)) {
|
|
35
44
|
context.report({
|
|
36
45
|
messageId: NO_UTIL_FILENAME,
|
|
37
46
|
data: { filename },
|
|
38
47
|
loc: {
|
|
39
|
-
start: {
|
|
40
|
-
|
|
41
|
-
column: 0,
|
|
42
|
-
},
|
|
43
|
-
end: {
|
|
44
|
-
line: 0,
|
|
45
|
-
column: 1,
|
|
46
|
-
},
|
|
48
|
+
start: { line: 0, column: 0 },
|
|
49
|
+
end: { line: 0, column: 1 },
|
|
47
50
|
},
|
|
48
51
|
});
|
|
49
52
|
}
|