@solvro/config 1.0.5 → 1.2.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/{chunk-62DEEFN2.js → chunk-HPR44PFE.js} +2 -8
- package/dist/chunk-HPR44PFE.js.map +1 -0
- package/dist/eslint-config/index.cjs +450 -834
- package/dist/eslint-config/index.cjs.map +1 -0
- package/dist/eslint-config/index.d.cts +4 -9362
- package/dist/eslint-config/index.d.ts +4 -9362
- package/dist/eslint-config/index.js +420 -796
- package/dist/eslint-config/index.js.map +1 -0
- package/dist/prettier-config/index.cjs +1 -0
- package/dist/prettier-config/index.cjs.map +1 -0
- package/dist/prettier-config/index.js +2 -1
- package/dist/prettier-config/index.js.map +1 -0
- package/package.json +15 -11
- package/dist/eslint-config/cli.cjs +0 -5580
- package/dist/eslint-config/cli.d.cts +0 -2
- package/dist/eslint-config/cli.d.ts +0 -2
- package/dist/eslint-config/cli.js +0 -5544
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../node_modules/eslint-config-prettier/index.js","../../eslint-config/index.ts","../../eslint-config/configs/comments.ts","../../eslint-config/plugins.ts","../../eslint-config/configs/disables.ts","../../eslint-config/globs.ts","../../eslint-config/configs/formatters.ts","../../eslint-config/configs/ignores.ts","../../eslint-config/configs/imports.ts","../../eslint-config/configs/javascript.ts","../../eslint-config/configs/jsdoc.ts","../../eslint-config/configs/node.ts","../../eslint-config/configs/react.ts","../../eslint-config/configs/typescript.ts","../../eslint-config/configs/unicorn.ts"],"sourcesContent":["\"use strict\";\n\nconst includeDeprecated = !process.env.ESLINT_CONFIG_PRETTIER_NO_DEPRECATED;\n\nconst specialRule = 0;\n\nmodule.exports = {\n rules: {\n // The following rules can be used in some cases. See the README for more\n // information. These are marked with `0` instead of `\"off\"` so that a\n // script can distinguish them. Note that there are a few more of these\n // in the deprecated section below.\n \"curly\": specialRule,\n \"no-unexpected-multiline\": specialRule,\n \"@typescript-eslint/lines-around-comment\": specialRule,\n \"@typescript-eslint/quotes\": specialRule,\n \"babel/quotes\": specialRule,\n \"unicorn/template-indent\": specialRule,\n \"vue/html-self-closing\": specialRule,\n \"vue/max-len\": specialRule,\n\n // The rest are rules that you never need to enable when using Prettier.\n \"@babel/object-curly-spacing\": \"off\",\n \"@babel/semi\": \"off\",\n \"@typescript-eslint/block-spacing\": \"off\",\n \"@typescript-eslint/brace-style\": \"off\",\n \"@typescript-eslint/comma-dangle\": \"off\",\n \"@typescript-eslint/comma-spacing\": \"off\",\n \"@typescript-eslint/func-call-spacing\": \"off\",\n \"@typescript-eslint/indent\": \"off\",\n \"@typescript-eslint/key-spacing\": \"off\",\n \"@typescript-eslint/keyword-spacing\": \"off\",\n \"@typescript-eslint/member-delimiter-style\": \"off\",\n \"@typescript-eslint/no-extra-parens\": \"off\",\n \"@typescript-eslint/no-extra-semi\": \"off\",\n \"@typescript-eslint/object-curly-spacing\": \"off\",\n \"@typescript-eslint/semi\": \"off\",\n \"@typescript-eslint/space-before-blocks\": \"off\",\n \"@typescript-eslint/space-before-function-paren\": \"off\",\n \"@typescript-eslint/space-infix-ops\": \"off\",\n \"@typescript-eslint/type-annotation-spacing\": \"off\",\n \"babel/object-curly-spacing\": \"off\",\n \"babel/semi\": \"off\",\n \"flowtype/boolean-style\": \"off\",\n \"flowtype/delimiter-dangle\": \"off\",\n \"flowtype/generic-spacing\": \"off\",\n \"flowtype/object-type-curly-spacing\": \"off\",\n \"flowtype/object-type-delimiter\": \"off\",\n \"flowtype/quotes\": \"off\",\n \"flowtype/semi\": \"off\",\n \"flowtype/space-after-type-colon\": \"off\",\n \"flowtype/space-before-generic-bracket\": \"off\",\n \"flowtype/space-before-type-colon\": \"off\",\n \"flowtype/union-intersection-spacing\": \"off\",\n \"react/jsx-child-element-spacing\": \"off\",\n \"react/jsx-closing-bracket-location\": \"off\",\n \"react/jsx-closing-tag-location\": \"off\",\n \"react/jsx-curly-newline\": \"off\",\n \"react/jsx-curly-spacing\": \"off\",\n \"react/jsx-equals-spacing\": \"off\",\n \"react/jsx-first-prop-new-line\": \"off\",\n \"react/jsx-indent\": \"off\",\n \"react/jsx-indent-props\": \"off\",\n \"react/jsx-max-props-per-line\": \"off\",\n \"react/jsx-newline\": \"off\",\n \"react/jsx-one-expression-per-line\": \"off\",\n \"react/jsx-props-no-multi-spaces\": \"off\",\n \"react/jsx-tag-spacing\": \"off\",\n \"react/jsx-wrap-multilines\": \"off\",\n \"standard/array-bracket-even-spacing\": \"off\",\n \"standard/computed-property-even-spacing\": \"off\",\n \"standard/object-curly-even-spacing\": \"off\",\n \"unicorn/empty-brace-spaces\": \"off\",\n \"unicorn/no-nested-ternary\": \"off\",\n \"unicorn/number-literal-case\": \"off\",\n \"vue/array-bracket-newline\": \"off\",\n \"vue/array-bracket-spacing\": \"off\",\n \"vue/array-element-newline\": \"off\",\n \"vue/arrow-spacing\": \"off\",\n \"vue/block-spacing\": \"off\",\n \"vue/block-tag-newline\": \"off\",\n \"vue/brace-style\": \"off\",\n \"vue/comma-dangle\": \"off\",\n \"vue/comma-spacing\": \"off\",\n \"vue/comma-style\": \"off\",\n \"vue/dot-location\": \"off\",\n \"vue/func-call-spacing\": \"off\",\n \"vue/html-closing-bracket-newline\": \"off\",\n \"vue/html-closing-bracket-spacing\": \"off\",\n \"vue/html-end-tags\": \"off\",\n \"vue/html-indent\": \"off\",\n \"vue/html-quotes\": \"off\",\n \"vue/key-spacing\": \"off\",\n \"vue/keyword-spacing\": \"off\",\n \"vue/max-attributes-per-line\": \"off\",\n \"vue/multiline-html-element-content-newline\": \"off\",\n \"vue/multiline-ternary\": \"off\",\n \"vue/mustache-interpolation-spacing\": \"off\",\n \"vue/no-extra-parens\": \"off\",\n \"vue/no-multi-spaces\": \"off\",\n \"vue/no-spaces-around-equal-signs-in-attribute\": \"off\",\n \"vue/object-curly-newline\": \"off\",\n \"vue/object-curly-spacing\": \"off\",\n \"vue/object-property-newline\": \"off\",\n \"vue/operator-linebreak\": \"off\",\n \"vue/quote-props\": \"off\",\n \"vue/script-indent\": \"off\",\n \"vue/singleline-html-element-content-newline\": \"off\",\n \"vue/space-in-parens\": \"off\",\n \"vue/space-infix-ops\": \"off\",\n \"vue/space-unary-ops\": \"off\",\n \"vue/template-curly-spacing\": \"off\",\n\n ...(includeDeprecated && {\n // Removed in version 0.10.0.\n // https://eslint.org/docs/latest/rules/space-unary-word-ops\n \"space-unary-word-ops\": \"off\",\n\n // Removed in version 1.0.0.\n // https://github.com/eslint/eslint/issues/1898\n \"generator-star\": \"off\",\n \"no-comma-dangle\": \"off\",\n \"no-reserved-keys\": \"off\",\n \"no-space-before-semi\": \"off\",\n \"no-wrap-func\": \"off\",\n \"space-after-function-name\": \"off\",\n \"space-before-function-parentheses\": \"off\",\n \"space-in-brackets\": \"off\",\n\n // Removed in version 2.0.0.\n // https://github.com/eslint/eslint/issues/5032\n \"no-arrow-condition\": \"off\",\n \"space-after-keywords\": \"off\",\n \"space-before-keywords\": \"off\",\n \"space-return-throw-case\": \"off\",\n\n // Deprecated since version 3.3.0.\n // https://eslint.org/docs/rules/no-spaced-func\n \"no-spaced-func\": \"off\",\n\n // Deprecated since version 4.0.0.\n // https://github.com/eslint/eslint/pull/8286\n \"indent-legacy\": \"off\",\n\n // Deprecated since version 8.53.0.\n // https://eslint.org/blog/2023/10/deprecating-formatting-rules/\n \"array-bracket-newline\": \"off\",\n \"array-bracket-spacing\": \"off\",\n \"array-element-newline\": \"off\",\n \"arrow-parens\": \"off\",\n \"arrow-spacing\": \"off\",\n \"block-spacing\": \"off\",\n \"brace-style\": \"off\",\n \"comma-dangle\": \"off\",\n \"comma-spacing\": \"off\",\n \"comma-style\": \"off\",\n \"computed-property-spacing\": \"off\",\n \"dot-location\": \"off\",\n \"eol-last\": \"off\",\n \"func-call-spacing\": \"off\",\n \"function-call-argument-newline\": \"off\",\n \"function-paren-newline\": \"off\",\n \"generator-star-spacing\": \"off\",\n \"implicit-arrow-linebreak\": \"off\",\n \"indent\": \"off\",\n \"jsx-quotes\": \"off\",\n \"key-spacing\": \"off\",\n \"keyword-spacing\": \"off\",\n \"linebreak-style\": \"off\",\n \"lines-around-comment\": specialRule,\n \"max-len\": specialRule,\n \"max-statements-per-line\": \"off\",\n \"multiline-ternary\": \"off\",\n \"new-parens\": \"off\",\n \"newline-per-chained-call\": \"off\",\n \"no-confusing-arrow\": specialRule,\n \"no-extra-parens\": \"off\",\n \"no-extra-semi\": \"off\",\n \"no-floating-decimal\": \"off\",\n \"no-mixed-operators\": specialRule,\n \"no-mixed-spaces-and-tabs\": \"off\",\n \"no-multi-spaces\": \"off\",\n \"no-multiple-empty-lines\": \"off\",\n \"no-tabs\": specialRule,\n \"no-trailing-spaces\": \"off\",\n \"no-whitespace-before-property\": \"off\",\n \"nonblock-statement-body-position\": \"off\",\n \"object-curly-newline\": \"off\",\n \"object-curly-spacing\": \"off\",\n \"object-property-newline\": \"off\",\n \"one-var-declaration-per-line\": \"off\",\n \"operator-linebreak\": \"off\",\n \"padded-blocks\": \"off\",\n \"quote-props\": \"off\",\n \"quotes\": specialRule,\n \"rest-spread-spacing\": \"off\",\n \"semi\": \"off\",\n \"semi-spacing\": \"off\",\n \"semi-style\": \"off\",\n \"space-before-blocks\": \"off\",\n \"space-before-function-paren\": \"off\",\n \"space-in-parens\": \"off\",\n \"space-infix-ops\": \"off\",\n \"space-unary-ops\": \"off\",\n \"switch-colon-spacing\": \"off\",\n \"template-curly-spacing\": \"off\",\n \"template-tag-spacing\": \"off\",\n \"wrap-iife\": \"off\",\n \"wrap-regex\": \"off\",\n \"yield-star-spacing\": \"off\",\n\n // Deprecated since version 7.0.0.\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/CHANGELOG.md#700---2017-05-06\n \"react/jsx-space-before-closing\": \"off\",\n }),\n },\n};\n","import tseslint, { 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\nexport const solvro = (...configs: ConfigWithExtends[]) =>\n tseslint.config(\n ...react(),\n ...typescript(),\n ...javascript(),\n ...jsdoc(),\n ...unicorn(),\n ...disables(),\n ...imports(),\n ...comments(),\n ...ignores(),\n ...formatters(),\n ...node(),\n ...configs,\n );\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","//@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 * as pluginImport from \"eslint-plugin-import-x\";\nexport { default as pluginNode } from \"eslint-plugin-n\";\nexport { default as pluginPerfectionist } from \"eslint-plugin-perfectionist\";\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 { 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","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\";\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 return [\n {\n name: \"solvro/imports/rules\",\n plugins: {\n antfu: pluginAntfu,\n // @ts-expect-error ???\n \"import-x\": pluginImport,\n },\n rules: {\n \"antfu/import-dedupe\": \"error\",\n \"antfu/no-import-dist\": \"error\",\n \"antfu/no-import-node-modules-by-path\": \"error\",\n\n \"import-x/first\": \"error\",\n \"import-x/no-duplicates\": \"error\",\n \"import-x/no-mutable-exports\": \"error\",\n \"import-x/no-named-default\": \"error\",\n \"import-x/no-self-import\": \"error\",\n \"import-x/no-webpack-loader-syntax\": \"error\",\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 \"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 = [];\n\n if (isUsingNext) {\n nextjsConfig.push({\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\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/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 \"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 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: pluginUnicorn.configs[\"flat/recommended\"].rules,\n },\n ];\n}\n"],"mappings":"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","names":["tseslint","default","default","prettierConfig","default","default","default","default","default","tseslint"]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../prettier-config/index.ts"],"sourcesContent":["import type { Options } from \"prettier\";\n\n/**\n * Some of Prettier's defaults can be overridden by an EditorConfig file. We\n * define those here to ensure that doesn't happen.\n *\n * See: https://github.com/prettier/prettier/blob/main/docs/configuration.md#editorconfig\n */\nconst overridableDefaults = {\n arrowParens: \"always\",\n endOfLine: \"lf\",\n printWidth: 80,\n quoteProps: \"as-needed\",\n semi: true,\n tabWidth: 2,\n trailingComma: \"all\",\n useTabs: false,\n} as const;\n\nexport default {\n ...overridableDefaults,\n importOrder: [\"^@assets/(.*)$\", \"<THIRD_PARTY_MODULES>\", \"^@/(.*)$\", \"^[./]\"],\n importOrderSeparation: true,\n importOrderSortSpecifiers: true,\n plugins: [\n \"prettier-plugin-packagejson\",\n \"@trivago/prettier-plugin-sort-imports\",\n \"prettier-plugin-tailwindcss\",\n ],\n singleQuote: false,\n} satisfies Options;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,IAAM,sBAAsB;AAAA,EAC1B,aAAa;AAAA,EACb,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,MAAM;AAAA,EACN,UAAU;AAAA,EACV,eAAe;AAAA,EACf,SAAS;AACX;AAEA,IAAO,0BAAQ;AAAA,EACb,GAAG;AAAA,EACH,aAAa,CAAC,kBAAkB,yBAAyB,YAAY,OAAO;AAAA,EAC5E,uBAAuB;AAAA,EACvB,2BAA2B;AAAA,EAC3B,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,aAAa;AACf;","names":[]}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import {
|
2
2
|
init_esm_shims
|
3
|
-
} from "../chunk-
|
3
|
+
} from "../chunk-HPR44PFE.js";
|
4
4
|
|
5
5
|
// prettier-config/index.ts
|
6
6
|
init_esm_shims();
|
@@ -29,3 +29,4 @@ var prettier_config_default = {
|
|
29
29
|
export {
|
30
30
|
prettier_config_default as default
|
31
31
|
};
|
32
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../prettier-config/index.ts"],"sourcesContent":["import type { Options } from \"prettier\";\n\n/**\n * Some of Prettier's defaults can be overridden by an EditorConfig file. We\n * define those here to ensure that doesn't happen.\n *\n * See: https://github.com/prettier/prettier/blob/main/docs/configuration.md#editorconfig\n */\nconst overridableDefaults = {\n arrowParens: \"always\",\n endOfLine: \"lf\",\n printWidth: 80,\n quoteProps: \"as-needed\",\n semi: true,\n tabWidth: 2,\n trailingComma: \"all\",\n useTabs: false,\n} as const;\n\nexport default {\n ...overridableDefaults,\n importOrder: [\"^@assets/(.*)$\", \"<THIRD_PARTY_MODULES>\", \"^@/(.*)$\", \"^[./]\"],\n importOrderSeparation: true,\n importOrderSortSpecifiers: true,\n plugins: [\n \"prettier-plugin-packagejson\",\n \"@trivago/prettier-plugin-sort-imports\",\n \"prettier-plugin-tailwindcss\",\n ],\n singleQuote: false,\n} satisfies Options;\n"],"mappings":";;;;;AAAA;AAQA,IAAM,sBAAsB;AAAA,EAC1B,aAAa;AAAA,EACb,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,MAAM;AAAA,EACN,UAAU;AAAA,EACV,eAAe;AAAA,EACf,SAAS;AACX;AAEA,IAAO,0BAAQ;AAAA,EACb,GAAG;AAAA,EACH,aAAa,CAAC,kBAAkB,yBAAyB,YAAY,OAAO;AAAA,EAC5E,uBAAuB;AAAA,EACvB,2BAA2B;AAAA,EAC3B,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,aAAa;AACf;","names":[]}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@solvro/config",
|
3
|
-
"version": "1.0
|
3
|
+
"version": "1.2.0",
|
4
4
|
"description": "Solvro's engineering style guide",
|
5
5
|
"keywords": [
|
6
6
|
"eslint-config"
|
@@ -35,16 +35,15 @@
|
|
35
35
|
"dist"
|
36
36
|
],
|
37
37
|
"scripts": {
|
38
|
-
"build": "
|
39
|
-
"
|
38
|
+
"build": "tsup",
|
39
|
+
"build:watch": "tsup --watch",
|
40
|
+
"dev": "npx @eslint/config-inspector --config eslint.config.js",
|
40
41
|
"format": "prettier --check .",
|
41
|
-
"lint": "eslint
|
42
|
+
"lint": "eslint .",
|
42
43
|
"prepare": "husky",
|
43
44
|
"prepublish": "npm run build",
|
44
45
|
"release": "semantic-release",
|
45
|
-
"
|
46
|
-
"typecheck": "tsc --noEmit",
|
47
|
-
"typegen": "tsx ./scripts/typegen.ts"
|
46
|
+
"typecheck": "tsc --noEmit"
|
48
47
|
},
|
49
48
|
"lint-staged": {
|
50
49
|
"*": "prettier -w --ignore-unknown"
|
@@ -54,12 +53,12 @@
|
|
54
53
|
"@antfu/install-pkg": "^0.5.0",
|
55
54
|
"@clack/prompts": "^0.8.2",
|
56
55
|
"@eslint-community/eslint-plugin-eslint-comments": "^4.4.1",
|
56
|
+
"@eslint/js": "^9.16.0",
|
57
57
|
"@eslint/markdown": "^6.2.1",
|
58
58
|
"@typescript-eslint/eslint-plugin": "^8.16.0",
|
59
59
|
"@typescript-eslint/parser": "^8.16.0",
|
60
60
|
"@vitest/eslint-plugin": "^1.1.12",
|
61
61
|
"eslint-config-flat-gitignore": "^0.3.0",
|
62
|
-
"eslint-config-prettier": "^9.1.0",
|
63
62
|
"eslint-flat-config-utils": "^0.4.0",
|
64
63
|
"eslint-merge-processors": "^0.1.0",
|
65
64
|
"eslint-plugin-antfu": "^2.7.0",
|
@@ -69,6 +68,7 @@
|
|
69
68
|
"eslint-plugin-n": "^17.14.0",
|
70
69
|
"eslint-plugin-no-only-tests": "^3.3.0",
|
71
70
|
"eslint-plugin-perfectionist": "^4.1.2",
|
71
|
+
"eslint-plugin-react": "^7.37.2",
|
72
72
|
"eslint-plugin-regexp": "^2.7.0",
|
73
73
|
"eslint-plugin-unicorn": "^56.0.1",
|
74
74
|
"eslint-plugin-unused-imports": "^4.1.4",
|
@@ -76,18 +76,22 @@
|
|
76
76
|
"local-pkg": "^0.5.1",
|
77
77
|
"picocolors": "^1.1.1",
|
78
78
|
"prettier-plugin-packagejson": "^2.5.6",
|
79
|
-
"prettier-plugin-tailwindcss": "^0.6.9"
|
79
|
+
"prettier-plugin-tailwindcss": "^0.6.9",
|
80
|
+
"typescript-eslint": "^8.17.0"
|
80
81
|
},
|
81
82
|
"devDependencies": {
|
82
83
|
"@commitlint/cli": "^19.6.0",
|
83
84
|
"@commitlint/config-conventional": "^19.6.0",
|
84
85
|
"@eslint-react/eslint-plugin": "^1.17.1",
|
85
86
|
"@eslint/config-inspector": "^0.5.6",
|
87
|
+
"@next/eslint-plugin-next": "^15.0.3",
|
86
88
|
"@semantic-release/git": "^10.0.1",
|
87
89
|
"@trivago/prettier-plugin-sort-imports": "^4.3.0",
|
90
|
+
"@types/eslint-config-prettier": "^6.11.3",
|
88
91
|
"@types/node": "^22.10.1",
|
89
92
|
"@types/yargs": "^17.0.33",
|
90
|
-
"eslint": "^9.
|
93
|
+
"eslint": "^9.16.0",
|
94
|
+
"eslint-config-prettier": "^9.1.0",
|
91
95
|
"eslint-plugin-react-hooks": "^5.0.0",
|
92
96
|
"eslint-plugin-react-refresh": "^0.4.14",
|
93
97
|
"eslint-typegen": "^0.3.2",
|
@@ -96,6 +100,7 @@
|
|
96
100
|
"lint-staged": "^15.2.10",
|
97
101
|
"parse-gitignore": "^2.0.0",
|
98
102
|
"prettier": "^3.4.1",
|
103
|
+
"react": "^18.3.1",
|
99
104
|
"semantic-release": "^24.2.0",
|
100
105
|
"tsup": "^8.3.5",
|
101
106
|
"tsx": "^4.19.2",
|
@@ -103,7 +108,6 @@
|
|
103
108
|
"yargs": "^17.7.2"
|
104
109
|
},
|
105
110
|
"peerDependencies": {
|
106
|
-
"@eslint-react/eslint-plugin": "^1.5.8",
|
107
111
|
"@next/eslint-plugin-next": ">=12.3.0 <16.0.0-0",
|
108
112
|
"eslint": "^9.10.0",
|
109
113
|
"eslint-plugin-react-hooks": "^5.0.0",
|