@akinon/eslint-plugin-projectzero 2.0.6 → 2.0.7-rc.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.
- package/CHANGELOG.md +7 -0
- package/dist/rules/check-pre-order-middleware-order.js +1 -2
- package/package.json +6 -3
- package/rules/check-locale.ts +4 -1
- package/rules/check-menu-depth.ts +4 -1
- package/rules/check-middleware-order.ts +4 -1
- package/rules/check-pre-order-middleware-order.ts +3 -4
- package/rules/check-sentry-options.ts +4 -1
- package/rules/client-url.ts +4 -1
- package/rules/image-import.ts +4 -1
- package/rules/invalid-imports.ts +4 -1
- package/rules/link-import.ts +4 -1
- package/rules/meta-data-import.ts +4 -1
- package/rules/router-import.ts +4 -1
- package/rules/skip-trailing-slash-redirect.ts +4 -1
- package/rules/urls-without-slash.ts +4 -1
package/CHANGELOG.md
CHANGED
|
@@ -74,8 +74,7 @@ exports.default = utils_1.ESLintUtils.RuleCreator.withoutDocs({
|
|
|
74
74
|
meta: {
|
|
75
75
|
type: 'problem',
|
|
76
76
|
docs: {
|
|
77
|
-
description: 'Enforces the correct order of pre-order middlewares'
|
|
78
|
-
recommended: 'error'
|
|
77
|
+
description: 'Enforces the correct order of pre-order middlewares'
|
|
79
78
|
},
|
|
80
79
|
schema: [],
|
|
81
80
|
messages: {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@akinon/eslint-plugin-projectzero",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.7-rc.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "ESLint plugin for Project Zero Next",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -12,8 +12,11 @@
|
|
|
12
12
|
"keywords": [],
|
|
13
13
|
"author": "",
|
|
14
14
|
"license": "ISC",
|
|
15
|
+
"peerDependencies": {
|
|
16
|
+
"@typescript-eslint/utils": "^8.0.0",
|
|
17
|
+
"eslint": "^9.0.0"
|
|
18
|
+
},
|
|
15
19
|
"devDependencies": {
|
|
16
|
-
"@typescript-eslint/
|
|
17
|
-
"@typescript-eslint/parser": "5.44.0"
|
|
20
|
+
"@typescript-eslint/utils": "8.58.2"
|
|
18
21
|
}
|
|
19
22
|
}
|
package/rules/check-locale.ts
CHANGED
|
@@ -22,7 +22,8 @@ const getAllKeysFromObject = (obj: any, prefix = ''): string[] => {
|
|
|
22
22
|
}, [] as string[]);
|
|
23
23
|
};
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
// eslint-disable-next-line -eslint/no-explicit-any
|
|
26
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
26
27
|
create(context: any) {
|
|
27
28
|
return {
|
|
28
29
|
CallExpression(node: any) {
|
|
@@ -76,3 +77,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
76
77
|
},
|
|
77
78
|
defaultOptions: []
|
|
78
79
|
});
|
|
80
|
+
|
|
81
|
+
export default rule;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { ESLintUtils } from '@typescript-eslint/utils';
|
|
2
2
|
import { AST_NODE_TYPES } from '@typescript-eslint/types';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
5
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
5
6
|
create: function (context) {
|
|
6
7
|
return {
|
|
7
8
|
CallExpression(node) {
|
|
@@ -46,3 +47,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
46
47
|
},
|
|
47
48
|
defaultOptions: []
|
|
48
49
|
});
|
|
50
|
+
|
|
51
|
+
export default rule;
|
|
@@ -13,7 +13,8 @@ const correctOrder = [
|
|
|
13
13
|
'withCompleteMasterpass'
|
|
14
14
|
];
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
// eslint-disable-next-line -eslint/no-explicit-any
|
|
17
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
17
18
|
create(context: any) {
|
|
18
19
|
return {
|
|
19
20
|
CallExpression(node: any) {
|
|
@@ -65,3 +66,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
65
66
|
},
|
|
66
67
|
defaultOptions: []
|
|
67
68
|
});
|
|
69
|
+
|
|
70
|
+
export default rule;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AST_NODE_TYPES,
|
|
3
3
|
ESLintUtils,
|
|
4
|
+
TSESLint,
|
|
4
5
|
TSESTree
|
|
5
6
|
} from '@typescript-eslint/utils';
|
|
6
|
-
import { RuleContext } from '@typescript-eslint/utils/dist/ts-eslint';
|
|
7
7
|
|
|
8
8
|
const CORRECT_PRE_ORDER_MIDDLEWARE_ORDER = [
|
|
9
9
|
'shippingStepMiddleware',
|
|
@@ -24,7 +24,7 @@ type MessageIds = 'incorrectPreOrderMiddlewarePosition' | 'unknownMiddleware';
|
|
|
24
24
|
type Options = [];
|
|
25
25
|
|
|
26
26
|
export default ESLintUtils.RuleCreator.withoutDocs({
|
|
27
|
-
create(context: RuleContext<MessageIds, Options>) {
|
|
27
|
+
create(context: TSESLint.RuleContext<MessageIds, Options>) {
|
|
28
28
|
function checkPreOrderMiddlewareOrder(
|
|
29
29
|
node: TSESTree.VariableDeclarator
|
|
30
30
|
): void {
|
|
@@ -101,8 +101,7 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
101
101
|
meta: {
|
|
102
102
|
type: 'problem',
|
|
103
103
|
docs: {
|
|
104
|
-
description: 'Enforces the correct order of pre-order middlewares'
|
|
105
|
-
recommended: 'error'
|
|
104
|
+
description: 'Enforces the correct order of pre-order middlewares'
|
|
106
105
|
},
|
|
107
106
|
schema: [],
|
|
108
107
|
messages: {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ESLintUtils, TSESTree } from '@typescript-eslint/utils';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// eslint-disable-next-line -eslint/no-explicit-any
|
|
4
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
4
5
|
create(context) {
|
|
5
6
|
return {
|
|
6
7
|
CallExpression(node: TSESTree.CallExpression) {
|
|
@@ -59,3 +60,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
59
60
|
},
|
|
60
61
|
defaultOptions: []
|
|
61
62
|
});
|
|
63
|
+
|
|
64
|
+
export default rule;
|
package/rules/client-url.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ESLintUtils } from '@typescript-eslint/utils';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// eslint-disable-next-line -eslint/no-explicit-any
|
|
4
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
4
5
|
create(context) {
|
|
5
6
|
if (!context.getFilename().includes('urls.ts')) {
|
|
6
7
|
return {};
|
|
@@ -42,3 +43,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
42
43
|
},
|
|
43
44
|
defaultOptions: []
|
|
44
45
|
});
|
|
46
|
+
|
|
47
|
+
export default rule;
|
package/rules/image-import.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ESLintUtils } from '@typescript-eslint/utils';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// eslint-disable-next-line -eslint/no-explicit-any
|
|
4
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
4
5
|
create(context) {
|
|
5
6
|
if (context.getFilename().includes('components/image.tsx')) {
|
|
6
7
|
return {};
|
|
@@ -42,3 +43,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
42
43
|
},
|
|
43
44
|
defaultOptions: []
|
|
44
45
|
});
|
|
46
|
+
|
|
47
|
+
export default rule;
|
package/rules/invalid-imports.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ESLintUtils } from '@typescript-eslint/utils';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// eslint-disable-next-line -eslint/no-explicit-any
|
|
4
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
4
5
|
create(context) {
|
|
5
6
|
if (!context.getFilename().includes('akinon-next')) {
|
|
6
7
|
return {};
|
|
@@ -41,3 +42,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
41
42
|
},
|
|
42
43
|
defaultOptions: []
|
|
43
44
|
});
|
|
45
|
+
|
|
46
|
+
export default rule;
|
package/rules/link-import.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { ESLintUtils } from '@typescript-eslint/utils';
|
|
2
2
|
import * as path from 'path';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// eslint-disable-next-line -eslint/no-explicit-any
|
|
5
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
5
6
|
create(context) {
|
|
6
7
|
const currentFilePath = path.normalize(context.getFilename());
|
|
7
8
|
const linkComponentPath = path.normalize(
|
|
@@ -48,3 +49,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
48
49
|
},
|
|
49
50
|
defaultOptions: []
|
|
50
51
|
});
|
|
52
|
+
|
|
53
|
+
export default rule;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ESLintUtils } from '@typescript-eslint/utils';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// eslint-disable-next-line -eslint/no-explicit-any
|
|
4
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
4
5
|
create(context) {
|
|
5
6
|
return {
|
|
6
7
|
ImportDeclaration(node) {
|
|
@@ -48,3 +49,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
48
49
|
},
|
|
49
50
|
defaultOptions: []
|
|
50
51
|
});
|
|
52
|
+
|
|
53
|
+
export default rule;
|
package/rules/router-import.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ESLintUtils } from '@typescript-eslint/utils';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// eslint-disable-next-line -eslint/no-explicit-any
|
|
4
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
4
5
|
create(context) {
|
|
5
6
|
if (context.getFilename().includes('@akinon/next/hooks/use-router.ts')) {
|
|
6
7
|
return {};
|
|
@@ -42,3 +43,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
42
43
|
},
|
|
43
44
|
defaultOptions: []
|
|
44
45
|
});
|
|
46
|
+
|
|
47
|
+
export default rule;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { AST_NODE_TYPES } from '@typescript-eslint/types';
|
|
2
2
|
import { ESLintUtils } from '@typescript-eslint/utils';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// eslint-disable-next-line -eslint/no-explicit-any
|
|
5
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
5
6
|
create(context) {
|
|
6
7
|
return {
|
|
7
8
|
VariableDeclarator(node) {
|
|
@@ -58,3 +59,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
58
59
|
},
|
|
59
60
|
defaultOptions: []
|
|
60
61
|
});
|
|
62
|
+
|
|
63
|
+
export default rule;
|
|
@@ -4,7 +4,8 @@ const URLS = [
|
|
|
4
4
|
'/users/logout/'
|
|
5
5
|
];
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
// eslint-disable-next-line -eslint/no-explicit-any
|
|
8
|
+
const rule: any = ESLintUtils.RuleCreator.withoutDocs({
|
|
8
9
|
create(context) {
|
|
9
10
|
if (!context.getFilename().includes('urls.ts')) {
|
|
10
11
|
return {};
|
|
@@ -42,3 +43,5 @@ export default ESLintUtils.RuleCreator.withoutDocs({
|
|
|
42
43
|
},
|
|
43
44
|
defaultOptions: []
|
|
44
45
|
});
|
|
46
|
+
|
|
47
|
+
export default rule;
|