From 6242c8c1826a32115fbb822127fdb74c38d2bdd3 Mon Sep 17 00:00:00 2001 From: Amruth Pillai Date: Mon, 9 Feb 2026 14:52:39 +0100 Subject: [PATCH] fix: temporarily disable passkeys functionality due to upstream issues (#2700) * fix: temporarily disable passkeys functionality due to upstream issues * remove sourcemaps from git --- .gitignore | 4 +- .vscode/settings.json | 6 +- docs/changelog/index.mdx | 5 + docs/guides/setting-up-passkeys.mdx | 8 + knip.json | 8 +- package.json | 18 +- pnpm-lock.yaml | 499 +++++------------- src/integrations/auth/client.ts | 2 - src/integrations/auth/config.ts | 14 +- src/routes/auth/-components/social-auth.tsx | 25 +- .../authentication/-components/hooks.tsx | 17 +- .../authentication/-components/passkeys.tsx | 114 ---- .../settings/authentication/index.tsx | 8 +- vite.config.ts | 38 +- 14 files changed, 174 insertions(+), 592 deletions(-) delete mode 100644 src/routes/dashboard/settings/authentication/-components/passkeys.tsx diff --git a/.gitignore b/.gitignore index af6e144dd..31a64b97e 100644 --- a/.gitignore +++ b/.gitignore @@ -13,5 +13,7 @@ coverage node_modules !.env.example public/sw.js +public/sw.js.map scripts/**/*.json -public/workbox-*.js \ No newline at end of file +public/workbox-*.js +public/workbox-*.js.map \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json index 9249c2180..c0d735bb9 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -15,14 +15,16 @@ }, "files.watcherExclude": { "**/routeTree.gen.ts": true, - "pnpm-lock.yaml": true + "pnpm-lock.yaml": true, + "locales/**.po": true }, "i18n-ally.enabledParsers": ["po"], "i18n-ally.localesPaths": ["locales"], "i18n-ally.sourceLanguage": "en-US", "search.exclude": { "**/routeTree.gen.ts": true, - "pnpm-lock.yaml": true + "pnpm-lock.yaml": true, + "locales/**.po": true }, "tailwindCSS.classFunctions": ["cn", "cva"], "tailwindCSS.experimental.classRegex": [ diff --git a/docs/changelog/index.mdx b/docs/changelog/index.mdx index c9d760171..df93b5b26 100644 --- a/docs/changelog/index.mdx +++ b/docs/changelog/index.mdx @@ -4,6 +4,11 @@ description: "List of all notable changes and updates to Reactive Resume" rss: true --- + + - Remove Passkey support from the authentication system, as it was causing issues with the authentication provider. + - Update dependencies to the latest versions. + + - Introduce a new **MCP (Model Context Protocol) server** that lets you manage and edit resumes from any MCP-compatible AI tool — Claude Desktop, Cursor, Codex, and more. Supports listing, reading, creating, deleting, locking/unlocking, and patching resumes via natural language. [(guide)](/guides/using-the-mcp-server) - Add an **AI Chat** panel to the resume builder, allowing you to modify your resume through conversational AI directly within the editor. The chat uses tool-calling to apply JSON Patch operations to your resume in real-time, with visual feedback for each change. diff --git a/docs/guides/setting-up-passkeys.mdx b/docs/guides/setting-up-passkeys.mdx index b3d7a242e..df2b727a2 100644 --- a/docs/guides/setting-up-passkeys.mdx +++ b/docs/guides/setting-up-passkeys.mdx @@ -3,6 +3,14 @@ title: "Setting up passkeys" description: "Learn how to register passkeys (WebAuthn) to sign in securely using biometrics or your device PIN" --- + + Passkeys Temporarily Disabled: Passkey registration and sign-in are currently unavailable in Reactive Resume due to an upstream issue with our authentication provider. We are closely monitoring the situation and will re-enable passkeys once it is resolved. + + For more details and technical updates, see the GitHub issue #7463. + + +--- + Head over to [https://rxresu.me](https://rxresu.me) and sign in with your account credentials. diff --git a/knip.json b/knip.json index e09cf288f..98f32d778 100644 --- a/knip.json +++ b/knip.json @@ -4,12 +4,6 @@ "tailwind": { "entry": ["src/styles.css"] }, "project": ["src/**/*.{js,jsx,ts,tsx,mdx,css}"], "ignoreBinaries": ["mint"], - "ignoreDependencies": [ - "@modelcontextprotocol/sdk", - "npm-check-updates", - "reflect-metadata", - "node-addon-api", - "node-gyp" - ], + "ignoreDependencies": ["@modelcontextprotocol/sdk", "npm-check-updates", "node-addon-api", "node-gyp"], "ignore": ["src/schema/**/*.ts", "src/components/**/*.{ts,tsx}", "src/routeTree.gen.ts"] } diff --git a/package.json b/package.json index d7ca24cff..de64b101c 100644 --- a/package.json +++ b/package.json @@ -1,10 +1,10 @@ { "name": "reactive-resume", "description": "Reactive Resume is a free and open-source resume builder that simplifies the process of creating, updating, and sharing your resume.", - "version": "5.0.7", + "version": "5.0.8", "license": "MIT", "type": "module", - "packageManager": "pnpm@10.29.1+sha512.48dae233635a645768a3028d19545cacc1688639eeb1f3734e42d6d6b971afbf22aa1ac9af52a173d9c3a20c15857cfa400f19994d79a2f626fcc73fccda9bbc", + "packageManager": "pnpm@10.29.2+sha512.bef43fa759d91fd2da4b319a5a0d13ef7a45bb985a3d7342058470f9d2051a3ba8674e629672654686ef9443ad13a82da2beb9eeb3e0221c87b8154fff9d74b8", "repository": { "type": "git", "url": "https://github.com/amruthpillai/reactive-resume.git" @@ -37,7 +37,6 @@ "@ai-sdk/react": "^3.0.79", "@aws-sdk/client-s3": "^3.985.0", "@better-auth/core": "1.5.0-beta.13", - "@better-auth/passkey": "1.5.0-beta.13", "@dnd-kit/core": "^6.3.1", "@dnd-kit/sortable": "^10.0.0", "@dnd-kit/utilities": "^3.2.2", @@ -57,10 +56,10 @@ "@sindresorhus/slugify": "^3.0.0", "@t3-oss/env-core": "^0.13.10", "@tanstack/react-query": "5.90.20", - "@tanstack/react-router": "^1.159.3", - "@tanstack/react-router-ssr-query": "^1.159.3", - "@tanstack/react-start": "^1.159.3", - "@tanstack/zod-adapter": "^1.159.3", + "@tanstack/react-router": "^1.159.5", + "@tanstack/react-router-ssr-query": "^1.159.5", + "@tanstack/react-start": "^1.159.5", + "@tanstack/zod-adapter": "^1.159.5", "@tiptap/extension-highlight": "^3.19.0", "@tiptap/extension-table": "^3.19.0", "@tiptap/extension-text-align": "^3.19.0", @@ -86,7 +85,7 @@ "input-otp": "^1.4.2", "js-cookie": "^3.0.5", "monaco-editor": "^0.55.1", - "motion": "^12.33.0", + "motion": "^12.34.0", "nodemailer": "^8.0.1", "pg": "^8.18.0", "puppeteer-core": "^24.37.2", @@ -99,7 +98,6 @@ "react-resizable-panels": "^4.6.2", "react-window": "^2.2.6", "react-zoom-pan-pinch": "^3.7.0", - "reflect-metadata": "^0.2.2", "shadcn": "^3.8.4", "sharp": "^0.34.5", "sonner": "^2.0.7", @@ -129,7 +127,7 @@ "@types/pg": "^8.16.0", "@types/react": "^19.2.13", "@types/react-dom": "^19.2.3", - "@typescript/native-preview": "7.0.0-dev.20260208.1", + "@typescript/native-preview": "7.0.0-dev.20260209.1", "@vitejs/plugin-react": "^5.1.3", "babel-plugin-macros": "^3.1.0", "drizzle-kit": "^1.0.0-beta.15-859cf75", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 49d91b36b..60b82ec05 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -29,9 +29,6 @@ importers: '@better-auth/core': specifier: 1.5.0-beta.13 version: 1.5.0-beta.13(@better-auth/utils@0.3.1)(@better-fetch/fetch@1.1.21)(better-call@1.2.1(zod@4.3.6))(jose@6.1.3)(kysely@0.28.10)(nanostores@1.1.0) - '@better-auth/passkey': - specifier: 1.5.0-beta.13 - version: 1.5.0-beta.13(eba5bf2b9716b4fc672d4feef57d2195) '@dnd-kit/core': specifier: ^6.3.1 version: 6.3.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -93,17 +90,17 @@ importers: specifier: 5.90.20 version: 5.90.20(react@19.2.4) '@tanstack/react-router': - specifier: ^1.159.3 - version: 1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + specifier: ^1.159.5 + version: 1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@tanstack/react-router-ssr-query': - specifier: ^1.159.3 - version: 1.159.3(@tanstack/query-core@5.90.20)(@tanstack/react-query@5.90.20(react@19.2.4))(@tanstack/react-router@1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(@tanstack/router-core@1.158.4)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + specifier: ^1.159.5 + version: 1.159.5(@tanstack/query-core@5.90.20)(@tanstack/react-query@5.90.20(react@19.2.4))(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(@tanstack/router-core@1.159.4)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@tanstack/react-start': - specifier: ^1.159.3 - version: 1.159.3(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)) + specifier: ^1.159.5 + version: 1.159.5(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)) '@tanstack/zod-adapter': - specifier: ^1.159.3 - version: 1.159.3(@tanstack/react-router@1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(zod@4.3.6) + specifier: ^1.159.5 + version: 1.159.5(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(zod@4.3.6) '@tiptap/extension-highlight': specifier: ^3.19.0 version: 3.19.0(@tiptap/core@3.19.0(@tiptap/pm@3.19.0)) @@ -133,7 +130,7 @@ importers: version: 6.0.0 better-auth: specifier: 1.5.0-beta.13 - version: 1.5.0-beta.13(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@tanstack/react-start@1.159.3(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)))(drizzle-kit@1.0.0-beta.9-e89174b)(drizzle-orm@1.0.0-beta.9-e89174b(@electric-sql/pglite@0.3.2)(@opentelemetry/api@1.9.0)(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@types/mssql@9.1.9)(@types/pg@8.16.0)(mssql@11.0.1)(mysql2@3.15.3)(pg@8.18.0)(postgres@3.4.7)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)))(mongodb@7.0.0(socks@2.8.7))(mysql2@3.15.3)(pg@8.18.0)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 1.5.0-beta.13(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@tanstack/react-start@1.159.5(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)))(drizzle-kit@1.0.0-beta.9-e89174b)(drizzle-orm@1.0.0-beta.9-e89174b(@electric-sql/pglite@0.3.2)(@opentelemetry/api@1.9.0)(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@types/mssql@9.1.9)(@types/pg@8.16.0)(mssql@11.0.1)(mysql2@3.15.3)(pg@8.18.0)(postgres@3.4.7)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)))(mongodb@7.0.0(socks@2.8.7))(mysql2@3.15.3)(pg@8.18.0)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) class-variance-authority: specifier: ^0.7.1 version: 0.7.1 @@ -177,8 +174,8 @@ importers: specifier: ^0.55.1 version: 0.55.1 motion: - specifier: ^12.33.0 - version: 12.33.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + specifier: ^12.34.0 + version: 12.34.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) nodemailer: specifier: ^8.0.1 version: 8.0.1 @@ -215,9 +212,6 @@ importers: react-zoom-pan-pinch: specifier: ^3.7.0 version: 3.7.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - reflect-metadata: - specifier: ^0.2.2 - version: 0.2.2 shadcn: specifier: ^3.8.4 version: 3.8.4(@types/node@25.2.2)(babel-plugin-macros@3.1.0)(typescript@5.9.3) @@ -301,8 +295,8 @@ importers: specifier: ^19.2.3 version: 19.2.3(@types/react@19.2.13) '@typescript/native-preview': - specifier: 7.0.0-dev.20260208.1 - version: 7.0.0-dev.20260208.1 + specifier: 7.0.0-dev.20260209.1 + version: 7.0.0-dev.20260209.1 '@vitejs/plugin-react': specifier: ^5.1.3 version: 5.1.3(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)) @@ -1217,16 +1211,6 @@ packages: '@better-auth/utils': ^0.3.0 mongodb: ^6.0.0 || ^7.0.0 - '@better-auth/passkey@1.5.0-beta.13': - resolution: {integrity: sha512-M6ORIcQQUIkmTDKZ4lvWn4grYisuE48k995Bdv4DoBW8ezbkHoJt0tRzxSJoD6BsArV79jZ+jG9sci1tfeF6rw==} - peerDependencies: - '@better-auth/core': 1.5.0-beta.13 - '@better-auth/utils': 0.3.1 - '@better-fetch/fetch': 1.1.21 - better-auth: 1.5.0-beta.13 - better-call: 1.2.1 - nanostores: ^1.0.1 - '@better-auth/prisma-adapter@1.5.0-beta.13': resolution: {integrity: sha512-w2+KMfoWrPeYKAmG1tinwmsHe2Lc3HNyOASEO5jw6oJY7BrLDKcqeqCJuhavuwhd2fCAq3fEiqyJVCYDDLVKqA==} peerDependencies: @@ -1703,9 +1687,6 @@ packages: '@fontsource-variable/ibm-plex-sans@5.2.8': resolution: {integrity: sha512-n5PF2iFa0CZT0QYTPzxvZ39opC9LnU0zdoRccoADbs+Dtsd+lbXOZF7RNuIPHcQX1dKjF63sxnRImQIB5eD0Ag==} - '@hexagon/base64@1.1.28': - resolution: {integrity: sha512-lhqDEAvWixy3bZ+UOYbPwUbBkwBq5C1LAJ/xPC8Oi+lL54oyakv/npbA0aU2hgCsx/1NUd4IBvV03+aUBWxerw==} - '@hono/node-server@1.19.6': resolution: {integrity: sha512-Shz/KjlIeAhfiuE93NDKVdZ7HdBVLQAfdbaXEaoAVO3ic9ibRSLGIQGkcBbFyuLr+7/1D5ZCINM8B+6IvXeMtw==} engines: {node: '>=18.14.1'} @@ -1961,9 +1942,6 @@ packages: resolution: {integrity: sha512-hloP58zRVCRSpgDxmqCWJNlizAlUgJFqG2ypq79DCvyv9tHjRYMDOcPFjzfl/A1/YxDvRCZz8wvZvmapQnKwFQ==} engines: {node: '>=12'} - '@levischuck/tiny-cbor@0.2.11': - resolution: {integrity: sha512-llBRm4dT4Z89aRsm6u2oEZ8tfwL/2l6BwpZ7JcyieouniDECM5AqNgr/y08zalEIvW3RSK4upYyybDcmjXqAow==} - '@lingui/babel-plugin-extract-messages@5.9.0': resolution: {integrity: sha512-1uLhq9u6zUoTMsNzaoHKi+PnySdeLMaxOHC9L5dbXotJim7eiUH5d3OiuXajN4sDW+xKSMg0/KE9Oo8ge6gzpA==} engines: {node: '>=20.0.0'} @@ -2573,43 +2551,6 @@ packages: cpu: [x64] os: [win32] - '@peculiar/asn1-android@2.6.0': - resolution: {integrity: sha512-cBRCKtYPF7vJGN76/yG8VbxRcHLPF3HnkoHhKOZeHpoVtbMYfY9ROKtH3DtYUY9m8uI1Mh47PRhHf2hSK3xcSQ==} - - '@peculiar/asn1-cms@2.6.0': - resolution: {integrity: sha512-2uZqP+ggSncESeUF/9Su8rWqGclEfEiz1SyU02WX5fUONFfkjzS2Z/F1Li0ofSmf4JqYXIOdCAZqIXAIBAT1OA==} - - '@peculiar/asn1-csr@2.6.0': - resolution: {integrity: sha512-BeWIu5VpTIhfRysfEp73SGbwjjoLL/JWXhJ/9mo4vXnz3tRGm+NGm3KNcRzQ9VMVqwYS2RHlolz21svzRXIHPQ==} - - '@peculiar/asn1-ecc@2.6.0': - resolution: {integrity: sha512-FF3LMGq6SfAOwUG2sKpPXblibn6XnEIKa+SryvUl5Pik+WR9rmRA3OCiwz8R3lVXnYnyRkSZsSLdml8H3UiOcw==} - - '@peculiar/asn1-pfx@2.6.0': - resolution: {integrity: sha512-rtUvtf+tyKGgokHHmZzeUojRZJYPxoD/jaN1+VAB4kKR7tXrnDCA/RAWXAIhMJJC+7W27IIRGe9djvxKgsldCQ==} - - '@peculiar/asn1-pkcs8@2.6.0': - resolution: {integrity: sha512-KyQ4D8G/NrS7Fw3XCJrngxmjwO/3htnA0lL9gDICvEQ+GJ+EPFqldcJQTwPIdvx98Tua+WjkdKHSC0/Km7T+lA==} - - '@peculiar/asn1-pkcs9@2.6.0': - resolution: {integrity: sha512-b78OQ6OciW0aqZxdzliXGYHASeCvvw5caqidbpQRYW2mBtXIX2WhofNXTEe7NyxTb0P6J62kAAWLwn0HuMF1Fw==} - - '@peculiar/asn1-rsa@2.6.0': - resolution: {integrity: sha512-Nu4C19tsrTsCp9fDrH+sdcOKoVfdfoQQ7S3VqjJU6vedR7tY3RLkQ5oguOIB3zFW33USDUuYZnPEQYySlgha4w==} - - '@peculiar/asn1-schema@2.6.0': - resolution: {integrity: sha512-xNLYLBFTBKkCzEZIw842BxytQQATQv+lDTCEMZ8C196iJcJJMBUZxrhSTxLaohMyKK8QlzRNTRkUmanucnDSqg==} - - '@peculiar/asn1-x509-attr@2.6.0': - resolution: {integrity: sha512-MuIAXFX3/dc8gmoZBkwJWxUWOSvG4MMDntXhrOZpJVMkYX+MYc/rUAU2uJOved9iJEoiUx7//3D8oG83a78UJA==} - - '@peculiar/asn1-x509@2.6.0': - resolution: {integrity: sha512-uzYbPEpoQiBoTq0/+jZtpM6Gq6zADBx+JNFP3yqRgziWBxQ/Dt/HcuvRfm9zJTPdRcBqPNdaRHTVwpyiq6iNMA==} - - '@peculiar/x509@1.14.3': - resolution: {integrity: sha512-C2Xj8FZ0uHWeCXXqX5B4/gVFQmtSkiuOolzAgutjTfseNOHT3pUjljDZsTSxXFGgio54bCzVFqmEOUrIVk8RDA==} - engines: {node: '>=20.0.0'} - '@phosphor-icons/react@2.1.10': resolution: {integrity: sha512-vt8Tvq8GLjheAZZYa+YG/pW7HDbov8El/MANW8pOAz4eGxrwhnbfrQZq0Cp4q8zBEu8NIhHdnr+r8thnfRSNYA==} engines: {node: '>=10'} @@ -3534,13 +3475,6 @@ packages: '@sec-ant/readable-stream@0.4.1': resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==} - '@simplewebauthn/browser@13.2.2': - resolution: {integrity: sha512-FNW1oLQpTJyqG5kkDg5ZsotvWgmBaC6jCHR7Ej0qUNep36Wl9tj2eZu7J5rP+uhXgHaLk+QQ3lqcw2vS5MX1IA==} - - '@simplewebauthn/server@13.2.2': - resolution: {integrity: sha512-HcWLW28yTMGXpwE9VLx9J+N2KEUaELadLrkPEEI9tpI5la70xNEVEsu/C+m3u7uoq4FulLqZQhgBCzR9IZhFpA==} - engines: {node: '>=20.0.0'} - '@sinclair/typebox@0.27.8': resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} @@ -3904,8 +3838,8 @@ packages: peerDependencies: react: ^18 || ^19 - '@tanstack/react-router-ssr-query@1.159.3': - resolution: {integrity: sha512-dNRNvGcyBk++JLF32cXO4KnLECvybVNx7MC+kJFs0/2c2o5I78zrBnol50xT0FaEfdfvwCZB0pjx0qcMpYjIsg==} + '@tanstack/react-router-ssr-query@1.159.5': + resolution: {integrity: sha512-r/Um9DASjmaTdiyXA3cpooGLrSD1BlcXUNsRz4zAlvD38m0gIFvaykOM2Naztqm9H+2CJkocRZp2/kR69Xcmyg==} engines: {node: '>=12'} peerDependencies: '@tanstack/query-core': '>=5.90.0' @@ -3914,29 +3848,29 @@ packages: react: '>=18.0.0 || >=19.0.0' react-dom: '>=18.0.0 || >=19.0.0' - '@tanstack/react-router@1.159.3': - resolution: {integrity: sha512-VoQFmn1jR7lO2TIT+UlBNN6AWm+sBf0S7aAsCRDVI7IFuup3V/qBxKMKXDniUt3qMI1xF4gl7r7cQ2Sz8FogAw==} + '@tanstack/react-router@1.159.5': + resolution: {integrity: sha512-rVb0MtKzP5c0BkWIoFgWBiRAJHYSU3bhsEHbT0cRdRLmlJiw21Awb6VEjgYq3hJiEhowcKKm6J8AdRD/8oZ5dQ==} engines: {node: '>=12'} peerDependencies: react: '>=18.0.0 || >=19.0.0' react-dom: '>=18.0.0 || >=19.0.0' - '@tanstack/react-start-client@1.159.3': - resolution: {integrity: sha512-85AXk6hm2t2PY1633PucmtKhvuHJRMQF+XUFHaDWyqmL33tj8lpuzpez2Ko0khnJ3R5BHfUEBBD1BAkCPXuHbQ==} + '@tanstack/react-start-client@1.159.5': + resolution: {integrity: sha512-Qynx7XWHI1rhVpSUx6P40zazcQVJRhl2fnAcSH0I6vaAxSuZm8lvI37YacXPRu8flvI/ZGlF095arxiyps+A0w==} engines: {node: '>=22.12.0'} peerDependencies: react: '>=18.0.0 || >=19.0.0' react-dom: '>=18.0.0 || >=19.0.0' - '@tanstack/react-start-server@1.159.3': - resolution: {integrity: sha512-RSSLltVPOe+cEMl0VnIfOMEA/yjSZR/w53YjqypvGljYpgbTaU+feIDdxLOd5rYxNkS3ewENuWPdPkE8jR7+iQ==} + '@tanstack/react-start-server@1.159.5': + resolution: {integrity: sha512-X4/SunwDTEbGkYTfM0gR+79amfk6phAM+2+NlC2s7TX2cD51xE8bUz2a//RxfOh9xg8f0f2CRIO34xTEDHGTfQ==} engines: {node: '>=22.12.0'} peerDependencies: react: '>=18.0.0 || >=19.0.0' react-dom: '>=18.0.0 || >=19.0.0' - '@tanstack/react-start@1.159.3': - resolution: {integrity: sha512-sqZh4cZozeB72Qtt9r8CpclRLQPyw8aAsw+dalXYZxwY2Io+yayTRHJHwqAgVaiWfV18EiT+qyn0akqS1+QXkw==} + '@tanstack/react-start@1.159.5': + resolution: {integrity: sha512-vfnF7eYswAK54ru6Ay08nb0TXVzTBaVRsbbRW7hx2M0chgwtSx+YScYzoixqkccRARQBN8a/CeVq7vNFW8525w==} engines: {node: '>=22.12.0'} peerDependencies: react: '>=18.0.0 || >=19.0.0' @@ -3949,20 +3883,20 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - '@tanstack/router-core@1.158.4': - resolution: {integrity: sha512-KikgYdyrEFqsjjgv9pMhDTMmASMAyFRvUiKFdQPQtXq3aD1qv/zck4CbA4bfzp9N9nYu/qvWwU1mlYU4u5JeXg==} + '@tanstack/router-core@1.159.4': + resolution: {integrity: sha512-MFzPH39ijNO83qJN3pe7x4iAlhZyqgao3sJIzv3SJ4Pnk12xMnzuDzIAQT/1WV6JolPQEcw0Wr4L5agF8yxoeg==} engines: {node: '>=12'} - '@tanstack/router-generator@1.158.4': - resolution: {integrity: sha512-RQmqMTT0oV8dS/3Glcq9SPzDZqOPyKb/LVFUkNoTfMwW88WyGnQcYqZAkmVk/CGBWWDfwObOUZoGq5jTF7bG8w==} + '@tanstack/router-generator@1.159.4': + resolution: {integrity: sha512-O8tICQoSuvK6vs3mvBdI3zVLFmYfj/AYDCX0a5msSADP/2S0GsgDDTB5ah731TqYCtjeNriaWz9iqst38cjF/Q==} engines: {node: '>=12'} - '@tanstack/router-plugin@1.159.3': - resolution: {integrity: sha512-gWBkJ3DCr77O4qkE5bppMO8EkKvlIX4vLM7hOrBjKUbMlC3aqplk8XaIyf9rZy/VpsIyVJAIOBWqvHHLv80Reg==} + '@tanstack/router-plugin@1.159.5': + resolution: {integrity: sha512-i2LR3WRaBOAZ1Uab5QBG9UxZIRJ3V56JVu890NysbuX15rgzRiL5yLAbfenOHdhaHy2+4joX35VICAHuVWy7Og==} engines: {node: '>=12'} peerDependencies: '@rsbuild/core': '>=1.0.2' - '@tanstack/react-router': ^1.159.3 + '@tanstack/react-router': ^1.159.5 vite: ^8.0.0-beta.13 vite-plugin-solid: ^2.11.10 webpack: '>=5.92.0' @@ -3978,8 +3912,8 @@ packages: webpack: optional: true - '@tanstack/router-ssr-query-core@1.158.4': - resolution: {integrity: sha512-gZRx0pGaRc7NPrwQSAfnn/DVWEsd01cf5TaW5yTyf3R5ZP/I++KNEW3lBXyRo1RyKedPC45R+Id6HpDeEaidyg==} + '@tanstack/router-ssr-query-core@1.159.4': + resolution: {integrity: sha512-zqgJaf8iTk2ugrJqvU+b8NnFf3MKcnFaurtlp5tP38lNHQGW4En9UaOBOou/6zYZMlKQBcvqxSGJiwaLIyTK2g==} engines: {node: '>=12'} peerDependencies: '@tanstack/query-core': '>=5.90.0' @@ -3989,26 +3923,26 @@ packages: resolution: {integrity: sha512-qZ76eaLKU6Ae9iI/mc5zizBX149DXXZkBVVO3/QRIll79uKLJZHQlMKR++2ba7JsciBWz1pgpIBcCJPE9S0LVg==} engines: {node: '>=12'} - '@tanstack/start-client-core@1.158.4': - resolution: {integrity: sha512-qpUYwJMMCEKgJuMz2CJLt53XrObi1BSjV1gG5SgBWRRVOHL8zky55tu1fEqHEa26jTTA6mUcBnPzYE8vIjRpAw==} + '@tanstack/start-client-core@1.159.4': + resolution: {integrity: sha512-9j2i1PRTIGcYAD+509znve0ngK81ZUfbX4XCpoNFMaUUpRHoEPPK5I9+PzLFvL9sNOto67x+WULCUggzX+lEKQ==} engines: {node: '>=22.12.0'} '@tanstack/start-fn-stubs@1.154.7': resolution: {integrity: sha512-D69B78L6pcFN5X5PHaydv7CScQcKLzJeEYqs7jpuyyqGQHSUIZUjS955j+Sir8cHhuDIovCe2LmsYHeZfWf3dQ==} engines: {node: '>=22.12.0'} - '@tanstack/start-plugin-core@1.159.3': - resolution: {integrity: sha512-TrcxOf8buf+x7jMI3gBf0ugOcIGCvWEIHf0FSCsuWLNEv/gt2aCOa5AnttdEHcDOW7s1xM2BM5RAjC0MD7qPuQ==} + '@tanstack/start-plugin-core@1.159.5': + resolution: {integrity: sha512-QGiBw+L3qu2sUY0Tg9KovxjDSi5kevoANEcq9RLX7iIhLkTjrILN6hnAlXZUzqk5Egaf0aN2yWhwI4HWucMprw==} engines: {node: '>=22.12.0'} peerDependencies: vite: ^8.0.0-beta.13 - '@tanstack/start-server-core@1.159.2': - resolution: {integrity: sha512-vglvDC+SAPyZShoJgjYO9fJASqLQpzQ5ZYAhsV3Y15NiFk0AnKltfBGd9oV1BuhKJrFSE6e/Ik2zKPKADE/iYw==} + '@tanstack/start-server-core@1.159.4': + resolution: {integrity: sha512-sGpr+iil+pcY3Gglvbnxaj7fCEPTQJv4oF7YA24SVv8YvayLXtBXpF26miJLA+KR9P31dQdPYe1gTjv5zRyvHg==} engines: {node: '>=22.12.0'} - '@tanstack/start-storage-context@1.158.4': - resolution: {integrity: sha512-tz70q/6LTytstBIMRYt5GDRjPJPOHjnPNay85RJdq9ZlQKryeDThnshEttlBTDAxZP7wtwOv00lcAgFLFGP1hA==} + '@tanstack/start-storage-context@1.159.4': + resolution: {integrity: sha512-iGkmuCIq3PLI4GKOGwgUNHQKZ13YV8LGq62o2hVnyXE64Jm2SP7c5z6D1ndydpk4JwdRzQKlcOFT/1agvS6Nsg==} engines: {node: '>=22.12.0'} '@tanstack/store@0.8.0': @@ -4018,8 +3952,8 @@ packages: resolution: {integrity: sha512-cHHDnewHozgjpI+MIVp9tcib6lYEQK5MyUr0ChHpHFGBl8Xei55rohFK0I0ve/GKoHeioaK42Smd8OixPp6CTg==} engines: {node: '>=12'} - '@tanstack/zod-adapter@1.159.3': - resolution: {integrity: sha512-uyi/rCblwuSg2Rz0ufgjyRla4N6ouBUmF+DTDkIvpWcM/uE08xoCl4wDwwmrryZTuB8xMfmfw3ukmGJBii2mSA==} + '@tanstack/zod-adapter@1.159.5': + resolution: {integrity: sha512-A+tFyA2k/t7LzoRXK+atqogUTPRqvsLPGzCUJv2wiXXZHHi80N675Ky8Vz/AY7cRdnq+cl/h1ttWcTKNWewjAQ==} engines: {node: '>=12'} peerDependencies: '@tanstack/react-router': '>=1.43.2' @@ -4300,43 +4234,43 @@ packages: '@types/yauzl@2.10.3': resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} - '@typescript/native-preview-darwin-arm64@7.0.0-dev.20260208.1': - resolution: {integrity: sha512-ixnfsxZVziOh/tsuqrjJvXvfBqcilASOnWCsGLaBL9LwpY/0kZxfwvqR8c9DAyB9ilYsmrbu6mi8VtE39eNL9g==} + '@typescript/native-preview-darwin-arm64@7.0.0-dev.20260209.1': + resolution: {integrity: sha512-TyFP7dGMo/Xz37MI3QNfGl3J2i8AKurYwLLD+bG0EDLWnz213wwBwN6U9vMcyatBzfdxKEHHPgdNP0UYCVx3kQ==} cpu: [arm64] os: [darwin] - '@typescript/native-preview-darwin-x64@7.0.0-dev.20260208.1': - resolution: {integrity: sha512-LH5gacYZOG/mwCBSCYOVMZSQLWNuvBLjJcvm5W7UrTvnMvij9n/spfjHeRicJ1FdHeskCYvOVttshOUxZTQnOA==} + '@typescript/native-preview-darwin-x64@7.0.0-dev.20260209.1': + resolution: {integrity: sha512-1Dr8toDQcmqKjXd5cQoTAjzMR46cscaojQiazbAPJsU/1PQFgBT36/Mb/epLpzN+ZKKgf7Xd6u2eqH2ze0kF6Q==} cpu: [x64] os: [darwin] - '@typescript/native-preview-linux-arm64@7.0.0-dev.20260208.1': - resolution: {integrity: sha512-adQ3+tzalW6TbLFoL3PqKpL2MyaAaUW8EfmmKmUSpSM2w1ynKChIYmk0KKOFMQXoK3o3hxkvg8PoQbzk8nSEtQ==} + '@typescript/native-preview-linux-arm64@7.0.0-dev.20260209.1': + resolution: {integrity: sha512-xmGrxP0ERLeczerjJtask6gOln/QhAeELqTmaNoATvU7hZfEzDDxJOgSXZnX6bCIQHdN/Xn49gsyPjzTaK4rAg==} cpu: [arm64] os: [linux] - '@typescript/native-preview-linux-arm@7.0.0-dev.20260208.1': - resolution: {integrity: sha512-Ep5dHLBW+q3uJBI3WDIWuqBoazjZAo+EIyY/kkv/eoy8vUPsvMElv4vyvLJEYbhlpSrOFYVk8J2KiV+UqvpoVw==} + '@typescript/native-preview-linux-arm@7.0.0-dev.20260209.1': + resolution: {integrity: sha512-svmoHHjs5gDekSDW6yLzk9iyDxhMnLKJZ9Xk6b1bSz0swrQNPPTJdR7mbhVMrv4HtXei0LHPlXdTr85AqI5qOQ==} cpu: [arm] os: [linux] - '@typescript/native-preview-linux-x64@7.0.0-dev.20260208.1': - resolution: {integrity: sha512-lCJU9WYwrMWTLkQdvLs6KmFvz/0yZ951D756vsRdC43rLSmzb1GS4T8u9TJ9m5vuM1UST9Mj0+ID5lq5RfHnVA==} + '@typescript/native-preview-linux-x64@7.0.0-dev.20260209.1': + resolution: {integrity: sha512-cK4XK3L7TXPj9fIalQcXRqSErdM+pZSqiNgp6QtNsNCyoH2W6J281hnjUA4TmD4TRMSn8CRn7Exy3CGNC3gZkA==} cpu: [x64] os: [linux] - '@typescript/native-preview-win32-arm64@7.0.0-dev.20260208.1': - resolution: {integrity: sha512-ZEjw0C5dtr9felIUTcpQ65zlTZANmdKcU+qakczrVOyUnF31+FyQtP/Fp2YPOteOAmwrxfCtCsw1Es4zSgtSeA==} + '@typescript/native-preview-win32-arm64@7.0.0-dev.20260209.1': + resolution: {integrity: sha512-U919FWN5FZG/1i75+Cv9mnd80Mw2rdFE/to/wJ6DX9m0dUL8IfZARQYPGDXDO1LEC6sV3CyCpCJ/HqsSkqgaAg==} cpu: [arm64] os: [win32] - '@typescript/native-preview-win32-x64@7.0.0-dev.20260208.1': - resolution: {integrity: sha512-2ARKZBZwSyxLvQqIl2uqzHESKOYwmEYLJL02B9gPOYUyJOBG+mA75TyeOVTRuafDQv+Fp4xBDDyPOon5ARh+KQ==} + '@typescript/native-preview-win32-x64@7.0.0-dev.20260209.1': + resolution: {integrity: sha512-1U/2fG/A1yZtkP59IkDlOVLw2cPtP6NbLROtTytNN0CLSqme+0OXoh+l7wlN2iSmGY5zIeaVcqs4UIL0SiQInQ==} cpu: [x64] os: [win32] - '@typescript/native-preview@7.0.0-dev.20260208.1': - resolution: {integrity: sha512-Uvrv3FciZTvvdSpmaaJscQ3Nut9/IPFkHh5CIy0IuDHIqwCoHvkkTOdIFE/rgMfHkIlQHhnj9oF94kzRu8YnXg==} + '@typescript/native-preview@7.0.0-dev.20260209.1': + resolution: {integrity: sha512-UdA8RC9ic/qi9ajolQQP7ZG8YwtUbxtTMu6FxKBn4pYWicuXqMjzXqH/Ng+VlqqeYrl088P4Ou0erGPuLu4ajw==} hasBin: true '@typespec/ts-http-runtime@0.3.2': @@ -4440,10 +4374,6 @@ packages: resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} engines: {node: '>= 0.4'} - asn1js@3.0.7: - resolution: {integrity: sha512-uLvq6KJu04qoQM6gvBfKFjlh6Gl0vOKQuR5cJMDHQkmwfMOQeN3F3SHCv9SNYSL+CRoHvOGFfllDlVz03GQjvQ==} - engines: {node: '>=12.0.0'} - ast-types@0.13.4: resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==} engines: {node: '>=4'} @@ -5506,8 +5436,8 @@ packages: resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} engines: {node: '>= 0.6'} - framer-motion@12.33.0: - resolution: {integrity: sha512-ca8d+rRPcDP5iIF+MoT3WNc0KHJMjIyFAbtVLvM9eA7joGSpeqDfiNH/kCs1t4CHi04njYvWyj0jS4QlEK/rJQ==} + framer-motion@12.34.0: + resolution: {integrity: sha512-+/H49owhzkzQyxtn7nZeF4kdH++I2FWrESQ184Zbcw5cEqNHYkE5yxWxcTLSj5lNx3NWdbIRy5FHqUvetD8FWg==} peerDependencies: '@emotion/is-prop-valid': '*' react: ^18.0.0 || ^19.0.0 @@ -6478,14 +6408,14 @@ packages: moo@0.5.2: resolution: {integrity: sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==} - motion-dom@12.33.0: - resolution: {integrity: sha512-XRPebVypsl0UM+7v0Hr8o9UAj0S2djsQWRdHBd5iVouVpMrQqAI0C/rDAT3QaYnXnHuC5hMcwDHCboNeyYjPoQ==} + motion-dom@12.34.0: + resolution: {integrity: sha512-Lql3NuEcScRDxTAO6GgUsRHBZOWI/3fnMlkMcH5NftzcN37zJta+bpbMAV9px4Nj057TuvRooMK7QrzMCgtz6Q==} motion-utils@12.29.2: resolution: {integrity: sha512-G3kc34H2cX2gI63RqU+cZq+zWRRPSsNIOjpdl9TN4AQwC4sgwYPl/Q/Obf/d53nOm569T0fYK+tcoSV50BWx8A==} - motion@12.33.0: - resolution: {integrity: sha512-TcND7PijsrTeIA9SRVUB8TOJQ+6mJnJ5K4a9oAJZvyI0Zy47Gq5oofU+VkTxbLcvDoKXnHspQcII2mnk3TbFsQ==} + motion@12.34.0: + resolution: {integrity: sha512-01Sfa/zgsD/di8zA/uFW5Eb7/SPXoGyUfy+uMRMW5Spa8j0z/UbfQewAYvPMYFCXRlyD6e5aLHh76TxeeJD+RA==} peerDependencies: '@emotion/is-prop-valid': '*' react: ^18.0.0 || ^19.0.0 @@ -7039,13 +6969,6 @@ packages: pure-rand@6.1.0: resolution: {integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==} - pvtsutils@1.3.6: - resolution: {integrity: sha512-PLgQXQ6H2FWCaeRak8vvk1GW462lMxB5s3Jm673N82zI4vqtVUPuZdffdZbPDFRoU8kAhItWFtPCWiPpp4/EDg==} - - pvutils@1.1.5: - resolution: {integrity: sha512-KTqnxsgGiQ6ZAzZCVlJH5eOjSnvlyEgx1m8bkRJfOhmGRqfo5KLvmAlACQkrjEtOQ4B7wF9TdSLIs9O90MX9xA==} - engines: {node: '>=16.0.0'} - qrcode.react@4.2.0: resolution: {integrity: sha512-QpgqWi8rD9DsS9EP3z7BT+5lY5SFhsqGjpgW5DY/i3mK4M9DTBNz3ErMi8BWYEfI3L0d8GIbGmcdFAS1uIRGjA==} peerDependencies: @@ -7190,9 +7113,6 @@ packages: resolution: {integrity: sha512-YTUo+Flmw4ZXiWfQKGcwwc11KnoRAYgzAE2E7mXKCjSviTKShtxBsN6YUUBB2gtaBzKzeKunxhUwNHQuRryhWA==} engines: {node: '>= 4'} - reflect-metadata@0.2.2: - resolution: {integrity: sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==} - reflect.getprototypeof@1.0.10: resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} engines: {node: '>= 0.4'} @@ -7705,9 +7625,6 @@ packages: resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} engines: {node: '>=6'} - tslib@1.14.1: - resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} @@ -7716,10 +7633,6 @@ packages: engines: {node: '>=18.0.0'} hasBin: true - tsyringe@4.10.0: - resolution: {integrity: sha512-axr3IdNuVIxnaK5XGEUFTu3YmAQ6lllgrvqfEoR16g/HGnYY/6We4oWENtAnzK6/LpJ2ur9PAb80RBt7/U4ugw==} - engines: {node: '>= 6.0.0'} - tw-animate-css@1.4.0: resolution: {integrity: sha512-7bziOlRqH0hJx80h/3mbicLW7o8qLsH5+RaLR2t+OHM3D0JlWGODQKQ4cxbK7WlvmUxpcj6Kgu6EKqjrGFe3QQ==} @@ -9777,18 +9690,6 @@ snapshots: '@better-auth/utils': 0.3.1 mongodb: 7.0.0(socks@2.8.7) - '@better-auth/passkey@1.5.0-beta.13(eba5bf2b9716b4fc672d4feef57d2195)': - dependencies: - '@better-auth/core': 1.5.0-beta.13(@better-auth/utils@0.3.1)(@better-fetch/fetch@1.1.21)(better-call@1.2.1(zod@4.3.6))(jose@6.1.3)(kysely@0.28.10)(nanostores@1.1.0) - '@better-auth/utils': 0.3.1 - '@better-fetch/fetch': 1.1.21 - '@simplewebauthn/browser': 13.2.2 - '@simplewebauthn/server': 13.2.2 - better-auth: 1.5.0-beta.13(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@tanstack/react-start@1.159.3(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)))(drizzle-kit@1.0.0-beta.9-e89174b)(drizzle-orm@1.0.0-beta.9-e89174b(@electric-sql/pglite@0.3.2)(@opentelemetry/api@1.9.0)(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@types/mssql@9.1.9)(@types/pg@8.16.0)(mssql@11.0.1)(mysql2@3.15.3)(pg@8.18.0)(postgres@3.4.7)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)))(mongodb@7.0.0(socks@2.8.7))(mysql2@3.15.3)(pg@8.18.0)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - better-call: 1.2.1(zod@4.3.6) - nanostores: 1.1.0 - zod: 4.3.6 - '@better-auth/prisma-adapter@1.5.0-beta.13(@better-auth/core@1.5.0-beta.13(@better-auth/utils@0.3.1)(@better-fetch/fetch@1.1.21)(better-call@1.2.1(zod@4.3.6))(jose@6.1.3)(kysely@0.28.10)(nanostores@1.1.0))(@better-auth/utils@0.3.1)(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))': dependencies: '@better-auth/core': 1.5.0-beta.13(@better-auth/utils@0.3.1)(@better-fetch/fetch@1.1.21)(better-call@1.2.1(zod@4.3.6))(jose@6.1.3)(kysely@0.28.10)(nanostores@1.1.0) @@ -10100,8 +10001,6 @@ snapshots: '@fontsource-variable/ibm-plex-sans@5.2.8': {} - '@hexagon/base64@1.1.28': {} - '@hono/node-server@1.19.6(hono@4.10.6)': dependencies: hono: 4.10.6 @@ -10301,8 +10200,6 @@ snapshots: dependencies: jsbi: 4.3.2 - '@levischuck/tiny-cbor@0.2.11': {} - '@lingui/babel-plugin-extract-messages@5.9.0': {} '@lingui/babel-plugin-lingui-macro@5.9.0(babel-plugin-macros@3.1.0)(typescript@5.9.3)': @@ -10900,102 +10797,6 @@ snapshots: '@oxc-transform/binding-win32-x64-msvc@0.110.0': optional: true - '@peculiar/asn1-android@2.6.0': - dependencies: - '@peculiar/asn1-schema': 2.6.0 - asn1js: 3.0.7 - tslib: 2.8.1 - - '@peculiar/asn1-cms@2.6.0': - dependencies: - '@peculiar/asn1-schema': 2.6.0 - '@peculiar/asn1-x509': 2.6.0 - '@peculiar/asn1-x509-attr': 2.6.0 - asn1js: 3.0.7 - tslib: 2.8.1 - - '@peculiar/asn1-csr@2.6.0': - dependencies: - '@peculiar/asn1-schema': 2.6.0 - '@peculiar/asn1-x509': 2.6.0 - asn1js: 3.0.7 - tslib: 2.8.1 - - '@peculiar/asn1-ecc@2.6.0': - dependencies: - '@peculiar/asn1-schema': 2.6.0 - '@peculiar/asn1-x509': 2.6.0 - asn1js: 3.0.7 - tslib: 2.8.1 - - '@peculiar/asn1-pfx@2.6.0': - dependencies: - '@peculiar/asn1-cms': 2.6.0 - '@peculiar/asn1-pkcs8': 2.6.0 - '@peculiar/asn1-rsa': 2.6.0 - '@peculiar/asn1-schema': 2.6.0 - asn1js: 3.0.7 - tslib: 2.8.1 - - '@peculiar/asn1-pkcs8@2.6.0': - dependencies: - '@peculiar/asn1-schema': 2.6.0 - '@peculiar/asn1-x509': 2.6.0 - asn1js: 3.0.7 - tslib: 2.8.1 - - '@peculiar/asn1-pkcs9@2.6.0': - dependencies: - '@peculiar/asn1-cms': 2.6.0 - '@peculiar/asn1-pfx': 2.6.0 - '@peculiar/asn1-pkcs8': 2.6.0 - '@peculiar/asn1-schema': 2.6.0 - '@peculiar/asn1-x509': 2.6.0 - '@peculiar/asn1-x509-attr': 2.6.0 - asn1js: 3.0.7 - tslib: 2.8.1 - - '@peculiar/asn1-rsa@2.6.0': - dependencies: - '@peculiar/asn1-schema': 2.6.0 - '@peculiar/asn1-x509': 2.6.0 - asn1js: 3.0.7 - tslib: 2.8.1 - - '@peculiar/asn1-schema@2.6.0': - dependencies: - asn1js: 3.0.7 - pvtsutils: 1.3.6 - tslib: 2.8.1 - - '@peculiar/asn1-x509-attr@2.6.0': - dependencies: - '@peculiar/asn1-schema': 2.6.0 - '@peculiar/asn1-x509': 2.6.0 - asn1js: 3.0.7 - tslib: 2.8.1 - - '@peculiar/asn1-x509@2.6.0': - dependencies: - '@peculiar/asn1-schema': 2.6.0 - asn1js: 3.0.7 - pvtsutils: 1.3.6 - tslib: 2.8.1 - - '@peculiar/x509@1.14.3': - dependencies: - '@peculiar/asn1-cms': 2.6.0 - '@peculiar/asn1-csr': 2.6.0 - '@peculiar/asn1-ecc': 2.6.0 - '@peculiar/asn1-pkcs9': 2.6.0 - '@peculiar/asn1-rsa': 2.6.0 - '@peculiar/asn1-schema': 2.6.0 - '@peculiar/asn1-x509': 2.6.0 - pvtsutils: 1.3.6 - reflect-metadata: 0.2.2 - tslib: 2.8.1 - tsyringe: 4.10.0 - '@phosphor-icons/react@2.1.10(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: react: 19.2.4 @@ -11957,19 +11758,6 @@ snapshots: '@sec-ant/readable-stream@0.4.1': {} - '@simplewebauthn/browser@13.2.2': {} - - '@simplewebauthn/server@13.2.2': - dependencies: - '@hexagon/base64': 1.1.28 - '@levischuck/tiny-cbor': 0.2.11 - '@peculiar/asn1-android': 2.6.0 - '@peculiar/asn1-ecc': 2.6.0 - '@peculiar/asn1-rsa': 2.6.0 - '@peculiar/asn1-schema': 2.6.0 - '@peculiar/asn1-x509': 2.6.0 - '@peculiar/x509': 1.14.3 - '@sinclair/typebox@0.27.8': {} '@sindresorhus/merge-streams@4.0.0': {} @@ -12413,60 +12201,59 @@ snapshots: '@tanstack/query-core': 5.90.20 react: 19.2.4 - '@tanstack/react-router-ssr-query@1.159.3(@tanstack/query-core@5.90.20)(@tanstack/react-query@5.90.20(react@19.2.4))(@tanstack/react-router@1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(@tanstack/router-core@1.158.4)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@tanstack/react-router-ssr-query@1.159.5(@tanstack/query-core@5.90.20)(@tanstack/react-query@5.90.20(react@19.2.4))(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(@tanstack/router-core@1.159.4)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: '@tanstack/query-core': 5.90.20 '@tanstack/react-query': 5.90.20(react@19.2.4) - '@tanstack/react-router': 1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - '@tanstack/router-ssr-query-core': 1.158.4(@tanstack/query-core@5.90.20)(@tanstack/router-core@1.158.4) + '@tanstack/react-router': 1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@tanstack/router-ssr-query-core': 1.159.4(@tanstack/query-core@5.90.20)(@tanstack/router-core@1.159.4) react: 19.2.4 react-dom: 19.2.4(react@19.2.4) transitivePeerDependencies: - '@tanstack/router-core' - '@tanstack/react-router@1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: '@tanstack/history': 1.154.14 '@tanstack/react-store': 0.8.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - '@tanstack/router-core': 1.158.4 + '@tanstack/router-core': 1.159.4 isbot: 5.1.33 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) - srvx: 0.11.2 tiny-invariant: 1.3.3 tiny-warning: 1.0.3 - '@tanstack/react-start-client@1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@tanstack/react-start-client@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: - '@tanstack/react-router': 1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - '@tanstack/router-core': 1.158.4 - '@tanstack/start-client-core': 1.158.4 + '@tanstack/react-router': 1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@tanstack/router-core': 1.159.4 + '@tanstack/start-client-core': 1.159.4 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) tiny-invariant: 1.3.3 tiny-warning: 1.0.3 - '@tanstack/react-start-server@1.159.3(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@tanstack/react-start-server@1.159.5(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: '@tanstack/history': 1.154.14 - '@tanstack/react-router': 1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - '@tanstack/router-core': 1.158.4 - '@tanstack/start-client-core': 1.158.4 - '@tanstack/start-server-core': 1.159.2(crossws@0.4.3(srvx@0.10.1)) + '@tanstack/react-router': 1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@tanstack/router-core': 1.159.4 + '@tanstack/start-client-core': 1.159.4 + '@tanstack/start-server-core': 1.159.4(crossws@0.4.3(srvx@0.10.1)) react: 19.2.4 react-dom: 19.2.4(react@19.2.4) transitivePeerDependencies: - crossws - '@tanstack/react-start@1.159.3(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0))': + '@tanstack/react-start@1.159.5(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0))': dependencies: - '@tanstack/react-router': 1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - '@tanstack/react-start-client': 1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - '@tanstack/react-start-server': 1.159.3(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@tanstack/react-router': 1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@tanstack/react-start-client': 1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@tanstack/react-start-server': 1.159.5(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@tanstack/router-utils': 1.158.0 - '@tanstack/start-client-core': 1.158.4 - '@tanstack/start-plugin-core': 1.159.3(@tanstack/react-router@1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(crossws@0.4.3(srvx@0.10.1))(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)) - '@tanstack/start-server-core': 1.159.2(crossws@0.4.3(srvx@0.10.1)) + '@tanstack/start-client-core': 1.159.4 + '@tanstack/start-plugin-core': 1.159.5(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(crossws@0.4.3(srvx@0.10.1))(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)) + '@tanstack/start-server-core': 1.159.4(crossws@0.4.3(srvx@0.10.1)) pathe: 2.0.3 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -12485,7 +12272,7 @@ snapshots: react-dom: 19.2.4(react@19.2.4) use-sync-external-store: 1.6.0(react@19.2.4) - '@tanstack/router-core@1.158.4': + '@tanstack/router-core@1.159.4': dependencies: '@tanstack/history': 1.154.14 '@tanstack/store': 0.8.0 @@ -12495,9 +12282,9 @@ snapshots: tiny-invariant: 1.3.3 tiny-warning: 1.0.3 - '@tanstack/router-generator@1.158.4': + '@tanstack/router-generator@1.159.4': dependencies: - '@tanstack/router-core': 1.158.4 + '@tanstack/router-core': 1.159.4 '@tanstack/router-utils': 1.158.0 '@tanstack/virtual-file-routes': 1.154.7 prettier: 3.8.0 @@ -12508,7 +12295,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@tanstack/router-plugin@1.159.3(@tanstack/react-router@1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0))': + '@tanstack/router-plugin@1.159.5(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-syntax-jsx': 7.28.6(@babel/core@7.29.0) @@ -12516,23 +12303,23 @@ snapshots: '@babel/template': 7.28.6 '@babel/traverse': 7.29.0 '@babel/types': 7.29.0 - '@tanstack/router-core': 1.158.4 - '@tanstack/router-generator': 1.158.4 + '@tanstack/router-core': 1.159.4 + '@tanstack/router-generator': 1.159.4 '@tanstack/router-utils': 1.158.0 '@tanstack/virtual-file-routes': 1.154.7 chokidar: 3.6.0 unplugin: 2.3.11 zod: 3.25.76 optionalDependencies: - '@tanstack/react-router': 1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@tanstack/react-router': 1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) vite: 8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0) transitivePeerDependencies: - supports-color - '@tanstack/router-ssr-query-core@1.158.4(@tanstack/query-core@5.90.20)(@tanstack/router-core@1.158.4)': + '@tanstack/router-ssr-query-core@1.159.4(@tanstack/query-core@5.90.20)(@tanstack/router-core@1.159.4)': dependencies: '@tanstack/query-core': 5.90.20 - '@tanstack/router-core': 1.158.4 + '@tanstack/router-core': 1.159.4 '@tanstack/router-utils@1.158.0': dependencies: @@ -12548,29 +12335,29 @@ snapshots: transitivePeerDependencies: - supports-color - '@tanstack/start-client-core@1.158.4': + '@tanstack/start-client-core@1.159.4': dependencies: - '@tanstack/router-core': 1.158.4 + '@tanstack/router-core': 1.159.4 '@tanstack/start-fn-stubs': 1.154.7 - '@tanstack/start-storage-context': 1.158.4 + '@tanstack/start-storage-context': 1.159.4 seroval: 1.4.2 tiny-invariant: 1.3.3 tiny-warning: 1.0.3 '@tanstack/start-fn-stubs@1.154.7': {} - '@tanstack/start-plugin-core@1.159.3(@tanstack/react-router@1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(crossws@0.4.3(srvx@0.10.1))(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0))': + '@tanstack/start-plugin-core@1.159.5(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(crossws@0.4.3(srvx@0.10.1))(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0))': dependencies: '@babel/code-frame': 7.27.1 '@babel/core': 7.29.0 '@babel/types': 7.29.0 '@rolldown/pluginutils': 1.0.0-beta.40 - '@tanstack/router-core': 1.158.4 - '@tanstack/router-generator': 1.158.4 - '@tanstack/router-plugin': 1.159.3(@tanstack/react-router@1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)) + '@tanstack/router-core': 1.159.4 + '@tanstack/router-generator': 1.159.4 + '@tanstack/router-plugin': 1.159.5(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)) '@tanstack/router-utils': 1.158.0 - '@tanstack/start-client-core': 1.158.4 - '@tanstack/start-server-core': 1.159.2(crossws@0.4.3(srvx@0.10.1)) + '@tanstack/start-client-core': 1.159.4 + '@tanstack/start-server-core': 1.159.4(crossws@0.4.3(srvx@0.10.1)) cheerio: 1.1.2 exsolve: 1.0.8 pathe: 2.0.3 @@ -12589,29 +12376,29 @@ snapshots: - vite-plugin-solid - webpack - '@tanstack/start-server-core@1.159.2(crossws@0.4.3(srvx@0.10.1))': + '@tanstack/start-server-core@1.159.4(crossws@0.4.3(srvx@0.10.1))': dependencies: '@tanstack/history': 1.154.14 - '@tanstack/router-core': 1.158.4 - '@tanstack/start-client-core': 1.158.4 - '@tanstack/start-storage-context': 1.158.4 + '@tanstack/router-core': 1.159.4 + '@tanstack/start-client-core': 1.159.4 + '@tanstack/start-storage-context': 1.159.4 h3-v2: h3@2.0.1-rc.14(crossws@0.4.3(srvx@0.10.1)) seroval: 1.4.2 tiny-invariant: 1.3.3 transitivePeerDependencies: - crossws - '@tanstack/start-storage-context@1.158.4': + '@tanstack/start-storage-context@1.159.4': dependencies: - '@tanstack/router-core': 1.158.4 + '@tanstack/router-core': 1.159.4 '@tanstack/store@0.8.0': {} '@tanstack/virtual-file-routes@1.154.7': {} - '@tanstack/zod-adapter@1.159.3(@tanstack/react-router@1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(zod@4.3.6)': + '@tanstack/zod-adapter@1.159.5(@tanstack/react-router@1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(zod@4.3.6)': dependencies: - '@tanstack/react-router': 1.159.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@tanstack/react-router': 1.159.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) zod: 4.3.6 '@tediousjs/connection-string@0.5.0': {} @@ -12932,36 +12719,36 @@ snapshots: '@types/node': 25.2.2 optional: true - '@typescript/native-preview-darwin-arm64@7.0.0-dev.20260208.1': + '@typescript/native-preview-darwin-arm64@7.0.0-dev.20260209.1': optional: true - '@typescript/native-preview-darwin-x64@7.0.0-dev.20260208.1': + '@typescript/native-preview-darwin-x64@7.0.0-dev.20260209.1': optional: true - '@typescript/native-preview-linux-arm64@7.0.0-dev.20260208.1': + '@typescript/native-preview-linux-arm64@7.0.0-dev.20260209.1': optional: true - '@typescript/native-preview-linux-arm@7.0.0-dev.20260208.1': + '@typescript/native-preview-linux-arm@7.0.0-dev.20260209.1': optional: true - '@typescript/native-preview-linux-x64@7.0.0-dev.20260208.1': + '@typescript/native-preview-linux-x64@7.0.0-dev.20260209.1': optional: true - '@typescript/native-preview-win32-arm64@7.0.0-dev.20260208.1': + '@typescript/native-preview-win32-arm64@7.0.0-dev.20260209.1': optional: true - '@typescript/native-preview-win32-x64@7.0.0-dev.20260208.1': + '@typescript/native-preview-win32-x64@7.0.0-dev.20260209.1': optional: true - '@typescript/native-preview@7.0.0-dev.20260208.1': + '@typescript/native-preview@7.0.0-dev.20260209.1': optionalDependencies: - '@typescript/native-preview-darwin-arm64': 7.0.0-dev.20260208.1 - '@typescript/native-preview-darwin-x64': 7.0.0-dev.20260208.1 - '@typescript/native-preview-linux-arm': 7.0.0-dev.20260208.1 - '@typescript/native-preview-linux-arm64': 7.0.0-dev.20260208.1 - '@typescript/native-preview-linux-x64': 7.0.0-dev.20260208.1 - '@typescript/native-preview-win32-arm64': 7.0.0-dev.20260208.1 - '@typescript/native-preview-win32-x64': 7.0.0-dev.20260208.1 + '@typescript/native-preview-darwin-arm64': 7.0.0-dev.20260209.1 + '@typescript/native-preview-darwin-x64': 7.0.0-dev.20260209.1 + '@typescript/native-preview-linux-arm': 7.0.0-dev.20260209.1 + '@typescript/native-preview-linux-arm64': 7.0.0-dev.20260209.1 + '@typescript/native-preview-linux-x64': 7.0.0-dev.20260209.1 + '@typescript/native-preview-win32-arm64': 7.0.0-dev.20260209.1 + '@typescript/native-preview-win32-x64': 7.0.0-dev.20260209.1 '@typespec/ts-http-runtime@0.3.2': dependencies: @@ -13068,12 +12855,6 @@ snapshots: get-intrinsic: 1.3.0 is-array-buffer: 3.0.5 - asn1js@3.0.7: - dependencies: - pvtsutils: 1.3.6 - pvutils: 1.1.5 - tslib: 2.8.1 - ast-types@0.13.4: dependencies: tslib: 2.8.1 @@ -13185,7 +12966,7 @@ snapshots: node-addon-api: 8.5.0 node-gyp-build: 4.8.4 - better-auth@1.5.0-beta.13(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@tanstack/react-start@1.159.3(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)))(drizzle-kit@1.0.0-beta.9-e89174b)(drizzle-orm@1.0.0-beta.9-e89174b(@electric-sql/pglite@0.3.2)(@opentelemetry/api@1.9.0)(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@types/mssql@9.1.9)(@types/pg@8.16.0)(mssql@11.0.1)(mysql2@3.15.3)(pg@8.18.0)(postgres@3.4.7)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)))(mongodb@7.0.0(socks@2.8.7))(mysql2@3.15.3)(pg@8.18.0)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + better-auth@1.5.0-beta.13(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@tanstack/react-start@1.159.5(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)))(drizzle-kit@1.0.0-beta.9-e89174b)(drizzle-orm@1.0.0-beta.9-e89174b(@electric-sql/pglite@0.3.2)(@opentelemetry/api@1.9.0)(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@types/mssql@9.1.9)(@types/pg@8.16.0)(mssql@11.0.1)(mysql2@3.15.3)(pg@8.18.0)(postgres@3.4.7)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)))(mongodb@7.0.0(socks@2.8.7))(mysql2@3.15.3)(pg@8.18.0)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: '@better-auth/core': 1.5.0-beta.13(@better-auth/utils@0.3.1)(@better-fetch/fetch@1.1.21)(better-call@1.2.1(zod@4.3.6))(jose@6.1.3)(kysely@0.28.10)(nanostores@1.1.0) '@better-auth/drizzle-adapter': 1.5.0-beta.13(@better-auth/core@1.5.0-beta.13(@better-auth/utils@0.3.1)(@better-fetch/fetch@1.1.21)(better-call@1.2.1(zod@4.3.6))(jose@6.1.3)(kysely@0.28.10)(nanostores@1.1.0))(@better-auth/utils@0.3.1)(drizzle-orm@1.0.0-beta.9-e89174b(@electric-sql/pglite@0.3.2)(@opentelemetry/api@1.9.0)(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@types/mssql@9.1.9)(@types/pg@8.16.0)(mssql@11.0.1)(mysql2@3.15.3)(pg@8.18.0)(postgres@3.4.7)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))) @@ -13206,7 +12987,7 @@ snapshots: zod: 4.3.6 optionalDependencies: '@prisma/client': 7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3) - '@tanstack/react-start': 1.159.3(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)) + '@tanstack/react-start': 1.159.5(crossws@0.4.3(srvx@0.10.1))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(vite@8.0.0-beta.13(@types/node@25.2.2)(esbuild@0.27.2)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)) drizzle-kit: 1.0.0-beta.9-e89174b drizzle-orm: 1.0.0-beta.9-e89174b(@electric-sql/pglite@0.3.2)(@opentelemetry/api@1.9.0)(@prisma/client@7.2.0(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(@types/mssql@9.1.9)(@types/pg@8.16.0)(mssql@11.0.1)(mysql2@3.15.3)(pg@8.18.0)(postgres@3.4.7)(prisma@7.2.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)) mongodb: 7.0.0(socks@2.8.7) @@ -14149,9 +13930,9 @@ snapshots: forwarded@0.2.0: {} - framer-motion@12.33.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + framer-motion@12.34.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: - motion-dom: 12.33.0 + motion-dom: 12.34.0 motion-utils: 12.29.2 tslib: 2.8.1 optionalDependencies: @@ -14986,15 +14767,15 @@ snapshots: moo@0.5.2: {} - motion-dom@12.33.0: + motion-dom@12.34.0: dependencies: motion-utils: 12.29.2 motion-utils@12.29.2: {} - motion@12.33.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + motion@12.34.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: - framer-motion: 12.33.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + framer-motion: 12.34.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) tslib: 2.8.1 optionalDependencies: react: 19.2.4 @@ -15705,12 +15486,6 @@ snapshots: pure-rand@6.1.0: {} - pvtsutils@1.3.6: - dependencies: - tslib: 2.8.1 - - pvutils@1.1.5: {} - qrcode.react@4.2.0(react@19.2.4): dependencies: react: 19.2.4 @@ -15898,8 +15673,6 @@ snapshots: tiny-invariant: 1.3.3 tslib: 2.8.1 - reflect-metadata@0.2.2: {} - reflect.getprototypeof@1.0.10: dependencies: call-bind: 1.0.8 @@ -16574,8 +16347,6 @@ snapshots: minimist: 1.2.8 strip-bom: 3.0.0 - tslib@1.14.1: {} - tslib@2.8.1: {} tsx@4.21.0: @@ -16585,10 +16356,6 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - tsyringe@4.10.0: - dependencies: - tslib: 1.14.1 - tw-animate-css@1.4.0: {} type-fest@0.16.0: {} diff --git a/src/integrations/auth/client.ts b/src/integrations/auth/client.ts index 8f298d199..16243ace5 100644 --- a/src/integrations/auth/client.ts +++ b/src/integrations/auth/client.ts @@ -1,4 +1,3 @@ -import { passkeyClient } from "@better-auth/passkey/client"; import { apiKeyClient, genericOAuthClient, @@ -22,7 +21,6 @@ const getAuthClient = () => { } }, }), - passkeyClient(), genericOAuthClient(), inferAdditionalFields(), ], diff --git a/src/integrations/auth/config.ts b/src/integrations/auth/config.ts index 14e78f4bc..81c198893 100644 --- a/src/integrations/auth/config.ts +++ b/src/integrations/auth/config.ts @@ -1,5 +1,4 @@ import { BetterAuthError } from "@better-auth/core/error"; -import { passkey } from "@better-auth/passkey"; import { drizzleAdapter } from "better-auth/adapters/drizzle"; import { betterAuth } from "better-auth/minimal"; import { apiKey, type GenericOAuthConfig, genericOAuth, openAPI, twoFactor } from "better-auth/plugins"; @@ -228,17 +227,8 @@ const getAuthConfig = () => { usernameValidator: (username) => /^[a-z0-9._-]+$/.test(username), validationOrder: { username: "post-normalization", displayUsername: "post-normalization" }, }), - twoFactor({ - issuer: "Reactive Resume", - }), - passkey({ - origin: env.APP_URL, - rpName: "Reactive Resume", - rpID: new URL(env.APP_URL).hostname, - }), - genericOAuth({ - config: authConfigs, - }), + twoFactor({ issuer: "Reactive Resume" }), + genericOAuth({ config: authConfigs }), tanstackStartCookies(), ], }); diff --git a/src/routes/auth/-components/social-auth.tsx b/src/routes/auth/-components/social-auth.tsx index 60e5c4ed3..8dff94c24 100644 --- a/src/routes/auth/-components/social-auth.tsx +++ b/src/routes/auth/-components/social-auth.tsx @@ -1,6 +1,6 @@ import { t } from "@lingui/core/macro"; import { Trans } from "@lingui/react/macro"; -import { FingerprintSimpleIcon, GithubLogoIcon, GoogleLogoIcon, VaultIcon } from "@phosphor-icons/react"; +import { GithubLogoIcon, GoogleLogoIcon, VaultIcon } from "@phosphor-icons/react"; import { useQuery } from "@tanstack/react-query"; import { useRouter } from "@tanstack/react-router"; import { toast } from "sonner"; @@ -13,20 +13,6 @@ export function SocialAuth() { const router = useRouter(); const { data: authProviders = {} } = useQuery(orpc.auth.providers.list.queryOptions()); - const handlePasskeyLogin = async () => { - const toastId = toast.loading(t`Signing in...`); - - const { error } = await authClient.signIn.passkey(); - - if (error) { - toast.error(error.message, { id: toastId }); - return; - } - - toast.dismiss(toastId); - router.invalidate(); - }; - const handleSocialLogin = async (provider: string) => { const toastId = toast.loading(t`Signing in...`); @@ -75,15 +61,6 @@ export function SocialAuth() {
- - -
- - - {passkeys.map((passkey) => ( - - ))} - - - ); -} - -type PasskeyItemProps = { - passkey: Passkey; -}; - -function PasskeyItem({ passkey }: PasskeyItemProps) { - const confirm = useConfirm(); - const queryClient = useQueryClient(); - - const handleDelete = async () => { - const confirmed = await confirm(t`Are you sure you want to delete this passkey?`, { - description: t`You cannot use the passkey "${passkey.name ?? "(WebAuthn Device)"}" anymore to sign in after deletion. This action cannot be undone.`, - confirmText: "Delete", - cancelText: "Cancel", - }); - if (!confirmed) return; - - const toastId = toast.loading(t`Deleting your passkey...`); - - const { error } = await authClient.passkey.deletePasskey({ id: passkey.id }); - - if (error) { - toast.error(error.message, { id: toastId }); - return; - } - - toast.success(t`Your passkey has been deleted successfully.`, { id: toastId }); - queryClient.invalidateQueries({ queryKey: ["auth", "passkeys"] }); - }; - - return ( - - - - {passkey.name ?? "1Password"} - - - Added on {passkey.createdAt.toLocaleDateString()} - - - ); -} diff --git a/src/routes/dashboard/settings/authentication/index.tsx b/src/routes/dashboard/settings/authentication/index.tsx index 809898eb8..e5ba7d637 100644 --- a/src/routes/dashboard/settings/authentication/index.tsx +++ b/src/routes/dashboard/settings/authentication/index.tsx @@ -5,7 +5,6 @@ import { motion } from "motion/react"; import { Separator } from "@/components/ui/separator"; import { DashboardHeader } from "../../-components/header"; import { useEnabledProviders } from "./-components/hooks"; -import { PasskeysSection } from "./-components/passkeys"; import { PasswordSection } from "./-components/password"; import { SocialProviderSection } from "./-components/social-provider"; import { TwoFactorSection } from "./-components/two-factor"; @@ -33,7 +32,12 @@ function RouteComponent() { - + {/* + Passkeys are temporarily disabled due to an upstream issue with the authentication provider. + See https://github.com/better-auth/better-auth/issues/7463 for more details. + + + */} {"google" in enabledProviders && } diff --git a/vite.config.ts b/vite.config.ts index a240d35f1..ff7cd0448 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,56 +1,23 @@ -import { fileURLToPath } from "node:url"; import { lingui } from "@lingui/vite-plugin"; import tailwindcss from "@tailwindcss/vite"; import { tanstackStart } from "@tanstack/react-start/plugin/vite"; import viteReact from "@vitejs/plugin-react"; import { nitro } from "nitro/vite"; -import type { Plugin } from "vite"; import { defineConfig } from "vite"; import { VitePWA } from "vite-plugin-pwa"; -// Polyfill for Reflect.getMetadata() (required by @better-auth/passkey) -const REFLECT_POLYFILL = `if("function"!=typeof Reflect.getMetadata){const e=new WeakMap,t=(t,a)=>e.get(t)?.get(a),a=(t,a)=>{let n=e.get(t);n||(n=new Map,e.set(t,n));let f=n.get(a);return f||(f=new Map,n.set(a,f)),f},n=(e,a,f)=>{const c=t(a,f);if(c?.has(e))return c.get(e);const s=Object.getPrototypeOf(a);return s?n(e,s,f):void 0};Reflect.getMetadata=(e,t,a)=>n(e,t,a),Reflect.getOwnMetadata=(e,a,n)=>t(a,n)?.get(e),Reflect.defineMetadata=(e,t,n,f)=>a(n,f).set(e,t),Reflect.hasMetadata=(e,t,a)=>void 0!==n(e,t,a),Reflect.hasOwnMetadata=(e,a,n)=>t(a,n)?.has(e)??!1,Reflect.metadata=(e,t)=>(n,f)=>a(n,f).set(e,t)};`; - -function reflectPolyfillPlugin(): Plugin { - return { - name: "reflect-polyfill", - renderChunk(code, chunk) { - if (chunk.fileName.includes("passkey")) return `${REFLECT_POLYFILL}\n${code}`; - return null; - }, - }; -} - const config = defineConfig({ define: { __APP_VERSION__: JSON.stringify(process.env.npm_package_version), }, resolve: { - alias: { - "@": fileURLToPath(new URL("./src", import.meta.url)), - }, - }, - - optimizeDeps: { - exclude: [ - "@tanstack/react-start", - "@tanstack/react-start/client", - "@tanstack/react-start/server", - "@tanstack/start-server-core", - ], + tsconfigPaths: true, }, build: { + sourcemap: true, chunkSizeWarningLimit: 10 * 1024, // 10mb - - // Mute MODULE_LEVEL_DIRECTIVE warnings - rolldownOptions: { - onLog(level, log, defaultHandler) { - if (level === "warn" && log.code === "MODULE_LEVEL_DIRECTIVE") return; - defaultHandler(level, log); - }, - }, }, server: { @@ -65,7 +32,6 @@ const config = defineConfig({ }, plugins: [ - reflectPolyfillPlugin(), lingui(), tailwindcss(), nitro({ plugins: ["plugins/1.migrate.ts"] }),