From ef96426ca0237b8bc96a24a8f181fd8989f80603 Mon Sep 17 00:00:00 2001 From: Matti Nannt Date: Fri, 24 Apr 2026 20:32:32 +0200 Subject: [PATCH 1/2] =?UTF-8?q?chore(security):=20dependency=20audit=20?= =?UTF-8?q?=E2=80=94=20reduce=20attack=20surface=20&=20resolve=20all=20vul?= =?UTF-8?q?nerabilities=20(#7801)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Claude Sonnet 4.6 --- .github/actions/cache-build-web/action.yml | 8 +- .../actions/dangerous-git-checkout/action.yml | 2 +- .github/workflows/chromatic.yml | 2 +- .github/workflows/e2e.yml | 4 +- .github/workflows/lint.yml | 4 +- .github/workflows/sonarqube.yml | 4 +- .github/workflows/test.yml | 4 +- .github/workflows/translation-check.yml | 5 +- apps/storybook/package.json | 18 +- .../(analysis)/responses/lib/utils.ts | 2 +- apps/web/lib/organization/service.ts | 2 +- apps/web/lib/pollyfills/structuredClone.ts | 5 +- apps/web/lib/survey/__mock__/survey.mock.ts | 18 +- apps/web/lib/survey/service.ts | 40 +- apps/web/lib/utils/debounce.ts | 27 + apps/web/lib/utils/object.ts | 35 + apps/web/modules/api/lib/validation.ts | 6 +- apps/web/modules/api/v2/lib/element.ts | 28 +- .../contacts/components/contact-data-view.tsx | 2 +- .../ee/license-check/lib/license.test.ts | 62 +- .../modules/ee/license-check/lib/license.ts | 23 +- apps/web/modules/environments/lib/utils.ts | 8 +- .../settings/look/components/edit-logo.tsx | 4 +- .../components/element-form-input/index.tsx | 2 +- .../components/template-list/lib/survey.ts | 5 +- .../editor/components/animated-survey-bg.tsx | 2 +- .../editor/components/survey-menu-bar.tsx | 10 +- .../editor/components/unsplash-images.tsx | 2 +- .../validation-rule-type-selector.tsx | 2 +- apps/web/modules/survey/editor/lib/survey.ts | 4 +- .../survey/list/components/survey-filters.tsx | 8 +- apps/web/modules/survey/list/lib/survey.ts | 3 +- .../modules/ui/components/confetti/index.tsx | 18 +- apps/web/next.config.mjs | 20 - apps/web/package.json | 23 +- package.json | 36 +- packages/ai/package.json | 7 +- packages/ai/tsconfig.build.json | 14 + packages/ai/vite.config.ts | 7 - packages/cache/package.json | 7 +- packages/cache/vite.config.ts | 16 +- packages/database/json-types.ts | 38 +- packages/database/package.json | 3 + packages/database/src/index.ts | 3 +- packages/database/src/json-types.ts | 82 + packages/database/types/survey-follow-up.ts | 68 +- packages/database/vite.config.ts | 7 +- packages/email/package.json | 1 - packages/i18n-utils/package.json | 3 +- packages/i18n-utils/vite.config.ts | 8 +- packages/js-core/package.json | 9 +- packages/js-core/src/lib/survey/widget.ts | 3 +- packages/js-core/src/vite-env.d.ts | 12 + packages/js-core/vite.config.ts | 5 +- packages/logger/package.json | 15 +- packages/logger/tsconfig.build.json | 14 + packages/logger/vite.config.ts | 8 +- packages/storage/package.json | 15 +- packages/storage/tsconfig.build.json | 14 + packages/storage/vite.config.ts | 4 +- packages/survey-ui/package.json | 10 +- .../src/components/general/button.tsx | 18 +- packages/survey-ui/vite.config.mts | 3 +- packages/surveys/package.json | 10 +- packages/surveys/src/vite-env.d.ts | 14 + packages/surveys/tsconfig.build.json | 14 + packages/surveys/vite.config.mts | 8 - packages/types/package.json | 8 +- packages/types/surveys/follow-up.ts | 60 + packages/types/surveys/types.ts | 2 +- packages/vite-plugins/node-next-dts.ts | 39 + pnpm-lock.yaml | 4160 +++++++---------- 72 files changed, 2408 insertions(+), 2749 deletions(-) create mode 100644 apps/web/lib/utils/debounce.ts create mode 100644 apps/web/lib/utils/object.ts create mode 100644 packages/ai/tsconfig.build.json create mode 100644 packages/database/src/json-types.ts create mode 100644 packages/logger/tsconfig.build.json create mode 100644 packages/storage/tsconfig.build.json create mode 100644 packages/surveys/tsconfig.build.json create mode 100644 packages/types/surveys/follow-up.ts create mode 100644 packages/vite-plugins/node-next-dts.ts diff --git a/.github/actions/cache-build-web/action.yml b/.github/actions/cache-build-web/action.yml index 4db8d682c67b..246f05822279 100644 --- a/.github/actions/cache-build-web/action.yml +++ b/.github/actions/cache-build-web/action.yml @@ -20,12 +20,12 @@ runs: using: "composite" steps: - name: Checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: ./.github/actions/dangerous-git-checkout - name: Cache Build - uses: actions/cache@v3 + uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3 id: cache-build env: cache-name: prod-build @@ -43,7 +43,7 @@ runs: shell: bash - name: Setup Node.js 20.x - uses: actions/setup-node@v3 + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: node-version: 20.x if: steps.cache-build.outputs.cache-hit != 'true' @@ -53,7 +53,7 @@ runs: if: steps.cache-build.outputs.cache-hit != 'true' - name: Install dependencies - run: pnpm install --config.platform=linux --config.architecture=x64 + run: pnpm install --frozen-lockfile --config.platform=linux --config.architecture=x64 if: steps.cache-build.outputs.cache-hit != 'true' shell: bash diff --git a/.github/actions/dangerous-git-checkout/action.yml b/.github/actions/dangerous-git-checkout/action.yml index 48dca84cbebb..31a0b08e182c 100644 --- a/.github/actions/dangerous-git-checkout/action.yml +++ b/.github/actions/dangerous-git-checkout/action.yml @@ -4,7 +4,7 @@ runs: using: "composite" steps: - name: Checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: ref: ${{ github.event.pull_request.head.sha }} fetch-depth: 2 diff --git a/.github/workflows/chromatic.yml b/.github/workflows/chromatic.yml index 505a9e699010..08db5c23e412 100644 --- a/.github/workflows/chromatic.yml +++ b/.github/workflows/chromatic.yml @@ -49,7 +49,7 @@ jobs: ${{ runner.os }}-pnpm-store- - name: Install dependencies - run: pnpm install --config.platform=linux --config.architecture=x64 + run: pnpm install --frozen-lockfile --config.platform=linux --config.architecture=x64 - name: Run Chromatic uses: chromaui/action@4c20b95e9d3209ecfdf9cd6aace6bbde71ba1694 # v13.3.4 diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 76ed9715aabb..a14a52c9f6d0 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -57,7 +57,7 @@ jobs: - uses: ./.github/actions/dangerous-git-checkout - name: Setup Node.js 22.x - uses: actions/setup-node@1a4442cacd436585916779262731d5b162bc6ec7 # v3.8.2 + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: node-version: 22.x @@ -65,7 +65,7 @@ jobs: uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0 - name: Install dependencies - run: pnpm install --config.platform=linux --config.architecture=x64 + run: pnpm install --frozen-lockfile --config.platform=linux --config.architecture=x64 shell: bash - name: create .env diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index f751ac41557f..2b1a619d5989 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -21,7 +21,7 @@ jobs: - uses: ./.github/actions/dangerous-git-checkout - name: Setup Node.js 20.x - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: node-version: 20.x @@ -29,7 +29,7 @@ jobs: uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0 - name: Install dependencies - run: pnpm install --config.platform=linux --config.architecture=x64 + run: pnpm install --frozen-lockfile --config.platform=linux --config.architecture=x64 - name: create .env run: cp .env.example .env diff --git a/.github/workflows/sonarqube.yml b/.github/workflows/sonarqube.yml index 9f0a1fc2faa4..e58447c2eda7 100644 --- a/.github/workflows/sonarqube.yml +++ b/.github/workflows/sonarqube.yml @@ -25,7 +25,7 @@ jobs: fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis - name: Setup Node.js 22.x - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: node-version: 22.x @@ -33,7 +33,7 @@ jobs: uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0 - name: Install dependencies - run: pnpm install --config.platform=linux --config.architecture=x64 + run: pnpm install --frozen-lockfile --config.platform=linux --config.architecture=x64 - name: create .env run: cp .env.example .env diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 2af0cda7eea2..0d4805984c7b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -22,7 +22,7 @@ jobs: - uses: ./.github/actions/dangerous-git-checkout - name: Setup Node.js 20.x - uses: actions/setup-node@1a4442cacd436585916779262731d5b162bc6ec7 # v3.8.2 + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: node-version: 20.x @@ -30,7 +30,7 @@ jobs: uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0 - name: Install dependencies - run: pnpm install --config.platform=linux --config.architecture=x64 + run: pnpm install --frozen-lockfile --config.platform=linux --config.architecture=x64 - name: create .env run: cp .env.example .env diff --git a/.github/workflows/translation-check.yml b/.github/workflows/translation-check.yml index 217991778ecc..4e74a3ba69d5 100644 --- a/.github/workflows/translation-check.yml +++ b/.github/workflows/translation-check.yml @@ -2,6 +2,7 @@ name: Translation Validation permissions: contents: read + pull-requests: read on: pull_request: @@ -39,7 +40,7 @@ jobs: - name: Setup Node.js 22.x if: steps.changes.outputs.translations == 'true' - uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: node-version: 22.x @@ -49,7 +50,7 @@ jobs: - name: Install dependencies if: steps.changes.outputs.translations == 'true' - run: pnpm install --config.platform=linux --config.architecture=x64 + run: pnpm install --frozen-lockfile --config.platform=linux --config.architecture=x64 - name: Validate translation keys if: steps.changes.outputs.translations == 'true' diff --git a/apps/storybook/package.json b/apps/storybook/package.json index d31a1a2e4bf9..f2478e007930 100644 --- a/apps/storybook/package.json +++ b/apps/storybook/package.json @@ -12,18 +12,18 @@ }, "devDependencies": { "@chromatic-com/storybook": "^5.0.1", - "@storybook/addon-a11y": "10.2.17", - "@storybook/addon-links": "10.2.17", - "@storybook/addon-onboarding": "10.2.17", - "@storybook/react-vite": "10.2.17", - "@typescript-eslint/eslint-plugin": "8.57.0", + "@storybook/addon-a11y": "10.3.5", + "@storybook/addon-docs": "10.3.5", + "@storybook/addon-links": "10.3.5", + "@storybook/addon-onboarding": "10.3.5", + "@storybook/react-vite": "10.3.5", "@tailwindcss/vite": "4.2.1", + "@typescript-eslint/eslint-plugin": "8.57.0", "@typescript-eslint/parser": "8.57.0", "@vitejs/plugin-react": "5.1.4", "eslint-plugin-react-refresh": "0.4.26", - "eslint-plugin-storybook": "10.2.17", - "storybook": "10.2.17", - "vite": "7.3.2", - "@storybook/addon-docs": "10.2.17" + "eslint-plugin-storybook": "10.3.5", + "storybook": "10.3.5", + "vite": "7.3.2" } } diff --git a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/lib/utils.ts b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/lib/utils.ts index 3a2040afca56..aa59cbf145b0 100644 --- a/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/lib/utils.ts +++ b/apps/web/app/(app)/environments/[environmentId]/surveys/[surveyId]/(analysis)/responses/lib/utils.ts @@ -1,5 +1,4 @@ import { TFunction } from "i18next"; -import { capitalize } from "lodash"; import { AirplayIcon, ArrowUpFromDotIcon, @@ -9,6 +8,7 @@ import { SmartphoneIcon, } from "lucide-react"; import { TResponseMeta } from "@formbricks/types/responses"; +import { capitalize } from "@/lib/utils/object"; export const getAddressFieldLabel = (field: string, t: TFunction) => { switch (field) { diff --git a/apps/web/lib/organization/service.ts b/apps/web/lib/organization/service.ts index 228b52588d5e..dcdf8ae2d491 100644 --- a/apps/web/lib/organization/service.ts +++ b/apps/web/lib/organization/service.ts @@ -63,7 +63,7 @@ const mapOrganizationBilling = (billing: TOrganizationWithBilling["billing"]): T stripeCustomerId: billing.stripeCustomerId, limits: billing.limits, usageCycleAnchor: billing.usageCycleAnchor, - ...(billing.stripe === undefined ? {} : { stripe: billing.stripe }), + ...(billing.stripe == null ? {} : { stripe: billing.stripe }), }; }; diff --git a/apps/web/lib/pollyfills/structuredClone.ts b/apps/web/lib/pollyfills/structuredClone.ts index 9d343725af57..f351e9a44d5a 100644 --- a/apps/web/lib/pollyfills/structuredClone.ts +++ b/apps/web/lib/pollyfills/structuredClone.ts @@ -1,6 +1,3 @@ -import structuredClonePolyfill from "@ungap/structured-clone"; - -const structuredCloneExport = - typeof structuredClone === "undefined" ? structuredClonePolyfill : structuredClone; +const structuredCloneExport = globalThis.structuredClone; export { structuredCloneExport as structuredClone }; diff --git a/apps/web/lib/survey/__mock__/survey.mock.ts b/apps/web/lib/survey/__mock__/survey.mock.ts index 1ed698de30db..61e7905849ea 100644 --- a/apps/web/lib/survey/__mock__/survey.mock.ts +++ b/apps/web/lib/survey/__mock__/survey.mock.ts @@ -190,6 +190,14 @@ const mockWelcomeCard: TSurveyWelcomeCard = { showResponseCount: false, }; +const mockBlocks = [ + { + id: "block1", + name: "Block 1", + elements: [mockQuestion], + }, +]; + const baseSurveyProperties = { id: mockId, name: "Mock Survey", @@ -201,13 +209,7 @@ const baseSurveyProperties = { displayLimit: 3, welcomeCard: mockWelcomeCard, questions: [], - blocks: [ - { - id: "block1", - name: "Block 1", - elements: [mockQuestion], - }, - ], + blocks: mockBlocks as unknown as SurveyMock["blocks"], isBackButtonHidden: false, isAutoProgressingEnabled: false, isCaptureIpEnabled: false, @@ -304,6 +306,7 @@ export const createSurveyInput: TSurveyCreateInput = { displayOption: "respondMultiple", triggers: [{ actionClass: mockActionClass }], ...baseSurveyProperties, + blocks: mockBlocks, }; export const updateSurveyInput: TSurvey = { @@ -326,6 +329,7 @@ export const updateSurveyInput: TSurvey = { followUps: [], ...baseSurveyProperties, ...commonMockProperties, + blocks: mockBlocks, slug: null, customHeadScripts: null, customHeadScriptsMode: null, diff --git a/apps/web/lib/survey/service.ts b/apps/web/lib/survey/service.ts index 0f2983559103..76949e947c15 100644 --- a/apps/web/lib/survey/service.ts +++ b/apps/web/lib/survey/service.ts @@ -5,7 +5,8 @@ import { prisma } from "@formbricks/database"; import { logger } from "@formbricks/logger"; import { ZId, ZOptionalNumber } from "@formbricks/types/common"; import { DatabaseError, InvalidInputError, ResourceNotFoundError } from "@formbricks/types/errors"; -import { TSegment, ZSegmentFilters } from "@formbricks/types/segment"; +import { ZSegmentFilters } from "@formbricks/types/segment"; +import { TSurveyBlock } from "@formbricks/types/surveys/blocks"; import { TSurvey, TSurveyCreateInput, ZSurvey, ZSurveyCreateInput } from "@formbricks/types/surveys/types"; import { getOrganizationByEnvironmentId, @@ -558,22 +559,7 @@ export const updateSurveyInternal = async ( select: selectSurvey, }); - let surveySegment: TSegment | null = null; - if (prismaSurvey.segment) { - surveySegment = { - ...prismaSurvey.segment, - surveys: prismaSurvey.segment.surveys.map((survey) => survey.id), - }; - } - - const modifiedSurvey: TSurvey = { - ...prismaSurvey, // Properties from prismaSurvey - displayPercentage: Number(prismaSurvey.displayPercentage) || null, - segment: surveySegment, - customHeadScriptsMode: prismaSurvey.customHeadScriptsMode, - }; - - return modifiedSurvey; + return transformPrismaSurvey(prismaSurvey); } catch (error) { logger.error(error, "Error updating survey"); if (error instanceof Prisma.PrismaClientKnownRequestError) { @@ -648,8 +634,8 @@ export const createSurvey = async ( } // Validate and prepare blocks for persistence - if (data.blocks && data.blocks.length > 0) { - data.blocks = validateMediaAndPrepareBlocks(data.blocks); + if (Array.isArray(data.blocks) && data.blocks.length > 0) { + data.blocks = validateMediaAndPrepareBlocks(data.blocks as unknown as TSurveyBlock[]); } const survey = await prisma.survey.create({ @@ -773,21 +759,7 @@ export const loadNewSegmentInSurvey = async (surveyId: string, newSegmentId: str }); } - let surveySegment: TSegment | null = null; - if (prismaSurvey.segment) { - surveySegment = { - ...prismaSurvey.segment, - surveys: prismaSurvey.segment.surveys.map((survey) => survey.id), - }; - } - - const modifiedSurvey = { - ...prismaSurvey, - segment: surveySegment, - customHeadScriptsMode: prismaSurvey.customHeadScriptsMode, - }; - - return modifiedSurvey as TSurvey; + return transformPrismaSurvey(prismaSurvey); } catch (error) { if (error instanceof Prisma.PrismaClientKnownRequestError) { throw new DatabaseError(error.message); diff --git a/apps/web/lib/utils/debounce.ts b/apps/web/lib/utils/debounce.ts new file mode 100644 index 000000000000..aa6fff9028f0 --- /dev/null +++ b/apps/web/lib/utils/debounce.ts @@ -0,0 +1,27 @@ +export type DebouncedFunction void> = ((...args: Parameters) => void) & { + cancel: () => void; +}; + +export const debounce = void>( + callback: T, + delay: number +): DebouncedFunction => { + let timeoutId: ReturnType | undefined; + + const debounced = ((...args: Parameters) => { + if (timeoutId !== undefined) { + clearTimeout(timeoutId); + } + + timeoutId = setTimeout(() => callback(...args), delay); + }) as DebouncedFunction; + + debounced.cancel = () => { + if (timeoutId !== undefined) { + clearTimeout(timeoutId); + timeoutId = undefined; + } + }; + + return debounced; +}; diff --git a/apps/web/lib/utils/object.ts b/apps/web/lib/utils/object.ts new file mode 100644 index 000000000000..0589376c1840 --- /dev/null +++ b/apps/web/lib/utils/object.ts @@ -0,0 +1,35 @@ +export const capitalize = (value: string): string => { + if (!value) return ""; + + return `${value.charAt(0).toUpperCase()}${value.slice(1).toLowerCase()}`; +}; + +export const isDeepEqual = (left: unknown, right: unknown): boolean => { + if (Object.is(left, right)) return true; + + if (left instanceof Date && right instanceof Date) { + return left.getTime() === right.getTime(); + } + + if (typeof left !== "object" || left === null || typeof right !== "object" || right === null) { + return false; + } + + if (Array.isArray(left) || Array.isArray(right)) { + if (!Array.isArray(left) || !Array.isArray(right) || left.length !== right.length) return false; + + return left.every((item, index) => isDeepEqual(item, right[index])); + } + + const leftRecord = left as Record; + const rightRecord = right as Record; + const leftKeys = Object.keys(leftRecord); + const rightKeys = Object.keys(rightRecord); + + if (leftKeys.length !== rightKeys.length) return false; + + return leftKeys.every( + (key) => + Object.prototype.hasOwnProperty.call(rightRecord, key) && isDeepEqual(leftRecord[key], rightRecord[key]) + ); +}; diff --git a/apps/web/modules/api/lib/validation.ts b/apps/web/modules/api/lib/validation.ts index 37f31cdf7f31..2b08ae9a1525 100644 --- a/apps/web/modules/api/lib/validation.ts +++ b/apps/web/modules/api/lib/validation.ts @@ -20,7 +20,7 @@ import { ApiErrorDetails } from "@/modules/api/v2/types/api-error"; * @returns Validation error map keyed by element ID, or null if validation passes */ export const validateResponseData = ( - blocks: TSurveyBlock[] | undefined | null, + blocks: unknown[] | undefined | null, responseData: TResponseData, languageCode: string = "en", questions?: TSurveyQuestion[] | undefined | null @@ -28,8 +28,8 @@ export const validateResponseData = ( // Use blocks if available, otherwise transform questions to blocks let blocksToUse: TSurveyBlock[] = []; - if (blocks && blocks.length > 0) { - blocksToUse = blocks; + if (Array.isArray(blocks) && blocks.length > 0) { + blocksToUse = blocks as TSurveyBlock[]; } else if (questions && questions.length > 0) { // Transform legacy questions format to blocks for validation blocksToUse = transformQuestionsToBlocks(questions, []); diff --git a/apps/web/modules/api/v2/lib/element.ts b/apps/web/modules/api/v2/lib/element.ts index 224e8ffba195..50259265ad44 100644 --- a/apps/web/modules/api/v2/lib/element.ts +++ b/apps/web/modules/api/v2/lib/element.ts @@ -1,22 +1,32 @@ import { TResponseData } from "@formbricks/types/responses"; -import { TSurveyElement, TSurveyElementTypeEnum } from "@formbricks/types/surveys/elements"; -import { TSurveyQuestionChoice } from "@formbricks/types/surveys/types"; import { MAX_OTHER_OPTION_LENGTH } from "@/lib/constants"; import { getLocalizedValue } from "@/lib/i18n/utils"; +type TQuestionWithOtherOptionValidation = { + id: string; + type: string; + choices?: unknown[]; +}; + /** * Helper function to check if a string value is a valid "other" option * @returns BadRequestResponse if the value exceeds the limit, undefined otherwise */ export const validateOtherOptionLength = ( value: string, - choices: TSurveyQuestionChoice[], + choices: unknown[], questionId: string, language?: string ): string | undefined => { // Check if this is an "other" option (not in predefined choices) const matchingChoice = choices.find( - (choice) => getLocalizedValue(choice.label, language ?? "default") === value + (choice) => + typeof choice === "object" && + choice !== null && + "label" in choice && + typeof choice.label === "object" && + choice.label !== null && + getLocalizedValue(choice.label as Record, language ?? "default") === value ); // If this is an "other" option with value that's too long, reject the response @@ -31,7 +41,7 @@ export const validateOtherOptionLengthForMultipleChoice = ({ responseLanguage, }: { responseData?: TResponseData; - surveyQuestions: TSurveyElement[]; + surveyQuestions: TQuestionWithOtherOptionValidation[]; responseLanguage?: string; }): string | undefined => { if (!responseData) return undefined; @@ -39,11 +49,9 @@ export const validateOtherOptionLengthForMultipleChoice = ({ const question = surveyQuestions.find((q) => q.id === questionId); if (!question) continue; - const isMultiChoice = - question.type === TSurveyElementTypeEnum.MultipleChoiceMulti || - question.type === TSurveyElementTypeEnum.MultipleChoiceSingle; + const isMultiChoice = question.type === "multipleChoiceMulti" || question.type === "multipleChoiceSingle"; - if (!isMultiChoice) continue; + if (!isMultiChoice || !question.choices) continue; const error = validateAnswer(answer, question.choices, questionId, responseLanguage); if (error) return error; @@ -54,7 +62,7 @@ export const validateOtherOptionLengthForMultipleChoice = ({ function validateAnswer( answer: unknown, - choices: TSurveyQuestionChoice[], + choices: unknown[], questionId: string, language?: string ): string | undefined { diff --git a/apps/web/modules/ee/contacts/components/contact-data-view.tsx b/apps/web/modules/ee/contacts/components/contact-data-view.tsx index ef00d1370f89..24d95022b074 100644 --- a/apps/web/modules/ee/contacts/components/contact-data-view.tsx +++ b/apps/web/modules/ee/contacts/components/contact-data-view.tsx @@ -1,10 +1,10 @@ "use client"; -import { debounce } from "lodash"; import { useCallback, useEffect, useMemo, useRef, useState } from "react"; import toast from "react-hot-toast"; import { TContactAttributeKey } from "@formbricks/types/contact-attribute-key"; import { TEnvironment } from "@formbricks/types/environment"; +import { debounce } from "@/lib/utils/debounce"; import { getContactsAction } from "../actions"; import { TContactTableData, TContactWithAttributes } from "../types/contact"; import { ContactsTable } from "./contacts-table"; diff --git a/apps/web/modules/ee/license-check/lib/license.test.ts b/apps/web/modules/ee/license-check/lib/license.test.ts index 4c596ddd9f37..f5f4cab11fac 100644 --- a/apps/web/modules/ee/license-check/lib/license.test.ts +++ b/apps/web/modules/ee/license-check/lib/license.test.ts @@ -48,10 +48,6 @@ vi.mock("@formbricks/cache", () => ({ }, })); -vi.mock("node-fetch", () => ({ - default: vi.fn(), -})); - vi.mock("@formbricks/database", () => ({ prisma: { response: { @@ -86,6 +82,10 @@ vi.mock("@/lib/constants", async (importOriginal) => { return { ...(typeof actual === "object" && actual !== null ? actual : {}), IS_FORMBRICKS_CLOUD: false, // Default to self-hosted for most tests + // Keep false so the normal instanceId + guard logic is exercised. No real + // network calls are made: global.fetch and getInstanceId() are both mocked + // at the top of this file, so the license server is never actually reached. + E2E_TESTING: false, REVALIDATION_INTERVAL: 3600, // Example value ENTERPRISE_LICENSE_KEY: "test-license-key", }; @@ -107,6 +107,7 @@ describe("License Core Logic", () => { mockLogger.warn.mockReset(); mockLogger.info.mockReset(); mockLogger.debug.mockReset(); + vi.stubGlobal("fetch", vi.fn()); // Set up default mock implementations for Result types // fetchLicense uses get with TCachedFetchResult wrapper + distributed lock; getPreviousResult uses get with :previous_result key @@ -168,7 +169,7 @@ describe("License Core Logic", () => { test("should return cached license from FETCH_LICENSE_CACHE_KEY if available and valid", async () => { const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; // Mock cache hit: get returns wrapped license for status key mockCache.get.mockImplementation(async (key: string) => { @@ -191,7 +192,7 @@ describe("License Core Logic", () => { test("should fetch license if not in FETCH_LICENSE_CACHE_KEY", async () => { const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; // Default mocks give cache miss (get returns null) fetch.mockResolvedValueOnce({ @@ -211,7 +212,7 @@ describe("License Core Logic", () => { test("should use previous result if fetch fails and previous result exists and is within grace period", async () => { const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; const previousTime = new Date(Date.now() - 1 * 24 * 60 * 60 * 1000); // 1 day ago, within grace period const mockPreviousResult = { @@ -247,7 +248,7 @@ describe("License Core Logic", () => { test("should return inactive and set new previousResult if fetch fails and previous result is outside grace period", async () => { const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; const previousTime = new Date(Date.now() - 5 * 24 * 60 * 60 * 1000); // 5 days ago, outside grace period const mockPreviousResult = { @@ -321,7 +322,7 @@ describe("License Core Logic", () => { test("should return inactive with default features if fetch fails and no previous result (initial fail)", async () => { const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; // Cache miss -> fetch fails; no previous result (default get returns null) fetch.mockRejectedValueOnce(new Error("Network error")); @@ -368,9 +369,11 @@ describe("License Core Logic", () => { mockCache.get.mockReset(); mockCache.set.mockReset(); mockCache.withCache.mockReset(); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; fetch.mockReset(); + // Reset modules so the dynamic import below gets a fresh module with the new env mock + vi.resetModules(); // Mock the env module with empty license key vi.doMock("@/lib/env", () => ({ env: { @@ -415,7 +418,7 @@ describe("License Core Logic", () => { })); const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; // Cache miss -> fetch throws -> no previous result -> handleInitialFailure fetch.mockRejectedValueOnce(new Error("Network error")); @@ -449,7 +452,7 @@ describe("License Core Logic", () => { })); const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; mockCache.get.mockResolvedValue({ ok: true, data: null }); fetch.mockResolvedValueOnce({ ok: false, status: 400 } as any); @@ -480,7 +483,7 @@ describe("License Core Logic", () => { })); const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; mockCache.get.mockResolvedValue({ ok: true, data: null }); fetch.mockResolvedValueOnce({ ok: false, status: 403 } as any); @@ -511,7 +514,7 @@ describe("License Core Logic", () => { })); const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; const mockLicense: TEnterpriseLicenseDetails = { status: "active", @@ -576,7 +579,7 @@ describe("License Core Logic", () => { })); const { fetchLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; const mockLicense: TEnterpriseLicenseDetails = { status: "active", @@ -632,7 +635,7 @@ describe("License Core Logic", () => { })); const { fetchLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; const mockLicense: TEnterpriseLicenseDetails = { status: "active", @@ -688,7 +691,7 @@ describe("License Core Logic", () => { })); const { fetchLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; mockCache.get.mockResolvedValue({ ok: true, data: null }); mockCache.tryLock.mockResolvedValue({ ok: true, data: true }); @@ -730,7 +733,7 @@ describe("License Core Logic", () => { process.env.NEXT_PHASE = "phase-production-build"; const { fetchLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; const result = await fetchLicense(); @@ -753,7 +756,7 @@ describe("License Core Logic", () => { })); const { fetchLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; mockCache.tryLock.mockResolvedValue({ ok: true, data: false }); mockCache.get.mockResolvedValue({ ok: true, data: null }); @@ -906,7 +909,7 @@ describe("License Core Logic", () => { // Cache miss so fetch runs; mock get for cache check mockCache.get.mockResolvedValue({ ok: true, data: null }); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; fetch.mockResolvedValueOnce({ ok: true, json: async () => ({ @@ -975,7 +978,7 @@ describe("License Core Logic", () => { mockCache.get.mockResolvedValue({ ok: true, data: null }); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; fetch.mockResolvedValueOnce({ ok: true, json: async () => ({ @@ -1018,7 +1021,6 @@ describe("License Core Logic", () => { test("should log warning when setPreviousResult cache.set fails (line 176-178)", async () => { const { getEnterpriseLicense } = await import("./license"); - (await import("node-fetch")).default as Mock; const mockFetchedLicenseDetails: TEnterpriseLicenseDetails = { status: "active", @@ -1067,7 +1069,7 @@ describe("License Core Logic", () => { test("should log error when trackApiError is called (line 196-203)", async () => { const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; // Cache miss -> fetch returns 500 const mockStatus = 500; @@ -1091,7 +1093,7 @@ describe("License Core Logic", () => { test("should log error when trackApiError is called with different status codes (line 196-203)", async () => { const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; // Cache miss -> fetch returns 403 const mockStatus = 403; @@ -1115,7 +1117,7 @@ describe("License Core Logic", () => { test("should log info when trackFallbackUsage is called during grace period", async () => { const { getEnterpriseLicense } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; const previousTime = new Date(Date.now() - 1 * 24 * 60 * 60 * 1000); // 1 day ago const mockPreviousResult = { @@ -1177,7 +1179,7 @@ describe("License Core Logic", () => { test("should return active license state from pre-fetched active license without calling fetch", async () => { const { computeFreshLicenseState } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; const result = await computeFreshLicenseState(mockActiveLicenseDetails); @@ -1209,7 +1211,7 @@ describe("License Core Logic", () => { }); const { computeFreshLicenseState } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; const result = await computeFreshLicenseState(null); @@ -1226,7 +1228,7 @@ describe("License Core Logic", () => { test("should return inactive default when freshLicense is null and no previous result", async () => { const { computeFreshLicenseState } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; const result = await computeFreshLicenseState(null); @@ -1321,7 +1323,7 @@ describe("License Core Logic", () => { describe("fetchLicenseFresh", () => { test("should fetch directly from server without using cache", async () => { const { fetchLicenseFresh } = await import("./license"); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; mockCache.get.mockResolvedValue({ ok: true, data: null }); fetch.mockResolvedValueOnce({ @@ -1374,7 +1376,7 @@ describe("License Core Logic", () => { }, })); - const fetch = (await import("node-fetch")).default as Mock; + const fetch = global.fetch as Mock; // Cache miss so fetchLicense fetches from server mockCache.get.mockResolvedValue({ ok: true, data: null }); diff --git a/apps/web/modules/ee/license-check/lib/license.ts b/apps/web/modules/ee/license-check/lib/license.ts index e11edb4c0483..9e5aac51cca5 100644 --- a/apps/web/modules/ee/license-check/lib/license.ts +++ b/apps/web/modules/ee/license-check/lib/license.ts @@ -1,7 +1,6 @@ import "server-only"; -import { HttpsProxyAgent } from "https-proxy-agent"; -import fetch from "node-fetch"; import { cache as reactCache } from "react"; +import { ProxyAgent } from "undici"; import { z } from "zod"; import { createCacheKey } from "@formbricks/cache"; import { prisma } from "@formbricks/database"; @@ -17,6 +16,12 @@ import { TLicenseStatus, } from "@/modules/ee/license-check/types/enterprise-license"; +// Module-level ProxyAgent singleton — reused across all license fetches to avoid leaking +// socket pools on every call (ProxyAgent owns connection pools and should not be created +// per-request in long-lived processes). +const _proxyUrl = env.HTTPS_PROXY ?? env.HTTP_PROXY; +const _proxyDispatcher = _proxyUrl ? new ProxyAgent(_proxyUrl) : undefined; + // Configuration const CONFIG = { CACHE: { @@ -358,12 +363,6 @@ const fetchLicenseFromServerInternal = async (retryCount = 0): Promise controller.abort(), CONFIG.API.TIMEOUT_MS); - const payload: Record = { licenseKey: env.ENTERPRISE_LICENSE_KEY, usage: { responseCount }, @@ -375,13 +374,11 @@ const fetchLicenseFromServerInternal = async (retryCount = 0): Promise 0) { - data.blocks = validateMediaAndPrepareBlocks(data.blocks); + if (Array.isArray(data.blocks) && data.blocks.length > 0) { + data.blocks = validateMediaAndPrepareBlocks(data.blocks as unknown as TSurveyBlock[]); } const survey = await prisma.survey.create({ diff --git a/apps/web/modules/survey/editor/components/animated-survey-bg.tsx b/apps/web/modules/survey/editor/components/animated-survey-bg.tsx index 800171e68e22..809f17e47708 100644 --- a/apps/web/modules/survey/editor/components/animated-survey-bg.tsx +++ b/apps/web/modules/survey/editor/components/animated-survey-bg.tsx @@ -1,5 +1,5 @@ -import { debounce } from "lodash"; import { useState } from "react"; +import { debounce } from "@/lib/utils/debounce"; interface AnimatedSurveyBgProps { handleBgChange: (bg: string, bgType: string) => void; diff --git a/apps/web/modules/survey/editor/components/survey-menu-bar.tsx b/apps/web/modules/survey/editor/components/survey-menu-bar.tsx index 3949891f8b07..3d0b4e022e53 100644 --- a/apps/web/modules/survey/editor/components/survey-menu-bar.tsx +++ b/apps/web/modules/survey/editor/components/survey-menu-bar.tsx @@ -1,7 +1,6 @@ "use client"; import { Project } from "@prisma/client"; -import { isEqual } from "lodash"; import { ArrowLeftIcon, SettingsIcon } from "lucide-react"; import { useRouter } from "next/navigation"; import { useEffect, useMemo, useRef, useState } from "react"; @@ -18,6 +17,7 @@ import { ZSurveyRedirectUrlCard, } from "@formbricks/types/surveys/types"; import { getFormattedErrorMessage } from "@/lib/utils/helper"; +import { isDeepEqual } from "@/lib/utils/object"; import { createSegmentAction } from "@/modules/ee/contacts/segments/actions"; import { TSurveyDraft } from "@/modules/survey/editor/types/survey"; import { Alert, AlertButton, AlertTitle } from "@/modules/ui/components/alert"; @@ -117,7 +117,7 @@ export const SurveyMenuBar = ({ return; } - if (!isEqual(localSurvey, survey)) { + if (!isDeepEqual(localSurvey, survey)) { e.preventDefault(); return (e.returnValue = warningText); } @@ -156,7 +156,7 @@ export const SurveyMenuBar = ({ const { updatedAt, ...localSurveyRest } = localSurvey; const { updatedAt: _, ...surveyRest } = survey; - if (!isEqual(localSurveyRest, surveyRest)) { + if (!isDeepEqual(localSurveyRest, surveyRest)) { setConfirmDialogOpen(true); } else { router.back(); @@ -279,7 +279,7 @@ export const SurveyMenuBar = ({ const { updatedAt: surveyUpdatedAt, ...surveyRest } = surveyRef.current; // Skip if no changes - if (isEqual(localSurveyRest, surveyRest)) return; + if (isDeepEqual(localSurveyRest, surveyRest)) return; isAutoSavingRef.current = true; @@ -296,7 +296,7 @@ export const SurveyMenuBar = ({ // If the segment changed on the server (e.g., private segment was deleted when // switching from app to link type), update localSurvey to prevent stale segment // references when publishing - if (!isEqual(localSurveyRef.current.segment, savedData.segment)) { + if (!isDeepEqual(localSurveyRef.current.segment, savedData.segment)) { setLocalSurvey({ ...localSurveyRef.current, segment: savedData.segment }); } diff --git a/apps/web/modules/survey/editor/components/unsplash-images.tsx b/apps/web/modules/survey/editor/components/unsplash-images.tsx index b56c2ef6d29d..3ec0495059f2 100644 --- a/apps/web/modules/survey/editor/components/unsplash-images.tsx +++ b/apps/web/modules/survey/editor/components/unsplash-images.tsx @@ -1,12 +1,12 @@ "use client"; -import { debounce } from "lodash"; import { SearchIcon } from "lucide-react"; import UnsplashImage from "next/image"; import { useEffect, useRef, useState } from "react"; import toast from "react-hot-toast"; import { useTranslation } from "react-i18next"; import { TSurveyBackgroundBgType } from "@formbricks/types/surveys/types"; +import { debounce } from "@/lib/utils/debounce"; import { Button } from "@/modules/ui/components/button"; import { Input } from "@/modules/ui/components/input"; import { LoadingSpinner } from "@/modules/ui/components/loading-spinner"; diff --git a/apps/web/modules/survey/editor/components/validation-rule-type-selector.tsx b/apps/web/modules/survey/editor/components/validation-rule-type-selector.tsx index 20a2dbabf9da..c09170e0f95f 100644 --- a/apps/web/modules/survey/editor/components/validation-rule-type-selector.tsx +++ b/apps/web/modules/survey/editor/components/validation-rule-type-selector.tsx @@ -1,7 +1,7 @@ "use client"; -import { capitalize } from "lodash"; import { TValidationRuleType } from "@formbricks/types/surveys/validation-rules"; +import { capitalize } from "@/lib/utils/object"; import { Select, SelectContent, diff --git a/apps/web/modules/survey/editor/lib/survey.ts b/apps/web/modules/survey/editor/lib/survey.ts index a73b2bfad23e..946690a6645e 100644 --- a/apps/web/modules/survey/editor/lib/survey.ts +++ b/apps/web/modules/survey/editor/lib/survey.ts @@ -268,12 +268,12 @@ export const updateSurvey = async (updatedSurvey: TSurvey): Promise => }; } - const modifiedSurvey: TSurvey = { + const modifiedSurvey = { ...prismaSurvey, // Properties from prismaSurvey displayPercentage: Number(prismaSurvey.displayPercentage) || null, segment: surveySegment, customHeadScriptsMode: prismaSurvey.customHeadScriptsMode, - }; + } as unknown as TSurvey; return modifiedSurvey; } catch (error) { diff --git a/apps/web/modules/survey/list/components/survey-filters.tsx b/apps/web/modules/survey/list/components/survey-filters.tsx index aed977ce1740..4dc9cf94f945 100644 --- a/apps/web/modules/survey/list/components/survey-filters.tsx +++ b/apps/web/modules/survey/list/components/survey-filters.tsx @@ -4,7 +4,6 @@ import { TFunction } from "i18next"; import { ChevronDownIcon, X } from "lucide-react"; import { type Dispatch, type SetStateAction, useEffect, useState } from "react"; import { useTranslation } from "react-i18next"; -import { useDebounce } from "react-use"; import type { TProjectConfigChannel } from "@formbricks/types/project"; import type { TFilterOption, TSortOption } from "@formbricks/types/surveys/types"; import { SortOption } from "@/modules/survey/list/components/sort-option"; @@ -59,7 +58,12 @@ export const SurveyFilters = ({ const { sortBy, status, type } = surveyFilters; const [name, setName] = useState(surveyFilters.name); const { t } = useTranslation(); - useDebounce(() => setSurveyFilters((prev) => ({ ...prev, name })), 800, [name]); + + useEffect(() => { + const timeoutId = setTimeout(() => setSurveyFilters((prev) => ({ ...prev, name })), 800); + + return () => clearTimeout(timeoutId); + }, [name, setSurveyFilters]); const [dropdownOpenStates, setDropdownOpenStates] = useState(new Map()); diff --git a/apps/web/modules/survey/list/lib/survey.ts b/apps/web/modules/survey/list/lib/survey.ts index e5b4389ac24b..648dd99628ba 100644 --- a/apps/web/modules/survey/list/lib/survey.ts +++ b/apps/web/modules/survey/list/lib/survey.ts @@ -6,6 +6,7 @@ import { z } from "zod"; import { prisma } from "@formbricks/database"; import { logger } from "@formbricks/logger"; import { DatabaseError, InvalidInputError, ResourceNotFoundError } from "@formbricks/types/errors"; +import { TSurveyBlock } from "@formbricks/types/surveys/blocks"; import { TSurveyFilterCriteria } from "@formbricks/types/surveys/types"; import { getOrganizationByEnvironmentId } from "@/lib/organization/service"; import { checkForInvalidMediaInBlocks } from "@/lib/survey/utils"; @@ -473,7 +474,7 @@ export const copySurveyToOtherEnvironment = async ( } if (surveyData.blocks) { - const result = checkForInvalidMediaInBlocks(surveyData.blocks); + const result = checkForInvalidMediaInBlocks(surveyData.blocks as unknown as TSurveyBlock[]); if (!result.ok) { throw new InvalidInputError(result.error.message); } diff --git a/apps/web/modules/ui/components/confetti/index.tsx b/apps/web/modules/ui/components/confetti/index.tsx index 9859484dbba2..51fd46c332d6 100644 --- a/apps/web/modules/ui/components/confetti/index.tsx +++ b/apps/web/modules/ui/components/confetti/index.tsx @@ -1,7 +1,7 @@ "use client"; +import { useEffect, useState } from "react"; import ReactConfetti from "react-confetti"; -import { useWindowSize } from "react-use"; type ConfettiProps = { colors?: string[]; @@ -12,11 +12,21 @@ export const Confetti: React.FC = ({ }: { colors?: string[]; }) => { - const { width, height } = useWindowSize(); + const [windowSize, setWindowSize] = useState({ height: 0, width: 0 }); + + useEffect(() => { + const updateWindowSize = () => setWindowSize({ height: window.innerHeight, width: window.innerWidth }); + + updateWindowSize(); + window.addEventListener("resize", updateWindowSize); + + return () => window.removeEventListener("resize", updateWindowSize); + }, []); + return ( { - config.module.rules.push({ - test: /\.(mp4|webm|ogg|swf|ogv)$/, - use: [ - { - loader: "file-loader", - options: { - publicPath: "/_next/static/videos/", - outputPath: "static/videos/", - name: "[name].[hash].[ext]", - }, - }, - ], - }); - config.resolve.fallback = { - http: false, // Prevents Next.js from trying to bundle 'http' - https: false, - }; - return config; - }, async headers() { const isProduction = process.env.NODE_ENV === "production"; const scriptSrcUnsafeEval = isProduction ? "" : " 'unsafe-eval'"; diff --git a/apps/web/package.json b/apps/web/package.json index 08fb077ca67c..ddc6f139e349 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -19,7 +19,7 @@ "i18n:generate": "npx lingo.dev@latest run && npx lingo.dev@latest lockfile --force" }, "dependencies": { - "@boxyhq/saml-jackson": "1.52.2", + "@boxyhq/saml-jackson": "26.2.0", "@dnd-kit/core": "6.3.1", "@dnd-kit/modifiers": "9.0.0", "@dnd-kit/sortable": "10.0.0", @@ -76,7 +76,6 @@ "@tailwindcss/typography": "0.5.19", "@tanstack/react-query": "5.99.0", "@tanstack/react-table": "8.21.3", - "@ungap/structured-clone": "1.3.0", "bcryptjs": "3.0.3", "boring-avatars": "2.0.4", "class-variance-authority": "0.7.1", @@ -84,28 +83,25 @@ "cmdk": "1.1.1", "csv-parse": "6.1.0", "date-fns": "4.1.0", - "file-loader": "6.2.0", "framer-motion": "12.35.2", "googleapis": "171.4.0", "heic-convert": "2.1.0", - "https-proxy-agent": "7.0.6", "i18next": "25.8.18", "i18next-icu": "2.4.3", "i18next-resources-to-backend": "1.2.1", + "isomorphic-dompurify": "3.9.0", "jiti": "2.6.1", "jsonwebtoken": "9.0.3", "lexical": "0.41.0", - "lodash": "4.18.1", "lucide-react": "0.577.0", "markdown-it": "14.1.1", - "next": "16.1.7", + "next": "16.2.4", "next-auth": "4.24.13", "next-safe-action": "8.1.8", - "node-fetch": "3.3.2", - "nodemailer": "8.0.4", + "nodemailer": "8.0.5", "otplib": "12.0.1", "papaparse": "5.5.3", - "posthog-js": "1.360.0", + "posthog-js": "1.369.5", "posthog-node": "5.28.9", "prismjs": "1.30.0", "qr-code-styling": "1.9.2", @@ -120,7 +116,6 @@ "react-hot-toast": "2.6.0", "react-i18next": "16.5.8", "react-turnstile": "1.1.5", - "react-use": "17.6.0", "sanitize-html": "2.17.1", "server-only": "0.0.1", "sharp": "0.34.5", @@ -128,8 +123,8 @@ "tailwind-merge": "3.5.0", "tailwindcss": "3.4.19", "ua-parser-js": "2.0.9", + "undici": "7.24.0", "uuid": "13.0.0", - "webpack": "5.105.4", "xlsx": "file:vendor/xlsx-0.20.3.tgz", "zod": "4.3.6", "zod-openapi": "5.4.6" @@ -141,14 +136,12 @@ "@testing-library/react": "16.3.2", "@types/heic-convert": "2.1.0", "@types/jsonwebtoken": "9.0.10", - "@types/lodash": "4.17.24", "@types/markdown-it": "14.1.2", "@types/nodemailer": "7.0.11", "@types/papaparse": "5.5.2", "@types/qrcode": "1.5.6", "@types/sanitize-html": "2.16.1", - "@types/ungap__structured-clone": "1.2.0", - "@vitest/coverage-v8": "4.0.18", + "@vitest/coverage-v8": "4.1.5", "autoprefixer": "10.4.27", "cross-env": "10.1.0", "dotenv": "17.3.1", @@ -156,7 +149,7 @@ "resize-observer-polyfill": "1.5.1", "vite": "7.3.2", "vite-tsconfig-paths": "6.1.1", - "vitest": "4.0.18", + "vitest": "4.1.5", "vitest-mock-extended": "3.1.0" } } diff --git a/package.json b/package.json index b5becf289481..15090f0ab86c 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "@playwright/test": "1.58.2", "eslint": "8.57.1", "husky": "9.1.7", - "lint-staged": "16.3.3", + "lint-staged": "16.4.0", "rimraf": "6.1.3", "tsx": "4.21.0", "turbo": "2.8.16" @@ -72,7 +72,7 @@ ] }, "engines": { - "node": ">=20.0.0" + "node": ">=20.18.1" }, "packageManager": "pnpm@10.32.1", "nextBundleAnalysis": { @@ -83,33 +83,21 @@ }, "pnpm": { "overrides": { - "@hono/node-server": "1.19.10", + "@hono/node-server": "1.19.13", "@tootallnate/once": "3.0.1", - "schema-utils@3.3.0>ajv": "6.14.0", - "axios": "1.13.5", - "@grpc/proto-loader@0.7.15>protobufjs": "7.5.5", - "@grpc/proto-loader@0.8.0>protobufjs": "7.5.5", - "@opentelemetry/otlp-transformer@0.57.1>protobufjs": "7.5.5", - "@opentelemetry/otlp-transformer@0.208.0>protobufjs": "7.5.5", - "@opentelemetry/otlp-transformer@0.212.0>protobufjs": "8.0.1", - "@opentelemetry/otlp-transformer@0.213.0>protobufjs": "7.5.5", + "@xmldom/xmldom": "0.9.10", + "ajv@6": "6.14.0", + "axios": "1.15.2", "effect": "3.20.0", - "flatted": "3.4.2", - "hono": "4.12.7", - "lodash": "4.18.1", - "@microsoft/api-extractor>minimatch": "10.2.4", - "node-forge": ">=1.3.2", - "qs": "6.14.2", - "rollup": "4.59.0", - "socket.io-parser": "4.2.6", - "tar": ">=7.5.11", - "typeorm": ">=0.3.26", - "undici": "7.24.0", "fast-xml-parser": "5.5.7", - "diff": ">=8.0.3" + "hono": "4.12.14", + "lodash": "4.18.1", + "node-forge": "1.4.0", + "@opentelemetry/otlp-transformer>protobufjs": "8.0.1", + "tar": "7.5.13" }, "comments": { - "overrides": "Security fixes for transitive dependencies. Remove when upstream packages update: @hono/node-server/hono (Dependabot #313/#316/#317) - awaiting Prisma update | @tootallnate/once (Dependabot #305) - awaiting sqlite3/node-gyp chain update | schema-utils@3>ajv (Dependabot #287) - awaiting eslint/file-loader schema-utils update | axios (CVE-2025-58754, CVE-2026-25639) - awaiting @boxyhq/saml-jackson update | protobufjs (ENG-716 / CVE-2026-41242) - awaiting @boxyhq/saml-jackson and OpenTelemetry transitive updates | effect (Dependabot #339) - awaiting Prisma update | flatted (Dependabot #324/#338) - awaiting eslint/flat-cache update | lodash (Dependabot #360) - awaiting @boxyhq/saml-jackson, Prisma/Chevrotain, and @microsoft/api-extractor transitive updates | minimatch (Dependabot #288/#294/#297) - awaiting react-email/glob update | node-forge (Dependabot #230) - awaiting @boxyhq/saml-jackson update | qs (Dependabot #277) - awaiting googleapis/googleapis-common update | rollup (Dependabot #291) - awaiting Vite patch adoption | socket.io-parser (Dependabot #334) - awaiting react-email/socket.io update | tar (CVE-2026-23745/23950/24842/26960) - awaiting @boxyhq/saml-jackson/sqlite3 dependency updates | typeorm (Dependabot #223) - awaiting @boxyhq/saml-jackson update | undici (Dependabot #319/#322/#323) - awaiting jsdom/vitest/isomorphic-dompurify updates | fast-xml-parser (CVE-2026-25896/26278/33036/33349) - awaiting exact upstream pin updates | diff (Dependabot #269) - awaiting upstream patch range adoption" + "overrides": "Security fixes for transitive dependencies that still fail a no-override audit. Remove each override when its upstream chain adopts a patched version: @hono/node-server/hono/effect via Prisma dev tooling | @tootallnate/once and tar via sqlite3/BoxyHQ SAML Jackson database tooling | @xmldom/xmldom, axios, lodash, and node-forge via @boxyhq/saml-jackson | ajv via @vercel/style-guide/eslint-plugin-tsdoc | protobufjs via BoxyHQ/OpenTelemetry metrics | fast-xml-parser via AWS SDK XML builder." }, "patchedDependencies": { "next-auth@4.24.13": "patches/next-auth@4.24.13.patch" diff --git a/packages/ai/package.json b/packages/ai/package.json index 144fc6d87fbe..eba574e9f871 100644 --- a/packages/ai/package.json +++ b/packages/ai/package.json @@ -30,7 +30,7 @@ "lint": "eslint . --ext .ts,.js", "lint:fix": "eslint . --ext .ts,.js --fix", "lint:report": "eslint . --format json --output-file ../../lint-results/ai.json", - "build": "rimraf dist && tsc && vite build", + "build": "rimraf dist && vite build && tsc --project tsconfig.build.json", "test": "vitest run", "test:coverage": "vitest run --coverage" }, @@ -47,9 +47,8 @@ "devDependencies": { "@formbricks/config-typescript": "workspace:*", "@formbricks/eslint-config": "workspace:*", - "@vitest/coverage-v8": "4.0.18", + "@vitest/coverage-v8": "4.1.5", "vite": "8.0.5", - "vite-plugin-dts": "4.5.4", - "vitest": "4.0.18" + "vitest": "4.1.5" } } diff --git a/packages/ai/tsconfig.build.json b/packages/ai/tsconfig.build.json new file mode 100644 index 000000000000..cc4914f1684f --- /dev/null +++ b/packages/ai/tsconfig.build.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "declaration": true, + "declarationDir": "dist", + "emitDeclarationOnly": true, + "isolatedModules": false, + "noEmit": false, + "outDir": "dist", + "rootDir": "src" + }, + "exclude": ["src/**/*.test.ts", "src/**/*.spec.ts"], + "extends": "./tsconfig.json", + "include": ["src"] +} diff --git a/packages/ai/vite.config.ts b/packages/ai/vite.config.ts index 74371ff25744..67ecf5595dc9 100644 --- a/packages/ai/vite.config.ts +++ b/packages/ai/vite.config.ts @@ -1,7 +1,5 @@ /// import { resolve } from "node:path"; -import { PluginOption } from "vite"; -import dts from "vite-plugin-dts"; import { defineConfig } from "vitest/config"; export default defineConfig({ @@ -36,9 +34,4 @@ export default defineConfig({ reporter: ["text", "json", "html", "lcov"], }, }, - plugins: [ - dts({ - rollupTypes: true, - }) as PluginOption, - ], }); diff --git a/packages/cache/package.json b/packages/cache/package.json index 1b2a618e532c..c674e7a12716 100644 --- a/packages/cache/package.json +++ b/packages/cache/package.json @@ -30,7 +30,7 @@ "lint": "eslint . --ext .ts,.js", "lint:fix": "eslint . --ext .ts,.js --fix", "lint:report": "eslint . --format json --output-file ../../lint-results/cache.json", - "build": "tsc && vite build", + "build": "vite build", "test": "vitest run", "test:coverage": "vitest run --coverage", "go": "vite build --watch --mode dev" @@ -44,8 +44,9 @@ "devDependencies": { "@formbricks/config-typescript": "workspace:*", "@formbricks/eslint-config": "workspace:*", + "@vitest/coverage-v8": "4.1.5", "vite": "7.3.2", - "vitest": "4.0.18", - "@vitest/coverage-v8": "4.0.18" + "vite-plugin-dts": "4.5.4", + "vitest": "4.1.5" } } diff --git a/packages/cache/vite.config.ts b/packages/cache/vite.config.ts index cccfaf0c86c9..1532a58a7128 100644 --- a/packages/cache/vite.config.ts +++ b/packages/cache/vite.config.ts @@ -2,6 +2,7 @@ import { resolve } from "path"; import dts from "vite-plugin-dts"; import { defineConfig } from "vitest/config"; +import { rewriteNodeNextDtsSpecifiers } from "../vite-plugins/node-next-dts"; export default defineConfig({ resolve: { @@ -20,18 +21,19 @@ export default defineConfig({ external: ["redis", "@formbricks/logger", "zod"], }, }, - test: { - environment: "node", - globals: true, - coverage: { - reporter: ["text", "json", "html", "lcov"], - }, - }, plugins: [ dts({ include: ["src/**/*", "types/**/*"], entryRoot: ".", outDir: "dist", + beforeWriteFile: rewriteNodeNextDtsSpecifiers, }), ], + test: { + environment: "node", + globals: true, + coverage: { + reporter: ["text", "json", "html", "lcov"], + }, + }, }); diff --git a/packages/database/json-types.ts b/packages/database/json-types.ts index cfc8fcb3502f..9d89ea5af2d3 100644 --- a/packages/database/json-types.ts +++ b/packages/database/json-types.ts @@ -1,22 +1,31 @@ /* eslint-disable import/no-relative-packages -- required for importing types */ /* eslint-disable @typescript-eslint/no-namespace -- using namespaces is required for prisma-json-types-generator */ -import { type TActionClassNoCodeConfig } from "../types/action-classes"; -import type { TOrganizationAccess } from "../types/api-key"; -import { type TIntegrationConfig } from "../types/integration"; +import { type TActionClassNoCodeConfig } from "@formbricks/types/action-classes"; +import type { TOrganizationAccess } from "@formbricks/types/api-key"; +import { type TIntegrationConfig } from "@formbricks/types/integration"; import { type TOrganizationBilling, type TOrganizationBillingPlanLimits, type TOrganizationStripeBilling, -} from "../types/organizations"; -import { type TProjectConfig, type TProjectStyling } from "../types/project"; -import type { TSurveyQuotaLogic } from "../types/quota"; -import { type TResponseContactAttributes, type TResponseData, type TResponseMeta } from "../types/responses"; -import { type TBaseFilters } from "../types/segment"; -import { type TSurveyBlocks } from "../types/surveys/blocks"; + type TOrganizationWhitelabel, +} from "@formbricks/types/organizations"; +import { type TLogo, type TProjectConfig, type TProjectStyling } from "@formbricks/types/project"; +import type { TSurveyQuotaLogic } from "@formbricks/types/quota"; +import { + type TResponseContactAttributes, + type TResponseData, + type TResponseMeta, + type TResponseTtc, + type TResponseVariables, +} from "@formbricks/types/responses"; +import { type TBaseFilters } from "@formbricks/types/segment"; +import { type TSurveyBlocks } from "@formbricks/types/surveys/blocks"; +import type { TSurveyFollowUpAction, TSurveyFollowUpTrigger } from "@formbricks/types/surveys/follow-up"; import { type TSurveyClosedMessage, type TSurveyEnding, type TSurveyHiddenFields, + type TSurveyInlineTriggers, type TSurveyMetadata, type TSurveyProjectOverwrites, type TSurveyQuestions, @@ -25,9 +34,8 @@ import { type TSurveyStyling, type TSurveyVariables, type TSurveyWelcomeCard, -} from "../types/surveys/types"; -import type { TUserLocale, TUserNotificationSettings } from "../types/user"; -import type { TSurveyFollowUpAction, TSurveyFollowUpTrigger } from "./types/survey-follow-up"; +} from "@formbricks/types/surveys/types"; +import type { TUserLocale, TUserNotificationSettings } from "@formbricks/types/user"; declare global { namespace PrismaJson { @@ -36,6 +44,8 @@ declare global { export type IntegrationConfig = TIntegrationConfig; export type ProjectConfig = TProjectConfig; export type ResponseData = TResponseData; + export type ResponseVariables = TResponseVariables; + export type ResponseTtc = TResponseTtc; export type ResponseMeta = TResponseMeta; export type ResponseContactAttributes = TResponseContactAttributes; export type SurveyWelcomeCard = TSurveyWelcomeCard; @@ -44,17 +54,21 @@ declare global { export type SurveyEnding = TSurveyEnding; export type SurveyHiddenFields = TSurveyHiddenFields; export type SurveyVariables = TSurveyVariables; + export type SurveyInlineTriggers = TSurveyInlineTriggers; export type SurveyProjectOverwrites = TSurveyProjectOverwrites; export type SurveyStyling = TSurveyStyling; export type SurveyClosedMessage = TSurveyClosedMessage; export type SurveySingleUse = TSurveySingleUse; export type SurveyRecaptcha = TSurveyRecaptcha; + export type SurveyLinkMetadata = TSurveyMetadata; export type OrganizationBilling = TOrganizationBilling; export type OrganizationBillingPlanLimits = TOrganizationBillingPlanLimits; export type OrganizationStripeBilling = TOrganizationStripeBilling; + export type OrganizationWhitelabel = TOrganizationWhitelabel; export type UserNotificationSettings = TUserNotificationSettings; export type SegmentFilter = TBaseFilters; export type Styling = TProjectStyling; + export type Logo = TLogo; export type Locale = TUserLocale; export type SurveyFollowUpTrigger = TSurveyFollowUpTrigger; export type SurveyFollowUpAction = TSurveyFollowUpAction; diff --git a/packages/database/package.json b/packages/database/package.json index cc78661ad443..ae7e8db8c395 100644 --- a/packages/database/package.json +++ b/packages/database/package.json @@ -18,9 +18,11 @@ "require": "./dist/index.cjs" }, "./types/*": { + "types": "./types/*.ts", "import": "./types/*.ts" }, "./zod/*": { + "types": "./zod/*.ts", "import": "./zod/*.ts" }, "./seed/constants": { @@ -48,6 +50,7 @@ }, "dependencies": { "@formbricks/logger": "workspace:*", + "@formbricks/types": "workspace:*", "@paralleldrive/cuid2": "2.3.1", "@prisma/client": "6.19.2", "bcryptjs": "3.0.3", diff --git a/packages/database/src/index.ts b/packages/database/src/index.ts index ffcb0b596c9d..1933b82bc80a 100644 --- a/packages/database/src/index.ts +++ b/packages/database/src/index.ts @@ -1,3 +1,2 @@ -import "../json-types"; - +export * from "./json-types"; export * from "./client"; diff --git a/packages/database/src/json-types.ts b/packages/database/src/json-types.ts new file mode 100644 index 000000000000..289e19c191b7 --- /dev/null +++ b/packages/database/src/json-types.ts @@ -0,0 +1,82 @@ +/* eslint-disable import/no-relative-packages -- required for importing types */ +/* eslint-disable @typescript-eslint/no-namespace -- using namespaces is required for prisma-json-types-generator */ +import { type TActionClassNoCodeConfig } from "@formbricks/types/action-classes"; +import type { TOrganizationAccess } from "@formbricks/types/api-key"; +import { type TIntegrationConfig } from "@formbricks/types/integration"; +import { + type TOrganizationBilling, + type TOrganizationBillingPlanLimits, + type TOrganizationStripeBilling, + type TOrganizationWhitelabel, +} from "@formbricks/types/organizations"; +import { type TLogo, type TProjectConfig, type TProjectStyling } from "@formbricks/types/project"; +import type { TSurveyQuotaLogic } from "@formbricks/types/quota"; +import { + type TResponseContactAttributes, + type TResponseData, + type TResponseMeta, + type TResponseTtc, + type TResponseVariables, +} from "@formbricks/types/responses"; +import { type TBaseFilters } from "@formbricks/types/segment"; +import { type TSurveyBlocks } from "@formbricks/types/surveys/blocks"; +import type { TSurveyFollowUpAction, TSurveyFollowUpTrigger } from "@formbricks/types/surveys/follow-up"; +import { + type TSurveyClosedMessage, + type TSurveyEnding, + type TSurveyHiddenFields, + type TSurveyInlineTriggers, + type TSurveyMetadata, + type TSurveyProjectOverwrites, + type TSurveyQuestions, + type TSurveyRecaptcha, + type TSurveySingleUse, + type TSurveyStyling, + type TSurveyVariables, + type TSurveyWelcomeCard, +} from "@formbricks/types/surveys/types"; +import type { TUserLocale, TUserNotificationSettings } from "@formbricks/types/user"; + +declare global { + namespace PrismaJson { + export type ActionProperties = Record; + export type ActionClassNoCodeConfig = TActionClassNoCodeConfig; + export type IntegrationConfig = TIntegrationConfig; + export type ProjectConfig = TProjectConfig; + export type ResponseData = TResponseData; + export type ResponseVariables = TResponseVariables; + export type ResponseTtc = TResponseTtc; + export type ResponseMeta = TResponseMeta; + export type ResponseContactAttributes = TResponseContactAttributes; + export type SurveyWelcomeCard = TSurveyWelcomeCard; + export type SurveyQuestions = TSurveyQuestions; + export type SurveyBlocks = TSurveyBlocks; + export type SurveyEnding = TSurveyEnding; + export type SurveyHiddenFields = TSurveyHiddenFields; + export type SurveyVariables = TSurveyVariables; + export type SurveyInlineTriggers = TSurveyInlineTriggers; + export type SurveyProjectOverwrites = TSurveyProjectOverwrites; + export type SurveyStyling = TSurveyStyling; + export type SurveyClosedMessage = TSurveyClosedMessage; + export type SurveySingleUse = TSurveySingleUse; + export type SurveyRecaptcha = TSurveyRecaptcha; + export type SurveyLinkMetadata = TSurveyMetadata; + export type OrganizationBilling = TOrganizationBilling; + export type OrganizationBillingPlanLimits = TOrganizationBillingPlanLimits; + export type OrganizationStripeBilling = TOrganizationStripeBilling; + export type OrganizationWhitelabel = TOrganizationWhitelabel; + export type UserNotificationSettings = TUserNotificationSettings; + export type SegmentFilter = TBaseFilters; + export type Styling = TProjectStyling; + export type Logo = TLogo; + export type Locale = TUserLocale; + export type SurveyFollowUpTrigger = TSurveyFollowUpTrigger; + export type SurveyFollowUpAction = TSurveyFollowUpAction; + export type OrganizationAccess = TOrganizationAccess; + export type SurveyMetadata = TSurveyMetadata; + export type SurveyQuotaLogic = TSurveyQuotaLogic; + } +} + +export type TPrismaJsonTypesLoaded = true; +export {}; diff --git a/packages/database/types/survey-follow-up.ts b/packages/database/types/survey-follow-up.ts index ee4be81a4636..625a2fc40da9 100644 --- a/packages/database/types/survey-follow-up.ts +++ b/packages/database/types/survey-follow-up.ts @@ -1,60 +1,8 @@ -import { z } from "zod"; - -export const ZSurveyFollowUpTrigger = z - .object({ - type: z.enum(["response", "endings"]), - properties: z - .object({ - endingIds: z.array(z.cuid2()), - }) - .nullable(), - }) - .superRefine((trigger, ctx) => { - if (trigger.type === "response") { - if (trigger.properties) { - ctx.addIssue({ - code: "custom", - message: "Properties should be null for response type", - }); - } - } - - if (trigger.type === "endings") { - if (!trigger.properties) { - ctx.addIssue({ - code: "custom", - message: "Properties must be defined for endings type", - }); - } - } - }); - -export type TSurveyFollowUpTrigger = z.infer; - -export const ZSurveyFollowUpAction = z.object({ - type: z.literal("send-email"), - properties: z.object({ - to: z.string(), - from: z.email(), - replyTo: z.array(z.email()), - subject: z.string(), - body: z.string(), - attachResponseData: z.boolean(), - includeVariables: z.boolean().optional(), - includeHiddenFields: z.boolean().optional(), - }), -}); - -export type TSurveyFollowUpAction = z.infer; - -export const ZSurveyFollowUp = z.object({ - id: z.cuid2(), - createdAt: z.date(), - updatedAt: z.date(), - name: z.string(), - trigger: ZSurveyFollowUpTrigger, - action: ZSurveyFollowUpAction, - surveyId: z.cuid2(), -}); - -export type TSurveyFollowUp = z.infer; +export { + type TSurveyFollowUp, + type TSurveyFollowUpAction, + type TSurveyFollowUpTrigger, + ZSurveyFollowUp, + ZSurveyFollowUpAction, + ZSurveyFollowUpTrigger, +} from "@formbricks/types/surveys/follow-up"; diff --git a/packages/database/vite.config.ts b/packages/database/vite.config.ts index 608fcdeab571..60b375359a51 100644 --- a/packages/database/vite.config.ts +++ b/packages/database/vite.config.ts @@ -3,6 +3,7 @@ import { glob } from "glob"; import { dirname, resolve } from "path"; import { Plugin, UserConfig, defineConfig } from "vite"; import dts from "vite-plugin-dts"; +import { rewriteNodeNextDtsSpecifiers } from "../vite-plugins/node-next-dts"; const copySqlMigrationsPlugin: Plugin = { name: "copy-sql-migrations", @@ -72,9 +73,11 @@ export default defineConfig(async (): Promise => { plugins: [ dts({ rollupTypes: false, - include: ["src/**/*"], - exclude: ["src/**/*.test.ts", "src/**/*.spec.ts"], + include: ["src/index.ts", "src/client.ts", "src/json-types.ts"], + entryRoot: ".", + exclude: ["src/**/*.test.ts", "src/**/*.spec.ts", "migration/**/*"], insertTypesEntry: true, + beforeWriteFile: rewriteNodeNextDtsSpecifiers, }), copySqlMigrationsPlugin, ], diff --git a/packages/email/package.json b/packages/email/package.json index 23c1d1033608..3baf58e48949 100644 --- a/packages/email/package.json +++ b/packages/email/package.json @@ -20,7 +20,6 @@ "@formbricks/config-typescript": "workspace:*", "@formbricks/eslint-config": "workspace:*", "@formbricks/types": "workspace:*", - "@react-email/preview-server": "5.2.10", "autoprefixer": "10.4.27", "clsx": "2.1.1", "postcss": "8.5.8", diff --git a/packages/i18n-utils/package.json b/packages/i18n-utils/package.json index 41a2db0847e5..aa7e6f9884b4 100644 --- a/packages/i18n-utils/package.json +++ b/packages/i18n-utils/package.json @@ -43,7 +43,6 @@ "@types/node": "^25.4.0", "tsx": "^4.21.0", "vite": "7.3.2", - "vite-plugin-dts": "4.5.4", - "vitest": "4.0.18" + "vitest": "4.1.5" } } diff --git a/packages/i18n-utils/vite.config.ts b/packages/i18n-utils/vite.config.ts index 0aed1407e933..5b9287f24e64 100644 --- a/packages/i18n-utils/vite.config.ts +++ b/packages/i18n-utils/vite.config.ts @@ -1,7 +1,6 @@ /// import { resolve } from "node:path"; -import dts from "vite-plugin-dts"; -import { PluginOption, defineConfig } from "vitest/config"; +import { defineConfig } from "vitest/config"; export default defineConfig({ build: { @@ -21,9 +20,4 @@ export default defineConfig({ reporter: ["text", "json", "html", "lcov"], }, }, - plugins: [ - dts({ - rollupTypes: false, - }) as PluginOption, - ], }); diff --git a/packages/js-core/package.json b/packages/js-core/package.json index 1a6e2ea3b78c..f48a6180120b 100644 --- a/packages/js-core/package.json +++ b/packages/js-core/package.json @@ -33,8 +33,8 @@ }, "scripts": { "dev": "vite build --watch --mode dev", - "build": "tsc && vite build", - "build:dev": "tsc && vite build --mode dev", + "build": "vite build", + "build:dev": "vite build --mode dev", "go": "vite build --watch --mode dev", "lint": "eslint . --ext .ts,.js,.tsx,.jsx", "clean": "rimraf .turbo node_modules dist coverage", @@ -45,10 +45,9 @@ "devDependencies": { "@formbricks/config-typescript": "workspace:*", "@formbricks/eslint-config": "workspace:*", - "@vitest/coverage-v8": "4.0.18", - "terser": "5.46.0", + "@vitest/coverage-v8": "4.1.5", "vite": "7.3.2", "vite-plugin-dts": "4.5.4", - "vitest": "4.0.18" + "vitest": "4.1.5" } } diff --git a/packages/js-core/src/lib/survey/widget.ts b/packages/js-core/src/lib/survey/widget.ts index 1ab9e25c193b..edf4e1cc4233 100644 --- a/packages/js-core/src/lib/survey/widget.ts +++ b/packages/js-core/src/lib/survey/widget.ts @@ -133,7 +133,6 @@ export const renderWidget = async ( environmentId: config.get().environmentId, contactId: config.get().user.data.contactId ?? undefined, action, - // @ts-expect-error -- the types are not compatible because they come from different places (types package vs local types) survey, isBrandingEnabled, clickOutside, @@ -230,7 +229,7 @@ export const removeWidgetContainer = (): void => { const SURVEYS_LOAD_TIMEOUT_MS = 10000; const SURVEYS_POLL_INTERVAL_MS = 200; -type TFormbricksSurveys = typeof globalThis.window.formbricksSurveys; +type TFormbricksSurveys = NonNullable; let surveysLoadPromise: Promise | null = null; diff --git a/packages/js-core/src/vite-env.d.ts b/packages/js-core/src/vite-env.d.ts index 11f02fe2a006..75ed4e06aa59 100644 --- a/packages/js-core/src/vite-env.d.ts +++ b/packages/js-core/src/vite-env.d.ts @@ -1 +1,13 @@ /// + +declare global { + interface Window { + __formbricksNonce?: string; + formbricksSurveys?: { + renderSurvey: (options: unknown) => void; + setNonce: (nonce: string | undefined) => void; + }; + } +} + +export {}; diff --git a/packages/js-core/vite.config.ts b/packages/js-core/vite.config.ts index df46cdecd26d..bc087d4cb2dc 100644 --- a/packages/js-core/vite.config.ts +++ b/packages/js-core/vite.config.ts @@ -5,6 +5,7 @@ import { defineConfig } from "vitest/config"; import type { ViteUserConfig } from "vitest/config"; import webPackageJson from "../../apps/web/package.json"; import { copyCompiledAssetsPlugin } from "../vite-plugins/copy-compiled-assets"; +import { rewriteNodeNextDtsSpecifiers } from "../vite-plugins/node-next-dts"; type VitestPluginOption = NonNullable[number]; @@ -22,7 +23,6 @@ export default defineConfig({ output: { inlineDynamicImports: true }, }, emptyOutDir: false, // keep the dist folder to avoid errors with pnpm go when folder is empty during build - minify: "terser", lib: { entry: resolve(__dirname, "src/index.ts"), name: "formbricks", @@ -34,6 +34,9 @@ export default defineConfig({ dts({ rollupTypes: false, insertTypesEntry: true, + include: ["src/**/*.ts"], + exclude: ["src/**/*.test.ts", "src/**/*.spec.ts", "src/**/tests/**", "vitest.setup.ts"], + beforeWriteFile: rewriteNodeNextDtsSpecifiers, }) as VitestPluginOption, copyCompiledAssetsPlugin({ filename: "formbricks", diff --git a/packages/logger/package.json b/packages/logger/package.json index 9a75548c4951..9299f1822ea2 100644 --- a/packages/logger/package.json +++ b/packages/logger/package.json @@ -7,7 +7,7 @@ "license": "MIT", "description": "Logger for Formbricks", "main": "./dist/index.js", - "types": "./dist/index.d.ts", + "types": "./dist/src/index.d.ts", "repository": { "type": "git", "url": "https://github.com/formbricks/formbricks" @@ -21,7 +21,7 @@ "dist" ], "exports": { - "types": "./dist/index.d.ts", + "types": "./dist/src/index.d.ts", "import": "./dist/index.js", "require": "./dist/index.cjs" }, @@ -30,21 +30,20 @@ "lint": "eslint . --ext .ts,.js,.tsx,.jsx", "lint:fix": "eslint . --ext .ts,.js,.tsx,.jsx --fix", "lint:report": "eslint . --format json --output-file ../../lint-results/app-store.json", - "build": "rimraf dist && tsc && vite build", + "build": "rimraf dist && vite build && tsc --project tsconfig.build.json", "test": "vitest run" }, "author": "Formbricks ", "dependencies": { - "zod": "4.3.6", "pino": "10.3.1", "pino-opentelemetry-transport": "3.0.0", - "pino-pretty": "13.1.3" + "pino-pretty": "13.1.3", + "zod": "4.3.6" }, "devDependencies": { - "vite": "7.3.2", "@formbricks/config-typescript": "workspace:*", - "vitest": "4.0.18", "@formbricks/eslint-config": "workspace:*", - "vite-plugin-dts": "4.5.4" + "vite": "7.3.2", + "vitest": "4.1.5" } } diff --git a/packages/logger/tsconfig.build.json b/packages/logger/tsconfig.build.json new file mode 100644 index 000000000000..c97aa121a3a5 --- /dev/null +++ b/packages/logger/tsconfig.build.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "declaration": true, + "declarationDir": "dist", + "emitDeclarationOnly": true, + "isolatedModules": false, + "noEmit": false, + "outDir": "dist", + "rootDir": "." + }, + "exclude": ["src/**/*.test.ts", "src/**/*.spec.ts"], + "extends": "./tsconfig.json", + "include": ["src", "types"] +} diff --git a/packages/logger/vite.config.ts b/packages/logger/vite.config.ts index b008596de2df..c6a0be638a5a 100644 --- a/packages/logger/vite.config.ts +++ b/packages/logger/vite.config.ts @@ -1,6 +1,5 @@ import { resolve } from "node:path"; -import { PluginOption, defineConfig } from "vite"; -import dts from "vite-plugin-dts"; +import { defineConfig } from "vite"; export default defineConfig({ build: { @@ -23,9 +22,4 @@ export default defineConfig({ }, emptyOutDir: false, }, - plugins: [ - dts({ - rollupTypes: true, - }) as PluginOption, - ], }); diff --git a/packages/storage/package.json b/packages/storage/package.json index 38cd1c708722..6d986b8d7e4f 100644 --- a/packages/storage/package.json +++ b/packages/storage/package.json @@ -6,7 +6,7 @@ "homepage": "https://formbricks.com", "description": "Storage Controller for Formbricks", "main": "./dist/index.js", - "types": "./dist/index.d.ts", + "types": "./dist/src/index.d.ts", "repository": { "type": "git", "url": "https://github.com/formbricks/formbricks" @@ -20,7 +20,7 @@ "dist" ], "exports": { - "types": "./dist/index.d.ts", + "types": "./dist/src/index.d.ts", "import": "./dist/index.js", "require": "./dist/index.cjs" }, @@ -29,24 +29,23 @@ "lint": "eslint . --ext .ts,.js", "lint:fix": "eslint . --ext .ts,.js --fix", "lint:report": "eslint . --format json --output-file ../../lint-results/app-store.json", - "build": "tsc && vite build", + "build": "vite build && tsc --project tsconfig.build.json", "test": "vitest run", "test:coverage": "vitest run --coverage", "go": "vite build --watch --mode dev" }, "author": "Formbricks ", "dependencies": { - "@formbricks/logger": "workspace:*", "@aws-sdk/client-s3": "3.1007.0", "@aws-sdk/s3-presigned-post": "3.1007.0", - "@aws-sdk/s3-request-presigner": "3.1007.0" + "@aws-sdk/s3-request-presigner": "3.1007.0", + "@formbricks/logger": "workspace:*" }, "devDependencies": { "@formbricks/config-typescript": "workspace:*", "@formbricks/eslint-config": "workspace:*", + "@vitest/coverage-v8": "4.1.5", "vite": "7.3.2", - "vite-plugin-dts": "4.5.4", - "vitest": "4.0.18", - "@vitest/coverage-v8": "4.0.18" + "vitest": "4.1.5" } } diff --git a/packages/storage/tsconfig.build.json b/packages/storage/tsconfig.build.json new file mode 100644 index 000000000000..c97aa121a3a5 --- /dev/null +++ b/packages/storage/tsconfig.build.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "declaration": true, + "declarationDir": "dist", + "emitDeclarationOnly": true, + "isolatedModules": false, + "noEmit": false, + "outDir": "dist", + "rootDir": "." + }, + "exclude": ["src/**/*.test.ts", "src/**/*.spec.ts"], + "extends": "./tsconfig.json", + "include": ["src", "types"] +} diff --git a/packages/storage/vite.config.ts b/packages/storage/vite.config.ts index 38941072d1b4..2b006d761b08 100644 --- a/packages/storage/vite.config.ts +++ b/packages/storage/vite.config.ts @@ -1,7 +1,6 @@ /// import { resolve } from "path"; -import { PluginOption, defineConfig } from "vite"; -import dts from "vite-plugin-dts"; +import { defineConfig } from "vite"; export default defineConfig({ build: { @@ -29,5 +28,4 @@ export default defineConfig({ include: ["src/**/*.ts"], }, }, - plugins: [dts({ rollupTypes: true }) as PluginOption], }); diff --git a/packages/survey-ui/package.json b/packages/survey-ui/package.json index 5dadec2a5ea8..af6383335e4a 100644 --- a/packages/survey-ui/package.json +++ b/packages/survey-ui/package.json @@ -77,7 +77,7 @@ "class-variance-authority": "0.7.1", "clsx": "2.1.1", "date-fns": "4.1.0", - "isomorphic-dompurify": "3.1.0", + "isomorphic-dompurify": "3.9.0", "lucide-react": "0.577.0", "react-day-picker": "9.14.0", "tailwind-merge": "3.5.0" @@ -85,13 +85,14 @@ "devDependencies": { "@formbricks/config-typescript": "workspace:*", "@formbricks/eslint-config": "workspace:*", - "@storybook/react": "10.2.17", - "@storybook/react-vite": "10.2.17", + "@storybook/react": "10.3.5", + "@storybook/react-vite": "10.3.5", "@tailwindcss/postcss": "4.2.1", "@tailwindcss/vite": "4.2.1", "@types/react": "19.2.14", "@types/react-dom": "19.2.3", "@vitejs/plugin-react": "5.1.4", + "@vitest/coverage-v8": "4.1.5", "react": "19.2.4", "react-dom": "19.2.4", "rimraf": "6.1.3", @@ -99,7 +100,6 @@ "vite": "7.3.2", "vite-plugin-dts": "4.5.4", "vite-tsconfig-paths": "6.1.1", - "@vitest/coverage-v8": "4.0.18", - "vitest": "4.0.18" + "vitest": "4.1.5" } } diff --git a/packages/survey-ui/src/components/general/button.tsx b/packages/survey-ui/src/components/general/button.tsx index da14ed37f44b..cf6cb3398168 100644 --- a/packages/survey-ui/src/components/general/button.tsx +++ b/packages/survey-ui/src/components/general/button.tsx @@ -1,9 +1,20 @@ import { Slot } from "@radix-ui/react-slot"; -import { type VariantProps, cva } from "class-variance-authority"; +import { cva } from "class-variance-authority"; import * as React from "react"; import { cn } from "@/lib/utils"; -const buttonVariants = cva( +export type ButtonVariant = "default" | "destructive" | "outline" | "secondary" | "ghost" | "link" | "custom"; +export type ButtonSize = "default" | "custom" | "sm" | "lg" | "icon"; +type ButtonVariantProps = { + variant?: ButtonVariant | null; + size?: ButtonSize | null; +}; +type ButtonVariantClassProps = + | (ButtonVariantProps & { class?: string; className?: never }) + | (ButtonVariantProps & { class?: never; className?: string }) + | (ButtonVariantProps & { class?: never; className?: never }); + +const buttonVariants: (props?: ButtonVariantClassProps) => string = cva( "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-button text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 aria-invalid:border-destructive", { variants: { @@ -32,8 +43,7 @@ const buttonVariants = cva( } ); -export interface ButtonProps - extends React.ButtonHTMLAttributes, VariantProps { +export interface ButtonProps extends React.ButtonHTMLAttributes, ButtonVariantProps { asChild?: boolean; } diff --git a/packages/survey-ui/vite.config.mts b/packages/survey-ui/vite.config.mts index ea6910e42bab..3ef771ecfe18 100644 --- a/packages/survey-ui/vite.config.mts +++ b/packages/survey-ui/vite.config.mts @@ -3,6 +3,7 @@ import { defineConfig } from "vite"; import dts from "vite-plugin-dts"; import tsconfigPaths from "vite-tsconfig-paths"; import tailwindcss from "@tailwindcss/vite"; +import { rewriteNodeNextDtsSpecifiers } from "../vite-plugins/node-next-dts"; /** * Plugin to strip "use client" directives from bundled dependencies. @@ -52,6 +53,7 @@ export default defineConfig({ dts({ include: ["src"], exclude: ["**/*.stories.tsx", "**/*.test.ts", "**/story-helpers.tsx"], + beforeWriteFile: rewriteNodeNextDtsSpecifiers, }), tailwindcss(), ], @@ -69,4 +71,3 @@ export default defineConfig({ }, }, }); - diff --git a/packages/surveys/package.json b/packages/surveys/package.json index ae1b60920e81..67105ccc38b8 100644 --- a/packages/surveys/package.json +++ b/packages/surveys/package.json @@ -31,9 +31,9 @@ }, "scripts": { "dev": "concurrently -n \"ESM,UMD\" \"vite build --watch --mode dev\" \"BUILD_UMD=true vite build --watch --mode dev\"", - "build": "cross-env NODE_OPTIONS=--max-old-space-size=8192 tsc --noEmit && cross-env NODE_OPTIONS=--max-old-space-size=8192 vite build && cross-env NODE_OPTIONS=--max-old-space-size=8192 BUILD_UMD=true vite build", - "build:analyze": "cross-env NODE_OPTIONS=--max-old-space-size=8192 tsc --noEmit && cross-env NODE_OPTIONS=--max-old-space-size=8192 ANALYZE=true vite build", - "build:dev": "cross-env NODE_OPTIONS=--max-old-space-size=8192 tsc --noEmit && cross-env NODE_OPTIONS=--max-old-space-size=8192 vite build --mode dev", + "build": "cross-env NODE_OPTIONS=--max-old-space-size=8192 vite build && cross-env NODE_OPTIONS=--max-old-space-size=8192 BUILD_UMD=true vite build && cross-env NODE_OPTIONS=--max-old-space-size=8192 tsc --project tsconfig.build.json", + "build:analyze": "cross-env NODE_OPTIONS=--max-old-space-size=8192 ANALYZE=true vite build && cross-env NODE_OPTIONS=--max-old-space-size=8192 tsc --project tsconfig.build.json", + "build:dev": "cross-env NODE_OPTIONS=--max-old-space-size=8192 vite build --mode dev && cross-env NODE_OPTIONS=--max-old-space-size=8192 tsc --project tsconfig.build.json", "go": "concurrently -n \"ESM,UMD\" \"vite build --watch --mode dev\" \"BUILD_UMD=true vite build --watch --mode dev\"", "lint": "eslint src --fix --ext .ts,.js,.tsx,.jsx", "preview": "vite preview", @@ -47,7 +47,7 @@ "@formbricks/survey-ui": "workspace:*", "i18next": "25.8.18", "i18next-icu": "2.4.3", - "isomorphic-dompurify": "3.1.0", + "isomorphic-dompurify": "3.9.0", "preact": "10.29.0", "react-i18next": "16.5.8", "tailwind-merge": "3.5.0" @@ -68,9 +68,7 @@ "postcss": "8.5.8", "rollup-plugin-visualizer": "7.0.1", "tailwindcss": "4.2.1", - "terser": "5.46.0", "vite": "7.3.2", - "vite-plugin-dts": "4.5.4", "vite-tsconfig-paths": "6.1.1" } } diff --git a/packages/surveys/src/vite-env.d.ts b/packages/surveys/src/vite-env.d.ts index 11f02fe2a006..fb14dedd1fbc 100644 --- a/packages/surveys/src/vite-env.d.ts +++ b/packages/surveys/src/vite-env.d.ts @@ -1 +1,15 @@ /// + +declare global { + interface Window { + formbricksSurveys?: { + renderSurveyInline: (...args: unknown[]) => unknown; + renderSurveyModal: (...args: unknown[]) => unknown; + renderSurvey: (options: unknown) => void; + onFilePick: (...args: unknown[]) => unknown; + setNonce: (nonce: string | undefined) => void; + }; + } +} + +export {}; diff --git a/packages/surveys/tsconfig.build.json b/packages/surveys/tsconfig.build.json new file mode 100644 index 000000000000..cb4bf55ec2f3 --- /dev/null +++ b/packages/surveys/tsconfig.build.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "declaration": true, + "declarationDir": "dist", + "emitDeclarationOnly": true, + "isolatedModules": false, + "noEmit": false, + "outDir": "dist", + "rootDir": "src" + }, + "exclude": ["src/**/*.test.ts", "src/**/*.test.tsx", "src/**/*.spec.ts", "src/**/*.spec.tsx"], + "extends": "./tsconfig.json", + "include": ["src"] +} diff --git a/packages/surveys/vite.config.mts b/packages/surveys/vite.config.mts index e34a3d9375a5..32cbf877abe7 100644 --- a/packages/surveys/vite.config.mts +++ b/packages/surveys/vite.config.mts @@ -2,7 +2,6 @@ import preact from "@preact/preset-vite"; import { dirname, resolve } from "node:path"; import { fileURLToPath } from "node:url"; import { loadEnv } from "vite"; -import dts from "vite-plugin-dts"; import tsconfigPaths from "vite-tsconfig-paths"; import { defineConfig } from "vitest/config"; import { copyCompiledAssetsPlugin } from "../vite-plugins/copy-compiled-assets"; @@ -39,7 +38,6 @@ const config = ({ mode }) => { ...sharedConfig, build: { emptyOutDir: false, - minify: "terser", lib: { entry: resolve(__dirname, "src/index.ts"), name: "formbricksSurveys", @@ -82,7 +80,6 @@ const config = ({ mode }) => { }, build: { emptyOutDir: false, - minify: "terser", lib: { entry: { index: resolve(__dirname, "src/index.ts"), @@ -103,11 +100,6 @@ const config = ({ mode }) => { }, plugins: [ ...sharedConfig.plugins, - dts({ - rollupTypes: false, - // Generate separate .d.ts files for each entry point - entryRoot: "src", - }), copyCompiledAssetsPlugin({ filename: "surveys", distDir: resolve(__dirname, "dist") }), process.env.ANALYZE === "true" && visualizer({ filename: resolve(__dirname, "stats.html"), open: false, gzipSize: true, brotliSize: true }), ], diff --git a/packages/types/package.json b/packages/types/package.json index ef0b1671ef40..0026579dfb36 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -3,6 +3,11 @@ "version": "0.0.0", "private": true, "main": "index.ts", + "exports": { + ".": "./index.ts", + "./integration": "./integration/index.ts", + "./*": "./*.ts" + }, "sideEffects": false, "scripts": { "lint": "eslint . --ext .ts,.js,.tsx,.jsx", @@ -15,7 +20,6 @@ "node-html-parser": "7.1.0" }, "devDependencies": { - "@formbricks/config-typescript": "workspace:*", - "@formbricks/database": "workspace:*" + "@formbricks/config-typescript": "workspace:*" } } diff --git a/packages/types/surveys/follow-up.ts b/packages/types/surveys/follow-up.ts new file mode 100644 index 000000000000..ee4be81a4636 --- /dev/null +++ b/packages/types/surveys/follow-up.ts @@ -0,0 +1,60 @@ +import { z } from "zod"; + +export const ZSurveyFollowUpTrigger = z + .object({ + type: z.enum(["response", "endings"]), + properties: z + .object({ + endingIds: z.array(z.cuid2()), + }) + .nullable(), + }) + .superRefine((trigger, ctx) => { + if (trigger.type === "response") { + if (trigger.properties) { + ctx.addIssue({ + code: "custom", + message: "Properties should be null for response type", + }); + } + } + + if (trigger.type === "endings") { + if (!trigger.properties) { + ctx.addIssue({ + code: "custom", + message: "Properties must be defined for endings type", + }); + } + } + }); + +export type TSurveyFollowUpTrigger = z.infer; + +export const ZSurveyFollowUpAction = z.object({ + type: z.literal("send-email"), + properties: z.object({ + to: z.string(), + from: z.email(), + replyTo: z.array(z.email()), + subject: z.string(), + body: z.string(), + attachResponseData: z.boolean(), + includeVariables: z.boolean().optional(), + includeHiddenFields: z.boolean().optional(), + }), +}); + +export type TSurveyFollowUpAction = z.infer; + +export const ZSurveyFollowUp = z.object({ + id: z.cuid2(), + createdAt: z.date(), + updatedAt: z.date(), + name: z.string(), + trigger: ZSurveyFollowUpTrigger, + action: ZSurveyFollowUpAction, + surveyId: z.cuid2(), +}); + +export type TSurveyFollowUp = z.infer; diff --git a/packages/types/surveys/types.ts b/packages/types/surveys/types.ts index 59c34b61ac5f..0720304752f1 100644 --- a/packages/types/surveys/types.ts +++ b/packages/types/surveys/types.ts @@ -1,5 +1,4 @@ import { z } from "zod"; -import { ZSurveyFollowUp } from "@formbricks/database/types/survey-follow-up"; import { ZActionClass, ZActionClassNoCodeConfig } from "../action-classes"; import { ZColor, ZEndingCardUrl, ZId, ZOverlay, ZPlacement, ZStorageUrl, getZSafeUrl } from "../common"; import { ZContactAttributes } from "../contact-attribute"; @@ -29,6 +28,7 @@ import { ZSurveyRatingElement, } from "./elements"; import { validateElementLabels } from "./elements-validation"; +import { ZSurveyFollowUp } from "./follow-up"; import { type TConditionGroup, type TConditionGroupDeprecated, diff --git a/packages/vite-plugins/node-next-dts.ts b/packages/vite-plugins/node-next-dts.ts new file mode 100644 index 000000000000..8b2aefd51fa1 --- /dev/null +++ b/packages/vite-plugins/node-next-dts.ts @@ -0,0 +1,39 @@ +const RELATIVE_DTS_SPECIFIER = + /(?(?:from|import)\s*["'])(?\.\.?(?:\/[^/"'()?#]+)+)(?(?:[?#][^"'()]*)?)(?["'])/g; +const DYNAMIC_IMPORT_DTS_SPECIFIER = + /(?import\(\s*["'])(?\.\.?(?:\/[^/"'()?#]+)+)(?(?:[?#][^"'()]*)?)(?["']\s*\))/g; + +const HAS_EXTENSION = /\.[a-z0-9]+$/i; + +const toNodeNextSpecifier = (pathPart: string, suffix = ""): string => { + if (!pathPart || HAS_EXTENSION.test(pathPart)) { + return `${pathPart}${suffix}`; + } + + return `${pathPart}.js${suffix}`; +}; + +export const rewriteNodeNextDtsSpecifiers = ( + filePath: string, + content: string +): { filePath: string; content: string } => { + if (!filePath.endsWith(".d.ts")) { + return { filePath, content }; + } + + const rewrittenContent = content + .replace( + RELATIVE_DTS_SPECIFIER, + (_match: string, prefix: string, pathPart: string, suffix: string, quote: string) => { + return `${prefix}${toNodeNextSpecifier(pathPart, suffix)}${quote}`; + } + ) + .replace( + DYNAMIC_IMPORT_DTS_SPECIFIER, + (_match: string, prefix: string, pathPart: string, suffix: string, quote: string) => { + return `${prefix}${toNodeNextSpecifier(pathPart, suffix)}${quote}`; + } + ); + + return { filePath, content: rewrittenContent }; +}; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 57c04a301a8d..c220352d2228 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,30 +5,18 @@ settings: excludeLinksFromLockfile: false overrides: - '@hono/node-server': 1.19.10 + '@hono/node-server': 1.19.13 '@tootallnate/once': 3.0.1 - schema-utils@3.3.0>ajv: 6.14.0 - axios: 1.13.5 - '@grpc/proto-loader@0.7.15>protobufjs': 7.5.5 - '@grpc/proto-loader@0.8.0>protobufjs': 7.5.5 - '@opentelemetry/otlp-transformer@0.57.1>protobufjs': 7.5.5 - '@opentelemetry/otlp-transformer@0.208.0>protobufjs': 7.5.5 - '@opentelemetry/otlp-transformer@0.212.0>protobufjs': 8.0.1 - '@opentelemetry/otlp-transformer@0.213.0>protobufjs': 7.5.5 + '@xmldom/xmldom': 0.9.10 + ajv@6: 6.14.0 + axios: 1.15.2 effect: 3.20.0 - flatted: 3.4.2 - hono: 4.12.7 - lodash: 4.18.1 - '@microsoft/api-extractor>minimatch': 10.2.4 - node-forge: '>=1.3.2' - qs: 6.14.2 - rollup: 4.59.0 - socket.io-parser: 4.2.6 - tar: '>=7.5.11' - typeorm: '>=0.3.26' - undici: 7.24.0 fast-xml-parser: 5.5.7 - diff: '>=8.0.3' + hono: 4.12.14 + lodash: 4.18.1 + node-forge: 1.4.0 + '@opentelemetry/otlp-transformer>protobufjs': 8.0.1 + tar: 7.5.13 patchedDependencies: next-auth@4.24.13: @@ -62,8 +50,8 @@ importers: specifier: 9.1.7 version: 9.1.7 lint-staged: - specifier: 16.3.3 - version: 16.3.3 + specifier: 16.4.0 + version: 16.4.0 rimraf: specifier: 6.1.3 version: 6.1.3 @@ -78,25 +66,25 @@ importers: devDependencies: '@chromatic-com/storybook': specifier: ^5.0.1 - version: 5.0.1(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) + version: 5.0.1(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)) '@storybook/addon-a11y': - specifier: 10.2.17 - version: 10.2.17(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) + specifier: 10.3.5 + version: 10.3.5(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)) '@storybook/addon-docs': - specifier: 10.2.17 - version: 10.2.17(@types/react@19.2.14)(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))(webpack@5.105.4(esbuild@0.27.7)) + specifier: 10.3.5 + version: 10.3.5(@types/react@19.2.14)(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7)) '@storybook/addon-links': - specifier: 10.2.17 - version: 10.2.17(react@19.2.4)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) + specifier: 10.3.5 + version: 10.3.5(react@19.2.5)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)) '@storybook/addon-onboarding': - specifier: 10.2.17 - version: 10.2.17(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) + specifier: 10.3.5 + version: 10.3.5(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)) '@storybook/react-vite': - specifier: 10.2.17 - version: 10.2.17(esbuild@0.27.7)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(rollup@4.59.0)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))(webpack@5.105.4(esbuild@0.27.7)) + specifier: 10.3.5 + version: 10.3.5(esbuild@0.27.7)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7)) '@tailwindcss/vite': specifier: 4.2.1 - version: 4.2.1(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 4.2.1(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) '@typescript-eslint/eslint-plugin': specifier: 8.57.0 version: 8.57.0(@typescript-eslint/parser@8.57.0(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3) @@ -105,25 +93,25 @@ importers: version: 8.57.0(eslint@8.57.1)(typescript@5.9.3) '@vitejs/plugin-react': specifier: 5.1.4 - version: 5.1.4(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 5.1.4(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) eslint-plugin-react-refresh: specifier: 0.4.26 version: 0.4.26(eslint@8.57.1) eslint-plugin-storybook: - specifier: 10.2.17 - version: 10.2.17(eslint@8.57.1)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3) + specifier: 10.3.5 + version: 10.3.5(eslint@8.57.1)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3) storybook: - specifier: 10.2.17 - version: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + specifier: 10.3.5 + version: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) apps/web: dependencies: '@boxyhq/saml-jackson': - specifier: 1.52.2 - version: 1.52.2(socks@2.8.7)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)) + specifier: 26.2.0 + version: 26.2.0(@types/node@25.4.0)(socks@2.8.7)(sqlite3@5.1.7)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)) '@dnd-kit/core': specifier: 6.3.1 version: 6.3.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -195,7 +183,7 @@ importers: version: 0.41.0 '@next-auth/prisma-adapter': specifier: 1.0.7 - version: 1.0.7(@prisma/client@6.19.2(prisma@7.4.2(@types/react@19.2.14)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(next-auth@4.24.13(patch_hash=6b21102fce2caaca35f5e4e93ea07a0b4ff486cbf3d3b09a4173ad45977d5798)(next@16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(nodemailer@8.0.4)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) + version: 1.0.7(@prisma/client@6.19.2(prisma@7.4.2(@types/react@19.2.14)(better-sqlite3@12.8.0)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(next-auth@4.24.13(patch_hash=6b21102fce2caaca35f5e4e93ea07a0b4ff486cbf3d3b09a4173ad45977d5798)(next@16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(nodemailer@8.0.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) '@opentelemetry/auto-instrumentations-node': specifier: 0.71.0 version: 0.71.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@2.6.0(@opentelemetry/api@1.9.0)) @@ -228,7 +216,7 @@ importers: version: 2.3.1 '@prisma/client': specifier: 6.19.2 - version: 6.19.2(prisma@7.4.2(@types/react@19.2.14)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3) + version: 6.19.2(prisma@7.4.2(@types/react@19.2.14)(better-sqlite3@12.8.0)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3) '@prisma/instrumentation': specifier: 6.19.2 version: 6.19.2(@opentelemetry/api@1.9.0) @@ -276,7 +264,7 @@ importers: version: 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@sentry/nextjs': specifier: 10.43.0 - version: 10.43.0(@opentelemetry/context-async-hooks@2.6.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.6.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.6.0(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(webpack@5.105.4) + version: 10.43.0(@opentelemetry/context-async-hooks@2.6.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.6.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.6.0(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(webpack@5.105.4) '@t3-oss/env-nextjs': specifier: 0.13.10 version: 0.13.10(arktype@2.1.29)(typescript@5.9.3)(valibot@1.2.0(typescript@5.9.3))(zod@4.3.6) @@ -292,9 +280,6 @@ importers: '@tanstack/react-table': specifier: 8.21.3 version: 8.21.3(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - '@ungap/structured-clone': - specifier: 1.3.0 - version: 1.3.0 bcryptjs: specifier: 3.0.3 version: 3.0.3 @@ -316,9 +301,6 @@ importers: date-fns: specifier: 4.1.0 version: 4.1.0 - file-loader: - specifier: 6.2.0 - version: 6.2.0(webpack@5.105.4) framer-motion: specifier: 12.35.2 version: 12.35.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -328,9 +310,6 @@ importers: heic-convert: specifier: 2.1.0 version: 2.1.0 - https-proxy-agent: - specifier: 7.0.6 - version: 7.0.6 i18next: specifier: 25.8.18 version: 25.8.18(typescript@5.9.3) @@ -340,6 +319,9 @@ importers: i18next-resources-to-backend: specifier: 1.2.1 version: 1.2.1 + isomorphic-dompurify: + specifier: 3.9.0 + version: 3.9.0(@noble/hashes@2.0.1) jiti: specifier: 2.6.1 version: 2.6.1 @@ -349,9 +331,6 @@ importers: lexical: specifier: 0.41.0 version: 0.41.0 - lodash: - specifier: 4.18.1 - version: 4.18.1 lucide-react: specifier: 0.577.0 version: 0.577.0(react@19.2.4) @@ -359,20 +338,17 @@ importers: specifier: 14.1.1 version: 14.1.1 next: - specifier: 16.1.7 - version: 16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + specifier: 16.2.4 + version: 16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-auth: specifier: 4.24.13 - version: 4.24.13(patch_hash=6b21102fce2caaca35f5e4e93ea07a0b4ff486cbf3d3b09a4173ad45977d5798)(next@16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(nodemailer@8.0.4)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 4.24.13(patch_hash=6b21102fce2caaca35f5e4e93ea07a0b4ff486cbf3d3b09a4173ad45977d5798)(next@16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(nodemailer@8.0.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-safe-action: specifier: 8.1.8 - version: 8.1.8(next@16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(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) - node-fetch: - specifier: 3.3.2 - version: 3.3.2 + version: 8.1.8(next@16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(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) nodemailer: - specifier: 8.0.4 - version: 8.0.4 + specifier: 8.0.5 + version: 8.0.5 otplib: specifier: 12.0.1 version: 12.0.1 @@ -380,8 +356,8 @@ importers: specifier: 5.5.3 version: 5.5.3 posthog-js: - specifier: 1.360.0 - version: 1.360.0 + specifier: 1.369.5 + version: 1.369.5 posthog-node: specifier: 5.28.9 version: 5.28.9(rxjs@7.8.2) @@ -424,9 +400,6 @@ importers: react-turnstile: specifier: 1.1.5 version: 1.1.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - react-use: - specifier: 17.6.0 - version: 17.6.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) sanitize-html: specifier: 2.17.1 version: 2.17.1 @@ -448,12 +421,12 @@ importers: ua-parser-js: specifier: 2.0.9 version: 2.0.9 + undici: + specifier: 7.24.0 + version: 7.24.0 uuid: specifier: 13.0.0 version: 13.0.0 - webpack: - specifier: 5.105.4 - version: 5.105.4 xlsx: specifier: file:vendor/xlsx-0.20.3.tgz version: file:apps/web/vendor/xlsx-0.20.3.tgz @@ -482,9 +455,6 @@ importers: '@types/jsonwebtoken': specifier: 9.0.10 version: 9.0.10 - '@types/lodash': - specifier: 4.17.24 - version: 4.17.24 '@types/markdown-it': specifier: 14.1.2 version: 14.1.2 @@ -500,12 +470,9 @@ importers: '@types/sanitize-html': specifier: 2.16.1 version: 2.16.1 - '@types/ungap__structured-clone': - specifier: 1.2.0 - version: 1.2.0 '@vitest/coverage-v8': - specifier: 4.0.18 - version: 4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + specifier: 4.1.5 + version: 4.1.5(vitest@4.1.5) autoprefixer: specifier: 10.4.27 version: 10.4.27(postcss@8.5.8) @@ -523,16 +490,16 @@ importers: version: 1.5.1 vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) vite-tsconfig-paths: specifier: 6.1.1 - version: 6.1.1(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 6.1.1(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) vitest: - specifier: 4.0.18 - version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + specifier: 4.1.5 + version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) vitest-mock-extended: specifier: 3.1.0 - version: 3.1.0(typescript@5.9.3)(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 3.1.0(typescript@5.9.3)(vitest@4.1.5) packages/ai: dependencies: @@ -565,17 +532,14 @@ importers: specifier: workspace:* version: link:../config-eslint '@vitest/coverage-v8': - specifier: 4.0.18 - version: 4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + specifier: 4.1.5 + version: 4.1.5(vitest@4.1.5) vite: specifier: 8.0.5 - version: 8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) - vite-plugin-dts: - specifier: 4.5.4 - version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) vitest: - specifier: 4.0.18 - version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + specifier: 4.1.5 + version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) packages/cache: dependencies: @@ -596,14 +560,17 @@ importers: specifier: workspace:* version: link:../config-eslint '@vitest/coverage-v8': - specifier: 4.0.18 - version: 4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + specifier: 4.1.5 + version: 4.1.5(vitest@4.1.5) vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) + vite-plugin-dts: + specifier: 4.5.4 + version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) vitest: - specifier: 4.0.18 - version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + specifier: 4.1.5 + version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) packages/config-eslint: devDependencies: @@ -618,10 +585,10 @@ importers: version: 8.57.0(eslint@8.57.1)(typescript@5.9.3) '@vercel/style-guide': specifier: 6.0.0 - version: 6.0.0(@next/eslint-plugin-next@15.5.12)(eslint@8.57.1)(prettier@3.8.1)(typescript@5.9.3)(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 6.0.0(@next/eslint-plugin-next@15.5.12)(eslint@8.57.1)(prettier@3.8.1)(typescript@5.9.3)(vitest@4.1.5) '@vitest/eslint-plugin': specifier: 1.6.10 - version: 1.6.10(eslint@8.57.1)(typescript@5.9.3)(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 1.6.10(eslint@8.57.1)(typescript@5.9.3)(vitest@4.1.5) eslint-config-next: specifier: 15.5.12 version: 15.5.12(eslint@8.57.1)(typescript@5.9.3) @@ -676,6 +643,9 @@ importers: '@formbricks/logger': specifier: workspace:* version: link:../logger + '@formbricks/types': + specifier: workspace:* + version: link:../types '@paralleldrive/cuid2': specifier: 2.3.1 version: 2.3.1 @@ -718,16 +688,16 @@ importers: version: 4.21.0 vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) vite-plugin-dts: specifier: 4.5.4 - version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) packages/email: dependencies: '@react-email/components': specifier: 1.0.10 - version: 1.0.10(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 1.0.10(react-dom@19.2.5(react@19.2.5))(react@19.2.5) react-email: specifier: 5.2.10 version: 5.2.10 @@ -741,9 +711,6 @@ importers: '@formbricks/types': specifier: workspace:* version: link:../types - '@react-email/preview-server': - specifier: 5.2.10 - version: 5.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) autoprefixer: specifier: 10.4.27 version: 10.4.27(postcss@8.5.8) @@ -780,13 +747,10 @@ importers: version: 4.21.0 vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) - vite-plugin-dts: - specifier: 4.5.4 - version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) vitest: - specifier: 4.0.18 - version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + specifier: 4.1.5 + version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) packages/js-core: devDependencies: @@ -797,20 +761,17 @@ importers: specifier: workspace:* version: link:../config-eslint '@vitest/coverage-v8': - specifier: 4.0.18 - version: 4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) - terser: - specifier: 5.46.0 - version: 5.46.0 + specifier: 4.1.5 + version: 4.1.5(vitest@4.1.5) vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) vite-plugin-dts: specifier: 4.5.4 - version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) vitest: - specifier: 4.0.18 - version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + specifier: 4.1.5 + version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) packages/logger: dependencies: @@ -835,13 +796,10 @@ importers: version: link:../config-eslint vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) - vite-plugin-dts: - specifier: 4.5.4 - version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) vitest: - specifier: 4.0.18 - version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + specifier: 4.1.5 + version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) packages/storage: dependencies: @@ -865,17 +823,14 @@ importers: specifier: workspace:* version: link:../config-eslint '@vitest/coverage-v8': - specifier: 4.0.18 - version: 4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + specifier: 4.1.5 + version: 4.1.5(vitest@4.1.5) vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) - vite-plugin-dts: - specifier: 4.5.4 - version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) vitest: - specifier: 4.0.18 - version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + specifier: 4.1.5 + version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) packages/survey-ui: dependencies: @@ -910,8 +865,8 @@ importers: specifier: 4.1.0 version: 4.1.0 isomorphic-dompurify: - specifier: 3.1.0 - version: 3.1.0(@noble/hashes@2.0.1) + specifier: 3.9.0 + version: 3.9.0(@noble/hashes@2.0.1) lucide-react: specifier: 0.577.0 version: 0.577.0(react@19.2.4) @@ -929,17 +884,17 @@ importers: specifier: workspace:* version: link:../config-eslint '@storybook/react': - specifier: 10.2.17 - version: 10.2.17(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3) + specifier: 10.3.5 + version: 10.3.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3) '@storybook/react-vite': - specifier: 10.2.17 - version: 10.2.17(esbuild@0.27.7)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(rollup@4.59.0)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))(webpack@5.105.4(esbuild@0.27.7)) + specifier: 10.3.5 + version: 10.3.5(esbuild@0.27.7)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7)) '@tailwindcss/postcss': specifier: 4.2.1 version: 4.2.1 '@tailwindcss/vite': specifier: 4.2.1 - version: 4.2.1(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 4.2.1(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) '@types/react': specifier: 19.2.14 version: 19.2.14 @@ -948,10 +903,10 @@ importers: version: 19.2.3(@types/react@19.2.14) '@vitejs/plugin-react': specifier: 5.1.4 - version: 5.1.4(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 5.1.4(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) '@vitest/coverage-v8': - specifier: 4.0.18 - version: 4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + specifier: 4.1.5 + version: 4.1.5(vitest@4.1.5) react: specifier: 19.2.4 version: 19.2.4 @@ -966,16 +921,16 @@ importers: version: 4.2.1 vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) vite-plugin-dts: specifier: 4.5.4 - version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) vite-tsconfig-paths: specifier: 6.1.1 - version: 6.1.1(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 6.1.1(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) vitest: - specifier: 4.0.18 - version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + specifier: 4.1.5 + version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) packages/surveys: dependencies: @@ -992,14 +947,14 @@ importers: specifier: 2.4.3 version: 2.4.3(intl-messageformat@10.7.18) isomorphic-dompurify: - specifier: 3.1.0 - version: 3.1.0(@noble/hashes@2.0.1) + specifier: 3.9.0 + version: 3.9.0(@noble/hashes@2.0.1) preact: specifier: 10.29.0 version: 10.29.0 react-i18next: specifier: 16.5.8 - version: 16.5.8(i18next@25.8.18(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + version: 16.5.8(i18next@25.8.18(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.5)(typescript@5.9.3) tailwind-merge: specifier: 3.5.0 version: 3.5.0 @@ -1018,7 +973,7 @@ importers: version: link:../types '@preact/preset-vite': specifier: 2.10.3 - version: 2.10.3(@babel/core@7.29.0)(preact@10.29.0)(rollup@4.59.0)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 2.10.3(@babel/core@7.29.0)(preact@10.29.0)(rollup@4.59.0)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) '@tailwindcss/postcss': specifier: 4.2.1 version: 4.2.1 @@ -1049,24 +1004,18 @@ importers: tailwindcss: specifier: 4.2.1 version: 4.2.1 - terser: - specifier: 5.46.0 - version: 5.46.0 vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) - vite-plugin-dts: - specifier: 4.5.4 - version: 4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) vite-tsconfig-paths: specifier: 6.1.1 - version: 6.1.1(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 6.1.1(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) packages/types: dependencies: '@prisma/client': specifier: 6.19.2 - version: 6.19.2(prisma@7.4.2(@types/react@19.2.14)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3) + version: 6.19.2(prisma@7.4.2(@types/react@19.2.14)(better-sqlite3@12.8.0)(magicast@0.3.5)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(typescript@5.9.3))(typescript@5.9.3) node-html-parser: specifier: 7.1.0 version: 7.1.0 @@ -1080,9 +1029,6 @@ importers: '@formbricks/config-typescript': specifier: workspace:* version: link:../config-typescript - '@formbricks/database': - specifier: workspace:* - version: link:../database packages/vite-plugins: devDependencies: @@ -1094,13 +1040,10 @@ importers: version: link:../config-eslint vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + version: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) packages: - '@acemir/cssom@0.9.31': - resolution: {integrity: sha512-ZnR3GSaH+/vJ0YlHau21FjfLYjMpYVIzTD8M8vIEQvIGxeOXyXdzCI140rrCY862p/C/BbzWsjc1dgnM9mkoTA==} - '@adobe/css-tools@4.4.4': resolution: {integrity: sha512-Elp+iwUx5rN5+Y8xLt5/GRoG20WGoDCQ/1Fb+1LiGtvwbDavuSk0jhD/eZdckHAuzcDzccnkv+rEjyWfRx18gg==} @@ -1166,12 +1109,17 @@ packages: '@ark/util@0.56.0': resolution: {integrity: sha512-BghfRC8b9pNs3vBoDJhcta0/c1J1rsoS1+HgVUreMFPdhz/CRAKReAu57YEllNaSy98rWAdY1gE+gFup7OXpgA==} - '@asamuzakjp/css-color@5.0.1': - resolution: {integrity: sha512-2SZFvqMyvboVV1d15lMf7XiI3m7SDqXUuKaTymJYLN6dSGadqp+fVojqJlVoMlbZnlTmu3S0TLwLTJpvBMO1Aw==} + '@asamuzakjp/css-color@5.1.11': + resolution: {integrity: sha512-KVw6qIiCTUQhByfTd78h2yD1/00waTmm9uy/R7Ck/ctUyAPj+AEDLkQIdJW0T8+qGgj3j5bpNKK7Q3G+LedJWg==} + engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} + + '@asamuzakjp/dom-selector@7.1.1': + resolution: {integrity: sha512-67RZDnYRc8H/8MLDgQCDE//zoqVFwajkepHZgmXrbwybzXOEwOWGPYGmALYl9J2DOLfFPPs6kKCqmbzV895hTQ==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} - '@asamuzakjp/dom-selector@6.8.1': - resolution: {integrity: sha512-MvRz1nCqW0fsy8Qz4dnLIvhOlMzqDVBabZx6lH+YywFDdjXhMY37SmpV1XFX3JzG5GWHn63j6HX6QPr3lZXHvQ==} + '@asamuzakjp/generational-cache@1.0.1': + resolution: {integrity: sha512-wajfB8KqzMCN2KGNFdLkReeHncd0AslUSrvHVvvYWuU8ghncRJoA50kT3zP9MVL0+9g4/67H+cdvBskj9THPzg==} + engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} '@asamuzakjp/nwsapi@2.3.9': resolution: {integrity: sha512-n8GuYSrI9bF7FFZ/SjhwevlHc8xaVlb/7HmHelnc/PZXBD2ZR49NnN9sMMuDdEGPeeRQ5d0hqlSlEpgCX3Wl0Q==} @@ -1199,30 +1147,22 @@ packages: '@aws-crypto/util@5.2.0': resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==} + '@aws-sdk/client-cognito-identity@3.1013.0': + resolution: {integrity: sha512-ynj1lWlt+Z5QKPN42PcgfobxDkiGCQRksFiNer3GEdUl6EEQC5HZFJWIShiHtBIexjL/Z7Eg70tSkuMMcKNovw==} + engines: {node: '>=20.0.0'} + '@aws-sdk/client-cognito-identity@3.1017.0': resolution: {integrity: sha512-6bDSefNF53Tt2e/nzighWQbye80chPMoo3FG3L6bEjcyRFROl1cs8RlvJ529cpHo94pNot35gu5Wpg3sENyuXg==} engines: {node: '>=20.0.0'} - '@aws-sdk/client-cognito-identity@3.817.0': - resolution: {integrity: sha512-MNGwOJDQU0jpvsLLPSuPQDhPtDzFTc/k7rLmiKoPrIlgb3Y8pSF4crpJ+ZH3+xod2NWyyOVMEMQeMaKFFdMaKw==} - engines: {node: '>=18.0.0'} - - '@aws-sdk/client-dynamodb@3.817.0': - resolution: {integrity: sha512-UXHY1cOsPTyrzRY+8yJUYcD7dnMHbP2hoFRhNOiMCMqjKV4lRRQ/1EiLxX5aohAYkxxr2kOqSDFjzq9wbtX6PQ==} - engines: {node: '>=18.0.0'} + '@aws-sdk/client-dynamodb@3.1013.0': + resolution: {integrity: sha512-AcXLwdk9T5p/46V/QB6wX34q6+48lqIS185o20QPyuXScUcNHnvlNrzMa8KHisAFYLxZF6vwiBcsbJIgaoOzKw==} + engines: {node: '>=20.0.0'} '@aws-sdk/client-s3@3.1007.0': resolution: {integrity: sha512-QdFNDy+eKpcbv3ieGNl7XsDhpOj5mfb2xwnNM/YC108JpNJ5Ox79mbwtsKKqmQfen0JeaJml58vFnRHjfkjw9w==} 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/core@3.816.0': - resolution: {integrity: sha512-Lx50wjtyarzKpMFV6V+gjbSZDgsA/71iyifbClGUSiNPoIQ4OCV0KVOmAAj7mQRVvGJqUMWKVM+WzK79CjbjWA==} - engines: {node: '>=18.0.0'} - '@aws-sdk/core@3.973.19': resolution: {integrity: sha512-56KePyOcZnKTWCd89oJS1G6j3HZ9Kc+bh/8+EbvtaCCXdP6T7O7NzCiPuHRhFLWnzXIaXX3CxAz0nI5My9spHQ==} engines: {node: '>=20.0.0'} @@ -1231,22 +1171,18 @@ packages: resolution: {integrity: sha512-vvf82RYQu2GidWAuQq+uIzaPz9V0gSCXVqdVzRosgl5rXcspXOpSD3wFreGGW6AYymPr97Z69kjVnLePBxloDw==} engines: {node: '>=20.0.0'} + '@aws-sdk/core@3.974.3': + resolution: {integrity: sha512-W3aJJm2clu8OmsrwMOMnfof13O6LGnbknnZIQeSRbxjqKah2nVvkjbUBBZVhWrt08KC69H7WsINTdrxC/2SXQw==} + engines: {node: '>=20.0.0'} + '@aws-sdk/crc64-nvme@3.972.4': resolution: {integrity: sha512-HKZIZLbRyvzo/bXZU7Zmk6XqU+1C9DjI56xd02vwuDIxedxBEqP17t9ExhbP9QFeNq/a3l9GOcyirFXxmbDhmw==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-cognito-identity@3.817.0': - resolution: {integrity: sha512-+dzgWGmdmMNDdeSF+VvONN+hwqoGKX5A6Z3+siMO4CIoKWN7u5nDOx/JLjTGdVQji3522pJjJ+o9veQJNWOMRg==} - engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-cognito-identity@3.972.17': resolution: {integrity: sha512-rMiW9GkLFBeRNvYdTzIRNP2Gq8vE8lomuqkv0BM7taX80UrN5oAa1wA8dDSWidga15k+0eFLo4RDsBHmeR1TUA==} 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.17': resolution: {integrity: sha512-MBAMW6YELzE1SdkOniqr51mrjapQUv8JXSGxtwRjQV0mwVDutVsn22OPAUt4RcLRvdiHQmNBDEFP9iTeSVCOlA==} engines: {node: '>=20.0.0'} @@ -1255,10 +1191,6 @@ packages: resolution: {integrity: sha512-cXp0VTDWT76p3hyK5D51yIKEfpf6/zsUvMfaB8CkyqadJxMQ8SbEeVroregmDlZbtG31wkj9ei0WnftmieggLg==} 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.19': resolution: {integrity: sha512-9EJROO8LXll5a7eUFqu48k6BChrtokbmgeMWmsH7lBb6lVbtjslUYz/ShLi+SHkYzTomiGBhmzTW7y+H4BxsnA==} engines: {node: '>=20.0.0'} @@ -1267,10 +1199,6 @@ packages: resolution: {integrity: sha512-h694K7+tRuepSRJr09wTvQfaEnjzsKZ5s7fbESrVds02GT/QzViJ94/HCNwM7bUfFxqpPXHxulZfL6Cou0dwPg==} 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.18': resolution: {integrity: sha512-vthIAXJISZnj2576HeyLBj4WTeX+I7PwWeRkbOa0mVX39K13SCGxCgOFuKj2ytm9qTlLOmXe4cdEnroteFtJfw==} engines: {node: '>=20.0.0'} @@ -1287,10 +1215,6 @@ packages: resolution: {integrity: sha512-sIk8oa6AzDoUhxsR11svZESqvzGuXesw62Rl2oW6wguZx8i9cdGCvkFg+h5K7iucUZP8wyWibUbJMc+J66cu5g==} 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-node@3.972.19': resolution: {integrity: sha512-yDWQ9dFTr+IMxwanFe7+tbN5++q8psZBjlUwOiCXn1EzANoBgtqBwcpYcHaMGtn0Wlfj4NuXdf2JaEx1lz5RaQ==} engines: {node: '>=20.0.0'} @@ -1299,10 +1223,6 @@ packages: resolution: {integrity: sha512-m7dR0Dsva2P+VUpL+VkC0WwiDby5pgmWXkRVDB5rlwv0jXJrQJf7YMtCoM8Wjk0H9jPeCYOxOXXcIgp/qp5Alg==} 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-process@3.972.17': resolution: {integrity: sha512-c8G8wT1axpJDgaP3xzcy+q8Y1fTi9A2eIQJvyhQ9xuXrUZhlCfXbC0vM9bM1CUXiZppFQ1p7g0tuUMvil/gCPg==} engines: {node: '>=20.0.0'} @@ -1311,10 +1231,6 @@ packages: resolution: {integrity: sha512-Os32s8/4gTZjBk5BtoS/cuTILaj+K72d0dVG7TCJX/fC4598cxwLDmf1AEHEpER5oL3K//yETjvFaz0V8oO5Xw==} 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-sso@3.972.18': resolution: {integrity: sha512-YHYEfj5S2aqInRt5ub8nDOX8vAxgMvd84wm2Y3WVNfFa/53vOv9T7WOAqXI25qjj3uEcV46xxfqdDQk04h5XQA==} engines: {node: '>=20.0.0'} @@ -1323,10 +1239,6 @@ packages: resolution: {integrity: sha512-PaFv7snEfypU2yXkpvfyWgddEbDLtgVe51wdZlinhc2doubBjUzJZZpgwuF2Jenl1FBydMhNpMjD6SBUM3qdSA==} 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-web-identity@3.972.18': resolution: {integrity: sha512-OqlEQpJ+J3T5B96qtC1zLLwkBloechP+fezKbCH0sbd2cCc0Ra55XpxWpk/hRj69xAOYtHvoC4orx6eTa4zU7g==} engines: {node: '>=20.0.0'} @@ -1335,25 +1247,29 @@ packages: resolution: {integrity: sha512-J6H4R1nvr3uBTqD/EeIPAskrBtET4WFfNhpFySr2xW7bVZOXpQfPjrLSIx65jcNjBmLXzWq8QFLdVoGxiGG/SA==} engines: {node: '>=20.0.0'} + '@aws-sdk/credential-providers@3.1013.0': + resolution: {integrity: sha512-rKH7zPFYmxe+lWrVvgT920Ja1KEJFwg3jm3z2Nk6i4TedPUa0EwjLtgbgBesLG9EsY/WOF01SMC0d6BrY2wiWw==} + engines: {node: '>=20.0.0'} + '@aws-sdk/credential-providers@3.1017.0': resolution: {integrity: sha512-TPtd9zq7ePVWDYDYLMYcCNk+TNYFdb3pKzwQWRHq9d6OfVKqBFa5GjsKjcCWACw77S0UhGW6KPOOK3/ts9CTmA==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-providers@3.817.0': - resolution: {integrity: sha512-i6Q2MyktWHG4YG+EmLlnXTgNVjW9/yeNHSKzF55GTho5fjqfU+t9beJfuMWclanRCifamm3N5e5OCm52rVDdTQ==} - engines: {node: '>=18.0.0'} + '@aws-sdk/dynamodb-codec@3.973.3': + resolution: {integrity: sha512-MRe24Bbf5a6CY3gJx8/E8IChYaNfpkCWBYJAtDbB7bN98+r2YI5pqVate8nKyxy1Abgr/uiLjWirbb/KhequIA==} + engines: {node: '>=20.0.0'} - '@aws-sdk/endpoint-cache@3.804.0': - resolution: {integrity: sha512-TQVDkA/lV6ua75ELZaichMzlp6x7tDa1bqdy/+0ZftmODPtKXuOOEcJxmdN7Ui/YRo1gkRz2D9txYy7IlNg1Og==} - engines: {node: '>=18.0.0'} + '@aws-sdk/endpoint-cache@3.972.5': + resolution: {integrity: sha512-itVdge0NozgtgmtbZ25FVwWU3vGlE7x7feE/aOEJNkQfEpbkrF8Rj1QmnK+2blFfYE1xWt/iU+6/jUp/pv1+MA==} + engines: {node: '>=20.0.0'} '@aws-sdk/middleware-bucket-endpoint@3.972.7': resolution: {integrity: sha512-goX+axlJ6PQlRnzE2bQisZ8wVrlm6dXJfBzMJhd8LhAIBan/w1Kl73fJnalM/S+18VnpzIHumyV6DtgmvqG5IA==} engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-endpoint-discovery@3.808.0': - resolution: {integrity: sha512-h8LAIO6tuA0JAahrg+oSIVZpb6rhJOFVDDqYNQVp6ZdawlIzpZcc1sa+XVZvarBnThNKqvLTSGK7boSRmaLAwg==} - engines: {node: '>=18.0.0'} + '@aws-sdk/middleware-endpoint-discovery@3.972.11': + resolution: {integrity: sha512-vXARCZVFQHdsd6qPPZyC/hh+5x2XsCYKqUQDCqnUlpGpChMpDojOOacQWdLJ+FFXKN8X3cmLOGrtgx/zysCKqQ==} + engines: {node: '>=20.0.0'} '@aws-sdk/middleware-expect-continue@3.972.7': resolution: {integrity: sha512-mvWqvm61bmZUKmmrtl2uWbokqpenY3Mc3Jf4nXB/Hse6gWxLPaCQThmhPBDzsPSV8/Odn8V6ovWt3pZ7vy4BFQ==} @@ -1363,10 +1279,6 @@ packages: resolution: {integrity: sha512-Dp3hqE5W6hG8HQ3Uh+AINx9wjjqYmFHbxede54sGj3akx/haIQrkp85lNdTdC+ouNUcSYNiuGkzmyDREfHX1Gg==} 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-host-header@3.972.7': resolution: {integrity: sha512-aHQZgztBFEpDU1BB00VWCIIm85JjGjQW1OG9+98BdmaOpguJvzmXBGbnAiYcciCd+IS4e9BEq664lhzGnWJHgQ==} engines: {node: '>=20.0.0'} @@ -1379,10 +1291,6 @@ packages: resolution: {integrity: sha512-vdK1LJfffBp87Lj0Bw3WdK1rJk9OLDYdQpqoKgmpIZPe+4+HawZ6THTbvjhJt4C4MNnRrHTKHQjkwBiIpDBoig==} 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-logger@3.972.7': resolution: {integrity: sha512-LXhiWlWb26txCU1vcI9PneESSeRp/RYY/McuM4SpdrimQR5NgwaPb4VJCadVeuGWgh6QmqZ6rAKSoL1ob16W6w==} engines: {node: '>=20.0.0'} @@ -1391,10 +1299,6 @@ packages: resolution: {integrity: sha512-CWl5UCM57WUFaFi5kB7IBY1UmOeLvNZAZ2/OZ5l20ldiJ3TiIz1pC65gYj8X0BCPWkeR1E32mpsCk1L1I4n+lA==} 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-recursion-detection@3.972.7': resolution: {integrity: sha512-l2VQdcBcYLzIzykCHtXlbpiVCZ94/xniLIkAj0jpnpjY4xlgZx7f56Ypn+uV1y3gG0tNVytJqo3K9bfMFee7SQ==} engines: {node: '>=20.0.0'} @@ -1411,10 +1315,6 @@ packages: resolution: {integrity: sha512-G9clGVuAml7d8DYzY6DnRi7TIIDRvZ3YpqJPz/8wnWS5fYx/FNWNmkO6iJVlVkQg9BfeMzd+bVPtPJOvC4B+nQ==} 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-user-agent@3.972.20': resolution: {integrity: sha512-3kNTLtpUdeahxtnJRnj/oIdLAUdzTfr9N40KtxNhtdrq+Q1RPMdCJINRXq37m4t5+r3H70wgC3opW46OzFcZYA==} engines: {node: '>=20.0.0'} @@ -1423,10 +1323,6 @@ packages: resolution: {integrity: sha512-QxiMPofvOt8SwSynTOmuZfvvPM1S9QfkESBxB22NMHTRXCJhR5BygLl8IXfC4jELiisQgwsgUby21GtXfX3f/g==} 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/nested-clients@3.996.14': resolution: {integrity: sha512-fSESKvh1VbfjtV3QMnRkCPZWkUbQof6T/DOpiLp33yP2wA+rbwwnZeG3XT3Ekljgw2I8X4XaQPnw+zSR8yxJ5Q==} engines: {node: '>=20.0.0'} @@ -1435,10 +1331,6 @@ packages: resolution: {integrity: sha512-6HlLm8ciMW8VzfB80kfIx16PBA9lOa9Dl+dmCBi78JDhvGlx3I7Rorwi5PpVRkL31RprXnYna3yBf6UKkD/PqA==} engines: {node: '>=20.0.0'} - '@aws-sdk/region-config-resolver@3.808.0': - resolution: {integrity: sha512-9x2QWfphkARZY5OGkl9dJxZlSlYM2l5inFeo2bKntGuwg4A4YUe5h7d5yJ6sZbam9h43eBrkOdumx03DAkQF9A==} - engines: {node: '>=18.0.0'} - '@aws-sdk/region-config-resolver@3.972.7': resolution: {integrity: sha512-/Ev/6AI8bvt4HAAptzSjThGUMjcWaX3GX8oERkB0F0F9x2dLSBdgFDiyrRz3i0u0ZFZFQ1b28is4QhyqXTUsVA==} engines: {node: '>=20.0.0'} @@ -1467,14 +1359,6 @@ packages: resolution: {integrity: sha512-3OSD4y110nisRhHzFOjoEeHU4GQL4KpzkX9PxzWaiZe0Yg2+thZKM0Pn9DjYwezH5JYfh/K++xK/SE0IHGrmCQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/token-providers@3.817.0': - resolution: {integrity: sha512-CYN4/UO0VaqyHf46ogZzNrVX7jI3/CfiuktwKlwtpKA6hjf2+ivfgHSKzPpgPBcSEfiibA/26EeLuMnB6cpSrQ==} - engines: {node: '>=18.0.0'} - - '@aws-sdk/types@3.804.0': - resolution: {integrity: sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==} - engines: {node: '>=18.0.0'} - '@aws-sdk/types@3.973.5': resolution: {integrity: sha512-hl7BGwDCWsjH8NkZfx+HgS7H2LyM2lTMAI7ba9c8O0KqdBLTdNJivsHpqjg9rNlAlPyREb6DeDRXUl0s8uFdmQ==} engines: {node: '>=20.0.0'} @@ -1483,19 +1367,19 @@ packages: resolution: {integrity: sha512-Atfcy4E++beKtwJHiDln2Nby8W/mam64opFPTiHEqgsthqeydFS1pY+OUlN1ouNOmf8ArPU/6cDS65anOP3KQw==} engines: {node: '>=20.0.0'} + '@aws-sdk/types@3.973.8': + resolution: {integrity: sha512-gjlAdtHMbtR9X5iIhVUvbVcy55KnznpC6bkDUWW9z915bi0ckdUr5cjf16Kp6xq0bP5HBD2xzgbL9F9Quv5vUw==} + engines: {node: '>=20.0.0'} + '@aws-sdk/util-arn-parser@3.972.3': resolution: {integrity: sha512-HzSD8PMFrvgi2Kserxuff5VitNq2sgf3w9qxmskKDiDTThWfVteJxuCS9JXiPIPtmCrp+7N9asfIaVhBFORllA==} engines: {node: '>=20.0.0'} - '@aws-sdk/util-dynamodb@3.817.0': - resolution: {integrity: sha512-v6dxAPFgzp3HRDo5YNWUQO0l0TrIZ/S1eSnK3fhwjQRFrTIspwfmq/N5bxFsU1caZiER+7L/qvsbTJwpq4MLFw==} - engines: {node: '>=18.0.0'} + '@aws-sdk/util-dynamodb@3.996.2': + resolution: {integrity: sha512-ddpwaZmjBzcApYN7lgtAXjk+u+GO8fiPsxzuc59UqP+zqdxI1gsenPvkyiHiF9LnYnyRGijz6oN2JylnN561qQ==} + engines: {node: '>=20.0.0'} peerDependencies: - '@aws-sdk/client-dynamodb': ^3.817.0 - - '@aws-sdk/util-endpoints@3.808.0': - resolution: {integrity: sha512-N6Lic98uc4ADB7fLWlzx+1uVnq04VgVjngZvwHoujcRg9YDhIg9dUDiTzD5VZv13g1BrPYmvYP1HhsildpGV6w==} - engines: {node: '>=18.0.0'} + '@aws-sdk/client-dynamodb': ^3.1003.0 '@aws-sdk/util-endpoints@3.996.4': resolution: {integrity: sha512-Hek90FBmd4joCFj+Vc98KLJh73Zqj3s2W56gjAcTkrNLMDI5nIFkG9YpfcJiVI1YlE2Ne1uOQNe+IgQ/Vz2XRA==} @@ -1513,24 +1397,12 @@ packages: resolution: {integrity: sha512-nhmgKHnNV9K+i9daumaIz8JTLsIIML9PE/HUks5liyrjUzenjW/aHoc7WJ9/Td/gPZtayxFnXQSJRb/fDlBuJw==} engines: {node: '>=18.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.7': resolution: {integrity: sha512-7SJVuvhKhMF/BkNS1n0QAJYgvEwYbK2QLKBrzDiwQGiTRU6Yf1f3nehTzm/l21xdAOtWSfp2uWSddPnP2ZtsVw==} '@aws-sdk/util-user-agent-browser@3.972.8': resolution: {integrity: sha512-B3KGXJviV2u6Cdw2SDY2aDhoJkVfY/Q/Trwk2CMSkikE1Oi6gRzxhvhIfiRpHfmIsAhV4EA54TVEX8K6CbHbkA==} - '@aws-sdk/util-user-agent-node@3.816.0': - resolution: {integrity: sha512-Q6dxmuj4hL7pudhrneWEQ7yVHIQRBFr0wqKLF1opwOi1cIePuoEbPyJ2jkel6PDEv1YMfvsAKaRshp6eNA8VHg==} - engines: {node: '>=18.0.0'} - peerDependencies: - aws-crt: '>=1.0.0' - peerDependenciesMeta: - aws-crt: - optional: true - '@aws-sdk/util-user-agent-node@3.973.11': resolution: {integrity: sha512-1qdXbXo2s5MMLpUvw00284LsbhtlQ4ul7Zzdn5n+7p4WVgCMLqhxImpHIrjSoc72E/fyc4Wq8dLtUld2Gsh+lA==} engines: {node: '>=20.0.0'} @@ -1557,6 +1429,10 @@ packages: resolution: {integrity: sha512-PxMRlCFNiQnke9YR29vjFQwz4jq+6Q04rOVFeTDR2K7Qpv9h9FOWOxG+zJjageimYbWqE3bTuLjmryWHAWbvaA==} engines: {node: '>=20.0.0'} + '@aws-sdk/xml-builder@3.972.18': + resolution: {integrity: sha512-BMDNVG1ETXRhl1tnisQiYBef3RShJ1kfZA7x7afivTFMLirfHNTb6U71K569HNXhSXbQZsweHvSDZ6euBw8hPA==} + engines: {node: '>=20.0.0'} + '@aws/lambda-invoke-store@0.2.2': resolution: {integrity: sha512-C0NBLsIqzDIae8HFw9YIrIBsbc0xTiOtt7fAukGPnqQ/+zZNaq+4jhuccltK0QuWHBnNm/a6kLIRA6GFiM10eg==} engines: {node: '>=18.0.0'} @@ -1835,15 +1711,15 @@ packages: '@boxyhq/error-code-mnemonic@0.1.1': resolution: {integrity: sha512-NmO111OG8GQDE8W/+uSREb67YSqnY2N/tHykGeFoIZc9Leher+lW+jN4U1OXzlc66hwB8yO7WRu2cbYsAKsi9g==} - '@boxyhq/metrics@0.2.10': - resolution: {integrity: sha512-jsBKS5fNEyxYyizhYWT3q1oQM3dE9VVL/rEBrdGZMHXQZHxKZeE1Sg5wrfT7ILYjYQ+6CSs8yNJSK9jHJKN6cw==} + '@boxyhq/metrics@0.2.12': + resolution: {integrity: sha512-KhiRIHg0+FqDmGPfq5p8tfEUdzhBLghikEzbXQnTwRx2cgpoYVgMa5DEBfq8BOnWpQ44bMaRCfQyxnYwsrKfBg==} - '@boxyhq/saml-jackson@1.52.2': - resolution: {integrity: sha512-il8VEpaEHBBSeT7cbRmXYO32+PsmRp9urMB5C9ON7QB66XU0VVS9WKaVJROMLVf6QhqETRbSnluSaoevsuPHog==} + '@boxyhq/saml-jackson@26.2.0': + resolution: {integrity: sha512-6+7dneWWj2nqXlCuTBYYVhVvWdHFApYLqkwdyMtd/mNwClf42IEeFlNsVvH6LCSztJDplrsoZvNyHgNXDeb49w==} engines: {node: '>=16', npm: '>=8'} - '@boxyhq/saml20@1.12.1': - resolution: {integrity: sha512-lAHJ13kTZqPgSFUuAV8+kg5As3/MoSfiEr96tNKP0sj6c6o/Sbwn6DIhUZLQRNzDtmyAu9zuQk3vdbY5BK56Xg==} + '@boxyhq/saml20@1.13.2': + resolution: {integrity: sha512-iMbFK2I/fB7Iu8qsUTfGBwd2KyVviRPwslxthWMHHSOLbty6GQvrqB07XO3w8kVZVUs20uHfa/azxZO8opMdHA==} '@bramus/specificity@2.4.2': resolution: {integrity: sha512-ctxtJ/eA+t+6q2++vj5j7FYX3nRu311q1wfYH3xjlLOsczhlhxAg2FWNUXhpGvAw3BWo1xBcvOV6/YLc2r5FJw==} @@ -1881,15 +1757,15 @@ packages: resolution: {integrity: sha512-LMGQLS9EuADloEFkcTBR3BwV/CGHV7zyDxVRtVDTwdI2Ca4it0CCVTT9wCkxSgokjE5Ho41hEPgb8OEUwoXr6Q==} engines: {node: '>=20.19.0'} - '@csstools/css-calc@3.1.1': - resolution: {integrity: sha512-HJ26Z/vmsZQqs/o3a6bgKslXGFAungXGbinULZO3eMsOyNJHeBBZfup5FiZInOghgoM4Hwnmw+OgbJCNg1wwUQ==} + '@csstools/css-calc@3.2.0': + resolution: {integrity: sha512-bR9e6o2BDB12jzN/gIbjHa5wLJ4UjD1CB9pM7ehlc0ddk6EBz+yYS1EV2MF55/HUxrHcB/hehAyt5vhsA3hx7w==} engines: {node: '>=20.19.0'} peerDependencies: '@csstools/css-parser-algorithms': ^4.0.0 '@csstools/css-tokenizer': ^4.0.0 - '@csstools/css-color-parser@4.0.2': - resolution: {integrity: sha512-0GEfbBLmTFf0dJlpsNU7zwxRIH0/BGEMuXLTCvFYxuL1tNhqzTbtnFICyJLTNK4a+RechKP75e7w42ClXSnJQw==} + '@csstools/css-color-parser@4.1.0': + resolution: {integrity: sha512-U0KhLYmy2GVj6q4T3WaAe6NPuFYCPQoE3b0dRGxejWDgcPp8TP7S5rVdM5ZrFaqu4N67X8YaPBw14dQSYx3IyQ==} engines: {node: '>=20.19.0'} peerDependencies: '@csstools/css-parser-algorithms': ^4.0.0 @@ -1901,8 +1777,13 @@ packages: peerDependencies: '@csstools/css-tokenizer': ^4.0.0 - '@csstools/css-syntax-patches-for-csstree@1.0.29': - resolution: {integrity: sha512-jx9GjkkP5YHuTmko2eWAvpPnb0mB4mGRr2U7XwVNwevm8nlpobZEVk+GNmiYMk2VuA75v+plfXWyroWKmICZXg==} + '@csstools/css-syntax-patches-for-csstree@1.1.3': + resolution: {integrity: sha512-SH60bMfrRCJF3morcdk57WklujF4Jr/EsQUzqkarfHXEFcAR1gg7fS/chAE922Sehgzc1/+Tz5H3Ypa1HiEKrg==} + peerDependencies: + css-tree: ^3.2.1 + peerDependenciesMeta: + css-tree: + optional: true '@csstools/css-tokenizer@4.0.0': resolution: {integrity: sha512-QxULHAm7cNu72w97JUNCBFODFaXpbDg+dP8b/oWFAZ2MTRppA3U00Y2L1HqaS4J6yBqxwa/Y3nMBaxVKbB/NsA==} @@ -2295,8 +2176,8 @@ packages: resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@exodus/bytes@1.14.1': - resolution: {integrity: sha512-OhkBFWI6GcRMUroChZiopRiSp2iAMvEBK47NhJooDqz1RERO4QuZIZnjP63TXX8GAiLABkYmX+fuQsdJ1dd2QQ==} + '@exodus/bytes@1.15.0': + resolution: {integrity: sha512-UY0nlA+feH81UGSHv92sLEPLCeZFjXOuHhrIo0HQydScuQc8s0A7kL/UdgwgDq8g8ilksmuoF35YVTNphV2aBQ==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@noble/hashes': ^1.8.0 || ^2.0.0 @@ -2351,33 +2232,24 @@ packages: '@gar/promisify@1.1.3': resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} - '@googleapis/admin@23.5.0': - resolution: {integrity: sha512-B8jWEYs9fscIb1yEYx0OBxovIUKbXlRA5aUtR/JvZJXbBVnZRgsH8UJ96Rd4CqKF3mLq9dFJGy87U2foQ/G/HQ==} + '@googleapis/admin@30.3.0': + resolution: {integrity: sha512-9vBP163vUDGb7BZuGat0Hzajf010t4HuXrR13MWDF/2pCNcg65gAAOzu3PSTIcqiuxL7nsjhkzj+oxg/t7s3vA==} engines: {node: '>=12.0.0'} - '@grpc/grpc-js@1.12.6': - resolution: {integrity: sha512-JXUj6PI0oqqzTGvKtzOkxtpsyPRNsrmhh41TtIz/zEB6J+AUiZZ0dxWzcMwO9Ns5rmSPuMdghlTbUuqIM48d3Q==} - engines: {node: '>=12.10.0'} - '@grpc/grpc-js@1.14.3': resolution: {integrity: sha512-Iq8QQQ/7X3Sac15oB6p0FmUg/klxQvXLeileoqrTRGJYLV+/9tubbr9ipz0GKHjmXVsgFPo/+W+2cA8eNcR+XA==} engines: {node: '>=12.10.0'} - '@grpc/proto-loader@0.7.15': - resolution: {integrity: sha512-tMXdRCfYVixjuFK+Hk0Q1s38gV9zDiDJfWL3h1rv4Qc39oILCu1TRTDt7+fGUI8K4G1Fj125Hx/ru3azECWTyQ==} - engines: {node: '>=6'} - hasBin: true - '@grpc/proto-loader@0.8.0': resolution: {integrity: sha512-rc1hOQtjIWGxcxpb9aHAfLpIctjEnsDehj0DAiVfBlmT84uvR0uUtN2hEi/ecvWVjXUGf5qPF4qEgiLOx1YIMQ==} engines: {node: '>=6'} hasBin: true - '@hono/node-server@1.19.10': - resolution: {integrity: sha512-hZ7nOssGqRgyV3FVVQdfi+U4q02uB23bpnYpdvNXkYTRRyWx84b7yf1ans+dnJ/7h41sGL3CeQTfO+ZGxuO+Iw==} + '@hono/node-server@1.19.13': + resolution: {integrity: sha512-TsQLe4i2gvoTtrHje625ngThGBySOgSK3Xo2XRYOdqGN1teR8+I7vchQC46uLJi8OF62YTYA3AhSpumtkhsaKQ==} engines: {node: '>=18.14.1'} peerDependencies: - hono: 4.12.7 + hono: 4.12.14 '@hookform/resolvers@5.2.2': resolution: {integrity: sha512-A/IxlMLShx3KjV/HeTcTfaMxdwy690+L/ZADoeaTltLx+CVuzkeVIPuybK3jrRfw7YZnmdKsVVHAlEPIAEUNlA==} @@ -2558,11 +2430,11 @@ packages: resolution: {integrity: sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==} engines: {node: '>=18.0.0'} - '@joshwooding/vite-plugin-react-docgen-typescript@0.6.4': - resolution: {integrity: sha512-6PyZBYKnnVNqOSB0YFly+62R7dmov8segT27A+RVTBVd4iAE6kbW9QBJGlyR2yG4D4ohzhZSTIu7BK1UTtmFFA==} + '@joshwooding/vite-plugin-react-docgen-typescript@0.7.0': + resolution: {integrity: sha512-qvsTEwEFefhdirGOPnu9Wp6ChfIwy2dBCRuETU3uE+4cC+PFoxMSiiEhxk4lOluA34eARHA0OxqsEUYDqRMgeQ==} peerDependencies: typescript: '>= 4.3.x' - vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 peerDependenciesMeta: typescript: optional: true @@ -2678,29 +2550,17 @@ packages: peerDependencies: yjs: '>=13.5.22' - '@libsql/hrana-client@0.4.4': - resolution: {integrity: sha512-BevUg0UBRLs5AEqn0fjrMcl49xCtwuFavgK4MzCb3PTtxpEbQ24oGXctspN9drBiUVmqSZr7go887aiLLzSO3A==} - - '@libsql/isomorphic-fetch@0.1.12': - resolution: {integrity: sha512-MRo4UcmjAGAa3ac56LoD5OE13m2p0lu0VEtZC2NZMcogM/jc5fU9YtMQ3qbPjFJ+u2BBjFZgMPkQaLS1dlMhpg==} - - '@libsql/isomorphic-ws@0.1.5': - resolution: {integrity: sha512-DtLWIH29onUYR00i0GlQ3UdcTRC6EP4u9w/h9LxpUZJWRMARk6dQwZ6Jkd+QdwVpuAOrdxt18v0K2uIYR3fwFg==} - - '@libsql/sqlite3@0.3.1': - resolution: {integrity: sha512-KOOBUuKDjqzteM6QA0W1vnZDfOt5MNMyo2yr4TaH1RcCd7Fsts4lpzfty6FmE1d6QDrRxjRq2ZciO6VdQ9ZF3A==} - '@mdx-js/react@3.1.1': resolution: {integrity: sha512-f++rKLQgUVYDAtECQ6fn/is15GkEH9+nZPM3MS0RcxVqoTfawHvDlSCH7JbMhAM6uJ32v3eXLvLmLvjGu7PTQw==} peerDependencies: '@types/react': '>=16' react: '>=16' - '@microsoft/api-extractor-model@7.33.4': - resolution: {integrity: sha512-u1LTaNTikZAQ9uK6KG1Ms7nvNedsnODnspq/gH2dcyETWvH4hVNGNDvRAEutH66kAmxA4/necElqGNs1FggC8w==} + '@microsoft/api-extractor-model@7.33.8': + resolution: {integrity: sha512-aIcoQggPyer3B6Ze3usz0YWC/oBwUHfRH5ETUsr+oT2BRA6SfTJl7IKPcPZkX4UR+PohowzW4uMxsvjrn8vm+w==} - '@microsoft/api-extractor@7.57.6': - resolution: {integrity: sha512-0rFv/D8Grzw1Mjs2+8NGUR+o4h9LVm5zKRtMeWnpdB5IMJF4TeHCL1zR5LMCIudkOvyvjbhMG5Wjs0B5nqsrRQ==} + '@microsoft/api-extractor@7.58.7': + resolution: {integrity: sha512-yK6OycD46gIzLRpj6ueVUWPk1ACSpkN1LBo05gY1qPTylbWyUCanXfH7+VgkI5LJrJoRSQR5F04XuCffCXLOBw==} hasBin: true '@microsoft/tsdoc-config@0.16.2': @@ -2740,60 +2600,60 @@ packages: '@prisma/client': '>=2.26.0 || >=3' next-auth: ^4 - '@next/env@16.1.7': - resolution: {integrity: sha512-rJJbIdJB/RQr2F1nylZr/PJzamvNNhfr3brdKP6s/GW850jbtR70QlSfFselvIBbcPUOlQwBakexjFzqLzF6pg==} + '@next/env@16.2.4': + resolution: {integrity: sha512-dKkkOzOSwFYe5RX6y26fZgkSpVAlIOJKQHIiydQcrWH6y/97+RceSOAdjZ14Qa3zLduVUy0TXcn+EiM6t4rPgw==} '@next/eslint-plugin-next@15.5.12': resolution: {integrity: sha512-+ZRSDFTv4aC96aMb5E41rMjysx8ApkryevnvEYZvPZO52KvkqP5rNExLUXJFr9P4s0f3oqNQR6vopCZsPWKDcQ==} - '@next/swc-darwin-arm64@16.1.7': - resolution: {integrity: sha512-b2wWIE8sABdyafc4IM8r5Y/dS6kD80JRtOGrUiKTsACFQfWWgUQ2NwoUX1yjFMXVsAwcQeNpnucF2ZrujsBBPg==} + '@next/swc-darwin-arm64@16.2.4': + resolution: {integrity: sha512-OXTFFox5EKN1Ym08vfrz+OXxmCcEjT4SFMbNRsWZE99dMqt2Kcusl5MqPXcW232RYkMLQTy0hqgAMEsfEd/l2A==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@next/swc-darwin-x64@16.1.7': - resolution: {integrity: sha512-zcnVaaZulS1WL0Ss38R5Q6D2gz7MtBu8GZLPfK+73D/hp4GFMrC2sudLky1QibfV7h6RJBJs/gOFvYP0X7UVlQ==} + '@next/swc-darwin-x64@16.2.4': + resolution: {integrity: sha512-XhpVnUfmYWvD3YrXu55XdcAkQtOnvaI6wtQa8fuF5fGoKoxIUZ0kWPtcOfqJEWngFF/lOS9l3+O9CcownhiQxQ==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@next/swc-linux-arm64-gnu@16.1.7': - resolution: {integrity: sha512-2ant89Lux/Q3VyC8vNVg7uBaFVP9SwoK2jJOOR0L8TQnX8CAYnh4uctAScy2Hwj2dgjVHqHLORQZJ2wH6VxhSQ==} + '@next/swc-linux-arm64-gnu@16.2.4': + resolution: {integrity: sha512-Mx/tjlNA3G8kg14QvuGAJ4xBwPk1tUHq56JxZ8CXnZwz1Etz714soCEzGQQzVMz4bEnGPowzkV6Xrp6wAkEWOQ==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] libc: [glibc] - '@next/swc-linux-arm64-musl@16.1.7': - resolution: {integrity: sha512-uufcze7LYv0FQg9GnNeZ3/whYfo+1Q3HnQpm16o6Uyi0OVzLlk2ZWoY7j07KADZFY8qwDbsmFnMQP3p3+Ftprw==} + '@next/swc-linux-arm64-musl@16.2.4': + resolution: {integrity: sha512-iVMMp14514u7Nup2umQS03nT/bN9HurK8ufylC3FZNykrwjtx7V1A7+4kvhbDSCeonTVqV3Txnv0Lu+m2oDXNg==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] libc: [musl] - '@next/swc-linux-x64-gnu@16.1.7': - resolution: {integrity: sha512-KWVf2gxYvHtvuT+c4MBOGxuse5TD7DsMFYSxVxRBnOzok/xryNeQSjXgxSv9QpIVlaGzEn/pIuI6Koosx8CGWA==} + '@next/swc-linux-x64-gnu@16.2.4': + resolution: {integrity: sha512-EZOvm1aQWgnI/N/xcWOlnS3RQBk0VtVav5Zo7n4p0A7UKyTDx047k8opDbXgBpHl4CulRqRfbw3QrX2w5UOXMQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] libc: [glibc] - '@next/swc-linux-x64-musl@16.1.7': - resolution: {integrity: sha512-HguhaGwsGr1YAGs68uRKc4aGWxLET+NevJskOcCAwXbwj0fYX0RgZW2gsOCzr9S11CSQPIkxmoSbuVaBp4Z3dA==} + '@next/swc-linux-x64-musl@16.2.4': + resolution: {integrity: sha512-h9FxsngCm9cTBf71AR4fGznDEDx1hS7+kSEiIRjq5kO1oXWm07DxVGZjCvk0SGx7TSjlUqhI8oOyz7NfwAdPoA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] libc: [musl] - '@next/swc-win32-arm64-msvc@16.1.7': - resolution: {integrity: sha512-S0n3KrDJokKTeFyM/vGGGR8+pCmXYrjNTk2ZozOL1C/JFdfUIL9O1ATaJOl5r2POe56iRChbsszrjMAdWSv7kQ==} + '@next/swc-win32-arm64-msvc@16.2.4': + resolution: {integrity: sha512-3NdJV5OXMSOeJYijX+bjaLge3mJBlh4ybydbT4GFoB/2hAojWHtMhl3CYlYoMrjPuodp0nzFVi4Tj2+WaMg+Ow==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@next/swc-win32-x64-msvc@16.1.7': - resolution: {integrity: sha512-mwgtg8CNZGYm06LeEd+bNnOUfwOyNem/rOiP14Lsz+AnUY92Zq/LXwtebtUiaeVkhbroRCQ0c8GlR4UT1U+0yg==} + '@next/swc-win32-x64-msvc@16.2.4': + resolution: {integrity: sha512-kMVGgsqhO5YTYODD9IPGGhA6iprWidQckK3LmPeW08PIFENRmgfb4MjXHO+p//d+ts2rpjvK5gXWzXSMrPl9cw==} engines: {node: '>= 10'} cpu: [x64] os: [win32] @@ -2853,10 +2713,6 @@ packages: resolution: {integrity: sha512-zRM5/Qj6G84Ej3F1yt33xBVY/3tnMxtL1fiDIxYbDWYaZ/eudVw3/PBiZ8G7JwUxXxjW8gU4g6LnOyfGKYHYgw==} engines: {node: '>=8.0.0'} - '@opentelemetry/api-logs@0.57.1': - resolution: {integrity: sha512-I4PHczeujhQAQv6ZBzqHYEUiggZL4IdSMixtVD3EYqbdrjujE7kRfI5QohjlPoJm8BvenoW5YaTMWRrbpot6tg==} - engines: {node: '>=14'} - '@opentelemetry/api@1.9.0': resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} engines: {node: '>=8.0.0'} @@ -2880,12 +2736,6 @@ packages: peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/core@1.30.1': - resolution: {integrity: sha512-OOCM2C/QIURhJMuKaekP3TRBxBKxG/TWWA0TL2J6nXUtDnuCtccy49LUJF8xPFXMX+0LMcxFpCo8M9cGY1W6rQ==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/core@2.2.0': resolution: {integrity: sha512-FuabnnUm8LflnieVxs6eP7Z383hgQU4W1e3KJS6aOG3RxWxcHyBxH8fDMHNgu/gFx/M2jvTOW/4/PHhLz6bjWw==} engines: {node: ^18.19.0 || >=20.6.0} @@ -2952,15 +2802,21 @@ packages: peerDependencies: '@opentelemetry/api': ^1.3.0 + '@opentelemetry/exporter-metrics-otlp-grpc@0.212.0': + resolution: {integrity: sha512-/6Gqf9wpBq22XsomR1i0iPGnbQtCq2Vwnrq5oiDPjYSqveBdK1jtQbhGfmpK2mLLxk4cPDtD1ZEYdIou5K8EaA==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + '@opentelemetry/exporter-metrics-otlp-grpc@0.213.0': resolution: {integrity: sha512-Z8gYKUAU48qwm+a1tjnGv9xbE7a5lukVIwgF6Z5i3VPXPVMe4Sjra0nN3zU7m277h+V+ZpsPGZJ2Xf0OTkL7/w==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-metrics-otlp-grpc@0.57.1': - resolution: {integrity: sha512-8B7k5q4AUldbfvubcHApg1XQaio/cO/VUWsM5PSaRP2fsjGNwbn2ih04J3gLD+AmgslvyuDcA2SZiDXEKwAxtQ==} - engines: {node: '>=14'} + '@opentelemetry/exporter-metrics-otlp-http@0.212.0': + resolution: {integrity: sha512-8hgBw3aTTRpSTkU4b9MLf/2YVLnfWp+hfnLq/1Fa2cky+vx6HqTodo+Zv1GTIrAKMOOwgysOjufy0gTxngqeBg==} + engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 @@ -2970,12 +2826,6 @@ packages: peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-metrics-otlp-http@0.57.1': - resolution: {integrity: sha512-jpKYVZY7fdwTdy+eAy/Mp9DZMaQpj7caMzlo3QqQDSJx5FZEY6zWzgcKvDvF6h+gdHE7LgUjaPOvJVUs354jJg==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-metrics-otlp-proto@0.213.0': resolution: {integrity: sha512-geHF+zZaDb0/WRkJTxR8o8dG4fCWT/Wq7HBdNZCxwH5mxhwRi/5f37IDYH7nvU+dwU6IeY4Pg8TPI435JCiNkg==} engines: {node: ^18.19.0 || >=20.6.0} @@ -3433,12 +3283,6 @@ packages: peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-exporter-base@0.57.1': - resolution: {integrity: sha512-GNBJAEYfeiYJQ3O2dvXgiNZ/qjWrBxSb1L1s7iV/jKBRGMN3Nv+miTk2SLeEobF5E5ZK4rVcHKlBZ71bPVIv/g==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-grpc-exporter-base@0.212.0': resolution: {integrity: sha512-YidOSlzpsun9uw0iyIWrQp6HxpMtBlECE3tiHGAsnpEqJWbAUWcMnIffvIuvTtTQ1OyRtwwaE79dWSQ8+eiB7g==} engines: {node: ^18.19.0 || >=20.6.0} @@ -3451,12 +3295,6 @@ packages: peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-grpc-exporter-base@0.57.1': - resolution: {integrity: sha512-wWflmkDhH/3wf6yEqPmzmqA6r+A8+LQABfIVZC0jDGtWVJj6eCWcGHU41UxupMbbsgjZRLYtWDilaCHOjmR7gg==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-transformer@0.208.0': resolution: {integrity: sha512-DCFPY8C6lAQHUNkzcNT9R+qYExvsk6C5Bto2pbNxgicpcSWbe2WHShLxkOxIdNcBiYPdVHv/e7vH7K6TI+C+fQ==} engines: {node: ^18.19.0 || >=20.6.0} @@ -3475,12 +3313,6 @@ packages: peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-transformer@0.57.1': - resolution: {integrity: sha512-EX67y+ukNNfFrOLyjYGw8AMy0JPIlEX1dW60SGUNZWW2hSQyyolX7EqFuHP5LtXLjJHNfzx5SMBVQ3owaQCNDw==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': ^1.3.0 - '@opentelemetry/propagator-b3@2.6.0': resolution: {integrity: sha512-SguK4jMmRvQ0c0dxAMl6K+Eu1+01X0OP7RLiIuHFjOS8hlB23ZYNnhnbAdSQEh5xVXQmH0OAS0TnmVI+6vB2Kg==} engines: {node: ^18.19.0 || >=20.6.0} @@ -3527,12 +3359,6 @@ packages: peerDependencies: '@opentelemetry/api': ^1.0.0 - '@opentelemetry/resources@1.30.1': - resolution: {integrity: sha512-5UxZqiAgLYGFjS4s9qm5mBVo433u+dSPUFWVWXmLAD4wB65oMCoXaJP1KJa9DIYYMeHu3z4BZcStG3LC593cWA==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/resources@2.2.0': resolution: {integrity: sha512-1pNQf/JazQTMA0BiO5NINUzH0cbLbbl7mntLa4aJNmCCXSj0q03T5ZXXL0zw4G55TjdL9Tz32cznGClf+8zr5A==} engines: {node: ^18.19.0 || >=20.6.0} @@ -3569,18 +3395,6 @@ packages: peerDependencies: '@opentelemetry/api': '>=1.4.0 <1.10.0' - '@opentelemetry/sdk-logs@0.57.1': - resolution: {integrity: sha512-jGdObb/BGWu6Peo3cL3skx/Rl1Ak/wDDO3vpPrrThGbqE7isvkCsX6uE+OAt8Ayjm9YC8UGkohWbLR09JmM0FA==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': '>=1.4.0 <1.10.0' - - '@opentelemetry/sdk-metrics@1.30.1': - resolution: {integrity: sha512-q9zcZ0Okl8jRgmy7eNW3Ku1XSgg3sDLa5evHZpCwjspw7E8Is4K/haRPDJrBcX3YSn/Y7gUvFnByNYEKQNbNog==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': '>=1.3.0 <1.10.0' - '@opentelemetry/sdk-metrics@2.2.0': resolution: {integrity: sha512-G5KYP6+VJMZzpGipQw7Giif48h6SGQ2PFKEYCybeXJsOCB4fp8azqMAAzE5lnnHK3ZVwYQrgmFbsUJO/zOnwGw==} engines: {node: ^18.19.0 || >=20.6.0} @@ -3605,12 +3419,6 @@ packages: peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' - '@opentelemetry/sdk-trace-base@1.30.1': - resolution: {integrity: sha512-jVPgBbH1gCy2Lb7X0AVQ8XAfgg0pJ4nvl8/IiQA6nxOsPvS+0zMJaFSs2ltXe0J6C8dqjcnpyqINDJmU30+uOg==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/sdk-trace-base@2.2.0': resolution: {integrity: sha512-xWQgL0Bmctsalg6PaXExmzdedSp3gyKV8mQBwK/j9VGdCDu2fmXIb2gAehBKbkXCpJ4HPkgv3QfoJWRT4dHWbw==} engines: {node: ^18.19.0 || >=20.6.0} @@ -3635,14 +3443,6 @@ packages: peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/semantic-conventions@1.28.0': - resolution: {integrity: sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==} - engines: {node: '>=14'} - - '@opentelemetry/semantic-conventions@1.29.0': - resolution: {integrity: sha512-KZ1JsXcP2pqunfsJBNk+py6AJ5R6ZJ3yvM5Lhhf93rHPHvdDzgfMYPS4F7GNO3j/MVDCtfbttrkcpu7sl0Wu/Q==} - engines: {node: '>=14'} - '@opentelemetry/semantic-conventions@1.40.0': resolution: {integrity: sha512-cifvXDhcqMwwTlTK04GBNeIe7yyo28Mfby85QXFe1Yk8nmi36Ab/5UQwptOx84SsoGNRg+EVSjwzfSZMy6pmlw==} engines: {node: '>=14'} @@ -3696,14 +3496,14 @@ packages: engines: {node: '>=18'} hasBin: true - '@posthog/core@1.23.2': - resolution: {integrity: sha512-zTDdda9NuSHrnwSOfFMxX/pyXiycF4jtU1kTr8DL61dHhV+7LF6XF1ndRZZTuaGGbfbb/GJYkEsjEX9SXfNZeQ==} - '@posthog/core@1.24.4': resolution: {integrity: sha512-S+TolwBHSSJz7WWtgaELQWQqXviSm3uf1e+qorWUts0bZcgPwWzhnmhCUZAhvn0NVpTQHDJ3epv+hHbPLl5dHg==} - '@posthog/types@1.360.0': - resolution: {integrity: sha512-roypbiJ49V3jWlV/lzhXGf0cKLLRj69L4H4ZHW6YsITHlnjQ12cgdPhPS88Bb9nW9xZTVSGWWDjfNGsdgAxsNg==} + '@posthog/core@1.25.3': + resolution: {integrity: sha512-yE0T2NUwRMsfS/fSh7lK7/mt4JXRDVmTTwq/vLanDVzH2Rw7C9RVlMw7YePlNxRHvW8ef3PrZ0X9zwWa4MRRDg==} + + '@posthog/types@1.369.5': + resolution: {integrity: sha512-yajos1l/pugBrp3++MDc/k2Dz6vExxJVERiR6felxlWjSN+HOjkJfWsGqDw5PsG0fFQ43n3IR2B0OHKKApX/Kw==} '@preact/preset-vite@2.10.3': resolution: {integrity: sha512-1SiS+vFItpkNdBs7q585PSAIln0wBeBdcpJYbzPs1qipsb/FssnkUioNXuRsb8ZnU8YEQHr+3v8+/mzWSnTQmg==} @@ -4428,9 +4228,6 @@ packages: peerDependencies: react: ^18.0 || ^19.0 || ^19.0.0-rc - '@react-email/preview-server@5.2.10': - resolution: {integrity: sha512-cYi21KF+Z/HGXT8RpkQMNFFubBafxyoB9Hn/wrslfDNtdoews2MdsDo6XXKkZvDTRG9SxQN3HGk4v4aoQZc20g==} - '@react-email/preview@0.0.14': resolution: {integrity: sha512-aYK8q0IPkBXyMsbpMXgxazwHxYJxTrXrV95GFuu2HbEiIToMwSyUgb8HDFYwPqqfV03/jbwqlsXmFxsOd+VNaw==} engines: {node: '>=20.0.0'} @@ -4511,8 +4308,8 @@ packages: peerDependencies: '@redis/client': ^5.11.0 - '@redis/client@1.6.0': - resolution: {integrity: sha512-aR0uffYI700OEEH4gYnitAnv3vzVGXCFvYfdpu/CJKvk4pHfLPEy/JSZyrpQ+15WhXe1yJRXLtfQ84s4mEXnPg==} + '@redis/client@1.6.1': + resolution: {integrity: sha512-/KCsg3xSlR+nCK8/8ZYSknYxvXHwubJrU82F3Lm1Fp6789VQ0/3RJKfsmRXjqfaTA++23CvC3hqmqe/2GEt6Kw==} engines: {node: '>=14'} '@redis/client@5.11.0': @@ -4667,7 +4464,7 @@ packages: resolution: {integrity: sha512-+tNWdlWKbpB3WgBN7ijjYkq9X5uhjmcvyjEght4NmH5fAU++zfQzAJ6wumLS+dNcvwEZhKx2Z+skY8m7v0wGSA==} engines: {node: '>=16.0.0 || 14 >= 14.17'} peerDependencies: - rollup: 4.59.0 + rollup: ^2.68.0||^3.0.0||^4.0.0 peerDependenciesMeta: rollup: optional: true @@ -4680,7 +4477,7 @@ packages: resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: 4.59.0 + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 peerDependenciesMeta: rollup: optional: true @@ -4829,8 +4626,8 @@ packages: '@rushstack/eslint-patch@1.15.0': resolution: {integrity: sha512-ojSshQPKwVvSMR8yT2L/QtUkV5SXi/IfDiJ4/8d6UbTPjiHVmxZzUAzGD8Tzks1b9+qQkZa0isUOvYObedITaw==} - '@rushstack/node-core-library@5.20.3': - resolution: {integrity: sha512-95JgEPq2k7tHxhF9/OJnnyHDXfC9cLhhta0An/6MlkDsX2A6dTzDrTUG18vx4vjc280V0fi0xDH9iQczpSuWsw==} + '@rushstack/node-core-library@5.23.1': + resolution: {integrity: sha512-wlKmIKIYCKuCASbITvOxLZXepPbwXvrv7S6ig6XNWFchSyhL/E2txmVXspHY49Wu2dzf7nI27a2k/yV5BA3EiA==} peerDependencies: '@types/node': '*' peerDependenciesMeta: @@ -4845,19 +4642,19 @@ packages: '@types/node': optional: true - '@rushstack/rig-package@0.7.2': - resolution: {integrity: sha512-9XbFWuqMYcHUso4mnETfhGVUSaADBRj6HUAAEYk50nMPn8WRICmBuCphycQGNB3duIR6EEZX3Xj3SYc2XiP+9A==} + '@rushstack/rig-package@0.7.3': + resolution: {integrity: sha512-aAA518n6wxxjCfnTAOjQnm7ngNE0FVHxHAw2pxKlIhxrMn0XQjGcXKF0oKWpjBgJOmsaJpVob/v+zr3zxgPWuA==} - '@rushstack/terminal@0.22.3': - resolution: {integrity: sha512-gHC9pIMrUPzAbBiI4VZMU7Q+rsCzb8hJl36lFIulIzoceKotyKL3Rd76AZ2CryCTKEg+0bnTj406HE5YY5OQvw==} + '@rushstack/terminal@0.24.0': + resolution: {integrity: sha512-8ZQS4MMaGsv27EXCBiH7WMPkRZrffeDoIevs6z9TM5dzqiY6+Hn4evfK/G+gvgBTjfvfkHIZPQQmalmI2sM4TQ==} peerDependencies: '@types/node': '*' peerDependenciesMeta: '@types/node': optional: true - '@rushstack/ts-command-line@5.3.3': - resolution: {integrity: sha512-c+ltdcvC7ym+10lhwR/vWiOhsrm/bP3By2VsFcs5qTKv+6tTmxgbVrtJ5NdNjANiV5TcmOZgUN+5KYQ4llsvEw==} + '@rushstack/ts-command-line@5.3.9': + resolution: {integrity: sha512-GIHqU+sRGQ3LGWAZu1O+9Yh++qwtyNIIGuNbcWHJjBTm2qRez0cwINUHZ+pQLR8UuzZDcMajrDaNbUYoaL/XtQ==} '@selderee/plugin-htmlparser2@0.11.0': resolution: {integrity: sha512-P33hHGdldxGabLFjPPpaTxVolMrzrcegejx+0GxjrIb9Zv48D8yAIA/QTDR2dFl7Uz7urX8aX6+5bCZslr+gWQ==} @@ -5017,10 +4814,6 @@ packages: resolution: {integrity: sha512-xolrFw6b+2iYGl6EcOL7IJY71vvyZ0DJ3mcKtpykqPe2uscwtzDZJa1uVQXyP7w9Dd+kGwYnPbMsJrGISKiY/Q==} engines: {node: '>=18.0.0'} - '@smithy/abort-controller@4.2.8': - resolution: {integrity: sha512-peuVfkYHAmS5ybKxWcfraK7WBBP0J+rkfUcbHJJKQ4ir3UAUNQI+Y4Vt/PqSzGqgloJ5O1dk7+WzNL8wcCSXbw==} - engines: {node: '>=18.0.0'} - '@smithy/chunked-blob-reader-native@4.2.3': resolution: {integrity: sha512-jA5k5Udn7Y5717L86h4EIv06wIr3xn8GM1qHRi/Nf31annXcXHJjBKvgztnbn2TxH3xWrPBfgwHsOwZf0UmQWw==} engines: {node: '>=18.0.0'} @@ -5041,6 +4834,10 @@ packages: resolution: {integrity: sha512-o9VycsYNtgC+Dy3I0yrwCqv9CWicDnke0L7EVOrZtJpjb2t0EjaEofmMrYc0T1Kn3yk32zm6cspxF9u9Bj7e5w==} engines: {node: '>=18.0.0'} + '@smithy/core@3.23.16': + resolution: {integrity: sha512-JStomOrINQA1VqNEopLsgcdgwd42au7mykKqVr30XFw89wLt9sDxJDi4djVPRwQmmzyTGy/uOvTc2ultMpFi1w==} + engines: {node: '>=18.0.0'} + '@smithy/core@3.23.9': resolution: {integrity: sha512-1Vcut4LEL9HZsdpI0vFiRYIsaoPwZLjAxnVQDUMQK8beMS+EYPLDQCXtbzfxmM5GzSgjfe2Q9M7WaXwIMQllyQ==} engines: {node: '>=18.0.0'} @@ -5081,8 +4878,8 @@ packages: resolution: {integrity: sha512-T4jFU5N/yiIfrtrsb9uOQn7RdELdM/7HbyLNr6uO/mpkj1ctiVs7CihVr51w4LyQlXWDpXFn4BElf1WmQvZu/A==} engines: {node: '>=18.0.0'} - '@smithy/fetch-http-handler@5.3.9': - resolution: {integrity: sha512-I4UhmcTYXBrct03rwzQX1Y/iqQlzVQaPxWjCjula++5EmWq9YGBrx6bbGqluGc1f0XEfhSkiY4jhLgbsJUMKRA==} + '@smithy/fetch-http-handler@5.3.17': + resolution: {integrity: sha512-bXOvQzaSm6MnmLaWA1elgfQcAtN4UP3vXqV97bHuoOrHQOJiLT3ds6o9eo5bqd0TJfRFpzdGnDQdW3FACiAVdw==} engines: {node: '>=18.0.0'} '@smithy/hash-blob-browser@4.2.12': @@ -5097,10 +4894,6 @@ packages: resolution: {integrity: sha512-QhBYbGrbxTkZ43QoTPrK72DoYviDeg6YKDrHTMJbbC+A0sml3kSjzFtXP7BtbyJnXojLfTQldGdUR0RGD8dA3w==} engines: {node: '>=18.0.0'} - '@smithy/hash-node@4.2.8': - resolution: {integrity: sha512-7ZIlPbmaDGxVoxErDZnuFG18WekhbA/g2/i97wGj+wUBeS6pcUeAym8u4BXh/75RXWhgIJhyC11hBzig6MljwA==} - engines: {node: '>=18.0.0'} - '@smithy/hash-stream-node@4.2.11': resolution: {integrity: sha512-hQsTjwPCRY8w9GK07w1RqJi3e+myh0UaOWBBhZ1UMSDgofH/Q1fEYzU1teaX6HkpX/eWDdm7tAGR0jBPlz9QEQ==} engines: {node: '>=18.0.0'} @@ -5113,10 +4906,6 @@ packages: resolution: {integrity: sha512-/4F1zb7Z8LOu1PalTdESFHR0RbPwHd3FcaG1sI3UEIriQTWakysgJr65lc1jj6QY5ye7aFsisajotH6UhWfm/g==} engines: {node: '>=18.0.0'} - '@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'} @@ -5137,14 +4926,6 @@ packages: resolution: {integrity: sha512-YE58Yz+cvFInWI/wOTrB+DbvUVz/pLn5mC5MvOV4fdRUc6qGwygyngcucRQjAhiCEbmfLOXX0gntSIcgMvAjmA==} engines: {node: '>=18.0.0'} - '@smithy/middleware-content-length@4.2.8': - resolution: {integrity: sha512-RO0jeoaYAB1qBRhfVyq0pMgBoUK34YEJxVxyjOWYZiOKOq2yMZ4MnVXMZCUDenpozHue207+9P5ilTV1zeda0A==} - engines: {node: '>=18.0.0'} - - '@smithy/middleware-endpoint@4.4.13': - resolution: {integrity: sha512-x6vn0PjYmGdNuKh/juUJJewZh7MoQ46jYaJ2mvekF4EesMuFfrl4LaW/k97Zjf8PTCPQmPgMvwewg7eNoH9n5w==} - engines: {node: '>=18.0.0'} - '@smithy/middleware-endpoint@4.4.23': resolution: {integrity: sha512-UEFIejZy54T1EJn2aWJ45voB7RP2T+IRzUqocIdM6GFFa5ClZncakYJfcYnoXt3UsQrZZ9ZRauGm77l9UCbBLw==} engines: {node: '>=18.0.0'} @@ -5153,8 +4934,8 @@ packages: resolution: {integrity: sha512-T3TFfUgXQlpcg+UdzcAISdZpj4Z+XECZ/cefgA6wLBd6V4lRi0svN2hBouN/be9dXQ31X4sLWz3fAQDf+nt6BA==} engines: {node: '>=18.0.0'} - '@smithy/middleware-retry@4.4.30': - resolution: {integrity: sha512-CBGyFvN0f8hlnqKH/jckRDz78Snrp345+PVk8Ux7pnkUCW97Iinse59lY78hBt04h1GZ6hjBN94BRwZy1xC8Bg==} + '@smithy/middleware-endpoint@4.4.31': + resolution: {integrity: sha512-KJPdCIN2kOE2aGmqZd7eUTr4WQwOGgtLWgUkswGJggs7rBcQYQjcZMEDa3C0DwbOiXS9L8/wDoQHkfxBYLfiLw==} engines: {node: '>=18.0.0'} '@smithy/middleware-retry@4.4.40': @@ -5173,8 +4954,8 @@ packages: resolution: {integrity: sha512-ExYhcltZSli0pgAKOpQQe1DLFBLryeZ22605y/YS+mQpdNWekum9Ujb/jMKfJKgjtz1AZldtwA/wCYuKJgjjlg==} engines: {node: '>=18.0.0'} - '@smithy/middleware-serde@4.2.9': - resolution: {integrity: sha512-eMNiej0u/snzDvlqRGSN3Vl0ESn3838+nKyVfF2FKNXFbi4SERYT6PR392D39iczngbqqGG0Jl1DlCnp7tBbXQ==} + '@smithy/middleware-serde@4.2.19': + resolution: {integrity: sha512-Q6y+W9h3iYVMCKWDoVge+OC1LKFqbEKaq8SIWG2X2bWJRpd/6dDLyICcNLT6PbjH3Rr6bmg/SeDB25XFOFfeEw==} engines: {node: '>=18.0.0'} '@smithy/middleware-stack@4.2.11': @@ -5185,8 +4966,8 @@ packages: resolution: {integrity: sha512-kruC5gRHwsCOuyCd4ouQxYjgRAym2uDlCvQ5acuMtRrcdfg7mFBg6blaxcJ09STpt3ziEkis6bhg1uwrWU7txw==} engines: {node: '>=18.0.0'} - '@smithy/middleware-stack@4.2.8': - resolution: {integrity: sha512-w6LCfOviTYQjBctOKSwy6A8FIkQy7ICvglrZFl6Bw4FmcQ1Z420fUtIhxaUZZshRe0VCq4kvDiPiXrPZAe8oRA==} + '@smithy/middleware-stack@4.2.14': + resolution: {integrity: sha512-2dvkUKLuFdKsCRmOE4Mn63co0Djtsm+JMh0bYZQupN1pJwMeE8FmQmRLLzzEMN0dnNi7CDCYYH8F0EVwWiPBeA==} engines: {node: '>=18.0.0'} '@smithy/node-config-provider@4.3.11': @@ -5197,18 +4978,22 @@ packages: resolution: {integrity: sha512-tr2oKX2xMcO+rBOjobSwVAkV05SIfUKz8iI53rzxEmgW3GOOPOv0UioSDk+J8OpRQnpnhsO3Af6IEBabQBVmiw==} engines: {node: '>=18.0.0'} - '@smithy/node-http-handler@4.4.14': - resolution: {integrity: sha512-DamSqaU8nuk0xTJDrYnRzZndHwwRnyj/n/+RqGGCcBKB4qrQem0mSDiWdupaNWdwxzyMU91qxDmHOCazfhtO3A==} + '@smithy/node-config-provider@4.3.14': + resolution: {integrity: sha512-S+gFjyo/weSVL0P1b9Ts8C/CwIfNCgUPikk3sl6QVsfE/uUuO+QsF+NsE/JkpvWqqyz1wg7HFdiaZuj5CoBMRg==} engines: {node: '>=18.0.0'} - '@smithy/node-http-handler@4.4.9': - resolution: {integrity: sha512-KX5Wml5mF+luxm1szW4QDz32e3NObgJ4Fyw+irhph4I/2geXwUy4jkIMUs5ZPGflRBeR6BUkC2wqIab4Llgm3w==} + '@smithy/node-http-handler@4.4.14': + resolution: {integrity: sha512-DamSqaU8nuk0xTJDrYnRzZndHwwRnyj/n/+RqGGCcBKB4qrQem0mSDiWdupaNWdwxzyMU91qxDmHOCazfhtO3A==} engines: {node: '>=18.0.0'} '@smithy/node-http-handler@4.5.0': resolution: {integrity: sha512-Rnq9vQWiR1+/I6NZZMNzJHV6pZYyEHt2ZnuV3MG8z2NNenC4i/8Kzttz7CjZiHSmsN5frhXhg17z3Zqjjhmz1A==} engines: {node: '>=18.0.0'} + '@smithy/node-http-handler@4.6.0': + resolution: {integrity: sha512-P734cAoTFtuGfWa/R3jgBnGlURt2w9bYEBwQNMKf58sRM9RShirB2mKwLsVP+jlG/wxpCu8abv8NxdUts8tdLA==} + engines: {node: '>=18.0.0'} + '@smithy/property-provider@4.2.11': resolution: {integrity: sha512-14T1V64o6/ndyrnl1ze1ZhyLzIeYNN47oF/QU6P5m82AEtyOkMJTb0gO1dPubYjyyKuPD6OSVMPDKe+zioOnCg==} engines: {node: '>=18.0.0'} @@ -5217,6 +5002,10 @@ packages: resolution: {integrity: sha512-jqve46eYU1v7pZ5BM+fmkbq3DerkSluPr5EhvOcHxygxzD05ByDRppRwRPPpFrsFo5yDtCYLKu+kreHKVrvc7A==} engines: {node: '>=18.0.0'} + '@smithy/property-provider@4.2.14': + resolution: {integrity: sha512-WuM31CgfsnQ/10i7NYr0PyxqknD72Y5uMfUMVSniPjbEPceiTErb4eIqJQ+pdxNEAUEWrewrGjIRjVbVHsxZiQ==} + engines: {node: '>=18.0.0'} + '@smithy/protocol-http@5.3.11': resolution: {integrity: sha512-hI+barOVDJBkNt4y0L2mu3Ugc0w7+BpJ2CZuLwXtSltGAAwCb3IvnalGlbDV/UCS6a9ZuT3+exd1WxNdLb5IlQ==} engines: {node: '>=18.0.0'} @@ -5225,8 +5014,8 @@ packages: resolution: {integrity: sha512-fit0GZK9I1xoRlR4jXmbLhoN0OdEpa96ul8M65XdmXnxXkuMxM0Y8HDT0Fh0Xb4I85MBvBClOzgSrV1X2s1Hxw==} engines: {node: '>=18.0.0'} - '@smithy/protocol-http@5.3.8': - resolution: {integrity: sha512-QNINVDhxpZ5QnP3aviNHQFlRogQZDfYlCkQT+7tJnErPQbDhysondEjhikuANxgMsZrkGeiAxXy4jguEGsDrWQ==} + '@smithy/protocol-http@5.3.14': + resolution: {integrity: sha512-dN5F8kHx8RNU0r+pCwNmFZyz6ChjMkzShy/zup6MtkRmmix4vZzJdW+di7x//b1LiynIev88FM18ie+wwPcQtQ==} engines: {node: '>=18.0.0'} '@smithy/querystring-builder@4.2.11': @@ -5237,8 +5026,8 @@ packages: resolution: {integrity: sha512-6wTZjGABQufekycfDGMEB84BgtdOE/rCVTov+EDXQ8NHKTUNIp/j27IliwP7tjIU9LR+sSzyGBOXjeEtVgzCHg==} engines: {node: '>=18.0.0'} - '@smithy/querystring-builder@4.2.8': - resolution: {integrity: sha512-Xr83r31+DrE8CP3MqPgMJl+pQlLLmOfiEUnoyAlGzzJIrEsbKsPy1hqH0qySaQm4oWrCBlUqRt+idEgunKB+iw==} + '@smithy/querystring-builder@4.2.14': + resolution: {integrity: sha512-XYA5Z0IqTeF+5XDdh4BBmSA0HvbgVZIyv4cmOoUheDNR57K1HgBp9ukUMx3Cr3XpDHHpLBnexPE3LAtDsZkj2A==} engines: {node: '>=18.0.0'} '@smithy/querystring-parser@4.2.11': @@ -5249,8 +5038,8 @@ packages: resolution: {integrity: sha512-P2OdvrgiAKpkPNKlKUtWbNZKB1XjPxM086NeVhK+W+wI46pIKdWBe5QyXvhUm3MEcyS/rkLvY8rZzyUdmyDZBw==} engines: {node: '>=18.0.0'} - '@smithy/querystring-parser@4.2.8': - resolution: {integrity: sha512-vUurovluVy50CUlazOiXkPq40KGvGWSdmusa3130MwrR1UNnNgKAlj58wlOe61XSHRpUfIIh6cE0zZ8mzKaDPA==} + '@smithy/querystring-parser@4.2.14': + resolution: {integrity: sha512-hr+YyqBD23GVvRxGGrcc/oOeNlK3PzT5Fu4dzrDXxzS1LpFiuL2PQQqKPs87M79aW7ziMs+nvB3qdw77SqE7Lw==} engines: {node: '>=18.0.0'} '@smithy/service-error-classification@4.2.11': @@ -5261,8 +5050,8 @@ packages: resolution: {integrity: sha512-LlP29oSQN0Tw0b6D0Xo6BIikBswuIiGYbRACy5ujw/JgWSzTdYj46U83ssf6Ux0GyNJVivs2uReU8pt7Eu9okQ==} engines: {node: '>=18.0.0'} - '@smithy/service-error-classification@4.2.8': - resolution: {integrity: sha512-mZ5xddodpJhEt3RkCjbmUQuXUOaPNTkbMGR0bcS8FE0bJDLMZlhmpgrvPNCYglVw5rsYTpSnv19womw9WWXKQQ==} + '@smithy/service-error-classification@4.3.0': + resolution: {integrity: sha512-9jKsBYQRPR0xBLgc2415RsA5PIcP2sis4oBdN9s0D13cg1B1284mNTjx9Yc+BEERXzuPm5ObktI96OxsKh8E9A==} engines: {node: '>=18.0.0'} '@smithy/shared-ini-file-loader@4.4.6': @@ -5273,6 +5062,10 @@ packages: resolution: {integrity: sha512-HrOKWsUb+otTeo1HxVWeEb99t5ER1XrBi/xka2Wv6NVmTbuCUC1dvlrksdvxFtODLBjsC+PHK+fuy2x/7Ynyiw==} engines: {node: '>=18.0.0'} + '@smithy/shared-ini-file-loader@4.4.9': + resolution: {integrity: sha512-495/V2I15SHgedSJoDPD23JuSfKAp726ZI1V0wtjB07Wh7q/0tri/0e0DLefZCHgxZonrGKt/OCTpAtP1wE1kQ==} + engines: {node: '>=18.0.0'} + '@smithy/signature-v4@5.3.11': resolution: {integrity: sha512-V1L6N9aKOBAN4wEHLyqjLBnAz13mtILU0SeDrjOaIZEeN6IFa6DxwRt1NNpOdmSpQUfkBj0qeD3m6P77uzMhgQ==} engines: {node: '>=18.0.0'} @@ -5281,8 +5074,12 @@ packages: resolution: {integrity: sha512-B/FBwO3MVOL00DaRSXfXfa/TRXRheagt/q5A2NM13u7q+sHS59EOVGQNfG7DkmVtdQm5m3vOosoKAXSqn/OEgw==} engines: {node: '>=18.0.0'} - '@smithy/smithy-client@4.11.2': - resolution: {integrity: sha512-SCkGmFak/xC1n7hKRsUr6wOnBTJ3L22Qd4e8H1fQIuKTAjntwgU8lrdMe7uHdiT2mJAOWA/60qaW9tiMu69n1A==} + '@smithy/signature-v4@5.3.14': + resolution: {integrity: sha512-1D9Y/nmlVjCeSivCbhZ7hgEpmHyY1h0GvpSZt3l0xcD9JjmjVC1CHOozS6+Gh+/ldMH8JuJ6cujObQqfayAVFA==} + engines: {node: '>=18.0.0'} + + '@smithy/smithy-client@4.12.12': + resolution: {integrity: sha512-daO7SJn4eM6ArbmrEs+/BTbH7af8AEbSL3OMQdcRvvn8tuUcR5rU2n6DgxIV53aXMS42uwK8NgKKCh5XgqYOPQ==} engines: {node: '>=18.0.0'} '@smithy/smithy-client@4.12.3': @@ -5301,6 +5098,10 @@ packages: resolution: {integrity: sha512-787F3yzE2UiJIQ+wYW1CVg2odHjmaWLGksnKQHUrK/lYZSEcy1msuLVvxaR/sI2/aDe9U+TBuLsXnr3vod1g0g==} engines: {node: '>=18.0.0'} + '@smithy/types@4.14.1': + resolution: {integrity: sha512-59b5HtSVrVR/eYNei3BUj3DCPKD/G7EtDDe7OEJE7i7FtQFugYo6MxbotS8mVJkLNVf8gYaAlEBwwtJ9HzhWSg==} + engines: {node: '>=18.0.0'} + '@smithy/url-parser@4.2.11': resolution: {integrity: sha512-oTAGGHo8ZYc5VZsBREzuf5lf2pAurJQsccMusVZ85wDkX66ojEc/XauiGjzCj50A61ObFTPe6d7Pyt6UBYaing==} engines: {node: '>=18.0.0'} @@ -5309,30 +5110,18 @@ packages: resolution: {integrity: sha512-wOPKPEpso+doCZGIlr+e1lVI6+9VAKfL4kZWFgzVgGWY2hZxshNKod4l2LXS3PRC9otH/JRSjtEHqQ/7eLciRA==} engines: {node: '>=18.0.0'} - '@smithy/url-parser@4.2.8': - resolution: {integrity: sha512-NQho9U68TGMEU639YkXnVMV3GEFFULmmaWdlu1E9qzyIePOHsoSnagTGSDv1Zi8DCNN6btxOSdgmy5E/hsZwhA==} - engines: {node: '>=18.0.0'} - - '@smithy/util-base64@4.3.0': - resolution: {integrity: sha512-GkXZ59JfyxsIwNTWFnjmFEI8kZpRNIBfxKjv09+nkAWPt/4aGaEWMM04m4sxgNVWkbt2MdSvE3KF/PfX4nFedQ==} + '@smithy/url-parser@4.2.14': + resolution: {integrity: sha512-p06BiBigJ8bTA3MgnOfCtDUWnAMY0YfedO/GRpmc7p+wg3KW8vbXy1xwSu5ASy0wV7rRYtlfZOIKH4XqfhjSQQ==} engines: {node: '>=18.0.0'} '@smithy/util-base64@4.3.2': resolution: {integrity: sha512-XRH6b0H/5A3SgblmMa5ErXQ2XKhfbQB+Fm/oyLZ2O2kCUrwgg55bU0RekmzAhuwOjA9qdN5VU2BprOvGGUkOOQ==} engines: {node: '>=18.0.0'} - '@smithy/util-body-length-browser@4.2.0': - resolution: {integrity: sha512-Fkoh/I76szMKJnBXWPdFkQJl2r9SjPt3cMzLdOB6eJ4Pnpas8hVoWPYemX/peO0yrrvldgCUVJqOAjUrOLjbxg==} - engines: {node: '>=18.0.0'} - '@smithy/util-body-length-browser@4.2.2': resolution: {integrity: sha512-JKCrLNOup3OOgmzeaKQwi4ZCTWlYR5H4Gm1r2uTMVBXoemo1UEghk5vtMi1xSu2ymgKVGW631e2fp9/R610ZjQ==} engines: {node: '>=18.0.0'} - '@smithy/util-body-length-node@4.2.1': - resolution: {integrity: sha512-h53dz/pISVrVrfxV1iqXlx5pRg3V2YWFcSQyPyXZRrZoZj4R4DeWRDo1a7dd3CPTcFi3kE+98tuNyD2axyZReA==} - engines: {node: '>=18.0.0'} - '@smithy/util-body-length-node@4.2.3': resolution: {integrity: sha512-ZkJGvqBzMHVHE7r/hcuCxlTY8pQr1kMtdsVPs7ex4mMU+EAbcXppfo5NmyxMYi2XU49eqaz56j2gsk4dHHPG/g==} engines: {node: '>=18.0.0'} @@ -5341,10 +5130,6 @@ packages: resolution: {integrity: sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==} engines: {node: '>=14.0.0'} - '@smithy/util-buffer-from@4.2.0': - resolution: {integrity: sha512-kAY9hTKulTNevM2nlRtxAG2FQ3B2OR6QIrPY3zE5LqJy1oxzmgBGsHLWTcNhWXKchgA0WHW+mZkQrng/pgcCew==} - engines: {node: '>=18.0.0'} - '@smithy/util-buffer-from@4.2.2': resolution: {integrity: sha512-FDXD7cvUoFWwN6vtQfEta540Y/YBe5JneK3SoZg9bThSoOAC/eGeYEua6RkBgKjGa/sz6Y+DuBZj3+YEY21y4Q==} engines: {node: '>=18.0.0'} @@ -5353,10 +5138,6 @@ packages: resolution: {integrity: sha512-dWU03V3XUprJwaUIFVv4iOnS1FC9HnMHDfUrlNDSh4315v0cWyaIErP8KiqGVbf5z+JupoVpNM7ZB3jFiTejvQ==} engines: {node: '>=18.0.0'} - '@smithy/util-defaults-mode-browser@4.3.29': - resolution: {integrity: sha512-nIGy3DNRmOjaYaaKcQDzmWsro9uxlaqUOhZDHQed9MW/GmkBZPtnU70Pu1+GT9IBmUXwRdDuiyaeiy9Xtpn3+Q==} - engines: {node: '>=18.0.0'} - '@smithy/util-defaults-mode-browser@4.3.39': resolution: {integrity: sha512-ui7/Ho/+VHqS7Km2wBw4/Ab4RktoiSshgcgpJzC4keFPs6tLJS4IQwbeahxQS3E/w98uq6E1mirCH/id9xIXeQ==} engines: {node: '>=18.0.0'} @@ -5365,10 +5146,6 @@ packages: resolution: {integrity: sha512-Qd/0wCKMaXxev/z00TvNzGCH2jlKKKxXP1aDxB6oKwSQthe3Og2dMhSayGCnsma1bK/kQX1+X7SMP99t6FgiiQ==} engines: {node: '>=18.0.0'} - '@smithy/util-defaults-mode-node@4.2.32': - resolution: {integrity: sha512-7dtFff6pu5fsjqrVve0YMhrnzJtccCWDacNKOkiZjJ++fmjGExmmSu341x+WU6Oc1IccL7lDuaUj7SfrHpWc5Q==} - engines: {node: '>=18.0.0'} - '@smithy/util-defaults-mode-node@4.2.42': resolution: {integrity: sha512-QDA84CWNe8Akpj15ofLO+1N3Rfg8qa2K5uX0y6HnOp4AnRYRgWrKx/xzbYNbVF9ZsyJUYOfcoaN3y93wA/QJ2A==} engines: {node: '>=18.0.0'} @@ -5377,10 +5154,6 @@ packages: resolution: {integrity: sha512-qSRbYp1EQ7th+sPFuVcVO05AE0QH635hycdEXlpzIahqHHf2Fyd/Zl+8v0XYMJ3cgDVPa0lkMefU7oNUjAP+DQ==} engines: {node: '>=18.0.0'} - '@smithy/util-endpoints@3.2.8': - resolution: {integrity: sha512-8JaVTn3pBDkhZgHQ8R0epwWt+BqPSLCjdjXXusK1onwJlRuN69fbvSK66aIKKO7SwVFM6x2J2ox5X8pOaWcUEw==} - engines: {node: '>=18.0.0'} - '@smithy/util-endpoints@3.3.2': resolution: {integrity: sha512-+4HFLpE5u29AbFlTdlKIT7jfOzZ8PDYZKTb3e+AgLz986OYwqTourQ5H+jg79/66DB69Un1+qKecLnkZdAsYcA==} engines: {node: '>=18.0.0'} @@ -5401,8 +5174,8 @@ packages: resolution: {integrity: sha512-Er805uFUOvgc0l8nv0e0su0VFISoxhJ/AwOn3gL2NWNY2LUEldP5WtVcRYSQBcjg0y9NfG8JYrCJaYDpupBHJQ==} engines: {node: '>=18.0.0'} - '@smithy/util-middleware@4.2.8': - resolution: {integrity: sha512-PMqfeJxLcNPMDgvPbbLl/2Vpin+luxqTGPpW3NAQVLbRrFRzTa4rNAASYeIGjRV9Ytuhzny39SpyU04EQreF+A==} + '@smithy/util-middleware@4.2.14': + resolution: {integrity: sha512-1Su2vj9RYNDEv/V+2E+jXkkwGsgR7dc4sfHn9Z7ruzQHJIEni9zzw5CauvRXlFJfmgcqYP8fWa0dkh2Q2YaQyw==} engines: {node: '>=18.0.0'} '@smithy/util-retry@4.2.11': @@ -5413,8 +5186,8 @@ packages: resolution: {integrity: sha512-1zopLDUEOwumjcHdJ1mwBHddubYF8GMQvstVCLC54Y46rqoHwlIU+8ZzUeaBcD+WCJHyDGSeZ2ml9YSe9aqcoQ==} engines: {node: '>=18.0.0'} - '@smithy/util-retry@4.2.8': - resolution: {integrity: sha512-CfJqwvoRY0kTGe5AkQokpURNCT1u/MkRzMTASWMPPo2hNSnKtF1D45dQl3DE2LKLr4m+PW9mCeBMJr5mCAVThg==} + '@smithy/util-retry@4.3.3': + resolution: {integrity: sha512-idjUvd4M9Jj6rXkhqw4H4reHoweuK4ZxYWyOrEp4N2rOF5VtaOlQGLDQJva/8WanNXk9ScQtsAb7o5UHGvFm4A==} engines: {node: '>=18.0.0'} '@smithy/util-stream@4.5.17': @@ -5425,6 +5198,10 @@ packages: resolution: {integrity: sha512-4yXLm5n/B5SRBR2p8cZ90Sbv4zL4NKsgxdzCzp/83cXw2KxLEumt5p+GAVyRNZgQOSrzXn9ARpO0lUe8XSlSDw==} engines: {node: '>=18.0.0'} + '@smithy/util-stream@4.5.24': + resolution: {integrity: sha512-na5vv2mBSDzXewLEEoWGI7LQQkfpmFEomBsmOpzLFjqGctm0iMwXY5lAwesY9pIaErkccW0qzEOUcYP+WKneXg==} + engines: {node: '>=18.0.0'} + '@smithy/util-uri-escape@4.2.2': resolution: {integrity: sha512-2kAStBlvq+lTXHyAZYfJRb/DfS3rsinLiwb+69SstC9Vb0s9vNWkRwpnj918Pfi85mzi42sOqdV72OLxWAISnw==} engines: {node: '>=18.0.0'} @@ -5441,8 +5218,8 @@ packages: resolution: {integrity: sha512-ek5hyDrzS6mBFsNCEX8LpM+EWSLq6b9FdmPRlkpXXhiJE6aIZehKT9clC6+nFpZAA+i/Yg0xlaPeWGNbf5rzQA==} engines: {node: '>=18.0.0'} - '@smithy/util-waiter@4.2.8': - resolution: {integrity: sha512-n+lahlMWk+aejGuax7DPWtqav8HYnWxQwR+LCG2BgCUmaGcTe9qZCFsmw8TMg9iG75HOwhrJCX9TCJRLH+Yzqg==} + '@smithy/util-waiter@4.2.16': + resolution: {integrity: sha512-GtclrKoZ3Lt7jPQ7aTIYKfjY92OgceScftVnkTsG8e1KV8rkvZgN+ny6YSRhd9hxB8rZtwVbmln7NTvE5O3GmQ==} engines: {node: '>=18.0.0'} '@smithy/uuid@1.1.2': @@ -5461,42 +5238,42 @@ packages: '@standard-schema/utils@0.3.0': resolution: {integrity: sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==} - '@storybook/addon-a11y@10.2.17': - resolution: {integrity: sha512-J0ogEc4/XFC+Ytz+X1we6TOKreEk/shgUs/mtxdsLa0xJ6bp2n2OQPSjNtQHH/nK4SRBSfHWPm8ztfcXTzeG9w==} + '@storybook/addon-a11y@10.3.5': + resolution: {integrity: sha512-5k6lpgfIeLxvNhE8v3wEzdiu73ONKjF4gmH1AHvfqYd8kIVzQJai0KCDxgvqNncXHQhIWkaf1fg6+9hKaYJyaw==} peerDependencies: - storybook: ^10.2.17 + storybook: ^10.3.5 - '@storybook/addon-docs@10.2.17': - resolution: {integrity: sha512-c414xi7rxlaHn92qWOxtEkcOMm0/+cvBui0gUsgiWOZOM8dHChGZ/RjMuf1pPDyOrSsybLsPjZhP0WthsMDkdQ==} + '@storybook/addon-docs@10.3.5': + resolution: {integrity: sha512-WuHbxia/o5TX4Rg/IFD0641K5qId/Nk0dxhmAUNoFs5L0+yfZUwh65XOBbzXqrkYmYmcVID4v7cgDRmzstQNkA==} peerDependencies: - storybook: ^10.2.17 + storybook: ^10.3.5 - '@storybook/addon-links@10.2.17': - resolution: {integrity: sha512-KY2usxhPpt9AAzD22uBEfdPj1NZyCNyaYXgKkr8r/UeCNt7E7OdVBLNA1QMYZZ5dtIWj9EtY8c55OPuBM7aUkQ==} + '@storybook/addon-links@10.3.5': + resolution: {integrity: sha512-Xe2wCGZ+hpZ0cDqAIBHk+kPc8nODNbu585ghd5bLrlYJMDVXoNM/fIlkrLgjIDVbfpgeJLUEg7vldJrn+FyOLw==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - storybook: ^10.2.17 + storybook: ^10.3.5 peerDependenciesMeta: react: optional: true - '@storybook/addon-onboarding@10.2.17': - resolution: {integrity: sha512-+WQC4RJlIFXF+ww2aNsq0pg8JaM5el29WQ9Hd2VZrB9LdjTqckuJI+5oQBZ1GFQNQDPxlif2TJfRGgI3m1wSpA==} + '@storybook/addon-onboarding@10.3.5': + resolution: {integrity: sha512-s3/gIy9Tqxji27iclLY+KSk8kGeow1JxXMl1lPLyu8n6XVvv+tFrUPhAvUTs+fVenG6JQEWc0uzpYBdFRWbMtw==} peerDependencies: - storybook: ^10.2.17 + storybook: ^10.3.5 - '@storybook/builder-vite@10.2.17': - resolution: {integrity: sha512-m/OBveTLm5ds/tUgHmmbKzgSi/oeCpQwm5rZa49vP2BpAd41Q7ER6TzkOoISzPoNNMAcbVmVc5vn7k6hdbPSHw==} + '@storybook/builder-vite@10.3.5': + resolution: {integrity: sha512-i4KwCOKbhtlbQIbhm53+Kk7bMnxa0cwTn1pxmtA/x5wm1Qu7FrrBQV0V0DNjkUqzcSKo1CjspASJV/HlY0zYlw==} peerDependencies: - storybook: ^10.2.17 - vite: ^5.0.0 || ^6.0.0 || ^7.0.0 + storybook: ^10.3.5 + vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 - '@storybook/csf-plugin@10.2.17': - resolution: {integrity: sha512-crHH8i/4mwzeXpWRPgwvwX2vjytW42zyzTRySUax5dTU8o9sjk4y+Z9hkGx3Nmu1TvqseS8v1Z20saZr/tQcWw==} + '@storybook/csf-plugin@10.3.5': + resolution: {integrity: sha512-qlEzNKxOjq86pvrbuMwiGD/bylnsXk1dg7ve0j77YFjEEchqtl7qTlrXvFdNaLA89GhW6D/EV6eOCu/eobPDgw==} peerDependencies: esbuild: '*' - rollup: 4.59.0 - storybook: ^10.2.17 + rollup: '*' + storybook: ^10.3.5 vite: '*' webpack: '*' peerDependenciesMeta: @@ -5518,27 +5295,27 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - '@storybook/react-dom-shim@10.2.17': - resolution: {integrity: sha512-x9Kb7eUSZ1zGsEw/TtWrvs1LwWIdNp8qoOQCgPEjdB07reSJcE8R3+ASWHJThmd4eZf66ZALPJyerejake4Osw==} + '@storybook/react-dom-shim@10.3.5': + resolution: {integrity: sha512-Gw8R7XZm0zSUH0XAuxlQJhmizsLzyD6x00KOlP6l7oW9eQHXGfxg3seNDG3WrSAcW07iP1/P422kuiriQlOv7g==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - storybook: ^10.2.17 + storybook: ^10.3.5 - '@storybook/react-vite@10.2.17': - resolution: {integrity: sha512-E/1hNmxVsjy9l3TuaNufSqkdz8saTJUGEs8GRCjKlF7be2wljIwewUxjAT3efk+bxOCw76ZmqGHk6MnRa3y7Gw==} + '@storybook/react-vite@10.3.5': + resolution: {integrity: sha512-UB5sJHeh26bfd8sNMx2YPGYRYmErIdTRaLOT28m4bykQIa1l9IgVktsYg/geW7KsJU0lXd3oTbnUjLD+enpi3w==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - storybook: ^10.2.17 - vite: ^5.0.0 || ^6.0.0 || ^7.0.0 + storybook: ^10.3.5 + vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 - '@storybook/react@10.2.17': - resolution: {integrity: sha512-875AVMYil2X9Civil6GFZ8koIzlKxcXbl2eJ7+/GPbhIonTNmwx0qbWPHttjZXUvFuQ4RRtb9KkBwy4TCb/LeA==} + '@storybook/react@10.3.5': + resolution: {integrity: sha512-tpLTLaVGoA6fLK3ReyGzZUricq7lyPaV2hLPpj5wqdXLV/LpRtAHClUpNoPDYSBjlnSjL81hMZijbkGC3mA+gw==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - storybook: ^10.2.17 + storybook: ^10.3.5 typescript: '>= 4.9.x' peerDependenciesMeta: typescript: @@ -5714,8 +5491,8 @@ packages: resolution: {integrity: sha512-ldZXEhOBb8Is7xLs01fR3YEc3DERiz5silj8tnGkFZytt1abEvl/GhUmCE0PMLaMPTa3Jk4HbKmRlHmu+gCftg==} engines: {node: '>=12'} - '@tediousjs/connection-string@0.5.0': - resolution: {integrity: sha512-7qSgZbincDDDFyRweCIEvZULFAw5iz/DeunhvuxpL31nfntX3P4Yd4HkHBRg9H8CdqY1e5WFN1PZIz/REL9MVQ==} + '@tediousjs/connection-string@0.6.0': + resolution: {integrity: sha512-GxlsW354Vi6QqbUgdPyQVcQjI7cZBdGV5vOYVYuCVDTylx2wl3WHR2HlhcxxHTrMigbelpXsdcZso+66uxPfow==} '@testing-library/dom@8.20.1': resolution: {integrity: sha512-/DiOQ5xBxgdYRC8LNk7U+RWat0S3qRLeIw3ZIkMQ9kkVlRmwD/Eg8k8CqIpD6GW7u20JIUOfMKbxtiLutpjQ4g==} @@ -5841,9 +5618,6 @@ packages: '@types/heic-convert@2.1.0': resolution: {integrity: sha512-Cf5Sdc2Gm2pfZ0uN1zjj35wcf3mF1lJCMIzws5OdJynrdMJRTIRUGa5LegbVg0hatzOPkH2uAf2JRjPYgl9apg==} - '@types/js-cookie@2.2.7': - resolution: {integrity: sha512-aLkWa0C0vO5b4Sr798E26QgOkss68Un0bLjs7u9qxzPT5CG+8DuNTffWES58YzJs3hrVAOs1wonycqEBqNJubA==} - '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} @@ -5856,9 +5630,6 @@ packages: '@types/linkify-it@5.0.0': resolution: {integrity: sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==} - '@types/lodash@4.17.24': - resolution: {integrity: sha512-gIW7lQLZbue7lRSWEFql49QJJWThrTFFeIMJdp3eH4tKoxm1OvEPg02rm4wCCSHS0cL3/Fizimb35b7k8atwsQ==} - '@types/markdown-it@14.1.2': resolution: {integrity: sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==} @@ -5877,9 +5648,6 @@ packages: '@types/mysql@2.15.27': resolution: {integrity: sha512-YfWiV16IY0OeBfBCk8+hXKmdTKrKlwKN1MNKAPBu5JYxLwBEZl7QzeEpGnlZb3VMGJrrGmB84gXiH+ofs/TezA==} - '@types/node-fetch@2.6.13': - resolution: {integrity: sha512-QGpRVpzSaUs30JBSGPjOg4Uveu384erbHBoT1zeONvyCfwQxIkUshLAOqN/k9EjGviPRmWTTe6aH2qySWKTVSw==} - '@types/node@22.19.13': resolution: {integrity: sha512-akNQMv0wW5uyRpD2v2IEyRSZiR+BeGuoB6L310EgGObO44HSMNT8z1xzio28V8qOrgYaopIDNA18YgdXd+qTiw==} @@ -5933,20 +5701,14 @@ packages: '@types/trusted-types@2.0.7': resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} - '@types/ungap__structured-clone@1.2.0': - resolution: {integrity: sha512-ZoaihZNLeZSxESbk9PUAPZOlSpcKx81I1+4emtULDVmBLkYutTcMlCj2K9VNlf9EWODxdO6gkAqEaLorXwZQVA==} - - '@types/uuid@9.0.8': - resolution: {integrity: sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==} - '@types/webidl-conversions@7.0.3': resolution: {integrity: sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==} '@types/whatwg-mimetype@3.0.2': resolution: {integrity: sha512-c2AKvDT8ToxLIOUlN51gTiHXflsfIFisS4pO7pDPoKouJCESkhZnEy623gwP9laCy5lnLDAw1vAzu2vM2YLOrA==} - '@types/whatwg-url@11.0.5': - resolution: {integrity: sha512-coYR071JRaHa+xoEvvYqvnIHaVqaYrLPbsufM9BF63HkwI5Lgmy2QR8Q5K/lYDYo5AK82wOvSOS0UsLTpTG7uQ==} + '@types/whatwg-url@13.0.0': + resolution: {integrity: sha512-N8WXpbE6Wgri7KUSvrmQcqrMllKZ9uxkYWMt+mCSGwNc0Hsw9VQTW7ApqI4XNrx6/SaM2QQJCzMPDEXE058s+Q==} '@types/ws@8.18.1': resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==} @@ -5999,6 +5761,12 @@ packages: peerDependencies: typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/project-service@8.59.0': + resolution: {integrity: sha512-Lw5ITrR5s5TbC19YSvlr63ZfLaJoU6vtKTHyB0GQOpX0W7d5/Ir6vUahWi/8Sps/nOukZQ0IB3SmlxZnjaKVnw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + '@typescript-eslint/scope-manager@5.62.0': resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -6015,6 +5783,10 @@ packages: resolution: {integrity: sha512-nvExQqAHF01lUM66MskSaZulpPL5pgy5hI5RfrxviLgzZVffB5yYzw27uK/ft8QnKXI2X0LBrHJFr1TaZtAibw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/scope-manager@8.59.0': + resolution: {integrity: sha512-UzR16Ut8IpA3Mc4DbgAShlPPkVm8xXMWafXxB0BocaVRHs8ZGakAxGRskF7FId3sdk9lgGD73GSFaWmWFDE4dg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/tsconfig-utils@8.56.1': resolution: {integrity: sha512-qOtCYzKEeyr3aR9f28mPJqBty7+DBqsdd63eO0yyDwc6vgThj2UjWfJIcsFeSucYydqcuudMOprZ+x1SpF3ZuQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -6027,6 +5799,12 @@ packages: peerDependencies: typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/tsconfig-utils@8.59.0': + resolution: {integrity: sha512-91Sbl3s4Kb3SybliIY6muFBmHVv+pYXfybC4Oolp3dvk8BvIE3wOPc+403CWIT7mJNkfQRGtdqghzs2+Z91Tqg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + '@typescript-eslint/type-utils@7.18.0': resolution: {integrity: sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==} engines: {node: ^18.18.0 || >=20.0.0} @@ -6060,6 +5838,10 @@ packages: resolution: {integrity: sha512-dTLI8PEXhjUC7B9Kre+u0XznO696BhXcTlOn0/6kf1fHaQW8+VjJAVHJ3eTI14ZapTxdkOmc80HblPQLaEeJdg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/types@8.59.0': + resolution: {integrity: sha512-nLzdsT1gdOgFxxxwrlNVUBzSNBEEHJ86bblmk4QAS6stfig7rcJzWKqCyxFy3YRRHXDWEkb2NralA1nOYkkm/A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/typescript-estree@5.62.0': resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -6090,6 +5872,12 @@ packages: peerDependencies: typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/typescript-estree@8.59.0': + resolution: {integrity: sha512-O9Re9P1BmBLFJyikRbQpLku/QA3/AueZNO9WePLBwQrvkixTmDe8u76B6CYUAITRl/rHawggEqUGn5QIkVRLMw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + '@typescript-eslint/utils@5.62.0': resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -6116,6 +5904,13 @@ packages: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/utils@8.59.0': + resolution: {integrity: sha512-I1R/K7V07XsMJ12Oaxg/O9GfrysGTmCRhvZJBv0RE0NcULMzjqVpR5kRRQjHsz3J/bElU7HwCO7zkqL+MSUz+g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + '@typescript-eslint/visitor-keys@5.62.0': resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -6132,6 +5927,10 @@ packages: resolution: {integrity: sha512-zm6xx8UT/Xy2oSr2ZXD0pZo7Jx2XsCoID2IUh9YSTFRu7z+WdwYTRk6LhUftm1crwqbuoF6I8zAFeCMw0YjwDg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/visitor-keys@8.59.0': + resolution: {integrity: sha512-/uejZt4dSere1bx12WLlPfv8GktzcaDtuJ7s42/HEZ5zGj9oxRaD4bj7qwSunXkf+pbAhFt2zjpHYUiT5lHf0Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typespec/ts-http-runtime@0.3.2': resolution: {integrity: sha512-IlqQ/Gv22xUC1r/WQm4StLkYQmaaTsXAhUVsNE0+xiyf0yRFiH5++q78U3bw6bLKDCTmh0uqKB9eG9+Bt75Dkg==} engines: {node: '>=20.0.0'} @@ -6270,11 +6069,11 @@ packages: peerDependencies: vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 - '@vitest/coverage-v8@4.0.18': - resolution: {integrity: sha512-7i+N2i0+ME+2JFZhfuz7Tg/FqKtilHjGyGvoHYQ6iLV0zahbsJ9sljC9OcFcPDbhYKCet+sG8SsVqlyGvPflZg==} + '@vitest/coverage-v8@4.1.5': + resolution: {integrity: sha512-38C0/Ddb7HcRG0Z4/DUem8x57d2p9jYgp18mkaYswEOQBGsI1CG4f/hjm0ZCeaJfWhSZ4k7jgs29V1Zom7Ki9A==} peerDependencies: - '@vitest/browser': 4.0.18 - vitest: 4.0.18 + '@vitest/browser': 4.1.5 + vitest: 4.1.5 peerDependenciesMeta: '@vitest/browser': optional: true @@ -6295,14 +6094,14 @@ packages: '@vitest/expect@3.2.4': resolution: {integrity: sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==} - '@vitest/expect@4.0.18': - resolution: {integrity: sha512-8sCWUyckXXYvx4opfzVY03EOiYVxyNrHS5QxX3DAIi5dpJAAkyJezHCP77VMX4HKA2LDT/Jpfo8i2r5BE3GnQQ==} + '@vitest/expect@4.1.5': + resolution: {integrity: sha512-PWBaRY5JoKuRnHlUHfpV/KohFylaDZTupcXN1H9vYryNLOnitSw60Mw9IAE2r67NbwwzBw/Cc/8q9BK3kIX8Kw==} - '@vitest/mocker@4.0.18': - resolution: {integrity: sha512-HhVd0MDnzzsgevnOWCBj5Otnzobjy5wLBe4EdeeFGv8luMsGcYqDuFRMcttKWZA5vVO8RFjexVovXvAM4JoJDQ==} + '@vitest/mocker@4.1.5': + resolution: {integrity: sha512-/x2EmFC4mT4NNzqvC3fmesuV97w5FC903KPmey4gsnJiMQ3Be1IlDKVaDaG8iqaLFHqJ2FVEkxZk5VmeLjIItw==} peerDependencies: msw: ^2.4.9 - vite: ^6.0.0 || ^7.0.0-0 + vite: ^6.0.0 || ^7.0.0 || ^8.0.0 peerDependenciesMeta: msw: optional: true @@ -6312,41 +6111,41 @@ packages: '@vitest/pretty-format@3.2.4': resolution: {integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==} - '@vitest/pretty-format@4.0.18': - resolution: {integrity: sha512-P24GK3GulZWC5tz87ux0m8OADrQIUVDPIjjj65vBXYG17ZeU3qD7r+MNZ1RNv4l8CGU2vtTRqixrOi9fYk/yKw==} + '@vitest/pretty-format@4.1.5': + resolution: {integrity: sha512-7I3q6l5qr03dVfMX2wCo9FxwSJbPdwKjy2uu/YPpU3wfHvIL4QHwVRp57OfGrDFeUJ8/8QdfBKIV12FTtLn00g==} - '@vitest/runner@4.0.18': - resolution: {integrity: sha512-rpk9y12PGa22Jg6g5M3UVVnTS7+zycIGk9ZNGN+m6tZHKQb7jrP7/77WfZy13Y/EUDd52NDsLRQhYKtv7XfPQw==} + '@vitest/runner@4.1.5': + resolution: {integrity: sha512-2D+o7Pr82IEO46YPpoA/YU0neeyr6FTerQb5Ro7BUnBuv6NQtT/kmVnczngiMEBhzgqz2UZYl5gArejsyERDSQ==} - '@vitest/snapshot@4.0.18': - resolution: {integrity: sha512-PCiV0rcl7jKQjbgYqjtakly6T1uwv/5BQ9SwBLekVg/EaYeQFPiXcgrC2Y7vDMA8dM1SUEAEV82kgSQIlXNMvA==} + '@vitest/snapshot@4.1.5': + resolution: {integrity: sha512-zypXEt4KH/XgKGPUz4eC2AvErYx0My5hfL8oDb1HzGFpEk1P62bxSohdyOmvz+d9UJwanI68MKwr2EquOaOgMQ==} '@vitest/spy@3.2.4': resolution: {integrity: sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==} - '@vitest/spy@4.0.18': - resolution: {integrity: sha512-cbQt3PTSD7P2OARdVW3qWER5EGq7PHlvE+QfzSC0lbwO+xnt7+XH06ZzFjFRgzUX//JmpxrCu92VdwvEPlWSNw==} + '@vitest/spy@4.1.5': + resolution: {integrity: sha512-2lNOsh6+R2Idnf1TCZqSwYlKN2E/iDlD8sgU59kYVl+OMDmvldO1VDk39smRfpUNwYpNRVn3w4YfuC7KfbBnkQ==} '@vitest/utils@3.2.4': resolution: {integrity: sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==} - '@vitest/utils@4.0.18': - resolution: {integrity: sha512-msMRKLMVLWygpK3u2Hybgi4MNjcYJvwTb0Ru09+fOyCXIgT5raYP041DRRdiJiI3k/2U6SEbAETB3YtBrUkCFA==} + '@vitest/utils@4.1.5': + resolution: {integrity: sha512-76wdkrmfXfqGjueGgnb45ITPyUi1ycZ4IHgC2bhPDUfWHklY/q3MdLOAB+TF1e6xfl8NxNY0ZYaPCFNWSsw3Ug==} - '@volar/language-core@2.4.27': - resolution: {integrity: sha512-DjmjBWZ4tJKxfNC1F6HyYERNHPYS7L7OPFyCrestykNdUZMFYzI9WTyvwPcaNaHlrEUwESHYsfEw3isInncZxQ==} + '@volar/language-core@2.4.28': + resolution: {integrity: sha512-w4qhIJ8ZSitgLAkVay6AbcnC7gP3glYM3fYwKV3srj8m494E3xtrCv6E+bWviiK/8hs6e6t1ij1s2Endql7vzQ==} - '@volar/source-map@2.4.27': - resolution: {integrity: sha512-ynlcBReMgOZj2i6po+qVswtDUeeBRCTgDurjMGShbm8WYZgJ0PA4RmtebBJ0BCYol1qPv3GQF6jK7C9qoVc7lg==} + '@volar/source-map@2.4.28': + resolution: {integrity: sha512-yX2BDBqJkRXfKw8my8VarTyjv48QwxdJtvRgUpNE5erCsgEUdI2DsLbpa+rOQVAJYshY99szEcRDmyHbF10ggQ==} - '@volar/typescript@2.4.27': - resolution: {integrity: sha512-eWaYCcl/uAPInSK2Lze6IqVWaBu/itVqR5InXcHXFyles4zO++Mglt3oxdgj75BDcv1Knr9Y93nowS8U3wqhxg==} + '@volar/typescript@2.4.28': + resolution: {integrity: sha512-Ja6yvWrbis2QtN4ClAKreeUZPVYMARDYZl9LMEv1iQ1QdepB6wn0jTRxA9MftYmYa4DQ4k/DaSZpFPUfxl8giw==} - '@vue/compiler-core@3.5.26': - resolution: {integrity: sha512-vXyI5GMfuoBCnv5ucIT7jhHKl55Y477yxP6fc4eUswjP8FG3FFVFd41eNDArR+Uk3QKn2Z85NavjaxLxOC19/w==} + '@vue/compiler-core@3.5.33': + resolution: {integrity: sha512-3PZLQwFw4Za3TC8t0FvTy3wI16Kt+pmwcgNZca4Pj9iWL2E72a/gZlpBtAJvEdDMdCxdG/qq0C7PN0bsJuv0Rw==} - '@vue/compiler-dom@3.5.26': - resolution: {integrity: sha512-y1Tcd3eXs834QjswshSilCBnKGeQjQXB6PqFn/1nxcQw4pmG42G8lwz+FZPAZAby6gZeHSt/8LMPfZ4Rb+Bd/A==} + '@vue/compiler-dom@3.5.33': + resolution: {integrity: sha512-PXq0yrfCLzzL07rbXO4awtXY1Z06LG2eu6Adg3RJFa/j3Cii217XxxLXG22N330gw7GmALCY0Z8RgXEviwgpjA==} '@vue/compiler-vue2@2.7.16': resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} @@ -6359,8 +6158,8 @@ packages: typescript: optional: true - '@vue/shared@3.5.26': - resolution: {integrity: sha512-7Z6/y3uFI5PRoKeorTOSXKcDj0MSasfNNltcslbFrPpcw6aXRUALq4IfJlaTRspiWIUOEZbrpM+iQGmCOiWe4A==} + '@vue/shared@3.5.33': + resolution: {integrity: sha512-5vR2QIlmaLG77Ygd4pMP6+SGQ5yox9VhtnbDWTy9DzMzdmeLxZ1QqxrywEZ9sa1AVubfIJyaCG3ytyWU81ufcQ==} '@webassemblyjs/ast@1.14.1': resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==} @@ -6407,6 +6206,9 @@ packages: '@webassemblyjs/wast-printer@1.14.1': resolution: {integrity: sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==} + '@webcontainer/env@1.1.1': + resolution: {integrity: sha512-6aN99yL695Hi9SuIk1oC88l9o0gmxL1nGWWQ/kNy81HigJ0FoaoTXpytCj6ItzgyCEwA9kF1wixsTuv5cjsgng==} + '@wojtekmaj/date-utils@2.0.2': resolution: {integrity: sha512-Do66mSlSNifFFuo3l9gNKfRMSFi26CRuQMsDJuuKO/ekrDWuTTtE4ZQxoFCUOG+NgxnpSeBq/k5TY8ZseEzLpA==} @@ -6414,18 +6216,9 @@ packages: resolution: {integrity: sha512-CJDxIgE5I0FH+ttq/Fxy6nRpxP70+e2O048EPe85J2use3XKdatVM7dDVvFNjQudd9B49NPoZ+8PG49zj4Er8Q==} engines: {node: '>= 16'} - '@xmldom/xmldom@0.8.11': - resolution: {integrity: sha512-cQzWCtO6C8TQiYl1ruKNn2U6Ao4o4WBBcbL61yJl84x+j5sOWWFU9X7DpND8XZG3daDppSsigMdfAIl2upQBRw==} - engines: {node: '>=10.0.0'} - deprecated: this version has critical issues, please update to the latest version - - '@xmldom/xmldom@0.9.8': - resolution: {integrity: sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==} + '@xmldom/xmldom@0.9.10': + resolution: {integrity: sha512-A9gOqLdi6cV4ibazAjcQufGj0B1y/vDqYrcuP6d/6x8P27gRS8643Dj9o1dEKtB6O7fwxb2FgBmJS2mX7gpvdw==} engines: {node: '>=14.6'} - deprecated: this version has critical issues, please update to the latest version - - '@xobotyi/scrollbar-width@1.9.5': - resolution: {integrity: sha512-N8tkAACJx2ww8vFMneJmaAgmjAG1tnVBZJRLRcx061tmsLRZHSEZSLuGWnwPtunsSLvSqXQ2wfp7Mgqg1I+2dQ==} '@xtuc/ieee754@1.2.0': resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} @@ -6464,11 +6257,6 @@ packages: resolution: {integrity: sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw==} engines: {node: '>=0.4.0'} - acorn@8.15.0: - resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} - engines: {node: '>=0.4.0'} - hasBin: true - acorn@8.16.0: resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==} engines: {node: '>=0.4.0'} @@ -6520,19 +6308,11 @@ packages: ajv: optional: true - ajv-keywords@3.5.2: - resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==} - peerDependencies: - ajv: ^6.9.1 - ajv-keywords@5.1.0: resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==} peerDependencies: ajv: ^8.8.2 - ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - ajv@6.14.0: resolution: {integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==} @@ -6665,8 +6445,8 @@ packages: resolution: {integrity: sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==} engines: {node: '>=4'} - ast-v8-to-istanbul@0.3.12: - resolution: {integrity: sha512-BRRC8VRZY2R4Z4lFIL35MwNXmwVqBityvOIwETtsCSwvjl0IdgFsy9NhdaA6j74nUdtJJlIypeRhpDam19Wq3g==} + ast-v8-to-istanbul@1.0.0: + resolution: {integrity: sha512-1fSfIwuDICFA4LKkCzRPO7F0hzFf0B7+Xqrl27ynQaa+Rh0e1Es0v6kWHPott3lU10AyAr7oKHa65OppjLn3Rg==} async-function@1.0.0: resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} @@ -6704,8 +6484,12 @@ packages: resolution: {integrity: sha512-ilYanEU8vxxBexpJd8cWM4ElSQq4QctCLKih0TSfjIfCQTeyH/6zVrmIJfLPrKTKJRbiG+cfnZbQIjAlJmF1jQ==} engines: {node: '>=4'} - axios@1.13.5: - resolution: {integrity: sha512-cz4ur7Vb0xS4/KUN0tPWe44eqxrIu31me+fbang3ijiNscE129POzipJJA6zniq2C/Z6sJCjMimjS8Lc/GAs8Q==} + axe-core@4.11.3: + resolution: {integrity: sha512-zBQouZixDTbo3jMGqHKyePxYxr1e5W8UdTmBQ7sNtaA9M2bE32daxxPLS/jojhKOHxQ7LWwPjfiwf/fhaJWzlg==} + engines: {node: '>=4'} + + axios@1.15.2: + resolution: {integrity: sha512-wLrXxPtcrPTsNlJmKjkPnNPK2Ihe0hn0wGSaTEiHRPxwjvJwT3hKmXF4dpqxmPO9SoNb2FsYXj/xEo0gHN+D5A==} axobject-query@4.1.0: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} @@ -6730,6 +6514,11 @@ packages: resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==} engines: {node: ^4.5.0 || >= 5.9} + baseline-browser-mapping@2.10.20: + resolution: {integrity: sha512-1AaXxEPfXT+GvTBJFuy4yXVHWJBXa4OdbIebGN/wX5DlsIkU0+wzGnd2lOzokSk51d5LUmqjgBLRLlypLUqInQ==} + engines: {node: '>=6.0.0'} + hasBin: true + baseline-browser-mapping@2.10.9: resolution: {integrity: sha512-OZd0e2mU11ClX8+IdXe3r0dbqMEznRiT4TfbhYIbcRPZkqJ7Qwer8ij3GZAmLsRKa+II9V1v5czCkvmHH3XZBg==} engines: {node: '>=6.0.0'} @@ -6743,12 +6532,13 @@ packages: resolution: {integrity: sha512-GlF5wPWnSa/X5LKM1o0wz0suXIINz1iHRLvTS+sLyi7XPbe5ycmYI3DlZqVGZZtDgl4DmasFg7gOB3JYbphV5g==} hasBin: true + better-sqlite3@12.8.0: + resolution: {integrity: sha512-RxD2Vd96sQDjQr20kdP+F+dK/1OUNiVOl200vKBZY8u0vTwysfolF6Hq+3ZK2+h8My9YvZhHsF+RSGZW2VYrPQ==} + engines: {node: 20.x || 22.x || 23.x || 24.x || 25.x} + bidi-js@1.0.3: resolution: {integrity: sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==} - big.js@5.2.2: - resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} - bignumber.js@9.3.1: resolution: {integrity: sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==} @@ -6777,14 +6567,14 @@ packages: bowser@2.13.1: resolution: {integrity: sha512-OHawaAbjwx6rqICCKgSG0SAnT05bzd7ppyKLVUITZpANBaaMFBAsaNkto3LoQ31tyFP5kNujE8Cdx85G9VzOkw==} - brace-expansion@1.1.12: - resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} + brace-expansion@1.1.13: + resolution: {integrity: sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==} - brace-expansion@2.0.2: - resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + brace-expansion@2.0.3: + resolution: {integrity: sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==} - brace-expansion@5.0.4: - resolution: {integrity: sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg==} + brace-expansion@5.0.5: + resolution: {integrity: sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==} engines: {node: 18 || 20 || >=22} braces@3.0.3: @@ -6796,9 +6586,14 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true - bson@6.10.4: - resolution: {integrity: sha512-WIsKqkSC0ABoBJuT1LEX+2HEvNmNKKgnTAyd0fL8qzK4SH2i9NXg+t08YtdZp/V9IZ33cxe3iV4yM0qg8lMQng==} - engines: {node: '>=16.20.1'} + browserslist@4.28.2: + resolution: {integrity: sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + bson@7.2.0: + resolution: {integrity: sha512-YCEo7KjMlbNlyHhz7zAZNDpIpQbd+wOEHJYezv0nMYTn4x31eIUM2yomNNubclAt63dObUzKHWsBLJ9QcZNSnQ==} + engines: {node: '>=20.19.0'} buffer-equal-constant-time@1.0.1: resolution: {integrity: sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==} @@ -6859,6 +6654,9 @@ packages: caniuse-lite@1.0.30001776: resolution: {integrity: sha512-sg01JDPzZ9jGshqKSckOQthXnYwOEP50jeVFhaSFbZcOy05TiuuaffDOfcwtCisJ9kNQuLBFibYywv2Bgm9osw==} + caniuse-lite@1.0.30001788: + resolution: {integrity: sha512-6q8HFp+lOQtcf7wBK+uEenxymVWkGKkjFpCvw5W25cmMwEDU45p1xQFBQv8JDlMMry7eNxyBaR+qxgmTUZkIRQ==} + chai@5.3.3: resolution: {integrity: sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==} engines: {node: '>=18'} @@ -6875,8 +6673,8 @@ packages: resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - check-error@2.1.1: - resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} + check-error@2.1.3: + resolution: {integrity: sha512-PAJdDJusoxnwm1VwW07VWwUN1sl7smmC3OKggvndJFadxxDRyFJBX/ggnu/KE4kQAB7a3Dp8f/YXC1FlUprWmA==} engines: {node: '>= 16'} chevrotain@10.5.0: @@ -7053,9 +6851,6 @@ packages: resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} engines: {node: '>= 0.6'} - copy-to-clipboard@3.3.3: - resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==} - core-js-compat@3.47.0: resolution: {integrity: sha512-IGfuznZ/n7Kp9+nypamBhvwdwLsW6KC8IOaURw2doAK5e98AG3acVLdh0woOnEqCfUtS+Vu882JE4k/DAm3ItQ==} @@ -7081,18 +6876,11 @@ packages: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} - css-in-js-utils@3.1.0: - resolution: {integrity: sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==} - css-select@5.2.2: resolution: {integrity: sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==} - css-tree@1.1.3: - resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} - engines: {node: '>=8.0.0'} - - css-tree@3.1.0: - resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==} + css-tree@3.2.1: + resolution: {integrity: sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} css-what@6.2.2: @@ -7107,10 +6895,6 @@ packages: engines: {node: '>=4'} hasBin: true - cssstyle@6.2.0: - resolution: {integrity: sha512-Fm5NvhYathRnXNVndkUsCCuR63DCLVVwGOOwQw782coXFi5HhkXdu289l59HlXZBawsyNccXfWRYvLzcDCdDig==} - engines: {node: '>=20'} - csstype@3.2.3: resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} @@ -7239,6 +7023,10 @@ packages: resolution: {integrity: sha512-XDuvSq38Hr1MdN47EDvYtx3U0MTqpCEn+F6ft8z2vYDzMrvQhVp0ui9oQdqW3MvK3vqUETglt1tVGgjLuJ5izg==} engines: {node: '>=18'} + default-browser@5.5.0: + resolution: {integrity: sha512-H9LMLr5zwIbSxrmvikGuI/5KGhZ8E2zH3stkMgM5LpOWDutGM2JZaj460Udnf1a+946zc7YBgrqEWwbk7zHvGw==} + engines: {node: '>=18'} + define-data-property@1.1.4: resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} engines: {node: '>= 0.4'} @@ -7251,8 +7039,8 @@ packages: resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} engines: {node: '>= 0.4'} - defu@6.1.4: - resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} + defu@6.1.7: + resolution: {integrity: sha512-7z22QmUWiQ/2d0KkdYmANbRUVABpZ9SNYyH5vx6PZ+nE5bcC0l7uFvEfHlyld/HcGBFTL536ClDt3DEcSlEJAQ==} delayed-stream@1.0.0: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} @@ -7289,8 +7077,8 @@ packages: didyoumean@1.2.2: resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} - diff@8.0.3: - resolution: {integrity: sha512-qejHi7bcSD4hQAZE0tNAawRK1ZtafHDmMTMkrrIGgSLl7hTnQHmKCeB45xAcbfTqK2zowkM3j3bHt/4b/ARbYQ==} + diff@4.0.4: + resolution: {integrity: sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ==} engines: {node: '>=0.3.1'} diff@8.0.4: @@ -7331,12 +7119,8 @@ packages: resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} engines: {node: '>= 4'} - dompurify@3.3.2: - resolution: {integrity: sha512-6obghkliLdmKa56xdbLOpUZ43pAR6xFy1uOrxBaIDjT+yaRuuybLjGS9eVBoSR/UPU5fq3OXClEHLJNGvbxKpQ==} - engines: {node: '>=20'} - - dompurify@3.3.3: - resolution: {integrity: sha512-Oj6pzI2+RqBfFG+qOaOLbFXLQ90ARpcGG6UePL82bJLtdsa6CYJD7nmiU8MW9nQNOtCHV3lZ/Bzq1X0QYbBZCA==} + dompurify@3.4.1: + resolution: {integrity: sha512-JahakDAIg1gyOm7dlgWSDjV4n7Ip2PKR55NIT6jrMfIgLFgWo81vdr1/QGqWtFNRqXP9UV71oVePtjqS2ebnPw==} domutils@3.2.2: resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==} @@ -7381,6 +7165,9 @@ packages: electron-to-chromium@1.5.267: resolution: {integrity: sha512-0Drusm6MVRXSOJpGbaSVgcQsuB4hEkMpHXaVstcPmhu5LIedxs1xNK/nIxmQIU/RPC0+1/o0AVZfBTkTNJOdUw==} + electron-to-chromium@1.5.343: + resolution: {integrity: sha512-YHnQ3MXI08icvL9ZKnEBy05F2EQ8ob01UaMOuMbM8l+4UcAq6MPPbBTJBbsBUg3H8JeZNt+O4fjsoWth3p6IFg==} + emoji-regex@10.6.0: resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==} @@ -7390,10 +7177,6 @@ packages: emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - emojis-list@3.0.0: - resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} - engines: {node: '>= 4'} - empathic@2.0.0: resolution: {integrity: sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==} engines: {node: '>=14'} @@ -7416,6 +7199,10 @@ packages: resolution: {integrity: sha512-/ce7+jQ1PQ6rVXwe+jKEg5hW5ciicHwIQUagZkp6IufBoY3YDgdTTY1azVs0qoRgVmvsNB+rbjLJxDAeHHtwsQ==} engines: {node: '>=10.13.0'} + enhanced-resolve@5.20.1: + resolution: {integrity: sha512-Qohcme7V1inbAfvjItgw0EaxVX5q2rdVEZHRBrEQdRZTssLDGsL8Lwrznl8oQ/6kuTJONLaDcGjkNP247XEhcA==} + engines: {node: '>=10.13.0'} + entities@4.5.0: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} @@ -7446,9 +7233,6 @@ packages: error-ex@1.3.4: resolution: {integrity: sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==} - error-stack-parser@2.1.4: - resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} - es-abstract@1.24.1: resolution: {integrity: sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==} engines: {node: '>= 0.4'} @@ -7468,9 +7252,6 @@ packages: resolution: {integrity: sha512-BrUQ0cPTB/IwXj23HtwHjS9n7O4h9FX94b4xc5zlTHxeLgTAdzYUDyy6KdExAl9lbN5rtfe44xpjpmj9grxs5w==} engines: {node: '>= 0.4'} - es-module-lexer@1.7.0: - resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==} - es-module-lexer@2.0.0: resolution: {integrity: sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==} @@ -7658,11 +7439,11 @@ packages: peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 - eslint-plugin-storybook@10.2.17: - resolution: {integrity: sha512-LtzVBHcq+RbrhTnF1rFNpc5bmg/kmdDsw/6bIKOnyDY4r0g5ldZSNN3R/fxLrhFOL2DhmmDywN9lcFNqHCP3vQ==} + eslint-plugin-storybook@10.3.5: + resolution: {integrity: sha512-rEFkfU3ypF44GpB4tiJ9EFDItueoGvGi3+weLHZax2ON2MB7VIDsxdSUGvIU5tMURg+oWYlpzCyLm4TpDq2deA==} peerDependencies: eslint: '>=8' - storybook: ^10.2.17 + storybook: ^10.3.5 eslint-plugin-testing-library@6.5.0: resolution: {integrity: sha512-Ls5TUfLm5/snocMAOlofSOJxNN0aKqwTlco7CrNtMjkTdQlkpSMaeTCDHCuXfzrI97xcx2rSCNeKeJjtpkNC1w==} @@ -7819,9 +7600,6 @@ packages: fast-safe-stringify@2.1.1: resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} - fast-shallow-equal@1.0.0: - resolution: {integrity: sha512-HPtaa38cPgWvaCFmRNhlc6NG7pv6NUHqjPgVAkWGoB9mQMwYB27/K0CvOM5Czy+qpT3e8XJ6Q4aPAnzpNpzNaw==} - fast-uri@3.1.0: resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} @@ -7832,9 +7610,6 @@ packages: resolution: {integrity: sha512-LteOsISQ2GEiDHZch6L9hB0+MLoYVLToR7xotrzU0opCICBkxOPgHAy1HxAvtxfJNXDJpgAsQN30mkrfpO2Prg==} hasBin: true - fastest-stable-stringify@2.0.2: - resolution: {integrity: sha512-bijHueCGd0LqqNK9b5oCMHc0MluJAx0cwqASgbWMvkO01lCYgIhacVRLcaDz3QnyYIRNJRDwMb41VuT6pHJ91Q==} - fastq@1.20.1: resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==} @@ -7858,12 +7633,6 @@ packages: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} - file-loader@6.2.0: - resolution: {integrity: sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==} - engines: {node: '>= 10.13.0'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - file-uri-to-path@1.0.0: resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} @@ -7890,8 +7659,8 @@ packages: flatted@3.4.2: resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==} - follow-redirects@1.15.11: - resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} + follow-redirects@1.16.0: + resolution: {integrity: sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -7938,8 +7707,8 @@ packages: fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} - fs-extra@11.3.3: - resolution: {integrity: sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==} + fs-extra@11.3.4: + resolution: {integrity: sha512-CTXd6rk/M3/ULNQj8FBqBWHYBVYybQ3VPBw0xGKFe3tuH7ytT6ACnvzpIQ3UZtB8yvUKC2cXn1a+x+5EVQLovA==} engines: {node: '>=14.14'} fs-minipass@2.1.0: @@ -7974,10 +7743,6 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} deprecated: This package is no longer supported. - gaxios@6.7.1: - resolution: {integrity: sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ==} - engines: {node: '>=14'} - gaxios@7.1.3: resolution: {integrity: sha512-YGGyuEdVIjqxkxVH1pUTMY/XtmmsApXrCVv5EU25iX6inEPbV+VakJfLealkBtJN69AQmh1eGOdCl9Sm1UP6XQ==} engines: {node: '>=18'} @@ -7986,10 +7751,6 @@ packages: resolution: {integrity: sha512-bTIgTsM2bWn3XklZISBTQX7ZSddGW+IO3bMdGaemHZ3tbqExMENHLx6kKZ/KlejgrMtj8q7wBItt51yegqalrA==} engines: {node: '>=18'} - gcp-metadata@6.1.1: - resolution: {integrity: sha512-a4tiq7E0/5fTjxPAaH4jpjkSv/uCaU2p5KC6HVGrvl0cDjA8iBZv4vv1gyzlmK0ZUKqwpOyQMKzZQe3lTit77A==} - engines: {node: '>=14'} - gcp-metadata@8.1.2: resolution: {integrity: sha512-zV/5HKTfCeKWnxG0Dmrw51hEWFGfcF2xiXqcA3+J90WDuP0SvoiSO5ORvcBsifmx/FoIjgQN3oNOGaQ5PhLFkg==} engines: {node: '>=18'} @@ -8104,22 +7865,10 @@ packages: resolution: {integrity: sha512-5awwuLrzNol+pFDmKJd0dKtZ0fPLAtoA5p7YO4ODsDu6ONJUVqbYwvv8y2ZBO5MBNp9TJXigB19710kYpBPdtA==} engines: {node: '>=18'} - google-auth-library@9.15.1: - resolution: {integrity: sha512-Jb6Z0+nvECVz+2lzSMt9u98UsoakXxA2HGHMCxh+so3n90XgYWkq5dur19JAJV7ONiJY22yBTyJB1TSkvPq9Ng==} - engines: {node: '>=14'} - - google-logging-utils@0.0.2: - resolution: {integrity: sha512-NEgUnEcBiP5HrPzufUkBzJOD/Sxsco3rLNo1F1TNf7ieU8ryUzBhqba8r756CjLX7rn3fHl6iLEwPYuqpoKgQQ==} - engines: {node: '>=14'} - google-logging-utils@1.1.3: resolution: {integrity: sha512-eAmLkjDjAFCVXg7A1unxHsLf961m6y17QFqXqAXGj/gVkKFrEICfStRfwUlGNfeCEjNRa32JEWOUTlYXPyyKvA==} engines: {node: '>=14'} - googleapis-common@7.2.0: - resolution: {integrity: sha512-/fhDZEJZvOV3X5jmD+fKxMqma5q2Q9nZNSF3kn1F18tpxmA86BcTxAGBQdM0N89Z3bEaIs+HVznSmFJEAmMTjA==} - engines: {node: '>=14.0.0'} - googleapis-common@8.0.1: resolution: {integrity: sha512-eCzNACUXPb1PW5l0ULTzMHaL/ltPRADoPgjBlT8jWsTbxkCp6siv+qKJ/1ldaybCthGwsYFYallF7u9AkU4L+A==} engines: {node: '>=18.0.0'} @@ -8144,10 +7893,6 @@ packages: graphmatch@1.1.1: resolution: {integrity: sha512-5ykVn/EXM1hF0XCaWh05VbYvEiOL2lY1kBxZtaYsyvjp7cmWOU1XsAdfQBwClraEofXDT197lFbXOEVMHpvQOg==} - gtoken@7.1.0: - resolution: {integrity: sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==} - engines: {node: '>=14.0.0'} - happy-dom@20.8.9: resolution: {integrity: sha512-Tz23LR9T9jOGVZm2x1EPdXqwA37G/owYMxRwU0E4miurAtFsPMQ1d2Jc2okUaSjZqAFz2oEn3FLXC5a0a+siyA==} engines: {node: '>=20.0.0'} @@ -8186,6 +7931,10 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} + hasown@2.0.3: + resolution: {integrity: sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==} + engines: {node: '>= 0.4'} + he@1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true @@ -8201,8 +7950,8 @@ packages: help-me@5.0.0: resolution: {integrity: sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg==} - hono@4.12.7: - resolution: {integrity: sha512-jq9l1DM0zVIvsm3lv9Nw9nlJnMNPOcAtsbsgiUhWcFzPE99Gvo6yRTlszSLLYacMeQ6quHD6hMfId8crVHvexw==} + hono@4.12.14: + resolution: {integrity: sha512-am5zfg3yu6sqn5yjKBNqhnTX7Cv+m00ox+7jbaKkrLMRJ4rAdldd1xPd/JzbBWspqaQv6RSTrgFN95EsfhC+7w==} engines: {node: '>=16.9.0'} hosted-git-info@2.8.9: @@ -8242,10 +7991,6 @@ packages: http-status-codes@2.3.0: resolution: {integrity: sha512-RJ8XvFvpPM/Dmc5SV+dC4y5PCeOhT3x1Hq0NU3rjGeg5a/CqlhZ7uudknPwZFz4aeAXDcbAyaeP7GAo9lvngtA==} - https-proxy-agent@5.0.0: - resolution: {integrity: sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==} - engines: {node: '>= 6'} - https-proxy-agent@5.0.1: resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} engines: {node: '>= 6'} @@ -8262,9 +8007,6 @@ packages: engines: {node: '>=18'} hasBin: true - hyphenate-style-name@1.1.0: - resolution: {integrity: sha512-WDC/ui2VVRrz3jOVi+XtjqkDjiVjTtFaAGiW37k6b+ohyQ5wYDOGkvCZa8+H0nx3gyvv0+BST9xuOgIyGQ00gw==} - i18next-icu@2.4.3: resolution: {integrity: sha512-Clb5XCp416Z+BkJUTATCjmDcw2AFzSUDVLxLVK/KhtXP6TJQHrht+6MqoJU1hCpyoCBKe59wMO9pvCvYroNcKg==} peerDependencies: @@ -8336,9 +8078,6 @@ packages: ini@1.3.8: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - inline-style-prefixer@7.0.1: - resolution: {integrity: sha512-lhYo5qNTQp3EvSSp3sRvXMbVQTLrvGV6DycRMJ5dm2BLMiJ30wpXKdDdgX+GmJZ5uQMucwRKHamXSst3Sj/Giw==} - internal-slot@1.1.0: resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} engines: {node: '>= 0.4'} @@ -8350,8 +8089,8 @@ packages: resolution: {integrity: sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==} engines: {node: '>= 12'} - ipaddr.js@2.2.0: - resolution: {integrity: sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==} + ipaddr.js@2.3.0: + resolution: {integrity: sha512-Zv/pA+ciVFbCSBBjGfaKUya/CcGmUHzTydLMaTwrUUEM2DIEO3iZvueGxmacvmN50fGpGVKeTXpb2LcYQxeVdg==} engines: {node: '>= 10'} is-arguments@1.2.0: @@ -8501,10 +8240,6 @@ packages: is-standalone-pwa@0.1.1: resolution: {integrity: sha512-9Cbovsa52vNQCjdXOzeQq5CnCbAcRk05aU62K20WO372NrTv0NxibLFCK6lQ4/iZEFdEA3p3t2VNOn8AJ53F5g==} - is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} - is-string@1.1.1: resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} engines: {node: '>= 0.4'} @@ -8541,6 +8276,10 @@ packages: resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} engines: {node: '>=16'} + is-wsl@3.1.1: + resolution: {integrity: sha512-e6rvdUCiQCAuumZslxRJWR/Doq4VpPR82kqclvcS0efgt430SlGIk05vdCN58+VrzgtIcfNODjozVielycD4Sw==} + engines: {node: '>=16'} + isarray@1.0.0: resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} @@ -8550,9 +8289,9 @@ packages: isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - isomorphic-dompurify@3.1.0: - resolution: {integrity: sha512-mwWh3/+EQPeBvUAfZZDG5Tmyvr/yKxKB8VYSdw6c+3hMfW4FZZ93kxdohpHmtmSRUWX/jOJQtVObeA6cBLvosA==} - engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} + isomorphic-dompurify@3.9.0: + resolution: {integrity: sha512-3REwJAnIqjWO7qbfyKWMBI7hUHFhqUor7weFG3WbJW6Enq3V7cx60QuurWjGUXxbX57Iy4RJIkAZFObAqiqpxw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24.0.0} isomorphic.js@0.2.5: resolution: {integrity: sha512-PIeMbHqMt4DnUP3MA/Flc0HElYjMXArsw1qwJZcm9sqR8mq3l8NYizFMty0pWwE/tzIGH3EKK5+jes5mAr85yw==} @@ -8601,8 +8340,8 @@ packages: jose@4.15.9: resolution: {integrity: sha512-1vUQX+IdDMVPj4k8kOxgUqlcK518yluMuGZwqlr44FS1ppZB/5GWh4rZG89erpOBOJjU/OBsnCVFfapsRz6nEA==} - jose@6.0.11: - resolution: {integrity: sha512-QxG7EaliDARm1O1S8BGakqncGT9s25bKL1WSf6/oa17Tkqwi8D2ZNglqCF+DsYF88/rV66Q/Q2mFAy697E1DUg==} + jose@6.2.2: + resolution: {integrity: sha512-d7kPDd34KO/YnzaDOlikGpOurfF0ByC2sEV4cANCtdqLlTfBlw2p14O/5d/zv40gJPbIQxfES3nSx1/oYNyuZQ==} joycon@3.1.1: resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} @@ -8611,12 +8350,6 @@ packages: jpeg-js@0.4.4: resolution: {integrity: sha512-WZzeDOEtTOBK4Mdsar0IqEU5sMr3vSV2RqkAIzUEV2BHnUfKGyswWFPFwK5EeDo93K3FohSHbLAjj0s1Wzd+dg==} - js-base64@3.7.8: - resolution: {integrity: sha512-hNngCeKxIUQiEUN3GPJOkz4wF/YvdUdbNL9hsBcMQTkKzboD7T/q3OYOuuPZLUE6dBxSGpwhk5mwuDud7JVAow==} - - js-cookie@2.2.1: - resolution: {integrity: sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==} - js-md4@0.3.2: resolution: {integrity: sha512-/GDnfQYsltsjRswQhN9fhv3EMw2sCpUdrdxyWDOUK7eyD++r3gRhzgiQgc/x4MAv2i1iuQ4lxO5mvqM3vj4bwA==} @@ -8630,9 +8363,9 @@ packages: resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} hasBin: true - jsdom@28.1.0: - resolution: {integrity: sha512-0+MoQNYyr2rBHqO1xilltfDjV9G7ymYGlAUazgcDLQaUf8JDHbuGwsxN6U9qWaElZ4w1B2r7yEGIL3GdeW3Rug==} - engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} + jsdom@29.0.2: + resolution: {integrity: sha512-9VnGEBosc/ZpwyOsJBCQ/3I5p7Q5ngOY14a9bf5btenAORmZfDse1ZEheMiWcJ3h81+Fv7HmJFdS0szo/waF2w==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24.0.0} peerDependencies: canvas: ^3.0.0 peerDependenciesMeta: @@ -8654,6 +8387,9 @@ packages: json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + json-logic-js@2.0.5: + resolution: {integrity: sha512-rTT2+lqcuUmj4DgWfmzupZqQDA64AdmYqizzMPWj3DxGdfFNsxPpcNVSaTj4l8W2tG/+hg7/mQhxjU3aPacO6g==} + json-parse-even-better-errors@2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} @@ -8896,8 +8632,8 @@ packages: linkify-it@5.0.0: resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} - lint-staged@16.3.3: - resolution: {integrity: sha512-RLq2koZ5fGWrx7tcqx2tSTMQj4lRkfNJaebO/li/uunhCJbtZqwTuwPHpgIimAHHi/2nZIiGrkCHDCOeR1onxA==} + lint-staged@16.4.0: + resolution: {integrity: sha512-lBWt8hujh/Cjysw5GYVmZpFHXDCgZzhrOm8vbcUdobADZNOK/bRshr2kM3DfgrrtR1DQhfupW9gnIXOfiFi+bw==} engines: {node: '>=20.17'} hasBin: true @@ -8909,10 +8645,6 @@ packages: resolution: {integrity: sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q==} engines: {node: '>=6.11.5'} - loader-utils@2.0.4: - resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} - engines: {node: '>=8.9.0'} - local-pkg@1.1.2: resolution: {integrity: sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A==} engines: {node: '>=14'} @@ -8925,8 +8657,8 @@ packages: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} - lodash-es@4.17.23: - resolution: {integrity: sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg==} + lodash-es@4.18.1: + resolution: {integrity: sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A==} lodash.camelcase@4.3.0: resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} @@ -8987,6 +8719,10 @@ packages: resolution: {integrity: sha512-ESL2CrkS/2wTPfuend7Zhkzo2u0daGJ/A2VucJOgQ/C48S/zB8MMeMHSGKYpXhIjbPxfuezITkaBH1wqv00DDQ==} engines: {node: 20 || >=22} + lru-cache@11.3.5: + resolution: {integrity: sha512-NxVFwLAnrd9i7KUBxC4DrUhmgjzOs+1Qm50D3oF1/oL+r1NpZ4gA7xvG0/zJ8evR7zIKn4vLf7qTNduWFtCrRw==} + engines: {node: 20 || >=22} + lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -8994,10 +8730,6 @@ packages: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} engines: {node: '>=10'} - lru.min@1.1.3: - resolution: {integrity: sha512-Lkk/vx6ak3rYkRR0Nhu4lFUT2VDnQSxBe8Hbl7f36358p6ow8Bnvr8lrLt98H8J1aGxfhbX4Fs5tYg2+FTwr5Q==} - engines: {bun: '>=1.0.0', deno: '>=1.30.0', node: '>=8.0.0'} - lru.min@1.1.4: resolution: {integrity: sha512-DqC6n3QQ77zdFpCMASA1a3Jlb64Hv2N2DciFGkO/4L9+q/IpIAuRlKOvCXabtRW6cQf8usbmM6BE/TOPysCdIA==} engines: {bun: '>=1.0.0', deno: '>=1.30.0', node: '>=8.0.0'} @@ -9044,11 +8776,8 @@ packages: resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} engines: {node: '>= 0.4'} - mdn-data@2.0.14: - resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} - - mdn-data@2.12.2: - resolution: {integrity: sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==} + mdn-data@2.27.1: + resolution: {integrity: sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==} mdurl@2.0.0: resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} @@ -9103,10 +8832,18 @@ packages: resolution: {integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==} hasBin: true + minimatch@10.2.3: + resolution: {integrity: sha512-Rwi3pnapEqirPSbWbrZaa6N3nmqq4Xer/2XooiOKyV3q12ML06f7MOuc5DVH8ONZIFhwIYQ3yzPH4nt7iWHaTg==} + engines: {node: 18 || 20 || >=22} + minimatch@10.2.4: resolution: {integrity: sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==} engines: {node: 18 || 20 || >=22} + minimatch@10.2.5: + resolution: {integrity: sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==} + engines: {node: 18 || 20 || >=22} + minimatch@3.1.5: resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} @@ -9125,8 +8862,8 @@ packages: resolution: {integrity: sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==} engines: {node: '>=8'} - minipass-flush@1.0.5: - resolution: {integrity: sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==} + minipass-flush@1.0.7: + resolution: {integrity: sha512-TbqTz9cUwWyHS2Dy89P3ocAGUGxKjjLuR9z8w4WUTGAVgEj17/4nhgo2Du56i0Fm3Pm30g4iA8Lcqctc76jCzA==} engines: {node: '>= 8'} minipass-pipeline@1.2.4: @@ -9153,8 +8890,8 @@ packages: resolution: {integrity: sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==} engines: {node: '>= 18'} - mixpanel@0.18.1: - resolution: {integrity: sha512-YD1xfn6WP6ZLQ6Pmgh0KgdXhueJEsrodThMTsHzHMH0VbWa9ck8s+ynDtM83OSgt+yQ61W/SQNrH8Y4wIwocGg==} + mixpanel@0.20.0: + resolution: {integrity: sha512-va/dizV9tWgumKU3WQR2ZbMsb3NDlSaF7enDwtRiVIz2HCu7Cl3dq8BMV7ufB5LiNWtgtoELHsJvJv+hGhpvxw==} engines: {node: '>=10.0'} mkdirp-classic@0.5.3: @@ -9165,8 +8902,8 @@ packages: engines: {node: '>=10'} hasBin: true - mlly@1.8.0: - resolution: {integrity: sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==} + mlly@1.8.2: + resolution: {integrity: sha512-d+ObxMQFmbt10sretNDytwt85VrbkhhUA/JBGm1MPaWJ65Cl4wOgLaB1NYvJSZ0Ef03MMEU/0xpPMXUIQ29UfA==} mnemonist@0.38.3: resolution: {integrity: sha512-2K9QYubXx/NAjv4VLq1d1Ly8pWNC5L3BrixtdkyTegXWJIqY+zLNDhhX/A+ZwWt70tB1S8H4BE8FLYEFyNoOBw==} @@ -9174,20 +8911,21 @@ packages: module-details-from-path@1.0.4: resolution: {integrity: sha512-EGWKgxALGMgzvxYF1UyGTy0HXX/2vHLkw6+NvDKW2jypWbHpjQuj4UMcqQWXHERJhVGKikolT06G3bcKe4fi7w==} - mongodb-connection-string-url@3.0.2: - resolution: {integrity: sha512-rMO7CGo/9BFwyZABcKAWL8UJwH/Kc2x0g72uhDWzG48URRax5TCIcJ7Rc3RZqffZzO/Gwff/jyKwCU9TN8gehA==} + mongodb-connection-string-url@7.0.1: + resolution: {integrity: sha512-h0AZ9A7IDVwwHyMxmdMXKy+9oNlF0zFoahHiX3vQ8e3KFcSP3VmsmfvtRSuLPxmyv2vjIDxqty8smTgie/SNRQ==} + engines: {node: '>=20.19.0'} - mongodb@6.16.0: - resolution: {integrity: sha512-D1PNcdT0y4Grhou5Zi/qgipZOYeWrhLEpk33n3nm6LGtz61jvO88WlrWCK/bigMjpnOdAUKKQwsGIl0NtWMyYw==} - engines: {node: '>=16.20.1'} + mongodb@7.1.0: + resolution: {integrity: sha512-kMfnKunbolQYwCIyrkxNJFB4Ypy91pYqua5NargS/f8ODNSJxT03ZU3n1JqL4mCzbSih8tvmMEMLpKTT7x5gCg==} + engines: {node: '>=20.19.0'} peerDependencies: - '@aws-sdk/credential-providers': ^3.188.0 - '@mongodb-js/zstd': ^1.1.0 || ^2.0.0 - gcp-metadata: ^5.2.0 - kerberos: ^2.0.1 - mongodb-client-encryption: '>=6.0.0 <7' - snappy: ^7.2.2 - socks: ^2.7.1 + '@aws-sdk/credential-providers': ^3.806.0 + '@mongodb-js/zstd': ^7.0.0 + gcp-metadata: ^7.0.1 + kerberos: ^7.0.0 + mongodb-client-encryption: '>=7.0.0 <7.1.0' + snappy: ^7.3.2 + socks: ^2.8.6 peerDependenciesMeta: '@aws-sdk/credential-providers': optional: true @@ -9213,22 +8951,24 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - mssql@11.0.1: - resolution: {integrity: sha512-KlGNsugoT90enKlR8/G36H0kTxPthDhmtNUCwEHvgRza5Cjpjoj+P2X6eMpFUDN7pFrJZsKadL4x990G8RBE1w==} + mssql@12.2.1: + resolution: {integrity: sha512-TU89g82WatOVcinw3etO/crKbd67ugC3Wm6TJDklHjp7211brVENWIs++UoPC2H+TWvyi0OSlzMou8GY15onOA==} engines: {node: '>=18'} hasBin: true muggle-string@0.4.1: resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} - mysql2@3.14.1: - resolution: {integrity: sha512-7ytuPQJjQB8TNAYX/H2yhL+iQOnIBjAMam361R7UAL0lOVXWjtdrmoL9HYKqKoLp/8UUTRcvo1QPvK9KL7wA8w==} - engines: {node: '>= 8.0'} - mysql2@3.15.3: resolution: {integrity: sha512-FBrGau0IXmuqg4haEZRBfHNWB5mUARw6hNwPDXXGg0XzVJ50mr/9hb267lvpVMnhZ1FON3qNd4Xfcez1rbFwSg==} engines: {node: '>= 8.0'} + mysql2@3.20.0: + resolution: {integrity: sha512-eCLUs7BNbgA6nf/MZXsaBO1SfGs0LtLVrJD3WeWq+jPLDWkSufTD+aGMwykfUVPdZnblaUK1a8G/P63cl9FkKg==} + engines: {node: '>= 8.0'} + peerDependencies: + '@types/node': '>= 8' + mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} @@ -9236,12 +8976,6 @@ packages: resolution: {integrity: sha512-Tz09sEL2EEuv5fFowm419c1+a/jSMiBjI9gHxVLrVdbUkkNUUfjsVYs9pVZu5oCon/kmRh9TfLEObFtkVxmY0w==} engines: {node: '>=8.0.0'} - nano-css@5.6.2: - resolution: {integrity: sha512-+6bHaC8dSDGALM1HJjOHVXpuastdu2xFoZlC77Jh4cg+33Zcgm+Gxd+1xsnpZK14eyHObSp82+ll5y3SX75liw==} - peerDependencies: - react: '*' - react-dom: '*' - nanoid@3.3.11: resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -9294,8 +9028,8 @@ packages: react: '>= 18.2.0' react-dom: '>= 18.2.0' - next@16.1.7: - resolution: {integrity: sha512-WM0L7WrSvKwoLegLYr6V+mz+RIofqQgVAfHhMp9a88ms0cFX8iX9ew+snpWlSBwpkURJOUdvCEt3uLl3NNzvWg==} + next@16.2.4: + resolution: {integrity: sha512-kPvz56wF5frc+FxlHI5qnklCzbq53HTwORaWBGdT0vNoKh1Aya9XC8aPauH4NJxqtzbWsS5mAbctm4cr+EkQ2Q==} engines: {node: '>=20.9.0'} hasBin: true peerDependencies: @@ -9343,8 +9077,8 @@ packages: resolution: {integrity: sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - node-forge@1.3.3: - resolution: {integrity: sha512-rLvcdSyRCyouf6jcOIPe/BgwG/d7hKjzMKOas33/pHEr6gbq18IK9zV7DiPvzsz0oBJPme6qr6H6kGZuI9/DZg==} + node-forge@1.4.0: + resolution: {integrity: sha512-LarFH0+6VfriEhqMMcLX2F7SwSXeWwnEAJEsYm5QKWchiVYVvJyV9v7UDvUv+w5HO23ZpQTXDv/GxdDdMyOuoQ==} engines: {node: '>= 6.13.0'} node-gyp@8.4.1: @@ -9361,8 +9095,11 @@ packages: node-releases@2.0.27: resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==} - nodemailer@8.0.4: - resolution: {integrity: sha512-k+jf6N8PfQJ0Fe8ZhJlgqU5qJU44Lpvp2yvidH3vp1lPnVQMgi4yEEMPXg5eJS1gFIJTVq1NHBk7Ia9ARdSBdQ==} + node-releases@2.0.38: + resolution: {integrity: sha512-3qT/88Y3FbH/Kx4szpQQ4HzUbVrHPKTLVpVocKiLfoYvw9XSGOX2FmD2d6DrXbVYyAQTF2HeF6My8jmzx7/CRw==} + + nodemailer@8.0.5: + resolution: {integrity: sha512-0PF8Yb1yZuQfQbq+5/pZJrtF6WQcjTd5/S4JOHs9PGFxuTqoB/icwuB44pOdURHJbRKX1PPoJZtY7R4VUoCC8w==} engines: {node: '>=6.0.0'} nopt@5.0.0: @@ -9390,8 +9127,8 @@ packages: engines: {node: ^14.16.0 || >=16.10.0} hasBin: true - oauth4webapi@3.8.3: - resolution: {integrity: sha512-pQ5BsX3QRTgnt5HxgHwgunIRaDXBdkT23tf8dfzmtTIL2LTpdmxgbpbBm0VgFWAIDlezQvQCTgnVIUmHupXHxw==} + oauth4webapi@3.8.5: + resolution: {integrity: sha512-A8jmyUckVhRJj5lspguklcl90Ydqk61H3dcU0oLhH3Yv13KpAliKTt5hknpGGPZSSfOwGyraNEFmofDYH+1kSg==} oauth@0.9.15: resolution: {integrity: sha512-a5ERWK1kh38ExDEfoO6qUHJb32rd7aYmPHuyCu3Fta/cnICvYmgd2uhuKXvPD+PXB+gCEYYEaQdIRAjCOwAKNA==} @@ -9475,8 +9212,8 @@ packages: openid-client@5.7.1: resolution: {integrity: sha512-jDBPgSVfTnkIh71Hg9pRvtJc6wTwqjRkN88+gCFtYWrlP4Yx2Dsrow8uPi3qLr/aeymPF3o2+dS+wOpglK04ew==} - openid-client@6.5.0: - resolution: {integrity: sha512-fAfYaTnOYE2kQCqEJGX9KDObW2aw7IQy4jWpU/+3D3WoCFLbix5Hg6qIPQ6Js9r7f8jDUmsnnguRNCSw4wU/IQ==} + openid-client@6.8.2: + resolution: {integrity: sha512-uOvTCndr4udZsKihJ68H9bUICrriHdUVJ6Az+4Ns6cW55rwM5h0bjVIzDz2SxgOI84LKjFyjOFvERLzdTUROGA==} optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} @@ -9596,31 +9333,34 @@ packages: perfect-debounce@1.0.0: resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==} - pg-cloudflare@1.2.7: - resolution: {integrity: sha512-YgCtzMH0ptvZJslLM1ffsY4EuGaU0cx4XSdXLRFae8bPP4dS5xL1tNB3k2o/N64cHJpwU7dxKli/nZ2lUa5fLg==} + pg-cloudflare@1.3.0: + resolution: {integrity: sha512-6lswVVSztmHiRtD6I8hw4qP/nDm1EJbKMRhf3HCYaqud7frGysPv7FYJ5noZQdhQtN2xJnimfMtvQq21pdbzyQ==} - pg-connection-string@2.9.1: - resolution: {integrity: sha512-nkc6NpDcvPVpZXxrreI/FOtX3XemeLl8E0qFr6F2Lrm/I8WOnaWNhIPK2Z7OHpw7gh5XJThi6j6ppgNoaT1w4w==} + pg-connection-string@2.12.0: + resolution: {integrity: sha512-U7qg+bpswf3Cs5xLzRqbXbQl85ng0mfSV/J0nnA31MCLgvEaAo7CIhmeyrmJpOr7o+zm0rXK+hNnT5l9RHkCkQ==} pg-int8@1.0.1: resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==} engines: {node: '>=4.0.0'} - pg-pool@3.10.1: - resolution: {integrity: sha512-Tu8jMlcX+9d8+QVzKIvM/uJtp07PKr82IUOYEphaWcoBhIYkoHpLXN3qO59nAI11ripznDsEzEv8nUxBVWajGg==} + pg-pool@3.13.0: + resolution: {integrity: sha512-gB+R+Xud1gLFuRD/QgOIgGOBE2KCQPaPwkzBBGC9oG69pHTkhQeIuejVIk3/cnDyX39av2AxomQiyPT13WKHQA==} peerDependencies: pg: '>=8.0' pg-protocol@1.10.3: resolution: {integrity: sha512-6DIBgBQaTKDJyxnXaLiLR8wBpQQcGWuAESkRBX/t6OwA8YsqP+iVSiond2EDy6Y/dsGk8rh/jtax3js5NeV7JQ==} + pg-protocol@1.13.0: + resolution: {integrity: sha512-zzdvXfS6v89r6v7OcFCHfHlyG/wvry1ALxZo4LqgUoy7W9xhBDMaqOuMiF3qEV45VqsN6rdlcehHrfDtlCPc8w==} + pg-types@2.2.0: resolution: {integrity: sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==} engines: {node: '>=4'} - pg@8.16.0: - resolution: {integrity: sha512-7SKfdvP8CTNXjMUzfcVTaI+TDzBEeaUnVwiVGZQD1Hh33Kpev7liQba9uLd4CfN8r9mCVsD0JIpq03+Unpz+kg==} - engines: {node: '>= 8.0.0'} + pg@8.20.0: + resolution: {integrity: sha512-ldhMxz2r8fl/6QkXnBD3CR9/xg694oT6DZQ2s6c/RI28OjtSOpxnPrUCGOBJ46RCUxcWdx3p6kw/xnDHjKvaRA==} + engines: {node: '>= 16.0.0'} peerDependencies: pg-native: '>=3.0.1' peerDependenciesMeta: @@ -9637,10 +9377,6 @@ packages: resolution: {integrity: sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==} engines: {node: '>=8.6'} - picomatch@4.0.3: - resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} - engines: {node: '>=12'} - picomatch@4.0.4: resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==} engines: {node: '>=12'} @@ -9773,8 +9509,8 @@ packages: resolution: {integrity: sha512-Jtc2612XINuBjIl/QTWsV5UvE8UHuNblcO3vVADSrKsrc6RqGX6lOW1cEo3CM2v0XG4Nat8nI+YM7/f26VxXLw==} engines: {node: '>=12'} - posthog-js@1.360.0: - resolution: {integrity: sha512-jkyO+T97yi6RuiexOaXC7AnEGiC+yIfGU5DIUzI5rqBH6MltmtJw/ve2Oxc4jeua2WDr5sXMzo+SS+acbpueAA==} + posthog-js@1.369.5: + resolution: {integrity: sha512-RmvxOd8DHWyd5LwlKDeem3m6C9OKgsmZJSxUwmOc+Ldp5TgR+De6OiB0OW+Re0GqoVGqANCBSxYgYX4aD8YPLA==} posthog-node@5.28.9: resolution: {integrity: sha512-iZWyAYkIAq5QqcYz4q2nXOX+Ivn04Yh8AuKqfFVw0SvBpfli49bNAjyE97qbRTLr+irrzRUELgGIkDC14NgugA==} @@ -9974,6 +9710,10 @@ packages: proxy-from-env@1.1.0: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + proxy-from-env@2.1.0: + resolution: {integrity: sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==} + engines: {node: '>=10'} + pump@3.0.3: resolution: {integrity: sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==} @@ -10056,8 +9796,8 @@ packages: peerDependencies: typescript: '>= 4.3.x' - react-docgen@8.0.2: - resolution: {integrity: sha512-+NRMYs2DyTP4/tqWz371Oo50JqmWltR1h2gcdgUMAWZJIAvrd0/SqlCfx7tpzpl/s36rzw6qH2MjoNrxtRNYhA==} + react-docgen@8.0.3: + resolution: {integrity: sha512-aEZ9qP+/M+58x2qgfSFEWH1BxLyHe5+qkLNJOZQb5iGS017jpbRnoKhNRrXPeA6RfBrZO5wZrT9DMC1UqE1f1w==} engines: {node: ^20.9.0 || >=22} react-dom@19.2.4: @@ -10065,6 +9805,11 @@ packages: peerDependencies: react: ^19.2.4 + react-dom@19.2.5: + resolution: {integrity: sha512-J5bAZz+DXMMwW/wV3xzKke59Af6CHY7G4uYLN1OvBcKEsWOs4pQExj86BBKamxl/Ik5bx9whOrvBlSDfWzgSag==} + peerDependencies: + react: ^19.2.5 + react-email@5.2.10: resolution: {integrity: sha512-Ys8yR5/a0nXf5u2GlT2UV93PJHC3ZnuMnNebEn7I5UE9XfMFPtlpgDs02mPJOJn49fhJjDTWIUlZD1vmQPDgJg==} engines: {node: '>=20.0.0'} @@ -10150,22 +9895,14 @@ packages: react: '>= 16.13.1' react-dom: '>= 16.13.1' - react-universal-interface@0.6.2: - resolution: {integrity: sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw==} - peerDependencies: - react: '*' - tslib: '*' - - react-use@17.6.0: - resolution: {integrity: sha512-OmedEScUMKFfzn1Ir8dBxiLLSOzhKe/dPZwVxcujweSj45aNM7BEGPb9BEVIgVEqEXx6f3/TsXzwIktNgUR02g==} - peerDependencies: - react: '*' - react-dom: '*' - react@19.2.4: resolution: {integrity: sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==} engines: {node: '>=0.10.0'} + react@19.2.5: + resolution: {integrity: sha512-llUJLzz1zTUBrskt2pwZgLq59AemifIftw4aB7JxOqf1HY2FDaGDxgwpAPVzHU1kdWabH7FauP4i1oEeer2WCA==} + engines: {node: '>=0.10.0'} + read-cache@1.0.0: resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} @@ -10208,8 +9945,8 @@ packages: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} engines: {node: '>=8'} - redis@4.7.0: - resolution: {integrity: sha512-zvmkHEAdGMn+hMRXuMBtu4Vo5P6rHQjLoHftu+lBqq8ZTA3RCVC/WzD790bkKKiNFp7d5/9PcSD19fJyyRvOdQ==} + redis@4.7.1: + resolution: {integrity: sha512-S1bJDnqLftzHXHP8JsT5II/CtHWQrASX5K96REjWjlmWKrviSOLWmM7QnRLstAWsu1VBBV1ffV6DzCvxNP0UJQ==} redis@5.11.0: resolution: {integrity: sha512-YwXjATVDT+AuxcyfOwZn046aml9jMlQPvU1VXIlLDVAExe0u93aTfPYSeRgG4p9Q/Jlkj+LXJ1XEoFV+j2JKcQ==} @@ -10273,6 +10010,11 @@ packages: engines: {node: '>= 0.4'} hasBin: true + resolve@1.22.12: + resolution: {integrity: sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==} + engines: {node: '>= 0.4'} + hasBin: true + resolve@2.0.0-next.5: resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} hasBin: true @@ -10306,8 +10048,9 @@ packages: engines: {node: 20 || >=22} hasBin: true - ripemd160@2.0.2: - resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} + ripemd160@2.0.3: + resolution: {integrity: sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA==} + engines: {node: '>= 0.8'} rolldown@1.0.0-rc.12: resolution: {integrity: sha512-yP4USLIMYrwpPHEFB5JGH1uxhcslv6/hL0OyvTuY+3qlOSJvZ7ntYnoWpehBxufkgN0cvXxppuTu5hHa/zPh+A==} @@ -10320,7 +10063,7 @@ packages: hasBin: true peerDependencies: rolldown: 1.x || ^1.0.0-beta || ^1.0.0-rc - rollup: 4.59.0 + rollup: 2.x || 3.x || 4.x peerDependenciesMeta: rolldown: optional: true @@ -10332,9 +10075,6 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true - rtl-css-js@1.16.1: - resolution: {integrity: sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==} - run-applescript@7.1.0: resolution: {integrity: sha512-DPe5pVFaAsinSaV6QjQ6gdiedWDcRCbUuiQfQa2wmWV7+xC9bGulGI8+TdRmoFkAPaBXk8CrAbnlY2ISniJ47Q==} engines: {node: '>=18'} @@ -10383,18 +10123,10 @@ packages: scheduler@0.27.0: resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==} - schema-utils@3.3.0: - resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} - engines: {node: '>= 10.13.0'} - schema-utils@4.3.3: resolution: {integrity: sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA==} engines: {node: '>= 10.13.0'} - screenfull@5.2.0: - resolution: {integrity: sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==} - engines: {node: '>=0.10.0'} - secure-json-parse@4.1.0: resolution: {integrity: sha512-l4KnYfEyqYJxDwlNVyRfO2E4NTHfMKAWdUuA8J0yve2Dz/E/PdBepY03RvyJpssIpRFwJoCD55wA+mEDs6ByWA==} @@ -10409,13 +10141,13 @@ packages: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} + semver@7.7.3: + resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} engines: {node: '>=10'} hasBin: true - semver@7.7.3: - resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} + semver@7.7.4: + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} engines: {node: '>=10'} hasBin: true @@ -10436,10 +10168,6 @@ packages: resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} engines: {node: '>= 0.4'} - set-harmonic-interval@1.0.1: - resolution: {integrity: sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g==} - engines: {node: '>=6.9'} - set-proto@1.0.0: resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} engines: {node: '>= 0.4'} @@ -10556,10 +10284,6 @@ packages: source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} - source-map@0.5.6: - resolution: {integrity: sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==} - engines: {node: '>=0.10.0'} - source-map@0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} @@ -10593,6 +10317,10 @@ packages: sprintf-js@1.1.3: resolution: {integrity: sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==} + sql-escaper@1.3.3: + resolution: {integrity: sha512-BsTCV265VpTp8tm1wyIm1xqQCS+Q9NHx2Sr+WcnUrgLrQ6yiDIvHYJV5gHxsj1lMBy2zm5twLaZao8Jd+S8JJw==} + engines: {bun: '>=1.0.0', deno: '>=2.0.0', node: '>=12.0.0'} + sql-highlight@6.1.0: resolution: {integrity: sha512-ed7OK4e9ywpE7pgRMkMQmZDPKSVdm0oX5IEtZiKnFucSF0zu6c80GZBe38UqHuVhTWJ9xsKgSMjCG2bml86KvA==} engines: {node: '>=14'} @@ -10611,9 +10339,6 @@ packages: stable-hash@0.0.5: resolution: {integrity: sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==} - stack-generator@2.0.10: - resolution: {integrity: sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==} - stack-trace@1.0.0-pre2: resolution: {integrity: sha512-2ztBJRek8IVofG9DBJqdy2N5kulaacX30Nz7xmkYF6ale9WBVmIy6mFBchvGX7Vx/MyjBhx+Rcxqrj+dbOnQ6A==} engines: {node: '>=16'} @@ -10621,15 +10346,6 @@ packages: stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} - stackframe@1.3.4: - resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} - - stacktrace-gps@3.1.2: - resolution: {integrity: sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==} - - stacktrace-js@2.0.2: - resolution: {integrity: sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==} - stacktrace-parser@0.1.11: resolution: {integrity: sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg==} engines: {node: '>=6'} @@ -10637,6 +10353,9 @@ packages: std-env@3.10.0: resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} + std-env@4.1.0: + resolution: {integrity: sha512-Rq7ybcX2RuC55r9oaPVEW7/xu3tj8u4GeBYHBWCychFtzMIr86A7e3PPEBPT37sHStKX3+TiX/Fr/ACmJLVlLQ==} + stdin-discarder@0.2.2: resolution: {integrity: sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==} engines: {node: '>=18'} @@ -10645,8 +10364,8 @@ packages: resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} engines: {node: '>= 0.4'} - storybook@10.2.17: - resolution: {integrity: sha512-yueTpl5YJqLzQqs3CanxNdAAfFU23iP0j+JVJURE4ghfEtRmWfWoZWLGkVcyjmgum7UmjwAlqRuOjQDNvH89kw==} + storybook@10.3.5: + resolution: {integrity: sha512-uBSZu/GZa9aEIW3QMGvdQPMZWhGxSe4dyRWU8B3/Vd47Gy/XLC7tsBxRr13txmmPOEDHZR94uLuq0H50fvuqBw==} hasBin: true peerDependencies: prettier: ^2 || ^3 @@ -10766,9 +10485,6 @@ packages: babel-plugin-macros: optional: true - stylis@4.3.6: - resolution: {integrity: sha512-yQ3rwFWRfwNUY7H5vpU0wfdkNSnvnJinhF9830Swlaxl03zsOjCfmX0ugac+3LtK0lYSgwL/KXc8oYL3mG4YFQ==} - sucrase@3.35.1: resolution: {integrity: sha512-DhuTmvZWux4H1UOnWMB3sk0sbaCVOoQZjv8u1rDoTV0HTdGem9hkAZtl4JZy8P2z4Bg0nT+YMeOFyVr4zcG5Tw==} engines: {node: '>=16 || 14 >=14.17'} @@ -10818,6 +10534,10 @@ packages: resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==} engines: {node: '>=6'} + tapable@2.3.3: + resolution: {integrity: sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==} + engines: {node: '>=6'} + tar-fs@2.1.4: resolution: {integrity: sha512-mDAjwmZdh7LTT6pNleZ05Yt65HC3E+NiQzl672vQG38jIrehtJk/J3mNwIg+vShQPcLF/LV7CMnDW6vjj6sfYQ==} @@ -10825,20 +10545,20 @@ packages: resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} engines: {node: '>=6'} - tar@7.5.11: - resolution: {integrity: sha512-ChjMH33/KetonMTAtpYdgUFr0tbz69Fp2v7zWxQfYZX4g5ZN2nOBXm1R2xyA+lMIKrLKIoKAwFj93jE/avX9cQ==} + tar@7.5.13: + resolution: {integrity: sha512-tOG/7GyXpFevhXVh8jOPJrmtRpOTsYqUIkVdVooZYJS/z8WhfQUX8RJILmeuJNinGAMSu1veBr4asSHFt5/hng==} engines: {node: '>=18'} tarn@3.0.2: resolution: {integrity: sha512-51LAVKUSZSVfI05vjPESNc5vwqqZpbXCsU+/+wxlOrUjk2SnFTt97v9ZgQrD4YmxYW1Px6w2KjaDitCfkvgxMQ==} engines: {node: '>=8.0.0'} - tedious@18.6.2: - resolution: {integrity: sha512-g7jC56o3MzLkE3lHkaFe2ZdOVFBahq5bsB60/M4NYUbocw/MCrS89IOEQUFr+ba6pb8ZHczZ/VqCyYeYq0xBAg==} - engines: {node: '>=18'} + tedious@19.2.1: + resolution: {integrity: sha512-pk1Q16Yl62iocuQB+RWbg6rFUFkIyzqOFQ6NfysCltRvQqKwfurgj8v/f2X+CKvDhSL4IJ0cCOfCHDg9PWEEYA==} + engines: {node: '>=18.17'} - terser-webpack-plugin@5.3.17: - resolution: {integrity: sha512-YR7PtUp6GMU91BgSJmlaX/rS2lGDbAF7D+Wtq7hRO+MiljNmodYvqslzCFiYVAgW+Qoaaia/QUIP4lGXufjdZw==} + terser-webpack-plugin@5.4.0: + resolution: {integrity: sha512-Bn5vxm48flOIfkdl5CaD2+1CiUVbonWQ3KQPyP7/EuIl9Gbzq/gQFOzaMFUEgVjB1396tcK0SG8XcNJ/2kDH8g==} engines: {node: '>= 10.13.0'} peerDependencies: '@swc/core': '*' @@ -10853,8 +10573,8 @@ packages: uglify-js: optional: true - terser@5.46.0: - resolution: {integrity: sha512-jTwoImyr/QbOWFFso3YoU3ik0jBBDJ6JTOQiy/J2YxVJdZCc+5u7skhNwiOR3FQIygFqVUPHl7qbbxtjW2K3Qg==} + terser@5.46.1: + resolution: {integrity: sha512-vzCjQO/rgUuK9sf8VJZvjqiqiHFaZLnOiimmUuOKODxWL8mm/xua7viT7aqX7dgPY60otQjUotzFMmCB4VdmqQ==} engines: {node: '>=10'} hasBin: true @@ -10876,10 +10596,6 @@ packages: resolution: {integrity: sha512-4iMVL6HAINXWf1ZKZjIPcz5wYaOdPhtO8ATvZ+Xqp3BTdaqtAwQkNmKORqcIo5YkQqGXq5cwfswDwMqqQNrpJA==} engines: {node: '>=20'} - throttle-debounce@3.0.1: - resolution: {integrity: sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==} - engines: {node: '>=10'} - tiny-invariant@1.3.3: resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} @@ -10890,16 +10606,24 @@ packages: resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==} engines: {node: '>=18'} + tinyexec@1.1.1: + resolution: {integrity: sha512-VKS/ZaQhhkKFMANmAOhhXVoIfBXblQxGX1myCQ2faQrfmobMftXeJPcZGp0gS07ocvGJWDLZGyOZDadDBqYIJg==} + engines: {node: '>=18'} + tinyglobby@0.2.15: resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} engines: {node: '>=12.0.0'} + tinyglobby@0.2.16: + resolution: {integrity: sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==} + engines: {node: '>=12.0.0'} + tinyrainbow@2.0.0: resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==} engines: {node: '>=14.0.0'} - tinyrainbow@3.0.3: - resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} + tinyrainbow@3.1.0: + resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} engines: {node: '>=14.0.0'} tinyspy@4.0.4: @@ -10921,11 +10645,8 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} - toggle-selection@1.0.6: - resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==} - - tough-cookie@6.0.0: - resolution: {integrity: sha512-kXuRi1mtaKMrsLUxz3sQYvVl37B0Ns6MzfrtV5DvJceE9bPyspOqk9xxv7XbZWcfLWbFmm997vl83qUWVJA64w==} + tough-cookie@6.0.1: + resolution: {integrity: sha512-LktZQb3IeoUWB9lqR5EWTHgW/VTITCXg4D21M+lvybRVdylLrRMnqaIONLVb5mav8vM19m44HIcGq4qASeu2Qw==} engines: {node: '>=16'} tr46@0.0.3: @@ -10955,13 +10676,16 @@ packages: peerDependencies: typescript: '>=4.8.4' + ts-api-utils@2.5.0: + resolution: {integrity: sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' + ts-dedent@2.2.0: resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==} engines: {node: '>=6.10'} - ts-easing@0.2.0: - resolution: {integrity: sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ==} - ts-essentials@10.1.1: resolution: {integrity: sha512-4aTB7KLHKmUvkjNj8V+EdnmuVTiECzn3K+zIbRthumvHu+j44x3w63xpfs0JL3NGIzGXqoQ7AV591xHO+XrOTw==} peerDependencies: @@ -11156,11 +10880,6 @@ packages: typeorm-aurora-data-api-driver: optional: true - typescript@5.8.2: - resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} - engines: {node: '>=14.17'} - hasBin: true - typescript@5.9.3: resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} engines: {node: '>=14.17'} @@ -11176,8 +10895,8 @@ packages: uc.micro@2.1.0: resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} - ufo@1.6.1: - resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==} + ufo@1.6.3: + resolution: {integrity: sha512-yDJTmhydvl5lJzBmy/hyOAA0d+aqCBuwl818haVdYCRrWV84o7YyeVm4QlVHStqNrrJSTb6jKuFAVqAFsr+K3Q==} uint8array-extras@1.5.0: resolution: {integrity: sha512-rvKSBiC5zqCCiDZ9kAOszZcDvdAHwwIKJG33Ykj43OKcWsnmcBRL09YTU4nOeHZ8Y2a7l1MgTd08SBe9A8Qj6A==} @@ -11197,6 +10916,10 @@ packages: resolution: {integrity: sha512-jxytwMHhsbdpBXxLAcuu0fzlQeXCNnWdDyRHpvWsUl8vd98UwYdl9YTyn8/HcpcJPC3pwUveefsa3zTxyD/ERg==} engines: {node: '>=20.18.1'} + undici@7.25.0: + resolution: {integrity: sha512-xXnp4kTyor2Zq+J1FfPI6Eq3ew5h6Vl0F/8d9XU5zZQf1tX9s2Su1/3PiMmUANFULpmksxkClamIZcaUqryHsQ==} + engines: {node: '>=20.18.1'} + unique-filename@1.1.1: resolution: {integrity: sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==} @@ -11396,20 +11119,23 @@ packages: typescript: 3.x || 4.x || 5.x vitest: '>=3.0.0' - vitest@4.0.18: - resolution: {integrity: sha512-hOQuK7h0FGKgBAas7v0mSAsnvrIgAvWmRFjmzpJ7SwFHH3g1k2u37JtYwOwmEKhK6ZO3v9ggDBBm0La1LCK4uQ==} + vitest@4.1.5: + resolution: {integrity: sha512-9Xx1v3/ih3m9hN+SbfkUyy0JAs72ap3r7joc87XL6jwF0jGg6mFBvQ1SrwaX+h8BlkX6Hz9shdd1uo6AF+ZGpg==} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@opentelemetry/api': ^1.9.0 '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.0.18 - '@vitest/browser-preview': 4.0.18 - '@vitest/browser-webdriverio': 4.0.18 - '@vitest/ui': 4.0.18 + '@vitest/browser-playwright': 4.1.5 + '@vitest/browser-preview': 4.1.5 + '@vitest/browser-webdriverio': 4.1.5 + '@vitest/coverage-istanbul': 4.1.5 + '@vitest/coverage-v8': 4.1.5 + '@vitest/ui': 4.1.5 happy-dom: '*' jsdom: '*' + vite: ^6.0.0 || ^7.0.0 || ^8.0.0 peerDependenciesMeta: '@edge-runtime/vm': optional: true @@ -11423,6 +11149,10 @@ packages: optional: true '@vitest/browser-webdriverio': optional: true + '@vitest/coverage-istanbul': + optional: true + '@vitest/coverage-v8': + optional: true '@vitest/ui': optional: true happy-dom: @@ -11584,6 +11314,18 @@ packages: utf-8-validate: optional: true + ws@8.20.0: + resolution: {integrity: sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + wsl-utils@0.1.0: resolution: {integrity: sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw==} engines: {node: '>=18'} @@ -11653,8 +11395,8 @@ packages: resolution: {integrity: sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==} engines: {node: '>=18'} - yaml@2.8.2: - resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} + yaml@2.8.3: + resolution: {integrity: sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==} engines: {node: '>= 14.6'} hasBin: true @@ -11712,8 +11454,6 @@ packages: snapshots: - '@acemir/cssom@0.9.31': {} - '@adobe/css-tools@4.4.4': {} '@ai-sdk/amazon-bedrock@4.0.83(zod@4.3.6)': @@ -11790,21 +11530,23 @@ snapshots: '@ark/util@0.56.0': optional: true - '@asamuzakjp/css-color@5.0.1': + '@asamuzakjp/css-color@5.1.11': dependencies: - '@csstools/css-calc': 3.1.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) - '@csstools/css-color-parser': 4.0.2(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) + '@asamuzakjp/generational-cache': 1.0.1 + '@csstools/css-calc': 3.2.0(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) + '@csstools/css-color-parser': 4.1.0(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) '@csstools/css-parser-algorithms': 4.0.0(@csstools/css-tokenizer@4.0.0) '@csstools/css-tokenizer': 4.0.0 - lru-cache: 11.2.6 - '@asamuzakjp/dom-selector@6.8.1': + '@asamuzakjp/dom-selector@7.1.1': dependencies: + '@asamuzakjp/generational-cache': 1.0.1 '@asamuzakjp/nwsapi': 2.3.9 bidi-js: 1.0.3 - css-tree: 3.1.0 + css-tree: 3.2.1 is-potential-custom-element-name: 1.0.1 - lru-cache: 11.2.6 + + '@asamuzakjp/generational-cache@1.0.1': {} '@asamuzakjp/nwsapi@2.3.9': {} @@ -11855,7 +11597,7 @@ snapshots: '@smithy/util-utf8': 2.3.0 tslib: 2.8.1 - '@aws-sdk/client-cognito-identity@3.1017.0': + '@aws-sdk/client-cognito-identity@3.1013.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 @@ -11899,95 +11641,94 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/client-cognito-identity@3.817.0': + '@aws-sdk/client-cognito-identity@3.1017.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/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.4.10 - '@smithy/core': 3.23.9 - '@smithy/fetch-http-handler': 5.3.13 - '@smithy/hash-node': 4.2.11 - '@smithy/invalid-dependency': 4.2.11 - '@smithy/middleware-content-length': 4.2.11 - '@smithy/middleware-endpoint': 4.4.23 - '@smithy/middleware-retry': 4.4.40 - '@smithy/middleware-serde': 4.2.12 - '@smithy/middleware-stack': 4.2.11 - '@smithy/node-config-provider': 4.3.11 - '@smithy/node-http-handler': 4.4.14 - '@smithy/protocol-http': 5.3.11 - '@smithy/smithy-client': 4.12.3 - '@smithy/types': 4.13.0 - '@smithy/url-parser': 4.2.11 + '@aws-sdk/core': 3.973.24 + '@aws-sdk/credential-provider-node': 3.972.25 + '@aws-sdk/middleware-host-header': 3.972.8 + '@aws-sdk/middleware-logger': 3.972.8 + '@aws-sdk/middleware-recursion-detection': 3.972.8 + '@aws-sdk/middleware-user-agent': 3.972.25 + '@aws-sdk/region-config-resolver': 3.972.9 + '@aws-sdk/types': 3.973.6 + '@aws-sdk/util-endpoints': 3.996.5 + '@aws-sdk/util-user-agent-browser': 3.972.8 + '@aws-sdk/util-user-agent-node': 3.973.11 + '@smithy/config-resolver': 4.4.13 + '@smithy/core': 3.23.12 + '@smithy/fetch-http-handler': 5.3.15 + '@smithy/hash-node': 4.2.12 + '@smithy/invalid-dependency': 4.2.12 + '@smithy/middleware-content-length': 4.2.12 + '@smithy/middleware-endpoint': 4.4.27 + '@smithy/middleware-retry': 4.4.44 + '@smithy/middleware-serde': 4.2.15 + '@smithy/middleware-stack': 4.2.12 + '@smithy/node-config-provider': 4.3.12 + '@smithy/node-http-handler': 4.5.0 + '@smithy/protocol-http': 5.3.12 + '@smithy/smithy-client': 4.12.7 + '@smithy/types': 4.13.1 + '@smithy/url-parser': 4.2.12 '@smithy/util-base64': 4.3.2 '@smithy/util-body-length-browser': 4.2.2 '@smithy/util-body-length-node': 4.2.3 - '@smithy/util-defaults-mode-browser': 4.3.39 - '@smithy/util-defaults-mode-node': 4.2.42 - '@smithy/util-endpoints': 3.3.2 - '@smithy/util-middleware': 4.2.11 - '@smithy/util-retry': 4.2.11 + '@smithy/util-defaults-mode-browser': 4.3.43 + '@smithy/util-defaults-mode-node': 4.2.47 + '@smithy/util-endpoints': 3.3.3 + '@smithy/util-middleware': 4.2.12 + '@smithy/util-retry': 4.2.12 '@smithy/util-utf8': 4.2.2 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/client-dynamodb@3.817.0': + '@aws-sdk/client-dynamodb@3.1013.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/middleware-endpoint-discovery': 3.808.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.4.10 - '@smithy/core': 3.23.9 - '@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.13 - '@smithy/middleware-retry': 4.4.30 - '@smithy/middleware-serde': 4.2.9 - '@smithy/middleware-stack': 4.2.8 - '@smithy/node-config-provider': 4.3.11 - '@smithy/node-http-handler': 4.4.9 - '@smithy/protocol-http': 5.3.8 - '@smithy/smithy-client': 4.11.2 - '@smithy/types': 4.13.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.29 - '@smithy/util-defaults-mode-node': 4.2.32 - '@smithy/util-endpoints': 3.2.8 - '@smithy/util-middleware': 4.2.8 - '@smithy/util-retry': 4.2.8 + '@aws-sdk/core': 3.973.24 + '@aws-sdk/credential-provider-node': 3.972.25 + '@aws-sdk/dynamodb-codec': 3.973.3 + '@aws-sdk/middleware-endpoint-discovery': 3.972.11 + '@aws-sdk/middleware-host-header': 3.972.8 + '@aws-sdk/middleware-logger': 3.972.8 + '@aws-sdk/middleware-recursion-detection': 3.972.8 + '@aws-sdk/middleware-user-agent': 3.972.25 + '@aws-sdk/region-config-resolver': 3.972.9 + '@aws-sdk/types': 3.973.6 + '@aws-sdk/util-endpoints': 3.996.5 + '@aws-sdk/util-user-agent-browser': 3.972.8 + '@aws-sdk/util-user-agent-node': 3.973.11 + '@smithy/config-resolver': 4.4.13 + '@smithy/core': 3.23.12 + '@smithy/fetch-http-handler': 5.3.15 + '@smithy/hash-node': 4.2.12 + '@smithy/invalid-dependency': 4.2.12 + '@smithy/middleware-content-length': 4.2.12 + '@smithy/middleware-endpoint': 4.4.27 + '@smithy/middleware-retry': 4.4.44 + '@smithy/middleware-serde': 4.2.15 + '@smithy/middleware-stack': 4.2.12 + '@smithy/node-config-provider': 4.3.12 + '@smithy/node-http-handler': 4.5.0 + '@smithy/protocol-http': 5.3.12 + '@smithy/smithy-client': 4.12.7 + '@smithy/types': 4.13.1 + '@smithy/url-parser': 4.2.12 + '@smithy/util-base64': 4.3.2 + '@smithy/util-body-length-browser': 4.2.2 + '@smithy/util-body-length-node': 4.2.3 + '@smithy/util-defaults-mode-browser': 4.3.43 + '@smithy/util-defaults-mode-node': 4.2.47 + '@smithy/util-endpoints': 3.3.3 + '@smithy/util-middleware': 4.2.12 + '@smithy/util-retry': 4.2.12 '@smithy/util-utf8': 4.2.2 - '@smithy/util-waiter': 4.2.8 - '@types/uuid': 9.0.8 + '@smithy/util-waiter': 4.2.16 tslib: 2.8.1 - uuid: 9.0.1 transitivePeerDependencies: - aws-crt @@ -12051,67 +11792,10 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso@3.817.0': + '@aws-sdk/core@3.973.19': 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.4.10 - '@smithy/core': 3.23.9 - '@smithy/fetch-http-handler': 5.3.13 - '@smithy/hash-node': 4.2.11 - '@smithy/invalid-dependency': 4.2.11 - '@smithy/middleware-content-length': 4.2.11 - '@smithy/middleware-endpoint': 4.4.23 - '@smithy/middleware-retry': 4.4.40 - '@smithy/middleware-serde': 4.2.12 - '@smithy/middleware-stack': 4.2.11 - '@smithy/node-config-provider': 4.3.11 - '@smithy/node-http-handler': 4.4.14 - '@smithy/protocol-http': 5.3.11 - '@smithy/smithy-client': 4.12.3 - '@smithy/types': 4.13.0 - '@smithy/url-parser': 4.2.11 - '@smithy/util-base64': 4.3.2 - '@smithy/util-body-length-browser': 4.2.2 - '@smithy/util-body-length-node': 4.2.3 - '@smithy/util-defaults-mode-browser': 4.3.39 - '@smithy/util-defaults-mode-node': 4.2.42 - '@smithy/util-endpoints': 3.3.2 - '@smithy/util-middleware': 4.2.11 - '@smithy/util-retry': 4.2.11 - '@smithy/util-utf8': 4.2.2 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/core@3.816.0': - dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/core': 3.23.9 - '@smithy/node-config-provider': 4.3.11 - '@smithy/property-provider': 4.2.11 - '@smithy/protocol-http': 5.3.11 - '@smithy/signature-v4': 5.3.11 - '@smithy/smithy-client': 4.12.3 - '@smithy/types': 4.13.0 - '@smithy/util-middleware': 4.2.11 - fast-xml-parser: 5.5.7 - tslib: 2.8.1 - - '@aws-sdk/core@3.973.19': - dependencies: - '@aws-sdk/types': 3.973.5 - '@aws-sdk/xml-builder': 3.972.10 + '@aws-sdk/types': 3.973.5 + '@aws-sdk/xml-builder': 3.972.10 '@smithy/core': 3.23.9 '@smithy/node-config-provider': 4.3.11 '@smithy/property-provider': 4.2.11 @@ -12140,20 +11824,27 @@ snapshots: '@smithy/util-utf8': 4.2.2 tslib: 2.8.1 - '@aws-sdk/crc64-nvme@3.972.4': - dependencies: - '@smithy/types': 4.13.0 + '@aws-sdk/core@3.974.3': + dependencies: + '@aws-sdk/types': 3.973.8 + '@aws-sdk/xml-builder': 3.972.18 + '@smithy/core': 3.23.16 + '@smithy/node-config-provider': 4.3.14 + '@smithy/property-provider': 4.2.14 + '@smithy/protocol-http': 5.3.14 + '@smithy/signature-v4': 5.3.14 + '@smithy/smithy-client': 4.12.12 + '@smithy/types': 4.14.1 + '@smithy/util-base64': 4.3.2 + '@smithy/util-middleware': 4.2.14 + '@smithy/util-retry': 4.3.3 + '@smithy/util-utf8': 4.2.2 tslib: 2.8.1 - '@aws-sdk/credential-provider-cognito-identity@3.817.0': + '@aws-sdk/crc64-nvme@3.972.4': dependencies: - '@aws-sdk/client-cognito-identity': 3.817.0 - '@aws-sdk/types': 3.804.0 - '@smithy/property-provider': 4.2.11 '@smithy/types': 4.13.0 tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt '@aws-sdk/credential-provider-cognito-identity@3.972.17': dependencies: @@ -12165,14 +11856,6 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-env@3.816.0': - dependencies: - '@aws-sdk/core': 3.816.0 - '@aws-sdk/types': 3.804.0 - '@smithy/property-provider': 4.2.11 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@aws-sdk/credential-provider-env@3.972.17': dependencies: '@aws-sdk/core': 3.973.19 @@ -12189,19 +11872,6 @@ snapshots: '@smithy/types': 4.13.1 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.3.13 - '@smithy/node-http-handler': 4.4.14 - '@smithy/property-provider': 4.2.11 - '@smithy/protocol-http': 5.3.11 - '@smithy/smithy-client': 4.12.3 - '@smithy/types': 4.13.0 - '@smithy/util-stream': 4.5.17 - tslib: 2.8.1 - '@aws-sdk/credential-provider-http@3.972.19': dependencies: '@aws-sdk/core': 3.973.19 @@ -12228,24 +11898,6 @@ snapshots: '@smithy/util-stream': 4.5.20 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.2.11 - '@smithy/property-provider': 4.2.11 - '@smithy/shared-ini-file-loader': 4.4.6 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - '@aws-sdk/credential-provider-ini@3.972.18': dependencies: '@aws-sdk/core': 3.973.19 @@ -12310,23 +11962,6 @@ snapshots: 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.2.11 - '@smithy/property-provider': 4.2.11 - '@smithy/shared-ini-file-loader': 4.4.6 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - '@aws-sdk/credential-provider-node@3.972.19': dependencies: '@aws-sdk/credential-provider-env': 3.972.17 @@ -12361,15 +11996,6 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-process@3.816.0': - dependencies: - '@aws-sdk/core': 3.816.0 - '@aws-sdk/types': 3.804.0 - '@smithy/property-provider': 4.2.11 - '@smithy/shared-ini-file-loader': 4.4.6 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@aws-sdk/credential-provider-process@3.972.17': dependencies: '@aws-sdk/core': 3.973.19 @@ -12388,19 +12014,6 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@aws-sdk/credential-provider-sso@3.817.0': - 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.2.11 - '@smithy/shared-ini-file-loader': 4.4.6 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - '@aws-sdk/credential-provider-sso@3.972.18': dependencies: '@aws-sdk/core': 3.973.19 @@ -12427,17 +12040,6 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-web-identity@3.817.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.2.11 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - '@aws-sdk/credential-provider-web-identity@3.972.18': dependencies: '@aws-sdk/core': 3.973.19 @@ -12462,9 +12064,9 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-providers@3.1017.0': + '@aws-sdk/credential-providers@3.1013.0': dependencies: - '@aws-sdk/client-cognito-identity': 3.1017.0 + '@aws-sdk/client-cognito-identity': 3.1013.0 '@aws-sdk/core': 3.973.24 '@aws-sdk/credential-provider-cognito-identity': 3.972.17 '@aws-sdk/credential-provider-env': 3.972.22 @@ -12487,31 +12089,40 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-providers@3.817.0': - dependencies: - '@aws-sdk/client-cognito-identity': 3.817.0 - '@aws-sdk/core': 3.816.0 - '@aws-sdk/credential-provider-cognito-identity': 3.817.0 - '@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-node': 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/nested-clients': 3.817.0 - '@aws-sdk/types': 3.804.0 - '@smithy/config-resolver': 4.4.10 - '@smithy/core': 3.23.9 - '@smithy/credential-provider-imds': 4.2.11 - '@smithy/node-config-provider': 4.3.11 - '@smithy/property-provider': 4.2.11 - '@smithy/types': 4.13.0 + '@aws-sdk/credential-providers@3.1017.0': + dependencies: + '@aws-sdk/client-cognito-identity': 3.1017.0 + '@aws-sdk/core': 3.973.24 + '@aws-sdk/credential-provider-cognito-identity': 3.972.17 + '@aws-sdk/credential-provider-env': 3.972.22 + '@aws-sdk/credential-provider-http': 3.972.24 + '@aws-sdk/credential-provider-ini': 3.972.24 + '@aws-sdk/credential-provider-login': 3.972.24 + '@aws-sdk/credential-provider-node': 3.972.25 + '@aws-sdk/credential-provider-process': 3.972.22 + '@aws-sdk/credential-provider-sso': 3.972.24 + '@aws-sdk/credential-provider-web-identity': 3.972.24 + '@aws-sdk/nested-clients': 3.996.14 + '@aws-sdk/types': 3.973.6 + '@smithy/config-resolver': 4.4.13 + '@smithy/core': 3.23.12 + '@smithy/credential-provider-imds': 4.2.12 + '@smithy/node-config-provider': 4.3.12 + '@smithy/property-provider': 4.2.12 + '@smithy/types': 4.13.1 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/endpoint-cache@3.804.0': + '@aws-sdk/dynamodb-codec@3.973.3': + dependencies: + '@aws-sdk/core': 3.974.3 + '@smithy/core': 3.23.16 + '@smithy/types': 4.14.1 + '@smithy/util-base64': 4.3.2 + tslib: 2.8.1 + + '@aws-sdk/endpoint-cache@3.972.5': dependencies: mnemonist: 0.38.3 tslib: 2.8.1 @@ -12526,13 +12137,13 @@ snapshots: '@smithy/util-config-provider': 4.2.2 tslib: 2.8.1 - '@aws-sdk/middleware-endpoint-discovery@3.808.0': + '@aws-sdk/middleware-endpoint-discovery@3.972.11': dependencies: - '@aws-sdk/endpoint-cache': 3.804.0 - '@aws-sdk/types': 3.804.0 - '@smithy/node-config-provider': 4.3.11 - '@smithy/protocol-http': 5.3.11 - '@smithy/types': 4.13.0 + '@aws-sdk/endpoint-cache': 3.972.5 + '@aws-sdk/types': 3.973.8 + '@smithy/node-config-provider': 4.3.14 + '@smithy/protocol-http': 5.3.14 + '@smithy/types': 4.14.1 tslib: 2.8.1 '@aws-sdk/middleware-expect-continue@3.972.7': @@ -12559,13 +12170,6 @@ snapshots: '@smithy/util-utf8': 4.2.2 tslib: 2.8.1 - '@aws-sdk/middleware-host-header@3.804.0': - dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/protocol-http': 5.3.11 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@aws-sdk/middleware-host-header@3.972.7': dependencies: '@aws-sdk/types': 3.973.5 @@ -12586,12 +12190,6 @@ snapshots: '@smithy/types': 4.13.0 tslib: 2.8.1 - '@aws-sdk/middleware-logger@3.804.0': - dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@aws-sdk/middleware-logger@3.972.7': dependencies: '@aws-sdk/types': 3.973.5 @@ -12604,13 +12202,6 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@aws-sdk/middleware-recursion-detection@3.804.0': - dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/protocol-http': 5.3.11 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@aws-sdk/middleware-recursion-detection@3.972.7': dependencies: '@aws-sdk/types': 3.973.5 @@ -12650,16 +12241,6 @@ snapshots: '@smithy/types': 4.13.0 tslib: 2.8.1 - '@aws-sdk/middleware-user-agent@3.816.0': - dependencies: - '@aws-sdk/core': 3.816.0 - '@aws-sdk/types': 3.804.0 - '@aws-sdk/util-endpoints': 3.808.0 - '@smithy/core': 3.23.9 - '@smithy/protocol-http': 5.3.11 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@aws-sdk/middleware-user-agent@3.972.20': dependencies: '@aws-sdk/core': 3.973.19 @@ -12682,49 +12263,6 @@ snapshots: '@smithy/util-retry': 4.2.12 tslib: 2.8.1 - '@aws-sdk/nested-clients@3.817.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.4.10 - '@smithy/core': 3.23.9 - '@smithy/fetch-http-handler': 5.3.13 - '@smithy/hash-node': 4.2.11 - '@smithy/invalid-dependency': 4.2.11 - '@smithy/middleware-content-length': 4.2.11 - '@smithy/middleware-endpoint': 4.4.23 - '@smithy/middleware-retry': 4.4.40 - '@smithy/middleware-serde': 4.2.12 - '@smithy/middleware-stack': 4.2.11 - '@smithy/node-config-provider': 4.3.11 - '@smithy/node-http-handler': 4.4.14 - '@smithy/protocol-http': 5.3.11 - '@smithy/smithy-client': 4.12.3 - '@smithy/types': 4.13.0 - '@smithy/url-parser': 4.2.11 - '@smithy/util-base64': 4.3.2 - '@smithy/util-body-length-browser': 4.2.2 - '@smithy/util-body-length-node': 4.2.3 - '@smithy/util-defaults-mode-browser': 4.3.39 - '@smithy/util-defaults-mode-node': 4.2.42 - '@smithy/util-endpoints': 3.3.2 - '@smithy/util-middleware': 4.2.11 - '@smithy/util-retry': 4.2.11 - '@smithy/util-utf8': 4.2.2 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - '@aws-sdk/nested-clients@3.996.14': dependencies: '@aws-crypto/sha256-browser': 5.2.0 @@ -12811,15 +12349,6 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/region-config-resolver@3.808.0': - dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/node-config-provider': 4.3.11 - '@smithy/types': 4.13.0 - '@smithy/util-config-provider': 4.2.2 - '@smithy/util-middleware': 4.2.11 - tslib: 2.8.1 - '@aws-sdk/region-config-resolver@3.972.7': dependencies: '@aws-sdk/types': 3.973.5 @@ -12894,23 +12423,6 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/token-providers@3.817.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.2.11 - '@smithy/shared-ini-file-loader': 4.4.6 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/types@3.804.0': - dependencies: - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@aws-sdk/types@3.973.5': dependencies: '@smithy/types': 4.13.0 @@ -12921,20 +12433,18 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@aws-sdk/util-arn-parser@3.972.3': + '@aws-sdk/types@3.973.8': dependencies: + '@smithy/types': 4.14.1 tslib: 2.8.1 - '@aws-sdk/util-dynamodb@3.817.0(@aws-sdk/client-dynamodb@3.817.0)': + '@aws-sdk/util-arn-parser@3.972.3': dependencies: - '@aws-sdk/client-dynamodb': 3.817.0 tslib: 2.8.1 - '@aws-sdk/util-endpoints@3.808.0': + '@aws-sdk/util-dynamodb@3.996.2(@aws-sdk/client-dynamodb@3.1013.0)': dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/types': 4.13.0 - '@smithy/util-endpoints': 3.3.2 + '@aws-sdk/client-dynamodb': 3.1013.0 tslib: 2.8.1 '@aws-sdk/util-endpoints@3.996.4': @@ -12964,13 +12474,6 @@ snapshots: dependencies: tslib: 2.8.1 - '@aws-sdk/util-user-agent-browser@3.804.0': - dependencies: - '@aws-sdk/types': 3.804.0 - '@smithy/types': 4.13.0 - bowser: 2.13.1 - tslib: 2.8.1 - '@aws-sdk/util-user-agent-browser@3.972.7': dependencies: '@aws-sdk/types': 3.973.5 @@ -12985,14 +12488,6 @@ snapshots: bowser: 2.13.1 tslib: 2.8.1 - '@aws-sdk/util-user-agent-node@3.816.0': - dependencies: - '@aws-sdk/middleware-user-agent': 3.816.0 - '@aws-sdk/types': 3.804.0 - '@smithy/node-config-provider': 4.3.11 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@aws-sdk/util-user-agent-node@3.973.11': dependencies: '@aws-sdk/middleware-user-agent': 3.972.25 @@ -13022,6 +12517,12 @@ snapshots: fast-xml-parser: 5.5.7 tslib: 2.8.1 + '@aws-sdk/xml-builder@3.972.18': + dependencies: + '@smithy/types': 4.14.1 + fast-xml-parser: 5.5.7 + tslib: 2.8.1 + '@aws/lambda-invoke-store@0.2.2': {} '@azure-rest/core-client@2.5.1': @@ -13385,7 +12886,6 @@ snapshots: '@babel/parser@7.29.2': dependencies: '@babel/types': 7.29.0 - optional: true '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.29.0)': dependencies: @@ -13474,52 +12974,49 @@ snapshots: '@boxyhq/error-code-mnemonic@0.1.1': {} - '@boxyhq/metrics@0.2.10': + '@boxyhq/metrics@0.2.12': dependencies: - '@grpc/grpc-js': 1.12.6 + '@grpc/grpc-js': 1.14.3 '@opentelemetry/api': 1.9.0 - '@opentelemetry/exporter-metrics-otlp-grpc': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-http': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.29.0 + '@opentelemetry/exporter-metrics-otlp-grpc': 0.212.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-metrics-otlp-http': 0.212.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.5.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.5.1(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.40.0 - '@boxyhq/saml-jackson@1.52.2(socks@2.8.7)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))': + '@boxyhq/saml-jackson@26.2.0(@types/node@25.4.0)(socks@2.8.7)(sqlite3@5.1.7)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3))': dependencies: - '@aws-sdk/client-dynamodb': 3.817.0 - '@aws-sdk/credential-providers': 3.817.0 - '@aws-sdk/util-dynamodb': 3.817.0(@aws-sdk/client-dynamodb@3.817.0) + '@aws-sdk/client-dynamodb': 3.1013.0 + '@aws-sdk/credential-providers': 3.1013.0 + '@aws-sdk/util-dynamodb': 3.996.2(@aws-sdk/client-dynamodb@3.1013.0) '@boxyhq/error-code-mnemonic': 0.1.1 - '@boxyhq/metrics': 0.2.10 - '@boxyhq/saml20': 1.12.1 - '@googleapis/admin': 23.5.0(encoding@0.1.13) - '@libsql/sqlite3': 0.3.1(encoding@0.1.13) - axios: 1.13.5 + '@boxyhq/metrics': 0.2.12 + '@boxyhq/saml20': 1.13.2 + '@googleapis/admin': 30.3.0 + axios: 1.15.2 + better-sqlite3: 12.8.0 encoding: 0.1.13 - ipaddr.js: 2.2.0 - jose: 6.0.11 + ipaddr.js: 2.3.0 + jose: 6.2.2 lodash: 4.18.1 - mixpanel: 0.18.1 - mongodb: 6.16.0(@aws-sdk/credential-providers@3.817.0)(socks@2.8.7) - mssql: 11.0.1 - mysql2: 3.14.1 - node-forge: 1.3.3 - openid-client: 6.5.0 - pg: 8.16.0 - redis: 4.7.0 + mixpanel: 0.20.0 + mongodb: 7.1.0(@aws-sdk/credential-providers@3.1013.0)(socks@2.8.7) + mssql: 12.2.1 + mysql2: 3.20.0(@types/node@25.4.0) + node-forge: 1.4.0 + openid-client: 6.8.2 + pg: 8.20.0 + redis: 4.7.1 reflect-metadata: 0.2.2 - ripemd160: 2.0.2 - sqlite3: 5.1.7 - typeorm: 0.3.28(mongodb@6.16.0(@aws-sdk/credential-providers@3.817.0)(socks@2.8.7))(mssql@11.0.1)(mysql2@3.14.1)(pg@8.16.0)(redis@4.7.0)(sqlite3@5.1.7)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)) + ripemd160: 2.0.3 + typeorm: 0.3.28(better-sqlite3@12.8.0)(mongodb@7.1.0(@aws-sdk/credential-providers@3.1013.0)(socks@2.8.7))(mssql@12.2.1)(mysql2@3.20.0(@types/node@25.4.0))(pg@8.20.0)(redis@4.7.1)(sqlite3@5.1.7)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)) transitivePeerDependencies: - '@google-cloud/spanner' - '@mongodb-js/zstd' - '@sap/hana-client' + - '@types/node' - aws-crt - babel-plugin-macros - - better-sqlite3 - - bluebird - - bufferutil - debug - gcp-metadata - ioredis @@ -13531,14 +13028,14 @@ snapshots: - snappy - socks - sql.js + - sqlite3 - supports-color - ts-node - typeorm-aurora-data-api-driver - - utf-8-validate - '@boxyhq/saml20@1.12.1': + '@boxyhq/saml20@1.13.2': dependencies: - '@xmldom/xmldom': 0.9.8 + '@xmldom/xmldom': 0.9.10 xml-crypto: 6.1.2 xml-encryption: 3.1.0 xml2js: 0.6.2 @@ -13546,7 +13043,7 @@ snapshots: '@bramus/specificity@2.4.2': dependencies: - css-tree: 3.1.0 + css-tree: 3.2.1 '@calcom/embed-core@1.5.3': {} @@ -13573,13 +13070,13 @@ snapshots: '@chevrotain/utils@10.5.0': optional: true - '@chromatic-com/storybook@5.0.1(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))': + '@chromatic-com/storybook@5.0.1(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))': dependencies: '@neoconfetti/react': 1.0.0 chromatic: 13.3.4 filesize: 10.1.6 jsonfile: 6.2.0 - storybook: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) strip-ansi: 7.1.2 transitivePeerDependencies: - '@chromatic-com/cypress' @@ -13592,15 +13089,15 @@ snapshots: '@csstools/color-helpers@6.0.2': {} - '@csstools/css-calc@3.1.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0)': + '@csstools/css-calc@3.2.0(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0)': dependencies: '@csstools/css-parser-algorithms': 4.0.0(@csstools/css-tokenizer@4.0.0) '@csstools/css-tokenizer': 4.0.0 - '@csstools/css-color-parser@4.0.2(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0)': + '@csstools/css-color-parser@4.1.0(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0)': dependencies: '@csstools/color-helpers': 6.0.2 - '@csstools/css-calc': 3.1.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) + '@csstools/css-calc': 3.2.0(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) '@csstools/css-parser-algorithms': 4.0.0(@csstools/css-tokenizer@4.0.0) '@csstools/css-tokenizer': 4.0.0 @@ -13608,7 +13105,9 @@ snapshots: dependencies: '@csstools/css-tokenizer': 4.0.0 - '@csstools/css-syntax-patches-for-csstree@1.0.29': {} + '@csstools/css-syntax-patches-for-csstree@1.1.3(css-tree@3.2.1)': + optionalDependencies: + css-tree: 3.2.1 '@csstools/css-tokenizer@4.0.0': {} @@ -13856,7 +13355,7 @@ snapshots: '@eslint/js@8.57.1': {} - '@exodus/bytes@1.14.1(@noble/hashes@2.0.1)': + '@exodus/bytes@1.15.0(@noble/hashes@2.0.1)': optionalDependencies: '@noble/hashes': 2.0.1 @@ -13926,30 +13425,17 @@ snapshots: '@gar/promisify@1.1.3': optional: true - '@googleapis/admin@23.5.0(encoding@0.1.13)': + '@googleapis/admin@30.3.0': dependencies: - googleapis-common: 7.2.0(encoding@0.1.13) + googleapis-common: 8.0.1 transitivePeerDependencies: - - encoding - supports-color - '@grpc/grpc-js@1.12.6': - dependencies: - '@grpc/proto-loader': 0.7.15 - '@js-sdsl/ordered-map': 4.4.2 - '@grpc/grpc-js@1.14.3': dependencies: '@grpc/proto-loader': 0.8.0 '@js-sdsl/ordered-map': 4.4.2 - '@grpc/proto-loader@0.7.15': - dependencies: - lodash.camelcase: 4.3.0 - long: 5.3.2 - protobufjs: 7.5.5 - yargs: 17.7.2 - '@grpc/proto-loader@0.8.0': dependencies: lodash.camelcase: 4.3.0 @@ -13957,9 +13443,9 @@ snapshots: protobufjs: 7.5.5 yargs: 17.7.2 - '@hono/node-server@1.19.10(hono@4.12.7)': + '@hono/node-server@1.19.13(hono@4.12.14)': dependencies: - hono: 4.12.7 + hono: 4.12.14 optional: true '@hookform/resolvers@5.2.2(react-hook-form@7.71.2(react@19.2.4))': @@ -14087,12 +13573,13 @@ snapshots: '@isaacs/fs-minipass@4.0.1': dependencies: minipass: 7.1.3 + optional: true - '@joshwooding/vite-plugin-react-docgen-typescript@0.6.4(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))': + '@joshwooding/vite-plugin-react-docgen-typescript@0.7.0(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))': dependencies: glob: 13.0.6 react-docgen-typescript: 2.4.0(typescript@5.9.3) - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) optionalDependencies: typescript: 5.9.3 @@ -14300,76 +13787,42 @@ snapshots: lexical: 0.41.0 yjs: 13.6.28 - '@libsql/hrana-client@0.4.4(encoding@0.1.13)': - dependencies: - '@libsql/isomorphic-fetch': 0.1.12(encoding@0.1.13) - '@libsql/isomorphic-ws': 0.1.5 - js-base64: 3.7.8 - transitivePeerDependencies: - - bufferutil - - encoding - - utf-8-validate - - '@libsql/isomorphic-fetch@0.1.12(encoding@0.1.13)': - dependencies: - '@types/node-fetch': 2.6.13 - node-fetch: 2.7.0(encoding@0.1.13) - transitivePeerDependencies: - - encoding - - '@libsql/isomorphic-ws@0.1.5': - dependencies: - '@types/ws': 8.18.1 - ws: 8.18.3 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - - '@libsql/sqlite3@0.3.1(encoding@0.1.13)': - dependencies: - '@libsql/hrana-client': 0.4.4(encoding@0.1.13) - transitivePeerDependencies: - - bufferutil - - encoding - - utf-8-validate - - '@mdx-js/react@3.1.1(@types/react@19.2.14)(react@19.2.4)': + '@mdx-js/react@3.1.1(@types/react@19.2.14)(react@19.2.5)': dependencies: '@types/mdx': 2.0.13 '@types/react': 19.2.14 - react: 19.2.4 + react: 19.2.5 - '@microsoft/api-extractor-model@7.33.4(@types/node@25.4.0)': + '@microsoft/api-extractor-model@7.33.8(@types/node@25.4.0)': dependencies: '@microsoft/tsdoc': 0.16.0 '@microsoft/tsdoc-config': 0.18.1 - '@rushstack/node-core-library': 5.20.3(@types/node@25.4.0) + '@rushstack/node-core-library': 5.23.1(@types/node@25.4.0) transitivePeerDependencies: - '@types/node' - '@microsoft/api-extractor@7.57.6(@types/node@25.4.0)': + '@microsoft/api-extractor@7.58.7(@types/node@25.4.0)': dependencies: - '@microsoft/api-extractor-model': 7.33.4(@types/node@25.4.0) + '@microsoft/api-extractor-model': 7.33.8(@types/node@25.4.0) '@microsoft/tsdoc': 0.16.0 '@microsoft/tsdoc-config': 0.18.1 - '@rushstack/node-core-library': 5.20.3(@types/node@25.4.0) - '@rushstack/rig-package': 0.7.2 - '@rushstack/terminal': 0.22.3(@types/node@25.4.0) - '@rushstack/ts-command-line': 5.3.3(@types/node@25.4.0) - diff: 8.0.3 - lodash: 4.18.1 - minimatch: 10.2.4 - resolve: 1.22.11 - semver: 7.5.4 + '@rushstack/node-core-library': 5.23.1(@types/node@25.4.0) + '@rushstack/rig-package': 0.7.3 + '@rushstack/terminal': 0.24.0(@types/node@25.4.0) + '@rushstack/ts-command-line': 5.3.9(@types/node@25.4.0) + diff: 8.0.4 + minimatch: 10.2.3 + resolve: 1.22.12 + semver: 7.7.4 source-map: 0.6.1 - typescript: 5.8.2 + typescript: 5.9.3 transitivePeerDependencies: - '@types/node' '@microsoft/tsdoc-config@0.16.2': dependencies: '@microsoft/tsdoc': 0.14.2 - ajv: 6.12.6 + ajv: 6.14.0 jju: 1.4.0 resolve: 1.19.0 @@ -14378,7 +13831,7 @@ snapshots: '@microsoft/tsdoc': 0.16.0 ajv: 8.18.0 jju: 1.4.0 - resolve: 1.22.11 + resolve: 1.22.12 '@microsoft/tsdoc@0.14.2': {} @@ -14410,39 +13863,39 @@ snapshots: '@neoconfetti/react@1.0.0': {} - '@next-auth/prisma-adapter@1.0.7(@prisma/client@6.19.2(prisma@7.4.2(@types/react@19.2.14)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(next-auth@4.24.13(patch_hash=6b21102fce2caaca35f5e4e93ea07a0b4ff486cbf3d3b09a4173ad45977d5798)(next@16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(nodemailer@8.0.4)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))': + '@next-auth/prisma-adapter@1.0.7(@prisma/client@6.19.2(prisma@7.4.2(@types/react@19.2.14)(better-sqlite3@12.8.0)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(next-auth@4.24.13(patch_hash=6b21102fce2caaca35f5e4e93ea07a0b4ff486cbf3d3b09a4173ad45977d5798)(next@16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(nodemailer@8.0.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))': dependencies: - '@prisma/client': 6.19.2(prisma@7.4.2(@types/react@19.2.14)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3) - next-auth: 4.24.13(patch_hash=6b21102fce2caaca35f5e4e93ea07a0b4ff486cbf3d3b09a4173ad45977d5798)(next@16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(nodemailer@8.0.4)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@prisma/client': 6.19.2(prisma@7.4.2(@types/react@19.2.14)(better-sqlite3@12.8.0)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3) + next-auth: 4.24.13(patch_hash=6b21102fce2caaca35f5e4e93ea07a0b4ff486cbf3d3b09a4173ad45977d5798)(next@16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(nodemailer@8.0.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - '@next/env@16.1.7': {} + '@next/env@16.2.4': {} '@next/eslint-plugin-next@15.5.12': dependencies: fast-glob: 3.3.1 - '@next/swc-darwin-arm64@16.1.7': + '@next/swc-darwin-arm64@16.2.4': optional: true - '@next/swc-darwin-x64@16.1.7': + '@next/swc-darwin-x64@16.2.4': optional: true - '@next/swc-linux-arm64-gnu@16.1.7': + '@next/swc-linux-arm64-gnu@16.2.4': optional: true - '@next/swc-linux-arm64-musl@16.1.7': + '@next/swc-linux-arm64-musl@16.2.4': optional: true - '@next/swc-linux-x64-gnu@16.1.7': + '@next/swc-linux-x64-gnu@16.2.4': optional: true - '@next/swc-linux-x64-musl@16.1.7': + '@next/swc-linux-x64-musl@16.2.4': optional: true - '@next/swc-win32-arm64-msvc@16.1.7': + '@next/swc-win32-arm64-msvc@16.2.4': optional: true - '@next/swc-win32-x64-msvc@16.1.7': + '@next/swc-win32-x64-msvc@16.2.4': optional: true '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1': @@ -14471,7 +13924,7 @@ snapshots: '@npmcli/fs@1.1.1': dependencies: '@gar/promisify': 1.1.3 - semver: 7.7.3 + semver: 7.7.4 optional: true '@npmcli/move-file@1.1.2': @@ -14500,10 +13953,6 @@ snapshots: dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs@0.57.1': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/api@1.9.0': {} '@opentelemetry/auto-instrumentations-node@0.71.0(@opentelemetry/api@1.9.0)(@opentelemetry/core@2.6.0(@opentelemetry/api@1.9.0))': @@ -14566,17 +14015,12 @@ snapshots: dependencies: '@opentelemetry/api': 1.9.0 '@opentelemetry/core': 2.6.0(@opentelemetry/api@1.9.0) - yaml: 2.8.2 + yaml: 2.8.3 '@opentelemetry/context-async-hooks@2.6.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core@1.30.1(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/semantic-conventions': 1.28.0 - '@opentelemetry/core@2.2.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 @@ -14666,6 +14110,18 @@ snapshots: '@opentelemetry/sdk-logs': 0.213.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-trace-base': 2.6.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-metrics-otlp-grpc@0.212.0(@opentelemetry/api@1.9.0)': + dependencies: + '@grpc/grpc-js': 1.14.3 + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.5.1(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-metrics-otlp-http': 0.212.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.212.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-grpc-exporter-base': 0.212.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.212.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.5.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.5.1(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-metrics-otlp-grpc@0.213.0(@opentelemetry/api@1.9.0)': dependencies: '@grpc/grpc-js': 1.14.3 @@ -14678,17 +14134,14 @@ snapshots: '@opentelemetry/resources': 2.6.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-metrics': 2.6.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-grpc@0.57.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-metrics-otlp-http@0.212.0(@opentelemetry/api@1.9.0)': dependencies: - '@grpc/grpc-js': 1.12.6 '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-http': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-grpc-exporter-base': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 1.30.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.5.1(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.212.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.212.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.5.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.5.1(@opentelemetry/api@1.9.0) '@opentelemetry/exporter-metrics-otlp-http@0.213.0(@opentelemetry/api@1.9.0)': dependencies: @@ -14699,15 +14152,6 @@ snapshots: '@opentelemetry/resources': 2.6.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-metrics': 2.6.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-http@0.57.1(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-proto@0.213.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 @@ -15357,12 +14801,6 @@ snapshots: '@opentelemetry/core': 2.6.0(@opentelemetry/api@1.9.0) '@opentelemetry/otlp-transformer': 0.213.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base@0.57.1(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-grpc-exporter-base@0.212.0(@opentelemetry/api@1.9.0)': dependencies: '@grpc/grpc-js': 1.14.3 @@ -15379,14 +14817,6 @@ snapshots: '@opentelemetry/otlp-exporter-base': 0.213.0(@opentelemetry/api@1.9.0) '@opentelemetry/otlp-transformer': 0.213.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-grpc-exporter-base@0.57.1(@opentelemetry/api@1.9.0)': - dependencies: - '@grpc/grpc-js': 1.14.3 - '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer@0.208.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 @@ -15396,7 +14826,7 @@ snapshots: '@opentelemetry/sdk-logs': 0.208.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-metrics': 2.2.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-trace-base': 2.2.0(@opentelemetry/api@1.9.0) - protobufjs: 7.5.5 + protobufjs: 8.0.1 '@opentelemetry/otlp-transformer@0.212.0(@opentelemetry/api@1.9.0)': dependencies: @@ -15418,18 +14848,7 @@ snapshots: '@opentelemetry/sdk-logs': 0.213.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-metrics': 2.6.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-trace-base': 2.6.0(@opentelemetry/api@1.9.0) - protobufjs: 7.5.5 - - '@opentelemetry/otlp-transformer@0.57.1(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.57.1 - '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.57.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.30.1(@opentelemetry/api@1.9.0) - protobufjs: 7.5.5 + protobufjs: 8.0.1 '@opentelemetry/propagator-b3@2.6.0(@opentelemetry/api@1.9.0)': dependencies: @@ -15478,12 +14897,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@opentelemetry/resources@1.30.1(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.28.0 - '@opentelemetry/resources@2.2.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 @@ -15524,19 +14937,6 @@ snapshots: '@opentelemetry/resources': 2.6.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.40.0 - '@opentelemetry/sdk-logs@0.57.1(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.57.1 - '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.30.1(@opentelemetry/api@1.9.0) - - '@opentelemetry/sdk-metrics@1.30.1(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics@2.2.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 @@ -15585,13 +14985,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@opentelemetry/sdk-trace-base@1.30.1(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.30.1(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.28.0 - '@opentelemetry/sdk-trace-base@2.2.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 @@ -15620,10 +15013,6 @@ snapshots: '@opentelemetry/core': 2.6.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-trace-base': 2.6.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions@1.28.0': {} - - '@opentelemetry/semantic-conventions@1.29.0': {} - '@opentelemetry/semantic-conventions@1.40.0': {} '@opentelemetry/sql-common@0.41.2(@opentelemetry/api@1.9.0)': @@ -15673,28 +15062,26 @@ snapshots: dependencies: playwright: 1.58.2 - '@posthog/core@1.23.2': - dependencies: - cross-spawn: 7.0.6 - '@posthog/core@1.24.4': dependencies: cross-spawn: 7.0.6 - '@posthog/types@1.360.0': {} + '@posthog/core@1.25.3': {} + + '@posthog/types@1.369.5': {} - '@preact/preset-vite@2.10.3(@babel/core@7.29.0)(preact@10.29.0)(rollup@4.59.0)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))': + '@preact/preset-vite@2.10.3(@babel/core@7.29.0)(preact@10.29.0)(rollup@4.59.0)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-transform-react-jsx': 7.27.1(@babel/core@7.29.0) '@babel/plugin-transform-react-jsx-development': 7.27.1(@babel/core@7.29.0) - '@prefresh/vite': 2.4.11(preact@10.29.0)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + '@prefresh/vite': 2.4.11(preact@10.29.0)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) '@rollup/pluginutils': 5.3.0(rollup@4.59.0) babel-plugin-transform-hook-names: 1.0.2(@babel/core@7.29.0) debug: 4.4.3 picocolors: 1.1.1 - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) - vite-prerender-plugin: 0.5.12(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) + vite-prerender-plugin: 0.5.12(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) transitivePeerDependencies: - preact - rollup @@ -15710,7 +15097,7 @@ snapshots: '@prefresh/utils@1.2.1': {} - '@prefresh/vite@2.4.11(preact@10.29.0)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))': + '@prefresh/vite@2.4.11(preact@10.29.0)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))': dependencies: '@babel/core': 7.28.5 '@prefresh/babel-plugin': 0.5.2 @@ -15718,7 +15105,7 @@ snapshots: '@prefresh/utils': 1.2.1 '@rollup/pluginutils': 4.2.1 preact: 10.29.0 - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) transitivePeerDependencies: - supports-color @@ -15727,9 +15114,14 @@ snapshots: prisma: 6.19.2(magicast@0.3.5)(typescript@5.9.3) typescript: 5.9.3 - '@prisma/client@6.19.2(prisma@7.4.2(@types/react@19.2.14)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3)': + '@prisma/client@6.19.2(prisma@7.4.2(@types/react@19.2.14)(better-sqlite3@12.8.0)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3)': optionalDependencies: - prisma: 7.4.2(@types/react@19.2.14)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + prisma: 7.4.2(@types/react@19.2.14)(better-sqlite3@12.8.0)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + typescript: 5.9.3 + + '@prisma/client@6.19.2(prisma@7.4.2(@types/react@19.2.14)(better-sqlite3@12.8.0)(magicast@0.3.5)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(typescript@5.9.3))(typescript@5.9.3)': + optionalDependencies: + prisma: 7.4.2(@types/react@19.2.14)(better-sqlite3@12.8.0)(magicast@0.3.5)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(typescript@5.9.3) typescript: 5.9.3 '@prisma/config@6.19.2(magicast@0.3.5)': @@ -15764,13 +15156,13 @@ snapshots: '@electric-sql/pglite': 0.3.15 '@electric-sql/pglite-socket': 0.0.20(@electric-sql/pglite@0.3.15) '@electric-sql/pglite-tools': 0.2.20(@electric-sql/pglite@0.3.15) - '@hono/node-server': 1.19.10(hono@4.12.7) + '@hono/node-server': 1.19.13(hono@4.12.14) '@mrleebo/prisma-ast': 0.13.1 '@prisma/get-platform': 7.2.0 '@prisma/query-plan-executor': 7.2.0 foreground-child: 3.3.1 get-port-please: 3.2.0 - hono: 4.12.7 + hono: 4.12.14 http-status-codes: 2.3.0 pathe: 2.0.3 proper-lockfile: 4.1.2 @@ -15863,6 +15255,13 @@ snapshots: react-dom: 19.2.4(react@19.2.4) optional: true + '@prisma/studio-core@0.13.1(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)': + dependencies: + '@types/react': 19.2.14 + react: 19.2.5 + react-dom: 19.2.5(react@19.2.5) + optional: true + '@protobufjs/aspromise@1.1.2': {} '@protobufjs/base64@1.1.2': {} @@ -16387,153 +15786,139 @@ snapshots: '@radix-ui/rect@1.1.1': {} - '@react-email/body@0.3.0(react@19.2.4)': + '@react-email/body@0.3.0(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/button@0.2.1(react@19.2.4)': + '@react-email/button@0.2.1(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/code-block@0.2.1(react@19.2.4)': + '@react-email/code-block@0.2.1(react@19.2.5)': dependencies: prismjs: 1.30.0 - react: 19.2.4 - - '@react-email/code-inline@0.0.6(react@19.2.4)': - dependencies: - react: 19.2.4 - - '@react-email/column@0.0.14(react@19.2.4)': - dependencies: - react: 19.2.4 - - '@react-email/components@1.0.10(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': - dependencies: - '@react-email/body': 0.3.0(react@19.2.4) - '@react-email/button': 0.2.1(react@19.2.4) - '@react-email/code-block': 0.2.1(react@19.2.4) - '@react-email/code-inline': 0.0.6(react@19.2.4) - '@react-email/column': 0.0.14(react@19.2.4) - '@react-email/container': 0.0.16(react@19.2.4) - '@react-email/font': 0.0.10(react@19.2.4) - '@react-email/head': 0.0.13(react@19.2.4) - '@react-email/heading': 0.0.16(react@19.2.4) - '@react-email/hr': 0.0.12(react@19.2.4) - '@react-email/html': 0.0.12(react@19.2.4) - '@react-email/img': 0.0.12(react@19.2.4) - '@react-email/link': 0.0.13(react@19.2.4) - '@react-email/markdown': 0.0.18(react@19.2.4) - '@react-email/preview': 0.0.14(react@19.2.4) - '@react-email/render': 2.0.4(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - '@react-email/row': 0.0.13(react@19.2.4) - '@react-email/section': 0.0.17(react@19.2.4) - '@react-email/tailwind': 2.0.6(@react-email/body@0.3.0(react@19.2.4))(@react-email/button@0.2.1(react@19.2.4))(@react-email/code-block@0.2.1(react@19.2.4))(@react-email/code-inline@0.0.6(react@19.2.4))(@react-email/container@0.0.16(react@19.2.4))(@react-email/heading@0.0.16(react@19.2.4))(@react-email/hr@0.0.12(react@19.2.4))(@react-email/img@0.0.12(react@19.2.4))(@react-email/link@0.0.13(react@19.2.4))(@react-email/preview@0.0.14(react@19.2.4))(@react-email/text@0.1.6(react@19.2.4))(react@19.2.4) - '@react-email/text': 0.1.6(react@19.2.4) - react: 19.2.4 + react: 19.2.5 + + '@react-email/code-inline@0.0.6(react@19.2.5)': + dependencies: + react: 19.2.5 + + '@react-email/column@0.0.14(react@19.2.5)': + dependencies: + react: 19.2.5 + + '@react-email/components@1.0.10(react-dom@19.2.5(react@19.2.5))(react@19.2.5)': + dependencies: + '@react-email/body': 0.3.0(react@19.2.5) + '@react-email/button': 0.2.1(react@19.2.5) + '@react-email/code-block': 0.2.1(react@19.2.5) + '@react-email/code-inline': 0.0.6(react@19.2.5) + '@react-email/column': 0.0.14(react@19.2.5) + '@react-email/container': 0.0.16(react@19.2.5) + '@react-email/font': 0.0.10(react@19.2.5) + '@react-email/head': 0.0.13(react@19.2.5) + '@react-email/heading': 0.0.16(react@19.2.5) + '@react-email/hr': 0.0.12(react@19.2.5) + '@react-email/html': 0.0.12(react@19.2.5) + '@react-email/img': 0.0.12(react@19.2.5) + '@react-email/link': 0.0.13(react@19.2.5) + '@react-email/markdown': 0.0.18(react@19.2.5) + '@react-email/preview': 0.0.14(react@19.2.5) + '@react-email/render': 2.0.4(react-dom@19.2.5(react@19.2.5))(react@19.2.5) + '@react-email/row': 0.0.13(react@19.2.5) + '@react-email/section': 0.0.17(react@19.2.5) + '@react-email/tailwind': 2.0.6(@react-email/body@0.3.0(react@19.2.5))(@react-email/button@0.2.1(react@19.2.5))(@react-email/code-block@0.2.1(react@19.2.5))(@react-email/code-inline@0.0.6(react@19.2.5))(@react-email/container@0.0.16(react@19.2.5))(@react-email/heading@0.0.16(react@19.2.5))(@react-email/hr@0.0.12(react@19.2.5))(@react-email/img@0.0.12(react@19.2.5))(@react-email/link@0.0.13(react@19.2.5))(@react-email/preview@0.0.14(react@19.2.5))(@react-email/text@0.1.6(react@19.2.5))(react@19.2.5) + '@react-email/text': 0.1.6(react@19.2.5) + react: 19.2.5 transitivePeerDependencies: - react-dom - '@react-email/container@0.0.16(react@19.2.4)': + '@react-email/container@0.0.16(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/font@0.0.10(react@19.2.4)': + '@react-email/font@0.0.10(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/head@0.0.13(react@19.2.4)': + '@react-email/head@0.0.13(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/heading@0.0.16(react@19.2.4)': + '@react-email/heading@0.0.16(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/hr@0.0.12(react@19.2.4)': + '@react-email/hr@0.0.12(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/html@0.0.12(react@19.2.4)': + '@react-email/html@0.0.12(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/img@0.0.12(react@19.2.4)': + '@react-email/img@0.0.12(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/link@0.0.13(react@19.2.4)': + '@react-email/link@0.0.13(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/markdown@0.0.18(react@19.2.4)': + '@react-email/markdown@0.0.18(react@19.2.5)': dependencies: marked: 15.0.12 - react: 19.2.4 - - '@react-email/preview-server@5.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': - dependencies: - esbuild: 0.27.3 - next: 16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - transitivePeerDependencies: - - '@babel/core' - - '@opentelemetry/api' - - '@playwright/test' - - babel-plugin-macros - - babel-plugin-react-compiler - - react - - react-dom - - sass + react: 19.2.5 - '@react-email/preview@0.0.14(react@19.2.4)': + '@react-email/preview@0.0.14(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/render@2.0.4(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@react-email/render@2.0.4(react-dom@19.2.5(react@19.2.5))(react@19.2.5)': dependencies: html-to-text: 9.0.5 prettier: 3.8.1 - react: 19.2.4 - react-dom: 19.2.4(react@19.2.4) + react: 19.2.5 + react-dom: 19.2.5(react@19.2.5) - '@react-email/row@0.0.13(react@19.2.4)': + '@react-email/row@0.0.13(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/section@0.0.17(react@19.2.4)': + '@react-email/section@0.0.17(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@react-email/tailwind@2.0.6(@react-email/body@0.3.0(react@19.2.4))(@react-email/button@0.2.1(react@19.2.4))(@react-email/code-block@0.2.1(react@19.2.4))(@react-email/code-inline@0.0.6(react@19.2.4))(@react-email/container@0.0.16(react@19.2.4))(@react-email/heading@0.0.16(react@19.2.4))(@react-email/hr@0.0.12(react@19.2.4))(@react-email/img@0.0.12(react@19.2.4))(@react-email/link@0.0.13(react@19.2.4))(@react-email/preview@0.0.14(react@19.2.4))(@react-email/text@0.1.6(react@19.2.4))(react@19.2.4)': + '@react-email/tailwind@2.0.6(@react-email/body@0.3.0(react@19.2.5))(@react-email/button@0.2.1(react@19.2.5))(@react-email/code-block@0.2.1(react@19.2.5))(@react-email/code-inline@0.0.6(react@19.2.5))(@react-email/container@0.0.16(react@19.2.5))(@react-email/heading@0.0.16(react@19.2.5))(@react-email/hr@0.0.12(react@19.2.5))(@react-email/img@0.0.12(react@19.2.5))(@react-email/link@0.0.13(react@19.2.5))(@react-email/preview@0.0.14(react@19.2.5))(@react-email/text@0.1.6(react@19.2.5))(react@19.2.5)': dependencies: - '@react-email/text': 0.1.6(react@19.2.4) - react: 19.2.4 + '@react-email/text': 0.1.6(react@19.2.5) + react: 19.2.5 tailwindcss: 4.1.18 optionalDependencies: - '@react-email/body': 0.3.0(react@19.2.4) - '@react-email/button': 0.2.1(react@19.2.4) - '@react-email/code-block': 0.2.1(react@19.2.4) - '@react-email/code-inline': 0.0.6(react@19.2.4) - '@react-email/container': 0.0.16(react@19.2.4) - '@react-email/heading': 0.0.16(react@19.2.4) - '@react-email/hr': 0.0.12(react@19.2.4) - '@react-email/img': 0.0.12(react@19.2.4) - '@react-email/link': 0.0.13(react@19.2.4) - '@react-email/preview': 0.0.14(react@19.2.4) - - '@react-email/text@0.1.6(react@19.2.4)': + '@react-email/body': 0.3.0(react@19.2.5) + '@react-email/button': 0.2.1(react@19.2.5) + '@react-email/code-block': 0.2.1(react@19.2.5) + '@react-email/code-inline': 0.0.6(react@19.2.5) + '@react-email/container': 0.0.16(react@19.2.5) + '@react-email/heading': 0.0.16(react@19.2.5) + '@react-email/hr': 0.0.12(react@19.2.5) + '@react-email/img': 0.0.12(react@19.2.5) + '@react-email/link': 0.0.13(react@19.2.5) + '@react-email/preview': 0.0.14(react@19.2.5) + + '@react-email/text@0.1.6(react@19.2.5)': dependencies: - react: 19.2.4 + react: 19.2.5 - '@redis/bloom@1.2.0(@redis/client@1.6.0)': + '@redis/bloom@1.2.0(@redis/client@1.6.1)': dependencies: - '@redis/client': 1.6.0 + '@redis/client': 1.6.1 '@redis/bloom@5.11.0(@redis/client@5.11.0)': dependencies: '@redis/client': 5.11.0 - '@redis/client@1.6.0': + '@redis/client@1.6.1': dependencies: cluster-key-slot: 1.1.2 generic-pool: 3.9.0 @@ -16543,29 +15928,29 @@ snapshots: dependencies: cluster-key-slot: 1.1.2 - '@redis/graph@1.1.1(@redis/client@1.6.0)': + '@redis/graph@1.1.1(@redis/client@1.6.1)': dependencies: - '@redis/client': 1.6.0 + '@redis/client': 1.6.1 - '@redis/json@1.0.7(@redis/client@1.6.0)': + '@redis/json@1.0.7(@redis/client@1.6.1)': dependencies: - '@redis/client': 1.6.0 + '@redis/client': 1.6.1 '@redis/json@5.11.0(@redis/client@5.11.0)': dependencies: '@redis/client': 5.11.0 - '@redis/search@1.2.0(@redis/client@1.6.0)': + '@redis/search@1.2.0(@redis/client@1.6.1)': dependencies: - '@redis/client': 1.6.0 + '@redis/client': 1.6.1 '@redis/search@5.11.0(@redis/client@5.11.0)': dependencies: '@redis/client': 5.11.0 - '@redis/time-series@1.1.0(@redis/client@1.6.0)': + '@redis/time-series@1.1.0(@redis/client@1.6.1)': dependencies: - '@redis/client': 1.6.0 + '@redis/client': 1.6.1 '@redis/time-series@5.11.0(@redis/client@5.11.0)': dependencies: @@ -16729,16 +16114,16 @@ snapshots: '@rushstack/eslint-patch@1.15.0': {} - '@rushstack/node-core-library@5.20.3(@types/node@25.4.0)': + '@rushstack/node-core-library@5.23.1(@types/node@25.4.0)': dependencies: ajv: 8.18.0 ajv-draft-04: 1.0.0(ajv@8.18.0) ajv-formats: 3.0.1(ajv@8.18.0) - fs-extra: 11.3.3 + fs-extra: 11.3.4 import-lazy: 4.0.0 jju: 1.4.0 - resolve: 1.22.11 - semver: 7.5.4 + resolve: 1.22.12 + semver: 7.7.4 optionalDependencies: '@types/node': 25.4.0 @@ -16746,22 +16131,22 @@ snapshots: optionalDependencies: '@types/node': 25.4.0 - '@rushstack/rig-package@0.7.2': + '@rushstack/rig-package@0.7.3': dependencies: - resolve: 1.22.11 - strip-json-comments: 3.1.1 + jju: 1.4.0 + resolve: 1.22.12 - '@rushstack/terminal@0.22.3(@types/node@25.4.0)': + '@rushstack/terminal@0.24.0(@types/node@25.4.0)': dependencies: - '@rushstack/node-core-library': 5.20.3(@types/node@25.4.0) + '@rushstack/node-core-library': 5.23.1(@types/node@25.4.0) '@rushstack/problem-matcher': 0.2.1(@types/node@25.4.0) supports-color: 8.1.1 optionalDependencies: '@types/node': 25.4.0 - '@rushstack/ts-command-line@5.3.3(@types/node@25.4.0)': + '@rushstack/ts-command-line@5.3.9(@types/node@25.4.0)': dependencies: - '@rushstack/terminal': 0.22.3(@types/node@25.4.0) + '@rushstack/terminal': 0.24.0(@types/node@25.4.0) '@types/argparse': 1.0.38 argparse: 1.0.10 string-argv: 0.3.2 @@ -16860,7 +16245,7 @@ snapshots: '@sentry/core@10.43.0': {} - '@sentry/nextjs@10.43.0(@opentelemetry/context-async-hooks@2.6.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.6.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.6.0(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(webpack@5.105.4)': + '@sentry/nextjs@10.43.0(@opentelemetry/context-async-hooks@2.6.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.6.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.6.0(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)(webpack@5.105.4)': dependencies: '@opentelemetry/api': 1.9.0 '@opentelemetry/semantic-conventions': 1.40.0 @@ -16873,7 +16258,7 @@ snapshots: '@sentry/react': 10.43.0(react@19.2.4) '@sentry/vercel-edge': 10.43.0 '@sentry/webpack-plugin': 5.1.1(encoding@0.1.13)(webpack@5.105.4) - next: 16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + next: 16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) rollup: 4.59.0 stacktrace-parser: 0.1.11 transitivePeerDependencies: @@ -16979,11 +16364,6 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/abort-controller@4.2.8': - dependencies: - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@smithy/chunked-blob-reader-native@4.2.3': dependencies: '@smithy/util-base64': 4.3.2 @@ -17024,6 +16404,19 @@ snapshots: '@smithy/uuid': 1.1.2 tslib: 2.8.1 + '@smithy/core@3.23.16': + dependencies: + '@smithy/protocol-http': 5.3.14 + '@smithy/types': 4.14.1 + '@smithy/url-parser': 4.2.14 + '@smithy/util-base64': 4.3.2 + '@smithy/util-body-length-browser': 4.2.2 + '@smithy/util-middleware': 4.2.14 + '@smithy/util-stream': 4.5.24 + '@smithy/util-utf8': 4.2.2 + '@smithy/uuid': 1.1.2 + tslib: 2.8.1 + '@smithy/core@3.23.9': dependencies: '@smithy/middleware-serde': 4.2.12 @@ -17099,11 +16492,11 @@ snapshots: '@smithy/util-base64': 4.3.2 tslib: 2.8.1 - '@smithy/fetch-http-handler@5.3.9': + '@smithy/fetch-http-handler@5.3.17': dependencies: - '@smithy/protocol-http': 5.3.11 - '@smithy/querystring-builder': 4.2.8 - '@smithy/types': 4.13.0 + '@smithy/protocol-http': 5.3.14 + '@smithy/querystring-builder': 4.2.14 + '@smithy/types': 4.14.1 '@smithy/util-base64': 4.3.2 tslib: 2.8.1 @@ -17128,13 +16521,6 @@ snapshots: '@smithy/util-utf8': 4.2.2 tslib: 2.8.1 - '@smithy/hash-node@4.2.8': - dependencies: - '@smithy/types': 4.13.0 - '@smithy/util-buffer-from': 4.2.0 - '@smithy/util-utf8': 4.2.2 - tslib: 2.8.1 - '@smithy/hash-stream-node@4.2.11': dependencies: '@smithy/types': 4.13.0 @@ -17151,11 +16537,6 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/invalid-dependency@4.2.8': - dependencies: - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@smithy/is-array-buffer@2.2.0': dependencies: tslib: 2.8.1 @@ -17182,23 +16563,6 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/middleware-content-length@4.2.8': - dependencies: - '@smithy/protocol-http': 5.3.11 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - - '@smithy/middleware-endpoint@4.4.13': - dependencies: - '@smithy/core': 3.23.9 - '@smithy/middleware-serde': 4.2.12 - '@smithy/node-config-provider': 4.3.11 - '@smithy/shared-ini-file-loader': 4.4.6 - '@smithy/types': 4.13.0 - '@smithy/url-parser': 4.2.11 - '@smithy/util-middleware': 4.2.11 - tslib: 2.8.1 - '@smithy/middleware-endpoint@4.4.23': dependencies: '@smithy/core': 3.23.9 @@ -17221,16 +16585,15 @@ snapshots: '@smithy/util-middleware': 4.2.12 tslib: 2.8.1 - '@smithy/middleware-retry@4.4.30': + '@smithy/middleware-endpoint@4.4.31': dependencies: - '@smithy/node-config-provider': 4.3.11 - '@smithy/protocol-http': 5.3.11 - '@smithy/service-error-classification': 4.2.8 - '@smithy/smithy-client': 4.12.3 - '@smithy/types': 4.13.0 - '@smithy/util-middleware': 4.2.11 - '@smithy/util-retry': 4.2.11 - '@smithy/uuid': 1.1.2 + '@smithy/core': 3.23.16 + '@smithy/middleware-serde': 4.2.19 + '@smithy/node-config-provider': 4.3.14 + '@smithy/shared-ini-file-loader': 4.4.9 + '@smithy/types': 4.14.1 + '@smithy/url-parser': 4.2.14 + '@smithy/util-middleware': 4.2.14 tslib: 2.8.1 '@smithy/middleware-retry@4.4.40': @@ -17270,10 +16633,11 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/middleware-serde@4.2.9': + '@smithy/middleware-serde@4.2.19': dependencies: - '@smithy/protocol-http': 5.3.11 - '@smithy/types': 4.13.0 + '@smithy/core': 3.23.16 + '@smithy/protocol-http': 5.3.14 + '@smithy/types': 4.14.1 tslib: 2.8.1 '@smithy/middleware-stack@4.2.11': @@ -17286,9 +16650,9 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/middleware-stack@4.2.8': + '@smithy/middleware-stack@4.2.14': dependencies: - '@smithy/types': 4.13.0 + '@smithy/types': 4.14.1 tslib: 2.8.1 '@smithy/node-config-provider@4.3.11': @@ -17305,19 +16669,18 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/node-http-handler@4.4.14': + '@smithy/node-config-provider@4.3.14': dependencies: - '@smithy/abort-controller': 4.2.11 - '@smithy/protocol-http': 5.3.11 - '@smithy/querystring-builder': 4.2.11 - '@smithy/types': 4.13.0 + '@smithy/property-provider': 4.2.14 + '@smithy/shared-ini-file-loader': 4.4.9 + '@smithy/types': 4.14.1 tslib: 2.8.1 - '@smithy/node-http-handler@4.4.9': + '@smithy/node-http-handler@4.4.14': dependencies: - '@smithy/abort-controller': 4.2.8 + '@smithy/abort-controller': 4.2.11 '@smithy/protocol-http': 5.3.11 - '@smithy/querystring-builder': 4.2.8 + '@smithy/querystring-builder': 4.2.11 '@smithy/types': 4.13.0 tslib: 2.8.1 @@ -17329,6 +16692,13 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 + '@smithy/node-http-handler@4.6.0': + dependencies: + '@smithy/protocol-http': 5.3.14 + '@smithy/querystring-builder': 4.2.14 + '@smithy/types': 4.14.1 + tslib: 2.8.1 + '@smithy/property-provider@4.2.11': dependencies: '@smithy/types': 4.13.0 @@ -17339,6 +16709,11 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 + '@smithy/property-provider@4.2.14': + dependencies: + '@smithy/types': 4.14.1 + tslib: 2.8.1 + '@smithy/protocol-http@5.3.11': dependencies: '@smithy/types': 4.13.0 @@ -17349,9 +16724,9 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/protocol-http@5.3.8': + '@smithy/protocol-http@5.3.14': dependencies: - '@smithy/types': 4.13.0 + '@smithy/types': 4.14.1 tslib: 2.8.1 '@smithy/querystring-builder@4.2.11': @@ -17366,9 +16741,9 @@ snapshots: '@smithy/util-uri-escape': 4.2.2 tslib: 2.8.1 - '@smithy/querystring-builder@4.2.8': + '@smithy/querystring-builder@4.2.14': dependencies: - '@smithy/types': 4.13.0 + '@smithy/types': 4.14.1 '@smithy/util-uri-escape': 4.2.2 tslib: 2.8.1 @@ -17382,9 +16757,9 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/querystring-parser@4.2.8': + '@smithy/querystring-parser@4.2.14': dependencies: - '@smithy/types': 4.13.0 + '@smithy/types': 4.14.1 tslib: 2.8.1 '@smithy/service-error-classification@4.2.11': @@ -17395,9 +16770,9 @@ snapshots: dependencies: '@smithy/types': 4.13.1 - '@smithy/service-error-classification@4.2.8': + '@smithy/service-error-classification@4.3.0': dependencies: - '@smithy/types': 4.13.0 + '@smithy/types': 4.14.1 '@smithy/shared-ini-file-loader@4.4.6': dependencies: @@ -17409,6 +16784,11 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 + '@smithy/shared-ini-file-loader@4.4.9': + dependencies: + '@smithy/types': 4.14.1 + tslib: 2.8.1 + '@smithy/signature-v4@5.3.11': dependencies: '@smithy/is-array-buffer': 4.2.2 @@ -17431,14 +16811,25 @@ snapshots: '@smithy/util-utf8': 4.2.2 tslib: 2.8.1 - '@smithy/smithy-client@4.11.2': + '@smithy/signature-v4@5.3.14': dependencies: - '@smithy/core': 3.23.9 - '@smithy/middleware-endpoint': 4.4.23 - '@smithy/middleware-stack': 4.2.11 - '@smithy/protocol-http': 5.3.11 - '@smithy/types': 4.13.0 - '@smithy/util-stream': 4.5.17 + '@smithy/is-array-buffer': 4.2.2 + '@smithy/protocol-http': 5.3.14 + '@smithy/types': 4.14.1 + '@smithy/util-hex-encoding': 4.2.2 + '@smithy/util-middleware': 4.2.14 + '@smithy/util-uri-escape': 4.2.2 + '@smithy/util-utf8': 4.2.2 + tslib: 2.8.1 + + '@smithy/smithy-client@4.12.12': + dependencies: + '@smithy/core': 3.23.16 + '@smithy/middleware-endpoint': 4.4.31 + '@smithy/middleware-stack': 4.2.14 + '@smithy/protocol-http': 5.3.14 + '@smithy/types': 4.14.1 + '@smithy/util-stream': 4.5.24 tslib: 2.8.1 '@smithy/smithy-client@4.12.3': @@ -17469,6 +16860,10 @@ snapshots: dependencies: tslib: 2.8.1 + '@smithy/types@4.14.1': + dependencies: + tslib: 2.8.1 + '@smithy/url-parser@4.2.11': dependencies: '@smithy/querystring-parser': 4.2.11 @@ -17481,16 +16876,10 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/url-parser@4.2.8': - dependencies: - '@smithy/querystring-parser': 4.2.8 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - - '@smithy/util-base64@4.3.0': + '@smithy/url-parser@4.2.14': dependencies: - '@smithy/util-buffer-from': 4.2.0 - '@smithy/util-utf8': 4.2.2 + '@smithy/querystring-parser': 4.2.14 + '@smithy/types': 4.14.1 tslib: 2.8.1 '@smithy/util-base64@4.3.2': @@ -17499,18 +16888,10 @@ snapshots: '@smithy/util-utf8': 4.2.2 tslib: 2.8.1 - '@smithy/util-body-length-browser@4.2.0': - dependencies: - tslib: 2.8.1 - '@smithy/util-body-length-browser@4.2.2': dependencies: tslib: 2.8.1 - '@smithy/util-body-length-node@4.2.1': - dependencies: - tslib: 2.8.1 - '@smithy/util-body-length-node@4.2.3': dependencies: tslib: 2.8.1 @@ -17520,11 +16901,6 @@ snapshots: '@smithy/is-array-buffer': 2.2.0 tslib: 2.8.1 - '@smithy/util-buffer-from@4.2.0': - dependencies: - '@smithy/is-array-buffer': 4.2.2 - tslib: 2.8.1 - '@smithy/util-buffer-from@4.2.2': dependencies: '@smithy/is-array-buffer': 4.2.2 @@ -17534,13 +16910,6 @@ snapshots: dependencies: tslib: 2.8.1 - '@smithy/util-defaults-mode-browser@4.3.29': - dependencies: - '@smithy/property-provider': 4.2.11 - '@smithy/smithy-client': 4.12.3 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@smithy/util-defaults-mode-browser@4.3.39': dependencies: '@smithy/property-provider': 4.2.11 @@ -17555,16 +16924,6 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/util-defaults-mode-node@4.2.32': - dependencies: - '@smithy/config-resolver': 4.4.10 - '@smithy/credential-provider-imds': 4.2.11 - '@smithy/node-config-provider': 4.3.11 - '@smithy/property-provider': 4.2.11 - '@smithy/smithy-client': 4.12.3 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@smithy/util-defaults-mode-node@4.2.42': dependencies: '@smithy/config-resolver': 4.4.10 @@ -17585,12 +16944,6 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/util-endpoints@3.2.8': - dependencies: - '@smithy/node-config-provider': 4.3.11 - '@smithy/types': 4.13.0 - tslib: 2.8.1 - '@smithy/util-endpoints@3.3.2': dependencies: '@smithy/node-config-provider': 4.3.11 @@ -17617,9 +16970,9 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/util-middleware@4.2.8': + '@smithy/util-middleware@4.2.14': dependencies: - '@smithy/types': 4.13.0 + '@smithy/types': 4.14.1 tslib: 2.8.1 '@smithy/util-retry@4.2.11': @@ -17634,10 +16987,10 @@ snapshots: '@smithy/types': 4.13.1 tslib: 2.8.1 - '@smithy/util-retry@4.2.8': + '@smithy/util-retry@4.3.3': dependencies: - '@smithy/service-error-classification': 4.2.8 - '@smithy/types': 4.13.0 + '@smithy/service-error-classification': 4.3.0 + '@smithy/types': 4.14.1 tslib: 2.8.1 '@smithy/util-stream@4.5.17': @@ -17662,6 +17015,17 @@ snapshots: '@smithy/util-utf8': 4.2.2 tslib: 2.8.1 + '@smithy/util-stream@4.5.24': + dependencies: + '@smithy/fetch-http-handler': 5.3.17 + '@smithy/node-http-handler': 4.6.0 + '@smithy/types': 4.14.1 + '@smithy/util-base64': 4.3.2 + '@smithy/util-buffer-from': 4.2.2 + '@smithy/util-hex-encoding': 4.2.2 + '@smithy/util-utf8': 4.2.2 + tslib: 2.8.1 + '@smithy/util-uri-escape@4.2.2': dependencies: tslib: 2.8.1 @@ -17682,10 +17046,9 @@ snapshots: '@smithy/types': 4.13.0 tslib: 2.8.1 - '@smithy/util-waiter@4.2.8': + '@smithy/util-waiter@4.2.16': dependencies: - '@smithy/abort-controller': 4.2.8 - '@smithy/types': 4.13.0 + '@smithy/types': 4.14.1 tslib: 2.8.1 '@smithy/uuid@1.1.2': @@ -17700,21 +17063,21 @@ snapshots: '@standard-schema/utils@0.3.0': {} - '@storybook/addon-a11y@10.2.17(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))': + '@storybook/addon-a11y@10.3.5(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))': dependencies: '@storybook/global': 5.0.0 - axe-core: 4.11.0 - storybook: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - - '@storybook/addon-docs@10.2.17(@types/react@19.2.14)(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))(webpack@5.105.4(esbuild@0.27.7))': - dependencies: - '@mdx-js/react': 3.1.1(@types/react@19.2.14)(react@19.2.4) - '@storybook/csf-plugin': 10.2.17(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))(webpack@5.105.4(esbuild@0.27.7)) - '@storybook/icons': 2.0.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - '@storybook/react-dom-shim': 10.2.17(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(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) - storybook: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + axe-core: 4.11.3 + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) + + '@storybook/addon-docs@10.3.5(@types/react@19.2.14)(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7))': + dependencies: + '@mdx-js/react': 3.1.1(@types/react@19.2.14)(react@19.2.5) + '@storybook/csf-plugin': 10.3.5(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7)) + '@storybook/icons': 2.0.1(react-dom@19.2.5(react@19.2.5))(react@19.2.5) + '@storybook/react-dom-shim': 10.3.5(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)) + react: 19.2.5 + react-dom: 19.2.5(react@19.2.5) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) ts-dedent: 2.2.0 transitivePeerDependencies: - '@types/react' @@ -17723,36 +17086,57 @@ snapshots: - vite - webpack - '@storybook/addon-links@10.2.17(react@19.2.4)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))': + '@storybook/addon-links@10.3.5(react@19.2.5)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))': dependencies: '@storybook/global': 5.0.0 - storybook: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) optionalDependencies: - react: 19.2.4 + react: 19.2.5 - '@storybook/addon-onboarding@10.2.17(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))': + '@storybook/addon-onboarding@10.3.5(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))': dependencies: - storybook: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) - '@storybook/builder-vite@10.2.17(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))(webpack@5.105.4(esbuild@0.27.7))': + '@storybook/builder-vite@10.3.5(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7))': dependencies: - '@storybook/csf-plugin': 10.2.17(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))(webpack@5.105.4(esbuild@0.27.7)) - storybook: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@storybook/csf-plugin': 10.3.5(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7)) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) ts-dedent: 2.2.0 - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) transitivePeerDependencies: - esbuild - rollup - webpack - '@storybook/csf-plugin@10.2.17(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))(webpack@5.105.4(esbuild@0.27.7))': + '@storybook/builder-vite@10.3.5(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7))': + dependencies: + '@storybook/csf-plugin': 10.3.5(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7)) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) + ts-dedent: 2.2.0 + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) + transitivePeerDependencies: + - esbuild + - rollup + - webpack + + '@storybook/csf-plugin@10.3.5(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7))': + dependencies: + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + unplugin: 2.3.11 + optionalDependencies: + esbuild: 0.27.7 + rollup: 4.59.0 + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) + webpack: 5.105.4(esbuild@0.27.7) + + '@storybook/csf-plugin@10.3.5(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7))': dependencies: - storybook: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) unplugin: 2.3.11 optionalDependencies: esbuild: 0.27.7 rollup: 4.59.0 - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) webpack: 5.105.4(esbuild@0.27.7) '@storybook/global@5.0.0': {} @@ -17762,27 +17146,60 @@ snapshots: react: 19.2.4 react-dom: 19.2.4(react@19.2.4) - '@storybook/react-dom-shim@10.2.17(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))': + '@storybook/icons@2.0.1(react-dom@19.2.5(react@19.2.5))(react@19.2.5)': + dependencies: + react: 19.2.5 + react-dom: 19.2.5(react@19.2.5) + + '@storybook/react-dom-shim@10.3.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))': dependencies: react: 19.2.4 react-dom: 19.2.4(react@19.2.4) - storybook: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - '@storybook/react-vite@10.2.17(esbuild@0.27.7)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(rollup@4.59.0)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))(webpack@5.105.4(esbuild@0.27.7))': + '@storybook/react-dom-shim@10.3.5(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))': dependencies: - '@joshwooding/vite-plugin-react-docgen-typescript': 0.6.4(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + react: 19.2.5 + react-dom: 19.2.5(react@19.2.5) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) + + '@storybook/react-vite@10.3.5(esbuild@0.27.7)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7))': + dependencies: + '@joshwooding/vite-plugin-react-docgen-typescript': 0.7.0(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) '@rollup/pluginutils': 5.3.0(rollup@4.59.0) - '@storybook/builder-vite': 10.2.17(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))(webpack@5.105.4(esbuild@0.27.7)) - '@storybook/react': 10.2.17(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3) + '@storybook/builder-vite': 10.3.5(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7)) + '@storybook/react': 10.3.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3) empathic: 2.0.0 magic-string: 0.30.21 react: 19.2.4 - react-docgen: 8.0.2 + react-docgen: 8.0.3 react-dom: 19.2.4(react@19.2.4) - resolve: 1.22.11 - storybook: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + resolve: 1.22.12 + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + tsconfig-paths: 4.2.0 + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) + transitivePeerDependencies: + - esbuild + - rollup + - supports-color + - typescript + - webpack + + '@storybook/react-vite@10.3.5(esbuild@0.27.7)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7))': + dependencies: + '@joshwooding/vite-plugin-react-docgen-typescript': 0.7.0(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) + '@rollup/pluginutils': 5.3.0(rollup@4.59.0) + '@storybook/builder-vite': 10.3.5(esbuild@0.27.7)(rollup@4.59.0)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(webpack@5.105.4(esbuild@0.27.7)) + '@storybook/react': 10.3.5(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3) + empathic: 2.0.0 + magic-string: 0.30.21 + react: 19.2.5 + react-docgen: 8.0.3 + react-dom: 19.2.5(react@19.2.5) + resolve: 1.22.12 + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) tsconfig-paths: 4.2.0 - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) transitivePeerDependencies: - esbuild - rollup @@ -17790,14 +17207,29 @@ snapshots: - typescript - webpack - '@storybook/react@10.2.17(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3)': + '@storybook/react@10.3.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3)': dependencies: '@storybook/global': 5.0.0 - '@storybook/react-dom-shim': 10.2.17(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) + '@storybook/react-dom-shim': 10.3.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) react: 19.2.4 - react-docgen: 8.0.2 + react-docgen: 8.0.3 + react-docgen-typescript: 2.4.0(typescript@5.9.3) react-dom: 19.2.4(react@19.2.4) - storybook: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@storybook/react@10.3.5(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3)': + dependencies: + '@storybook/global': 5.0.0 + '@storybook/react-dom-shim': 10.3.5(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)) + react: 19.2.5 + react-docgen: 8.0.3 + react-docgen-typescript: 2.4.0(typescript@5.9.3) + react-dom: 19.2.5(react@19.2.5) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: @@ -17906,12 +17338,12 @@ snapshots: postcss-selector-parser: 6.0.10 tailwindcss: 3.4.19(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)) - '@tailwindcss/vite@4.2.1(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))': + '@tailwindcss/vite@4.2.1(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))': dependencies: '@tailwindcss/node': 4.2.1 '@tailwindcss/oxide': 4.2.1 tailwindcss: 4.2.1 - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) '@tanstack/query-core@5.99.0': {} @@ -17928,7 +17360,7 @@ snapshots: '@tanstack/table-core@8.21.3': {} - '@tediousjs/connection-string@0.5.0': {} + '@tediousjs/connection-string@0.6.0': {} '@testing-library/dom@8.20.1': dependencies: @@ -17979,7 +17411,7 @@ snapshots: '@babel/traverse': 7.29.0 '@babel/types': 7.29.0 javascript-natural-sort: 0.7.1 - lodash-es: 4.17.23 + lodash-es: 4.18.1 minimatch: 9.0.9 parse-imports-exports: 0.2.4 prettier: 3.8.1 @@ -18065,8 +17497,6 @@ snapshots: '@types/heic-convert@2.1.0': {} - '@types/js-cookie@2.2.7': {} - '@types/json-schema@7.0.15': {} '@types/json5@0.0.29': {} @@ -18078,8 +17508,6 @@ snapshots: '@types/linkify-it@5.0.0': {} - '@types/lodash@4.17.24': {} - '@types/markdown-it@14.1.2': dependencies: '@types/linkify-it': 5.0.0 @@ -18099,11 +17527,6 @@ snapshots: dependencies: '@types/node': 25.4.0 - '@types/node-fetch@2.6.13': - dependencies: - '@types/node': 25.4.0 - form-data: 4.0.5 - '@types/node@22.19.13': dependencies: undici-types: 6.21.0 @@ -18167,15 +17590,11 @@ snapshots: '@types/trusted-types@2.0.7': optional: true - '@types/ungap__structured-clone@1.2.0': {} - - '@types/uuid@9.0.8': {} - '@types/webidl-conversions@7.0.3': {} '@types/whatwg-mimetype@3.0.2': {} - '@types/whatwg-url@11.0.5': + '@types/whatwg-url@13.0.0': dependencies: '@types/webidl-conversions': 7.0.3 @@ -18260,6 +17679,15 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/project-service@8.59.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.59.0(typescript@5.9.3) + '@typescript-eslint/types': 8.59.0 + debug: 4.4.3 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/scope-manager@5.62.0': dependencies: '@typescript-eslint/types': 5.62.0 @@ -18280,6 +17708,11 @@ snapshots: '@typescript-eslint/types': 8.57.0 '@typescript-eslint/visitor-keys': 8.57.0 + '@typescript-eslint/scope-manager@8.59.0': + dependencies: + '@typescript-eslint/types': 8.59.0 + '@typescript-eslint/visitor-keys': 8.59.0 + '@typescript-eslint/tsconfig-utils@8.56.1(typescript@5.9.3)': dependencies: typescript: 5.9.3 @@ -18288,6 +17721,10 @@ snapshots: dependencies: typescript: 5.9.3 + '@typescript-eslint/tsconfig-utils@8.59.0(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + '@typescript-eslint/type-utils@7.18.0(eslint@8.57.1)(typescript@5.9.3)': dependencies: '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.9.3) @@ -18320,6 +17757,8 @@ snapshots: '@typescript-eslint/types@8.57.0': {} + '@typescript-eslint/types@8.59.0': {} + '@typescript-eslint/typescript-estree@5.62.0(typescript@5.9.3)': dependencies: '@typescript-eslint/types': 5.62.0 @@ -18358,7 +17797,7 @@ snapshots: debug: 4.4.3 minimatch: 10.2.4 semver: 7.7.3 - tinyglobby: 0.2.15 + tinyglobby: 0.2.16 ts-api-utils: 2.4.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: @@ -18379,6 +17818,21 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/typescript-estree@8.59.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/project-service': 8.59.0(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.59.0(typescript@5.9.3) + '@typescript-eslint/types': 8.59.0 + '@typescript-eslint/visitor-keys': 8.59.0 + debug: 4.4.3 + minimatch: 10.2.5 + semver: 7.7.4 + tinyglobby: 0.2.16 + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/utils@5.62.0(eslint@8.57.1)(typescript@5.9.3)': dependencies: '@eslint-community/eslint-utils': 4.9.1(eslint@8.57.1) @@ -18427,6 +17881,17 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/utils@8.59.0(eslint@8.57.1)(typescript@5.9.3)': + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@8.57.1) + '@typescript-eslint/scope-manager': 8.59.0 + '@typescript-eslint/types': 8.59.0 + '@typescript-eslint/typescript-estree': 8.59.0(typescript@5.9.3) + eslint: 8.57.1 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/visitor-keys@5.62.0': dependencies: '@typescript-eslint/types': 5.62.0 @@ -18447,6 +17912,11 @@ snapshots: '@typescript-eslint/types': 8.57.0 eslint-visitor-keys: 5.0.1 + '@typescript-eslint/visitor-keys@8.59.0': + dependencies: + '@typescript-eslint/types': 8.59.0 + eslint-visitor-keys: 5.0.1 + '@typespec/ts-http-runtime@0.3.2': dependencies: http-proxy-agent: 7.0.2 @@ -18518,7 +17988,7 @@ snapshots: '@vercel/oidc@3.1.0': {} - '@vercel/style-guide@6.0.0(@next/eslint-plugin-next@15.5.12)(eslint@8.57.1)(prettier@3.8.1)(typescript@5.9.3)(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))': + '@vercel/style-guide@6.0.0(@next/eslint-plugin-next@15.5.12)(eslint@8.57.1)(prettier@3.8.1)(typescript@5.9.3)(vitest@4.1.5)': dependencies: '@babel/core': 7.28.5 '@babel/eslint-parser': 7.28.5(@babel/core@7.28.5)(eslint@8.57.1) @@ -18538,7 +18008,7 @@ snapshots: eslint-plugin-testing-library: 6.5.0(eslint@8.57.1)(typescript@5.9.3) eslint-plugin-tsdoc: 0.2.17 eslint-plugin-unicorn: 51.0.1(eslint@8.57.1) - eslint-plugin-vitest: 0.3.26(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3)(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) + eslint-plugin-vitest: 0.3.26(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3)(vitest@4.1.5) prettier-plugin-packagejson: 2.5.20(prettier@3.8.1) optionalDependencies: '@next/eslint-plugin-next': 15.5.12 @@ -18552,7 +18022,7 @@ snapshots: - supports-color - vitest - '@vitejs/plugin-react@5.1.4(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))': + '@vitejs/plugin-react@5.1.4(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.29.0) @@ -18560,32 +18030,32 @@ snapshots: '@rolldown/pluginutils': 1.0.0-rc.3 '@types/babel__core': 7.20.5 react-refresh: 0.18.0 - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) transitivePeerDependencies: - supports-color - '@vitest/coverage-v8@4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))': + '@vitest/coverage-v8@4.1.5(vitest@4.1.5)': dependencies: '@bcoe/v8-coverage': 1.0.2 - '@vitest/utils': 4.0.18 - ast-v8-to-istanbul: 0.3.12 + '@vitest/utils': 4.1.5 + ast-v8-to-istanbul: 1.0.0 istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 istanbul-reports: 3.2.0 magicast: 0.5.2 obug: 2.1.1 - std-env: 3.10.0 - tinyrainbow: 3.0.3 - vitest: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + std-env: 4.1.0 + tinyrainbow: 3.1.0 + vitest: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) - '@vitest/eslint-plugin@1.6.10(eslint@8.57.1)(typescript@5.9.3)(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))': + '@vitest/eslint-plugin@1.6.10(eslint@8.57.1)(typescript@5.9.3)(vitest@4.1.5)': dependencies: '@typescript-eslint/scope-manager': 8.56.1 '@typescript-eslint/utils': 8.56.1(eslint@8.57.1)(typescript@5.9.3) eslint: 8.57.1 optionalDependencies: typescript: 5.9.3 - vitest: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vitest: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) transitivePeerDependencies: - supports-color @@ -18597,39 +18067,48 @@ snapshots: chai: 5.3.3 tinyrainbow: 2.0.0 - '@vitest/expect@4.0.18': + '@vitest/expect@4.1.5': dependencies: '@standard-schema/spec': 1.1.0 '@types/chai': 5.2.3 - '@vitest/spy': 4.0.18 - '@vitest/utils': 4.0.18 + '@vitest/spy': 4.1.5 + '@vitest/utils': 4.1.5 chai: 6.2.2 - tinyrainbow: 3.0.3 + tinyrainbow: 3.1.0 + + '@vitest/mocker@4.1.5(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))': + dependencies: + '@vitest/spy': 4.1.5 + estree-walker: 3.0.3 + magic-string: 0.30.21 + optionalDependencies: + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) - '@vitest/mocker@4.0.18(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))': + '@vitest/mocker@4.1.5(vite@8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))': dependencies: - '@vitest/spy': 4.0.18 + '@vitest/spy': 4.1.5 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vite: 8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) '@vitest/pretty-format@3.2.4': dependencies: tinyrainbow: 2.0.0 - '@vitest/pretty-format@4.0.18': + '@vitest/pretty-format@4.1.5': dependencies: - tinyrainbow: 3.0.3 + tinyrainbow: 3.1.0 - '@vitest/runner@4.0.18': + '@vitest/runner@4.1.5': dependencies: - '@vitest/utils': 4.0.18 + '@vitest/utils': 4.1.5 pathe: 2.0.3 - '@vitest/snapshot@4.0.18': + '@vitest/snapshot@4.1.5': dependencies: - '@vitest/pretty-format': 4.0.18 + '@vitest/pretty-format': 4.1.5 + '@vitest/utils': 4.1.5 magic-string: 0.30.21 pathe: 2.0.3 @@ -18637,7 +18116,7 @@ snapshots: dependencies: tinyspy: 4.0.4 - '@vitest/spy@4.0.18': {} + '@vitest/spy@4.1.5': {} '@vitest/utils@3.2.4': dependencies: @@ -18645,35 +18124,36 @@ snapshots: loupe: 3.2.1 tinyrainbow: 2.0.0 - '@vitest/utils@4.0.18': + '@vitest/utils@4.1.5': dependencies: - '@vitest/pretty-format': 4.0.18 - tinyrainbow: 3.0.3 + '@vitest/pretty-format': 4.1.5 + convert-source-map: 2.0.0 + tinyrainbow: 3.1.0 - '@volar/language-core@2.4.27': + '@volar/language-core@2.4.28': dependencies: - '@volar/source-map': 2.4.27 + '@volar/source-map': 2.4.28 - '@volar/source-map@2.4.27': {} + '@volar/source-map@2.4.28': {} - '@volar/typescript@2.4.27': + '@volar/typescript@2.4.28': dependencies: - '@volar/language-core': 2.4.27 + '@volar/language-core': 2.4.28 path-browserify: 1.0.1 vscode-uri: 3.1.0 - '@vue/compiler-core@3.5.26': + '@vue/compiler-core@3.5.33': dependencies: - '@babel/parser': 7.29.0 - '@vue/shared': 3.5.26 + '@babel/parser': 7.29.2 + '@vue/shared': 3.5.33 entities: 7.0.1 estree-walker: 2.0.2 source-map-js: 1.2.1 - '@vue/compiler-dom@3.5.26': + '@vue/compiler-dom@3.5.33': dependencies: - '@vue/compiler-core': 3.5.26 - '@vue/shared': 3.5.26 + '@vue/compiler-core': 3.5.33 + '@vue/shared': 3.5.33 '@vue/compiler-vue2@2.7.16': dependencies: @@ -18682,10 +18162,10 @@ snapshots: '@vue/language-core@2.2.0(typescript@5.9.3)': dependencies: - '@volar/language-core': 2.4.27 - '@vue/compiler-dom': 3.5.26 + '@volar/language-core': 2.4.28 + '@vue/compiler-dom': 3.5.33 '@vue/compiler-vue2': 2.7.16 - '@vue/shared': 3.5.26 + '@vue/shared': 3.5.33 alien-signals: 0.4.14 minimatch: 9.0.9 muggle-string: 0.4.1 @@ -18693,7 +18173,7 @@ snapshots: optionalDependencies: typescript: 5.9.3 - '@vue/shared@3.5.26': {} + '@vue/shared@3.5.33': {} '@webassemblyjs/ast@1.14.1': dependencies: @@ -18771,15 +18251,13 @@ snapshots: '@webassemblyjs/ast': 1.14.1 '@xtuc/long': 4.2.2 + '@webcontainer/env@1.1.1': {} + '@wojtekmaj/date-utils@2.0.2': {} '@xmldom/is-dom-node@1.0.1': {} - '@xmldom/xmldom@0.8.11': {} - - '@xmldom/xmldom@0.9.8': {} - - '@xobotyi/scrollbar-width@1.9.5': {} + '@xmldom/xmldom@0.9.10': {} '@xtuc/ieee754@1.2.0': {} @@ -18814,8 +18292,6 @@ snapshots: acorn: 8.16.0 optional: true - acorn@8.15.0: {} - acorn@8.16.0: {} agent-base@6.0.2: @@ -18857,22 +18333,11 @@ snapshots: optionalDependencies: ajv: 8.18.0 - ajv-keywords@3.5.2(ajv@6.14.0): - dependencies: - ajv: 6.14.0 - ajv-keywords@5.1.0(ajv@8.18.0): dependencies: ajv: 8.18.0 fast-deep-equal: 3.1.3 - ajv@6.12.6: - dependencies: - fast-deep-equal: 3.1.3 - fast-json-stable-stringify: 2.1.0 - json-schema-traverse: 0.4.1 - uri-js: 4.4.1 - ajv@6.14.0: dependencies: fast-deep-equal: 3.1.3 @@ -19035,7 +18500,7 @@ snapshots: dependencies: tslib: 2.8.1 - ast-v8-to-istanbul@0.3.12: + ast-v8-to-istanbul@1.0.0: dependencies: '@jridgewell/trace-mapping': 0.3.31 estree-walker: 3.0.3 @@ -19071,11 +18536,13 @@ snapshots: axe-core@4.11.0: {} - axios@1.13.5: + axe-core@4.11.3: {} + + axios@1.15.2: dependencies: - follow-redirects: 1.15.11 + follow-redirects: 1.16.0 form-data: 4.0.5 - proxy-from-env: 1.1.0 + proxy-from-env: 2.1.0 transitivePeerDependencies: - debug @@ -19093,18 +18560,23 @@ snapshots: base64id@2.0.0: {} + baseline-browser-mapping@2.10.20: {} + baseline-browser-mapping@2.10.9: {} baseline-browser-mapping@2.9.11: {} bcryptjs@3.0.3: {} + better-sqlite3@12.8.0: + dependencies: + bindings: 1.5.0 + prebuild-install: 7.1.3 + bidi-js@1.0.3: dependencies: require-from-string: 2.0.2 - big.js@5.2.2: {} - bignumber.js@9.3.1: {} binary-extensions@2.3.0: {} @@ -19135,16 +18607,16 @@ snapshots: bowser@2.13.1: {} - brace-expansion@1.1.12: + brace-expansion@1.1.13: dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 - brace-expansion@2.0.2: + brace-expansion@2.0.3: dependencies: balanced-match: 1.0.2 - brace-expansion@5.0.4: + brace-expansion@5.0.5: dependencies: balanced-match: 4.0.4 @@ -19160,7 +18632,15 @@ snapshots: node-releases: 2.0.27 update-browserslist-db: 1.2.3(browserslist@4.28.1) - bson@6.10.4: {} + browserslist@4.28.2: + dependencies: + baseline-browser-mapping: 2.10.20 + caniuse-lite: 1.0.30001788 + electron-to-chromium: 1.5.343 + node-releases: 2.0.38 + update-browserslist-db: 1.2.3(browserslist@4.28.2) + + bson@7.2.0: {} buffer-equal-constant-time@1.0.1: {} @@ -19186,7 +18666,7 @@ snapshots: dependencies: chokidar: 4.0.3 confbox: 0.2.2 - defu: 6.1.4 + defu: 6.1.7 dotenv: 16.6.1 exsolve: 1.0.8 giget: 2.0.0 @@ -19210,14 +18690,14 @@ snapshots: lru-cache: 6.0.0 minipass: 3.3.6 minipass-collect: 1.0.2 - minipass-flush: 1.0.5 + minipass-flush: 1.0.7 minipass-pipeline: 1.2.4 mkdirp: 1.0.4 p-map: 4.0.0 promise-inflight: 1.0.1 rimraf: 3.0.2 ssri: 8.0.1 - tar: 7.5.11 + tar: 7.5.13 unique-filename: 1.1.1 transitivePeerDependencies: - bluebird @@ -19248,10 +18728,12 @@ snapshots: caniuse-lite@1.0.30001776: {} + caniuse-lite@1.0.30001788: {} + chai@5.3.3: dependencies: assertion-error: 2.0.1 - check-error: 2.1.1 + check-error: 2.1.3 deep-eql: 5.0.2 loupe: 3.2.1 pathval: 2.0.1 @@ -19265,7 +18747,7 @@ snapshots: chalk@5.6.2: {} - check-error@2.1.1: {} + check-error@2.1.3: {} chevrotain@10.5.0: dependencies: @@ -19298,7 +18780,8 @@ snapshots: chownr@2.0.0: optional: true - chownr@3.0.0: {} + chownr@3.0.0: + optional: true chromatic@13.3.4: {} @@ -19435,10 +18918,6 @@ snapshots: cookie@0.7.2: {} - copy-to-clipboard@3.3.3: - dependencies: - toggle-selection: 1.0.6 - core-js-compat@3.47.0: dependencies: browserslist: 4.28.1 @@ -19466,10 +18945,6 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 - css-in-js-utils@3.1.0: - dependencies: - hyphenate-style-name: 1.1.0 - css-select@5.2.2: dependencies: boolbase: 1.0.0 @@ -19478,14 +18953,9 @@ snapshots: domutils: 3.2.2 nth-check: 2.1.1 - css-tree@1.1.3: + css-tree@3.2.1: dependencies: - mdn-data: 2.0.14 - source-map: 0.6.1 - - css-tree@3.1.0: - dependencies: - mdn-data: 2.12.2 + mdn-data: 2.27.1 source-map-js: 1.2.1 css-what@6.2.2: {} @@ -19494,13 +18964,6 @@ snapshots: cssesc@3.0.0: {} - cssstyle@6.2.0: - dependencies: - '@asamuzakjp/css-color': 5.0.1 - '@csstools/css-syntax-patches-for-csstree': 1.0.29 - css-tree: 3.1.0 - lru-cache: 11.2.6 - csstype@3.2.3: {} csv-parse@6.1.0: {} @@ -19610,6 +19073,11 @@ snapshots: bundle-name: 4.1.0 default-browser-id: 5.0.1 + default-browser@5.5.0: + dependencies: + bundle-name: 4.1.0 + default-browser-id: 5.0.1 + define-data-property@1.1.4: dependencies: es-define-property: 1.0.1 @@ -19624,7 +19092,7 @@ snapshots: has-property-descriptors: 1.0.2 object-keys: 1.1.1 - defu@6.1.4: {} + defu@6.1.7: {} delayed-stream@1.0.0: {} @@ -19647,11 +19115,11 @@ snapshots: didyoumean@1.2.2: {} - diff@8.0.3: {} - - diff@8.0.4: + diff@4.0.4: optional: true + diff@8.0.4: {} + dijkstrajs@1.0.3: {} dir-glob@3.0.1: @@ -19684,11 +19152,7 @@ snapshots: dependencies: domelementtype: 2.3.0 - dompurify@3.3.2: - optionalDependencies: - '@types/trusted-types': 2.0.7 - - dompurify@3.3.3: + dompurify@3.4.1: optionalDependencies: '@types/trusted-types': 2.0.7 @@ -19738,14 +19202,14 @@ snapshots: electron-to-chromium@1.5.267: {} + electron-to-chromium@1.5.343: {} + emoji-regex@10.6.0: {} emoji-regex@8.0.0: {} emoji-regex@9.2.2: {} - emojis-list@3.0.0: {} - empathic@2.0.0: {} encoding@0.1.13: @@ -19779,6 +19243,11 @@ snapshots: graceful-fs: 4.2.11 tapable: 2.3.0 + enhanced-resolve@5.20.1: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.3.3 + entities@4.5.0: {} entities@6.0.1: {} @@ -19799,10 +19268,6 @@ snapshots: dependencies: is-arrayish: 0.2.1 - error-stack-parser@2.1.4: - dependencies: - stackframe: 1.3.4 - es-abstract@1.24.1: dependencies: array-buffer-byte-length: 1.0.2 @@ -19895,8 +19360,6 @@ snapshots: iterator.prototype: 1.1.5 safe-array-concat: 1.1.3 - es-module-lexer@1.7.0: {} - es-module-lexer@2.0.0: {} es-object-atoms@1.1.1: @@ -19908,7 +19371,7 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.3.0 has-tostringtag: 1.0.2 - hasown: 2.0.2 + hasown: 2.0.3 es-shim-unscopables@1.1.0: dependencies: @@ -20207,11 +19670,11 @@ snapshots: string.prototype.matchall: 4.0.12 string.prototype.repeat: 1.0.0 - eslint-plugin-storybook@10.2.17(eslint@8.57.1)(storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(typescript@5.9.3): + eslint-plugin-storybook@10.3.5(eslint@8.57.1)(storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3): dependencies: - '@typescript-eslint/utils': 8.56.1(eslint@8.57.1)(typescript@5.9.3) + '@typescript-eslint/utils': 8.59.0(eslint@8.57.1)(typescript@5.9.3) eslint: 8.57.1 - storybook: 10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + storybook: 10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) transitivePeerDependencies: - supports-color - typescript @@ -20257,13 +19720,13 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-vitest@0.3.26(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3)(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)): + eslint-plugin-vitest@0.3.26(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3)(vitest@4.1.5): dependencies: '@typescript-eslint/utils': 7.18.0(eslint@8.57.1)(typescript@5.9.3) eslint: 8.57.1 optionalDependencies: '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3) - vitest: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vitest: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) transitivePeerDependencies: - supports-color - typescript @@ -20403,8 +19866,6 @@ snapshots: fast-safe-stringify@2.1.1: {} - fast-shallow-equal@1.0.0: {} - fast-uri@3.1.0: {} fast-xml-builder@1.1.4: @@ -20417,8 +19878,6 @@ snapshots: path-expression-matcher: 1.2.0 strnum: 2.2.1 - fastest-stable-stringify@2.0.2: {} - fastq@1.20.1: dependencies: reusify: 1.1.0 @@ -20438,12 +19897,6 @@ snapshots: dependencies: flat-cache: 3.2.0 - file-loader@6.2.0(webpack@5.105.4): - dependencies: - loader-utils: 2.0.4 - schema-utils: 3.3.0 - webpack: 5.105.4 - file-uri-to-path@1.0.0: {} filesize@10.1.6: {} @@ -20470,7 +19923,7 @@ snapshots: flatted@3.4.2: {} - follow-redirects@1.15.11: {} + follow-redirects@1.16.0: {} for-each@0.3.5: dependencies: @@ -20486,7 +19939,7 @@ snapshots: asynckit: 0.4.0 combined-stream: 1.0.8 es-set-tostringtag: 2.1.0 - hasown: 2.0.2 + hasown: 2.0.3 mime-types: 2.1.35 formdata-polyfill@4.0.10: @@ -20508,7 +19961,7 @@ snapshots: fs-constants@1.0.0: {} - fs-extra@11.3.3: + fs-extra@11.3.4: dependencies: graceful-fs: 4.2.11 jsonfile: 6.2.0 @@ -20535,7 +19988,7 @@ snapshots: call-bound: 1.0.4 define-properties: 1.2.1 functions-have-names: 1.2.3 - hasown: 2.0.2 + hasown: 2.0.3 is-callable: 1.2.7 functions-have-names@1.2.3: {} @@ -20552,17 +20005,6 @@ snapshots: wide-align: 1.1.5 optional: true - gaxios@6.7.1(encoding@0.1.13): - dependencies: - extend: 3.0.2 - https-proxy-agent: 7.0.6 - is-stream: 2.0.1 - node-fetch: 2.7.0(encoding@0.1.13) - uuid: 9.0.1 - transitivePeerDependencies: - - encoding - - supports-color - gaxios@7.1.3: dependencies: extend: 3.0.2 @@ -20580,15 +20022,6 @@ snapshots: transitivePeerDependencies: - supports-color - gcp-metadata@6.1.1(encoding@0.1.13): - dependencies: - gaxios: 6.7.1(encoding@0.1.13) - google-logging-utils: 0.0.2 - json-bigint: 1.0.0 - transitivePeerDependencies: - - encoding - - supports-color - gcp-metadata@8.1.2: dependencies: gaxios: 7.1.4 @@ -20652,7 +20085,7 @@ snapshots: dependencies: citty: 0.1.6 consola: 3.4.2 - defu: 6.1.4 + defu: 6.1.7 node-fetch-native: 1.6.7 nypm: 0.6.2 pathe: 2.0.3 @@ -20732,34 +20165,8 @@ snapshots: transitivePeerDependencies: - supports-color - google-auth-library@9.15.1(encoding@0.1.13): - dependencies: - base64-js: 1.5.1 - ecdsa-sig-formatter: 1.0.11 - gaxios: 6.7.1(encoding@0.1.13) - gcp-metadata: 6.1.1(encoding@0.1.13) - gtoken: 7.1.0(encoding@0.1.13) - jws: 4.0.1 - transitivePeerDependencies: - - encoding - - supports-color - - google-logging-utils@0.0.2: {} - - google-logging-utils@1.1.3: {} - - googleapis-common@7.2.0(encoding@0.1.13): - dependencies: - extend: 3.0.2 - gaxios: 6.7.1(encoding@0.1.13) - google-auth-library: 9.15.1(encoding@0.1.13) - qs: 6.14.2 - url-template: 2.0.8 - uuid: 9.0.1 - transitivePeerDependencies: - - encoding - - supports-color - + google-logging-utils@1.1.3: {} + googleapis-common@8.0.1: dependencies: extend: 3.0.2 @@ -20789,14 +20196,6 @@ snapshots: graphmatch@1.1.1: optional: true - gtoken@7.1.0(encoding@0.1.13): - dependencies: - gaxios: 6.7.1(encoding@0.1.13) - jws: 4.0.1 - transitivePeerDependencies: - - encoding - - supports-color - happy-dom@20.8.9: dependencies: '@types/node': 25.4.0 @@ -20841,6 +20240,10 @@ snapshots: dependencies: function-bind: 1.1.2 + hasown@2.0.3: + dependencies: + function-bind: 1.1.2 + he@1.2.0: {} heic-convert@2.1.0: @@ -20855,14 +20258,14 @@ snapshots: help-me@5.0.0: {} - hono@4.12.7: + hono@4.12.14: optional: true hosted-git-info@2.8.9: {} html-encoding-sniffer@6.0.0(@noble/hashes@2.0.1): dependencies: - '@exodus/bytes': 1.14.1(@noble/hashes@2.0.1) + '@exodus/bytes': 1.15.0(@noble/hashes@2.0.1) transitivePeerDependencies: - '@noble/hashes' @@ -20916,13 +20319,6 @@ snapshots: http-status-codes@2.3.0: optional: true - https-proxy-agent@5.0.0: - dependencies: - agent-base: 6.0.2 - debug: 4.4.3 - transitivePeerDependencies: - - supports-color - https-proxy-agent@5.0.1: dependencies: agent-base: 6.0.2 @@ -20944,8 +20340,6 @@ snapshots: husky@9.1.7: {} - hyphenate-style-name@1.1.0: {} - i18next-icu@2.4.3(intl-messageformat@10.7.18): dependencies: intl-messageformat: 10.7.18 @@ -20967,7 +20361,6 @@ snapshots: iconv-lite@0.7.2: dependencies: safer-buffer: 2.1.2 - optional: true ieee754@1.2.1: {} @@ -21012,10 +20405,6 @@ snapshots: ini@1.3.8: {} - inline-style-prefixer@7.0.1: - dependencies: - css-in-js-utils: 3.1.0 - internal-slot@1.1.0: dependencies: es-errors: 1.3.0 @@ -21032,7 +20421,7 @@ snapshots: ip-address@10.1.0: optional: true - ipaddr.js@2.2.0: {} + ipaddr.js@2.3.0: {} is-arguments@1.2.0: dependencies: @@ -21080,7 +20469,7 @@ snapshots: is-core-module@2.16.1: dependencies: - hasown: 2.0.2 + hasown: 2.0.3 is-data-view@1.0.2: dependencies: @@ -21160,7 +20549,7 @@ snapshots: call-bound: 1.0.4 gopd: 1.2.0 has-tostringtag: 1.0.2 - hasown: 2.0.2 + hasown: 2.0.3 is-set@2.0.3: {} @@ -21170,8 +20559,6 @@ snapshots: is-standalone-pwa@0.1.1: {} - is-stream@2.0.1: {} - is-string@1.1.1: dependencies: call-bound: 1.0.4 @@ -21206,20 +20593,23 @@ snapshots: dependencies: is-inside-container: 1.0.0 + is-wsl@3.1.1: + dependencies: + is-inside-container: 1.0.0 + isarray@1.0.0: {} isarray@2.0.5: {} isexe@2.0.0: {} - isomorphic-dompurify@3.1.0(@noble/hashes@2.0.1): + isomorphic-dompurify@3.9.0(@noble/hashes@2.0.1): dependencies: - dompurify: 3.3.3 - jsdom: 28.1.0(@noble/hashes@2.0.1) + dompurify: 3.4.1 + jsdom: 29.0.2(@noble/hashes@2.0.1) transitivePeerDependencies: - '@noble/hashes' - canvas - - supports-color isomorphic.js@0.2.5: {} @@ -21269,16 +20659,12 @@ snapshots: jose@4.15.9: {} - jose@6.0.11: {} + jose@6.2.2: {} joycon@3.1.1: {} jpeg-js@0.4.4: {} - js-base64@3.7.8: {} - - js-cookie@2.2.1: {} - js-md4@0.3.2: {} js-tokens@10.0.0: {} @@ -21289,24 +20675,24 @@ snapshots: dependencies: argparse: 2.0.1 - jsdom@28.1.0(@noble/hashes@2.0.1): + jsdom@29.0.2(@noble/hashes@2.0.1): dependencies: - '@acemir/cssom': 0.9.31 - '@asamuzakjp/dom-selector': 6.8.1 + '@asamuzakjp/css-color': 5.1.11 + '@asamuzakjp/dom-selector': 7.1.1 '@bramus/specificity': 2.4.2 - '@exodus/bytes': 1.14.1(@noble/hashes@2.0.1) - cssstyle: 6.2.0 + '@csstools/css-syntax-patches-for-csstree': 1.1.3(css-tree@3.2.1) + '@exodus/bytes': 1.15.0(@noble/hashes@2.0.1) + css-tree: 3.2.1 data-urls: 7.0.0(@noble/hashes@2.0.1) decimal.js: 10.6.0 html-encoding-sniffer: 6.0.0(@noble/hashes@2.0.1) - http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.6 is-potential-custom-element-name: 1.0.1 + lru-cache: 11.3.5 parse5: 8.0.0 saxes: 6.0.0 symbol-tree: 3.2.4 - tough-cookie: 6.0.0 - undici: 7.24.0 + tough-cookie: 6.0.1 + undici: 7.25.0 w3c-xmlserializer: 5.0.0 webidl-conversions: 8.0.1 whatwg-mimetype: 5.0.0 @@ -21314,7 +20700,6 @@ snapshots: xml-name-validator: 5.0.0 transitivePeerDependencies: - '@noble/hashes' - - supports-color jsesc@0.5.0: {} @@ -21326,6 +20711,8 @@ snapshots: json-buffer@3.0.1: {} + json-logic-js@2.0.5: {} + json-parse-even-better-errors@2.3.1: {} json-schema-traverse@0.4.1: {} @@ -21519,14 +20906,14 @@ snapshots: dependencies: uc.micro: 2.1.0 - lint-staged@16.3.3: + lint-staged@16.4.0: dependencies: commander: 14.0.3 listr2: 9.0.5 - micromatch: 4.0.8 + picomatch: 4.0.4 string-argv: 0.3.2 - tinyexec: 1.0.2 - yaml: 2.8.2 + tinyexec: 1.1.1 + yaml: 2.8.3 listr2@9.0.5: dependencies: @@ -21539,15 +20926,9 @@ snapshots: loader-runner@4.3.1: {} - loader-utils@2.0.4: - dependencies: - big.js: 5.2.2 - emojis-list: 3.0.0 - json5: 2.2.3 - local-pkg@1.1.2: dependencies: - mlly: 1.8.0 + mlly: 1.8.2 pkg-types: 2.3.0 quansync: 0.2.11 @@ -21559,7 +20940,7 @@ snapshots: dependencies: p-locate: 5.0.0 - lodash-es@4.17.23: {} + lodash-es@4.18.1: {} lodash.camelcase@4.3.0: {} @@ -21611,6 +20992,8 @@ snapshots: lru-cache@11.2.6: {} + lru-cache@11.3.5: {} + lru-cache@5.1.1: dependencies: yallist: 3.1.1 @@ -21619,10 +21002,7 @@ snapshots: dependencies: yallist: 4.0.0 - lru.min@1.1.3: {} - - lru.min@1.1.4: - optional: true + lru.min@1.1.4: {} lucide-react@0.577.0(react@19.2.4): dependencies: @@ -21643,13 +21023,13 @@ snapshots: magicast@0.5.2: dependencies: - '@babel/parser': 7.29.0 + '@babel/parser': 7.29.2 '@babel/types': 7.29.0 source-map-js: 1.2.1 make-dir@4.0.0: dependencies: - semver: 7.7.3 + semver: 7.7.4 make-error@1.3.6: optional: true @@ -21666,7 +21046,7 @@ snapshots: minipass: 3.3.6 minipass-collect: 1.0.2 minipass-fetch: 1.4.1 - minipass-flush: 1.0.5 + minipass-flush: 1.0.7 minipass-pipeline: 1.2.4 negotiator: 0.6.4 promise-retry: 2.0.1 @@ -21690,9 +21070,7 @@ snapshots: math-intrinsics@1.1.0: {} - mdn-data@2.0.14: {} - - mdn-data@2.12.2: {} + mdn-data@2.27.1: {} mdurl@2.0.0: {} @@ -21731,17 +21109,25 @@ snapshots: mini-svg-data-uri@1.4.4: {} + minimatch@10.2.3: + dependencies: + brace-expansion: 5.0.5 + minimatch@10.2.4: dependencies: - brace-expansion: 5.0.4 + brace-expansion: 5.0.5 + + minimatch@10.2.5: + dependencies: + brace-expansion: 5.0.5 minimatch@3.1.5: dependencies: - brace-expansion: 1.1.12 + brace-expansion: 1.1.13 minimatch@9.0.9: dependencies: - brace-expansion: 2.0.2 + brace-expansion: 2.0.3 minimist@1.2.8: {} @@ -21759,7 +21145,7 @@ snapshots: encoding: 0.1.13 optional: true - minipass-flush@1.0.5: + minipass-flush@1.0.7: dependencies: minipass: 3.3.6 optional: true @@ -21790,10 +21176,12 @@ snapshots: minizlib@3.1.0: dependencies: minipass: 7.1.3 + optional: true - mixpanel@0.18.1: + mixpanel@0.20.0: dependencies: - https-proxy-agent: 5.0.0 + https-proxy-agent: 7.0.6 + json-logic-js: 2.0.5 transitivePeerDependencies: - supports-color @@ -21802,12 +21190,12 @@ snapshots: mkdirp@1.0.4: optional: true - mlly@1.8.0: + mlly@1.8.2: dependencies: acorn: 8.16.0 pathe: 2.0.3 pkg-types: 1.3.1 - ufo: 1.6.1 + ufo: 1.6.3 mnemonist@0.38.3: dependencies: @@ -21815,18 +21203,18 @@ snapshots: module-details-from-path@1.0.4: {} - mongodb-connection-string-url@3.0.2: + mongodb-connection-string-url@7.0.1: dependencies: - '@types/whatwg-url': 11.0.5 + '@types/whatwg-url': 13.0.0 whatwg-url: 14.2.0 - mongodb@6.16.0(@aws-sdk/credential-providers@3.817.0)(socks@2.8.7): + mongodb@7.1.0(@aws-sdk/credential-providers@3.1013.0)(socks@2.8.7): dependencies: '@mongodb-js/saslprep': 1.4.4 - bson: 6.10.4 - mongodb-connection-string-url: 3.0.2 + bson: 7.2.0 + mongodb-connection-string-url: 7.0.1 optionalDependencies: - '@aws-sdk/credential-providers': 3.817.0 + '@aws-sdk/credential-providers': 3.1013.0 socks: 2.8.7 motion-dom@12.35.2: @@ -21837,33 +21225,34 @@ snapshots: ms@2.1.3: {} - mssql@11.0.1: + mssql@12.2.1: dependencies: - '@tediousjs/connection-string': 0.5.0 + '@tediousjs/connection-string': 0.6.0 commander: 11.1.0 debug: 4.4.3 - rfdc: 1.4.1 tarn: 3.0.2 - tedious: 18.6.2 + tedious: 19.2.1 transitivePeerDependencies: - supports-color muggle-string@0.4.1: {} - mysql2@3.14.1: + mysql2@3.15.3: dependencies: aws-ssl-profiles: 1.1.2 denque: 2.1.0 generate-function: 2.3.1 - iconv-lite: 0.6.3 + iconv-lite: 0.7.2 long: 5.3.2 - lru.min: 1.1.3 + lru.min: 1.1.4 named-placeholders: 1.1.6 seq-queue: 0.0.5 sqlstring: 2.3.3 + optional: true - mysql2@3.15.3: + mysql2@3.20.0(@types/node@25.4.0): dependencies: + '@types/node': 25.4.0 aws-ssl-profiles: 1.1.2 denque: 2.1.0 generate-function: 2.3.1 @@ -21871,9 +21260,7 @@ snapshots: long: 5.3.2 lru.min: 1.1.4 named-placeholders: 1.1.6 - seq-queue: 0.0.5 - sqlstring: 2.3.3 - optional: true + sql-escaper: 1.3.3 mz@2.7.0: dependencies: @@ -21883,20 +21270,7 @@ snapshots: named-placeholders@1.1.6: dependencies: - lru.min: 1.1.3 - - nano-css@5.6.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4): - dependencies: - '@jridgewell/sourcemap-codec': 1.5.5 - css-tree: 1.1.3 - csstype: 3.2.3 - fastest-stable-stringify: 2.0.2 - inline-style-prefixer: 7.0.1 - react: 19.2.4 - react-dom: 19.2.4(react@19.2.4) - rtl-css-js: 1.16.1 - stacktrace-js: 2.0.2 - stylis: 4.3.6 + lru.min: 1.1.4 nanoid@3.3.11: {} @@ -21915,13 +21289,13 @@ snapshots: neo-async@2.6.2: {} - next-auth@4.24.13(patch_hash=6b21102fce2caaca35f5e4e93ea07a0b4ff486cbf3d3b09a4173ad45977d5798)(next@16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(nodemailer@8.0.4)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + next-auth@4.24.13(patch_hash=6b21102fce2caaca35f5e4e93ea07a0b4ff486cbf3d3b09a4173ad45977d5798)(next@16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(nodemailer@8.0.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: '@babel/runtime': 7.28.4 '@panva/hkdf': 1.2.1 cookie: 0.7.2 jose: 4.15.9 - next: 16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + next: 16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) oauth: 0.9.15 openid-client: 5.7.1 preact: 10.28.2 @@ -21930,18 +21304,18 @@ snapshots: react-dom: 19.2.4(react@19.2.4) uuid: 8.3.2 optionalDependencies: - nodemailer: 8.0.4 + nodemailer: 8.0.5 - next-safe-action@8.1.8(next@16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(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): + next-safe-action@8.1.8(next@16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(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: deepmerge-ts: 7.1.5 - next: 16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + next: 16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(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) - next@16.1.7(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + next@16.2.4(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: - '@next/env': 16.1.7 + '@next/env': 16.2.4 '@swc/helpers': 0.5.15 baseline-browser-mapping: 2.10.9 caniuse-lite: 1.0.30001776 @@ -21950,14 +21324,14 @@ snapshots: react-dom: 19.2.4(react@19.2.4) styled-jsx: 5.1.6(react@19.2.4) optionalDependencies: - '@next/swc-darwin-arm64': 16.1.7 - '@next/swc-darwin-x64': 16.1.7 - '@next/swc-linux-arm64-gnu': 16.1.7 - '@next/swc-linux-arm64-musl': 16.1.7 - '@next/swc-linux-x64-gnu': 16.1.7 - '@next/swc-linux-x64-musl': 16.1.7 - '@next/swc-win32-arm64-msvc': 16.1.7 - '@next/swc-win32-x64-msvc': 16.1.7 + '@next/swc-darwin-arm64': 16.2.4 + '@next/swc-darwin-x64': 16.2.4 + '@next/swc-linux-arm64-gnu': 16.2.4 + '@next/swc-linux-arm64-musl': 16.2.4 + '@next/swc-linux-x64-gnu': 16.2.4 + '@next/swc-linux-x64-musl': 16.2.4 + '@next/swc-win32-arm64-msvc': 16.2.4 + '@next/swc-win32-x64-msvc': 16.2.4 '@opentelemetry/api': 1.9.0 '@playwright/test': 1.58.2 sharp: 0.34.5 @@ -21969,7 +21343,8 @@ snapshots: dependencies: semver: 7.7.3 - node-addon-api@7.1.1: {} + node-addon-api@7.1.1: + optional: true node-domexception@1.0.0: {} @@ -21987,7 +21362,7 @@ snapshots: fetch-blob: 3.2.0 formdata-polyfill: 4.0.10 - node-forge@1.3.3: {} + node-forge@1.4.0: {} node-gyp@8.4.1: dependencies: @@ -21998,8 +21373,8 @@ snapshots: nopt: 5.0.0 npmlog: 6.0.2 rimraf: 3.0.2 - semver: 7.7.3 - tar: 7.5.11 + semver: 7.7.4 + tar: 7.5.13 which: 2.0.2 transitivePeerDependencies: - bluebird @@ -22018,7 +21393,9 @@ snapshots: node-releases@2.0.27: {} - nodemailer@8.0.4: {} + node-releases@2.0.38: {} + + nodemailer@8.0.5: {} nopt@5.0.0: dependencies: @@ -22028,7 +21405,7 @@ snapshots: normalize-package-data@2.5.0: dependencies: hosted-git-info: 2.8.9 - resolve: 1.22.11 + resolve: 1.22.12 semver: 5.7.2 validate-npm-package-license: 3.0.4 @@ -22054,7 +21431,7 @@ snapshots: pkg-types: 2.3.0 tinyexec: 1.0.2 - oauth4webapi@3.8.3: {} + oauth4webapi@3.8.5: {} oauth@0.9.15: {} @@ -22129,7 +21506,7 @@ snapshots: open@10.2.0: dependencies: - default-browser: 5.4.0 + default-browser: 5.5.0 define-lazy-prop: 3.0.0 is-inside-container: 1.0.0 wsl-utils: 0.1.0 @@ -22150,10 +21527,10 @@ snapshots: object-hash: 2.2.0 oidc-token-hash: 5.2.0 - openid-client@6.5.0: + openid-client@6.8.2: dependencies: - jose: 6.0.11 - oauth4webapi: 3.8.3 + jose: 6.2.2 + oauth4webapi: 3.8.5 optionator@0.9.4: dependencies: @@ -22286,19 +21663,21 @@ snapshots: perfect-debounce@1.0.0: {} - pg-cloudflare@1.2.7: + pg-cloudflare@1.3.0: optional: true - pg-connection-string@2.9.1: {} + pg-connection-string@2.12.0: {} pg-int8@1.0.1: {} - pg-pool@3.10.1(pg@8.16.0): + pg-pool@3.13.0(pg@8.20.0): dependencies: - pg: 8.16.0 + pg: 8.20.0 pg-protocol@1.10.3: {} + pg-protocol@1.13.0: {} + pg-types@2.2.0: dependencies: pg-int8: 1.0.1 @@ -22307,15 +21686,15 @@ snapshots: postgres-date: 1.0.7 postgres-interval: 1.2.0 - pg@8.16.0: + pg@8.20.0: dependencies: - pg-connection-string: 2.9.1 - pg-pool: 3.10.1(pg@8.16.0) - pg-protocol: 1.10.3 + pg-connection-string: 2.12.0 + pg-pool: 3.13.0(pg@8.20.0) + pg-protocol: 1.13.0 pg-types: 2.2.0 pgpass: 1.0.5 optionalDependencies: - pg-cloudflare: 1.2.7 + pg-cloudflare: 1.3.0 pgpass@1.0.5: dependencies: @@ -22325,8 +21704,6 @@ snapshots: picomatch@2.3.2: {} - picomatch@4.0.3: {} - picomatch@4.0.4: {} pify@2.3.0: {} @@ -22380,7 +21757,7 @@ snapshots: pkg-types@1.3.1: dependencies: confbox: 0.1.8 - mlly: 1.8.0 + mlly: 1.8.2 pathe: 2.0.3 pkg-types@2.3.0: @@ -22420,7 +21797,7 @@ snapshots: postcss-load-config@4.0.2(postcss@8.5.8)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)): dependencies: lilconfig: 3.1.3 - yaml: 2.8.2 + yaml: 2.8.3 optionalDependencies: postcss: 8.5.8 ts-node: 10.9.2(@types/node@25.4.0)(typescript@5.9.3) @@ -22467,19 +21844,19 @@ snapshots: postgres@3.4.7: optional: true - posthog-js@1.360.0: + posthog-js@1.369.5: dependencies: '@opentelemetry/api': 1.9.0 '@opentelemetry/api-logs': 0.208.0 '@opentelemetry/exporter-logs-otlp-http': 0.208.0(@opentelemetry/api@1.9.0) '@opentelemetry/resources': 2.6.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-logs': 0.208.0(@opentelemetry/api@1.9.0) - '@posthog/core': 1.23.2 - '@posthog/types': 1.360.0 + '@posthog/core': 1.25.3 + '@posthog/types': 1.369.5 core-js: 3.48.0 - dompurify: 3.3.2 + dompurify: 3.4.1 fflate: 0.4.8 - preact: 10.28.2 + preact: 10.29.0 query-selector-shadow-dom: 1.0.1 web-vitals: 5.1.0 @@ -22562,7 +21939,7 @@ snapshots: transitivePeerDependencies: - magicast - prisma@7.4.2(@types/react@19.2.14)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): + prisma@7.4.2(@types/react@19.2.14)(better-sqlite3@12.8.0)(magicast@0.3.5)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): dependencies: '@prisma/config': 7.4.2(magicast@0.3.5) '@prisma/dev': 0.20.0(typescript@5.9.3) @@ -22571,6 +21948,25 @@ snapshots: mysql2: 3.15.3 postgres: 3.4.7 optionalDependencies: + better-sqlite3: 12.8.0 + typescript: 5.9.3 + transitivePeerDependencies: + - '@types/react' + - magicast + - react + - react-dom + optional: true + + prisma@7.4.2(@types/react@19.2.14)(better-sqlite3@12.8.0)(magicast@0.3.5)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(typescript@5.9.3): + dependencies: + '@prisma/config': 7.4.2(magicast@0.3.5) + '@prisma/dev': 0.20.0(typescript@5.9.3) + '@prisma/engines': 7.4.2 + '@prisma/studio-core': 0.13.1(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5) + mysql2: 3.15.3 + postgres: 3.4.7 + optionalDependencies: + better-sqlite3: 12.8.0 typescript: 5.9.3 transitivePeerDependencies: - '@types/react' @@ -22648,6 +22044,8 @@ snapshots: proxy-from-env@1.1.0: {} + proxy-from-env@2.1.0: {} + pump@3.0.3: dependencies: end-of-stream: 1.4.5 @@ -22685,7 +22083,7 @@ snapshots: rc9@2.1.2: dependencies: - defu: 6.1.4 + defu: 6.1.7 destr: 2.0.5 rc@1.2.8: @@ -22728,7 +22126,7 @@ snapshots: dependencies: typescript: 5.9.3 - react-docgen@8.0.2: + react-docgen@8.0.3: dependencies: '@babel/core': 7.29.0 '@babel/traverse': 7.29.0 @@ -22738,7 +22136,7 @@ snapshots: '@types/doctrine': 0.0.9 '@types/resolve': 1.20.6 doctrine: 3.0.0 - resolve: 1.22.11 + resolve: 1.22.12 strip-indent: 4.1.1 transitivePeerDependencies: - supports-color @@ -22748,6 +22146,11 @@ snapshots: react: 19.2.4 scheduler: 0.27.0 + react-dom@19.2.5(react@19.2.5): + dependencies: + react: 19.2.5 + scheduler: 0.27.0 + react-email@5.2.10: dependencies: '@babel/parser': 7.27.0 @@ -22799,6 +22202,17 @@ snapshots: react-dom: 19.2.4(react@19.2.4) typescript: 5.9.3 + react-i18next@16.5.8(i18next@25.8.18(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.5)(typescript@5.9.3): + dependencies: + '@babel/runtime': 7.28.4 + html-parse-stringify: 3.0.1 + i18next: 25.8.18(typescript@5.9.3) + react: 19.2.5 + use-sync-external-store: 1.6.0(react@19.2.5) + optionalDependencies: + react-dom: 19.2.4(react@19.2.4) + typescript: 5.9.3 + react-is@16.13.1: {} react-is@17.0.2: {} @@ -22837,32 +22251,10 @@ snapshots: react: 19.2.4 react-dom: 19.2.4(react@19.2.4) - react-universal-interface@0.6.2(react@19.2.4)(tslib@2.8.1): - dependencies: - react: 19.2.4 - tslib: 2.8.1 - - react-use@17.6.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4): - dependencies: - '@types/js-cookie': 2.2.7 - '@xobotyi/scrollbar-width': 1.9.5 - copy-to-clipboard: 3.3.3 - fast-deep-equal: 3.1.3 - fast-shallow-equal: 1.0.0 - js-cookie: 2.2.1 - nano-css: 5.6.2(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) - react-universal-interface: 0.6.2(react@19.2.4)(tslib@2.8.1) - resize-observer-polyfill: 1.5.1 - screenfull: 5.2.0 - set-harmonic-interval: 1.0.1 - throttle-debounce: 3.0.1 - ts-easing: 0.2.0 - tslib: 2.8.1 - react@19.2.4: {} + react@19.2.5: {} + read-cache@1.0.0: dependencies: pify: 2.3.0 @@ -22925,14 +22317,14 @@ snapshots: indent-string: 4.0.0 strip-indent: 3.0.0 - redis@4.7.0: + redis@4.7.1: dependencies: - '@redis/bloom': 1.2.0(@redis/client@1.6.0) - '@redis/client': 1.6.0 - '@redis/graph': 1.1.1(@redis/client@1.6.0) - '@redis/json': 1.0.7(@redis/client@1.6.0) - '@redis/search': 1.2.0(@redis/client@1.6.0) - '@redis/time-series': 1.1.0(@redis/client@1.6.0) + '@redis/bloom': 1.2.0(@redis/client@1.6.1) + '@redis/client': 1.6.1 + '@redis/graph': 1.1.1(@redis/client@1.6.1) + '@redis/json': 1.0.7(@redis/client@1.6.1) + '@redis/search': 1.2.0(@redis/client@1.6.1) + '@redis/time-series': 1.1.0(@redis/client@1.6.1) redis@5.11.0: dependencies: @@ -23008,6 +22400,13 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + resolve@1.22.12: + dependencies: + es-errors: 1.3.0 + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + resolve@2.0.0-next.5: dependencies: is-core-module: 2.16.1 @@ -23039,7 +22438,7 @@ snapshots: glob: 13.0.6 package-json-from-dist: 1.0.1 - ripemd160@2.0.2: + ripemd160@2.0.3: dependencies: hash-base: 3.1.2 inherits: 2.0.4 @@ -23071,7 +22470,7 @@ snapshots: rollup-plugin-visualizer@7.0.1(rolldown@1.0.0-rc.12(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1))(rollup@4.59.0): dependencies: open: 11.0.0 - picomatch: 4.0.3 + picomatch: 4.0.4 source-map: 0.7.6 yargs: 18.0.0 optionalDependencies: @@ -23109,10 +22508,6 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.59.0 fsevents: 2.3.3 - rtl-css-js@1.16.1: - dependencies: - '@babel/runtime': 7.28.4 - run-applescript@7.1.0: {} run-parallel@1.2.0: @@ -23167,12 +22562,6 @@ snapshots: scheduler@0.27.0: {} - schema-utils@3.3.0: - dependencies: - '@types/json-schema': 7.0.15 - ajv: 6.14.0 - ajv-keywords: 3.5.2(ajv@6.14.0) - schema-utils@4.3.3: dependencies: '@types/json-schema': 7.0.15 @@ -23180,8 +22569,6 @@ snapshots: ajv-formats: 2.1.1(ajv@8.18.0) ajv-keywords: 5.1.0(ajv@8.18.0) - screenfull@5.2.0: {} - secure-json-parse@4.1.0: {} selderee@0.11.0: @@ -23192,13 +22579,12 @@ snapshots: semver@6.3.1: {} - semver@7.5.4: - dependencies: - lru-cache: 6.0.0 - semver@7.7.3: {} - seq-queue@0.0.5: {} + semver@7.7.4: {} + + seq-queue@0.0.5: + optional: true server-only@0.0.1: {} @@ -23220,8 +22606,6 @@ snapshots: functions-have-names: 1.2.3 has-property-descriptors: 1.0.2 - set-harmonic-interval@1.0.1: {} - set-proto@1.0.0: dependencies: dunder-proto: 1.0.1 @@ -23396,7 +22780,7 @@ snapshots: is-plain-obj: 4.1.0 semver: 7.7.3 sort-object-keys: 2.0.1 - tinyglobby: 0.2.15 + tinyglobby: 0.2.16 source-map-js@1.2.1: {} @@ -23405,8 +22789,6 @@ snapshots: buffer-from: 1.1.2 source-map: 0.6.1 - source-map@0.5.6: {} - source-map@0.6.1: {} source-map@0.7.6: {} @@ -23435,6 +22817,8 @@ snapshots: sprintf-js@1.1.3: {} + sql-escaper@1.3.3: {} + sql-highlight@6.1.0: {} sqlite3@5.1.7: @@ -23442,14 +22826,16 @@ snapshots: bindings: 1.5.0 node-addon-api: 7.1.1 prebuild-install: 7.1.3 - tar: 7.5.11 + tar: 7.5.13 optionalDependencies: node-gyp: 8.4.1 transitivePeerDependencies: - bluebird - supports-color + optional: true - sqlstring@2.3.3: {} + sqlstring@2.3.3: + optional: true ssri@8.0.1: dependencies: @@ -23458,32 +22844,18 @@ snapshots: stable-hash@0.0.5: {} - stack-generator@2.0.10: - dependencies: - stackframe: 1.3.4 - stack-trace@1.0.0-pre2: {} stackback@0.0.2: {} - stackframe@1.3.4: {} - - stacktrace-gps@3.1.2: - dependencies: - source-map: 0.5.6 - stackframe: 1.3.4 - - stacktrace-js@2.0.2: - dependencies: - error-stack-parser: 2.1.4 - stack-generator: 2.0.10 - stacktrace-gps: 3.1.2 - stacktrace-parser@0.1.11: dependencies: type-fest: 0.7.1 - std-env@3.10.0: {} + std-env@3.10.0: + optional: true + + std-env@4.1.0: {} stdin-discarder@0.2.2: {} @@ -23492,7 +22864,7 @@ snapshots: es-errors: 1.3.0 internal-slot: 1.1.0 - storybook@10.2.17(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: '@storybook/global': 5.0.0 '@storybook/icons': 2.0.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -23500,12 +22872,37 @@ snapshots: '@testing-library/user-event': 14.6.1(@testing-library/dom@8.20.1) '@vitest/expect': 3.2.4 '@vitest/spy': 3.2.4 - esbuild: 0.27.3 + '@webcontainer/env': 1.1.1 + esbuild: 0.27.7 open: 10.2.0 recast: 0.23.11 - semver: 7.7.3 + semver: 7.7.4 use-sync-external-store: 1.6.0(react@19.2.4) - ws: 8.18.3 + ws: 8.20.0 + optionalDependencies: + prettier: 3.8.1 + transitivePeerDependencies: + - '@testing-library/dom' + - bufferutil + - react + - react-dom + - utf-8-validate + + storybook@10.3.5(@testing-library/dom@8.20.1)(prettier@3.8.1)(react-dom@19.2.5(react@19.2.5))(react@19.2.5): + dependencies: + '@storybook/global': 5.0.0 + '@storybook/icons': 2.0.1(react-dom@19.2.5(react@19.2.5))(react@19.2.5) + '@testing-library/jest-dom': 6.9.1 + '@testing-library/user-event': 14.6.1(@testing-library/dom@8.20.1) + '@vitest/expect': 3.2.4 + '@vitest/spy': 3.2.4 + '@webcontainer/env': 1.1.1 + esbuild: 0.27.7 + open: 10.2.0 + recast: 0.23.11 + semver: 7.7.4 + use-sync-external-store: 1.6.0(react@19.2.5) + ws: 8.20.0 optionalDependencies: prettier: 3.8.1 transitivePeerDependencies: @@ -23637,8 +23034,6 @@ snapshots: client-only: 0.0.1 react: 19.2.4 - stylis@4.3.6: {} - sucrase@3.35.1: dependencies: '@jridgewell/gen-mapping': 0.3.13 @@ -23704,6 +23099,8 @@ snapshots: tapable@2.3.0: {} + tapable@2.3.3: {} + tar-fs@2.1.4: dependencies: chownr: 1.1.4 @@ -23719,17 +23116,18 @@ snapshots: inherits: 2.0.4 readable-stream: 3.6.2 - tar@7.5.11: + tar@7.5.13: dependencies: '@isaacs/fs-minipass': 4.0.1 chownr: 3.0.0 minipass: 7.1.3 minizlib: 3.1.0 yallist: 5.0.0 + optional: true tarn@3.0.2: {} - tedious@18.6.2: + tedious@19.2.1: dependencies: '@azure/core-auth': 1.10.1 '@azure/identity': 4.13.0 @@ -23737,36 +23135,36 @@ snapshots: '@js-joda/core': 5.6.5 '@types/node': 25.4.0 bl: 6.1.6 - iconv-lite: 0.6.3 + iconv-lite: 0.7.2 js-md4: 0.3.2 native-duplexpair: 1.0.0 sprintf-js: 1.1.3 transitivePeerDependencies: - supports-color - terser-webpack-plugin@5.3.17(esbuild@0.27.7)(webpack@5.105.4(esbuild@0.27.7)): + terser-webpack-plugin@5.4.0(esbuild@0.27.7)(webpack@5.105.4(esbuild@0.27.7)): dependencies: '@jridgewell/trace-mapping': 0.3.31 jest-worker: 27.5.1 schema-utils: 4.3.3 - terser: 5.46.0 + terser: 5.46.1 webpack: 5.105.4(esbuild@0.27.7) optionalDependencies: esbuild: 0.27.7 optional: true - terser-webpack-plugin@5.3.17(webpack@5.105.4): + terser-webpack-plugin@5.4.0(webpack@5.105.4): dependencies: '@jridgewell/trace-mapping': 0.3.31 jest-worker: 27.5.1 schema-utils: 4.3.3 - terser: 5.46.0 + terser: 5.46.1 webpack: 5.105.4 - terser@5.46.0: + terser@5.46.1: dependencies: '@jridgewell/source-map': 0.3.11 - acorn: 8.15.0 + acorn: 8.16.0 commander: 2.20.3 source-map-support: 0.5.21 @@ -23786,22 +23184,27 @@ snapshots: dependencies: real-require: 0.2.0 - throttle-debounce@3.0.1: {} - tiny-invariant@1.3.3: {} tinybench@2.9.0: {} tinyexec@1.0.2: {} + tinyexec@1.1.1: {} + tinyglobby@0.2.15: dependencies: fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 + tinyglobby@0.2.16: + dependencies: + fdir: 6.5.0(picomatch@4.0.4) + picomatch: 4.0.4 + tinyrainbow@2.0.0: {} - tinyrainbow@3.0.3: {} + tinyrainbow@3.1.0: {} tinyspy@4.0.4: {} @@ -23821,9 +23224,7 @@ snapshots: dependencies: is-number: 7.0.0 - toggle-selection@1.0.6: {} - - tough-cookie@6.0.0: + tough-cookie@6.0.1: dependencies: tldts: 7.0.19 @@ -23847,9 +23248,11 @@ snapshots: dependencies: typescript: 5.9.3 - ts-dedent@2.2.0: {} + ts-api-utils@2.5.0(typescript@5.9.3): + dependencies: + typescript: 5.9.3 - ts-easing@0.2.0: {} + ts-dedent@2.2.0: {} ts-essentials@10.1.1(typescript@5.9.3): optionalDependencies: @@ -23869,7 +23272,7 @@ snapshots: acorn-walk: 8.3.5 arg: 4.1.3 create-require: 1.1.1 - diff: 8.0.4 + diff: 4.0.4 make-error: 1.3.6 typescript: 5.9.3 v8-compile-cache-lib: 3.0.1 @@ -23991,7 +23394,7 @@ snapshots: possible-typed-array-names: 1.1.0 reflect.getprototypeof: 1.0.10 - typeorm@0.3.28(mongodb@6.16.0(@aws-sdk/credential-providers@3.817.0)(socks@2.8.7))(mssql@11.0.1)(mysql2@3.14.1)(pg@8.16.0)(redis@4.7.0)(sqlite3@5.1.7)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)): + typeorm@0.3.28(better-sqlite3@12.8.0)(mongodb@7.1.0(@aws-sdk/credential-providers@3.1013.0)(socks@2.8.7))(mssql@12.2.1)(mysql2@3.20.0(@types/node@25.4.0))(pg@8.20.0)(redis@4.7.1)(sqlite3@5.1.7)(ts-node@10.9.2(@types/node@25.4.0)(typescript@5.9.3)): dependencies: '@sqltools/formatter': 1.2.5 ansis: 4.2.0 @@ -24009,19 +23412,18 @@ snapshots: uuid: 11.1.0 yargs: 17.7.2 optionalDependencies: - mongodb: 6.16.0(@aws-sdk/credential-providers@3.817.0)(socks@2.8.7) - mssql: 11.0.1 - mysql2: 3.14.1 - pg: 8.16.0 - redis: 4.7.0 + better-sqlite3: 12.8.0 + mongodb: 7.1.0(@aws-sdk/credential-providers@3.1013.0)(socks@2.8.7) + mssql: 12.2.1 + mysql2: 3.20.0(@types/node@25.4.0) + pg: 8.20.0 + redis: 4.7.1 sqlite3: 5.1.7 ts-node: 10.9.2(@types/node@25.4.0)(typescript@5.9.3) transitivePeerDependencies: - babel-plugin-macros - supports-color - typescript@5.8.2: {} - typescript@5.9.3: {} ua-is-frozen@0.1.2: {} @@ -24034,7 +23436,7 @@ snapshots: uc.micro@2.1.0: {} - ufo@1.6.1: {} + ufo@1.6.3: {} uint8array-extras@1.5.0: {} @@ -24051,6 +23453,8 @@ snapshots: undici@7.24.0: {} + undici@7.25.0: {} + unique-filename@1.1.1: dependencies: unique-slug: 2.0.2 @@ -24100,6 +23504,12 @@ snapshots: escalade: 3.2.0 picocolors: 1.1.1 + update-browserslist-db@1.2.3(browserslist@4.28.2): + dependencies: + browserslist: 4.28.2 + escalade: 3.2.0 + picocolors: 1.1.1 + uri-js@4.4.1: dependencies: punycode: 2.3.1 @@ -24125,6 +23535,10 @@ snapshots: dependencies: react: 19.2.4 + use-sync-external-store@1.6.0(react@19.2.5): + dependencies: + react: 19.2.5 + util-deprecate@1.0.2: {} uuid@11.1.0: {} @@ -24150,11 +23564,11 @@ snapshots: vary@1.1.2: {} - vite-plugin-dts@4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)): + vite-plugin-dts@4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)): dependencies: - '@microsoft/api-extractor': 7.57.6(@types/node@25.4.0) + '@microsoft/api-extractor': 7.58.7(@types/node@25.4.0) '@rollup/pluginutils': 5.3.0(rollup@4.59.0) - '@volar/typescript': 2.4.27 + '@volar/typescript': 2.4.28 '@vue/language-core': 2.2.0(typescript@5.9.3) compare-versions: 6.1.1 debug: 4.4.3 @@ -24163,32 +23577,13 @@ snapshots: magic-string: 0.30.21 typescript: 5.9.3 optionalDependencies: - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) transitivePeerDependencies: - '@types/node' - rollup - supports-color - vite-plugin-dts@4.5.4(@types/node@25.4.0)(rollup@4.59.0)(typescript@5.9.3)(vite@8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)): - dependencies: - '@microsoft/api-extractor': 7.57.6(@types/node@25.4.0) - '@rollup/pluginutils': 5.3.0(rollup@4.59.0) - '@volar/typescript': 2.4.27 - '@vue/language-core': 2.2.0(typescript@5.9.3) - compare-versions: 6.1.1 - debug: 4.4.3 - kolorist: 1.8.0 - local-pkg: 1.1.2 - magic-string: 0.30.21 - typescript: 5.9.3 - optionalDependencies: - vite: 8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) - transitivePeerDependencies: - - '@types/node' - - rollup - - supports-color - - vite-prerender-plugin@0.5.12(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)): + vite-prerender-plugin@0.5.12(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)): dependencies: kolorist: 1.8.0 magic-string: 0.30.21 @@ -24196,19 +23591,19 @@ snapshots: simple-code-frame: 1.3.0 source-map: 0.7.6 stack-trace: 1.0.0-pre2 - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) - vite-tsconfig-paths@6.1.1(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)): + vite-tsconfig-paths@6.1.1(typescript@5.9.3)(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)): dependencies: debug: 4.4.3 globrex: 0.1.2 tsconfck: 3.1.6(typescript@5.9.3) - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) transitivePeerDependencies: - supports-color - typescript - vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2): + vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3): dependencies: esbuild: 0.27.7 fdir: 6.5.0(picomatch@4.0.4) @@ -24221,11 +23616,11 @@ snapshots: fsevents: 2.3.3 jiti: 2.6.1 lightningcss: 1.32.0 - terser: 5.46.0 + terser: 5.46.1 tsx: 4.21.0 - yaml: 2.8.2 + yaml: 2.8.3 - vite@8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2): + vite@8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3): dependencies: lightningcss: 1.32.0 picomatch: 4.0.4 @@ -24237,58 +23632,80 @@ snapshots: esbuild: 0.27.7 fsevents: 2.3.3 jiti: 2.6.1 - terser: 5.46.0 + terser: 5.46.1 tsx: 4.21.0 - yaml: 2.8.2 + yaml: 2.8.3 transitivePeerDependencies: - '@emnapi/core' - '@emnapi/runtime' - vitest-mock-extended@3.1.0(typescript@5.9.3)(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)): + vitest-mock-extended@3.1.0(typescript@5.9.3)(vitest@4.1.5): dependencies: ts-essentials: 10.1.1(typescript@5.9.3) typescript: 5.9.3 - vitest: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) - - vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(happy-dom@20.8.9)(jiti@2.6.1)(jsdom@28.1.0(@noble/hashes@2.0.1))(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2): - dependencies: - '@vitest/expect': 4.0.18 - '@vitest/mocker': 4.0.18(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) - '@vitest/pretty-format': 4.0.18 - '@vitest/runner': 4.0.18 - '@vitest/snapshot': 4.0.18 - '@vitest/spy': 4.0.18 - '@vitest/utils': 4.0.18 - es-module-lexer: 1.7.0 + vitest: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) + + vitest@4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)): + dependencies: + '@vitest/expect': 4.1.5 + '@vitest/mocker': 4.1.5(vite@7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) + '@vitest/pretty-format': 4.1.5 + '@vitest/runner': 4.1.5 + '@vitest/snapshot': 4.1.5 + '@vitest/spy': 4.1.5 + '@vitest/utils': 4.1.5 + es-module-lexer: 2.0.0 expect-type: 1.3.0 magic-string: 0.30.21 obug: 2.1.1 pathe: 2.0.3 - picomatch: 4.0.3 - std-env: 3.10.0 + picomatch: 4.0.4 + std-env: 4.1.0 tinybench: 2.9.0 - tinyexec: 1.0.2 - tinyglobby: 0.2.15 - tinyrainbow: 3.0.3 - vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2) + tinyexec: 1.1.1 + tinyglobby: 0.2.16 + tinyrainbow: 3.1.0 + vite: 7.3.2(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.32.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) + why-is-node-running: 2.3.0 + optionalDependencies: + '@opentelemetry/api': 1.9.0 + '@types/node': 25.4.0 + '@vitest/coverage-v8': 4.1.5(vitest@4.1.5) + happy-dom: 20.8.9 + jsdom: 29.0.2(@noble/hashes@2.0.1) + transitivePeerDependencies: + - msw + + vitest@4.1.5(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(@vitest/coverage-v8@4.1.5)(happy-dom@20.8.9)(jsdom@29.0.2(@noble/hashes@2.0.1))(vite@8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)): + dependencies: + '@vitest/expect': 4.1.5 + '@vitest/mocker': 4.1.5(vite@8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)) + '@vitest/pretty-format': 4.1.5 + '@vitest/runner': 4.1.5 + '@vitest/snapshot': 4.1.5 + '@vitest/spy': 4.1.5 + '@vitest/utils': 4.1.5 + es-module-lexer: 2.0.0 + expect-type: 1.3.0 + magic-string: 0.30.21 + obug: 2.1.1 + pathe: 2.0.3 + picomatch: 4.0.4 + std-env: 4.1.0 + tinybench: 2.9.0 + tinyexec: 1.1.1 + tinyglobby: 0.2.16 + tinyrainbow: 3.1.0 + vite: 8.0.5(@emnapi/core@1.7.1)(@emnapi/runtime@1.8.1)(@types/node@25.4.0)(esbuild@0.27.7)(jiti@2.6.1)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3) why-is-node-running: 2.3.0 optionalDependencies: '@opentelemetry/api': 1.9.0 '@types/node': 25.4.0 + '@vitest/coverage-v8': 4.1.5(vitest@4.1.5) happy-dom: 20.8.9 - jsdom: 28.1.0(@noble/hashes@2.0.1) + jsdom: 29.0.2(@noble/hashes@2.0.1) transitivePeerDependencies: - - jiti - - less - - lightningcss - msw - - sass - - sass-embedded - - stylus - - sugarss - - terser - - tsx - - yaml void-elements@3.1.0: {} @@ -24331,9 +23748,9 @@ snapshots: '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.16.0 acorn-import-phases: 1.0.4(acorn@8.16.0) - browserslist: 4.28.1 + browserslist: 4.28.2 chrome-trace-event: 1.0.4 - enhanced-resolve: 5.20.0 + enhanced-resolve: 5.20.1 es-module-lexer: 2.0.0 eslint-scope: 5.1.1 events: 3.3.0 @@ -24344,8 +23761,8 @@ snapshots: mime-types: 2.1.35 neo-async: 2.6.2 schema-utils: 4.3.3 - tapable: 2.3.0 - terser-webpack-plugin: 5.3.17(webpack@5.105.4) + tapable: 2.3.3 + terser-webpack-plugin: 5.4.0(webpack@5.105.4) watchpack: 2.5.1 webpack-sources: 3.3.4 transitivePeerDependencies: @@ -24363,9 +23780,9 @@ snapshots: '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.16.0 acorn-import-phases: 1.0.4(acorn@8.16.0) - browserslist: 4.28.1 + browserslist: 4.28.2 chrome-trace-event: 1.0.4 - enhanced-resolve: 5.20.0 + enhanced-resolve: 5.20.1 es-module-lexer: 2.0.0 eslint-scope: 5.1.1 events: 3.3.0 @@ -24376,8 +23793,8 @@ snapshots: mime-types: 2.1.35 neo-async: 2.6.2 schema-utils: 4.3.3 - tapable: 2.3.0 - terser-webpack-plugin: 5.3.17(esbuild@0.27.7)(webpack@5.105.4(esbuild@0.27.7)) + tapable: 2.3.3 + terser-webpack-plugin: 5.4.0(esbuild@0.27.7)(webpack@5.105.4(esbuild@0.27.7)) watchpack: 2.5.1 webpack-sources: 3.3.4 transitivePeerDependencies: @@ -24397,7 +23814,7 @@ snapshots: whatwg-url@16.0.1(@noble/hashes@2.0.1): dependencies: - '@exodus/bytes': 1.14.1(@noble/hashes@2.0.1) + '@exodus/bytes': 1.15.0(@noble/hashes@2.0.1) tr46: 6.0.0 webidl-conversions: 8.0.1 transitivePeerDependencies: @@ -24499,9 +23916,11 @@ snapshots: ws@8.18.3: {} + ws@8.20.0: {} + wsl-utils@0.1.0: dependencies: - is-wsl: 3.1.0 + is-wsl: 3.1.1 wsl-utils@0.3.1: dependencies: @@ -24513,12 +23932,12 @@ snapshots: xml-crypto@6.1.2: dependencies: '@xmldom/is-dom-node': 1.0.1 - '@xmldom/xmldom': 0.8.11 + '@xmldom/xmldom': 0.9.10 xpath: 0.0.33 xml-encryption@3.1.0: dependencies: - '@xmldom/xmldom': 0.8.11 + '@xmldom/xmldom': 0.9.10 escape-html: 1.0.3 xpath: 0.0.32 @@ -24549,9 +23968,10 @@ snapshots: yallist@4.0.0: {} - yallist@5.0.0: {} + yallist@5.0.0: + optional: true - yaml@2.8.2: {} + yaml@2.8.3: {} yargs-parser@18.1.3: dependencies: From 4128731c5f9fb273860cd0e80224ce11ebb16dad Mon Sep 17 00:00:00 2001 From: Tiago <1585571+xernobyl@users.noreply.github.com> Date: Fri, 24 Apr 2026 18:16:59 +0000 Subject: [PATCH 2/2] fix: password hash visibility improvement (#7814) Co-authored-by: pandeymangg --- apps/web/app/api/v1/management/me/route.ts | 2 + apps/web/lib/user/public-user.ts | 20 ++++++++ apps/web/lib/user/service.test.ts | 20 ++++---- apps/web/lib/user/service.ts | 28 +++-------- .../users/lib/tests/users.test.ts | 16 ++++++ apps/web/playwright/api/management/me.spec.ts | 49 +++++++++++++++++++ 6 files changed, 104 insertions(+), 31 deletions(-) create mode 100644 apps/web/lib/user/public-user.ts create mode 100644 apps/web/playwright/api/management/me.spec.ts diff --git a/apps/web/app/api/v1/management/me/route.ts b/apps/web/app/api/v1/management/me/route.ts index 0d8ab70b539e..986d5b97dac4 100644 --- a/apps/web/app/api/v1/management/me/route.ts +++ b/apps/web/app/api/v1/management/me/route.ts @@ -4,6 +4,7 @@ import { getSessionUser } from "@/app/api/v1/management/me/lib/utils"; import { responses } from "@/app/lib/api/response"; import { CONTROL_HASH } from "@/lib/constants"; import { hashSha256, parseApiKeyV2, verifySecret } from "@/lib/crypto"; +import { publicUserSelect } from "@/lib/user/public-user"; import { applyRateLimit } from "@/modules/core/rate-limit/helpers"; import { rateLimitConfigs } from "@/modules/core/rate-limit/rate-limit-configs"; @@ -176,6 +177,7 @@ const handleSessionAuthentication = async () => { const user = await prisma.user.findUnique({ where: { id: sessionUser.id }, + select: publicUserSelect, }); return Response.json(user); diff --git a/apps/web/lib/user/public-user.ts b/apps/web/lib/user/public-user.ts new file mode 100644 index 000000000000..6c07b2b0f7a1 --- /dev/null +++ b/apps/web/lib/user/public-user.ts @@ -0,0 +1,20 @@ +import { Prisma } from "@prisma/client"; + +export const publicUserSelect = { + id: true, + name: true, + email: true, + emailVerified: true, + createdAt: true, + updatedAt: true, + twoFactorEnabled: true, + identityProvider: true, + notificationSettings: true, + locale: true, + lastLoginAt: true, + isActive: true, +} as const satisfies Prisma.UserSelect; + +export type TPublicUser = Prisma.UserGetPayload<{ + select: typeof publicUserSelect; +}>; diff --git a/apps/web/lib/user/service.test.ts b/apps/web/lib/user/service.test.ts index 89f736894f12..46c0ae55084e 100644 --- a/apps/web/lib/user/service.test.ts +++ b/apps/web/lib/user/service.test.ts @@ -6,6 +6,7 @@ import { DatabaseError, ResourceNotFoundError } from "@formbricks/types/errors"; import { TOrganization } from "@formbricks/types/organizations"; import { TUserLocale, TUserUpdateInput } from "@formbricks/types/user"; import { deleteOrganization, getOrganizationsWhereUserIsSingleOwner } from "@/lib/organization/service"; +import { publicUserSelect } from "./public-user"; import { deleteUser, getUser, getUserByEmail, getUsersWithOrganization, updateUser } from "./service"; vi.mock("@formbricks/database", () => ({ @@ -47,11 +48,6 @@ describe("User Service", () => { locale: "en-US" as TUserLocale, lastLoginAt: new Date(), isActive: true, - twoFactorSecret: null, - backupCodes: null, - password: null, - identityProviderAccountId: null, - groupId: null, }; const mockOrganizations: TOrganization[] = [ @@ -102,8 +98,12 @@ describe("User Service", () => { expect(result).toEqual(mockPrismaUser); expect(prisma.user.findUnique).toHaveBeenCalledWith({ where: { id: "user1" }, - select: expect.any(Object), + select: publicUserSelect, }); + expect(result).not.toHaveProperty("password"); + expect(result).not.toHaveProperty("twoFactorSecret"); + expect(result).not.toHaveProperty("backupCodes"); + expect(result).not.toHaveProperty("identityProviderAccountId"); }); test("should return null when user not found", async () => { @@ -134,7 +134,7 @@ describe("User Service", () => { expect(result).toEqual(mockPrismaUser); expect(prisma.user.findFirst).toHaveBeenCalledWith({ where: { email: "test@example.com" }, - select: expect.any(Object), + select: publicUserSelect, }); }); @@ -176,7 +176,7 @@ describe("User Service", () => { expect(prisma.user.update).toHaveBeenCalledWith({ where: { id: "user1" }, data: updateData, - select: expect.any(Object), + select: publicUserSelect, }); }); @@ -204,7 +204,7 @@ describe("User Service", () => { expect(deleteOrganization).toHaveBeenCalledWith("org1"); expect(prisma.user.delete).toHaveBeenCalledWith({ where: { id: "user1" }, - select: expect.any(Object), + select: publicUserSelect, }); }); @@ -236,7 +236,7 @@ describe("User Service", () => { }, }, }, - select: expect.any(Object), + select: publicUserSelect, }); }); diff --git a/apps/web/lib/user/service.ts b/apps/web/lib/user/service.ts index fa41936ed4a4..1bd478ec7fcc 100644 --- a/apps/web/lib/user/service.ts +++ b/apps/web/lib/user/service.ts @@ -10,21 +10,7 @@ import { TUser, TUserLocale, TUserUpdateInput, ZUserUpdateInput } from "@formbri import { deleteOrganization, getOrganizationsWhereUserIsSingleOwner } from "@/lib/organization/service"; import { deleteBrevoCustomerByEmail } from "@/modules/auth/lib/brevo"; import { validateInputs } from "../utils/validate"; - -const responseSelection = { - id: true, - name: true, - email: true, - emailVerified: true, - createdAt: true, - updatedAt: true, - twoFactorEnabled: true, - identityProvider: true, - notificationSettings: true, - locale: true, - lastLoginAt: true, - isActive: true, -}; +import { publicUserSelect } from "./public-user"; // function to retrive basic information about a user's user export const getUser = reactCache(async (id: string): Promise => { @@ -35,7 +21,7 @@ export const getUser = reactCache(async (id: string): Promise => { where: { id, }, - select: responseSelection, + select: publicUserSelect, }); if (!user) { @@ -59,7 +45,7 @@ export const getUserByEmail = reactCache(async (email: string): Promise => { where: { id, }, - select: responseSelection, + select: publicUserSelect, }); return user; } catch (error) { @@ -153,7 +139,7 @@ export const getUsersWithOrganization = async (organizationId: string): Promise< }, }, }, - select: responseSelection, + select: publicUserSelect, }); return users; @@ -174,7 +160,7 @@ export const getUserLocale = reactCache(async (id: string): Promise { updatedAt: expect.any(Date), }, ]); + expect(result.data.data[0]).not.toHaveProperty("password"); + expect(result.data.data[0]).not.toHaveProperty("twoFactorSecret"); + expect(result.data.data[0]).not.toHaveProperty("backupCodes"); + expect(result.data.data[0]).not.toHaveProperty("identityProviderAccountId"); } }); @@ -84,6 +92,10 @@ describe("Users Lib", () => { expect(result.ok).toBe(true); if (result.ok) { expect(result.data.id).toBe(mockUser.id); + expect(result.data).not.toHaveProperty("password"); + expect(result.data).not.toHaveProperty("twoFactorSecret"); + expect(result.data).not.toHaveProperty("backupCodes"); + expect(result.data).not.toHaveProperty("identityProviderAccountId"); } }); @@ -148,6 +160,10 @@ describe("Users Lib", () => { expect(result.ok).toBe(true); if (result.ok) { expect(result.data.name).toBe("Updated User"); + expect(result.data).not.toHaveProperty("password"); + expect(result.data).not.toHaveProperty("twoFactorSecret"); + expect(result.data).not.toHaveProperty("backupCodes"); + expect(result.data).not.toHaveProperty("identityProviderAccountId"); } }); diff --git a/apps/web/playwright/api/management/me.spec.ts b/apps/web/playwright/api/management/me.spec.ts new file mode 100644 index 000000000000..f0abda9cf1e4 --- /dev/null +++ b/apps/web/playwright/api/management/me.spec.ts @@ -0,0 +1,49 @@ +import { expect } from "@playwright/test"; +import { logger } from "@formbricks/logger"; +import { test } from "../../lib/fixtures"; + +test.describe("API Tests for Management Me", () => { + test("Authenticated v1 me endpoint never exposes secret auth fields", async ({ page, users }) => { + const name = `Security Me User ${Date.now()}`; + const email = `security-me-${Date.now()}@example.com`; + + try { + const user = await users.create({ name, email }); + await user.login(); + + const response = await page.context().request.get("/api/v1/management/me"); + expect(response.ok()).toBe(true); + + const responseBody = await response.json(); + const allowedKeys = [ + "id", + "name", + "email", + "emailVerified", + "createdAt", + "updatedAt", + "twoFactorEnabled", + "identityProvider", + "notificationSettings", + "locale", + "lastLoginAt", + "isActive", + ].sort(); + + expect(Object.keys(responseBody).sort()).toStrictEqual(allowedKeys); + expect(responseBody).toMatchObject({ + id: expect.any(String), + name, + email, + twoFactorEnabled: expect.any(Boolean), + identityProvider: expect.any(String), + notificationSettings: expect.any(Object), + locale: expect.any(String), + isActive: expect.any(Boolean), + }); + } catch (error) { + logger.error(error, "Error during management me API security test"); + throw error; + } + }); +});