diff --git a/.eslintrc.cjs b/.eslintrc.cjs
index c324c476..c75ff444 100644
--- a/.eslintrc.cjs
+++ b/.eslintrc.cjs
@@ -1,7 +1,10 @@
// @ts-check
-const { defineConfig } = require('.');
+const { defineConfig } = require('eslint-define-config');
const { readGitignoreFiles } = require('eslint-gitignore');
+///
+///
+
module.exports = defineConfig({
ignorePatterns: [
...readGitignoreFiles(),
diff --git a/package.json b/package.json
index ebd5ff14..d4fd3491 100644
--- a/package.json
+++ b/package.json
@@ -63,6 +63,8 @@
"tsconfig.json"
],
"devDependencies": {
+ "@eslint-types/prettier": "~5.0.1",
+ "@eslint-types/typescript-eslint": "~6.9.0",
"@types/eslint": "~8.44.3",
"@types/json-schema": "~7.0.13",
"@types/node": "~20.8.3",
@@ -72,6 +74,7 @@
"change-case": "~4.1.2",
"eslint": "~8.51.0",
"eslint-config-prettier": "~9.0.0",
+ "eslint-define-config": "link:./",
"eslint-gitignore": "~0.1.0",
"eslint-plugin-prettier": "~5.0.0",
"expect-type": "~0.17.3",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index ec39b74d..e9a936dd 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -5,6 +5,12 @@ settings:
excludeLinksFromLockfile: false
devDependencies:
+ '@eslint-types/prettier':
+ specifier: ~5.0.1
+ version: 5.0.1
+ '@eslint-types/typescript-eslint':
+ specifier: ~6.9.0
+ version: 6.9.0
'@types/eslint':
specifier: ~8.44.3
version: 8.44.6
@@ -13,7 +19,7 @@ devDependencies:
version: 7.0.14
'@types/node':
specifier: ~20.8.3
- version: 20.8.7
+ version: 20.8.9
'@typescript-eslint/eslint-plugin':
specifier: ~6.7.4
version: 6.7.5(@typescript-eslint/parser@6.7.5)(eslint@8.51.0)(typescript@5.2.2)
@@ -32,6 +38,9 @@ devDependencies:
eslint-config-prettier:
specifier: ~9.0.0
version: 9.0.0(eslint@8.51.0)
+ eslint-define-config:
+ specifier: link:./
+ version: 'link:'
eslint-gitignore:
specifier: ~0.1.0
version: 0.1.0(eslint@8.51.0)
@@ -331,11 +340,19 @@ packages:
eslint-visitor-keys: 3.4.3
dev: true
- /@eslint-community/regexpp@4.9.1:
- resolution: {integrity: sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==}
+ /@eslint-community/regexpp@4.10.0:
+ resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==}
engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
dev: true
+ /@eslint-types/prettier@5.0.1:
+ resolution: {integrity: sha512-/PIVMKj/C94J8PxAh2DR677DrUWCHSNOFA+4fBuVx6E4xr4hRnGDnciXCac7u9DiPQLXAkNTB82z5rjJIcRqJw==}
+ dev: true
+
+ /@eslint-types/typescript-eslint@6.9.0:
+ resolution: {integrity: sha512-cqn23PhKgD3h8Oh/x2DoRdMT9QH19PIihL3UjH8qE+70ddxb2CWz8dnJL0p/+nba7FI+8r69AusoYIEBzvBMRQ==}
+ dev: true
+
/@eslint/eslintrc@2.1.2:
resolution: {integrity: sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -505,7 +522,7 @@ packages:
resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==}
dependencies:
'@types/minimatch': 5.1.2
- '@types/node': 20.8.7
+ '@types/node': 20.8.9
dev: true
/@types/istanbul-lib-coverage@2.0.5:
@@ -524,10 +541,10 @@ packages:
resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==}
dev: true
- /@types/node@20.8.7:
- resolution: {integrity: sha512-21TKHHh3eUHIi2MloeptJWALuCu5H7HQTdTrWIFReA8ad+aggoX+lRes3ex7/FtpC+sVUpFMQ+QTfYr74mruiQ==}
+ /@types/node@20.8.9:
+ resolution: {integrity: sha512-UzykFsT3FhHb1h7yD4CA4YhBHq545JC0YnEz41xkipN88eKQtL6rSgocL5tbAP6Ola9Izm/Aw4Ora8He4x0BHg==}
dependencies:
- undici-types: 5.25.3
+ undici-types: 5.26.5
dev: true
/@types/normalize-package-data@2.4.3:
@@ -553,7 +570,7 @@ packages:
typescript:
optional: true
dependencies:
- '@eslint-community/regexpp': 4.9.1
+ '@eslint-community/regexpp': 4.10.0
'@typescript-eslint/parser': 6.7.5(eslint@8.51.0)(typescript@5.2.2)
'@typescript-eslint/scope-manager': 6.7.5
'@typescript-eslint/type-utils': 6.7.5(eslint@8.51.0)(typescript@5.2.2)
@@ -1405,7 +1422,7 @@ packages:
hasBin: true
dependencies:
'@eslint-community/eslint-utils': 4.4.0(eslint@8.51.0)
- '@eslint-community/regexpp': 4.9.1
+ '@eslint-community/regexpp': 4.10.0
'@eslint/eslintrc': 2.1.2
'@eslint/js': 8.51.0
'@humanwhocodes/config-array': 0.11.13
@@ -2712,7 +2729,7 @@ packages:
'@types/normalize-package-data': 2.4.3
normalize-package-data: 6.0.0
parse-json: 7.1.0
- type-fest: 4.5.0
+ type-fest: 4.6.0
dev: true
/readdirp@3.6.0:
@@ -3212,8 +3229,8 @@ packages:
engines: {node: '>=14.16'}
dev: true
- /type-fest@4.5.0:
- resolution: {integrity: sha512-diLQivFzddJl4ylL3jxSkEc39Tpw7o1QeEHIPxVwryDK2lpB7Nqhzhuo6v5/Ls08Z0yPSAhsyAWlv1/H0ciNmw==}
+ /type-fest@4.6.0:
+ resolution: {integrity: sha512-rLjWJzQFOq4xw7MgJrCZ6T1jIOvvYElXT12r+y0CC6u67hegDHaxcPqb2fZHOGlqxugGQPNB1EnTezjBetkwkw==}
engines: {node: '>=16'}
dev: true
@@ -3282,8 +3299,8 @@ packages:
which-boxed-primitive: 1.0.2
dev: true
- /undici-types@5.25.3:
- resolution: {integrity: sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==}
+ /undici-types@5.26.5:
+ resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
dev: true
/untildify@4.0.0:
@@ -3325,7 +3342,7 @@ packages:
spdx-expression-parse: 3.0.1
dev: true
- /vite-node@0.34.6(@types/node@20.8.7):
+ /vite-node@0.34.6(@types/node@20.8.9):
resolution: {integrity: sha512-nlBMJ9x6n7/Amaz6F3zJ97EBwR2FkzhBRxF5e+jE6LA3yi6Wtc2lyTij1OnDMIr34v5g/tVQtsVAzhT0jc5ygA==}
engines: {node: '>=v14.18.0'}
hasBin: true
@@ -3335,7 +3352,7 @@ packages:
mlly: 1.4.2
pathe: 1.1.1
picocolors: 1.0.0
- vite: 4.5.0(@types/node@20.8.7)
+ vite: 4.5.0(@types/node@20.8.9)
transitivePeerDependencies:
- '@types/node'
- less
@@ -3347,7 +3364,7 @@ packages:
- terser
dev: true
- /vite@4.5.0(@types/node@20.8.7):
+ /vite@4.5.0(@types/node@20.8.9):
resolution: {integrity: sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==}
engines: {node: ^14.18.0 || >=16.0.0}
hasBin: true
@@ -3375,7 +3392,7 @@ packages:
terser:
optional: true
dependencies:
- '@types/node': 20.8.7
+ '@types/node': 20.8.9
esbuild: 0.18.20
postcss: 8.4.31
rollup: 3.29.4
@@ -3416,7 +3433,7 @@ packages:
dependencies:
'@types/chai': 4.3.9
'@types/chai-subset': 1.3.4
- '@types/node': 20.8.7
+ '@types/node': 20.8.9
'@vitest/expect': 0.34.6
'@vitest/runner': 0.34.6
'@vitest/snapshot': 0.34.6
@@ -3435,8 +3452,8 @@ packages:
strip-literal: 1.3.0
tinybench: 2.5.1
tinypool: 0.7.0
- vite: 4.5.0(@types/node@20.8.7)
- vite-node: 0.34.6(@types/node@20.8.7)
+ vite: 4.5.0(@types/node@20.8.9)
+ vite-node: 0.34.6(@types/node@20.8.9)
why-is-node-running: 2.2.2
transitivePeerDependencies:
- less