Working on Auth flows. Struggling with getting client and server to both update when signing in or out.
This commit is contained in:
parent
22cf7be870
commit
28569c4f4e
12
package.json
12
package.json
@ -29,29 +29,29 @@
|
|||||||
"class-variance-authority": "^0.7.1",
|
"class-variance-authority": "^0.7.1",
|
||||||
"clsx": "^2.1.1",
|
"clsx": "^2.1.1",
|
||||||
"lucide-react": "^0.510.0",
|
"lucide-react": "^0.510.0",
|
||||||
"next": "^15.3.2",
|
"next": "^15.3.3",
|
||||||
"next-themes": "^0.4.6",
|
"next-themes": "^0.4.6",
|
||||||
"react": "^19.1.0",
|
"react": "^19.1.0",
|
||||||
"react-dom": "^19.1.0",
|
"react-dom": "^19.1.0",
|
||||||
"react-hook-form": "^7.56.4",
|
"react-hook-form": "^7.56.4",
|
||||||
"sonner": "^2.0.3",
|
"sonner": "^2.0.3",
|
||||||
"zod": "^3.25.32"
|
"zod": "^3.25.42"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@eslint/eslintrc": "^3.3.1",
|
"@eslint/eslintrc": "^3.3.1",
|
||||||
"@tailwindcss/postcss": "^4.1.8",
|
"@tailwindcss/postcss": "^4.1.8",
|
||||||
"@types/node": "^20.17.51",
|
"@types/node": "^20.17.55",
|
||||||
"@types/react": "^19.1.6",
|
"@types/react": "^19.1.6",
|
||||||
"@types/react-dom": "^19.1.5",
|
"@types/react-dom": "^19.1.5",
|
||||||
"eslint": "^9.27.0",
|
"eslint": "^9.27.0",
|
||||||
"eslint-config-next": "^15.3.2",
|
"eslint-config-next": "^15.3.3",
|
||||||
"postcss": "^8.5.3",
|
"postcss": "^8.5.4",
|
||||||
"prettier": "^3.5.3",
|
"prettier": "^3.5.3",
|
||||||
"prettier-plugin-tailwindcss": "^0.6.11",
|
"prettier-plugin-tailwindcss": "^0.6.11",
|
||||||
"tailwind-merge": "^3.3.0",
|
"tailwind-merge": "^3.3.0",
|
||||||
"tailwindcss": "^4.1.8",
|
"tailwindcss": "^4.1.8",
|
||||||
"tailwindcss-animate": "^1.0.7",
|
"tailwindcss-animate": "^1.0.7",
|
||||||
"tw-animate-css": "^1.3.0",
|
"tw-animate-css": "^1.3.2",
|
||||||
"typescript": "^5.8.3",
|
"typescript": "^5.8.3",
|
||||||
"typescript-eslint": "^8.33.0"
|
"typescript-eslint": "^8.33.0"
|
||||||
},
|
},
|
||||||
|
362
pnpm-lock.yaml
generated
362
pnpm-lock.yaml
generated
@ -37,7 +37,7 @@ importers:
|
|||||||
version: 2.49.8
|
version: 2.49.8
|
||||||
'@t3-oss/env-nextjs':
|
'@t3-oss/env-nextjs':
|
||||||
specifier: ^0.12.0
|
specifier: ^0.12.0
|
||||||
version: 0.12.0(typescript@5.8.3)(zod@3.25.32)
|
version: 0.12.0(typescript@5.8.3)(zod@3.25.42)
|
||||||
class-variance-authority:
|
class-variance-authority:
|
||||||
specifier: ^0.7.1
|
specifier: ^0.7.1
|
||||||
version: 0.7.1
|
version: 0.7.1
|
||||||
@ -48,8 +48,8 @@ importers:
|
|||||||
specifier: ^0.510.0
|
specifier: ^0.510.0
|
||||||
version: 0.510.0(react@19.1.0)
|
version: 0.510.0(react@19.1.0)
|
||||||
next:
|
next:
|
||||||
specifier: ^15.3.2
|
specifier: ^15.3.3
|
||||||
version: 15.3.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
version: 15.3.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
||||||
next-themes:
|
next-themes:
|
||||||
specifier: ^0.4.6
|
specifier: ^0.4.6
|
||||||
version: 0.4.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
version: 0.4.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
||||||
@ -66,8 +66,8 @@ importers:
|
|||||||
specifier: ^2.0.3
|
specifier: ^2.0.3
|
||||||
version: 2.0.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
version: 2.0.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
|
||||||
zod:
|
zod:
|
||||||
specifier: ^3.25.32
|
specifier: ^3.25.42
|
||||||
version: 3.25.32
|
version: 3.25.42
|
||||||
devDependencies:
|
devDependencies:
|
||||||
'@eslint/eslintrc':
|
'@eslint/eslintrc':
|
||||||
specifier: ^3.3.1
|
specifier: ^3.3.1
|
||||||
@ -76,8 +76,8 @@ importers:
|
|||||||
specifier: ^4.1.8
|
specifier: ^4.1.8
|
||||||
version: 4.1.8
|
version: 4.1.8
|
||||||
'@types/node':
|
'@types/node':
|
||||||
specifier: ^20.17.51
|
specifier: ^20.17.55
|
||||||
version: 20.17.51
|
version: 20.17.55
|
||||||
'@types/react':
|
'@types/react':
|
||||||
specifier: ^19.1.6
|
specifier: ^19.1.6
|
||||||
version: 19.1.6
|
version: 19.1.6
|
||||||
@ -88,11 +88,11 @@ importers:
|
|||||||
specifier: ^9.27.0
|
specifier: ^9.27.0
|
||||||
version: 9.27.0(jiti@2.4.2)
|
version: 9.27.0(jiti@2.4.2)
|
||||||
eslint-config-next:
|
eslint-config-next:
|
||||||
specifier: ^15.3.2
|
specifier: ^15.3.3
|
||||||
version: 15.3.2(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3)
|
version: 15.3.3(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3)
|
||||||
postcss:
|
postcss:
|
||||||
specifier: ^8.5.3
|
specifier: ^8.5.4
|
||||||
version: 8.5.3
|
version: 8.5.4
|
||||||
prettier:
|
prettier:
|
||||||
specifier: ^3.5.3
|
specifier: ^3.5.3
|
||||||
version: 3.5.3
|
version: 3.5.3
|
||||||
@ -109,8 +109,8 @@ importers:
|
|||||||
specifier: ^1.0.7
|
specifier: ^1.0.7
|
||||||
version: 1.0.7(tailwindcss@4.1.8)
|
version: 1.0.7(tailwindcss@4.1.8)
|
||||||
tw-animate-css:
|
tw-animate-css:
|
||||||
specifier: ^1.3.0
|
specifier: ^1.3.2
|
||||||
version: 1.3.0
|
version: 1.3.2
|
||||||
typescript:
|
typescript:
|
||||||
specifier: ^5.8.3
|
specifier: ^5.8.3
|
||||||
version: 5.8.3
|
version: 5.8.3
|
||||||
@ -356,56 +356,56 @@ packages:
|
|||||||
'@napi-rs/wasm-runtime@0.2.10':
|
'@napi-rs/wasm-runtime@0.2.10':
|
||||||
resolution: {integrity: sha512-bCsCyeZEwVErsGmyPNSzwfwFn4OdxBj0mmv6hOFucB/k81Ojdu68RbZdxYsRQUPc9l6SU5F/cG+bXgWs3oUgsQ==}
|
resolution: {integrity: sha512-bCsCyeZEwVErsGmyPNSzwfwFn4OdxBj0mmv6hOFucB/k81Ojdu68RbZdxYsRQUPc9l6SU5F/cG+bXgWs3oUgsQ==}
|
||||||
|
|
||||||
'@next/env@15.3.2':
|
'@next/env@15.3.3':
|
||||||
resolution: {integrity: sha512-xURk++7P7qR9JG1jJtLzPzf0qEvqCN0A/T3DXf8IPMKo9/6FfjxtEffRJIIew/bIL4T3C2jLLqBor8B/zVlx6g==}
|
resolution: {integrity: sha512-OdiMrzCl2Xi0VTjiQQUK0Xh7bJHnOuET2s+3V+Y40WJBAXrJeGA3f+I8MZJ/YQ3mVGi5XGR1L66oFlgqXhQ4Vw==}
|
||||||
|
|
||||||
'@next/eslint-plugin-next@15.3.2':
|
'@next/eslint-plugin-next@15.3.3':
|
||||||
resolution: {integrity: sha512-ijVRTXBgnHT33aWnDtmlG+LJD+5vhc9AKTJPquGG5NKXjpKNjc62woIhFtrAcWdBobt8kqjCoaJ0q6sDQoX7aQ==}
|
resolution: {integrity: sha512-VKZJEiEdpKkfBmcokGjHu0vGDG+8CehGs90tBEy/IDoDDKGngeyIStt2MmE5FYNyU9BhgR7tybNWTAJY/30u+Q==}
|
||||||
|
|
||||||
'@next/swc-darwin-arm64@15.3.2':
|
'@next/swc-darwin-arm64@15.3.3':
|
||||||
resolution: {integrity: sha512-2DR6kY/OGcokbnCsjHpNeQblqCZ85/1j6njYSkzRdpLn5At7OkSdmk7WyAmB9G0k25+VgqVZ/u356OSoQZ3z0g==}
|
resolution: {integrity: sha512-WRJERLuH+O3oYB4yZNVahSVFmtxRNjNF1I1c34tYMoJb0Pve+7/RaLAJJizyYiFhjYNGHRAE1Ri2Fd23zgDqhg==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [darwin]
|
os: [darwin]
|
||||||
|
|
||||||
'@next/swc-darwin-x64@15.3.2':
|
'@next/swc-darwin-x64@15.3.3':
|
||||||
resolution: {integrity: sha512-ro/fdqaZWL6k1S/5CLv1I0DaZfDVJkWNaUU3un8Lg6m0YENWlDulmIWzV96Iou2wEYyEsZq51mwV8+XQXqMp3w==}
|
resolution: {integrity: sha512-XHdzH/yBc55lu78k/XwtuFR/ZXUTcflpRXcsu0nKmF45U96jt1tsOZhVrn5YH+paw66zOANpOnFQ9i6/j+UYvw==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [darwin]
|
os: [darwin]
|
||||||
|
|
||||||
'@next/swc-linux-arm64-gnu@15.3.2':
|
'@next/swc-linux-arm64-gnu@15.3.3':
|
||||||
resolution: {integrity: sha512-covwwtZYhlbRWK2HlYX9835qXum4xYZ3E2Mra1mdQ+0ICGoMiw1+nVAn4d9Bo7R3JqSmK1grMq/va+0cdh7bJA==}
|
resolution: {integrity: sha512-VZ3sYL2LXB8znNGcjhocikEkag/8xiLgnvQts41tq6i+wql63SMS1Q6N8RVXHw5pEUjiof+II3HkDd7GFcgkzw==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@next/swc-linux-arm64-musl@15.3.2':
|
'@next/swc-linux-arm64-musl@15.3.3':
|
||||||
resolution: {integrity: sha512-KQkMEillvlW5Qk5mtGA/3Yz0/tzpNlSw6/3/ttsV1lNtMuOHcGii3zVeXZyi4EJmmLDKYcTcByV2wVsOhDt/zg==}
|
resolution: {integrity: sha512-h6Y1fLU4RWAp1HPNJWDYBQ+e3G7sLckyBXhmH9ajn8l/RSMnhbuPBV/fXmy3muMcVwoJdHL+UtzRzs0nXOf9SA==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@next/swc-linux-x64-gnu@15.3.2':
|
'@next/swc-linux-x64-gnu@15.3.3':
|
||||||
resolution: {integrity: sha512-uRBo6THWei0chz+Y5j37qzx+BtoDRFIkDzZjlpCItBRXyMPIg079eIkOCl3aqr2tkxL4HFyJ4GHDes7W8HuAUg==}
|
resolution: {integrity: sha512-jJ8HRiF3N8Zw6hGlytCj5BiHyG/K+fnTKVDEKvUCyiQ/0r5tgwO7OgaRiOjjRoIx2vwLR+Rz8hQoPrnmFbJdfw==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@next/swc-linux-x64-musl@15.3.2':
|
'@next/swc-linux-x64-musl@15.3.3':
|
||||||
resolution: {integrity: sha512-+uxFlPuCNx/T9PdMClOqeE8USKzj8tVz37KflT3Kdbx/LOlZBRI2yxuIcmx1mPNK8DwSOMNCr4ureSet7eyC0w==}
|
resolution: {integrity: sha512-HrUcTr4N+RgiiGn3jjeT6Oo208UT/7BuTr7K0mdKRBtTbT4v9zJqCDKO97DUqqoBK1qyzP1RwvrWTvU6EPh/Cw==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@next/swc-win32-arm64-msvc@15.3.2':
|
'@next/swc-win32-arm64-msvc@15.3.3':
|
||||||
resolution: {integrity: sha512-LLTKmaI5cfD8dVzh5Vt7+OMo+AIOClEdIU/TSKbXXT2iScUTSxOGoBhfuv+FU8R9MLmrkIL1e2fBMkEEjYAtPQ==}
|
resolution: {integrity: sha512-SxorONgi6K7ZUysMtRF3mIeHC5aA3IQLmKFQzU0OuhuUYwpOBc1ypaLJLP5Bf3M9k53KUUUj4vTPwzGvl/NwlQ==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
|
|
||||||
'@next/swc-win32-x64-msvc@15.3.2':
|
'@next/swc-win32-x64-msvc@15.3.3':
|
||||||
resolution: {integrity: sha512-aW5B8wOPioJ4mBdMDXkt5f3j8pUr9W8AnlX0Df35uRWNT1Y6RIybxjnSUe+PhM+M1bwgyY8PHLmXZC6zT1o5tA==}
|
resolution: {integrity: sha512-4QZG6F8enl9/S2+yIiOiju0iCTFd93d8VC1q9LZS4p/Xuk81W2QDjCFeoogmrWWkAD59z8ZxepBQap2dKS5ruw==}
|
||||||
engines: {node: '>= 10'}
|
engines: {node: '>= 10'}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
@ -932,8 +932,8 @@ packages:
|
|||||||
'@types/json5@0.0.29':
|
'@types/json5@0.0.29':
|
||||||
resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
|
resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
|
||||||
|
|
||||||
'@types/node@20.17.51':
|
'@types/node@20.17.55':
|
||||||
resolution: {integrity: sha512-hccptBl7C8lHiKxTBsY6vYYmqpmw1E/aGR/8fmueE+B390L3pdMOpNSRvFO4ZnXzW5+p2HBXV0yNABd2vdk22Q==}
|
resolution: {integrity: sha512-ESpPDUEtW1a9nueMQtcTq/5iY/7osurPpBpFKH2VAyREKdzoFRRod6Oms0SSTfV7u52CcH7b6dFVnjfPD8fxWg==}
|
||||||
|
|
||||||
'@types/phoenix@1.6.6':
|
'@types/phoenix@1.6.6':
|
||||||
resolution: {integrity: sha512-PIzZZlEppgrpoT2QgbnDU+MMzuR6BbCjllj0bM70lWoejMeNJAxCchxnv7J3XFkI8MpygtRpzXrIlmWUBclP5A==}
|
resolution: {integrity: sha512-PIzZZlEppgrpoT2QgbnDU+MMzuR6BbCjllj0bM70lWoejMeNJAxCchxnv7J3XFkI8MpygtRpzXrIlmWUBclP5A==}
|
||||||
@ -1006,88 +1006,88 @@ packages:
|
|||||||
resolution: {integrity: sha512-7RW7CMYoskiz5OOGAWjJFxgb7c5UNjTG292gYhWeOAcFmYCtVCSqjqSBj5zMhxbXo2JOW95YYrUWJfU0zrpaGQ==}
|
resolution: {integrity: sha512-7RW7CMYoskiz5OOGAWjJFxgb7c5UNjTG292gYhWeOAcFmYCtVCSqjqSBj5zMhxbXo2JOW95YYrUWJfU0zrpaGQ==}
|
||||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||||
|
|
||||||
'@unrs/resolver-binding-darwin-arm64@1.7.5':
|
'@unrs/resolver-binding-darwin-arm64@1.7.8':
|
||||||
resolution: {integrity: sha512-efMrMFYcAY+Bg3TjHS9TIxyLW7DCkbmWyaePXA/FTuNNgzUgM9ffBoeA+4g90DjHMUuGyIcM4+96w1RoxNP3Tw==}
|
resolution: {integrity: sha512-rsRK8T7yxraNRDmpFLZCWqpea6OlXPNRRCjWMx24O1V86KFol7u2gj9zJCv6zB1oJjtnzWceuqdnCgOipFcJPA==}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [darwin]
|
os: [darwin]
|
||||||
|
|
||||||
'@unrs/resolver-binding-darwin-x64@1.7.5':
|
'@unrs/resolver-binding-darwin-x64@1.7.8':
|
||||||
resolution: {integrity: sha512-K5Usy9LwmeLohtZGOC0IxhybYluGMrtBP/l73jVNKvuk240KmblE6lphSbydrocvEZEVfTfLmba8UeoSUfnh4A==}
|
resolution: {integrity: sha512-16yEMWa+Olqkk8Kl6Bu0ltT5OgEedkSAsxcz1B3yEctrDYp3EMBu/5PPAGhWVGnwhtf3hNe3y15gfYBAjOv5tQ==}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [darwin]
|
os: [darwin]
|
||||||
|
|
||||||
'@unrs/resolver-binding-freebsd-x64@1.7.5':
|
'@unrs/resolver-binding-freebsd-x64@1.7.8':
|
||||||
resolution: {integrity: sha512-4vur1vMwq/hOkruiR24shuatm56jZo098x8ETchIewX8RbSwyTqHjnnJZ1WTLX2Vkg9hgy4RQqFpLnrL6Xp/hQ==}
|
resolution: {integrity: sha512-ST4uqF6FmdZQgv+Q73FU1uHzppeT4mhX3IIEmHlLObrv5Ep50olWRz0iQ4PWovadjHMTAmpuJAGaAuCZYb7UAQ==}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [freebsd]
|
os: [freebsd]
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-arm-gnueabihf@1.7.5':
|
'@unrs/resolver-binding-linux-arm-gnueabihf@1.7.8':
|
||||||
resolution: {integrity: sha512-/hD8IHDjlTUb1/ePHavsaHYRF8lMDh+14TXHmxC8cwqrBVoHIzGZV66z2VjBDpDUtmAutptOhfKBpRLv0O0ywA==}
|
resolution: {integrity: sha512-Z/A/4Rm2VWku2g25C3tVb986fY6unx5jaaCFpx1pbAj0OKkyuJ5wcQLHvNbIcJ9qhiYwXfrkB7JNlxrAbg7YFg==}
|
||||||
cpu: [arm]
|
cpu: [arm]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-arm-musleabihf@1.7.5':
|
'@unrs/resolver-binding-linux-arm-musleabihf@1.7.8':
|
||||||
resolution: {integrity: sha512-UPrkyN5ziuT+uRATrwabvl8JZNMt1T/fN96bZVnK3E34lQLbku99biFEUHZgXh0knJzoSoAKWfyMyyrcv4Dqfg==}
|
resolution: {integrity: sha512-HN0p7o38qKmDo3bZUiQa6gP7Qhf0sKgJZtRfSHi6JL2Gi4NaUVF0EO1sQ1RHbeQ4VvfjUGMh3QE5dxEh06BgQQ==}
|
||||||
cpu: [arm]
|
cpu: [arm]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-arm64-gnu@1.7.5':
|
'@unrs/resolver-binding-linux-arm64-gnu@1.7.8':
|
||||||
resolution: {integrity: sha512-btpXWiZystUjfNviOWjf7gwjak0h1dSrzjDGn4b8OkSIMw3Gp4yYtOMZRXxUtaaZRdnOQHqRh9+39PyK6LXQbQ==}
|
resolution: {integrity: sha512-HsoVqDBt9G69AN0KWeDNJW+7i8KFlwxrbbnJffgTGpiZd6Jw+Q95sqkXp8y458KhKduKLmXfVZGnKBTNxAgPjw==}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-arm64-musl@1.7.5':
|
'@unrs/resolver-binding-linux-arm64-musl@1.7.8':
|
||||||
resolution: {integrity: sha512-fzTDlm/RWRgHomLSabeV+/iKkAld+kUQaBJ2h0OveaV6+ZmZqEbdG9WDCe8U3/dax49mlPwZIvEnMZujzTPWCg==}
|
resolution: {integrity: sha512-VfR2yTDUbUvn+e/Aw22CC9fQg9zdShHAfwWctNBdOk7w9CHWl2OtYlcMvjzMAns8QxoHQoqn3/CEnZ4Ts7hfrA==}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-ppc64-gnu@1.7.5':
|
'@unrs/resolver-binding-linux-ppc64-gnu@1.7.8':
|
||||||
resolution: {integrity: sha512-i+9usBSko2DyFvB7iimhfDtIk9tWhg4sKh7kZC8JGfGMdhYWZ8a40VvgE/Xj8iDsX6ngVRsIsgsNCU9jPx86zw==}
|
resolution: {integrity: sha512-xUauVQNz4uDgs4UJJiUAwMe3N0PA0wvtImh7V0IFu++UKZJhssXbKHBRR4ecUJpUHCX2bc4Wc8sGsB6P+7BANg==}
|
||||||
cpu: [ppc64]
|
cpu: [ppc64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-riscv64-gnu@1.7.5':
|
'@unrs/resolver-binding-linux-riscv64-gnu@1.7.8':
|
||||||
resolution: {integrity: sha512-gpdNeCckfTMOWyZ+AjB0KpgHE2aCCoGtKDSocKwU9RkfWpeVvpcokey5l1A68WXCDE33sonekbe8Wm4+E0z7VQ==}
|
resolution: {integrity: sha512-GqyIB+CuSHGhhc8ph5RrurtNetYJjb6SctSHafqmdGcRuGi6uyTMR8l18hMEhZFsXdFMc/MpInPLvmNV22xn+A==}
|
||||||
cpu: [riscv64]
|
cpu: [riscv64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-riscv64-musl@1.7.5':
|
'@unrs/resolver-binding-linux-riscv64-musl@1.7.8':
|
||||||
resolution: {integrity: sha512-avni2nC47b0ZBCXL3lg6I3z9lyP1kKVYZXIyIsA/pcTra+Uuq0RgeWeEBc8IJ6DjGrpft7gWyyekrYK58VomGQ==}
|
resolution: {integrity: sha512-eEU3rWIFRv60xaAbtsgwHNWRZGD7cqkpCvNtio/f1TjEE3HfKLzPNB24fA9X/8ZXQrGldE65b7UKK3PmO4eWIQ==}
|
||||||
cpu: [riscv64]
|
cpu: [riscv64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-s390x-gnu@1.7.5':
|
'@unrs/resolver-binding-linux-s390x-gnu@1.7.8':
|
||||||
resolution: {integrity: sha512-GLv1+kVnVluyG8KRIl176jIoExlhgl3ASZz+VGyQpv5EwD5FqOtZHFzsRJA3xXNQlnHj3iMO4SA/HX4dc6iOvA==}
|
resolution: {integrity: sha512-GVLI0f4I4TlLqEUoOFvTWedLsJEdvsD0+sxhdvQ5s+N+m2DSynTs8h9jxR0qQbKlpHWpc2Ortz3z48NHRT4l+w==}
|
||||||
cpu: [s390x]
|
cpu: [s390x]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-x64-gnu@1.7.5':
|
'@unrs/resolver-binding-linux-x64-gnu@1.7.8':
|
||||||
resolution: {integrity: sha512-frsoBmP2ww2axFqZvIexnDF5UuO0exCZjrchM7uvPbNzZCaU+B43r6Y3ywEFsXXH6MbZNpw10Ntuwb9N0orfcg==}
|
resolution: {integrity: sha512-GX1pZ/4ncUreB0Rlp1l7bhKAZ8ZmvDIgXdeb5V2iK0eRRF332+6gRfR/r5LK88xfbtOpsmRHU6mQ4N8ZnwvGEA==}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-x64-musl@1.7.5':
|
'@unrs/resolver-binding-linux-x64-musl@1.7.8':
|
||||||
resolution: {integrity: sha512-kdI20RI0k+XcA+vuW6KB/EJbzUvRfo8PsKy2DFlX1fhTVsEXaf21nkU9C3NdTwlTkl9YvvLGNTKoJDH7yn7K8w==}
|
resolution: {integrity: sha512-n1N84MnsvDupzVuYqJGj+2pb9s8BI1A5RgXHvtVFHedGZVBCFjDpQVRlmsFMt6xZiKwDPaqsM16O/1isCUGt7w==}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
|
|
||||||
'@unrs/resolver-binding-wasm32-wasi@1.7.5':
|
'@unrs/resolver-binding-wasm32-wasi@1.7.8':
|
||||||
resolution: {integrity: sha512-6F+PAhfsokXDtLihQzomvVK0rYzSP/qkgJg4+R4RaCmE3pwFspLeyUi1Wd11hwP4FQQn5/5Yw9jraUMQpMPWCg==}
|
resolution: {integrity: sha512-x94WnaU5g+pCPDVedfnXzoG6lCOF2xFGebNwhtbJCWfceE94Zj8aysSxdxotlrZrxnz5D3ijtyFUYtpz04n39Q==}
|
||||||
engines: {node: '>=14.0.0'}
|
engines: {node: '>=14.0.0'}
|
||||||
cpu: [wasm32]
|
cpu: [wasm32]
|
||||||
|
|
||||||
'@unrs/resolver-binding-win32-arm64-msvc@1.7.5':
|
'@unrs/resolver-binding-win32-arm64-msvc@1.7.8':
|
||||||
resolution: {integrity: sha512-rZ1SRHK95gOqy7hQBcG2sxKMoKFRFAl8f+cGYayA3RRNidkY86uNsXZiWDGgIuelYXSudvAd9RElDib/Lkx7pQ==}
|
resolution: {integrity: sha512-vst2u8EJZ5L6jhJ6iLis3w9rg16aYqRxQuBAMYQRVrPMI43693hLP7DuqyOBRKgsQXy9/jgh204k0ViHkqQgdg==}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
|
|
||||||
'@unrs/resolver-binding-win32-ia32-msvc@1.7.5':
|
'@unrs/resolver-binding-win32-ia32-msvc@1.7.8':
|
||||||
resolution: {integrity: sha512-49JiW5JickDuC/VqSBlbZTqwX8sJBGBfodU/v4+vM8Eig63JOAK7bOtG8M8kxXRrkJIGhumba4cTf4QcWbMRcg==}
|
resolution: {integrity: sha512-yb3LZOLMFqnA+/ShlE1E5bpYPGDsA590VHHJPB+efnyowT776GJXBoh82em6O9WmYBUq57YblGTcMYAFBm72HA==}
|
||||||
cpu: [ia32]
|
cpu: [ia32]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
|
|
||||||
'@unrs/resolver-binding-win32-x64-msvc@1.7.5':
|
'@unrs/resolver-binding-win32-x64-msvc@1.7.8':
|
||||||
resolution: {integrity: sha512-69JcsNlbafX/FsafXswKb5M+jPXC9IRcNVz5SqEKH9+PA5jmJ6+fFyjFX1pipBRADGn+EuPhCeDcQl+CAxP+2g==}
|
resolution: {integrity: sha512-hHKFx+opG5BA3/owMXon8ypwSotBGTdblG6oda/iOu9+OEYnk0cxD2uIcGyGT8jCK578kV+xMrNxqbn8Zjlpgw==}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
|
|
||||||
@ -1203,8 +1203,8 @@ packages:
|
|||||||
resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
|
resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
|
||||||
engines: {node: '>=6'}
|
engines: {node: '>=6'}
|
||||||
|
|
||||||
caniuse-lite@1.0.30001718:
|
caniuse-lite@1.0.30001720:
|
||||||
resolution: {integrity: sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw==}
|
resolution: {integrity: sha512-Ec/2yV2nNPwb4DnTANEV99ZWwm3ZWfdlfkQbWSDDt+PsXEVYwlhPH8tdMaPunYTKKmz7AnHi2oNEi1GcmKCD8g==}
|
||||||
|
|
||||||
chalk@4.1.2:
|
chalk@4.1.2:
|
||||||
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
|
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
|
||||||
@ -1317,8 +1317,8 @@ packages:
|
|||||||
resolution: {integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==}
|
resolution: {integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==}
|
||||||
engines: {node: '>=10.13.0'}
|
engines: {node: '>=10.13.0'}
|
||||||
|
|
||||||
es-abstract@1.23.10:
|
es-abstract@1.24.0:
|
||||||
resolution: {integrity: sha512-MtUbM072wlJNyeYAe0mhzrD+M6DIJa96CZAOBBrhDbgKnB4MApIKefcyAB1eOdYn8cUNZgvwBvEzdoAYsxgEIw==}
|
resolution: {integrity: sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==}
|
||||||
engines: {node: '>= 0.4'}
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
es-define-property@1.0.1:
|
es-define-property@1.0.1:
|
||||||
@ -1353,8 +1353,8 @@ packages:
|
|||||||
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
|
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
|
|
||||||
eslint-config-next@15.3.2:
|
eslint-config-next@15.3.3:
|
||||||
resolution: {integrity: sha512-FerU4DYccO4FgeYFFglz0SnaKRe1ejXQrDb8kWUkTAg036YWi+jUsgg4sIGNCDhAsDITsZaL4MzBWKB6f4G1Dg==}
|
resolution: {integrity: sha512-QJLv/Ouk2vZnxL4b67njJwTLjTf7uZRltI0LL4GERYR4qMF5z08+gxkfODAeaK7TiC6o+cER91bDaEnwrTWV6Q==}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: ^7.23.0 || ^8.0.0 || ^9.0.0
|
eslint: ^7.23.0 || ^8.0.0 || ^9.0.0
|
||||||
typescript: '>=3.3.1'
|
typescript: '>=3.3.1'
|
||||||
@ -1680,6 +1680,10 @@ packages:
|
|||||||
resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==}
|
resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==}
|
||||||
engines: {node: '>= 0.4'}
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
|
is-negative-zero@2.0.3:
|
||||||
|
resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
|
||||||
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
is-number-object@1.1.1:
|
is-number-object@1.1.1:
|
||||||
resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==}
|
resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==}
|
||||||
engines: {node: '>= 0.4'}
|
engines: {node: '>= 0.4'}
|
||||||
@ -1916,8 +1920,8 @@ packages:
|
|||||||
react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc
|
react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc
|
||||||
react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc
|
react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc
|
||||||
|
|
||||||
next@15.3.2:
|
next@15.3.3:
|
||||||
resolution: {integrity: sha512-CA3BatMyHkxZ48sgOCLdVHjFU36N7TF1HhqAHLFOkV6buwZnvMI84Cug8xD56B9mCuKrqXnLn94417GrZ/jjCQ==}
|
resolution: {integrity: sha512-JqNj29hHNmCLtNvd090SyRbXJiivQ+58XjCcrC50Crb5g5u2zi7Y2YivbsEfzk6AtVI80akdOQbaMZwWB1Hthw==}
|
||||||
engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
|
engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -2019,8 +2023,8 @@ packages:
|
|||||||
resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==}
|
resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==}
|
||||||
engines: {node: ^10 || ^12 || >=14}
|
engines: {node: ^10 || ^12 || >=14}
|
||||||
|
|
||||||
postcss@8.5.3:
|
postcss@8.5.4:
|
||||||
resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==}
|
resolution: {integrity: sha512-QSa9EBe+uwlGTFmHsPKokv3B/oEMQZxfqW0QqNCyhpa6mB1afzulwn8hihglqAb2pOw+BJgNlmXQ8la2VeHB7w==}
|
||||||
engines: {node: ^10 || ^12 || >=14}
|
engines: {node: ^10 || ^12 || >=14}
|
||||||
|
|
||||||
prelude-ls@1.2.1:
|
prelude-ls@1.2.1:
|
||||||
@ -2256,6 +2260,10 @@ packages:
|
|||||||
stable-hash@0.0.5:
|
stable-hash@0.0.5:
|
||||||
resolution: {integrity: sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==}
|
resolution: {integrity: sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==}
|
||||||
|
|
||||||
|
stop-iteration-iterator@1.1.0:
|
||||||
|
resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==}
|
||||||
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
streamsearch@1.1.0:
|
streamsearch@1.1.0:
|
||||||
resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==}
|
resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==}
|
||||||
engines: {node: '>=10.0.0'}
|
engines: {node: '>=10.0.0'}
|
||||||
@ -2354,8 +2362,8 @@ packages:
|
|||||||
tslib@2.8.1:
|
tslib@2.8.1:
|
||||||
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
|
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
|
||||||
|
|
||||||
tw-animate-css@1.3.0:
|
tw-animate-css@1.3.2:
|
||||||
resolution: {integrity: sha512-jrJ0XenzS9KVuDThJDvnhalbl4IYiMQ/XvpA0a2FL8KmlK+6CSMviO7ROY/I7z1NnUs5NnDhlM6fXmF40xPxzw==}
|
resolution: {integrity: sha512-khGYcg4sHWFWcjpiWvy0KN0Bd6yVy6Ecc4r9ZP2u7FV+n4/Fp8MQscCWJkM0KMIRvrpGyKpIQnIbEd1hrewdeg==}
|
||||||
|
|
||||||
type-check@0.4.0:
|
type-check@0.4.0:
|
||||||
resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
|
resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
|
||||||
@ -2396,8 +2404,8 @@ packages:
|
|||||||
undici-types@6.19.8:
|
undici-types@6.19.8:
|
||||||
resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
|
resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
|
||||||
|
|
||||||
unrs-resolver@1.7.5:
|
unrs-resolver@1.7.8:
|
||||||
resolution: {integrity: sha512-DnuJxogme0dCRIdH+yIwpaNLWfff9DqcpfDh4J8qca17rOnu6e3AfNzB8mnUzjv7EgayXQkwnt1A2vT8BM9ZHA==}
|
resolution: {integrity: sha512-2zsXwyOXmCX9nGz4vhtZRYhe30V78heAv+KDc21A/KMdovGHbZcixeD5JHEF0DrFXzdytwuzYclcPbvp8A3Jlw==}
|
||||||
|
|
||||||
uri-js@4.4.1:
|
uri-js@4.4.1:
|
||||||
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
|
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
|
||||||
@ -2478,8 +2486,8 @@ packages:
|
|||||||
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
|
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
|
|
||||||
zod@3.25.32:
|
zod@3.25.42:
|
||||||
resolution: {integrity: sha512-OSm2xTIRfW8CV5/QKgngwmQW/8aPfGdaQFlrGoErlgg/Epm7cjb6K6VEyExfe65a3VybUOnu381edLb0dfJl0g==}
|
resolution: {integrity: sha512-PcALTLskaucbeHc41tU/xfjfhcz8z0GdhhDcSgrCTmSazUuqnYqiXO63M0QUBVwpBlsLsNVn5qHSC5Dw3KZvaQ==}
|
||||||
|
|
||||||
snapshots:
|
snapshots:
|
||||||
|
|
||||||
@ -2694,34 +2702,34 @@ snapshots:
|
|||||||
'@tybys/wasm-util': 0.9.0
|
'@tybys/wasm-util': 0.9.0
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@next/env@15.3.2': {}
|
'@next/env@15.3.3': {}
|
||||||
|
|
||||||
'@next/eslint-plugin-next@15.3.2':
|
'@next/eslint-plugin-next@15.3.3':
|
||||||
dependencies:
|
dependencies:
|
||||||
fast-glob: 3.3.1
|
fast-glob: 3.3.1
|
||||||
|
|
||||||
'@next/swc-darwin-arm64@15.3.2':
|
'@next/swc-darwin-arm64@15.3.3':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@next/swc-darwin-x64@15.3.2':
|
'@next/swc-darwin-x64@15.3.3':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@next/swc-linux-arm64-gnu@15.3.2':
|
'@next/swc-linux-arm64-gnu@15.3.3':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@next/swc-linux-arm64-musl@15.3.2':
|
'@next/swc-linux-arm64-musl@15.3.3':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@next/swc-linux-x64-gnu@15.3.2':
|
'@next/swc-linux-x64-gnu@15.3.3':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@next/swc-linux-x64-musl@15.3.2':
|
'@next/swc-linux-x64-musl@15.3.3':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@next/swc-win32-arm64-msvc@15.3.2':
|
'@next/swc-win32-arm64-msvc@15.3.3':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@next/swc-win32-x64-msvc@15.3.2':
|
'@next/swc-win32-x64-msvc@15.3.3':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@nodelib/fs.scandir@2.1.5':
|
'@nodelib/fs.scandir@2.1.5':
|
||||||
@ -3097,17 +3105,17 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
tslib: 2.8.1
|
tslib: 2.8.1
|
||||||
|
|
||||||
'@t3-oss/env-core@0.12.0(typescript@5.8.3)(zod@3.25.32)':
|
'@t3-oss/env-core@0.12.0(typescript@5.8.3)(zod@3.25.42)':
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
typescript: 5.8.3
|
typescript: 5.8.3
|
||||||
zod: 3.25.32
|
zod: 3.25.42
|
||||||
|
|
||||||
'@t3-oss/env-nextjs@0.12.0(typescript@5.8.3)(zod@3.25.32)':
|
'@t3-oss/env-nextjs@0.12.0(typescript@5.8.3)(zod@3.25.42)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@t3-oss/env-core': 0.12.0(typescript@5.8.3)(zod@3.25.32)
|
'@t3-oss/env-core': 0.12.0(typescript@5.8.3)(zod@3.25.42)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
typescript: 5.8.3
|
typescript: 5.8.3
|
||||||
zod: 3.25.32
|
zod: 3.25.42
|
||||||
|
|
||||||
'@tailwindcss/node@4.1.8':
|
'@tailwindcss/node@4.1.8':
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -3178,7 +3186,7 @@ snapshots:
|
|||||||
'@alloc/quick-lru': 5.2.0
|
'@alloc/quick-lru': 5.2.0
|
||||||
'@tailwindcss/node': 4.1.8
|
'@tailwindcss/node': 4.1.8
|
||||||
'@tailwindcss/oxide': 4.1.8
|
'@tailwindcss/oxide': 4.1.8
|
||||||
postcss: 8.5.3
|
postcss: 8.5.4
|
||||||
tailwindcss: 4.1.8
|
tailwindcss: 4.1.8
|
||||||
|
|
||||||
'@tybys/wasm-util@0.9.0':
|
'@tybys/wasm-util@0.9.0':
|
||||||
@ -3192,7 +3200,7 @@ snapshots:
|
|||||||
|
|
||||||
'@types/json5@0.0.29': {}
|
'@types/json5@0.0.29': {}
|
||||||
|
|
||||||
'@types/node@20.17.51':
|
'@types/node@20.17.55':
|
||||||
dependencies:
|
dependencies:
|
||||||
undici-types: 6.19.8
|
undici-types: 6.19.8
|
||||||
|
|
||||||
@ -3208,7 +3216,7 @@ snapshots:
|
|||||||
|
|
||||||
'@types/ws@8.18.1':
|
'@types/ws@8.18.1':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 20.17.51
|
'@types/node': 20.17.55
|
||||||
|
|
||||||
'@typescript-eslint/eslint-plugin@8.33.0(@typescript-eslint/parser@8.33.0(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3)':
|
'@typescript-eslint/eslint-plugin@8.33.0(@typescript-eslint/parser@8.33.0(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3)':
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -3302,57 +3310,57 @@ snapshots:
|
|||||||
'@typescript-eslint/types': 8.33.0
|
'@typescript-eslint/types': 8.33.0
|
||||||
eslint-visitor-keys: 4.2.0
|
eslint-visitor-keys: 4.2.0
|
||||||
|
|
||||||
'@unrs/resolver-binding-darwin-arm64@1.7.5':
|
'@unrs/resolver-binding-darwin-arm64@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-darwin-x64@1.7.5':
|
'@unrs/resolver-binding-darwin-x64@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-freebsd-x64@1.7.5':
|
'@unrs/resolver-binding-freebsd-x64@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-arm-gnueabihf@1.7.5':
|
'@unrs/resolver-binding-linux-arm-gnueabihf@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-arm-musleabihf@1.7.5':
|
'@unrs/resolver-binding-linux-arm-musleabihf@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-arm64-gnu@1.7.5':
|
'@unrs/resolver-binding-linux-arm64-gnu@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-arm64-musl@1.7.5':
|
'@unrs/resolver-binding-linux-arm64-musl@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-ppc64-gnu@1.7.5':
|
'@unrs/resolver-binding-linux-ppc64-gnu@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-riscv64-gnu@1.7.5':
|
'@unrs/resolver-binding-linux-riscv64-gnu@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-riscv64-musl@1.7.5':
|
'@unrs/resolver-binding-linux-riscv64-musl@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-s390x-gnu@1.7.5':
|
'@unrs/resolver-binding-linux-s390x-gnu@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-x64-gnu@1.7.5':
|
'@unrs/resolver-binding-linux-x64-gnu@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-linux-x64-musl@1.7.5':
|
'@unrs/resolver-binding-linux-x64-musl@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-wasm32-wasi@1.7.5':
|
'@unrs/resolver-binding-wasm32-wasi@1.7.8':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@napi-rs/wasm-runtime': 0.2.10
|
'@napi-rs/wasm-runtime': 0.2.10
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-win32-arm64-msvc@1.7.5':
|
'@unrs/resolver-binding-win32-arm64-msvc@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-win32-ia32-msvc@1.7.5':
|
'@unrs/resolver-binding-win32-ia32-msvc@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@unrs/resolver-binding-win32-x64-msvc@1.7.5':
|
'@unrs/resolver-binding-win32-x64-msvc@1.7.8':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
acorn-jsx@5.3.2(acorn@8.14.1):
|
acorn-jsx@5.3.2(acorn@8.14.1):
|
||||||
@ -3389,7 +3397,7 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-object-atoms: 1.1.1
|
es-object-atoms: 1.1.1
|
||||||
get-intrinsic: 1.3.0
|
get-intrinsic: 1.3.0
|
||||||
is-string: 1.1.1
|
is-string: 1.1.1
|
||||||
@ -3398,7 +3406,7 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-errors: 1.3.0
|
es-errors: 1.3.0
|
||||||
es-object-atoms: 1.1.1
|
es-object-atoms: 1.1.1
|
||||||
es-shim-unscopables: 1.1.0
|
es-shim-unscopables: 1.1.0
|
||||||
@ -3408,7 +3416,7 @@ snapshots:
|
|||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
call-bound: 1.0.4
|
call-bound: 1.0.4
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-errors: 1.3.0
|
es-errors: 1.3.0
|
||||||
es-object-atoms: 1.1.1
|
es-object-atoms: 1.1.1
|
||||||
es-shim-unscopables: 1.1.0
|
es-shim-unscopables: 1.1.0
|
||||||
@ -3417,21 +3425,21 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-shim-unscopables: 1.1.0
|
es-shim-unscopables: 1.1.0
|
||||||
|
|
||||||
array.prototype.flatmap@1.3.3:
|
array.prototype.flatmap@1.3.3:
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-shim-unscopables: 1.1.0
|
es-shim-unscopables: 1.1.0
|
||||||
|
|
||||||
array.prototype.tosorted@1.1.4:
|
array.prototype.tosorted@1.1.4:
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-errors: 1.3.0
|
es-errors: 1.3.0
|
||||||
es-shim-unscopables: 1.1.0
|
es-shim-unscopables: 1.1.0
|
||||||
|
|
||||||
@ -3440,7 +3448,7 @@ snapshots:
|
|||||||
array-buffer-byte-length: 1.0.2
|
array-buffer-byte-length: 1.0.2
|
||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-errors: 1.3.0
|
es-errors: 1.3.0
|
||||||
get-intrinsic: 1.3.0
|
get-intrinsic: 1.3.0
|
||||||
is-array-buffer: 3.0.5
|
is-array-buffer: 3.0.5
|
||||||
@ -3495,7 +3503,7 @@ snapshots:
|
|||||||
|
|
||||||
callsites@3.1.0: {}
|
callsites@3.1.0: {}
|
||||||
|
|
||||||
caniuse-lite@1.0.30001718: {}
|
caniuse-lite@1.0.30001720: {}
|
||||||
|
|
||||||
chalk@4.1.2:
|
chalk@4.1.2:
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -3605,7 +3613,7 @@ snapshots:
|
|||||||
graceful-fs: 4.2.11
|
graceful-fs: 4.2.11
|
||||||
tapable: 2.2.2
|
tapable: 2.2.2
|
||||||
|
|
||||||
es-abstract@1.23.10:
|
es-abstract@1.24.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
array-buffer-byte-length: 1.0.2
|
array-buffer-byte-length: 1.0.2
|
||||||
arraybuffer.prototype.slice: 1.0.4
|
arraybuffer.prototype.slice: 1.0.4
|
||||||
@ -3634,7 +3642,9 @@ snapshots:
|
|||||||
is-array-buffer: 3.0.5
|
is-array-buffer: 3.0.5
|
||||||
is-callable: 1.2.7
|
is-callable: 1.2.7
|
||||||
is-data-view: 1.0.2
|
is-data-view: 1.0.2
|
||||||
|
is-negative-zero: 2.0.3
|
||||||
is-regex: 1.2.1
|
is-regex: 1.2.1
|
||||||
|
is-set: 2.0.3
|
||||||
is-shared-array-buffer: 1.0.4
|
is-shared-array-buffer: 1.0.4
|
||||||
is-string: 1.1.1
|
is-string: 1.1.1
|
||||||
is-typed-array: 1.1.15
|
is-typed-array: 1.1.15
|
||||||
@ -3649,6 +3659,7 @@ snapshots:
|
|||||||
safe-push-apply: 1.0.0
|
safe-push-apply: 1.0.0
|
||||||
safe-regex-test: 1.1.0
|
safe-regex-test: 1.1.0
|
||||||
set-proto: 1.0.0
|
set-proto: 1.0.0
|
||||||
|
stop-iteration-iterator: 1.1.0
|
||||||
string.prototype.trim: 1.2.10
|
string.prototype.trim: 1.2.10
|
||||||
string.prototype.trimend: 1.0.9
|
string.prototype.trimend: 1.0.9
|
||||||
string.prototype.trimstart: 1.0.8
|
string.prototype.trimstart: 1.0.8
|
||||||
@ -3668,7 +3679,7 @@ snapshots:
|
|||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
call-bound: 1.0.4
|
call-bound: 1.0.4
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-errors: 1.3.0
|
es-errors: 1.3.0
|
||||||
es-set-tostringtag: 2.1.0
|
es-set-tostringtag: 2.1.0
|
||||||
function-bind: 1.1.2
|
function-bind: 1.1.2
|
||||||
@ -3705,9 +3716,9 @@ snapshots:
|
|||||||
|
|
||||||
escape-string-regexp@4.0.0: {}
|
escape-string-regexp@4.0.0: {}
|
||||||
|
|
||||||
eslint-config-next@15.3.2(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3):
|
eslint-config-next@15.3.3(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@next/eslint-plugin-next': 15.3.2
|
'@next/eslint-plugin-next': 15.3.3
|
||||||
'@rushstack/eslint-patch': 1.11.0
|
'@rushstack/eslint-patch': 1.11.0
|
||||||
'@typescript-eslint/eslint-plugin': 8.33.0(@typescript-eslint/parser@8.33.0(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3)
|
'@typescript-eslint/eslint-plugin': 8.33.0(@typescript-eslint/parser@8.33.0(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3)
|
||||||
'@typescript-eslint/parser': 8.33.0(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3)
|
'@typescript-eslint/parser': 8.33.0(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3)
|
||||||
@ -3742,7 +3753,7 @@ snapshots:
|
|||||||
is-bun-module: 2.0.0
|
is-bun-module: 2.0.0
|
||||||
stable-hash: 0.0.5
|
stable-hash: 0.0.5
|
||||||
tinyglobby: 0.2.14
|
tinyglobby: 0.2.14
|
||||||
unrs-resolver: 1.7.5
|
unrs-resolver: 1.7.8
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.33.0(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.27.0(jiti@2.4.2))
|
eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.33.0(eslint@9.27.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.27.0(jiti@2.4.2))
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
@ -4125,6 +4136,8 @@ snapshots:
|
|||||||
|
|
||||||
is-map@2.0.3: {}
|
is-map@2.0.3: {}
|
||||||
|
|
||||||
|
is-negative-zero@2.0.3: {}
|
||||||
|
|
||||||
is-number-object@1.1.1:
|
is-number-object@1.1.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bound: 1.0.4
|
call-bound: 1.0.4
|
||||||
@ -4327,26 +4340,26 @@ snapshots:
|
|||||||
react: 19.1.0
|
react: 19.1.0
|
||||||
react-dom: 19.1.0(react@19.1.0)
|
react-dom: 19.1.0(react@19.1.0)
|
||||||
|
|
||||||
next@15.3.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
|
next@15.3.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@next/env': 15.3.2
|
'@next/env': 15.3.3
|
||||||
'@swc/counter': 0.1.3
|
'@swc/counter': 0.1.3
|
||||||
'@swc/helpers': 0.5.15
|
'@swc/helpers': 0.5.15
|
||||||
busboy: 1.6.0
|
busboy: 1.6.0
|
||||||
caniuse-lite: 1.0.30001718
|
caniuse-lite: 1.0.30001720
|
||||||
postcss: 8.4.31
|
postcss: 8.4.31
|
||||||
react: 19.1.0
|
react: 19.1.0
|
||||||
react-dom: 19.1.0(react@19.1.0)
|
react-dom: 19.1.0(react@19.1.0)
|
||||||
styled-jsx: 5.1.6(react@19.1.0)
|
styled-jsx: 5.1.6(react@19.1.0)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@next/swc-darwin-arm64': 15.3.2
|
'@next/swc-darwin-arm64': 15.3.3
|
||||||
'@next/swc-darwin-x64': 15.3.2
|
'@next/swc-darwin-x64': 15.3.3
|
||||||
'@next/swc-linux-arm64-gnu': 15.3.2
|
'@next/swc-linux-arm64-gnu': 15.3.3
|
||||||
'@next/swc-linux-arm64-musl': 15.3.2
|
'@next/swc-linux-arm64-musl': 15.3.3
|
||||||
'@next/swc-linux-x64-gnu': 15.3.2
|
'@next/swc-linux-x64-gnu': 15.3.3
|
||||||
'@next/swc-linux-x64-musl': 15.3.2
|
'@next/swc-linux-x64-musl': 15.3.3
|
||||||
'@next/swc-win32-arm64-msvc': 15.3.2
|
'@next/swc-win32-arm64-msvc': 15.3.3
|
||||||
'@next/swc-win32-x64-msvc': 15.3.2
|
'@next/swc-win32-x64-msvc': 15.3.3
|
||||||
sharp: 0.34.2
|
sharp: 0.34.2
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- '@babel/core'
|
- '@babel/core'
|
||||||
@ -4378,14 +4391,14 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-object-atoms: 1.1.1
|
es-object-atoms: 1.1.1
|
||||||
|
|
||||||
object.groupby@1.0.3:
|
object.groupby@1.0.3:
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
|
|
||||||
object.values@1.2.1:
|
object.values@1.2.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -4441,7 +4454,7 @@ snapshots:
|
|||||||
picocolors: 1.1.1
|
picocolors: 1.1.1
|
||||||
source-map-js: 1.2.1
|
source-map-js: 1.2.1
|
||||||
|
|
||||||
postcss@8.5.3:
|
postcss@8.5.4:
|
||||||
dependencies:
|
dependencies:
|
||||||
nanoid: 3.3.11
|
nanoid: 3.3.11
|
||||||
picocolors: 1.1.1
|
picocolors: 1.1.1
|
||||||
@ -4509,7 +4522,7 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-errors: 1.3.0
|
es-errors: 1.3.0
|
||||||
es-object-atoms: 1.1.1
|
es-object-atoms: 1.1.1
|
||||||
get-intrinsic: 1.3.0
|
get-intrinsic: 1.3.0
|
||||||
@ -4671,20 +4684,25 @@ snapshots:
|
|||||||
|
|
||||||
stable-hash@0.0.5: {}
|
stable-hash@0.0.5: {}
|
||||||
|
|
||||||
|
stop-iteration-iterator@1.1.0:
|
||||||
|
dependencies:
|
||||||
|
es-errors: 1.3.0
|
||||||
|
internal-slot: 1.1.0
|
||||||
|
|
||||||
streamsearch@1.1.0: {}
|
streamsearch@1.1.0: {}
|
||||||
|
|
||||||
string.prototype.includes@2.0.1:
|
string.prototype.includes@2.0.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
|
|
||||||
string.prototype.matchall@4.0.12:
|
string.prototype.matchall@4.0.12:
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.8
|
call-bind: 1.0.8
|
||||||
call-bound: 1.0.4
|
call-bound: 1.0.4
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-errors: 1.3.0
|
es-errors: 1.3.0
|
||||||
es-object-atoms: 1.1.1
|
es-object-atoms: 1.1.1
|
||||||
get-intrinsic: 1.3.0
|
get-intrinsic: 1.3.0
|
||||||
@ -4698,7 +4716,7 @@ snapshots:
|
|||||||
string.prototype.repeat@1.0.0:
|
string.prototype.repeat@1.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
|
|
||||||
string.prototype.trim@1.2.10:
|
string.prototype.trim@1.2.10:
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -4706,7 +4724,7 @@ snapshots:
|
|||||||
call-bound: 1.0.4
|
call-bound: 1.0.4
|
||||||
define-data-property: 1.1.4
|
define-data-property: 1.1.4
|
||||||
define-properties: 1.2.1
|
define-properties: 1.2.1
|
||||||
es-abstract: 1.23.10
|
es-abstract: 1.24.0
|
||||||
es-object-atoms: 1.1.1
|
es-object-atoms: 1.1.1
|
||||||
has-property-descriptors: 1.0.2
|
has-property-descriptors: 1.0.2
|
||||||
|
|
||||||
@ -4781,7 +4799,7 @@ snapshots:
|
|||||||
|
|
||||||
tslib@2.8.1: {}
|
tslib@2.8.1: {}
|
||||||
|
|
||||||
tw-animate-css@1.3.0: {}
|
tw-animate-css@1.3.2: {}
|
||||||
|
|
||||||
type-check@0.4.0:
|
type-check@0.4.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -4841,27 +4859,27 @@ snapshots:
|
|||||||
|
|
||||||
undici-types@6.19.8: {}
|
undici-types@6.19.8: {}
|
||||||
|
|
||||||
unrs-resolver@1.7.5:
|
unrs-resolver@1.7.8:
|
||||||
dependencies:
|
dependencies:
|
||||||
napi-postinstall: 0.2.4
|
napi-postinstall: 0.2.4
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@unrs/resolver-binding-darwin-arm64': 1.7.5
|
'@unrs/resolver-binding-darwin-arm64': 1.7.8
|
||||||
'@unrs/resolver-binding-darwin-x64': 1.7.5
|
'@unrs/resolver-binding-darwin-x64': 1.7.8
|
||||||
'@unrs/resolver-binding-freebsd-x64': 1.7.5
|
'@unrs/resolver-binding-freebsd-x64': 1.7.8
|
||||||
'@unrs/resolver-binding-linux-arm-gnueabihf': 1.7.5
|
'@unrs/resolver-binding-linux-arm-gnueabihf': 1.7.8
|
||||||
'@unrs/resolver-binding-linux-arm-musleabihf': 1.7.5
|
'@unrs/resolver-binding-linux-arm-musleabihf': 1.7.8
|
||||||
'@unrs/resolver-binding-linux-arm64-gnu': 1.7.5
|
'@unrs/resolver-binding-linux-arm64-gnu': 1.7.8
|
||||||
'@unrs/resolver-binding-linux-arm64-musl': 1.7.5
|
'@unrs/resolver-binding-linux-arm64-musl': 1.7.8
|
||||||
'@unrs/resolver-binding-linux-ppc64-gnu': 1.7.5
|
'@unrs/resolver-binding-linux-ppc64-gnu': 1.7.8
|
||||||
'@unrs/resolver-binding-linux-riscv64-gnu': 1.7.5
|
'@unrs/resolver-binding-linux-riscv64-gnu': 1.7.8
|
||||||
'@unrs/resolver-binding-linux-riscv64-musl': 1.7.5
|
'@unrs/resolver-binding-linux-riscv64-musl': 1.7.8
|
||||||
'@unrs/resolver-binding-linux-s390x-gnu': 1.7.5
|
'@unrs/resolver-binding-linux-s390x-gnu': 1.7.8
|
||||||
'@unrs/resolver-binding-linux-x64-gnu': 1.7.5
|
'@unrs/resolver-binding-linux-x64-gnu': 1.7.8
|
||||||
'@unrs/resolver-binding-linux-x64-musl': 1.7.5
|
'@unrs/resolver-binding-linux-x64-musl': 1.7.8
|
||||||
'@unrs/resolver-binding-wasm32-wasi': 1.7.5
|
'@unrs/resolver-binding-wasm32-wasi': 1.7.8
|
||||||
'@unrs/resolver-binding-win32-arm64-msvc': 1.7.5
|
'@unrs/resolver-binding-win32-arm64-msvc': 1.7.8
|
||||||
'@unrs/resolver-binding-win32-ia32-msvc': 1.7.5
|
'@unrs/resolver-binding-win32-ia32-msvc': 1.7.8
|
||||||
'@unrs/resolver-binding-win32-x64-msvc': 1.7.5
|
'@unrs/resolver-binding-win32-x64-msvc': 1.7.8
|
||||||
|
|
||||||
uri-js@4.4.1:
|
uri-js@4.4.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -4946,4 +4964,4 @@ snapshots:
|
|||||||
|
|
||||||
yocto-queue@0.1.0: {}
|
yocto-queue@0.1.0: {}
|
||||||
|
|
||||||
zod@3.25.32: {}
|
zod@3.25.42: {}
|
||||||
|
@ -1,24 +1,77 @@
|
|||||||
|
'use server';
|
||||||
|
|
||||||
|
import 'server-only';
|
||||||
import { createServerClient } from '@/utils/supabase';
|
import { createServerClient } from '@/utils/supabase';
|
||||||
import { NextResponse } from 'next/server';
|
import { NextResponse } from 'next/server';
|
||||||
|
|
||||||
export async function GET(request: Request) {
|
export const GET = async (request: Request) => {
|
||||||
// The `/auth/callback` route is required for the server-side auth flow implemented
|
|
||||||
// by the SSR package. It exchanges an auth code for the user's session.
|
|
||||||
// https://supabase.com/docs/guides/auth/server-side/nextjs
|
|
||||||
const requestUrl = new URL(request.url);
|
const requestUrl = new URL(request.url);
|
||||||
const code = requestUrl.searchParams.get('code');
|
const code = requestUrl.searchParams.get('code');
|
||||||
|
const token = requestUrl.searchParams.get('token');
|
||||||
|
const type = requestUrl.searchParams.get('type');
|
||||||
const origin = requestUrl.origin;
|
const origin = requestUrl.origin;
|
||||||
const redirectTo = requestUrl.searchParams.get('redirect_to')?.toString();
|
const redirectTo = requestUrl.searchParams.get('redirect_to')?.toString();
|
||||||
|
|
||||||
|
const supabase = await createServerClient();
|
||||||
|
|
||||||
|
if (token && type) {
|
||||||
|
try {
|
||||||
|
if (type === 'signup') {
|
||||||
|
// Confirm email signup
|
||||||
|
const { error } = await supabase.auth.verifyOtp({
|
||||||
|
token_hash: token,
|
||||||
|
type: 'signup',
|
||||||
|
});
|
||||||
|
|
||||||
|
if (error) {
|
||||||
|
console.error('Email confirmation error:', error);
|
||||||
|
return NextResponse.redirect(`${origin}/sign-in?error=Invalid or expired confirmation link`);
|
||||||
|
}
|
||||||
|
} else if (type === 'recovery') {
|
||||||
|
// Handle password recovery
|
||||||
|
const { error } = await supabase.auth.verifyOtp({
|
||||||
|
token_hash: token,
|
||||||
|
type: 'recovery',
|
||||||
|
});
|
||||||
|
|
||||||
|
if (error) {
|
||||||
|
console.error('Password recovery error:', error);
|
||||||
|
return NextResponse.redirect(`${origin}/sign-in?error=Invalid or expired reset link`);
|
||||||
|
} else {
|
||||||
|
return NextResponse.redirect(`${origin}/reset-password`);
|
||||||
|
}
|
||||||
|
} else if (type === 'email_change') {
|
||||||
|
// Handle email change
|
||||||
|
const { error } = await supabase.auth.verifyOtp({
|
||||||
|
token_hash: token,
|
||||||
|
type: 'email_change',
|
||||||
|
});
|
||||||
|
|
||||||
|
if (error) {
|
||||||
|
console.error('Email change error:', error);
|
||||||
|
return NextResponse.redirect(`${origin}/profile?error=Invalid or expired email change link`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Verification error:', error);
|
||||||
|
return NextResponse.redirect(`${origin}/sign-in?error=Verification failed`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Handle code-based flow (OAuth, etc.)
|
||||||
if (code) {
|
if (code) {
|
||||||
const supabase = await createServerClient();
|
|
||||||
await supabase.auth.exchangeCodeForSession(code);
|
await supabase.auth.exchangeCodeForSession(code);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Handle redirect
|
||||||
if (redirectTo) {
|
if (redirectTo) {
|
||||||
return NextResponse.redirect(`${origin}${redirectTo}`);
|
try {
|
||||||
|
new URL(redirectTo);
|
||||||
|
return NextResponse.redirect(redirectTo);
|
||||||
|
} catch {
|
||||||
|
return NextResponse.redirect(`${origin}${redirectTo}`);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// URL to redirect to after sign up process completes
|
|
||||||
return NextResponse.redirect(origin);
|
return NextResponse.redirect(origin);
|
||||||
}
|
}
|
||||||
|
24
src/app/(auth-pages)/auth/callback/route.ts.bak
Normal file
24
src/app/(auth-pages)/auth/callback/route.ts.bak
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
import { createServerClient } from '@/utils/supabase';
|
||||||
|
import { NextResponse } from 'next/server';
|
||||||
|
|
||||||
|
export const GET = async (request: Request) => {
|
||||||
|
// The `/auth/callback` route is required for the server-side auth flow implemented
|
||||||
|
// by the SSR package. It exchanges an auth code for the user's session.
|
||||||
|
// https://supabase.com/docs/guides/auth/server-side/nextjs
|
||||||
|
const requestUrl = new URL(request.url);
|
||||||
|
const code = requestUrl.searchParams.get('code');
|
||||||
|
const origin = requestUrl.origin;
|
||||||
|
const redirectTo = requestUrl.searchParams.get('redirect_to')?.toString();
|
||||||
|
|
||||||
|
if (code) {
|
||||||
|
const supabase = await createServerClient();
|
||||||
|
await supabase.auth.exchangeCodeForSession(code);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (redirectTo) {
|
||||||
|
return NextResponse.redirect(`${origin}${redirectTo}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
// URL to redirect to after sign up process completes
|
||||||
|
return NextResponse.redirect(origin);
|
||||||
|
}
|
@ -3,7 +3,6 @@ import { getUser, signIn } from '@/lib/actions';
|
|||||||
import { FormMessage, type Message, SubmitButton } from '@/components/default';
|
import { FormMessage, type Message, SubmitButton } from '@/components/default';
|
||||||
import { Input, Label } from '@/components/ui';
|
import { Input, Label } from '@/components/ui';
|
||||||
import { redirect } from 'next/navigation';
|
import { redirect } from 'next/navigation';
|
||||||
import type { User } from '@/utils/supabase';
|
|
||||||
|
|
||||||
const Login = async (props: { searchParams: Promise<Message> }) => {
|
const Login = async (props: { searchParams: Promise<Message> }) => {
|
||||||
const searchParams = await props.searchParams;
|
const searchParams = await props.searchParams;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
import React, { createContext, useContext, useState, useEffect, type ReactNode } from 'react';
|
import React, { createContext, useContext, useState, useEffect, type ReactNode } from 'react';
|
||||||
import { getUser, getProfile, updateProfile as updateProfileAction, getSignedUrl } from '@/lib/actions';
|
import { getUser, getProfile, updateProfile as updateProfileAction, getSignedUrl } from '@/lib/actions';
|
||||||
import type { User, Profile } from '@/utils/supabase';
|
import { type User, type Profile, createClient } from '@/utils/supabase';
|
||||||
import { toast } from 'sonner';
|
import { toast } from 'sonner';
|
||||||
|
|
||||||
type AuthContextType = {
|
type AuthContextType = {
|
||||||
@ -72,15 +72,32 @@ export const AuthProvider = ({ children }: { children: ReactNode }) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
const supabase = createClient();
|
||||||
fetchUserData().catch((error) => {
|
fetchUserData().catch((error) => {
|
||||||
console.error('Error fetching user data:', error);
|
console.error('Error fetching user data:', error);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const {
|
||||||
|
data: { subscription },
|
||||||
|
} = supabase.auth.onAuthStateChange(async (event, session) => {
|
||||||
|
if (event === 'SIGNED_IN' || event === 'TOKEN_REFRESHED') {
|
||||||
|
await fetchUserData();
|
||||||
|
} else if (event === 'SIGNED_OUT') {
|
||||||
|
setUser(null);
|
||||||
|
setProfile(null);
|
||||||
|
setAvatarUrl(null);
|
||||||
|
setIsLoading(false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
const intervalId = setInterval(() => {
|
const intervalId = setInterval(() => {
|
||||||
void fetchUserData();
|
void fetchUserData();
|
||||||
}, 30 * 60 * 1000);
|
}, 1 * 60 * 1000);
|
||||||
|
|
||||||
return () => clearInterval(intervalId);
|
return () => {
|
||||||
|
subscription.unsubscribe();
|
||||||
|
clearInterval(intervalId);
|
||||||
|
};
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const updateProfile = async (data: {
|
const updateProfile = async (data: {
|
||||||
|
@ -3,17 +3,18 @@
|
|||||||
import 'server-only';
|
import 'server-only';
|
||||||
import { encodedRedirect } from '@/utils/utils';
|
import { encodedRedirect } from '@/utils/utils';
|
||||||
import { createServerClient } from '@/utils/supabase';
|
import { createServerClient } from '@/utils/supabase';
|
||||||
import type { User } from '@supabase/supabase-js';
|
|
||||||
import { headers } from 'next/headers';
|
import { headers } from 'next/headers';
|
||||||
import { redirect } from 'next/navigation';
|
import { redirect } from 'next/navigation';
|
||||||
|
import type { User } from '@/utils/supabase';
|
||||||
import type { Result } from './index';
|
import type { Result } from './index';
|
||||||
|
import { revalidatePath } from 'next/cache';
|
||||||
|
|
||||||
export const signUp = async (formData: FormData) => {
|
export const signUp = async (formData: FormData) => {
|
||||||
const name = formData.get('name') as string;
|
const name = formData.get('name') as string;
|
||||||
const email = formData.get('email') as string;
|
const email = formData.get('email') as string;
|
||||||
const password = formData.get('password') as string;
|
const password = formData.get('password') as string;
|
||||||
const supabase = await createServerClient();
|
const supabase = await createServerClient();
|
||||||
//const origin = (await headers()).get('origin');
|
const origin = (await headers()).get('origin');
|
||||||
|
|
||||||
if (!email || !password) {
|
if (!email || !password) {
|
||||||
return encodedRedirect(
|
return encodedRedirect(
|
||||||
@ -23,36 +24,26 @@ export const signUp = async (formData: FormData) => {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
const { data, error } = await supabase.auth.signUp({
|
const { error } = await supabase.auth.signUp({
|
||||||
email,
|
email,
|
||||||
password,
|
password,
|
||||||
//options: {
|
options: {
|
||||||
//emailRedirectTo: `${origin}/auth/callback`,
|
emailRedirectTo: `${origin}/auth/callback`,
|
||||||
//},
|
data: {
|
||||||
|
full_name: name,
|
||||||
|
email,
|
||||||
|
provider: 'email',
|
||||||
|
},
|
||||||
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
if (error) {
|
if (error) {
|
||||||
return redirect('/');
|
return encodedRedirect('error', '/sign-up', error.message);
|
||||||
//return encodedRedirect('error', '/sign-up',
|
|
||||||
//'Thanks for signing up! Please check your email for a verification link.');
|
|
||||||
} else {
|
} else {
|
||||||
try {
|
return encodedRedirect(
|
||||||
if (!data.user) throw new Error('Could not sign up');
|
'success',
|
||||||
const { error } = await supabase
|
'/sign-up',
|
||||||
.from('profiles')
|
'Thanks for signing up! Please check your email for a verification link.',
|
||||||
.update({
|
);
|
||||||
full_name: name,
|
|
||||||
provider: 'email',
|
|
||||||
})
|
|
||||||
.eq('id', data.user.id);
|
|
||||||
if (error) throw new Error('Could not update profile');
|
|
||||||
} catch (error) {
|
|
||||||
console.error('Error updating profile: ', error);
|
|
||||||
} finally {
|
|
||||||
return redirect('/');
|
|
||||||
//return encodedRedirect('success', '/',
|
|
||||||
//'Thanks for signing up! Please check your email for a verification link.);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -68,8 +59,9 @@ export const signIn = async (formData: FormData) => {
|
|||||||
|
|
||||||
if (error) {
|
if (error) {
|
||||||
return encodedRedirect('error', '/sign-in', error.message);
|
return encodedRedirect('error', '/sign-in', error.message);
|
||||||
|
} else {
|
||||||
|
return redirect('/');
|
||||||
}
|
}
|
||||||
return redirect('/');
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export const forgotPassword = async (formData: FormData) => {
|
export const forgotPassword = async (formData: FormData) => {
|
||||||
@ -147,10 +139,8 @@ export const resetPassword = async (
|
|||||||
|
|
||||||
|
|
||||||
export const resetPasswordFromEmail = async (formData: FormData) => {
|
export const resetPasswordFromEmail = async (formData: FormData) => {
|
||||||
|
|
||||||
const password = formData.get('password') as string;
|
const password = formData.get('password') as string;
|
||||||
const confirmPassword = formData.get('confirmPassword') as string;
|
const confirmPassword = formData.get('confirmPassword') as string;
|
||||||
|
|
||||||
if (!password || !confirmPassword) {
|
if (!password || !confirmPassword) {
|
||||||
encodedRedirect(
|
encodedRedirect(
|
||||||
'error',
|
'error',
|
||||||
@ -158,7 +148,6 @@ export const resetPasswordFromEmail = async (formData: FormData) => {
|
|||||||
'Password and confirm password are required',
|
'Password and confirm password are required',
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
const supabase = await createServerClient();
|
const supabase = await createServerClient();
|
||||||
|
|
||||||
if (password !== confirmPassword) {
|
if (password !== confirmPassword) {
|
||||||
|
@ -45,7 +45,7 @@ export const resizeImage = async ({
|
|||||||
(blob) => {
|
(blob) => {
|
||||||
if (!blob) return;
|
if (!blob) return;
|
||||||
const resizedFile = new File([blob], file.name, {
|
const resizedFile = new File([blob], file.name, {
|
||||||
type: 'imgage/jpeg',
|
type: 'image/jpeg',
|
||||||
lastModified: Date.now(),
|
lastModified: Date.now(),
|
||||||
});
|
});
|
||||||
resolve(resizedFile);
|
resolve(resizedFile);
|
||||||
|
@ -76,8 +76,24 @@ create policy "Anyone can upload an avatar." on storage.objects
|
|||||||
-- CREATE POLICY "Public statuses are viewable by everyone." ON statuses
|
-- CREATE POLICY "Public statuses are viewable by everyone." ON statuses
|
||||||
-- FOR SELECT USING (true);
|
-- FOR SELECT USING (true);
|
||||||
|
|
||||||
-- CREATE POLICY "Users can insert statuses for any user." ON statuses
|
-- -- RECREATE it using the recommended sub-select form
|
||||||
-- FOR INSERT WITH CHECK (auth.role() = 'authenticated');
|
-- CREATE POLICY "Authenticated users can insert statuses for any user."
|
||||||
|
-- ON public.statuses
|
||||||
|
-- FOR INSERT
|
||||||
|
-- WITH CHECK (
|
||||||
|
-- (SELECT auth.role()) = 'authenticated'
|
||||||
|
-- );
|
||||||
|
|
||||||
|
-- -- ADD an UPDATE policy so anyone signed-in can update *any* status
|
||||||
|
-- CREATE POLICY "Authenticated users can update statuses for any user."
|
||||||
|
-- ON public.statuses
|
||||||
|
-- FOR UPDATE
|
||||||
|
-- USING (
|
||||||
|
-- (SELECT auth.role()) = 'authenticated'
|
||||||
|
-- )
|
||||||
|
-- WITH CHECK (
|
||||||
|
-- (SELECT auth.role()) = 'authenticated'
|
||||||
|
-- );
|
||||||
|
|
||||||
-- -- Function to add first status
|
-- -- Function to add first status
|
||||||
-- CREATE FUNCTION public.handle_first_status()
|
-- CREATE FUNCTION public.handle_first_status()
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
|
'use client';
|
||||||
|
|
||||||
import { createBrowserClient } from '@supabase/ssr';
|
import { createBrowserClient } from '@supabase/ssr';
|
||||||
import type { Database } from '@/utils/supabase/types';
|
import type { Database } from '@/utils/supabase/types';
|
||||||
|
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
'use server'
|
||||||
|
|
||||||
|
import 'server-only';
|
||||||
import { createServerClient as CreateServerClient } from '@supabase/ssr';
|
import { createServerClient as CreateServerClient } from '@supabase/ssr';
|
||||||
import type { Database } from '@/utils/supabase/types';
|
import type { Database } from '@/utils/supabase/types';
|
||||||
import { cookies } from 'next/headers';
|
import { cookies } from 'next/headers';
|
||||||
|
Loading…
x
Reference in New Issue
Block a user