@futdevpro/dynamo-eslint 1.20.55 → 1.20.57

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/README.md CHANGED
@@ -198,6 +198,17 @@ This package includes custom ESLint rules for Dynamo conventions:
198
198
  show a loading state (`…Loading…`, `inProgress_$`, `loading-skeleton`) but none of which shows a failed state
199
199
  (`@if (…error|…failed…)`, a `…load-failed` / `…error-state` component, a `load…error|failed` test id). A list OF
200
200
  errors (`errors`) is not a failed state.
201
+ - **`@futdevpro/dynamo/empty-state-requires-guard`** (BFR-QA-003): an empty-state message — a Hungarian "none / not
202
+ yet" sentence (`Nincs…`, `Még nincs…`, also in an empty-state component's `message`) or a `@for … @empty` branch —
203
+ with no loading / failed guard: neither an ancestor `@if` / `@else if` of the same template nor any template up the
204
+ rendering parent chain guards it (`inProgress`, `failed_$()`, `loading`, `skeleton`, `load-failed`, `…Loaded_$()`).
205
+ Unguarded, the user reads "none" WHILE the data loads and AFTER a failed load. Not reported: the empty-state
206
+ component tag alone (it is also a "select something" placeholder), a permission denial ("Nincs jogosultság…").
207
+ Known limits: a guard passed through an `[input]`, an i18n-bound message, a descriptive "Nincs…" sentence, an
208
+ `@empty` over a locally computed list — silence a NEW such case with
209
+ `<!-- eslint-disable-next-line @futdevpro/dynamo/empty-state-requires-guard -->`. Counted per file in the same
210
+ baseline (`emptyStatesWithoutGuard`); the `ngx` preset switches it on **only when the baseline has that section**,
211
+ i.e. after you regenerate the baseline with a version that knows the rule.
201
212
 
202
213
  **Adopt them in a project** (run in the folder ESLint runs in, e.g. `client/`):
203
214
  ```bash
@@ -205,8 +216,8 @@ This package includes custom ESLint rules for Dynamo conventions:
205
216
  npx dynamo-ui-building-blocks-baseline --scroller-tag app-pull-to-refresh # a component that IS a scroll container
206
217
  npx dynamo-ui-building-blocks-baseline --check # exit 1 on a new case
207
218
  ```
208
- Exactly like the XSS guard: the `ngx` preset switches both rules on (`error`) **only when that baseline file
209
- exists**, so a dependency bump never breaks a `--max-warnings=0` lint step. The listed scroller tags live in the
219
+ Exactly like the XSS guard: the `ngx` preset switches the first two rules on (`error`) **only when that baseline file
220
+ exists** (the empty-state rule: only when it also has its section), so a dependency bump never breaks a `--max-warnings=0` lint step. The listed scroller tags live in the
210
221
  baseline's `settings`, so the rules and the generator always agree. Lower the baseline when you fix a case.
211
222
 
212
223
  ### Unused Component Rule
@@ -1 +1 @@
1
- {"version":3,"file":"prefer-enum-over-string-union.d.ts","sourceRoot":"","sources":["../../../src/plugin/rules/prefer-enum-over-string-union.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAO9B,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,UAmUhB,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"prefer-enum-over-string-union.d.ts","sourceRoot":"","sources":["../../../src/plugin/rules/prefer-enum-over-string-union.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAO9B,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,UAqRhB,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -25,9 +25,11 @@ const rule = {
25
25
  },
26
26
  ],
27
27
  messages: {
28
- preferEnum: 'Consider using an enum instead of a union type of {{count}} string literals.',
28
+ preferEnum: 'Consider using an enum (e.g. {{enumName}}) instead of a union type of {{count}} string literals.',
29
29
  },
30
- fixable: 'code',
30
+ // NO `fixable`: an automatic union → enum rewrite is never safe — string literals are not assignable to a string
31
+ // enum, so every caller passing `'active'` would stop compiling. The old fixer was worse: it replaced the alias'
32
+ // right-hand side with its OWN name (`type X = X;` → TS2456) and never emitted the enum (BFR-WARFACTORY-014 find).
31
33
  },
32
34
  create(context) {
33
35
  const options = context.options[0] || {};
@@ -117,25 +119,6 @@ const rule = {
117
119
  return 'StatusEnum';
118
120
  }
119
121
  }
120
- /**
121
- * Generate enum values from string literals
122
- */
123
- function generateEnumValues(node) {
124
- if (node.type !== 'TSUnionType' || !node.types) {
125
- return [];
126
- }
127
- return node.types
128
- .filter((type) => type.type === 'TSLiteralType' &&
129
- typeof type.literal?.value === 'string')
130
- .map((type) => {
131
- const value = type.literal.value;
132
- // Convert to PascalCase for enum key
133
- return value
134
- .split(/[-_\s]+/)
135
- .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
136
- .join('');
137
- });
138
- }
139
122
  /**
140
123
  * Report violation with enum suggestion
141
124
  */
@@ -143,32 +126,12 @@ const rule = {
143
126
  const stringLiteralCount = unionNode.types.filter((type) => type.type === 'TSLiteralType' &&
144
127
  typeof type.literal?.value === 'string').length;
145
128
  const enumName = generateEnumName(node, parent);
146
- const enumValues = generateEnumValues(unionNode);
147
129
  context.report({
148
130
  node: unionNode,
149
131
  messageId: 'preferEnum',
150
132
  data: {
151
133
  count: stringLiteralCount.toString(),
152
- },
153
- fix(fixer) {
154
- try {
155
- const enumDeclaration = `enum ${enumName} {\n ${enumValues.map((key, index) => {
156
- const value = unionNode.types[index].literal.value;
157
- return `${key} = '${value}'`;
158
- }).join(',\n ')}\n}`;
159
- // For type aliases, replace the entire declaration
160
- if (parent?.type === 'TSTypeAliasDeclaration') {
161
- const typeText = context.sourceCode.getText(parent);
162
- const newText = typeText.replace(/=.*/, `= ${enumName};`);
163
- return fixer.replaceText(parent, newText);
164
- }
165
- // For other cases, suggest enum creation (no auto-fix for now)
166
- return null;
167
- }
168
- catch (fixError) {
169
- console.error('[prefer-enum-over-string-union] Error in fix function:', fixError);
170
- return null;
171
- }
134
+ enumName: enumName,
172
135
  },
173
136
  });
174
137
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prefer-enum-over-string-union.js","sourceRoot":"","sources":["../../../src/plugin/rules/prefer-enum-over-string-union.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prefer-enum-over-string-union.js","sourceRoot":"","sources":["../../../src/plugin/rules/prefer-enum-over-string-union.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@futdevpro/dynamo-eslint",
3
- "version": "1.20.55",
3
+ "version": "1.20.57",
4
4
  "description": "Shared ESLint configs, Dynamo-powered plugin and validators for FutDevPro stacks",
5
5
  "author": "Future Development Program Ltd.",
6
6
  "license": "MIT",
@@ -93,7 +93,7 @@
93
93
  }
94
94
  },
95
95
  "dependencies": {
96
- "@futdevpro/fsm-dynamo": "1.20.93",
96
+ "@futdevpro/fsm-dynamo": "1.20.105",
97
97
  "eslint-plugin-max-params-no-constructor": "0.0.4",
98
98
  "eslint-plugin-unused-imports": "4.4.1",
99
99
  "fast-glob": "3.3.3",