From d881a0a4d3ecc5f5a8c6ab5bec966bd353689016 Mon Sep 17 00:00:00 2001 From: Olmo Maldonado Date: Fri, 23 Jan 2026 22:32:21 -0800 Subject: [PATCH 1/3] add api key support for bedrock --- packages/proxy/package.json | 2 +- packages/proxy/schema/secrets.ts | 5 +- packages/proxy/src/providers/bedrock.ts | 95 +- pnpm-lock.yaml | 1378 +++++++++++++---------- 4 files changed, 826 insertions(+), 654 deletions(-) diff --git a/packages/proxy/package.json b/packages/proxy/package.json index ea11f745..c03b0ad4 100644 --- a/packages/proxy/package.json +++ b/packages/proxy/package.json @@ -101,7 +101,7 @@ }, "dependencies": { "@anthropic-ai/sdk": "^0.71.2", - "@aws-sdk/client-bedrock-runtime": "^3.806.0", + "@aws-sdk/client-bedrock-runtime": "^3.975.0", "@breezystack/lamejs": "^1.2.7", "@openapi-contrib/json-schema-to-openapi-schema": "^4.2.0", "@opentelemetry/api": "1.9.0", diff --git a/packages/proxy/schema/secrets.ts b/packages/proxy/schema/secrets.ts index 4ab582b8..25932ad9 100644 --- a/packages/proxy/schema/secrets.ts +++ b/packages/proxy/schema/secrets.ts @@ -37,7 +37,10 @@ export type AzureEntraSecret = z.infer; export const BedrockMetadataSchema = BaseMetadataSchema.merge( z.object({ region: z.string().min(1, "Region cannot be empty"), - access_key: z.string().min(1, "Access key cannot be empty"), + auth_type: z + .enum(["iam_credentials", "api_key"]) + .default("iam_credentials"), + access_key: z.string().nullish(), session_token: z.string().nullish(), api_base: z.union([z.string().url(), z.string().length(0)]).nullish(), }), diff --git a/packages/proxy/src/providers/bedrock.ts b/packages/proxy/src/providers/bedrock.ts index 3a7ebd41..a7100852 100644 --- a/packages/proxy/src/providers/bedrock.ts +++ b/packages/proxy/src/providers/bedrock.ts @@ -118,6 +118,7 @@ export async function fetchBedrockAnthropicMessages({ }): Promise { const { region, + auth_type = "iam_credentials", access_key: accessKeyId, session_token: sessionToken, } = BedrockMetadataSchema.parse(metadata); @@ -128,6 +129,7 @@ export async function fetchBedrockAnthropicMessages({ }) .passthrough() .parse(body); + const brc = new BedrockRuntimeClient({ endpoint: type === "bedrock" && @@ -137,11 +139,18 @@ export async function fetchBedrockAnthropicMessages({ ? metadata.api_base : undefined, region, - credentials: { - accessKeyId, - secretAccessKey: secret, - ...(sessionToken ? { sessionToken } : {}), - }, + ...(auth_type === "api_key" + ? { + token: { token: secret }, + authSchemePreference: ["httpBearerAuth"], + } + : { + credentials: { + accessKeyId: accessKeyId!, + secretAccessKey: secret, + ...(sessionToken ? { sessionToken } : {}), + }, + }), }); const input = { contentType: "application/json", @@ -208,21 +217,7 @@ export async function fetchBedrockAnthropic({ } const metadata = secret.metadata as BedrockMetadata; - - const brt = new BedrockRuntimeClient({ - endpoint: - metadata.api_base && metadata.api_base.length > 0 - ? metadata.api_base - : undefined, - region: metadata.region, - credentials: { - accessKeyId: metadata.access_key, - secretAccessKey: secret.secret, - ...(metadata.session_token - ? { sessionToken: metadata.session_token } - : {}), - }, - }); + const auth_type = metadata.auth_type ?? "iam_credentials"; const input = { body: new TextEncoder().encode( @@ -239,6 +234,28 @@ export async function fetchBedrockAnthropic({ status: 200, }); + const brt = new BedrockRuntimeClient({ + endpoint: + metadata.api_base && metadata.api_base.length > 0 + ? metadata.api_base + : undefined, + region: metadata.region, + ...(auth_type === "api_key" + ? { + token: { token: secret.secret }, + authSchemePreference: ["httpBearerAuth"], + } + : { + credentials: { + accessKeyId: metadata.access_key!, + secretAccessKey: secret.secret, + ...(metadata.session_token + ? { sessionToken: metadata.session_token } + : {}), + }, + }), + }); + let usage: Partial = {}; let responseStream; if (stream) { @@ -543,21 +560,7 @@ export async function fetchConverse({ } const metadata = secret.metadata as BedrockMetadata; - - const brt = new BedrockRuntimeClient({ - endpoint: - metadata.api_base && metadata.api_base.length > 0 - ? metadata.api_base - : undefined, - region: metadata.region, - credentials: { - accessKeyId: metadata.access_key, - secretAccessKey: secret.secret, - ...(metadata.session_token - ? { sessionToken: metadata.session_token } - : {}), - }, - }); + const auth_type = metadata.auth_type ?? "iam_credentials"; let messages: Array | undefined = undefined; let system: SystemContentBlock[] | undefined = undefined; @@ -674,6 +677,28 @@ export async function fetchConverse({ status: 200, }); + const brt = new BedrockRuntimeClient({ + endpoint: + metadata.api_base && metadata.api_base.length > 0 + ? metadata.api_base + : undefined, + region: metadata.region, + ...(auth_type === "api_key" + ? { + token: { token: secret.secret }, + authSchemePreference: ["httpBearerAuth"], + } + : { + credentials: { + accessKeyId: metadata.access_key!, + secretAccessKey: secret.secret, + ...(metadata.session_token + ? { sessionToken: metadata.session_token } + : {}), + }, + }), + }); + let responseStream; try { if (doStream) { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9340d811..8fa0806f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,7 +16,7 @@ importers: version: 8.57.1 eslint-config-turbo: specifier: latest - version: 2.7.4(eslint@8.57.1)(turbo@2.5.6) + version: 2.7.5(eslint@8.57.1)(turbo@2.5.6) prettier: specifier: 3.3.2 version: 3.3.2 @@ -49,7 +49,7 @@ importers: version: 2.1.0(@opentelemetry/api@1.9.0) braintrust: specifier: ^0.3.7 - version: 0.3.7(@aws-sdk/credential-provider-web-identity@3.817.0)(zod@3.25.34) + version: 0.3.7(@aws-sdk/credential-provider-web-identity@3.972.1)(zod@3.25.34) dotenv: specifier: ^16.3.1 version: 16.3.1 @@ -178,7 +178,7 @@ importers: version: 17.0.45 '@types/react': specifier: latest - version: 19.2.8 + version: 19.2.9 autoprefixer: specifier: ^10.4.14 version: 10.4.14(postcss@8.4.38) @@ -187,7 +187,7 @@ importers: version: 8.56.0 eslint-config-next: specifier: canary - version: 16.1.1-canary.22(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0)(typescript@4.7.4) + version: 16.2.0-canary.6(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0)(typescript@4.7.4) postcss: specifier: ^8.4.21 version: 8.4.38 @@ -207,8 +207,8 @@ importers: specifier: ^0.71.2 version: 0.71.2(zod@3.25.34) '@aws-sdk/client-bedrock-runtime': - specifier: ^3.806.0 - version: 3.817.0 + specifier: ^3.975.0 + version: 3.975.0 '@breezystack/lamejs': specifier: ^1.2.7 version: 1.2.7 @@ -385,106 +385,138 @@ packages: '@aws-crypto/util@5.2.0': resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==} - '@aws-sdk/client-bedrock-runtime@3.817.0': - resolution: {integrity: sha512-fG3QAjIEq7P0a134E2P8r4qw/V6rL0X5voUPIcXte1oNKUXUjNXJb21N/NGmcDLCUVWvYXb24dD0YXyQ2kwZdA==} - engines: {node: '>=18.0.0'} + '@aws-sdk/client-bedrock-runtime@3.975.0': + resolution: {integrity: sha512-ZptHL8Z8y2m6sq1ksl+MIGoXxzRkWuOzqbGOd+P5htwIX0kEvzmxPwAqyCoiULn1OjS+kB+TCxfvBUVyglq3MQ==} + engines: {node: '>=20.0.0'} - '@aws-sdk/client-sso@3.817.0': - resolution: {integrity: sha512-fCh5rUHmWmWDvw70NNoWpE5+BRdtNi45kDnIoeoszqVg7UKF79SlG+qYooUT52HKCgDNHqgbWaXxMOSqd2I/OQ==} - engines: {node: '>=18.0.0'} + '@aws-sdk/client-sso@3.974.0': + resolution: {integrity: sha512-ci+GiM0c4ULo4D79UMcY06LcOLcfvUfiyt8PzNY0vbt5O8BfCPYf4QomwVgkNcLLCYmroO4ge2Yy1EsLUlcD6g==} + engines: {node: '>=20.0.0'} - '@aws-sdk/core@3.816.0': - resolution: {integrity: sha512-Lx50wjtyarzKpMFV6V+gjbSZDgsA/71iyifbClGUSiNPoIQ4OCV0KVOmAAj7mQRVvGJqUMWKVM+WzK79CjbjWA==} - engines: {node: '>=18.0.0'} + '@aws-sdk/core@3.973.1': + resolution: {integrity: sha512-Ocubx42QsMyVs9ANSmFpRm0S+hubWljpPLjOi9UFrtcnVJjrVJTzQ51sN0e5g4e8i8QZ7uY73zosLmgYL7kZTQ==} + engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-env@3.816.0': - resolution: {integrity: sha512-wUJZwRLe+SxPxRV9AENYBLrJZRrNIo+fva7ZzejsC83iz7hdfq6Rv6B/aHEdPwG/nQC4+q7UUvcRPlomyrpsBA==} - engines: {node: '>=18.0.0'} + '@aws-sdk/credential-provider-env@3.972.1': + resolution: {integrity: sha512-/etNHqnx96phy/SjI0HRC588o4vKH5F0xfkZ13yAATV7aNrb+5gYGNE6ePWafP+FuZ3HkULSSlJFj0AxgrAqYw==} + engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-http@3.816.0': - resolution: {integrity: sha512-gcWGzMQ7yRIF+ljTkR8Vzp7727UY6cmeaPrFQrvcFB8PhOqWpf7g0JsgOf5BSaP8CkkSQcTQHc0C5ZYAzUFwPg==} - engines: {node: '>=18.0.0'} + '@aws-sdk/credential-provider-http@3.972.2': + resolution: {integrity: sha512-mXgdaUfe5oM+tWKyeZ7Vh/iQ94FrkMky1uuzwTOmFADiRcSk5uHy/e3boEFedXiT/PRGzgBmqvJVK4F6lUISCg==} + engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-ini@3.817.0': - resolution: {integrity: sha512-kyEwbQyuXE+phWVzloMdkFv6qM6NOon+asMXY5W0fhDKwBz9zQLObDRWBrvQX9lmqq8BbDL1sCfZjOh82Y+RFw==} - engines: {node: '>=18.0.0'} + '@aws-sdk/credential-provider-ini@3.972.1': + resolution: {integrity: sha512-OdbJA3v+XlNDsrYzNPRUwr8l7gw1r/nR8l4r96MDzSBDU8WEo8T6C06SvwaXR8SpzsjO3sq5KMP86wXWg7Rj4g==} + engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-node@3.817.0': - resolution: {integrity: sha512-b5mz7av0Lhavs1Bz3Zb+jrs0Pki93+8XNctnVO0drBW98x1fM4AR38cWvGbM/w9F9Q0/WEH3TinkmrMPrP4T/w==} - engines: {node: '>=18.0.0'} + '@aws-sdk/credential-provider-login@3.972.1': + resolution: {integrity: sha512-CccqDGL6ZrF3/EFWZefvKW7QwwRdxlHUO8NVBKNVcNq6womrPDvqB6xc9icACtE0XB0a7PLoSTkAg8bQVkTO2w==} + engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-process@3.816.0': - resolution: {integrity: sha512-9Tm+AxMoV2Izvl5b9tyMQRbBwaex8JP06HN7ZeCXgC5sAsSN+o8dsThnEhf8jKN+uBpT6CLWKN1TXuUMrAmW1A==} - engines: {node: '>=18.0.0'} + '@aws-sdk/credential-provider-node@3.972.1': + resolution: {integrity: sha512-DwXPk9GfuU/xG9tmCyXFVkCr6X3W8ZCoL5Ptb0pbltEx1/LCcg7T+PBqDlPiiinNCD6ilIoMJDWsnJ8ikzZA7Q==} + engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-sso@3.817.0': - resolution: {integrity: sha512-gFUAW3VmGvdnueK1bh6TOcRX+j99Xm0men1+gz3cA4RE+rZGNy1Qjj8YHlv0hPwI9OnTPZquvPzA5fkviGREWg==} - engines: {node: '>=18.0.0'} + '@aws-sdk/credential-provider-process@3.972.1': + resolution: {integrity: sha512-bi47Zigu3692SJwdBvo8y1dEwE6B61stCwCFnuRWJVTfiM84B+VTSCV661CSWJmIZzmcy7J5J3kWyxL02iHj0w==} + engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-web-identity@3.817.0': - resolution: {integrity: sha512-A2kgkS9g6NY0OMT2f2EdXHpL17Ym81NhbGnQ8bRXPqESIi7TFypFD2U6osB2VnsFv+MhwM+Ke4PKXSmLun22/A==} - engines: {node: '>=18.0.0'} + '@aws-sdk/credential-provider-sso@3.972.1': + resolution: {integrity: sha512-dLZVNhM7wSgVUFsgVYgI5hb5Z/9PUkT46pk/SHrSmUqfx6YDvoV4YcPtaiRqviPpEGGiRtdQMEadyOKIRqulUQ==} + engines: {node: '>=20.0.0'} - '@aws-sdk/eventstream-handler-node@3.804.0': - resolution: {integrity: sha512-LZddQVBUCB86tZtLJRhqiDyIqr4hfRxZCcUp1fZSfpBMcf419lgcFRGWMR3J/kCWHQ0G05aor7fSeoeaxskuNQ==} - engines: {node: '>=18.0.0'} + '@aws-sdk/credential-provider-web-identity@3.972.1': + resolution: {integrity: sha512-YMDeYgi0u687Ay0dAq/pFPKuijrlKTgsaB/UATbxCs/FzZfMiG4If5ksywHmmW7MiYUF8VVv+uou3TczvLrN4w==} + engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-eventstream@3.804.0': - resolution: {integrity: sha512-3lPxZshOJoKSxIMUq8FCiIre+FZ1g/t+O7DHwOMB6EuzJ8lp5QyUeh1wE5iD/gB8VhWZoj90rGIaWCmT8ccEuA==} - engines: {node: '>=18.0.0'} + '@aws-sdk/eventstream-handler-node@3.972.1': + resolution: {integrity: sha512-sbPqSY+BjhHDTRUhCEvCY3lNL76FcPxiTuYesbSV0ZBfPT1JONjkAT8U6DIAy9C0ynlEuPfdVngMAOFDxP0kcQ==} + engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-host-header@3.804.0': - resolution: {integrity: sha512-bum1hLVBrn2lJCi423Z2fMUYtsbkGI2s4N+2RI2WSjvbaVyMSv/WcejIrjkqiiMR+2Y7m5exgoKeg4/TODLDPQ==} - engines: {node: '>=18.0.0'} + '@aws-sdk/middleware-eventstream@3.972.1': + resolution: {integrity: sha512-40iO9eYwycHmyZ5MnBRlQy35P7Aug3FRVAfrU8Lp88Ti66amJynvzgAuM+JaE/4LUTfFWigLfmdIp/d8CX625g==} + engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-logger@3.804.0': - resolution: {integrity: sha512-w/qLwL3iq0KOPQNat0Kb7sKndl9BtceigINwBU7SpkYWX9L/Lem6f8NPEKrC9Tl4wDBht3Yztub4oRTy/horJA==} - engines: {node: '>=18.0.0'} + '@aws-sdk/middleware-host-header@3.972.1': + resolution: {integrity: sha512-/R82lXLPmZ9JaUGSUdKtBp2k/5xQxvBT3zZWyKiBOhyulFotlfvdlrO8TnqstBimsl4lYEYySDL+W6ldFh6ALg==} + engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-recursion-detection@3.804.0': - resolution: {integrity: sha512-zqHOrvLRdsUdN/ehYfZ9Tf8svhbiLLz5VaWUz22YndFv6m9qaAcijkpAOlKexsv3nLBMJdSdJ6GUTAeIy3BZzw==} - engines: {node: '>=18.0.0'} + '@aws-sdk/middleware-logger@3.972.1': + resolution: {integrity: sha512-JGgFl6cHg9G2FHu4lyFIzmFN8KESBiRr84gLC3Aeni0Gt1nKm+KxWLBuha/RPcXxJygGXCcMM4AykkIwxor8RA==} + engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-user-agent@3.816.0': - resolution: {integrity: sha512-bHRSlWZ0xDsFR8E2FwDb//0Ff6wMkVx4O+UKsfyNlAbtqCiiHRt5ANNfKPafr95cN2CCxLxiPvFTFVblQM5TsQ==} - engines: {node: '>=18.0.0'} + '@aws-sdk/middleware-recursion-detection@3.972.1': + resolution: {integrity: sha512-taGzNRe8vPHjnliqXIHp9kBgIemLE/xCaRTMH1NH0cncHeaPcjxtnCroAAM9aOlPuKvBe2CpZESyvM1+D8oI7Q==} + engines: {node: '>=20.0.0'} - '@aws-sdk/nested-clients@3.817.0': - resolution: {integrity: sha512-vQ2E06A48STJFssueJQgxYD8lh1iGJoLJnHdshRDWOQb8gy1wVQR+a7MkPGhGR6lGoS0SCnF/Qp6CZhnwLsqsQ==} - engines: {node: '>=18.0.0'} + '@aws-sdk/middleware-user-agent@3.972.2': + resolution: {integrity: sha512-d+Exq074wy0X6wvShg/kmZVtkah+28vMuqCtuY3cydg8LUZOJBtbAolCpEJizSyb8mJJZF9BjWaTANXL4OYnkg==} + engines: {node: '>=20.0.0'} - '@aws-sdk/region-config-resolver@3.808.0': - resolution: {integrity: sha512-9x2QWfphkARZY5OGkl9dJxZlSlYM2l5inFeo2bKntGuwg4A4YUe5h7d5yJ6sZbam9h43eBrkOdumx03DAkQF9A==} - engines: {node: '>=18.0.0'} + '@aws-sdk/middleware-websocket@3.972.1': + resolution: {integrity: sha512-zej/2+u6KCEHUipHW/4KXwj+4PTJkrORwR4KHNHE8ATdzLf7hwu7HsPK+TyQXZSftH+VqYkFmTbyF9OPxOpwmw==} + engines: {node: '>= 14.0.0'} - '@aws-sdk/token-providers@3.817.0': - resolution: {integrity: sha512-CYN4/UO0VaqyHf46ogZzNrVX7jI3/CfiuktwKlwtpKA6hjf2+ivfgHSKzPpgPBcSEfiibA/26EeLuMnB6cpSrQ==} - engines: {node: '>=18.0.0'} + '@aws-sdk/nested-clients@3.974.0': + resolution: {integrity: sha512-k3dwdo/vOiHMJc9gMnkPl1BA5aQfTrZbz+8fiDkWrPagqAioZgmo5oiaOaeX0grObfJQKDtcpPFR4iWf8cgl8Q==} + engines: {node: '>=20.0.0'} - '@aws-sdk/types@3.804.0': - resolution: {integrity: sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==} - engines: {node: '>=18.0.0'} + '@aws-sdk/nested-clients@3.975.0': + resolution: {integrity: sha512-OkeFHPlQj2c/Y5bQGkX14pxhDWUGUFt3LRHhjcDKsSCw6lrxKcxN3WFZN0qbJwKNydP+knL5nxvfgKiCLpTLRA==} + engines: {node: '>=20.0.0'} - '@aws-sdk/util-endpoints@3.808.0': - resolution: {integrity: sha512-N6Lic98uc4ADB7fLWlzx+1uVnq04VgVjngZvwHoujcRg9YDhIg9dUDiTzD5VZv13g1BrPYmvYP1HhsildpGV6w==} - engines: {node: '>=18.0.0'} + '@aws-sdk/region-config-resolver@3.972.1': + resolution: {integrity: sha512-voIY8RORpxLAEgEkYaTFnkaIuRwVBEc+RjVZYcSSllPV+ZEKAacai6kNhJeE3D70Le+JCfvRb52tng/AVHY+jQ==} + engines: {node: '>=20.0.0'} + + '@aws-sdk/token-providers@3.974.0': + resolution: {integrity: sha512-cBykL0LiccKIgNhGWvQRTPvsBLPZxnmJU3pYxG538jpFX8lQtrCy1L7mmIHNEdxIdIGEPgAEHF8/JQxgBToqUQ==} + engines: {node: '>=20.0.0'} + + '@aws-sdk/token-providers@3.975.0': + resolution: {integrity: sha512-AWQt64hkVbDQ+CmM09wnvSk2mVyH4iRROkmYkr3/lmUtFNbE2L/fnw26sckZnUcFCsHPqbkQrcsZAnTcBLbH4w==} + engines: {node: '>=20.0.0'} + + '@aws-sdk/types@3.972.0': + resolution: {integrity: sha512-U7xBIbLSetONxb2bNzHyDgND3oKGoIfmknrEVnoEU4GUSs+0augUOIn9DIWGUO2ETcRFdsRUnmx9KhPT9Ojbug==} + engines: {node: '>=20.0.0'} + + '@aws-sdk/types@3.973.0': + resolution: {integrity: sha512-jYIdB7a7jhRTvyb378nsjyvJh1Si+zVduJ6urMNGpz8RjkmHZ+9vM2H07XaIB2Cfq0GhJRZYOfUCH8uqQhqBkQ==} + engines: {node: '>=20.0.0'} + + '@aws-sdk/util-endpoints@3.972.0': + resolution: {integrity: sha512-6JHsl1V/a1ZW8D8AFfd4R52fwZPnZ5H4U6DS8m/bWT8qad72NvbOFAC7U2cDtFs2TShqUO3TEiX/EJibtY3ijg==} + engines: {node: '>=20.0.0'} + + '@aws-sdk/util-format-url@3.972.1': + resolution: {integrity: sha512-8wJ4/XOLU/RIYBHsXsIOTR04bNmalC8F2YPMyf3oL8YC750M3Rv5WGywW0Fo07HCv770KXJOzVq03Gyl68moFg==} + engines: {node: '>=20.0.0'} '@aws-sdk/util-locate-window@3.535.0': resolution: {integrity: sha512-PHJ3SL6d2jpcgbqdgiPxkXpu7Drc2PYViwxSIqvvMKhDwzSB1W3mMvtpzwKM4IE7zLFodZo0GKjJ9AsoXndXhA==} engines: {node: '>=14.0.0'} - '@aws-sdk/util-user-agent-browser@3.804.0': - resolution: {integrity: sha512-KfW6T6nQHHM/vZBBdGn6fMyG/MgX5lq82TDdX4HRQRRuHKLgBWGpKXqqvBwqIaCdXwWHgDrg2VQups6GqOWW2A==} + '@aws-sdk/util-user-agent-browser@3.972.1': + resolution: {integrity: sha512-IgF55NFmJX8d9Wql9M0nEpk2eYbuD8G4781FN4/fFgwTXBn86DvlZJuRWDCMcMqZymnBVX7HW9r+3r9ylqfW0w==} - '@aws-sdk/util-user-agent-node@3.816.0': - resolution: {integrity: sha512-Q6dxmuj4hL7pudhrneWEQ7yVHIQRBFr0wqKLF1opwOi1cIePuoEbPyJ2jkel6PDEv1YMfvsAKaRshp6eNA8VHg==} - engines: {node: '>=18.0.0'} + '@aws-sdk/util-user-agent-node@3.972.1': + resolution: {integrity: sha512-oIs4JFcADzoZ0c915R83XvK2HltWupxNsXUIuZse2rgk7b97zTpkxaqXiH0h9ylh31qtgo/t8hp4tIqcsMrEbQ==} + engines: {node: '>=20.0.0'} peerDependencies: aws-crt: '>=1.0.0' peerDependenciesMeta: aws-crt: optional: true + '@aws-sdk/xml-builder@3.972.1': + resolution: {integrity: sha512-6zZGlPOqn7Xb+25MAXGb1JhgvaC5HjZj6GzszuVrnEgbhvzBRFGKYemuHBV4bho+dtqeYKPgaZUv7/e80hIGNg==} + engines: {node: '>=20.0.0'} + + '@aws/lambda-invoke-store@0.2.3': + resolution: {integrity: sha512-oLvsaPMTBejkkmHhjf09xTgk71mOqyr/409NKhRIL08If7AhVfUsJhVsx386uJaqNd42v9kWamQ9lFbkoC2dYw==} + engines: {node: '>=18.0.0'} + '@babel/code-frame@7.27.1': resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} engines: {node: '>=6.9.0'} @@ -1512,8 +1544,8 @@ packages: '@next/env@14.2.34': resolution: {integrity: sha512-iuGW/UM+EZbn2dm+aLx+avo1rVap+ASoFr7oLpTBVW2G2DqhD5l8Fme9IsLZ6TTsp0ozVSFswidiHK1NGNO+pg==} - '@next/eslint-plugin-next@16.1.1-canary.22': - resolution: {integrity: sha512-EfRnbLSMYHx8U6YbalpjnMvB3A5IAtsgGZEsyWXBPeUoK96SOndb8a+nCgwvDB99v7I6PoYXSfWF1bPPqOPdGg==} + '@next/eslint-plugin-next@16.2.0-canary.6': + resolution: {integrity: sha512-qj1kr+tiGarOoLzJVKFMlHocaLxMellMh5lRIA9J0LTt660zQVnlb9nmiKFm/+uwCZBA/18f2P47Ud0GqQpo2A==} '@next/swc-darwin-arm64@14.2.33': resolution: {integrity: sha512-HqYnb6pxlsshoSTubdXKu15g3iivcbsMXg4bYpjL2iS/V6aQot+iyF4BUc2qA/J/n55YtvE4PHMKWBKGCF/+wA==} @@ -2019,192 +2051,196 @@ packages: resolution: {integrity: sha512-7F/yz2IphV39hiS2zB4QYVkivrptHHh0K8qJJd9HhuWSdvf8AN7NpebW3CcDZDBQsUPMoDKWsY2WWgW7bqOcfA==} engines: {node: '>=18'} - '@smithy/abort-controller@4.0.3': - resolution: {integrity: sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==} + '@smithy/abort-controller@4.2.8': + resolution: {integrity: sha512-peuVfkYHAmS5ybKxWcfraK7WBBP0J+rkfUcbHJJKQ4ir3UAUNQI+Y4Vt/PqSzGqgloJ5O1dk7+WzNL8wcCSXbw==} engines: {node: '>=18.0.0'} - '@smithy/config-resolver@4.1.3': - resolution: {integrity: sha512-N5e7ofiyYDmHxnPnqF8L4KtsbSDwyxFRfDK9bp1d9OyPO4ytRLd0/XxCqi5xVaaqB65v4woW8uey6jND6zxzxQ==} + '@smithy/config-resolver@4.4.6': + resolution: {integrity: sha512-qJpzYC64kaj3S0fueiu3kXm8xPrR3PcXDPEgnaNMRn0EjNSZFoFjvbUp0YUDsRhN1CB90EnHJtbxWKevnH99UQ==} engines: {node: '>=18.0.0'} - '@smithy/core@3.4.0': - resolution: {integrity: sha512-dDYISQo7k0Ml/rXlFIjkTmTcQze/LxhtIRAEmZ6HJ/EI0inVxVEVnrUXJ7jPx6ZP0GHUhFm40iQcCgS5apXIXA==} + '@smithy/core@3.21.1': + resolution: {integrity: sha512-NUH8R4O6FkN8HKMojzbGg/5pNjsfTjlMmeFclyPfPaXXUrbr5TzhWgbf7t92wfrpCHRgpjyz7ffASIS3wX28aA==} engines: {node: '>=18.0.0'} - '@smithy/credential-provider-imds@4.0.5': - resolution: {integrity: sha512-saEAGwrIlkb9XxX/m5S5hOtzjoJPEK6Qw2f9pYTbIsMPOFyGSXBBTw95WbOyru8A1vIS2jVCCU1Qhz50QWG3IA==} + '@smithy/credential-provider-imds@4.2.8': + resolution: {integrity: sha512-FNT0xHS1c/CPN8upqbMFP83+ul5YgdisfCfkZ86Jh2NSmnqw/AJ6x5pEogVCTVvSm7j9MopRU89bmDelxuDMYw==} engines: {node: '>=18.0.0'} - '@smithy/eventstream-codec@4.0.3': - resolution: {integrity: sha512-V22KIPXZsE2mc4zEgYGANM/7UbL9jWlOACEolyGyMuTY+jjHJ2PQ0FdopOTS1CS7u6PlAkALmypkv2oQ4aftcg==} + '@smithy/eventstream-codec@4.2.8': + resolution: {integrity: sha512-jS/O5Q14UsufqoGhov7dHLOPCzkYJl9QDzusI2Psh4wyYx/izhzvX9P4D69aTxcdfVhEPhjK+wYyn/PzLjKbbw==} engines: {node: '>=18.0.0'} - '@smithy/eventstream-serde-browser@4.0.3': - resolution: {integrity: sha512-oe1d/tfCGVZBMX8O6HApaM4G+fF9JNdyLP7tWXt00epuL/kLOdp/4o9VqheLFeJaXgao+9IaBgs/q/oM48hxzg==} + '@smithy/eventstream-serde-browser@4.2.8': + resolution: {integrity: sha512-MTfQT/CRQz5g24ayXdjg53V0mhucZth4PESoA5IhvaWVDTOQLfo8qI9vzqHcPsdd2v6sqfTYqF5L/l+pea5Uyw==} engines: {node: '>=18.0.0'} - '@smithy/eventstream-serde-config-resolver@4.1.1': - resolution: {integrity: sha512-XXCPGjRNwpFWHKQJMKIjGLfFKYULYckFnxGcWmBC2mBf3NsrvUKgqHax4NCqc0TfbDAimPDHOc6HOKtzsXK9Gw==} + '@smithy/eventstream-serde-config-resolver@4.3.8': + resolution: {integrity: sha512-ah12+luBiDGzBruhu3efNy1IlbwSEdNiw8fOZksoKoWW1ZHvO/04MQsdnws/9Aj+5b0YXSSN2JXKy/ClIsW8MQ==} engines: {node: '>=18.0.0'} - '@smithy/eventstream-serde-node@4.0.3': - resolution: {integrity: sha512-HOEbRmm9TrikCoFrypYu0J/gC4Lsk8gl5LtOz1G3laD2Jy44+ht2Pd2E9qjNQfhMJIzKDZ/gbuUH0s0v4kWQ0A==} + '@smithy/eventstream-serde-node@4.2.8': + resolution: {integrity: sha512-cYpCpp29z6EJHa5T9WL0KAlq3SOKUQkcgSoeRfRVwjGgSFl7Uh32eYGt7IDYCX20skiEdRffyDpvF2efEZPC0A==} engines: {node: '>=18.0.0'} - '@smithy/eventstream-serde-universal@4.0.3': - resolution: {integrity: sha512-ShOP512CZrYI9n+h64PJ84udzoNHUQtPddyh1j175KNTKsSnMEDNscOWJWyEoLQiuhWWw51lSa+k6ea9ZGXcRg==} + '@smithy/eventstream-serde-universal@4.2.8': + resolution: {integrity: sha512-iJ6YNJd0bntJYnX6s52NC4WFYcZeKrPUr1Kmmr5AwZcwCSzVpS7oavAmxMR7pMq7V+D1G4s9F5NJK0xwOsKAlQ==} engines: {node: '>=18.0.0'} - '@smithy/fetch-http-handler@5.0.3': - resolution: {integrity: sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==} + '@smithy/fetch-http-handler@5.3.9': + resolution: {integrity: sha512-I4UhmcTYXBrct03rwzQX1Y/iqQlzVQaPxWjCjula++5EmWq9YGBrx6bbGqluGc1f0XEfhSkiY4jhLgbsJUMKRA==} engines: {node: '>=18.0.0'} - '@smithy/hash-node@4.0.3': - resolution: {integrity: sha512-W5Uhy6v/aYrgtjh9y0YP332gIQcwccQ+EcfWhllL0B9rPae42JngTTUpb8W6wuxaNFzqps4xq5klHckSSOy5fw==} + '@smithy/hash-node@4.2.8': + resolution: {integrity: sha512-7ZIlPbmaDGxVoxErDZnuFG18WekhbA/g2/i97wGj+wUBeS6pcUeAym8u4BXh/75RXWhgIJhyC11hBzig6MljwA==} engines: {node: '>=18.0.0'} - '@smithy/invalid-dependency@4.0.3': - resolution: {integrity: sha512-1Bo8Ur1ZGqxvwTqBmv6DZEn0rXtwJGeqiiO2/JFcCtz3nBakOqeXbJBElXJMMzd0ghe8+eB6Dkw98nMYctgizg==} + '@smithy/invalid-dependency@4.2.8': + resolution: {integrity: sha512-N9iozRybwAQ2dn9Fot9kI6/w9vos2oTXLhtK7ovGqwZjlOcxu6XhPlpLpC+INsxktqHinn5gS2DXDjDF2kG5sQ==} engines: {node: '>=18.0.0'} '@smithy/is-array-buffer@2.2.0': resolution: {integrity: sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==} engines: {node: '>=14.0.0'} - '@smithy/is-array-buffer@4.0.0': - resolution: {integrity: sha512-saYhF8ZZNoJDTvJBEWgeBccCg+yvp1CX+ed12yORU3NilJScfc6gfch2oVb4QgxZrGUx3/ZJlb+c/dJbyupxlw==} + '@smithy/is-array-buffer@4.2.0': + resolution: {integrity: sha512-DZZZBvC7sjcYh4MazJSGiWMI2L7E0oCiRHREDzIxi/M2LY79/21iXt6aPLHge82wi5LsuRF5A06Ds3+0mlh6CQ==} engines: {node: '>=18.0.0'} - '@smithy/middleware-content-length@4.0.3': - resolution: {integrity: sha512-NE/Zph4BP5u16bzYq2csq9qD0T6UBLeg4AuNrwNJ7Gv9uLYaGEgelZUOdRndGdMGcUfSGvNlXGb2aA2hPCwJ6g==} + '@smithy/middleware-content-length@4.2.8': + resolution: {integrity: sha512-RO0jeoaYAB1qBRhfVyq0pMgBoUK34YEJxVxyjOWYZiOKOq2yMZ4MnVXMZCUDenpozHue207+9P5ilTV1zeda0A==} engines: {node: '>=18.0.0'} - '@smithy/middleware-endpoint@4.1.7': - resolution: {integrity: sha512-KDzM7Iajo6K7eIWNNtukykRT4eWwlHjCEsULZUaSfi/SRSBK8BPRqG5FsVfp58lUxcvre8GT8AIPIqndA0ERKw==} + '@smithy/middleware-endpoint@4.4.11': + resolution: {integrity: sha512-/WqsrycweGGfb9sSzME4CrsuayjJF6BueBmkKlcbeU5q18OhxRrvvKlmfw3tpDsK5ilx2XUJvoukwxHB0nHs/Q==} engines: {node: '>=18.0.0'} - '@smithy/middleware-retry@4.1.8': - resolution: {integrity: sha512-e2OtQgFzzlSG0uCjcJmi02QuFSRTrpT11Eh2EcqqDFy7DYriteHZJkkf+4AsxsrGDugAtPFcWBz1aq06sSX5fQ==} + '@smithy/middleware-retry@4.4.27': + resolution: {integrity: sha512-xFUYCGRVsfgiN5EjsJJSzih9+yjStgMTCLANPlf0LVQkPDYCe0hz97qbdTZosFOiYlGBlHYityGRxrQ/hxhfVQ==} engines: {node: '>=18.0.0'} - '@smithy/middleware-serde@4.0.6': - resolution: {integrity: sha512-YECyl7uNII+jCr/9qEmCu8xYL79cU0fqjo0qxpcVIU18dAPHam/iYwcknAu4Jiyw1uN+sAx7/SMf/Kmef/Jjsg==} + '@smithy/middleware-serde@4.2.9': + resolution: {integrity: sha512-eMNiej0u/snzDvlqRGSN3Vl0ESn3838+nKyVfF2FKNXFbi4SERYT6PR392D39iczngbqqGG0Jl1DlCnp7tBbXQ==} engines: {node: '>=18.0.0'} - '@smithy/middleware-stack@4.0.3': - resolution: {integrity: sha512-baeV7t4jQfQtFxBADFmnhmqBmqR38dNU5cvEgHcMK/Kp3D3bEI0CouoX2Sr/rGuntR+Eg0IjXdxnGGTc6SbIkw==} + '@smithy/middleware-stack@4.2.8': + resolution: {integrity: sha512-w6LCfOviTYQjBctOKSwy6A8FIkQy7ICvglrZFl6Bw4FmcQ1Z420fUtIhxaUZZshRe0VCq4kvDiPiXrPZAe8oRA==} engines: {node: '>=18.0.0'} - '@smithy/node-config-provider@4.1.2': - resolution: {integrity: sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==} + '@smithy/node-config-provider@4.3.8': + resolution: {integrity: sha512-aFP1ai4lrbVlWjfpAfRSL8KFcnJQYfTl5QxLJXY32vghJrDuFyPZ6LtUL+JEGYiFRG1PfPLHLoxj107ulncLIg==} engines: {node: '>=18.0.0'} - '@smithy/node-http-handler@4.0.5': - resolution: {integrity: sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==} + '@smithy/node-http-handler@4.4.8': + resolution: {integrity: sha512-q9u+MSbJVIJ1QmJ4+1u+cERXkrhuILCBDsJUBAW1MPE6sFonbCNaegFuwW9ll8kh5UdyY3jOkoOGlc7BesoLpg==} engines: {node: '>=18.0.0'} - '@smithy/property-provider@4.0.3': - resolution: {integrity: sha512-Wcn17QNdawJZcZZPBuMuzyBENVi1AXl4TdE0jvzo4vWX2x5df/oMlmr/9M5XAAC6+yae4kWZlOYIsNsgDrMU9A==} + '@smithy/property-provider@4.2.8': + resolution: {integrity: sha512-EtCTbyIveCKeOXDSWSdze3k612yCPq1YbXsbqX3UHhkOSW8zKsM9NOJG5gTIya0vbY2DIaieG8pKo1rITHYL0w==} engines: {node: '>=18.0.0'} - '@smithy/protocol-http@5.1.1': - resolution: {integrity: sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==} + '@smithy/protocol-http@5.3.8': + resolution: {integrity: sha512-QNINVDhxpZ5QnP3aviNHQFlRogQZDfYlCkQT+7tJnErPQbDhysondEjhikuANxgMsZrkGeiAxXy4jguEGsDrWQ==} engines: {node: '>=18.0.0'} - '@smithy/querystring-builder@4.0.3': - resolution: {integrity: sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==} + '@smithy/querystring-builder@4.2.8': + resolution: {integrity: sha512-Xr83r31+DrE8CP3MqPgMJl+pQlLLmOfiEUnoyAlGzzJIrEsbKsPy1hqH0qySaQm4oWrCBlUqRt+idEgunKB+iw==} engines: {node: '>=18.0.0'} - '@smithy/querystring-parser@4.0.3': - resolution: {integrity: sha512-K5M4ZJQpFCblOJ5Oyw7diICpFg1qhhR47m2/5Ef1PhGE19RaIZf50tjYFrxa6usqcuXyTiFPGo4d1geZdH4YcQ==} + '@smithy/querystring-parser@4.2.8': + resolution: {integrity: sha512-vUurovluVy50CUlazOiXkPq40KGvGWSdmusa3130MwrR1UNnNgKAlj58wlOe61XSHRpUfIIh6cE0zZ8mzKaDPA==} engines: {node: '>=18.0.0'} - '@smithy/service-error-classification@4.0.4': - resolution: {integrity: sha512-W5ScbQ1bTzgH91kNEE2CvOzM4gXlDOqdow4m8vMFSIXCel2scbHwjflpVNnC60Y3F1m5i7w2gQg9lSnR+JsJAA==} + '@smithy/service-error-classification@4.2.8': + resolution: {integrity: sha512-mZ5xddodpJhEt3RkCjbmUQuXUOaPNTkbMGR0bcS8FE0bJDLMZlhmpgrvPNCYglVw5rsYTpSnv19womw9WWXKQQ==} engines: {node: '>=18.0.0'} - '@smithy/shared-ini-file-loader@4.0.3': - resolution: {integrity: sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==} + '@smithy/shared-ini-file-loader@4.4.3': + resolution: {integrity: sha512-DfQjxXQnzC5UbCUPeC3Ie8u+rIWZTvuDPAGU/BxzrOGhRvgUanaP68kDZA+jaT3ZI+djOf+4dERGlm9mWfFDrg==} engines: {node: '>=18.0.0'} - '@smithy/signature-v4@5.1.1': - resolution: {integrity: sha512-zy8Repr5zvT0ja+Tf5wjV/Ba6vRrhdiDcp/ww6cvqYbSEudIkziDe3uppNRlFoCViyJXdPnLcwyZdDLA4CHzSg==} + '@smithy/signature-v4@5.3.8': + resolution: {integrity: sha512-6A4vdGj7qKNRF16UIcO8HhHjKW27thsxYci+5r/uVRkdcBEkOEiY8OMPuydLX4QHSrJqGHPJzPRwwVTqbLZJhg==} engines: {node: '>=18.0.0'} - '@smithy/smithy-client@4.3.0': - resolution: {integrity: sha512-DNsRA38pN6tYHUjebmwD9e4KcgqTLldYQb2gC6K+oxXYdCTxPn6wV9+FvOa6wrU2FQEnGJoi+3GULzOTKck/tg==} + '@smithy/smithy-client@4.10.12': + resolution: {integrity: sha512-VKO/HKoQ5OrSHW6AJUmEnUKeXI1/5LfCwO9cwyao7CmLvGnZeM1i36Lyful3LK1XU7HwTVieTqO1y2C/6t3qtA==} engines: {node: '>=18.0.0'} - '@smithy/types@4.3.0': - resolution: {integrity: sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==} + '@smithy/types@4.12.0': + resolution: {integrity: sha512-9YcuJVTOBDjg9LWo23Qp0lTQ3D7fQsQtwle0jVfpbUHy9qBwCEgKuVH4FqFB3VYu0nwdHKiEMA+oXz7oV8X1kw==} engines: {node: '>=18.0.0'} - '@smithy/url-parser@4.0.3': - resolution: {integrity: sha512-n5/DnosDu/tweOqUUNtUbu7eRIR4J/Wz9nL7V5kFYQQVb8VYdj7a4G5NJHCw6o21ul7CvZoJkOpdTnsQDLT0tQ==} + '@smithy/url-parser@4.2.8': + resolution: {integrity: sha512-NQho9U68TGMEU639YkXnVMV3GEFFULmmaWdlu1E9qzyIePOHsoSnagTGSDv1Zi8DCNN6btxOSdgmy5E/hsZwhA==} engines: {node: '>=18.0.0'} - '@smithy/util-base64@4.0.0': - resolution: {integrity: sha512-CvHfCmO2mchox9kjrtzoHkWHxjHZzaFojLc8quxXY7WAAMAg43nuxwv95tATVgQFNDwd4M9S1qFzj40Ul41Kmg==} + '@smithy/util-base64@4.3.0': + resolution: {integrity: sha512-GkXZ59JfyxsIwNTWFnjmFEI8kZpRNIBfxKjv09+nkAWPt/4aGaEWMM04m4sxgNVWkbt2MdSvE3KF/PfX4nFedQ==} engines: {node: '>=18.0.0'} - '@smithy/util-body-length-browser@4.0.0': - resolution: {integrity: sha512-sNi3DL0/k64/LO3A256M+m3CDdG6V7WKWHdAiBBMUN8S3hK3aMPhwnPik2A/a2ONN+9doY9UxaLfgqsIRg69QA==} + '@smithy/util-body-length-browser@4.2.0': + resolution: {integrity: sha512-Fkoh/I76szMKJnBXWPdFkQJl2r9SjPt3cMzLdOB6eJ4Pnpas8hVoWPYemX/peO0yrrvldgCUVJqOAjUrOLjbxg==} engines: {node: '>=18.0.0'} - '@smithy/util-body-length-node@4.0.0': - resolution: {integrity: sha512-q0iDP3VsZzqJyje8xJWEJCNIu3lktUGVoSy1KB0UWym2CL1siV3artm+u1DFYTLejpsrdGyCSWBdGNjJzfDPjg==} + '@smithy/util-body-length-node@4.2.1': + resolution: {integrity: sha512-h53dz/pISVrVrfxV1iqXlx5pRg3V2YWFcSQyPyXZRrZoZj4R4DeWRDo1a7dd3CPTcFi3kE+98tuNyD2axyZReA==} engines: {node: '>=18.0.0'} '@smithy/util-buffer-from@2.2.0': resolution: {integrity: sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==} engines: {node: '>=14.0.0'} - '@smithy/util-buffer-from@4.0.0': - resolution: {integrity: sha512-9TOQ7781sZvddgO8nxueKi3+yGvkY35kotA0Y6BWRajAv8jjmigQ1sBwz0UX47pQMYXJPahSKEKYFgt+rXdcug==} + '@smithy/util-buffer-from@4.2.0': + resolution: {integrity: sha512-kAY9hTKulTNevM2nlRtxAG2FQ3B2OR6QIrPY3zE5LqJy1oxzmgBGsHLWTcNhWXKchgA0WHW+mZkQrng/pgcCew==} engines: {node: '>=18.0.0'} - '@smithy/util-config-provider@4.0.0': - resolution: {integrity: sha512-L1RBVzLyfE8OXH+1hsJ8p+acNUSirQnWQ6/EgpchV88G6zGBTDPdXiiExei6Z1wR2RxYvxY/XLw6AMNCCt8H3w==} + '@smithy/util-config-provider@4.2.0': + resolution: {integrity: sha512-YEjpl6XJ36FTKmD+kRJJWYvrHeUvm5ykaUS5xK+6oXffQPHeEM4/nXlZPe+Wu0lsgRUcNZiliYNh/y7q9c2y6Q==} engines: {node: '>=18.0.0'} - '@smithy/util-defaults-mode-browser@4.0.15': - resolution: {integrity: sha512-bJJ/B8owQbHAflatSq92f9OcV8858DJBQF1Y3GRjB8psLyUjbISywszYPFw16beREHO/C3I3taW4VGH+tOuwrQ==} + '@smithy/util-defaults-mode-browser@4.3.26': + resolution: {integrity: sha512-vva0dzYUTgn7DdE0uaha10uEdAgmdLnNFowKFjpMm6p2R0XDk5FHPX3CBJLzWQkQXuEprsb0hGz9YwbicNWhjw==} engines: {node: '>=18.0.0'} - '@smithy/util-defaults-mode-node@4.0.15': - resolution: {integrity: sha512-8CUrEW2Ni5q+NmYkj8wsgkfqoP7l4ZquptFbq92yQE66xevc4SxqP2zH6tMtN158kgBqBDsZ+qlrRwXWOjCR8A==} + '@smithy/util-defaults-mode-node@4.2.29': + resolution: {integrity: sha512-c6D7IUBsZt/aNnTBHMTf+OVh+h/JcxUUgfTcIJaWRe6zhOum1X+pNKSZtZ+7fbOn5I99XVFtmrnXKv8yHHErTQ==} engines: {node: '>=18.0.0'} - '@smithy/util-endpoints@3.0.5': - resolution: {integrity: sha512-PjDpqLk24/vAl340tmtCA++Q01GRRNH9cwL9qh46NspAX9S+IQVcK+GOzPt0GLJ6KYGyn8uOgo2kvJhiThclJw==} + '@smithy/util-endpoints@3.2.8': + resolution: {integrity: sha512-8JaVTn3pBDkhZgHQ8R0epwWt+BqPSLCjdjXXusK1onwJlRuN69fbvSK66aIKKO7SwVFM6x2J2ox5X8pOaWcUEw==} engines: {node: '>=18.0.0'} - '@smithy/util-hex-encoding@4.0.0': - resolution: {integrity: sha512-Yk5mLhHtfIgW2W2WQZWSg5kuMZCVbvhFmC7rV4IO2QqnZdbEFPmQnCcGMAX2z/8Qj3B9hYYNjZOhWym+RwhePw==} + '@smithy/util-hex-encoding@4.2.0': + resolution: {integrity: sha512-CCQBwJIvXMLKxVbO88IukazJD9a4kQ9ZN7/UMGBjBcJYvatpWk+9g870El4cB8/EJxfe+k+y0GmR9CAzkF+Nbw==} engines: {node: '>=18.0.0'} - '@smithy/util-middleware@4.0.3': - resolution: {integrity: sha512-iIsC6qZXxkD7V3BzTw3b1uK8RVC1M8WvwNxK1PKrH9FnxntCd30CSunXjL/8iJBE8Z0J14r2P69njwIpRG4FBQ==} + '@smithy/util-middleware@4.2.8': + resolution: {integrity: sha512-PMqfeJxLcNPMDgvPbbLl/2Vpin+luxqTGPpW3NAQVLbRrFRzTa4rNAASYeIGjRV9Ytuhzny39SpyU04EQreF+A==} engines: {node: '>=18.0.0'} - '@smithy/util-retry@4.0.4': - resolution: {integrity: sha512-Aoqr9W2jDYGrI6OxljN8VmLDQIGO4VdMAUKMf9RGqLG8hn6or+K41NEy1Y5dtum9q8F7e0obYAuKl2mt/GnpZg==} + '@smithy/util-retry@4.2.8': + resolution: {integrity: sha512-CfJqwvoRY0kTGe5AkQokpURNCT1u/MkRzMTASWMPPo2hNSnKtF1D45dQl3DE2LKLr4m+PW9mCeBMJr5mCAVThg==} engines: {node: '>=18.0.0'} - '@smithy/util-stream@4.2.1': - resolution: {integrity: sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==} + '@smithy/util-stream@4.5.10': + resolution: {integrity: sha512-jbqemy51UFSZSp2y0ZmRfckmrzuKww95zT9BYMmuJ8v3altGcqjwoV1tzpOwuHaKrwQrCjIzOib499ymr2f98g==} engines: {node: '>=18.0.0'} - '@smithy/util-uri-escape@4.0.0': - resolution: {integrity: sha512-77yfbCbQMtgtTylO9itEAdpPXSog3ZxMe09AEhm0dU0NLTalV70ghDZFR+Nfi1C60jnJoh/Re4090/DuZh2Omg==} + '@smithy/util-uri-escape@4.2.0': + resolution: {integrity: sha512-igZpCKV9+E/Mzrpq6YacdTQ0qTiLm85gD6N/IrmyDvQFA4UnU3d5g3m8tMT/6zG/vVkWSU+VxeUyGonL62DuxA==} engines: {node: '>=18.0.0'} '@smithy/util-utf8@2.3.0': resolution: {integrity: sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==} engines: {node: '>=14.0.0'} - '@smithy/util-utf8@4.0.0': - resolution: {integrity: sha512-b+zebfKCfRdgNJDknHCob3O7FpeYQN6ZG6YLExMcasDHsCXlsXCEuiPZeLnJLpwa5dvPetGlnGCiMHuLwGvFow==} + '@smithy/util-utf8@4.2.0': + resolution: {integrity: sha512-zBPfuzoI8xyBtR2P6WQj63Rz8i3AmfAaJLuNG8dWsfvPe8lO4aCPYLn879mEgHndZH1zQ2oXmG8O1GGzzaoZiw==} + engines: {node: '>=18.0.0'} + + '@smithy/uuid@1.1.0': + resolution: {integrity: sha512-4aUIteuyxtBUhVdiQqcDhKFitwfd9hqoSDYY2KRXiWtgoWJ9Bmise+KfEPDiVHWeJepvF8xJO9/9+WDIciMFFw==} engines: {node: '>=18.0.0'} '@speed-highlight/core@1.2.7': @@ -2329,8 +2365,8 @@ packages: '@types/range-parser@1.2.7': resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} - '@types/react@19.2.8': - resolution: {integrity: sha512-3MbSL37jEchWZz2p2mjntRZtPt837ij10ApxKfgmXCTuHWagYg7iA5bqPw6C8BMPfwidlvfPI/fxOc42HLhcyg==} + '@types/react@19.2.9': + resolution: {integrity: sha512-Lpo8kgb/igvMIPeNV2rsYKTgaORYdO1XGVZ4Qz3akwOj0ySGYMPlQWa8BaLn0G63D1aSaAQ5ldR06wCpChQCjA==} '@types/send@0.17.4': resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} @@ -2547,6 +2583,7 @@ packages: '@vercel/kv@0.2.2': resolution: {integrity: sha512-mqnQOB6bkp4h5eObxfLNIlhlVqOGSH8cWOlC5pDVWTjX3zL8dETO1ZBl6M74HBmeBjbD5+J7wDJklRigY6UNKw==} engines: {node: '>=14.6'} + deprecated: 'Vercel KV is deprecated. If you had an existing KV store, it should have moved to Upstash Redis which you will see under Vercel Integrations. For new projects, install a Redis integration from Vercel Marketplace: https://vercel.com/marketplace?category=storage&search=redis' '@vitest/expect@2.1.9': resolution: {integrity: sha512-UJCIkTBenHeKT1TTlKMJWy1laZewsRIzYighyYiJKZreqtdxSos/S1t+ktRMQWu2CKqaarrkeszJx1cgC5tGZw==} @@ -3201,9 +3238,6 @@ packages: engines: {node: '>=4'} hasBin: true - csstype@3.1.3: - resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - csstype@3.2.3: resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} @@ -3544,8 +3578,8 @@ packages: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} - eslint-config-next@16.1.1-canary.22: - resolution: {integrity: sha512-kjB5uc5QjBg2TLFDbOoW8W0PVk+oHQEAFTDVbwIRbaqvmz8T2/ccMeeS25HqBXHj5QtuagTjs/YTzmNPgNgXZw==} + eslint-config-next@16.2.0-canary.6: + resolution: {integrity: sha512-iEIquH7p19PW439/1D1dqJM2LL+oy5IeQTjr2oTlpL5pVJbXXqpL8TwkekCFty7rUscw/GZvm2CG6e1OZ2RqCQ==} peerDependencies: eslint: '>=9.0.0' typescript: '>=3.3.1' @@ -3553,8 +3587,8 @@ packages: typescript: optional: true - eslint-config-turbo@2.7.4: - resolution: {integrity: sha512-HhIqaGxIxZ8IxOqH30zvOr8kMmLGiOiDaOrFJwER9R++9L1OztVVsbs695Vti60XkYG6aa5F1TIBsYA5TP3hEw==} + eslint-config-turbo@2.7.5: + resolution: {integrity: sha512-LKgZM73MqmEEwo1nEqnX6aNQoZ7ASL93H3Zb8PG6bYE9kI4aM2CFnOFKJf6lTQPBV92N5pdaxz1bE47J2LUdFw==} peerDependencies: eslint: '>6.6.0' turbo: '>2.0.0' @@ -3639,8 +3673,8 @@ packages: peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 - eslint-plugin-turbo@2.7.4: - resolution: {integrity: sha512-kye4pyGpZMJLgykeRDYTK2kpzHFw7kWlaio66Y4dL/9IMa7cIXirvvHVryV8D7ni3eOsHZYYQ9k0nADKNnecjQ==} + eslint-plugin-turbo@2.7.5: + resolution: {integrity: sha512-dHUEEZyoUriaYqaqu6nlnkj0W+iDPYFhuMjLYGxn7p767kLCYTZgjR42urW56VLiRQUqDL+foOXufFM6+kXCEQ==} peerDependencies: eslint: '>6.6.0' turbo: '>2.0.0' @@ -3781,8 +3815,8 @@ packages: fast-uri@3.0.6: resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==} - fast-xml-parser@4.4.1: - resolution: {integrity: sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==} + fast-xml-parser@5.2.5: + resolution: {integrity: sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ==} hasBin: true fastq@1.19.1: @@ -5715,8 +5749,8 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} - strnum@1.0.5: - resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} + strnum@2.1.2: + resolution: {integrity: sha512-l63NF9y/cLROq/yqKXSLtcMeeyOfnSQlfMSlzFt/K73oIaD8DGaQWd7Z34X9GPiKqP5rbSh84Hl4bOlLcjiSrQ==} styled-jsx@5.1.1: resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} @@ -6551,15 +6585,15 @@ snapshots: '@aws-crypto/crc32@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.804.0 - tslib: 2.6.2 + '@aws-sdk/types': 3.973.0 + tslib: 2.8.1 '@aws-crypto/sha256-browser@5.2.0': dependencies: '@aws-crypto/sha256-js': 5.2.0 '@aws-crypto/supports-web-crypto': 5.2.0 '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.804.0 + '@aws-sdk/types': 3.973.0 '@aws-sdk/util-locate-window': 3.535.0 '@smithy/util-utf8': 2.3.0 tslib: 2.8.1 @@ -6567,7 +6601,7 @@ snapshots: '@aws-crypto/sha256-js@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.804.0 + '@aws-sdk/types': 3.973.0 tslib: 2.8.1 '@aws-crypto/supports-web-crypto@5.2.0': @@ -6576,347 +6610,453 @@ snapshots: '@aws-crypto/util@5.2.0': dependencies: - '@aws-sdk/types': 3.804.0 + '@aws-sdk/types': 3.973.0 '@smithy/util-utf8': 2.3.0 tslib: 2.8.1 - '@aws-sdk/client-bedrock-runtime@3.817.0': + '@aws-sdk/client-bedrock-runtime@3.975.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.816.0 - '@aws-sdk/credential-provider-node': 3.817.0 - '@aws-sdk/eventstream-handler-node': 3.804.0 - '@aws-sdk/middleware-eventstream': 3.804.0 - '@aws-sdk/middleware-host-header': 3.804.0 - '@aws-sdk/middleware-logger': 3.804.0 - '@aws-sdk/middleware-recursion-detection': 3.804.0 - '@aws-sdk/middleware-user-agent': 3.816.0 - '@aws-sdk/region-config-resolver': 3.808.0 - '@aws-sdk/types': 3.804.0 - '@aws-sdk/util-endpoints': 3.808.0 - '@aws-sdk/util-user-agent-browser': 3.804.0 - '@aws-sdk/util-user-agent-node': 3.816.0 - '@smithy/config-resolver': 4.1.3 - '@smithy/core': 3.4.0 - '@smithy/eventstream-serde-browser': 4.0.3 - '@smithy/eventstream-serde-config-resolver': 4.1.1 - '@smithy/eventstream-serde-node': 4.0.3 - '@smithy/fetch-http-handler': 5.0.3 - '@smithy/hash-node': 4.0.3 - '@smithy/invalid-dependency': 4.0.3 - '@smithy/middleware-content-length': 4.0.3 - '@smithy/middleware-endpoint': 4.1.7 - '@smithy/middleware-retry': 4.1.8 - '@smithy/middleware-serde': 4.0.6 - '@smithy/middleware-stack': 4.0.3 - '@smithy/node-config-provider': 4.1.2 - '@smithy/node-http-handler': 4.0.5 - '@smithy/protocol-http': 5.1.1 - '@smithy/smithy-client': 4.3.0 - '@smithy/types': 4.3.0 - '@smithy/url-parser': 4.0.3 - '@smithy/util-base64': 4.0.0 - '@smithy/util-body-length-browser': 4.0.0 - '@smithy/util-body-length-node': 4.0.0 - '@smithy/util-defaults-mode-browser': 4.0.15 - '@smithy/util-defaults-mode-node': 4.0.15 - '@smithy/util-endpoints': 3.0.5 - '@smithy/util-middleware': 4.0.3 - '@smithy/util-retry': 4.0.4 - '@smithy/util-stream': 4.2.1 - '@smithy/util-utf8': 4.0.0 - '@types/uuid': 9.0.7 - tslib: 2.6.2 - uuid: 9.0.1 + '@aws-sdk/core': 3.973.1 + '@aws-sdk/credential-provider-node': 3.972.1 + '@aws-sdk/eventstream-handler-node': 3.972.1 + '@aws-sdk/middleware-eventstream': 3.972.1 + '@aws-sdk/middleware-host-header': 3.972.1 + '@aws-sdk/middleware-logger': 3.972.1 + '@aws-sdk/middleware-recursion-detection': 3.972.1 + '@aws-sdk/middleware-user-agent': 3.972.2 + '@aws-sdk/middleware-websocket': 3.972.1 + '@aws-sdk/region-config-resolver': 3.972.1 + '@aws-sdk/token-providers': 3.975.0 + '@aws-sdk/types': 3.973.0 + '@aws-sdk/util-endpoints': 3.972.0 + '@aws-sdk/util-user-agent-browser': 3.972.1 + '@aws-sdk/util-user-agent-node': 3.972.1 + '@smithy/config-resolver': 4.4.6 + '@smithy/core': 3.21.1 + '@smithy/eventstream-serde-browser': 4.2.8 + '@smithy/eventstream-serde-config-resolver': 4.3.8 + '@smithy/eventstream-serde-node': 4.2.8 + '@smithy/fetch-http-handler': 5.3.9 + '@smithy/hash-node': 4.2.8 + '@smithy/invalid-dependency': 4.2.8 + '@smithy/middleware-content-length': 4.2.8 + '@smithy/middleware-endpoint': 4.4.11 + '@smithy/middleware-retry': 4.4.27 + '@smithy/middleware-serde': 4.2.9 + '@smithy/middleware-stack': 4.2.8 + '@smithy/node-config-provider': 4.3.8 + '@smithy/node-http-handler': 4.4.8 + '@smithy/protocol-http': 5.3.8 + '@smithy/smithy-client': 4.10.12 + '@smithy/types': 4.12.0 + '@smithy/url-parser': 4.2.8 + '@smithy/util-base64': 4.3.0 + '@smithy/util-body-length-browser': 4.2.0 + '@smithy/util-body-length-node': 4.2.1 + '@smithy/util-defaults-mode-browser': 4.3.26 + '@smithy/util-defaults-mode-node': 4.2.29 + '@smithy/util-endpoints': 3.2.8 + '@smithy/util-middleware': 4.2.8 + '@smithy/util-retry': 4.2.8 + '@smithy/util-stream': 4.5.10 + '@smithy/util-utf8': 4.2.0 + tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso@3.817.0': + '@aws-sdk/client-sso@3.974.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.816.0 - '@aws-sdk/middleware-host-header': 3.804.0 - '@aws-sdk/middleware-logger': 3.804.0 - '@aws-sdk/middleware-recursion-detection': 3.804.0 - '@aws-sdk/middleware-user-agent': 3.816.0 - '@aws-sdk/region-config-resolver': 3.808.0 - '@aws-sdk/types': 3.804.0 - '@aws-sdk/util-endpoints': 3.808.0 - '@aws-sdk/util-user-agent-browser': 3.804.0 - '@aws-sdk/util-user-agent-node': 3.816.0 - '@smithy/config-resolver': 4.1.3 - '@smithy/core': 3.4.0 - '@smithy/fetch-http-handler': 5.0.3 - '@smithy/hash-node': 4.0.3 - '@smithy/invalid-dependency': 4.0.3 - '@smithy/middleware-content-length': 4.0.3 - '@smithy/middleware-endpoint': 4.1.7 - '@smithy/middleware-retry': 4.1.8 - '@smithy/middleware-serde': 4.0.6 - '@smithy/middleware-stack': 4.0.3 - '@smithy/node-config-provider': 4.1.2 - '@smithy/node-http-handler': 4.0.5 - '@smithy/protocol-http': 5.1.1 - '@smithy/smithy-client': 4.3.0 - '@smithy/types': 4.3.0 - '@smithy/url-parser': 4.0.3 - '@smithy/util-base64': 4.0.0 - '@smithy/util-body-length-browser': 4.0.0 - '@smithy/util-body-length-node': 4.0.0 - '@smithy/util-defaults-mode-browser': 4.0.15 - '@smithy/util-defaults-mode-node': 4.0.15 - '@smithy/util-endpoints': 3.0.5 - '@smithy/util-middleware': 4.0.3 - '@smithy/util-retry': 4.0.4 - '@smithy/util-utf8': 4.0.0 + '@aws-sdk/core': 3.973.1 + '@aws-sdk/middleware-host-header': 3.972.1 + '@aws-sdk/middleware-logger': 3.972.1 + '@aws-sdk/middleware-recursion-detection': 3.972.1 + '@aws-sdk/middleware-user-agent': 3.972.2 + '@aws-sdk/region-config-resolver': 3.972.1 + '@aws-sdk/types': 3.973.0 + '@aws-sdk/util-endpoints': 3.972.0 + '@aws-sdk/util-user-agent-browser': 3.972.1 + '@aws-sdk/util-user-agent-node': 3.972.1 + '@smithy/config-resolver': 4.4.6 + '@smithy/core': 3.21.1 + '@smithy/fetch-http-handler': 5.3.9 + '@smithy/hash-node': 4.2.8 + '@smithy/invalid-dependency': 4.2.8 + '@smithy/middleware-content-length': 4.2.8 + '@smithy/middleware-endpoint': 4.4.11 + '@smithy/middleware-retry': 4.4.27 + '@smithy/middleware-serde': 4.2.9 + '@smithy/middleware-stack': 4.2.8 + '@smithy/node-config-provider': 4.3.8 + '@smithy/node-http-handler': 4.4.8 + '@smithy/protocol-http': 5.3.8 + '@smithy/smithy-client': 4.10.12 + '@smithy/types': 4.12.0 + '@smithy/url-parser': 4.2.8 + '@smithy/util-base64': 4.3.0 + '@smithy/util-body-length-browser': 4.2.0 + '@smithy/util-body-length-node': 4.2.1 + '@smithy/util-defaults-mode-browser': 4.3.26 + '@smithy/util-defaults-mode-node': 4.2.29 + '@smithy/util-endpoints': 3.2.8 + '@smithy/util-middleware': 4.2.8 + '@smithy/util-retry': 4.2.8 + '@smithy/util-utf8': 4.2.0 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/core@3.816.0': - dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/core': 3.4.0 - '@smithy/node-config-provider': 4.1.2 - '@smithy/property-provider': 4.0.3 - '@smithy/protocol-http': 5.1.1 - '@smithy/signature-v4': 5.1.1 - '@smithy/smithy-client': 4.3.0 - '@smithy/types': 4.3.0 - '@smithy/util-middleware': 4.0.3 - fast-xml-parser: 4.4.1 + '@aws-sdk/core@3.973.1': + dependencies: + '@aws-sdk/types': 3.973.0 + '@aws-sdk/xml-builder': 3.972.1 + '@smithy/core': 3.21.1 + '@smithy/node-config-provider': 4.3.8 + '@smithy/property-provider': 4.2.8 + '@smithy/protocol-http': 5.3.8 + '@smithy/signature-v4': 5.3.8 + '@smithy/smithy-client': 4.10.12 + '@smithy/types': 4.12.0 + '@smithy/util-base64': 4.3.0 + '@smithy/util-middleware': 4.2.8 + '@smithy/util-utf8': 4.2.0 tslib: 2.8.1 - '@aws-sdk/credential-provider-env@3.816.0': + '@aws-sdk/credential-provider-env@3.972.1': dependencies: - '@aws-sdk/core': 3.816.0 - '@aws-sdk/types': 3.804.0 - '@smithy/property-provider': 4.0.3 - '@smithy/types': 4.3.0 - tslib: 2.6.2 + '@aws-sdk/core': 3.973.1 + '@aws-sdk/types': 3.973.0 + '@smithy/property-provider': 4.2.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 - '@aws-sdk/credential-provider-http@3.816.0': - dependencies: - '@aws-sdk/core': 3.816.0 - '@aws-sdk/types': 3.804.0 - '@smithy/fetch-http-handler': 5.0.3 - '@smithy/node-http-handler': 4.0.5 - '@smithy/property-provider': 4.0.3 - '@smithy/protocol-http': 5.1.1 - '@smithy/smithy-client': 4.3.0 - '@smithy/types': 4.3.0 - '@smithy/util-stream': 4.2.1 - tslib: 2.6.2 + '@aws-sdk/credential-provider-http@3.972.2': + dependencies: + '@aws-sdk/core': 3.973.1 + '@aws-sdk/types': 3.973.0 + '@smithy/fetch-http-handler': 5.3.9 + '@smithy/node-http-handler': 4.4.8 + '@smithy/property-provider': 4.2.8 + '@smithy/protocol-http': 5.3.8 + '@smithy/smithy-client': 4.10.12 + '@smithy/types': 4.12.0 + '@smithy/util-stream': 4.5.10 + tslib: 2.8.1 - '@aws-sdk/credential-provider-ini@3.817.0': - dependencies: - '@aws-sdk/core': 3.816.0 - '@aws-sdk/credential-provider-env': 3.816.0 - '@aws-sdk/credential-provider-http': 3.816.0 - '@aws-sdk/credential-provider-process': 3.816.0 - '@aws-sdk/credential-provider-sso': 3.817.0 - '@aws-sdk/credential-provider-web-identity': 3.817.0 - '@aws-sdk/nested-clients': 3.817.0 - '@aws-sdk/types': 3.804.0 - '@smithy/credential-provider-imds': 4.0.5 - '@smithy/property-provider': 4.0.3 - '@smithy/shared-ini-file-loader': 4.0.3 - '@smithy/types': 4.3.0 - tslib: 2.6.2 + '@aws-sdk/credential-provider-ini@3.972.1': + dependencies: + '@aws-sdk/core': 3.973.1 + '@aws-sdk/credential-provider-env': 3.972.1 + '@aws-sdk/credential-provider-http': 3.972.2 + '@aws-sdk/credential-provider-login': 3.972.1 + '@aws-sdk/credential-provider-process': 3.972.1 + '@aws-sdk/credential-provider-sso': 3.972.1 + '@aws-sdk/credential-provider-web-identity': 3.972.1 + '@aws-sdk/nested-clients': 3.974.0 + '@aws-sdk/types': 3.973.0 + '@smithy/credential-provider-imds': 4.2.8 + '@smithy/property-provider': 4.2.8 + '@smithy/shared-ini-file-loader': 4.4.3 + '@smithy/types': 4.12.0 + tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-node@3.817.0': - dependencies: - '@aws-sdk/credential-provider-env': 3.816.0 - '@aws-sdk/credential-provider-http': 3.816.0 - '@aws-sdk/credential-provider-ini': 3.817.0 - '@aws-sdk/credential-provider-process': 3.816.0 - '@aws-sdk/credential-provider-sso': 3.817.0 - '@aws-sdk/credential-provider-web-identity': 3.817.0 - '@aws-sdk/types': 3.804.0 - '@smithy/credential-provider-imds': 4.0.5 - '@smithy/property-provider': 4.0.3 - '@smithy/shared-ini-file-loader': 4.0.3 - '@smithy/types': 4.3.0 - tslib: 2.6.2 + '@aws-sdk/credential-provider-login@3.972.1': + dependencies: + '@aws-sdk/core': 3.973.1 + '@aws-sdk/nested-clients': 3.974.0 + '@aws-sdk/types': 3.973.0 + '@smithy/property-provider': 4.2.8 + '@smithy/protocol-http': 5.3.8 + '@smithy/shared-ini-file-loader': 4.4.3 + '@smithy/types': 4.12.0 + tslib: 2.8.1 + transitivePeerDependencies: + - aws-crt + + '@aws-sdk/credential-provider-node@3.972.1': + dependencies: + '@aws-sdk/credential-provider-env': 3.972.1 + '@aws-sdk/credential-provider-http': 3.972.2 + '@aws-sdk/credential-provider-ini': 3.972.1 + '@aws-sdk/credential-provider-process': 3.972.1 + '@aws-sdk/credential-provider-sso': 3.972.1 + '@aws-sdk/credential-provider-web-identity': 3.972.1 + '@aws-sdk/types': 3.973.0 + '@smithy/credential-provider-imds': 4.2.8 + '@smithy/property-provider': 4.2.8 + '@smithy/shared-ini-file-loader': 4.4.3 + '@smithy/types': 4.12.0 + tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-process@3.816.0': + '@aws-sdk/credential-provider-process@3.972.1': dependencies: - '@aws-sdk/core': 3.816.0 - '@aws-sdk/types': 3.804.0 - '@smithy/property-provider': 4.0.3 - '@smithy/shared-ini-file-loader': 4.0.3 - '@smithy/types': 4.3.0 - tslib: 2.6.2 + '@aws-sdk/core': 3.973.1 + '@aws-sdk/types': 3.973.0 + '@smithy/property-provider': 4.2.8 + '@smithy/shared-ini-file-loader': 4.4.3 + '@smithy/types': 4.12.0 + tslib: 2.8.1 - '@aws-sdk/credential-provider-sso@3.817.0': + '@aws-sdk/credential-provider-sso@3.972.1': dependencies: - '@aws-sdk/client-sso': 3.817.0 - '@aws-sdk/core': 3.816.0 - '@aws-sdk/token-providers': 3.817.0 - '@aws-sdk/types': 3.804.0 - '@smithy/property-provider': 4.0.3 - '@smithy/shared-ini-file-loader': 4.0.3 - '@smithy/types': 4.3.0 - tslib: 2.6.2 + '@aws-sdk/client-sso': 3.974.0 + '@aws-sdk/core': 3.973.1 + '@aws-sdk/token-providers': 3.974.0 + '@aws-sdk/types': 3.973.0 + '@smithy/property-provider': 4.2.8 + '@smithy/shared-ini-file-loader': 4.4.3 + '@smithy/types': 4.12.0 + tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-web-identity@3.817.0': + '@aws-sdk/credential-provider-web-identity@3.972.1': dependencies: - '@aws-sdk/core': 3.816.0 - '@aws-sdk/nested-clients': 3.817.0 - '@aws-sdk/types': 3.804.0 - '@smithy/property-provider': 4.0.3 - '@smithy/types': 4.3.0 + '@aws-sdk/core': 3.973.1 + '@aws-sdk/nested-clients': 3.974.0 + '@aws-sdk/types': 3.973.0 + '@smithy/property-provider': 4.2.8 + '@smithy/shared-ini-file-loader': 4.4.3 + '@smithy/types': 4.12.0 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/eventstream-handler-node@3.804.0': + '@aws-sdk/eventstream-handler-node@3.972.1': dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/eventstream-codec': 4.0.3 - '@smithy/types': 4.3.0 - tslib: 2.6.2 + '@aws-sdk/types': 3.973.0 + '@smithy/eventstream-codec': 4.2.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 - '@aws-sdk/middleware-eventstream@3.804.0': + '@aws-sdk/middleware-eventstream@3.972.1': dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/protocol-http': 5.1.1 - '@smithy/types': 4.3.0 - tslib: 2.6.2 + '@aws-sdk/types': 3.973.0 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 + + '@aws-sdk/middleware-host-header@3.972.1': + dependencies: + '@aws-sdk/types': 3.973.0 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 - '@aws-sdk/middleware-host-header@3.804.0': + '@aws-sdk/middleware-logger@3.972.1': dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/protocol-http': 5.1.1 - '@smithy/types': 4.3.0 + '@aws-sdk/types': 3.973.0 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@aws-sdk/middleware-logger@3.804.0': + '@aws-sdk/middleware-recursion-detection@3.972.1': dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/types': 4.3.0 + '@aws-sdk/types': 3.973.0 + '@aws/lambda-invoke-store': 0.2.3 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@aws-sdk/middleware-recursion-detection@3.804.0': + '@aws-sdk/middleware-user-agent@3.972.2': dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/protocol-http': 5.1.1 - '@smithy/types': 4.3.0 + '@aws-sdk/core': 3.973.1 + '@aws-sdk/types': 3.973.0 + '@aws-sdk/util-endpoints': 3.972.0 + '@smithy/core': 3.21.1 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 + + '@aws-sdk/middleware-websocket@3.972.1': + dependencies: + '@aws-sdk/types': 3.973.0 + '@aws-sdk/util-format-url': 3.972.1 + '@smithy/eventstream-codec': 4.2.8 + '@smithy/eventstream-serde-browser': 4.2.8 + '@smithy/fetch-http-handler': 5.3.9 + '@smithy/protocol-http': 5.3.8 + '@smithy/signature-v4': 5.3.8 + '@smithy/types': 4.12.0 + '@smithy/util-hex-encoding': 4.2.0 tslib: 2.8.1 - '@aws-sdk/middleware-user-agent@3.816.0': + '@aws-sdk/nested-clients@3.974.0': dependencies: - '@aws-sdk/core': 3.816.0 - '@aws-sdk/types': 3.804.0 - '@aws-sdk/util-endpoints': 3.808.0 - '@smithy/core': 3.4.0 - '@smithy/protocol-http': 5.1.1 - '@smithy/types': 4.3.0 + '@aws-crypto/sha256-browser': 5.2.0 + '@aws-crypto/sha256-js': 5.2.0 + '@aws-sdk/core': 3.973.1 + '@aws-sdk/middleware-host-header': 3.972.1 + '@aws-sdk/middleware-logger': 3.972.1 + '@aws-sdk/middleware-recursion-detection': 3.972.1 + '@aws-sdk/middleware-user-agent': 3.972.2 + '@aws-sdk/region-config-resolver': 3.972.1 + '@aws-sdk/types': 3.973.0 + '@aws-sdk/util-endpoints': 3.972.0 + '@aws-sdk/util-user-agent-browser': 3.972.1 + '@aws-sdk/util-user-agent-node': 3.972.1 + '@smithy/config-resolver': 4.4.6 + '@smithy/core': 3.21.1 + '@smithy/fetch-http-handler': 5.3.9 + '@smithy/hash-node': 4.2.8 + '@smithy/invalid-dependency': 4.2.8 + '@smithy/middleware-content-length': 4.2.8 + '@smithy/middleware-endpoint': 4.4.11 + '@smithy/middleware-retry': 4.4.27 + '@smithy/middleware-serde': 4.2.9 + '@smithy/middleware-stack': 4.2.8 + '@smithy/node-config-provider': 4.3.8 + '@smithy/node-http-handler': 4.4.8 + '@smithy/protocol-http': 5.3.8 + '@smithy/smithy-client': 4.10.12 + '@smithy/types': 4.12.0 + '@smithy/url-parser': 4.2.8 + '@smithy/util-base64': 4.3.0 + '@smithy/util-body-length-browser': 4.2.0 + '@smithy/util-body-length-node': 4.2.1 + '@smithy/util-defaults-mode-browser': 4.3.26 + '@smithy/util-defaults-mode-node': 4.2.29 + '@smithy/util-endpoints': 3.2.8 + '@smithy/util-middleware': 4.2.8 + '@smithy/util-retry': 4.2.8 + '@smithy/util-utf8': 4.2.0 tslib: 2.8.1 + transitivePeerDependencies: + - aws-crt - '@aws-sdk/nested-clients@3.817.0': + '@aws-sdk/nested-clients@3.975.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.816.0 - '@aws-sdk/middleware-host-header': 3.804.0 - '@aws-sdk/middleware-logger': 3.804.0 - '@aws-sdk/middleware-recursion-detection': 3.804.0 - '@aws-sdk/middleware-user-agent': 3.816.0 - '@aws-sdk/region-config-resolver': 3.808.0 - '@aws-sdk/types': 3.804.0 - '@aws-sdk/util-endpoints': 3.808.0 - '@aws-sdk/util-user-agent-browser': 3.804.0 - '@aws-sdk/util-user-agent-node': 3.816.0 - '@smithy/config-resolver': 4.1.3 - '@smithy/core': 3.4.0 - '@smithy/fetch-http-handler': 5.0.3 - '@smithy/hash-node': 4.0.3 - '@smithy/invalid-dependency': 4.0.3 - '@smithy/middleware-content-length': 4.0.3 - '@smithy/middleware-endpoint': 4.1.7 - '@smithy/middleware-retry': 4.1.8 - '@smithy/middleware-serde': 4.0.6 - '@smithy/middleware-stack': 4.0.3 - '@smithy/node-config-provider': 4.1.2 - '@smithy/node-http-handler': 4.0.5 - '@smithy/protocol-http': 5.1.1 - '@smithy/smithy-client': 4.3.0 - '@smithy/types': 4.3.0 - '@smithy/url-parser': 4.0.3 - '@smithy/util-base64': 4.0.0 - '@smithy/util-body-length-browser': 4.0.0 - '@smithy/util-body-length-node': 4.0.0 - '@smithy/util-defaults-mode-browser': 4.0.15 - '@smithy/util-defaults-mode-node': 4.0.15 - '@smithy/util-endpoints': 3.0.5 - '@smithy/util-middleware': 4.0.3 - '@smithy/util-retry': 4.0.4 - '@smithy/util-utf8': 4.0.0 + '@aws-sdk/core': 3.973.1 + '@aws-sdk/middleware-host-header': 3.972.1 + '@aws-sdk/middleware-logger': 3.972.1 + '@aws-sdk/middleware-recursion-detection': 3.972.1 + '@aws-sdk/middleware-user-agent': 3.972.2 + '@aws-sdk/region-config-resolver': 3.972.1 + '@aws-sdk/types': 3.973.0 + '@aws-sdk/util-endpoints': 3.972.0 + '@aws-sdk/util-user-agent-browser': 3.972.1 + '@aws-sdk/util-user-agent-node': 3.972.1 + '@smithy/config-resolver': 4.4.6 + '@smithy/core': 3.21.1 + '@smithy/fetch-http-handler': 5.3.9 + '@smithy/hash-node': 4.2.8 + '@smithy/invalid-dependency': 4.2.8 + '@smithy/middleware-content-length': 4.2.8 + '@smithy/middleware-endpoint': 4.4.11 + '@smithy/middleware-retry': 4.4.27 + '@smithy/middleware-serde': 4.2.9 + '@smithy/middleware-stack': 4.2.8 + '@smithy/node-config-provider': 4.3.8 + '@smithy/node-http-handler': 4.4.8 + '@smithy/protocol-http': 5.3.8 + '@smithy/smithy-client': 4.10.12 + '@smithy/types': 4.12.0 + '@smithy/url-parser': 4.2.8 + '@smithy/util-base64': 4.3.0 + '@smithy/util-body-length-browser': 4.2.0 + '@smithy/util-body-length-node': 4.2.1 + '@smithy/util-defaults-mode-browser': 4.3.26 + '@smithy/util-defaults-mode-node': 4.2.29 + '@smithy/util-endpoints': 3.2.8 + '@smithy/util-middleware': 4.2.8 + '@smithy/util-retry': 4.2.8 + '@smithy/util-utf8': 4.2.0 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/region-config-resolver@3.808.0': + '@aws-sdk/region-config-resolver@3.972.1': dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/node-config-provider': 4.1.2 - '@smithy/types': 4.3.0 - '@smithy/util-config-provider': 4.0.0 - '@smithy/util-middleware': 4.0.3 + '@aws-sdk/types': 3.973.0 + '@smithy/config-resolver': 4.4.6 + '@smithy/node-config-provider': 4.3.8 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@aws-sdk/token-providers@3.817.0': + '@aws-sdk/token-providers@3.974.0': dependencies: - '@aws-sdk/core': 3.816.0 - '@aws-sdk/nested-clients': 3.817.0 - '@aws-sdk/types': 3.804.0 - '@smithy/property-provider': 4.0.3 - '@smithy/shared-ini-file-loader': 4.0.3 - '@smithy/types': 4.3.0 + '@aws-sdk/core': 3.973.1 + '@aws-sdk/nested-clients': 3.974.0 + '@aws-sdk/types': 3.973.0 + '@smithy/property-provider': 4.2.8 + '@smithy/shared-ini-file-loader': 4.4.3 + '@smithy/types': 4.12.0 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/types@3.804.0': + '@aws-sdk/token-providers@3.975.0': dependencies: - '@smithy/types': 4.3.0 + '@aws-sdk/core': 3.973.1 + '@aws-sdk/nested-clients': 3.975.0 + '@aws-sdk/types': 3.973.0 + '@smithy/property-provider': 4.2.8 + '@smithy/shared-ini-file-loader': 4.4.3 + '@smithy/types': 4.12.0 tslib: 2.8.1 + transitivePeerDependencies: + - aws-crt - '@aws-sdk/util-endpoints@3.808.0': + '@aws-sdk/types@3.972.0': dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/types': 4.3.0 - '@smithy/util-endpoints': 3.0.5 + '@smithy/types': 4.12.0 + tslib: 2.8.1 + + '@aws-sdk/types@3.973.0': + dependencies: + '@smithy/types': 4.12.0 + tslib: 2.8.1 + + '@aws-sdk/util-endpoints@3.972.0': + dependencies: + '@aws-sdk/types': 3.972.0 + '@smithy/types': 4.12.0 + '@smithy/url-parser': 4.2.8 + '@smithy/util-endpoints': 3.2.8 + tslib: 2.8.1 + + '@aws-sdk/util-format-url@3.972.1': + dependencies: + '@aws-sdk/types': 3.973.0 + '@smithy/querystring-builder': 4.2.8 + '@smithy/types': 4.12.0 tslib: 2.8.1 '@aws-sdk/util-locate-window@3.535.0': dependencies: tslib: 2.8.1 - '@aws-sdk/util-user-agent-browser@3.804.0': + '@aws-sdk/util-user-agent-browser@3.972.1': dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/types': 4.3.0 + '@aws-sdk/types': 3.973.0 + '@smithy/types': 4.12.0 bowser: 2.11.0 tslib: 2.8.1 - '@aws-sdk/util-user-agent-node@3.816.0': + '@aws-sdk/util-user-agent-node@3.972.1': dependencies: - '@aws-sdk/middleware-user-agent': 3.816.0 - '@aws-sdk/types': 3.804.0 - '@smithy/node-config-provider': 4.1.2 - '@smithy/types': 4.3.0 + '@aws-sdk/middleware-user-agent': 3.972.2 + '@aws-sdk/types': 3.973.0 + '@smithy/node-config-provider': 4.3.8 + '@smithy/types': 4.12.0 tslib: 2.8.1 + '@aws-sdk/xml-builder@3.972.1': + dependencies: + '@smithy/types': 4.12.0 + fast-xml-parser: 5.2.5 + tslib: 2.8.1 + + '@aws/lambda-invoke-store@0.2.3': {} + '@babel/code-frame@7.27.1': dependencies: '@babel/helper-validator-identifier': 7.28.5 @@ -7654,7 +7794,7 @@ snapshots: '@next/env@14.2.34': {} - '@next/eslint-plugin-next@16.1.1-canary.22': + '@next/eslint-plugin-next@16.2.0-canary.6': dependencies: fast-glob: 3.3.1 @@ -8029,223 +8169,226 @@ snapshots: '@sindresorhus/is@7.1.0': {} - '@smithy/abort-controller@4.0.3': + '@smithy/abort-controller@4.2.8': dependencies: - '@smithy/types': 4.3.0 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/config-resolver@4.1.3': + '@smithy/config-resolver@4.4.6': dependencies: - '@smithy/node-config-provider': 4.1.2 - '@smithy/types': 4.3.0 - '@smithy/util-config-provider': 4.0.0 - '@smithy/util-middleware': 4.0.3 + '@smithy/node-config-provider': 4.3.8 + '@smithy/types': 4.12.0 + '@smithy/util-config-provider': 4.2.0 + '@smithy/util-endpoints': 3.2.8 + '@smithy/util-middleware': 4.2.8 tslib: 2.8.1 - '@smithy/core@3.4.0': - dependencies: - '@smithy/middleware-serde': 4.0.6 - '@smithy/protocol-http': 5.1.1 - '@smithy/types': 4.3.0 - '@smithy/util-body-length-browser': 4.0.0 - '@smithy/util-middleware': 4.0.3 - '@smithy/util-stream': 4.2.1 - '@smithy/util-utf8': 4.0.0 + '@smithy/core@3.21.1': + dependencies: + '@smithy/middleware-serde': 4.2.9 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 + '@smithy/util-base64': 4.3.0 + '@smithy/util-body-length-browser': 4.2.0 + '@smithy/util-middleware': 4.2.8 + '@smithy/util-stream': 4.5.10 + '@smithy/util-utf8': 4.2.0 + '@smithy/uuid': 1.1.0 tslib: 2.8.1 - '@smithy/credential-provider-imds@4.0.5': + '@smithy/credential-provider-imds@4.2.8': dependencies: - '@smithy/node-config-provider': 4.1.2 - '@smithy/property-provider': 4.0.3 - '@smithy/types': 4.3.0 - '@smithy/url-parser': 4.0.3 + '@smithy/node-config-provider': 4.3.8 + '@smithy/property-provider': 4.2.8 + '@smithy/types': 4.12.0 + '@smithy/url-parser': 4.2.8 tslib: 2.8.1 - '@smithy/eventstream-codec@4.0.3': + '@smithy/eventstream-codec@4.2.8': dependencies: '@aws-crypto/crc32': 5.2.0 - '@smithy/types': 4.3.0 - '@smithy/util-hex-encoding': 4.0.0 - tslib: 2.6.2 + '@smithy/types': 4.12.0 + '@smithy/util-hex-encoding': 4.2.0 + tslib: 2.8.1 - '@smithy/eventstream-serde-browser@4.0.3': + '@smithy/eventstream-serde-browser@4.2.8': dependencies: - '@smithy/eventstream-serde-universal': 4.0.3 - '@smithy/types': 4.3.0 - tslib: 2.6.2 + '@smithy/eventstream-serde-universal': 4.2.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 - '@smithy/eventstream-serde-config-resolver@4.1.1': + '@smithy/eventstream-serde-config-resolver@4.3.8': dependencies: - '@smithy/types': 4.3.0 - tslib: 2.6.2 + '@smithy/types': 4.12.0 + tslib: 2.8.1 - '@smithy/eventstream-serde-node@4.0.3': + '@smithy/eventstream-serde-node@4.2.8': dependencies: - '@smithy/eventstream-serde-universal': 4.0.3 - '@smithy/types': 4.3.0 - tslib: 2.6.2 + '@smithy/eventstream-serde-universal': 4.2.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 - '@smithy/eventstream-serde-universal@4.0.3': + '@smithy/eventstream-serde-universal@4.2.8': dependencies: - '@smithy/eventstream-codec': 4.0.3 - '@smithy/types': 4.3.0 - tslib: 2.6.2 + '@smithy/eventstream-codec': 4.2.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 - '@smithy/fetch-http-handler@5.0.3': + '@smithy/fetch-http-handler@5.3.9': dependencies: - '@smithy/protocol-http': 5.1.1 - '@smithy/querystring-builder': 4.0.3 - '@smithy/types': 4.3.0 - '@smithy/util-base64': 4.0.0 + '@smithy/protocol-http': 5.3.8 + '@smithy/querystring-builder': 4.2.8 + '@smithy/types': 4.12.0 + '@smithy/util-base64': 4.3.0 tslib: 2.8.1 - '@smithy/hash-node@4.0.3': + '@smithy/hash-node@4.2.8': dependencies: - '@smithy/types': 4.3.0 - '@smithy/util-buffer-from': 4.0.0 - '@smithy/util-utf8': 4.0.0 + '@smithy/types': 4.12.0 + '@smithy/util-buffer-from': 4.2.0 + '@smithy/util-utf8': 4.2.0 tslib: 2.8.1 - '@smithy/invalid-dependency@4.0.3': + '@smithy/invalid-dependency@4.2.8': dependencies: - '@smithy/types': 4.3.0 + '@smithy/types': 4.12.0 tslib: 2.8.1 '@smithy/is-array-buffer@2.2.0': dependencies: tslib: 2.8.1 - '@smithy/is-array-buffer@4.0.0': + '@smithy/is-array-buffer@4.2.0': dependencies: tslib: 2.8.1 - '@smithy/middleware-content-length@4.0.3': + '@smithy/middleware-content-length@4.2.8': dependencies: - '@smithy/protocol-http': 5.1.1 - '@smithy/types': 4.3.0 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/middleware-endpoint@4.1.7': + '@smithy/middleware-endpoint@4.4.11': dependencies: - '@smithy/core': 3.4.0 - '@smithy/middleware-serde': 4.0.6 - '@smithy/node-config-provider': 4.1.2 - '@smithy/shared-ini-file-loader': 4.0.3 - '@smithy/types': 4.3.0 - '@smithy/url-parser': 4.0.3 - '@smithy/util-middleware': 4.0.3 + '@smithy/core': 3.21.1 + '@smithy/middleware-serde': 4.2.9 + '@smithy/node-config-provider': 4.3.8 + '@smithy/shared-ini-file-loader': 4.4.3 + '@smithy/types': 4.12.0 + '@smithy/url-parser': 4.2.8 + '@smithy/util-middleware': 4.2.8 tslib: 2.8.1 - '@smithy/middleware-retry@4.1.8': + '@smithy/middleware-retry@4.4.27': dependencies: - '@smithy/node-config-provider': 4.1.2 - '@smithy/protocol-http': 5.1.1 - '@smithy/service-error-classification': 4.0.4 - '@smithy/smithy-client': 4.3.0 - '@smithy/types': 4.3.0 - '@smithy/util-middleware': 4.0.3 - '@smithy/util-retry': 4.0.4 + '@smithy/node-config-provider': 4.3.8 + '@smithy/protocol-http': 5.3.8 + '@smithy/service-error-classification': 4.2.8 + '@smithy/smithy-client': 4.10.12 + '@smithy/types': 4.12.0 + '@smithy/util-middleware': 4.2.8 + '@smithy/util-retry': 4.2.8 + '@smithy/uuid': 1.1.0 tslib: 2.8.1 - uuid: 9.0.1 - '@smithy/middleware-serde@4.0.6': + '@smithy/middleware-serde@4.2.9': dependencies: - '@smithy/protocol-http': 5.1.1 - '@smithy/types': 4.3.0 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/middleware-stack@4.0.3': + '@smithy/middleware-stack@4.2.8': dependencies: - '@smithy/types': 4.3.0 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/node-config-provider@4.1.2': + '@smithy/node-config-provider@4.3.8': dependencies: - '@smithy/property-provider': 4.0.3 - '@smithy/shared-ini-file-loader': 4.0.3 - '@smithy/types': 4.3.0 + '@smithy/property-provider': 4.2.8 + '@smithy/shared-ini-file-loader': 4.4.3 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/node-http-handler@4.0.5': + '@smithy/node-http-handler@4.4.8': dependencies: - '@smithy/abort-controller': 4.0.3 - '@smithy/protocol-http': 5.1.1 - '@smithy/querystring-builder': 4.0.3 - '@smithy/types': 4.3.0 + '@smithy/abort-controller': 4.2.8 + '@smithy/protocol-http': 5.3.8 + '@smithy/querystring-builder': 4.2.8 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/property-provider@4.0.3': + '@smithy/property-provider@4.2.8': dependencies: - '@smithy/types': 4.3.0 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/protocol-http@5.1.1': + '@smithy/protocol-http@5.3.8': dependencies: - '@smithy/types': 4.3.0 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/querystring-builder@4.0.3': + '@smithy/querystring-builder@4.2.8': dependencies: - '@smithy/types': 4.3.0 - '@smithy/util-uri-escape': 4.0.0 + '@smithy/types': 4.12.0 + '@smithy/util-uri-escape': 4.2.0 tslib: 2.8.1 - '@smithy/querystring-parser@4.0.3': + '@smithy/querystring-parser@4.2.8': dependencies: - '@smithy/types': 4.3.0 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/service-error-classification@4.0.4': + '@smithy/service-error-classification@4.2.8': dependencies: - '@smithy/types': 4.3.0 + '@smithy/types': 4.12.0 - '@smithy/shared-ini-file-loader@4.0.3': + '@smithy/shared-ini-file-loader@4.4.3': dependencies: - '@smithy/types': 4.3.0 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/signature-v4@5.1.1': + '@smithy/signature-v4@5.3.8': dependencies: - '@smithy/is-array-buffer': 4.0.0 - '@smithy/protocol-http': 5.1.1 - '@smithy/types': 4.3.0 - '@smithy/util-hex-encoding': 4.0.0 - '@smithy/util-middleware': 4.0.3 - '@smithy/util-uri-escape': 4.0.0 - '@smithy/util-utf8': 4.0.0 + '@smithy/is-array-buffer': 4.2.0 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 + '@smithy/util-hex-encoding': 4.2.0 + '@smithy/util-middleware': 4.2.8 + '@smithy/util-uri-escape': 4.2.0 + '@smithy/util-utf8': 4.2.0 tslib: 2.8.1 - '@smithy/smithy-client@4.3.0': + '@smithy/smithy-client@4.10.12': dependencies: - '@smithy/core': 3.4.0 - '@smithy/middleware-endpoint': 4.1.7 - '@smithy/middleware-stack': 4.0.3 - '@smithy/protocol-http': 5.1.1 - '@smithy/types': 4.3.0 - '@smithy/util-stream': 4.2.1 + '@smithy/core': 3.21.1 + '@smithy/middleware-endpoint': 4.4.11 + '@smithy/middleware-stack': 4.2.8 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 + '@smithy/util-stream': 4.5.10 tslib: 2.8.1 - '@smithy/types@4.3.0': + '@smithy/types@4.12.0': dependencies: tslib: 2.8.1 - '@smithy/url-parser@4.0.3': + '@smithy/url-parser@4.2.8': dependencies: - '@smithy/querystring-parser': 4.0.3 - '@smithy/types': 4.3.0 + '@smithy/querystring-parser': 4.2.8 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/util-base64@4.0.0': + '@smithy/util-base64@4.3.0': dependencies: - '@smithy/util-buffer-from': 4.0.0 - '@smithy/util-utf8': 4.0.0 + '@smithy/util-buffer-from': 4.2.0 + '@smithy/util-utf8': 4.2.0 tslib: 2.8.1 - '@smithy/util-body-length-browser@4.0.0': + '@smithy/util-body-length-browser@4.2.0': dependencies: tslib: 2.8.1 - '@smithy/util-body-length-node@4.0.0': + '@smithy/util-body-length-node@4.2.1': dependencies: tslib: 2.8.1 @@ -8254,66 +8397,65 @@ snapshots: '@smithy/is-array-buffer': 2.2.0 tslib: 2.8.1 - '@smithy/util-buffer-from@4.0.0': + '@smithy/util-buffer-from@4.2.0': dependencies: - '@smithy/is-array-buffer': 4.0.0 + '@smithy/is-array-buffer': 4.2.0 tslib: 2.8.1 - '@smithy/util-config-provider@4.0.0': + '@smithy/util-config-provider@4.2.0': dependencies: tslib: 2.8.1 - '@smithy/util-defaults-mode-browser@4.0.15': + '@smithy/util-defaults-mode-browser@4.3.26': dependencies: - '@smithy/property-provider': 4.0.3 - '@smithy/smithy-client': 4.3.0 - '@smithy/types': 4.3.0 - bowser: 2.11.0 + '@smithy/property-provider': 4.2.8 + '@smithy/smithy-client': 4.10.12 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/util-defaults-mode-node@4.0.15': + '@smithy/util-defaults-mode-node@4.2.29': dependencies: - '@smithy/config-resolver': 4.1.3 - '@smithy/credential-provider-imds': 4.0.5 - '@smithy/node-config-provider': 4.1.2 - '@smithy/property-provider': 4.0.3 - '@smithy/smithy-client': 4.3.0 - '@smithy/types': 4.3.0 + '@smithy/config-resolver': 4.4.6 + '@smithy/credential-provider-imds': 4.2.8 + '@smithy/node-config-provider': 4.3.8 + '@smithy/property-provider': 4.2.8 + '@smithy/smithy-client': 4.10.12 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/util-endpoints@3.0.5': + '@smithy/util-endpoints@3.2.8': dependencies: - '@smithy/node-config-provider': 4.1.2 - '@smithy/types': 4.3.0 + '@smithy/node-config-provider': 4.3.8 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/util-hex-encoding@4.0.0': + '@smithy/util-hex-encoding@4.2.0': dependencies: tslib: 2.8.1 - '@smithy/util-middleware@4.0.3': + '@smithy/util-middleware@4.2.8': dependencies: - '@smithy/types': 4.3.0 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/util-retry@4.0.4': + '@smithy/util-retry@4.2.8': dependencies: - '@smithy/service-error-classification': 4.0.4 - '@smithy/types': 4.3.0 + '@smithy/service-error-classification': 4.2.8 + '@smithy/types': 4.12.0 tslib: 2.8.1 - '@smithy/util-stream@4.2.1': + '@smithy/util-stream@4.5.10': dependencies: - '@smithy/fetch-http-handler': 5.0.3 - '@smithy/node-http-handler': 4.0.5 - '@smithy/types': 4.3.0 - '@smithy/util-base64': 4.0.0 - '@smithy/util-buffer-from': 4.0.0 - '@smithy/util-hex-encoding': 4.0.0 - '@smithy/util-utf8': 4.0.0 + '@smithy/fetch-http-handler': 5.3.9 + '@smithy/node-http-handler': 4.4.8 + '@smithy/types': 4.12.0 + '@smithy/util-base64': 4.3.0 + '@smithy/util-buffer-from': 4.2.0 + '@smithy/util-hex-encoding': 4.2.0 + '@smithy/util-utf8': 4.2.0 tslib: 2.8.1 - '@smithy/util-uri-escape@4.0.0': + '@smithy/util-uri-escape@4.2.0': dependencies: tslib: 2.8.1 @@ -8322,9 +8464,13 @@ snapshots: '@smithy/util-buffer-from': 2.2.0 tslib: 2.8.1 - '@smithy/util-utf8@4.0.0': + '@smithy/util-utf8@4.2.0': + dependencies: + '@smithy/util-buffer-from': 4.2.0 + tslib: 2.8.1 + + '@smithy/uuid@1.1.0': dependencies: - '@smithy/util-buffer-from': 4.0.0 tslib: 2.8.1 '@speed-highlight/core@1.2.7': {} @@ -8471,7 +8617,7 @@ snapshots: '@types/range-parser@1.2.7': {} - '@types/react@19.2.8': + '@types/react@19.2.9': dependencies: csstype: 3.2.3 @@ -8763,9 +8909,9 @@ snapshots: react-dom: 19.2.3(react@19.2.3) sugar-high: 0.4.7 - '@vercel/functions@1.5.0(@aws-sdk/credential-provider-web-identity@3.817.0)': + '@vercel/functions@1.5.0(@aws-sdk/credential-provider-web-identity@3.972.1)': optionalDependencies: - '@aws-sdk/credential-provider-web-identity': 3.817.0 + '@aws-sdk/credential-provider-web-identity': 3.972.1 '@vercel/kv@0.2.2': dependencies: @@ -8896,7 +9042,7 @@ snapshots: '@vue/reactivity': 3.5.22 '@vue/runtime-core': 3.5.22 '@vue/shared': 3.5.22 - csstype: 3.1.3 + csstype: 3.2.3 '@vue/server-renderer@3.5.22(vue@3.5.22(typescript@5.3.3))': dependencies: @@ -9263,11 +9409,11 @@ snapshots: dependencies: fill-range: 7.1.1 - braintrust@0.3.7(@aws-sdk/credential-provider-web-identity@3.817.0)(zod@3.25.34): + braintrust@0.3.7(@aws-sdk/credential-provider-web-identity@3.972.1)(zod@3.25.34): dependencies: '@ai-sdk/provider': 1.1.3 '@next/env': 14.2.3 - '@vercel/functions': 1.5.0(@aws-sdk/credential-provider-web-identity@3.817.0) + '@vercel/functions': 1.5.0(@aws-sdk/credential-provider-web-identity@3.972.1) argparse: 2.0.1 chalk: 4.1.2 cli-progress: 3.12.0 @@ -9592,8 +9738,6 @@ snapshots: cssesc@3.0.0: {} - csstype@3.1.3: {} - csstype@3.2.3: {} d@1.0.1: @@ -10099,13 +10243,13 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-next@16.1.1-canary.22(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0)(typescript@4.7.4): + eslint-config-next@16.2.0-canary.6(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0)(typescript@4.7.4): dependencies: - '@next/eslint-plugin-next': 16.1.1-canary.22 + '@next/eslint-plugin-next': 16.2.0-canary.6 eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0))(eslint@8.56.0) - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0))(eslint@8.56.0))(eslint@8.56.0) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) eslint-plugin-jsx-a11y: 6.10.2(eslint@8.56.0) eslint-plugin-react: 7.37.5(eslint@8.56.0) eslint-plugin-react-hooks: 7.0.1(eslint@8.56.0) @@ -10118,10 +10262,10 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-config-turbo@2.7.4(eslint@8.57.1)(turbo@2.5.6): + eslint-config-turbo@2.7.5(eslint@8.57.1)(turbo@2.5.6): dependencies: eslint: 8.57.1 - eslint-plugin-turbo: 2.7.4(eslint@8.57.1)(turbo@2.5.6) + eslint-plugin-turbo: 2.7.5(eslint@8.57.1)(turbo@2.5.6) turbo: 2.5.6 eslint-import-resolver-node@0.3.9: @@ -10138,7 +10282,7 @@ snapshots: enhanced-resolve: 5.15.0 eslint: 8.56.0 eslint-module-utils: 2.8.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0))(eslint@8.56.0))(eslint@8.56.0) - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0))(eslint@8.56.0))(eslint@8.56.0) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) fast-glob: 3.3.2 get-tsconfig: 4.7.2 is-core-module: 2.13.1 @@ -10171,7 +10315,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0))(eslint@8.56.0))(eslint@8.56.0): + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.9 @@ -10252,7 +10396,7 @@ snapshots: string.prototype.matchall: 4.0.12 string.prototype.repeat: 1.0.0 - eslint-plugin-turbo@2.7.4(eslint@8.57.1)(turbo@2.5.6): + eslint-plugin-turbo@2.7.5(eslint@8.57.1)(turbo@2.5.6): dependencies: dotenv: 16.0.3 eslint: 8.57.1 @@ -10515,9 +10659,9 @@ snapshots: fast-uri@3.0.6: {} - fast-xml-parser@4.4.1: + fast-xml-parser@5.2.5: dependencies: - strnum: 1.0.5 + strnum: 2.1.2 fastq@1.19.1: dependencies: @@ -12455,7 +12599,7 @@ snapshots: solid-js@1.9.10: dependencies: - csstype: 3.1.3 + csstype: 3.2.3 seroval: 1.3.2 seroval-plugins: 1.3.3(seroval@1.3.2) @@ -12628,7 +12772,7 @@ snapshots: strip-json-comments@3.1.1: {} - strnum@1.0.5: {} + strnum@2.1.2: {} styled-jsx@5.1.1(@babel/core@7.28.3)(react@19.2.3): dependencies: From 75773cfa1df634664da64c424dedd93cdc52f61f Mon Sep 17 00:00:00 2001 From: Olmo Maldonado Date: Fri, 23 Jan 2026 22:52:23 -0800 Subject: [PATCH 2/3] lint --- packages/proxy/schema/secrets.ts | 15 ++++++++++++++- packages/proxy/src/providers/bedrock.ts | 9 ++++----- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/packages/proxy/schema/secrets.ts b/packages/proxy/schema/secrets.ts index 25932ad9..dda8a2f4 100644 --- a/packages/proxy/schema/secrets.ts +++ b/packages/proxy/schema/secrets.ts @@ -34,7 +34,7 @@ export const AzureEntraSecretSchema = z.object({ }); export type AzureEntraSecret = z.infer; -export const BedrockMetadataSchema = BaseMetadataSchema.merge( +const BedrockMetadataSchemaBase = BaseMetadataSchema.merge( z.object({ region: z.string().min(1, "Region cannot be empty"), auth_type: z @@ -45,6 +45,19 @@ export const BedrockMetadataSchema = BaseMetadataSchema.merge( api_base: z.union([z.string().url(), z.string().length(0)]).nullish(), }), ).strict(); +export const BedrockMetadataSchema = BedrockMetadataSchemaBase; +export const BedrockMetadataSchemaWithAuth = + BedrockMetadataSchemaBase.superRefine((data, ctx) => { + if ((data.auth_type ?? "iam_credentials") === "iam_credentials") { + if (!data.access_key) { + ctx.addIssue({ + code: z.ZodIssueCode.custom, + message: "Access key is required for IAM credentials", + path: ["access_key"], + }); + } + } + }); export type BedrockMetadata = z.infer; export const VertexMetadataSchema = BaseMetadataSchema.merge( diff --git a/packages/proxy/src/providers/bedrock.ts b/packages/proxy/src/providers/bedrock.ts index a7100852..9c024ca8 100644 --- a/packages/proxy/src/providers/bedrock.ts +++ b/packages/proxy/src/providers/bedrock.ts @@ -24,8 +24,7 @@ import { } from "../generated_types"; import { APISecret, - BedrockMetadata, - BedrockMetadataSchema, + BedrockMetadataSchemaWithAuth, MessageTypeToMessageType, } from "@schema"; import { OpenAIChatCompletion, OpenAIChatCompletionChunk } from "@types"; @@ -121,7 +120,7 @@ export async function fetchBedrockAnthropicMessages({ auth_type = "iam_credentials", access_key: accessKeyId, session_token: sessionToken, - } = BedrockMetadataSchema.parse(metadata); + } = BedrockMetadataSchemaWithAuth.parse(metadata); const { model, stream, ...rest } = z .object({ model: z.string(), @@ -216,7 +215,7 @@ export async function fetchBedrockAnthropic({ throw new Error("Bedrock: expected model"); } - const metadata = secret.metadata as BedrockMetadata; + const metadata = BedrockMetadataSchemaWithAuth.parse(secret.metadata); const auth_type = metadata.auth_type ?? "iam_credentials"; const input = { @@ -559,7 +558,7 @@ export async function fetchConverse({ throw new Error("Bedrock: expected model"); } - const metadata = secret.metadata as BedrockMetadata; + const metadata = BedrockMetadataSchemaWithAuth.parse(secret.metadata); const auth_type = metadata.auth_type ?? "iam_credentials"; let messages: Array | undefined = undefined; From b7f1a1aaa86d4c6dbc3ad8910888680fe1428f82 Mon Sep 17 00:00:00 2001 From: Olmo Maldonado Date: Mon, 26 Jan 2026 17:37:49 -0800 Subject: [PATCH 3/3] downgrade to keep visit --- packages/proxy/package.json | 2 +- packages/proxy/schema/secrets.ts | 20 +- packages/proxy/src/providers/bedrock.ts | 108 ++--- pnpm-lock.yaml | 542 +++++++++++++++--------- 4 files changed, 386 insertions(+), 286 deletions(-) diff --git a/packages/proxy/package.json b/packages/proxy/package.json index c03b0ad4..37a8b9c5 100644 --- a/packages/proxy/package.json +++ b/packages/proxy/package.json @@ -101,7 +101,7 @@ }, "dependencies": { "@anthropic-ai/sdk": "^0.71.2", - "@aws-sdk/client-bedrock-runtime": "^3.975.0", + "@aws-sdk/client-bedrock-runtime": "^3.920.0", "@breezystack/lamejs": "^1.2.7", "@openapi-contrib/json-schema-to-openapi-schema": "^4.2.0", "@opentelemetry/api": "1.9.0", diff --git a/packages/proxy/schema/secrets.ts b/packages/proxy/schema/secrets.ts index dda8a2f4..4ab582b8 100644 --- a/packages/proxy/schema/secrets.ts +++ b/packages/proxy/schema/secrets.ts @@ -34,30 +34,14 @@ export const AzureEntraSecretSchema = z.object({ }); export type AzureEntraSecret = z.infer; -const BedrockMetadataSchemaBase = BaseMetadataSchema.merge( +export const BedrockMetadataSchema = BaseMetadataSchema.merge( z.object({ region: z.string().min(1, "Region cannot be empty"), - auth_type: z - .enum(["iam_credentials", "api_key"]) - .default("iam_credentials"), - access_key: z.string().nullish(), + access_key: z.string().min(1, "Access key cannot be empty"), session_token: z.string().nullish(), api_base: z.union([z.string().url(), z.string().length(0)]).nullish(), }), ).strict(); -export const BedrockMetadataSchema = BedrockMetadataSchemaBase; -export const BedrockMetadataSchemaWithAuth = - BedrockMetadataSchemaBase.superRefine((data, ctx) => { - if ((data.auth_type ?? "iam_credentials") === "iam_credentials") { - if (!data.access_key) { - ctx.addIssue({ - code: z.ZodIssueCode.custom, - message: "Access key is required for IAM credentials", - path: ["access_key"], - }); - } - } - }); export type BedrockMetadata = z.infer; export const VertexMetadataSchema = BaseMetadataSchema.merge( diff --git a/packages/proxy/src/providers/bedrock.ts b/packages/proxy/src/providers/bedrock.ts index 9c024ca8..2e4b66da 100644 --- a/packages/proxy/src/providers/bedrock.ts +++ b/packages/proxy/src/providers/bedrock.ts @@ -5,15 +5,15 @@ import { ConverseCommand, ConverseCommandOutput, ConverseStreamCommand, - ConverseStreamOutput, ImageFormat, InferenceConfiguration, InvokeModelCommand, InvokeModelWithResponseStreamCommand, - ResponseStream, StopReason, SystemContentBlock, ToolConfiguration, + ConverseStreamOutput, + ResponseStream, } from "@aws-sdk/client-bedrock-runtime"; import { type MessageRoleType as MessageRole, @@ -24,7 +24,8 @@ import { } from "../generated_types"; import { APISecret, - BedrockMetadataSchemaWithAuth, + BedrockMetadata, + BedrockMetadataSchema, MessageTypeToMessageType, } from "@schema"; import { OpenAIChatCompletion, OpenAIChatCompletionChunk } from "@types"; @@ -117,10 +118,9 @@ export async function fetchBedrockAnthropicMessages({ }): Promise { const { region, - auth_type = "iam_credentials", access_key: accessKeyId, session_token: sessionToken, - } = BedrockMetadataSchemaWithAuth.parse(metadata); + } = BedrockMetadataSchema.parse(metadata); const { model, stream, ...rest } = z .object({ model: z.string(), @@ -128,7 +128,6 @@ export async function fetchBedrockAnthropicMessages({ }) .passthrough() .parse(body); - const brc = new BedrockRuntimeClient({ endpoint: type === "bedrock" && @@ -138,18 +137,11 @@ export async function fetchBedrockAnthropicMessages({ ? metadata.api_base : undefined, region, - ...(auth_type === "api_key" - ? { - token: { token: secret }, - authSchemePreference: ["httpBearerAuth"], - } - : { - credentials: { - accessKeyId: accessKeyId!, - secretAccessKey: secret, - ...(sessionToken ? { sessionToken } : {}), - }, - }), + credentials: { + accessKeyId, + secretAccessKey: secret, + ...(sessionToken ? { sessionToken } : {}), + }, }); const input = { contentType: "application/json", @@ -215,8 +207,22 @@ export async function fetchBedrockAnthropic({ throw new Error("Bedrock: expected model"); } - const metadata = BedrockMetadataSchemaWithAuth.parse(secret.metadata); - const auth_type = metadata.auth_type ?? "iam_credentials"; + const metadata = secret.metadata as BedrockMetadata; + + const brt = new BedrockRuntimeClient({ + endpoint: + metadata.api_base && metadata.api_base.length > 0 + ? metadata.api_base + : undefined, + region: metadata.region, + credentials: { + accessKeyId: metadata.access_key, + secretAccessKey: secret.secret, + ...(metadata.session_token + ? { sessionToken: metadata.session_token } + : {}), + }, + }); const input = { body: new TextEncoder().encode( @@ -233,28 +239,6 @@ export async function fetchBedrockAnthropic({ status: 200, }); - const brt = new BedrockRuntimeClient({ - endpoint: - metadata.api_base && metadata.api_base.length > 0 - ? metadata.api_base - : undefined, - region: metadata.region, - ...(auth_type === "api_key" - ? { - token: { token: secret.secret }, - authSchemePreference: ["httpBearerAuth"], - } - : { - credentials: { - accessKeyId: metadata.access_key!, - secretAccessKey: secret.secret, - ...(metadata.session_token - ? { sessionToken: metadata.session_token } - : {}), - }, - }), - }); - let usage: Partial = {}; let responseStream; if (stream) { @@ -558,8 +542,22 @@ export async function fetchConverse({ throw new Error("Bedrock: expected model"); } - const metadata = BedrockMetadataSchemaWithAuth.parse(secret.metadata); - const auth_type = metadata.auth_type ?? "iam_credentials"; + const metadata = secret.metadata as BedrockMetadata; + + const brt = new BedrockRuntimeClient({ + endpoint: + metadata.api_base && metadata.api_base.length > 0 + ? metadata.api_base + : undefined, + region: metadata.region, + credentials: { + accessKeyId: metadata.access_key, + secretAccessKey: secret.secret, + ...(metadata.session_token + ? { sessionToken: metadata.session_token } + : {}), + }, + }); let messages: Array | undefined = undefined; let system: SystemContentBlock[] | undefined = undefined; @@ -676,28 +674,6 @@ export async function fetchConverse({ status: 200, }); - const brt = new BedrockRuntimeClient({ - endpoint: - metadata.api_base && metadata.api_base.length > 0 - ? metadata.api_base - : undefined, - region: metadata.region, - ...(auth_type === "api_key" - ? { - token: { token: secret.secret }, - authSchemePreference: ["httpBearerAuth"], - } - : { - credentials: { - accessKeyId: metadata.access_key!, - secretAccessKey: secret.secret, - ...(metadata.session_token - ? { sessionToken: metadata.session_token } - : {}), - }, - }), - }); - let responseStream; try { if (doStream) { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8fa0806f..4b86407a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,7 +16,7 @@ importers: version: 8.57.1 eslint-config-turbo: specifier: latest - version: 2.7.5(eslint@8.57.1)(turbo@2.5.6) + version: 2.7.6(eslint@8.57.1)(turbo@2.5.6) prettier: specifier: 3.3.2 version: 3.3.2 @@ -86,7 +86,7 @@ importers: version: 2.32.0 ai: specifier: 2.2.22 - version: 2.2.22(react@19.2.3)(solid-js@1.9.10)(svelte@4.2.20)(vue@3.5.22(typescript@5.3.3)) + version: 2.2.22(react@19.2.4)(solid-js@1.9.10)(svelte@4.2.20)(vue@3.5.22(typescript@5.3.3)) aws-lambda: specifier: ^1.0.7 version: 1.0.7 @@ -159,19 +159,19 @@ importers: version: 0.4.3 '@vercel/examples-ui': specifier: ^1.0.5 - version: 1.0.5(next@14.2.34(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + version: 1.0.5(next@14.2.34(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@vercel/kv': specifier: ^0.2.2 version: 0.2.2 next: specifier: 14.2.34 - version: 14.2.34(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + version: 14.2.34(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: specifier: latest - version: 19.2.3 + version: 19.2.4 react-dom: specifier: latest - version: 19.2.3(react@19.2.3) + version: 19.2.4(react@19.2.4) devDependencies: '@types/node': specifier: ^17.0.45 @@ -187,7 +187,7 @@ importers: version: 8.56.0 eslint-config-next: specifier: canary - version: 16.2.0-canary.6(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0)(typescript@4.7.4) + version: 16.2.0-canary.11(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0)(typescript@4.7.4) postcss: specifier: ^8.4.21 version: 8.4.38 @@ -207,8 +207,8 @@ importers: specifier: ^0.71.2 version: 0.71.2(zod@3.25.34) '@aws-sdk/client-bedrock-runtime': - specifier: ^3.975.0 - version: 3.975.0 + specifier: ^3.920.0 + version: 3.920.0 '@breezystack/lamejs': specifier: ^1.2.7 version: 1.2.7 @@ -385,97 +385,121 @@ packages: '@aws-crypto/util@5.2.0': resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==} - '@aws-sdk/client-bedrock-runtime@3.975.0': - resolution: {integrity: sha512-ZptHL8Z8y2m6sq1ksl+MIGoXxzRkWuOzqbGOd+P5htwIX0kEvzmxPwAqyCoiULn1OjS+kB+TCxfvBUVyglq3MQ==} - engines: {node: '>=20.0.0'} + '@aws-sdk/client-bedrock-runtime@3.920.0': + resolution: {integrity: sha512-PSevjQi8k9TqbTBnn5bT5bh3ctA8e85BTN9zxwkL4iOPlx5VBm3Hbi7CO03d2t42l8mW38sQ7m0HBl1WpS4PLA==} + engines: {node: '>=18.0.0'} - '@aws-sdk/client-sso@3.974.0': - resolution: {integrity: sha512-ci+GiM0c4ULo4D79UMcY06LcOLcfvUfiyt8PzNY0vbt5O8BfCPYf4QomwVgkNcLLCYmroO4ge2Yy1EsLUlcD6g==} - engines: {node: '>=20.0.0'} + '@aws-sdk/client-sso@3.920.0': + resolution: {integrity: sha512-m/Gb/ojGX4uqJAcvFWCbutVBnRXAKnlU+rrHUy3ugmg4lmMl1RjP4mwqlj+p+thCq2OmoEJtqZIuO2a/5N/NPA==} + engines: {node: '>=18.0.0'} + + '@aws-sdk/core@3.920.0': + resolution: {integrity: sha512-vETnyaBJgIK6dh0hXzxw8e6v9SEFs/NgP6fJOn87QC+0M8U/omaB298kJ+i7P3KJafW6Pv/CWTsciMP/NNrg6A==} + engines: {node: '>=18.0.0'} '@aws-sdk/core@3.973.1': resolution: {integrity: sha512-Ocubx42QsMyVs9ANSmFpRm0S+hubWljpPLjOi9UFrtcnVJjrVJTzQ51sN0e5g4e8i8QZ7uY73zosLmgYL7kZTQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-env@3.972.1': - resolution: {integrity: sha512-/etNHqnx96phy/SjI0HRC588o4vKH5F0xfkZ13yAATV7aNrb+5gYGNE6ePWafP+FuZ3HkULSSlJFj0AxgrAqYw==} - engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-env@3.920.0': + resolution: {integrity: sha512-f8AcW9swaoJnJIj43TNyUVCR7ToEbUftD9y5Ht6IwNhRq2iPwZ7uTvgrkjfdxOayj1uD7Gw5MkeC3Ki5lcsasA==} + engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-http@3.972.2': - resolution: {integrity: sha512-mXgdaUfe5oM+tWKyeZ7Vh/iQ94FrkMky1uuzwTOmFADiRcSk5uHy/e3boEFedXiT/PRGzgBmqvJVK4F6lUISCg==} - engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-http@3.920.0': + resolution: {integrity: sha512-C75OGAnyHuILiIFfwbSUyV1YIJvcQt2U63IqlZ25eufV1NA+vP3Y60nvaxrzSxvditxXL95+YU3iLa4n2M0Omw==} + engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-ini@3.972.1': - resolution: {integrity: sha512-OdbJA3v+XlNDsrYzNPRUwr8l7gw1r/nR8l4r96MDzSBDU8WEo8T6C06SvwaXR8SpzsjO3sq5KMP86wXWg7Rj4g==} - engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-ini@3.920.0': + resolution: {integrity: sha512-rwTWfPhE2cs1kQ5dBpOEedhlzNcXf9LRzd9K4rn577pLJiWUc/n/Ibh4Hvw8Px1cp9krIk1q6wo+iK+kLQD8YA==} + engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-login@3.972.1': - resolution: {integrity: sha512-CccqDGL6ZrF3/EFWZefvKW7QwwRdxlHUO8NVBKNVcNq6womrPDvqB6xc9icACtE0XB0a7PLoSTkAg8bQVkTO2w==} - engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-node@3.920.0': + resolution: {integrity: sha512-PGlmTe22KOLzk79urV7ILRF2ka3RXkiS6B5dgJC+OUjf209plcI+fs/p/sGdKCGCrPCYWgTHgqpyY2c8nO9B2A==} + engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-node@3.972.1': - resolution: {integrity: sha512-DwXPk9GfuU/xG9tmCyXFVkCr6X3W8ZCoL5Ptb0pbltEx1/LCcg7T+PBqDlPiiinNCD6ilIoMJDWsnJ8ikzZA7Q==} - engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-process@3.920.0': + resolution: {integrity: sha512-7dc0L0BCme4P17BgK/RtWLmwnM/R+si4Xd1cZe1oBLWRV+s++AXU/nDwfy1ErOLVpE9+lGG3Iw5zEPA/pJc7gQ==} + engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-process@3.972.1': - resolution: {integrity: sha512-bi47Zigu3692SJwdBvo8y1dEwE6B61stCwCFnuRWJVTfiM84B+VTSCV661CSWJmIZzmcy7J5J3kWyxL02iHj0w==} - engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-sso@3.920.0': + resolution: {integrity: sha512-+g1ajAa7nZGyLjKvQTzbasFvBwVWqMYSJl/3GbM61rpgjyHjeTPDZy2WXpQcpVGeCp6fWJG3J36Qjj7f9pfNeQ==} + engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-sso@3.972.1': - resolution: {integrity: sha512-dLZVNhM7wSgVUFsgVYgI5hb5Z/9PUkT46pk/SHrSmUqfx6YDvoV4YcPtaiRqviPpEGGiRtdQMEadyOKIRqulUQ==} - engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-web-identity@3.920.0': + resolution: {integrity: sha512-B/YX/5A9LcYBLMjb9Fjn88KEJXdl22dSGwLfW/iHr/ET7XrZgc2Vh+f0KtsH+0GOa/uq7m1G6rIuvQ6FojpJ1A==} + engines: {node: '>=18.0.0'} '@aws-sdk/credential-provider-web-identity@3.972.1': resolution: {integrity: sha512-YMDeYgi0u687Ay0dAq/pFPKuijrlKTgsaB/UATbxCs/FzZfMiG4If5ksywHmmW7MiYUF8VVv+uou3TczvLrN4w==} engines: {node: '>=20.0.0'} - '@aws-sdk/eventstream-handler-node@3.972.1': - resolution: {integrity: sha512-sbPqSY+BjhHDTRUhCEvCY3lNL76FcPxiTuYesbSV0ZBfPT1JONjkAT8U6DIAy9C0ynlEuPfdVngMAOFDxP0kcQ==} - engines: {node: '>=20.0.0'} + '@aws-sdk/eventstream-handler-node@3.920.0': + resolution: {integrity: sha512-x1UI/oH5En296DWDt98B0w6maxSprCf2UZQtROmJWJ/XCAgvU9FIru6gI4Pui+vR3RS86nJrSBOaJ5Kd0/oKdg==} + engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-eventstream@3.972.1': - resolution: {integrity: sha512-40iO9eYwycHmyZ5MnBRlQy35P7Aug3FRVAfrU8Lp88Ti66amJynvzgAuM+JaE/4LUTfFWigLfmdIp/d8CX625g==} - engines: {node: '>=20.0.0'} + '@aws-sdk/middleware-eventstream@3.920.0': + resolution: {integrity: sha512-CYn7DtPffYpxtloIBRgCeAv4Dk53OQq2ijgjyRmMW/Rbz5PRG8XK/w6stm5Xg0p92l0nj6JHoYT+2QlSHHMlYA==} + engines: {node: '>=18.0.0'} + + '@aws-sdk/middleware-host-header@3.920.0': + resolution: {integrity: sha512-XQv9GRKGhXuWv797l/GnE9pt4UhlbzY39f2G3prcsLJCLyeIMeZ00QACIyshlArQ3ZhJp5FCRGGBcoSPQ2nk0Q==} + engines: {node: '>=18.0.0'} '@aws-sdk/middleware-host-header@3.972.1': resolution: {integrity: sha512-/R82lXLPmZ9JaUGSUdKtBp2k/5xQxvBT3zZWyKiBOhyulFotlfvdlrO8TnqstBimsl4lYEYySDL+W6ldFh6ALg==} engines: {node: '>=20.0.0'} + '@aws-sdk/middleware-logger@3.920.0': + resolution: {integrity: sha512-96v4hvJ9Cg/+XTYtM2aVTwZPzDOwyUiBh+FLioMng32mR64ofO1lvet4Zi1Uer9j7s086th3DJWkvqpi3K83dQ==} + engines: {node: '>=18.0.0'} + '@aws-sdk/middleware-logger@3.972.1': resolution: {integrity: sha512-JGgFl6cHg9G2FHu4lyFIzmFN8KESBiRr84gLC3Aeni0Gt1nKm+KxWLBuha/RPcXxJygGXCcMM4AykkIwxor8RA==} engines: {node: '>=20.0.0'} + '@aws-sdk/middleware-recursion-detection@3.920.0': + resolution: {integrity: sha512-5OfZ4RDYAW08kxMaGxIebJoUhzH7/MpGOoPzVMfxxfGbf+e4p0DNHJ9EL6msUAsbGBhGccDl1b4aytnYW+IkgA==} + engines: {node: '>=18.0.0'} + '@aws-sdk/middleware-recursion-detection@3.972.1': resolution: {integrity: sha512-taGzNRe8vPHjnliqXIHp9kBgIemLE/xCaRTMH1NH0cncHeaPcjxtnCroAAM9aOlPuKvBe2CpZESyvM1+D8oI7Q==} engines: {node: '>=20.0.0'} + '@aws-sdk/middleware-user-agent@3.920.0': + resolution: {integrity: sha512-7kvJyz7a1v0C243DJUZTu4C++4U5gyFYKN35Ng7rBR03kQC8oE10qHfWNNc39Lj3urabjRvQ80e06pA/vCZ8xA==} + engines: {node: '>=18.0.0'} + '@aws-sdk/middleware-user-agent@3.972.2': resolution: {integrity: sha512-d+Exq074wy0X6wvShg/kmZVtkah+28vMuqCtuY3cydg8LUZOJBtbAolCpEJizSyb8mJJZF9BjWaTANXL4OYnkg==} engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-websocket@3.972.1': - resolution: {integrity: sha512-zej/2+u6KCEHUipHW/4KXwj+4PTJkrORwR4KHNHE8ATdzLf7hwu7HsPK+TyQXZSftH+VqYkFmTbyF9OPxOpwmw==} + '@aws-sdk/middleware-websocket@3.920.0': + resolution: {integrity: sha512-DpPL8r0XUUTgUiwvR9NRDFy966uhL3Cyh3R2Qlvu2vhSnyH8hSB1QU8BUeXfbOZRBCbG71oe6QWtKHhEjABHcQ==} engines: {node: '>= 14.0.0'} + '@aws-sdk/nested-clients@3.920.0': + resolution: {integrity: sha512-1JlzZJ0qp68zr6wPoLFwZ0+EH6HQvKMJjF8e2y9yO82LC3CsetaMxLUC2em7uY+3Gp0TMSA/Yxy4rTShf0vmng==} + engines: {node: '>=18.0.0'} + '@aws-sdk/nested-clients@3.974.0': resolution: {integrity: sha512-k3dwdo/vOiHMJc9gMnkPl1BA5aQfTrZbz+8fiDkWrPagqAioZgmo5oiaOaeX0grObfJQKDtcpPFR4iWf8cgl8Q==} engines: {node: '>=20.0.0'} - '@aws-sdk/nested-clients@3.975.0': - resolution: {integrity: sha512-OkeFHPlQj2c/Y5bQGkX14pxhDWUGUFt3LRHhjcDKsSCw6lrxKcxN3WFZN0qbJwKNydP+knL5nxvfgKiCLpTLRA==} - engines: {node: '>=20.0.0'} + '@aws-sdk/region-config-resolver@3.920.0': + resolution: {integrity: sha512-4g88FyRN+O4iFe8azt/9IEGeyktQcJPgjwpCCFwGL9QmOIOJja+F+Og05ydjnMBcUxH4CrWXJm0a54MXS2C9Fg==} + engines: {node: '>=18.0.0'} '@aws-sdk/region-config-resolver@3.972.1': resolution: {integrity: sha512-voIY8RORpxLAEgEkYaTFnkaIuRwVBEc+RjVZYcSSllPV+ZEKAacai6kNhJeE3D70Le+JCfvRb52tng/AVHY+jQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/token-providers@3.974.0': - resolution: {integrity: sha512-cBykL0LiccKIgNhGWvQRTPvsBLPZxnmJU3pYxG538jpFX8lQtrCy1L7mmIHNEdxIdIGEPgAEHF8/JQxgBToqUQ==} - engines: {node: '>=20.0.0'} + '@aws-sdk/token-providers@3.920.0': + resolution: {integrity: sha512-ESDgN6oTq9ypqxK2qVAs5+LJMJCjky41B52k38LDfgyjgrZwqHcRgCQhH2L9/gC4MVOaE4fI24TgZsJlfyJ5dA==} + engines: {node: '>=18.0.0'} - '@aws-sdk/token-providers@3.975.0': - resolution: {integrity: sha512-AWQt64hkVbDQ+CmM09wnvSk2mVyH4iRROkmYkr3/lmUtFNbE2L/fnw26sckZnUcFCsHPqbkQrcsZAnTcBLbH4w==} - engines: {node: '>=20.0.0'} + '@aws-sdk/types@3.920.0': + resolution: {integrity: sha512-W8FI6HteaMwACb49IQzNABjbaGM/fP0t4lLBHeL6KXBmXung2S9FMIBHGxoZvBCRt5omFF31yDCbFaDN/1BPYQ==} + engines: {node: '>=18.0.0'} '@aws-sdk/types@3.972.0': resolution: {integrity: sha512-U7xBIbLSetONxb2bNzHyDgND3oKGoIfmknrEVnoEU4GUSs+0augUOIn9DIWGUO2ETcRFdsRUnmx9KhPT9Ojbug==} @@ -485,21 +509,37 @@ packages: resolution: {integrity: sha512-jYIdB7a7jhRTvyb378nsjyvJh1Si+zVduJ6urMNGpz8RjkmHZ+9vM2H07XaIB2Cfq0GhJRZYOfUCH8uqQhqBkQ==} engines: {node: '>=20.0.0'} + '@aws-sdk/util-endpoints@3.920.0': + resolution: {integrity: sha512-PuoK3xl27LPLkm6VaeajBBTEtIF24aY+EfBWRKr/zqUJ6lTqicBLbxY0MqhsQ9KXALg/Ju0Aq7O4G0jpLu5S8w==} + engines: {node: '>=18.0.0'} + '@aws-sdk/util-endpoints@3.972.0': resolution: {integrity: sha512-6JHsl1V/a1ZW8D8AFfd4R52fwZPnZ5H4U6DS8m/bWT8qad72NvbOFAC7U2cDtFs2TShqUO3TEiX/EJibtY3ijg==} engines: {node: '>=20.0.0'} - '@aws-sdk/util-format-url@3.972.1': - resolution: {integrity: sha512-8wJ4/XOLU/RIYBHsXsIOTR04bNmalC8F2YPMyf3oL8YC750M3Rv5WGywW0Fo07HCv770KXJOzVq03Gyl68moFg==} - engines: {node: '>=20.0.0'} + '@aws-sdk/util-format-url@3.920.0': + resolution: {integrity: sha512-ht2QNzgbRUjAJYmf+4vy+tciMNC9qFx4zuQA/8/t5Lv+f1J37XrNhzOgRMQO3CRyjPTRx6ZtCyMP5XxClzVVTw==} + engines: {node: '>=18.0.0'} '@aws-sdk/util-locate-window@3.535.0': resolution: {integrity: sha512-PHJ3SL6d2jpcgbqdgiPxkXpu7Drc2PYViwxSIqvvMKhDwzSB1W3mMvtpzwKM4IE7zLFodZo0GKjJ9AsoXndXhA==} engines: {node: '>=14.0.0'} + '@aws-sdk/util-user-agent-browser@3.920.0': + resolution: {integrity: sha512-7nMoQjTa1SwULoUXBHm1hx24cb969e98AwPbrSmGwEZl2ZYXULOX3EZuDaX9QTzHutw8AMOgoI6JxCXhRQfmAg==} + '@aws-sdk/util-user-agent-browser@3.972.1': resolution: {integrity: sha512-IgF55NFmJX8d9Wql9M0nEpk2eYbuD8G4781FN4/fFgwTXBn86DvlZJuRWDCMcMqZymnBVX7HW9r+3r9ylqfW0w==} + '@aws-sdk/util-user-agent-node@3.920.0': + resolution: {integrity: sha512-JJykxGXilkeUeU5x3g8bXvkyedtmZ/gXZVwCnWfe/DHxoUDHgYhF0VAz+QJoh2lSN/lRnUV08K0ILmEzGQzY4A==} + engines: {node: '>=18.0.0'} + peerDependencies: + aws-crt: '>=1.0.0' + peerDependenciesMeta: + aws-crt: + optional: true + '@aws-sdk/util-user-agent-node@3.972.1': resolution: {integrity: sha512-oIs4JFcADzoZ0c915R83XvK2HltWupxNsXUIuZse2rgk7b97zTpkxaqXiH0h9ylh31qtgo/t8hp4tIqcsMrEbQ==} engines: {node: '>=20.0.0'} @@ -509,10 +549,18 @@ packages: aws-crt: optional: true + '@aws-sdk/xml-builder@3.914.0': + resolution: {integrity: sha512-k75evsBD5TcIjedycYS7QXQ98AmOtbnxRJOPtCo0IwYRmy7UvqgS/gBL5SmrIqeV6FDSYRQMgdBxSMp6MLmdew==} + engines: {node: '>=18.0.0'} + '@aws-sdk/xml-builder@3.972.1': resolution: {integrity: sha512-6zZGlPOqn7Xb+25MAXGb1JhgvaC5HjZj6GzszuVrnEgbhvzBRFGKYemuHBV4bho+dtqeYKPgaZUv7/e80hIGNg==} engines: {node: '>=20.0.0'} + '@aws/lambda-invoke-store@0.1.1': + resolution: {integrity: sha512-RcLam17LdlbSOSp9VxmUu1eI6Mwxp+OwhD2QhiSNmNCzoDb0EeUXTD2n/WbcnrAYMGlmf05th6QYq23VqvJqpA==} + engines: {node: '>=18.0.0'} + '@aws/lambda-invoke-store@0.2.3': resolution: {integrity: sha512-oLvsaPMTBejkkmHhjf09xTgk71mOqyr/409NKhRIL08If7AhVfUsJhVsx386uJaqNd42v9kWamQ9lFbkoC2dYw==} engines: {node: '>=18.0.0'} @@ -1544,8 +1592,8 @@ packages: '@next/env@14.2.34': resolution: {integrity: sha512-iuGW/UM+EZbn2dm+aLx+avo1rVap+ASoFr7oLpTBVW2G2DqhD5l8Fme9IsLZ6TTsp0ozVSFswidiHK1NGNO+pg==} - '@next/eslint-plugin-next@16.2.0-canary.6': - resolution: {integrity: sha512-qj1kr+tiGarOoLzJVKFMlHocaLxMellMh5lRIA9J0LTt660zQVnlb9nmiKFm/+uwCZBA/18f2P47Ud0GqQpo2A==} + '@next/eslint-plugin-next@16.2.0-canary.11': + resolution: {integrity: sha512-QRb5kjfSfJnfAxX6f8LVRoIOk5MC37y15QR0hHnFyQhZYTmWDtE8oAYRsxdp879d9bsc/8Sgz0WGwRS4LUiajQ==} '@next/swc-darwin-arm64@14.2.33': resolution: {integrity: sha512-HqYnb6pxlsshoSTubdXKu15g3iivcbsMXg4bYpjL2iS/V6aQot+iyF4BUc2qA/J/n55YtvE4PHMKWBKGCF/+wA==} @@ -3578,8 +3626,8 @@ packages: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} - eslint-config-next@16.2.0-canary.6: - resolution: {integrity: sha512-iEIquH7p19PW439/1D1dqJM2LL+oy5IeQTjr2oTlpL5pVJbXXqpL8TwkekCFty7rUscw/GZvm2CG6e1OZ2RqCQ==} + eslint-config-next@16.2.0-canary.11: + resolution: {integrity: sha512-8zfnJo8jVwC0+J379ehSEeQY0/pmnmdl+w/F5b3T3IxvUk0A0o5HloGJARS9aHHcSpP8E/IEKxkKvLyap6LKEQ==} peerDependencies: eslint: '>=9.0.0' typescript: '>=3.3.1' @@ -3587,8 +3635,8 @@ packages: typescript: optional: true - eslint-config-turbo@2.7.5: - resolution: {integrity: sha512-LKgZM73MqmEEwo1nEqnX6aNQoZ7ASL93H3Zb8PG6bYE9kI4aM2CFnOFKJf6lTQPBV92N5pdaxz1bE47J2LUdFw==} + eslint-config-turbo@2.7.6: + resolution: {integrity: sha512-fDkYf9y8okB7pdleZVZPw8ryte0Ry+sn9g3IRzAq8t6LjSyTJhGhyHu5p2TUC04l0zlO6BOHkLzhRtJgWgEXNg==} peerDependencies: eslint: '>6.6.0' turbo: '>2.0.0' @@ -3673,8 +3721,8 @@ packages: peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 - eslint-plugin-turbo@2.7.5: - resolution: {integrity: sha512-dHUEEZyoUriaYqaqu6nlnkj0W+iDPYFhuMjLYGxn7p767kLCYTZgjR42urW56VLiRQUqDL+foOXufFM6+kXCEQ==} + eslint-plugin-turbo@2.7.6: + resolution: {integrity: sha512-CX82qraT0f8/DCGLzGsnbJQq1yjkA7ji17o1yi6FY+6ZJ0hVlTEXrKoVcbKfvdgzgVGGUePmWGjrFp71C4fHuA==} peerDependencies: eslint: '>6.6.0' turbo: '>2.0.0' @@ -5284,10 +5332,10 @@ packages: resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} engines: {node: '>= 0.8'} - react-dom@19.2.3: - resolution: {integrity: sha512-yELu4WmLPw5Mr/lmeEpox5rw3RETacE++JgHqQzd2dg+YbJuat3jH4ingc+WPZhxaoFzdv9y33G+F7Nl5O0GBg==} + react-dom@19.2.4: + resolution: {integrity: sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==} peerDependencies: - react: ^19.2.3 + react: ^19.2.4 react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} @@ -5296,8 +5344,8 @@ packages: resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} engines: {node: '>=0.10.0'} - react@19.2.3: - resolution: {integrity: sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA==} + react@19.2.4: + resolution: {integrity: sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==} engines: {node: '>=0.10.0'} read-cache@1.0.0: @@ -6614,25 +6662,25 @@ snapshots: '@smithy/util-utf8': 2.3.0 tslib: 2.8.1 - '@aws-sdk/client-bedrock-runtime@3.975.0': + '@aws-sdk/client-bedrock-runtime@3.920.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.973.1 - '@aws-sdk/credential-provider-node': 3.972.1 - '@aws-sdk/eventstream-handler-node': 3.972.1 - '@aws-sdk/middleware-eventstream': 3.972.1 - '@aws-sdk/middleware-host-header': 3.972.1 - '@aws-sdk/middleware-logger': 3.972.1 - '@aws-sdk/middleware-recursion-detection': 3.972.1 - '@aws-sdk/middleware-user-agent': 3.972.2 - '@aws-sdk/middleware-websocket': 3.972.1 - '@aws-sdk/region-config-resolver': 3.972.1 - '@aws-sdk/token-providers': 3.975.0 - '@aws-sdk/types': 3.973.0 - '@aws-sdk/util-endpoints': 3.972.0 - '@aws-sdk/util-user-agent-browser': 3.972.1 - '@aws-sdk/util-user-agent-node': 3.972.1 + '@aws-sdk/core': 3.920.0 + '@aws-sdk/credential-provider-node': 3.920.0 + '@aws-sdk/eventstream-handler-node': 3.920.0 + '@aws-sdk/middleware-eventstream': 3.920.0 + '@aws-sdk/middleware-host-header': 3.920.0 + '@aws-sdk/middleware-logger': 3.920.0 + '@aws-sdk/middleware-recursion-detection': 3.920.0 + '@aws-sdk/middleware-user-agent': 3.920.0 + '@aws-sdk/middleware-websocket': 3.920.0 + '@aws-sdk/region-config-resolver': 3.920.0 + '@aws-sdk/token-providers': 3.920.0 + '@aws-sdk/types': 3.920.0 + '@aws-sdk/util-endpoints': 3.920.0 + '@aws-sdk/util-user-agent-browser': 3.920.0 + '@aws-sdk/util-user-agent-node': 3.920.0 '@smithy/config-resolver': 4.4.6 '@smithy/core': 3.21.1 '@smithy/eventstream-serde-browser': 4.2.8 @@ -6662,24 +6710,25 @@ snapshots: '@smithy/util-retry': 4.2.8 '@smithy/util-stream': 4.5.10 '@smithy/util-utf8': 4.2.0 + '@smithy/uuid': 1.1.0 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso@3.974.0': + '@aws-sdk/client-sso@3.920.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.973.1 - '@aws-sdk/middleware-host-header': 3.972.1 - '@aws-sdk/middleware-logger': 3.972.1 - '@aws-sdk/middleware-recursion-detection': 3.972.1 - '@aws-sdk/middleware-user-agent': 3.972.2 - '@aws-sdk/region-config-resolver': 3.972.1 - '@aws-sdk/types': 3.973.0 - '@aws-sdk/util-endpoints': 3.972.0 - '@aws-sdk/util-user-agent-browser': 3.972.1 - '@aws-sdk/util-user-agent-node': 3.972.1 + '@aws-sdk/core': 3.920.0 + '@aws-sdk/middleware-host-header': 3.920.0 + '@aws-sdk/middleware-logger': 3.920.0 + '@aws-sdk/middleware-recursion-detection': 3.920.0 + '@aws-sdk/middleware-user-agent': 3.920.0 + '@aws-sdk/region-config-resolver': 3.920.0 + '@aws-sdk/types': 3.920.0 + '@aws-sdk/util-endpoints': 3.920.0 + '@aws-sdk/util-user-agent-browser': 3.920.0 + '@aws-sdk/util-user-agent-node': 3.920.0 '@smithy/config-resolver': 4.4.6 '@smithy/core': 3.21.1 '@smithy/fetch-http-handler': 5.3.9 @@ -6709,6 +6758,22 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/core@3.920.0': + dependencies: + '@aws-sdk/types': 3.920.0 + '@aws-sdk/xml-builder': 3.914.0 + '@smithy/core': 3.21.1 + '@smithy/node-config-provider': 4.3.8 + '@smithy/property-provider': 4.2.8 + '@smithy/protocol-http': 5.3.8 + '@smithy/signature-v4': 5.3.8 + '@smithy/smithy-client': 4.10.12 + '@smithy/types': 4.12.0 + '@smithy/util-base64': 4.3.0 + '@smithy/util-middleware': 4.2.8 + '@smithy/util-utf8': 4.2.0 + tslib: 2.8.1 + '@aws-sdk/core@3.973.1': dependencies: '@aws-sdk/types': 3.973.0 @@ -6724,19 +6789,20 @@ snapshots: '@smithy/util-middleware': 4.2.8 '@smithy/util-utf8': 4.2.0 tslib: 2.8.1 + optional: true - '@aws-sdk/credential-provider-env@3.972.1': + '@aws-sdk/credential-provider-env@3.920.0': dependencies: - '@aws-sdk/core': 3.973.1 - '@aws-sdk/types': 3.973.0 + '@aws-sdk/core': 3.920.0 + '@aws-sdk/types': 3.920.0 '@smithy/property-provider': 4.2.8 '@smithy/types': 4.12.0 tslib: 2.8.1 - '@aws-sdk/credential-provider-http@3.972.2': + '@aws-sdk/credential-provider-http@3.920.0': dependencies: - '@aws-sdk/core': 3.973.1 - '@aws-sdk/types': 3.973.0 + '@aws-sdk/core': 3.920.0 + '@aws-sdk/types': 3.920.0 '@smithy/fetch-http-handler': 5.3.9 '@smithy/node-http-handler': 4.4.8 '@smithy/property-provider': 4.2.8 @@ -6746,17 +6812,16 @@ snapshots: '@smithy/util-stream': 4.5.10 tslib: 2.8.1 - '@aws-sdk/credential-provider-ini@3.972.1': + '@aws-sdk/credential-provider-ini@3.920.0': dependencies: - '@aws-sdk/core': 3.973.1 - '@aws-sdk/credential-provider-env': 3.972.1 - '@aws-sdk/credential-provider-http': 3.972.2 - '@aws-sdk/credential-provider-login': 3.972.1 - '@aws-sdk/credential-provider-process': 3.972.1 - '@aws-sdk/credential-provider-sso': 3.972.1 - '@aws-sdk/credential-provider-web-identity': 3.972.1 - '@aws-sdk/nested-clients': 3.974.0 - '@aws-sdk/types': 3.973.0 + '@aws-sdk/core': 3.920.0 + '@aws-sdk/credential-provider-env': 3.920.0 + '@aws-sdk/credential-provider-http': 3.920.0 + '@aws-sdk/credential-provider-process': 3.920.0 + '@aws-sdk/credential-provider-sso': 3.920.0 + '@aws-sdk/credential-provider-web-identity': 3.920.0 + '@aws-sdk/nested-clients': 3.920.0 + '@aws-sdk/types': 3.920.0 '@smithy/credential-provider-imds': 4.2.8 '@smithy/property-provider': 4.2.8 '@smithy/shared-ini-file-loader': 4.4.3 @@ -6765,51 +6830,50 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-login@3.972.1': + '@aws-sdk/credential-provider-node@3.920.0': dependencies: - '@aws-sdk/core': 3.973.1 - '@aws-sdk/nested-clients': 3.974.0 - '@aws-sdk/types': 3.973.0 + '@aws-sdk/credential-provider-env': 3.920.0 + '@aws-sdk/credential-provider-http': 3.920.0 + '@aws-sdk/credential-provider-ini': 3.920.0 + '@aws-sdk/credential-provider-process': 3.920.0 + '@aws-sdk/credential-provider-sso': 3.920.0 + '@aws-sdk/credential-provider-web-identity': 3.920.0 + '@aws-sdk/types': 3.920.0 + '@smithy/credential-provider-imds': 4.2.8 '@smithy/property-provider': 4.2.8 - '@smithy/protocol-http': 5.3.8 '@smithy/shared-ini-file-loader': 4.4.3 '@smithy/types': 4.12.0 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-node@3.972.1': + '@aws-sdk/credential-provider-process@3.920.0': dependencies: - '@aws-sdk/credential-provider-env': 3.972.1 - '@aws-sdk/credential-provider-http': 3.972.2 - '@aws-sdk/credential-provider-ini': 3.972.1 - '@aws-sdk/credential-provider-process': 3.972.1 - '@aws-sdk/credential-provider-sso': 3.972.1 - '@aws-sdk/credential-provider-web-identity': 3.972.1 - '@aws-sdk/types': 3.973.0 - '@smithy/credential-provider-imds': 4.2.8 + '@aws-sdk/core': 3.920.0 + '@aws-sdk/types': 3.920.0 '@smithy/property-provider': 4.2.8 '@smithy/shared-ini-file-loader': 4.4.3 '@smithy/types': 4.12.0 tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - '@aws-sdk/credential-provider-process@3.972.1': + '@aws-sdk/credential-provider-sso@3.920.0': dependencies: - '@aws-sdk/core': 3.973.1 - '@aws-sdk/types': 3.973.0 + '@aws-sdk/client-sso': 3.920.0 + '@aws-sdk/core': 3.920.0 + '@aws-sdk/token-providers': 3.920.0 + '@aws-sdk/types': 3.920.0 '@smithy/property-provider': 4.2.8 '@smithy/shared-ini-file-loader': 4.4.3 '@smithy/types': 4.12.0 tslib: 2.8.1 + transitivePeerDependencies: + - aws-crt - '@aws-sdk/credential-provider-sso@3.972.1': + '@aws-sdk/credential-provider-web-identity@3.920.0': dependencies: - '@aws-sdk/client-sso': 3.974.0 - '@aws-sdk/core': 3.973.1 - '@aws-sdk/token-providers': 3.974.0 - '@aws-sdk/types': 3.973.0 + '@aws-sdk/core': 3.920.0 + '@aws-sdk/nested-clients': 3.920.0 + '@aws-sdk/types': 3.920.0 '@smithy/property-provider': 4.2.8 '@smithy/shared-ini-file-loader': 4.4.3 '@smithy/types': 4.12.0 @@ -6828,17 +6892,25 @@ snapshots: tslib: 2.8.1 transitivePeerDependencies: - aws-crt + optional: true - '@aws-sdk/eventstream-handler-node@3.972.1': + '@aws-sdk/eventstream-handler-node@3.920.0': dependencies: - '@aws-sdk/types': 3.973.0 + '@aws-sdk/types': 3.920.0 '@smithy/eventstream-codec': 4.2.8 '@smithy/types': 4.12.0 tslib: 2.8.1 - '@aws-sdk/middleware-eventstream@3.972.1': + '@aws-sdk/middleware-eventstream@3.920.0': dependencies: - '@aws-sdk/types': 3.973.0 + '@aws-sdk/types': 3.920.0 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 + + '@aws-sdk/middleware-host-header@3.920.0': + dependencies: + '@aws-sdk/types': 3.920.0 '@smithy/protocol-http': 5.3.8 '@smithy/types': 4.12.0 tslib: 2.8.1 @@ -6849,12 +6921,28 @@ snapshots: '@smithy/protocol-http': 5.3.8 '@smithy/types': 4.12.0 tslib: 2.8.1 + optional: true + + '@aws-sdk/middleware-logger@3.920.0': + dependencies: + '@aws-sdk/types': 3.920.0 + '@smithy/types': 4.12.0 + tslib: 2.8.1 '@aws-sdk/middleware-logger@3.972.1': dependencies: '@aws-sdk/types': 3.973.0 '@smithy/types': 4.12.0 tslib: 2.8.1 + optional: true + + '@aws-sdk/middleware-recursion-detection@3.920.0': + dependencies: + '@aws-sdk/types': 3.920.0 + '@aws/lambda-invoke-store': 0.1.1 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 '@aws-sdk/middleware-recursion-detection@3.972.1': dependencies: @@ -6863,6 +6951,17 @@ snapshots: '@smithy/protocol-http': 5.3.8 '@smithy/types': 4.12.0 tslib: 2.8.1 + optional: true + + '@aws-sdk/middleware-user-agent@3.920.0': + dependencies: + '@aws-sdk/core': 3.920.0 + '@aws-sdk/types': 3.920.0 + '@aws-sdk/util-endpoints': 3.920.0 + '@smithy/core': 3.21.1 + '@smithy/protocol-http': 5.3.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 '@aws-sdk/middleware-user-agent@3.972.2': dependencies: @@ -6873,11 +6972,12 @@ snapshots: '@smithy/protocol-http': 5.3.8 '@smithy/types': 4.12.0 tslib: 2.8.1 + optional: true - '@aws-sdk/middleware-websocket@3.972.1': + '@aws-sdk/middleware-websocket@3.920.0': dependencies: - '@aws-sdk/types': 3.973.0 - '@aws-sdk/util-format-url': 3.972.1 + '@aws-sdk/types': 3.920.0 + '@aws-sdk/util-format-url': 3.920.0 '@smithy/eventstream-codec': 4.2.8 '@smithy/eventstream-serde-browser': 4.2.8 '@smithy/fetch-http-handler': 5.3.9 @@ -6887,20 +6987,20 @@ snapshots: '@smithy/util-hex-encoding': 4.2.0 tslib: 2.8.1 - '@aws-sdk/nested-clients@3.974.0': + '@aws-sdk/nested-clients@3.920.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.973.1 - '@aws-sdk/middleware-host-header': 3.972.1 - '@aws-sdk/middleware-logger': 3.972.1 - '@aws-sdk/middleware-recursion-detection': 3.972.1 - '@aws-sdk/middleware-user-agent': 3.972.2 - '@aws-sdk/region-config-resolver': 3.972.1 - '@aws-sdk/types': 3.973.0 - '@aws-sdk/util-endpoints': 3.972.0 - '@aws-sdk/util-user-agent-browser': 3.972.1 - '@aws-sdk/util-user-agent-node': 3.972.1 + '@aws-sdk/core': 3.920.0 + '@aws-sdk/middleware-host-header': 3.920.0 + '@aws-sdk/middleware-logger': 3.920.0 + '@aws-sdk/middleware-recursion-detection': 3.920.0 + '@aws-sdk/middleware-user-agent': 3.920.0 + '@aws-sdk/region-config-resolver': 3.920.0 + '@aws-sdk/types': 3.920.0 + '@aws-sdk/util-endpoints': 3.920.0 + '@aws-sdk/util-user-agent-browser': 3.920.0 + '@aws-sdk/util-user-agent-node': 3.920.0 '@smithy/config-resolver': 4.4.6 '@smithy/core': 3.21.1 '@smithy/fetch-http-handler': 5.3.9 @@ -6930,7 +7030,7 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/nested-clients@3.975.0': + '@aws-sdk/nested-clients@3.974.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 @@ -6972,6 +7072,15 @@ snapshots: tslib: 2.8.1 transitivePeerDependencies: - aws-crt + optional: true + + '@aws-sdk/region-config-resolver@3.920.0': + dependencies: + '@aws-sdk/types': 3.920.0 + '@smithy/config-resolver': 4.4.6 + '@smithy/node-config-provider': 4.3.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 '@aws-sdk/region-config-resolver@3.972.1': dependencies: @@ -6980,12 +7089,13 @@ snapshots: '@smithy/node-config-provider': 4.3.8 '@smithy/types': 4.12.0 tslib: 2.8.1 + optional: true - '@aws-sdk/token-providers@3.974.0': + '@aws-sdk/token-providers@3.920.0': dependencies: - '@aws-sdk/core': 3.973.1 - '@aws-sdk/nested-clients': 3.974.0 - '@aws-sdk/types': 3.973.0 + '@aws-sdk/core': 3.920.0 + '@aws-sdk/nested-clients': 3.920.0 + '@aws-sdk/types': 3.920.0 '@smithy/property-provider': 4.2.8 '@smithy/shared-ini-file-loader': 4.4.3 '@smithy/types': 4.12.0 @@ -6993,28 +7103,30 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/token-providers@3.975.0': + '@aws-sdk/types@3.920.0': dependencies: - '@aws-sdk/core': 3.973.1 - '@aws-sdk/nested-clients': 3.975.0 - '@aws-sdk/types': 3.973.0 - '@smithy/property-provider': 4.2.8 - '@smithy/shared-ini-file-loader': 4.4.3 '@smithy/types': 4.12.0 tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt '@aws-sdk/types@3.972.0': dependencies: '@smithy/types': 4.12.0 tslib: 2.8.1 + optional: true '@aws-sdk/types@3.973.0': dependencies: '@smithy/types': 4.12.0 tslib: 2.8.1 + '@aws-sdk/util-endpoints@3.920.0': + dependencies: + '@aws-sdk/types': 3.920.0 + '@smithy/types': 4.12.0 + '@smithy/url-parser': 4.2.8 + '@smithy/util-endpoints': 3.2.8 + tslib: 2.8.1 + '@aws-sdk/util-endpoints@3.972.0': dependencies: '@aws-sdk/types': 3.972.0 @@ -7022,10 +7134,11 @@ snapshots: '@smithy/url-parser': 4.2.8 '@smithy/util-endpoints': 3.2.8 tslib: 2.8.1 + optional: true - '@aws-sdk/util-format-url@3.972.1': + '@aws-sdk/util-format-url@3.920.0': dependencies: - '@aws-sdk/types': 3.973.0 + '@aws-sdk/types': 3.920.0 '@smithy/querystring-builder': 4.2.8 '@smithy/types': 4.12.0 tslib: 2.8.1 @@ -7034,12 +7147,28 @@ snapshots: dependencies: tslib: 2.8.1 + '@aws-sdk/util-user-agent-browser@3.920.0': + dependencies: + '@aws-sdk/types': 3.920.0 + '@smithy/types': 4.12.0 + bowser: 2.11.0 + tslib: 2.8.1 + '@aws-sdk/util-user-agent-browser@3.972.1': dependencies: '@aws-sdk/types': 3.973.0 '@smithy/types': 4.12.0 bowser: 2.11.0 tslib: 2.8.1 + optional: true + + '@aws-sdk/util-user-agent-node@3.920.0': + dependencies: + '@aws-sdk/middleware-user-agent': 3.920.0 + '@aws-sdk/types': 3.920.0 + '@smithy/node-config-provider': 4.3.8 + '@smithy/types': 4.12.0 + tslib: 2.8.1 '@aws-sdk/util-user-agent-node@3.972.1': dependencies: @@ -7048,14 +7177,25 @@ snapshots: '@smithy/node-config-provider': 4.3.8 '@smithy/types': 4.12.0 tslib: 2.8.1 + optional: true + + '@aws-sdk/xml-builder@3.914.0': + dependencies: + '@smithy/types': 4.12.0 + fast-xml-parser: 5.2.5 + tslib: 2.8.1 '@aws-sdk/xml-builder@3.972.1': dependencies: '@smithy/types': 4.12.0 fast-xml-parser: 5.2.5 tslib: 2.8.1 + optional: true + + '@aws/lambda-invoke-store@0.1.1': {} - '@aws/lambda-invoke-store@0.2.3': {} + '@aws/lambda-invoke-store@0.2.3': + optional: true '@babel/code-frame@7.27.1': dependencies: @@ -7794,7 +7934,7 @@ snapshots: '@next/env@14.2.34': {} - '@next/eslint-plugin-next@16.2.0-canary.6': + '@next/eslint-plugin-next@16.2.0-canary.11': dependencies: fast-glob: 3.3.1 @@ -8520,7 +8660,7 @@ snapshots: '@swc/helpers@0.4.14': dependencies: - tslib: 2.6.2 + tslib: 2.8.1 '@swc/helpers@0.5.5': dependencies: @@ -8900,13 +9040,13 @@ snapshots: dependencies: crypto-js: 4.2.0 - '@vercel/examples-ui@1.0.5(next@14.2.34(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': + '@vercel/examples-ui@1.0.5(next@14.2.34(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: '@swc/helpers': 0.4.14 clsx: 1.2.1 - next: 14.2.34(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) - react: 19.2.3 - react-dom: 19.2.3(react@19.2.3) + next: 14.2.34(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) sugar-high: 0.4.7 '@vercel/functions@1.5.0(@aws-sdk/credential-provider-web-identity@3.972.1)': @@ -9100,17 +9240,17 @@ snapshots: dependencies: humanize-ms: 1.2.1 - ai@2.2.22(react@19.2.3)(solid-js@1.9.10)(svelte@4.2.20)(vue@3.5.22(typescript@5.3.3)): + ai@2.2.22(react@19.2.4)(solid-js@1.9.10)(svelte@4.2.20)(vue@3.5.22(typescript@5.3.3)): dependencies: eventsource-parser: 1.0.0 nanoid: 3.3.6 solid-swr-store: 0.10.7(solid-js@1.9.10)(swr-store@0.10.6) sswr: 2.0.0(svelte@4.2.20) - swr: 2.2.0(react@19.2.3) + swr: 2.2.0(react@19.2.4) swr-store: 0.10.6 swrv: 1.0.4(vue@3.5.22(typescript@5.3.3)) optionalDependencies: - react: 19.2.3 + react: 19.2.4 solid-js: 1.9.10 svelte: 4.2.20 vue: 3.5.22(typescript@5.3.3) @@ -10243,13 +10383,13 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-next@16.2.0-canary.6(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0)(typescript@4.7.4): + eslint-config-next@16.2.0-canary.11(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0)(typescript@4.7.4): dependencies: - '@next/eslint-plugin-next': 16.2.0-canary.6 + '@next/eslint-plugin-next': 16.2.0-canary.11 eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0))(eslint@8.56.0) - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0))(eslint@8.56.0))(eslint@8.56.0) eslint-plugin-jsx-a11y: 6.10.2(eslint@8.56.0) eslint-plugin-react: 7.37.5(eslint@8.56.0) eslint-plugin-react-hooks: 7.0.1(eslint@8.56.0) @@ -10262,10 +10402,10 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-config-turbo@2.7.5(eslint@8.57.1)(turbo@2.5.6): + eslint-config-turbo@2.7.6(eslint@8.57.1)(turbo@2.5.6): dependencies: eslint: 8.57.1 - eslint-plugin-turbo: 2.7.5(eslint@8.57.1)(turbo@2.5.6) + eslint-plugin-turbo: 2.7.6(eslint@8.57.1)(turbo@2.5.6) turbo: 2.5.6 eslint-import-resolver-node@0.3.9: @@ -10282,7 +10422,7 @@ snapshots: enhanced-resolve: 5.15.0 eslint: 8.56.0 eslint-module-utils: 2.8.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0))(eslint@8.56.0))(eslint@8.56.0) - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0))(eslint@8.56.0))(eslint@8.56.0) fast-glob: 3.3.2 get-tsconfig: 4.7.2 is-core-module: 2.13.1 @@ -10315,7 +10455,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0): + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.53.0(eslint@8.56.0)(typescript@4.7.4))(eslint@8.56.0))(eslint@8.56.0))(eslint@8.56.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.9 @@ -10396,7 +10536,7 @@ snapshots: string.prototype.matchall: 4.0.12 string.prototype.repeat: 1.0.0 - eslint-plugin-turbo@2.7.5(eslint@8.57.1)(turbo@2.5.6): + eslint-plugin-turbo@2.7.6(eslint@8.57.1)(turbo@2.5.6): dependencies: dotenv: 16.0.3 eslint: 8.57.1 @@ -11623,7 +11763,7 @@ snapshots: next-tick@1.1.0: {} - next@14.2.34(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3): + next@14.2.34(@babel/core@7.28.3)(@opentelemetry/api@1.9.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: '@next/env': 14.2.34 '@swc/helpers': 0.5.5 @@ -11631,9 +11771,9 @@ snapshots: caniuse-lite: 1.0.30001735 graceful-fs: 4.2.11 postcss: 8.4.31 - react: 19.2.3 - react-dom: 19.2.3(react@19.2.3) - styled-jsx: 5.1.1(@babel/core@7.28.3)(react@19.2.3) + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) + styled-jsx: 5.1.1(@babel/core@7.28.3)(react@19.2.4) optionalDependencies: '@next/swc-darwin-arm64': 14.2.33 '@next/swc-darwin-x64': 14.2.33 @@ -12134,9 +12274,9 @@ snapshots: iconv-lite: 0.4.24 unpipe: 1.0.0 - react-dom@19.2.3(react@19.2.3): + react-dom@19.2.4(react@19.2.4): dependencies: - react: 19.2.3 + react: 19.2.4 scheduler: 0.27.0 react-is@16.13.1: {} @@ -12145,7 +12285,7 @@ snapshots: dependencies: loose-envify: 1.4.0 - react@19.2.3: {} + react@19.2.4: {} read-cache@1.0.0: dependencies: @@ -12774,10 +12914,10 @@ snapshots: strnum@2.1.2: {} - styled-jsx@5.1.1(@babel/core@7.28.3)(react@19.2.3): + styled-jsx@5.1.1(@babel/core@7.28.3)(react@19.2.4): dependencies: client-only: 0.0.1 - react: 19.2.3 + react: 19.2.4 optionalDependencies: '@babel/core': 7.28.3 @@ -12831,10 +12971,10 @@ snapshots: react: 18.3.1 use-sync-external-store: 1.2.0(react@18.3.1) - swr@2.2.0(react@19.2.3): + swr@2.2.0(react@19.2.4): dependencies: - react: 19.2.3 - use-sync-external-store: 1.2.0(react@19.2.3) + react: 19.2.4 + use-sync-external-store: 1.2.0(react@19.2.4) swrev@4.0.0: {} @@ -13261,9 +13401,9 @@ snapshots: dependencies: react: 18.3.1 - use-sync-external-store@1.2.0(react@19.2.3): + use-sync-external-store@1.2.0(react@19.2.4): dependencies: - react: 19.2.3 + react: 19.2.4 utf-8-validate@5.0.10: dependencies: