@futdevpro/dynamo-eslint 1.15.22 → 1.15.28
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/.c8rc.json +26 -26
- package/.cursor/rules/__assistant_guide.mdc +30 -30
- package/.cursor/rules/__main.mdc +64 -64
- package/.cursor/rules/_ag_backend-structure.mdc +85 -85
- package/.cursor/rules/_ag_backend.mdc +16 -16
- package/.cursor/rules/_ag_debug.mdc +7 -7
- package/.cursor/rules/_ag_documentation_writing_rules.mdc +372 -372
- package/.cursor/rules/_ag_file-refactoring.mdc +113 -113
- package/.cursor/rules/_ag_fixes_rules.mdc +5 -5
- package/.cursor/rules/_ag_frontend-structure.mdc +86 -86
- package/.cursor/rules/_ag_frontend.mdc +39 -39
- package/.cursor/rules/_ag_import-rules.mdc +44 -44
- package/.cursor/rules/_ag_naming.mdc +115 -115
- package/.cursor/rules/_ag_running_commands.mdc +4 -4
- package/.cursor/rules/_ag_server-controller.mdc +5 -5
- package/.cursor/rules/_ag_should-be.mdc +6 -6
- package/.cursor/rules/_ag_swearing.mdc +47 -47
- package/.cursor/rules/ai_development_guide.md +60 -60
- package/.cursor/rules/ai_directives.md +114 -114
- package/.cursor/rules/cursor-rules.md +160 -160
- package/.cursor/rules/default-command.mdc +464 -464
- package/.cursor/rules/error_code_pattern.md +39 -39
- package/.cursor/rules/saved rule mcp server use.md +15 -15
- package/.dynamo/pipeline.cicd.config.json +184 -184
- package/.dynamo/version-bump.config.json +5 -5
- package/.eslintrc.json +4 -4
- package/.github/workflows/main.yml +436 -436
- package/.husky/pre-commit +2 -2
- package/.vscode/settings.json +11 -11
- package/README.md +319 -319
- package/__documentations/2026-04-18-ccap-review-integration.md +173 -173
- package/__documentations/2026-08-18-bfr-ctm-005-eslint9-validator-report.md +45 -0
- package/build/configs/base.d.ts +9 -9
- package/build/configs/base.js +150 -150
- package/build/configs/fsm.d.ts +1 -1
- package/build/configs/fsm.js +7 -7
- package/build/configs/ngx-package.d.ts +1 -1
- package/build/configs/ngx-package.js +7 -7
- package/build/configs/ngx.d.ts +4 -4
- package/build/configs/ngx.js +91 -91
- package/build/configs/nts-package.d.ts +1 -1
- package/build/configs/nts-package.js +17 -17
- package/build/configs/nts.d.ts +1 -1
- package/build/configs/nts.js +31 -31
- package/build/index.d.ts +1 -1
- package/build/index.js +2 -2
- package/build/plugin/index.d.ts +52 -52
- package/build/plugin/index.js +80 -80
- package/build/plugin/rules/angular/angular-for-track-logic.d.ts +7 -7
- package/build/plugin/rules/angular/angular-for-track-logic.js +81 -81
- package/build/plugin/rules/angular/effect-signal-loop.d.ts +9 -9
- package/build/plugin/rules/angular/effect-signal-loop.js +112 -112
- package/build/plugin/rules/angular/no-async-ngoninit.d.ts +8 -8
- package/build/plugin/rules/angular/no-async-ngoninit.js +42 -42
- package/build/plugin/rules/angular/no-component-direct-api.d.ts +9 -9
- package/build/plugin/rules/angular/no-component-direct-api.js +75 -75
- package/build/plugin/rules/angular/no-method-call-in-template.d.ts +8 -8
- package/build/plugin/rules/angular/no-method-call-in-template.js +79 -79
- package/build/plugin/rules/angular/no-ngfor-directive.d.ts +7 -7
- package/build/plugin/rules/angular/no-ngfor-directive.js +59 -59
- package/build/plugin/rules/angular/no-ngif-directive.d.ts +7 -7
- package/build/plugin/rules/angular/no-ngif-directive.js +59 -59
- package/build/plugin/rules/explicit-types.d.ts +3 -3
- package/build/plugin/rules/explicit-types.js +178 -178
- package/build/plugin/rules/import/import-order.d.ts +3 -3
- package/build/plugin/rules/import/import-order.js +154 -154
- package/build/plugin/rules/import/no-import-type.d.ts +3 -3
- package/build/plugin/rules/import/no-import-type.js +45 -45
- package/build/plugin/rules/import/no-js-import.d.ts +3 -3
- package/build/plugin/rules/import/no-js-import.js +40 -40
- package/build/plugin/rules/naming-patterns.d.ts +7 -7
- package/build/plugin/rules/naming-patterns.d.ts.map +1 -1
- package/build/plugin/rules/naming-patterns.js +366 -350
- package/build/plugin/rules/naming-patterns.js.map +1 -1
- package/build/plugin/rules/no-getter-logic.d.ts +3 -3
- package/build/plugin/rules/no-getter-logic.js +194 -194
- package/build/plugin/rules/prefer-enum-over-string-union.d.ts +3 -3
- package/build/plugin/rules/prefer-enum-over-string-union.js +289 -289
- package/build/plugin/rules/prefer-interface-over-duplicate-types.d.ts +3 -3
- package/build/plugin/rules/prefer-interface-over-duplicate-types.js +264 -264
- package/build/plugin/rules/require-jsdoc-description.d.ts +3 -3
- package/build/plugin/rules/require-jsdoc-description.js +496 -496
- package/build/plugin/rules/require-test-description-prefix.d.ts +3 -3
- package/build/plugin/rules/require-test-description-prefix.js +135 -135
- package/build/plugin/rules/ts/data-model-extends.d.ts +8 -8
- package/build/plugin/rules/ts/data-model-extends.js +94 -94
- package/build/plugin/rules/ts/no-any-type.d.ts +8 -8
- package/build/plugin/rules/ts/no-any-type.js +36 -36
- package/build/plugin/rules/ts/no-as-cast.d.ts +8 -8
- package/build/plugin/rules/ts/no-as-cast.js +49 -49
- package/build/plugin/rules/ts/no-dynamic-imports.d.ts +8 -8
- package/build/plugin/rules/ts/no-dynamic-imports.js +50 -50
- package/build/plugin/rules/ts/no-native-browser-dialogs.d.ts +8 -8
- package/build/plugin/rules/ts/no-native-browser-dialogs.js +78 -78
- package/build/plugin/rules/ts/no-plain-function-export.d.ts +9 -9
- package/build/plugin/rules/ts/no-plain-function-export.js +69 -69
- package/build/plugin/rules/ts/one-export-per-file.d.ts +8 -8
- package/build/plugin/rules/ts/one-export-per-file.js +73 -73
- package/build/scripts/dynamo-fix.d.ts +26 -26
- package/build/scripts/dynamo-fix.js +146 -146
- package/build/scripts/dynamo-fix.js.map +1 -1
- package/build/scripts/eslintrc-audit.d.ts +26 -26
- package/build/scripts/eslintrc-audit.js +100 -100
- package/build/scripts/fix-return-types.d.ts +74 -74
- package/build/scripts/fix-return-types.js +226 -226
- package/build/scripts/validate-imports.d.ts +26 -26
- package/build/scripts/validate-imports.js +157 -137
- package/build/scripts/validate-imports.js.map +1 -1
- package/build/scripts/validate-naming.d.ts +26 -26
- package/build/scripts/validate-naming.js +157 -123
- package/build/scripts/validate-naming.js.map +1 -1
- package/eslint.config.js +15 -15
- package/package.json +105 -105
- package/samples/.vscode/settings.json +13 -13
- package/samples/base/.eslintrc.json +6 -6
- package/samples/base/eslint.config.js +3 -3
- package/samples/fsm/.eslintrc.json +4 -4
- package/samples/fsm/eslint.config.js +3 -3
- package/samples/ngx/.eslintrc.json +6 -6
- package/samples/ngx/eslint.config.js +3 -3
- package/samples/ngx-package/.eslintrc.json +4 -4
- package/samples/ngx-package/eslint.config.js +3 -3
- package/samples/nts/.eslintrc.json +6 -6
- package/samples/nts/eslint.config.js +3 -3
- package/samples/nts-package/.eslintrc.json +4 -4
- package/samples/nts-package/eslint.config.js +3 -3
- package/samples/package.json.example +26 -26
- package/samples/poc-sample.ts +38 -38
- package/samples/poc-violations.ts +54 -54
- package/scripts/run-coverage-tests.js +24 -24
- package/spec/support/helpers/ts-node-helper.js +9 -9
- package/spec/support/jasmine.coverage.json +23 -23
- package/spec/support/jasmine.json +24 -24
- package/src/configs/base.ts +157 -157
- package/src/configs/fsm.ts +10 -10
- package/src/configs/ngx-package.ts +10 -10
- package/src/configs/ngx.ts +96 -96
- package/src/configs/nts-package.ts +20 -20
- package/src/configs/nts.ts +34 -34
- package/src/index.ts +4 -4
- package/src/plugin/index.ts +86 -86
- package/src/plugin/rules/angular/angular-for-track-logic.spec.ts +44 -44
- package/src/plugin/rules/angular/angular-for-track-logic.ts +88 -88
- package/src/plugin/rules/angular/effect-signal-loop.spec.ts +89 -89
- package/src/plugin/rules/angular/effect-signal-loop.ts +125 -125
- package/src/plugin/rules/angular/no-async-ngoninit.spec.ts +50 -50
- package/src/plugin/rules/angular/no-async-ngoninit.ts +43 -43
- package/src/plugin/rules/angular/no-component-direct-api.spec.ts +78 -78
- package/src/plugin/rules/angular/no-component-direct-api.ts +82 -82
- package/src/plugin/rules/angular/no-method-call-in-template.spec.ts +63 -63
- package/src/plugin/rules/angular/no-method-call-in-template.ts +89 -89
- package/src/plugin/rules/angular/no-ngfor-directive.spec.ts +44 -44
- package/src/plugin/rules/angular/no-ngfor-directive.ts +62 -62
- package/src/plugin/rules/angular/no-ngif-directive.spec.ts +44 -44
- package/src/plugin/rules/angular/no-ngif-directive.ts +62 -62
- package/src/plugin/rules/explicit-types.spec.ts +190 -190
- package/src/plugin/rules/explicit-types.ts +186 -186
- package/src/plugin/rules/import/import-order.spec.ts +219 -219
- package/src/plugin/rules/import/import-order.ts +197 -197
- package/src/plugin/rules/import/no-import-type.spec.ts +69 -69
- package/src/plugin/rules/import/no-import-type.ts +46 -46
- package/src/plugin/rules/import/no-js-import.spec.ts +82 -82
- package/src/plugin/rules/import/no-js-import.ts +45 -45
- package/src/plugin/rules/naming-patterns.spec.ts +189 -127
- package/src/plugin/rules/naming-patterns.ts +426 -408
- package/src/plugin/rules/no-getter-logic.spec.ts +591 -591
- package/src/plugin/rules/no-getter-logic.ts +220 -220
- package/src/plugin/rules/prefer-enum-over-string-union.spec.ts +583 -583
- package/src/plugin/rules/prefer-enum-over-string-union.ts +333 -333
- package/src/plugin/rules/prefer-interface-over-duplicate-types.spec.ts +404 -404
- package/src/plugin/rules/prefer-interface-over-duplicate-types.ts +314 -314
- package/src/plugin/rules/require-jsdoc-description.spec.ts +779 -779
- package/src/plugin/rules/require-jsdoc-description.ts +572 -572
- package/src/plugin/rules/require-test-description-prefix.spec.ts +459 -459
- package/src/plugin/rules/require-test-description-prefix.ts +154 -154
- package/src/plugin/rules/ts/data-model-extends.spec.ts +84 -84
- package/src/plugin/rules/ts/data-model-extends.ts +100 -100
- package/src/plugin/rules/ts/no-any-type.spec.ts +28 -28
- package/src/plugin/rules/ts/no-any-type.ts +36 -36
- package/src/plugin/rules/ts/no-as-cast.spec.ts +51 -51
- package/src/plugin/rules/ts/no-as-cast.ts +51 -51
- package/src/plugin/rules/ts/no-dynamic-imports.spec.ts +54 -54
- package/src/plugin/rules/ts/no-dynamic-imports.ts +49 -49
- package/src/plugin/rules/ts/no-native-browser-dialogs.spec.ts +54 -54
- package/src/plugin/rules/ts/no-native-browser-dialogs.ts +84 -84
- package/src/plugin/rules/ts/no-plain-function-export.spec.ts +72 -72
- package/src/plugin/rules/ts/no-plain-function-export.ts +73 -73
- package/src/plugin/rules/ts/one-export-per-file.spec.ts +64 -64
- package/src/plugin/rules/ts/one-export-per-file.ts +77 -77
- package/src/scripts/dynamo-fix.ts +172 -172
- package/src/scripts/eslintrc-audit.ts +116 -116
- package/src/scripts/fix-return-types.spec.ts +65 -65
- package/src/scripts/fix-return-types.ts +288 -288
- package/src/scripts/validate-imports.ts +278 -249
- package/src/scripts/validate-naming.ts +204 -176
- package/src/scripts/validator-cli.integration.spec.ts +96 -0
- package/tsconfig.json +31 -31
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"naming-patterns.js","sourceRoot":"","sources":["../../../src/plugin/rules/naming-patterns.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"naming-patterns.js","sourceRoot":"","sources":["../../../src/plugin/rules/naming-patterns.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Rule } from 'eslint';
|
|
2
|
-
declare const rule: Rule.RuleModule;
|
|
3
|
-
export default rule;
|
|
1
|
+
import { Rule } from 'eslint';
|
|
2
|
+
declare const rule: Rule.RuleModule;
|
|
3
|
+
export default rule;
|
|
4
4
|
//# sourceMappingURL=no-getter-logic.d.ts.map
|
|
@@ -1,195 +1,195 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/**
|
|
4
|
-
* Check if a node type is allowed in getter (simple property mapping only)
|
|
5
|
-
*/
|
|
6
|
-
function isAllowedNodeType(nodeType) {
|
|
7
|
-
const allowedTypes = [
|
|
8
|
-
'ReturnStatement',
|
|
9
|
-
'MemberExpression',
|
|
10
|
-
'Identifier',
|
|
11
|
-
'ThisExpression',
|
|
12
|
-
'Literal',
|
|
13
|
-
'BlockStatement',
|
|
14
|
-
'ExpressionStatement',
|
|
15
|
-
];
|
|
16
|
-
return allowedTypes.includes(nodeType);
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Check if a node type is explicitly forbidden (logic, calculations, function calls,
|
|
20
|
-
* block-level control flow, variable declarations).
|
|
21
|
-
* CCAP "no-getter-logic"-megerősítés: tilos `if/for/while/switch/try` és helyi `const/let`.
|
|
22
|
-
*/
|
|
23
|
-
function isForbiddenNodeType(nodeType) {
|
|
24
|
-
const forbiddenTypes = [
|
|
25
|
-
'CallExpression',
|
|
26
|
-
'BinaryExpression',
|
|
27
|
-
'UnaryExpression',
|
|
28
|
-
'ConditionalExpression',
|
|
29
|
-
'LogicalExpression',
|
|
30
|
-
'AssignmentExpression',
|
|
31
|
-
'UpdateExpression',
|
|
32
|
-
'NewExpression',
|
|
33
|
-
'YieldExpression',
|
|
34
|
-
'AwaitExpression',
|
|
35
|
-
'TaggedTemplateExpression',
|
|
36
|
-
'TemplateLiteral',
|
|
37
|
-
'SequenceExpression',
|
|
38
|
-
'SpreadElement',
|
|
39
|
-
'RestElement',
|
|
40
|
-
// Block-level control flow — getter csak közvetlen property mapping lehet.
|
|
41
|
-
'IfStatement',
|
|
42
|
-
'ForStatement',
|
|
43
|
-
'ForInStatement',
|
|
44
|
-
'ForOfStatement',
|
|
45
|
-
'WhileStatement',
|
|
46
|
-
'DoWhileStatement',
|
|
47
|
-
'SwitchStatement',
|
|
48
|
-
'TryStatement',
|
|
49
|
-
'ThrowStatement',
|
|
50
|
-
// Lokális változó deklaráció — több-utasításos getter tilos.
|
|
51
|
-
'VariableDeclaration',
|
|
52
|
-
];
|
|
53
|
-
return forbiddenTypes.includes(nodeType);
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Recursively check if a node contains only allowed patterns
|
|
57
|
-
* Returns true if forbidden node is found
|
|
58
|
-
*/
|
|
59
|
-
function containsForbiddenNode(node) {
|
|
60
|
-
if (!node || typeof node !== 'object') {
|
|
61
|
-
return false;
|
|
62
|
-
}
|
|
63
|
-
// Check current node type
|
|
64
|
-
if (node.type && isForbiddenNodeType(node.type)) {
|
|
65
|
-
return true;
|
|
66
|
-
}
|
|
67
|
-
// Special handling for MemberExpression - allow property access but check nested calls
|
|
68
|
-
if (node.type === 'MemberExpression') {
|
|
69
|
-
// Check if this is a function call disguised as property access
|
|
70
|
-
// This will be caught by parent CallExpression, so we just check children
|
|
71
|
-
if (node.object && containsForbiddenNode(node.object)) {
|
|
72
|
-
return true;
|
|
73
|
-
}
|
|
74
|
-
if (node.property && containsForbiddenNode(node.property)) {
|
|
75
|
-
return true;
|
|
76
|
-
}
|
|
77
|
-
// Allow computed property access like [index] but check the index expression
|
|
78
|
-
if (node.computed && node.property && containsForbiddenNode(node.property)) {
|
|
79
|
-
return true;
|
|
80
|
-
}
|
|
81
|
-
return false;
|
|
82
|
-
}
|
|
83
|
-
// Special handling for ReturnStatement - check the argument
|
|
84
|
-
if (node.type === 'ReturnStatement') {
|
|
85
|
-
if (node.argument && containsForbiddenNode(node.argument)) {
|
|
86
|
-
return true;
|
|
87
|
-
}
|
|
88
|
-
return false;
|
|
89
|
-
}
|
|
90
|
-
// Special handling for BlockStatement - check all statements.
|
|
91
|
-
// CCAP-megerősítés: 1-nél több statement (az utolsó return-en kívül) tilos.
|
|
92
|
-
if (node.type === 'BlockStatement') {
|
|
93
|
-
if (node.body && Array.isArray(node.body)) {
|
|
94
|
-
// Több mint egy statement → többszörös utasítás → tilos.
|
|
95
|
-
if (node.body.length > 1) {
|
|
96
|
-
return true;
|
|
97
|
-
}
|
|
98
|
-
for (const statement of node.body) {
|
|
99
|
-
if (containsForbiddenNode(statement)) {
|
|
100
|
-
return true;
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
return false;
|
|
105
|
-
}
|
|
106
|
-
// Special handling for ExpressionStatement - check the expression
|
|
107
|
-
if (node.type === 'ExpressionStatement') {
|
|
108
|
-
if (node.expression && containsForbiddenNode(node.expression)) {
|
|
109
|
-
return true;
|
|
110
|
-
}
|
|
111
|
-
return false;
|
|
112
|
-
}
|
|
113
|
-
// For other node types, recursively check all properties
|
|
114
|
-
for (const key in node) {
|
|
115
|
-
if (key === 'parent' || key === 'range' || key === 'loc') {
|
|
116
|
-
continue; // Skip parent references and location data
|
|
117
|
-
}
|
|
118
|
-
const value = node[key];
|
|
119
|
-
if (Array.isArray(value)) {
|
|
120
|
-
for (const item of value) {
|
|
121
|
-
if (containsForbiddenNode(item)) {
|
|
122
|
-
return true;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
else if (value && typeof value === 'object') {
|
|
127
|
-
if (containsForbiddenNode(value)) {
|
|
128
|
-
return true;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
return false;
|
|
133
|
-
}
|
|
134
|
-
/**
|
|
135
|
-
* Get getter name for error message
|
|
136
|
-
*/
|
|
137
|
-
function getGetterName(node) {
|
|
138
|
-
try {
|
|
139
|
-
if (node.key && node.key.name) {
|
|
140
|
-
return node.key.name;
|
|
141
|
-
}
|
|
142
|
-
if (node.key && node.key.type === 'Identifier') {
|
|
143
|
-
return node.key.name || 'unknown';
|
|
144
|
-
}
|
|
145
|
-
return 'unknown';
|
|
146
|
-
}
|
|
147
|
-
catch (error) {
|
|
148
|
-
console.error('[no-getter-logic] Error in getGetterName:', error);
|
|
149
|
-
return 'unknown';
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
const rule = {
|
|
153
|
-
meta: {
|
|
154
|
-
type: 'suggestion',
|
|
155
|
-
docs: {
|
|
156
|
-
description: 'Getters should only contain simple property mappings, no logic, calculations, or function calls',
|
|
157
|
-
recommended: true,
|
|
158
|
-
},
|
|
159
|
-
schema: [],
|
|
160
|
-
messages: {
|
|
161
|
-
noLogic: 'Getter "{{name}}" should only contain simple property mappings, no logic, calculations, or function calls.',
|
|
162
|
-
},
|
|
163
|
-
},
|
|
164
|
-
create(context) {
|
|
165
|
-
return {
|
|
166
|
-
MethodDefinition(node, _context, _sourceCode) {
|
|
167
|
-
try {
|
|
168
|
-
// Only check getters
|
|
169
|
-
if (node.kind !== 'get') {
|
|
170
|
-
return;
|
|
171
|
-
}
|
|
172
|
-
// Check if getter has a body
|
|
173
|
-
if (!node.value || !node.value.body) {
|
|
174
|
-
return;
|
|
175
|
-
}
|
|
176
|
-
const body = node.value.body;
|
|
177
|
-
// Check for forbidden nodes in the getter body
|
|
178
|
-
if (containsForbiddenNode(body)) {
|
|
179
|
-
const getterName = getGetterName(node);
|
|
180
|
-
context.report({
|
|
181
|
-
node: body,
|
|
182
|
-
messageId: 'noLogic',
|
|
183
|
-
data: { name: getterName },
|
|
184
|
-
});
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
catch (error) {
|
|
188
|
-
console.error('[no-getter-logic] Error in MethodDefinition visitor:', error);
|
|
189
|
-
}
|
|
190
|
-
},
|
|
191
|
-
};
|
|
192
|
-
},
|
|
193
|
-
};
|
|
194
|
-
exports.default = rule;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
/**
|
|
4
|
+
* Check if a node type is allowed in getter (simple property mapping only)
|
|
5
|
+
*/
|
|
6
|
+
function isAllowedNodeType(nodeType) {
|
|
7
|
+
const allowedTypes = [
|
|
8
|
+
'ReturnStatement',
|
|
9
|
+
'MemberExpression',
|
|
10
|
+
'Identifier',
|
|
11
|
+
'ThisExpression',
|
|
12
|
+
'Literal',
|
|
13
|
+
'BlockStatement',
|
|
14
|
+
'ExpressionStatement',
|
|
15
|
+
];
|
|
16
|
+
return allowedTypes.includes(nodeType);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Check if a node type is explicitly forbidden (logic, calculations, function calls,
|
|
20
|
+
* block-level control flow, variable declarations).
|
|
21
|
+
* CCAP "no-getter-logic"-megerősítés: tilos `if/for/while/switch/try` és helyi `const/let`.
|
|
22
|
+
*/
|
|
23
|
+
function isForbiddenNodeType(nodeType) {
|
|
24
|
+
const forbiddenTypes = [
|
|
25
|
+
'CallExpression',
|
|
26
|
+
'BinaryExpression',
|
|
27
|
+
'UnaryExpression',
|
|
28
|
+
'ConditionalExpression',
|
|
29
|
+
'LogicalExpression',
|
|
30
|
+
'AssignmentExpression',
|
|
31
|
+
'UpdateExpression',
|
|
32
|
+
'NewExpression',
|
|
33
|
+
'YieldExpression',
|
|
34
|
+
'AwaitExpression',
|
|
35
|
+
'TaggedTemplateExpression',
|
|
36
|
+
'TemplateLiteral',
|
|
37
|
+
'SequenceExpression',
|
|
38
|
+
'SpreadElement',
|
|
39
|
+
'RestElement',
|
|
40
|
+
// Block-level control flow — getter csak közvetlen property mapping lehet.
|
|
41
|
+
'IfStatement',
|
|
42
|
+
'ForStatement',
|
|
43
|
+
'ForInStatement',
|
|
44
|
+
'ForOfStatement',
|
|
45
|
+
'WhileStatement',
|
|
46
|
+
'DoWhileStatement',
|
|
47
|
+
'SwitchStatement',
|
|
48
|
+
'TryStatement',
|
|
49
|
+
'ThrowStatement',
|
|
50
|
+
// Lokális változó deklaráció — több-utasításos getter tilos.
|
|
51
|
+
'VariableDeclaration',
|
|
52
|
+
];
|
|
53
|
+
return forbiddenTypes.includes(nodeType);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Recursively check if a node contains only allowed patterns
|
|
57
|
+
* Returns true if forbidden node is found
|
|
58
|
+
*/
|
|
59
|
+
function containsForbiddenNode(node) {
|
|
60
|
+
if (!node || typeof node !== 'object') {
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
63
|
+
// Check current node type
|
|
64
|
+
if (node.type && isForbiddenNodeType(node.type)) {
|
|
65
|
+
return true;
|
|
66
|
+
}
|
|
67
|
+
// Special handling for MemberExpression - allow property access but check nested calls
|
|
68
|
+
if (node.type === 'MemberExpression') {
|
|
69
|
+
// Check if this is a function call disguised as property access
|
|
70
|
+
// This will be caught by parent CallExpression, so we just check children
|
|
71
|
+
if (node.object && containsForbiddenNode(node.object)) {
|
|
72
|
+
return true;
|
|
73
|
+
}
|
|
74
|
+
if (node.property && containsForbiddenNode(node.property)) {
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
// Allow computed property access like [index] but check the index expression
|
|
78
|
+
if (node.computed && node.property && containsForbiddenNode(node.property)) {
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
return false;
|
|
82
|
+
}
|
|
83
|
+
// Special handling for ReturnStatement - check the argument
|
|
84
|
+
if (node.type === 'ReturnStatement') {
|
|
85
|
+
if (node.argument && containsForbiddenNode(node.argument)) {
|
|
86
|
+
return true;
|
|
87
|
+
}
|
|
88
|
+
return false;
|
|
89
|
+
}
|
|
90
|
+
// Special handling for BlockStatement - check all statements.
|
|
91
|
+
// CCAP-megerősítés: 1-nél több statement (az utolsó return-en kívül) tilos.
|
|
92
|
+
if (node.type === 'BlockStatement') {
|
|
93
|
+
if (node.body && Array.isArray(node.body)) {
|
|
94
|
+
// Több mint egy statement → többszörös utasítás → tilos.
|
|
95
|
+
if (node.body.length > 1) {
|
|
96
|
+
return true;
|
|
97
|
+
}
|
|
98
|
+
for (const statement of node.body) {
|
|
99
|
+
if (containsForbiddenNode(statement)) {
|
|
100
|
+
return true;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
return false;
|
|
105
|
+
}
|
|
106
|
+
// Special handling for ExpressionStatement - check the expression
|
|
107
|
+
if (node.type === 'ExpressionStatement') {
|
|
108
|
+
if (node.expression && containsForbiddenNode(node.expression)) {
|
|
109
|
+
return true;
|
|
110
|
+
}
|
|
111
|
+
return false;
|
|
112
|
+
}
|
|
113
|
+
// For other node types, recursively check all properties
|
|
114
|
+
for (const key in node) {
|
|
115
|
+
if (key === 'parent' || key === 'range' || key === 'loc') {
|
|
116
|
+
continue; // Skip parent references and location data
|
|
117
|
+
}
|
|
118
|
+
const value = node[key];
|
|
119
|
+
if (Array.isArray(value)) {
|
|
120
|
+
for (const item of value) {
|
|
121
|
+
if (containsForbiddenNode(item)) {
|
|
122
|
+
return true;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
else if (value && typeof value === 'object') {
|
|
127
|
+
if (containsForbiddenNode(value)) {
|
|
128
|
+
return true;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return false;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Get getter name for error message
|
|
136
|
+
*/
|
|
137
|
+
function getGetterName(node) {
|
|
138
|
+
try {
|
|
139
|
+
if (node.key && node.key.name) {
|
|
140
|
+
return node.key.name;
|
|
141
|
+
}
|
|
142
|
+
if (node.key && node.key.type === 'Identifier') {
|
|
143
|
+
return node.key.name || 'unknown';
|
|
144
|
+
}
|
|
145
|
+
return 'unknown';
|
|
146
|
+
}
|
|
147
|
+
catch (error) {
|
|
148
|
+
console.error('[no-getter-logic] Error in getGetterName:', error);
|
|
149
|
+
return 'unknown';
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
const rule = {
|
|
153
|
+
meta: {
|
|
154
|
+
type: 'suggestion',
|
|
155
|
+
docs: {
|
|
156
|
+
description: 'Getters should only contain simple property mappings, no logic, calculations, or function calls',
|
|
157
|
+
recommended: true,
|
|
158
|
+
},
|
|
159
|
+
schema: [],
|
|
160
|
+
messages: {
|
|
161
|
+
noLogic: 'Getter "{{name}}" should only contain simple property mappings, no logic, calculations, or function calls.',
|
|
162
|
+
},
|
|
163
|
+
},
|
|
164
|
+
create(context) {
|
|
165
|
+
return {
|
|
166
|
+
MethodDefinition(node, _context, _sourceCode) {
|
|
167
|
+
try {
|
|
168
|
+
// Only check getters
|
|
169
|
+
if (node.kind !== 'get') {
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
// Check if getter has a body
|
|
173
|
+
if (!node.value || !node.value.body) {
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
const body = node.value.body;
|
|
177
|
+
// Check for forbidden nodes in the getter body
|
|
178
|
+
if (containsForbiddenNode(body)) {
|
|
179
|
+
const getterName = getGetterName(node);
|
|
180
|
+
context.report({
|
|
181
|
+
node: body,
|
|
182
|
+
messageId: 'noLogic',
|
|
183
|
+
data: { name: getterName },
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
catch (error) {
|
|
188
|
+
console.error('[no-getter-logic] Error in MethodDefinition visitor:', error);
|
|
189
|
+
}
|
|
190
|
+
},
|
|
191
|
+
};
|
|
192
|
+
},
|
|
193
|
+
};
|
|
194
|
+
exports.default = rule;
|
|
195
195
|
//# sourceMappingURL=no-getter-logic.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Rule } from 'eslint';
|
|
2
|
-
declare const rule: Rule.RuleModule;
|
|
3
|
-
export default rule;
|
|
1
|
+
import { Rule } from 'eslint';
|
|
2
|
+
declare const rule: Rule.RuleModule;
|
|
3
|
+
export default rule;
|
|
4
4
|
//# sourceMappingURL=prefer-enum-over-string-union.d.ts.map
|