mirror of
https://github.com/RooVetGit/Roo-Code.git
synced 2026-08-28 05:27:24 +00:00
Format with prettier, remove unused npm packages
This commit is contained in:
parent
7ee4693d7b
commit
c85db6b9ff
15 changed files with 69 additions and 643 deletions
20
README.md
20
README.md
|
|
@ -91,24 +91,24 @@ Clone this project and use it to create your own SaaS. You can check the live de
|
|||
|
||||
**Live demo: [SaaS Boilerplate](https://react-saas.com)**
|
||||
|
||||
| Landing Page | User Dashboard |
|
||||
| --- | --- |
|
||||
| Landing Page | User Dashboard |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| [](https://react-saas.com) | [](https://react-saas.com/dashboard) |
|
||||
|
||||
| Team Management | User Profile |
|
||||
| --- | --- |
|
||||
| Team Management | User Profile |
|
||||
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| [](https://react-saas.com/dashboard/organization-profile/organization-members) | [](https://react-saas.com/dashboard/user-profile) |
|
||||
|
||||
| Sign Up | Sign In |
|
||||
| --- | --- |
|
||||
| Sign Up | Sign In |
|
||||
| ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| [](https://react-saas.com/sign-up) | [](https://react-saas.com/sign-in) |
|
||||
|
||||
| Landing Page with Dark Mode (Pro Version) | User Dashboard with Dark Mode (Pro Version) |
|
||||
| --- | --- |
|
||||
| Landing Page with Dark Mode (Pro Version) | User Dashboard with Dark Mode (Pro Version) |
|
||||
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| [](https://pro-demo.nextjs-boilerplate.com) | [](https://pro-demo.nextjs-boilerplate.com/dashboard) |
|
||||
|
||||
| User Dashboard with Sidebar (Pro Version) |
|
||||
| --- |
|
||||
| User Dashboard with Sidebar (Pro Version) |
|
||||
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| [](https://pro-demo.nextjs-boilerplate.com) |
|
||||
|
||||
### Features
|
||||
|
|
|
|||
|
|
@ -137,4 +137,4 @@
|
|||
"schemas": {},
|
||||
"tables": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,4 +10,4 @@
|
|||
"breakpoints": true
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,7 +28,6 @@
|
|||
"@clerk/nextjs": "^6.18.3",
|
||||
"@clerk/themes": "^2.1.36",
|
||||
"@electric-sql/pglite": "^0.3.0",
|
||||
"@hookform/resolvers": "^5.0.1",
|
||||
"@logtail/pino": "^0.5.2",
|
||||
"@radix-ui/react-dropdown-menu": "^2.1.14",
|
||||
"@radix-ui/react-icons": "^1.3.2",
|
||||
|
|
@ -38,14 +37,12 @@
|
|||
"@spotlightjs/spotlight": "^2.5.0",
|
||||
"@t3-oss/env-nextjs": "^0.13.4",
|
||||
"@tailwindcss/postcss": "^4.1.6",
|
||||
"@tanstack/react-table": "^8.20.5",
|
||||
"class-variance-authority": "^0.7.1",
|
||||
"clsx": "^2.1.1",
|
||||
"drizzle-orm": "^0.43.1",
|
||||
"lucide-react": "^0.509.0",
|
||||
"next": "^15.3.2",
|
||||
"next-intl": "^4.1.0",
|
||||
"next-themes": "^0.4.6",
|
||||
"pg": "^8.13.0",
|
||||
"pino": "^9.5.0",
|
||||
"pino-pretty": "^13.0.0",
|
||||
|
|
@ -53,7 +50,6 @@
|
|||
"react": "^19.1.0",
|
||||
"react-dom": "^19.1.0",
|
||||
"react-hook-form": "^7.53.0",
|
||||
"sharp": "^0.34.1",
|
||||
"stripe": "^18.1.0",
|
||||
"tailwind-merge": "^3.3.0",
|
||||
"zod": "^3.23.8"
|
||||
|
|
@ -61,7 +57,6 @@
|
|||
"devDependencies": {
|
||||
"@clerk/testing": "^1.3.11",
|
||||
"@eslint/js": "^9.26.0",
|
||||
"@faker-js/faker": "^9.0.3",
|
||||
"@next/bundle-analyzer": "^15.3.2",
|
||||
"@next/eslint-plugin-next": "^15.3.2",
|
||||
"@percy/cli": "1.30.10",
|
||||
|
|
@ -87,7 +82,6 @@
|
|||
"@vitest/expect": "^3.1.3",
|
||||
"autoprefixer": "^10.4.20",
|
||||
"cross-env": "^7.0.3",
|
||||
"cssnano": "^7.0.6",
|
||||
"dotenv-cli": "^8.0.0",
|
||||
"drizzle-kit": "^0.31.1",
|
||||
"eslint": "^9.26.0",
|
||||
|
|
|
|||
596
pnpm-lock.yaml
generated
596
pnpm-lock.yaml
generated
|
|
@ -20,9 +20,6 @@ importers:
|
|||
'@electric-sql/pglite':
|
||||
specifier: ^0.3.0
|
||||
version: 0.3.0
|
||||
'@hookform/resolvers':
|
||||
specifier: ^5.0.1
|
||||
version: 5.0.1(react-hook-form@7.56.3(react@19.1.0))
|
||||
'@logtail/pino':
|
||||
specifier: ^0.5.2
|
||||
version: 0.5.4(pino@9.6.0)
|
||||
|
|
@ -50,9 +47,6 @@ importers:
|
|||
'@tailwindcss/postcss':
|
||||
specifier: ^4.1.6
|
||||
version: 4.1.6
|
||||
'@tanstack/react-table':
|
||||
specifier: ^8.20.5
|
||||
version: 8.21.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
||||
class-variance-authority:
|
||||
specifier: ^0.7.1
|
||||
version: 0.7.1
|
||||
|
|
@ -71,9 +65,6 @@ importers:
|
|||
next-intl:
|
||||
specifier: ^4.1.0
|
||||
version: 4.1.0(next@15.3.2(@babel/core@7.27.1)(@opentelemetry/api@1.9.0)(@playwright/test@1.52.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0)(typescript@5.8.3)
|
||||
next-themes:
|
||||
specifier: ^0.4.6
|
||||
version: 0.4.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
||||
pg:
|
||||
specifier: ^8.13.0
|
||||
version: 8.15.6
|
||||
|
|
@ -95,9 +86,6 @@ importers:
|
|||
react-hook-form:
|
||||
specifier: ^7.53.0
|
||||
version: 7.56.3(react@19.1.0)
|
||||
sharp:
|
||||
specifier: ^0.34.1
|
||||
version: 0.34.1
|
||||
stripe:
|
||||
specifier: ^18.1.0
|
||||
version: 18.1.0(@types/node@22.15.17)
|
||||
|
|
@ -114,9 +102,6 @@ importers:
|
|||
'@eslint/js':
|
||||
specifier: ^9.26.0
|
||||
version: 9.26.0
|
||||
'@faker-js/faker':
|
||||
specifier: ^9.0.3
|
||||
version: 9.7.0
|
||||
'@next/bundle-analyzer':
|
||||
specifier: ^15.3.2
|
||||
version: 15.3.2
|
||||
|
|
@ -192,9 +177,6 @@ importers:
|
|||
cross-env:
|
||||
specifier: ^7.0.3
|
||||
version: 7.0.3
|
||||
cssnano:
|
||||
specifier: ^7.0.6
|
||||
version: 7.0.7(postcss@8.5.3)
|
||||
dotenv-cli:
|
||||
specifier: ^8.0.0
|
||||
version: 8.0.0
|
||||
|
|
@ -1374,10 +1356,6 @@ packages:
|
|||
resolution: {integrity: sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==}
|
||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||
|
||||
'@faker-js/faker@9.7.0':
|
||||
resolution: {integrity: sha512-aozo5vqjCmDoXLNUJarFZx2IN/GgGaogY4TMJ6so/WLZOWpSV7fvj2dmrV6sEAnUm1O7aCrhTibjpzeDFgNqbg==}
|
||||
engines: {node: '>=18.0.0', npm: '>=9.0.0'}
|
||||
|
||||
'@fastify/otel@0.6.0':
|
||||
resolution: {integrity: sha512-lL+36KwGcFiAMcsPOLLsR+GV8ZpQuz5RLVstlgqmecTdQLTXVOe9Z8uwpMg9ktPcV++Ugp3dzzpBKNFWWWelYg==}
|
||||
peerDependencies:
|
||||
|
|
@ -1422,11 +1400,6 @@ packages:
|
|||
'@hapi/topo@5.1.0':
|
||||
resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==}
|
||||
|
||||
'@hookform/resolvers@5.0.1':
|
||||
resolution: {integrity: sha512-u/+Jp83luQNx9AdyW2fIPGY6Y7NG68eN2ZW8FOJYL+M0i4s49+refdJdOp/A9n9HFQtQs3HIDHQvX3ZET2o7YA==}
|
||||
peerDependencies:
|
||||
react-hook-form: ^7.55.0
|
||||
|
||||
'@humanfs/core@0.19.1':
|
||||
resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==}
|
||||
engines: {node: '>=18.18.0'}
|
||||
|
|
@ -3032,9 +3005,6 @@ packages:
|
|||
engines: {node: '>=18'}
|
||||
hasBin: true
|
||||
|
||||
'@standard-schema/utils@0.3.0':
|
||||
resolution: {integrity: sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==}
|
||||
|
||||
'@storybook/addon-actions@8.6.12':
|
||||
resolution: {integrity: sha512-B5kfiRvi35oJ0NIo53CGH66H471A3XTzrfaa6SxXEJsgxxSeKScG5YeXcCvLiZfvANRQ7QDsmzPUgg0o3hdMXw==}
|
||||
peerDependencies:
|
||||
|
|
@ -3450,17 +3420,6 @@ packages:
|
|||
'@tailwindcss/postcss@4.1.6':
|
||||
resolution: {integrity: sha512-ELq+gDMBuRXPJlpE3PEen+1MhnHAQQrh2zF0dI1NXOlEWfr2qWf2CQdr5jl9yANv8RErQaQ2l6nIFO9OSCVq/g==}
|
||||
|
||||
'@tanstack/react-table@8.21.3':
|
||||
resolution: {integrity: sha512-5nNMTSETP4ykGegmVkhjcS8tTLW6Vl4axfEGQN3v0zdHYbK4UfoqfPChclTrJ4EoK9QynqAu9oUf8VEmrpZ5Ww==}
|
||||
engines: {node: '>=12'}
|
||||
peerDependencies:
|
||||
react: '>=16.8'
|
||||
react-dom: '>=16.8'
|
||||
|
||||
'@tanstack/table-core@8.21.3':
|
||||
resolution: {integrity: sha512-ldZXEhOBb8Is7xLs01fR3YEc3DERiz5silj8tnGkFZytt1abEvl/GhUmCE0PMLaMPTa3Jk4HbKmRlHmu+gCftg==}
|
||||
engines: {node: '>=12'}
|
||||
|
||||
'@testing-library/dom@10.4.0':
|
||||
resolution: {integrity: sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==}
|
||||
engines: {node: '>=18'}
|
||||
|
|
@ -3503,10 +3462,6 @@ packages:
|
|||
'@tootallnate/quickjs-emscripten@0.23.0':
|
||||
resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==}
|
||||
|
||||
'@trysound/sax@0.2.0':
|
||||
resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==}
|
||||
engines: {node: '>=10.13.0'}
|
||||
|
||||
'@tsconfig/node10@1.0.11':
|
||||
resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==}
|
||||
|
||||
|
|
@ -4210,9 +4165,6 @@ packages:
|
|||
resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
|
||||
engines: {node: '>=10'}
|
||||
|
||||
caniuse-api@3.0.0:
|
||||
resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==}
|
||||
|
||||
caniuse-lite@1.0.30001717:
|
||||
resolution: {integrity: sha512-auPpttCq6BDEG8ZAuHJIplGw6GODhjw+/11e7IjpnYCxZcW/ONgPs0KVBJ0d1bY3e2+7PRe5RCLyP+PfwVgkYw==}
|
||||
|
||||
|
|
@ -4343,9 +4295,6 @@ packages:
|
|||
resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==}
|
||||
engines: {node: '>=12.5.0'}
|
||||
|
||||
colord@2.9.3:
|
||||
resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
|
||||
|
||||
colorette@2.0.20:
|
||||
resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
|
||||
|
||||
|
|
@ -4493,12 +4442,6 @@ packages:
|
|||
resolution: {integrity: sha512-r4ESw/IlusD17lgQi1O20Fa3qNnsckR126TdUuBgAu7GBYSIPvdNyONd3Zrxh0xCwA4+6w/TDArBPsMvhur+KQ==}
|
||||
engines: {node: '>= 0.10'}
|
||||
|
||||
css-declaration-sorter@7.2.0:
|
||||
resolution: {integrity: sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==}
|
||||
engines: {node: ^14 || ^16 || >=18}
|
||||
peerDependencies:
|
||||
postcss: ^8.0.9
|
||||
|
||||
css-loader@6.11.0:
|
||||
resolution: {integrity: sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==}
|
||||
engines: {node: '>= 12.13.0'}
|
||||
|
|
@ -4514,17 +4457,6 @@ packages:
|
|||
css-select@4.3.0:
|
||||
resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==}
|
||||
|
||||
css-select@5.1.0:
|
||||
resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==}
|
||||
|
||||
css-tree@2.2.1:
|
||||
resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==}
|
||||
engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'}
|
||||
|
||||
css-tree@2.3.1:
|
||||
resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==}
|
||||
engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
|
||||
|
||||
css-what@6.1.0:
|
||||
resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==}
|
||||
engines: {node: '>= 6'}
|
||||
|
|
@ -4537,28 +4469,6 @@ packages:
|
|||
engines: {node: '>=4'}
|
||||
hasBin: true
|
||||
|
||||
cssnano-preset-default@7.0.7:
|
||||
resolution: {integrity: sha512-jW6CG/7PNB6MufOrlovs1TvBTEVmhY45yz+bd0h6nw3h6d+1e+/TX+0fflZ+LzvZombbT5f+KC063w9VoHeHow==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
cssnano-utils@5.0.1:
|
||||
resolution: {integrity: sha512-ZIP71eQgG9JwjVZsTPSqhc6GHgEr53uJ7tK5///VfyWj6Xp2DBmixWHqJgPno+PqATzn48pL42ww9x5SSGmhZg==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
cssnano@7.0.7:
|
||||
resolution: {integrity: sha512-evKu7yiDIF7oS+EIpwFlMF730ijRyLFaM2o5cTxRGJR9OKHKkc+qP443ZEVR9kZG0syaAJJCPJyfv5pbrxlSng==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
csso@5.0.5:
|
||||
resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==}
|
||||
engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'}
|
||||
|
||||
cssstyle@4.3.1:
|
||||
resolution: {integrity: sha512-ZgW+Jgdd7i52AaLYCriF8Mxqft0gD/R9i9wi6RWBhs1pqdPEzPjym7rvRKi397WmQFf3SlyUsszhw+VVCbx79Q==}
|
||||
engines: {node: '>=18'}
|
||||
|
|
@ -4717,9 +4627,6 @@ packages:
|
|||
dom-serializer@1.4.1:
|
||||
resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==}
|
||||
|
||||
dom-serializer@2.0.0:
|
||||
resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==}
|
||||
|
||||
domain-browser@4.23.0:
|
||||
resolution: {integrity: sha512-ArzcM/II1wCCujdCNyQjXrAFwS4mrLh4C7DZWlaI8mdh7h3BfKdNd3bKXITfl2PT9FtfQqaGvhi1vPRQPimjGA==}
|
||||
engines: {node: '>=10'}
|
||||
|
|
@ -4737,19 +4644,12 @@ packages:
|
|||
resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==}
|
||||
engines: {node: '>= 4'}
|
||||
|
||||
domhandler@5.0.3:
|
||||
resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==}
|
||||
engines: {node: '>= 4'}
|
||||
|
||||
domutils@1.7.0:
|
||||
resolution: {integrity: sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==}
|
||||
|
||||
domutils@2.8.0:
|
||||
resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==}
|
||||
|
||||
domutils@3.2.2:
|
||||
resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==}
|
||||
|
||||
dot-case@3.0.4:
|
||||
resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==}
|
||||
|
||||
|
|
@ -4922,10 +4822,6 @@ packages:
|
|||
entities@2.2.0:
|
||||
resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==}
|
||||
|
||||
entities@4.5.0:
|
||||
resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
|
||||
engines: {node: '>=0.12'}
|
||||
|
||||
entities@6.0.0:
|
||||
resolution: {integrity: sha512-aKstq2TDOndCn4diEyp9Uq/Flu2i1GlLkc6XIDQSDMuaFE3OPW5OphLCyQ5SpSJZTb4reN+kTcYru5yIfXoRPw==}
|
||||
engines: {node: '>=0.12'}
|
||||
|
|
@ -6313,15 +6209,9 @@ packages:
|
|||
lodash.flattendeep@4.4.0:
|
||||
resolution: {integrity: sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==}
|
||||
|
||||
lodash.memoize@4.1.2:
|
||||
resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==}
|
||||
|
||||
lodash.merge@4.6.2:
|
||||
resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
|
||||
|
||||
lodash.uniq@4.5.0:
|
||||
resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==}
|
||||
|
||||
lodash@4.17.21:
|
||||
resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
|
||||
|
||||
|
|
@ -6403,12 +6293,6 @@ packages:
|
|||
md5.js@1.3.5:
|
||||
resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==}
|
||||
|
||||
mdn-data@2.0.28:
|
||||
resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==}
|
||||
|
||||
mdn-data@2.0.30:
|
||||
resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==}
|
||||
|
||||
media-typer@1.1.0:
|
||||
resolution: {integrity: sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==}
|
||||
engines: {node: '>= 0.8'}
|
||||
|
|
@ -6565,12 +6449,6 @@ packages:
|
|||
typescript:
|
||||
optional: true
|
||||
|
||||
next-themes@0.4.6:
|
||||
resolution: {integrity: sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==}
|
||||
peerDependencies:
|
||||
react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc
|
||||
react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc
|
||||
|
||||
next@15.3.2:
|
||||
resolution: {integrity: sha512-CA3BatMyHkxZ48sgOCLdVHjFU36N7TF1HhqAHLFOkV6buwZnvMI84Cug8xD56B9mCuKrqXnLn94417GrZ/jjCQ==}
|
||||
engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
|
||||
|
|
@ -7015,48 +6893,6 @@ packages:
|
|||
resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==}
|
||||
engines: {node: '>= 0.4'}
|
||||
|
||||
postcss-calc@10.1.1:
|
||||
resolution: {integrity: sha512-NYEsLHh8DgG/PRH2+G9BTuUdtf9ViS+vdoQ0YA5OQdGsfN4ztiwtDWNtBl9EKeqNMFnIu8IKZ0cLxEQ5r5KVMw==}
|
||||
engines: {node: ^18.12 || ^20.9 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.38
|
||||
|
||||
postcss-colormin@7.0.3:
|
||||
resolution: {integrity: sha512-xZxQcSyIVZbSsl1vjoqZAcMYYdnJsIyG8OvqShuuqf12S88qQboxxEy0ohNCOLwVPXTU+hFHvJPACRL2B5ohTA==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-convert-values@7.0.5:
|
||||
resolution: {integrity: sha512-0VFhH8nElpIs3uXKnVtotDJJNX0OGYSZmdt4XfSfvOMrFw1jKfpwpZxfC4iN73CTM/MWakDEmsHQXkISYj4BXw==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-discard-comments@7.0.4:
|
||||
resolution: {integrity: sha512-6tCUoql/ipWwKtVP/xYiFf1U9QgJ0PUvxN7pTcsQ8Ns3Fnwq1pU5D5s1MhT/XySeLq6GXNvn37U46Ded0TckWg==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-discard-duplicates@7.0.2:
|
||||
resolution: {integrity: sha512-eTonaQvPZ/3i1ASDHOKkYwAybiM45zFIc7KXils4mQmHLqIswXD9XNOKEVxtTFnsmwYzF66u4LMgSr0abDlh5w==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-discard-empty@7.0.1:
|
||||
resolution: {integrity: sha512-cFrJKZvcg/uxB6Ijr4l6qmn3pXQBna9zyrPC+sK0zjbkDUZew+6xDltSF7OeB7rAtzaaMVYSdbod+sZOCWnMOg==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-discard-overridden@7.0.1:
|
||||
resolution: {integrity: sha512-7c3MMjjSZ/qYrx3uc1940GSOzN1Iqjtlqe8uoSg+qdVPYyRb0TILSqqmtlSFuE4mTDECwsm397Ya7iXGzfF7lg==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-loader@8.1.1:
|
||||
resolution: {integrity: sha512-0IeqyAsG6tYiDRCYKQJLAmgQr47DX6N7sFSWvQxt6AcupX8DIdmykuk/o/tx0Lze3ErGHJEp5OSRxrelC6+NdQ==}
|
||||
engines: {node: '>= 18.12.0'}
|
||||
|
|
@ -7070,42 +6906,6 @@ packages:
|
|||
webpack:
|
||||
optional: true
|
||||
|
||||
postcss-merge-longhand@7.0.5:
|
||||
resolution: {integrity: sha512-Kpu5v4Ys6QI59FxmxtNB/iHUVDn9Y9sYw66D6+SZoIk4QTz1prC4aYkhIESu+ieG1iylod1f8MILMs1Em3mmIw==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-merge-rules@7.0.5:
|
||||
resolution: {integrity: sha512-ZonhuSwEaWA3+xYbOdJoEReKIBs5eDiBVLAGpYZpNFPzXZcEE5VKR7/qBEQvTZpiwjqhhqEQ+ax5O3VShBj9Wg==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-minify-font-values@7.0.1:
|
||||
resolution: {integrity: sha512-2m1uiuJeTplll+tq4ENOQSzB8LRnSUChBv7oSyFLsJRtUgAAJGP6LLz0/8lkinTgxrmJSPOEhgY1bMXOQ4ZXhQ==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-minify-gradients@7.0.1:
|
||||
resolution: {integrity: sha512-X9JjaysZJwlqNkJbUDgOclyG3jZEpAMOfof6PUZjPnPrePnPG62pS17CjdM32uT1Uq1jFvNSff9l7kNbmMSL2A==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-minify-params@7.0.3:
|
||||
resolution: {integrity: sha512-vUKV2+f5mtjewYieanLX0xemxIp1t0W0H/D11u+kQV/MWdygOO7xPMkbK+r9P6Lhms8MgzKARF/g5OPXhb8tgg==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-minify-selectors@7.0.5:
|
||||
resolution: {integrity: sha512-x2/IvofHcdIrAm9Q+p06ZD1h6FPcQ32WtCRVodJLDR+WMn8EVHI1kvLxZuGKz/9EY5nAmI6lIQIrpo4tBy5+ug==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-modules-extract-imports@3.1.0:
|
||||
resolution: {integrity: sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==}
|
||||
engines: {node: ^10 || ^12 || >= 14}
|
||||
|
|
@ -7130,94 +6930,10 @@ packages:
|
|||
peerDependencies:
|
||||
postcss: ^8.1.0
|
||||
|
||||
postcss-normalize-charset@7.0.1:
|
||||
resolution: {integrity: sha512-sn413ofhSQHlZFae//m9FTOfkmiZ+YQXsbosqOWRiVQncU2BA3daX3n0VF3cG6rGLSFVc5Di/yns0dFfh8NFgQ==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-normalize-display-values@7.0.1:
|
||||
resolution: {integrity: sha512-E5nnB26XjSYz/mGITm6JgiDpAbVuAkzXwLzRZtts19jHDUBFxZ0BkXAehy0uimrOjYJbocby4FVswA/5noOxrQ==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-normalize-positions@7.0.1:
|
||||
resolution: {integrity: sha512-pB/SzrIP2l50ZIYu+yQZyMNmnAcwyYb9R1fVWPRxm4zcUFCY2ign7rcntGFuMXDdd9L2pPNUgoODDk91PzRZuQ==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-normalize-repeat-style@7.0.1:
|
||||
resolution: {integrity: sha512-NsSQJ8zj8TIDiF0ig44Byo3Jk9e4gNt9x2VIlJudnQQ5DhWAHJPF4Tr1ITwyHio2BUi/I6Iv0HRO7beHYOloYQ==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-normalize-string@7.0.1:
|
||||
resolution: {integrity: sha512-QByrI7hAhsoze992kpbMlJSbZ8FuCEc1OT9EFbZ6HldXNpsdpZr+YXC5di3UEv0+jeZlHbZcoCADgb7a+lPmmQ==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-normalize-timing-functions@7.0.1:
|
||||
resolution: {integrity: sha512-bHifyuuSNdKKsnNJ0s8fmfLMlvsQwYVxIoUBnowIVl2ZAdrkYQNGVB4RxjfpvkMjipqvbz0u7feBZybkl/6NJg==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-normalize-unicode@7.0.3:
|
||||
resolution: {integrity: sha512-EcoA29LvG3F+EpOh03iqu+tJY3uYYKzArqKJHxDhUYLa2u58aqGq16K6/AOsXD9yqLN8O6y9mmePKN5cx6krOw==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-normalize-url@7.0.1:
|
||||
resolution: {integrity: sha512-sUcD2cWtyK1AOL/82Fwy1aIVm/wwj5SdZkgZ3QiUzSzQQofrbq15jWJ3BA7Z+yVRwamCjJgZJN0I9IS7c6tgeQ==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-normalize-whitespace@7.0.1:
|
||||
resolution: {integrity: sha512-vsbgFHMFQrJBJKrUFJNZ2pgBeBkC2IvvoHjz1to0/0Xk7sII24T0qFOiJzG6Fu3zJoq/0yI4rKWi7WhApW+EFA==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-ordered-values@7.0.2:
|
||||
resolution: {integrity: sha512-AMJjt1ECBffF7CEON/Y0rekRLS6KsePU6PRP08UqYW4UGFRnTXNrByUzYK1h8AC7UWTZdQ9O3Oq9kFIhm0SFEw==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-reduce-initial@7.0.3:
|
||||
resolution: {integrity: sha512-RFvkZaqiWtGMlVjlUHpaxGqEL27lgt+Q2Ixjf83CRAzqdo+TsDyGPtJUbPx2MuYIJ+sCQc2TrOvRnhcXQfgIVA==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-reduce-transforms@7.0.1:
|
||||
resolution: {integrity: sha512-MhyEbfrm+Mlp/36hvZ9mT9DaO7dbncU0CvWI8V93LRkY6IYlu38OPg3FObnuKTUxJ4qA8HpurdQOo5CyqqO76g==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-selector-parser@7.1.0:
|
||||
resolution: {integrity: sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==}
|
||||
engines: {node: '>=4'}
|
||||
|
||||
postcss-svgo@7.0.2:
|
||||
resolution: {integrity: sha512-5Dzy66JlnRM6pkdOTF8+cGsB1fnERTE8Nc+Eed++fOWo1hdsBptCsbG8UuJkgtZt75bRtMJIrPeZmtfANixdFA==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >= 18}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-unique-selectors@7.0.4:
|
||||
resolution: {integrity: sha512-pmlZjsmEAG7cHd7uK3ZiNSW6otSZ13RHuZ/4cDN/bVglS5EpF2r2oxY99SuOHa8m7AWoBCelTS3JPpzsIs8skQ==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
postcss-value-parser@4.2.0:
|
||||
resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
|
||||
|
||||
|
|
@ -8070,12 +7786,6 @@ packages:
|
|||
babel-plugin-macros:
|
||||
optional: true
|
||||
|
||||
stylehacks@7.0.5:
|
||||
resolution: {integrity: sha512-5kNb7V37BNf0Q3w+1pxfa+oiNPS++/b4Jil9e/kPDgrk1zjEd6uR7SZeJiYaLYH6RRSC1XX2/37OTeU/4FvuIA==}
|
||||
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
|
||||
peerDependencies:
|
||||
postcss: ^8.4.32
|
||||
|
||||
supports-color@5.5.0:
|
||||
resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
|
||||
engines: {node: '>=4'}
|
||||
|
|
@ -8092,11 +7802,6 @@ packages:
|
|||
resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
|
||||
engines: {node: '>= 0.4'}
|
||||
|
||||
svgo@3.3.2:
|
||||
resolution: {integrity: sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
hasBin: true
|
||||
|
||||
swr@2.3.3:
|
||||
resolution: {integrity: sha512-dshNvs3ExOqtZ6kJBaAsabhPdHyeY4P2cKwRCniDVifBMoG/SVI7tfLWqPXriVspf2Rg4tPzXJTnwaihIeFw2A==}
|
||||
peerDependencies:
|
||||
|
|
@ -10000,8 +9705,6 @@ snapshots:
|
|||
'@eslint/core': 0.13.0
|
||||
levn: 0.4.1
|
||||
|
||||
'@faker-js/faker@9.7.0': {}
|
||||
|
||||
'@fastify/otel@0.6.0(@opentelemetry/api@1.9.0)':
|
||||
dependencies:
|
||||
'@opentelemetry/api': 1.9.0
|
||||
|
|
@ -10064,11 +9767,6 @@ snapshots:
|
|||
dependencies:
|
||||
'@hapi/hoek': 9.3.0
|
||||
|
||||
'@hookform/resolvers@5.0.1(react-hook-form@7.56.3(react@19.1.0))':
|
||||
dependencies:
|
||||
'@standard-schema/utils': 0.3.0
|
||||
react-hook-form: 7.56.3(react@19.1.0)
|
||||
|
||||
'@humanfs/core@0.19.1': {}
|
||||
|
||||
'@humanfs/node@0.16.6':
|
||||
|
|
@ -11911,8 +11609,6 @@ snapshots:
|
|||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
'@standard-schema/utils@0.3.0': {}
|
||||
|
||||
'@storybook/addon-actions@8.6.12(storybook@8.6.12(prettier@3.5.3))':
|
||||
dependencies:
|
||||
'@storybook/global': 5.0.0
|
||||
|
|
@ -12440,14 +12136,6 @@ snapshots:
|
|||
postcss: 8.5.3
|
||||
tailwindcss: 4.1.6
|
||||
|
||||
'@tanstack/react-table@8.21.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
|
||||
dependencies:
|
||||
'@tanstack/table-core': 8.21.3
|
||||
react: 19.1.0
|
||||
react-dom: 19.1.0(react@19.1.0)
|
||||
|
||||
'@tanstack/table-core@8.21.3': {}
|
||||
|
||||
'@testing-library/dom@10.4.0':
|
||||
dependencies:
|
||||
'@babel/code-frame': 7.27.1
|
||||
|
|
@ -12498,8 +12186,6 @@ snapshots:
|
|||
|
||||
'@tootallnate/quickjs-emscripten@0.23.0': {}
|
||||
|
||||
'@trysound/sax@0.2.0': {}
|
||||
|
||||
'@tsconfig/node10@1.0.11':
|
||||
optional: true
|
||||
|
||||
|
|
@ -13405,13 +13091,6 @@ snapshots:
|
|||
|
||||
camelcase@6.3.0: {}
|
||||
|
||||
caniuse-api@3.0.0:
|
||||
dependencies:
|
||||
browserslist: 4.24.5
|
||||
caniuse-lite: 1.0.30001717
|
||||
lodash.memoize: 4.1.2
|
||||
lodash.uniq: 4.5.0
|
||||
|
||||
caniuse-lite@1.0.30001717: {}
|
||||
|
||||
case-sensitive-paths-webpack-plugin@2.4.0: {}
|
||||
|
|
@ -13532,13 +13211,13 @@ snapshots:
|
|||
dependencies:
|
||||
color-name: 1.1.4
|
||||
simple-swizzle: 0.2.2
|
||||
optional: true
|
||||
|
||||
color@4.2.3:
|
||||
dependencies:
|
||||
color-convert: 2.0.1
|
||||
color-string: 1.9.1
|
||||
|
||||
colord@2.9.3: {}
|
||||
optional: true
|
||||
|
||||
colorette@2.0.20: {}
|
||||
|
||||
|
|
@ -13702,10 +13381,6 @@ snapshots:
|
|||
randombytes: 2.1.0
|
||||
randomfill: 1.0.4
|
||||
|
||||
css-declaration-sorter@7.2.0(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
|
||||
css-loader@6.11.0(webpack@5.99.8(@swc/core@1.11.24)(esbuild@0.25.4)):
|
||||
dependencies:
|
||||
icss-utils: 5.1.0(postcss@8.5.3)
|
||||
|
|
@ -13727,78 +13402,12 @@ snapshots:
|
|||
domutils: 2.8.0
|
||||
nth-check: 2.1.1
|
||||
|
||||
css-select@5.1.0:
|
||||
dependencies:
|
||||
boolbase: 1.0.0
|
||||
css-what: 6.1.0
|
||||
domhandler: 5.0.3
|
||||
domutils: 3.2.2
|
||||
nth-check: 2.1.1
|
||||
|
||||
css-tree@2.2.1:
|
||||
dependencies:
|
||||
mdn-data: 2.0.28
|
||||
source-map-js: 1.2.1
|
||||
|
||||
css-tree@2.3.1:
|
||||
dependencies:
|
||||
mdn-data: 2.0.30
|
||||
source-map-js: 1.2.1
|
||||
|
||||
css-what@6.1.0: {}
|
||||
|
||||
css.escape@1.5.1: {}
|
||||
|
||||
cssesc@3.0.0: {}
|
||||
|
||||
cssnano-preset-default@7.0.7(postcss@8.5.3):
|
||||
dependencies:
|
||||
browserslist: 4.24.5
|
||||
css-declaration-sorter: 7.2.0(postcss@8.5.3)
|
||||
cssnano-utils: 5.0.1(postcss@8.5.3)
|
||||
postcss: 8.5.3
|
||||
postcss-calc: 10.1.1(postcss@8.5.3)
|
||||
postcss-colormin: 7.0.3(postcss@8.5.3)
|
||||
postcss-convert-values: 7.0.5(postcss@8.5.3)
|
||||
postcss-discard-comments: 7.0.4(postcss@8.5.3)
|
||||
postcss-discard-duplicates: 7.0.2(postcss@8.5.3)
|
||||
postcss-discard-empty: 7.0.1(postcss@8.5.3)
|
||||
postcss-discard-overridden: 7.0.1(postcss@8.5.3)
|
||||
postcss-merge-longhand: 7.0.5(postcss@8.5.3)
|
||||
postcss-merge-rules: 7.0.5(postcss@8.5.3)
|
||||
postcss-minify-font-values: 7.0.1(postcss@8.5.3)
|
||||
postcss-minify-gradients: 7.0.1(postcss@8.5.3)
|
||||
postcss-minify-params: 7.0.3(postcss@8.5.3)
|
||||
postcss-minify-selectors: 7.0.5(postcss@8.5.3)
|
||||
postcss-normalize-charset: 7.0.1(postcss@8.5.3)
|
||||
postcss-normalize-display-values: 7.0.1(postcss@8.5.3)
|
||||
postcss-normalize-positions: 7.0.1(postcss@8.5.3)
|
||||
postcss-normalize-repeat-style: 7.0.1(postcss@8.5.3)
|
||||
postcss-normalize-string: 7.0.1(postcss@8.5.3)
|
||||
postcss-normalize-timing-functions: 7.0.1(postcss@8.5.3)
|
||||
postcss-normalize-unicode: 7.0.3(postcss@8.5.3)
|
||||
postcss-normalize-url: 7.0.1(postcss@8.5.3)
|
||||
postcss-normalize-whitespace: 7.0.1(postcss@8.5.3)
|
||||
postcss-ordered-values: 7.0.2(postcss@8.5.3)
|
||||
postcss-reduce-initial: 7.0.3(postcss@8.5.3)
|
||||
postcss-reduce-transforms: 7.0.1(postcss@8.5.3)
|
||||
postcss-svgo: 7.0.2(postcss@8.5.3)
|
||||
postcss-unique-selectors: 7.0.4(postcss@8.5.3)
|
||||
|
||||
cssnano-utils@5.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
|
||||
cssnano@7.0.7(postcss@8.5.3):
|
||||
dependencies:
|
||||
cssnano-preset-default: 7.0.7(postcss@8.5.3)
|
||||
lilconfig: 3.1.3
|
||||
postcss: 8.5.3
|
||||
|
||||
csso@5.0.5:
|
||||
dependencies:
|
||||
css-tree: 2.2.1
|
||||
|
||||
cssstyle@4.3.1:
|
||||
dependencies:
|
||||
'@asamuzakjp/css-color': 3.1.7
|
||||
|
|
@ -13941,12 +13550,6 @@ snapshots:
|
|||
domhandler: 4.3.1
|
||||
entities: 2.2.0
|
||||
|
||||
dom-serializer@2.0.0:
|
||||
dependencies:
|
||||
domelementtype: 2.3.0
|
||||
domhandler: 5.0.3
|
||||
entities: 4.5.0
|
||||
|
||||
domain-browser@4.23.0: {}
|
||||
|
||||
domelementtype@1.3.1: {}
|
||||
|
|
@ -13961,10 +13564,6 @@ snapshots:
|
|||
dependencies:
|
||||
domelementtype: 2.3.0
|
||||
|
||||
domhandler@5.0.3:
|
||||
dependencies:
|
||||
domelementtype: 2.3.0
|
||||
|
||||
domutils@1.7.0:
|
||||
dependencies:
|
||||
dom-serializer: 0.2.2
|
||||
|
|
@ -13976,12 +13575,6 @@ snapshots:
|
|||
domelementtype: 2.3.0
|
||||
domhandler: 4.3.1
|
||||
|
||||
domutils@3.2.2:
|
||||
dependencies:
|
||||
dom-serializer: 2.0.0
|
||||
domelementtype: 2.3.0
|
||||
domhandler: 5.0.3
|
||||
|
||||
dot-case@3.0.4:
|
||||
dependencies:
|
||||
no-case: 3.0.4
|
||||
|
|
@ -14074,8 +13667,6 @@ snapshots:
|
|||
|
||||
entities@2.2.0: {}
|
||||
|
||||
entities@4.5.0: {}
|
||||
|
||||
entities@6.0.0: {}
|
||||
|
||||
env-paths@2.2.1: {}
|
||||
|
|
@ -15090,7 +14681,8 @@ snapshots:
|
|||
|
||||
is-arrayish@0.2.1: {}
|
||||
|
||||
is-arrayish@0.3.2: {}
|
||||
is-arrayish@0.3.2:
|
||||
optional: true
|
||||
|
||||
is-async-function@2.1.1:
|
||||
dependencies:
|
||||
|
|
@ -15921,12 +15513,8 @@ snapshots:
|
|||
|
||||
lodash.flattendeep@4.4.0: {}
|
||||
|
||||
lodash.memoize@4.1.2: {}
|
||||
|
||||
lodash.merge@4.6.2: {}
|
||||
|
||||
lodash.uniq@4.5.0: {}
|
||||
|
||||
lodash@4.17.21: {}
|
||||
|
||||
log-update@6.1.0:
|
||||
|
|
@ -16006,10 +15594,6 @@ snapshots:
|
|||
inherits: 2.0.4
|
||||
safe-buffer: 5.2.1
|
||||
|
||||
mdn-data@2.0.28: {}
|
||||
|
||||
mdn-data@2.0.30: {}
|
||||
|
||||
media-typer@1.1.0: {}
|
||||
|
||||
memfs@3.5.3:
|
||||
|
|
@ -16120,11 +15704,6 @@ snapshots:
|
|||
optionalDependencies:
|
||||
typescript: 5.8.3
|
||||
|
||||
next-themes@0.4.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
|
||||
dependencies:
|
||||
react: 19.1.0
|
||||
react-dom: 19.1.0(react@19.1.0)
|
||||
|
||||
next@15.3.2(@babel/core@7.27.1)(@opentelemetry/api@1.9.0)(@playwright/test@1.52.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
|
||||
dependencies:
|
||||
'@next/env': 15.3.2
|
||||
|
|
@ -16652,43 +16231,6 @@ snapshots:
|
|||
|
||||
possible-typed-array-names@1.1.0: {}
|
||||
|
||||
postcss-calc@10.1.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-selector-parser: 7.1.0
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-colormin@7.0.3(postcss@8.5.3):
|
||||
dependencies:
|
||||
browserslist: 4.24.5
|
||||
caniuse-api: 3.0.0
|
||||
colord: 2.9.3
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-convert-values@7.0.5(postcss@8.5.3):
|
||||
dependencies:
|
||||
browserslist: 4.24.5
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-discard-comments@7.0.4(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-selector-parser: 7.1.0
|
||||
|
||||
postcss-discard-duplicates@7.0.2(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
|
||||
postcss-discard-empty@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
|
||||
postcss-discard-overridden@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
|
||||
postcss-loader@8.1.1(postcss@8.5.3)(typescript@5.8.3)(webpack@5.99.8(@swc/core@1.11.24)(esbuild@0.25.4)):
|
||||
dependencies:
|
||||
cosmiconfig: 9.0.0(typescript@5.8.3)
|
||||
|
|
@ -16700,45 +16242,6 @@ snapshots:
|
|||
transitivePeerDependencies:
|
||||
- typescript
|
||||
|
||||
postcss-merge-longhand@7.0.5(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
stylehacks: 7.0.5(postcss@8.5.3)
|
||||
|
||||
postcss-merge-rules@7.0.5(postcss@8.5.3):
|
||||
dependencies:
|
||||
browserslist: 4.24.5
|
||||
caniuse-api: 3.0.0
|
||||
cssnano-utils: 5.0.1(postcss@8.5.3)
|
||||
postcss: 8.5.3
|
||||
postcss-selector-parser: 7.1.0
|
||||
|
||||
postcss-minify-font-values@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-minify-gradients@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
colord: 2.9.3
|
||||
cssnano-utils: 5.0.1(postcss@8.5.3)
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-minify-params@7.0.3(postcss@8.5.3):
|
||||
dependencies:
|
||||
browserslist: 4.24.5
|
||||
cssnano-utils: 5.0.1(postcss@8.5.3)
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-minify-selectors@7.0.5(postcss@8.5.3):
|
||||
dependencies:
|
||||
cssesc: 3.0.0
|
||||
postcss: 8.5.3
|
||||
postcss-selector-parser: 7.1.0
|
||||
|
||||
postcss-modules-extract-imports@3.1.0(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
|
|
@ -16760,84 +16263,11 @@ snapshots:
|
|||
icss-utils: 5.1.0(postcss@8.5.3)
|
||||
postcss: 8.5.3
|
||||
|
||||
postcss-normalize-charset@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
|
||||
postcss-normalize-display-values@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-normalize-positions@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-normalize-repeat-style@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-normalize-string@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-normalize-timing-functions@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-normalize-unicode@7.0.3(postcss@8.5.3):
|
||||
dependencies:
|
||||
browserslist: 4.24.5
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-normalize-url@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-normalize-whitespace@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-ordered-values@7.0.2(postcss@8.5.3):
|
||||
dependencies:
|
||||
cssnano-utils: 5.0.1(postcss@8.5.3)
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-reduce-initial@7.0.3(postcss@8.5.3):
|
||||
dependencies:
|
||||
browserslist: 4.24.5
|
||||
caniuse-api: 3.0.0
|
||||
postcss: 8.5.3
|
||||
|
||||
postcss-reduce-transforms@7.0.1(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
|
||||
postcss-selector-parser@7.1.0:
|
||||
dependencies:
|
||||
cssesc: 3.0.0
|
||||
util-deprecate: 1.0.2
|
||||
|
||||
postcss-svgo@7.0.2(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-value-parser: 4.2.0
|
||||
svgo: 3.3.2
|
||||
|
||||
postcss-unique-selectors@7.0.4(postcss@8.5.3):
|
||||
dependencies:
|
||||
postcss: 8.5.3
|
||||
postcss-selector-parser: 7.1.0
|
||||
|
||||
postcss-value-parser@4.2.0: {}
|
||||
|
||||
postcss@8.4.31:
|
||||
|
|
@ -17490,6 +16920,7 @@ snapshots:
|
|||
'@img/sharp-wasm32': 0.34.1
|
||||
'@img/sharp-win32-ia32': 0.34.1
|
||||
'@img/sharp-win32-x64': 0.34.1
|
||||
optional: true
|
||||
|
||||
shebang-command@1.2.0:
|
||||
dependencies:
|
||||
|
|
@ -17544,6 +16975,7 @@ snapshots:
|
|||
simple-swizzle@0.2.2:
|
||||
dependencies:
|
||||
is-arrayish: 0.3.2
|
||||
optional: true
|
||||
|
||||
sirv@2.0.4:
|
||||
dependencies:
|
||||
|
|
@ -17851,12 +17283,6 @@ snapshots:
|
|||
optionalDependencies:
|
||||
'@babel/core': 7.27.1
|
||||
|
||||
stylehacks@7.0.5(postcss@8.5.3):
|
||||
dependencies:
|
||||
browserslist: 4.24.5
|
||||
postcss: 8.5.3
|
||||
postcss-selector-parser: 7.1.0
|
||||
|
||||
supports-color@5.5.0:
|
||||
dependencies:
|
||||
has-flag: 3.0.0
|
||||
|
|
@ -17871,16 +17297,6 @@ snapshots:
|
|||
|
||||
supports-preserve-symlinks-flag@1.0.0: {}
|
||||
|
||||
svgo@3.3.2:
|
||||
dependencies:
|
||||
'@trysound/sax': 0.2.0
|
||||
commander: 7.2.0
|
||||
css-select: 5.1.0
|
||||
css-tree: 2.3.1
|
||||
css-what: 6.1.0
|
||||
csso: 5.0.5
|
||||
picocolors: 1.1.1
|
||||
|
||||
swr@2.3.3(react@19.1.0):
|
||||
dependencies:
|
||||
dequal: 2.0.3
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
export const DemoBadge = () => (
|
||||
<div className="fixed bottom-0 right-20 z-10">
|
||||
<a
|
||||
href="https://react-saas.com"
|
||||
>
|
||||
<a href="https://react-saas.com">
|
||||
<div className="rounded-md bg-gray-900 px-3 py-2 font-semibold text-gray-100">
|
||||
<span className="text-gray-500">Demo of</span>
|
||||
{' SaaS Boilerplate'}
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import { useMenu } from './UseMenu';
|
|||
|
||||
describe('UseMenu', () => {
|
||||
describe('Render hook', () => {
|
||||
it('shouldn\'t show the menu by default', async () => {
|
||||
it("shouldn't show the menu by default", async () => {
|
||||
const { result } = renderHook(() => useMenu());
|
||||
|
||||
expect(result.current.showMenu).toBeFalsy();
|
||||
|
|
@ -20,7 +20,7 @@ describe('UseMenu', () => {
|
|||
expect(result.current.showMenu).toBeTruthy();
|
||||
});
|
||||
|
||||
it('shouldn\'t make the menu visible after toggling and closing the menu', () => {
|
||||
it("shouldn't make the menu visible after toggling and closing the menu", () => {
|
||||
const { result } = renderHook(() => useMenu());
|
||||
|
||||
act(() => {
|
||||
|
|
@ -30,7 +30,7 @@ describe('UseMenu', () => {
|
|||
expect(result.current.showMenu).toBeFalsy();
|
||||
});
|
||||
|
||||
it('shouldn\'t make the menu visible after toggling the menu twice', () => {
|
||||
it("shouldn't make the menu visible after toggling the menu twice", () => {
|
||||
const { result } = renderHook(() => useMenu());
|
||||
|
||||
act(() => {
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ export const useMenu = () => {
|
|||
const [showMenu, setShowMenu] = useState(false);
|
||||
|
||||
const handleToggleMenu = () => {
|
||||
setShowMenu(prevState => !prevState);
|
||||
setShowMenu((prevState) => !prevState);
|
||||
};
|
||||
|
||||
const handleClose = () => {
|
||||
|
|
|
|||
|
|
@ -3,7 +3,10 @@ import path from 'node:path';
|
|||
import { PGlite } from '@electric-sql/pglite';
|
||||
import { drizzle as drizzlePg } from 'drizzle-orm/node-postgres';
|
||||
import { migrate as migratePg } from 'drizzle-orm/node-postgres/migrator';
|
||||
import { drizzle as drizzlePglite, type PgliteDatabase } from 'drizzle-orm/pglite';
|
||||
import {
|
||||
drizzle as drizzlePglite,
|
||||
type PgliteDatabase,
|
||||
} from 'drizzle-orm/pglite';
|
||||
import { migrate as migratePglite } from 'drizzle-orm/pglite/migrator';
|
||||
import { PHASE_PRODUCTION_BUILD } from 'next/dist/shared/lib/constants';
|
||||
import { Client } from 'pg';
|
||||
|
|
@ -27,7 +30,10 @@ if (process.env.NEXT_PHASE !== PHASE_PRODUCTION_BUILD && Env.DATABASE_URL) {
|
|||
});
|
||||
} else {
|
||||
// Stores the db connection in the global scope to prevent multiple instances due to hot reloading with Next.js
|
||||
const global = globalThis as unknown as { client: PGlite; drizzle: PgliteDatabase<typeof schema> };
|
||||
const global = globalThis as unknown as {
|
||||
client: PGlite;
|
||||
drizzle: PgliteDatabase<typeof schema>;
|
||||
};
|
||||
|
||||
if (!global.client) {
|
||||
global.client = new PGlite();
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ export const Features = () => {
|
|||
>
|
||||
<div className="grid grid-cols-1 gap-x-3 gap-y-8 md:grid-cols-3">
|
||||
<FeatureCard
|
||||
icon={(
|
||||
icon={
|
||||
<svg
|
||||
className="stroke-primary-foreground stroke-2"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
|
|
@ -28,14 +28,14 @@ export const Features = () => {
|
|||
<path d="M0 0h24v24H0z" stroke="none" />
|
||||
<path d="M12 3l8 4.5v9L12 21l-8-4.5v-9L12 3M12 12l8-4.5M12 12v9M12 12L4 7.5" />
|
||||
</svg>
|
||||
)}
|
||||
}
|
||||
title={t('feature1_title')}
|
||||
>
|
||||
{t('feature_description')}
|
||||
</FeatureCard>
|
||||
|
||||
<FeatureCard
|
||||
icon={(
|
||||
icon={
|
||||
<svg
|
||||
className="stroke-primary-foreground stroke-2"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
|
|
@ -47,14 +47,14 @@ export const Features = () => {
|
|||
<path d="M0 0h24v24H0z" stroke="none" />
|
||||
<path d="M12 3l8 4.5v9L12 21l-8-4.5v-9L12 3M12 12l8-4.5M12 12v9M12 12L4 7.5" />
|
||||
</svg>
|
||||
)}
|
||||
}
|
||||
title={t('feature2_title')}
|
||||
>
|
||||
{t('feature_description')}
|
||||
</FeatureCard>
|
||||
|
||||
<FeatureCard
|
||||
icon={(
|
||||
icon={
|
||||
<svg
|
||||
className="stroke-primary-foreground stroke-2"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
|
|
@ -66,14 +66,14 @@ export const Features = () => {
|
|||
<path d="M0 0h24v24H0z" stroke="none" />
|
||||
<path d="M12 3l8 4.5v9L12 21l-8-4.5v-9L12 3M12 12l8-4.5M12 12v9M12 12L4 7.5" />
|
||||
</svg>
|
||||
)}
|
||||
}
|
||||
title={t('feature3_title')}
|
||||
>
|
||||
{t('feature_description')}
|
||||
</FeatureCard>
|
||||
|
||||
<FeatureCard
|
||||
icon={(
|
||||
icon={
|
||||
<svg
|
||||
className="stroke-primary-foreground stroke-2"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
|
|
@ -85,14 +85,14 @@ export const Features = () => {
|
|||
<path d="M0 0h24v24H0z" stroke="none" />
|
||||
<path d="M12 3l8 4.5v9L12 21l-8-4.5v-9L12 3M12 12l8-4.5M12 12v9M12 12L4 7.5" />
|
||||
</svg>
|
||||
)}
|
||||
}
|
||||
title={t('feature4_title')}
|
||||
>
|
||||
{t('feature_description')}
|
||||
</FeatureCard>
|
||||
|
||||
<FeatureCard
|
||||
icon={(
|
||||
icon={
|
||||
<svg
|
||||
className="stroke-primary-foreground stroke-2"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
|
|
@ -104,14 +104,14 @@ export const Features = () => {
|
|||
<path d="M0 0h24v24H0z" stroke="none" />
|
||||
<path d="M12 3l8 4.5v9L12 21l-8-4.5v-9L12 3M12 12l8-4.5M12 12v9M12 12L4 7.5" />
|
||||
</svg>
|
||||
)}
|
||||
}
|
||||
title={t('feature5_title')}
|
||||
>
|
||||
{t('feature_description')}
|
||||
</FeatureCard>
|
||||
|
||||
<FeatureCard
|
||||
icon={(
|
||||
icon={
|
||||
<svg
|
||||
className="stroke-primary-foreground stroke-2"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
|
|
@ -123,7 +123,7 @@ export const Features = () => {
|
|||
<path d="M0 0h24v24H0z" stroke="none" />
|
||||
<path d="M12 3l8 4.5v9L12 21l-8-4.5v-9L12 3M12 12l8-4.5M12 12v9M12 12L4 7.5" />
|
||||
</svg>
|
||||
)}
|
||||
}
|
||||
title={t('feature6_title')}
|
||||
>
|
||||
{t('feature_description')}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ export const Footer = () => {
|
|||
<CenteredFooter
|
||||
logo={<Logo />}
|
||||
name={AppConfig.name}
|
||||
iconList={(
|
||||
iconList={
|
||||
<>
|
||||
<li>
|
||||
<Link href="/">
|
||||
|
|
@ -73,8 +73,8 @@ export const Footer = () => {
|
|||
</Link>
|
||||
</li>
|
||||
</>
|
||||
)}
|
||||
legalLinks={(
|
||||
}
|
||||
legalLinks={
|
||||
<>
|
||||
<li>
|
||||
<Link href="/sign-up">{t('terms_of_service')}</Link>
|
||||
|
|
@ -83,7 +83,7 @@ export const Footer = () => {
|
|||
<Link href="/sign-up">{t('privacy_policy')}</Link>
|
||||
</li>
|
||||
</>
|
||||
)}
|
||||
}
|
||||
>
|
||||
<li>
|
||||
<Link href="/sign-up">{t('product')}</Link>
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
import { AppConfig } from '@/utils/AppConfig';
|
||||
|
||||
export const Logo = (props: {
|
||||
isTextHidden?: boolean;
|
||||
}) => (
|
||||
export const Logo = (props: { isTextHidden?: boolean }) => (
|
||||
<div className="flex items-center text-xl font-semibold">
|
||||
<svg
|
||||
className="mr-1 size-8 stroke-current stroke-2"
|
||||
|
|
|
|||
|
|
@ -2,18 +2,26 @@ import { expect, test } from '@playwright/test';
|
|||
|
||||
test.describe('I18n', () => {
|
||||
test.describe('Language Switching', () => {
|
||||
test('should switch language from English to French using dropdown and verify text on the homepage', async ({ page }) => {
|
||||
test('should switch language from English to French using dropdown and verify text on the homepage', async ({
|
||||
page,
|
||||
}) => {
|
||||
await page.goto('/');
|
||||
|
||||
await expect(page.getByText('The perfect SaaS template to build')).toBeVisible();
|
||||
await expect(
|
||||
page.getByText('The perfect SaaS template to build'),
|
||||
).toBeVisible();
|
||||
|
||||
await page.getByRole('button', { name: 'lang-switcher' }).click();
|
||||
await page.getByText('Français').click();
|
||||
|
||||
await expect(page.getByText('Le parfait SaaS template pour construire')).toBeVisible();
|
||||
await expect(
|
||||
page.getByText('Le parfait SaaS template pour construire'),
|
||||
).toBeVisible();
|
||||
});
|
||||
|
||||
test('should switch language from English to French using URL and verify text on the sign-in page', async ({ page }) => {
|
||||
test('should switch language from English to French using URL and verify text on the sign-in page', async ({
|
||||
page,
|
||||
}) => {
|
||||
await page.goto('/sign-in');
|
||||
|
||||
await expect(page.getByText('Email address')).toBeVisible();
|
||||
|
|
|
|||
|
|
@ -17,7 +17,9 @@ test.describe('Sanity', () => {
|
|||
test('should display the homepage', async ({ page, baseURL }) => {
|
||||
await page.goto(`${baseURL}/`);
|
||||
|
||||
await expect(page.getByText('The perfect SaaS template to build')).toBeVisible();
|
||||
await expect(
|
||||
page.getByText('The perfect SaaS template to build'),
|
||||
).toBeVisible();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -6,7 +6,9 @@ test.describe('Visual testing', () => {
|
|||
test('should take screenshot of the homepage', async ({ page }) => {
|
||||
await page.goto('/');
|
||||
|
||||
await expect(page.getByText('The perfect SaaS template to build')).toBeVisible();
|
||||
await expect(
|
||||
page.getByText('The perfect SaaS template to build'),
|
||||
).toBeVisible();
|
||||
|
||||
await percySnapshot(page, 'Homepage');
|
||||
});
|
||||
|
|
@ -14,7 +16,9 @@ test.describe('Visual testing', () => {
|
|||
test('should take screenshot of the French homepage', async ({ page }) => {
|
||||
await page.goto('/fr');
|
||||
|
||||
await expect(page.getByText('Le parfait SaaS template pour construire')).toBeVisible();
|
||||
await expect(
|
||||
page.getByText('Le parfait SaaS template pour construire'),
|
||||
).toBeVisible();
|
||||
|
||||
await percySnapshot(page, 'Homepage - French');
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue