From 0e7f10d47b23f7399681725746c04296fd40aed9 Mon Sep 17 00:00:00 2001
From: Samuel Jensen <44519206+nichtsam@users.noreply.github.com>
Date: Tue, 28 Jan 2025 10:30:22 +0100
Subject: [PATCH] revert maigc link
---
.env.example | 11 +-
app/components/emails/magic-link.tsx | 48 --
app/components/status-button.tsx | 2 +-
app/components/ui/separator.tsx | 29 -
app/routes/_auth+/auth.magic.tsx | 92 --
app/routes/_auth+/login.tsx | 83 +-
app/utils/auth/magic-link.server.ts | 24 -
app/utils/email.server.tsx | 34 -
app/utils/env.server.ts | 3 -
drizzle/schema.ts | 1 -
package.json | 7 -
pnpm-lock.yaml | 1165 +-------------------------
12 files changed, 12 insertions(+), 1487 deletions(-)
delete mode 100644 app/components/emails/magic-link.tsx
delete mode 100644 app/components/ui/separator.tsx
delete mode 100644 app/routes/_auth+/auth.magic.tsx
delete mode 100644 app/utils/auth/magic-link.server.ts
delete mode 100644 app/utils/email.server.tsx
diff --git a/.env.example b/.env.example
index 090eaa9..fd42760 100644
--- a/.env.example
+++ b/.env.example
@@ -1,11 +1,6 @@
-# set this to true to prevent search engines from indexing the website
-# default to false for seo safety
-DISALLOW_INDEXING="false"
-
# generate with `openssl rand -hex 32`
SESSION_SECRET="session_secret"
CSRF_SECRET="csrf_secret"
-MAGIC_LINK_SECRET="magic_link_secret"
# Github > Settings > Developer settings > New App
# or simply https://github.com/settings/developers
@@ -23,9 +18,9 @@ TURSO_DB_URL="file:local/dev.db"
# turso db tokens create
TURSO_DB_AUTH_TOKEN="MOCK_TURSO_DB_AUTH_TOKEN"
-# Resend > API Keys > Create API Key
-# https://resend.com/api-keys
-RESEND_API_KEY="MOCK_RESEND_API_KEY"
+# set this to true to prevent search engines from indexing the website
+# default to false for seo safety
+DISALLOW_INDEXING="false"
# Sentry > Project Setting > SDK Setup > Client Keys
SENTRY_DNS="your-dns"
diff --git a/app/components/emails/magic-link.tsx b/app/components/emails/magic-link.tsx
deleted file mode 100644
index cf48df7..0000000
--- a/app/components/emails/magic-link.tsx
+++ /dev/null
@@ -1,48 +0,0 @@
-import {
- Html,
- Head,
- Preview,
- Body,
- Container,
- Heading,
- Link,
- Text,
-} from '@react-email/components'
-import { type User } from '#drizzle/schema.ts'
-
-export namespace MagicLink {
- export type Props = {
- magicLink: string
- user?: User
- }
-}
-export function MagicLinkEmail({ magicLink, user }: MagicLink.Props) {
- return (
-
-
- Log in or sign up with your magic link.
-
-
-
- {user
- ? `Hey ${user.display_name}! Welcome back!`
- : `Hey there! Welcome!`}
-
-
- 🎩 Here's your magic link
- 👉 {user ? 'Log In' : 'Sign Up'}
-
- If you didn’t request this email, you can safely ignore it.
-
-
- This link is only valid for ten minutes.
-
- If it has expired, you can request a new one.
-
-
-
-
- )
-}
-
-export default MagicLinkEmail
diff --git a/app/components/status-button.tsx b/app/components/status-button.tsx
index 1dc30f5..8f42bf9 100644
--- a/app/components/status-button.tsx
+++ b/app/components/status-button.tsx
@@ -9,7 +9,7 @@ export interface StatusButtonProps extends ButtonProps {
export const StatusButton = forwardRef(
({ status, className, children, ...props }, ref) => {
const statusIcon = {
- success: ,
+ success: ,
pending: ,
error: (
,
- React.ComponentPropsWithoutRef
->(
- (
- { className, orientation = 'horizontal', decorative = true, ...props },
- ref,
- ) => (
-
- ),
-)
-Separator.displayName = SeparatorPrimitive.Root.displayName
-
-export { Separator }
diff --git a/app/routes/_auth+/auth.magic.tsx b/app/routes/_auth+/auth.magic.tsx
deleted file mode 100644
index 126ed3d..0000000
--- a/app/routes/_auth+/auth.magic.tsx
+++ /dev/null
@@ -1,92 +0,0 @@
-import { redirect } from 'react-router'
-import { getUserId, login } from '#app/utils/auth/auth.server.ts'
-import { createAuthenticator } from '#app/utils/auth/magic-link.server.ts'
-import { onboardingCookie } from '#app/utils/auth/onboarding.server.ts'
-import { db } from '#app/utils/db.server.ts'
-import { getRedirect } from '#app/utils/redirect.server.ts'
-import { mergeHeaders } from '#app/utils/request.server.ts'
-import { ServerTiming } from '#app/utils/timings.server.ts'
-import { redirectWithToast } from '#app/utils/toast.server.ts'
-import { type Route } from './+types/auth.magic'
-
-export const loader = async ({ request }: Route.LoaderArgs) => {
- const authenticator = createAuthenticator(request)
- const timing = new ServerTiming()
-
- timing.time('authenticate email', 'Authenticate email')
- const authResult = await authenticator
- .authenticate('email-link', request)
- .then(
- (data) =>
- ({
- success: true,
- data,
- }) as const,
- (error) =>
- ({
- success: false,
- error,
- }) as const,
- )
- timing.timeEnd('authenticate email')
-
- if (!authResult.success) {
- console.error(authResult.error)
-
- throw redirect('/login')
- }
-
- const email = authResult.data
-
- const { redirectTo, discardHeaders } = getRedirect(request) ?? {}
- const headers = new Headers()
- mergeHeaders(headers, discardHeaders)
-
- timing.time('get user id', 'Get user id in database')
- const userId = await getUserId(request)
- timing.timeEnd('get user id')
-
- // logged in
- if (userId) {
- headers.append('Server-Timing', timing.toString())
- return redirectWithToast(
- '/settings/profile',
- {
- type: 'error',
- title: 'Already Signed In',
- message: `You are already signed in with an account.`,
- },
- { headers },
- )
- }
-
- timing.time('get email owner', 'Get email owner in database')
- const emailOwner = await db.query.userTable.findFirst({
- where: (userTable, { eq }) => eq(userTable.email, email),
- })
- timing.timeEnd('get email owner')
-
- if (emailOwner) {
- headers.append('Server-Timing', timing.toString())
- return await login(
- {
- request,
- redirectTo,
- userId: emailOwner.id,
- },
- { headers },
- )
- }
-
- // real new user, send to onboarding
- headers.append(
- 'set-cookie',
- await onboardingCookie.serialize({
- type: 'magic-link',
- email,
- }),
- )
-
- headers.append('Server-Timing', timing.toString())
- throw redirect('/onboarding', { headers })
-}
diff --git a/app/routes/_auth+/login.tsx b/app/routes/_auth+/login.tsx
index 0fd628f..3716e9b 100644
--- a/app/routes/_auth+/login.tsx
+++ b/app/routes/_auth+/login.tsx
@@ -1,10 +1,5 @@
-import { getFormProps, getInputProps, useForm } from '@conform-to/react'
-import { getZodConstraint, parseWithZod } from '@conform-to/zod'
import { type SEOHandle } from '@nasa-gcn/remix-seo'
-import { data, Form, useActionData, useSearchParams } from 'react-router'
-import { z } from 'zod'
-import { Field } from '#app/components/forms.tsx'
-import { StatusButton } from '#app/components/status-button.tsx'
+import { useSearchParams } from 'react-router'
import {
Card,
CardContent,
@@ -12,16 +7,11 @@ import {
CardHeader,
CardTitle,
} from '#app/components/ui/card.tsx'
-import { Separator } from '#app/components/ui/separator.tsx'
import { requireAnonymous } from '#app/utils/auth/auth.server.ts'
import {
ProviderConnectionForm,
providerNames,
} from '#app/utils/auth/connections.tsx'
-import { createAuthenticator } from '#app/utils/auth/magic-link.server.ts'
-import { combineHeaders } from '#app/utils/request.server.ts'
-import { createToastHeaders } from '#app/utils/toast.server.ts'
-import { useIsPending } from '#app/utils/ui.ts'
import { type Route } from './+types/login'
export const handle: SEOHandle = {
@@ -44,37 +34,6 @@ export async function loader({ request }: Route.LoaderArgs) {
return null
}
-export async function action({ request }: Route.ActionArgs) {
- const formData = await request.clone().formData()
- const submission = parseWithZod(formData, {
- schema: MagicLinkLoginSchema,
- })
-
- if (submission.status !== 'success') {
- return data(
- { result: submission.reply() },
- { status: submission.status === 'error' ? 400 : 200 },
- )
- }
-
- const authenticator = createAuthenticator(request)
- const authHeaders = (await authenticator
- .authenticate('email-link', request)
- .catch((headers) => headers)) as Headers
-
- const toastHeaders = await createToastHeaders({
- title: '✨ Magic Link has been sent',
- message: `sent to ${submission.value.email}`,
- })
-
- return data(
- { result: submission.reply() },
- {
- headers: combineHeaders(authHeaders, toastHeaders),
- },
- )
-}
-
export default function Login() {
const [searchParams] = useSearchParams()
const redirectTo = searchParams.get('redirectTo')
@@ -87,8 +46,6 @@ export default function Login() {
Choose your path
-
-
{providerNames.map((providerName) => (
-
@@ -104,41 +61,3 @@ export default function Login() {
)
}
-
-export const MagicLinkLoginSchema = z.object({
- email: z.string().email(),
-})
-
-function MagicLinkLogin() {
- const isPending = useIsPending()
- const actionData = useActionData()
- const [form, fields] = useForm({
- id: 'magic-link-login-form',
- constraint: getZodConstraint(MagicLinkLoginSchema),
- lastResult: actionData?.result,
- shouldRevalidate: 'onBlur',
- onValidate: ({ formData }) =>
- parseWithZod(formData, { schema: MagicLinkLoginSchema }),
- })
-
- return (
-
- )
-}
diff --git a/app/utils/auth/magic-link.server.ts b/app/utils/auth/magic-link.server.ts
deleted file mode 100644
index 812e68c..0000000
--- a/app/utils/auth/magic-link.server.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-import { EmailLinkStrategy } from '@nichtsam/remix-auth-email-link'
-import { Authenticator } from 'remix-auth'
-import { sendMagicLinkEmail } from '../email.server'
-import { env } from '../env.server'
-import { getDomainUrl } from '../request.server'
-
-export const createAuthenticator = (request: Request) => {
- const authenticator = new Authenticator()
- const magicEndpoint = new URL('/auth/magic', getDomainUrl(request))
- authenticator.use(
- new EmailLinkStrategy(
- {
- secret: env.MAGIC_LINK_SECRET,
- shouldValidateSessionMagicLink: true,
- magicEndpoint,
- sendEmail: ({ email, magicLink }) =>
- sendMagicLinkEmail({ email, magicLink, domain: magicEndpoint.host }),
- },
- async ({ email }) => email,
- ),
- )
-
- return authenticator
-}
diff --git a/app/utils/email.server.tsx b/app/utils/email.server.tsx
deleted file mode 100644
index 4e14c44..0000000
--- a/app/utils/email.server.tsx
+++ /dev/null
@@ -1,34 +0,0 @@
-import { render } from '@react-email/components'
-import { Resend } from 'resend'
-import MagicLinkEmail from '#app/components/emails/magic-link.tsx'
-import { db } from './db.server'
-import { env } from './env.server'
-
-const resend = new Resend(env.RESEND_API_KEY)
-
-export async function sendMagicLinkEmail({
- email,
- magicLink,
-}: {
- email: string
- magicLink: string
- domain: string
-}) {
- const subject = `🎩 Here's your magic link for nichtsam.com`
- const from = 'nichtsam '
- const to = email
-
- const user = await db.query.userTable.findFirst({
- where: (record, { eq }) => eq(record.email, email),
- })
-
- const react =
-
- await resend.emails.send({
- subject,
- from,
- to,
- react,
- text: await render(react, { plainText: true }),
- })
-}
diff --git a/app/utils/env.server.ts b/app/utils/env.server.ts
index 3223a2e..643d25b 100644
--- a/app/utils/env.server.ts
+++ b/app/utils/env.server.ts
@@ -13,7 +13,6 @@ const envSchema = z
SESSION_SECRET: z.string(),
CSRF_SECRET: z.string().optional(),
- MAGIC_LINK_SECRET: z.string(),
GITHUB_CLIENT_ID: z.string(),
GITHUB_CLIENT_SECRET: z.string(),
@@ -25,8 +24,6 @@ const envSchema = z
TURSO_DB_URL: z.string().url(),
TURSO_DB_AUTH_TOKEN: z.string(),
- RESEND_API_KEY: z.string(),
-
SENTRY_DSN: z.string().url().optional(),
})
.readonly()
diff --git a/drizzle/schema.ts b/drizzle/schema.ts
index 1e9b8af..851fd3d 100644
--- a/drizzle/schema.ts
+++ b/drizzle/schema.ts
@@ -10,7 +10,6 @@ import {
import { createInsertSchema } from 'drizzle-zod'
import { nanoid as createId } from 'nanoid'
-export type User = typeof userTable.$inferSelect
export const userTable = sqliteTable('user', {
id: text('id').primaryKey().$default(createId).notNull(),
diff --git a/package.json b/package.json
index 5aac3fb..50bfe3e 100644
--- a/package.json
+++ b/package.json
@@ -8,7 +8,6 @@
},
"scripts": {
"dev": "node ./server.js",
- "dev:email": "email dev --dir ./app/components/emails/",
"build": "run-s build:*",
"build:icons": "tsx ./other/build-icons.ts",
"build:router": "react-router build",
@@ -29,7 +28,6 @@
"@libsql/client": "0.14.0",
"@nasa-gcn/remix-seo": "2.0.1",
"@nichtsam/remix-auth-discord": "3.0.0",
- "@nichtsam/remix-auth-email-link": "3.0.0",
"@radix-ui/react-aspect-ratio": "1.1.1",
"@radix-ui/react-avatar": "1.1.2",
"@radix-ui/react-checkbox": "1.1.3",
@@ -39,13 +37,10 @@
"@radix-ui/react-navigation-menu": "1.2.3",
"@radix-ui/react-progress": "1.1.1",
"@radix-ui/react-scroll-area": "1.2.2",
- "@radix-ui/react-separator": "1.1.1",
"@radix-ui/react-slot": "1.1.1",
"@radix-ui/react-toast": "1.2.4",
"@radix-ui/react-tooltip": "1.1.6",
"@radix-ui/react-visually-hidden": "1.1.1",
- "@react-email/components": "0.0.32",
- "@react-email/render": "1.0.4",
"@react-router/express": "^7.0.0",
"@react-router/node": "^7.0.0",
"@react-router/remix-config-routes-adapter": "0.0.0-nightly-bf7ecb711-20240911",
@@ -92,7 +87,6 @@
"remix-auth-discord": "1.4.1",
"remix-auth-github": "3.0.2",
"remix-utils": "8.0.0",
- "resend": "4.1.1",
"sonner": "1.7.1",
"source-map-support": "0.5.21",
"spin-delay": "2.0.1",
@@ -125,7 +119,6 @@
"npm-run-all": "4.1.5",
"prettier": "3.4.2",
"prettier-plugin-tailwindcss": "0.6.9",
- "react-email": "3.0.6",
"remix-flat-routes": "0.6.5",
"tailwindcss": "3.4.17",
"tailwindcss-animate": "1.0.7",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 4ab7cfd..fd0a8e3 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -37,9 +37,6 @@ importers:
'@nichtsam/remix-auth-discord':
specifier: 3.0.0
version: 3.0.0(remix-auth@4.1.0)
- '@nichtsam/remix-auth-email-link':
- specifier: 3.0.0
- version: 3.0.0(remix-auth@4.1.0)
'@radix-ui/react-aspect-ratio':
specifier: 1.1.1
version: 1.1.1(@types/react-dom@19.0.2(@types/react@19.0.2))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
@@ -67,9 +64,6 @@ importers:
'@radix-ui/react-scroll-area':
specifier: 1.2.2
version: 1.2.2(@types/react-dom@19.0.2(@types/react@19.0.2))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
- '@radix-ui/react-separator':
- specifier: 1.1.1
- version: 1.1.1(@types/react-dom@19.0.2(@types/react@19.0.2))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
'@radix-ui/react-slot':
specifier: 1.1.1
version: 1.1.1(@types/react@19.0.2)(react@19.0.0)
@@ -82,12 +76,6 @@ importers:
'@radix-ui/react-visually-hidden':
specifier: 1.1.1
version: 1.1.1(@types/react-dom@19.0.2(@types/react@19.0.2))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
- '@react-email/components':
- specifier: 0.0.32
- version: 0.0.32(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
- '@react-email/render':
- specifier: 1.0.4
- version: 1.0.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
'@react-router/express':
specifier: ^7.0.0
version: 7.1.1(express@4.21.2)(react-router@7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(typescript@5.7.2)
@@ -226,9 +214,6 @@ importers:
remix-utils:
specifier: 8.0.0
version: 8.0.0(patch_hash=zhxot5zfmdpaee33ixedpoengi)(@oslojs/crypto@1.0.1)(@oslojs/encoding@1.1.0)(react-router@7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0)(zod@3.24.1)
- resend:
- specifier: 4.1.1
- version: 4.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
sonner:
specifier: 1.7.1
version: 1.7.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
@@ -320,9 +305,6 @@ importers:
prettier-plugin-tailwindcss:
specifier: 0.6.9
version: 0.6.9(prettier@3.4.2)
- react-email:
- specifier: 3.0.6
- version: 3.0.6(@opentelemetry/api@1.9.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
remix-flat-routes:
specifier: 0.6.5
version: 0.6.5(@remix-run/dev@2.15.2(@remix-run/react@2.15.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2))(@remix-run/serve@2.15.2(typescript@5.7.2))(@types/node@22.10.2)(typescript@5.7.2)(vite@5.4.11(@types/node@22.10.2)))
@@ -377,10 +359,6 @@ packages:
resolution: {integrity: sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==}
engines: {node: '>=6.9.0'}
- '@babel/core@7.24.5':
- resolution: {integrity: sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==}
- engines: {node: '>=6.9.0'}
-
'@babel/core@7.26.0':
resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==}
engines: {node: '>=6.9.0'}
@@ -473,11 +451,6 @@ packages:
resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==}
engines: {node: '>=6.9.0'}
- '@babel/parser@7.24.5':
- resolution: {integrity: sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==}
- engines: {node: '>=6.0.0'}
- hasBin: true
-
'@babel/parser@7.26.2':
resolution: {integrity: sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==}
engines: {node: '>=6.0.0'}
@@ -560,9 +533,6 @@ packages:
'@drizzle-team/brocli@0.10.2':
resolution: {integrity: sha512-z33Il7l5dKjUgGULTqBsQBQwckHh5AbIuxhdsIxDDiZAzBOrZO6q9ogcWC65kU382AfynTfgNumVcNIjuIua6w==}
- '@emnapi/runtime@1.3.1':
- resolution: {integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==}
-
'@emotion/hash@0.9.1':
resolution: {integrity: sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==}
@@ -1345,111 +1315,6 @@ packages:
resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==}
engines: {node: '>=18.18'}
- '@img/sharp-darwin-arm64@0.33.5':
- resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [arm64]
- os: [darwin]
-
- '@img/sharp-darwin-x64@0.33.5':
- resolution: {integrity: sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [x64]
- os: [darwin]
-
- '@img/sharp-libvips-darwin-arm64@1.0.4':
- resolution: {integrity: sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==}
- cpu: [arm64]
- os: [darwin]
-
- '@img/sharp-libvips-darwin-x64@1.0.4':
- resolution: {integrity: sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==}
- cpu: [x64]
- os: [darwin]
-
- '@img/sharp-libvips-linux-arm64@1.0.4':
- resolution: {integrity: sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==}
- cpu: [arm64]
- os: [linux]
-
- '@img/sharp-libvips-linux-arm@1.0.5':
- resolution: {integrity: sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==}
- cpu: [arm]
- os: [linux]
-
- '@img/sharp-libvips-linux-s390x@1.0.4':
- resolution: {integrity: sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==}
- cpu: [s390x]
- os: [linux]
-
- '@img/sharp-libvips-linux-x64@1.0.4':
- resolution: {integrity: sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==}
- cpu: [x64]
- os: [linux]
-
- '@img/sharp-libvips-linuxmusl-arm64@1.0.4':
- resolution: {integrity: sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==}
- cpu: [arm64]
- os: [linux]
-
- '@img/sharp-libvips-linuxmusl-x64@1.0.4':
- resolution: {integrity: sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==}
- cpu: [x64]
- os: [linux]
-
- '@img/sharp-linux-arm64@0.33.5':
- resolution: {integrity: sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [arm64]
- os: [linux]
-
- '@img/sharp-linux-arm@0.33.5':
- resolution: {integrity: sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [arm]
- os: [linux]
-
- '@img/sharp-linux-s390x@0.33.5':
- resolution: {integrity: sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [s390x]
- os: [linux]
-
- '@img/sharp-linux-x64@0.33.5':
- resolution: {integrity: sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [x64]
- os: [linux]
-
- '@img/sharp-linuxmusl-arm64@0.33.5':
- resolution: {integrity: sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [arm64]
- os: [linux]
-
- '@img/sharp-linuxmusl-x64@0.33.5':
- resolution: {integrity: sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [x64]
- os: [linux]
-
- '@img/sharp-wasm32@0.33.5':
- resolution: {integrity: sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [wasm32]
-
- '@img/sharp-win32-ia32@0.33.5':
- resolution: {integrity: sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [ia32]
- os: [win32]
-
- '@img/sharp-win32-x64@0.33.5':
- resolution: {integrity: sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [x64]
- os: [win32]
-
'@isaacs/cliui@8.0.2':
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
engines: {node: '>=12'}
@@ -1559,67 +1424,11 @@ packages:
'@neon-rs/load@0.0.4':
resolution: {integrity: sha512-kTPhdZyTQxB+2wpiRcFWrDcejc4JI6tkPuS7UZCG4l6Zvc5kU/gGQ/ozvHTh1XR5tS+UlfAfGuPajjzQjCiHCw==}
- '@next/env@15.1.2':
- resolution: {integrity: sha512-Hm3jIGsoUl6RLB1vzY+dZeqb+/kWPZ+h34yiWxW0dV87l8Im/eMOwpOA+a0L78U0HM04syEjXuRlCozqpwuojQ==}
-
- '@next/swc-darwin-arm64@15.1.2':
- resolution: {integrity: sha512-b9TN7q+j5/7+rGLhFAVZiKJGIASuo8tWvInGfAd8wsULjB1uNGRCj1z1WZwwPWzVQbIKWFYqc+9L7W09qwt52w==}
- engines: {node: '>= 10'}
- cpu: [arm64]
- os: [darwin]
-
- '@next/swc-darwin-x64@15.1.2':
- resolution: {integrity: sha512-caR62jNDUCU+qobStO6YJ05p9E+LR0EoXh1EEmyU69cYydsAy7drMcOlUlRtQihM6K6QfvNwJuLhsHcCzNpqtA==}
- engines: {node: '>= 10'}
- cpu: [x64]
- os: [darwin]
-
- '@next/swc-linux-arm64-gnu@15.1.2':
- resolution: {integrity: sha512-fHHXBusURjBmN6VBUtu6/5s7cCeEkuGAb/ZZiGHBLVBXMBy4D5QpM8P33Or8JD1nlOjm/ZT9sEE5HouQ0F+hUA==}
- engines: {node: '>= 10'}
- cpu: [arm64]
- os: [linux]
-
- '@next/swc-linux-arm64-musl@15.1.2':
- resolution: {integrity: sha512-9CF1Pnivij7+M3G74lxr+e9h6o2YNIe7QtExWq1KUK4hsOLTBv6FJikEwCaC3NeYTflzrm69E5UfwEAbV2U9/g==}
- engines: {node: '>= 10'}
- cpu: [arm64]
- os: [linux]
-
- '@next/swc-linux-x64-gnu@15.1.2':
- resolution: {integrity: sha512-tINV7WmcTUf4oM/eN3Yuu/f8jQ5C6AkueZPKeALs/qfdfX57eNv4Ij7rt0SA6iZ8+fMobVfcFVv664Op0caCCg==}
- engines: {node: '>= 10'}
- cpu: [x64]
- os: [linux]
-
- '@next/swc-linux-x64-musl@15.1.2':
- resolution: {integrity: sha512-jf2IseC4WRsGkzeUw/cK3wci9pxR53GlLAt30+y+B+2qAQxMw6WAC3QrANIKxkcoPU3JFh/10uFfmoMDF9JXKg==}
- engines: {node: '>= 10'}
- cpu: [x64]
- os: [linux]
-
- '@next/swc-win32-arm64-msvc@15.1.2':
- resolution: {integrity: sha512-wvg7MlfnaociP7k8lxLX4s2iBJm4BrNiNFhVUY+Yur5yhAJHfkS8qPPeDEUH8rQiY0PX3u/P7Q/wcg6Mv6GSAA==}
- engines: {node: '>= 10'}
- cpu: [arm64]
- os: [win32]
-
- '@next/swc-win32-x64-msvc@15.1.2':
- resolution: {integrity: sha512-D3cNA8NoT3aWISWmo7HF5Eyko/0OdOO+VagkoJuiTk7pyX3P/b+n8XA/MYvyR+xSVcbKn68B1rY9fgqjNISqzQ==}
- engines: {node: '>= 10'}
- cpu: [x64]
- os: [win32]
-
'@nichtsam/remix-auth-discord@3.0.0':
resolution: {integrity: sha512-Ex1D27v3Z8pDdSG1rBTsu6QEuQMksi06T6B73+tBdYTj87Y5UWmFZuY8NAhESgTcXpGUHgG5iuZSKQc9gcrwDw==}
peerDependencies:
remix-auth: ^4.0.0
- '@nichtsam/remix-auth-email-link@3.0.0':
- resolution: {integrity: sha512-Bfyslhaly+UAIBjXhrM86r/f/hphZzKgAWiI4yAMTnemiL6cHksS5fNqisv3A2VYE4ECpxYsNKNQsqd2UJtOVQ==}
- peerDependencies:
- remix-auth: ^4.0.0
-
'@nodelib/fs.scandir@2.1.5':
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
engines: {node: '>= 8'}
@@ -1648,9 +1457,6 @@ packages:
resolution: {integrity: sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- '@one-ini/wasm@0.1.1':
- resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==}
-
'@opentelemetry/api-logs@0.52.1':
resolution: {integrity: sha512-qnSqB2DQ9TPP96dl8cDubDvrUyWc0/sK81xHTK8eSUspzDM3bsewX903qclQFvVhgStjRWdC5bLb3kQqMkfV5A==}
engines: {node: '>=14'}
@@ -2282,19 +2088,6 @@ packages:
'@types/react-dom':
optional: true
- '@radix-ui/react-separator@1.1.1':
- resolution: {integrity: sha512-RRiNRSrD8iUiXriq/Y5n4/3iE8HzqgLHsusUSg5jVpU2+3tqcUFPJXHDymwEypunc2sWxDUS3UC+rkZRlHedsw==}
- peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
- '@types/react-dom':
- optional: true
-
'@radix-ui/react-slot@1.1.0':
resolution: {integrity: sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==}
peerDependencies:
@@ -2418,138 +2211,6 @@ packages:
'@radix-ui/rect@1.1.0':
resolution: {integrity: sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg==}
- '@react-email/body@0.0.11':
- resolution: {integrity: sha512-ZSD2SxVSgUjHGrB0Wi+4tu3MEpB4fYSbezsFNEJk2xCWDBkFiOeEsjTmR5dvi+CxTK691hQTQlHv0XWuP7ENTg==}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/button@0.0.19':
- resolution: {integrity: sha512-HYHrhyVGt7rdM/ls6FuuD6XE7fa7bjZTJqB2byn6/oGsfiEZaogY77OtoLL/mrQHjHjZiJadtAMSik9XLcm7+A==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/code-block@0.0.11':
- resolution: {integrity: sha512-4D43p+LIMjDzm66gTDrZch0Flkip5je91mAT7iGs6+SbPyalHgIA+lFQoQwhz/VzHHLxuD0LV6gwmU/WUQ2WEg==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/code-inline@0.0.5':
- resolution: {integrity: sha512-MmAsOzdJpzsnY2cZoPHFPk6uDO/Ncpb4Kh1hAt9UZc1xOW3fIzpe1Pi9y9p6wwUmpaeeDalJxAxH6/fnTquinA==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/column@0.0.13':
- resolution: {integrity: sha512-Lqq17l7ShzJG/d3b1w/+lVO+gp2FM05ZUo/nW0rjxB8xBICXOVv6PqjDnn3FXKssvhO5qAV20lHM6S+spRhEwQ==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/components@0.0.32':
- resolution: {integrity: sha512-+1Wv7PyVgWfLoj5W0+CvBsJMIfMI6ibcFcIPXNkb2lhKQQASgxSoAedRL1rH0CCaBo6+63tg8y4baHzJonfZbw==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/container@0.0.15':
- resolution: {integrity: sha512-Qo2IQo0ru2kZq47REmHW3iXjAQaKu4tpeq/M8m1zHIVwKduL2vYOBQWbC2oDnMtWPmkBjej6XxgtZByxM6cCFg==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/font@0.0.9':
- resolution: {integrity: sha512-4zjq23oT9APXkerqeslPH3OZWuh5X4crHK6nx82mVHV2SrLba8+8dPEnWbaACWTNjOCbcLIzaC9unk7Wq2MIXw==}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/head@0.0.12':
- resolution: {integrity: sha512-X2Ii6dDFMF+D4niNwMAHbTkeCjlYYnMsd7edXOsi0JByxt9wNyZ9EnhFiBoQdqkE+SMDcu8TlNNttMrf5sJeMA==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/heading@0.0.15':
- resolution: {integrity: sha512-xF2GqsvBrp/HbRHWEfOgSfRFX+Q8I5KBEIG5+Lv3Vb2R/NYr0s8A5JhHHGf2pWBMJdbP4B2WHgj/VUrhy8dkIg==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/hr@0.0.11':
- resolution: {integrity: sha512-S1gZHVhwOsd1Iad5IFhpfICwNPMGPJidG/Uysy1AwmspyoAP5a4Iw3OWEpINFdgh9MHladbxcLKO2AJO+cA9Lw==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/html@0.0.11':
- resolution: {integrity: sha512-qJhbOQy5VW5qzU74AimjAR9FRFQfrMa7dn4gkEXKMB/S9xZN8e1yC1uA9C15jkXI/PzmJ0muDIWmFwatm5/+VA==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/img@0.0.11':
- resolution: {integrity: sha512-aGc8Y6U5C3igoMaqAJKsCpkbm1XjguQ09Acd+YcTKwjnC2+0w3yGUJkjWB2vTx4tN8dCqQCXO8FmdJpMfOA9EQ==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/link@0.0.12':
- resolution: {integrity: sha512-vF+xxQk2fGS1CN7UPQDbzvcBGfffr+GjTPNiWM38fhBfsLv6A/YUfaqxWlmL7zLzVmo0K2cvvV9wxlSyNba1aQ==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/markdown@0.0.14':
- resolution: {integrity: sha512-5IsobCyPkb4XwnQO8uFfGcNOxnsg3311GRXhJ3uKv51P7Jxme4ycC/MITnwIZ10w2zx7HIyTiqVzTj4XbuIHbg==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/preview@0.0.12':
- resolution: {integrity: sha512-g/H5fa9PQPDK6WUEG7iTlC19sAktI23qyoiJtMLqQiXFCfWeQMhqjLGKeLSKkfzszqmfJCjZtpSiKtBoOdxp3Q==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/render@1.0.1':
- resolution: {integrity: sha512-W3gTrcmLOVYnG80QuUp22ReIT/xfLsVJ+n7ghSlG2BITB8evNABn1AO2rGQoXuK84zKtDAlxCdm3hRyIpZdGSA==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/render@1.0.4':
- resolution: {integrity: sha512-8ZXi89d8igBDE6W3zlHBa3GEDWKEUFDAa7i8MvVxnRViQuvsRbibK3ltuPgixxRI5+HgGNCSreBHQKZCkhUdyw==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/row@0.0.12':
- resolution: {integrity: sha512-HkCdnEjvK3o+n0y0tZKXYhIXUNPDx+2vq1dJTmqappVHXS5tXS6W5JOPZr5j+eoZ8gY3PShI2LWj5rWF7ZEtIQ==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/section@0.0.16':
- resolution: {integrity: sha512-FjqF9xQ8FoeUZYKSdt8sMIKvoT9XF8BrzhT3xiFKdEMwYNbsDflcjfErJe3jb7Wj/es/lKTbV5QR1dnLzGpL3w==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/tailwind@1.0.4':
- resolution: {integrity: sha512-tJdcusncdqgvTUYZIuhNC6LYTfL9vNTSQpwWdTCQhQ1lsrNCEE4OKCSdzSV3S9F32pi0i0xQ+YPJHKIzGjdTSA==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
- '@react-email/text@0.0.11':
- resolution: {integrity: sha512-a7nl/2KLpRHOYx75YbYZpWspUbX1DFY7JIZbOv5x0QU8SvwDbJt+Hm01vG34PffFyYvHEXrc6Qnip2RTjljNjg==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- react: ^18.0 || ^19.0 || ^19.0.0-rc
-
'@react-router/dev@7.0.1':
resolution: {integrity: sha512-7B9xUb/5um3Pe/zqpObQP/Yhypw49q6CFxn7NWWS78DJnuO7axXuH4IerrMLIiqv+8Ft0uo3UQVj+ztTr0T2+w==}
engines: {node: '>=20.0.0'}
@@ -2805,9 +2466,6 @@ packages:
cpu: [x64]
os: [win32]
- '@selderee/plugin-htmlparser2@0.11.0':
- resolution: {integrity: sha512-P33hHGdldxGabLFjPPpaTxVolMrzrcegejx+0GxjrIb9Zv48D8yAIA/QTDR2dFl7Uz7urX8aX6+5bCZslr+gWQ==}
-
'@sentry-internal/browser-utils@8.47.0':
resolution: {integrity: sha512-vOXzYzHTKkahTLDzWWIA4EiVCQ+Gk+7xGWUlNcR2ZiEPBqYZVb5MjsUozAcc7syrSUy6WicyFjcomZ3rlCVQhg==}
engines: {node: '>=14.18'}
@@ -2972,15 +2630,6 @@ packages:
resolution: {integrity: sha512-hczYYDeTUU+CMTMMcfH4MTN9dLyzivfAISI0EyTHLzHHJnTSOWYqJwyNRib+/yrSumdDMSym4n8zBRZEhJpyBw==}
hasBin: true
- '@socket.io/component-emitter@3.1.2':
- resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==}
-
- '@swc/counter@0.1.3':
- resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==}
-
- '@swc/helpers@0.5.15':
- resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==}
-
'@tailwindcss/typography@0.5.15':
resolution: {integrity: sha512-AqhlCXl+8grUz8uqExv5OTtgpjuVIwFTSXTrh8y9/pw6q2ek7fJ+Y8ZEVw7EB2DCcuCOtEjf9w3+J3rzts01uA==}
peerDependencies:
@@ -3033,9 +2682,6 @@ packages:
'@types/cookie@0.6.0':
resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==}
- '@types/cors@2.8.17':
- resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==}
-
'@types/debug@4.1.8':
resolution: {integrity: sha512-/vPO1EPOs306Cvhwv7KfVfYvOJqA/S/AXjaHQiJboCZzcNDb+TIJFN9/2C9DZ//ijSKWioNyUxD792QmDJ+HKQ==}
@@ -3308,10 +2954,6 @@ packages:
'@zxing/text-encoding@0.9.0':
resolution: {integrity: sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA==}
- abbrev@2.0.0:
- resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
-
abort-controller@3.0.0:
resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==}
engines: {node: '>=6.5'}
@@ -3489,10 +3131,6 @@ packages:
base64-js@1.5.1:
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
- base64id@2.0.0:
- resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==}
- engines: {node: ^4.5.0 || >= 5.9}
-
basic-auth@2.0.1:
resolution: {integrity: sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==}
engines: {node: '>= 0.8'}
@@ -3553,10 +3191,6 @@ packages:
engines: {node: '>=10'}
hasBin: true
- busboy@1.6.0:
- resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==}
- engines: {node: '>=10.16.0'}
-
bytes@3.1.2:
resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==}
engines: {node: '>= 0.8'}
@@ -3634,10 +3268,6 @@ packages:
resolution: {integrity: sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==}
engines: {node: '>= 14.16.0'}
- chokidar@4.0.3:
- resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
- engines: {node: '>= 14.16.0'}
-
chownr@1.1.4:
resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==}
@@ -3673,9 +3303,6 @@ packages:
resolution: {integrity: sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==}
engines: {node: '>=6'}
- client-only@0.0.1:
- resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==}
-
cliui@8.0.1:
resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
engines: {node: '>=12'}
@@ -3710,13 +3337,6 @@ packages:
color-name@1.1.4:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
- color-string@1.9.1:
- resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==}
-
- color@4.2.3:
- resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==}
- engines: {node: '>=12.5.0'}
-
combined-stream@1.0.8:
resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
engines: {node: '>= 0.8'}
@@ -3724,10 +3344,6 @@ packages:
comma-separated-tokens@2.0.3:
resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
- commander@10.0.1:
- resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==}
- engines: {node: '>=14'}
-
commander@11.1.0:
resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==}
engines: {node: '>=16'}
@@ -3757,9 +3373,6 @@ packages:
concat-map@0.0.1:
resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
- config-chain@1.1.13:
- resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==}
-
content-disposition@0.5.4:
resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==}
engines: {node: '>= 0.6'}
@@ -3793,10 +3406,6 @@ packages:
core-util-is@1.0.3:
resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
- cors@2.8.5:
- resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==}
- engines: {node: '>= 0.10'}
-
cosmiconfig@7.1.0:
resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==}
engines: {node: '>=10'}
@@ -3883,10 +3492,6 @@ packages:
dayjs@1.11.13:
resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==}
- debounce@2.0.0:
- resolution: {integrity: sha512-xRetU6gL1VJbs85Mc4FoEGSjQxzpdxRyFhe3lmWFyy2EzydIcD4xzUvRJMD+NPDfMwKNhxa3PvsIOU32luIWeA==}
- engines: {node: '>=18'}
-
debug@2.6.9:
resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==}
peerDependencies:
@@ -3984,10 +3589,6 @@ packages:
resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==}
engines: {node: '>=8'}
- detect-libc@2.0.3:
- resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==}
- engines: {node: '>=8'}
-
detect-node-es@1.1.0:
resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==}
@@ -4149,11 +3750,6 @@ packages:
eastasianwidth@0.2.0:
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
- editorconfig@1.0.4:
- resolution: {integrity: sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==}
- engines: {node: '>=14'}
- hasBin: true
-
ee-first@1.1.1:
resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
@@ -4177,14 +3773,6 @@ packages:
end-of-stream@1.4.4:
resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==}
- engine.io-parser@5.2.3:
- resolution: {integrity: sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==}
- engines: {node: '>=10.0.0'}
-
- engine.io@6.6.3:
- resolution: {integrity: sha512-2hkLItQMBkoYSagneiisupWGvsQlWXqzhSMvsjaM8GYbnfUsX7tzYQq9QARnate5LRedVTX+MbkSZAANAr3NtQ==}
- engines: {node: '>=10.2.0'}
-
enhanced-resolve@5.18.0:
resolution: {integrity: sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==}
engines: {node: '>=10.13.0'}
@@ -4464,9 +4052,6 @@ packages:
extend@3.0.2:
resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
- fast-deep-equal@2.0.1:
- resolution: {integrity: sha512-bCK/2Z4zLidyB4ReuIsvALH6w31YfAQDmXMqMx6FyfHqvBxtjC0eRumeSu4Bs3XtXwpyIywtSTrVT99BxY1f9w==}
-
fast-deep-equal@3.1.3:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
@@ -4656,11 +4241,6 @@ packages:
resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
engines: {node: '>=10.13.0'}
- glob@10.3.4:
- resolution: {integrity: sha512-6LFElP3A+i/Q8XQKEvZjkEWEOTgAIALR9AO2rwT8bgPhDd1anmqDJDZ6lLddI4ehxxxR1S5RIqKe1uapMQfYaQ==}
- engines: {node: '>=16 || 14 >=14.17'}
- hasBin: true
-
glob@10.4.5:
resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==}
hasBin: true
@@ -4798,13 +4378,6 @@ packages:
html-escaper@2.0.2:
resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
- html-to-text@9.0.5:
- resolution: {integrity: sha512-qY60FjREgVZL03vJU6IfMV4GDjGBIoOyvuFdpBDIX9yTlDw0TjxVBQp+P8NvpdIXNJvfWBTNul7fsAQJq2FNpg==}
- engines: {node: '>=14'}
-
- htmlparser2@8.0.2:
- resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==}
-
http-errors@2.0.0:
resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==}
engines: {node: '>= 0.8'}
@@ -4876,9 +4449,6 @@ packages:
inherits@2.0.4:
resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
- ini@1.3.8:
- resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
-
inline-style-parser@0.1.1:
resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==}
@@ -4910,9 +4480,6 @@ packages:
is-arrayish@0.2.1:
resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
- is-arrayish@0.3.2:
- resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==}
-
is-async-function@2.0.0:
resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==}
engines: {node: '>= 0.4'}
@@ -5109,10 +4676,6 @@ packages:
resolution: {integrity: sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==}
engines: {node: '>= 0.4'}
- jackspeak@2.3.6:
- resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==}
- engines: {node: '>=14'}
-
jackspeak@3.4.3:
resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
@@ -5126,15 +4689,6 @@ packages:
js-base64@3.7.6:
resolution: {integrity: sha512-NPrWuHFxFUknr1KqJRDgUQPexQF0uIJWjeT+2KjEePhitQxQEx5EJBG1lVn5/hc8aLycTpXrDOgPQ6Zq+EDiTA==}
- js-beautify@1.15.1:
- resolution: {integrity: sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA==}
- engines: {node: '>=14'}
- hasBin: true
-
- js-cookie@3.0.5:
- resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==}
- engines: {node: '>=14'}
-
js-tokens@4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
@@ -5212,9 +4766,6 @@ packages:
resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
engines: {node: '>=6'}
- leac@0.6.0:
- resolution: {integrity: sha512-y+SqErxb8h7nE/fiEX07jsbuhrpO9lL8eca7/Y1nuWV2moNlXhyd59iDGcRf6moVyDMbmTNzL40SUyrFU/yDpg==}
-
levn@0.4.1:
resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
engines: {node: '>= 0.8.0'}
@@ -5330,16 +4881,6 @@ packages:
resolution: {integrity: sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==}
engines: {node: '>=16'}
- marked@7.0.4:
- resolution: {integrity: sha512-t8eP0dXRJMtMvBojtkcsA7n48BkauktUKzfkPSCq85ZMTJ0v76Rke4DYz01omYpPTUh4p/f7HePgRo3ebG8+QQ==}
- engines: {node: '>= 16'}
- hasBin: true
-
- md-to-react-email@5.0.5:
- resolution: {integrity: sha512-OvAXqwq57uOk+WZqFFNCMZz8yDp8BD3WazW1wAKHUrPbbdr89K9DWS6JXY09vd9xNdPNeurI8DU/X4flcfaD8A==}
- peerDependencies:
- react: ^18.0 || ^19.0
-
mdast-util-definitions@5.1.2:
resolution: {integrity: sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==}
@@ -5652,10 +5193,6 @@ packages:
resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==}
engines: {node: '>=16 || 14 >=14.17'}
- minimatch@9.0.1:
- resolution: {integrity: sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==}
- engines: {node: '>=16 || 14 >=14.17'}
-
minimatch@9.0.5:
resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -5754,27 +5291,6 @@ packages:
resolution: {integrity: sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==}
engines: {node: '>= 0.6'}
- next@15.1.2:
- resolution: {integrity: sha512-nLJDV7peNy+0oHlmY2JZjzMfJ8Aj0/dd3jCwSZS8ZiO5nkQfcZRqDrRN3U5rJtqVTQneIOGZzb6LCNrk7trMCQ==}
- engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
- hasBin: true
- peerDependencies:
- '@opentelemetry/api': ^1.1.0
- '@playwright/test': ^1.41.2
- babel-plugin-react-compiler: '*'
- react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0
- react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0
- sass: ^1.3.0
- peerDependenciesMeta:
- '@opentelemetry/api':
- optional: true
- '@playwright/test':
- optional: true
- babel-plugin-react-compiler:
- optional: true
- sass:
- optional: true
-
nice-try@1.0.5:
resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==}
@@ -5808,11 +5324,6 @@ packages:
node-releases@2.0.18:
resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==}
- nopt@7.2.1:
- resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- hasBin: true
-
normalize-package-data@2.5.0:
resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
@@ -6004,9 +5515,6 @@ packages:
parse5@7.1.2:
resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==}
- parseley@0.12.1:
- resolution: {integrity: sha512-e6qHKe3a9HWr0oMRVDTRhKce+bRO8VGQR3NyVwcjwrbhMmFCX9KszEV35+rn4AdilFAq9VPxP/Fe1wC9Qjd2lw==}
-
parseurl@1.3.3:
resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==}
engines: {node: '>= 0.8'}
@@ -6056,9 +5564,6 @@ packages:
resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==}
engines: {node: '>= 14.16'}
- peberminta@0.9.0:
- resolution: {integrity: sha512-XIxfHpEuSJbITd1H3EeQwpcZbTLHc+VVr8ANI9t5sit565tsI4/xK3KWTUFE2e6QiangUkh3B0jihzmGnNrRsQ==}
-
peek-stream@1.1.3:
resolution: {integrity: sha512-FhJ+YbOSBb9/rIl2ZeE/QHEsWn7PqNYt8ARAY3kIgNGOk13g9FGyIY6JIl/xB/3TFRVoTv5as0l11weORrTekA==}
@@ -6198,10 +5703,6 @@ packages:
postcss-value-parser@4.2.0:
resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
- postcss@8.4.31:
- resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==}
- engines: {node: ^10 || ^12 || >=14}
-
postcss@8.4.49:
resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==}
engines: {node: ^10 || ^12 || >=14}
@@ -6299,10 +5800,6 @@ packages:
resolution: {integrity: sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==}
engines: {node: '>=10'}
- prismjs@1.29.0:
- resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==}
- engines: {node: '>=6'}
-
proc-log@3.0.0:
resolution: {integrity: sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -6339,9 +5836,6 @@ packages:
property-information@6.2.0:
resolution: {integrity: sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==}
- proto-list@1.2.4:
- resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==}
-
proxy-addr@2.0.7:
resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==}
engines: {node: '>= 0.10'}
@@ -6385,20 +5879,12 @@ packages:
peerDependencies:
react: ^19.0.0
- react-email@3.0.6:
- resolution: {integrity: sha512-taTvHORG2bCZCvUgVkRV0hTJJ5I40UKcmMuHzEhDOBNVh3/CCvIv4jRuD2EheSU1c4hFxxiUyanphb+qUQWeBw==}
- engines: {node: '>=18.0.0'}
- hasBin: true
-
react-is@16.13.1:
resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
react-is@17.0.2:
resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==}
- react-promise-suspense@0.3.4:
- resolution: {integrity: sha512-I42jl7L3Ze6kZaq+7zXWSunBa3b1on5yfvUW6Eo/3fFOj6dZ5Bqmcd264nJbTK/gn1HjjILAjSwnZbV4RpSaNQ==}
-
react-refresh@0.14.0:
resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==}
engines: {node: '>=0.10.0'}
@@ -6644,10 +6130,6 @@ packages:
resolution: {integrity: sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==}
engines: {node: '>=0.10.5'}
- resend@4.1.1:
- resolution: {integrity: sha512-nkcRpIOgPb3sFPA/GyOTr6Vmlrkhwsu+XlC20kKbbebOfw0WbAjbBbJ1m4AcjKOkPf57O4DH9Bnbxi9i18JYng==}
- engines: {node: '>=18'}
-
resolve-from@4.0.0:
resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
engines: {node: '>=4'}
@@ -6743,9 +6225,6 @@ packages:
resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==}
engines: {node: '>=4'}
- selderee@0.11.0:
- resolution: {integrity: sha512-5TF+l7p4+OsnP8BCCvSyZiSPc4x4//p5uPwK8TCnVPJYRmU2aYKMpOXvw8zM5a5JvuuCGN1jmsMwuU2W02ukfA==}
-
semver-compare@1.0.0:
resolution: {integrity: sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==}
@@ -6788,10 +6267,6 @@ packages:
setprototypeof@1.2.0:
resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
- sharp@0.33.5:
- resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
-
shebang-command@1.2.0:
resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==}
engines: {node: '>=0.10.0'}
@@ -6831,9 +6306,6 @@ packages:
resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
engines: {node: '>=14'}
- simple-swizzle@0.2.2:
- resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==}
-
sisteransi@1.0.5:
resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
@@ -6844,17 +6316,6 @@ packages:
snake-case@3.0.4:
resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==}
- socket.io-adapter@2.5.5:
- resolution: {integrity: sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==}
-
- socket.io-parser@4.2.4:
- resolution: {integrity: sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==}
- engines: {node: '>=10.0.0'}
-
- socket.io@4.8.0:
- resolution: {integrity: sha512-8U6BEgGjQOfGz3HHTYaC/L1GaxDCJ/KM0XTkJly0EhZ5U/du9uNEZy4ZgYzEzIqlx2CMm25CrCqr1ck899eLNA==}
- engines: {node: '>=10.2.0'}
-
sonner@1.7.1:
resolution: {integrity: sha512-b6LHBfH32SoVasRFECrdY8p8s7hXPDn3OHUFbZZbiB1ctLS9Gdh6rpX2dVrpQA0kiL5jcRzDDldwwLkSKk3+QQ==}
peerDependencies:
@@ -6926,10 +6387,6 @@ packages:
stream-slice@0.1.2:
resolution: {integrity: sha512-QzQxpoacatkreL6jsxnVb7X5R/pGw9OUv2qWTYWnmLpg4NdN31snPy/f3TdQE1ZUXaThRvj1Zw4/OGg0ZkaLMA==}
- streamsearch@1.1.0:
- resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==}
- engines: {node: '>=10.0.0'}
-
string-hash@1.1.3:
resolution: {integrity: sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==}
@@ -7007,19 +6464,6 @@ packages:
style-to-object@0.4.1:
resolution: {integrity: sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==}
- styled-jsx@5.1.6:
- resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==}
- engines: {node: '>= 12.0.0'}
- peerDependencies:
- '@babel/core': '*'
- babel-plugin-macros: '*'
- react: '>= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0'
- peerDependenciesMeta:
- '@babel/core':
- optional: true
- babel-plugin-macros:
- optional: true
-
sucrase@3.35.0:
resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -7603,18 +7047,6 @@ packages:
utf-8-validate:
optional: true
- ws@8.17.1:
- resolution: {integrity: sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==}
- engines: {node: '>=10.0.0'}
- peerDependencies:
- bufferutil: ^4.0.1
- utf-8-validate: '>=5.0.2'
- peerDependenciesMeta:
- bufferutil:
- optional: true
- utf-8-validate:
- optional: true
-
ws@8.18.0:
resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==}
engines: {node: '>=10.0.0'}
@@ -7705,26 +7137,6 @@ snapshots:
'@babel/compat-data@7.26.2': {}
- '@babel/core@7.24.5':
- dependencies:
- '@ampproject/remapping': 2.3.0
- '@babel/code-frame': 7.26.2
- '@babel/generator': 7.26.2
- '@babel/helper-compilation-targets': 7.25.9
- '@babel/helper-module-transforms': 7.26.0(@babel/core@7.24.5)
- '@babel/helpers': 7.26.0
- '@babel/parser': 7.26.2
- '@babel/template': 7.25.9
- '@babel/traverse': 7.25.9
- '@babel/types': 7.26.0
- convert-source-map: 2.0.0
- debug: 4.3.7
- gensync: 1.0.0-beta.2
- json5: 2.2.3
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
-
'@babel/core@7.26.0':
dependencies:
'@ampproject/remapping': 2.3.0
@@ -7798,15 +7210,6 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@babel/helper-module-transforms@7.26.0(@babel/core@7.24.5)':
- dependencies:
- '@babel/core': 7.24.5
- '@babel/helper-module-imports': 7.25.9
- '@babel/helper-validator-identifier': 7.25.9
- '@babel/traverse': 7.25.9
- transitivePeerDependencies:
- - supports-color
-
'@babel/helper-module-transforms@7.26.0(@babel/core@7.26.0)':
dependencies:
'@babel/core': 7.26.0
@@ -7864,10 +7267,6 @@ snapshots:
chalk: 2.4.2
js-tokens: 4.0.0
- '@babel/parser@7.24.5':
- dependencies:
- '@babel/types': 7.26.0
-
'@babel/parser@7.26.2':
dependencies:
'@babel/types': 7.26.0
@@ -7974,11 +7373,6 @@ snapshots:
'@drizzle-team/brocli@0.10.2': {}
- '@emnapi/runtime@1.3.1':
- dependencies:
- tslib: 2.8.1
- optional: true
-
'@emotion/hash@0.9.1': {}
'@epic-web/cachified@5.2.0': {}
@@ -8453,81 +7847,6 @@ snapshots:
'@humanwhocodes/retry@0.4.1': {}
- '@img/sharp-darwin-arm64@0.33.5':
- optionalDependencies:
- '@img/sharp-libvips-darwin-arm64': 1.0.4
- optional: true
-
- '@img/sharp-darwin-x64@0.33.5':
- optionalDependencies:
- '@img/sharp-libvips-darwin-x64': 1.0.4
- optional: true
-
- '@img/sharp-libvips-darwin-arm64@1.0.4':
- optional: true
-
- '@img/sharp-libvips-darwin-x64@1.0.4':
- optional: true
-
- '@img/sharp-libvips-linux-arm64@1.0.4':
- optional: true
-
- '@img/sharp-libvips-linux-arm@1.0.5':
- optional: true
-
- '@img/sharp-libvips-linux-s390x@1.0.4':
- optional: true
-
- '@img/sharp-libvips-linux-x64@1.0.4':
- optional: true
-
- '@img/sharp-libvips-linuxmusl-arm64@1.0.4':
- optional: true
-
- '@img/sharp-libvips-linuxmusl-x64@1.0.4':
- optional: true
-
- '@img/sharp-linux-arm64@0.33.5':
- optionalDependencies:
- '@img/sharp-libvips-linux-arm64': 1.0.4
- optional: true
-
- '@img/sharp-linux-arm@0.33.5':
- optionalDependencies:
- '@img/sharp-libvips-linux-arm': 1.0.5
- optional: true
-
- '@img/sharp-linux-s390x@0.33.5':
- optionalDependencies:
- '@img/sharp-libvips-linux-s390x': 1.0.4
- optional: true
-
- '@img/sharp-linux-x64@0.33.5':
- optionalDependencies:
- '@img/sharp-libvips-linux-x64': 1.0.4
- optional: true
-
- '@img/sharp-linuxmusl-arm64@0.33.5':
- optionalDependencies:
- '@img/sharp-libvips-linuxmusl-arm64': 1.0.4
- optional: true
-
- '@img/sharp-linuxmusl-x64@0.33.5':
- optionalDependencies:
- '@img/sharp-libvips-linuxmusl-x64': 1.0.4
- optional: true
-
- '@img/sharp-wasm32@0.33.5':
- dependencies:
- '@emnapi/runtime': 1.3.1
- optional: true
-
- '@img/sharp-win32-ia32@0.33.5':
- optional: true
-
- '@img/sharp-win32-x64@0.33.5':
- optional: true
-
'@isaacs/cliui@8.0.2':
dependencies:
string-width: 5.1.2
@@ -8678,41 +7997,15 @@ snapshots:
'@mjackson/headers@0.9.0': {}
- '@mjackson/node-fetch-server@0.2.0': {}
-
- '@nasa-gcn/remix-seo@2.0.1(@remix-run/react@2.15.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2))(@remix-run/server-runtime@2.15.2(typescript@5.7.2))':
- dependencies:
- '@remix-run/react': 2.15.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2)
- '@remix-run/server-runtime': 2.15.2(typescript@5.7.2)
- lodash: 4.17.21
-
- '@neon-rs/load@0.0.4': {}
-
- '@next/env@15.1.2': {}
-
- '@next/swc-darwin-arm64@15.1.2':
- optional: true
-
- '@next/swc-darwin-x64@15.1.2':
- optional: true
-
- '@next/swc-linux-arm64-gnu@15.1.2':
- optional: true
-
- '@next/swc-linux-arm64-musl@15.1.2':
- optional: true
-
- '@next/swc-linux-x64-gnu@15.1.2':
- optional: true
-
- '@next/swc-linux-x64-musl@15.1.2':
- optional: true
+ '@mjackson/node-fetch-server@0.2.0': {}
- '@next/swc-win32-arm64-msvc@15.1.2':
- optional: true
+ '@nasa-gcn/remix-seo@2.0.1(@remix-run/react@2.15.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2))(@remix-run/server-runtime@2.15.2(typescript@5.7.2))':
+ dependencies:
+ '@remix-run/react': 2.15.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2)
+ '@remix-run/server-runtime': 2.15.2(typescript@5.7.2)
+ lodash: 4.17.21
- '@next/swc-win32-x64-msvc@15.1.2':
- optional: true
+ '@neon-rs/load@0.0.4': {}
'@nichtsam/remix-auth-discord@3.0.0(remix-auth@4.1.0)':
dependencies:
@@ -8723,12 +8016,6 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@nichtsam/remix-auth-email-link@3.0.0(remix-auth@4.1.0)':
- dependencies:
- '@mjackson/headers': 0.9.0
- crypto-js: 4.2.0
- remix-auth: 4.1.0
-
'@nodelib/fs.scandir@2.1.5':
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -8774,8 +8061,6 @@ snapshots:
dependencies:
which: 3.0.1
- '@one-ini/wasm@0.1.1': {}
-
'@opentelemetry/api-logs@0.52.1':
dependencies:
'@opentelemetry/api': 1.9.0
@@ -9469,15 +8754,6 @@ snapshots:
'@types/react': 19.0.2
'@types/react-dom': 19.0.2(@types/react@19.0.2)
- '@radix-ui/react-separator@1.1.1(@types/react-dom@19.0.2(@types/react@19.0.2))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
- dependencies:
- '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.2(@types/react@19.0.2))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
- react: 19.0.0
- react-dom: 19.0.0(react@19.0.0)
- optionalDependencies:
- '@types/react': 19.0.2
- '@types/react-dom': 19.0.2(@types/react@19.0.2)
-
'@radix-ui/react-slot@1.1.0(@types/react@19.0.2)(react@19.0.0)':
dependencies:
'@radix-ui/react-compose-refs': 1.1.0(@types/react@19.0.2)(react@19.0.0)
@@ -9589,126 +8865,6 @@ snapshots:
'@radix-ui/rect@1.1.0': {}
- '@react-email/body@0.0.11(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/button@0.0.19(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/code-block@0.0.11(react@19.0.0)':
- dependencies:
- prismjs: 1.29.0
- react: 19.0.0
-
- '@react-email/code-inline@0.0.5(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/column@0.0.13(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/components@0.0.32(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
- dependencies:
- '@react-email/body': 0.0.11(react@19.0.0)
- '@react-email/button': 0.0.19(react@19.0.0)
- '@react-email/code-block': 0.0.11(react@19.0.0)
- '@react-email/code-inline': 0.0.5(react@19.0.0)
- '@react-email/column': 0.0.13(react@19.0.0)
- '@react-email/container': 0.0.15(react@19.0.0)
- '@react-email/font': 0.0.9(react@19.0.0)
- '@react-email/head': 0.0.12(react@19.0.0)
- '@react-email/heading': 0.0.15(react@19.0.0)
- '@react-email/hr': 0.0.11(react@19.0.0)
- '@react-email/html': 0.0.11(react@19.0.0)
- '@react-email/img': 0.0.11(react@19.0.0)
- '@react-email/link': 0.0.12(react@19.0.0)
- '@react-email/markdown': 0.0.14(react@19.0.0)
- '@react-email/preview': 0.0.12(react@19.0.0)
- '@react-email/render': 1.0.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
- '@react-email/row': 0.0.12(react@19.0.0)
- '@react-email/section': 0.0.16(react@19.0.0)
- '@react-email/tailwind': 1.0.4(react@19.0.0)
- '@react-email/text': 0.0.11(react@19.0.0)
- react: 19.0.0
- transitivePeerDependencies:
- - react-dom
-
- '@react-email/container@0.0.15(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/font@0.0.9(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/head@0.0.12(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/heading@0.0.15(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/hr@0.0.11(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/html@0.0.11(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/img@0.0.11(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/link@0.0.12(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/markdown@0.0.14(react@19.0.0)':
- dependencies:
- md-to-react-email: 5.0.5(react@19.0.0)
- react: 19.0.0
-
- '@react-email/preview@0.0.12(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/render@1.0.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
- dependencies:
- html-to-text: 9.0.5
- js-beautify: 1.15.1
- react: 19.0.0
- react-dom: 19.0.0(react@19.0.0)
- react-promise-suspense: 0.3.4
-
- '@react-email/render@1.0.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
- dependencies:
- html-to-text: 9.0.5
- prettier: 3.4.2
- react: 19.0.0
- react-dom: 19.0.0(react@19.0.0)
- react-promise-suspense: 0.3.4
-
- '@react-email/row@0.0.12(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/section@0.0.16(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/tailwind@1.0.4(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
- '@react-email/text@0.0.11(react@19.0.0)':
- dependencies:
- react: 19.0.0
-
'@react-router/dev@7.0.1(@react-router/serve@7.1.1(react-router@7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(typescript@5.7.2))(@types/node@22.10.2)(react-router@7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(typescript@5.7.2)(vite@5.4.11(@types/node@22.10.2))':
dependencies:
'@babel/core': 7.26.0
@@ -10037,11 +9193,6 @@ snapshots:
'@rollup/rollup-win32-x64-msvc@4.26.0':
optional: true
- '@selderee/plugin-htmlparser2@0.11.0':
- dependencies:
- domhandler: 5.0.3
- selderee: 0.11.0
-
'@sentry-internal/browser-utils@8.47.0':
dependencies:
'@sentry/core': 8.47.0
@@ -10322,14 +9473,6 @@ snapshots:
transitivePeerDependencies:
- typescript
- '@socket.io/component-emitter@3.1.2': {}
-
- '@swc/counter@0.1.3': {}
-
- '@swc/helpers@0.5.15':
- dependencies:
- tslib: 2.8.1
-
'@tailwindcss/typography@0.5.15(tailwindcss@3.4.17)':
dependencies:
lodash.castarray: 4.4.0
@@ -10394,10 +9537,6 @@ snapshots:
'@types/cookie@0.6.0': {}
- '@types/cors@2.8.17':
- dependencies:
- '@types/node': 22.10.2
-
'@types/debug@4.1.8':
dependencies:
'@types/ms': 0.7.31
@@ -10766,8 +9905,6 @@ snapshots:
'@zxing/text-encoding@0.9.0':
optional: true
- abbrev@2.0.0: {}
-
abort-controller@3.0.0:
dependencies:
event-target-shim: 5.0.1
@@ -10973,8 +10110,6 @@ snapshots:
base64-js@1.5.1: {}
- base64id@2.0.0: {}
-
basic-auth@2.0.1:
dependencies:
safe-buffer: 5.1.2
@@ -11071,10 +10206,6 @@ snapshots:
transitivePeerDependencies:
- debug
- busboy@1.6.0:
- dependencies:
- streamsearch: 1.1.0
-
bytes@3.1.2: {}
cac@6.7.14: {}
@@ -11167,10 +10298,6 @@ snapshots:
dependencies:
readdirp: 4.0.2
- chokidar@4.0.3:
- dependencies:
- readdirp: 4.0.2
-
chownr@1.1.4: {}
chownr@2.0.0: {}
@@ -11197,8 +10324,6 @@ snapshots:
cli-spinners@2.9.0: {}
- client-only@0.0.1: {}
-
cliui@8.0.1:
dependencies:
string-width: 4.2.3
@@ -11229,26 +10354,12 @@ snapshots:
color-name@1.1.4: {}
- color-string@1.9.1:
- dependencies:
- color-name: 1.1.4
- simple-swizzle: 0.2.2
- optional: true
-
- color@4.2.3:
- dependencies:
- color-convert: 2.0.1
- color-string: 1.9.1
- optional: true
-
combined-stream@1.0.8:
dependencies:
delayed-stream: 1.0.0
comma-separated-tokens@2.0.3: {}
- commander@10.0.1: {}
-
commander@11.1.0: {}
commander@4.1.1: {}
@@ -11277,11 +10388,6 @@ snapshots:
concat-map@0.0.1: {}
- config-chain@1.1.13:
- dependencies:
- ini: 1.3.8
- proto-list: 1.2.4
-
content-disposition@0.5.4:
dependencies:
safe-buffer: 5.2.1
@@ -11302,11 +10408,6 @@ snapshots:
core-util-is@1.0.3: {}
- cors@2.8.5:
- dependencies:
- object-assign: 4.1.1
- vary: 1.1.2
-
cosmiconfig@7.1.0:
dependencies:
'@types/parse-json': 4.0.2
@@ -11401,8 +10502,6 @@ snapshots:
dayjs@1.11.13: {}
- debounce@2.0.0: {}
-
debug@2.6.9:
dependencies:
ms: 2.0.0
@@ -11466,9 +10565,6 @@ snapshots:
detect-libc@2.0.2: {}
- detect-libc@2.0.3:
- optional: true
-
detect-node-es@1.1.0: {}
devlop@1.1.0:
@@ -11551,13 +10647,6 @@ snapshots:
eastasianwidth@0.2.0: {}
- editorconfig@1.0.4:
- dependencies:
- '@one-ini/wasm': 0.1.1
- commander: 10.0.1
- minimatch: 9.0.1
- semver: 7.6.3
-
ee-first@1.1.1: {}
electron-to-chromium@1.5.58: {}
@@ -11574,24 +10663,6 @@ snapshots:
dependencies:
once: 1.4.0
- engine.io-parser@5.2.3: {}
-
- engine.io@6.6.3:
- dependencies:
- '@types/cors': 2.8.17
- '@types/node': 22.10.2
- accepts: 1.3.8
- base64id: 2.0.0
- cookie: 1.0.2
- cors: 2.8.5
- debug: 4.3.7
- engine.io-parser: 5.2.3
- ws: 8.17.1
- transitivePeerDependencies:
- - bufferutil
- - supports-color
- - utf-8-validate
-
enhanced-resolve@5.18.0:
dependencies:
graceful-fs: 4.2.11
@@ -12140,8 +11211,6 @@ snapshots:
extend@3.0.2: {}
- fast-deep-equal@2.0.1: {}
-
fast-deep-equal@3.1.3: {}
fast-glob@3.3.2:
@@ -12334,14 +11403,6 @@ snapshots:
dependencies:
is-glob: 4.0.3
- glob@10.3.4:
- dependencies:
- foreground-child: 3.1.1
- jackspeak: 2.3.6
- minimatch: 9.0.5
- minipass: 7.1.2
- path-scurry: 1.11.1
-
glob@10.4.5:
dependencies:
foreground-child: 3.1.1
@@ -12525,21 +11586,6 @@ snapshots:
html-escaper@2.0.2: {}
- html-to-text@9.0.5:
- dependencies:
- '@selderee/plugin-htmlparser2': 0.11.0
- deepmerge: 4.3.1
- dom-serializer: 2.0.0
- htmlparser2: 8.0.2
- selderee: 0.11.0
-
- htmlparser2@8.0.2:
- dependencies:
- domelementtype: 2.3.0
- domhandler: 5.0.3
- domutils: 3.1.0
- entities: 4.5.0
-
http-errors@2.0.0:
dependencies:
depd: 2.0.0
@@ -12625,8 +11671,6 @@ snapshots:
inherits@2.0.4: {}
- ini@1.3.8: {}
-
inline-style-parser@0.1.1: {}
internal-slot@1.0.7:
@@ -12660,9 +11704,6 @@ snapshots:
is-arrayish@0.2.1: {}
- is-arrayish@0.3.2:
- optional: true
-
is-async-function@2.0.0:
dependencies:
has-tostringtag: 1.0.2
@@ -12829,12 +11870,6 @@ snapshots:
reflect.getprototypeof: 1.0.6
set-function-name: 2.0.2
- jackspeak@2.3.6:
- dependencies:
- '@isaacs/cliui': 8.0.2
- optionalDependencies:
- '@pkgjs/parseargs': 0.11.0
-
jackspeak@3.4.3:
dependencies:
'@isaacs/cliui': 8.0.2
@@ -12847,16 +11882,6 @@ snapshots:
js-base64@3.7.6: {}
- js-beautify@1.15.1:
- dependencies:
- config-chain: 1.1.13
- editorconfig: 1.0.4
- glob: 10.4.5
- js-cookie: 3.0.5
- nopt: 7.2.1
-
- js-cookie@3.0.5: {}
-
js-tokens@4.0.0: {}
js-yaml@3.14.1:
@@ -12939,8 +11964,6 @@ snapshots:
kleur@4.1.5: {}
- leac@0.6.0: {}
-
levn@0.4.1:
dependencies:
prelude-ls: 1.2.1
@@ -13050,13 +12073,6 @@ snapshots:
markdown-extensions@2.0.0: {}
- marked@7.0.4: {}
-
- md-to-react-email@5.0.5(react@19.0.0):
- dependencies:
- marked: 7.0.4
- react: 19.0.0
-
mdast-util-definitions@5.1.2:
dependencies:
'@types/mdast': 3.0.11
@@ -13763,10 +12779,6 @@ snapshots:
dependencies:
brace-expansion: 2.0.1
- minimatch@9.0.1:
- dependencies:
- brace-expansion: 2.0.1
-
minimatch@9.0.5:
dependencies:
brace-expansion: 2.0.1
@@ -13849,32 +12861,6 @@ snapshots:
negotiator@0.6.4: {}
- next@15.1.2(@babel/core@7.24.5)(@opentelemetry/api@1.9.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0):
- dependencies:
- '@next/env': 15.1.2
- '@swc/counter': 0.1.3
- '@swc/helpers': 0.5.15
- busboy: 1.6.0
- caniuse-lite: 1.0.30001680
- postcss: 8.4.31
- react: 19.0.0
- react-dom: 19.0.0(react@19.0.0)
- styled-jsx: 5.1.6(@babel/core@7.24.5)(react@19.0.0)
- optionalDependencies:
- '@next/swc-darwin-arm64': 15.1.2
- '@next/swc-darwin-x64': 15.1.2
- '@next/swc-linux-arm64-gnu': 15.1.2
- '@next/swc-linux-arm64-musl': 15.1.2
- '@next/swc-linux-x64-gnu': 15.1.2
- '@next/swc-linux-x64-musl': 15.1.2
- '@next/swc-win32-arm64-msvc': 15.1.2
- '@next/swc-win32-x64-msvc': 15.1.2
- '@opentelemetry/api': 1.9.0
- sharp: 0.33.5
- transitivePeerDependencies:
- - '@babel/core'
- - babel-plugin-macros
-
nice-try@1.0.5: {}
no-case@3.0.4:
@@ -13905,10 +12891,6 @@ snapshots:
node-releases@2.0.18: {}
- nopt@7.2.1:
- dependencies:
- abbrev: 2.0.0
-
normalize-package-data@2.5.0:
dependencies:
hosted-git-info: 2.8.9
@@ -14142,11 +13124,6 @@ snapshots:
dependencies:
entities: 4.5.0
- parseley@0.12.1:
- dependencies:
- leac: 0.6.0
- peberminta: 0.9.0
-
parseurl@1.3.3: {}
path-exists@4.0.0: {}
@@ -14178,8 +13155,6 @@ snapshots:
pathval@2.0.0: {}
- peberminta@0.9.0: {}
-
peek-stream@1.1.3:
dependencies:
buffer-from: 1.1.2
@@ -14309,12 +13284,6 @@ snapshots:
postcss-value-parser@4.2.0: {}
- postcss@8.4.31:
- dependencies:
- nanoid: 3.3.7
- picocolors: 1.1.1
- source-map-js: 1.2.1
-
postcss@8.4.49:
dependencies:
nanoid: 3.3.7
@@ -14351,8 +13320,6 @@ snapshots:
dependencies:
parse-ms: 2.1.0
- prismjs@1.29.0: {}
-
proc-log@3.0.0: {}
process-nextick-args@2.0.1: {}
@@ -14381,8 +13348,6 @@ snapshots:
property-information@6.2.0: {}
- proto-list@1.2.4: {}
-
proxy-addr@2.0.7:
dependencies:
forwarded: 0.2.0
@@ -14430,42 +13395,10 @@ snapshots:
react: 19.0.0
scheduler: 0.25.0
- react-email@3.0.6(@opentelemetry/api@1.9.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0):
- dependencies:
- '@babel/core': 7.24.5
- '@babel/parser': 7.24.5
- chalk: 4.1.2
- chokidar: 4.0.3
- commander: 11.1.0
- debounce: 2.0.0
- esbuild: 0.19.11
- glob: 10.3.4
- log-symbols: 4.1.0
- mime-types: 2.1.35
- next: 15.1.2(@babel/core@7.24.5)(@opentelemetry/api@1.9.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
- normalize-path: 3.0.0
- ora: 5.4.1
- socket.io: 4.8.0
- transitivePeerDependencies:
- - '@opentelemetry/api'
- - '@playwright/test'
- - babel-plugin-macros
- - babel-plugin-react-compiler
- - bufferutil
- - react
- - react-dom
- - sass
- - supports-color
- - utf-8-validate
-
react-is@16.13.1: {}
react-is@17.0.2: {}
- react-promise-suspense@0.3.4:
- dependencies:
- fast-deep-equal: 2.0.1
-
react-refresh@0.14.0: {}
react-remove-scroll-bar@2.3.6(@types/react@19.0.2)(react@19.0.0):
@@ -14762,13 +13695,6 @@ snapshots:
requireindex@1.2.0: {}
- resend@4.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0):
- dependencies:
- '@react-email/render': 1.0.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
- transitivePeerDependencies:
- - react
- - react-dom
-
resolve-from@4.0.0: {}
resolve-pkg-maps@1.0.0: {}
@@ -14883,10 +13809,6 @@ snapshots:
extend-shallow: 2.0.1
kind-of: 6.0.3
- selderee@0.11.0:
- dependencies:
- parseley: 0.12.1
-
semver-compare@1.0.0: {}
semver-regex@3.1.4: {}
@@ -14944,33 +13866,6 @@ snapshots:
setprototypeof@1.2.0: {}
- sharp@0.33.5:
- dependencies:
- color: 4.2.3
- detect-libc: 2.0.3
- semver: 7.6.3
- optionalDependencies:
- '@img/sharp-darwin-arm64': 0.33.5
- '@img/sharp-darwin-x64': 0.33.5
- '@img/sharp-libvips-darwin-arm64': 1.0.4
- '@img/sharp-libvips-darwin-x64': 1.0.4
- '@img/sharp-libvips-linux-arm': 1.0.5
- '@img/sharp-libvips-linux-arm64': 1.0.4
- '@img/sharp-libvips-linux-s390x': 1.0.4
- '@img/sharp-libvips-linux-x64': 1.0.4
- '@img/sharp-libvips-linuxmusl-arm64': 1.0.4
- '@img/sharp-libvips-linuxmusl-x64': 1.0.4
- '@img/sharp-linux-arm': 0.33.5
- '@img/sharp-linux-arm64': 0.33.5
- '@img/sharp-linux-s390x': 0.33.5
- '@img/sharp-linux-x64': 0.33.5
- '@img/sharp-linuxmusl-arm64': 0.33.5
- '@img/sharp-linuxmusl-x64': 0.33.5
- '@img/sharp-wasm32': 0.33.5
- '@img/sharp-win32-ia32': 0.33.5
- '@img/sharp-win32-x64': 0.33.5
- optional: true
-
shebang-command@1.2.0:
dependencies:
shebang-regex: 1.0.0
@@ -15006,11 +13901,6 @@ snapshots:
signal-exit@4.1.0: {}
- simple-swizzle@0.2.2:
- dependencies:
- is-arrayish: 0.3.2
- optional: true
-
sisteransi@1.0.5: {}
slash@3.0.0: {}
@@ -15020,36 +13910,6 @@ snapshots:
dot-case: 3.0.4
tslib: 2.5.2
- socket.io-adapter@2.5.5:
- dependencies:
- debug: 4.3.7
- ws: 8.17.1
- transitivePeerDependencies:
- - bufferutil
- - supports-color
- - utf-8-validate
-
- socket.io-parser@4.2.4:
- dependencies:
- '@socket.io/component-emitter': 3.1.2
- debug: 4.3.7
- transitivePeerDependencies:
- - supports-color
-
- socket.io@4.8.0:
- dependencies:
- accepts: 1.3.8
- base64id: 2.0.0
- cors: 2.8.5
- debug: 4.3.7
- engine.io: 6.6.3
- socket.io-adapter: 2.5.5
- socket.io-parser: 4.2.4
- transitivePeerDependencies:
- - bufferutil
- - supports-color
- - utf-8-validate
-
sonner@1.7.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0):
dependencies:
react: 19.0.0
@@ -15108,8 +13968,6 @@ snapshots:
stream-slice@0.1.2: {}
- streamsearch@1.1.0: {}
-
string-hash@1.1.3: {}
string-width@4.2.3:
@@ -15209,13 +14067,6 @@ snapshots:
dependencies:
inline-style-parser: 0.1.1
- styled-jsx@5.1.6(@babel/core@7.24.5)(react@19.0.0):
- dependencies:
- client-only: 0.0.1
- react: 19.0.0
- optionalDependencies:
- '@babel/core': 7.24.5
-
sucrase@3.35.0:
dependencies:
'@jridgewell/gen-mapping': 0.3.5
@@ -15899,8 +14750,6 @@ snapshots:
ws@7.5.10: {}
- ws@8.17.1: {}
-
ws@8.18.0: {}
xml-name-validator@5.0.0: {}