From 41d00029bd5d2396937a59cebf5939c7dff06576 Mon Sep 17 00:00:00 2001 From: xxmatthewandersonxx <92887765+mjanderson1227@users.noreply.github.com> Date: Wed, 13 Aug 2025 20:55:54 -0500 Subject: [PATCH 1/3] Adds registration email and emails package --- apps/web/package.json | 1 + apps/web/src/actions/registration.ts | 18 + packages/email/emails/test.tsx | 150 ++++ packages/email/package.json | 27 + packages/email/scripts/send-test-email.tsx | 34 + packages/email/sender/index.ts | 9 + packages/email/sender/utils.tsx | 30 + packages/email/templates/registration.tsx | 155 ++++ packages/email/tsconfig.json | 16 + pnpm-lock.yaml | 946 +++++++++++++++------ 10 files changed, 1118 insertions(+), 268 deletions(-) create mode 100644 packages/email/emails/test.tsx create mode 100644 packages/email/package.json create mode 100644 packages/email/scripts/send-test-email.tsx create mode 100644 packages/email/sender/index.ts create mode 100644 packages/email/sender/utils.tsx create mode 100644 packages/email/templates/registration.tsx create mode 100644 packages/email/tsconfig.json diff --git a/apps/web/package.json b/apps/web/package.json index 45b41086..06585e63 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -55,6 +55,7 @@ "date-fns": "^3.6.0", "date-fns-tz": "^3.1.3", "db": "workspace:*", + "email": "workspace:*", "dotenv": "^16.4.5", "drizzle-orm": "^0.39.3", "drizzle-zod": "^0.7.0", diff --git a/apps/web/src/actions/registration.ts b/apps/web/src/actions/registration.ts index d3928fc0..418e56dc 100644 --- a/apps/web/src/actions/registration.ts +++ b/apps/web/src/actions/registration.ts @@ -13,6 +13,7 @@ import { UNIQUE_KEY_CONSTRAINT_VIOLATION_CODE, UNIQUE_KEY_MAPPER_DEFAULT_KEY, } from "@/lib/constants"; +import { sendRegistrationEmail } from "email/sender"; const registerUserSchema = hackerRegistrationFormValidator; @@ -81,6 +82,23 @@ export const registerHacker = authenticatedAction hasSharedDataWithMLH, isEmailable, }); + + const emailSendSuccess = await sendRegistrationEmail({ + subject: `Thanks for registering for ${c.hackathonName}`, + to: email, + body: { + email, + firstName: userData.firstName, + lastName: userData.lastName, + hackerTag, + }, + }); + + if (!emailSendSuccess) { + console.log( + "Unable to send email to " + userCommonData.email, + ); + } }); } catch (e) { // Catch duplicates because they will be based off of the error code 23505 diff --git a/packages/email/emails/test.tsx b/packages/email/emails/test.tsx new file mode 100644 index 00000000..95f396ae --- /dev/null +++ b/packages/email/emails/test.tsx @@ -0,0 +1,150 @@ +import { + Body, + Button, + Column, + Container, + Head, + Heading, + Hr, + Html, + Img, + Link, + Preview, + Row, + Section, + Tailwind, + Text, +} from "@react-email/components"; +import * as React from "react"; + +interface VercelInviteUserEmailProps { + username?: string; + userImage?: string; + invitedByUsername?: string; + invitedByEmail?: string; + teamName?: string; + teamImage?: string; + inviteLink?: string; + inviteFromIp?: string; + inviteFromLocation?: string; +} + +const baseUrl = process.env.VERCEL_URL + ? `https://${process.env.VERCEL_URL}` + : ""; + +export const VercelInviteUserEmail = ({ + username = "zenorocha", + userImage = `${baseUrl}/static/vercel-user.png`, + invitedByUsername = "bukinoshita", + invitedByEmail = "bukinoshita@example.com", + teamName = "My Project", + teamImage = `${baseUrl}/static/vercel-team.png`, + inviteLink = "https://vercel.com/teams/invite/foo", + inviteFromIp = "204.13.186.218", + inviteFromLocation = "São Paulo, Brazil", +}: VercelInviteUserEmailProps) => { + const previewText = `Join ${invitedByUsername} on Vercel`; + + return ( + + + {previewText} + + + +
+ Vercel +
+ + Join {teamName} on{" "} + Vercel + + + Hello {username}, + + + bukinoshita ( + + {invitedByEmail} + + ) has invited you to the {teamName}{" "} + team on Vercel. + +
+ + + + + + invited you to + + + + + +
+
+ +
+ + or copy and paste this URL into your browser:{" "} + + {inviteLink} + + +
+ + This invitation was intended for{" "} + {username} .This + invite was sent from{" "} + {inviteFromIp}{" "} + located in{" "} + + {inviteFromLocation} + + . If you were not expecting this invitation, you can + ignore this email. If you are concerned about your + account's safety, please reply to this email to get + in touch with us. + +
+ +
+ + ); +}; + +export default VercelInviteUserEmail; diff --git a/packages/email/package.json b/packages/email/package.json new file mode 100644 index 00000000..f059355d --- /dev/null +++ b/packages/email/package.json @@ -0,0 +1,27 @@ +{ + "name": "email", + "version": "1.0.0", + "description": "", + "scripts": { + "email-dev": "email dev --dir ./templates --port 3001", + "email-export": "email export --dir ./templates", + "send-test-email": "ts-node scripts/send-test-email.tsx" + }, + "keywords": [], + "author": "", + "license": "ISC", + "dependencies": { + "@plunk/node": "^3.0.3", + "@react-email/components": "^0.0.25", + "@react-email/render": "^1.0.4", + "@types/node": "20.14.11", + "@types/react": "18.3.3", + "config": "workspace:*", + "react": "18.3.1", + "react-dom": "18.3.1" + }, + "devDependencies": { + "react-email": "^3.0.6", + "ts-node": "^10.9.2" + } +} diff --git a/packages/email/scripts/send-test-email.tsx b/packages/email/scripts/send-test-email.tsx new file mode 100644 index 00000000..30a9a5be --- /dev/null +++ b/packages/email/scripts/send-test-email.tsx @@ -0,0 +1,34 @@ +import { createInterface } from "readline"; +import { sendRegistrationEmail } from "../sender"; + +const reader = createInterface({ + input: process.stdin, + output: process.stdout, +}); + +reader.question( + "Enter the email address you would like to recieve the email: ", + async (email) => { + const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; + + if (!emailRegex.test(email)) { + reader.write("Invalid email address entered.\n"); + reader.close(); + return; + } + + await sendRegistrationEmail({ + to: email, + subject: "Test Email", + body: { + email, + firstName: "Someone", + lastName: "Important", + hackerTag: "jdoe", + }, + }); + + reader.write(`Email sent check the email address: ${email}.\n`); + reader.close(); + }, +); diff --git a/packages/email/sender/index.ts b/packages/email/sender/index.ts new file mode 100644 index 00000000..b07472b0 --- /dev/null +++ b/packages/email/sender/index.ts @@ -0,0 +1,9 @@ +import Plunk from "@plunk/node"; + +export const plunk = new Plunk(process.env.PLUNK_API_KEY as string, { + baseUrl: process.env.PLUNK_API_URL as string, +}); + +export { render } from "@react-email/render"; + +export * from "./utils"; diff --git a/packages/email/sender/utils.tsx b/packages/email/sender/utils.tsx new file mode 100644 index 00000000..5f5cef19 --- /dev/null +++ b/packages/email/sender/utils.tsx @@ -0,0 +1,30 @@ +import { RegistrationSuccessEmail } from "../templates/registration"; +import { type ComponentProps } from "react"; +import { plunk, render } from "."; + +type RegistrationEmailBody = ComponentProps; + +interface SendEmailParams { + body: T; + to: string; + subject: string; +} + +export async function sendRegistrationEmail({ + body, + to, + subject, +}: SendEmailParams) { + const renderedBody = await render(); + let success = true; + + await plunk.emails + .send({ + to, + subject, + body: renderedBody, + }) + .catch(() => (success = false)); + + return success; +} diff --git a/packages/email/templates/registration.tsx b/packages/email/templates/registration.tsx new file mode 100644 index 00000000..ced8d6af --- /dev/null +++ b/packages/email/templates/registration.tsx @@ -0,0 +1,155 @@ +import { + Body, + Button, + Container, + Head, + Heading, + Hr, + Html, + Img, + Link, + Preview, + Section, + Tailwind, + Text, +} from "@react-email/components"; +import c from "config"; + +interface RegistrationSuccessEmailProps { + firstName: string; + lastName: string; + hackerTag: string; + email: string; +} + +const baseUrl = process.env.VERCEL_ENV != "development" ? c.siteUrl : ""; + +export const RegistrationSuccessEmail = ({ + firstName = "Hacker", + lastName = "Person", + hackerTag = "thehacker", + email = "name@example.com", +}: RegistrationSuccessEmailProps) => { + const previewText = `You're registered for ${c.hackathonName} ${c.itteration}! We look forward to seeing you there!`; + + return ( + + + {previewText} + + + +
+ Vercel +
+ + You're Registered for{" "} + {`${c.hackathonName} ${c.itteration}!`} + + + Hey there {firstName}! + + + + You are now registered for{" "} + {`${c.hackathonName} ${c.itteration}`}! + {" "} + We can't wait to see you at the event! + + + A few quick notes: + + +
    +
  • + + Make sure your profile info is correct! If + there are any issues, you can modify them in + your profile settings or email us at{" "} + {c.issueEmail}. + +
  • +
  • + + Be on the lookout for RSVP emails! We'll + send them out as we get closer to the event. + +
  • +
  • + + + Lastly, join us over on{" "} + + Discord + + ! + {" "} + We'll be sharing more information there as + we get closer to the event. + +
  • +
+ +
+ + + For your reference, here is your + registration information: + + + First Name: {firstName} +
+ HackerTag: {hackerTag} +
+ Email: {email} +
+ Registration Date:{" "} + {new Date().toLocaleDateString("en-US", { + year: "numeric", + month: "long", + day: "numeric", + })} +
+
+
+
+ + +
+
+ + This email was intended for {firstName} {lastName}{" "} + (@{hackerTag}). If you did not expect to recieve + this email please ignore it. +
+
+ This inbox is unmonitored. If you have any questions + or issues, please contact {c.issueEmail}. +
+
+ +
+ + ); +}; + +export default RegistrationSuccessEmail; diff --git a/packages/email/tsconfig.json b/packages/email/tsconfig.json new file mode 100644 index 00000000..800d8e51 --- /dev/null +++ b/packages/email/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "isolatedModules": true, + "moduleResolution": "node", + "preserveWatchOutput": true, + "skipLibCheck": true, + "noEmit": true, + "strict": true, + "jsx": "react-jsx" + }, + "exclude": [ + "node_modules" + ] +} \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a809fa25..418f262d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -253,6 +253,9 @@ importers: drizzle-zod: specifier: ^0.7.0 version: 0.7.0(drizzle-orm@0.39.3)(zod@3.23.8) + email: + specifier: workspace:* + version: link:../../packages/email embla-carousel: specifier: 8.1.7 version: 8.1.7 @@ -429,6 +432,40 @@ importers: specifier: ^6.0.2 version: 6.0.2 + packages/email: + dependencies: + '@plunk/node': + specifier: ^3.0.3 + version: 3.0.3 + '@react-email/components': + specifier: ^0.0.25 + version: 0.0.25(react-dom@18.3.1)(react@18.3.1) + '@react-email/render': + specifier: ^1.0.4 + version: 1.0.4(react-dom@18.3.1)(react@18.3.1) + '@types/node': + specifier: 20.14.11 + version: 20.14.11 + '@types/react': + specifier: 18.3.3 + version: 18.3.3 + config: + specifier: workspace:* + version: link:../config + react: + specifier: 18.3.1 + version: 18.3.1 + react-dom: + specifier: 18.3.1 + version: 18.3.1(react@18.3.1) + devDependencies: + react-email: + specifier: ^3.0.6 + version: 3.0.6(react-dom@18.3.1)(react@18.3.1) + ts-node: + specifier: ^10.9.2 + version: 10.9.2(@types/node@20.14.11)(typescript@5.5.3) + packages/tsconfig: {} packages: @@ -444,7 +481,6 @@ packages: dependencies: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - dev: false /@aws-crypto/crc32@5.2.0: resolution: {integrity: sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg==} @@ -471,7 +507,7 @@ packages: '@aws-sdk/types': 3.734.0 '@aws-sdk/util-locate-window': 3.568.0 '@smithy/util-utf8': 2.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-crypto/sha256-browser@5.2.0: @@ -483,7 +519,7 @@ packages: '@aws-sdk/types': 3.734.0 '@aws-sdk/util-locate-window': 3.568.0 '@smithy/util-utf8': 2.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-crypto/sha256-js@5.2.0: @@ -492,7 +528,7 @@ packages: dependencies: '@aws-crypto/util': 5.2.0 '@aws-sdk/types': 3.734.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-crypto/supports-web-crypto@5.2.0: @@ -798,7 +834,7 @@ packages: '@smithy/util-middleware': 3.0.3 '@smithy/util-retry': 3.0.3 '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 + tslib: 2.8.1 transitivePeerDependencies: - aws-crt dev: false @@ -984,7 +1020,7 @@ packages: '@smithy/util-middleware': 3.0.3 '@smithy/util-retry': 3.0.3 '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 + tslib: 2.8.1 transitivePeerDependencies: - aws-crt dev: false @@ -999,7 +1035,7 @@ packages: '@smithy/smithy-client': 3.1.9 '@smithy/types': 3.3.0 fast-xml-parser: 4.2.5 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/core@3.750.0: @@ -1016,7 +1052,7 @@ packages: '@smithy/types': 4.1.0 '@smithy/util-middleware': 4.0.1 fast-xml-parser: 4.4.1 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/core@3.758.0: @@ -1195,7 +1231,7 @@ packages: '@smithy/property-provider': 3.1.3 '@smithy/shared-ini-file-loader': 3.1.4 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 transitivePeerDependencies: - '@aws-sdk/client-sso-oidc' - '@aws-sdk/client-sts' @@ -1217,7 +1253,7 @@ packages: '@smithy/property-provider': 4.0.1 '@smithy/shared-ini-file-loader': 4.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 transitivePeerDependencies: - aws-crt dev: false @@ -1389,7 +1425,7 @@ packages: '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 '@smithy/util-config-provider': 4.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-expect-continue@3.616.0: @@ -1409,7 +1445,7 @@ packages: '@aws-sdk/types': 3.734.0 '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-flexible-checksums@3.616.0: @@ -1442,7 +1478,7 @@ packages: '@smithy/util-middleware': 4.0.1 '@smithy/util-stream': 4.1.2 '@smithy/util-utf8': 4.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-flexible-checksums@3.758.0: @@ -1471,7 +1507,7 @@ packages: '@aws-sdk/types': 3.609.0 '@smithy/protocol-http': 4.0.4 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-host-header@3.734.0: @@ -1481,7 +1517,7 @@ packages: '@aws-sdk/types': 3.734.0 '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-location-constraint@3.609.0: @@ -1499,7 +1535,7 @@ packages: dependencies: '@aws-sdk/types': 3.734.0 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-logger@3.609.0: @@ -1508,7 +1544,7 @@ packages: dependencies: '@aws-sdk/types': 3.609.0 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-logger@3.734.0: @@ -1517,7 +1553,7 @@ packages: dependencies: '@aws-sdk/types': 3.734.0 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-recursion-detection@3.616.0: @@ -1527,7 +1563,7 @@ packages: '@aws-sdk/types': 3.609.0 '@smithy/protocol-http': 4.0.4 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-recursion-detection@3.734.0: @@ -1537,7 +1573,7 @@ packages: '@aws-sdk/types': 3.734.0 '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-sdk-s3@3.616.0: @@ -1574,7 +1610,7 @@ packages: '@smithy/util-middleware': 4.0.1 '@smithy/util-stream': 4.1.2 '@smithy/util-utf8': 4.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-sdk-s3@3.758.0: @@ -1625,7 +1661,7 @@ packages: dependencies: '@aws-sdk/types': 3.734.0 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-user-agent@3.616.0: @@ -1636,7 +1672,7 @@ packages: '@aws-sdk/util-endpoints': 3.614.0 '@smithy/protocol-http': 4.0.4 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-user-agent@3.750.0: @@ -1649,7 +1685,7 @@ packages: '@smithy/core': 3.1.5 '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/middleware-user-agent@3.758.0: @@ -1766,7 +1802,7 @@ packages: '@smithy/types': 3.3.0 '@smithy/util-config-provider': 3.0.0 '@smithy/util-middleware': 3.0.3 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/region-config-resolver@3.734.0: @@ -1778,7 +1814,7 @@ packages: '@smithy/types': 4.1.0 '@smithy/util-config-provider': 4.0.0 '@smithy/util-middleware': 4.0.1 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/s3-request-presigner@3.750.0: @@ -1816,7 +1852,7 @@ packages: '@smithy/protocol-http': 5.0.1 '@smithy/signature-v4': 5.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/signature-v4-multi-region@3.758.0: @@ -1878,7 +1914,7 @@ packages: engines: {node: '>=16.0.0'} dependencies: '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/types@3.734.0: @@ -1886,7 +1922,7 @@ packages: engines: {node: '>=18.0.0'} dependencies: '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/util-arn-parser@3.568.0: @@ -1910,7 +1946,7 @@ packages: '@aws-sdk/types': 3.609.0 '@smithy/types': 3.3.0 '@smithy/util-endpoints': 2.0.5 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/util-endpoints@3.743.0: @@ -1920,7 +1956,7 @@ packages: '@aws-sdk/types': 3.734.0 '@smithy/types': 4.1.0 '@smithy/util-endpoints': 3.0.1 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/util-format-url@3.734.0: @@ -1930,7 +1966,7 @@ packages: '@aws-sdk/types': 3.734.0 '@smithy/querystring-builder': 4.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/util-locate-window@3.568.0: @@ -1946,7 +1982,7 @@ packages: '@aws-sdk/types': 3.609.0 '@smithy/types': 3.3.0 bowser: 2.11.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/util-user-agent-browser@3.734.0: @@ -1955,7 +1991,7 @@ packages: '@aws-sdk/types': 3.734.0 '@smithy/types': 4.1.0 bowser: 2.11.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/util-user-agent-node@3.614.0: @@ -1986,7 +2022,7 @@ packages: '@aws-sdk/types': 3.734.0 '@smithy/node-config-provider': 4.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@aws-sdk/util-user-agent-node@3.758.0: @@ -2018,7 +2054,7 @@ packages: engines: {node: '>=18.0.0'} dependencies: '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@babel/code-frame@7.24.7: @@ -2027,12 +2063,10 @@ packages: dependencies: '@babel/highlight': 7.24.7 picocolors: 1.0.1 - dev: false /@babel/compat-data@7.24.9: resolution: {integrity: sha512-e701mcfApCJqMMueQI0Fb68Amflj83+dvAvHawoBpAz+GDjCIyGHzNwnefjsWJ3xiYAqqiQFoWbspGYBdb2/ng==} engines: {node: '>=6.9.0'} - dev: false /@babel/core@7.24.5: resolution: {integrity: sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==} @@ -2044,7 +2078,7 @@ packages: '@babel/helper-compilation-targets': 7.24.8 '@babel/helper-module-transforms': 7.24.9(@babel/core@7.24.5) '@babel/helpers': 7.24.8 - '@babel/parser': 7.24.5 + '@babel/parser': 7.24.8 '@babel/template': 7.24.7 '@babel/traverse': 7.24.8 '@babel/types': 7.24.9 @@ -2055,7 +2089,6 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color - dev: false /@babel/generator@7.24.10: resolution: {integrity: sha512-o9HBZL1G2129luEUlG1hB4N/nlYNWHnpwlND9eOMclRqqu1YDy2sSYVCFUZwl8I1Gxh+QSRrP2vD7EpUmFVXxg==} @@ -2065,7 +2098,6 @@ packages: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 - dev: false /@babel/helper-compilation-targets@7.24.8: resolution: {integrity: sha512-oU+UoqCHdp+nWVDkpldqIQL/i/bvAv53tRqLG/s+cOXxe66zOYLU7ar/Xs3LdmBihrUMEUhwu6dMZwbNOYDwvw==} @@ -2076,14 +2108,12 @@ packages: browserslist: 4.23.2 lru-cache: 5.1.1 semver: 6.3.1 - dev: false /@babel/helper-environment-visitor@7.24.7: resolution: {integrity: sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.9 - dev: false /@babel/helper-function-name@7.24.7: resolution: {integrity: sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==} @@ -2091,14 +2121,12 @@ packages: dependencies: '@babel/template': 7.24.7 '@babel/types': 7.24.9 - dev: false /@babel/helper-hoist-variables@7.24.7: resolution: {integrity: sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.9 - dev: false /@babel/helper-module-imports@7.24.7: resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} @@ -2108,7 +2136,6 @@ packages: '@babel/types': 7.24.9 transitivePeerDependencies: - supports-color - dev: false /@babel/helper-module-transforms@7.24.9(@babel/core@7.24.5): resolution: {integrity: sha512-oYbh+rtFKj/HwBQkFlUzvcybzklmVdVV3UU+mN7n2t/q3yGHbuVdNxyFvSBO1tfvjyArpHNcWMAzsSPdyI46hw==} @@ -2124,7 +2151,6 @@ packages: '@babel/helper-validator-identifier': 7.24.7 transitivePeerDependencies: - supports-color - dev: false /@babel/helper-simple-access@7.24.7: resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} @@ -2134,29 +2160,24 @@ packages: '@babel/types': 7.24.9 transitivePeerDependencies: - supports-color - dev: false /@babel/helper-split-export-declaration@7.24.7: resolution: {integrity: sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.9 - dev: false /@babel/helper-string-parser@7.24.8: resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} engines: {node: '>=6.9.0'} - dev: false /@babel/helper-validator-identifier@7.24.7: resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} engines: {node: '>=6.9.0'} - dev: false /@babel/helper-validator-option@7.24.8: resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} engines: {node: '>=6.9.0'} - dev: false /@babel/helpers@7.24.8: resolution: {integrity: sha512-gV2265Nkcz7weJJfvDoAEVzC1e2OTDpkGbEsebse8koXUJUXPsCMi7sRo/+SPMuMZ9MtUPnGwITTnQnU5YjyaQ==} @@ -2164,7 +2185,6 @@ packages: dependencies: '@babel/template': 7.24.7 '@babel/types': 7.24.9 - dev: false /@babel/highlight@7.24.7: resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} @@ -2174,7 +2194,6 @@ packages: chalk: 2.4.2 js-tokens: 4.0.0 picocolors: 1.0.1 - dev: false /@babel/parser@7.24.5: resolution: {integrity: sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==} @@ -2182,7 +2201,6 @@ packages: hasBin: true dependencies: '@babel/types': 7.24.9 - dev: false /@babel/parser@7.24.8: resolution: {integrity: sha512-WzfbgXOkGzZiXXCqk43kKwZjzwx4oulxZi3nq2TYL9mOjQv6kYwul9mz6ID36njuL7Xkp6nJEfok848Zj10j/w==} @@ -2190,7 +2208,6 @@ packages: hasBin: true dependencies: '@babel/types': 7.24.9 - dev: false /@babel/runtime-corejs3@7.24.8: resolution: {integrity: sha512-DXG/BhegtMHhnN7YPIvxWd303/9aXvYFD1TjNL3CD6tUrhI2LVsg3Lck0aql5TRH29n4sj3emcROypkZVUfSuA==} @@ -2228,7 +2245,6 @@ packages: '@babel/code-frame': 7.24.7 '@babel/parser': 7.24.8 '@babel/types': 7.24.9 - dev: false /@babel/traverse@7.24.8: resolution: {integrity: sha512-t0P1xxAPzEDcEPmjprAQq19NWum4K0EQPjMwZQZbHt+GiZqvjCHjj755Weq1YRPVzBI+3zSfvScfpnuIecVFJQ==} @@ -2246,7 +2262,6 @@ packages: globals: 11.12.0 transitivePeerDependencies: - supports-color - dev: false /@babel/types@7.24.9: resolution: {integrity: sha512-xm8XrMKz0IlUdocVbYJe0Z9xEgidU7msskG8BbhnTPK/HZ2z/7FP7ykqPgrUH+C+r414mNfNWam1f2vqOjqjYQ==} @@ -2255,7 +2270,6 @@ packages: '@babel/helper-string-parser': 7.24.8 '@babel/helper-validator-identifier': 7.24.7 to-fast-properties: 2.0.0 - dev: false /@clerk/backend@1.25.8(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-DmIc5pNQeTLHLCLN8ajcNhYNCfqmvwSwyGqr5aCHiJdWqGb9DGaws7PXU9btBiXVbI+NK/CJwjGv09+2rGpgAg==} @@ -2642,7 +2656,6 @@ packages: cpu: [ppc64] os: [aix] requiresBuild: true - dev: false optional: true /@esbuild/aix-ppc64@0.19.12: @@ -2686,7 +2699,6 @@ packages: cpu: [arm64] os: [android] requiresBuild: true - dev: false optional: true /@esbuild/android-arm64@0.19.12: @@ -2739,7 +2751,6 @@ packages: cpu: [arm] os: [android] requiresBuild: true - dev: false optional: true /@esbuild/android-arm@0.19.12: @@ -2783,7 +2794,6 @@ packages: cpu: [x64] os: [android] requiresBuild: true - dev: false optional: true /@esbuild/android-x64@0.19.12: @@ -2827,7 +2837,6 @@ packages: cpu: [arm64] os: [darwin] requiresBuild: true - dev: false optional: true /@esbuild/darwin-arm64@0.19.12: @@ -2871,7 +2880,6 @@ packages: cpu: [x64] os: [darwin] requiresBuild: true - dev: false optional: true /@esbuild/darwin-x64@0.19.12: @@ -2915,7 +2923,6 @@ packages: cpu: [arm64] os: [freebsd] requiresBuild: true - dev: false optional: true /@esbuild/freebsd-arm64@0.19.12: @@ -2959,7 +2966,6 @@ packages: cpu: [x64] os: [freebsd] requiresBuild: true - dev: false optional: true /@esbuild/freebsd-x64@0.19.12: @@ -3003,7 +3009,6 @@ packages: cpu: [arm64] os: [linux] requiresBuild: true - dev: false optional: true /@esbuild/linux-arm64@0.19.12: @@ -3047,7 +3052,6 @@ packages: cpu: [arm] os: [linux] requiresBuild: true - dev: false optional: true /@esbuild/linux-arm@0.19.12: @@ -3091,7 +3095,6 @@ packages: cpu: [ia32] os: [linux] requiresBuild: true - dev: false optional: true /@esbuild/linux-ia32@0.19.12: @@ -3144,7 +3147,6 @@ packages: cpu: [loong64] os: [linux] requiresBuild: true - dev: false optional: true /@esbuild/linux-loong64@0.19.12: @@ -3188,7 +3190,6 @@ packages: cpu: [mips64el] os: [linux] requiresBuild: true - dev: false optional: true /@esbuild/linux-mips64el@0.19.12: @@ -3232,7 +3233,6 @@ packages: cpu: [ppc64] os: [linux] requiresBuild: true - dev: false optional: true /@esbuild/linux-ppc64@0.19.12: @@ -3276,7 +3276,6 @@ packages: cpu: [riscv64] os: [linux] requiresBuild: true - dev: false optional: true /@esbuild/linux-riscv64@0.19.12: @@ -3320,7 +3319,6 @@ packages: cpu: [s390x] os: [linux] requiresBuild: true - dev: false optional: true /@esbuild/linux-s390x@0.19.12: @@ -3364,7 +3362,6 @@ packages: cpu: [x64] os: [linux] requiresBuild: true - dev: false optional: true /@esbuild/linux-x64@0.19.12: @@ -3425,7 +3422,6 @@ packages: cpu: [x64] os: [netbsd] requiresBuild: true - dev: false optional: true /@esbuild/netbsd-x64@0.19.12: @@ -3486,7 +3482,6 @@ packages: cpu: [x64] os: [openbsd] requiresBuild: true - dev: false optional: true /@esbuild/openbsd-x64@0.19.12: @@ -3530,7 +3525,6 @@ packages: cpu: [x64] os: [sunos] requiresBuild: true - dev: false optional: true /@esbuild/sunos-x64@0.19.12: @@ -3574,7 +3568,6 @@ packages: cpu: [arm64] os: [win32] requiresBuild: true - dev: false optional: true /@esbuild/win32-arm64@0.19.12: @@ -3618,7 +3611,6 @@ packages: cpu: [ia32] os: [win32] requiresBuild: true - dev: false optional: true /@esbuild/win32-ia32@0.19.12: @@ -3662,7 +3654,6 @@ packages: cpu: [x64] os: [win32] requiresBuild: true - dev: false optional: true /@esbuild/win32-x64@0.19.12: @@ -3726,7 +3717,7 @@ packages: engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: '@eslint/object-schema': 2.1.4 - debug: 4.3.5 + debug: 4.4.0 minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -3755,7 +3746,7 @@ packages: engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: ajv: 6.12.6 - debug: 4.3.5 + debug: 4.4.0 espree: 10.1.0 globals: 14.0.0 ignore: 5.3.1 @@ -4141,20 +4132,20 @@ packages: /@internationalized/message@3.1.4: resolution: {integrity: sha512-Dygi9hH1s7V9nha07pggCkvmRfDd3q2lWnMGvrJyrOwYMe1yj4D2T9BoH9I6MGR7xz0biQrtLPsqUkqXzIrBOw==} dependencies: - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 intl-messageformat: 10.5.14 dev: false /@internationalized/number@3.5.3: resolution: {integrity: sha512-rd1wA3ebzlp0Mehj5YTuTI50AQEx80gWFyHcQu+u91/5NgdwBecO8BH6ipPfE+lmQ9d63vpB3H9SHoIUiupllw==} dependencies: - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 dev: false /@internationalized/string@3.2.3: resolution: {integrity: sha512-9kpfLoA8HegiWTeCbR2livhdVeKobCnVv8tlJ6M2jF+4tcMqDo94ezwlnrUANBWPgd8U7OXIHCk2Ov2qhk4KXw==} dependencies: - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 dev: false /@isaacs/cliui@8.0.2: @@ -4223,7 +4214,6 @@ packages: '@jridgewell/set-array': 1.2.1 '@jridgewell/sourcemap-codec': 1.5.0 '@jridgewell/trace-mapping': 0.3.25 - dev: false /@jridgewell/resolve-uri@3.1.2: resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} @@ -4232,7 +4222,6 @@ packages: /@jridgewell/set-array@1.2.1: resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} engines: {node: '>=6.0.0'} - dev: false /@jridgewell/source-map@0.3.6: resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==} @@ -4249,7 +4238,6 @@ packages: dependencies: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 - dev: false /@jridgewell/trace-mapping@0.3.9: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} @@ -4399,6 +4387,10 @@ packages: resolution: {integrity: sha512-JnzQ2cExDeG7FxJwqAksZ3aqVJrHjFwZQAEJ9gQZSoEhIow7SNoKZzju/AwQ+PLIR4NY8V0rhcVozx/2izDO0w==} dev: false + /@next/env@15.1.2: + resolution: {integrity: sha512-Hm3jIGsoUl6RLB1vzY+dZeqb+/kWPZ+h34yiWxW0dV87l8Im/eMOwpOA+a0L78U0HM04syEjXuRlCozqpwuojQ==} + dev: true + /@next/swc-darwin-arm64@14.1.4: resolution: {integrity: sha512-ubmUkbmW65nIAOmoxT1IROZdmmJMmdYvXIe8211send9ZYJu+SqxSnJM4TrPj9wmL6g9Atvj0S/2cFmMSS99jg==} engines: {node: '>= 10'} @@ -4417,6 +4409,15 @@ packages: dev: false optional: true + /@next/swc-darwin-arm64@15.1.2: + resolution: {integrity: sha512-b9TN7q+j5/7+rGLhFAVZiKJGIASuo8tWvInGfAd8wsULjB1uNGRCj1z1WZwwPWzVQbIKWFYqc+9L7W09qwt52w==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@next/swc-darwin-x64@14.1.4: resolution: {integrity: sha512-b0Xo1ELj3u7IkZWAKcJPJEhBop117U78l70nfoQGo4xUSvv0PJSTaV4U9xQBLvZlnjsYkc8RwQN1HoH/oQmLlQ==} engines: {node: '>= 10'} @@ -4435,6 +4436,15 @@ packages: dev: false optional: true + /@next/swc-darwin-x64@15.1.2: + resolution: {integrity: sha512-caR62jNDUCU+qobStO6YJ05p9E+LR0EoXh1EEmyU69cYydsAy7drMcOlUlRtQihM6K6QfvNwJuLhsHcCzNpqtA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@next/swc-linux-arm64-gnu@14.1.4: resolution: {integrity: sha512-457G0hcLrdYA/u1O2XkRMsDKId5VKe3uKPvrKVOyuARa6nXrdhJOOYU9hkKKyQTMru1B8qEP78IAhf/1XnVqKA==} engines: {node: '>= 10'} @@ -4453,6 +4463,15 @@ packages: dev: false optional: true + /@next/swc-linux-arm64-gnu@15.1.2: + resolution: {integrity: sha512-fHHXBusURjBmN6VBUtu6/5s7cCeEkuGAb/ZZiGHBLVBXMBy4D5QpM8P33Or8JD1nlOjm/ZT9sEE5HouQ0F+hUA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@next/swc-linux-arm64-musl@14.1.4: resolution: {integrity: sha512-l/kMG+z6MB+fKA9KdtyprkTQ1ihlJcBh66cf0HvqGP+rXBbOXX0dpJatjZbHeunvEHoBBS69GYQG5ry78JMy3g==} engines: {node: '>= 10'} @@ -4471,6 +4490,15 @@ packages: dev: false optional: true + /@next/swc-linux-arm64-musl@15.1.2: + resolution: {integrity: sha512-9CF1Pnivij7+M3G74lxr+e9h6o2YNIe7QtExWq1KUK4hsOLTBv6FJikEwCaC3NeYTflzrm69E5UfwEAbV2U9/g==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@next/swc-linux-x64-gnu@14.1.4: resolution: {integrity: sha512-BapIFZ3ZRnvQ1uWbmqEGJuPT9cgLwvKtxhK/L2t4QYO7l+/DxXuIGjvp1x8rvfa/x1FFSsipERZK70pewbtJtw==} engines: {node: '>= 10'} @@ -4489,6 +4517,15 @@ packages: dev: false optional: true + /@next/swc-linux-x64-gnu@15.1.2: + resolution: {integrity: sha512-tINV7WmcTUf4oM/eN3Yuu/f8jQ5C6AkueZPKeALs/qfdfX57eNv4Ij7rt0SA6iZ8+fMobVfcFVv664Op0caCCg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@next/swc-linux-x64-musl@14.1.4: resolution: {integrity: sha512-mqVxTwk4XuBl49qn2A5UmzFImoL1iLm0KQQwtdRJRKl21ylQwwGCxJtIYo2rbfkZHoSKlh/YgztY0qH3wG1xIg==} engines: {node: '>= 10'} @@ -4507,6 +4544,15 @@ packages: dev: false optional: true + /@next/swc-linux-x64-musl@15.1.2: + resolution: {integrity: sha512-jf2IseC4WRsGkzeUw/cK3wci9pxR53GlLAt30+y+B+2qAQxMw6WAC3QrANIKxkcoPU3JFh/10uFfmoMDF9JXKg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@next/swc-win32-arm64-msvc@14.1.4: resolution: {integrity: sha512-xzxF4ErcumXjO2Pvg/wVGrtr9QQJLk3IyQX1ddAC/fi6/5jZCZ9xpuL9Tzc4KPWMFq8GGWFVDMshZOdHGdkvag==} engines: {node: '>= 10'} @@ -4525,6 +4571,15 @@ packages: dev: false optional: true + /@next/swc-win32-arm64-msvc@15.1.2: + resolution: {integrity: sha512-wvg7MlfnaociP7k8lxLX4s2iBJm4BrNiNFhVUY+Yur5yhAJHfkS8qPPeDEUH8rQiY0PX3u/P7Q/wcg6Mv6GSAA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@next/swc-win32-ia32-msvc@14.1.4: resolution: {integrity: sha512-WZiz8OdbkpRw6/IU/lredZWKKZopUMhcI2F+XiMAcPja0uZYdMTZQRoQ0WZcvinn9xZAidimE7tN9W5v9Yyfyw==} engines: {node: '>= 10'} @@ -4561,6 +4616,15 @@ packages: dev: false optional: true + /@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] + requiresBuild: true + dev: true + optional: true + /@nodelib/fs.scandir@2.1.5: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -4594,6 +4658,12 @@ packages: engines: {node: '>=16'} dev: false + /@plunk/node@3.0.3: + resolution: {integrity: sha512-f3NT418/EdLjebQ4arAwR64cnz7d5H7i1CeKh8+B0cVBrwzHvF+Q+QkhutF+FAp49yuI/BYc71qQH+RFc2fxxQ==} + dependencies: + tslib: 2.8.1 + dev: false + /@radix-ui/colors@1.0.1: resolution: {integrity: sha512-xySw8f0ZVsAEP+e7iLl3EvcBXX7gsIlC1Zso/sPBW9gIWerBTgz6axrjU+MZ39wD+WFi5h5zdWpsg3+hwt2Qsg==} dev: false @@ -6311,7 +6381,7 @@ packages: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/breadcrumbs': 3.7.5(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6326,7 +6396,7 @@ packages: '@react-stately/toggle': 3.7.4(react@18.3.1) '@react-types/button': 3.9.4(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6345,7 +6415,7 @@ packages: '@react-types/button': 3.9.4(react@18.3.1) '@react-types/calendar': 3.4.6(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6365,7 +6435,7 @@ packages: '@react-stately/toggle': 3.7.4(react@18.3.1) '@react-types/checkbox': 3.8.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6389,7 +6459,7 @@ packages: '@react-types/button': 3.9.4(react@18.3.1) '@react-types/combobox': 3.11.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6417,7 +6487,7 @@ packages: '@react-types/datepicker': 3.7.4(react@18.3.1) '@react-types/dialog': 3.5.10(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6433,7 +6503,7 @@ packages: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/dialog': 3.5.10(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6453,7 +6523,7 @@ packages: '@react-stately/dnd': 3.3.1(react@18.3.1) '@react-types/button': 3.9.4(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6466,7 +6536,7 @@ packages: '@react-aria/interactions': 3.21.3(react@18.3.1) '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 clsx: 2.1.1 react: 18.3.1 dev: false @@ -6480,7 +6550,7 @@ packages: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-stately/form': 3.0.3(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6503,7 +6573,7 @@ packages: '@react-types/checkbox': 3.8.1(react@18.3.1) '@react-types/grid': 3.2.6(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6524,7 +6594,7 @@ packages: '@react-stately/list': 3.10.5(react@18.3.1) '@react-stately/tree': 3.8.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6541,7 +6611,7 @@ packages: '@react-aria/ssr': 3.9.4(react@18.3.1) '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6553,7 +6623,7 @@ packages: '@react-aria/ssr': 3.9.4(react@18.3.1) '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6564,7 +6634,7 @@ packages: dependencies: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6578,7 +6648,7 @@ packages: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/link': 3.5.5(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6596,7 +6666,7 @@ packages: '@react-stately/list': 3.10.5(react@18.3.1) '@react-types/listbox': 3.4.9(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6604,7 +6674,7 @@ packages: /@react-aria/live-announcer@3.3.4: resolution: {integrity: sha512-w8lxs35QrRrn6pBNzVfyGOeqWdxeVKf9U6bXIVwhq7rrTqRULL8jqy8RJIMfIs1s8G5FpwWYjyBOjl2g5Cu1iA==} dependencies: - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 dev: false /@react-aria/menu@3.14.1(react-dom@18.3.1)(react@18.3.1): @@ -6625,7 +6695,7 @@ packages: '@react-types/button': 3.9.4(react@18.3.1) '@react-types/menu': 3.9.9(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6638,7 +6708,7 @@ packages: '@react-aria/progress': 3.4.13(react@18.3.1) '@react-types/meter': 3.4.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6658,7 +6728,7 @@ packages: '@react-types/button': 3.9.4(react@18.3.1) '@react-types/numberfield': 3.8.3(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6679,7 +6749,7 @@ packages: '@react-types/button': 3.9.4(react@18.3.1) '@react-types/overlays': 3.8.7(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6694,7 +6764,7 @@ packages: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/progress': 3.5.4(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6712,7 +6782,7 @@ packages: '@react-stately/radio': 3.10.4(react@18.3.1) '@react-types/radio': 3.8.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6728,7 +6798,7 @@ packages: '@react-types/button': 3.9.4(react@18.3.1) '@react-types/searchfield': 3.5.5(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6751,7 +6821,7 @@ packages: '@react-types/button': 3.9.4(react@18.3.1) '@react-types/select': 3.9.4(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6768,7 +6838,7 @@ packages: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-stately/selection': 3.15.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6780,7 +6850,7 @@ packages: dependencies: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6797,7 +6867,7 @@ packages: '@react-stately/slider': 3.5.4(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@react-types/slider': 3.7.3(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6812,7 +6882,7 @@ packages: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/button': 3.9.4(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6823,7 +6893,7 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6835,7 +6905,7 @@ packages: '@react-aria/toggle': 3.10.4(react@18.3.1) '@react-stately/toggle': 3.7.4(react@18.3.1) '@react-types/switch': 3.5.3(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6860,7 +6930,7 @@ packages: '@react-types/grid': 3.2.6(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@react-types/table': 3.9.5(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6878,7 +6948,7 @@ packages: '@react-stately/tabs': 3.6.6(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@react-types/tabs': 3.3.7(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6898,7 +6968,7 @@ packages: '@react-stately/list': 3.10.5(react@18.3.1) '@react-types/button': 3.9.4(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false @@ -6916,7 +6986,7 @@ packages: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@react-types/textfield': 3.9.3(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6930,7 +7000,7 @@ packages: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-stately/toggle': 3.7.4(react@18.3.1) '@react-types/checkbox': 3.8.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6945,7 +7015,7 @@ packages: '@react-stately/tooltip': 3.4.9(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@react-types/tooltip': 3.4.9(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -6957,7 +7027,7 @@ packages: '@react-aria/ssr': 3.9.4(react@18.3.1) '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 clsx: 2.1.1 react: 18.3.1 dev: false @@ -6970,7 +7040,15 @@ packages: '@react-aria/interactions': 3.21.3(react@18.3.1) '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 + react: 18.3.1 + dev: false + + /@react-email/body@0.0.10(react@18.3.1): + resolution: {integrity: sha512-dMJyL9aU25ieatdPtVjCyQ/WHZYHwNc+Hy/XpF8Cc18gu21cUynVEeYQzFSeigDRMeBQ3PGAyjVDPIob7YlGwA==} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: react: 18.3.1 dev: false @@ -6991,6 +7069,15 @@ packages: react: 18.3.1 dev: false + /@react-email/button@0.0.17(react@18.3.1): + resolution: {integrity: sha512-ioHdsk+BpGS/PqjU6JS7tUrVy9yvbUx92Z+Cem2+MbYp55oEwQ9VHf7u4f5NoM0gdhfKSehBwRdYlHt/frEMcg==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/code-block@0.0.5(react@18.3.1): resolution: {integrity: sha512-mmInpZsSIkNaYC1y40/S0XXrIqbTzrpllP6J1JMJuDOBG8l5T7pNl4V+gwfsSTvy9hVsuzQFmhHK8kVb1UXv3A==} engines: {node: '>=18.0.0'} @@ -7001,6 +7088,16 @@ packages: react: 18.3.1 dev: false + /@react-email/code-block@0.0.9(react@18.3.1): + resolution: {integrity: sha512-Zrhc71VYrSC1fVXJuaViKoB/dBjxLw6nbE53Bm/eUuZPdnnZ1+ZUIh8jfaRKC5MzMjgnLGQTweGXVnfIrhyxtQ==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + prismjs: 1.29.0 + react: 18.3.1 + dev: false + /@react-email/code-inline@0.0.2(react@18.3.1): resolution: {integrity: sha512-0cmgbbibFeOJl0q04K9jJlPDuJ+SEiX/OG6m3Ko7UOkG3TqjRD8Dtvkij6jNDVfUh/zESpqJCP2CxrCLLMUjdA==} engines: {node: '>=18.0.0'} @@ -7010,6 +7107,15 @@ packages: react: 18.3.1 dev: false + /@react-email/code-inline@0.0.4(react@18.3.1): + resolution: {integrity: sha512-zj3oMQiiUCZbddSNt3k0zNfIBFK0ZNDIzzDyBaJKy6ZASTtWfB+1WFX0cpTX8q0gUiYK+A94rk5Qp68L6YXjXQ==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/column@0.0.10(react@18.3.1): resolution: {integrity: sha512-MnP8Mnwipr0X3XtdD6jMLckb0sI5/IlS6Kl/2F6/rsSWBJy5Gg6nizlekTdkwDmy0kNSe3/1nGU0Zqo98pl63Q==} engines: {node: '>=18.0.0'} @@ -7019,6 +7125,15 @@ packages: react: 18.3.1 dev: false + /@react-email/column@0.0.12(react@18.3.1): + resolution: {integrity: sha512-Rsl7iSdDaeHZO938xb+0wR5ud0Z3MVfdtPbNKJNojZi2hApwLAQXmDrnn/AcPDM5Lpl331ZljJS8vHTWxxkvKw==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/components@0.0.21(@types/react@18.3.3)(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-fwGfH7FF+iuq+IdPcbEO5HoF0Pakk9big+fFW9+3kiyvbSNuo8Io1rhPTMLd8q41XomN4g7mgWovdAeS/8PHrA==} engines: {node: '>=18.0.0'} @@ -7051,6 +7166,37 @@ packages: - react-dom dev: false + /@react-email/components@0.0.25(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-lnfVVrThEcET5NPoeaXvrz9UxtWpGRcut2a07dLbyKgNbP7vj/cXTI5TuHtanCvhCddFpMDnElNRghDOfPzwUg==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + '@react-email/body': 0.0.10(react@18.3.1) + '@react-email/button': 0.0.17(react@18.3.1) + '@react-email/code-block': 0.0.9(react@18.3.1) + '@react-email/code-inline': 0.0.4(react@18.3.1) + '@react-email/column': 0.0.12(react@18.3.1) + '@react-email/container': 0.0.14(react@18.3.1) + '@react-email/font': 0.0.8(react@18.3.1) + '@react-email/head': 0.0.11(react@18.3.1) + '@react-email/heading': 0.0.14(react@18.3.1) + '@react-email/hr': 0.0.10(react@18.3.1) + '@react-email/html': 0.0.10(react@18.3.1) + '@react-email/img': 0.0.10(react@18.3.1) + '@react-email/link': 0.0.10(react@18.3.1) + '@react-email/markdown': 0.0.12(react@18.3.1) + '@react-email/preview': 0.0.11(react@18.3.1) + '@react-email/render': 1.0.1(react-dom@18.3.1)(react@18.3.1) + '@react-email/row': 0.0.10(react@18.3.1) + '@react-email/section': 0.0.14(react@18.3.1) + '@react-email/tailwind': 0.1.0(react@18.3.1) + '@react-email/text': 0.0.10(react@18.3.1) + react: 18.3.1 + transitivePeerDependencies: + - react-dom + dev: false + /@react-email/container@0.0.12(react@18.3.1): resolution: {integrity: sha512-HFu8Pu5COPFfeZxSL+wKv/TV5uO/sp4zQ0XkRCdnGkj/xoq0lqOHVDL4yC2Pu6fxXF/9C3PHDA++5uEYV5WVJw==} engines: {node: '>=18.0.0'} @@ -7060,6 +7206,15 @@ packages: react: 18.3.1 dev: false + /@react-email/container@0.0.14(react@18.3.1): + resolution: {integrity: sha512-NgoaJJd9tTtsrveL86Ocr/AYLkGyN3prdXKd/zm5fQpfDhy/NXezyT3iF6VlwAOEUIu64ErHpAJd+P6ygR+vjg==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/font@0.0.6(react@18.3.1): resolution: {integrity: sha512-sZZFvEZ4U3vNCAZ8wXqIO3DuGJR2qE/8m2fEH+tdqwa532zGO3zW+UlCTg0b9455wkJSzEBeaWik0IkNvjXzxw==} peerDependencies: @@ -7068,6 +7223,23 @@ packages: react: 18.3.1 dev: false + /@react-email/font@0.0.8(react@18.3.1): + resolution: {integrity: sha512-fSBEqYyVPAyyACBBHcs3wEYzNknpHMuwcSAAKE8fOoDfGqURr/vSxKPdh4tOa9z7G4hlcEfgGrCYEa2iPT22cw==} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + + /@react-email/head@0.0.11(react@18.3.1): + resolution: {integrity: sha512-skw5FUgyamIMK+LN+fZQ5WIKQYf0dPiRAvsUAUR2eYoZp9oRsfkIpFHr0GWPkKAYjFEj+uJjaxQ/0VzQH7svVg==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/head@0.0.9(react@18.3.1): resolution: {integrity: sha512-dF3Uv1qy3oh+IU2atXdv5Xk0hk2udOlMb1A/MNGngC0eHyoEV9ThA0XvhN7mm5x9dDLkVamoWUKXDtmkiuSRqQ==} engines: {node: '>=18.0.0'} @@ -7089,6 +7261,24 @@ packages: - '@types/react' dev: false + /@react-email/heading@0.0.14(react@18.3.1): + resolution: {integrity: sha512-jZM7IVuZOXa0G110ES8OkxajPTypIKlzlO1K1RIe1auk76ukQRiCg1IRV4HZlWk1GGUbec5hNxsvZa2kU8cb9w==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + + /@react-email/hr@0.0.10(react@18.3.1): + resolution: {integrity: sha512-3AA4Yjgl3zEid/KVx6uf6TuLJHVZvUc2cG9Wm9ZpWeAX4ODA+8g9HyuC0tfnjbRsVMhMcCGiECuWWXINi+60vA==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/hr@0.0.8(react@18.3.1): resolution: {integrity: sha512-JLVvpCg2wYKEB+n/PGCggWG9fRU5e4lxsGdpK5SDLsCL0ic3OLKSpHMfeE+ZSuw0GixAVVQN7F64PVJHQkd4MQ==} engines: {node: '>=18.0.0'} @@ -7098,6 +7288,15 @@ packages: react: 18.3.1 dev: false + /@react-email/html@0.0.10(react@18.3.1): + resolution: {integrity: sha512-06uiuSKJBWQJfhCKv4MPupELei4Lepyz9Sth7Yq7Fq29CAeB1ejLgKkGqn1I+FZ72hQxPLdYF4iq4yloKv3JCg==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/html@0.0.8(react@18.3.1): resolution: {integrity: sha512-arII3wBNLpeJtwyIJXPaILm5BPKhA+nvdC1F9QkuKcOBJv2zXctn8XzPqyGqDfdplV692ulNJP7XY55YqbKp6w==} engines: {node: '>=18.0.0'} @@ -7107,6 +7306,15 @@ packages: react: 18.3.1 dev: false + /@react-email/img@0.0.10(react@18.3.1): + resolution: {integrity: sha512-pJ8glJjDNaJ53qoM95pvX9SK05yh0bNQY/oyBKmxlBDdUII6ixuMc3SCwYXPMl+tgkQUyDgwEBpSTrLAnjL3hA==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/img@0.0.8(react@18.3.1): resolution: {integrity: sha512-jx/rPuKo31tV18fu7P5rRqelaH5wkhg83Dq7uLwJpfqhbi4KFBGeBfD0Y3PiLPPoh+WvYf+Adv9W2ghNW8nOMQ==} engines: {node: '>=18.0.0'} @@ -7116,6 +7324,15 @@ packages: react: 18.3.1 dev: false + /@react-email/link@0.0.10(react@18.3.1): + resolution: {integrity: sha512-tva3wvAWSR10lMJa9fVA09yRn7pbEki0ZZpHE6GD1jKbFhmzt38VgLO9B797/prqoDZdAr4rVK7LJFcdPx3GwA==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/link@0.0.8(react@18.3.1): resolution: {integrity: sha512-nVikuTi8WJHa6Baad4VuRUbUCa/7EtZ1Qy73TRejaCHn+vhetc39XGqHzKLNh+Z/JFL8Hv9g+4AgG16o2R0ogQ==} engines: {node: '>=18.0.0'} @@ -7135,6 +7352,25 @@ packages: react: 18.3.1 dev: false + /@react-email/markdown@0.0.12(react@18.3.1): + resolution: {integrity: sha512-wsuvj1XAb6O63aizCLNEeqVgKR3oFjAwt9vjfg2y2oh4G1dZeo8zonZM2x1fmkEkBZhzwSHraNi70jSXhA3A9w==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + md-to-react-email: 5.0.2(react@18.3.1) + react: 18.3.1 + dev: false + + /@react-email/preview@0.0.11(react@18.3.1): + resolution: {integrity: sha512-7O/CT4b16YlSGrj18htTPx3Vbhu2suCGv/cSe5c+fuSrIM/nMiBSZ3Js16Vj0XJbAmmmlVmYFZw9L20wXJ+LjQ==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/preview@0.0.9(react@18.3.1): resolution: {integrity: sha512-2fyAA/zzZYfYmxfyn3p2YOIU30klyA6Dq4ytyWq4nfzQWWglt5hNDE0cMhObvRtfjM9ghMSVtoELAb0MWiF/kw==} engines: {node: '>=18.0.0'} @@ -7158,6 +7394,43 @@ packages: react-promise-suspense: 0.3.4 dev: false + /@react-email/render@1.0.1(react-dom@18.3.1)(react@18.3.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 + dependencies: + html-to-text: 9.0.5 + js-beautify: 1.15.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-promise-suspense: 0.3.4 + dev: false + + /@react-email/render@1.0.4(react-dom@18.3.1)(react@18.3.1): + 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 + dependencies: + html-to-text: 9.0.5 + prettier: 3.4.2 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-promise-suspense: 0.3.4 + dev: false + + /@react-email/row@0.0.10(react@18.3.1): + resolution: {integrity: sha512-jPyEhG3gsLX+Eb9U+A30fh0gK6hXJwF4ghJ+ZtFQtlKAKqHX+eCpWlqB3Xschd/ARJLod8WAswg0FB+JD9d0/A==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/row@0.0.8(react@18.3.1): resolution: {integrity: sha512-JsB6pxs/ZyjYpEML3nbwJRGAerjcN/Pa/QG48XUwnT/MioDWrUuyQuefw+CwCrSUZ2P1IDrv2tUD3/E3xzcoKw==} engines: {node: '>=18.0.0'} @@ -7176,6 +7449,15 @@ packages: react: 18.3.1 dev: false + /@react-email/section@0.0.14(react@18.3.1): + resolution: {integrity: sha512-+fYWLb4tPU1A/+GE5J1+SEMA7/wR3V30lQ+OR9t2kAJqNrARDbMx0bLnYnR1QL5TiFRz0pCF05SQUobk6gHEDQ==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/tailwind@0.0.18(react@18.3.1): resolution: {integrity: sha512-ob8CXX/Pqq1U8YfL5OJTL48WJkixizyoXMMRYTiDLDN9LVLU7lSLtcK9kOD9CgFbO2yUPQr7/5+7gnQJ+cXa8Q==} engines: {node: '>=18.0.0'} @@ -7185,6 +7467,24 @@ packages: react: 18.3.1 dev: false + /@react-email/tailwind@0.1.0(react@18.3.1): + resolution: {integrity: sha512-qysVUEY+M3SKUvu35XDpzn7yokhqFOT3tPU6Mj/pgc62TL5tQFj6msEbBtwoKs2qO3WZvai0DIHdLhaOxBQSow==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + + /@react-email/text@0.0.10(react@18.3.1): + resolution: {integrity: sha512-wNAnxeEAiFs6N+SxS0y6wTJWfewEzUETuyS2aZmT00xk50VijwyFRuhm4sYSjusMyshevomFwz5jNISCxRsGWw==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^18.0 || ^19.0 || ^19.0.0-rc + dependencies: + react: 18.3.1 + dev: false + /@react-email/text@0.0.8(react@18.3.1): resolution: {integrity: sha512-uvN2TNWMrfC9wv/LLmMLbbEN1GrMWZb9dBK14eYxHHAEHCeyvGb5ePZZ2MPyzO7Y5yTC+vFEnCEr76V+hWMxCQ==} engines: {node: '>=18.0.0'} @@ -7203,7 +7503,7 @@ packages: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/calendar': 3.4.6(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7216,7 +7516,7 @@ packages: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/checkbox': 3.8.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7226,7 +7526,7 @@ packages: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7243,7 +7543,7 @@ packages: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/combobox': 3.11.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7253,7 +7553,7 @@ packages: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7269,7 +7569,7 @@ packages: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/datepicker': 3.7.4(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7280,14 +7580,14 @@ packages: dependencies: '@react-stately/selection': 3.15.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false /@react-stately/flags@3.0.3: resolution: {integrity: sha512-/ha7XFA0RZTQsbzSPwu3KkbNMgbvuM0GuMTYLTBWpgBrovBNTM+QqI/PfZTdHg8PwCYF4H5Y8gjdSpdulCvJFw==} dependencies: - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 dev: false /@react-stately/form@3.0.3(react@18.3.1): @@ -7296,7 +7596,7 @@ packages: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7309,7 +7609,7 @@ packages: '@react-stately/selection': 3.15.1(react@18.3.1) '@react-types/grid': 3.2.6(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7322,7 +7622,7 @@ packages: '@react-stately/selection': 3.15.1(react@18.3.1) '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7334,7 +7634,7 @@ packages: '@react-stately/overlays': 3.6.7(react@18.3.1) '@react-types/menu': 3.9.9(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7347,7 +7647,7 @@ packages: '@react-stately/form': 3.0.3(react@18.3.1) '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/numberfield': 3.8.3(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7358,7 +7658,7 @@ packages: dependencies: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/overlays': 3.8.7(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7371,7 +7671,7 @@ packages: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/radio': 3.8.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7382,7 +7682,7 @@ packages: dependencies: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/searchfield': 3.5.5(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7396,7 +7696,7 @@ packages: '@react-stately/overlays': 3.6.7(react@18.3.1) '@react-types/select': 3.9.4(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7408,7 +7708,7 @@ packages: '@react-stately/collections': 3.10.7(react@18.3.1) '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7420,7 +7720,7 @@ packages: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@react-types/slider': 3.7.3(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7437,7 +7737,7 @@ packages: '@react-types/grid': 3.2.6(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@react-types/table': 3.9.5(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7449,7 +7749,7 @@ packages: '@react-stately/list': 3.10.5(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) '@react-types/tabs': 3.3.7(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7460,7 +7760,7 @@ packages: dependencies: '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/checkbox': 3.8.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7471,7 +7771,7 @@ packages: dependencies: '@react-stately/overlays': 3.6.7(react@18.3.1) '@react-types/tooltip': 3.4.9(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7484,7 +7784,7 @@ packages: '@react-stately/selection': 3.15.1(react@18.3.1) '@react-stately/utils': 3.10.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7493,7 +7793,7 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 dependencies: - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7504,7 +7804,7 @@ packages: dependencies: '@react-aria/utils': 3.24.1(react@18.3.1) '@react-types/shared': 3.23.1(react@18.3.1) - '@swc/helpers': 0.5.12 + '@swc/helpers': 0.5.15 react: 18.3.1 dev: false @@ -7858,7 +8158,7 @@ packages: '@smithy/types': 3.3.0 '@smithy/util-config-provider': 3.0.0 '@smithy/util-middleware': 3.0.3 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/config-resolver@4.0.1: @@ -7869,7 +8169,7 @@ packages: '@smithy/types': 4.1.0 '@smithy/util-config-provider': 4.0.0 '@smithy/util-middleware': 4.0.1 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/core@2.2.8: @@ -7883,7 +8183,7 @@ packages: '@smithy/smithy-client': 3.1.9 '@smithy/types': 3.3.0 '@smithy/util-middleware': 3.0.3 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/core@3.1.5: @@ -7897,7 +8197,7 @@ packages: '@smithy/util-middleware': 4.0.1 '@smithy/util-stream': 4.1.2 '@smithy/util-utf8': 4.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/credential-provider-imds@3.1.4: @@ -7956,7 +8256,7 @@ packages: dependencies: '@smithy/eventstream-serde-universal': 4.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/eventstream-serde-config-resolver@3.0.3: @@ -7972,7 +8272,7 @@ packages: engines: {node: '>=18.0.0'} dependencies: '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/eventstream-serde-node@3.0.4: @@ -7990,7 +8290,7 @@ packages: dependencies: '@smithy/eventstream-serde-universal': 4.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/eventstream-serde-universal@3.0.4: @@ -8018,7 +8318,7 @@ packages: '@smithy/querystring-builder': 3.0.3 '@smithy/types': 3.3.0 '@smithy/util-base64': 3.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/fetch-http-handler@5.0.1: @@ -8029,7 +8329,7 @@ packages: '@smithy/querystring-builder': 4.0.1 '@smithy/types': 4.1.0 '@smithy/util-base64': 4.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/hash-blob-browser@3.1.2: @@ -8048,7 +8348,7 @@ packages: '@smithy/chunked-blob-reader': 5.0.0 '@smithy/chunked-blob-reader-native': 4.0.0 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/hash-node@3.0.3: @@ -8058,7 +8358,7 @@ packages: '@smithy/types': 3.3.0 '@smithy/util-buffer-from': 3.0.0 '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/hash-node@4.0.1: @@ -8068,7 +8368,7 @@ packages: '@smithy/types': 4.1.0 '@smithy/util-buffer-from': 4.0.0 '@smithy/util-utf8': 4.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/hash-stream-node@3.1.2: @@ -8086,14 +8386,14 @@ packages: dependencies: '@smithy/types': 4.1.0 '@smithy/util-utf8': 4.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/invalid-dependency@3.0.3: resolution: {integrity: sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==} dependencies: '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/invalid-dependency@4.0.1: @@ -8101,7 +8401,7 @@ packages: engines: {node: '>=18.0.0'} dependencies: '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/is-array-buffer@2.2.0: @@ -8139,7 +8439,7 @@ packages: dependencies: '@smithy/types': 4.1.0 '@smithy/util-utf8': 4.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/middleware-content-length@3.0.4: @@ -8148,7 +8448,7 @@ packages: dependencies: '@smithy/protocol-http': 4.0.4 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/middleware-content-length@4.0.1: @@ -8157,7 +8457,7 @@ packages: dependencies: '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/middleware-endpoint@3.0.5: @@ -8170,7 +8470,7 @@ packages: '@smithy/types': 3.3.0 '@smithy/url-parser': 3.0.3 '@smithy/util-middleware': 3.0.3 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/middleware-endpoint@4.0.6: @@ -8184,7 +8484,7 @@ packages: '@smithy/types': 4.1.0 '@smithy/url-parser': 4.0.1 '@smithy/util-middleware': 4.0.1 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/middleware-retry@3.0.11: @@ -8198,7 +8498,7 @@ packages: '@smithy/types': 3.3.0 '@smithy/util-middleware': 3.0.3 '@smithy/util-retry': 3.0.3 - tslib: 2.6.3 + tslib: 2.8.1 uuid: 9.0.1 dev: false @@ -8213,7 +8513,7 @@ packages: '@smithy/types': 4.1.0 '@smithy/util-middleware': 4.0.1 '@smithy/util-retry': 4.0.1 - tslib: 2.6.3 + tslib: 2.8.1 uuid: 9.0.1 dev: false @@ -8222,7 +8522,7 @@ packages: engines: {node: '>=16.0.0'} dependencies: '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/middleware-serde@4.0.2: @@ -8230,7 +8530,7 @@ packages: engines: {node: '>=18.0.0'} dependencies: '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/middleware-stack@3.0.3: @@ -8238,7 +8538,7 @@ packages: engines: {node: '>=16.0.0'} dependencies: '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/middleware-stack@4.0.1: @@ -8246,7 +8546,7 @@ packages: engines: {node: '>=18.0.0'} dependencies: '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/node-config-provider@3.1.4: @@ -8256,7 +8556,7 @@ packages: '@smithy/property-provider': 3.1.3 '@smithy/shared-ini-file-loader': 3.1.4 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/node-config-provider@4.0.1: @@ -8266,7 +8566,7 @@ packages: '@smithy/property-provider': 4.0.1 '@smithy/shared-ini-file-loader': 4.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/node-http-handler@3.1.3: @@ -8277,7 +8577,7 @@ packages: '@smithy/protocol-http': 4.0.4 '@smithy/querystring-builder': 3.0.3 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/node-http-handler@4.0.3: @@ -8288,7 +8588,7 @@ packages: '@smithy/protocol-http': 5.0.1 '@smithy/querystring-builder': 4.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/property-provider@3.1.3: @@ -8312,7 +8612,7 @@ packages: engines: {node: '>=16.0.0'} dependencies: '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/protocol-http@5.0.1: @@ -8320,7 +8620,7 @@ packages: engines: {node: '>=18.0.0'} dependencies: '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/querystring-builder@3.0.3: @@ -8423,7 +8723,7 @@ packages: '@smithy/protocol-http': 4.0.4 '@smithy/types': 3.3.0 '@smithy/util-stream': 3.1.1 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/smithy-client@4.1.6: @@ -8436,21 +8736,21 @@ packages: '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 '@smithy/util-stream': 4.1.2 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/types@3.3.0: resolution: {integrity: sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==} engines: {node: '>=16.0.0'} dependencies: - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/types@4.1.0: resolution: {integrity: sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw==} engines: {node: '>=18.0.0'} dependencies: - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/url-parser@3.0.3: @@ -8458,7 +8758,7 @@ packages: dependencies: '@smithy/querystring-parser': 3.0.3 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/url-parser@4.0.1: @@ -8467,7 +8767,7 @@ packages: dependencies: '@smithy/querystring-parser': 4.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-base64@3.0.0: @@ -8476,7 +8776,7 @@ packages: dependencies: '@smithy/util-buffer-from': 3.0.0 '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-base64@4.0.0: @@ -8485,34 +8785,34 @@ packages: dependencies: '@smithy/util-buffer-from': 4.0.0 '@smithy/util-utf8': 4.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-body-length-browser@3.0.0: resolution: {integrity: sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==} dependencies: - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-body-length-browser@4.0.0: resolution: {integrity: sha512-sNi3DL0/k64/LO3A256M+m3CDdG6V7WKWHdAiBBMUN8S3hK3aMPhwnPik2A/a2ONN+9doY9UxaLfgqsIRg69QA==} engines: {node: '>=18.0.0'} dependencies: - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-body-length-node@3.0.0: resolution: {integrity: sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==} engines: {node: '>=16.0.0'} dependencies: - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-body-length-node@4.0.0: resolution: {integrity: sha512-q0iDP3VsZzqJyje8xJWEJCNIu3lktUGVoSy1KB0UWym2CL1siV3artm+u1DFYTLejpsrdGyCSWBdGNjJzfDPjg==} engines: {node: '>=18.0.0'} dependencies: - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-buffer-from@2.2.0: @@ -8561,7 +8861,7 @@ packages: '@smithy/smithy-client': 3.1.9 '@smithy/types': 3.3.0 bowser: 2.11.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-defaults-mode-browser@4.0.7: @@ -8572,7 +8872,7 @@ packages: '@smithy/smithy-client': 4.1.6 '@smithy/types': 4.1.0 bowser: 2.11.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-defaults-mode-node@3.0.11: @@ -8585,7 +8885,7 @@ packages: '@smithy/property-provider': 3.1.3 '@smithy/smithy-client': 3.1.9 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-defaults-mode-node@4.0.7: @@ -8598,7 +8898,7 @@ packages: '@smithy/property-provider': 4.0.1 '@smithy/smithy-client': 4.1.6 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-endpoints@2.0.5: @@ -8607,7 +8907,7 @@ packages: dependencies: '@smithy/node-config-provider': 3.1.4 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-endpoints@3.0.1: @@ -8616,7 +8916,7 @@ packages: dependencies: '@smithy/node-config-provider': 4.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-hex-encoding@3.0.0: @@ -8638,7 +8938,7 @@ packages: engines: {node: '>=16.0.0'} dependencies: '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-middleware@4.0.1: @@ -8646,7 +8946,7 @@ packages: engines: {node: '>=18.0.0'} dependencies: '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-retry@3.0.3: @@ -8655,7 +8955,7 @@ packages: dependencies: '@smithy/service-error-classification': 3.0.3 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-retry@4.0.1: @@ -8664,7 +8964,7 @@ packages: dependencies: '@smithy/service-error-classification': 4.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-stream@3.1.1: @@ -8692,7 +8992,7 @@ packages: '@smithy/util-buffer-from': 4.0.0 '@smithy/util-hex-encoding': 4.0.0 '@smithy/util-utf8': 4.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-uri-escape@3.0.0: @@ -8722,7 +9022,7 @@ packages: engines: {node: '>=16.0.0'} dependencies: '@smithy/util-buffer-from': 3.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-utf8@4.0.0: @@ -8730,7 +9030,7 @@ packages: engines: {node: '>=18.0.0'} dependencies: '@smithy/util-buffer-from': 4.0.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-waiter@3.1.2: @@ -8739,7 +9039,7 @@ packages: dependencies: '@smithy/abort-controller': 3.1.1 '@smithy/types': 3.3.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@smithy/util-waiter@4.0.2: @@ -8748,12 +9048,11 @@ packages: dependencies: '@smithy/abort-controller': 4.0.1 '@smithy/types': 4.1.0 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@socket.io/component-emitter@3.1.2: resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==} - dev: false /@swc/core-darwin-arm64@1.3.101: resolution: {integrity: sha512-mNFK+uHNPRXSnfTOG34zJOeMl2waM4hF4a2NY7dkMXrPqw9CoJn4MwTXJcyMiSz1/BnNjjTCHF3Yhj0jPxmkzQ==} @@ -8872,14 +9171,18 @@ packages: /@swc/counter@0.1.3: resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} - dev: false /@swc/helpers@0.5.12: resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==} dependencies: - tslib: 2.6.3 + tslib: 2.8.1 dev: false + /@swc/helpers@0.5.15: + resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} + dependencies: + tslib: 2.8.1 + /@swc/helpers@0.5.2: resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==} dependencies: @@ -8890,7 +9193,7 @@ packages: resolution: {integrity: sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==} dependencies: '@swc/counter': 0.1.3 - tslib: 2.6.3 + tslib: 2.8.1 dev: false /@swc/types@0.1.9: @@ -9111,7 +9414,6 @@ packages: resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==} dependencies: '@types/node': 20.14.11 - dev: false /@types/d3-array@3.2.1: resolution: {integrity: sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg==} @@ -9721,7 +10023,6 @@ packages: dependencies: mime-types: 2.1.35 negotiator: 0.6.3 - dev: false /acorn-globals@7.0.1: resolution: {integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==} @@ -9884,7 +10185,7 @@ packages: resolution: {integrity: sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==} engines: {node: '>=10'} dependencies: - tslib: 2.6.3 + tslib: 2.8.1 dev: false /aria-hidden@1.2.4: @@ -10012,7 +10313,6 @@ packages: /base64id@2.0.0: resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==} engines: {node: ^4.5.0 || >= 5.9} - dev: false /basic-ftp@5.0.5: resolution: {integrity: sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==} @@ -10070,7 +10370,6 @@ packages: electron-to-chromium: 1.4.832 node-releases: 2.0.17 update-browserslist-db: 1.1.0(browserslist@4.23.2) - dev: false /buffer-crc32@0.2.13: resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} @@ -10104,7 +10403,6 @@ packages: engines: {node: '>=10.16.0'} dependencies: streamsearch: 1.1.0 - dev: false /bytes@3.1.0: resolution: {integrity: sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==} @@ -10151,7 +10449,6 @@ packages: /caniuse-lite@1.0.30001642: resolution: {integrity: sha512-3XQ0DoRgLijXJErLSl+bLnJ+Et4KqV1PY6JJBGAFlsNsz31zeAIncyeZfLCabHK/jtSh+671RM9YMldxjUPZtA==} - dev: false /chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} @@ -10244,6 +10541,13 @@ packages: readdirp: 4.1.2 dev: true + /chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} + dependencies: + readdirp: 4.1.2 + dev: true + /chownr@2.0.0: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} engines: {node: '>=10'} @@ -10303,7 +10607,6 @@ packages: /client-only@0.0.1: resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} - dev: false /cliui@7.0.4: resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} @@ -10448,7 +10751,6 @@ packages: /convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - dev: false /cookie@0.4.2: resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==} @@ -10460,6 +10762,11 @@ packages: engines: {node: '>= 0.6'} dev: true + /cookie@0.7.2: + resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} + engines: {node: '>= 0.6'} + dev: true + /cookie@1.0.2: resolution: {integrity: sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==} engines: {node: '>=18'} @@ -10483,7 +10790,6 @@ packages: dependencies: object-assign: 4.1.1 vary: 1.1.2 - dev: false /create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} @@ -10503,6 +10809,7 @@ packages: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 + dev: true /cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} @@ -10511,7 +10818,6 @@ packages: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 - dev: false /crypto-js@4.2.0: resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==} @@ -10664,7 +10970,6 @@ packages: /debounce@2.0.0: resolution: {integrity: sha512-xRetU6gL1VJbs85Mc4FoEGSjQxzpdxRyFhe3lmWFyy2EzydIcD4xzUvRJMD+NPDfMwKNhxa3PvsIOU32luIWeA==} engines: {node: '>=18'} - dev: false /debug@4.3.2: resolution: {integrity: sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==} @@ -11092,7 +11397,6 @@ packages: /electron-to-chromium@1.4.832: resolution: {integrity: sha512-cTen3SB0H2SGU7x467NRe1eVcQgcuS6jckKfWJHia2eo0cHIGOqHoAxevIYZD4eRHcWjkvFzo93bi3vJ9W+1lA==} - dev: false /embla-carousel-autoplay@8.1.7(embla-carousel@8.1.7): resolution: {integrity: sha512-UXt1XvCNwzC/Sqd7iU8nYd1CjuDLweIwJClfBL3gVTzHQBVwb68GBBfC/oPFsEeIWNUZe8NO5xDQSI9aTnYO7Q==} @@ -11153,7 +11457,6 @@ packages: /engine.io-parser@5.2.3: resolution: {integrity: sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==} engines: {node: '>=10.0.0'} - dev: false /engine.io@6.5.5: resolution: {integrity: sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==} @@ -11175,6 +11478,25 @@ packages: - utf-8-validate dev: false + /engine.io@6.6.4: + resolution: {integrity: sha512-ZCkIjSYNDyGn0R6ewHDtXgns/Zre/NT6Agvq1/WobF7JXgFff4SeDroKiCO3fNJreU9YG429Sc81o4w5ok/W5g==} + engines: {node: '>=10.2.0'} + dependencies: + '@types/cors': 2.8.17 + '@types/node': 20.14.11 + accepts: 1.3.8 + base64id: 2.0.0 + cookie: 0.7.2 + cors: 2.8.5 + debug: 4.3.5 + engine.io-parser: 5.2.3 + ws: 8.17.1 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + /enhanced-resolve@5.17.0: resolution: {integrity: sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==} engines: {node: '>=10.13.0'} @@ -11699,7 +12021,6 @@ packages: '@esbuild/win32-arm64': 0.19.11 '@esbuild/win32-ia32': 0.19.11 '@esbuild/win32-x64': 0.19.11 - dev: false /esbuild@0.19.12: resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} @@ -11800,7 +12121,6 @@ packages: /escalade@3.1.2: resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} engines: {node: '>=6'} - dev: false /escape-string-regexp@1.0.5: resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} @@ -12062,7 +12382,7 @@ packages: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 get-stream: 6.0.1 human-signals: 2.1.0 is-stream: 2.0.1 @@ -12169,7 +12489,7 @@ packages: resolution: {integrity: sha512-QlZ5yJC0VxHxQQsQhXvBaC7VRJ2uaxTf+Tfpu4Z/OcVQJVpZO+DGU0rkoVW5ce2SccxugvpBJoMvUs59iILYdw==} engines: {node: '>= 12'} dependencies: - tslib: 2.6.3 + tslib: 2.8.1 dev: false /file-uri-to-path@1.0.0: @@ -12215,7 +12535,7 @@ packages: resolution: {integrity: sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==} engines: {node: '>=14'} dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 signal-exit: 4.1.0 /form-data-encoder@2.1.4: @@ -12336,7 +12656,6 @@ packages: /gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} - dev: false /get-caller-file@2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} @@ -12402,7 +12721,6 @@ packages: minimatch: 9.0.5 minipass: 7.1.2 path-scurry: 1.11.1 - dev: false /glob@10.4.5: resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} @@ -12430,7 +12748,6 @@ packages: /globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - dev: false /globals@14.0.0: resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} @@ -12878,7 +13195,6 @@ packages: '@isaacs/cliui': 8.0.2 optionalDependencies: '@pkgjs/parseargs': 0.11.0 - dev: false /jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} @@ -12987,7 +13303,6 @@ packages: /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - dev: false /js-yaml@4.1.0: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} @@ -13044,7 +13359,6 @@ packages: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} hasBin: true - dev: false /json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} @@ -13074,7 +13388,6 @@ packages: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} hasBin: true - dev: false /jsonfile@6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} @@ -13192,7 +13505,6 @@ packages: hasBin: true dependencies: js-tokens: 4.0.0 - dev: false /lower-case-first@1.0.2: resolution: {integrity: sha512-UuxaYakO7XeONbKrZf5FEgkantPf5DUqDayzP5VXZrtRPdH86s4kN47I8B3TW10S4QKiE3ziHNf3kRN//okHjA==} @@ -13222,7 +13534,6 @@ packages: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: yallist: 3.1.1 - dev: false /lru-cache@6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} @@ -13304,14 +13615,12 @@ packages: /mime-db@1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} - dev: false /mime-types@2.1.35: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} dependencies: mime-db: 1.52.0 - dev: false /mime@3.0.0: resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} @@ -13484,7 +13793,6 @@ packages: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - dev: false /nanoid@5.0.7: resolution: {integrity: sha512-oLxFY2gd2IqnjcYyOXD8XGCftpGtZP2AbHbOkthDkvRywH5ayNtPVy9YlOPcHckXzbLTCHpkb7FB+yuxKV13pQ==} @@ -13498,7 +13806,6 @@ packages: /negotiator@0.6.3: resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} engines: {node: '>= 0.6'} - dev: false /neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} @@ -13616,6 +13923,51 @@ packages: - babel-plugin-macros dev: false + /next@15.1.2(@babel/core@7.24.5)(react-dom@18.3.1)(react@18.3.1): + 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 + dependencies: + '@next/env': 15.1.2 + '@swc/counter': 0.1.3 + '@swc/helpers': 0.5.15 + busboy: 1.6.0 + caniuse-lite: 1.0.30001642 + postcss: 8.4.31 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + styled-jsx: 5.1.6(@babel/core@7.24.5)(react@18.3.1) + 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 + sharp: 0.33.5 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + dev: true + /no-case@2.3.2: resolution: {integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==} dependencies: @@ -13695,7 +14047,6 @@ packages: /node-releases@2.0.17: resolution: {integrity: sha512-Ww6ZlOiEQfPfXM45v17oabk77Z7mg5bOt7AjDyzy7RjK9OrLrLC8dyZQoAPEOtFX9SaNf1Tdvr5gRJWdTJj7GA==} - dev: false /nopt@7.2.1: resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==} @@ -13741,7 +14092,6 @@ packages: /object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} - dev: false /object-hash@3.0.0: resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} @@ -14171,7 +14521,6 @@ packages: nanoid: 3.3.7 picocolors: 1.0.1 source-map-js: 1.2.0 - dev: false /postcss@8.4.38: resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} @@ -14308,6 +14657,12 @@ packages: engines: {node: '>=14'} hasBin: true + /prettier@3.4.2: + resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==} + engines: {node: '>=14'} + hasBin: true + dev: false + /pretty-format@29.7.0: resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -14368,7 +14723,7 @@ packages: engines: {node: '>= 14'} dependencies: agent-base: 7.1.1 - debug: 4.3.5 + debug: 4.4.0 http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.5 lru-cache: 7.18.3 @@ -14513,7 +14868,6 @@ packages: loose-envify: 1.4.0 react: 18.3.1 scheduler: 0.23.2 - dev: false /react-dropzone@14.2.3(react@18.3.1): resolution: {integrity: sha512-O3om8I+PkFKbxCukfIR3QAGftYXDZfOE2N1mr/7qebQJHs7U+/RSL/9xomJNpRg9kM5h9soQSdf0Gc7OHF5Fug==} @@ -14586,6 +14940,38 @@ packages: - webpack-cli dev: false + /react-email@3.0.6(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-taTvHORG2bCZCvUgVkRV0hTJJ5I40UKcmMuHzEhDOBNVh3/CCvIv4jRuD2EheSU1c4hFxxiUyanphb+qUQWeBw==} + engines: {node: '>=18.0.0'} + hasBin: true + 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)(react-dom@18.3.1)(react@18.3.1) + 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 + dev: true + /react-fast-marquee@1.6.5(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-swDnPqrT2XISAih0o74zQVE2wQJFMvkx+9VZXYYNSLb/CUcAzU9pNj637Ar2+hyRw6b4tP6xh4GQZip2ZCpQpg==} peerDependencies: @@ -14714,7 +15100,7 @@ packages: react: 18.3.1 react-remove-scroll-bar: 2.3.4(@types/react@18.3.3)(react@18.3.1) react-style-singleton: 2.2.1(@types/react@18.3.3)(react@18.3.1) - tslib: 2.6.3 + tslib: 2.8.1 use-callback-ref: 1.3.0(@types/react@18.3.3)(react@18.3.1) use-sidecar: 1.1.2(@types/react@18.3.3)(react@18.3.1) dev: false @@ -14870,7 +15256,6 @@ packages: engines: {node: '>=0.10.0'} dependencies: loose-envify: 1.4.0 - dev: false /read-cache@1.0.0: resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} @@ -15063,7 +15448,6 @@ packages: resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} dependencies: loose-envify: 1.4.0 - dev: false /schema-utils@3.3.0: resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} @@ -15232,7 +15616,6 @@ packages: - bufferutil - supports-color - utf-8-validate - dev: false /socket.io-client@4.7.3: resolution: {integrity: sha512-nU+ywttCyBitXIl9Xe0RSEfek4LneYkJxCeNnKCuhwoH4jGXO1ipIUw/VA/+Vvv2G1MTym11fzFC0SxkrcfXDw==} @@ -15256,7 +15639,6 @@ packages: debug: 4.3.5 transitivePeerDependencies: - supports-color - dev: false /socket.io@4.7.3: resolution: {integrity: sha512-SE+UIQXBQE+GPG2oszWMlsEmWtHVqw/h1VrYJGK5/MC7CH5p58N448HwIrtREcvR4jfdOJAY4ieQfxMr55qbbw==} @@ -15275,6 +15657,23 @@ packages: - utf-8-validate dev: false + /socket.io@4.8.0: + resolution: {integrity: sha512-8U6BEgGjQOfGz3HHTYaC/L1GaxDCJ/KM0XTkJly0EhZ5U/du9uNEZy4ZgYzEzIqlx2CMm25CrCqr1ck899eLNA==} + engines: {node: '>=10.2.0'} + dependencies: + accepts: 1.3.8 + base64id: 2.0.0 + cors: 2.8.5 + debug: 4.3.5 + engine.io: 6.6.4 + socket.io-adapter: 2.5.5 + socket.io-parser: 4.2.4 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + /socks-proxy-agent@8.0.4: resolution: {integrity: sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==} engines: {node: '>= 14'} @@ -15322,7 +15721,6 @@ packages: /source-map-js@1.2.0: resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} engines: {node: '>=0.10.0'} - dev: false /source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} @@ -15400,7 +15798,6 @@ packages: /streamsearch@1.1.0: resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} engines: {node: '>=10.0.0'} - dev: false /string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} @@ -15491,6 +15888,24 @@ packages: react: 18.3.1 dev: false + /styled-jsx@5.1.6(@babel/core@7.24.5)(react@18.3.1): + 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 + dependencies: + '@babel/core': 7.24.5 + client-only: 0.0.1 + react: 18.3.1 + dev: true + /stylis@4.3.2: resolution: {integrity: sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg==} dev: false @@ -15773,7 +16188,6 @@ packages: /to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} - dev: false /to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} @@ -16098,7 +16512,6 @@ packages: browserslist: 4.23.2 escalade: 3.1.2 picocolors: 1.0.1 - dev: false /update-check@1.5.4: resolution: {integrity: sha512-5YHsflzHP4t1G+8WGPlvKbJEbAJGCgw+Em+dGR1KmBUbr1J36SJBqlHLjR7oob7sco5hWHGQVcr9B2poIVDDTQ==} @@ -16266,7 +16679,6 @@ packages: /vary@1.1.2: resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} engines: {node: '>= 0.8'} - dev: false /vaul@0.9.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-fAhd7i4RNMinx+WEm6pF3nOl78DFkAazcN04ElLPFF9BMCNGbY/kou8UMhIcicm0rJCNePJP0Yyza60gGOD0Jw==} @@ -16552,7 +16964,6 @@ packages: optional: true utf-8-validate: optional: true - dev: false /ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.4): resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} @@ -16609,7 +17020,6 @@ packages: /yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - dev: false /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} From 5f8b3eae54d5792aba0970db29fef033d651bee7 Mon Sep 17 00:00:00 2001 From: xxmatthewandersonxx <92887765+mjanderson1227@users.noreply.github.com> Date: Thu, 14 Aug 2025 20:31:34 -0500 Subject: [PATCH 2/3] Fixes email error message not showing the users email --- apps/web/src/actions/registration.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/apps/web/src/actions/registration.ts b/apps/web/src/actions/registration.ts index 418e56dc..26cc032d 100644 --- a/apps/web/src/actions/registration.ts +++ b/apps/web/src/actions/registration.ts @@ -95,9 +95,7 @@ export const registerHacker = authenticatedAction }); if (!emailSendSuccess) { - console.log( - "Unable to send email to " + userCommonData.email, - ); + console.log("Unable to send email to " + email); } }); } catch (e) { From a0a434e91b8b9cd2e2747637146f91aab01b54af Mon Sep 17 00:00:00 2001 From: xxmatthewandersonxx <92887765+mjanderson1227@users.noreply.github.com> Date: Thu, 14 Aug 2025 20:32:14 -0500 Subject: [PATCH 3/3] Added notification when email related environment variables are not present --- packages/email/sender/index.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/email/sender/index.ts b/packages/email/sender/index.ts index b07472b0..571e5653 100644 --- a/packages/email/sender/index.ts +++ b/packages/email/sender/index.ts @@ -1,5 +1,11 @@ import Plunk from "@plunk/node"; +if (!process.env.PLUNK_API_URL || !process.env.PLUNK_API_KEY) { + console.warn( + "Plunk API information is not defined... Did you add the relevant environment variables to the project?", + ); +} + export const plunk = new Plunk(process.env.PLUNK_API_KEY as string, { baseUrl: process.env.PLUNK_API_URL as string, });