@sarj/eslint-plugin 15.17.17 → 15.19.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/dist/index.cjs +2434 -2127
- package/dist/index.d.cts +48 -25
- package/dist/index.d.ts +48 -25
- package/dist/index.js +2421 -2111
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -181,6 +181,15 @@ interface RuleOptions {
|
|
|
181
181
|
readonly methods?: readonly string[];
|
|
182
182
|
}
|
|
183
183
|
|
|
184
|
+
/**
|
|
185
|
+
* @fileoverview _jsx-accessibility — scope-aware JSX names and accessible content are shared across rules.
|
|
186
|
+
*/
|
|
187
|
+
|
|
188
|
+
interface ComponentImport {
|
|
189
|
+
readonly module: string;
|
|
190
|
+
readonly export: string;
|
|
191
|
+
}
|
|
192
|
+
|
|
184
193
|
/**
|
|
185
194
|
* @fileoverview _renames — every rule this plugin has renamed, old name to new; the old names no longer resolve, so this map is what says what to write instead.
|
|
186
195
|
*
|
|
@@ -196,6 +205,11 @@ declare const RENAMED_RULES: {
|
|
|
196
205
|
};
|
|
197
206
|
|
|
198
207
|
declare const RULES: {
|
|
208
|
+
readonly "require-button-accessible-name": DocumentedRule<readonly [{
|
|
209
|
+
readonly components?: readonly ComponentImport[];
|
|
210
|
+
readonly iconModules?: readonly string[];
|
|
211
|
+
}?], "missingName">;
|
|
212
|
+
readonly "require-svg-accessible-name": DocumentedRule<readonly [], "missingName">;
|
|
199
213
|
readonly "excessive-commentary": DocumentedRule<readonly [], "excessive">;
|
|
200
214
|
readonly "iac-source-coupled-test": DocumentedRule<readonly [], "rawSourceOracle">;
|
|
201
215
|
readonly "duplicate-test-body": DocumentedRule<readonly [], "duplicateTestBody">;
|
|
@@ -327,42 +341,44 @@ declare const APPLICATION_ONLY_RULES: readonly [];
|
|
|
327
341
|
/** Rules staged as non-blocking warnings while corpus adoption evidence accumulates. */
|
|
328
342
|
declare const ADVISORY_RULES: readonly ["@sarj/excessive-commentary", "@sarj/no-bespoke-api-case-conversion", "@sarj/no-detached-global-fetch", "@sarj/no-in-operator-on-built-in-collections", "@sarj/no-json-stringify-object-equality", "@sarj/no-redundant-optional-array-default", "@sarj/no-restated-comment", "@sarj/no-restated-jsdoc", "@sarj/prefer-millisecond-control-duration-schema", "@sarj/prefer-module-level-refined-schema", "@sarj/prefer-multi-value-zod-literal", "@sarj/prefer-named-callback-domain", "@sarj/prefer-named-complex-return-type", "@sarj/prefer-node-crypto-hash", "@sarj/prefer-node-fs-promises", "@sarj/prefer-nullish-filter-predicate", "@sarj/prefer-shared-zod-enum", "@sarj/prefer-switch-for-repeated-equality", "@sarj/prefer-whole-object-assertion", "@sarj/prefer-zod-parse-output-type", "@sarj/require-interface-for-exported-class", "@sarj/require-sql-access-class", "@sarj/sole-export-matches-filename"];
|
|
329
343
|
declare const RECOMMENDED_RULES: {
|
|
344
|
+
readonly "@sarj/require-button-accessible-name": "error";
|
|
345
|
+
readonly "@sarj/require-svg-accessible-name": "error";
|
|
330
346
|
readonly "no-restricted-imports": readonly ["error", {
|
|
331
347
|
readonly paths: {
|
|
332
348
|
name: "request" | "node-fetch" | "cross-fetch" | "isomorphic-fetch" | "axios" | "moment" | "dayjs" | "lodash" | "lodash-es" | "underscore" | "classnames" | "joi" | "yup" | "superstruct" | "io-ts" | "runtypes" | "jsonwebtoken" | "express" | "koa" | "jest" | "mocha" | "sinon" | "commander" | "yargs" | "bluebird" | "rimraf" | "fs-extra" | "abort-controller" | "querystring" | "dotenv" | "chalk" | "faker" | "node-sass" | "tslint";
|
|
333
|
-
message: "
|
|
349
|
+
message: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration." | "Standards standardizes date utilities on date-fns; migration is not API-compatible." | "Standards standardizes collection utilities on Remeda and native APIs." | "Use clsx for conditional class-name composition." | "Standards standardizes runtime validation on Zod; schemas are not drop-in compatible." | "Use jose; review key formats and async signing and verification APIs." | "Standards standardizes servers on Hono; Node deployments also need @hono/node-server." | "Standards standardizes tests on Vitest; review globals, timers, mocks, and environment setup." | "Use Vitest spies, mocks, and fake timers instead of Sinon." | "Standards standardizes command-line interfaces on citty." | "Use native Promise, adding p-limit or p-map only for the extensions actually needed." | "Prefer node:fs/promises; verify recursive removal, copy, path, and error semantics." | "Node 22 provides global AbortController." | "Use URLSearchParams and explicitly review repeated keys, escaping, arrays, and object coercion." | "Standards standardizes environment loading on @dotenvx/dotenvx." | "Use picocolors for terminal colors." | "The original faker package is abandoned; use @faker-js/faker." | "node-sass is end-of-life; use Dart Sass." | "TSLint is deprecated; use ESLint with typescript-eslint.";
|
|
334
350
|
}[];
|
|
335
351
|
readonly patterns: {
|
|
336
352
|
group: string[];
|
|
337
|
-
message: "
|
|
353
|
+
message: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration." | "Standards standardizes date utilities on date-fns; migration is not API-compatible." | "Standards standardizes collection utilities on Remeda and native APIs." | "Use clsx for conditional class-name composition." | "Standards standardizes runtime validation on Zod; schemas are not drop-in compatible." | "Use jose; review key formats and async signing and verification APIs." | "Standards standardizes servers on Hono; Node deployments also need @hono/node-server." | "Standards standardizes tests on Vitest; review globals, timers, mocks, and environment setup." | "Use Vitest spies, mocks, and fake timers instead of Sinon." | "Standards standardizes command-line interfaces on citty." | "Use native Promise, adding p-limit or p-map only for the extensions actually needed." | "Prefer node:fs/promises; verify recursive removal, copy, path, and error semantics." | "Node 22 provides global AbortController." | "Use URLSearchParams and explicitly review repeated keys, escaping, arrays, and object coercion." | "Standards standardizes environment loading on @dotenvx/dotenvx." | "Use picocolors for terminal colors." | "The original faker package is abandoned; use @faker-js/faker." | "node-sass is end-of-life; use Dart Sass." | "TSLint is deprecated; use ESLint with typescript-eslint.";
|
|
338
354
|
}[];
|
|
339
355
|
}];
|
|
340
356
|
readonly "@sarj/no-restricted-library-load": readonly ["error", {
|
|
341
357
|
readonly libraries: readonly [{
|
|
342
358
|
readonly id: "LIB101";
|
|
343
359
|
readonly module: "request";
|
|
344
|
-
readonly note: "
|
|
345
|
-
readonly replacement: "
|
|
360
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
361
|
+
readonly replacement: "native fetch";
|
|
346
362
|
}, {
|
|
347
363
|
readonly id: "LIB101";
|
|
348
364
|
readonly module: "node-fetch";
|
|
349
|
-
readonly note: "
|
|
350
|
-
readonly replacement: "
|
|
365
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
366
|
+
readonly replacement: "native fetch";
|
|
351
367
|
}, {
|
|
352
368
|
readonly id: "LIB101";
|
|
353
369
|
readonly module: "cross-fetch";
|
|
354
|
-
readonly note: "
|
|
355
|
-
readonly replacement: "
|
|
370
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
371
|
+
readonly replacement: "native fetch";
|
|
356
372
|
}, {
|
|
357
373
|
readonly id: "LIB101";
|
|
358
374
|
readonly module: "isomorphic-fetch";
|
|
359
|
-
readonly note: "
|
|
360
|
-
readonly replacement: "
|
|
375
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
376
|
+
readonly replacement: "native fetch";
|
|
361
377
|
}, {
|
|
362
378
|
readonly id: "LIB101";
|
|
363
379
|
readonly module: "axios";
|
|
364
|
-
readonly note: "
|
|
365
|
-
readonly replacement: "
|
|
380
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
381
|
+
readonly replacement: "native fetch";
|
|
366
382
|
}, {
|
|
367
383
|
readonly id: "LIB102";
|
|
368
384
|
readonly module: "moment";
|
|
@@ -612,42 +628,44 @@ declare const RECOMMENDED_RULES: {
|
|
|
612
628
|
readonly "@sarj/require-pascal-case-zod-schema-name": "error";
|
|
613
629
|
};
|
|
614
630
|
declare const STRICT_RULES: {
|
|
631
|
+
readonly "@sarj/require-button-accessible-name": "error";
|
|
632
|
+
readonly "@sarj/require-svg-accessible-name": "error";
|
|
615
633
|
readonly "no-restricted-imports": readonly ["error", {
|
|
616
634
|
readonly paths: {
|
|
617
635
|
name: "request" | "node-fetch" | "cross-fetch" | "isomorphic-fetch" | "axios" | "moment" | "dayjs" | "lodash" | "lodash-es" | "underscore" | "classnames" | "joi" | "yup" | "superstruct" | "io-ts" | "runtypes" | "jsonwebtoken" | "express" | "koa" | "jest" | "mocha" | "sinon" | "commander" | "yargs" | "bluebird" | "rimraf" | "fs-extra" | "abort-controller" | "querystring" | "dotenv" | "chalk" | "faker" | "node-sass" | "tslint";
|
|
618
|
-
message: "
|
|
636
|
+
message: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration." | "Standards standardizes date utilities on date-fns; migration is not API-compatible." | "Standards standardizes collection utilities on Remeda and native APIs." | "Use clsx for conditional class-name composition." | "Standards standardizes runtime validation on Zod; schemas are not drop-in compatible." | "Use jose; review key formats and async signing and verification APIs." | "Standards standardizes servers on Hono; Node deployments also need @hono/node-server." | "Standards standardizes tests on Vitest; review globals, timers, mocks, and environment setup." | "Use Vitest spies, mocks, and fake timers instead of Sinon." | "Standards standardizes command-line interfaces on citty." | "Use native Promise, adding p-limit or p-map only for the extensions actually needed." | "Prefer node:fs/promises; verify recursive removal, copy, path, and error semantics." | "Node 22 provides global AbortController." | "Use URLSearchParams and explicitly review repeated keys, escaping, arrays, and object coercion." | "Standards standardizes environment loading on @dotenvx/dotenvx." | "Use picocolors for terminal colors." | "The original faker package is abandoned; use @faker-js/faker." | "node-sass is end-of-life; use Dart Sass." | "TSLint is deprecated; use ESLint with typescript-eslint.";
|
|
619
637
|
}[];
|
|
620
638
|
readonly patterns: {
|
|
621
639
|
group: string[];
|
|
622
|
-
message: "
|
|
640
|
+
message: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration." | "Standards standardizes date utilities on date-fns; migration is not API-compatible." | "Standards standardizes collection utilities on Remeda and native APIs." | "Use clsx for conditional class-name composition." | "Standards standardizes runtime validation on Zod; schemas are not drop-in compatible." | "Use jose; review key formats and async signing and verification APIs." | "Standards standardizes servers on Hono; Node deployments also need @hono/node-server." | "Standards standardizes tests on Vitest; review globals, timers, mocks, and environment setup." | "Use Vitest spies, mocks, and fake timers instead of Sinon." | "Standards standardizes command-line interfaces on citty." | "Use native Promise, adding p-limit or p-map only for the extensions actually needed." | "Prefer node:fs/promises; verify recursive removal, copy, path, and error semantics." | "Node 22 provides global AbortController." | "Use URLSearchParams and explicitly review repeated keys, escaping, arrays, and object coercion." | "Standards standardizes environment loading on @dotenvx/dotenvx." | "Use picocolors for terminal colors." | "The original faker package is abandoned; use @faker-js/faker." | "node-sass is end-of-life; use Dart Sass." | "TSLint is deprecated; use ESLint with typescript-eslint.";
|
|
623
641
|
}[];
|
|
624
642
|
}];
|
|
625
643
|
readonly "@sarj/no-restricted-library-load": readonly ["error", {
|
|
626
644
|
readonly libraries: readonly [{
|
|
627
645
|
readonly id: "LIB101";
|
|
628
646
|
readonly module: "request";
|
|
629
|
-
readonly note: "
|
|
630
|
-
readonly replacement: "
|
|
647
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
648
|
+
readonly replacement: "native fetch";
|
|
631
649
|
}, {
|
|
632
650
|
readonly id: "LIB101";
|
|
633
651
|
readonly module: "node-fetch";
|
|
634
|
-
readonly note: "
|
|
635
|
-
readonly replacement: "
|
|
652
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
653
|
+
readonly replacement: "native fetch";
|
|
636
654
|
}, {
|
|
637
655
|
readonly id: "LIB101";
|
|
638
656
|
readonly module: "cross-fetch";
|
|
639
|
-
readonly note: "
|
|
640
|
-
readonly replacement: "
|
|
657
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
658
|
+
readonly replacement: "native fetch";
|
|
641
659
|
}, {
|
|
642
660
|
readonly id: "LIB101";
|
|
643
661
|
readonly module: "isomorphic-fetch";
|
|
644
|
-
readonly note: "
|
|
645
|
-
readonly replacement: "
|
|
662
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
663
|
+
readonly replacement: "native fetch";
|
|
646
664
|
}, {
|
|
647
665
|
readonly id: "LIB101";
|
|
648
666
|
readonly module: "axios";
|
|
649
|
-
readonly note: "
|
|
650
|
-
readonly replacement: "
|
|
667
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
668
|
+
readonly replacement: "native fetch";
|
|
651
669
|
}, {
|
|
652
670
|
readonly id: "LIB102";
|
|
653
671
|
readonly module: "moment";
|
|
@@ -908,9 +926,14 @@ type FlatPreset = {
|
|
|
908
926
|
declare const PLUGIN: {
|
|
909
927
|
readonly meta: {
|
|
910
928
|
readonly name: "@sarj/eslint-plugin";
|
|
911
|
-
readonly version: "15.
|
|
929
|
+
readonly version: "15.19.0";
|
|
912
930
|
};
|
|
913
931
|
readonly rules: {
|
|
932
|
+
readonly "require-button-accessible-name": DocumentedRule<readonly [{
|
|
933
|
+
readonly components?: readonly ComponentImport[];
|
|
934
|
+
readonly iconModules?: readonly string[];
|
|
935
|
+
}?], "missingName">;
|
|
936
|
+
readonly "require-svg-accessible-name": DocumentedRule<readonly [], "missingName">;
|
|
914
937
|
readonly "excessive-commentary": DocumentedRule<readonly [], "excessive">;
|
|
915
938
|
readonly "iac-source-coupled-test": DocumentedRule<readonly [], "rawSourceOracle">;
|
|
916
939
|
readonly "duplicate-test-body": DocumentedRule<readonly [], "duplicateTestBody">;
|
package/dist/index.d.ts
CHANGED
|
@@ -181,6 +181,15 @@ interface RuleOptions {
|
|
|
181
181
|
readonly methods?: readonly string[];
|
|
182
182
|
}
|
|
183
183
|
|
|
184
|
+
/**
|
|
185
|
+
* @fileoverview _jsx-accessibility — scope-aware JSX names and accessible content are shared across rules.
|
|
186
|
+
*/
|
|
187
|
+
|
|
188
|
+
interface ComponentImport {
|
|
189
|
+
readonly module: string;
|
|
190
|
+
readonly export: string;
|
|
191
|
+
}
|
|
192
|
+
|
|
184
193
|
/**
|
|
185
194
|
* @fileoverview _renames — every rule this plugin has renamed, old name to new; the old names no longer resolve, so this map is what says what to write instead.
|
|
186
195
|
*
|
|
@@ -196,6 +205,11 @@ declare const RENAMED_RULES: {
|
|
|
196
205
|
};
|
|
197
206
|
|
|
198
207
|
declare const RULES: {
|
|
208
|
+
readonly "require-button-accessible-name": DocumentedRule<readonly [{
|
|
209
|
+
readonly components?: readonly ComponentImport[];
|
|
210
|
+
readonly iconModules?: readonly string[];
|
|
211
|
+
}?], "missingName">;
|
|
212
|
+
readonly "require-svg-accessible-name": DocumentedRule<readonly [], "missingName">;
|
|
199
213
|
readonly "excessive-commentary": DocumentedRule<readonly [], "excessive">;
|
|
200
214
|
readonly "iac-source-coupled-test": DocumentedRule<readonly [], "rawSourceOracle">;
|
|
201
215
|
readonly "duplicate-test-body": DocumentedRule<readonly [], "duplicateTestBody">;
|
|
@@ -327,42 +341,44 @@ declare const APPLICATION_ONLY_RULES: readonly [];
|
|
|
327
341
|
/** Rules staged as non-blocking warnings while corpus adoption evidence accumulates. */
|
|
328
342
|
declare const ADVISORY_RULES: readonly ["@sarj/excessive-commentary", "@sarj/no-bespoke-api-case-conversion", "@sarj/no-detached-global-fetch", "@sarj/no-in-operator-on-built-in-collections", "@sarj/no-json-stringify-object-equality", "@sarj/no-redundant-optional-array-default", "@sarj/no-restated-comment", "@sarj/no-restated-jsdoc", "@sarj/prefer-millisecond-control-duration-schema", "@sarj/prefer-module-level-refined-schema", "@sarj/prefer-multi-value-zod-literal", "@sarj/prefer-named-callback-domain", "@sarj/prefer-named-complex-return-type", "@sarj/prefer-node-crypto-hash", "@sarj/prefer-node-fs-promises", "@sarj/prefer-nullish-filter-predicate", "@sarj/prefer-shared-zod-enum", "@sarj/prefer-switch-for-repeated-equality", "@sarj/prefer-whole-object-assertion", "@sarj/prefer-zod-parse-output-type", "@sarj/require-interface-for-exported-class", "@sarj/require-sql-access-class", "@sarj/sole-export-matches-filename"];
|
|
329
343
|
declare const RECOMMENDED_RULES: {
|
|
344
|
+
readonly "@sarj/require-button-accessible-name": "error";
|
|
345
|
+
readonly "@sarj/require-svg-accessible-name": "error";
|
|
330
346
|
readonly "no-restricted-imports": readonly ["error", {
|
|
331
347
|
readonly paths: {
|
|
332
348
|
name: "request" | "node-fetch" | "cross-fetch" | "isomorphic-fetch" | "axios" | "moment" | "dayjs" | "lodash" | "lodash-es" | "underscore" | "classnames" | "joi" | "yup" | "superstruct" | "io-ts" | "runtypes" | "jsonwebtoken" | "express" | "koa" | "jest" | "mocha" | "sinon" | "commander" | "yargs" | "bluebird" | "rimraf" | "fs-extra" | "abort-controller" | "querystring" | "dotenv" | "chalk" | "faker" | "node-sass" | "tslint";
|
|
333
|
-
message: "
|
|
349
|
+
message: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration." | "Standards standardizes date utilities on date-fns; migration is not API-compatible." | "Standards standardizes collection utilities on Remeda and native APIs." | "Use clsx for conditional class-name composition." | "Standards standardizes runtime validation on Zod; schemas are not drop-in compatible." | "Use jose; review key formats and async signing and verification APIs." | "Standards standardizes servers on Hono; Node deployments also need @hono/node-server." | "Standards standardizes tests on Vitest; review globals, timers, mocks, and environment setup." | "Use Vitest spies, mocks, and fake timers instead of Sinon." | "Standards standardizes command-line interfaces on citty." | "Use native Promise, adding p-limit or p-map only for the extensions actually needed." | "Prefer node:fs/promises; verify recursive removal, copy, path, and error semantics." | "Node 22 provides global AbortController." | "Use URLSearchParams and explicitly review repeated keys, escaping, arrays, and object coercion." | "Standards standardizes environment loading on @dotenvx/dotenvx." | "Use picocolors for terminal colors." | "The original faker package is abandoned; use @faker-js/faker." | "node-sass is end-of-life; use Dart Sass." | "TSLint is deprecated; use ESLint with typescript-eslint.";
|
|
334
350
|
}[];
|
|
335
351
|
readonly patterns: {
|
|
336
352
|
group: string[];
|
|
337
|
-
message: "
|
|
353
|
+
message: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration." | "Standards standardizes date utilities on date-fns; migration is not API-compatible." | "Standards standardizes collection utilities on Remeda and native APIs." | "Use clsx for conditional class-name composition." | "Standards standardizes runtime validation on Zod; schemas are not drop-in compatible." | "Use jose; review key formats and async signing and verification APIs." | "Standards standardizes servers on Hono; Node deployments also need @hono/node-server." | "Standards standardizes tests on Vitest; review globals, timers, mocks, and environment setup." | "Use Vitest spies, mocks, and fake timers instead of Sinon." | "Standards standardizes command-line interfaces on citty." | "Use native Promise, adding p-limit or p-map only for the extensions actually needed." | "Prefer node:fs/promises; verify recursive removal, copy, path, and error semantics." | "Node 22 provides global AbortController." | "Use URLSearchParams and explicitly review repeated keys, escaping, arrays, and object coercion." | "Standards standardizes environment loading on @dotenvx/dotenvx." | "Use picocolors for terminal colors." | "The original faker package is abandoned; use @faker-js/faker." | "node-sass is end-of-life; use Dart Sass." | "TSLint is deprecated; use ESLint with typescript-eslint.";
|
|
338
354
|
}[];
|
|
339
355
|
}];
|
|
340
356
|
readonly "@sarj/no-restricted-library-load": readonly ["error", {
|
|
341
357
|
readonly libraries: readonly [{
|
|
342
358
|
readonly id: "LIB101";
|
|
343
359
|
readonly module: "request";
|
|
344
|
-
readonly note: "
|
|
345
|
-
readonly replacement: "
|
|
360
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
361
|
+
readonly replacement: "native fetch";
|
|
346
362
|
}, {
|
|
347
363
|
readonly id: "LIB101";
|
|
348
364
|
readonly module: "node-fetch";
|
|
349
|
-
readonly note: "
|
|
350
|
-
readonly replacement: "
|
|
365
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
366
|
+
readonly replacement: "native fetch";
|
|
351
367
|
}, {
|
|
352
368
|
readonly id: "LIB101";
|
|
353
369
|
readonly module: "cross-fetch";
|
|
354
|
-
readonly note: "
|
|
355
|
-
readonly replacement: "
|
|
370
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
371
|
+
readonly replacement: "native fetch";
|
|
356
372
|
}, {
|
|
357
373
|
readonly id: "LIB101";
|
|
358
374
|
readonly module: "isomorphic-fetch";
|
|
359
|
-
readonly note: "
|
|
360
|
-
readonly replacement: "
|
|
375
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
376
|
+
readonly replacement: "native fetch";
|
|
361
377
|
}, {
|
|
362
378
|
readonly id: "LIB101";
|
|
363
379
|
readonly module: "axios";
|
|
364
|
-
readonly note: "
|
|
365
|
-
readonly replacement: "
|
|
380
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
381
|
+
readonly replacement: "native fetch";
|
|
366
382
|
}, {
|
|
367
383
|
readonly id: "LIB102";
|
|
368
384
|
readonly module: "moment";
|
|
@@ -612,42 +628,44 @@ declare const RECOMMENDED_RULES: {
|
|
|
612
628
|
readonly "@sarj/require-pascal-case-zod-schema-name": "error";
|
|
613
629
|
};
|
|
614
630
|
declare const STRICT_RULES: {
|
|
631
|
+
readonly "@sarj/require-button-accessible-name": "error";
|
|
632
|
+
readonly "@sarj/require-svg-accessible-name": "error";
|
|
615
633
|
readonly "no-restricted-imports": readonly ["error", {
|
|
616
634
|
readonly paths: {
|
|
617
635
|
name: "request" | "node-fetch" | "cross-fetch" | "isomorphic-fetch" | "axios" | "moment" | "dayjs" | "lodash" | "lodash-es" | "underscore" | "classnames" | "joi" | "yup" | "superstruct" | "io-ts" | "runtypes" | "jsonwebtoken" | "express" | "koa" | "jest" | "mocha" | "sinon" | "commander" | "yargs" | "bluebird" | "rimraf" | "fs-extra" | "abort-controller" | "querystring" | "dotenv" | "chalk" | "faker" | "node-sass" | "tslint";
|
|
618
|
-
message: "
|
|
636
|
+
message: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration." | "Standards standardizes date utilities on date-fns; migration is not API-compatible." | "Standards standardizes collection utilities on Remeda and native APIs." | "Use clsx for conditional class-name composition." | "Standards standardizes runtime validation on Zod; schemas are not drop-in compatible." | "Use jose; review key formats and async signing and verification APIs." | "Standards standardizes servers on Hono; Node deployments also need @hono/node-server." | "Standards standardizes tests on Vitest; review globals, timers, mocks, and environment setup." | "Use Vitest spies, mocks, and fake timers instead of Sinon." | "Standards standardizes command-line interfaces on citty." | "Use native Promise, adding p-limit or p-map only for the extensions actually needed." | "Prefer node:fs/promises; verify recursive removal, copy, path, and error semantics." | "Node 22 provides global AbortController." | "Use URLSearchParams and explicitly review repeated keys, escaping, arrays, and object coercion." | "Standards standardizes environment loading on @dotenvx/dotenvx." | "Use picocolors for terminal colors." | "The original faker package is abandoned; use @faker-js/faker." | "node-sass is end-of-life; use Dart Sass." | "TSLint is deprecated; use ESLint with typescript-eslint.";
|
|
619
637
|
}[];
|
|
620
638
|
readonly patterns: {
|
|
621
639
|
group: string[];
|
|
622
|
-
message: "
|
|
640
|
+
message: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration." | "Standards standardizes date utilities on date-fns; migration is not API-compatible." | "Standards standardizes collection utilities on Remeda and native APIs." | "Use clsx for conditional class-name composition." | "Standards standardizes runtime validation on Zod; schemas are not drop-in compatible." | "Use jose; review key formats and async signing and verification APIs." | "Standards standardizes servers on Hono; Node deployments also need @hono/node-server." | "Standards standardizes tests on Vitest; review globals, timers, mocks, and environment setup." | "Use Vitest spies, mocks, and fake timers instead of Sinon." | "Standards standardizes command-line interfaces on citty." | "Use native Promise, adding p-limit or p-map only for the extensions actually needed." | "Prefer node:fs/promises; verify recursive removal, copy, path, and error semantics." | "Node 22 provides global AbortController." | "Use URLSearchParams and explicitly review repeated keys, escaping, arrays, and object coercion." | "Standards standardizes environment loading on @dotenvx/dotenvx." | "Use picocolors for terminal colors." | "The original faker package is abandoned; use @faker-js/faker." | "node-sass is end-of-life; use Dart Sass." | "TSLint is deprecated; use ESLint with typescript-eslint.";
|
|
623
641
|
}[];
|
|
624
642
|
}];
|
|
625
643
|
readonly "@sarj/no-restricted-library-load": readonly ["error", {
|
|
626
644
|
readonly libraries: readonly [{
|
|
627
645
|
readonly id: "LIB101";
|
|
628
646
|
readonly module: "request";
|
|
629
|
-
readonly note: "
|
|
630
|
-
readonly replacement: "
|
|
647
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
648
|
+
readonly replacement: "native fetch";
|
|
631
649
|
}, {
|
|
632
650
|
readonly id: "LIB101";
|
|
633
651
|
readonly module: "node-fetch";
|
|
634
|
-
readonly note: "
|
|
635
|
-
readonly replacement: "
|
|
652
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
653
|
+
readonly replacement: "native fetch";
|
|
636
654
|
}, {
|
|
637
655
|
readonly id: "LIB101";
|
|
638
656
|
readonly module: "cross-fetch";
|
|
639
|
-
readonly note: "
|
|
640
|
-
readonly replacement: "
|
|
657
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
658
|
+
readonly replacement: "native fetch";
|
|
641
659
|
}, {
|
|
642
660
|
readonly id: "LIB101";
|
|
643
661
|
readonly module: "isomorphic-fetch";
|
|
644
|
-
readonly note: "
|
|
645
|
-
readonly replacement: "
|
|
662
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
663
|
+
readonly replacement: "native fetch";
|
|
646
664
|
}, {
|
|
647
665
|
readonly id: "LIB101";
|
|
648
666
|
readonly module: "axios";
|
|
649
|
-
readonly note: "
|
|
650
|
-
readonly replacement: "
|
|
667
|
+
readonly note: "Use the platform-native fetch API; review errors, timeouts, retries, and response parsing during migration.";
|
|
668
|
+
readonly replacement: "native fetch";
|
|
651
669
|
}, {
|
|
652
670
|
readonly id: "LIB102";
|
|
653
671
|
readonly module: "moment";
|
|
@@ -908,9 +926,14 @@ type FlatPreset = {
|
|
|
908
926
|
declare const PLUGIN: {
|
|
909
927
|
readonly meta: {
|
|
910
928
|
readonly name: "@sarj/eslint-plugin";
|
|
911
|
-
readonly version: "15.
|
|
929
|
+
readonly version: "15.19.0";
|
|
912
930
|
};
|
|
913
931
|
readonly rules: {
|
|
932
|
+
readonly "require-button-accessible-name": DocumentedRule<readonly [{
|
|
933
|
+
readonly components?: readonly ComponentImport[];
|
|
934
|
+
readonly iconModules?: readonly string[];
|
|
935
|
+
}?], "missingName">;
|
|
936
|
+
readonly "require-svg-accessible-name": DocumentedRule<readonly [], "missingName">;
|
|
914
937
|
readonly "excessive-commentary": DocumentedRule<readonly [], "excessive">;
|
|
915
938
|
readonly "iac-source-coupled-test": DocumentedRule<readonly [], "rawSourceOracle">;
|
|
916
939
|
readonly "duplicate-test-body": DocumentedRule<readonly [], "duplicateTestBody">;
|