diff --git a/.eslintrc.cjs b/.eslintrc.cjs
index dabfb15..f52fc50 100644
--- a/.eslintrc.cjs
+++ b/.eslintrc.cjs
@@ -1,23 +1,45 @@
module.exports = {
+ env: {
+ browser: true,
+ es2021: true,
+ },
extends: [
- 'jimmy-guzman',
- 'jimmy-guzman/typescript',
- 'jimmy-guzman/react',
- 'jimmy-guzman/vitest',
- 'jimmy-guzman/testing-library',
+ 'eslint:recommended',
+ 'plugin:@typescript-eslint/strict-type-checked',
+ 'plugin:@typescript-eslint/stylistic-type-checked',
+ 'plugin:react/recommended',
+ 'plugin:react/jsx-runtime',
+ 'plugin:jsx-a11y/recommended',
+ 'plugin:react-hooks/recommended',
+ 'plugin:import/recommended',
+ 'plugin:import/typescript',
+ 'prettier',
],
- parserOptions: {
- project: ['./tsconfig.json', './tsconfig.node.json'],
- },
- rules: {
- // https://vitejs.dev/guide/assets.html#the-public-directory
- 'import/no-absolute-path': 'off',
- 'import/no-unresolved': ['error', { ignore: ['\\.svg$'] }],
- 'import/no-anonymous-default-export': 'off',
-
- '@typescript-eslint/explicit-module-boundary-types': 'off',
- },
overrides: [
+ {
+ env: {
+ node: true,
+ },
+ files: ['.eslintrc.{js,cjs}'],
+ parserOptions: {
+ sourceType: 'script',
+ },
+ },
+ {
+ extends: ['plugin:@typescript-eslint/disable-type-checked'],
+ files: ['./**/*.{js,cjs}'],
+ },
+ {
+ files: ['**/__tests__/**/*.[jt]s?(x)', '**/?(*.)+(spec|test).[jt]s?(x)'],
+ plugins: ['jest'],
+ extends: [
+ 'plugin:testing-library/react',
+ 'plugin:jest/recommended',
+ 'plugin:jest/style',
+ 'plugin:jest-dom/recommended',
+ ],
+ rules: { 'jest/no-deprecated-functions': 'off' },
+ },
{
files: ['**/e2e/**/*.[jt]s?(x)'],
rules: {
@@ -27,4 +49,19 @@ module.exports = {
},
},
],
+ parser: '@typescript-eslint/parser',
+ parserOptions: {
+ ecmaVersion: 'latest',
+ sourceType: 'module',
+ project: ['./tsconfig.json', './tsconfig.node.json'],
+ },
+ plugins: ['@typescript-eslint', 'react'],
+ rules: {},
+ settings: {
+ 'react': { version: 'detect' },
+ 'import/resolver': {
+ typescript: true,
+ node: true,
+ },
+ },
}
diff --git a/package.json b/package.json
index 406ad93..e0511b5 100644
--- a/package.json
+++ b/package.json
@@ -30,12 +30,22 @@
"@testing-library/user-event": "14.4.3",
"@types/react": "18.2.21",
"@types/react-dom": "18.2.7",
+ "@typescript-eslint/eslint-plugin": "6.9.0",
+ "@typescript-eslint/parser": "6.9.0",
"@vitejs/plugin-react-swc": "3.3.2",
"@vitest/coverage-v8": "0.34.2",
"autoprefixer": "10.4.15",
"daisyui": "3.6.1",
"eslint": "8.47.0",
- "eslint-config-jimmy-guzman": "10.0.0",
+ "eslint-config-prettier": "9.0.0",
+ "eslint-import-resolver-typescript": "3.6.1",
+ "eslint-plugin-import": "2.29.0",
+ "eslint-plugin-jest": "27.4.3",
+ "eslint-plugin-jest-dom": "5.1.0",
+ "eslint-plugin-jsx-a11y": "6.7.1",
+ "eslint-plugin-react": "7.33.2",
+ "eslint-plugin-react-hooks": "4.6.0",
+ "eslint-plugin-testing-library": "6.1.0",
"gitzy": "4.0.0",
"jsdom": "22.1.0",
"postcss": "8.4.28",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 6694a24..6ea197d 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -36,6 +36,12 @@ devDependencies:
'@types/react-dom':
specifier: 18.2.7
version: 18.2.7
+ '@typescript-eslint/eslint-plugin':
+ specifier: 6.9.0
+ version: 6.9.0(@typescript-eslint/parser@6.9.0)(eslint@8.47.0)(typescript@5.1.6)
+ '@typescript-eslint/parser':
+ specifier: 6.9.0
+ version: 6.9.0(eslint@8.47.0)(typescript@5.1.6)
'@vitejs/plugin-react-swc':
specifier: 3.3.2
version: 3.3.2(vite@4.4.9)
@@ -51,9 +57,33 @@ devDependencies:
eslint:
specifier: 8.47.0
version: 8.47.0
- eslint-config-jimmy-guzman:
- specifier: 10.0.0
- version: 10.0.0(eslint@8.47.0)(prettier@3.0.2)(typescript@5.1.6)
+ eslint-config-prettier:
+ specifier: 9.0.0
+ version: 9.0.0(eslint@8.47.0)
+ eslint-import-resolver-typescript:
+ specifier: 3.6.1
+ version: 3.6.1(@typescript-eslint/parser@6.9.0)(eslint-plugin-import@2.29.0)(eslint@8.47.0)
+ eslint-plugin-import:
+ specifier: 2.29.0
+ version: 2.29.0(@typescript-eslint/parser@6.9.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.47.0)
+ eslint-plugin-jest:
+ specifier: 27.4.3
+ version: 27.4.3(@typescript-eslint/eslint-plugin@6.9.0)(eslint@8.47.0)(typescript@5.1.6)
+ eslint-plugin-jest-dom:
+ specifier: 5.1.0
+ version: 5.1.0(@testing-library/dom@9.3.1)(eslint@8.47.0)
+ eslint-plugin-jsx-a11y:
+ specifier: 6.7.1
+ version: 6.7.1(eslint@8.47.0)
+ eslint-plugin-react:
+ specifier: 7.33.2
+ version: 7.33.2(eslint@8.47.0)
+ eslint-plugin-react-hooks:
+ specifier: 4.6.0
+ version: 4.6.0(eslint@8.47.0)
+ eslint-plugin-testing-library:
+ specifier: 6.1.0
+ version: 6.1.0(eslint@8.47.0)(typescript@5.1.6)
gitzy:
specifier: 4.0.0
version: 4.0.0
@@ -596,20 +626,6 @@ packages:
tailwindcss: 3.3.3
dev: true
- /@testing-library/dom@8.20.1:
- resolution: {integrity: sha512-/DiOQ5xBxgdYRC8LNk7U+RWat0S3qRLeIw3ZIkMQ9kkVlRmwD/Eg8k8CqIpD6GW7u20JIUOfMKbxtiLutpjQ4g==}
- engines: {node: '>=12'}
- dependencies:
- '@babel/code-frame': 7.22.10
- '@babel/runtime': 7.22.11
- '@types/aria-query': 5.0.1
- aria-query: 5.1.3
- chalk: 4.1.2
- dom-accessibility-api: 0.5.16
- lz-string: 1.5.0
- pretty-format: 27.5.1
- dev: true
-
/@testing-library/dom@9.3.1:
resolution: {integrity: sha512-0DGPd9AR3+iDTjGoMpxIkAsUihHZ3Ai6CneU6bRRrffXMgzCdlNk43jTrD2/5LT6CBb3MWTP8v510JzYtahD2w==}
engines: {node: '>=14'}
@@ -737,8 +753,8 @@ packages:
resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==}
dev: true
- /@typescript-eslint/eslint-plugin@6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@5.1.6):
- resolution: {integrity: sha512-3F5PtBzUW0dYlq77Lcqo13fv+58KDwUib3BddilE8ajPJT+faGgxmI9Sw+I8ZS22BYwoir9ZhNXcLi+S+I2bkw==}
+ /@typescript-eslint/eslint-plugin@6.9.0(@typescript-eslint/parser@6.9.0)(eslint@8.47.0)(typescript@5.1.6):
+ resolution: {integrity: sha512-lgX7F0azQwRPB7t7WAyeHWVfW1YJ9NIgd9mvGhfQpRY56X6AVf8mwM8Wol+0z4liE7XX3QOt8MN1rUKCfSjRIA==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
'@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha
@@ -749,11 +765,11 @@ packages:
optional: true
dependencies:
'@eslint-community/regexpp': 4.7.0
- '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(typescript@5.1.6)
- '@typescript-eslint/scope-manager': 6.4.1
- '@typescript-eslint/type-utils': 6.4.1(eslint@8.47.0)(typescript@5.1.6)
- '@typescript-eslint/utils': 6.4.1(eslint@8.47.0)(typescript@5.1.6)
- '@typescript-eslint/visitor-keys': 6.4.1
+ '@typescript-eslint/parser': 6.9.0(eslint@8.47.0)(typescript@5.1.6)
+ '@typescript-eslint/scope-manager': 6.9.0
+ '@typescript-eslint/type-utils': 6.9.0(eslint@8.47.0)(typescript@5.1.6)
+ '@typescript-eslint/utils': 6.9.0(eslint@8.47.0)(typescript@5.1.6)
+ '@typescript-eslint/visitor-keys': 6.9.0
debug: 4.3.4
eslint: 8.47.0
graphemer: 1.4.0
@@ -766,8 +782,8 @@ packages:
- supports-color
dev: true
- /@typescript-eslint/parser@6.4.1(eslint@8.47.0)(typescript@5.1.6):
- resolution: {integrity: sha512-610G6KHymg9V7EqOaNBMtD1GgpAmGROsmfHJPXNLCU9bfIuLrkdOygltK784F6Crboyd5tBFayPB7Sf0McrQwg==}
+ /@typescript-eslint/parser@6.9.0(eslint@8.47.0)(typescript@5.1.6):
+ resolution: {integrity: sha512-GZmjMh4AJ/5gaH4XF2eXA8tMnHWP+Pm1mjQR2QN4Iz+j/zO04b9TOvJYOX2sCNIQHtRStKTxRY1FX7LhpJT4Gw==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
@@ -776,10 +792,10 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/scope-manager': 6.4.1
- '@typescript-eslint/types': 6.4.1
- '@typescript-eslint/typescript-estree': 6.4.1(typescript@5.1.6)
- '@typescript-eslint/visitor-keys': 6.4.1
+ '@typescript-eslint/scope-manager': 6.9.0
+ '@typescript-eslint/types': 6.9.0
+ '@typescript-eslint/typescript-estree': 6.9.0(typescript@5.1.6)
+ '@typescript-eslint/visitor-keys': 6.9.0
debug: 4.3.4
eslint: 8.47.0
typescript: 5.1.6
@@ -795,16 +811,16 @@ packages:
'@typescript-eslint/visitor-keys': 5.62.0
dev: true
- /@typescript-eslint/scope-manager@6.4.1:
- resolution: {integrity: sha512-p/OavqOQfm4/Hdrr7kvacOSFjwQ2rrDVJRPxt/o0TOWdFnjJptnjnZ+sYDR7fi4OimvIuKp+2LCkc+rt9fIW+A==}
+ /@typescript-eslint/scope-manager@6.9.0:
+ resolution: {integrity: sha512-1R8A9Mc39n4pCCz9o79qRO31HGNDvC7UhPhv26TovDsWPBDx+Sg3rOZdCELIA3ZmNoWAuxaMOT7aWtGRSYkQxw==}
engines: {node: ^16.0.0 || >=18.0.0}
dependencies:
- '@typescript-eslint/types': 6.4.1
- '@typescript-eslint/visitor-keys': 6.4.1
+ '@typescript-eslint/types': 6.9.0
+ '@typescript-eslint/visitor-keys': 6.9.0
dev: true
- /@typescript-eslint/type-utils@6.4.1(eslint@8.47.0)(typescript@5.1.6):
- resolution: {integrity: sha512-7ON8M8NXh73SGZ5XvIqWHjgX2f+vvaOarNliGhjrJnv1vdjG0LVIz+ToYfPirOoBi56jxAKLfsLm40+RvxVVXA==}
+ /@typescript-eslint/type-utils@6.9.0(eslint@8.47.0)(typescript@5.1.6):
+ resolution: {integrity: sha512-XXeahmfbpuhVbhSOROIzJ+b13krFmgtc4GlEuu1WBT+RpyGPIA4Y/eGnXzjbDj5gZLzpAXO/sj+IF/x2GtTMjQ==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
@@ -813,8 +829,8 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/typescript-estree': 6.4.1(typescript@5.1.6)
- '@typescript-eslint/utils': 6.4.1(eslint@8.47.0)(typescript@5.1.6)
+ '@typescript-eslint/typescript-estree': 6.9.0(typescript@5.1.6)
+ '@typescript-eslint/utils': 6.9.0(eslint@8.47.0)(typescript@5.1.6)
debug: 4.3.4
eslint: 8.47.0
ts-api-utils: 1.0.2(typescript@5.1.6)
@@ -828,8 +844,8 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
- /@typescript-eslint/types@6.4.1:
- resolution: {integrity: sha512-zAAopbNuYu++ijY1GV2ylCsQsi3B8QvfPHVqhGdDcbx/NK5lkqMnCGU53amAjccSpk+LfeONxwzUhDzArSfZJg==}
+ /@typescript-eslint/types@6.9.0:
+ resolution: {integrity: sha512-+KB0lbkpxBkBSiVCuQvduqMJy+I1FyDbdwSpM3IoBS7APl4Bu15lStPjgBIdykdRqQNYqYNMa8Kuidax6phaEw==}
engines: {node: ^16.0.0 || >=18.0.0}
dev: true
@@ -854,8 +870,8 @@ packages:
- supports-color
dev: true
- /@typescript-eslint/typescript-estree@6.4.1(typescript@5.1.6):
- resolution: {integrity: sha512-xF6Y7SatVE/OyV93h1xGgfOkHr2iXuo8ip0gbfzaKeGGuKiAnzS+HtVhSPx8Www243bwlW8IF7X0/B62SzFftg==}
+ /@typescript-eslint/typescript-estree@6.9.0(typescript@5.1.6):
+ resolution: {integrity: sha512-NJM2BnJFZBEAbCfBP00zONKXvMqihZCrmwCaik0UhLr0vAgb6oguXxLX1k00oQyD+vZZ+CJn3kocvv2yxm4awQ==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
typescript: '*'
@@ -863,8 +879,8 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/types': 6.4.1
- '@typescript-eslint/visitor-keys': 6.4.1
+ '@typescript-eslint/types': 6.9.0
+ '@typescript-eslint/visitor-keys': 6.9.0
debug: 4.3.4
globby: 11.1.0
is-glob: 4.0.3
@@ -895,8 +911,8 @@ packages:
- typescript
dev: true
- /@typescript-eslint/utils@6.4.1(eslint@8.47.0)(typescript@5.1.6):
- resolution: {integrity: sha512-F/6r2RieNeorU0zhqZNv89s9bDZSovv3bZQpUNOmmQK1L80/cV4KEu95YUJWi75u5PhboFoKUJBnZ4FQcoqhDw==}
+ /@typescript-eslint/utils@6.9.0(eslint@8.47.0)(typescript@5.1.6):
+ resolution: {integrity: sha512-5Wf+Jsqya7WcCO8me504FBigeQKVLAMPmUzYgDbWchINNh1KJbxCgVya3EQ2MjvJMVeXl3pofRmprqX6mfQkjQ==}
engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
@@ -904,9 +920,9 @@ packages:
'@eslint-community/eslint-utils': 4.4.0(eslint@8.47.0)
'@types/json-schema': 7.0.12
'@types/semver': 7.5.0
- '@typescript-eslint/scope-manager': 6.4.1
- '@typescript-eslint/types': 6.4.1
- '@typescript-eslint/typescript-estree': 6.4.1(typescript@5.1.6)
+ '@typescript-eslint/scope-manager': 6.9.0
+ '@typescript-eslint/types': 6.9.0
+ '@typescript-eslint/typescript-estree': 6.9.0(typescript@5.1.6)
eslint: 8.47.0
semver: 7.5.4
transitivePeerDependencies:
@@ -922,11 +938,11 @@ packages:
eslint-visitor-keys: 3.4.3
dev: true
- /@typescript-eslint/visitor-keys@6.4.1:
- resolution: {integrity: sha512-y/TyRJsbZPkJIZQXrHfdnxVnxyKegnpEvnRGNam7s3TRR2ykGefEWOhaef00/UUN3IZxizS7BTO3svd3lCOJRQ==}
+ /@typescript-eslint/visitor-keys@6.9.0:
+ resolution: {integrity: sha512-dGtAfqjV6RFOtIP8I0B4ZTBRrlTT8NHHlZZSchQx3qReaoDeXhYM++M4So2AgFK9ZB0emRPA6JI1HkafzA2Ibg==}
engines: {node: ^16.0.0 || >=18.0.0}
dependencies:
- '@typescript-eslint/types': 6.4.1
+ '@typescript-eslint/types': 6.9.0
eslint-visitor-keys: 3.4.3
dev: true
@@ -1120,13 +1136,24 @@ packages:
is-string: 1.0.7
dev: true
+ /array-includes@3.1.7:
+ resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.2
+ define-properties: 1.2.0
+ es-abstract: 1.22.1
+ get-intrinsic: 1.2.1
+ is-string: 1.0.7
+ dev: true
+
/array-union@2.1.0:
resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
engines: {node: '>=8'}
dev: true
- /array.prototype.findlastindex@1.2.2:
- resolution: {integrity: sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw==}
+ /array.prototype.findlastindex@1.2.3:
+ resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==}
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
@@ -1136,8 +1163,8 @@ packages:
get-intrinsic: 1.2.1
dev: true
- /array.prototype.flat@1.3.1:
- resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==}
+ /array.prototype.flat@1.3.2:
+ resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
@@ -1156,6 +1183,16 @@ packages:
es-shim-unscopables: 1.0.0
dev: true
+ /array.prototype.flatmap@1.3.2:
+ resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.2
+ define-properties: 1.2.0
+ es-abstract: 1.22.1
+ es-shim-unscopables: 1.0.0
+ dev: true
+
/array.prototype.tosorted@1.1.1:
resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==}
dependencies:
@@ -1217,8 +1254,8 @@ packages:
engines: {node: '>= 0.4'}
dev: true
- /axe-core@4.7.2:
- resolution: {integrity: sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g==}
+ /axe-core@4.8.2:
+ resolution: {integrity: sha512-/dlp0fxyM3R8YW7MFzaHWXrf4zzbr0vaYb23VBFCl83R7nWNPg/yaQw2Dc8jzCMmDVLhSdzH8MjrsuIUuvX+6g==}
engines: {node: '>=4'}
dev: true
@@ -1270,7 +1307,7 @@ packages:
/call-bind@1.0.2:
resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==}
dependencies:
- function-bind: 1.1.1
+ function-bind: 1.1.2
get-intrinsic: 1.2.1
dev: true
@@ -1683,7 +1720,7 @@ packages:
define-properties: 1.2.0
es-abstract: 1.22.1
es-set-tostringtag: 2.0.1
- function-bind: 1.1.1
+ function-bind: 1.1.2
get-intrinsic: 1.2.1
globalthis: 1.0.3
has-property-descriptors: 1.0.0
@@ -1763,35 +1800,6 @@ packages:
engines: {node: '>=10'}
dev: true
- /eslint-config-jimmy-guzman@10.0.0(eslint@8.47.0)(prettier@3.0.2)(typescript@5.1.6):
- resolution: {integrity: sha512-CcMPw43ysbXAe69faB2Fxo4B7J3oFJS95r+/LOxsoe1KFt7dDlQmyAG12M5k7Sy0xAOAKYdBaHSqNQlTkhE56A==}
- engines: {node: '>= 16'}
- peerDependencies:
- eslint: ^8.24.0
- prettier: ^2.4.0 || ^3.0.2
- typescript: '>=4.5.0 <5.2.0'
- dependencies:
- '@typescript-eslint/eslint-plugin': 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@5.1.6)
- '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(typescript@5.1.6)
- eslint: 8.47.0
- eslint-config-prettier: 9.0.0(eslint@8.47.0)
- eslint-import-resolver-typescript: 3.6.0(@typescript-eslint/parser@6.4.1)(eslint-plugin-import@2.28.1)(eslint@8.47.0)
- eslint-plugin-import: 2.28.1(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-typescript@3.6.0)(eslint@8.47.0)
- eslint-plugin-jest: 27.2.3(@typescript-eslint/eslint-plugin@6.4.1)(eslint@8.47.0)(typescript@5.1.6)
- eslint-plugin-jest-dom: 4.0.3(eslint@8.47.0)
- eslint-plugin-jsx-a11y: 6.7.1(eslint@8.47.0)
- eslint-plugin-react: 7.33.2(eslint@8.47.0)
- eslint-plugin-react-hooks: 4.6.0(eslint@8.47.0)
- eslint-plugin-testing-library: 5.11.1(eslint@8.47.0)(typescript@5.1.6)
- prettier: 3.0.2
- typescript: 5.1.6
- transitivePeerDependencies:
- - eslint-import-resolver-node
- - eslint-import-resolver-webpack
- - jest
- - supports-color
- dev: true
-
/eslint-config-prettier@9.0.0(eslint@8.47.0):
resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==}
hasBin: true
@@ -1805,14 +1813,14 @@ packages:
resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
dependencies:
debug: 3.2.7
- is-core-module: 2.13.0
+ is-core-module: 2.13.1
resolve: 1.22.4
transitivePeerDependencies:
- supports-color
dev: true
- /eslint-import-resolver-typescript@3.6.0(@typescript-eslint/parser@6.4.1)(eslint-plugin-import@2.28.1)(eslint@8.47.0):
- resolution: {integrity: sha512-QTHR9ddNnn35RTxlaEnx2gCxqFlF2SEN0SE2d17SqwyM7YOSI2GHWRYp5BiRkObTUNYPupC/3Fq2a0PpT+EKpg==}
+ /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.9.0)(eslint-plugin-import@2.29.0)(eslint@8.47.0):
+ resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==}
engines: {node: ^14.18.0 || >=16.0.0}
peerDependencies:
eslint: '*'
@@ -1821,10 +1829,10 @@ packages:
debug: 4.3.4
enhanced-resolve: 5.15.0
eslint: 8.47.0
- eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.0)(eslint@8.47.0)
- eslint-plugin-import: 2.28.1(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-typescript@3.6.0)(eslint@8.47.0)
+ eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.9.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.47.0)
+ eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.9.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.47.0)
fast-glob: 3.3.1
- get-tsconfig: 4.7.0
+ get-tsconfig: 4.7.2
is-core-module: 2.13.0
is-glob: 4.0.3
transitivePeerDependencies:
@@ -1834,7 +1842,7 @@ packages:
- supports-color
dev: true
- /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.0)(eslint@8.47.0):
+ /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.9.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.47.0):
resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==}
engines: {node: '>=4'}
peerDependencies:
@@ -1855,17 +1863,17 @@ packages:
eslint-import-resolver-webpack:
optional: true
dependencies:
- '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(typescript@5.1.6)
+ '@typescript-eslint/parser': 6.9.0(eslint@8.47.0)(typescript@5.1.6)
debug: 3.2.7
eslint: 8.47.0
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.6.0(@typescript-eslint/parser@6.4.1)(eslint-plugin-import@2.28.1)(eslint@8.47.0)
+ eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.9.0)(eslint-plugin-import@2.29.0)(eslint@8.47.0)
transitivePeerDependencies:
- supports-color
dev: true
- /eslint-plugin-import@2.28.1(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-typescript@3.6.0)(eslint@8.47.0):
- resolution: {integrity: sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==}
+ /eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.9.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.47.0):
+ resolution: {integrity: sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==}
engines: {node: '>=4'}
peerDependencies:
'@typescript-eslint/parser': '*'
@@ -1874,23 +1882,23 @@ packages:
'@typescript-eslint/parser':
optional: true
dependencies:
- '@typescript-eslint/parser': 6.4.1(eslint@8.47.0)(typescript@5.1.6)
- array-includes: 3.1.6
- array.prototype.findlastindex: 1.2.2
- array.prototype.flat: 1.3.1
- array.prototype.flatmap: 1.3.1
+ '@typescript-eslint/parser': 6.9.0(eslint@8.47.0)(typescript@5.1.6)
+ array-includes: 3.1.7
+ array.prototype.findlastindex: 1.2.3
+ array.prototype.flat: 1.3.2
+ array.prototype.flatmap: 1.3.2
debug: 3.2.7
doctrine: 2.1.0
eslint: 8.47.0
eslint-import-resolver-node: 0.3.9
- eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.0)(eslint@8.47.0)
- has: 1.0.3
- is-core-module: 2.13.0
+ eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.9.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.47.0)
+ hasown: 2.0.0
+ is-core-module: 2.13.1
is-glob: 4.0.3
minimatch: 3.1.2
- object.fromentries: 2.0.6
- object.groupby: 1.0.0
- object.values: 1.1.6
+ object.fromentries: 2.0.7
+ object.groupby: 1.0.1
+ object.values: 1.1.7
semver: 6.3.1
tsconfig-paths: 3.14.2
transitivePeerDependencies:
@@ -1899,20 +1907,24 @@ packages:
- supports-color
dev: true
- /eslint-plugin-jest-dom@4.0.3(eslint@8.47.0):
- resolution: {integrity: sha512-9j+n8uj0+V0tmsoS7bYC7fLhQmIvjRqRYEcbDSi+TKPsTThLLXCyj5swMSSf/hTleeMktACnn+HFqXBr5gbcbA==}
+ /eslint-plugin-jest-dom@5.1.0(@testing-library/dom@9.3.1)(eslint@8.47.0):
+ resolution: {integrity: sha512-JIXZp+E/h/aGlP/rQc4tuOejiHlZXg65qw8JAJMIJA5VsdjOkss/SYcRSqBrQuEOytEM8JvngUjcz31d1RrCrA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6', yarn: '>=1'}
peerDependencies:
+ '@testing-library/dom': ^8.0.0 || ^9.0.0
eslint: ^6.8.0 || ^7.0.0 || ^8.0.0
+ peerDependenciesMeta:
+ '@testing-library/dom':
+ optional: true
dependencies:
'@babel/runtime': 7.22.11
- '@testing-library/dom': 8.20.1
+ '@testing-library/dom': 9.3.1
eslint: 8.47.0
requireindex: 1.2.0
dev: true
- /eslint-plugin-jest@27.2.3(@typescript-eslint/eslint-plugin@6.4.1)(eslint@8.47.0)(typescript@5.1.6):
- resolution: {integrity: sha512-sRLlSCpICzWuje66Gl9zvdF6mwD5X86I4u55hJyFBsxYOsBCmT5+kSUjf+fkFWVMMgpzNEupjW8WzUqi83hJAQ==}
+ /eslint-plugin-jest@27.4.3(@typescript-eslint/eslint-plugin@6.9.0)(eslint@8.47.0)(typescript@5.1.6):
+ resolution: {integrity: sha512-7S6SmmsHsgIm06BAGCAxL+ABd9/IB3MWkz2pudj6Qqor2y1qQpWPfuFU4SG9pWj4xDjF0e+D7Llh5useuSzAZw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
peerDependencies:
'@typescript-eslint/eslint-plugin': ^5.0.0 || ^6.0.0
@@ -1924,7 +1936,7 @@ packages:
jest:
optional: true
dependencies:
- '@typescript-eslint/eslint-plugin': 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@5.1.6)
+ '@typescript-eslint/eslint-plugin': 6.9.0(@typescript-eslint/parser@6.9.0)(eslint@8.47.0)(typescript@5.1.6)
'@typescript-eslint/utils': 5.62.0(eslint@8.47.0)(typescript@5.1.6)
eslint: 8.47.0
transitivePeerDependencies:
@@ -1940,10 +1952,10 @@ packages:
dependencies:
'@babel/runtime': 7.22.11
aria-query: 5.3.0
- array-includes: 3.1.6
- array.prototype.flatmap: 1.3.1
+ array-includes: 3.1.7
+ array.prototype.flatmap: 1.3.2
ast-types-flow: 0.0.7
- axe-core: 4.7.2
+ axe-core: 4.8.2
axobject-query: 3.2.1
damerau-levenshtein: 1.0.8
emoji-regex: 9.2.2
@@ -1953,7 +1965,7 @@ packages:
language-tags: 1.0.5
minimatch: 3.1.2
object.entries: 1.1.6
- object.fromentries: 2.0.6
+ object.fromentries: 2.0.7
semver: 6.3.1
dev: true
@@ -1991,8 +2003,8 @@ packages:
string.prototype.matchall: 4.0.8
dev: true
- /eslint-plugin-testing-library@5.11.1(eslint@8.47.0)(typescript@5.1.6):
- resolution: {integrity: sha512-5eX9e1Kc2PqVRed3taaLnAAqPZGEX75C+M/rXzUAI3wIg/ZxzUm1OVAwfe/O+vE+6YXOLetSe9g5GKD2ecXipw==}
+ /eslint-plugin-testing-library@6.1.0(eslint@8.47.0)(typescript@5.1.6):
+ resolution: {integrity: sha512-r7kE+az3tbp8vyRwfyAGZ6V/xw+XvdWFPicIo6jbOPZoossOFDeHizARqPGV6gEkyF8hyCFhhH3mlQOGS3N5Sg==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6'}
peerDependencies:
eslint: ^7.5.0 || ^8.0.0
@@ -2215,8 +2227,8 @@ packages:
dev: true
optional: true
- /function-bind@1.1.1:
- resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
+ /function-bind@1.1.2:
+ resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
dev: true
/function.prototype.name@1.1.5:
@@ -2240,7 +2252,7 @@ packages:
/get-intrinsic@1.2.1:
resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==}
dependencies:
- function-bind: 1.1.1
+ function-bind: 1.1.2
has: 1.0.3
has-proto: 1.0.1
has-symbols: 1.0.3
@@ -2254,8 +2266,8 @@ packages:
get-intrinsic: 1.2.1
dev: true
- /get-tsconfig@4.7.0:
- resolution: {integrity: sha512-pmjiZ7xtB8URYm74PlGJozDNyhvsVLUcpBa8DZBG3bWHwaHa9bPiRpiSfovw+fjhwONSCWKRyk+JQHEGZmMrzw==}
+ /get-tsconfig@4.7.2:
+ resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==}
dependencies:
resolve-pkg-maps: 1.0.0
dev: true
@@ -2389,7 +2401,14 @@ packages:
resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
engines: {node: '>= 0.4.0'}
dependencies:
- function-bind: 1.1.1
+ function-bind: 1.1.2
+ dev: true
+
+ /hasown@2.0.0:
+ resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ function-bind: 1.1.2
dev: true
/html-encoding-sniffer@3.0.0:
@@ -2529,6 +2548,12 @@ packages:
has: 1.0.3
dev: true
+ /is-core-module@2.13.1:
+ resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==}
+ dependencies:
+ hasown: 2.0.0
+ dev: true
+
/is-date-object@1.0.5:
resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
engines: {node: '>= 0.4'}
@@ -2774,10 +2799,10 @@ packages:
resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==}
engines: {node: '>=4.0'}
dependencies:
- array-includes: 3.1.6
- array.prototype.flat: 1.3.1
+ array-includes: 3.1.7
+ array.prototype.flat: 1.3.2
object.assign: 4.1.4
- object.values: 1.1.6
+ object.values: 1.1.7
dev: true
/language-subtag-registry@0.3.22:
@@ -3017,8 +3042,17 @@ packages:
es-abstract: 1.22.1
dev: true
- /object.groupby@1.0.0:
- resolution: {integrity: sha512-70MWG6NfRH9GnbZOikuhPPYzpUpof9iW2J9E4dW7FXTqPNb6rllE6u39SKwwiNh8lCwX3DDb5OgcKGiEBrTTyw==}
+ /object.fromentries@2.0.7:
+ resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.2
+ define-properties: 1.2.0
+ es-abstract: 1.22.1
+ dev: true
+
+ /object.groupby@1.0.1:
+ resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==}
dependencies:
call-bind: 1.0.2
define-properties: 1.2.0
@@ -3042,6 +3076,15 @@ packages:
es-abstract: 1.22.1
dev: true
+ /object.values@1.1.7:
+ resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.2
+ define-properties: 1.2.0
+ es-abstract: 1.22.1
+ dev: true
+
/once@1.4.0:
resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
dependencies:
@@ -3441,7 +3484,7 @@ packages:
resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==}
hasBin: true
dependencies:
- is-core-module: 2.13.0
+ is-core-module: 2.13.1
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
dev: true
@@ -3450,7 +3493,7 @@ packages:
resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==}
hasBin: true
dependencies:
- is-core-module: 2.13.0
+ is-core-module: 2.13.1
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
dev: true
diff --git a/src/App.spec.tsx b/src/App.spec.tsx
index d129857..fea6920 100644
--- a/src/App.spec.tsx
+++ b/src/App.spec.tsx
@@ -5,7 +5,7 @@ describe('app', () => {
it('should increase count', async () => {
const { user } = render(