From 5cba5d310d14168f99312acb149603e01c50e953 Mon Sep 17 00:00:00 2001 From: Igor Monadical Date: Fri, 12 Sep 2025 12:41:44 -0400 Subject: [PATCH] chore: sentry and nextjs major bumps (#633) * chore: remove nextjs-config * build fix * sentry update * nextjs update * feature flags doc * update readme * explicit nextjs env vars + remove feature-unrelated things and obsolete vars from config * full config removal * remove force-dynamic from pages * compile fix * restore claude-deleted tests * no sentry backward compat * better .env.example * AUTHENTIK_REFRESH_TOKEN_URL not so required * accommodate auth system to requiredLogin feature --------- Co-authored-by: Igor Loskutov --- .../[transcriptId]/correct/page.tsx | 14 +- .../(app)/transcripts/[transcriptId]/page.tsx | 11 +- .../[transcriptId]/record/page.tsx | 19 +- .../[transcriptId]/upload/page.tsx | 17 +- www/app/[roomName]/page.tsx | 8 +- www/app/api/auth/[...nextauth]/route.ts | 2 +- www/app/layout.tsx | 8 +- www/app/lib/AuthProvider.tsx | 115 +- www/app/lib/apiClient.tsx | 5 +- www/app/lib/array.ts | 12 + www/app/lib/authBackend.ts | 211 +- www/app/lib/errorUtils.ts | 42 +- www/app/lib/features.ts | 8 +- www/app/webinars/[title]/page.tsx | 9 +- ...nt.config.ts => instrumentation-client.ts} | 2 + www/instrumentation.ts | 9 + www/next.config.js | 1 - www/package.json | 6 +- www/pnpm-lock.yaml | 2379 ++++++++++++++--- 19 files changed, 2285 insertions(+), 593 deletions(-) create mode 100644 www/app/lib/array.ts rename www/{sentry.client.config.ts => instrumentation-client.ts} (91%) create mode 100644 www/instrumentation.ts diff --git a/www/app/(app)/transcripts/[transcriptId]/correct/page.tsx b/www/app/(app)/transcripts/[transcriptId]/correct/page.tsx index 1c7705f4..c4d5a9fc 100644 --- a/www/app/(app)/transcripts/[transcriptId]/correct/page.tsx +++ b/www/app/(app)/transcripts/[transcriptId]/correct/page.tsx @@ -1,5 +1,5 @@ "use client"; -import { useState } from "react"; +import { useState, use } from "react"; import TopicHeader from "./topicHeader"; import TopicWords from "./topicWords"; import TopicPlayer from "./topicPlayer"; @@ -18,14 +18,16 @@ import { useRouter } from "next/navigation"; import { Box, Grid } from "@chakra-ui/react"; export type TranscriptCorrect = { - params: { + params: Promise<{ transcriptId: string; - }; + }>; }; -export default function TranscriptCorrect({ - params: { transcriptId }, -}: TranscriptCorrect) { +export default function TranscriptCorrect(props: TranscriptCorrect) { + const params = use(props.params); + + const { transcriptId } = params; + const updateTranscriptMutation = useTranscriptUpdate(); const transcript = useTranscriptGet(transcriptId); const stateCurrentTopic = useState(); diff --git a/www/app/(app)/transcripts/[transcriptId]/page.tsx b/www/app/(app)/transcripts/[transcriptId]/page.tsx index 73bf2ae7..f06e8935 100644 --- a/www/app/(app)/transcripts/[transcriptId]/page.tsx +++ b/www/app/(app)/transcripts/[transcriptId]/page.tsx @@ -5,7 +5,7 @@ import useWaveform from "../useWaveform"; import useMp3 from "../useMp3"; import { TopicList } from "./_components/TopicList"; import { Topic } from "../webSocketTypes"; -import React, { useEffect, useState } from "react"; +import React, { useEffect, useState, use } from "react"; import FinalSummary from "./finalSummary"; import TranscriptTitle from "../transcriptTitle"; import Player from "../player"; @@ -15,13 +15,14 @@ import { useTranscriptGet } from "../../../lib/apiHooks"; import { TranscriptStatus } from "../../../lib/transcript"; type TranscriptDetails = { - params: { + params: Promise<{ transcriptId: string; - }; + }>; }; export default function TranscriptDetails(details: TranscriptDetails) { - const transcriptId = details.params.transcriptId; + const params = use(details.params); + const transcriptId = params.transcriptId; const router = useRouter(); const statusToRedirect = [ "idle", @@ -43,7 +44,7 @@ export default function TranscriptDetails(details: TranscriptDetails) { useEffect(() => { if (waiting) { - const newUrl = "/transcripts/" + details.params.transcriptId + "/record"; + const newUrl = "/transcripts/" + params.transcriptId + "/record"; // Shallow redirection does not work on NextJS 13 // https://github.com/vercel/next.js/discussions/48110 // https://github.com/vercel/next.js/discussions/49540 diff --git a/www/app/(app)/transcripts/[transcriptId]/record/page.tsx b/www/app/(app)/transcripts/[transcriptId]/record/page.tsx index 0dc26c6d..d93b34b6 100644 --- a/www/app/(app)/transcripts/[transcriptId]/record/page.tsx +++ b/www/app/(app)/transcripts/[transcriptId]/record/page.tsx @@ -1,5 +1,5 @@ "use client"; -import { useEffect, useState } from "react"; +import { useEffect, useState, use } from "react"; import Recorder from "../../recorder"; import { TopicList } from "../_components/TopicList"; import { useWebSockets } from "../../useWebSockets"; @@ -14,19 +14,20 @@ import { useTranscriptGet } from "../../../../lib/apiHooks"; import { TranscriptStatus } from "../../../../lib/transcript"; type TranscriptDetails = { - params: { + params: Promise<{ transcriptId: string; - }; + }>; }; const TranscriptRecord = (details: TranscriptDetails) => { - const transcript = useTranscriptGet(details.params.transcriptId); + const params = use(details.params); + const transcript = useTranscriptGet(params.transcriptId); const [transcriptStarted, setTranscriptStarted] = useState(false); const useActiveTopic = useState(null); - const webSockets = useWebSockets(details.params.transcriptId); + const webSockets = useWebSockets(params.transcriptId); - const mp3 = useMp3(details.params.transcriptId, true); + const mp3 = useMp3(params.transcriptId, true); const router = useRouter(); @@ -47,7 +48,7 @@ const TranscriptRecord = (details: TranscriptDetails) => { if (newStatus && (newStatus == "ended" || newStatus == "error")) { console.log(newStatus, "redirecting"); - const newUrl = "/transcripts/" + details.params.transcriptId; + const newUrl = "/transcripts/" + params.transcriptId; router.replace(newUrl); } }, [webSockets.status?.value, transcript.data?.status]); @@ -75,7 +76,7 @@ const TranscriptRecord = (details: TranscriptDetails) => { ) : ( // todo: only start recording animation when you get "recorded" status - + )} { topics={webSockets.topics} useActiveTopic={useActiveTopic} autoscroll={true} - transcriptId={details.params.transcriptId} + transcriptId={params.transcriptId} status={status} currentTranscriptText={webSockets.accumulatedText} /> diff --git a/www/app/(app)/transcripts/[transcriptId]/upload/page.tsx b/www/app/(app)/transcripts/[transcriptId]/upload/page.tsx index 844d05e9..b4bc25cc 100644 --- a/www/app/(app)/transcripts/[transcriptId]/upload/page.tsx +++ b/www/app/(app)/transcripts/[transcriptId]/upload/page.tsx @@ -1,5 +1,5 @@ "use client"; -import { useEffect, useState } from "react"; +import { useEffect, useState, use } from "react"; import { useWebSockets } from "../../useWebSockets"; import { lockWakeState, releaseWakeState } from "../../../../lib/wakeLock"; import { useRouter } from "next/navigation"; @@ -9,18 +9,19 @@ import FileUploadButton from "../../fileUploadButton"; import { useTranscriptGet } from "../../../../lib/apiHooks"; type TranscriptUpload = { - params: { + params: Promise<{ transcriptId: string; - }; + }>; }; const TranscriptUpload = (details: TranscriptUpload) => { - const transcript = useTranscriptGet(details.params.transcriptId); + const params = use(details.params); + const transcript = useTranscriptGet(params.transcriptId); const [transcriptStarted, setTranscriptStarted] = useState(false); - const webSockets = useWebSockets(details.params.transcriptId); + const webSockets = useWebSockets(params.transcriptId); - const mp3 = useMp3(details.params.transcriptId, true); + const mp3 = useMp3(params.transcriptId, true); const router = useRouter(); @@ -50,7 +51,7 @@ const TranscriptUpload = (details: TranscriptUpload) => { if (newStatus && (newStatus == "ended" || newStatus == "error")) { console.log(newStatus, "redirecting"); - const newUrl = "/transcripts/" + details.params.transcriptId; + const newUrl = "/transcripts/" + params.transcriptId; router.replace(newUrl); } }, [webSockets.status?.value, transcript.data?.status]); @@ -84,7 +85,7 @@ const TranscriptUpload = (details: TranscriptUpload) => { Please select the file, supported formats: .mp3, m4a, .wav, .mp4, .mov or .webm - + )} {status && status == "uploaded" && ( diff --git a/www/app/[roomName]/page.tsx b/www/app/[roomName]/page.tsx index 0130588b..867aeb3e 100644 --- a/www/app/[roomName]/page.tsx +++ b/www/app/[roomName]/page.tsx @@ -7,6 +7,7 @@ import { useState, useContext, RefObject, + use, } from "react"; import { Box, @@ -30,9 +31,9 @@ import { FaBars } from "react-icons/fa6"; import { useAuth } from "../lib/AuthProvider"; export type RoomDetails = { - params: { + params: Promise<{ roomName: string; - }; + }>; }; // stages: we focus on the consent, then whereby steals focus, then we focus on the consent again, then return focus to whoever stole it initially @@ -255,9 +256,10 @@ const useWhereby = () => { }; export default function Room(details: RoomDetails) { + const params = use(details.params); const wherebyLoaded = useWhereby(); const wherebyRef = useRef(null); - const roomName = details.params.roomName; + const roomName = params.roomName; const meeting = useRoomMeeting(roomName); const router = useRouter(); const status = useAuth().status; diff --git a/www/app/api/auth/[...nextauth]/route.ts b/www/app/api/auth/[...nextauth]/route.ts index 7b73c22a..250e9e34 100644 --- a/www/app/api/auth/[...nextauth]/route.ts +++ b/www/app/api/auth/[...nextauth]/route.ts @@ -1,6 +1,6 @@ import NextAuth from "next-auth"; import { authOptions } from "../../../lib/authBackend"; -const handler = NextAuth(authOptions); +const handler = NextAuth(authOptions()); export { handler as GET, handler as POST }; diff --git a/www/app/layout.tsx b/www/app/layout.tsx index 93fb15e9..175b7cbc 100644 --- a/www/app/layout.tsx +++ b/www/app/layout.tsx @@ -6,6 +6,7 @@ import ErrorMessage from "./(errors)/errorMessage"; import { RecordingConsentProvider } from "./recordingConsentContext"; import { ErrorBoundary } from "@sentry/nextjs"; import { Providers } from "./providers"; +import { assertExistsAndNonEmptyString } from "./lib/utils"; const poppins = Poppins({ subsets: ["latin"], @@ -20,8 +21,13 @@ export const viewport: Viewport = { maximumScale: 1, }; +const NEXT_PUBLIC_SITE_URL = assertExistsAndNonEmptyString( + process.env.NEXT_PUBLIC_SITE_URL, + "NEXT_PUBLIC_SITE_URL required", +); + export const metadata: Metadata = { - metadataBase: new URL(process.env.NEXT_PUBLIC_SITE_URL!), + metadataBase: new URL(NEXT_PUBLIC_SITE_URL), title: { template: "%s – Reflector", default: "Reflector - AI-Powered Meeting Transcriptions by Monadical", diff --git a/www/app/lib/AuthProvider.tsx b/www/app/lib/AuthProvider.tsx index 1a8ebea6..e1eabf99 100644 --- a/www/app/lib/AuthProvider.tsx +++ b/www/app/lib/AuthProvider.tsx @@ -9,6 +9,7 @@ import { Session } from "next-auth"; import { SessionAutoRefresh } from "./SessionAutoRefresh"; import { REFRESH_ACCESS_TOKEN_ERROR } from "./auth"; import { assertExists } from "./utils"; +import { featureEnabled } from "./features"; type AuthContextType = ( | { status: "loading" } @@ -27,65 +28,83 @@ type AuthContextType = ( }; const AuthContext = createContext(undefined); +const isAuthEnabled = featureEnabled("requireLogin"); + +const noopAuthContext: AuthContextType = { + status: "unauthenticated", + update: async () => { + return null; + }, + signIn: async () => { + throw new Error("signIn not supposed to be called"); + }, + signOut: async () => { + throw new Error("signOut not supposed to be called"); + }, +}; export function AuthProvider({ children }: { children: React.ReactNode }) { const { data: session, status, update } = useNextAuthSession(); - const customSession = session ? assertCustomSession(session) : null; - const contextValue: AuthContextType = { - ...(() => { - switch (status) { - case "loading": { - const sessionIsHere = !!customSession; - switch (sessionIsHere) { - case false: { - return { status }; + const contextValue: AuthContextType = isAuthEnabled + ? { + ...(() => { + switch (status) { + case "loading": { + const sessionIsHere = !!session; + // actually exists sometimes; nextAuth types are something else + switch (sessionIsHere as boolean) { + case false: { + return { status }; + } + case true: { + return { + status: "refreshing" as const, + user: assertCustomSession( + assertExists(session as unknown as Session), + ).user, + }; + } + default: { + throw new Error("unreachable"); + } + } } - case true: { - return { - status: "refreshing" as const, - user: assertExists(customSession).user, - }; + case "authenticated": { + const customSession = assertCustomSession(session); + if (customSession?.error === REFRESH_ACCESS_TOKEN_ERROR) { + // token had expired but next auth still returns "authenticated" so show user unauthenticated state + return { + status: "unauthenticated" as const, + }; + } else if (customSession?.accessToken) { + return { + status, + accessToken: customSession.accessToken, + accessTokenExpires: customSession.accessTokenExpires, + user: customSession.user, + }; + } else { + console.warn( + "illegal state: authenticated but have no session/or access token. ignoring", + ); + return { status: "unauthenticated" as const }; + } + } + case "unauthenticated": { + return { status: "unauthenticated" as const }; } default: { - const _: never = sessionIsHere; + const _: never = status; throw new Error("unreachable"); } } - } - case "authenticated": { - if (customSession?.error === REFRESH_ACCESS_TOKEN_ERROR) { - // token had expired but next auth still returns "authenticated" so show user unauthenticated state - return { - status: "unauthenticated" as const, - }; - } else if (customSession?.accessToken) { - return { - status, - accessToken: customSession.accessToken, - accessTokenExpires: customSession.accessTokenExpires, - user: customSession.user, - }; - } else { - console.warn( - "illegal state: authenticated but have no session/or access token. ignoring", - ); - return { status: "unauthenticated" as const }; - } - } - case "unauthenticated": { - return { status: "unauthenticated" as const }; - } - default: { - const _: never = status; - throw new Error("unreachable"); - } + })(), + update, + signIn, + signOut, } - })(), - update, - signIn, - signOut, - }; + : noopAuthContext; // not useEffect, we need it ASAP // apparently, still no guarantee this code runs before mutations are fired diff --git a/www/app/lib/apiClient.tsx b/www/app/lib/apiClient.tsx index 95051913..86f8f161 100644 --- a/www/app/lib/apiClient.tsx +++ b/www/app/lib/apiClient.tsx @@ -7,7 +7,10 @@ import { assertExistsAndNonEmptyString } from "./utils"; import { isBuildPhase } from "./next"; export const API_URL = !isBuildPhase - ? assertExistsAndNonEmptyString(process.env.NEXT_PUBLIC_API_URL) + ? assertExistsAndNonEmptyString( + process.env.NEXT_PUBLIC_API_URL, + "NEXT_PUBLIC_API_URL required", + ) : "http://localhost"; // TODO decide strict validation or not diff --git a/www/app/lib/array.ts b/www/app/lib/array.ts new file mode 100644 index 00000000..f47aaa42 --- /dev/null +++ b/www/app/lib/array.ts @@ -0,0 +1,12 @@ +export type NonEmptyArray = [T, ...T[]]; +export const isNonEmptyArray = (arr: T[]): arr is NonEmptyArray => + arr.length > 0; +export const assertNonEmptyArray = ( + arr: T[], + err?: string, +): NonEmptyArray => { + if (isNonEmptyArray(arr)) { + return arr; + } + throw new Error(err ?? "Expected non-empty array"); +}; diff --git a/www/app/lib/authBackend.ts b/www/app/lib/authBackend.ts index 06bddff2..5e9767c9 100644 --- a/www/app/lib/authBackend.ts +++ b/www/app/lib/authBackend.ts @@ -19,102 +19,126 @@ import { } from "./redisTokenCache"; import { tokenCacheRedis, redlock } from "./redisClient"; import { isBuildPhase } from "./next"; +import { sequenceThrows } from "./errorUtils"; +import { featureEnabled } from "./features"; const TOKEN_CACHE_TTL = REFRESH_ACCESS_TOKEN_BEFORE; -const CLIENT_ID = !isBuildPhase - ? assertExistsAndNonEmptyString(process.env.AUTHENTIK_CLIENT_ID) - : "noop"; -const CLIENT_SECRET = !isBuildPhase - ? assertExistsAndNonEmptyString(process.env.AUTHENTIK_CLIENT_SECRET) - : "noop"; +const getAuthentikClientId = () => + assertExistsAndNonEmptyString( + process.env.AUTHENTIK_CLIENT_ID, + "AUTHENTIK_CLIENT_ID required", + ); +const getAuthentikClientSecret = () => + assertExistsAndNonEmptyString( + process.env.AUTHENTIK_CLIENT_SECRET, + "AUTHENTIK_CLIENT_SECRET required", + ); +const getAuthentikRefreshTokenUrl = () => + assertExistsAndNonEmptyString( + process.env.AUTHENTIK_REFRESH_TOKEN_URL, + "AUTHENTIK_REFRESH_TOKEN_URL required", + ); -export const authOptions: AuthOptions = { - providers: [ - AuthentikProvider({ - clientId: CLIENT_ID, - clientSecret: CLIENT_SECRET, - issuer: process.env.AUTHENTIK_ISSUER, - authorization: { - params: { - scope: "openid email profile offline_access", +export const authOptions = (): AuthOptions => + featureEnabled("requireLogin") + ? { + providers: [ + AuthentikProvider({ + ...(() => { + const [clientId, clientSecret] = sequenceThrows( + getAuthentikClientId, + getAuthentikClientSecret, + ); + return { + clientId, + clientSecret, + }; + })(), + issuer: process.env.AUTHENTIK_ISSUER, + authorization: { + params: { + scope: "openid email profile offline_access", + }, + }, + }), + ], + session: { + strategy: "jwt", }, - }, - }), - ], - session: { - strategy: "jwt", - }, - callbacks: { - async jwt({ token, account, user }) { - if (account && !account.access_token) { - await deleteTokenCache(tokenCacheRedis, `token:${token.sub}`); - } + callbacks: { + async jwt({ token, account, user }) { + if (account && !account.access_token) { + await deleteTokenCache(tokenCacheRedis, `token:${token.sub}`); + } - if (account && user) { - // called only on first login - // XXX account.expires_in used in example is not defined for authentik backend, but expires_at is - if (account.access_token) { - const expiresAtS = assertExists(account.expires_at); - const expiresAtMs = expiresAtS * 1000; - const jwtToken: JWTWithAccessToken = { - ...token, - accessToken: account.access_token, - accessTokenExpires: expiresAtMs, - refreshToken: account.refresh_token, - }; - if (jwtToken.error) { - await deleteTokenCache(tokenCacheRedis, `token:${token.sub}`); - } else { - assertNotExists( - jwtToken.error, - `panic! trying to cache token with error in jwt: ${jwtToken.error}`, + if (account && user) { + // called only on first login + // XXX account.expires_in used in example is not defined for authentik backend, but expires_at is + if (account.access_token) { + const expiresAtS = assertExists(account.expires_at); + const expiresAtMs = expiresAtS * 1000; + const jwtToken: JWTWithAccessToken = { + ...token, + accessToken: account.access_token, + accessTokenExpires: expiresAtMs, + refreshToken: account.refresh_token, + }; + if (jwtToken.error) { + await deleteTokenCache(tokenCacheRedis, `token:${token.sub}`); + } else { + assertNotExists( + jwtToken.error, + `panic! trying to cache token with error in jwt: ${jwtToken.error}`, + ); + await setTokenCache(tokenCacheRedis, `token:${token.sub}`, { + token: jwtToken, + timestamp: Date.now(), + }); + return jwtToken; + } + } + } + + const currentToken = await getTokenCache( + tokenCacheRedis, + `token:${token.sub}`, ); - await setTokenCache(tokenCacheRedis, `token:${token.sub}`, { - token: jwtToken, - timestamp: Date.now(), - }); - return jwtToken; - } - } - } + console.debug( + "currentToken from cache", + JSON.stringify(currentToken, null, 2), + "will be returned?", + currentToken && + !shouldRefreshToken(currentToken.token.accessTokenExpires), + ); + if ( + currentToken && + !shouldRefreshToken(currentToken.token.accessTokenExpires) + ) { + return currentToken.token; + } - const currentToken = await getTokenCache( - tokenCacheRedis, - `token:${token.sub}`, - ); - console.debug( - "currentToken from cache", - JSON.stringify(currentToken, null, 2), - "will be returned?", - currentToken && - !shouldRefreshToken(currentToken.token.accessTokenExpires), - ); - if ( - currentToken && - !shouldRefreshToken(currentToken.token.accessTokenExpires) - ) { - return currentToken.token; - } - - // access token has expired, try to update it - return await lockedRefreshAccessToken(token); - }, - async session({ session, token }) { - const extendedToken = token as JWTWithAccessToken; - return { - ...session, - accessToken: extendedToken.accessToken, - accessTokenExpires: extendedToken.accessTokenExpires, - error: extendedToken.error, - user: { - id: assertExists(extendedToken.sub), - name: extendedToken.name, - email: extendedToken.email, + // access token has expired, try to update it + return await lockedRefreshAccessToken(token); + }, + async session({ session, token }) { + const extendedToken = token as JWTWithAccessToken; + return { + ...session, + accessToken: extendedToken.accessToken, + accessTokenExpires: extendedToken.accessTokenExpires, + error: extendedToken.error, + user: { + id: assertExists(extendedToken.sub), + name: extendedToken.name, + email: extendedToken.email, + }, + } satisfies CustomSession; + }, }, - } satisfies CustomSession; - }, - }, -}; + } + : { + providers: [], + }; async function lockedRefreshAccessToken( token: JWT, @@ -174,16 +198,19 @@ async function lockedRefreshAccessToken( } async function refreshAccessToken(token: JWT): Promise { + const [url, clientId, clientSecret] = sequenceThrows( + getAuthentikRefreshTokenUrl, + getAuthentikClientId, + getAuthentikClientSecret, + ); try { - const url = `${process.env.AUTHENTIK_REFRESH_TOKEN_URL}`; - const options = { headers: { "Content-Type": "application/x-www-form-urlencoded", }, body: new URLSearchParams({ - client_id: process.env.AUTHENTIK_CLIENT_ID as string, - client_secret: process.env.AUTHENTIK_CLIENT_SECRET as string, + client_id: clientId, + client_secret: clientSecret, grant_type: "refresh_token", refresh_token: token.refreshToken as string, }).toString(), diff --git a/www/app/lib/errorUtils.ts b/www/app/lib/errorUtils.ts index e9e5300d..1512230c 100644 --- a/www/app/lib/errorUtils.ts +++ b/www/app/lib/errorUtils.ts @@ -1,4 +1,6 @@ -function shouldShowError(error: Error | null | undefined) { +import { isNonEmptyArray, NonEmptyArray } from "./array"; + +export function shouldShowError(error: Error | null | undefined) { if ( error?.name == "ResponseError" && (error["response"].status == 404 || error["response"].status == 403) @@ -8,4 +10,40 @@ function shouldShowError(error: Error | null | undefined) { return true; } -export { shouldShowError }; +const defaultMergeErrors = (ex: NonEmptyArray): unknown => { + try { + return new Error( + ex + .map((e) => + e ? (e.toString ? e.toString() : JSON.stringify(e)) : `${e}`, + ) + .join("\n"), + ); + } catch (e) { + console.error("Error merging errors:", e); + return ex[0]; + } +}; + +type ReturnTypes any)[]> = { + [K in keyof T]: T[K] extends () => infer R ? R : never; +}; + +// sequence semantic for "throws" +// calls functions passed and collects its thrown values +export function sequenceThrows any)[]>( + ...fs: Fns +): ReturnTypes { + const results: unknown[] = []; + const errors: unknown[] = []; + + for (const f of fs) { + try { + results.push(f()); + } catch (e) { + errors.push(e); + } + } + if (errors.length) throw defaultMergeErrors(errors as NonEmptyArray); + return results as ReturnTypes; +} diff --git a/www/app/lib/features.ts b/www/app/lib/features.ts index 86452ae7..7684c8e0 100644 --- a/www/app/lib/features.ts +++ b/www/app/lib/features.ts @@ -11,11 +11,11 @@ export type FeatureName = (typeof FEATURES)[number]; export type Features = Readonly>; export const DEFAULT_FEATURES: Features = { - requireLogin: false, + requireLogin: true, privacy: true, - browse: false, - sendToZulip: false, - rooms: false, + browse: true, + sendToZulip: true, + rooms: true, } as const; function parseBooleanEnv( diff --git a/www/app/webinars/[title]/page.tsx b/www/app/webinars/[title]/page.tsx index ab873a6b..51583a2a 100644 --- a/www/app/webinars/[title]/page.tsx +++ b/www/app/webinars/[title]/page.tsx @@ -1,5 +1,5 @@ "use client"; -import { useEffect, useState } from "react"; +import { useEffect, useState, use } from "react"; import Link from "next/link"; import Image from "next/image"; import { notFound } from "next/navigation"; @@ -30,9 +30,9 @@ const FORM_FIELDS = { }; export type WebinarDetails = { - params: { + params: Promise<{ title: string; - }; + }>; }; export type Webinar = { @@ -63,7 +63,8 @@ const WEBINARS: Webinar[] = [ ]; export default function WebinarPage(details: WebinarDetails) { - const title = details.params.title; + const params = use(details.params); + const title = params.title; const webinar = WEBINARS.find((webinar) => webinar.title === title); if (!webinar) { return notFound(); diff --git a/www/sentry.client.config.ts b/www/instrumentation-client.ts similarity index 91% rename from www/sentry.client.config.ts rename to www/instrumentation-client.ts index aff65bbd..5ea5e2e9 100644 --- a/www/sentry.client.config.ts +++ b/www/instrumentation-client.ts @@ -23,3 +23,5 @@ if (SENTRY_DSN) { replaysSessionSampleRate: 0.0, }); } + +export const onRouterTransitionStart = Sentry.captureRouterTransitionStart; diff --git a/www/instrumentation.ts b/www/instrumentation.ts new file mode 100644 index 00000000..f8a929ba --- /dev/null +++ b/www/instrumentation.ts @@ -0,0 +1,9 @@ +export async function register() { + if (process.env.NEXT_RUNTIME === "nodejs") { + await import("./sentry.server.config"); + } + + if (process.env.NEXT_RUNTIME === "edge") { + await import("./sentry.edge.config"); + } +} diff --git a/www/next.config.js b/www/next.config.js index bbc3f710..eedbac7f 100644 --- a/www/next.config.js +++ b/www/next.config.js @@ -1,7 +1,6 @@ /** @type {import('next').NextConfig} */ const nextConfig = { output: "standalone", - experimental: { esmExternals: "loose" }, env: { IS_CI: process.env.IS_CI, }, diff --git a/www/package.json b/www/package.json index e55be4f0..d53c1536 100644 --- a/www/package.json +++ b/www/package.json @@ -17,19 +17,19 @@ "@fortawesome/fontawesome-svg-core": "^6.4.0", "@fortawesome/free-solid-svg-icons": "^6.4.0", "@fortawesome/react-fontawesome": "^0.2.0", - "@sentry/nextjs": "^7.77.0", + "@sentry/nextjs": "^10.11.0", "@tanstack/react-query": "^5.85.9", "@types/ioredis": "^5.0.0", "@whereby.com/browser-sdk": "^3.3.4", "autoprefixer": "10.4.20", "axios": "^1.8.2", "eslint": "^9.33.0", - "eslint-config-next": "^14.2.31", + "eslint-config-next": "^15.5.3", "fontawesome": "^5.6.3", "ioredis": "^5.7.0", "jest-worker": "^29.6.2", "lucide-react": "^0.525.0", - "next": "^14.2.30", + "next": "^15.5.3", "next-auth": "^4.24.7", "next-themes": "^0.4.6", "nuqs": "^2.4.3", diff --git a/www/pnpm-lock.yaml b/www/pnpm-lock.yaml index cf9351d4..a4e78972 100644 --- a/www/pnpm-lock.yaml +++ b/www/pnpm-lock.yaml @@ -23,8 +23,8 @@ importers: specifier: ^0.2.0 version: 0.2.3(@fortawesome/fontawesome-svg-core@6.7.2)(react@18.3.1) "@sentry/nextjs": - specifier: ^7.77.0 - version: 7.77.0(next@14.2.31(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react@18.3.1)(webpack@5.101.3) + specifier: ^10.11.0 + version: 10.11.0(@opentelemetry/context-async-hooks@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.1.0(@opentelemetry/api@1.9.0))(next@15.5.3(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react@18.3.1)(webpack@5.101.3) "@tanstack/react-query": specifier: ^5.85.9 version: 5.85.9(react@18.3.1) @@ -44,8 +44,8 @@ importers: specifier: ^9.33.0 version: 9.33.0(jiti@1.21.7) eslint-config-next: - specifier: ^14.2.31 - version: 14.2.31(eslint@9.33.0(jiti@1.21.7))(typescript@5.9.2) + specifier: ^15.5.3 + version: 15.5.3(eslint@9.33.0(jiti@1.21.7))(typescript@5.9.2) fontawesome: specifier: ^5.6.3 version: 5.6.3 @@ -59,17 +59,17 @@ importers: specifier: ^0.525.0 version: 0.525.0(react@18.3.1) next: - specifier: ^14.2.30 - version: 14.2.31(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0) + specifier: ^15.5.3 + version: 15.5.3(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0) next-auth: specifier: ^4.24.7 - version: 4.24.11(next@14.2.31(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 4.24.11(next@15.5.3(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) next-themes: specifier: ^0.4.6 version: 0.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) nuqs: specifier: ^2.4.3 - version: 2.4.3(next@14.2.31(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react@18.3.1) + version: 2.4.3(next@15.5.3(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react@18.3.1) openapi-fetch: specifier: ^0.14.0 version: 0.14.0 @@ -745,6 +745,194 @@ packages: } engines: { node: ">=18.18" } + "@img/sharp-darwin-arm64@0.34.3": + resolution: + { + integrity: sha512-ryFMfvxxpQRsgZJqBd4wsttYQbCxsJksrv9Lw/v798JcQ8+w84mBWuXwl+TT0WJ/WrYOLaYpwQXi3sA9nTIaIg==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [arm64] + os: [darwin] + + "@img/sharp-darwin-x64@0.34.3": + resolution: + { + integrity: sha512-yHpJYynROAj12TA6qil58hmPmAwxKKC7reUqtGLzsOHfP7/rniNGTL8tjWX6L3CTV4+5P4ypcS7Pp+7OB+8ihA==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [x64] + os: [darwin] + + "@img/sharp-libvips-darwin-arm64@1.2.0": + resolution: + { + integrity: sha512-sBZmpwmxqwlqG9ueWFXtockhsxefaV6O84BMOrhtg/YqbTaRdqDE7hxraVE3y6gVM4eExmfzW4a8el9ArLeEiQ==, + } + cpu: [arm64] + os: [darwin] + + "@img/sharp-libvips-darwin-x64@1.2.0": + resolution: + { + integrity: sha512-M64XVuL94OgiNHa5/m2YvEQI5q2cl9d/wk0qFTDVXcYzi43lxuiFTftMR1tOnFQovVXNZJ5TURSDK2pNe9Yzqg==, + } + cpu: [x64] + os: [darwin] + + "@img/sharp-libvips-linux-arm64@1.2.0": + resolution: + { + integrity: sha512-RXwd0CgG+uPRX5YYrkzKyalt2OJYRiJQ8ED/fi1tq9WQW2jsQIn0tqrlR5l5dr/rjqq6AHAxURhj2DVjyQWSOA==, + } + cpu: [arm64] + os: [linux] + + "@img/sharp-libvips-linux-arm@1.2.0": + resolution: + { + integrity: sha512-mWd2uWvDtL/nvIzThLq3fr2nnGfyr/XMXlq8ZJ9WMR6PXijHlC3ksp0IpuhK6bougvQrchUAfzRLnbsen0Cqvw==, + } + cpu: [arm] + os: [linux] + + "@img/sharp-libvips-linux-ppc64@1.2.0": + resolution: + { + integrity: sha512-Xod/7KaDDHkYu2phxxfeEPXfVXFKx70EAFZ0qyUdOjCcxbjqyJOEUpDe6RIyaunGxT34Anf9ue/wuWOqBW2WcQ==, + } + cpu: [ppc64] + os: [linux] + + "@img/sharp-libvips-linux-s390x@1.2.0": + resolution: + { + integrity: sha512-eMKfzDxLGT8mnmPJTNMcjfO33fLiTDsrMlUVcp6b96ETbnJmd4uvZxVJSKPQfS+odwfVaGifhsB07J1LynFehw==, + } + cpu: [s390x] + os: [linux] + + "@img/sharp-libvips-linux-x64@1.2.0": + resolution: + { + integrity: sha512-ZW3FPWIc7K1sH9E3nxIGB3y3dZkpJlMnkk7z5tu1nSkBoCgw2nSRTFHI5pB/3CQaJM0pdzMF3paf9ckKMSE9Tg==, + } + cpu: [x64] + os: [linux] + + "@img/sharp-libvips-linuxmusl-arm64@1.2.0": + resolution: + { + integrity: sha512-UG+LqQJbf5VJ8NWJ5Z3tdIe/HXjuIdo4JeVNADXBFuG7z9zjoegpzzGIyV5zQKi4zaJjnAd2+g2nna8TZvuW9Q==, + } + cpu: [arm64] + os: [linux] + + "@img/sharp-libvips-linuxmusl-x64@1.2.0": + resolution: + { + integrity: sha512-SRYOLR7CXPgNze8akZwjoGBoN1ThNZoqpOgfnOxmWsklTGVfJiGJoC/Lod7aNMGA1jSsKWM1+HRX43OP6p9+6Q==, + } + cpu: [x64] + os: [linux] + + "@img/sharp-linux-arm64@0.34.3": + resolution: + { + integrity: sha512-QdrKe3EvQrqwkDrtuTIjI0bu6YEJHTgEeqdzI3uWJOH6G1O8Nl1iEeVYRGdj1h5I21CqxSvQp1Yv7xeU3ZewbA==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [arm64] + os: [linux] + + "@img/sharp-linux-arm@0.34.3": + resolution: + { + integrity: sha512-oBK9l+h6KBN0i3dC8rYntLiVfW8D8wH+NPNT3O/WBHeW0OQWCjfWksLUaPidsrDKpJgXp3G3/hkmhptAW0I3+A==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [arm] + os: [linux] + + "@img/sharp-linux-ppc64@0.34.3": + resolution: + { + integrity: sha512-GLtbLQMCNC5nxuImPR2+RgrviwKwVql28FWZIW1zWruy6zLgA5/x2ZXk3mxj58X/tszVF69KK0Is83V8YgWhLA==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [ppc64] + os: [linux] + + "@img/sharp-linux-s390x@0.34.3": + resolution: + { + integrity: sha512-3gahT+A6c4cdc2edhsLHmIOXMb17ltffJlxR0aC2VPZfwKoTGZec6u5GrFgdR7ciJSsHT27BD3TIuGcuRT0KmQ==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [s390x] + os: [linux] + + "@img/sharp-linux-x64@0.34.3": + resolution: + { + integrity: sha512-8kYso8d806ypnSq3/Ly0QEw90V5ZoHh10yH0HnrzOCr6DKAPI6QVHvwleqMkVQ0m+fc7EH8ah0BB0QPuWY6zJQ==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [x64] + os: [linux] + + "@img/sharp-linuxmusl-arm64@0.34.3": + resolution: + { + integrity: sha512-vAjbHDlr4izEiXM1OTggpCcPg9tn4YriK5vAjowJsHwdBIdx0fYRsURkxLG2RLm9gyBq66gwtWI8Gx0/ov+JKQ==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [arm64] + os: [linux] + + "@img/sharp-linuxmusl-x64@0.34.3": + resolution: + { + integrity: sha512-gCWUn9547K5bwvOn9l5XGAEjVTTRji4aPTqLzGXHvIr6bIDZKNTA34seMPgM0WmSf+RYBH411VavCejp3PkOeQ==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [x64] + os: [linux] + + "@img/sharp-wasm32@0.34.3": + resolution: + { + integrity: sha512-+CyRcpagHMGteySaWos8IbnXcHgfDn7pO2fiC2slJxvNq9gDipYBN42/RagzctVRKgxATmfqOSulgZv5e1RdMg==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [wasm32] + + "@img/sharp-win32-arm64@0.34.3": + resolution: + { + integrity: sha512-MjnHPnbqMXNC2UgeLJtX4XqoVHHlZNd+nPt1kRPmj63wURegwBhZlApELdtxM2OIZDRv/DFtLcNhVbd1z8GYXQ==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [arm64] + os: [win32] + + "@img/sharp-win32-ia32@0.34.3": + resolution: + { + integrity: sha512-xuCdhH44WxuXgOM714hn4amodJMZl3OEvf0GVTm0BEyMeA2to+8HEdRPShH0SLYptJY1uBw+SCFP9WVQi1Q/cw==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [ia32] + os: [win32] + + "@img/sharp-win32-x64@0.34.3": + resolution: + { + integrity: sha512-OWwz05d++TxzLEv4VnsTz5CmZ6mI6S05sfQGEMrNrQcOEERbX46332IvE7pO/EUiw7jUrrS40z/M7kPyjfl04g==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + cpu: [x64] + os: [win32] + "@internationalized/date@3.8.2": resolution: { @@ -965,6 +1153,12 @@ packages: integrity: sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==, } + "@jridgewell/trace-mapping@0.3.31": + resolution: + { + integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==, + } + "@jridgewell/trace-mapping@0.3.9": resolution: { @@ -977,94 +1171,85 @@ packages: integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==, } - "@next/env@14.2.31": + "@next/env@15.5.3": resolution: { - integrity: sha512-X8VxxYL6VuezrG82h0pUA1V+DuTSJp7Nv15bxq3ivrFqZLjx81rfeHMWOE9T0jm1n3DtHGv8gdn6B0T0kr0D3Q==, + integrity: sha512-RSEDTRqyihYXygx/OJXwvVupfr9m04+0vH8vyy0HfZ7keRto6VX9BbEk0J2PUk0VGy6YhklJUSrgForov5F9pw==, } - "@next/eslint-plugin-next@14.2.31": + "@next/eslint-plugin-next@15.5.3": resolution: { - integrity: sha512-ouaB+l8Cr/uzGxoGHUvd01OnfFTM8qM81Crw1AG0xoWDRN0DKLXyTWVe0FdAOHVBpGuXB87aufdRmrwzZDArIw==, + integrity: sha512-SdhaKdko6dpsSr0DldkESItVrnPYB1NS2NpShCSX5lc7SSQmLZt5Mug6t2xbiuVWEVDLZSuIAoQyYVBYp0dR5g==, } - "@next/swc-darwin-arm64@14.2.31": + "@next/swc-darwin-arm64@15.5.3": resolution: { - integrity: sha512-dTHKfaFO/xMJ3kzhXYgf64VtV6MMwDs2viedDOdP+ezd0zWMOQZkxcwOfdcQeQCpouTr9b+xOqMCUXxgLizl8Q==, + integrity: sha512-nzbHQo69+au9wJkGKTU9lP7PXv0d1J5ljFpvb+LnEomLtSbJkbZyEs6sbF3plQmiOB2l9OBtN2tNSvCH1nQ9Jg==, } engines: { node: ">= 10" } cpu: [arm64] os: [darwin] - "@next/swc-darwin-x64@14.2.31": + "@next/swc-darwin-x64@15.5.3": resolution: { - integrity: sha512-iSavebQgeMukUAfjfW8Fi2Iz01t95yxRl2w2wCzjD91h5In9la99QIDKcKSYPfqLjCgwz3JpIWxLG6LM/sxL4g==, + integrity: sha512-w83w4SkOOhekJOcA5HBvHyGzgV1W/XvOfpkrxIse4uPWhYTTRwtGEM4v/jiXwNSJvfRvah0H8/uTLBKRXlef8g==, } engines: { node: ">= 10" } cpu: [x64] os: [darwin] - "@next/swc-linux-arm64-gnu@14.2.31": + "@next/swc-linux-arm64-gnu@15.5.3": resolution: { - integrity: sha512-XJb3/LURg1u1SdQoopG6jDL2otxGKChH2UYnUTcby4izjM0il7ylBY5TIA7myhvHj9lG5pn9F2nR2s3i8X9awQ==, + integrity: sha512-+m7pfIs0/yvgVu26ieaKrifV8C8yiLe7jVp9SpcIzg7XmyyNE7toC1fy5IOQozmr6kWl/JONC51osih2RyoXRw==, } engines: { node: ">= 10" } cpu: [arm64] os: [linux] - "@next/swc-linux-arm64-musl@14.2.31": + "@next/swc-linux-arm64-musl@15.5.3": resolution: { - integrity: sha512-IInDAcchNCu3BzocdqdCv1bKCmUVO/bKJHnBFTeq3svfaWpOPewaLJ2Lu3GL4yV76c/86ZvpBbG/JJ1lVIs5MA==, + integrity: sha512-u3PEIzuguSenoZviZJahNLgCexGFhso5mxWCrrIMdvpZn6lkME5vc/ADZG8UUk5K1uWRy4hqSFECrON6UKQBbQ==, } engines: { node: ">= 10" } cpu: [arm64] os: [linux] - "@next/swc-linux-x64-gnu@14.2.31": + "@next/swc-linux-x64-gnu@15.5.3": resolution: { - integrity: sha512-YTChJL5/9e4NXPKW+OJzsQa42RiWUNbE+k+ReHvA+lwXk+bvzTsVQboNcezWOuCD+p/J+ntxKOB/81o0MenBhw==, + integrity: sha512-lDtOOScYDZxI2BENN9m0pfVPJDSuUkAD1YXSvlJF0DKwZt0WlA7T7o3wrcEr4Q+iHYGzEaVuZcsIbCps4K27sA==, } engines: { node: ">= 10" } cpu: [x64] os: [linux] - "@next/swc-linux-x64-musl@14.2.31": + "@next/swc-linux-x64-musl@15.5.3": resolution: { - integrity: sha512-A0JmD1y4q/9ufOGEAhoa60Sof++X10PEoiWOH0gZ2isufWZeV03NnyRlRmJpRQWGIbRkJUmBo9I3Qz5C10vx4w==, + integrity: sha512-9vWVUnsx9PrY2NwdVRJ4dUURAQ8Su0sLRPqcCCxtX5zIQUBES12eRVHq6b70bbfaVaxIDGJN2afHui0eDm+cLg==, } engines: { node: ">= 10" } cpu: [x64] os: [linux] - "@next/swc-win32-arm64-msvc@14.2.31": + "@next/swc-win32-arm64-msvc@15.5.3": resolution: { - integrity: sha512-nowJ5GbMeDOMzbTm29YqrdrD6lTM8qn2wnZfGpYMY7SZODYYpaJHH1FJXE1l1zWICHR+WfIMytlTDBHu10jb8A==, + integrity: sha512-1CU20FZzY9LFQigRi6jM45oJMU3KziA5/sSG+dXeVaTm661snQP6xu3ykGxxwU5sLG3sh14teO/IOEPVsQMRfA==, } engines: { node: ">= 10" } cpu: [arm64] os: [win32] - "@next/swc-win32-ia32-msvc@14.2.31": + "@next/swc-win32-x64-msvc@15.5.3": resolution: { - integrity: sha512-pk9Bu4K0015anTS1OS9d/SpS0UtRObC+xe93fwnm7Gvqbv/W1ZbzhK4nvc96RURIQOux3P/bBH316xz8wjGSsA==, - } - engines: { node: ">= 10" } - cpu: [ia32] - os: [win32] - - "@next/swc-win32-x64-msvc@14.2.31": - resolution: - { - integrity: sha512-LwFZd4JFnMHGceItR9+jtlMm8lGLU/IPkgjBBgYmdYSfalbHCiDpjMYtgDQ2wtwiAOSJOCyFI4m8PikrsDyA6Q==, + integrity: sha512-JMoLAq3n3y5tKXPQwCK5c+6tmwkuFDa2XAxz8Wm4+IVthdBZdZGh+lmiLUHg9f9IDwIQpUjp+ysd6OkYTyZRZw==, } engines: { node: ">= 10" } cpu: [x64] @@ -1098,6 +1283,27 @@ packages: } engines: { node: ">=12.4.0" } + "@opentelemetry/api-logs@0.203.0": + resolution: + { + integrity: sha512-9B9RU0H7Ya1Dx/Rkyc4stuBZSGVQF27WigitInx2QQoj6KUpEFYPKoWjdFTunJYxmXmh17HeBvbMa1EhGyPmqQ==, + } + engines: { node: ">=8.0.0" } + + "@opentelemetry/api-logs@0.204.0": + resolution: + { + integrity: sha512-DqxY8yoAaiBPivoJD4UtgrMS8gEmzZ5lnaxzPojzLVHBGqPxgWm4zcuvcUHZiqQ6kRX2Klel2r9y8cA2HAtqpw==, + } + engines: { node: ">=8.0.0" } + + "@opentelemetry/api-logs@0.57.2": + resolution: + { + integrity: sha512-uIX52NnTM0iBh84MShlpouI7UKqkZ7MrUszTmaypHBu4r7NofznSnQRfJ+uUeDtQDj6w8eFGg5KBLDAwAPz1+A==, + } + engines: { node: ">=14" } + "@opentelemetry/api@1.9.0": resolution: { @@ -1105,6 +1311,299 @@ packages: } engines: { node: ">=8.0.0" } + "@opentelemetry/context-async-hooks@2.1.0": + resolution: + { + integrity: sha512-zOyetmZppnwTyPrt4S7jMfXiSX9yyfF0hxlA8B5oo2TtKl+/RGCy7fi4DrBfIf3lCPrkKsRBWZZD7RFojK7FDg==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + + "@opentelemetry/core@2.0.1": + resolution: + { + integrity: sha512-MaZk9SJIDgo1peKevlbhP6+IwIiNPNmswNL4AF0WaQJLbHXjr9SrZMgS12+iqr9ToV4ZVosCcc0f8Rg67LXjxw==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + + "@opentelemetry/core@2.1.0": + resolution: + { + integrity: sha512-RMEtHsxJs/GiHHxYT58IY57UXAQTuUnZVco6ymDEqTNlJKTimM4qPUPVe8InNFyBjhHBEAx4k3Q8LtNayBsbUQ==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + + "@opentelemetry/instrumentation-amqplib@0.50.0": + resolution: + { + integrity: sha512-kwNs/itehHG/qaQBcVrLNcvXVPW0I4FCOVtw3LHMLdYIqD7GJ6Yv2nX+a4YHjzbzIeRYj8iyMp0Bl7tlkidq5w==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-connect@0.47.0": + resolution: + { + integrity: sha512-pjenvjR6+PMRb6/4X85L4OtkQCootgb/Jzh/l/Utu3SJHBid1F+gk9sTGU2FWuhhEfV6P7MZ7BmCdHXQjgJ42g==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-dataloader@0.21.1": + resolution: + { + integrity: sha512-hNAm/bwGawLM8VDjKR0ZUDJ/D/qKR3s6lA5NV+btNaPVm2acqhPcT47l2uCVi+70lng2mywfQncor9v8/ykuyw==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-express@0.52.0": + resolution: + { + integrity: sha512-W7pizN0Wh1/cbNhhTf7C62NpyYw7VfCFTYg0DYieSTrtPBT1vmoSZei19wfKLnrMsz3sHayCg0HxCVL2c+cz5w==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-fs@0.23.0": + resolution: + { + integrity: sha512-Puan+QopWHA/KNYvDfOZN6M/JtF6buXEyD934vrb8WhsX1/FuM7OtoMlQyIqAadnE8FqqDL4KDPiEfCQH6pQcQ==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-generic-pool@0.47.0": + resolution: + { + integrity: sha512-UfHqf3zYK+CwDwEtTjaD12uUqGGTswZ7ofLBEdQ4sEJp9GHSSJMQ2hT3pgBxyKADzUdoxQAv/7NqvL42ZI+Qbw==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-graphql@0.51.0": + resolution: + { + integrity: sha512-LchkOu9X5DrXAnPI1+Z06h/EH/zC7D6sA86hhPrk3evLlsJTz0grPrkL/yUJM9Ty0CL/y2HSvmWQCjbJEz/ADg==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-hapi@0.50.0": + resolution: + { + integrity: sha512-5xGusXOFQXKacrZmDbpHQzqYD1gIkrMWuwvlrEPkYOsjUqGUjl1HbxCsn5Y9bUXOCgP1Lj6A4PcKt1UiJ2MujA==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-http@0.203.0": + resolution: + { + integrity: sha512-y3uQAcCOAwnO6vEuNVocmpVzG3PER6/YZqbPbbffDdJ9te5NkHEkfSMNzlC3+v7KlE+WinPGc3N7MR30G1HY2g==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-ioredis@0.52.0": + resolution: + { + integrity: sha512-rUvlyZwI90HRQPYicxpDGhT8setMrlHKokCtBtZgYxQWRF5RBbG4q0pGtbZvd7kyseuHbFpA3I/5z7M8b/5ywg==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-kafkajs@0.13.0": + resolution: + { + integrity: sha512-FPQyJsREOaGH64hcxlzTsIEQC4DYANgTwHjiB7z9lldmvua1LRMVn3/FfBlzXoqF179B0VGYviz6rn75E9wsDw==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-knex@0.48.0": + resolution: + { + integrity: sha512-V5wuaBPv/lwGxuHjC6Na2JFRjtPgstw19jTFl1B1b6zvaX8zVDYUDaR5hL7glnQtUSCMktPttQsgK4dhXpddcA==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-koa@0.51.0": + resolution: + { + integrity: sha512-XNLWeMTMG1/EkQBbgPYzCeBD0cwOrfnn8ao4hWgLv0fNCFQu1kCsJYygz2cvKuCs340RlnG4i321hX7R8gj3Rg==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-lru-memoizer@0.48.0": + resolution: + { + integrity: sha512-KUW29wfMlTPX1wFz+NNrmE7IzN7NWZDrmFWHM/VJcmFEuQGnnBuTIdsP55CnBDxKgQ/qqYFp4udQFNtjeFosPw==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-mongodb@0.56.0": + resolution: + { + integrity: sha512-YG5IXUUmxX3Md2buVMvxm9NWlKADrnavI36hbJsihqqvBGsWnIfguf0rUP5Srr0pfPqhQjUP+agLMsvu0GmUpA==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-mongoose@0.50.0": + resolution: + { + integrity: sha512-Am8pk1Ct951r4qCiqkBcGmPIgGhoDiFcRtqPSLbJrUZqEPUsigjtMjoWDRLG1Ki1NHgOF7D0H7d+suWz1AAizw==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-mysql2@0.50.0": + resolution: + { + integrity: sha512-PoOMpmq73rOIE3nlTNLf3B1SyNYGsp7QXHYKmeTZZnJ2Ou7/fdURuOhWOI0e6QZ5gSem18IR1sJi6GOULBQJ9g==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-mysql@0.49.0": + resolution: + { + integrity: sha512-QU9IUNqNsrlfE3dJkZnFHqLjlndiU39ll/YAAEvWE40sGOCi9AtOF6rmEGzJ1IswoZ3oyePV7q2MP8SrhJfVAA==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-pg@0.55.0": + resolution: + { + integrity: sha512-yfJ5bYE7CnkW/uNsnrwouG/FR7nmg09zdk2MSs7k0ZOMkDDAE3WBGpVFFApGgNu2U+gtzLgEzOQG4I/X+60hXw==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-redis@0.51.0": + resolution: + { + integrity: sha512-uL/GtBA0u72YPPehwOvthAe+Wf8k3T+XQPBssJmTYl6fzuZjNq8zTfxVFhl9nRFjFVEe+CtiYNT0Q3AyqW1Z0A==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-tedious@0.22.0": + resolution: + { + integrity: sha512-XrrNSUCyEjH1ax9t+Uo6lv0S2FCCykcF7hSxBMxKf7Xn0bPRxD3KyFUZy25aQXzbbbUHhtdxj3r2h88SfEM3aA==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation-undici@0.14.0": + resolution: + { + integrity: sha512-2HN+7ztxAReXuxzrtA3WboAKlfP5OsPA57KQn2AdYZbJ3zeRPcLXyW4uO/jpLE6PLm0QRtmeGCmfYpqRlwgSwg==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.7.0 + + "@opentelemetry/instrumentation@0.203.0": + resolution: + { + integrity: sha512-ke1qyM+3AK2zPuBPb6Hk/GCsc5ewbLvPNkEuELx/JmANeEp6ZjnZ+wypPAJSucTw0wvCGrUaibDSdcrGFoWxKQ==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation@0.204.0": + resolution: + { + integrity: sha512-vV5+WSxktzoMP8JoYWKeopChy6G3HKk4UQ2hESCRDUUTZqQ3+nM3u8noVG0LmNfRWwcFBnbZ71GKC7vaYYdJ1g==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/instrumentation@0.57.2": + resolution: + { + integrity: sha512-BdBGhQBh8IjZ2oIIX6F2/Q3LKm/FDDKi6ccYKcBTeilh6SNdNKveDOLk73BkSJjQLJk6qe4Yh+hHw1UPhCDdrg==, + } + engines: { node: ">=14" } + peerDependencies: + "@opentelemetry/api": ^1.3.0 + + "@opentelemetry/redis-common@0.38.0": + resolution: + { + integrity: sha512-4Wc0AWURII2cfXVVoZ6vDqK+s5n4K5IssdrlVrvGsx6OEOKdghKtJZqXAHWFiZv4nTDLH2/2fldjIHY8clMOjQ==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + + "@opentelemetry/resources@2.1.0": + resolution: + { + integrity: sha512-1CJjf3LCvoefUOgegxi8h6r4B/wLSzInyhGP2UmIBYNlo4Qk5CZ73e1eEyWmfXvFtm1ybkmfb2DqWvspsYLrWw==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ">=1.3.0 <1.10.0" + + "@opentelemetry/sdk-trace-base@2.1.0": + resolution: + { + integrity: sha512-uTX9FBlVQm4S2gVQO1sb5qyBLq/FPjbp+tmGoxu4tIgtYGmBYB44+KX/725RFDe30yBSaA9Ml9fqphe1hbUyLQ==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ">=1.3.0 <1.10.0" + + "@opentelemetry/semantic-conventions@1.37.0": + resolution: + { + integrity: sha512-JD6DerIKdJGmRp4jQyX5FlrQjA4tjOw1cvfsPAZXfOOEErMUHjPcPSICS+6WnM0nB0efSFARh0KAZss+bvExOA==, + } + engines: { node: ">=14" } + + "@opentelemetry/sql-common@0.41.0": + resolution: + { + integrity: sha512-pmzXctVbEERbqSfiAgdes9Y63xjoOyXcD7B6IXBkVb+vbM7M9U98mn33nGXxPf4dfYR0M+vhcKRZmbSJ7HfqFA==, + } + engines: { node: ^18.19.0 || >=20.6.0 } + peerDependencies: + "@opentelemetry/api": ^1.1.0 + "@pandacss/is-valid-prop@0.54.0": resolution: { @@ -1255,6 +1754,14 @@ packages: } engines: { node: ^12.20.0 || ^14.18.0 || >=16.0.0 } + "@prisma/instrumentation@6.14.0": + resolution: + { + integrity: sha512-Po/Hry5bAeunRDq0yAQueKookW3glpP+qjjvvyOfm6dI2KG5/Y6Bgg3ahyWd7B0u2E+Wf9xRk2rtdda7ySgK1A==, + } + peerDependencies: + "@opentelemetry/api": ^1.8 + "@radix-ui/primitive@1.1.3": resolution: { @@ -1572,14 +2079,14 @@ packages: react-redux: optional: true - "@rollup/plugin-commonjs@24.0.0": + "@rollup/plugin-commonjs@28.0.1": resolution: { - integrity: sha512-0w0wyykzdyRRPHOb0cQt14mIBLujfAv6GgP6g8nvg/iBxEm112t3YPPq+Buqe2+imvElTka+bjNlJ/gB56TD8g==, + integrity: sha512-+tNWdlWKbpB3WgBN7ijjYkq9X5uhjmcvyjEght4NmH5fAU++zfQzAJ6wumLS+dNcvwEZhKx2Z+skY8m7v0wGSA==, } - engines: { node: ">=14.0.0" } + engines: { node: ">=16.0.0 || 14 >= 14.17" } peerDependencies: - rollup: ^2.68.0||^3.0.0 + rollup: ^2.68.0||^3.0.0||^4.0.0 peerDependenciesMeta: rollup: optional: true @@ -1596,6 +2103,174 @@ packages: rollup: optional: true + "@rollup/rollup-android-arm-eabi@4.50.1": + resolution: + { + integrity: sha512-HJXwzoZN4eYTdD8bVV22DN8gsPCAj3V20NHKOs8ezfXanGpmVPR7kalUHd+Y31IJp9stdB87VKPFbsGY3H/2ag==, + } + cpu: [arm] + os: [android] + + "@rollup/rollup-android-arm64@4.50.1": + resolution: + { + integrity: sha512-PZlsJVcjHfcH53mOImyt3bc97Ep3FJDXRpk9sMdGX0qgLmY0EIWxCag6EigerGhLVuL8lDVYNnSo8qnTElO4xw==, + } + cpu: [arm64] + os: [android] + + "@rollup/rollup-darwin-arm64@4.50.1": + resolution: + { + integrity: sha512-xc6i2AuWh++oGi4ylOFPmzJOEeAa2lJeGUGb4MudOtgfyyjr4UPNK+eEWTPLvmPJIY/pgw6ssFIox23SyrkkJw==, + } + cpu: [arm64] + os: [darwin] + + "@rollup/rollup-darwin-x64@4.50.1": + resolution: + { + integrity: sha512-2ofU89lEpDYhdLAbRdeyz/kX3Y2lpYc6ShRnDjY35bZhd2ipuDMDi6ZTQ9NIag94K28nFMofdnKeHR7BT0CATw==, + } + cpu: [x64] + os: [darwin] + + "@rollup/rollup-freebsd-arm64@4.50.1": + resolution: + { + integrity: sha512-wOsE6H2u6PxsHY/BeFHA4VGQN3KUJFZp7QJBmDYI983fgxq5Th8FDkVuERb2l9vDMs1D5XhOrhBrnqcEY6l8ZA==, + } + cpu: [arm64] + os: [freebsd] + + "@rollup/rollup-freebsd-x64@4.50.1": + resolution: + { + integrity: sha512-A/xeqaHTlKbQggxCqispFAcNjycpUEHP52mwMQZUNqDUJFFYtPHCXS1VAG29uMlDzIVr+i00tSFWFLivMcoIBQ==, + } + cpu: [x64] + os: [freebsd] + + "@rollup/rollup-linux-arm-gnueabihf@4.50.1": + resolution: + { + integrity: sha512-54v4okehwl5TaSIkpp97rAHGp7t3ghinRd/vyC1iXqXMfjYUTm7TfYmCzXDoHUPTTf36L8pr0E7YsD3CfB3ZDg==, + } + cpu: [arm] + os: [linux] + + "@rollup/rollup-linux-arm-musleabihf@4.50.1": + resolution: + { + integrity: sha512-p/LaFyajPN/0PUHjv8TNyxLiA7RwmDoVY3flXHPSzqrGcIp/c2FjwPPP5++u87DGHtw+5kSH5bCJz0mvXngYxw==, + } + cpu: [arm] + os: [linux] + + "@rollup/rollup-linux-arm64-gnu@4.50.1": + resolution: + { + integrity: sha512-2AbMhFFkTo6Ptna1zO7kAXXDLi7H9fGTbVaIq2AAYO7yzcAsuTNWPHhb2aTA6GPiP+JXh85Y8CiS54iZoj4opw==, + } + cpu: [arm64] + os: [linux] + + "@rollup/rollup-linux-arm64-musl@4.50.1": + resolution: + { + integrity: sha512-Cgef+5aZwuvesQNw9eX7g19FfKX5/pQRIyhoXLCiBOrWopjo7ycfB292TX9MDcDijiuIJlx1IzJz3IoCPfqs9w==, + } + cpu: [arm64] + os: [linux] + + "@rollup/rollup-linux-loongarch64-gnu@4.50.1": + resolution: + { + integrity: sha512-RPhTwWMzpYYrHrJAS7CmpdtHNKtt2Ueo+BlLBjfZEhYBhK00OsEqM08/7f+eohiF6poe0YRDDd8nAvwtE/Y62Q==, + } + cpu: [loong64] + os: [linux] + + "@rollup/rollup-linux-ppc64-gnu@4.50.1": + resolution: + { + integrity: sha512-eSGMVQw9iekut62O7eBdbiccRguuDgiPMsw++BVUg+1K7WjZXHOg/YOT9SWMzPZA+w98G+Fa1VqJgHZOHHnY0Q==, + } + cpu: [ppc64] + os: [linux] + + "@rollup/rollup-linux-riscv64-gnu@4.50.1": + resolution: + { + integrity: sha512-S208ojx8a4ciIPrLgazF6AgdcNJzQE4+S9rsmOmDJkusvctii+ZvEuIC4v/xFqzbuP8yDjn73oBlNDgF6YGSXQ==, + } + cpu: [riscv64] + os: [linux] + + "@rollup/rollup-linux-riscv64-musl@4.50.1": + resolution: + { + integrity: sha512-3Ag8Ls1ggqkGUvSZWYcdgFwriy2lWo+0QlYgEFra/5JGtAd6C5Hw59oojx1DeqcA2Wds2ayRgvJ4qxVTzCHgzg==, + } + cpu: [riscv64] + os: [linux] + + "@rollup/rollup-linux-s390x-gnu@4.50.1": + resolution: + { + integrity: sha512-t9YrKfaxCYe7l7ldFERE1BRg/4TATxIg+YieHQ966jwvo7ddHJxPj9cNFWLAzhkVsbBvNA4qTbPVNsZKBO4NSg==, + } + cpu: [s390x] + os: [linux] + + "@rollup/rollup-linux-x64-gnu@4.50.1": + resolution: + { + integrity: sha512-MCgtFB2+SVNuQmmjHf+wfI4CMxy3Tk8XjA5Z//A0AKD7QXUYFMQcns91K6dEHBvZPCnhJSyDWLApk40Iq/H3tA==, + } + cpu: [x64] + os: [linux] + + "@rollup/rollup-linux-x64-musl@4.50.1": + resolution: + { + integrity: sha512-nEvqG+0jeRmqaUMuwzlfMKwcIVffy/9KGbAGyoa26iu6eSngAYQ512bMXuqqPrlTyfqdlB9FVINs93j534UJrg==, + } + cpu: [x64] + os: [linux] + + "@rollup/rollup-openharmony-arm64@4.50.1": + resolution: + { + integrity: sha512-RDsLm+phmT3MJd9SNxA9MNuEAO/J2fhW8GXk62G/B4G7sLVumNFbRwDL6v5NrESb48k+QMqdGbHgEtfU0LCpbA==, + } + cpu: [arm64] + os: [openharmony] + + "@rollup/rollup-win32-arm64-msvc@4.50.1": + resolution: + { + integrity: sha512-hpZB/TImk2FlAFAIsoElM3tLzq57uxnGYwplg6WDyAxbYczSi8O2eQ+H2Lx74504rwKtZ3N2g4bCUkiamzS6TQ==, + } + cpu: [arm64] + os: [win32] + + "@rollup/rollup-win32-ia32-msvc@4.50.1": + resolution: + { + integrity: sha512-SXjv8JlbzKM0fTJidX4eVsH+Wmnp0/WcD8gJxIZyR6Gay5Qcsmdbi9zVtnbkGPG8v2vMR1AD06lGWy5FLMcG7A==, + } + cpu: [ia32] + os: [win32] + + "@rollup/rollup-win32-x64-msvc@4.50.1": + resolution: + { + integrity: sha512-StxAO/8ts62KZVRAm4JZYq9+NqNsV7RvimNK+YM7ry//zebEH6meuugqW/P5OFUCjyQgui+9fUxT6d5NShvMvA==, + } + cpu: [x64] + os: [win32] + "@rtsao/scc@1.1.0": resolution: { @@ -1608,106 +2283,209 @@ packages: integrity: sha512-5EwMtOqvJMMa3HbmxLlF74e+3/HhwBTMcvt3nqVJgGCozO6hzIPOBlwm8mGVNR9SN2IJpxSnlxczyDjcn7qIyw==, } - "@sentry-internal/tracing@7.77.0": + "@sentry-internal/browser-utils@10.11.0": resolution: { - integrity: sha512-8HRF1rdqWwtINqGEdx8Iqs9UOP/n8E0vXUu3Nmbqj4p5sQPA7vvCfq+4Y4rTqZFc7sNdFpDsRION5iQEh8zfZw==, + integrity: sha512-fnMlz5ntap6x4vRsLOHwPqXh7t82StgAiRt+EaqcMX0t9l8C0w0df8qwrONKXvE5GdHWTNFJj5qR15FERSkg3Q==, } - engines: { node: ">=8" } + engines: { node: ">=18" } - "@sentry/browser@7.77.0": + "@sentry-internal/feedback@10.11.0": resolution: { - integrity: sha512-nJ2KDZD90H8jcPx9BysQLiQW+w7k7kISCWeRjrEMJzjtge32dmHA8G4stlUTRIQugy5F+73cOayWShceFP7QJQ==, + integrity: sha512-ADey51IIaa29kepb8B7aSgSGSrcyT7QZdRsN1rhitefzrruHzpSUci5c2EPIvmWfKJq8Wnvukm9BHXZXAAIOzA==, } - engines: { node: ">=8" } + engines: { node: ">=18" } - "@sentry/cli@1.77.3": + "@sentry-internal/replay-canvas@10.11.0": resolution: { - integrity: sha512-c3eDqcDRmy4TFz2bFU5Y6QatlpoBPPa8cxBooaS4aMQpnIdLYPF1xhyyiW0LQlDUNc3rRjNF7oN5qKoaRoMTQQ==, + integrity: sha512-brWQ90IYQyZr44IpTprlmvbtz4l2ABzLdpP94Egh12Onf/q6n4CjLKaA25N5kX0uggHqX1Rs7dNaG0mP3ETHhA==, } - engines: { node: ">= 8" } + engines: { node: ">=18" } + + "@sentry-internal/replay@10.11.0": + resolution: + { + integrity: sha512-t4M2bxMp2rKGK/l7bkVWjN+xVw9H9V12jAeXmO/Fskz2RcG1ZNLQnKSx/W/zCRMk8k7xOQFsfiApq+zDN+ziKA==, + } + engines: { node: ">=18" } + + "@sentry/babel-plugin-component-annotate@4.3.0": + resolution: + { + integrity: sha512-OuxqBprXRyhe8Pkfyz/4yHQJc5c3lm+TmYWSSx8u48g5yKewSQDOxkiLU5pAk3WnbLPy8XwU/PN+2BG0YFU9Nw==, + } + engines: { node: ">= 14" } + + "@sentry/browser@10.11.0": + resolution: + { + integrity: sha512-qemaKCJKJHHCyGBpdLq23xL5u9Xvir20XN7YFTnHcEq4Jvj0GoWsslxKi5cQB2JvpYn62WxTiDgVLeQlleZhSg==, + } + engines: { node: ">=18" } + + "@sentry/bundler-plugin-core@4.3.0": + resolution: + { + integrity: sha512-dmR4DJhJ4jqVWGWppuTL2blNFqOZZnt4aLkewbD1myFG3KVfUx8CrMQWEmGjkgPOtj5TO6xH9PyTJjXC6o5tnA==, + } + engines: { node: ">= 14" } + + "@sentry/cli-darwin@2.53.0": + resolution: + { + integrity: sha512-NNPfpILMwKgpHiyJubHHuauMKltkrgLQ5tvMdxNpxY60jBNdo5VJtpESp4XmXlnidzV4j1z61V4ozU6ttDgt5Q==, + } + engines: { node: ">=10" } + os: [darwin] + + "@sentry/cli-linux-arm64@2.53.0": + resolution: + { + integrity: sha512-xY/CZ1dVazsSCvTXzKpAgXaRqfljVfdrFaYZRUaRPf1ZJRGa3dcrivoOhSIeG/p5NdYtMvslMPY9Gm2MT0M83A==, + } + engines: { node: ">=10" } + cpu: [arm64] + os: [linux, freebsd, android] + + "@sentry/cli-linux-arm@2.53.0": + resolution: + { + integrity: sha512-NdRzQ15Ht83qG0/Lyu11ciy/Hu/oXbbtJUgwzACc7bWvHQA8xEwTsehWexqn1529Kfc5EjuZ0Wmj3MHmp+jOWw==, + } + engines: { node: ">=10" } + cpu: [arm] + os: [linux, freebsd, android] + + "@sentry/cli-linux-i686@2.53.0": + resolution: + { + integrity: sha512-0REmBibGAB4jtqt9S6JEsFF4QybzcXHPcHtJjgMi5T0ueh952uG9wLzjSxQErCsxTKF+fL8oG0Oz5yKBuCwCCQ==, + } + engines: { node: ">=10" } + cpu: [x86, ia32] + os: [linux, freebsd, android] + + "@sentry/cli-linux-x64@2.53.0": + resolution: + { + integrity: sha512-9UGJL+Vy5N/YL1EWPZ/dyXLkShlNaDNrzxx4G7mTS9ywjg+BIuemo6rnN7w43K1NOjObTVO6zY0FwumJ1pCyLg==, + } + engines: { node: ">=10" } + cpu: [x64] + os: [linux, freebsd, android] + + "@sentry/cli-win32-arm64@2.53.0": + resolution: + { + integrity: sha512-G1kjOjrjMBY20rQcJV2GA8KQE74ufmROCDb2GXYRfjvb1fKAsm4Oh8N5+Tqi7xEHdjQoLPkE4CNW0aH68JSUDQ==, + } + engines: { node: ">=10" } + cpu: [arm64] + os: [win32] + + "@sentry/cli-win32-i686@2.53.0": + resolution: + { + integrity: sha512-qbGTZUzesuUaPtY9rPXdNfwLqOZKXrJRC1zUFn52hdo6B+Dmv0m/AHwRVFHZP53Tg1NCa8bDei2K/uzRN0dUZw==, + } + engines: { node: ">=10" } + cpu: [x86, ia32] + os: [win32] + + "@sentry/cli-win32-x64@2.53.0": + resolution: + { + integrity: sha512-1TXYxYHtwgUq5KAJt3erRzzUtPqg7BlH9T7MdSPHjJatkrr/kwZqnVe2H6Arr/5NH891vOlIeSPHBdgJUAD69g==, + } + engines: { node: ">=10" } + cpu: [x64] + os: [win32] + + "@sentry/cli@2.53.0": + resolution: + { + integrity: sha512-n2ZNb+5Z6AZKQSI0SusQ7ZzFL637mfw3Xh4C3PEyVSn9LiF683fX0TTq8OeGmNZQS4maYfS95IFD+XpydU0dEA==, + } + engines: { node: ">= 10" } hasBin: true - "@sentry/core@7.77.0": + "@sentry/core@10.11.0": resolution: { - integrity: sha512-Tj8oTYFZ/ZD+xW8IGIsU6gcFXD/gfE+FUxUaeSosd9KHwBQNOLhZSsYo/tTVf/rnQI/dQnsd4onPZLiL+27aTg==, + integrity: sha512-39Rxn8cDXConx3+SKOCAhW+/hklM7UDaz+U1OFzFMDlT59vXSpfI6bcXtNiFDrbOxlQ2hX8yAqx8YRltgSftoA==, } - engines: { node: ">=8" } + engines: { node: ">=18" } - "@sentry/integrations@7.77.0": + "@sentry/nextjs@10.11.0": resolution: { - integrity: sha512-P055qXgBHeZNKnnVEs5eZYLdy6P49Zr77A1aWJuNih/EenzMy922GOeGy2mF6XYrn1YJSjEwsNMNsQkcvMTK8Q==, + integrity: sha512-oMRmRW982H6kNlUHNij5QAro8Kbi43r3VrcrKtrx7LgjHOUTFUvZmJeynC+T+PcMgLhQNvCC3JgzOhfSqxOChg==, } - engines: { node: ">=8" } - - "@sentry/nextjs@7.77.0": - resolution: - { - integrity: sha512-8tYPBt5luFjrng1sAMJqNjM9sq80q0jbt6yariADU9hEr7Zk8YqFaOI2/Q6yn9dZ6XyytIRtLEo54kk2AO94xw==, - } - engines: { node: ">=8" } + engines: { node: ">=18" } peerDependencies: - next: ^10.0.8 || ^11.0 || ^12.0 || ^13.0 || ^14.0 - react: 16.x || 17.x || 18.x - webpack: ">= 4.0.0" - peerDependenciesMeta: - webpack: - optional: true + next: ^13.2.0 || ^14.0 || ^15.0.0-rc.0 - "@sentry/node@7.77.0": + "@sentry/node-core@10.11.0": resolution: { - integrity: sha512-Ob5tgaJOj0OYMwnocc6G/CDLWC7hXfVvKX/ofkF98+BbN/tQa5poL+OwgFn9BA8ud8xKzyGPxGU6LdZ8Oh3z/g==, + integrity: sha512-dkVZ06F+W5W0CsD47ATTTOTTocmccT/ezrF9idspQq+HVOcjoKSU60WpWo22NjtVNdSYKLnom0q1LKRoaRA/Ww==, } - engines: { node: ">=8" } - - "@sentry/react@7.77.0": - resolution: - { - integrity: sha512-Q+htKzib5em0MdaQZMmPomaswaU3xhcVqmLi2CxqQypSjbYgBPPd+DuhrXKoWYLDDkkbY2uyfe4Lp3yLRWeXYw==, - } - engines: { node: ">=8" } + engines: { node: ">=18" } peerDependencies: - react: 15.x || 16.x || 17.x || 18.x + "@opentelemetry/api": ^1.9.0 + "@opentelemetry/context-async-hooks": ^1.30.1 || ^2.0.0 + "@opentelemetry/core": ^1.30.1 || ^2.0.0 + "@opentelemetry/instrumentation": ">=0.57.1 <1" + "@opentelemetry/resources": ^1.30.1 || ^2.0.0 + "@opentelemetry/sdk-trace-base": ^1.30.1 || ^2.0.0 + "@opentelemetry/semantic-conventions": ^1.34.0 - "@sentry/replay@7.77.0": + "@sentry/node@10.11.0": resolution: { - integrity: sha512-M9Ik2J5ekl+C1Och3wzLRZVaRGK33BlnBwfwf3qKjgLDwfKW+1YkwDfTHbc2b74RowkJbOVNcp4m8ptlehlSaQ==, + integrity: sha512-Tbcjr3iQAEjYi7/QIpdS8afv/LU1TwDTiy5x87MSpVEoeFcZ7f2iFC4GV0fhB3p4qDuFdL2JGVsIIrzapp8Y4A==, } - engines: { node: ">=12" } + engines: { node: ">=18" } - "@sentry/types@7.77.0": + "@sentry/opentelemetry@10.11.0": resolution: { - integrity: sha512-nfb00XRJVi0QpDHg+JkqrmEBHsqBnxJu191Ded+Cs1OJ5oPXEW6F59LVcBScGvMqe+WEk1a73eH8XezwfgrTsA==, + integrity: sha512-BY2SsVlRKICzNUO9atUy064BZqYnhV5A/O+JjEx0kj7ylq+oZd++zmGkks00rSwaJE220cVcVhpwqxcFUpc2hw==, } - engines: { node: ">=8" } + engines: { node: ">=18" } + peerDependencies: + "@opentelemetry/api": ^1.9.0 + "@opentelemetry/context-async-hooks": ^1.30.1 || ^2.0.0 + "@opentelemetry/core": ^1.30.1 || ^2.0.0 + "@opentelemetry/sdk-trace-base": ^1.30.1 || ^2.0.0 + "@opentelemetry/semantic-conventions": ^1.34.0 - "@sentry/utils@7.77.0": + "@sentry/react@10.11.0": resolution: { - integrity: sha512-NmM2kDOqVchrey3N5WSzdQoCsyDkQkiRxExPaNI2oKQ/jMWHs9yt0tSy7otPBcXs0AP59ihl75Bvm1tDRcsp5g==, + integrity: sha512-bE4lJ5Ni/n9JUdLWGG99yucY0/zOUXjKl9gfSTkvUvOiAIX/bY0Y4WgOqeWySvbMz679ZdOwF34k8RA/gI7a8g==, } - engines: { node: ">=8" } + engines: { node: ">=18" } + peerDependencies: + react: ^16.14.0 || 17.x || 18.x || 19.x - "@sentry/vercel-edge@7.77.0": + "@sentry/vercel-edge@10.11.0": resolution: { - integrity: sha512-ffddPCgxVeAccPYuH5sooZeHBqDuJ9OIhIRYKoDi4TvmwAzWo58zzZWhRpkHqHgIQdQvhLVZ5F+FSQVWnYSOkw==, + integrity: sha512-jAsJ8RbbF2JWj2wnXfd6BwWxCR6GBITMtlaoWc7pG22HknEtoH15dKsQC3Ew5r/KRcofr2e+ywdnBn5CPr1Pbg==, } - engines: { node: ">=8" } + engines: { node: ">=18" } - "@sentry/webpack-plugin@1.20.0": + "@sentry/webpack-plugin@4.3.0": resolution: { - integrity: sha512-Ssj1mJVFsfU6vMCOM2d+h+KQR7QHSfeIP16t4l20Uq/neqWXZUQ2yvQfe4S3BjdbJXz/X4Rw8Hfy1Sd0ocunYw==, + integrity: sha512-K4nU1SheK/tvyakBws2zfd+MN6hzmpW+wPTbSbDWn1+WL9+g9hsPh8hjFFiVe47AhhUoUZ3YgiH2HyeHXjHflA==, } - engines: { node: ">= 8" } + engines: { node: ">= 14" } + peerDependencies: + webpack: ">=4.40.0" "@sinclair/typebox@0.27.8": resolution: @@ -1751,10 +2529,10 @@ packages: integrity: sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==, } - "@swc/counter@0.1.3": + "@swc/helpers@0.5.15": resolution: { - integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==, + integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==, } "@swc/helpers@0.5.17": @@ -1763,12 +2541,6 @@ packages: integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==, } - "@swc/helpers@0.5.5": - resolution: - { - integrity: sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==, - } - "@tanstack/query-core@5.85.9": resolution: { @@ -1837,6 +2609,12 @@ packages: integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==, } + "@types/connect@3.4.38": + resolution: + { + integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==, + } + "@types/debug@4.1.12": resolution: { @@ -1934,6 +2712,12 @@ packages: integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==, } + "@types/mysql@2.15.27": + resolution: + { + integrity: sha512-YfWiV16IY0OeBfBCk8+hXKmdTKrKlwKN1MNKAPBu5JYxLwBEZl7QzeEpGnlZb3VMGJrrGmB84gXiH+ofs/TezA==, + } + "@types/node-fetch@2.6.13": resolution: { @@ -1946,12 +2730,30 @@ packages: integrity: sha512-DRh5K+ka5eJic8CjH7td8QpYEV6Zo10gfRkjHCO3weqZHWDtAaSTFtl4+VMqOJ4N5jcuhZ9/l+yy8rVgw7BQeQ==, } + "@types/node@24.3.1": + resolution: + { + integrity: sha512-3vXmQDXy+woz+gnrTvuvNrPzekOi+Ds0ReMxw0LzBiK3a+1k0kQn9f2NWk+lgD4rJehFUmYy2gMhJ2ZI+7YP9g==, + } + "@types/parse-json@4.0.2": resolution: { integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==, } + "@types/pg-pool@2.0.6": + resolution: + { + integrity: sha512-TaAUE5rq2VQYxab5Ts7WZhKNmuN78Q6PiFonTDdpbx8a1H0M1vhy3rhiMjl+e2iHmogyMw7jZF4FrE6eJUy5HQ==, + } + + "@types/pg@8.15.4": + resolution: + { + integrity: sha512-I6UNVBAoYbvuWkkU3oosC8yxqH21f4/Jc4DK71JLG3dT2mdlGe1z+ep/LQGXaKaOgcvUrsQoPRqfgtMcvZiJhg==, + } + "@types/prop-types@15.7.15": resolution: { @@ -1970,12 +2772,24 @@ packages: integrity: sha512-WFHp9YUJQ6CKshqoC37iOlHnQSmxNc795UhB26CyBBttrN9svdIrUjl/NjnNmfcwtncN0h/0PPAFWv9ovP8mLA==, } + "@types/shimmer@1.2.0": + resolution: + { + integrity: sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg==, + } + "@types/stack-utils@2.0.3": resolution: { integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==, } + "@types/tedious@4.0.14": + resolution: + { + integrity: sha512-KHPsfX/FoVbUGbyYvk1q9MMQHLPeRZhRJZdO45Q4YjvFkv4hMNghCWTvy7rdKessBsmtz4euWCWAB6/tVpI1Iw==, + } + "@types/ua-parser-js@0.7.39": resolution: { @@ -2830,6 +3644,14 @@ packages: integrity: sha512-yI/CZizbk387TdkDCy9Uc4l53uaeQuWAIJESrmAwwq6yMNbHZ2dm5+1NHdZr/guES5TgyJa/BYJsNJeCsCfesg==, } + acorn-import-attributes@1.9.5: + resolution: + { + integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==, + } + peerDependencies: + acorn: ^8 + acorn-import-phases@1.0.4: resolution: { @@ -3264,13 +4086,6 @@ packages: integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==, } - busboy@1.6.0: - resolution: - { - integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==, - } - engines: { node: ">=10.16.0" } - call-bind-apply-helpers@1.0.2: resolution: { @@ -3424,6 +4239,12 @@ packages: } engines: { node: ">=8" } + cjs-module-lexer@1.4.3: + resolution: + { + integrity: sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==, + } + cjs-module-lexer@2.1.0: resolution: { @@ -3489,6 +4310,19 @@ packages: integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, } + color-string@1.9.1: + resolution: + { + integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==, + } + + color@4.2.3: + resolution: + { + integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==, + } + engines: { node: ">=12.5.0" } + colorette@1.4.0: resolution: { @@ -3727,6 +4561,13 @@ packages: engines: { node: ">=0.10" } hasBin: true + detect-libc@2.0.4: + resolution: + { + integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==, + } + engines: { node: ">=8" } + detect-newline@3.1.0: resolution: { @@ -3790,6 +4631,13 @@ packages: integrity: sha512-h7g5eduvnLwowJJPkcB5lNzo8vd/Hx4e3I4IOtLpX0qB2wBiuryGLNa61MeFre4b6gMaQIhegMIZ2I8rQCAJwQ==, } + dotenv@16.6.1: + resolution: + { + integrity: sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==, + } + engines: { node: ">=12" } + dunder-proto@1.0.1: resolution: { @@ -3943,13 +4791,13 @@ packages: } engines: { node: ">=10" } - eslint-config-next@14.2.31: + eslint-config-next@15.5.3: resolution: { - integrity: sha512-sT32j4678je7SWstBM6l0kE2L+LSgAARDAxw8iloNhI4/8xwkdDesbrGCPaGWzQv+dD6f6adhB+eRSThpGkBdg==, + integrity: sha512-e6j+QhQFOr5pfsc8VJbuTD9xTXJaRvMHYjEeLPA2pFkheNlgPLCkxdvhxhfuM4KGcqSZj2qEnpHisdTVs3BxuQ==, } peerDependencies: - eslint: ^7.23.0 || ^8.0.0 + eslint: ^7.23.0 || ^8.0.0 || ^9.0.0 typescript: ">=3.3.1" peerDependenciesMeta: typescript: @@ -4023,14 +4871,14 @@ packages: peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 - eslint-plugin-react-hooks@5.0.0-canary-7118f5dd7-20230705: + eslint-plugin-react-hooks@5.2.0: resolution: { - integrity: sha512-AZYbMo/NW9chdL7vk6HQzQhT+PvTAEVqWk9ziruUoW2kAOcN5qNyelv70e0F1VNQAbvutOC9oc+xfWycI9FxDw==, + integrity: sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==, } engines: { node: ">=10" } peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 eslint-plugin-react@7.37.5: resolution: @@ -4197,6 +5045,13 @@ packages: integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==, } + fast-glob@3.3.1: + resolution: + { + integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==, + } + engines: { node: ">=8.6.0" } + fast-glob@3.3.3: resolution: { @@ -4337,6 +5192,12 @@ packages: } engines: { node: ">= 6" } + forwarded-parse@2.1.2: + resolution: + { + integrity: sha512-alTFZZQDKMporBH77856pXgzhEzaUVmLCDk+egLgIgHst3Tpndzz8MnKe+GzRJRfvVdn69HhpW7cmXzvtLvJAw==, + } + fraction.js@4.3.7: resolution: { @@ -4464,14 +5325,6 @@ packages: integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==, } - glob@10.3.10: - resolution: - { - integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==, - } - engines: { node: ">=16 || 14 >=14.17" } - hasBin: true - glob@10.4.5: resolution: { @@ -4486,13 +5339,12 @@ packages: } deprecated: Glob versions prior to v9 are no longer supported - glob@8.1.0: + glob@9.3.5: resolution: { - integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==, + integrity: sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==, } - engines: { node: ">=12" } - deprecated: Glob versions prior to v9 are no longer supported + engines: { node: ">=16 || 14 >=14.17" } globals@14.0.0: resolution: @@ -4673,12 +5525,6 @@ packages: } engines: { node: ">= 4" } - immediate@3.0.6: - resolution: - { - integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==, - } - immer@10.1.1: resolution: { @@ -4698,6 +5544,12 @@ packages: } engines: { node: ">=6" } + import-in-the-middle@1.14.2: + resolution: + { + integrity: sha512-5tCuY9BV8ujfOpwtAGgsTx9CGUapcFMEEyByLv1B+v2+6DhAcw+Zr0nhQT7uwaZ7DiourxFEscghOR8e1aPLQw==, + } + import-local@3.2.0: resolution: { @@ -4798,6 +5650,12 @@ packages: integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==, } + is-arrayish@0.3.2: + resolution: + { + integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==, + } + is-async-function@2.1.1: resolution: { @@ -5085,13 +5943,6 @@ packages: } engines: { node: ">= 0.4" } - jackspeak@2.3.6: - resolution: - { - integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==, - } - engines: { node: ">=14" } - jackspeak@3.4.3: resolution: { @@ -5461,12 +6312,6 @@ packages: } engines: { node: ">= 0.8.0" } - lie@3.1.1: - resolution: - { - integrity: sha512-RiNhHysUjhrDQntfYSfY4MU24coXXdEOgw9WGcKHNeEwffDYbF//u87M1EWaMGzuFoSbqW0C9C6lEEhDOAswfw==, - } - lighterhtml@4.2.0: resolution: { @@ -5493,12 +6338,6 @@ packages: } engines: { node: ">=6.11.5" } - localforage@1.10.0: - resolution: - { - integrity: sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==, - } - locate-path@5.0.0: resolution: { @@ -5577,10 +6416,16 @@ packages: peerDependencies: react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 - magic-string@0.27.0: + magic-string@0.30.19: resolution: { - integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==, + integrity: sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==, + } + + magic-string@0.30.8: + resolution: + { + integrity: sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==, } engines: { node: ">=12" } @@ -5845,6 +6690,13 @@ packages: } engines: { node: ">=10" } + minimatch@8.0.4: + resolution: + { + integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==, + } + engines: { node: ">=16 || 14 >=14.17" } + minimatch@9.0.5: resolution: { @@ -5858,6 +6710,13 @@ packages: integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==, } + minipass@4.2.8: + resolution: + { + integrity: sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==, + } + engines: { node: ">=8" } + minipass@7.1.2: resolution: { @@ -5871,12 +6730,11 @@ packages: integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==, } - mkdirp@0.5.6: + module-details-from-path@1.0.4: resolution: { - integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==, + integrity: sha512-EGWKgxALGMgzvxYF1UyGTy0HXX/2vHLkw6+NvDKW2jypWbHpjQuj4UMcqQWXHERJhVGKikolT06G3bcKe4fi7w==, } - hasBin: true ms@2.1.3: resolution: @@ -5944,24 +6802,27 @@ packages: react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc - next@14.2.31: + next@15.5.3: resolution: { - integrity: sha512-Wyw1m4t8PhqG+or5a1U/Deb888YApC4rAez9bGhHkTsfwAy4SWKVro0GhEx4sox1856IbLhvhce2hAA6o8vkog==, + integrity: sha512-r/liNAx16SQj4D+XH/oI1dlpv9tdKJ6cONYPwwcCC46f2NjpaRWY+EKCzULfgQYV6YKXjHBchff2IZBSlZmJNw==, } - engines: { node: ">=18.17.0" } + engines: { node: ^18.18.0 || ^19.8.0 || >= 20.0.0 } hasBin: true peerDependencies: "@opentelemetry/api": ^1.1.0 - "@playwright/test": ^1.41.2 - react: ^18.2.0 - react-dom: ^18.2.0 + "@playwright/test": ^1.51.1 + 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 @@ -6304,6 +7165,26 @@ packages: integrity: sha512-eh31l019WICQ03pkF3FSzHxB8n07ItqIQ++G5UV8JX0zVOXzgTGCqnRR0jJ2h9U8/2uW4W4mtGJELt9kEV0CFQ==, } + pg-int8@1.0.1: + resolution: + { + integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==, + } + engines: { node: ">=4.0.0" } + + pg-protocol@1.10.3: + resolution: + { + integrity: sha512-6DIBgBQaTKDJyxnXaLiLR8wBpQQcGWuAESkRBX/t6OwA8YsqP+iVSiond2EDy6Y/dsGk8rh/jtax3js5NeV7JQ==, + } + + pg-types@2.2.0: + resolution: + { + integrity: sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==, + } + engines: { node: ">=4" } + picocolors@1.1.1: resolution: { @@ -6428,6 +7309,34 @@ packages: } engines: { node: ^10 || ^12 || >=14 } + postgres-array@2.0.0: + resolution: + { + integrity: sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==, + } + engines: { node: ">=4" } + + postgres-bytea@1.0.0: + resolution: + { + integrity: sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w==, + } + engines: { node: ">=0.10.0" } + + postgres-date@1.0.7: + resolution: + { + integrity: sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==, + } + engines: { node: ">=0.10.0" } + + postgres-interval@1.2.0: + resolution: + { + integrity: sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==, + } + engines: { node: ">=0.10.0" } + preact-render-to-string@5.2.6: resolution: { @@ -6750,6 +7659,13 @@ packages: } engines: { node: ">=0.10.0" } + require-in-the-middle@7.5.2: + resolution: + { + integrity: sha512-gAZ+kLqBdHarXB64XpAe2VCjB7rIRv+mU8tfRWziHRJ5umKsIHN2tLLv6EtMw7WCdP19S0ERVMldNvxYCHnhSQ==, + } + engines: { node: ">=8.6.0" } + reraf@1.1.1: resolution: { @@ -6818,12 +7734,12 @@ packages: } engines: { iojs: ">=1.0.0", node: ">=0.10.0" } - rollup@2.78.0: + rollup@4.50.1: resolution: { - integrity: sha512-4+YfbQC9QEVvKTanHhIAFVUFSRsezvQF8vFOJwtGfb9Bb+r014S+qryr9PSmw8x6sMnPkmFBGAvIFVQxvJxjtg==, + integrity: sha512-78E9voJHwnXQMiQdiqswVLZwJIzdBKJ1GdI5Zx6XwoFKUIk09/sSrr+05QFzvYb8q6Y9pPV45zzDuYa3907TZA==, } - engines: { node: ">=10.0.0" } + engines: { node: ">=18.0.0", npm: ">=8.0.0" } hasBin: true rtcstats@https://codeload.github.com/whereby/rtcstats/tar.gz/63bcb6420d76d34161b39e494524ae73aa6dd70d: @@ -6949,6 +7865,13 @@ packages: } engines: { node: ">= 0.4" } + sharp@0.34.3: + resolution: + { + integrity: sha512-eX2IQ6nFohW4DbvHIOLRB3MHFpYqaqvXd3Tp5e/T/dSH83fxaNJQRvDMhASmkNTsNTVF2/OOopzRCt7xokgPfg==, + } + engines: { node: ^18.17.0 || ^20.3.0 || >=21.0.0 } + shebang-command@2.0.0: resolution: { @@ -6963,6 +7886,12 @@ packages: } engines: { node: ">=8" } + shimmer@1.2.1: + resolution: + { + integrity: sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==, + } + side-channel-list@1.0.0: resolution: { @@ -7010,6 +7939,12 @@ packages: integrity: sha512-D1SaWpOW8afq1CZGWB8xTfrT3FekjQmPValrqncJMX7QFl8YwhrPTZvMCANLtgBwwdS+7zURyqxDDEmY558tTw==, } + simple-swizzle@0.2.2: + resolution: + { + integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==, + } + slash@3.0.0: resolution: { @@ -7115,13 +8050,6 @@ packages: } engines: { node: ">= 0.4" } - streamsearch@1.1.0: - resolution: - { - integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==, - } - engines: { node: ">=10.0.0" } - string-length@4.0.2: resolution: { @@ -7250,16 +8178,16 @@ packages: integrity: sha512-G4qppLgKu/k6FwRpHiGiKPaPTFcG3g4wNVX/Qsfu+RqQM30E7Tyu/TEgxcL9PNLF5pdRLwQdE3YKKf+KF2Dzlw==, } - styled-jsx@5.1.1: + styled-jsx@5.1.6: resolution: { - integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==, + 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" + react: ">= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0" peerDependenciesMeta: "@babel/core": optional: true @@ -7674,6 +8602,12 @@ packages: integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==, } + unplugin@1.0.1: + resolution: + { + integrity: sha512-aqrHaVBWW1JVKBHmGo33T5TxeL0qWzfvjWokObHA9bYmN7eNDkwOxmLjhioHl9878qDFMAaT51XNroRyuz7WxA==, + } + unrs-resolver@1.11.1: resolution: { @@ -7822,6 +8756,12 @@ packages: } engines: { node: ">=10.13.0" } + webpack-virtual-modules@0.5.0: + resolution: + { + integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==, + } + webpack@5.101.3: resolution: { @@ -7946,6 +8886,13 @@ packages: } engines: { node: ">=0.4.0" } + xtend@4.0.2: + resolution: + { + integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==, + } + engines: { node: ">=0.4" } + y18n@5.0.8: resolution: { @@ -8511,6 +9458,92 @@ snapshots: "@humanwhocodes/retry@0.4.3": {} + "@img/sharp-darwin-arm64@0.34.3": + optionalDependencies: + "@img/sharp-libvips-darwin-arm64": 1.2.0 + optional: true + + "@img/sharp-darwin-x64@0.34.3": + optionalDependencies: + "@img/sharp-libvips-darwin-x64": 1.2.0 + optional: true + + "@img/sharp-libvips-darwin-arm64@1.2.0": + optional: true + + "@img/sharp-libvips-darwin-x64@1.2.0": + optional: true + + "@img/sharp-libvips-linux-arm64@1.2.0": + optional: true + + "@img/sharp-libvips-linux-arm@1.2.0": + optional: true + + "@img/sharp-libvips-linux-ppc64@1.2.0": + optional: true + + "@img/sharp-libvips-linux-s390x@1.2.0": + optional: true + + "@img/sharp-libvips-linux-x64@1.2.0": + optional: true + + "@img/sharp-libvips-linuxmusl-arm64@1.2.0": + optional: true + + "@img/sharp-libvips-linuxmusl-x64@1.2.0": + optional: true + + "@img/sharp-linux-arm64@0.34.3": + optionalDependencies: + "@img/sharp-libvips-linux-arm64": 1.2.0 + optional: true + + "@img/sharp-linux-arm@0.34.3": + optionalDependencies: + "@img/sharp-libvips-linux-arm": 1.2.0 + optional: true + + "@img/sharp-linux-ppc64@0.34.3": + optionalDependencies: + "@img/sharp-libvips-linux-ppc64": 1.2.0 + optional: true + + "@img/sharp-linux-s390x@0.34.3": + optionalDependencies: + "@img/sharp-libvips-linux-s390x": 1.2.0 + optional: true + + "@img/sharp-linux-x64@0.34.3": + optionalDependencies: + "@img/sharp-libvips-linux-x64": 1.2.0 + optional: true + + "@img/sharp-linuxmusl-arm64@0.34.3": + optionalDependencies: + "@img/sharp-libvips-linuxmusl-arm64": 1.2.0 + optional: true + + "@img/sharp-linuxmusl-x64@0.34.3": + optionalDependencies: + "@img/sharp-libvips-linuxmusl-x64": 1.2.0 + optional: true + + "@img/sharp-wasm32@0.34.3": + dependencies: + "@emnapi/runtime": 1.4.5 + optional: true + + "@img/sharp-win32-arm64@0.34.3": + optional: true + + "@img/sharp-win32-ia32@0.34.3": + optional: true + + "@img/sharp-win32-x64@0.34.3": + optional: true + "@internationalized/date@3.8.2": dependencies: "@swc/helpers": 0.5.17 @@ -8742,8 +9775,7 @@ snapshots: "@jridgewell/source-map@0.3.11": dependencies: "@jridgewell/gen-mapping": 0.3.13 - "@jridgewell/trace-mapping": 0.3.30 - optional: true + "@jridgewell/trace-mapping": 0.3.31 "@jridgewell/sourcemap-codec@1.5.5": {} @@ -8752,6 +9784,11 @@ snapshots: "@jridgewell/resolve-uri": 3.1.2 "@jridgewell/sourcemap-codec": 1.5.5 + "@jridgewell/trace-mapping@0.3.31": + dependencies: + "@jridgewell/resolve-uri": 3.1.2 + "@jridgewell/sourcemap-codec": 1.5.5 + "@jridgewell/trace-mapping@0.3.9": dependencies: "@jridgewell/resolve-uri": 3.1.2 @@ -8765,37 +9802,34 @@ snapshots: "@tybys/wasm-util": 0.10.0 optional: true - "@next/env@14.2.31": {} + "@next/env@15.5.3": {} - "@next/eslint-plugin-next@14.2.31": + "@next/eslint-plugin-next@15.5.3": dependencies: - glob: 10.3.10 + fast-glob: 3.3.1 - "@next/swc-darwin-arm64@14.2.31": + "@next/swc-darwin-arm64@15.5.3": optional: true - "@next/swc-darwin-x64@14.2.31": + "@next/swc-darwin-x64@15.5.3": optional: true - "@next/swc-linux-arm64-gnu@14.2.31": + "@next/swc-linux-arm64-gnu@15.5.3": optional: true - "@next/swc-linux-arm64-musl@14.2.31": + "@next/swc-linux-arm64-musl@15.5.3": optional: true - "@next/swc-linux-x64-gnu@14.2.31": + "@next/swc-linux-x64-gnu@15.5.3": optional: true - "@next/swc-linux-x64-musl@14.2.31": + "@next/swc-linux-x64-musl@15.5.3": optional: true - "@next/swc-win32-arm64-msvc@14.2.31": + "@next/swc-win32-arm64-msvc@15.5.3": optional: true - "@next/swc-win32-ia32-msvc@14.2.31": - optional: true - - "@next/swc-win32-x64-msvc@14.2.31": + "@next/swc-win32-x64-msvc@15.5.3": optional: true "@nodelib/fs.scandir@2.1.5": @@ -8812,8 +9846,275 @@ snapshots: "@nolyfill/is-core-module@1.0.39": {} - "@opentelemetry/api@1.9.0": - optional: true + "@opentelemetry/api-logs@0.203.0": + dependencies: + "@opentelemetry/api": 1.9.0 + + "@opentelemetry/api-logs@0.204.0": + dependencies: + "@opentelemetry/api": 1.9.0 + + "@opentelemetry/api-logs@0.57.2": + dependencies: + "@opentelemetry/api": 1.9.0 + + "@opentelemetry/api@1.9.0": {} + + "@opentelemetry/context-async-hooks@2.1.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + + "@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/semantic-conventions": 1.37.0 + + "@opentelemetry/core@2.1.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/semantic-conventions": 1.37.0 + + "@opentelemetry/instrumentation-amqplib@0.50.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-connect@0.47.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + "@types/connect": 3.4.38 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-dataloader@0.21.1(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-express@0.52.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-fs@0.23.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-generic-pool@0.47.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-graphql@0.51.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-hapi@0.50.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-http@0.203.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.0.1(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + forwarded-parse: 2.1.2 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-ioredis@0.52.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.204.0(@opentelemetry/api@1.9.0) + "@opentelemetry/redis-common": 0.38.0 + "@opentelemetry/semantic-conventions": 1.37.0 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-kafkajs@0.13.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-knex@0.48.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-koa@0.51.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-lru-memoizer@0.48.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-mongodb@0.56.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-mongoose@0.50.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-mysql2@0.50.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + "@opentelemetry/sql-common": 0.41.0(@opentelemetry/api@1.9.0) + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-mysql@0.49.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + "@types/mysql": 2.15.27 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-pg@0.55.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + "@opentelemetry/sql-common": 0.41.0(@opentelemetry/api@1.9.0) + "@types/pg": 8.15.4 + "@types/pg-pool": 2.0.6 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-redis@0.51.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/redis-common": 0.38.0 + "@opentelemetry/semantic-conventions": 1.37.0 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-tedious@0.22.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + "@types/tedious": 4.0.14 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation-undici@0.14.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation@0.203.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/api-logs": 0.203.0 + import-in-the-middle: 1.14.2 + require-in-the-middle: 7.5.2 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation@0.204.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/api-logs": 0.204.0 + import-in-the-middle: 1.14.2 + require-in-the-middle: 7.5.2 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/instrumentation@0.57.2(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/api-logs": 0.57.2 + "@types/shimmer": 1.2.0 + import-in-the-middle: 1.14.2 + require-in-the-middle: 7.5.2 + semver: 7.7.2 + shimmer: 1.2.1 + transitivePeerDependencies: + - supports-color + + "@opentelemetry/redis-common@0.38.0": {} + + "@opentelemetry/resources@2.1.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + + "@opentelemetry/sdk-trace-base@2.1.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/resources": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + + "@opentelemetry/semantic-conventions@1.37.0": {} + + "@opentelemetry/sql-common@0.41.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) "@pandacss/is-valid-prop@0.54.0": {} @@ -8885,6 +10186,13 @@ snapshots: "@pkgr/core@0.2.9": {} + "@prisma/instrumentation@6.14.0(@opentelemetry/api@1.9.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/instrumentation": 0.57.2(@opentelemetry/api@1.9.0) + transitivePeerDependencies: + - supports-color + "@radix-ui/primitive@1.1.3": {} "@radix-ui/react-arrow@1.1.7(@types/react@18.2.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)": @@ -9098,131 +10406,289 @@ snapshots: optionalDependencies: react: 18.3.1 - "@rollup/plugin-commonjs@24.0.0(rollup@2.78.0)": + "@rollup/plugin-commonjs@28.0.1(rollup@4.50.1)": dependencies: - "@rollup/pluginutils": 5.2.0(rollup@2.78.0) + "@rollup/pluginutils": 5.2.0(rollup@4.50.1) commondir: 1.0.1 estree-walker: 2.0.2 - glob: 8.1.0 + fdir: 6.4.6(picomatch@4.0.3) is-reference: 1.2.1 - magic-string: 0.27.0 + magic-string: 0.30.19 + picomatch: 4.0.3 optionalDependencies: - rollup: 2.78.0 + rollup: 4.50.1 - "@rollup/pluginutils@5.2.0(rollup@2.78.0)": + "@rollup/pluginutils@5.2.0(rollup@4.50.1)": dependencies: "@types/estree": 1.0.8 estree-walker: 2.0.2 picomatch: 4.0.3 optionalDependencies: - rollup: 2.78.0 + rollup: 4.50.1 + + "@rollup/rollup-android-arm-eabi@4.50.1": + optional: true + + "@rollup/rollup-android-arm64@4.50.1": + optional: true + + "@rollup/rollup-darwin-arm64@4.50.1": + optional: true + + "@rollup/rollup-darwin-x64@4.50.1": + optional: true + + "@rollup/rollup-freebsd-arm64@4.50.1": + optional: true + + "@rollup/rollup-freebsd-x64@4.50.1": + optional: true + + "@rollup/rollup-linux-arm-gnueabihf@4.50.1": + optional: true + + "@rollup/rollup-linux-arm-musleabihf@4.50.1": + optional: true + + "@rollup/rollup-linux-arm64-gnu@4.50.1": + optional: true + + "@rollup/rollup-linux-arm64-musl@4.50.1": + optional: true + + "@rollup/rollup-linux-loongarch64-gnu@4.50.1": + optional: true + + "@rollup/rollup-linux-ppc64-gnu@4.50.1": + optional: true + + "@rollup/rollup-linux-riscv64-gnu@4.50.1": + optional: true + + "@rollup/rollup-linux-riscv64-musl@4.50.1": + optional: true + + "@rollup/rollup-linux-s390x-gnu@4.50.1": + optional: true + + "@rollup/rollup-linux-x64-gnu@4.50.1": + optional: true + + "@rollup/rollup-linux-x64-musl@4.50.1": + optional: true + + "@rollup/rollup-openharmony-arm64@4.50.1": + optional: true + + "@rollup/rollup-win32-arm64-msvc@4.50.1": + optional: true + + "@rollup/rollup-win32-ia32-msvc@4.50.1": + optional: true + + "@rollup/rollup-win32-x64-msvc@4.50.1": + optional: true "@rtsao/scc@1.1.0": {} "@rushstack/eslint-patch@1.12.0": {} - "@sentry-internal/tracing@7.77.0": + "@sentry-internal/browser-utils@10.11.0": dependencies: - "@sentry/core": 7.77.0 - "@sentry/types": 7.77.0 - "@sentry/utils": 7.77.0 + "@sentry/core": 10.11.0 - "@sentry/browser@7.77.0": + "@sentry-internal/feedback@10.11.0": dependencies: - "@sentry-internal/tracing": 7.77.0 - "@sentry/core": 7.77.0 - "@sentry/replay": 7.77.0 - "@sentry/types": 7.77.0 - "@sentry/utils": 7.77.0 + "@sentry/core": 10.11.0 - "@sentry/cli@1.77.3": + "@sentry-internal/replay-canvas@10.11.0": + dependencies: + "@sentry-internal/replay": 10.11.0 + "@sentry/core": 10.11.0 + + "@sentry-internal/replay@10.11.0": + dependencies: + "@sentry-internal/browser-utils": 10.11.0 + "@sentry/core": 10.11.0 + + "@sentry/babel-plugin-component-annotate@4.3.0": {} + + "@sentry/browser@10.11.0": + dependencies: + "@sentry-internal/browser-utils": 10.11.0 + "@sentry-internal/feedback": 10.11.0 + "@sentry-internal/replay": 10.11.0 + "@sentry-internal/replay-canvas": 10.11.0 + "@sentry/core": 10.11.0 + + "@sentry/bundler-plugin-core@4.3.0": + dependencies: + "@babel/core": 7.28.3 + "@sentry/babel-plugin-component-annotate": 4.3.0 + "@sentry/cli": 2.53.0 + dotenv: 16.6.1 + find-up: 5.0.0 + glob: 9.3.5 + magic-string: 0.30.8 + unplugin: 1.0.1 + transitivePeerDependencies: + - encoding + - supports-color + + "@sentry/cli-darwin@2.53.0": + optional: true + + "@sentry/cli-linux-arm64@2.53.0": + optional: true + + "@sentry/cli-linux-arm@2.53.0": + optional: true + + "@sentry/cli-linux-i686@2.53.0": + optional: true + + "@sentry/cli-linux-x64@2.53.0": + optional: true + + "@sentry/cli-win32-arm64@2.53.0": + optional: true + + "@sentry/cli-win32-i686@2.53.0": + optional: true + + "@sentry/cli-win32-x64@2.53.0": + optional: true + + "@sentry/cli@2.53.0": dependencies: https-proxy-agent: 5.0.1 - mkdirp: 0.5.6 node-fetch: 2.7.0 progress: 2.0.3 proxy-from-env: 1.1.0 which: 2.0.2 - transitivePeerDependencies: - - encoding - - supports-color - - "@sentry/core@7.77.0": - dependencies: - "@sentry/types": 7.77.0 - "@sentry/utils": 7.77.0 - - "@sentry/integrations@7.77.0": - dependencies: - "@sentry/core": 7.77.0 - "@sentry/types": 7.77.0 - "@sentry/utils": 7.77.0 - localforage: 1.10.0 - - "@sentry/nextjs@7.77.0(next@14.2.31(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react@18.3.1)(webpack@5.101.3)": - dependencies: - "@rollup/plugin-commonjs": 24.0.0(rollup@2.78.0) - "@sentry/core": 7.77.0 - "@sentry/integrations": 7.77.0 - "@sentry/node": 7.77.0 - "@sentry/react": 7.77.0(react@18.3.1) - "@sentry/types": 7.77.0 - "@sentry/utils": 7.77.0 - "@sentry/vercel-edge": 7.77.0 - "@sentry/webpack-plugin": 1.20.0 - chalk: 3.0.0 - next: 14.2.31(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0) - react: 18.3.1 - resolve: 1.22.8 - rollup: 2.78.0 - stacktrace-parser: 0.1.11 optionalDependencies: - webpack: 5.101.3 + "@sentry/cli-darwin": 2.53.0 + "@sentry/cli-linux-arm": 2.53.0 + "@sentry/cli-linux-arm64": 2.53.0 + "@sentry/cli-linux-i686": 2.53.0 + "@sentry/cli-linux-x64": 2.53.0 + "@sentry/cli-win32-arm64": 2.53.0 + "@sentry/cli-win32-i686": 2.53.0 + "@sentry/cli-win32-x64": 2.53.0 transitivePeerDependencies: - encoding - supports-color - "@sentry/node@7.77.0": + "@sentry/core@10.11.0": {} + + "@sentry/nextjs@10.11.0(@opentelemetry/context-async-hooks@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.1.0(@opentelemetry/api@1.9.0))(next@15.5.3(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react@18.3.1)(webpack@5.101.3)": dependencies: - "@sentry-internal/tracing": 7.77.0 - "@sentry/core": 7.77.0 - "@sentry/types": 7.77.0 - "@sentry/utils": 7.77.0 - https-proxy-agent: 5.0.1 + "@opentelemetry/api": 1.9.0 + "@opentelemetry/semantic-conventions": 1.37.0 + "@rollup/plugin-commonjs": 28.0.1(rollup@4.50.1) + "@sentry-internal/browser-utils": 10.11.0 + "@sentry/bundler-plugin-core": 4.3.0 + "@sentry/core": 10.11.0 + "@sentry/node": 10.11.0 + "@sentry/opentelemetry": 10.11.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.37.0) + "@sentry/react": 10.11.0(react@18.3.1) + "@sentry/vercel-edge": 10.11.0 + "@sentry/webpack-plugin": 4.3.0(webpack@5.101.3) + chalk: 3.0.0 + next: 15.5.3(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0) + resolve: 1.22.8 + rollup: 4.50.1 + stacktrace-parser: 0.1.11 + transitivePeerDependencies: + - "@opentelemetry/context-async-hooks" + - "@opentelemetry/core" + - "@opentelemetry/sdk-trace-base" + - encoding + - react + - supports-color + - webpack + + "@sentry/node-core@10.11.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.203.0(@opentelemetry/api@1.9.0))(@opentelemetry/resources@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.37.0)": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/context-async-hooks": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/resources": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/sdk-trace-base": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + "@sentry/core": 10.11.0 + "@sentry/opentelemetry": 10.11.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.37.0) + import-in-the-middle: 1.14.2 + + "@sentry/node@10.11.0": + dependencies: + "@opentelemetry/api": 1.9.0 + "@opentelemetry/context-async-hooks": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-amqplib": 0.50.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-connect": 0.47.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-dataloader": 0.21.1(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-express": 0.52.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-fs": 0.23.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-generic-pool": 0.47.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-graphql": 0.51.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-hapi": 0.50.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-http": 0.203.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-ioredis": 0.52.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-kafkajs": 0.13.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-knex": 0.48.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-koa": 0.51.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-lru-memoizer": 0.48.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-mongodb": 0.56.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-mongoose": 0.50.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-mysql": 0.49.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-mysql2": 0.50.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-pg": 0.55.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-redis": 0.51.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-tedious": 0.22.0(@opentelemetry/api@1.9.0) + "@opentelemetry/instrumentation-undici": 0.14.0(@opentelemetry/api@1.9.0) + "@opentelemetry/resources": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/sdk-trace-base": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + "@prisma/instrumentation": 6.14.0(@opentelemetry/api@1.9.0) + "@sentry/core": 10.11.0 + "@sentry/node-core": 10.11.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.203.0(@opentelemetry/api@1.9.0))(@opentelemetry/resources@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.37.0) + "@sentry/opentelemetry": 10.11.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.37.0) + import-in-the-middle: 1.14.2 + minimatch: 9.0.5 transitivePeerDependencies: - supports-color - "@sentry/react@7.77.0(react@18.3.1)": + "@sentry/opentelemetry@10.11.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.1.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.37.0)": dependencies: - "@sentry/browser": 7.77.0 - "@sentry/types": 7.77.0 - "@sentry/utils": 7.77.0 + "@opentelemetry/api": 1.9.0 + "@opentelemetry/context-async-hooks": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/core": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/sdk-trace-base": 2.1.0(@opentelemetry/api@1.9.0) + "@opentelemetry/semantic-conventions": 1.37.0 + "@sentry/core": 10.11.0 + + "@sentry/react@10.11.0(react@18.3.1)": + dependencies: + "@sentry/browser": 10.11.0 + "@sentry/core": 10.11.0 hoist-non-react-statics: 3.3.2 react: 18.3.1 - "@sentry/replay@7.77.0": + "@sentry/vercel-edge@10.11.0": dependencies: - "@sentry-internal/tracing": 7.77.0 - "@sentry/core": 7.77.0 - "@sentry/types": 7.77.0 - "@sentry/utils": 7.77.0 + "@opentelemetry/api": 1.9.0 + "@opentelemetry/resources": 2.1.0(@opentelemetry/api@1.9.0) + "@sentry/core": 10.11.0 - "@sentry/types@7.77.0": {} - - "@sentry/utils@7.77.0": + "@sentry/webpack-plugin@4.3.0(webpack@5.101.3)": dependencies: - "@sentry/types": 7.77.0 - - "@sentry/vercel-edge@7.77.0": - dependencies: - "@sentry/core": 7.77.0 - "@sentry/types": 7.77.0 - "@sentry/utils": 7.77.0 - - "@sentry/webpack-plugin@1.20.0": - dependencies: - "@sentry/cli": 1.77.3 - webpack-sources: 3.3.3 + "@sentry/bundler-plugin-core": 4.3.0 + unplugin: 1.0.1 + uuid: 9.0.1 + webpack: 5.101.3 transitivePeerDependencies: - encoding - supports-color @@ -9245,15 +10711,12 @@ snapshots: "@standard-schema/utils@0.3.0": {} - "@swc/counter@0.1.3": {} - - "@swc/helpers@0.5.17": + "@swc/helpers@0.5.15": dependencies: tslib: 2.8.1 - "@swc/helpers@0.5.5": + "@swc/helpers@0.5.17": dependencies: - "@swc/counter": 0.1.3 tslib: 2.8.1 "@tanstack/query-core@5.85.9": {} @@ -9301,6 +10764,10 @@ snapshots: dependencies: "@babel/types": 7.28.2 + "@types/connect@3.4.38": + dependencies: + "@types/node": 24.2.1 + "@types/debug@4.1.12": dependencies: "@types/ms": 2.1.0 @@ -9309,13 +10776,11 @@ snapshots: dependencies: "@types/eslint": 9.6.1 "@types/estree": 1.0.8 - optional: true "@types/eslint@9.6.1": dependencies: "@types/estree": 1.0.8 "@types/json-schema": 7.0.15 - optional: true "@types/estree-jsx@1.0.5": dependencies: @@ -9360,6 +10825,10 @@ snapshots: "@types/ms@2.1.0": {} + "@types/mysql@2.15.27": + dependencies: + "@types/node": 24.2.1 + "@types/node-fetch@2.6.13": dependencies: "@types/node": 24.2.1 @@ -9369,8 +10838,22 @@ snapshots: dependencies: undici-types: 7.10.0 + "@types/node@24.3.1": + dependencies: + undici-types: 7.10.0 + "@types/parse-json@4.0.2": {} + "@types/pg-pool@2.0.6": + dependencies: + "@types/pg": 8.15.4 + + "@types/pg@8.15.4": + dependencies: + "@types/node": 24.2.1 + pg-protocol: 1.10.3 + pg-types: 2.2.0 + "@types/prop-types@15.7.15": {} "@types/react@18.2.20": @@ -9381,8 +10864,14 @@ snapshots: "@types/scheduler@0.26.0": {} + "@types/shimmer@1.2.0": {} + "@types/stack-utils@2.0.3": {} + "@types/tedious@4.0.14": + dependencies: + "@types/node": 24.2.1 + "@types/ua-parser-js@0.7.39": {} "@types/unist@2.0.11": {} @@ -9565,26 +11054,20 @@ snapshots: dependencies: "@webassemblyjs/helper-numbers": 1.13.2 "@webassemblyjs/helper-wasm-bytecode": 1.13.2 - optional: true - "@webassemblyjs/floating-point-hex-parser@1.13.2": - optional: true + "@webassemblyjs/floating-point-hex-parser@1.13.2": {} - "@webassemblyjs/helper-api-error@1.13.2": - optional: true + "@webassemblyjs/helper-api-error@1.13.2": {} - "@webassemblyjs/helper-buffer@1.14.1": - optional: true + "@webassemblyjs/helper-buffer@1.14.1": {} "@webassemblyjs/helper-numbers@1.13.2": dependencies: "@webassemblyjs/floating-point-hex-parser": 1.13.2 "@webassemblyjs/helper-api-error": 1.13.2 "@xtuc/long": 4.2.2 - optional: true - "@webassemblyjs/helper-wasm-bytecode@1.13.2": - optional: true + "@webassemblyjs/helper-wasm-bytecode@1.13.2": {} "@webassemblyjs/helper-wasm-section@1.14.1": dependencies: @@ -9592,20 +11075,16 @@ snapshots: "@webassemblyjs/helper-buffer": 1.14.1 "@webassemblyjs/helper-wasm-bytecode": 1.13.2 "@webassemblyjs/wasm-gen": 1.14.1 - optional: true "@webassemblyjs/ieee754@1.13.2": dependencies: "@xtuc/ieee754": 1.2.0 - optional: true "@webassemblyjs/leb128@1.13.2": dependencies: "@xtuc/long": 4.2.2 - optional: true - "@webassemblyjs/utf8@1.13.2": - optional: true + "@webassemblyjs/utf8@1.13.2": {} "@webassemblyjs/wasm-edit@1.14.1": dependencies: @@ -9617,7 +11096,6 @@ snapshots: "@webassemblyjs/wasm-opt": 1.14.1 "@webassemblyjs/wasm-parser": 1.14.1 "@webassemblyjs/wast-printer": 1.14.1 - optional: true "@webassemblyjs/wasm-gen@1.14.1": dependencies: @@ -9626,7 +11104,6 @@ snapshots: "@webassemblyjs/ieee754": 1.13.2 "@webassemblyjs/leb128": 1.13.2 "@webassemblyjs/utf8": 1.13.2 - optional: true "@webassemblyjs/wasm-opt@1.14.1": dependencies: @@ -9634,7 +11111,6 @@ snapshots: "@webassemblyjs/helper-buffer": 1.14.1 "@webassemblyjs/wasm-gen": 1.14.1 "@webassemblyjs/wasm-parser": 1.14.1 - optional: true "@webassemblyjs/wasm-parser@1.14.1": dependencies: @@ -9644,13 +11120,11 @@ snapshots: "@webassemblyjs/ieee754": 1.13.2 "@webassemblyjs/leb128": 1.13.2 "@webassemblyjs/utf8": 1.13.2 - optional: true "@webassemblyjs/wast-printer@1.14.1": dependencies: "@webassemblyjs/ast": 1.14.1 "@xtuc/long": 4.2.2 - optional: true "@whereby.com/browser-sdk@3.13.1(@types/react@18.2.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)": dependencies: @@ -9709,11 +11183,9 @@ snapshots: - supports-color - utf-8-validate - "@xtuc/ieee754@1.2.0": - optional: true + "@xtuc/ieee754@1.2.0": {} - "@xtuc/long@4.2.2": - optional: true + "@xtuc/long@4.2.2": {} "@zag-js/accordion@1.21.0": dependencies: @@ -10216,10 +11688,13 @@ snapshots: "@zag-js/utils@1.21.0": {} + acorn-import-attributes@1.9.5(acorn@8.15.0): + dependencies: + acorn: 8.15.0 + acorn-import-phases@1.0.4(acorn@8.15.0): dependencies: acorn: 8.15.0 - optional: true acorn-jsx@5.3.2(acorn@8.15.0): dependencies: @@ -10243,13 +11718,11 @@ snapshots: ajv-formats@2.1.1(ajv@8.17.1): optionalDependencies: ajv: 8.17.1 - optional: true ajv-keywords@5.1.0(ajv@8.17.1): dependencies: ajv: 8.17.1 fast-deep-equal: 3.1.3 - optional: true ajv@6.12.6: dependencies: @@ -10264,7 +11737,6 @@ snapshots: fast-uri: 3.1.0 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 - optional: true ansi-colors@4.1.3: {} @@ -10523,10 +11995,6 @@ snapshots: base64-js: 1.5.1 ieee754: 1.2.1 - busboy@1.6.0: - dependencies: - streamsearch: 1.1.0 - call-bind-apply-helpers@1.0.2: dependencies: es-errors: 1.3.0 @@ -10598,13 +12066,14 @@ snapshots: dependencies: readdirp: 4.1.2 - chrome-trace-event@1.0.4: - optional: true + chrome-trace-event@1.0.4: {} ci-info@3.9.0: {} ci-info@4.3.0: {} + cjs-module-lexer@1.4.3: {} + cjs-module-lexer@2.1.0: {} classnames@2.5.1: {} @@ -10631,6 +12100,18 @@ snapshots: color-name@1.1.4: {} + color-string@1.9.1: + dependencies: + color-name: 1.1.4 + simple-swizzle: 0.2.2 + optional: true + + color@4.2.3: + dependencies: + color-convert: 2.0.1 + color-string: 1.9.1 + optional: true + colorette@1.4.0: {} combined-stream@1.0.8: @@ -10639,8 +12120,7 @@ snapshots: comma-separated-tokens@2.0.3: {} - commander@2.20.3: - optional: true + commander@2.20.3: {} commander@4.1.1: {} @@ -10750,6 +12230,9 @@ snapshots: detect-libc@1.0.3: optional: true + detect-libc@2.0.4: + optional: true + detect-newline@3.1.0: {} detect-node-es@1.1.0: {} @@ -10785,6 +12268,8 @@ snapshots: domsanitizer: 0.2.3 umap: 1.0.2 + dotenv@16.6.1: {} + dunder-proto@1.0.1: dependencies: call-bind-apply-helpers: 1.0.2 @@ -10819,7 +12304,6 @@ snapshots: dependencies: graceful-fs: 4.2.11 tapable: 2.2.3 - optional: true err-code@3.0.1: {} @@ -10907,8 +12391,7 @@ snapshots: iterator.prototype: 1.1.5 safe-array-concat: 1.1.3 - es-module-lexer@1.7.0: - optional: true + es-module-lexer@1.7.0: {} es-object-atoms@1.1.1: dependencies: @@ -10937,9 +12420,9 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-next@14.2.31(eslint@9.33.0(jiti@1.21.7))(typescript@5.9.2): + eslint-config-next@15.5.3(eslint@9.33.0(jiti@1.21.7))(typescript@5.9.2): dependencies: - "@next/eslint-plugin-next": 14.2.31 + "@next/eslint-plugin-next": 15.5.3 "@rushstack/eslint-patch": 1.12.0 "@typescript-eslint/eslint-plugin": 8.39.1(@typescript-eslint/parser@8.39.1(eslint@9.33.0(jiti@1.21.7))(typescript@5.9.2))(eslint@9.33.0(jiti@1.21.7))(typescript@5.9.2) "@typescript-eslint/parser": 8.39.1(eslint@9.33.0(jiti@1.21.7))(typescript@5.9.2) @@ -10949,7 +12432,7 @@ snapshots: eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.39.1(eslint@9.33.0(jiti@1.21.7))(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1)(eslint@9.33.0(jiti@1.21.7)) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.33.0(jiti@1.21.7)) eslint-plugin-react: 7.37.5(eslint@9.33.0(jiti@1.21.7)) - eslint-plugin-react-hooks: 5.0.0-canary-7118f5dd7-20230705(eslint@9.33.0(jiti@1.21.7)) + eslint-plugin-react-hooks: 5.2.0(eslint@9.33.0(jiti@1.21.7)) optionalDependencies: typescript: 5.9.2 transitivePeerDependencies: @@ -11039,7 +12522,7 @@ snapshots: safe-regex-test: 1.1.0 string.prototype.includes: 2.0.1 - eslint-plugin-react-hooks@5.0.0-canary-7118f5dd7-20230705(eslint@9.33.0(jiti@1.21.7)): + eslint-plugin-react-hooks@5.2.0(eslint@9.33.0(jiti@1.21.7)): dependencies: eslint: 9.33.0(jiti@1.21.7) @@ -11069,7 +12552,6 @@ snapshots: dependencies: esrecurse: 4.3.0 estraverse: 4.3.0 - optional: true eslint-scope@8.4.0: dependencies: @@ -11138,8 +12620,7 @@ snapshots: dependencies: estraverse: 5.3.0 - estraverse@4.3.0: - optional: true + estraverse@4.3.0: {} estraverse@5.3.0: {} @@ -11185,6 +12666,14 @@ snapshots: fast-deep-equal@3.1.3: {} + fast-glob@3.3.1: + dependencies: + "@nodelib/fs.stat": 2.0.5 + "@nodelib/fs.walk": 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + fast-glob@3.3.3: dependencies: "@nodelib/fs.stat": 2.0.5 @@ -11199,8 +12688,7 @@ snapshots: fast-safe-stringify@2.1.1: {} - fast-uri@3.1.0: - optional: true + fast-uri@3.1.0: {} fastq@1.19.1: dependencies: @@ -11262,6 +12750,8 @@ snapshots: hasown: 2.0.2 mime-types: 2.1.35 + forwarded-parse@2.1.2: {} + fraction.js@4.3.7: {} fs.realpath@1.0.0: {} @@ -11330,16 +12820,7 @@ snapshots: dependencies: is-glob: 4.0.3 - glob-to-regexp@0.4.1: - optional: true - - glob@10.3.10: - dependencies: - foreground-child: 3.3.1 - jackspeak: 2.3.6 - minimatch: 9.0.5 - minipass: 7.1.2 - path-scurry: 1.11.1 + glob-to-regexp@0.4.1: {} glob@10.4.5: dependencies: @@ -11359,13 +12840,12 @@ snapshots: once: 1.4.0 path-is-absolute: 1.0.1 - glob@8.1.0: + glob@9.3.5: dependencies: fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 5.1.6 - once: 1.4.0 + minimatch: 8.0.4 + minipass: 4.2.8 + path-scurry: 1.11.1 globals@14.0.0: {} @@ -11482,8 +12962,6 @@ snapshots: ignore@7.0.5: {} - immediate@3.0.6: {} - immer@10.1.1: {} immutable@5.1.3: {} @@ -11493,6 +12971,13 @@ snapshots: parent-module: 1.0.1 resolve-from: 4.0.0 + import-in-the-middle@1.14.2: + dependencies: + acorn: 8.15.0 + acorn-import-attributes: 1.9.5(acorn@8.15.0) + cjs-module-lexer: 1.4.3 + module-details-from-path: 1.0.4 + import-local@3.2.0: dependencies: pkg-dir: 4.2.0 @@ -11557,6 +13042,9 @@ snapshots: is-arrayish@0.2.1: {} + is-arrayish@0.3.2: + optional: true + is-async-function@2.1.1: dependencies: async-function: 1.0.0 @@ -11728,12 +13216,6 @@ snapshots: has-symbols: 1.1.0 set-function-name: 2.0.2 - jackspeak@2.3.6: - dependencies: - "@isaacs/cliui": 8.0.2 - optionalDependencies: - "@pkgjs/parseargs": 0.11.0 - jackspeak@3.4.3: dependencies: "@isaacs/cliui": 8.0.2 @@ -12042,10 +13524,9 @@ snapshots: jest-worker@27.5.1: dependencies: - "@types/node": 24.2.1 + "@types/node": 24.3.1 merge-stream: 2.0.0 supports-color: 8.1.1 - optional: true jest-worker@29.7.0: dependencies: @@ -12136,10 +13617,6 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 - lie@3.1.1: - dependencies: - immediate: 3.0.6 - lighterhtml@4.2.0: dependencies: "@ungap/create-content": 0.2.0 @@ -12156,12 +13633,7 @@ snapshots: lines-and-columns@1.2.4: {} - loader-runner@4.3.0: - optional: true - - localforage@1.10.0: - dependencies: - lie: 3.1.1 + loader-runner@4.3.0: {} locate-path@5.0.0: dependencies: @@ -12199,7 +13671,11 @@ snapshots: dependencies: react: 18.3.1 - magic-string@0.27.0: + magic-string@0.30.19: + dependencies: + "@jridgewell/sourcemap-codec": 1.5.5 + + magic-string@0.30.8: dependencies: "@jridgewell/sourcemap-codec": 1.5.5 @@ -12478,19 +13954,23 @@ snapshots: dependencies: brace-expansion: 2.0.2 + minimatch@8.0.4: + dependencies: + brace-expansion: 2.0.2 + minimatch@9.0.5: dependencies: brace-expansion: 2.0.2 minimist@1.2.8: {} + minipass@4.2.8: {} + minipass@7.1.2: {} mitt@3.0.1: {} - mkdirp@0.5.6: - dependencies: - minimist: 1.2.8 + module-details-from-path@1.0.4: {} ms@2.1.3: {} @@ -12508,13 +13988,13 @@ snapshots: neo-async@2.6.2: {} - next-auth@4.24.11(next@14.2.31(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + next-auth@4.24.11(next@15.5.3(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: "@babel/runtime": 7.28.2 "@panva/hkdf": 1.2.1 cookie: 0.7.2 jose: 4.15.9 - next: 14.2.31(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0) + next: 15.5.3(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0) oauth: 0.9.15 openid-client: 5.7.1 preact: 10.27.0 @@ -12528,29 +14008,27 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - next@14.2.31(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0): + next@15.5.3(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0): dependencies: - "@next/env": 14.2.31 - "@swc/helpers": 0.5.5 - busboy: 1.6.0 + "@next/env": 15.5.3 + "@swc/helpers": 0.5.15 caniuse-lite: 1.0.30001734 - graceful-fs: 4.2.11 postcss: 8.4.31 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - styled-jsx: 5.1.1(@babel/core@7.28.3)(babel-plugin-macros@3.1.0)(react@18.3.1) + styled-jsx: 5.1.6(@babel/core@7.28.3)(babel-plugin-macros@3.1.0)(react@18.3.1) optionalDependencies: - "@next/swc-darwin-arm64": 14.2.31 - "@next/swc-darwin-x64": 14.2.31 - "@next/swc-linux-arm64-gnu": 14.2.31 - "@next/swc-linux-arm64-musl": 14.2.31 - "@next/swc-linux-x64-gnu": 14.2.31 - "@next/swc-linux-x64-musl": 14.2.31 - "@next/swc-win32-arm64-msvc": 14.2.31 - "@next/swc-win32-ia32-msvc": 14.2.31 - "@next/swc-win32-x64-msvc": 14.2.31 + "@next/swc-darwin-arm64": 15.5.3 + "@next/swc-darwin-x64": 15.5.3 + "@next/swc-linux-arm64-gnu": 15.5.3 + "@next/swc-linux-arm64-musl": 15.5.3 + "@next/swc-linux-x64-gnu": 15.5.3 + "@next/swc-linux-x64-musl": 15.5.3 + "@next/swc-win32-arm64-msvc": 15.5.3 + "@next/swc-win32-x64-msvc": 15.5.3 "@opentelemetry/api": 1.9.0 sass: 1.90.0 + sharp: 0.34.3 transitivePeerDependencies: - "@babel/core" - babel-plugin-macros @@ -12576,12 +14054,12 @@ snapshots: dependencies: path-key: 3.1.1 - nuqs@2.4.3(next@14.2.31(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react@18.3.1): + nuqs@2.4.3(next@15.5.3(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0))(react@18.3.1): dependencies: mitt: 3.0.1 react: 18.3.1 optionalDependencies: - next: 14.2.31(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0) + next: 15.5.3(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.90.0) oauth@0.9.15: {} @@ -12749,6 +14227,18 @@ snapshots: perfect-freehand@1.2.2: {} + pg-int8@1.0.1: {} + + pg-protocol@1.10.3: {} + + pg-types@2.2.0: + dependencies: + pg-int8: 1.0.1 + postgres-array: 2.0.0 + postgres-bytea: 1.0.0 + postgres-date: 1.0.7 + postgres-interval: 1.2.0 + picocolors@1.1.1: {} picomatch@2.3.1: {} @@ -12811,6 +14301,16 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 + postgres-array@2.0.0: {} + + postgres-bytea@1.0.0: {} + + postgres-date@1.0.7: {} + + postgres-interval@1.2.0: + dependencies: + xtend: 4.0.2 + preact-render-to-string@5.2.6(preact@10.27.0): dependencies: preact: 10.27.0 @@ -13014,6 +14514,14 @@ snapshots: require-from-string@2.0.2: {} + require-in-the-middle@7.5.2: + dependencies: + debug: 4.4.1(supports-color@9.4.0) + module-details-from-path: 1.0.4 + resolve: 1.22.10 + transitivePeerDependencies: + - supports-color + reraf@1.1.1: {} reselect@5.1.1: {} @@ -13048,8 +14556,31 @@ snapshots: reusify@1.1.0: {} - rollup@2.78.0: + rollup@4.50.1: + dependencies: + "@types/estree": 1.0.8 optionalDependencies: + "@rollup/rollup-android-arm-eabi": 4.50.1 + "@rollup/rollup-android-arm64": 4.50.1 + "@rollup/rollup-darwin-arm64": 4.50.1 + "@rollup/rollup-darwin-x64": 4.50.1 + "@rollup/rollup-freebsd-arm64": 4.50.1 + "@rollup/rollup-freebsd-x64": 4.50.1 + "@rollup/rollup-linux-arm-gnueabihf": 4.50.1 + "@rollup/rollup-linux-arm-musleabihf": 4.50.1 + "@rollup/rollup-linux-arm64-gnu": 4.50.1 + "@rollup/rollup-linux-arm64-musl": 4.50.1 + "@rollup/rollup-linux-loongarch64-gnu": 4.50.1 + "@rollup/rollup-linux-ppc64-gnu": 4.50.1 + "@rollup/rollup-linux-riscv64-gnu": 4.50.1 + "@rollup/rollup-linux-riscv64-musl": 4.50.1 + "@rollup/rollup-linux-s390x-gnu": 4.50.1 + "@rollup/rollup-linux-x64-gnu": 4.50.1 + "@rollup/rollup-linux-x64-musl": 4.50.1 + "@rollup/rollup-openharmony-arm64": 4.50.1 + "@rollup/rollup-win32-arm64-msvc": 4.50.1 + "@rollup/rollup-win32-ia32-msvc": 4.50.1 + "@rollup/rollup-win32-x64-msvc": 4.50.1 fsevents: 2.3.3 rtcstats@https://codeload.github.com/whereby/rtcstats/tar.gz/63bcb6420d76d34161b39e494524ae73aa6dd70d: @@ -13100,7 +14631,6 @@ snapshots: ajv: 8.17.1 ajv-formats: 2.1.1(ajv@8.17.1) ajv-keywords: 5.1.0(ajv@8.17.1) - optional: true sdp-transform@2.15.0: {} @@ -13113,7 +14643,6 @@ snapshots: serialize-javascript@6.0.2: dependencies: randombytes: 2.1.0 - optional: true set-function-length@1.2.2: dependencies: @@ -13137,12 +14666,44 @@ snapshots: es-errors: 1.3.0 es-object-atoms: 1.1.1 + sharp@0.34.3: + dependencies: + color: 4.2.3 + detect-libc: 2.0.4 + semver: 7.7.2 + optionalDependencies: + "@img/sharp-darwin-arm64": 0.34.3 + "@img/sharp-darwin-x64": 0.34.3 + "@img/sharp-libvips-darwin-arm64": 1.2.0 + "@img/sharp-libvips-darwin-x64": 1.2.0 + "@img/sharp-libvips-linux-arm": 1.2.0 + "@img/sharp-libvips-linux-arm64": 1.2.0 + "@img/sharp-libvips-linux-ppc64": 1.2.0 + "@img/sharp-libvips-linux-s390x": 1.2.0 + "@img/sharp-libvips-linux-x64": 1.2.0 + "@img/sharp-libvips-linuxmusl-arm64": 1.2.0 + "@img/sharp-libvips-linuxmusl-x64": 1.2.0 + "@img/sharp-linux-arm": 0.34.3 + "@img/sharp-linux-arm64": 0.34.3 + "@img/sharp-linux-ppc64": 0.34.3 + "@img/sharp-linux-s390x": 0.34.3 + "@img/sharp-linux-x64": 0.34.3 + "@img/sharp-linuxmusl-arm64": 0.34.3 + "@img/sharp-linuxmusl-x64": 0.34.3 + "@img/sharp-wasm32": 0.34.3 + "@img/sharp-win32-arm64": 0.34.3 + "@img/sharp-win32-ia32": 0.34.3 + "@img/sharp-win32-x64": 0.34.3 + optional: true + shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 shebang-regex@3.0.0: {} + shimmer@1.2.1: {} + side-channel-list@1.0.0: dependencies: es-errors: 1.3.0 @@ -13187,6 +14748,11 @@ snapshots: transitivePeerDependencies: - supports-color + simple-swizzle@0.2.2: + dependencies: + is-arrayish: 0.3.2 + optional: true + slash@3.0.0: {} socket.io-client@4.7.2: @@ -13218,7 +14784,6 @@ snapshots: dependencies: buffer-from: 1.1.2 source-map: 0.6.1 - optional: true source-map@0.5.7: {} @@ -13247,8 +14812,6 @@ snapshots: es-errors: 1.3.0 internal-slot: 1.1.0 - streamsearch@1.1.0: {} - string-length@4.0.2: dependencies: char-regex: 1.0.2 @@ -13349,7 +14912,7 @@ snapshots: dependencies: inline-style-parser: 0.2.4 - styled-jsx@5.1.1(@babel/core@7.28.3)(babel-plugin-macros@3.1.0)(react@18.3.1): + styled-jsx@5.1.6(@babel/core@7.28.3)(babel-plugin-macros@3.1.0)(react@18.3.1): dependencies: client-only: 0.0.1 react: 18.3.1 @@ -13414,18 +14977,16 @@ snapshots: transitivePeerDependencies: - ts-node - tapable@2.2.3: - optional: true + tapable@2.2.3: {} terser-webpack-plugin@5.3.14(webpack@5.101.3): dependencies: - "@jridgewell/trace-mapping": 0.3.30 + "@jridgewell/trace-mapping": 0.3.31 jest-worker: 27.5.1 schema-utils: 4.3.2 serialize-javascript: 6.0.2 terser: 5.44.0 webpack: 5.101.3 - optional: true terser@5.44.0: dependencies: @@ -13433,7 +14994,6 @@ snapshots: acorn: 8.15.0 commander: 2.20.3 source-map-support: 0.5.21 - optional: true test-exclude@6.0.0: dependencies: @@ -13638,6 +15198,13 @@ snapshots: unist-util-is: 6.0.0 unist-util-visit-parents: 6.0.1 + unplugin@1.0.1: + dependencies: + acorn: 8.15.0 + chokidar: 3.6.0 + webpack-sources: 3.3.3 + webpack-virtual-modules: 0.5.0 + unrs-resolver@1.11.1: dependencies: napi-postinstall: 0.3.3 @@ -13730,7 +15297,6 @@ snapshots: dependencies: glob-to-regexp: 0.4.1 graceful-fs: 4.2.11 - optional: true wavesurfer.js@7.10.1: {} @@ -13738,6 +15304,8 @@ snapshots: webpack-sources@3.3.3: {} + webpack-virtual-modules@0.5.0: {} + webpack@5.101.3: dependencies: "@types/eslint-scope": 3.7.7 @@ -13769,7 +15337,6 @@ snapshots: - "@swc/core" - esbuild - uglify-js - optional: true webrtc-adapter@9.0.3: dependencies: @@ -13852,6 +15419,8 @@ snapshots: xmlhttprequest-ssl@2.0.0: {} + xtend@4.0.2: {} + y18n@5.0.8: {} yallist@3.1.1: {}