@solvro/config 1.2.1 → 1.3.1

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.
@@ -27,24 +27,25 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
29
 
30
- // eslint-config/index.ts
31
- var eslint_config_exports = {};
32
- __export(eslint_config_exports, {
30
+ // eslint/index.ts
31
+ var eslint_exports = {};
32
+ __export(eslint_exports, {
33
33
  solvro: () => solvro
34
34
  });
35
- module.exports = __toCommonJS(eslint_config_exports);
35
+ module.exports = __toCommonJS(eslint_exports);
36
+ var import_eslint_config = require("@adonisjs/eslint-config");
37
+ var import_local_pkg2 = require("local-pkg");
36
38
  var import_typescript_eslint2 = __toESM(require("typescript-eslint"), 1);
37
39
 
38
- // eslint-config/plugins.ts
40
+ // eslint/plugins.ts
39
41
  var import_eslint_plugin_eslint_comments = __toESM(require("@eslint-community/eslint-plugin-eslint-comments"), 1);
40
42
  var import_eslint_plugin_antfu = __toESM(require("eslint-plugin-antfu"), 1);
41
- var pluginImport = __toESM(require("eslint-plugin-import-x"), 1);
43
+ var import_eslint_plugin_import = __toESM(require("eslint-plugin-import"), 1);
42
44
  var import_eslint_plugin_n = __toESM(require("eslint-plugin-n"), 1);
43
- var import_eslint_plugin_perfectionist = __toESM(require("eslint-plugin-perfectionist"), 1);
44
45
  var import_eslint_plugin_unicorn = __toESM(require("eslint-plugin-unicorn"), 1);
45
46
  var import_eslint_plugin_unused_imports = __toESM(require("eslint-plugin-unused-imports"), 1);
46
47
 
47
- // eslint-config/configs/comments.ts
48
+ // eslint/configs/comments.ts
48
49
  function comments() {
49
50
  return [
50
51
  {
@@ -63,7 +64,7 @@ function comments() {
63
64
  ];
64
65
  }
65
66
 
66
- // eslint-config/globs.ts
67
+ // eslint/globs.ts
67
68
  var GLOB_SRC_EXT = "?([cm])[jt]s?(x)";
68
69
  var GLOB_SRC = "**/*.?([cm])[jt]s?(x)";
69
70
  var GLOB_MARKDOWN = "**/*.md";
@@ -109,7 +110,7 @@ var GLOB_EXCLUDE = [
109
110
  "**/components.d.ts"
110
111
  ];
111
112
 
112
- // eslint-config/configs/disables.ts
113
+ // eslint/configs/disables.ts
113
114
  function disables() {
114
115
  return [
115
116
  {
@@ -166,7 +167,7 @@ function disables() {
166
167
  ];
167
168
  }
168
169
 
169
- // eslint-config/configs/formatters.ts
170
+ // eslint/configs/formatters.ts
170
171
  var import_eslint_config_prettier = __toESM(require("eslint-config-prettier"), 1);
171
172
  function formatters() {
172
173
  return [
@@ -177,7 +178,7 @@ function formatters() {
177
178
  ];
178
179
  }
179
180
 
180
- // eslint-config/configs/ignores.ts
181
+ // eslint/configs/ignores.ts
181
182
  function ignores() {
182
183
  return [
183
184
  {
@@ -187,32 +188,49 @@ function ignores() {
187
188
  ];
188
189
  }
189
190
 
190
- // eslint-config/configs/imports.ts
191
+ // eslint/configs/imports.ts
191
192
  function imports() {
192
193
  return [
194
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
195
+ import_eslint_plugin_import.default.flatConfigs.typescript,
193
196
  {
194
197
  name: "solvro/imports/rules",
195
198
  plugins: {
196
199
  antfu: import_eslint_plugin_antfu.default,
197
- // @ts-expect-error ???
198
- "import-x": pluginImport
200
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
201
+ import: import_eslint_plugin_import.default
199
202
  },
203
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
200
204
  rules: {
201
205
  "antfu/import-dedupe": "error",
202
206
  "antfu/no-import-dist": "error",
203
207
  "antfu/no-import-node-modules-by-path": "error",
204
- "import-x/first": "error",
205
- "import-x/no-duplicates": "error",
206
- "import-x/no-mutable-exports": "error",
207
- "import-x/no-named-default": "error",
208
- "import-x/no-self-import": "error",
209
- "import-x/no-webpack-loader-syntax": "error"
208
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
209
+ ...import_eslint_plugin_import.default.flatConfigs.recommended.rules,
210
+ "import/no-default-export": "error",
211
+ "import/no-dynamic-require": "warn",
212
+ "import/no-unresolved": "off",
213
+ "import/consistent-type-specifier-style": "warn"
214
+ }
215
+ },
216
+ {
217
+ files: [
218
+ "tsup.config.*",
219
+ "eslint.config.*",
220
+ ".commitlintrc.*",
221
+ "knip.*",
222
+ "next.config.*",
223
+ "commitlint.config.*",
224
+ ".releaserc.*"
225
+ ],
226
+ rules: {
227
+ "import/no-default-export": "off"
210
228
  }
211
229
  }
212
230
  ];
213
231
  }
214
232
 
215
- // eslint-config/configs/javascript.ts
233
+ // eslint/configs/javascript.ts
216
234
  var import_js = __toESM(require("@eslint/js"), 1);
217
235
  var import_globals = __toESM(require("globals"), 1);
218
236
  function javascript() {
@@ -448,7 +466,7 @@ function javascript() {
448
466
  ];
449
467
  }
450
468
 
451
- // eslint-config/configs/jsdoc.ts
469
+ // eslint/configs/jsdoc.ts
452
470
  var import_eslint_plugin_jsdoc = __toESM(require("eslint-plugin-jsdoc"), 1);
453
471
  function jsdoc() {
454
472
  return [
@@ -478,7 +496,7 @@ function jsdoc() {
478
496
  ];
479
497
  }
480
498
 
481
- // eslint-config/configs/node.ts
499
+ // eslint/configs/node.ts
482
500
  function node() {
483
501
  return [
484
502
  {
@@ -500,7 +518,7 @@ function node() {
500
518
  ];
501
519
  }
502
520
 
503
- // eslint-config/configs/react.ts
521
+ // eslint/configs/react.ts
504
522
  var import_eslint_plugin_next = __toESM(require("@next/eslint-plugin-next"), 1);
505
523
  var import_eslint_plugin_react = __toESM(require("eslint-plugin-react"), 1);
506
524
  var import_eslint_plugin_react_hooks = __toESM(require("eslint-plugin-react-hooks"), 1);
@@ -509,17 +527,29 @@ var import_local_pkg = require("local-pkg");
509
527
  var NextJsPackages = ["next"];
510
528
  function react() {
511
529
  const isUsingNext = NextJsPackages.some((index) => (0, import_local_pkg.isPackageExists)(index));
512
- const nextjsConfig = [];
530
+ const nextjsConfig2 = [];
513
531
  if (isUsingNext) {
514
- nextjsConfig.push({
515
- name: "solvro/next/setup",
516
- plugins: {
517
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
518
- "@next/next": import_eslint_plugin_next.default
532
+ nextjsConfig2.push(
533
+ {
534
+ name: "solvro/next/setup",
535
+ plugins: {
536
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
537
+ "@next/next": import_eslint_plugin_next.default
538
+ },
539
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
540
+ rules: import_eslint_plugin_next.default.configs.recommended.rules
519
541
  },
520
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
521
- rules: import_eslint_plugin_next.default.configs.recommended.rules
522
- });
542
+ {
543
+ files: [
544
+ "**/app/**/{page,loading,layout}.{js,jsx,ts,tsx}",
545
+ "**/pages/**/*.{js,jsx,ts,tsx}"
546
+ ],
547
+ name: "solvro/next/pages",
548
+ rules: {
549
+ "import/no-default-export": "off"
550
+ }
551
+ }
552
+ );
523
553
  }
524
554
  return [
525
555
  {
@@ -533,7 +563,7 @@ function react() {
533
563
  "react-refresh": import_eslint_plugin_react_refresh.default
534
564
  }
535
565
  },
536
- ...nextjsConfig,
566
+ ...nextjsConfig2,
537
567
  {
538
568
  files: ["**/*.{js,jsx,mjs,cjs,ts,tsx}"],
539
569
  languageOptions: {
@@ -553,6 +583,7 @@ function react() {
553
583
  rules: {
554
584
  ...import_eslint_plugin_react.default.configs.flat?.recommended.rules,
555
585
  ...import_eslint_plugin_react.default.configs.flat?.["jsx-runtime"].rules,
586
+ "react/no-danger": "warn",
556
587
  "react/jsx-no-leaked-render": "warn",
557
588
  // recommended rules react-hooks
558
589
  "react-hooks/exhaustive-deps": "warn",
@@ -574,6 +605,10 @@ function react() {
574
605
  "maxDuration",
575
606
  "config",
576
607
  "generateStaticParams",
608
+ "getStaticProps",
609
+ "getServerSideProps",
610
+ "getInitialProps",
611
+ "getStaticPaths",
577
612
  "metadata",
578
613
  "generateMetadata",
579
614
  "viewport",
@@ -587,7 +622,7 @@ function react() {
587
622
  ];
588
623
  }
589
624
 
590
- // eslint-config/configs/typescript.ts
625
+ // eslint/configs/typescript.ts
591
626
  var import_typescript_eslint = __toESM(require("typescript-eslint"), 1);
592
627
  function typescript() {
593
628
  return [
@@ -602,6 +637,7 @@ function typescript() {
602
637
  }
603
638
  },
604
639
  {
640
+ files: ["**/*.{ts,tsx}"],
605
641
  name: "solvro/typescript/rules",
606
642
  rules: {
607
643
  "@typescript-eslint/ban-ts-comment": [
@@ -735,7 +771,7 @@ function typescript() {
735
771
  ];
736
772
  }
737
773
 
738
- // eslint-config/configs/unicorn.ts
774
+ // eslint/configs/unicorn.ts
739
775
  function unicorn() {
740
776
  return [
741
777
  {
@@ -743,26 +779,46 @@ function unicorn() {
743
779
  plugins: {
744
780
  unicorn: import_eslint_plugin_unicorn.default
745
781
  },
746
- rules: import_eslint_plugin_unicorn.default.configs["flat/recommended"].rules
782
+ rules: {
783
+ ...import_eslint_plugin_unicorn.default.configs["flat/recommended"].rules,
784
+ "unicorn/no-array-reduce": "off",
785
+ "unicorn/no-null": "off"
786
+ }
747
787
  }
748
788
  ];
749
789
  }
750
790
 
751
- // eslint-config/index.ts
752
- var solvro = (...configs) => import_typescript_eslint2.default.config(
753
- ...react(),
754
- ...typescript(),
755
- ...javascript(),
756
- ...jsdoc(),
757
- ...unicorn(),
758
- ...disables(),
759
- ...imports(),
760
- ...comments(),
761
- ...ignores(),
762
- ...formatters(),
763
- ...node(),
764
- ...configs
765
- );
791
+ // eslint/index.ts
792
+ var adonisConfig = [...(0, import_eslint_config.configApp)(), ...node()];
793
+ var nextjsConfig = [...react()];
794
+ var solvro = (...overrides) => {
795
+ const isAdonis = (0, import_local_pkg2.isPackageExists)("@adonisjs/core");
796
+ const isNext = (0, import_local_pkg2.isPackageExists)("next");
797
+ const configs = [
798
+ ...typescript(),
799
+ ...javascript(),
800
+ ...jsdoc(),
801
+ ...unicorn(),
802
+ ...disables(),
803
+ ...imports(),
804
+ ...comments(),
805
+ ...ignores(),
806
+ ...formatters(),
807
+ ...overrides
808
+ ];
809
+ if (isNext && isAdonis) {
810
+ throw new Error(
811
+ "You can't use both Adonis and Next.js in the same project"
812
+ );
813
+ }
814
+ if (isAdonis) {
815
+ configs.push(...adonisConfig);
816
+ }
817
+ if (isNext) {
818
+ configs.push(...nextjsConfig);
819
+ }
820
+ return import_typescript_eslint2.default.config(configs);
821
+ };
766
822
  // Annotate the CommonJS export names for ESM import in node:
767
823
  0 && (module.exports = {
768
824
  solvro
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../eslint/index.ts","../../eslint/plugins.ts","../../eslint/configs/comments.ts","../../eslint/globs.ts","../../eslint/configs/disables.ts","../../eslint/configs/formatters.ts","../../eslint/configs/ignores.ts","../../eslint/configs/imports.ts","../../eslint/configs/javascript.ts","../../eslint/configs/jsdoc.ts","../../eslint/configs/node.ts","../../eslint/configs/react.ts","../../eslint/configs/typescript.ts","../../eslint/configs/unicorn.ts"],"sourcesContent":["import { configApp } from \"@adonisjs/eslint-config\";\nimport { isPackageExists } from \"local-pkg\";\nimport tseslint from \"typescript-eslint\";\nimport type { ConfigWithExtends } from \"typescript-eslint\";\n\nimport { comments } from \"./configs/comments\";\nimport { disables } from \"./configs/disables\";\nimport { formatters } from \"./configs/formatters\";\nimport { ignores } from \"./configs/ignores\";\nimport { imports } from \"./configs/imports\";\nimport { javascript } from \"./configs/javascript\";\nimport { jsdoc } from \"./configs/jsdoc\";\nimport { node } from \"./configs/node\";\nimport { react } from \"./configs/react\";\nimport { typescript } from \"./configs/typescript\";\nimport { unicorn } from \"./configs/unicorn\";\n\n// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call\nconst adonisConfig = [...configApp(), ...node()];\n\nconst nextjsConfig = [...react()];\n\nexport const solvro = (...overrides: ConfigWithExtends[]) => {\n const isAdonis = isPackageExists(\"@adonisjs/core\");\n const isNext = isPackageExists(\"next\");\n\n const configs = [\n ...typescript(),\n ...javascript(),\n ...jsdoc(),\n ...unicorn(),\n ...disables(),\n ...imports(),\n ...comments(),\n ...ignores(),\n ...formatters(),\n ...overrides,\n ];\n\n if (isNext && isAdonis) {\n throw new Error(\n \"You can't use both Adonis and Next.js in the same project\",\n );\n }\n\n if (isAdonis) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n configs.push(...adonisConfig);\n }\n\n if (isNext) {\n configs.push(...nextjsConfig);\n }\n\n return tseslint.config(configs);\n};\n","//@ts-expect-error not working\nexport { default as pluginComments } from \"@eslint-community/eslint-plugin-eslint-comments\";\nexport { default as pluginAntfu } from \"eslint-plugin-antfu\";\n//@ts-expect-error not working too\nexport { default as pluginImport } from \"eslint-plugin-import\";\nexport { default as pluginNode } from \"eslint-plugin-n\";\nexport { default as pluginUnicorn } from \"eslint-plugin-unicorn\";\nexport { default as pluginUnusedImports } from \"eslint-plugin-unused-imports\";\n","import type { Linter } from \"eslint\";\n\nimport { pluginComments } from \"../plugins\";\n\nexport function comments(): Linter.Config[] {\n return [\n {\n name: \"solvro/eslint-comments/rules\",\n plugins: {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n \"eslint-comments\": pluginComments,\n },\n rules: {\n \"eslint-comments/no-aggregating-enable\": \"error\",\n \"eslint-comments/no-duplicate-disable\": \"error\",\n \"eslint-comments/no-unlimited-disable\": \"error\",\n \"eslint-comments/no-unused-enable\": \"error\",\n },\n },\n ];\n}\n","export const GLOB_SRC_EXT = \"?([cm])[jt]s?(x)\";\nexport const GLOB_SRC = \"**/*.?([cm])[jt]s?(x)\";\n\nexport const GLOB_JS = \"**/*.?([cm])js\";\nexport const GLOB_JSX = \"**/*.?([cm])jsx\";\n\nexport const GLOB_TS = \"**/*.?([cm])ts\";\nexport const GLOB_TSX = \"**/*.?([cm])tsx\";\n\nexport const GLOB_STYLE = \"**/*.{c,le,sc}ss\";\nexport const GLOB_JSON = \"**/*.json\";\nexport const GLOB_JSON5 = \"**/*.json5\";\n\nexport const GLOB_MARKDOWN = \"**/*.md\";\nexport const GLOB_MARKDOWN_IN_MARKDOWN = \"**/*.md/*.md\";\nexport const GLOB_TOML = \"**/*.toml\";\nexport const GLOB_XML = \"**/*.xml\";\nexport const GLOB_SVG = \"**/*.svg\";\nexport const GLOB_HTML = \"**/*.htm?(l)\";\n\nexport const GLOB_MARKDOWN_CODE = `${GLOB_MARKDOWN}/${GLOB_SRC}`;\n\nexport const GLOB_TESTS = [\n `**/__tests__/**/*.${GLOB_SRC_EXT}`,\n `**/*.spec.${GLOB_SRC_EXT}`,\n `**/*.test.${GLOB_SRC_EXT}`,\n `**/*.bench.${GLOB_SRC_EXT}`,\n `**/*.benchmark.${GLOB_SRC_EXT}`,\n];\n\nexport const GLOB_ALL_SRC = [\n GLOB_SRC,\n GLOB_STYLE,\n GLOB_JSON,\n GLOB_JSON5,\n GLOB_MARKDOWN,\n GLOB_XML,\n GLOB_HTML,\n];\n\nexport const GLOB_EXCLUDE = [\n \"**/node_modules\",\n \"**/dist\",\n \"**/package-lock.json\",\n \"**/yarn.lock\",\n \"**/pnpm-lock.yaml\",\n \"**/bun.lockb\",\n\n \"**/output\",\n \"**/coverage\",\n \"**/temp\",\n \"**/.temp\",\n \"**/tmp\",\n \"**/.tmp\",\n \"**/.history\",\n \"**/.vitepress/cache\",\n \"**/.nuxt\",\n \"**/.next\",\n \"**/.svelte-kit\",\n \"**/.vercel\",\n \"**/.changeset\",\n \"**/.idea\",\n \"**/.cache\",\n \"**/.output\",\n \"**/.vite-inspect\",\n \"**/.yarn\",\n \"**/vite.config.*.timestamp-*\",\n\n \"**/CHANGELOG*.md\",\n \"**/*.min.*\",\n \"**/LICENSE*\",\n \"**/__snapshots__\",\n \"**/auto-import?(s).d.ts\",\n \"**/components.d.ts\",\n];\n","import type { Linter } from \"eslint\";\n\nimport { GLOB_SRC, GLOB_SRC_EXT } from \"../globs\";\n\nexport function disables(): Linter.Config[] {\n return [\n {\n files: [`**/scripts/${GLOB_SRC}`],\n name: \"solvro/disables/scripts\",\n rules: {\n \"antfu/no-top-level-await\": \"off\",\n \"no-console\": \"off\",\n \"@typescript-eslint/explicit-function-return-type\": \"off\",\n },\n },\n {\n files: [`**/cli/${GLOB_SRC}`, `**/cli.${GLOB_SRC_EXT}`],\n name: \"solvro/disables/cli\",\n rules: {\n \"antfu/no-top-level-await\": \"off\",\n \"no-console\": \"off\",\n },\n },\n {\n files: [\"**/bin/**/*\", `**/bin.${GLOB_SRC_EXT}`],\n name: \"solvro/disables/bin\",\n rules: {\n \"antfu/no-import-dist\": \"off\",\n \"antfu/no-import-node-modules-by-path\": \"off\",\n },\n },\n {\n files: [\"**/*.d.?([cm])ts\"],\n name: \"solvro/disables/dts\",\n rules: {\n \"eslint-comments/no-unlimited-disable\": \"off\",\n \"import-x/no-duplicates\": \"off\",\n \"no-restricted-syntax\": \"off\",\n \"unused-imports/no-unused-vars\": \"off\",\n },\n },\n {\n files: [\"**/*.js\", \"**/*.cjs\"],\n name: \"solvro/disables/cjs\",\n rules: {\n \"@typescript-eslint/no-require-imports\": \"off\",\n },\n },\n {\n files: [`**/*.config.${GLOB_SRC_EXT}`, `**/*.config.*.${GLOB_SRC_EXT}`],\n name: \"antfu/disables/config-files\",\n rules: {\n \"antfu/no-top-level-await\": \"off\",\n \"no-console\": \"off\",\n \"@typescript-eslint/explicit-function-return-type\": \"off\",\n },\n },\n ];\n}\n","import type { Linter } from \"eslint\";\nimport prettierConfig from \"eslint-config-prettier\";\n\nexport function formatters(): Linter.Config[] {\n return [\n {\n name: \"solvro/prettier\",\n ...prettierConfig,\n },\n ];\n}\n","import type { Linter } from \"eslint\";\n\nimport { GLOB_EXCLUDE } from \"../globs\";\n\nexport function ignores(): Linter.Config[] {\n return [\n {\n ignores: [...GLOB_EXCLUDE],\n name: \"solvro/ignores\",\n },\n ];\n}\n","import type { Linter } from \"eslint\";\n\nimport { pluginAntfu, pluginImport } from \"../plugins\";\n\nexport function imports(): Linter.Config[] {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return [\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n pluginImport.flatConfigs.typescript,\n {\n name: \"solvro/imports/rules\",\n plugins: {\n antfu: pluginAntfu,\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n import: pluginImport,\n },\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n rules: {\n \"antfu/import-dedupe\": \"error\",\n \"antfu/no-import-dist\": \"error\",\n \"antfu/no-import-node-modules-by-path\": \"error\",\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n ...pluginImport.flatConfigs.recommended.rules,\n \"import/no-default-export\": \"error\",\n \"import/no-dynamic-require\": \"warn\",\n \"import/no-unresolved\": \"off\",\n \"import/consistent-type-specifier-style\": \"warn\",\n },\n },\n {\n files: [\n \"tsup.config.*\",\n \"eslint.config.*\",\n \".commitlintrc.*\",\n \"knip.*\",\n \"next.config.*\",\n \"commitlint.config.*\",\n \".releaserc.*\",\n ],\n rules: {\n \"import/no-default-export\": \"off\",\n },\n },\n ];\n}\n","import eslint from \"@eslint/js\";\nimport type { Linter } from \"eslint\";\nimport globals from \"globals\";\n\nimport { pluginAntfu, pluginUnusedImports } from \"../plugins\";\n\nexport function javascript(): Linter.Config[] {\n return [\n {\n languageOptions: {\n ecmaVersion: 2022,\n globals: {\n ...globals.browser,\n ...globals.es2021,\n ...globals.node,\n document: \"readonly\",\n navigator: \"readonly\",\n window: \"readonly\",\n },\n parserOptions: {\n ecmaFeatures: {\n jsx: true,\n },\n ecmaVersion: 2022,\n sourceType: \"module\",\n },\n sourceType: \"module\",\n },\n linterOptions: {\n reportUnusedDisableDirectives: true,\n },\n name: \"solvro/javascript/setup\",\n },\n {\n name: \"solvro/javascript/rules\",\n plugins: {\n antfu: pluginAntfu,\n \"unused-imports\": pluginUnusedImports,\n },\n rules: {\n ...eslint.configs.recommended.rules,\n \"accessor-pairs\": [\n \"error\",\n { enforceForClassMembers: true, setWithoutGet: true },\n ],\n\n \"antfu/no-top-level-await\": \"error\",\n \"array-callback-return\": \"error\",\n \"block-scoped-var\": \"error\",\n \"constructor-super\": \"error\",\n \"default-case-last\": \"error\",\n \"dot-notation\": [\"error\", { allowKeywords: true }],\n eqeqeq: [\"error\", \"smart\"],\n \"new-cap\": [\n \"error\",\n { capIsNew: false, newIsCap: true, properties: true },\n ],\n \"no-alert\": \"error\",\n \"no-array-constructor\": \"error\",\n \"no-async-promise-executor\": \"error\",\n \"no-caller\": \"error\",\n \"no-case-declarations\": \"error\",\n \"no-class-assign\": \"error\",\n \"no-compare-neg-zero\": \"error\",\n \"no-cond-assign\": [\"error\", \"always\"],\n \"no-console\": [\"error\", { allow: [\"warn\", \"error\"] }],\n \"no-const-assign\": \"error\",\n \"no-control-regex\": \"error\",\n \"no-debugger\": \"error\",\n \"no-delete-var\": \"error\",\n \"no-dupe-args\": \"error\",\n \"no-dupe-class-members\": \"error\",\n \"no-dupe-keys\": \"error\",\n \"no-duplicate-case\": \"error\",\n \"no-empty\": [\"error\", { allowEmptyCatch: true }],\n \"no-empty-character-class\": \"error\",\n \"no-empty-pattern\": \"error\",\n \"no-eval\": \"error\",\n \"no-ex-assign\": \"error\",\n \"no-extend-native\": \"error\",\n \"no-extra-bind\": \"error\",\n \"no-extra-boolean-cast\": \"error\",\n \"no-fallthrough\": \"error\",\n \"no-func-assign\": \"error\",\n \"no-global-assign\": \"error\",\n \"no-implied-eval\": \"error\",\n \"no-import-assign\": \"error\",\n \"no-invalid-regexp\": \"error\",\n \"no-irregular-whitespace\": \"error\",\n \"no-iterator\": \"error\",\n \"no-labels\": [\"error\", { allowLoop: false, allowSwitch: false }],\n \"no-lone-blocks\": \"error\",\n \"no-loss-of-precision\": \"error\",\n \"no-misleading-character-class\": \"error\",\n \"no-multi-str\": \"error\",\n \"no-new\": \"error\",\n \"no-new-func\": \"error\",\n \"no-new-native-nonconstructor\": \"error\",\n \"no-new-wrappers\": \"error\",\n \"no-obj-calls\": \"error\",\n \"no-octal\": \"error\",\n \"no-octal-escape\": \"error\",\n \"no-proto\": \"error\",\n \"no-prototype-builtins\": \"error\",\n \"no-redeclare\": [\"error\", { builtinGlobals: false }],\n \"no-regex-spaces\": \"error\",\n \"no-restricted-globals\": [\n \"error\",\n { message: \"Use `globalThis` instead.\", name: \"global\" },\n { message: \"Use `globalThis` instead.\", name: \"self\" },\n ],\n \"no-restricted-properties\": [\n \"error\",\n {\n message:\n \"Use `Object.getPrototypeOf` or `Object.setPrototypeOf` instead.\",\n property: \"__proto__\",\n },\n {\n message: \"Use `Object.defineProperty` instead.\",\n property: \"__defineGetter__\",\n },\n {\n message: \"Use `Object.defineProperty` instead.\",\n property: \"__defineSetter__\",\n },\n {\n message: \"Use `Object.getOwnPropertyDescriptor` instead.\",\n property: \"__lookupGetter__\",\n },\n {\n message: \"Use `Object.getOwnPropertyDescriptor` instead.\",\n property: \"__lookupSetter__\",\n },\n ],\n \"no-restricted-syntax\": [\n \"error\",\n \"TSEnumDeclaration[const=true]\",\n \"TSExportAssignment\",\n ],\n \"no-self-assign\": [\"error\", { props: true }],\n \"no-self-compare\": \"error\",\n \"no-sequences\": \"error\",\n \"no-shadow-restricted-names\": \"error\",\n \"no-sparse-arrays\": \"error\",\n \"no-template-curly-in-string\": \"error\",\n \"no-this-before-super\": \"error\",\n \"no-throw-literal\": \"error\",\n \"no-undef\": \"error\",\n \"no-undef-init\": \"error\",\n \"no-unexpected-multiline\": \"error\",\n \"no-unmodified-loop-condition\": \"error\",\n \"no-unneeded-ternary\": [\"error\", { defaultAssignment: false }],\n \"no-unreachable\": \"error\",\n \"no-unreachable-loop\": \"error\",\n \"no-unsafe-finally\": \"error\",\n \"no-unsafe-negation\": \"error\",\n \"no-unused-expressions\": [\n \"error\",\n {\n allowShortCircuit: true,\n allowTaggedTemplates: true,\n allowTernary: true,\n },\n ],\n \"no-unused-vars\": [\n \"error\",\n {\n args: \"none\",\n caughtErrors: \"none\",\n ignoreRestSiblings: true,\n vars: \"all\",\n },\n ],\n \"no-use-before-define\": [\n \"error\",\n { classes: false, functions: false, variables: true },\n ],\n \"no-useless-backreference\": \"error\",\n \"no-useless-call\": \"error\",\n \"no-useless-catch\": \"error\",\n \"no-useless-computed-key\": \"error\",\n \"no-useless-constructor\": \"error\",\n \"no-useless-rename\": \"error\",\n \"no-useless-return\": \"error\",\n \"no-var\": \"error\",\n \"no-with\": \"error\",\n \"object-shorthand\": [\n \"error\",\n \"always\",\n {\n avoidQuotes: true,\n ignoreConstructors: false,\n },\n ],\n \"one-var\": [\"error\", { initialized: \"never\" }],\n \"prefer-arrow-callback\": [\n \"error\",\n {\n allowNamedFunctions: false,\n allowUnboundThis: true,\n },\n ],\n \"prefer-const\": [\n \"error\",\n {\n destructuring: \"all\",\n ignoreReadBeforeAssign: true,\n },\n ],\n \"prefer-exponentiation-operator\": \"error\",\n \"prefer-promise-reject-errors\": \"error\",\n \"prefer-regex-literals\": [\"error\", { disallowRedundantWrapping: true }],\n \"prefer-rest-params\": \"error\",\n \"prefer-spread\": \"error\",\n \"prefer-template\": \"error\",\n \"symbol-description\": \"error\",\n \"unicode-bom\": [\"error\", \"never\"],\n \"unused-imports/no-unused-imports\": \"error\",\n \"unused-imports/no-unused-vars\": [\n \"error\",\n {\n args: \"after-used\",\n argsIgnorePattern: \"^_\",\n ignoreRestSiblings: true,\n vars: \"all\",\n varsIgnorePattern: \"^_\",\n },\n ],\n \"use-isnan\": [\n \"error\",\n { enforceForIndexOf: true, enforceForSwitchCase: true },\n ],\n \"valid-typeof\": [\"error\", { requireStringLiterals: true }],\n \"vars-on-top\": \"error\",\n yoda: [\"error\", \"never\"],\n },\n },\n ];\n}\n","import type { Linter } from \"eslint\";\nimport jsdocPlugin from \"eslint-plugin-jsdoc\";\n\nexport function jsdoc(): Linter.Config[] {\n return [\n {\n name: \"solvro/jsdoc/rules\",\n plugins: {\n jsdoc: jsdocPlugin,\n },\n rules: {\n \"jsdoc/check-access\": \"warn\",\n \"jsdoc/check-param-names\": \"warn\",\n \"jsdoc/check-property-names\": \"warn\",\n \"jsdoc/check-types\": \"warn\",\n \"jsdoc/empty-tags\": \"warn\",\n \"jsdoc/implements-on-classes\": \"warn\",\n \"jsdoc/no-defaults\": \"warn\",\n \"jsdoc/no-multi-asterisks\": \"warn\",\n \"jsdoc/require-param-name\": \"warn\",\n \"jsdoc/require-property\": \"warn\",\n \"jsdoc/require-property-description\": \"warn\",\n \"jsdoc/require-property-name\": \"warn\",\n \"jsdoc/require-returns-check\": \"warn\",\n \"jsdoc/require-returns-description\": \"warn\",\n \"jsdoc/require-yields-check\": \"warn\",\n },\n },\n ];\n}\n","import type { Linter } from \"eslint\";\n\nimport { pluginNode } from \"../plugins\";\n\nexport function node(): Linter.Config[] {\n return [\n {\n name: \"solvro/node/rules\",\n plugins: {\n node: pluginNode,\n },\n rules: {\n \"node/handle-callback-err\": [\"error\", \"^(err|error)$\"],\n \"node/no-deprecated-api\": \"error\",\n \"node/no-exports-assign\": \"error\",\n \"node/no-new-require\": \"error\",\n \"node/no-path-concat\": \"error\",\n \"node/prefer-global/buffer\": [\"error\", \"never\"],\n \"node/prefer-global/process\": [\"error\", \"never\"],\n \"node/process-exit-as-throw\": \"error\",\n },\n },\n ];\n}\n","// @ts-expect-error ???\nimport nextPlugin from \"@next/eslint-plugin-next\";\nimport type { Linter } from \"eslint\";\nimport pluginReact from \"eslint-plugin-react\";\nimport pluginReactHooks from \"eslint-plugin-react-hooks\";\nimport pluginReactRefresh from \"eslint-plugin-react-refresh\";\nimport { isPackageExists } from \"local-pkg\";\n\nconst NextJsPackages = [\"next\"];\n\nexport function react(): Linter.Config[] {\n const isUsingNext = NextJsPackages.some((index) => isPackageExists(index));\n\n const nextjsConfig: Linter.Config[] = [];\n\n if (isUsingNext) {\n nextjsConfig.push(\n {\n name: \"solvro/next/setup\",\n plugins: {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n \"@next/next\": nextPlugin,\n },\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access\n rules: nextPlugin.configs.recommended.rules,\n },\n {\n files: [\n \"**/app/**/{page,loading,layout}.{js,jsx,ts,tsx}\",\n \"**/pages/**/*.{js,jsx,ts,tsx}\",\n ],\n name: \"solvro/next/pages\",\n rules: {\n \"import/no-default-export\": \"off\",\n },\n },\n );\n }\n\n return [\n {\n name: \"solvro/react/setup\",\n plugins: {\n // @ts-expect-error ???\n react: pluginReact,\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n \"react-hooks\": pluginReactHooks,\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n \"react-refresh\": pluginReactRefresh,\n },\n },\n ...nextjsConfig,\n {\n files: [\"**/*.{js,jsx,mjs,cjs,ts,tsx}\"],\n languageOptions: {\n parserOptions: {\n ecmaFeatures: {\n jsx: true,\n },\n },\n sourceType: \"module\",\n },\n settings: {\n react: {\n version: \"detect\",\n },\n },\n name: \"solvro/react/rules\",\n rules: {\n ...pluginReact.configs.flat?.recommended.rules,\n ...pluginReact.configs.flat?.[\"jsx-runtime\"].rules,\n \"react/no-danger\": \"warn\",\n \"react/jsx-no-leaked-render\": \"warn\",\n // recommended rules react-hooks\n \"react-hooks/exhaustive-deps\": \"warn\",\n \"react-hooks/rules-of-hooks\": \"error\",\n \"react/jsx-no-useless-fragment\": \"error\",\n\n // react refresh\n \"react-refresh/only-export-components\": [\n \"warn\",\n {\n allowConstantExport: false,\n allowExportNames: [\n ...(isUsingNext\n ? [\n \"dynamic\",\n \"dynamicParams\",\n \"revalidate\",\n \"fetchCache\",\n \"runtime\",\n \"preferredRegion\",\n \"maxDuration\",\n \"config\",\n \"generateStaticParams\",\n \"getStaticProps\",\n \"getServerSideProps\",\n \"getInitialProps\",\n \"getStaticPaths\",\n \"metadata\",\n \"generateMetadata\",\n \"viewport\",\n \"generateViewport\",\n ]\n : []),\n ],\n },\n ],\n },\n },\n ];\n}\n","import type { Linter } from \"eslint\";\nimport tseslint from \"typescript-eslint\";\n\nimport { pluginAntfu } from \"../plugins\";\n\nexport function typescript(): Linter.Config[] {\n return [\n // @ts-expect-error ???\n tseslint.configs.strictTypeChecked,\n // @ts-expect-error ???\n tseslint.configs.stylisticTypeChecked,\n {\n name: \"solvro/typescript/setup\",\n plugins: {\n antfu: pluginAntfu,\n },\n },\n {\n files: [\"**/*.{ts,tsx}\"],\n name: \"solvro/typescript/rules\",\n rules: {\n \"@typescript-eslint/ban-ts-comment\": [\n \"error\",\n { \"ts-expect-error\": \"allow-with-description\" },\n ],\n \"@typescript-eslint/consistent-type-definitions\": [\n \"error\",\n \"interface\",\n ],\n \"@typescript-eslint/consistent-type-imports\": [\n \"error\",\n {\n disallowTypeAnnotations: false,\n prefer: \"type-imports\",\n },\n ],\n \"@typescript-eslint/method-signature-style\": [\"error\", \"property\"], // https://www.totaltypescript.com/method-shorthand-syntax-considered-harmful\n \"@typescript-eslint/no-dupe-class-members\": \"error\",\n \"@typescript-eslint/no-dynamic-delete\": \"off\",\n \"@typescript-eslint/no-empty-object-type\": [\n \"error\",\n { allowInterfaces: \"always\" },\n ],\n \"@typescript-eslint/no-explicit-any\": \"off\",\n \"@typescript-eslint/no-extraneous-class\": \"off\",\n \"@typescript-eslint/no-import-type-side-effects\": \"error\",\n \"@typescript-eslint/no-invalid-void-type\": \"off\",\n \"@typescript-eslint/no-non-null-assertion\": \"off\",\n \"@typescript-eslint/no-redeclare\": [\"error\", { builtinGlobals: false }],\n \"@typescript-eslint/no-require-imports\": \"error\",\n \"@typescript-eslint/no-unused-expressions\": [\n \"error\",\n {\n allowShortCircuit: true,\n allowTaggedTemplates: true,\n allowTernary: true,\n },\n ],\n \"@typescript-eslint/no-unused-vars\": \"off\",\n \"@typescript-eslint/no-use-before-define\": [\n \"error\",\n { classes: false, functions: false, variables: true },\n ],\n \"@typescript-eslint/no-useless-constructor\": \"off\",\n \"@typescript-eslint/no-wrapper-object-types\": \"error\",\n \"@typescript-eslint/triple-slash-reference\": \"off\",\n \"@typescript-eslint/unified-signatures\": \"off\",\n // prevent unnecessary use of void operator\n \"@typescript-eslint/no-meaningless-void-operator\": \"error\",\n // \"using non-null assertions cancels the benefits of the strict\n // null-checking mode.\"\n // warn when one of the types in union / intersection overrides others\n \"@typescript-eslint/no-redundant-type-constituents\": \"warn\",\n // prevent variables shadowing\n \"no-shadow\": \"error\",\n \"@typescript-eslint/no-shadow\": \"error\",\n // prevent assignment of this, signals a wrong usage of it\n \"@typescript-eslint/no-this-alias\": \"error\",\n // prevent throwing non-error\n \"no-throw-literal\": \"off\",\n\n // prevent unnecessary explicitly adding a default type argument\n \"@typescript-eslint/no-unnecessary-type-arguments\": \"error\",\n // prevent unnecessary assertions that won't change the outcome\n \"@typescript-eslint/no-unnecessary-type-assertion\": \"error\",\n // prevent extending default types\n \"@typescript-eslint/no-unnecessary-type-constraint\": \"error\",\n // force typing out function arguments\n \"@typescript-eslint/no-unsafe-argument\": \"error\",\n // prevent usage of any via reassigning\n \"@typescript-eslint/no-unsafe-assignment\": \"error\",\n // prevent usage of any via calling it\n \"@typescript-eslint/no-unsafe-call\": \"error\",\n // prevent usage of any via using it's members\n \"@typescript-eslint/no-unsafe-member-access\": \"error\",\n // prevent reverting any from functions\n \"@typescript-eslint/no-unsafe-return\": \"error\",\n // prevent unused expressions\n \"no-unused-expressions\": \"off\",\n // var<'string'> = 'string' -> var = 'string' as const\n \"@typescript-eslint/prefer-as-const\": \"error\",\n // force initializing enums\n \"@typescript-eslint/prefer-enum-initializers\": \"error\",\n // prefer for x of obj to for let i = 0...\n \"@typescript-eslint/prefer-for-of\": \"error\",\n // prefer includes() to indexOf()\n \"@typescript-eslint/prefer-includes\": \"error\",\n // use literals for enum initialization\n \"@typescript-eslint/prefer-literal-enum-member\": \"error\",\n // prefer safe cascade of a value when dealing with undefined or null\n \"@typescript-eslint/prefer-nullish-coalescing\": \"error\",\n // prefer optional chaining (a?.b)\n \"@typescript-eslint/prefer-optional-chain\": \"error\",\n // prefer using type parameter for Array.reduce\n \"@typescript-eslint/prefer-reduce-type-parameter\": \"error\",\n // prefer RegExp#exec when no /g flag in regex\n \"@typescript-eslint/prefer-regexp-exec\": \"error\",\n // enforce `this` as a type when stating type for a method\n \"@typescript-eslint/prefer-return-this-type\": \"error\",\n // enforce startsWith to indexOf === 0\n \"@typescript-eslint/prefer-string-starts-ends-with\": \"error\",\n // prevents default behavior of .sort() - which is confusing\n \"@typescript-eslint/require-array-sort-compare\": \"error\",\n // no async functions without awaits in body\n \"require-await\": \"off\",\n \"@typescript-eslint/require-await\": \"error\",\n // prevent number + string\n \"@typescript-eslint/restrict-plus-operands\": \"error\",\n // only allow string in templates\n \"@typescript-eslint/restrict-template-expressions\": \"error\",\n // prevent returning await\n \"no-return-await\": \"off\",\n \"@typescript-eslint/return-await\": \"error\",\n // only booleans in ifs and whiles\n \"@typescript-eslint/strict-boolean-expressions\": \"error\",\n // check if all paths are followed in code\n \"@typescript-eslint/switch-exhaustiveness-check\": \"error\",\n \"dot-notation\": \"off\",\n \"no-implied-eval\": \"off\",\n \"@typescript-eslint/await-thenable\": \"error\",\n \"@typescript-eslint/dot-notation\": [\"error\", { allowKeywords: true }],\n \"@typescript-eslint/no-floating-promises\": \"error\",\n \"@typescript-eslint/no-for-in-array\": \"error\",\n \"@typescript-eslint/no-implied-eval\": \"error\",\n \"@typescript-eslint/no-misused-promises\": \"error\",\n \"@typescript-eslint/promise-function-async\": \"error\",\n \"@typescript-eslint/unbound-method\": \"error\",\n },\n },\n ];\n}\n","import type { Linter } from \"eslint\";\n\nimport { pluginUnicorn } from \"../plugins\";\n\nexport function unicorn(): Linter.Config[] {\n return [\n {\n name: \"solvro/unicorn/rules\",\n plugins: {\n unicorn: pluginUnicorn,\n },\n rules: {\n ...pluginUnicorn.configs[\"flat/recommended\"].rules,\n \"unicorn/no-array-reduce\": \"off\",\n \"unicorn/no-null\": \"off\",\n },\n },\n ];\n}\n"],"mappings":"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","names":["import_local_pkg","import_typescript_eslint","prettierConfig","globals","eslint","jsdocPlugin","nextjsConfig","nextPlugin","pluginReact","pluginReactHooks","pluginReactRefresh","tseslint","tseslint"]}
@@ -1,6 +1,6 @@
1
1
  import * as _typescript_eslint_utils_ts_eslint from '@typescript-eslint/utils/ts-eslint';
2
2
  import { ConfigWithExtends } from 'typescript-eslint';
3
3
 
4
- declare const solvro: (...configs: ConfigWithExtends[]) => _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
4
+ declare const solvro: (...overrides: ConfigWithExtends[]) => _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
5
5
 
6
6
  export { solvro };
@@ -1,6 +1,6 @@
1
1
  import * as _typescript_eslint_utils_ts_eslint from '@typescript-eslint/utils/ts-eslint';
2
2
  import { ConfigWithExtends } from 'typescript-eslint';
3
3
 
4
- declare const solvro: (...configs: ConfigWithExtends[]) => _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
4
+ declare const solvro: (...overrides: ConfigWithExtends[]) => _typescript_eslint_utils_ts_eslint.FlatConfig.ConfigArray;
5
5
 
6
6
  export { solvro };